- Overhaul front-end to use full html output and a default light theme
- Enable GeoIP lookups for nodes to permit display of flags
- Add country code lookups for nodes and display on tooltip
- Mitigate logging output issues caused by html output
- Set useMicroDescriptors to FALSE so additional node information can
be presented in the UI, if enough memory available
- Allow 2nd parameter in extra-info-digest when pulling full descriptors
- Display platform, observed bandwidth and uptime on circuit node tooltips
- Add hints and notes to config section, and include missing options
- Change maxCircuitDirtiness to Tor default of 10 minutes
The modifications to the Orchid source code are released under the same license as the parent application.
--
dr|z3d - z3d@mail.i2p
Thanks to George Hodan for the orchid image
http://www.publicdomainpictures.net/view-image.php?image=35307
See LICENSE-FatCowIcons.txt & LICENSE-Fugue-Icons.txt in i2p/licenses/ for icon licences
Conversion from new MaxMind format to v.1 GeoIP.dat format courtesy of:
https://github.com/sherpya/geolite2legacy
Usage:
wget https://geolite.maxmind.com/download/geoip/database/GeoLite2-Country.tar.gz
./geolite2legacy.py -i GeoLite2-Country-CSV.zip -f geoname2fips.csv -o GeoIP.dat
For GeoIP licensing information, See the MaxMind license in the I2P application directory:
i2p/licenses/LICENSE-GeoIP.txt
The circuit is stored in the HiddenService object,
so reset it to null after it's closed so a new one can be created.
Not sure if this fix is correct, but
don't think a circuit can be reopened after it's destroyed?
Bump version to 1.2.1-0.1, to roughly track the bitcoinj maven version
at https://github.com/bitcoinj/bitcoinj/commits/master/orchid,
their history is:
1.1 2014-11-17 Dirauth changes, deadlock fixes, config redesign
1.2 2015-07-03 Guava 18.0, don't throw on socket options
1.2.1 2016-05-18 Because "incomplete version 1.2 uploaded to maven central last year"
Briefly tested
subgraph 'develop' branch rev c76d492560795d1b0482c2dfd24978e7bb032cd4 2015-05-02
Upstream changes are almost all as merged by Bruce Leidl
from the bitcoinj fork, and then merged to our fork by thebland, including:
- Move all thread creation to the new Threading class,
using a thread factory
- Move all lock acquisition to a new Threading class,
and use Google Guava classes for deadlock detection
- Converts most synchronization to use ReentrantLocks
obtained from Threading
- Fix deadlocks in OrchidSocketImpl
- Socket improvements: Allow creation of unconnected sockets,
avoid exceptions for unrecognized options
- Replace the configuration system, moving from TorConfigProxy
(a reflection/proxy-based InvocationHandler with annotation dependencies)
to TorConfigImpl which is more straightforward
Other changes by thebland:
- Update OrchidController config code to track changes above
This rev will not compile. Next checkin will remove guava dependencies,
including deadlock detection, in Threading.java.
Requires Java 7 for the switch on string in TorConfigParser
Start controller from servlet, not clients.config, to avoid class loader issues
Fix webapps.config location
Fix console link
Fix classpath issues
Add status info using TorConfig
Requires RouterAppManager fix in i2p.i2p.zzz.outproxy
Bump to 0.2