6461 lines
273 KiB
Plaintext
6461 lines
273 KiB
Plaintext
2009-07-16 zzz
|
|
* HTTP Proxy: Themes for error pages
|
|
|
|
2009-07-16 sponge
|
|
* ministreaming:
|
|
- small pedantic fix
|
|
* streaming:
|
|
- Fix a deadly race condition.
|
|
- Some small pedantic fixes.
|
|
* core:
|
|
- Fix a deadly race condition.
|
|
* BOB:
|
|
- Fixed some races that occured from fixing races in streaming and core.
|
|
- Some badly needed code refactoring to depend less on the database.
|
|
|
|
2009-07-15 zzz
|
|
* Console:
|
|
- Make light the default theme
|
|
- Convert readme_zh.html from GB2312 to UTF-8
|
|
* Installer: Don't launch the router from the postinstall.sh script
|
|
on linux anymore; add a panel to the installer to provide launch instructions.
|
|
|
|
2009-07-15 sponge
|
|
* Slackware SlackBuild fixes.
|
|
|
|
2009-07-14 dr|z3d
|
|
* Increment to 0.7.5-10
|
|
* Tidy up layout of readme.* files.
|
|
* Work on console css to make it more Opera/webkit friendly.
|
|
* Other cosmetic tweaks.
|
|
|
|
2009-07-13 zzz
|
|
* Build: Add readme*.html files to the udpater
|
|
* Build Handler: Don't reject for conn limits if class O,
|
|
under the assumption that they are already talking
|
|
to most of the routers, so there's no reason to reject. This may drive them
|
|
to their conn. limits, but it's hopefully a temporary solution to the
|
|
tunnel build congestion. As the net grows this will have to be revisited.
|
|
* Throttle: Increase default max tunnels to 3000,
|
|
to give us more capacity during congestion
|
|
* Tunnels: Change the default variance from 1 to 0.
|
|
Under the one-packet-enough theory, and the fact that most
|
|
tunnels in a x+1 pool are of length x, variable lengths
|
|
don't really help that much. Also, a default of 1 led
|
|
to all sorts of problems with iMule/SAM, who was not
|
|
setting the variance properties.
|
|
This will affect exploratory tunnels for new users,
|
|
and those that have never saved a change on configtunnels.jsp,
|
|
and iMule users 1.4.5 and earlier.
|
|
|
|
2009-07-12 zzz
|
|
* Add configui.jsp
|
|
* orange flash remove take 2
|
|
|
|
2009-07-11 zzz
|
|
* netdb.jsp: Fix bad tag causing orange mouseovers
|
|
|
|
2009-07-11 dr|z3d
|
|
* More enhancements to the router console, consolidation of the
|
|
light and dark themes.
|
|
- Apply new themes with routerconsole.theme=light/dark/classic
|
|
added to advanced config.
|
|
|
|
2009-07-11 zzz
|
|
* Build Handler: Drop rather than reject requests when near
|
|
conn limits and the next hop is not connected, to reduce
|
|
connection congestion
|
|
* Console: Force IE to the classic theme
|
|
* I2PSnark:
|
|
- Bring back details links for Postman2 B64 torrents
|
|
* I2PTunnel:
|
|
- Make reduce-on-idle the default for all the shared clients
|
|
for new installs (15m)
|
|
* Profile Organizer:
|
|
- Allow NTCP-only peers in inbound tunnels
|
|
* Transports:
|
|
- Move from a single connection limit threshold (80%) to
|
|
two (75% and 87%), and only start rejecting tunnels
|
|
at the higher threshold, to increase build success
|
|
- Move some limit methods from the transports to TransportImpl
|
|
- Add limit methods with a threshold argument
|
|
- Increase default SSU conn limits a little more
|
|
|
|
2009-07-07 dr|z3d
|
|
* Introducing 2 new console themes (light & dark), in addition
|
|
to changes to the console navigation; navbar now resides in
|
|
the sidepanel and other stuff besides. More to follow!
|
|
|
|
2009-07-06 zzz
|
|
* Console: Fix small textareas on Opera
|
|
* EepGet: Don't send X-Accept-Encoding for non-proxied fetches
|
|
* HTTP Proxy: Limit proxy.i2p to /themes/ directory
|
|
* I2PSnark:
|
|
- Change postman2 announce URL to use hostname rather than B64
|
|
- Shorten torrent name to fit better on one line
|
|
* I2PTunnel:
|
|
- Add edit text
|
|
- Fix broken favicon
|
|
* Move almost all uses of StringBuffer to StringBuilder,
|
|
for efficiency (thanks Arsene for the suggestion)
|
|
* Reseed:
|
|
- Fix console status messages broken by global replace
|
|
- Remove tino, add b.netdb.i2p2.de
|
|
* SSUDemo: Move to the router/java/test directory
|
|
* Startup: Log clients.config problems
|
|
* Transport: Implement NTCP auto-transition from an
|
|
address to no address, so that inbound NTCP is disabled
|
|
after SSU detects a firewall. When UPnP was apparently successful
|
|
but the router is still firewalled (due to an additional
|
|
software firewall or a bad UPnP indication, for example)
|
|
the router will now remove the NTCP address.
|
|
|
|
2009-07-05 sponge
|
|
* Added X-I2P-DestB64 and X-I2P-DestB32 http headers
|
|
|
|
2009-06-29 zzz
|
|
* Big directory rework:
|
|
Eliminate all uses of the current working directory, and
|
|
set up multiple directories specified by absolute paths for various uses.
|
|
|
|
Add a WorkingDir class to create a user config directory and
|
|
migrate certain files to it for new installs.
|
|
The directory will be $HOME/.i2p on linux and %APPDATA%\I2P on Windows,
|
|
or as specified in the system property -Di2p.dir.config=/path/to/i2pdir
|
|
All files except for the base install and temp files will be
|
|
in the config directory by default.
|
|
Temp files will be in a i2p-xxxxx subdirectory of the system temp directory
|
|
specified by the system property java.io.tmpdir.
|
|
|
|
Convert all file opens in the code to be relative to a specific directory,
|
|
as specified in the context. Code and applications should never open
|
|
files relative to the current working directory (e.g. new File("foo")).
|
|
All files should be accessed in the appropriate context directory,
|
|
e.g. new File(_context.getAppDir(), "foo").
|
|
|
|
The router.config file location may be specified as a system property on the
|
|
java command line with -Drouter.configLocation=/path/to/router.config
|
|
All directories may be specified as properties in the router.config file.
|
|
|
|
There will be no migration from an existing installation
|
|
unless the system property -Di2p.dir.migrate=true is set.
|
|
If there is no migration, it will continue to use $I2P for all files,
|
|
except for temporary and PID files.
|
|
|
|
The following linux scripts are now customized with the install path at,
|
|
installation, and may be moved to /usr/local/bin and run from any
|
|
working directory:
|
|
eepget, i2prouter, runplain.sh
|
|
|
|
For new installs, the i2p base directory ($I2P) may be read-only
|
|
if updates are disabled. The only time i2p should write to the base directory
|
|
is to unzip the update file. Updates are downloaded to the config dir. If, upon
|
|
restart, the base dir is not writable, it will log a message and continue.
|
|
|
|
Additional information, copied from I2PAppContext:
|
|
|
|
* Directories. These are all set at instantiation and will not be changed by
|
|
* subsequent property changes.
|
|
* All properties, if set, should be absolute paths.
|
|
*
|
|
* Name Property Method Files
|
|
* ----- -------- ----- -----
|
|
* Base i2p.dir.base getBaseDir() lib/, webapps/, docs/, geoip/, licenses/, ...
|
|
* Temp i2p.dir.temp getTempDir() Temporary files
|
|
* PID i2p.dir.pid getPIDDir() router.ping
|
|
* Config i2p.dir.config getConfigDir() *.config, hosts.txt, addressbook/, ...
|
|
*
|
|
* (the following all default to the same as Config)
|
|
*
|
|
* Router i2p.dir.router getRouterDir() netDb/, peerProfiles/, router.*, keyBackup/, ...
|
|
* Log i2p.dir.log getLogDir() logs/
|
|
* App i2p.dir.app getAppDir() eepsite/, ...
|
|
*
|
|
* Note that the router can't control where the wrapper actually puts its files.
|
|
|
|
All these will be set appropriately in a Router Context.
|
|
In an I2P App Context, all except Temp and PID will be the current working directory.
|
|
|
|
Related changes:
|
|
i2prouter:
|
|
- Don't cd to script location, no longer required
|
|
jbigi, cpuid:
|
|
- Extract files from jar to temp dir, load from that dir, then
|
|
copy to the base dir if we have permissions (and failing silently
|
|
if we don't), so we have optimized libs and no complaints
|
|
when we have a read-only base dir.
|
|
logs.jsp:
|
|
- Get wrapper log location from a property too
|
|
- Display log file locations
|
|
RouterLaunch:
|
|
- If no wrapper, put wrapper.log in system temp dir
|
|
unless specified with -Dwrapper.logfile=/path/to/wrapper.log
|
|
or it already exists in CWD (for backward compatibility)
|
|
- Append rather than replace wrapper.log
|
|
- Pass wrapper log location to router as a property, so that logs.jsp can find it
|
|
runplain.sh:
|
|
- Add path substitution to runplain.sh on install
|
|
- Pass I2P base dir to the router as a property
|
|
Systray:
|
|
- Fix NPE if no config file
|
|
wrapper.config:
|
|
- Put wrapper.log in system temp dir for new installs
|
|
- Pass I2P base dir to the router as a property
|
|
|
|
2009-06-29 zzz
|
|
* HTTP Proxy:
|
|
- Add simple web server for "proxy.i2p" to serve
|
|
images and CSS for the error pages
|
|
- Take CSS out of the error pages; use internal server
|
|
for CSS, image, and favicon
|
|
* i2psnark build:
|
|
- Move FetchAndAdd to static inner class
|
|
- Fix standalone build to include i2psnark.jar since classes
|
|
aren't in the .war anymore
|
|
- Have standalone jetty use I2PAppContext temp directory
|
|
- Replace launch-i2psnark.jar with launch-i2psnark script,
|
|
since RunStandalone is in i2p.jar
|
|
- Clean up jetty-i2psnark.xml, turn off jetty logging
|
|
- Remove standalone build from the pkg target in the main build.xml
|
|
* Jbigi, CPUID:
|
|
- Reduce memory demand on startup from 4MB to 4KB each
|
|
* NetDb: Fix an NPE on early shutdown
|
|
* Reseeding / NetDb:
|
|
- Move reseeding from the routerconsole app to
|
|
the router, so that we can bootstrap an embedded router lacking a routerconsole
|
|
(iMule or android for example), without additional modifications.
|
|
This allows better integration between the reseeding function
|
|
and the netDb.
|
|
- Call reseed from PersistentDataStore, not from the
|
|
routerconsole init, and start seeding as soon as the netdb has read
|
|
the netDb/ directory, not when the console starts.
|
|
- Wake up the netdb reader as soon as reseeding is done,
|
|
rather than waiting up to 60s.
|
|
- Don't display the reseed button on the console until the
|
|
netdb initialization is done.
|
|
* RouterConsoleRunner:
|
|
- Catch a class not found error better
|
|
|
|
2009-06-29 zzz
|
|
* Console: Convert table headers to <th> to prep for CSS changes
|
|
* Console CSS: Move css file, make a classic theme to prep for CSS changes
|
|
* Console: Move favicon.ico and i2plogo.png out of the .war
|
|
so that the HTTP proxy can use them directly;
|
|
proxy error pages must be updated next
|
|
* NetDb stats: Normalize tunnel build stats for increased anonymity,
|
|
effective in 0.7.6
|
|
|
|
2009-06-30 sponge
|
|
* General cleanup on streaming and ministreaming.
|
|
This fixes some compile warnings, and prepares for a larger fix.
|
|
There is no code-flow changes, just lint. One warning remains as I am
|
|
unsure exactly how to solve the problem yet.
|
|
|
|
* 2009-06-29 0.7.5 released
|
|
|
|
2009-06-29 Complication
|
|
* Update versions, package release
|
|
* Remove the last reference to my eepsite as a "news.xml" source,
|
|
and likewise stop my public key from being included
|
|
among valid release signing keys.
|
|
|
|
2009-06-25 sponge
|
|
* Summary frame layout change so it makes sense.
|
|
|
|
2009-06-23 zzz
|
|
* Browser Launch: Add sensible-browser, x-www-browser, defaultbrowser, and
|
|
www-browser in an attempt to launch the user's preferred browser
|
|
* configupdate.jsp: Cleanup
|
|
* Installer: Include console.css!!!
|
|
* NTCP: Try again to prevent two Event Pumpers
|
|
* Update: Increase max retries
|
|
* UPnP: Catch AIOOBE reported by tuna
|
|
|
|
2009-06-21 zzz
|
|
* Browser Launch: Wait until the routerconsole is up before launching the browser
|
|
* Installer: Fix wrapper.config parsing on windows
|
|
* netdb.jsp: Add country chart at bottom, clean up version chart
|
|
* News Fetcher:
|
|
- Change default news URL, use it instead of the old one even if
|
|
the old one is saved in the configuration, to assist in the transition
|
|
* ReseedHandler:
|
|
- check for upper case HREF to be compatible with apache indexes
|
|
* Statistics Manager: post-0.7.4 cleanup
|
|
* Transport: Treat 5.0.0.0/8 (Hamachi) as local
|
|
|
|
2009-06-17 Mathiasdm
|
|
* desktopgui:
|
|
- Added client and server tunnel view
|
|
(saving does not work yet)
|
|
|
|
2009-06-17 zzz
|
|
* PeerSelector:
|
|
- Limit exploratory tunnels to connected peers when over
|
|
half the connection limit (was 80%)
|
|
- Have the high capacity tier fall back to a new connected tier
|
|
before moving on to the not failing tier
|
|
so that tunnel build success doesn't collapse and drive
|
|
connections to the limit
|
|
* PeerTestJob:
|
|
- Limit to connected peers
|
|
|
|
2009-06-12 zzz
|
|
* Console:
|
|
- Move the console css from default.css in the .war to docs/themes/console/console.css,
|
|
and support console themes in the main console with routerconsole.theme=foo
|
|
- Remove unused NoticeHelper
|
|
|
|
* Installer:
|
|
Upgrade to izpack 4.3.0 and add a short script to fix Vista install problems.
|
|
(previous izpack was 3.7.2 from 2005-04-22)
|
|
|
|
izpack 4.3.0 from :
|
|
http://dist.codehaus.org/izpack/releases/4.3.0/IzPack-install-4.3.0.jar
|
|
SHA1 f06da6b26ac2c68fed64ab38980352989b8d8841
|
|
(no signatures or sha1sums found on website, and the jar is unsigned)
|
|
License: Apache 2.0
|
|
|
|
upack izpack:
|
|
java -jar IzPack-install-4.3.0.jar
|
|
or
|
|
java -jar IzPack-install-4.3.0.jar -console
|
|
|
|
get the standalone-compiler.jar from the installation lib/ directory:
|
|
SHA1 6d2b4a5657bfb864a333b1c4b1c0f8223aa57d80
|
|
(no signatures or sha1sums found on website, and the jar is unsigned)
|
|
|
|
This fixes the bug with the install windows centered in all the
|
|
workspaces, not the current workspace. And who knows what other
|
|
bugs in the last 4 years.
|
|
|
|
To fix Vista (and presumably Windows 7) permissiom problems,
|
|
add a run-privileged flag for those, and run the new fixperms.bat
|
|
which calls icacls to add the privileges to the install directory.
|
|
|
|
Add support for 6 more language packs found in the new release.
|
|
Change from ISO3 codes to native language names.
|
|
|
|
Disable creation of the i2p.tar.bz2 file in build.xml
|
|
(distributed as i2pheadless-0.7.x.tar.bz2), as izpack 4.3.0 now
|
|
supports headless installation with java -jar i2pinstall.exe -console.
|
|
Update INSTALL.txt and INSTALL-headless.txt accordingly.
|
|
|
|
- Add install and temp path substitution to wrapper.config and
|
|
i2prouter on install
|
|
|
|
- Change the wrapper.config classpath to one line: lib/*.jar
|
|
This means we lose control of classpath load order, so move the windows installer
|
|
jars copy.jar, delete.jar, and exec.jar to a new installer/ directory so
|
|
these jars won't be in the classpath or potentially conflict, since
|
|
copy.jar and delete.jar include FileUtil.class, and we don't want to have
|
|
to remember to add them to the updater if we ever change FileUtil.class.
|
|
Delete the installer/ directory in postinstall.sh since it is windows-only.
|
|
|
|
* Watchdog: Only try to dump threads if there is a wrapper
|
|
and we aren't on windows
|
|
|
|
* 2009-06-12 0.7.4 released
|
|
|
|
2009-06-12 Complication
|
|
* Update versions, package release
|
|
|
|
2009-06-09 zzz
|
|
* NTCP: Fix startup race NPE (thanks postman!)
|
|
|
|
2009-06-08 sponge
|
|
* Last commit for this cycle. All debugging except for WARN removed.
|
|
I can use the visit command to debug now anyway.
|
|
|
|
2009-06-08 sponge
|
|
* Removed BOB debugging as-per zzz
|
|
|
|
2009-06-08 sponge
|
|
* Fixed NPE and some other goofups in BOB.
|
|
* BOB bump version
|
|
|
|
2009-06-07 zzz
|
|
* Build file:
|
|
- Add updaterWithJettyFixesAndGeoIP, use it in pkg for one release
|
|
- Cleanups
|
|
* Console:
|
|
- netdb.jsp cleanup
|
|
- tunnels.jsp cleanup
|
|
* ExploratoryPeerSelector:
|
|
- Limit to connected peers when near connection limit
|
|
* Timestamper:
|
|
- Use locale country if geoip unavailable
|
|
* Transport:
|
|
- Lower min NTCP idle time to 3m (was 5m)
|
|
- Increase SSU conn limit by 33%
|
|
* UPnP: Fix deprecation warning
|
|
* Watchdog:
|
|
- Defang him again
|
|
|
|
2009-06-06 sponge
|
|
* Added BOB's license to licenses
|
|
* Janitorial javadoc fixes *sigh*
|
|
* bump to -13
|
|
|
|
2009-06-05 sponge
|
|
* Merge and bump to -12
|
|
|
|
2009-06-05 sponge
|
|
* BOB now cleans up tunnels, although they can take up to 5 minutes to
|
|
disapear. This is due to the fact that the streaming lib doesn't
|
|
actually remove the connections properly and kill them off when the
|
|
manager is destroyed. I'm not certain if this is a bug, or a feature,
|
|
but it sure is annoying, and you have to wait for the connections to
|
|
time out. What should happen is the streaming lib should cause an IO
|
|
error to the pending read or write.
|
|
|
|
2009-06-05 zzz
|
|
* Build file:
|
|
- Add license info for launch4j includes
|
|
* Console:
|
|
- 16x11 transparent flags for ch and np, thanks anonim!
|
|
|
|
2009-06-04 zzz
|
|
* Console:
|
|
- Update geoip file to June 3 version
|
|
- Hide some controls if no wrapper on configservice.jsp
|
|
* I2PTunnel:
|
|
- Fix bug where delayed-open and close-on-idle tunnels would
|
|
use a different tunnel pool instead of building their own
|
|
- Add standby indication to web page
|
|
* NetDb:
|
|
- Try to talk directly to a floodfill if we don't know enough,
|
|
to help integrate more quickly
|
|
- Change a no-floodfill error to a warn
|
|
* NetDb Stats:
|
|
- Average TX and RX bw stats for additional anonymity,
|
|
effective in next release
|
|
* Reseed:
|
|
- Limit to 200 pulled randomly from the full fetched list
|
|
* Transport:
|
|
- Increase default bw for new installs to 96/40
|
|
(was 64/32). This is as high as we can go upstream
|
|
without making the default class M.
|
|
* Watchdog:
|
|
- Allow disabling by property again
|
|
- Logging tweaks
|
|
|
|
2009-05-30 zzz
|
|
* Console:
|
|
- config.jsp now cause graceful restart
|
|
- More peers.jsp and profiles.jsp cleanup
|
|
- tunnels.jsp improvements
|
|
- Use CSS for form messages
|
|
- Goodbye nonce spoof messages (sorry jr)
|
|
- config.jsp: Comment out unused burst config code
|
|
- Don't forget Serbia!
|
|
- configadvanced.jsp cleanup
|
|
* LoadTestManager: Delete, unused
|
|
* Peer Selector: Make strict order opaque to hash value
|
|
* SendGarlicMessageJob: Delete, unused
|
|
* Session Keys:
|
|
- Don't instantiate unused SessionKeyPersistenceHelper
|
|
- Use TransientSessionKeyManager instead of PersistentSessionKeyManager
|
|
- Add generics to TransientSessionKeyManager to help understand it
|
|
- Change initial session map size to 64 (was 1024)
|
|
- Prepare for per-destination SessionKeyManagers in ElGamalAESEngine
|
|
- More stubs for per-destination managers in the client manager
|
|
* Transports:
|
|
- Adjust bids when near conn capacity
|
|
* UDP:
|
|
- Remove unused stats and test code
|
|
- Only save IP when it changes
|
|
* UPnP:
|
|
- Prevent NPE after ParserException
|
|
- Tweak to help startup problems?
|
|
- Retry port forward if it fails
|
|
- Make peers.jsp display faster
|
|
- Lengthen POST timeout
|
|
- More comments
|
|
|
|
2009-05-29 sponge
|
|
* added big fat start/stop lock into BOB
|
|
* added zap command to shut down BOB... now we need a way to start it
|
|
after it stops. :-)
|
|
|
|
2009-05-27 Mathiasdm
|
|
* Increase sendProcessingTime some more, add a property to configure.
|
|
Configure with 'router.defaultProcessingTimeThrottle'.
|
|
|
|
2009-05-27 Mathiasdm
|
|
* Increased sendProcessingTime limits and added testSuccessTime
|
|
to avoid unwanted throttling
|
|
|
|
2009-05-26 Mathiasdm
|
|
* Throttling extension by looking at sendProcessingTime
|
|
|
|
2009-05-26 zzz
|
|
* Console:
|
|
- configlogging.jsp cleanup
|
|
- Flags tweak
|
|
* NetDb:
|
|
- Don't send our own hash in the don't-include list when exploring
|
|
- Remove any pending write when removing a RouterInfo
|
|
- Cleanup to use routerHash()
|
|
* Streaming: Hopefuly fix infinite loop in the SYN queue handler
|
|
|
|
2009-05-25 zzz
|
|
* GeoIP:
|
|
- Save our own location in the config
|
|
- Check whole netDb at startup (last try didn't work)
|
|
* NTCP:
|
|
- Increase routerinfo send frequency to every 90m (was 9h)
|
|
- Don't send 3 floodfill infos at startup or with routerinfo
|
|
* Profile Organizer: Increase min fast peers based on
|
|
number of local destinations
|
|
* Timestamper:
|
|
- Use GeoIP to query a closer ntp source if available
|
|
- Lengthen query time if well-synced
|
|
- Cleanup
|
|
|
|
2009-05-24 mkvore
|
|
* SAM: logging some exceptions at INFO level instead of ERROR
|
|
|
|
2009-05-24 zzz
|
|
* Connection limits / throttle:
|
|
- Better limits when no inbound TCP
|
|
(limit inbound and outbound separately)
|
|
- Don't offer to SSU introduce when near connection limit
|
|
* Console:
|
|
- Move flags from icons/ to docs/icons
|
|
- peers.jsp cleanup
|
|
- Add readme_zh.html
|
|
* GeoIP:
|
|
- Check netDb SSU IP too
|
|
- Check whole netDb at startup
|
|
* NTCP: Log who is sending us big messages
|
|
* UPnP: Move logging from wrapper log to router log
|
|
|
|
2009-05-23 Mathiasdm
|
|
* Router netDB:
|
|
- Added flags to the netDB page
|
|
|
|
2009-05-22 Mathiasdm
|
|
* desktopgui:
|
|
- Updating works in general config
|
|
- Switched to Swingworker threads for improved responsiveness
|
|
|
|
2009-05-21 zzz
|
|
* Router Watchdog:
|
|
- Log memory stats
|
|
- Dump threads on linux
|
|
- Restart after 20 minutes (give the dog his teeth back)
|
|
|
|
2009-05-21 zzz
|
|
* DataStore:
|
|
- Adjust interface to have persistent and non-persistent methods,
|
|
to prepare for partial storage in RAM
|
|
* ExpireRoutersJob:
|
|
- Rewrite, not enabled yet
|
|
* I2Punnel:
|
|
- Increase eepsite default to 3+0 for new installs
|
|
* PersistentDataStore:
|
|
- Cleanup, simplify, and concurrentify
|
|
- Tweak stats
|
|
- Remove write limit
|
|
- Flush to disk on shutdown
|
|
- Don't write out what we just read in
|
|
* Router and console:
|
|
- Bundle geoIP files and flags in new installs,
|
|
spiff up tunnels.jsp and profiles.jsp.
|
|
Existing installs can get files with 'ant updaterWIthGeoIP'
|
|
or in the console docs bundle 'ant consoleDocs'
|
|
- Use flags for shitlist and peers.jsp too
|
|
- Tweak tunnels.jsp to show class letters
|
|
- Hide in-progress details on tunnels.jsp
|
|
- Add a little color to confignav
|
|
- Remove 'no skew' message
|
|
- More message tweaks if no wrapper
|
|
* TunnelManager:
|
|
- Remove now-unused isInUse()
|
|
* UPnP:
|
|
- Fix up port binding, add some logging on bind fails
|
|
- Force IPv4 only for binds
|
|
|
|
2009-05-20 Mathiasdm
|
|
* General configuration enabled by default
|
|
* General configuration speed tab works completely
|
|
|
|
2009-05-17 zzz
|
|
* Merge i2p.i2p.zzz.upnp branch
|
|
* Major changes:
|
|
- Detect IP with UPnP
|
|
- Open firewall ports with UPnP
|
|
- Detect IP by checking local interface addresses
|
|
- Enable TCP auto-IP and auto-port by default, if UDP status is "OK"
|
|
- Network configuration page rework
|
|
* Other stuff:
|
|
- Remove unused verifyupdate.jsp
|
|
* Details of the UPnP and related Transport changes:
|
|
- Add UDP Port configuration to config.jsp
|
|
- Don't restart router when configs change on config.jsp;
|
|
simply rebuild router info.
|
|
- Clean up some port config code in UDP
|
|
- Implement UPnP enable/disable
|
|
- Start to rework inbound configuration
|
|
- Tweak UPnP warning messages
|
|
- Start of callbacks from UPnP to transports
|
|
- Tell UDP local addresses at startup
|
|
- NTCP Port must now be either auto or configured;
|
|
now defaults to auto; and configured now trumps auto.
|
|
Port configuration now does not affect whether inbound
|
|
NTCP is enabled - the host configuration alone can do that.
|
|
- i2np.ntcp.autoip=true redefined to enable inbound only if
|
|
SSU reachability is OK. i2np.ntcp.autoip=always for the old behavior.
|
|
autoip default is now "true".
|
|
i2np.ntcp.hostname=xxx now trumps i2np.tcp.autoip.
|
|
- SSU always tells NTCP when status changes.
|
|
- Implement config save of new IP address options
|
|
- Implement local address and UPnP configuration of UDP address
|
|
- Limit received port to 1024 minimum
|
|
- Simplify bw form
|
|
- Add config link to UPnP status
|
|
- Make short timeouts for UPnP HTTP POST so we don't hang when
|
|
the UPnP device goes away
|
|
- Fix a bug in UPnP HTTP Server timeout
|
|
- Make short timeouts for the XML parser so we don't hang when
|
|
the UPnP device goes away - same as for HTTP POST
|
|
- Stuff the port mapping requester into a thread so it doesn't
|
|
delay everything for several seconds
|
|
- Handle UPnP devices that return IP = 0.0.0.0
|
|
- Better HTML output when no IP found
|
|
- Tweak logging
|
|
- Set Disposer thread name
|
|
- Keep the control point running after we find an IGD,
|
|
so that we get notifications of it leaving or
|
|
coming back or replaced.
|
|
- Detect UPnP start failure
|
|
- Sort local addresses
|
|
- Store last IP for future laptop mode
|
|
- Subscribe to service, doesn't seem to do anything though,
|
|
need to test it more
|
|
- Change UPnP listener port defaults, allow configuration option
|
|
- Don't notify for non-changed options on config.jsp
|
|
- Simplify config.jsp some more
|
|
- No longer use i2np.udp.forceIntroducers
|
|
- Tweak UDP port qualification
|
|
- Fix allowing low ports again
|
|
- Add option to completely disable NTCP, for those behind nasty firewalls
|
|
- Use SSU reachability rather than global reachability for determining NTCP reachability,
|
|
since we are now reporting NTCP reachability too
|
|
- Tweak the config sub-navbar
|
|
- Don't start UPnP if we have a public interface address
|
|
- Fix setting IP to a local interface address
|
|
- Work on the configuration help some more
|
|
- Rework UDP peers.jsp table a little
|
|
- Don't let UDP bid on messages that are too long
|
|
- Clean up the max fragments code in UDP
|
|
|
|
2009-05-17 zzz
|
|
* Build files:
|
|
- Remove unneeded ant.jar from package (900KB)
|
|
- Fail on Jsp compile errors
|
|
* FloodfillVerifyJob: Don't consider an older search result as verified
|
|
* logs.jsp: Add link to config
|
|
* NetDb: Lower the routerinfo expiration again
|
|
* SusiDNS:
|
|
- Reduce displayed entries from 300 to 100
|
|
- Add ability to go forward or back
|
|
- Make textareas bigger
|
|
- Clean up file names
|
|
- Clarify messages about filter and search
|
|
|
|
* 2009-05-16 0.7.3 released
|
|
|
|
2009-05-16 Complication
|
|
* Update versions, package release
|
|
|
|
2009-05-12 sponge
|
|
* BOB clean up, change println's to _log.warn, bump BOB version
|
|
* I2PSessionMuxedImpl.java changes as per zzz, and they test OK for me.
|
|
|
|
2009-05-12 mkvore
|
|
* SAM: fix: warnings when generating javadoc
|
|
|
|
2009-05-11 zzz
|
|
* Connect client: Fix NPE when used with advanced i2ptunnel features
|
|
* Context: Don't instantiate unused AdminManager
|
|
* logs.jsp: Put critical log at the top
|
|
* NetDb: Don't accept stores of our own LeaseSets or RouterInfo
|
|
|
|
2009-05-11 mkvore
|
|
* SAM: fix: removed ERROR level logging when a client disconnects
|
|
|
|
2009-05-09 sponge
|
|
* merge
|
|
|
|
2009-05-09 sponge
|
|
* fixed OOM on lock (woops! my bad!)
|
|
|
|
2009-05-08 Mathiasdm
|
|
* desktopgui: moved files to stop polluting the namespace
|
|
(everything now in net.i2p.desktopgui)
|
|
* desktopgui: some variable renaming in general configuration
|
|
|
|
2009-05-07 mkvore
|
|
* SAM: version 3 added
|
|
* SAM: blocking case corrected on simultaneous client connection (v.1-3)
|
|
|
|
2009-05-07 zzz
|
|
* Add nibble.i2p to proxy list and hosts.txt
|
|
|
|
2009-05-07 zzz
|
|
* Addressbook: Name the thread
|
|
* Console:
|
|
- More IE button fixes, try harder to not refresh the iframe after shutdown
|
|
- Disable idle options for streamr client, it will never be
|
|
idle because it pings the server
|
|
* Floodfill Monitor: Slow down the volunteers
|
|
* Throttle: Throttle at 90% so we throttle before we WRED
|
|
|
|
2009-05-06 Mathiasdm
|
|
* Improvements to popup menu rightclick action
|
|
* Added general configuration options (still not available by default)
|
|
* General fixes
|
|
* Added ant build options (irc says eche|on would like that ;))
|
|
|
|
2009-05-06 sponge
|
|
* Hopefully the last fixes for BOB.
|
|
* Fixes to prevent race in client-side I2CP and Notifier.
|
|
|
|
2009-05-03 sponge
|
|
* More hopeful fixes for BOB.
|
|
* Added new Robert ID to snark
|
|
|
|
2009-05-01 zzz
|
|
* Build files:
|
|
- Fix up susidns build file so it will work with gcj
|
|
- Add consoleDocs target
|
|
* Client: Fix race NPE (thanks sponge)
|
|
* Console: fix ERR-UDP Disabled and Inbound TCP host/port not set
|
|
* I2CP: Fix race NPE
|
|
* I2PTunnel:
|
|
- Try to fix locking to prevent duplicate destinations when using
|
|
the new option new-dest-on-resume. Still not right for shared clients
|
|
but should be better for non-shared.
|
|
* Router console:
|
|
- Add jbigi and cpu info to logs.jsp
|
|
* Session key manager:
|
|
- Log before a hang maybe
|
|
* URL Launcher:
|
|
- Launcher on linux was stopping after trying opera, whether it succeeded or failed.
|
|
Now it keeps going to try firefox, etc. as designed.
|
|
- Extend default delay from 5s to 15s so it will reliably start
|
|
|
|
2009-04-27 sponge
|
|
* more BOB fixes, complete with warnings when things go wrong, and
|
|
success messages when things turn around and go right. Terminates
|
|
early so that applications wait no more than 10 seconds or so.
|
|
* Reversed a few earlier patches that caused some odd behavior.
|
|
* Changed some core println()'s to debugging messages.
|
|
|
|
2009-04-27 zzz
|
|
* Build files:
|
|
- New updaterWithJettyFixes target, build it for pkg
|
|
- Pass compiler args down from top build.xml
|
|
* GarlicMessageBuilder: Reduce bundled tags to 40 (was 100)
|
|
* i2psnark: Add Postman2 tracker
|
|
* I2PTunnel: Allow spaces in dest and proxy lists
|
|
* NetDb:
|
|
- Adjust RouterInfo expiration down to control memory usage
|
|
- Display LeaseSets and RouterInfos on separate console pages
|
|
* NTCP:
|
|
- Correct the meanings of the i2np.ntcp.autoip and i2np.ntcp.autoport
|
|
advanced config. If you have one of these set but not the other, you
|
|
will have to adjust your configuration on config.jsp.
|
|
* RouterConsole: iframe tweaks
|
|
* StatisticsManager: Cleanup
|
|
* Streaming: Don't let jrandom yell so loud
|
|
* Tunnel Pool: Don't self-destruct if more than 6 IB tunnels configured
|
|
|
|
2009-04-25 sponge
|
|
* I2PSessionMuxedImpl atomic fixes
|
|
* BOB fixes. This should be the final bug wack. Good Luck to everybody!
|
|
|
|
2009-04-23 zzz
|
|
* Blocklist: cleanup
|
|
* eepget: handle -h, --help, bad options, etc.
|
|
(http://forum.i2p/viewtopic.php?p=16261#16261)
|
|
* Fragmenter: don't re-throw the corrupt fragment IllegalStateException,
|
|
to limit the damage - root cause still not found
|
|
* i2psnark: (http://forum.i2p/viewtopic.php?t=3317)
|
|
- Change file limit to 512 (was 256)
|
|
- Change size limit to 10GB (was 5GB)
|
|
- Change request size to 16KB (was 32KB)
|
|
- Change pipeline to 5 (was 3)
|
|
* logs.jsp: Move version info to the top
|
|
* Jetty: Fix temp dir name handling on windows, which was
|
|
causing susidns not to start
|
|
(http://forum.i2p/viewtopic.php?t=3364)
|
|
* NTCP: Prevent IllegalStateException
|
|
* PeerProfile:
|
|
- Replace a hot lock with concurrent RW lock
|
|
- Rewrite ugly IP Restriction code
|
|
- Also use transport IP in restriction code
|
|
* RouterConsole: Make summary bar a refreshing iframe
|
|
* Transport: Start the previously unused CleanupUnreachable
|
|
|
|
2009-04-21 sponge
|
|
* Code janitor work, basic corrections involving @Override, and
|
|
appling final where it is important. Also fixed some equals methods
|
|
and commented places that need fixing.
|
|
|
|
2009-04-18 Complication
|
|
* Fix typo in "news.xml", no build number increase.
|
|
|
|
* 2009-04-18 0.7.2 released
|
|
|
|
2009-04-18 Complication
|
|
* Update versions, package release
|
|
|
|
2009-04-17 sponge
|
|
* fixed setIP, just be sure to distclean before building :-)
|
|
* more lint taken care of as well.
|
|
|
|
2009-04-17 sponge
|
|
* setIP wants to be a static method in the class, but it produces
|
|
warnings about it being static from other code.
|
|
|
|
2009-04-17 sponge
|
|
* Catch NPE in NTCP.
|
|
This possibly augments fix 2009-04-11 welterde below.
|
|
* Various LINT on NTCP sources, and removal of space-wasting
|
|
spaces at end of lines in sources touched.
|
|
|
|
2009-04-13 Mathiasdm
|
|
* Bugfix on tray icon updating
|
|
* Some more work on the general configuration menu
|
|
(currently not added to the tray icon menu yet, needs more work)
|
|
* Tweaked the desktopgui logo
|
|
|
|
2009-04-13 Mathiasdm
|
|
* Added I2P version and GUI version to desktopgui
|
|
* Tweaks to the tray icon menu
|
|
* Some starting work on a GUI general configuration menu
|
|
* Bugfix allowing spaces in directory structure
|
|
|
|
2009-04-13 welterde
|
|
* small fix in the eepproxy
|
|
|
|
2009-04-11 welterde
|
|
* fixed NPE in NTCP transport
|
|
|
|
2009-04-11 sponge
|
|
* i2ptunnel janitorial work and fixes on most locks.
|
|
Some locks still need work, and are marked with LINT in the comment.
|
|
Just grep for "LINT" to see where the remaining places are.
|
|
|
|
2009-04-10 sponge
|
|
* More BOB threadgroup fixes, plus debug dump when things go wrong.
|
|
* Fixes to streaminglib, I2CP, which are related to the TG problem.
|
|
* JavaDocs fixups.
|
|
|
|
2009-04-08 sponge
|
|
* More hopeful fixups to the infamous orpahned tunnel problem. *Sigh*
|
|
|
|
2009-04-08 zzz
|
|
* IPV6/localhost:
|
|
- Enable IPv6 stack in the JVM, hopefully won't break anything
|
|
- Patch Jetty to support binding to IPv6 addresses
|
|
- Allow multiple bind addresses for the router console
|
|
in the clients.config file; for new installs the
|
|
default is now "127.0.0.1,::1"
|
|
- Change most instances of "localhost" to "127.0.0.1"
|
|
throughout the code
|
|
* Router:
|
|
- Move some classes to private static inner
|
|
|
|
2009-04-07 sponge
|
|
* BOB prevent jvac from optimizing out thread-group code from -10
|
|
|
|
2009-04-07 zzz
|
|
* NTCP: Prevent occasional NPE introduced in -4
|
|
* streamr: Synchronize DatagramMaker
|
|
|
|
2009-04-07 sponge
|
|
* SimpleTimer2, SimpleScheduler fixed so that the threads all run from
|
|
The main threadgroup, not in the current possible child threadgroup.
|
|
So long as any SimpleTimer2/SimpleScheduler is started *BEFORE* any
|
|
child threadgroups, the constructors are threadgroup safe. What would
|
|
be super cool is if they were to be all jailed within thier very own
|
|
threadgroup too, but, I2P isn't up to the task of this yet.
|
|
* Fixes to BOB to ensure the above is true.
|
|
|
|
2009-04-06 sponge
|
|
* Debugging to make SimpleTimer2 and SimpleScheduler easier to debug.
|
|
* Fix for the config files in the GUI from mathiasdm
|
|
|
|
2009-04-04 sponge
|
|
* Hopeful fixups to the infamous orpahned tunnel problem.
|
|
* BOB now 0.0.5
|
|
|
|
2009-04-04 zzz
|
|
* NTCP: Don't bid on messages too big to handle
|
|
|
|
2009-04-03 zzz
|
|
* Console:
|
|
- Fix bug with IE buttons not working,
|
|
because it sends the label instead of the value
|
|
- Display version of downloaded update
|
|
* Update:
|
|
- Change default to "Download and verify"
|
|
- Change news fetch default to 24h (was 12h)
|
|
|
|
2009-04-03 sponge
|
|
* Fix broken dependencies for BOB.jar
|
|
* Router build version incremented to 5.
|
|
|
|
2009-04-02 zzz
|
|
* Profiles:
|
|
- Remove unused calculators and RateStats:
|
|
CapacityCalculator, StrictSpeedCalculator, IsFailingCalculator;
|
|
sendFailureSize, processSuccessRate, processfailureRate, commErrorRate,
|
|
tunnelTestResponseTimeSlow
|
|
- Reduced number of Rates in these RateStats:
|
|
sendSuccessSize, receiveSize, rejectRate, failRate
|
|
- ~5KB/profile savings total
|
|
- Deflate speed calculation once an hour instead of once a day,
|
|
to improve fast tier selection
|
|
- Remove dup comment in persisted files
|
|
* StatisticsManager - effective in 0.7.2:
|
|
- Spoof uptime to 90m for all
|
|
- Change tunnel stats from 10m to 60m
|
|
* Transport:
|
|
- Maintain a router hash -> IP map in transport,
|
|
to support additional IP checks (unused for now)
|
|
- Catch error on pre-2.6 kernels
|
|
- Some concurrent conversion
|
|
- Fix an HTML error on peers.jsp
|
|
|
|
2009-04-01 zzz
|
|
* I2PTunnel: Fix tunnel close
|
|
http://forum.i2p/viewtopic.php?t=3231
|
|
|
|
2009-03-30 zzz
|
|
* I2CP:
|
|
- Implement BandwidthLimitsMessage
|
|
- Have i2psnark use new message, remove
|
|
build dependency on router
|
|
* Peer Selection:
|
|
- Limit peers to a max % of all tunnels with
|
|
router.maxTunnelPercentage=nn, default 33
|
|
- Add chart to tunnels.jsp to see results
|
|
|
|
* 2009-03-29 0.7.1 released
|
|
|
|
2009-03-29 Complication
|
|
* Update versions, package release
|
|
|
|
2009-03-27 zzz
|
|
* Add readme_fr.html
|
|
* License splash update
|
|
* Catch rare TunnelGatewayMessage AIOOB, root cause unknown
|
|
|
|
2009-03-24 zzz
|
|
* I2PTunnel:
|
|
- Add some warnings about new features
|
|
- Fix encrypted leasesets broken in about -4
|
|
- Suppress log error on manual stop
|
|
- Fix NPE on close of a tunnel not open yet
|
|
* Transport:
|
|
- Increase default bw to 64/32, burst 80/40
|
|
* Tunnels: Change some fragmentation errors to warns
|
|
|
|
2009-03-16 zzz
|
|
* help.jsp: Add some
|
|
* I2PTunnel: Cleanup
|
|
* I2PTunnelHTTPClient: Fix NPE on delayed open
|
|
* I2PTunnelHTTPServer: Maybe catch an NPE
|
|
* SOCKS: Allow .onion addresses for onioncat testing
|
|
* Tunnel: Catch a rare AIOOB
|
|
|
|
2009-03-09 zzz
|
|
* Client:
|
|
- Clean up retry code
|
|
- Bring I2CP listen error to the summary bar
|
|
http://forum.i2p/viewtopic.php?t=3133
|
|
* I2PSnark: Remove the http from the add torrent box
|
|
* I2PTunnel:
|
|
- Add persistent key option for standard and IRC clients
|
|
- Add delay-open option for clients
|
|
- Get regenerate-dest-on-reconnect working
|
|
- Add default key file name
|
|
- Add link to addressbook
|
|
- I2PSink: Send protocol byte
|
|
* OCMOSJ:
|
|
- Change from 5% reply requests to at least
|
|
once per minute, in hopes of reducing IRC drops
|
|
- More clean up of the cache cleaning
|
|
* Routerconsole: Don't OOM configpeer.jsp on huge blocklists
|
|
|
|
2009-02-26 zzz
|
|
* I2CP Client: Add support for muxing
|
|
* I2PTunnel:
|
|
- Add new IRCServer tunnel type
|
|
- Add SOCKS 4/4a support
|
|
- Catch OOMs in HTTPServer
|
|
- Name the IRCClient filter threads
|
|
- Port Streamr to I2PTunnel
|
|
- The beginnings of SOCKS UDP support
|
|
* Naming: Add reverse lookup by hash
|
|
* OCMOSJ: Clean up the cache cleaning
|
|
* Router: Move addShutdownTask from Router to I2PAppContext
|
|
so that apps can register more easily
|
|
* Routerconsole:
|
|
- Thread hard shutdown and restart requests from the routerconsole,
|
|
and add a delay even if no tunnels, to allow time for a UI response
|
|
- Sort the summary bar destinations
|
|
- Move dest-to-hash converter to new helper class so we can
|
|
use it in i2ptunnel
|
|
|
|
2009-02-22 sponge
|
|
* BOB: Orphan tunnel issue fix, bump BOB version
|
|
* bump to Build 6
|
|
|
|
2009-02-16 zzz
|
|
* Streaming lib: Plug timer leak, don't send keepalives
|
|
after close, don't disconnect hard after close
|
|
|
|
2009-02-15 zzz
|
|
* Add licenses to all packages
|
|
* I2PSession: Concurrent _messagesReceived
|
|
* i2psnark: tmp file removal try #3
|
|
* I2PTunnel:
|
|
- Don't buffer POST data in HTTPClient
|
|
- Display destination even when stopped
|
|
- Enable key generation, dest modification, and
|
|
hashcash estimation in the GUI
|
|
- Add new CONNECT client
|
|
* NetDb: Enforce 60s minimum leaseset publish interval
|
|
* Streaming lib:
|
|
- Plug connection leak
|
|
- Move ConEvent from SimpleTimer to SimpleScheduler
|
|
- Move RetransmissionTimer (ResendPacketEvent)
|
|
from SimpleTimer to new SimpleTimer2
|
|
- Move ActivityTimer and Flusher from SimpleTimer to RetransmissionTimer
|
|
- SimpleTimer2 allows specifying "fuzz" to reduce
|
|
timer queue churn further
|
|
* Susidns: Fix save of new dest broken in 0.7
|
|
* TunnelPool:
|
|
- Allow leasesets with reduced leases for robustness and startup speed
|
|
- Plug in-progress build leak
|
|
|
|
2009-02-07 zzz
|
|
* ClientConnectionRunner, Shitlist, TunnelDispatcher:
|
|
Update using concurrent
|
|
* Streaming ConnectionHandler: Bound SYN queue and
|
|
use concurrent to prevent blowup
|
|
* HTTP Proxy: Fix error msg for b32 addresses
|
|
* I2CP: Implement optional reduce tunnels on idle - not hooked
|
|
in to i2ptunnel GUI yet - still needs tweaks
|
|
* I2CP MessageReader: Prevent rare NPE
|
|
* I2CP Writer: Rewrite using concurrent
|
|
* i2psnark: Add torrent and connection count
|
|
* I2PTunnel & I2CP:
|
|
- Fix tunnel reduction/restore, hook in the GUI
|
|
- Hook leaseset encryption into the GUI
|
|
- Implement saves for all the new stuff
|
|
- Add cancel button
|
|
- Add b32 display for non-http servers
|
|
- Prep for CONNECT
|
|
- Fix error msg when connection goes away
|
|
* NetDb: Remove all DataPublisher stuff
|
|
* Wrapper: Remove dup timeout
|
|
|
|
2009-02-02 sponge
|
|
* Final? cleanups to Slackbuilds.
|
|
* ant target for Slackbuilds.
|
|
|
|
2009-02-01 sponge
|
|
* Slackbuild files... if we can have them for Debian, why not :-)
|
|
|
|
2009-02-01 zzz
|
|
* Convert some inner classes to static (findbugs)
|
|
* DataHelper.readLong(): Was returning -1 on EOF instead
|
|
of throwing exception
|
|
* i2psnark: Increase tunnels and pipeline to 3
|
|
* NTCP: Use a java.util.concurrent execution queue instead of
|
|
SimpleTimer for afterSend() to reduce lock contention
|
|
* Remove source from susimail.war, susidns.war, i2ptunnel.war (85KB)
|
|
* Routerconsole:
|
|
- Move common methods to new HelperBase class
|
|
- Make reseed link a button
|
|
* SimpleScheduler: New replacement for SimpleTimer when events
|
|
will not be rescheduled or cancelled, to reduce SimpleTimer
|
|
lock contention
|
|
* Tunnel Pool:
|
|
- Remove tunnel from participating if can't contact next hop
|
|
- Fail outbound build faster if can't contact first hop
|
|
* Wrapper: Remove dup timeout
|
|
|
|
2009-01-31 dream
|
|
* Debian files
|
|
|
|
2009-01-31 sponge
|
|
* One line BOB discarded interger fix
|
|
(not that it mattered at this point)
|
|
|
|
2009-01-25 zzz
|
|
* Build files:
|
|
- Don't bundle unneeded XML parser xercesImpl.jar (1MB)
|
|
- Don't include unneeded stuff in Copy, Delete, Exec.jar (300KB)
|
|
* I2CP:
|
|
Implement new I2CP message ReconfigureSessionMessage.
|
|
Will be used for tunnel reduction.
|
|
* I2PTunnel Edit Pages:
|
|
- Change default length to 2+0
|
|
- Cleanup helper code
|
|
- Prevent null spoofhost
|
|
- Stub out the following new options (C=client, S=server):
|
|
+ Access list (S)
|
|
+ Certificate type (S)
|
|
+ Encrypted LeaseSet (S)
|
|
+ New dest on idle restart (C)
|
|
+ Tunnel closure on idle (C)
|
|
+ Tunnel reduction on idle (C,S)
|
|
* I2PTunnel Socks:
|
|
- Add support for SOCKS to GUI
|
|
- Don't NPE on SOCKS 4, just close
|
|
- Don't have SOCKS build a new dest for every request
|
|
- Beginnings of SOCKS configuration by port
|
|
- HTML error msg for attempted HTTP access
|
|
* LeaseSet: Add encrypt/decrypt methods
|
|
* netdb.jsp: Don't show stats by default
|
|
* OCMOSJ: Bundle a reply when we switch tunnel or lease,
|
|
to detect failure sooner
|
|
* PublishLocalRouterInfoJob:
|
|
- Delay for 5m at startup
|
|
- Run every 20m (was 7.5m)
|
|
* RebuildRouterInfoJob: Don't run it
|
|
* Router: Add a keyring for decrypting leases
|
|
* Routerconsole: Add configkeyring.jsp
|
|
* SummaryHelper.getTransferred() move to DataHelper,
|
|
rename to formatSize(), use on tunnels.jsp
|
|
* Streaming, I2CP, Client Message sending:
|
|
Pass message timeout through new I2CP message
|
|
SendMessageExpiresMessage, so that the router
|
|
uses the same expiration as the streaming lib.
|
|
Should help reliability.
|
|
* Streaming: TCB control block sharing
|
|
|
|
* 2009-01-24 0.7 released
|
|
|
|
2009-01-24 Complication
|
|
* Update versions, package release
|
|
|
|
2009-01-17 zzz
|
|
* NTCP: Prevent two NTCP Pumpers
|
|
|
|
2009-01-14 zzz
|
|
* config.jsp: Fix burst seconds display
|
|
* HTTPClient: Fix per-tunnel settings for i2cp.gzip and
|
|
i2ptunnel.httpclient.send* (thx tino)
|
|
* i2psnark:
|
|
- Fix double completion message
|
|
- Add crstrack
|
|
* initialNews.xml: Add .de (thx echelon)
|
|
* Message: Always distribute an inbound msg back out
|
|
a tunnel to foil a possible latency-measuring attack
|
|
(welterde)
|
|
* Naming:
|
|
- Change base32 names to *.b32.i2p
|
|
- Add i2p.naming.hostsTxt.useB32 config
|
|
* profiles.jsp: Remove 1m column
|
|
* SAM: Don't build tests by default
|
|
* Streaming:
|
|
- Prevent a rare NPE
|
|
- Reduce initial RTT to 8s (was 10s)
|
|
* tunnels.jsp: Add netdb links
|
|
|
|
2009-01-08 zzz
|
|
* addressbook: Prevent Base32 hostnames
|
|
* build.xml: Remove readme_xx.html from updater
|
|
* configtunnels.jsp: Fix display of outbound backup count
|
|
* configupdate.jsp: Fix corruption of update URLs
|
|
* i2psnark: Recognize Robert 0.3 and 4
|
|
* ExploreJob/SearchJob - fix brokenness:
|
|
- Give each search a minimum of time even at the end
|
|
- Fix ExploreJob exclude peer list
|
|
- Always add floodfills to exclude peer list
|
|
- Don't queue keys for exploration or run ExploreJob
|
|
if floodfill
|
|
- Allow floodfills to return non-floodfills in
|
|
a DSRM msg so exploration works
|
|
* ExploreJob/SearchJob - more fixes:
|
|
- Disable ExploreKeySelectorJob completely, just have
|
|
StartExplorersJob select a random key if queue is empty
|
|
- Add netDb.alwaysQuery=[B64Hash] for debugging
|
|
- Queue results of exploration for more exploration
|
|
- Floodfills periodically shuffle their KBuckets, and
|
|
FloodfillPeerSelector sorts more keys, so that
|
|
exploration works well
|
|
* Shitlist: Reduce max time to 30m (was 60m)
|
|
* Streaming:
|
|
- Reduce default initial window size from 12 to 6,
|
|
to account for the MTU increase in the last release
|
|
and try to limit initial packet loss
|
|
- Reduce fast retransmit threshold from 3 to 2
|
|
* Transport: Don't shitlist a peer if we are at our
|
|
connection limit
|
|
|
|
2009-01-03 zzz
|
|
* config.jsp: Move the buttons up
|
|
* configservice.jsp: Clean up and fix the broken (?)
|
|
browser launch configuration
|
|
* i2psnark:
|
|
- Try again to remove the i2psnarkurl files on shutdown
|
|
- Sort torrents with a locale-based sort
|
|
* NetDb:
|
|
- Expire routers with introducers after 90m.
|
|
This should improve reachability to firewalled routers
|
|
by keeping introducer info current.
|
|
- Expire routers with no addresses after 90m.
|
|
- Convert to java concurrent
|
|
* Stats: Add router.memoryUsed, graph by default
|
|
* Summary bar: Remove spurious UDP warning on startup
|
|
* UpdateHandler: Make extensible for upcoming
|
|
torrent updater
|
|
|
|
2008-12-15 zzz
|
|
* Remove apps/ bogobot jdom pants q rome stasher syndie
|
|
|
|
2008-12-14 zzz
|
|
* Contexts: Add int getProperty(String prop, int default)
|
|
* I2PAppThread: Constructor fix
|
|
* More split classes into their own files for mkvore
|
|
* Streaming: Don't build test cases by default
|
|
* Summary bar: Replace links with buttons
|
|
* Transport:
|
|
- Cleanup max connections code
|
|
- Add i2np.udp.maxConnections
|
|
- Set max connections based on share bandwidth
|
|
- Add haveCapacity() that can be used for connection
|
|
throttling in the router
|
|
- Reject IBGW/OBEP requests when near connection limit
|
|
- Reduce idle timeout when near connection limit
|
|
* Tunnel request handler:
|
|
- Require tunnel.dropLoad* stats
|
|
- Speed up request loop
|
|
* I2CP, HostsTxtNamingService, I2PTunnel:
|
|
Implement Base32 Hash hostnames, via the naming service.
|
|
Names are of the form [52-characters].i2p, where
|
|
the 52 characters are the Base32 representation of our
|
|
256-byte hash. The client requests a lookup of the hash
|
|
via a brief I2CP session using new I2CP request/reply
|
|
messages. The router looks up the leaseset for the hash
|
|
to convert the hash to a dest. Convert the I2PTunnel
|
|
'preview' links to use Base32 hostnames as a
|
|
demonstration.
|
|
|
|
2008-12-08 zzz
|
|
* ATalk: Move from core to apps
|
|
* Blocklists: enable by default, include blocklist file
|
|
in new installs
|
|
* Build: Add findbugs target
|
|
* Cleanup of removed netdb stats
|
|
* Console:
|
|
- Don't display restart button if no wrapper
|
|
- Remove PRNG stats
|
|
* Eepsite: Disable jetty webapps by default for new installs
|
|
* i2psnark:
|
|
- Add default i2psnark.config for new installs
|
|
- Remove wishlist link
|
|
- Recognize robert and i2psnarkxl clients
|
|
- Increase max files to 256
|
|
* Increase standalone heap size to 128MB
|
|
* NetDb: Split classes into their own files for mkvore
|
|
* PeerManager: Fix NPE on early shutdown
|
|
* SusiDNS: Add textareas
|
|
* Transport:
|
|
- Fixes, avoid NPEs, and cleanups when NTCP and/or UDP transports disabled
|
|
- More TCP removal cleanup
|
|
- Clean up bandwidth limiting, centralize defaults
|
|
- Force burst to be >= limit
|
|
- Increase default bw to 48/24, burst 64/32
|
|
* Tunnels: Avoid two NPEs on corrupt fragments
|
|
|
|
2008-12-01 zzz
|
|
* i2psnark:
|
|
- Refactor to allow running a single Snark without a SnarkManager again,
|
|
by moving some things from SnarkManager to I2PSnarkUtil,
|
|
having Snark call completeListener callbacks,
|
|
and having Storage call storageListener callbacks.
|
|
This is in preparation for using Snark for router updates.
|
|
Step 2 is to allow multiple I2PSnarkUtil instances.
|
|
- Big rewrite of Storage to open file descriptors on demand, and
|
|
close them when unused, so we can support large numbers of torrents.
|
|
|
|
* i2psnark:
|
|
- Remove static instances of I2PSnarkUtil, ConnectionAcceptor,
|
|
and PeerCoordinatorSet
|
|
- Convert static classes in Snark to listeners
|
|
- Fix Snark to work in single torrent mode again
|
|
- Should now work with multiple single Snarks
|
|
|
|
* i2psnark:
|
|
- Use new I2PAppThread that does not call global listeners on OOM,
|
|
so that OOMing apps will not shutdown the whole router.
|
|
|
|
* i2psnark:
|
|
- Don't create SnarkManager instance until first call,
|
|
so it doesn't create the i2psnark dir, read the config,
|
|
etc., for single Snark instances.
|
|
- Don't read i2psnark.config twice; fix setting
|
|
i2psnark.dir
|
|
- More Snark constructor changes for calling from router
|
|
- Make max connections per torrent configurable
|
|
|
|
* SAM:
|
|
- Use new I2PAppThread that does not call global listeners on OOM,
|
|
so that OOMing SAM will not shutdown the whole router.
|
|
|
|
* 2008-12-01 0.6.5 released
|
|
|
|
2008-12-01 Complication
|
|
* Update versions, package release, fix typo in comment
|
|
|
|
2008-11-26 zzz
|
|
* Fix Windows UrlLauncher
|
|
|
|
2008-11-21 zzz
|
|
* Cache DNS and negative DNS for 5m (was 1m and forever)
|
|
* Delay shitlist cleaner at startup
|
|
* Strip wrapper properties from client config
|
|
* Define multiple cert type
|
|
* Prohibit negative maxSends in streaming
|
|
* HTML fixup on configtunnels.jsp
|
|
* Increase wrapper exit timeout from default 15s to 30s
|
|
|
|
2008-11-20 zzz
|
|
* I2PTunnel: Handle missing fields in edit pages better
|
|
* Move DummyNetworkDatabaseFacade to his own file
|
|
to help the build dependencies
|
|
* Drop old tcp transport and old tunnel build sources
|
|
* EepGet:
|
|
- Better handling of 504 gateway timeout
|
|
(keep going up to limit of retry count rather
|
|
than just one more partial fetch)
|
|
- Add -t cmd line option for timeout
|
|
- Better handling of 403, 409, 503 errors
|
|
- Don't keep going after unknown return code
|
|
- Don't delay before exiting after a failure
|
|
|
|
2008-11-15 zzz
|
|
* Build files:
|
|
- Don't die if depend not available
|
|
- Only verify Jetty hash once
|
|
- Add streaming lib tests to depend task
|
|
* I2CP Compression:
|
|
- Add i2cp.gzip option (default true)
|
|
- Add compression stats
|
|
- Don't bother compressing if really small
|
|
|
|
2008-11-13 zzz
|
|
* Streaming:
|
|
- Add more info to Connection.toString() for debugging
|
|
- Fix lifetimeMessages{Sent,Received} stats
|
|
- Reduce RTT damping to 0.875 (was 0.9)
|
|
- Add a stream.con.initialRTT.{in,out} stats
|
|
* Build files:
|
|
- Use the depend task with caching for more accurate dependencies
|
|
- Make sure the routerconsole gets the latest router version
|
|
- Fix addressbook repeated builds
|
|
* HTTPClient: Add config options to pass Via, Referer,
|
|
and User-Agent through
|
|
* Blocklists: Fix lists with hashes only
|
|
|
|
2008-11-11 zzz
|
|
* Streaming - Fix several bugs and improve performance
|
|
when the initial data is larger than one MTU,
|
|
e.g. HTTP GETs with large URLs, CGI params or cookies,
|
|
or large HTTP POSTS:
|
|
- Don't reject additional packets received without a
|
|
send stream ID (i.e. sent before the SYN ACK was received)
|
|
- Put unknown non-SYN packets on the SYN queue also
|
|
so they won't be rejected
|
|
- Reduce flusher delay to 250ms (was 500)
|
|
- Flush unless window is full (was window is non-empty)
|
|
* Streaming: Enforce a minimum MTU of 512
|
|
* I2PTunnel: Change "interactive" max window size to 16 (was 1)
|
|
* NetDb: Fix a deadlock caused by last checkin
|
|
|
|
2008-11-09 zzz
|
|
* build.xml: Build speedups:
|
|
- Don't distclean in the updaterRouter target
|
|
- Don't make prepUpdate and prepupdateSmall depend
|
|
on distclean
|
|
- Don't make susimail build always clean
|
|
- Make pkg depend on distclean to be sure
|
|
- Clean out more routerconsole and susidns files in 'ant clean'
|
|
- i2ptunnel, routerconsole, susidns:
|
|
Only build WEB-INF when necessary
|
|
- systray: Only build jar when necessary
|
|
- Don't build i2psnark standalone for the updater target
|
|
* configclients.jsp: Provide a link when starting a webapp
|
|
* configtunnels.jsp:
|
|
- Code cleanup
|
|
- Add 4-hop option
|
|
- Remove +/- 0-2 option
|
|
* javadoc: Add some more package.html files
|
|
* I2PTunnelHTTPServer: Put the requestor's dest hash
|
|
in the request headers
|
|
* Jetty: Add a I2PRequestLog class to log request dest hash
|
|
* NetDb: Don't drop routerInfos if we have connectivity
|
|
issues or other problems
|
|
* NTCP: Lower idle timeout to 10m (was 15m)
|
|
* Routerconsole: Replace wtf msg w/ something nicer
|
|
* Tunnel BuildHandler: add config router.participantOnly,
|
|
set to true to refuse OBEP and IBGW roles, should
|
|
reduce connections significantly if set.
|
|
|
|
2008-11-02 zzz
|
|
* Certificates:
|
|
- Add a signed Certificate type
|
|
- Add a main() to PrivateKeyFile to generate
|
|
Destinations with various Certificate types
|
|
- Add a VerifiedDestination class to check Certificates
|
|
of various types
|
|
- Add a HashCash library from http://www.nettgryppa.com/code/
|
|
(no distribution restrictions)
|
|
- Allow non-null Certificates in addressbook
|
|
* I2PTunnel: Move some wayward stats to the I2PTunnel group
|
|
* NamingServices: Implement caching in the abstract class
|
|
* NewsFetcher: Fix last updated time
|
|
* Streaming: Increase MTU to 1730 (was 960);
|
|
see ConnectionOptions.java for analysis
|
|
* Throttle: Reduce default max tunnels to 2000 (was 2500)
|
|
* clients.config: Disable SAM and BOB by default for new installs
|
|
|
|
2008-10-26 zzz
|
|
* config.jsp: Add more help
|
|
* peers.jsp: Clean up 'Listening on' formatting
|
|
* profiles.jsp: Don't override locale number format
|
|
* netdb.jsp: Indicate if hidden
|
|
* summary.jsp: Indicate if hidden
|
|
* i2ptunnel/edit.jsp: Disable word wrap in textarea
|
|
* Blocklist: Change logging from ERROR to WARN
|
|
* FloodfillMonitor:
|
|
- Fix ff count (we forgot ourselves)
|
|
- Don't become ff if hidden
|
|
* HandleFloodfillDatabaseLookupMessageJob:
|
|
Send back your routerinfo with the DSRM if not ff to
|
|
spread the word that you aren't ff anymore
|
|
* I2Ping:
|
|
- Add -n count option
|
|
- Add rtt output
|
|
- Enhance help
|
|
- Fix option handling
|
|
* More findbugs cleanups
|
|
* NetDb:
|
|
- Fix behavior when router.isHidden=true
|
|
- Delay StartExplorersJob for 10m at startup
|
|
- Update dbLookup profile stats in FloodOnlySearchJob
|
|
and FloodfillVerifyStoreJob
|
|
- Fix response time store in profile in SearchJob
|
|
* Stats:
|
|
- Remove unused tunnel.buildSuccess and tunnel.buildFailure
|
|
- Remove tunnel.buildRequestTime and 5m rate stats from
|
|
netDb, effective in next release
|
|
* UDP:
|
|
- Don't do peer tests when hidden
|
|
- Don't offer to introduce when hidden
|
|
- Don't continually rebuild routerInfo when hidden
|
|
- Don't continually rebuild routerInfo when
|
|
i2np.udp.internalPort is set but i2np.udp.port is not
|
|
- Remove some unused functions
|
|
|
|
2008-10-20 zzz
|
|
* configclients.jsp: Handle clients with no args
|
|
* index.jsp: Add readme_nl.html (thanks mathiasdm!),
|
|
readme_sv.html (thanks hottuna!)
|
|
* Big findbugs cleanup
|
|
* Client: Prevent a race causing session reconnect
|
|
* FloodfillMonitor:
|
|
- Don't become ff if clock skew is high
|
|
- Rebuild routerinfo immediately when ff status changes
|
|
* FloodOnlySearchJob: Recover better if the floodfills
|
|
you know are no longer floodfill or are gone
|
|
* Installer: Bump min JRE to 1.5
|
|
* ShellCommand: Fix main()
|
|
|
|
2008-10-14 zzz
|
|
* index.jsp: Add multilanguage support for readme.html;
|
|
add readme_de.html (thanks devzero!)
|
|
* configupdate.jsp, configadvanced.jsp:
|
|
Disable word wrap in textareas
|
|
* install*.txt: Update for 1.5
|
|
* summary.jsp: Remove failing peer count
|
|
|
|
2008-10-10 zzz
|
|
* Profiles: Reduce reject penalty in
|
|
capacity calculation to avoid a congestion collapse
|
|
* Throttle: Change reject to BANDWIDTH from CRIT on shutdown
|
|
for improved anonymity
|
|
* Tunnels: Implement random discard to enforce share limit
|
|
* Tunnel Tests: Add time for outbound delay, to avoid
|
|
congestion collapse
|
|
* UDPPacketReader: Adjust logging
|
|
* build files: Change to source=1.5, target=1.5
|
|
* configpeer.jsp: Table cleanup
|
|
* i2psnark: Change default tunnel length from 1+1 to 2+0
|
|
* peers.jsp: Change <,> to in,out for UDP
|
|
|
|
2008-10-09 sponge
|
|
* Update version to -3
|
|
* BOB database threadlocking fixes
|
|
|
|
2008-10-08 sponge
|
|
* Update version to -2
|
|
* Bugfixes and additions to BOB
|
|
|
|
2008-10-07 sponge
|
|
* Bugfixes and additions to streaming.
|
|
* Added SimpleStore class in utils.
|
|
* Fixed SimpleTimer class to allow exit.
|
|
* BOB (Basic Open Bridge) added.
|
|
|
|
* 2008-10-05 0.6.4 released
|
|
|
|
2008-10-05 Complication
|
|
* Update versions, package release
|
|
|
|
2008-09-29 zzz
|
|
* i2psnark: Add codevoid link, remove mastertracker
|
|
|
|
2008-09-23 zzz
|
|
* config.jsp: Add some reachability help
|
|
* configpeer.jsp: Add blocklist info
|
|
* help.jsp: Add link to German FAQ
|
|
* tunnels.jsp: Fix inactive participating count
|
|
* SearchReplyJob: Don't look up references to shitlisted peers
|
|
* TunnelPeerSelector: Avoid a peer for 20s after a reject or timeout
|
|
|
|
2008-09-20 zzz
|
|
* NetDb: Fix the totally broken "check new routers against blocklist"
|
|
code from 3 checkins ago
|
|
* tunnels.jsp: Sort participating tunnels by usage, display rate
|
|
|
|
2008-09-19 zzz
|
|
* Tunnels:
|
|
- Add missing message accounting for inbound gateways,
|
|
we were underestimating participating traffic because of it,
|
|
and the tunnels were classified "inactive"
|
|
- Add participating tunnel role on tunnels.jsp
|
|
|
|
2008-09-18 zzz
|
|
* Throttle:
|
|
- Correctly check inbound and outbound total bw limits separately
|
|
- Fix up and actually use the tunnel.participatingMessageCount stat,
|
|
favor it if lower than the total bw stat, so that
|
|
client traffic isn't included for throttle decisions
|
|
- Reduce min message count from 60 to 40
|
|
* Tunnel Dispatcher:
|
|
- Add tunnel.participatingBandwidth stat
|
|
- Remove all 3h and 24h stats
|
|
|
|
2008-09-15 zzz
|
|
* FloodOnlySearchJob:
|
|
- Ask non-floodfill peers if we don't know any floodfills
|
|
- Lookup hashes in the DatabaseSearchReplyMessage if we
|
|
don't know enough floodfills
|
|
* NetDb: Check new routers against blocklist
|
|
* Router: Shutdown clients first
|
|
* Throttle:
|
|
- Use 60s rather than 10m tunnel.participatingMessageCount stat
|
|
- Fix a summary bar message
|
|
* Tunnel Dispatcher: Update tunnel.participatingMessageCount
|
|
every 20s, rather than at tunnel expiration, to maintain
|
|
a more current stat
|
|
* Tunnel Pool:
|
|
- Prevent excess zero-hop tunnels
|
|
- Always wait before looping in BuildExecutor
|
|
* configlogging.jsp: Increase box width
|
|
* logs.jsp: Remove unused connection log, cut wrapper log output in half
|
|
|
|
2008-09-12 zzz
|
|
* Blocklist: Fix a log message format
|
|
* HarvesterJob: Don't instantiate if disabled
|
|
* i2psnark:
|
|
- Add config i2psnark.linkPrefix to enable access to completed
|
|
torrents from a different machine - examples:
|
|
i2psnark.linkPrefix=file://///localserver/path/to/files/
|
|
i2psnark.linkPrefix=http://localwebserver/path/
|
|
(Stop i2psnark, add to i2psnark.config, restart)
|
|
- Remove Galen and NickyB trackers
|
|
* NetDb: Add netDb.exploreKeySet stat
|
|
* netdb.jsp: Add parameter ?r=xxxxxx to view a single routerinfo,
|
|
and ?r=. to view our own; change links on other pages too
|
|
* Transport: Make 0.0.0.0/8 and 169.254.0.0/16 private
|
|
|
|
2008-09-06 zzz
|
|
* EepGet command line: Fix byte counts after a failed resume
|
|
* NTCP: Mark unreachable on outbound connection timeout
|
|
* Shitlist: Fix partial shitlisting (still unused though)
|
|
* Summary Bar: Warn if firewalled and floodfill
|
|
* Throttle: Combine current and last bw measurement,
|
|
reduce default max tunnels to 2500 (was 3000)
|
|
* Tunnel BuildHandler: Logging cleanup
|
|
* UpdateHandler: Cleanup, clarify failure message
|
|
* DataHelper: Prepare for 999 day uptime :)
|
|
|
|
2008-08-29 zzz
|
|
* Tunnel BuildExecutor: Debug cleanup
|
|
* Profiles: Penalize capacity when tunnel build request times out
|
|
* Shutdown: Call the shutdown hooks before the router shutdown
|
|
rather than after
|
|
* Stats: Remove tunnel.Bps.* stats when the tunnel pool is closed
|
|
|
|
2008-08-27 zzz
|
|
* Floodfill Peer Selector: Prefer already-connected floodfill
|
|
peer for direct RouterInfo stores, to mimimize floodfill
|
|
connections
|
|
* Peer Profiles: Classify connected peers as "active",
|
|
which will help improve the fast pool
|
|
* Transport Manager: Add isEstablished(Hash)
|
|
* NTCP: Reduce max idle time from 20m to 15m
|
|
* NetDb stats: Post-0.6.3 clean up
|
|
|
|
* 2008-08-24 0.6.3 released
|
|
|
|
2008-08-24 Complication
|
|
* Update versions, package release
|
|
|
|
2008-08-20 zzz
|
|
* Blocklists: Handle blank lines and \r\n in blocklist.txt
|
|
* NTCP: Add connection limit, set by i2np.ntcp.maxConnections,
|
|
default is 500 (very high for now)
|
|
* Persistent data store: Increase write limit from 300 to 600
|
|
so floodfill routers don't get backed up
|
|
|
|
2008-08-13 zzz
|
|
* i2psnark: Fix OOM vulnerability by checking incoming message length
|
|
(thanks devzero!)
|
|
|
|
2008-08-04 zzz
|
|
* Floodfill Peer Selector:
|
|
- Avoid peers whose netdb is old, or have a recent failed store,
|
|
or are forever-shitlisted
|
|
|
|
2008-07-30 zzz
|
|
* Blocklists:
|
|
- New, disabled by default, except for blocking of
|
|
forever-shitlisted peers. See source for instructions
|
|
and file format.
|
|
* Transport - Reject peers from inbound connections:
|
|
- Check IP against blocklist
|
|
- Check router hash against forever-shitlist, then block IP
|
|
|
|
2008-07-16 zzz
|
|
* configpeer.jsp: New
|
|
* i2psnark: Open completed files read-only the first time
|
|
* profiles.jsp: Show bonuses, link to configpeer.jsp
|
|
* PRNG: Move logging from wrapper to router log
|
|
* SSU:
|
|
Don't proactively reconnect until 30m idle, so
|
|
we don't lose introducer tags prematurely
|
|
|
|
2008-07-16 Oldaris
|
|
* Imports cleanup
|
|
|
|
2008-07-07 zzz
|
|
* i2psnark:
|
|
- Repair corrupted files with wrong length rather than die
|
|
- Register shutdown hook to properly shutdown torrents when
|
|
the router shuts down, hopefully will reduce corruption
|
|
- Add Galen tracker
|
|
- Add a note about how to change directory
|
|
* HTTP Proxy: Don't show jump links for unknown jump hosts
|
|
* KeyManager:
|
|
- Don't write router key backup when leaseSet keys are updated
|
|
- Synchronize to prevent concurrent writes (thanks Galen!)
|
|
- Backup keys every 7 days instead of every 5 minutes
|
|
* LoadTestManager: Don't instantiate, it's disabled
|
|
* Router console: Flag placeholder pages as noncacheable
|
|
* Streaming lib:
|
|
- Change some logging from WARN to INFO
|
|
- Clean up toString()
|
|
* SSU:
|
|
- Try to pick better introducers by checking shitlist,
|
|
wasUnreachable list, failing list, and idle times
|
|
- To keep introducer connections up and valid,
|
|
periodically send a "ping" (a data packet with no data and no acks)
|
|
to everybody that has been an introducer in the last two hours
|
|
- Add a stat udp.receiveRelayRequestBadTag, make udp.receiveRelayRequest only for good ones
|
|
- Remove some 60s and 5m stats, leave only the 10m ones
|
|
- Narrow the range for the retransmit time after an allocation fail
|
|
- Adjust some logging
|
|
|
|
2008-06-30 zzz
|
|
* configstats.jsp: Fix NPE when no stats checked (thanks nothome27!)
|
|
* i2psnark:
|
|
- Fix NPE caused by race (thanks echelon!)
|
|
- Add mastertracker, remove de-ebook
|
|
* NTCP:
|
|
- Try to fix 100% CPU, caused perhaps by JVM NIO bug...
|
|
- Fix failsafe stats
|
|
* PersistentDataStore: More leaseSet code cleanup
|
|
* SimpleTimer: Change congestion message from error to warn
|
|
|
|
2008-06-24 zzz
|
|
* FloodfillMonitorJob: Change range from 5-7 to 4-6
|
|
* NTCP: Remove getIsInbound(), duplicate of isInbound()
|
|
* PersistentDataStore: Don't try to remove nonexistent leaseSet files
|
|
* Router console: add placeholder pages for i2psnark, i2ptunnel,
|
|
susidns, and susimail for use when the .wars are not running
|
|
* Streaming lib: Increase max window size to 128
|
|
|
|
2008-06-22 welterde
|
|
* Optimize I2PDatagramDissector
|
|
|
|
2008-06-20 zzz
|
|
* configclients.jsp: Add start button for clients and webapps.
|
|
* PRNG: Add two stats
|
|
* Summary bar:
|
|
- Display Warning for TCP private IP address
|
|
- Display PRNG stats
|
|
* OutNetMessage: Change cache logging from WARN to INFO
|
|
|
|
2008-06-17 zzz
|
|
* Comm System: Add new STATUS_HOSED for use when UDP bind fails
|
|
* Summary bar: Display helpful errror message when UDP bind fails
|
|
* UDP: Don't bid when UDP bind fails
|
|
* configclients.jsp: Implement saves for clients and webapps.
|
|
|
|
2008-06-16 zzz
|
|
* UDP: Prevent 100% CPU when UDP bind fails;
|
|
change bind fail message from ERROR to CRIT
|
|
* Refactor LoadClientAppsJob.java, move some functions to new
|
|
ClientAppConfig.java, to make them easily available to
|
|
new configclients.jsp
|
|
* RouterConsoleRunner: Use a new config file, webapps.config,
|
|
to control which .wars in webapps/ get run. Apps are enabled
|
|
by default; disable by (e.g.) webapps.syndie.startOnLoad=false
|
|
Config file is written if it does not exist.
|
|
Implement methods for use by new configclients.jsp.
|
|
* configclients.jsp: New. For both clients and webapps.
|
|
Saves are not yet implemented.
|
|
|
|
2008-06-10 zzz
|
|
* Floodfill: Add new FloodfillMonitorJob, which tracks active
|
|
floodfills, and automatically enables/disables floodfill on
|
|
Class O routers to maintain 5-7 total active floodfills
|
|
* NetDb Stats:
|
|
- Remove several more stats
|
|
- Don't publish bw stats in first hour of uptime
|
|
- Publish floodfill stats even if other stats are disabled
|
|
- Changes not effective until 0.6.2.1 to provide cover.
|
|
* Throttle: Use BANDWIDTH rather than CRIT as the rejection reason at
|
|
startup, so peers don't list us as failing.
|
|
* graphs.jsp: Fix a bug where it tries to display the combined
|
|
bandwidth graph when it isn't available
|
|
|
|
2008-06-09 zzz
|
|
* Propagate i2.i2p.i2p-0.6.2.1-pre branch to i2p.i2p
|
|
|
|
2008-06-09 zzz
|
|
* Reachability: Restrict peers with no SSU address at all from inbound tunnels
|
|
* News:
|
|
- Add display of last updated and last checked time
|
|
on index.jsp and configupdate.jsp
|
|
- Add a function to get update version (unused for now)
|
|
* config.jsp: Add another warning
|
|
|
|
2008-06-07 zzz
|
|
* NetDb: Tweak some logging on lease problems
|
|
* Shitlist:
|
|
- Add shitlistForever() and isShitlistedForever(), unused for now
|
|
- Sort the HTML output by router hash
|
|
* netdb.jsp:
|
|
- Sort the lease HTML output by dest hash, local first
|
|
- Sort the router HTML output by router hash
|
|
|
|
2008-06-06 zzz
|
|
* LeaseSet:
|
|
- Sort the leases by expiration date in TunnelPool.locked_buildNewLeaseSet()
|
|
to make later LeaseSet comparisons reliable. This cleans up the code too.
|
|
- Fix broken old vs. new LeaseSet comparison
|
|
in ClientConnectionRunner.requestLeaseSet(),
|
|
so that we only sign and publish a new LeaseSet when it's really new.
|
|
Should reduce outbound overhead both in LeaseSet publishing and LeaseSet bundling,
|
|
and floodfill router load, since locked_buildNewLeaseSet() generates
|
|
the same LeaseSet as before quite frequently, often just seconds apart.
|
|
|
|
2008-06-05 zzz
|
|
* LeaseSet - code cleanup:
|
|
- Add exception to enforce max # of leases = 6, should be plenty
|
|
- Rewrite TunnelPool.locked_buildNewLeaseSet() so it doesn't add lots of
|
|
leases and then immediately remove them again, triggering
|
|
the new leaseSet size exception
|
|
- Remove the now unused LeaseSet.removeLease(lease) and
|
|
LeaseSet.removeLease(index)
|
|
- Store first and last expiration for efficiency
|
|
* Peer Profiles - Preparation for using bonuses:
|
|
- Use CapacityBonus rather than ReachablilityBonus in the Capacity calculation
|
|
- Persist CapacityBonus rather than ReachabilityBonus
|
|
- Include SpeedBonus in the Speed calculation
|
|
- Prevent negative values in Speed and Capacity when using bonuses
|
|
- Clean up SpeedCalculator.java
|
|
* HTTP Proxy error pages: Don't say eepsites are 'temporarily' down since we don't know
|
|
* Add some config files for a future small distribution
|
|
* configtunnels.jsp: Add warnings for <= 0 and >= 4 hop configurations
|
|
|
|
2008-06-01 zzz
|
|
* Client Apps: Add new parameter for clients.config,
|
|
clientApp.x.startOnLoad=false, to disable loading
|
|
(for SAM for example). Defaults to true of course.
|
|
* Logging: Move common WARN output to DEBUG so we can ask users to
|
|
set the default log level to WARN without massive spewage
|
|
* ProfileOrganizer: Restrict !isSelectable() (i.e. shitlisted) peers from the High Capacity tier,
|
|
not just the Fast tier, since we don't use them for tunnels anyway
|
|
* SAM: Add some compiler flexibility to two obscure makefiles
|
|
* i2psnark: Change displayed peer idents to match that shown by bytemonsoon
|
|
(sponge's suggestion)
|
|
* summary bar:
|
|
- Hide ident, provide a tooltip and a link
|
|
- Add a warning if you are firewalled and class O
|
|
|
|
2008-06-07 Complication
|
|
* Fix version in news.xml so it could be published
|
|
|
|
* 2008-06-07 0.6.2 released
|
|
|
|
2008-06-07 Complication
|
|
* Write announcement and prepare for release
|
|
|
|
2008-05-29 zzz
|
|
* Fix up initialNews.xml
|
|
|
|
2008-05-27 zzz
|
|
* Transport:
|
|
- NTCP and UDP: Don't bid to connect to private IP addresses, mark unreachable
|
|
- UDP: Don't bid when IP address missing, mark unreachable
|
|
|
|
2008-05-26 zzz
|
|
* Throttle: Set a default router.maxParticipatingTunnels = 3000 (was none)
|
|
* Stats: Add a fake uptime if not publishing stats, to get participating tunnels
|
|
* build.xml:
|
|
- Add an updaterSmall target which includes only the essentials
|
|
- Add an updaterRouter target which includes only i2p.jar and router.jar
|
|
- Clean up the build file some
|
|
- Remove empty eepsite/ and subdirs from i2pupdate.zip
|
|
* configtunnels.jsp: Add warning
|
|
* i2psnark: Catch a bencode exception (bad peer from tracker) earlier
|
|
* i2psnark-standalone: Fix exception http://forum.i2p/viewtopic.php?p=12217
|
|
|
|
2008-05-22 welterde
|
|
* Change jetty download location in build script
|
|
|
|
2008-05-20 zzz
|
|
* Reachability:
|
|
- Call the previously unused profile.tunnelTestFailed()
|
|
(redefined to include a probability argument)
|
|
and severely downgrade a peer's capacity upon failures,
|
|
depending on tunnel length and direction.
|
|
This will help push unreachable and malicious peers
|
|
out of the High Capacity tier.
|
|
- Put recent fail rate on profiles.jsp
|
|
* ProfileOrganizer: Logging cleanup
|
|
* eepsite_index.html: Update add-host and jump links
|
|
* HTTP Proxy: Remove trevorreznik jump server from list
|
|
|
|
2008-05-20 welterde
|
|
* implemented PrivateKeyFile
|
|
|
|
2008-05-18 zzz
|
|
* Throttle: Reject tunnels for first 20m uptime (was 10m)
|
|
* TunnelPeerSelectors:
|
|
- Re-enable strict ordering of peers,
|
|
based on XOR distance from a random hash
|
|
- Restrict peers with uptime < 90m from tunnels (was 2h),
|
|
which is really 60m due to rounding in netDb publishing.
|
|
* i2psnark:
|
|
- Limit max pipelined requests from a single peer to 128KB
|
|
(was unlimited; i2p-bt default is 5 * 64KB)
|
|
- Increase max uploaders per torrent to 6 (was 4)
|
|
- Reduce max connections per torrent to 16 (was 24) to increase
|
|
unchoke time and reduce memory consumption
|
|
- Strictly enforce max connections per torrent
|
|
- Choke more gradually when over BW limit
|
|
* help.jsp: Add a link to the FAQ
|
|
* peers.jsp: Fix UDP direction indicators
|
|
* hosts.txt: Add update.postman.i2p
|
|
|
|
2008-05-12 zzz
|
|
* Outbound message:
|
|
- Tweak the cache key for efficiency
|
|
* Stats:
|
|
- Require two udp stats when stats.full=false, caused NPE on peers.jsp
|
|
* Summary bar:
|
|
- Add messages when dropping tunnel requests due to load
|
|
* Update Handler:
|
|
- Add postman to the list
|
|
* i2psnark:
|
|
- Randomize the PeerCheckerTask start times to make global limiting
|
|
work better
|
|
- Calculate bw limits using 40s rather than 4m averages to make
|
|
bw limiting work better
|
|
- Change default bw limit from uplimit/3 to uplimit/2 due to
|
|
overhead reduction from the leaseset bundling change
|
|
* libjbigi:
|
|
- Add documentation on dynamic build option
|
|
- Add two speed tests to the build script
|
|
- Clean up the build script, make it easier to build dynamic
|
|
|
|
2008-05-10 zzz
|
|
* NetDb: Don't write the my.info file to disk, it isn't used for anything
|
|
* Stats:
|
|
- Simplify oldstats.jsp if no events in a stat
|
|
- Fix the hosed inNetPool.droppedDeliveryStatusDelay stat
|
|
(caused by an SSU hack)
|
|
* Update Handler:
|
|
- Add option to download and verify only
|
|
- Add distinct error message if version check fails
|
|
|
|
2008-05-09 welterde
|
|
* Add an update URL to the list
|
|
|
|
2008-05-07 zzz
|
|
* Reachability:
|
|
- Restrict peers requiring introducers from inbound tunnels,
|
|
since it's slow and unreliable... and many of them advertise
|
|
NTCP, which seems unlikely to work
|
|
- Provide warning on summary bar if firewalled with inbound NTCP enabled
|
|
* Stats: Remove the bw.[send,recv]Bps[1,15]s stats unless
|
|
log level net.i2p.router.transport.FIFOBandwidthLimiter >= WARN
|
|
at startup (you didn't get any data unless you set the log level anyway)
|
|
* oldstats.jsp: Don't put 2 decimal places on integer event counts
|
|
* Remove the Internals link from the menu bar
|
|
* i2psnark: Extend startup delay from 1 to 3 minutes
|
|
|
|
2008-05-06 welterde
|
|
* HTTP Proxy: Add i2jump.i2p jump service
|
|
|
|
2008-05-05 zzz
|
|
* NetDb Stats: Cleanup of commented out stats
|
|
* Outbound message:
|
|
- Fix a couple of tunnel cache cleaning bugs
|
|
- Cache based on source+dest pairs rather than just dest
|
|
- Send the reply leaseSet only when necessary,
|
|
rather than all the time (big savings in overhead)
|
|
- Enable persistent lease selection again
|
|
- Logging tweaks
|
|
* Reachability:
|
|
- Restrict <= .32 SSU-only peers from inbound tunnels,
|
|
since they don't know if they are unreachable
|
|
- Have SSU bid aggressively when it has less than 3 peers, so
|
|
we can determine our IP address and do peer testing.
|
|
Otherwise a router may never determine its IP address or reachability status.
|
|
* Summary bar:
|
|
- Add reachability status
|
|
- Add participating tunnel acceptance status
|
|
* Throttle: Reject tunnels for first 10m uptime
|
|
* I2PTunnel: Change default outproxy to false.i2p
|
|
* profiles.jsp: Add router version
|
|
|
|
* 2008-04-26 0.6.1.33 released
|
|
|
|
2008-04-20 zzz
|
|
* Outbound message/Reachability:
|
|
- Fix a bug from -19 causing the persistent lease selection
|
|
removed in -17 to be back again
|
|
- Use netDb-listed-unreachable instead of detected-unreachable
|
|
for exclusion of unreachable peers from selected leases,
|
|
as there are potential anonymity problems with using
|
|
detected-unreachable
|
|
- Tweak logging some more
|
|
* NetDb stats: Remove a couple more including the inefficient stat_identities
|
|
|
|
2008-04-17 zzz
|
|
* Reachability:
|
|
- Track unreachable peers persistently
|
|
(i.e. separately from shitlist, and not cleared when they contact us)
|
|
- Exclude detected unreachable peers from inbound tunnels
|
|
- Exclude detected unreachable peers from selected leases
|
|
- Exclude detected unreachable floodfill peers from lookups
|
|
- Show unreachable status on profiles.jsp
|
|
|
|
2008-04-16 zzz
|
|
* SSU/Reachability:
|
|
- Extend shitlist time from 4-8m to 40-60m
|
|
- Add some shitlist logging
|
|
- Don't shitlist twice when unreachable on all transports
|
|
- Exclude netDb-listed unreachable peers from inbound tunnels;
|
|
this won't help much since there are very few of these now
|
|
- Remove 10s delay on inbound UDP connections used for the
|
|
0.6.1.10 transition
|
|
- Track and display UDP connection direction on peers.jsp
|
|
- Show shitlist status in-line on profiles.jsp
|
|
|
|
2008-04-15 zzz
|
|
* SSU Reachability/PeerTestManager:
|
|
- Back out strict peer ordering until we fix SSU
|
|
- Back out persistent lease selection until we fix SSU
|
|
- Fix detection of UDP REJECT_UNSOLICITED by recording status on expiration
|
|
- Increase known Charlie time to 10m; 3m wasn't enough
|
|
- Don't continue retransmitting peer test if we know Charlie
|
|
- Don't run multiple peer tests at once
|
|
- Tighten test frequency range to 6.5-19.5m, was 0-26m
|
|
|
|
2008-04-12 zzz
|
|
* Addressbook: Disallow '.-' and '-.' in host names
|
|
* NTCP: Don't drop a connection unless both directions are idle;
|
|
Fix idle time for outbound connections
|
|
* Outbound message: Make sure cached lease is in current leaseSet
|
|
* Stats: Put all NetworkDatabase stats in same group
|
|
* TunnelPool: Stop building tunnels and leaseSets after client shutdown
|
|
* i2psnark: Add locking to prevent two I2CP connections
|
|
|
|
2008-04-07 zzz
|
|
* i2psnark:
|
|
- Implement upstream bandwidth limiting
|
|
- Fix a rare NPE at startup/shutdown
|
|
- Really increase retries for .torrent fetch
|
|
* profiles.jsp: Minor cleanup
|
|
* DataHelper: Only format < 5s as ms
|
|
* Eepget: Fix percentage output on command line eepget retries
|
|
* Lower partipating message priority from 400 to 200
|
|
* NTCP: Add a debug message
|
|
* Outbound message: Minor cleanup
|
|
|
|
2008-03-30 zzz
|
|
* ExploratoryPeerSelector: Try NonFailing even more
|
|
* HostsTxtNamingService: Add reverse lookup support
|
|
* Outbound message: Minor cleanup
|
|
* i2psnark TrackerClient: Minor cleanup
|
|
* checklist.txt: Minor edit
|
|
* hosts.txt: Add perv.i2p, false.i2p, mtn.i2p2.i2p
|
|
* i2ptunnel.config: Change CVS client to mtn
|
|
* netdb.jsp: Show leaseSet destinations using reverse lookup
|
|
* profiles.jsp: First cut at showing floodfill data
|
|
|
|
2008-03-27 zzz
|
|
* Send messages for the same destination to the same inbound
|
|
lease to reduce out-of-order delivery.
|
|
* ExploratoryPeerSelector: Back out the floodfill peer exclusion
|
|
for now, as it prevents speed rating of those peers
|
|
|
|
2008-03-26 zzz
|
|
* ReseedHandler: Support multiple urls,
|
|
add netdb.i2p2.de as a 2nd default
|
|
|
|
2008-03-25 zzz
|
|
* i2psnark:
|
|
- Add support for secondary open trackers
|
|
- Refactor and simplify the TrackerClient code
|
|
- Add welterde's tracker to the default list
|
|
- Don't have eepget retry announces
|
|
- Slow down tracker contacts if they've failed for a while
|
|
- Add some debug support showing connections (?p=2)
|
|
* hosts.txt: Add nickyb.i2p, tracker.welterde.i2p
|
|
|
|
2008-03-22 zzz
|
|
* NewsFetcher: Fix bug causing fetch every 10m
|
|
|
|
2008-03-22 zzz
|
|
* Tunnel Testing:
|
|
- Fix counting so it really takes 4 consecutive failures
|
|
rather than 4 total to remove a tunnel
|
|
- Credit or blame goes to the exploratory tunnel as well
|
|
as the tunnel being tested
|
|
- Adjust tunnel test timeout based on tunnel length
|
|
* ExploratoryPeerSelector: Tweak logging
|
|
* ProfileOrganizer: Adjust integration calculation again
|
|
* build.xml: Add to help
|
|
* checklist.txt: Tweak
|
|
* readme.html: Fix forum links
|
|
* netDb: Remove tunnel.testFailedTime
|
|
|
|
2008-03-19 zzz
|
|
* ExploratoryPeerSelector:
|
|
- Exclude floodfill peers
|
|
- Tweak the HighCap vs. NonFailing decision; try NonFailing
|
|
at least a minimum % of the time
|
|
* i2psnark: Increase retries for .torrent fetch
|
|
* IRC Proxy: Prevent mIRC from sending an alternate DCC request
|
|
containing an IP
|
|
* readme.html: Reorder some items
|
|
* Stats: Add some more required stats
|
|
* Streaming lib: Fix slow start to be exponential growth,
|
|
fix congestion avoidance to be linear growth.
|
|
Should speed up local connections a lot, and remote
|
|
connections a little.
|
|
|
|
2008-03-14 zzz
|
|
* Floodfill Search:
|
|
- Prefer heard-from, unfailing, unshitlisted floodfill peers
|
|
|
|
2008-03-14 zzz
|
|
* ProfileOrganizer:
|
|
- Use more recent stats to calculate integration
|
|
- Show that fast peers are also high-capacity on profiles.jsp
|
|
* readme.html: Update Syndie link
|
|
* TunnelPool: Update comments
|
|
* netDb: Report 1-2h uptime as 90m to further frustrate tracking,
|
|
get rid of the 60s tunnel stats
|
|
(effective as of .33 to provide cover)
|
|
|
|
2008-03-13 zzz
|
|
* Floodfill Search:
|
|
- Fix a bug that caused a single FloodfillOnlySearchJob
|
|
instance to be run multiple times, with unpredictable
|
|
results
|
|
- Select ff peers randomly to improve reliability
|
|
- Add some bulletproofing
|
|
|
|
2008-03-11 zzz
|
|
* ProfileOrganizer:
|
|
- Don't require a peer to be high-capacity to be
|
|
well-integrated (not used for anything right now,
|
|
but want to get it right for possible floodfill verification)
|
|
- Don't fall back to median for high-capacity threshold
|
|
if the mean is higher than the median, this prevents
|
|
frequent large high-capacity counts
|
|
- Fix high-capacity selector that picked one too many
|
|
* Console: put well-integrated count back in the summary
|
|
|
|
2008-03-10 zzz
|
|
* EepGet: Fix byte count for bytesTransferred status listeners
|
|
(fixes command line status)
|
|
* UpdateHandler:
|
|
- Fix byte count display
|
|
- Display final status on router console
|
|
- Don't allow multiple update jobs to queue up
|
|
- Increase max retries
|
|
- Code cleanup
|
|
- Don't show 'check for update' button when update in progress
|
|
- Enhance error messages
|
|
* NetDb: Comment out published netDb stats disabled for .32
|
|
|
|
2008-03-08 zzz
|
|
* TunnelPeerSelectors: Implement strict ordering of peers,
|
|
based on XOR distance from a random hash
|
|
separately generated for each tunnel pool
|
|
|
|
2008-03-07 zzz
|
|
* Naming: Optimize lookups for a destkey
|
|
* ProfileOrganizer, TunnelPoolSettings, ClientPeerSelector:
|
|
- Prevent peers with matching IPs from joining same tunnel.
|
|
Match 0-4 bytes of IP (0=off, 1=most restrictive, 4=least).
|
|
Default is 2 (disallow routers in same /16).
|
|
Set with router.defaultPool.IPRestriction=x
|
|
- Comment out unused RebuildPeriod pool setting
|
|
- Add random key to pool in preparation for XOR peer ordering
|
|
* SusiMail: Add 'Create Account' link
|
|
* TunnelDispatcher: Change a common wtf error to a warn
|
|
|
|
2008-03-05 zzz
|
|
* Naming: Make HostsTxt the sole default NamingService
|
|
(was Meta = PetName + HostsTxt)
|
|
* Naming: Add two new experimental NamingServices, EepGet and Exec,
|
|
not enabled by default -
|
|
see source comments in core/java/src/net/i2p/client/naming
|
|
for configuration instructions
|
|
* i2psnark: Don't do a naming lookup for Base64 destkeys
|
|
* i2psnark: Add a StartAll button
|
|
* Stats: Add code to disable most stats to save memory.
|
|
Set on configstats.jsp or set stat.full=false to disable the stats.
|
|
(true by default for now)
|
|
|
|
2008-03-09 Complication
|
|
* Give the Jetty build file ability to ask permission
|
|
before downloading the Jetty archive from the web,
|
|
and to verify its SHA1 + MD5 hashes. Adjust the main build file
|
|
in accordance with this change.
|
|
* Improve the release checklist.
|
|
|
|
* 2008-03-09 0.6.1.32 released
|
|
|
|
2008-03-07 zzz
|
|
* Update news and version numbers
|
|
|
|
2008-03-01 zzz
|
|
* Fix netdb.knownLeaseSets count reported by floodfill routers
|
|
(was broken by -3)
|
|
|
|
2008-02-27 zzz
|
|
* i2ptunnel: Add 3-hop option to edit.jsp to match configtunnels.jsp
|
|
* i2psnark: Remove orion and gaytorrents from default tracker list
|
|
* Remove orion from jump list and from eepsite_index.html
|
|
* Jbigi: Change jbigi version to 4.2.2 in build scripts - tested by amiga
|
|
* Capitalize OutboundMessageDistributor job name
|
|
* TunnelPool: Add a warning if all tunnels are backlogged
|
|
|
|
2008-02-26 zzz
|
|
* Reintroduce NTCP backlog pushback, with switch back to
|
|
previous tunnel when no longer backlogged
|
|
* Catch an nio exception in an NTCP logging statement if loglevel is WARN
|
|
* IRC Proxy: terminate all messages with \r\n (thanks TrivialPursuit!)
|
|
|
|
2008-02-21 zzz
|
|
* Raise inbound default bandwidth to 32KBps
|
|
* Fix config.jsp that showed 0KBps share bandwidth by default
|
|
|
|
2008-02-19 zzz
|
|
* Addressbook: Disallow '--' in host names except in IDN,
|
|
add some reserved host names
|
|
* I2PTunnel: Clarify edit form
|
|
* NetDb: Remove many stats from netDb, effective as of .32
|
|
* profiles.jsp: Display capabilities
|
|
* Tunnels: Enforce max tunnel length of 8, catch an index error
|
|
http://forum.i2p/viewtopic.php?t=2561
|
|
|
|
2008-02-16 zzz
|
|
* Fix race in TunnelDispatcher which caused
|
|
participating tunnel count to seesaw -
|
|
should increase network capacity
|
|
* Leave participating tunnels in 10s batches for efficiency
|
|
* Update participating tunnel ratestat when leaving a tunnel too,
|
|
to generate a smoother graph
|
|
* Fix tunnel.participatingMessageCount stat to include all
|
|
participating tunnels, not just outbound endpoints
|
|
* Simplify Expire Tunnel job name
|
|
|
|
2008-02-13 zzz
|
|
* PersistentDataStore: Write out 300 records every 10 min
|
|
rather than 1 every 10 sec;
|
|
Don't store leasesets to disk or read them in
|
|
* Combine rates for pools with the same length setting
|
|
in the new tunnel build algorithm
|
|
* Clarify a log message in the UpdateHandler
|
|
|
|
2008-02-13 zzz
|
|
* Make graphs clickable to get larger graphs
|
|
* Change SimpleTimer CRIT to a WARN, increase threshold
|
|
* Checklist update
|
|
|
|
2008-02-11 welterde
|
|
* Fix an NPE in UDP http://forum.i2p/viewtopic.php?t=2545
|
|
|
|
2008-02-10 zzz
|
|
* Add new tunnel build algorithm (preliminary)
|
|
* Change NTCP backlogged message from error to warning
|
|
* Checklist updates
|
|
|
|
* 2008-02-10 0.6.1.31 released
|
|
|
|
2008-02-10 Complication
|
|
* Update news and version numbers
|
|
|
|
2008-02-06 zzz
|
|
* build.xml: Add some apps to javadoc
|
|
* checklist.txt: Add some things
|
|
* news.xml: make links relative
|
|
* runplain.sh: Add some comments
|
|
* wrapper.config: Add some comments
|
|
|
|
2008-02-05 Complication
|
|
* Change the dates too (sorry for such forgetfulness!)
|
|
|
|
2008-02-04 Complication
|
|
* Also use the new key for checking, and add it into news.xml
|
|
|
|
2008-02-04 Complication
|
|
* Added my release signing key into TrustedUpdate.java
|
|
|
|
2008-01-31 zzz
|
|
* NewsFetcher: Change fetch failed from error to warning
|
|
* installer: Fix URL and "email"
|
|
* checklist.txt: New release checklist
|
|
|
|
2008-01-29 zzz
|
|
* Addressbook: Change default subscription
|
|
* ConfigUpdateHandler: Change default news URL
|
|
* initialNews.xml: Update version to .31
|
|
* news.xml: More updates
|
|
* hosts.txt: Add i2p-projekt.i2p
|
|
* readme.html: More URL updates
|
|
* SusiDNS: Change references to default subscription
|
|
|
|
2008-01-28 zzz
|
|
* news.xml: Updates, still preliminary
|
|
* ReseedHandler: Change default URL
|
|
* i2ptunnel.config: Change default outproxies
|
|
* readme.html: Change *.i2p.net URLs
|
|
* help.jsp: Change *.i2p.net URLs
|
|
* eepsite_index.html: Change stats.i2p addressbook subscription URL
|
|
* hosts.txt: Add krabs.i2p, true.i2p, www.i2p2.i2p
|
|
|
|
* 2008-01-28 0.6.1.30-20 converted from CVS to MTN
|
|
|
|
2008-01-08 zzz
|
|
* addressbook: Limit size of subscribed hosts.txt,
|
|
don't save old etag or last-modified data
|
|
* EepGet: Add some logging,
|
|
enforce size limits even when size not in returned header,
|
|
don't return old etag or last-modified data,
|
|
don't call transferFailed listener more than once
|
|
* Sign my update signing key
|
|
* NewsFetcher: add last-modified support, reduce number of retries
|
|
* Error pages: add icon and logo,
|
|
clarify 'destination not found' and 'proxy not found' pages
|
|
|
|
2008-01-07 zzz
|
|
* profiles.jsp formatting cleanup
|
|
* NTCP: Reduce max idle time from 60m to 20m
|
|
* NTCP: Fix idle time on connections with zero messages,
|
|
correctly drop these connections
|
|
|
|
2008-01-03 zzz
|
|
* addressbook: Do basic validation of hostnames and destkeys
|
|
* susidns: Add support for the private addressbook,
|
|
update the text and links somewhat
|
|
|
|
2008-01-02 zzz
|
|
* Add stats.i2p to the jump list
|
|
* Impose 20MB limit on POSTs and catch OOMs in POST
|
|
* eepsite_index.html: add stats.i2p services
|
|
* addressbook: log source of new keys; disallow dests > 516 bytes
|
|
* addressbook: convert hostnames to lower case to prevent duplicates
|
|
* susidns: generalize references to orion
|
|
|
|
2007-12-29 zzz
|
|
* Tweak IRC inbound PONG filtering to fix xchat/BitchX lagometers
|
|
* Allow commas in router.trustedUpdateKeys and router.updateURL again
|
|
* Change default news host from dev.i2p.net to dev.i2p
|
|
* Change jetty timeout from 30 to 60 sec (thanks sponge!)
|
|
|
|
2007-12-28 zzz
|
|
* Add zzz's update signing key
|
|
|
|
2007-12-26 Complication
|
|
* Improve reseed handler (less repetitive code,
|
|
avoid reporting errors when less than 10% of fetches fail)
|
|
|
|
2007-12-26 Complication
|
|
* Escape both CR, LF and CR LF line breaks in Router.saveConfig()
|
|
and unescape them in DataHelper.loadProps() to support
|
|
saving and loading config properties with line breaks
|
|
* Change the update URLs textbox into a textarea like keys have,
|
|
so different URLs go on different lines
|
|
* Modify TrustedUpdate to provide a method which supplies a key list
|
|
delimited with CR LF line breaks
|
|
* Modify DEFAULT_UPDATE_URL to supply a default URL list
|
|
delimited with CR LF line breaks
|
|
* Modify selectUpdateURL() to handle URL lists
|
|
delimited by any kind of line breaks
|
|
* Start saving trusted update keys
|
|
* Improve formatting on configupdate.jsp
|
|
|
|
2007-12-22 zzz
|
|
* Add support for multiple update URLs
|
|
* Change default for update to use i2p proxy,
|
|
add several URLs as defaults
|
|
* Enable trusted key form on configupdate.jsp
|
|
* Clarify the 'destination not found' error page
|
|
|
|
2007-12-16 zzz
|
|
* i2psnark: remove anonymitytracker from default list
|
|
|
|
2007-12-10 zzz
|
|
* Fix NPE in CLI TrustedUpdate keygen
|
|
|
|
2007-12-02 Complication
|
|
* Commit SAM v2 patch from mkvore (thank you!)
|
|
* Minor reformatting to preserve consistent whitespace
|
|
in old SAM classes (new classes unaltered)
|
|
|
|
2007-12-01 Complication
|
|
* Separate the checks "does Jetty .zip file need downloading"
|
|
and "does Jetty .zip file need extracting" in the Jetty buildfile.
|
|
First download (unless already done), then extract (unless done).
|
|
|
|
2007-11-26 zzz
|
|
* i2psnark: add timeout for receive inactivity
|
|
|
|
2007-11-24 zzz
|
|
* i2psnark: increase streaming lib write timeout to 240 sec and change
|
|
timeout action from "ping" to "disconect", as the fix in .30 to
|
|
honor options on outbound connections led to hung outbound connections
|
|
(bitfield never transmitted, connection never dropped)
|
|
|
|
2007-11-06 jrandom
|
|
* add i2host.i2p to the jump list
|
|
|
|
2007-10-11 zzz
|
|
* IRC Proxy: Fix several possible anonymity holes:
|
|
- Block CTCP in NOTICE messages
|
|
- Block CTCP anywhere in PRIVMSG and NOTICE, not just at first character
|
|
- Check for lower case commands
|
|
(Thanks sponge!)
|
|
|
|
2007-10-07 jrandom
|
|
* back out the NTCP backlog pushback, as it could be used to mount an
|
|
active anonymity attack.
|
|
|
|
* 2007-10-07 0.6.1.30 released
|
|
|
|
2007-10-07 Complication
|
|
* Fix an issue in EepGet whereby sending of "etag" and "lastModified" headers
|
|
broke retrying.
|
|
|
|
2007-09-27 zzz
|
|
* Implement pushback of NTCP transport backlog to the outbound tunnel selection code
|
|
* Clean up the NTCP and UDP tables on peers.jsp to be consistent,
|
|
fix some of the sorting
|
|
|
|
2007-09-22 zzz
|
|
* Send messages for the same destination out the same outbound
|
|
tunnel to reduce out-of-order delivery.
|
|
|
|
2007-09-19 zzz
|
|
* i2psnark: Fix broken multifile torrent Delete;
|
|
cleanup Storage resources in AddTorrent;
|
|
don't autostart torrent after Create
|
|
|
|
2007-09-18 zzz
|
|
* eepsite_index.html: Add links to trevorreznik address book
|
|
* streaming lib: Fix SocketManagerFactory to honor options on outbound connections
|
|
* streaming lib: Fix setDefaultOptions() when called with a ConnectionOptions parameter
|
|
* i2psnark: Don't make outbound connections to already-connected peers
|
|
* i2psnark: Debug logging cleanup
|
|
|
|
2007-09-14 zzz
|
|
* eepget: Increase header timeout to 45s
|
|
* HTTP proxy: Return a better error message for localhost requests
|
|
* tunnels: Fix PooledTunnelCreatorConfig memory leak
|
|
|
|
2007-09-09 zzz
|
|
* eepget: Add support for Last-Modified and If-Modified-Since
|
|
* addressbook: Finish incomplete support for Last-Modified
|
|
|
|
2007-09-08 zzz
|
|
* eepget: Copy over SocketTimeout.java file from syndie
|
|
|
|
2007-09-07 jrandom
|
|
* eepget: Merge timeout support from syndie
|
|
|
|
* 2007-08-23 0.6.1.29 released
|
|
|
|
2007-08-12 zzz
|
|
* readme.html - Add inproxy.tino.i2p, replace search.i2p with eepsites.i2p,
|
|
tweak the eepsite and troubleshooting sections
|
|
|
|
2007-08-11 zzz
|
|
* Add stats for individual tunnel rates (nice when graphed)
|
|
* i2psnark: Fix outbound tunnel nickname
|
|
|
|
2007-08-05 Complication
|
|
* Update the sharing calculator on config.jsp
|
|
and explain the trade-off even more thoroughly.
|
|
|
|
2007-08-04 Complication
|
|
* Lower the threshold between the K and L bandwidth class,
|
|
so that K is now < 12 KB/s, instead of <= 16 KB/s.
|
|
Hopefully this lets people with 128 kbit/s (16 KB/s) upload lines
|
|
participate in routing, if they keep the default share percentage.
|
|
|
|
2007-07-16 zzz
|
|
* i2psnark: Add tooltip info for choked/uninterested
|
|
|
|
2007-07-16 zzz
|
|
* Make selection of graphed data configurable via configstats.jsp,
|
|
remove most of the default graphs to save some memory
|
|
|
|
2007-07-15 zzz
|
|
* Add current values to graph legends
|
|
* Fix up previous Rate fix to check for divide by zero
|
|
|
|
2007-07-14 Complication
|
|
* Take the post-download routerInfo size check back out of ReseedHandler,
|
|
since it wasn't helpful, and a lower limit caused false warnings.
|
|
* Give EepGet ability to enforce a min/max HTTP response size.
|
|
* Enforce a maximum response size of 8 MB when ReseedHandler
|
|
downloads into a ByteArrayOutputStream.
|
|
* Refactor ReseedHandler/ReseedRunner from static to ordinary classes,
|
|
change invocation from RouterConsoleRunner accordingly.
|
|
* Add an EepGet status listener to ReseedHandler to log causes of reseed failure,
|
|
provide status reports to indicate the progress of reseeding.
|
|
* Enable icon for default eepsite, and the index page
|
|
of the router console (more later).
|
|
|
|
2007-07-14 zzz
|
|
* Clean up graphs.jsp - set K=1024 where appropriate,
|
|
output image sizes in html, catch ooms, other minor tweaks
|
|
* Fix current event count truncation which fixes graphs with low
|
|
60-sec event counts displaying high values
|
|
(bw.* and router.* graphs for example were 1.5x too high)
|
|
Affects all "events per period" (non-lifetime) counts.
|
|
|
|
2007-07-09 zzz
|
|
* i2psnark: give a better error message for a non-i2p torrent
|
|
|
|
2007-07-07 zzz
|
|
* Add auto-detect IP/Port to NTCP. When enabled on config.jsp,
|
|
SSU will notify/restart NTCP when the external address changes.
|
|
Now you can enable inbound TCP without a static IP or dyndns service.
|
|
|
|
2007-07-04 zzz
|
|
* Display calculated share bandwidth and remove load testing
|
|
on config.jsp
|
|
|
|
2007-07-01 zzz
|
|
* Replace broken option i2np.udp.alwaysPreferred with
|
|
i2np.udp.preferred and adjust UDP bids; possible settings are
|
|
"false" (default), "true", and "always".
|
|
Default setting results in same behavior as before
|
|
(NTCP is preferred unless it isn't established and UDP is established).
|
|
Use to compare NTCP and UDP transports.
|
|
|
|
2007-06-27 jrandom
|
|
* fix for a streaming lib bug that could leave a thread waiting
|
|
indefinitely (thanks Complication!)
|
|
|
|
2007-06-16 Complication
|
|
* First pass on EepGet and ReseedHandler improvements,
|
|
please avoid use on routers which matter!
|
|
* Give EepGet ability of downloading into an OutputStream,
|
|
such as the ByteArrayOutputStream of ReseedHandler.
|
|
* Detect failure to reseed better, report it persistently
|
|
and more verbosely, provide a link to logs
|
|
and suggest manual reseed.
|
|
|
|
2007-05-06 Complication
|
|
* Fix the build.xml file, so the preppkg build target won't try copying files
|
|
which became deprecated with the old Syndie (thanks for alerting, itsu!)
|
|
|
|
2007-03-31 zzz
|
|
* Add trevorreznik jump server to the http proxy error page
|
|
* Add anonymity to the trackers supporting details links in i2psnark
|
|
|
|
2007-03-24 zzz
|
|
* Remove Syndie from build targets and navbar
|
|
|
|
2007-03-22 zzz
|
|
* i2psnark tracker handling tweaks:
|
|
- Add link to tracker details page (Postman only for now, requires bytemonsoon patch)
|
|
- Add Base URL to tracker list configuration
|
|
- Web page links built from tracker list Base URLs
|
|
- Only build and sort tracker list once
|
|
- Add anonymityWeb tracker to default list
|
|
- Add tooltip info for TrackerErrs
|
|
- Stop torrent if not registered with tracker
|
|
- Mark temp files as delete on exit
|
|
|
|
2007-03-18 zzz
|
|
* i2psnark: Cleanup some handling of saved partial pieces
|
|
* i2psnark: Put bit counting in Bitfield.java for efficiency
|
|
* i2psnark: Save torrent completion state in i2psnark.config
|
|
|
|
* 2007-03-17 0.6.1.28 released
|
|
|
|
2007-03-13 zzz
|
|
* i2psnark: Make max total uploaders configurable (thanks Amiga4000!)
|
|
|
|
2007-03-12 jrandom
|
|
* dodge a race on startup (thanks zzz!)
|
|
|
|
2007-03-10 zzz
|
|
* Streaming lib: Change initial RTT deviation from RTT to RTT/2
|
|
(RFC 2988) to reduce early RTO values
|
|
|
|
2007-03-08 zzz
|
|
* i2psnark changes to improve upload performance:
|
|
* Implement total uploader limit (10)
|
|
* Don't timeout non-piece messages out
|
|
* Change chunk size to 32K (was 64K)
|
|
* Change request limit to 64K (was 256K)
|
|
* i2psnark: Disconnect from seeds when complete
|
|
|
|
2007-03-07 zzz
|
|
* Remove dynamic router keys from config.jsp
|
|
|
|
2007-03-07 zzz
|
|
* Streaming lib changes to improve upstream performance during congestion:
|
|
* Change min window size from 12 to 1
|
|
* Change max timeout from 10 to 45 sec
|
|
* Change initial timeout from 10 to 15 sec
|
|
* Change intial window size for i2psnark from 12 to 1
|
|
* Change slow start growth rate for i2psnark from 1/2 to 1
|
|
|
|
2007-03-04 zzz
|
|
* Update eepsite_index.html
|
|
|
|
2007-03-03 zzz
|
|
* Upgrade from Jetty 5.1.6 to 5.1.12 which fixes spaces in URL
|
|
* Add a updaterWithJetty build target
|
|
|
|
2007-03-03 zzz
|
|
* Implement priority sending for NTCP
|
|
* Disable trimForOverload() in tunnel BuildExecutor which
|
|
was preventing tunnel builds when outbound traffic was high
|
|
(i.e. most of the time when running i2psnark)
|
|
|
|
2007-02-28 zzz
|
|
* i2psnark: File reopen cleanup
|
|
|
|
2007-02-28 zzz
|
|
* i2psnark: Add peer details to web page
|
|
|
|
* 2007-02-15 0.6.1.27 released
|
|
|
|
2007-02-15 jrandom
|
|
* Limit the whispering floodfill sends to at most 3 randomly
|
|
chosen from the known floodfill peers
|
|
|
|
2007-02-14 jrandom
|
|
* Don't filter out KICK and H(ide oper status) IRC messages
|
|
(thanks Takk and postman!)
|
|
|
|
2007-02-13 jrandom
|
|
* Tell our peers about who we know in the floodfill netDb every
|
|
6 hours or so, mitigating the situation where peers lose track
|
|
of floodfill routers.
|
|
* Disable the Syndie updater (people should use the new Syndie,
|
|
not this one)
|
|
* Disable the eepsite tunnel by default
|
|
|
|
2007-01-30 zzz
|
|
* i2psnark: Don't hold _snarks lock while checking a snark,
|
|
so web page is responsive at startup
|
|
|
|
2007-01-29 zzz
|
|
* i2psnark: Add NickyB tracker
|
|
|
|
2007-01-28 zzz
|
|
* i2psnark: Don't hold sendQueue lock while flushing output,
|
|
to make everything run smoother
|
|
|
|
2007-01-27 zzz
|
|
* i2psnark: Fix orphaned Snark reader tasks leading to OOMs
|
|
|
|
2007-01-20 Complication
|
|
* Drop overlooked comment
|
|
|
|
2007-01-20 Complication
|
|
* Modify ReseedHandler to query the "i2p.reseedURL" property from I2PAppContext
|
|
instead of System, so setting a reseed URL in advanced configuration has effect.
|
|
* Clean out obsolete reseed code from ConfigNetHandler.
|
|
|
|
2007-01-20 zzz
|
|
* i2psnark: More choking rotation tweaks
|
|
* Improve performance by not reading in the whole
|
|
piece from disk for each request. A huge memory savings
|
|
on 1MB torrents with many peers.
|
|
|
|
2007-01-17 zzz
|
|
* Add new HTTP Proxy error message for non-http protocols
|
|
|
|
2007-01-17 zzz
|
|
* Add note on Syndie index.html steering people to new Syndie
|
|
|
|
2007-01-16 zzz
|
|
* i2psnark: Fix crash when autostart off and
|
|
tcrrent started manually
|
|
|
|
2007-01-16 zzz
|
|
* i2psnark: Fix bug caused by last i2psnark checkin
|
|
(ConnectionAcceptor not started)
|
|
* Don't start PeerCoordinator, ConnectionAcceptor,
|
|
and TrackerClient unless starting torrent
|
|
|
|
2007-01-15 jrandom
|
|
* small guard against unnecessary streaming lib reset packets
|
|
(thanks Complication!)
|
|
|
|
2007-01-15 zzz
|
|
* i2psnark: Add 'Stop All' link on web page
|
|
* Add some links to trackers and forum on web page
|
|
* Don't start tunnel if 'Autostart' unchecked
|
|
* Fix torrent restart bug by reopening file descriptors
|
|
|
|
2007-01-14 zzz
|
|
* i2psnark: Improvements for torrents with > 4 leechers:
|
|
choke based on upload rate when seeding, and
|
|
be smarter and fairer about rotating choked peers.
|
|
* Handle two common i2psnark OOM situations rather
|
|
than shutting down the whole thing.
|
|
* Fix reporting to tracker of remaining bytes for
|
|
torrents > 4GB (but ByteMonsoon still has a bug)
|
|
|
|
2006-10-29 zzz
|
|
* i2psnark: Fix and enable generation of multifile torrents,
|
|
print error if no tracker selected at create-torrent,
|
|
fix stopping a torrent that hasn't started successfully,
|
|
add eBook and GayTorrents trackers to form,
|
|
web page formatting tweaks
|
|
|
|
* 2006-10-10 0.6.1.26 released
|
|
|
|
2006-10-29 Complication
|
|
* Ensure we get NTP samples from more diverse sources
|
|
(0.pool.ntp.org, 1.pool.ntp.org, etc)
|
|
* Discard median-based peer skew calculator as framed average works,
|
|
and adjusting its percentage can make it behave median-like
|
|
* Require more data points (from at least 20 peers)
|
|
before considering a peer skew measurement reliable
|
|
|
|
2006-10-10 jrandom
|
|
* Removed the status display from the console, as its more confusing
|
|
than informative (though the content is still displayed in the HTML)
|
|
|
|
2006-10-08 Complication
|
|
* Add a framed average peer clock skew calculator
|
|
* Add config property "router.clockOffsetSanityCheck" to determine
|
|
if NTP-suggested clock offsets get sanity checked (default "true")
|
|
* Reject NTP-suggested clock offsets if they'd increase peer clock skew
|
|
by more than 5 seconds, or make it more than 20 seconds total
|
|
* Decrease log level in getMedianPeerClockSkew()
|
|
|
|
2006-09-29 zzz
|
|
* i2psnark: Second try at synchronization fix - synch addRequest()
|
|
completely rather than just portions of it and requestNextPiece()
|
|
|
|
2006-09-27 jrandom
|
|
* added HMAC-SHA256
|
|
* properly use CRLF with EepPost
|
|
* suppress jbigi/jcpuid messages if jbigi.dontLog/jcpuid.dontLog is set
|
|
* PBE session key generation (with 1000 rounds of SHA256)
|
|
* misc SDK helper functions
|
|
|
|
2006-09-26 Complication
|
|
* Take back another inadverent logging change in NTCPConnection
|
|
|
|
2006-09-26 Complication
|
|
* Take back an accidental log level change
|
|
|
|
2006-09-26 Complication
|
|
* Subclass from Clock a RouterClock which can access router transports,
|
|
with the goal of developing it to second-guess NTP results
|
|
* Make transports report clock skew in seconds
|
|
* Adjust renderStatusHTML() methods accordingly
|
|
* Show average for NTCP clock skews too
|
|
* Give transports a getClockSkews() method to report clock skews
|
|
* Give transport manager a getClockSkews() method to aggregate results
|
|
* Give comm system facade a getMedianPeerClockSkew() method which RouterClock calls
|
|
(to observe results, add "net.i2p.router.transport.CommSystemFacadeImpl=WARN" to logging)
|
|
* Extra explicitness in NTCP classes to denote unit of time.
|
|
* Fix some places in NTCPConnection where milliseconds and seconds were confused
|
|
|
|
2006-09-25 zzz
|
|
* i2psnark: Paranoid copy before writing pieces,
|
|
recheck files on completion, redownload bad pieces
|
|
* i2psnark: Don't contact tracker as often when seeding
|
|
|
|
2006-09-24 zzz
|
|
* i2psnark: Add some synchronization to prevent rare problem
|
|
after restoring orphan piece
|
|
|
|
2006-09-20 zzz
|
|
* i2psnark: Eliminate duplicate requests caused by i2p-bt's
|
|
rapid choke/unchokes
|
|
* i2psnark: Truncate long TrackerErr messages on web page
|
|
|
|
2006-09-16 zzz
|
|
* i2psnark: Implement retransmission of requests. This
|
|
eliminates one cause of complete stalls with a peer.
|
|
This problem is common on torrents with a small number of
|
|
active peers where there are no choke/unchokes to kickstart things.
|
|
|
|
2006-09-13 zzz
|
|
* i2psnark: Fix restoral of partial pieces broken by last patch
|
|
|
|
2006-09-13 zzz
|
|
* i2psnark: Mark a peer's requests as unrequested on disconnect,
|
|
preventing premature end game
|
|
* i2psnark: Randomize selection of next piece during end game
|
|
* i2psnark: Don't restore a partial piece to a peer that is already working on it
|
|
* i2psnark: strip ".torrent" on web page
|
|
* i2psnark: Limit piece size in generated torrent to 1MB max
|
|
|
|
2006-09-09 zzz
|
|
* i2psnark: Add "Stalled" indication and stat totals on web page
|
|
|
|
2006-09-09 zzz
|
|
* i2psnark: Fix bug where new peers would always be sent an "interested"
|
|
regardless of actual interest
|
|
* i2psnark: Reduce max piece size from 10MB to 1MB; larger may have severe
|
|
memory and efficiency problems
|
|
|
|
* 2006-09-09 0.6.1.25 released
|
|
|
|
2006-09-08 jrandom
|
|
* Tweak the PRNG logging so it only displays error messages if there are
|
|
problems
|
|
* Disable dynamic router keys for the time being, as they don't offer
|
|
meaningful security, may hurt the router, and makes it harder to
|
|
determine the network health. The code to restart on SSU IP change is
|
|
still enabled however.
|
|
* Disable tunnel load testing, leaning back on the tiered selection for
|
|
the time being.
|
|
* Spattering of bugfixes
|
|
|
|
2006-09-07 zzz
|
|
* i2psnark: Increase output timeout from 2 min to 4 min
|
|
* i2psnark: Orphan debug msg cleanup
|
|
* i2psnark: More web rate report cleanup
|
|
|
|
2006-09-05 zzz
|
|
* i2psnark: Implement basic partial-piece saves across connections
|
|
* i2psnark: Implement keep-alive sending. This will keep non-i2psnark clients
|
|
from dropping us for inactivity but also renders the 2-minute transmit-inactivity
|
|
code in i2psnark ineffective. Will have to research why there is transmit but
|
|
not receive inactivity code. With the current connection limit of 24 peers
|
|
we aren't in any danger of keeping out new peers by keeping inactive ones.
|
|
* i2psnark: Increase CHECK_PERIOD from 20 to 40 since nothing happens in 20 seconds
|
|
* i2psnark: Fix dropped chunk handling
|
|
* i2psnark: Web rate report cleanup
|
|
|
|
2006-09-04 zzz
|
|
* i2psnark: Report cleared trackerErr immediately
|
|
* i2psnark: Add trackerErr reporting after previous success; retry more quickly
|
|
* i2psnark: Set up new connections more quickly
|
|
* i2psnark: Don't delay tracker fetch when setting up lots of connections
|
|
* i2psnark: Reduce MAX_UPLOADERS from 12 to 4
|
|
|
|
2006-09-04 zzz
|
|
* Enable pipelining in i2psnark
|
|
* Make i2psnark tunnel default be 1 + 0-1
|
|
|
|
2006-09-03 zzz
|
|
* Add rate reporting to i2psnark
|
|
|
|
2006-09-03 Complication
|
|
* Limit form size in SusiDNS to avoid exceeding a POST size limit on postback
|
|
* Print messages about addressbook size to give better overview
|
|
* Enable delete function in published addressbook
|
|
|
|
2006-08-21 Complication
|
|
* Fix error reporting discrepancy (thanks for helping notice, yojoe!)
|
|
|
|
2006-08-03 jrandom
|
|
* Decrease the recently modified tunnel building timeout, though keep
|
|
the scaling on their processing
|
|
|
|
2006-07-31 jrandom
|
|
* Increase the tunnel building timeout
|
|
* Avoid a rare race (thanks bar!)
|
|
* Fix the bandwidth capacity publishing code to factor in share percentage
|
|
and outbound throttling (oops)
|
|
|
|
2006-07-29 Complication
|
|
* Treat NTP responses from unexpected stratums like failures
|
|
|
|
* 2006-07-28 0.6.1.24 released
|
|
|
|
2006-07-28 jrandom
|
|
* Don't try to reverify too many netDb entries at once (thanks
|
|
cervantes and Complication!)
|
|
|
|
2006-07-28 jrandom
|
|
* Actually fix the threading deadlock issue in the netDb (removing
|
|
the synchronized access to individual kbuckets while validating
|
|
individual entries) (thanks cervantes, postman, frosk, et al!)
|
|
|
|
* 2006-07-27 0.6.1.23 released
|
|
|
|
2006-07-27 jrandom
|
|
* Cut down NTCP connection establishments once we know the peer is skewed
|
|
(rather than wait for full establishment before verifying)
|
|
* Removed a lock on the stats framework when accessing rates, which
|
|
shouldn't be a problem, assuming rates are created (pretty much) all at
|
|
once and merely updated during the lifetime of the jvm.
|
|
|
|
2006-07-27 jrandom
|
|
* Further NTCP write status cleanup
|
|
* Handle more oddly-timed NTCP disconnections (thanks bar!)
|
|
|
|
2006-07-26 jrandom
|
|
* When dropping a netDb router reference, only accept newer
|
|
references as part of the update check
|
|
* If we have been up for a while, don't accept really old
|
|
router references (published 2 or more days ago)
|
|
* Drop router references once they are no longer valid, even if
|
|
they were allowed in due to the lax restrictions on startup
|
|
|
|
2006-07-26 jrandom
|
|
* Every time we create a new router identity, add an entry to the
|
|
new "identlog.txt" text file in the I2P install directory. For
|
|
debugging purposes, publish the count of how many identities the
|
|
router has cycled through, though not the identities itself.
|
|
* Cleaned up the way the multitransport shitlisting worked, and
|
|
added per-transport shitlists
|
|
* When dropping a router reference locally, first fire a netDb
|
|
lookup for the entry
|
|
* Take the peer selection filters into account when organizing the
|
|
profiles (thanks Complication!)
|
|
* Avoid some obvious configuration errors for the NTCP transport
|
|
(invalid ports, "null" ip, etc)
|
|
* Deal with some small NTCP bugs found in the wild (unresolveable
|
|
hosts, strange network discons, etc)
|
|
* Send our netDb info to peers we have direct NTCP connections to
|
|
after each 6-12 hours of connection uptime
|
|
* Clean up the NTCP reading and writing queue logic to avoid some
|
|
potential delays
|
|
* Allow people to specify the IP that the SSU transport binds on
|
|
locally, via the advanced config "i2np.udp.bindInterface=1.2.3.4"
|
|
|
|
* 2006-07-18 0.6.1.22 released
|
|
|
|
2006-07-18 jrandom
|
|
* Add a failsafe to the NTCP transport to make sure we keep
|
|
pumping writes when we should.
|
|
* Properly reallow 16-32KBps routers in the default config
|
|
(thanks Complication!)
|
|
|
|
2006-07-16 Complication
|
|
* Collect tunnel build agree/reject/expire statistics
|
|
for each bandwidth tier of peers (and peers of unknown tiers,
|
|
even if those shouldn't exist)
|
|
|
|
2006-07-14 jrandom
|
|
* Improve the multitransport shitlisting (thanks Complication!)
|
|
* Allow routers with a capacity of 16-32KBps to be used in tunnels under
|
|
the default configuration (thanks for the stats Complication!)
|
|
* Properly allow older router references to load on startup
|
|
(thanks bar, Complication, et al!)
|
|
* Add a new "i2p.alwaysAllowReseed" advanced config property, though
|
|
hopefully today's changes should make this unnecessary (thanks void!)
|
|
* Improved NTCP buffering
|
|
* Close NTCP connections if we are too backlogged when writing to them
|
|
|
|
2006-07-04 jrandom
|
|
* New NIO-based tcp transport (NTCP), enabled by default for outbound
|
|
connections only. Those who configure their NAT/firewall to allow
|
|
inbound connections and specify the external host and port
|
|
(dyndns/etc is ok) on /config.jsp can receive inbound connections.
|
|
SSU is still enabled for use by default for all users as a fallback.
|
|
* Substantial bugfix to the tunnel gateway processing to transfer
|
|
messages sequentially instead of interleaved
|
|
* Renamed GNU/crypto classes to avoid name clashes with kaffe and other
|
|
GNU/Classpath based JVMs
|
|
* Adjust the Fortuna PRNG's pooling system to reduce contention on
|
|
refill with a background thread to refill the output buffer
|
|
* Add per-transport support for the shitlist
|
|
* Add a new async pumped tunnel gateway to reduce tunnel dispatcher
|
|
contention
|
|
|
|
2006-07-01 Complication
|
|
* Ensure that the I2PTunnel web interface won't update tunnel settings
|
|
for shared clients when a non-shared client is modified
|
|
(thanks for spotting, BarkerJr!)
|
|
|
|
2006-06-14 cervantes
|
|
* Small tweak to I2PTunnel CSS, so it looks better with desktops
|
|
that use Bitstream Vera fonts @ 96 dpi
|
|
|
|
* 2006-06-14 0.6.1.21 released
|
|
|
|
2006-06-13 jrandom
|
|
* Use a minimum uptime of 2 hours, not 4 (oops)
|
|
|
|
2006-06-13 jrandom
|
|
* Cut down the proactive rejections due to queue size - if we are
|
|
at the point of having decrypted the request off the queue, might
|
|
as well let it through, rather than waste that decryption
|
|
|
|
2006-06-11 Kloug
|
|
* Bugfix to the I2PTunnel IRC filter to support multiple concurrent
|
|
outstanding pings/pongs
|
|
|
|
2006-06-10 jrandom
|
|
* Further reduction in proactive rejections
|
|
|
|
2006-06-09 jrandom
|
|
* Don't let the pending tunnel request queue grow beyond reason
|
|
(letting things sit for up to 30s when they fail after 10s
|
|
seems a bit... off)
|
|
|
|
2006-06-08 jrandom
|
|
* Be more conservative in the proactive rejections
|
|
|
|
2006-06-04 Complication
|
|
* Trim out sending a blank line before USER in susimail.
|
|
Seemed to break in rare cases, thanks for reporting, Brachtus!
|
|
|
|
* 2006-06-04 0.6.1.20 released
|
|
|
|
2006-06-04 jrandom
|
|
* Reduce the SSU ack frequency
|
|
* Tweaked the tunnel rejection settings to reject less aggressively
|
|
|
|
2006-05-31 jrandom
|
|
* Only send netDb searches to the floodfill peers for the time being
|
|
* Add some proof of concept filters for tunnel participation. By default,
|
|
it will skip peers with an advertised bandwith of less than 32KBps or
|
|
an advertised uptime of less than 2 hours. If this is sufficient, a
|
|
safer implementation of these filters will be implemented.
|
|
|
|
* 2006-05-18 0.6.1.19 released
|
|
|
|
2006-05-18 jrandom
|
|
* Made the SSU ACKs less frequent when possible
|
|
|
|
2006-05-17 Complication
|
|
* Fix some oversights in my previous changes:
|
|
adjust some loglevels, make a few statements less wasteful,
|
|
make one comparison less confusing and more likely to log unexpected values
|
|
|
|
2006-05-17 jrandom
|
|
* Make the peer page sortable
|
|
* SSU modifications to cut down on unnecessary connection failures
|
|
|
|
2006-05-16 jrandom
|
|
* Further shitlist randomizations
|
|
* Adjust the stats monitored for detecting cpu overload when dropping new
|
|
tunnel requests
|
|
|
|
2006-05-15 jrandom
|
|
* Add a load dependent throttle on the pending inbound tunnel request
|
|
backlog
|
|
* Increased the tunnel test failure slack before killing a tunnel
|
|
|
|
2006-05-13 Complication
|
|
* Separate growth factors for tunnel count and tunnel test time
|
|
* Reduce growth factors, so probabalistic throttle would activate
|
|
* Square probAccept values to decelerate stronger when far from average
|
|
* Create a bandwidth stat with approximately 15-second half life
|
|
* Make allowTunnel() check the 1-second bandwidth for overload
|
|
before doing allowance calculations using 15-second bandwidth
|
|
* Tweak the overload detector in BuildExecutor to be more sensitive
|
|
for rising edges, add ability to initiate tunnel drops
|
|
* Add a function to seek and drop the highest-rate participating tunnel,
|
|
keeping a fixed+random grace period between such drops.
|
|
It doesn't seem very effective, so disabled by default
|
|
("router.dropTunnelsOnOverload=true" to enable)
|
|
|
|
2006-05-11 jrandom
|
|
* PRNG bugfix (thanks cervantes and Complication!)
|
|
|
|
* 2006-05-09 0.6.1.18 released
|
|
|
|
2006-05-09 jrandom
|
|
* Further tunnel creation timeout revamp
|
|
|
|
2006-05-07 Complication
|
|
* Fix problem whereby repeated calls to allowed() would make
|
|
the 1-tunnel exception permit more than one concurrent build
|
|
|
|
2006-05-06 jrandom
|
|
* Readjust the tunnel creation timeouts to reject less but fail earlier,
|
|
while tracking the extended timeout events.
|
|
|
|
2006-05-04 jrandom
|
|
* Short circuit a highly congested part of the stat logging unless its
|
|
required (may or may not help with a synchronization issue reported by
|
|
andreas)
|
|
|
|
2006-05-03 Complication
|
|
* Allow a single build attempt to proceed despite 1-minute overload
|
|
only if the 1-second rate shows enough spare bandwidth
|
|
(e.g. overload has already eased)
|
|
|
|
2006-05-02 Complication
|
|
* Correct a misnamed property in SummaryHelper.java
|
|
to avoid confusion
|
|
* Make the maximum allowance of our own concurrent
|
|
tunnel builds slightly adaptive: one concurrent build per 6 KB/s
|
|
within the fixed range 2..10
|
|
* While overloaded, try to avoid completely choking our own build attempts,
|
|
instead prefer limiting them to 1
|
|
|
|
2006-05-01 jrandom
|
|
* Adjust the tunnel build timeouts to cut down on expirations, and
|
|
increased the SSU connection establishment retransmission rate to
|
|
something less glacial.
|
|
* For the first 5 minutes of uptime, be less aggressive with tunnel
|
|
exploration, opting for more reliable peers to start with.
|
|
|
|
2006-05-01 jrandom
|
|
* Fix for a netDb lookup race (thanks cervantes!)
|
|
|
|
2006-04-27 jrandom
|
|
* Avoid a race in the message reply registry (thanks cervantes!)
|
|
|
|
2006-04-27 jrandom
|
|
* Fixed the tunnel expiration desync code (thanks Complication!)
|
|
|
|
* 2006-04-23 0.6.1.17 released
|
|
|
|
2006-04-19 jrandom
|
|
* Adjust how we pick high capacity peers to allow the inclusion of fast
|
|
peers (the previous filter assumed an old usage pattern)
|
|
* New set of stats to help track per-packet-type bandwidth usage better
|
|
* Cut out the proactive tail drop from the SSU transport, for now
|
|
* Reduce the frequency of tunnel build attempts while we're saturated
|
|
* Don't drop tunnel requests as easily - prefer to explicitly reject them
|
|
|
|
* 2006-04-15 0.6.1.16 released
|
|
|
|
2006-04-15 jrandom
|
|
* Adjust the proactive tunnel request dropping so we will reject what we
|
|
can instead of dropping so much (but still dropping if we get too far
|
|
overloaded)
|
|
|
|
2006-04-14 jrandom
|
|
* 0 isn't very random
|
|
* Adjust the tunnel drop to be more reasonable
|
|
|
|
2006-04-14 jrandom
|
|
* -28.00230115311259 is not between 0 and 1 in any universe I know.
|
|
* Made the bw-related tunnel join throttle much simpler
|
|
|
|
2006-04-14 jrandom
|
|
* Make some more stats graphable, and allow some internal tweaking on the
|
|
tunnel pairing for creation and testing.
|
|
|
|
* 2006-04-13 0.6.1.15 released
|
|
|
|
2006-04-12 jrandom
|
|
* Added a further failsafe against trying to queue up too many messages to
|
|
a peer.
|
|
|
|
2006-04-12 jrandom
|
|
* Watch out for failed syndie index fetches (thanks bar!)
|
|
|
|
2006-04-11 jrandom
|
|
* Throttling improvements on SSU - throttle all transmissions to a peer
|
|
when we are retransmitting, not just retransmissions. Also, if
|
|
we're already retransmitting to a peer, probabalistically tail drop new
|
|
messages targetting that peer, based on the estimated wait time before
|
|
transmission.
|
|
* Fixed the rounding error in the inbound tunnel drop probability.
|
|
|
|
2006-04-10 jrandom
|
|
* Include a combined send/receive graph (good idea cervantes!)
|
|
* Proactively drop inbound tunnel requests probabalistically as the
|
|
estimated queue time approaches our limit, rather than letting them all
|
|
through up to that limit.
|
|
|
|
2006-04-08 jrandom
|
|
* Stat summarization fix (removing the occational holes in the jrobin
|
|
graphs)
|
|
|
|
2006-04-08 jrandom
|
|
* Process inbound tunnel requests more efficiently
|
|
* Proactively drop inbound tunnel requests if the queue before we'd
|
|
process it in is too long (dynamically adjusted by cpu load)
|
|
* Adjust the tunnel rejection throttle to reject requeusts when we have to
|
|
proactively drop too many requests.
|
|
* Display the number of pending inbound tunnel join requests on the router
|
|
console (as the "handle backlog")
|
|
* Include a few more stats in the default set of graphs
|
|
|
|
2006-04-06 jrandom
|
|
* Fix for a bug in the new irc ping/pong filter (thanks Complication!)
|
|
|
|
2006-04-06 jrandom
|
|
* Fixed a typo in the reply cleanup code
|
|
|
|
* 2006-04-05 0.6.1.14 released
|
|
|
|
2006-04-05 jrandom
|
|
* Cut down on the time that we allow a tunnel creation request to sit by
|
|
without response, and reject tunnel creation requests that are lagged
|
|
locally. Also switch to a bounded FIFO instead of a LIFO
|
|
* Threading tweaks for the message handling (thanks bar!)
|
|
* Don't add addresses to syndie with blank names (thanks Complication!)
|
|
* Further ban clearance
|
|
|
|
2006-04-05 jrandom
|
|
* Fix during the ssu handshake to avoid an unnecessary failure on
|
|
packet retransmission (thanks ripple!)
|
|
* Fix during the SSU handshake to use the negotiated session key asap,
|
|
rather than using the intro key for more than we should (thanks ripple!)
|
|
* Fixes to the message reply registry (thanks Complication!)
|
|
* More comprehensive syndie banning (for repeated pushes)
|
|
* Publish the router's ballpark bandwidth limit (w/in a power of 2), for
|
|
testing purposes
|
|
* Put a floor back on the capacity threshold, so too many failing peers
|
|
won't cause us to pick very bad peers (unless we have very few good
|
|
ones)
|
|
* Bugfix to cut down on peers using introducers unneessarily (thanks
|
|
Complication!)
|
|
* Reduced the default streaming lib message size to fit into a single
|
|
tunnel message, rather than require 5 tunnel messages to be transferred
|
|
without loss before recomposition. This reduces throughput, but should
|
|
increase reliability, at least for the time being.
|
|
* Misc small bugfixes in the router (thanks all!)
|
|
* More tweaking for Syndie's CSS (thanks Doubtful Salmon!)
|
|
|
|
2006-04-01 jrandom
|
|
* Take out the router watchdog's teeth (don't restart on leaseset failure)
|
|
* Filter the IRC ping/pong messages, as some clients send unsafe
|
|
information in them (thanks aardvax and dust!)
|
|
|
|
2006-03-30 jrandom
|
|
* Substantially reduced the lock contention in the message registry (a
|
|
major hotspot that can choke most threads). Also reworked the locking
|
|
so we don't need per-message timer events
|
|
* No need to have additional per-peer message clearing, as they are
|
|
either unregistered individually or expired.
|
|
* Include some of the more transient tunnel throttling
|
|
|
|
* 2006-03-26 0.6.1.13 released
|
|
|
|
2006-03-25 jrandom
|
|
* Added a simple purge and ban of syndie authors, shown as the
|
|
"Purge and ban" button on the addressbook for authors that are already
|
|
on the ignore list. All of their entries and metadata are deleted from
|
|
the archive, and the are transparently filtered from any remote
|
|
syndication (so no user on the syndie instance will pull any new posts
|
|
from them)
|
|
* More strict tunnel join throtting when congested
|
|
|
|
2006-03-24 jrandom
|
|
* Try to desync tunnel building near startup (thanks Complication!)
|
|
* If we are highly congested, fall back on only querying the floodfill
|
|
netDb peers, and only storing to those peers too
|
|
* Cleaned up the floodfill-only queries
|
|
|
|
2006-03-21 jrandom
|
|
* Avoid a very strange (unconfirmed) bug that people using the systray's
|
|
browser picker dialog could cause by disabling the GUI-based browser
|
|
picker.
|
|
* Cut down on subsequent streaming lib reset packets transmitted
|
|
* Use a larger MTU more often
|
|
* Allow netDb searches to query shitlisted peers, as the queries are
|
|
indirect.
|
|
* Add an option to disable non-floodfill netDb searches (non-floodfill
|
|
searches are used by default, but can be disabled by adding
|
|
netDb.floodfillOnly=true to the advanced config)
|
|
|
|
2006-03-20 jrandom
|
|
* Fix to allow for some slack when coalescing stats
|
|
* Workaround some oddball errors
|
|
|
|
2006-03-18 jrandom
|
|
* Added a new graphs.jsp page to show all of the stats being harvested
|
|
|
|
2006-03-18 jrandom
|
|
* Made the netDb search load limitations a little less stringent
|
|
* Add support for specifying the number of periods to be plotted on the
|
|
graphs - e.g. to plot only the last hour of a stat that is averaged at
|
|
the 60 second period, add &periodCount=60
|
|
|
|
2006-03-17 jrandom
|
|
* Add support for graphing the event count as well as the average stat
|
|
value (done by adding &showEvents=true to the URL). Also supports
|
|
hiding the legend (&hideLegend=true), the grid (&hideGrid=true), and
|
|
the title (&hideTitle=true).
|
|
* Removed an unnecessary arbitrary filter on the profile organizer so we
|
|
can pick high capacity and fast peers more appropriately
|
|
|
|
2006-03-16 jrandom
|
|
* Integrate basic hooks for jrobin (http://jrobin.org) into the router
|
|
console. Selected stats can be harvested automatically and fed into
|
|
in-memory RRD databases, and those databases can be served up either as
|
|
PNG images or as RRDtool compatible XML dumps (see oldstats.jsp for
|
|
details). A base set of stats are harvested by default, but an
|
|
alternate list can be specified by setting the 'stat.summaries' list on
|
|
the advanced config. For instance:
|
|
stat.summaries=bw.recvRate.60000,bw.sendRate.60000
|
|
* HTML tweaking for the general config page (thanks void!)
|
|
* Odd NPE fix (thanks Complication!)
|
|
|
|
2006-03-15 Complication
|
|
* Trim out an old, inactive IP second-guessing method
|
|
(thanks for spotting, Anonymous!)
|
|
|
|
2006-03-15 jrandom
|
|
* Further stat cleanup
|
|
* Keep track of how many peers we are actively trying to communicate with,
|
|
beyond those who are just trying to communicate with us.
|
|
* Further router tunnel participation throttle revisions to avoid spurious
|
|
rejections
|
|
* Rate stat display cleanup (thanks ripple!)
|
|
* Don't even try to send messages that have been queued too long
|
|
|
|
2006-03-05 zzz
|
|
* Remove the +++--- from the logs on i2psnark startup
|
|
|
|
2006-03-05 jrandom
|
|
* HTML fixes in Syndie to work better with opera (thanks shaklen!)
|
|
* Give netDb lookups to floodfill peers more time, as they are much more
|
|
likely to succeed (thereby cutting down on the unnecessary netDb
|
|
searches outside the floodfill set)
|
|
* Fix to the SSU IP detection code so we won't use introducers when we
|
|
don't need them (thanks Complication!)
|
|
* Add a brief shitlist to i2psnark so it doesn't keep on trying to reach
|
|
peers given to it
|
|
* Don't let netDb searches wander across too many peers
|
|
* Don't use the 1s bandwidth usage in the tunnel participation throttle,
|
|
as its too volatile to have much meaning.
|
|
* Don't bork if a Syndie post is missing an entry.sml
|
|
|
|
2006-03-05 Complication
|
|
* Reduce exposed statistical information,
|
|
to make build and uptime tracking more expensive
|
|
|
|
2006-03-04 Complication
|
|
* Fix the announce URL of orion's tracker in Snark sources
|
|
|
|
2006-03-03 Complication
|
|
* Explicit check for an index out of bounds exception while parsing
|
|
an inbound IRC command (implicit check was there already)
|
|
|
|
2006-03-01 jrandom
|
|
* More aggressive tunnel throttling as we approach our bandwidth limit,
|
|
and throttle based off periods wider than 1 second.
|
|
* Included Doubtful Salmon's syndie stylings (thanks!)
|
|
|
|
2006-02-27 zzz
|
|
* Update error page templates to add \r, Connection: close, and
|
|
Proxy-connection: close to headers.
|
|
|
|
* 2006-02-27 0.6.1.12 released
|
|
|
|
2006-02-27 jrandom
|
|
* Adjust the jbigi.jar to use the athlon-optimized jbigi on windows/amd64
|
|
machines, rather than the generic jbigi (until we have an athlon64
|
|
optimized version)
|
|
|
|
2006-02-26 jrandom
|
|
* Switch from the bouncycastle to the gnu-crypto implementation for
|
|
SHA256, as benchmarks show a 10-30% speedup.
|
|
* Removed some unnecessary object caches
|
|
* Don't close i2psnark streams prematurely
|
|
|
|
2006-02-25 jrandom
|
|
* Made the Syndie permalinks in the thread view point to the blog view
|
|
* Disabled TCP again (since the live net seems to be doing well w/out it)
|
|
* Fix the message time on inbound SSU establishment (thanks zzz!)
|
|
* Don't be so aggressive with parallel tunnel creation when a tunnel pool
|
|
just starts up
|
|
|
|
2006-02-24 jrandom
|
|
* Rounding calculation cleanup in the stats, and avoid an uncontested
|
|
mutex (thanks ripple!)
|
|
* SSU handshake cleanup to help force incompatible peers to stop nagging
|
|
us by both not giving them an updated reference to us and by dropping
|
|
future handshake packets from them.
|
|
|
|
2006-02-23 jrandom
|
|
* Increase the SSU retransmit ceiling (for slow links)
|
|
* Estimate the sender's SSU MTU (to help see if we agree)
|
|
|
|
2006-02-22 jrandom
|
|
* Fix to properly profile tunnel joins (thanks Ragnarok, frosk, et al!)
|
|
* More aggressive poor-man's PMTU, allowing larger MTUs on less reliable
|
|
links
|
|
* Further class validator refactorings
|
|
|
|
2006-02-22 jrandom
|
|
* Handle a rare race under high bandwidth situations in the SSU transport
|
|
* Minor refactoring so we don't confuse sun's 1.6.0-b2 validator
|
|
|
|
2006-02-21 Complication
|
|
* Reactivate TCP tranport by default, in addition to re-allowing
|
|
|
|
* 2006-02-21 0.6.1.11 released
|
|
|
|
2006-02-21 jrandom
|
|
* Throttle the outbound SSU establishment queue, so it doesn't fill up the
|
|
heap when backlogged (and so that the messages queued up on it don't sit
|
|
there forever)
|
|
* Further SSU memory cleanup
|
|
* Clean up the address regeneration code so it knows when to rebuild the
|
|
local info more precisely.
|
|
|
|
2006-02-20 jrandom
|
|
* Properly enable TCP this time (oops)
|
|
* Deal with multiple form handlers on the same page in the console without
|
|
being too annoying (thanks blubb and bd_!)
|
|
|
|
2006-02-20 jrandom
|
|
* Reenable the TCP transport as a fallback (we'll continue to muck with
|
|
debugging SSU-only elsewhere)
|
|
|
|
2006-02-20 jrandom
|
|
* Major SSU and router tuning to reduce contention, memory usage, and GC
|
|
churn. There are still issues to be worked out, but this should be a
|
|
substantial improvement.
|
|
* Modified the optional netDb harvester task to support choosing whether
|
|
to use (non-anonymous) direct connections or (anonymous) exploratory
|
|
tunnels to do the harvesting. Harvesting itself is enabled via the
|
|
advanced config "netDb.shouldHarvest=true" (default is false) and the
|
|
connection type can be chosen via "netDb.harvestDirectly=false" (default
|
|
is false).
|
|
|
|
2006-02-19 dust
|
|
* Added pruning of suckers history (it used to grow indefinitely).
|
|
|
|
2006-02-19 jrandom
|
|
* Moved the current net's reseed URL to a different location than where
|
|
the old net looks (dev.i2p.net/i2pdb2/ vs .../i2pdb/)
|
|
* More aggressively expire inbound messages (on receive, not just on send)
|
|
* Add in a hook for breaking backwards compatibility in the SSU wire
|
|
protocol directly by including a version as part of the handshake. The
|
|
version is currently set to 0, however, so the wire protocol from this
|
|
build is compatible with all earlier SSU implementations.
|
|
* Increased the number of complete message readers, cutting down
|
|
substantially on the delay processing inbound messages.
|
|
* Delete the message history file on startup
|
|
* Reworked the restart/shutdown display on the console (thanks bd_!)
|
|
|
|
2006-02-18 jrandom
|
|
* Migrate the outbound packets from a central component to the individual
|
|
per-peer components, substantially cutting down on lock contention when
|
|
dealing with higher degrees.
|
|
* Load balance the outbound SSU transfers evenly across peers, rather than
|
|
across messages (so peers with few messages won't be starved by peers
|
|
with many).
|
|
* Reduce the frequency of router info rebuilds (thanks bar!)
|
|
|
|
2006-02-18 jrandom
|
|
* Add a new AIMD throttle in SSU to control the number of concurrent
|
|
messages being sent to a given peer, in addition to the throttle on the
|
|
number of concurrent bytes to that peer.
|
|
* Adjust the existing SSU outbound queue to throttle based on the queue's
|
|
lag, not an arbitrary number of packets.
|
|
|
|
2006-02-17 jrandom
|
|
* Properly fix the build request queue throttling, using queue age to
|
|
detect congestion, rather than queue size.
|
|
|
|
2006-02-17 jrandom
|
|
* Disable the message history log file by default (duh - feel free to
|
|
delete messageHistory.txt after upgrading. thanks deathfatty!)
|
|
* Limit the size of the inbound tunnel build request queue so we don't
|
|
get an insane backlog of requests that we're bound to reject, and adjust
|
|
the queue processing so we keep on churning through them when we've got
|
|
a backlog.
|
|
* Small fixes for the multiuser syndie operation (thanks Complication!)
|
|
* Renamed modified PRNG classes that were imported from gnu-crypto so we
|
|
don't conflict with JVMs using that as a JCE provider (thanks blx!)
|
|
|
|
* 2006-02-16 0.6.1.10 released
|
|
|
|
2006-02-16 jrandom
|
|
* Add a new toggle to the web config to enable/disable the load testing
|
|
|
|
2006-02-16 jrandom
|
|
* Dropped much of the abandonware from the apps/ directory
|
|
|
|
2006-02-16 jrandom
|
|
* Bugfix to the I2PTunnel web config to properly accept i2cp port settings
|
|
* Initial sucker refactoring to simplify reuse of the html parsing
|
|
* Beginnings of hooks to push imported rss/atom out to remote syndie
|
|
archives automatically (though not enabled currently)
|
|
* Further SSU peer test cleanup
|
|
|
|
2006-02-15 jrandom
|
|
* Add in per-blog RSS feeds to Syndie
|
|
* Upgraded sucker's ROME dependency to 0.8, bundling sucked enclosures
|
|
with the posts, marking additional attachments as Media RSS enclosures
|
|
(http://search.yahoo.com/mrss/), since RSS only supports one enclosure
|
|
per item.
|
|
* Don't allow the default syndie user to be set to something invalid if
|
|
its in single user mode.
|
|
|
|
2006-02-15 jrandom
|
|
* Merged in the i2p_0_6_1_10_PRE branch to the trunk, so CVS HEAD is no
|
|
longer backwards compatible (and should not be used until 0.6.1.1 is
|
|
out)
|
|
|
|
2006-02-14 jrandom
|
|
* Syndie ui bugfixes (thanks all!)
|
|
|
|
2006-02-13 jrandom
|
|
* Use the current directory for some temporary I2PSnark files, rather than
|
|
the OS default temp dir (thanks anon!)
|
|
* Increase the base streaming lib window size (still shrinks to 1 on
|
|
retransmission though, of course)
|
|
* Fixed the I2PTunnel newlines to work with lighthttpd (thanks all!)
|
|
* Implement fast retransmit in the streaming lib (fires at most once per
|
|
packet), and increased the default ack delay to 2 seconds (from .5s)
|
|
* Don't ask for garlic level message acks for end to end messages unless
|
|
they're useful (e.g. to ack session tags)
|
|
|
|
2006-02-12 cervantes
|
|
* Use a different santisation method for some SML attributes
|
|
* Make router console update config save button actually save.
|
|
* Fix console bandwidth limiter burst rate dropdowns, so the display
|
|
relates to what is saved in the config.
|
|
|
|
2006-02-12 cervantes
|
|
* SML is now stricter in it's formatting (attributes should only use
|
|
double quotes instead of being allowed to mix with singles).
|
|
* Using apostrophes in SML attributes will no longer invalidate the tag.
|
|
* Some instances of [blog] tag description were not being displayed
|
|
correctly.
|
|
|
|
2006-02-12 jrandom
|
|
* Further SSU peer test throttling
|
|
* Put the most common router console features on the main index page too
|
|
|
|
2006-02-11 jrandom
|
|
* Be more careful about SSU peer test floods
|
|
|
|
2006-02-09 jrandom
|
|
* Adjusted one of the SSU timeouts so we don't drop peers as easily (duh)
|
|
|
|
2006-02-08 jrandom
|
|
* Added transparent support for VIA C3 CPUs to jbigi (thanks Nekow42), and
|
|
bundled a precompiled libjbigi.so in the jbigi.jar
|
|
* Cleaned up the synchronization for some SSU packet handling code
|
|
* Allow explicit rejection of more lagged tunnel build requests, rather
|
|
than dropping them outright
|
|
* Use lighter load testing
|
|
|
|
2006-02-07 jrandom
|
|
* Handle HTTP headers without any values (thanks Sugadude!)
|
|
* Don't show the option to make Syndie multiuser, since very few people
|
|
need it, and multiuser mode is a lot more complex to use. Geeks can
|
|
enable it by adding "syndie.singleUser=false" to syndie/syndie.config
|
|
(or in the router's advanced config, for the embedded Syndie)
|
|
* When a peer rejects participation in a tunnel, they mean it (duh)
|
|
* Decrease tunnel test timeout period to 20s (a 40s lag is insane)
|
|
* Remove a throttle on the size of the SSU active outbound pool, since
|
|
it was essentially arbitrary
|
|
* Use a more appropriate SSU bloom filter size
|
|
* Don't "proactively" drop SSU connections if we have partially received
|
|
inbound messages (duh)
|
|
* Migrate most of the message state across SSU connection reestablishment
|
|
|
|
2006-02-06 jrandom
|
|
* Reduce the SSU retransmit timeout range, and increase the number of ACKs
|
|
piggybacked
|
|
|
|
2006-02-05 jrandom
|
|
* Experiment with short exponents for DH/ElGamal, using a 226bit x instead
|
|
of a 2048bit x, as reports suggest that size is sufficient for 2048bit
|
|
DH/ElGamal when using safe primes (see KeyGenerator.java for references)
|
|
* Enable the messageHistory.txt by default, for debugging
|
|
|
|
2006-02-05 jrandom
|
|
* Substantial bugfix for the duplicate message detection in the transport
|
|
layer
|
|
* Handle tunnel build responses ASAP, rather than queueing them up to wait
|
|
in line (processing them is really fast - just a few AES loops)
|
|
* Don't bother handling build requests that we have queued up for a while
|
|
locally, as the requestor will have timed it out anyway (perhaps we
|
|
should reply regardless, but with a backoff instead?)
|
|
|
|
2006-02-04 jrandom
|
|
* Further tunnel test cleanup and disabling of the old tunnel creation
|
|
code
|
|
|
|
2006-02-04 jrandom
|
|
* Clean up and reenable the tunnel testing for the new tunnel system.
|
|
|
|
2006-02-04 jrandom
|
|
* Don't cache the archive.txt in syndie when fetching it through the web
|
|
interface.
|
|
* Logging updates
|
|
|
|
2006-02-03 jrandom
|
|
* Added further replay prevention on the tunnel build requests
|
|
* More aggressive streaming lib closing on reset
|
|
|
|
2006-02-03 jrandom
|
|
* More aggressive refusal of peers from the wrong network (oops)
|
|
|
|
2006-02-01 jrandom
|
|
* Instruct the router to reseed against a new URL, for migration purposes:
|
|
http://dev.i2p.net/i2pdb2/
|
|
* Aggressive error handling during UDP packet creation (thanks cervantes)
|
|
|
|
2006-02-01 jrandom
|
|
* Fix the new tunnel creation crypto, including the addition of a 4 byte
|
|
"next message ID" to the encrypted request structure in the spec.
|
|
* Backwards incompatible change, using the new tunnel creation crypto, the
|
|
fixed MD5 HMAC size, and a new network ID (to prevent cross pollination
|
|
with the old incompatible network).
|
|
* Reworked the leaseSet request process to handle a race condition
|
|
* Disable the TCP transport
|
|
* Run four separate threads on the job queue to cut down on job lag
|
|
|
|
2006-01-28 jrandom
|
|
* Removed a race that could show up in leaseSet requesting with the new
|
|
tunnel building process
|
|
|
|
2006-01-25 jrandom
|
|
* Run the peer profile coalescing/reorganization outside the job queue
|
|
(on one of the timers), to cut down on some job queue congestion. Also,
|
|
trim old profiles while running, not just when starting up.
|
|
* Slightly more sane intra-floodfill-node netDb activity (only flood new
|
|
entries)
|
|
* Workaround in the I2PTunnelHTTPServer for some bad requests (though the
|
|
source of the bug is not yet addressed)
|
|
* Better I2PSnark reconnection handling
|
|
* Further cleanup in the new tunnel build process
|
|
* Make sure we expire old participants properly
|
|
* Remove much of the transient overload throttling (it wasn't using a good
|
|
metric)
|
|
|
|
2006-01-25 dust
|
|
* Fix IRC client proxy to use ISO-8859-1.
|
|
|
|
2006-01-22 jrandom
|
|
* New tunnel build process - does not use the new crypto or new peer
|
|
selection strategies. However, it does drop the fallback tunnel
|
|
procedure, except for tunnels who are configured to allow them, or for
|
|
the exploratory pool during bootstrapping or after a catastrophic
|
|
failure. This new process prefers to fail rather than use too-short
|
|
tunnels, so while it can do some pretty aggressive tunnel rebuilding,
|
|
it may expose more tunnel failures to the user.
|
|
* Always prefer normal tunnels to fallback tunnels.
|
|
* Potential fix for a bug while changing i2cp settings on I2PSnark (thanks
|
|
bar!)
|
|
* Do all of the netDb entry writing in a separate thread, avoiding
|
|
duplicates and batching them up.
|
|
|
|
2006-01-19 Complication
|
|
* Explain better where eepsite's destkey can be found
|
|
|
|
2006-01-18 cervantes
|
|
* Add title attributes to all external links in Syndie, so we can rollover
|
|
and quickly see if it's worth clicking on.
|
|
* Fixed a minor compiler warning.
|
|
|
|
2006-01-17 jrandom
|
|
* First pass of the new tunnel creation crypto, specified in the new
|
|
router/doc/tunnel-alt-creation.html (referenced in the current
|
|
router/doc/tunnel-alt.html). It isn't actually used anywhere yet, other
|
|
than in the test code, but the code verifies the technical viability, so
|
|
further scrutiny would be warranted.
|
|
|
|
2006-01-16 cervantes
|
|
* Dragged I2P kicking and screaming into 2006 (Oops)
|
|
|
|
2006-01-14 cervantes
|
|
* Removed entirely misleading memory status from the console summary.
|
|
|
|
2006-01-13 cervantes
|
|
* Further Syndie layout hardening and typeface balancing.
|
|
|
|
* 2006-01-12 0.6.1.9 released
|
|
|
|
2006-01-12 jrandom
|
|
* Only create the loadtest.log if requested to do so (thanks zzz!)
|
|
* Make sure we cleanly take into consideration the appropriate data
|
|
points when filtering out duplicate messages in the message validator,
|
|
and report the right bloom filter false positives rate (not used for
|
|
anything except debugging)
|
|
|
|
2006-01-12 cervantes
|
|
* Syndie CSS tweaks to removed some redundant declarations, improve font
|
|
scaling and layout robustness. Improved cross browser compatibility
|
|
(in other words "kicked IE"). Tightened the look of the blog template
|
|
a little.
|
|
|
|
2006-01-11 Complication
|
|
* CSS comment fixes
|
|
|
|
2006-01-11 jrandom
|
|
* Include the attachments/blogs/etc for comments on the blog view
|
|
* Syndie HTML fixes (thanks cervantes!)
|
|
* Make sure we fully reset the objects going into our cache before we
|
|
reuse them (thanks zzz!)
|
|
|
|
2006-01-10 jrandom
|
|
* Added the per-post list of attachments/blogs/etc to the blog view in
|
|
Syndie (though this does not yet include comments or some further
|
|
refinements)
|
|
* Have the I2P shortcut launch i2p.exe instead of i2psvc.exe on windows,
|
|
removing the dox box (though also removes the restart functionality...)
|
|
* Give the i2p.exe the correct java.library.path to support the systray
|
|
dll (thanks Bobcat, Sugadude, anon!)
|
|
|
|
2006-01-09 jrandom
|
|
* Removed a longstanding bug that had caused unnecessary router identity
|
|
churn due to clock skew
|
|
* Temporarily sanity check within the streaming lib for long pending
|
|
writes
|
|
* Added support for a blog-wide logo to Syndie, and automated the pushing
|
|
of updated extended blog info data along side the metadata.
|
|
|
|
2006-01-09 jrandom
|
|
* Bugfix for a rare SSU error (thanks cervantes!)
|
|
* More progress on the blog interface, allowing customizable blog-wide
|
|
links.
|
|
|
|
2006-01-08 jrandom
|
|
* First pass of the new blog interface, though without much of the useful
|
|
customization features (coming soon)
|
|
|
|
2006-01-04 jrandom
|
|
* Rather than profile individual tunnels for throughput over their
|
|
lifetime, do so at 1 minute intervals (allowing less frequently active
|
|
tunnels to be more fairly measured).
|
|
* Run the live tunnel load test across two tunnels at a time, by default.
|
|
The load test runs for a random period from 90s to the tunnel lifetime,
|
|
self paced. This should help gathering data for profiling peers that
|
|
are in exploratory tunnels.
|
|
|
|
2006-01-03 jrandom
|
|
* Calculate the overall peer throughput across the 3 fastest one minute
|
|
tunnel throughput values, rather than the single fastest throughput.
|
|
* Degrade the profiled throughput data over time (cutting the profiled
|
|
peaks in half once a day, on average)
|
|
* Enable yet another new speed calculation for profiling peers, using the
|
|
peak throughput from individual tunnels that a peer is participating in,
|
|
rather than across all tunnels they are participating in. This helps
|
|
gather a fairer peer throughput measurement, since it won't allow a slow
|
|
high capacity peer seem to have a higher throughput (pushing a little
|
|
data across many tunnels at once, as opposed to lots of data across a
|
|
single tunnel). This degrades over time like the other.
|
|
* Add basic OS/2 support to the jbigi code (though we do not bundle a
|
|
precompiled OS/2 library)
|
|
|
|
2006-01-01 jrandom
|
|
* Disable multifile torrent creation in I2PSnark's web UI for the moment
|
|
(though it can still seed and participate in multifile swarms)
|
|
* Enable a new speed calculation for profiling peers, using their peak
|
|
1 minute average tunnel throughput as their speed.
|
|
|
|
2005-12-31 jrandom
|
|
* Include a simple torrent creator in the I2PSnark web UI
|
|
* Further streaming lib closing improvements
|
|
* Refactored the load test components to run off live tunnels (though,
|
|
still not safe for normal/anonymous load testing)
|
|
|
|
2005-12-30 jrandom
|
|
* Close streams more gracefully
|
|
|
|
2005-12-30 jrandom
|
|
* Small streaming lib bugfixes for the modified timeouts
|
|
* Minor Syndie/Sucker RSS html fix
|
|
* Small synchronization fix in I2PSnark (thanks fsm!)
|
|
|
|
2005-12-30 jrandom
|
|
* Replaced the bundled linux jcpuid (written in C++) with scintilla's
|
|
jcpuid (written in C), removing the libg++.so.5 dependency that has bit
|
|
some distros (e.g. mandriva)
|
|
|
|
2005-12-29 jrandom
|
|
* Minor fix to the new ERR-ClockSkew to deal with people whose clocks are
|
|
actually correct
|
|
|
|
2005-12-27 jrandom
|
|
* Add a new Status: line on the router console - "ERR-ClockSkew", in case
|
|
the clock is too skewed to do anything useful (check the year and month,
|
|
not just the hour and minute).
|
|
* Fixed the read/write timeouts in the streaming lib (so that it actually
|
|
honors them now)
|
|
* Minor I2PSnark cleanups (no read timeout, more careful shutdown and
|
|
torrent closing)
|
|
* Handle an oddball tunnel creation failure (thanks Xunk)
|
|
|
|
2005-12-26 Complication
|
|
* Fix some integer typecasting in I2PSnark (caused >2GB torrents to fail)
|
|
* HTML readability cosmetics on "Peers" page
|
|
|
|
* 2005-12-22 0.6.1.8 released
|
|
|
|
2005-12-22 jrandom
|
|
* Bundle the standalone I2PSnark launcher in the installer and update
|
|
process (launch as "java -jar launch-i2psnark.jar", viewing the
|
|
interface on http://localhost:8002/)
|
|
* Don't autostart swarming torrents by default so that you can run a
|
|
standalone I2PSnark from the I2P install dir and not have the embedded
|
|
I2PSnark autolaunch the torrents that the standalone instance is running
|
|
* Fixed a rare streaming lib bug that could let a blocking call wait
|
|
forever.
|
|
|
|
2005-12-22 jrandom
|
|
* Cleaned up some buffer synchronization issues in I2PSnark that could
|
|
cause blockage.
|
|
|
|
2005-12-21 jrandom
|
|
* Adjusted I2PSnark's usage of the streaming lib (tweaking it for BT's
|
|
behavior)
|
|
* Fixed the I2PSnark bug that would lose track of live peers
|
|
|
|
2005-12-20 jrandom
|
|
* Enabled the control in I2PSnark to toggle whether torrents should be
|
|
started automatically or not
|
|
* Hopefully finished the last hook to close down torrents completely when
|
|
they're stopped.
|
|
|
|
2005-12-19 jrandom
|
|
* Fix for old Syndie blog bookmarks (thanks Complication!)
|
|
* Fix for I2PSnark to accept incoming connections again (oops)
|
|
* Randomize the order that peers from the tracker are contacted
|
|
|
|
2005-12-19 jrandom
|
|
* I2PSnark logging, disconnect old inactive peers rather than new ones,
|
|
memory usage reduction, better OOM handling, and a shared connection
|
|
acceptor.
|
|
* Cleaned up the Syndie blog page and the resulting filters (viewing a
|
|
blog from the blog page shows threads started by the selected author,
|
|
not those that they merely participate in)
|
|
|
|
2005-12-18 jrandom
|
|
* Added a standalone runner for the I2PSnark web ui (build with the
|
|
command "ant i2psnark", unzip i2psnark-standalone.zip somewhere, run
|
|
with "java -jar launch-i2psnark.jar", and go to http://localhost:8002/).
|
|
* Further I2PSnark error handling
|
|
|
|
2005-12-17 jrandom
|
|
* Let multiuser accounts authorize themselves to access the remote
|
|
functionality again (thanks Ch0Hag!)
|
|
* Adjust the JVM heap size to 128MB for new installs (existing users can
|
|
accomplish this by editing wrapper.config, adding the line
|
|
"wrapper.java.maxmemory=128", and then doing a full shutdown and startup
|
|
of the router). This is relevent for heavy usage of I2PSnark in the
|
|
router console.
|
|
|
|
2005-12-17 jrandom
|
|
* Use our faster SHA1, rather than the JVM's within I2PSnark, and let
|
|
'piece' sizes grow larger than before.
|
|
|
|
2005-12-16 jrandom
|
|
* Added some I2PSnark sanity checks, an OOMListener when running
|
|
standalone, and a guard against keeping memory tied up indefinitely.
|
|
* Sanity check on the watchdog (thanks zzz!)
|
|
* Handle invalid HTTP requests in I2PTunnel a little better
|
|
|
|
2005-12-16 jrandom
|
|
* Moved I2PSnark from using Threads to I2PThreads, so we handle OOMs
|
|
properly (thanks Complication!)
|
|
* More guards in I2PSnark for zany behavior (I2PSession recon w/ skew,
|
|
b0rking in the DirMonitor, etc)
|
|
|
|
2005-12-16 jrandom
|
|
* Try to run a torrent in readonly mode if we can't write to the file, and
|
|
handle failures a little more gracefully (thanks polecat!)
|
|
|
|
2005-12-16 jrandom
|
|
* Refuse torrents with too many files (128), avoiding ulimit errors.
|
|
* Remove an fd leak in I2PSnark
|
|
* Further I2PSnark web UI cleanup
|
|
|
|
2005-12-15 jrandom
|
|
* Added a first pass to the I2PSnark web UI (see /i2psnark/)
|
|
|
|
2005-12-15 jrandom
|
|
* Added multitorrent support to I2PSnark, accessible currently by running
|
|
"i2psnark.jar --config i2psnark.config" (which may or may not exist).
|
|
It then joins the swarm for any torrents in ./i2psnark/*.torrent, saving
|
|
their data in that directory as well. Removing the .torrent file stops
|
|
participation, and it is currently set to seed indefinitely. Completion
|
|
is logged to the logger and standard output, with further UI interaction
|
|
left to the (work in progress) web UI.
|
|
|
|
2005-12-14 jrandom
|
|
* Fix to drop peer references when we shitlist people again (thanks zzz!)
|
|
* Further I2PSnark fixes to deal with arbitrary torrent info attributes
|
|
(thanks Complication!)
|
|
|
|
2005-12-13 zzz
|
|
* Don't test tunnels expiring within 90 seconds
|
|
* Defer Test Tunnel jobs if job lag too large
|
|
* Use JobQueue.getMaxLag() rather than the jobQueue.jobLag stat to measure
|
|
job lag for tunnel build backoff, allowing for more agile handling
|
|
(since the stat is only updated once a minute)
|
|
* Use tunnel length override if all tunnels are expiring within one
|
|
minute.
|
|
|
|
2005-12-13 jrandom
|
|
* Fixed I2PSnark's handling of some torrent files to deal with those
|
|
created by Azureus and I2PRufus (it didn't know how to deal with
|
|
additional meta info, such as path.utf-8 or name.utf-8).
|
|
|
|
2005-12-09 zzz
|
|
* Create different strategies for exploratory tunnels (which are difficult
|
|
to create) and client tunnels (which are much easier)
|
|
* Gradually increase number of parallel build attempts as tunnel expiry
|
|
nears.
|
|
* Temporarily shorten attempted build tunnel length if builds using
|
|
configured tunnel length are unsuccessful
|
|
* React more aggressively to tunnel failure than routine tunnel
|
|
replacement
|
|
* Make tunnel creation times randomized - there is existing code to
|
|
randomize the tunnels but it isn't effective due to the tunnel creation
|
|
strategy. Currently, most tunnels get built all at once, at about 2 1/2
|
|
to 3 minutes before expiration. The patch fixes this by fixing the
|
|
randomization, and by changing the overlap time (with old tunnels) to a
|
|
range of 2 to 4 minutes.
|
|
* Reduce number of excess tunnels. Lots of excess tunnels get created due
|
|
to overlapping calls. Just about anything generated a call which could
|
|
build many tunnels all at once, even if tunnel building was already in
|
|
process.
|
|
* Miscellaneous router console enhancements
|
|
|
|
2005-12-08 jrandom
|
|
* Minor bugfix in SSU for dealing with corrupt packets
|
|
* Added some hooks for load testing
|
|
|
|
2005-12-07 jrandom
|
|
* Added a first pass at a blog view in Syndie
|
|
|
|
2005-12-07 jrandom
|
|
* Expand the thread we're viewing to its leaf
|
|
* Bugfix on intraday ordering (children are always newer than parents)
|
|
|
|
2005-12-05 jrandom
|
|
* Added an RDF and XML thread export to Syndie, reachable at
|
|
.../threadnav/rdf or .../threadnav/xml, accepting the parameters
|
|
count=$numThreads and offset=$threadIndex. If the $numThreads is -1, it
|
|
displays all threads.
|
|
|
|
2005-12-04 TLorD
|
|
* Patch for the C SAM library to null terminate strings on copy (thanks!)
|
|
|
|
2005-12-04 jrandom
|
|
* Bugfix in Syndie for a problem in the threaded indexer (thanks CofE!)
|
|
* Always include ourselves in the favorite authors (since we don't
|
|
bookmark ourselves)
|
|
|
|
2005-12-03 jrandom
|
|
* Use newgroup-like tags by default in Syndie's interface
|
|
|
|
2005-12-03 jrandom
|
|
* Added support for a 'most recent posts' view that CofE requested, which
|
|
includes the ability to filter by age (e.g. posts by your favorite
|
|
authors in the last 5 days).
|
|
|
|
2005-12-03 jrandom
|
|
* Adjusted Syndie to use the threaded view that cervantes suggested, which
|
|
displays a a single thread path at a time - from root to leaf - rather
|
|
than a depth first traversal.
|
|
|
|
2005-12-03 jrandom
|
|
* Package up a standalone Syndie install into a "syndie-standalone.zip",
|
|
buildable with "ant syndie". It extracts into ./syndie/, launches with
|
|
"java -jar launchsyndie.jar" (or javaw, on windows, to avoid a dos box),
|
|
running a single user Syndie instance (by default). It also creates a
|
|
default subscription to syndiemedia without any anonymity (using no
|
|
proxy). Upgrades can be done by just replacing the syndie.war with the
|
|
one from I2P.
|
|
|
|
* 2005-12-01 0.6.1.7 released
|
|
|
|
2005-12-01 jrandom
|
|
* Add a new criteria to the tunnel join throttle, backing off people if we
|
|
are failing to talk to our peers more than usual.
|
|
|
|
2005-11-30 jrandom
|
|
* Cleaned up the build process to deal with Jetty 5.1.6 and rename the
|
|
new commons-logging-api.jar to commons-logging.jar, which it replaces.
|
|
Jetty 5.1.6 is pushed with all updates. Also, no need to push a
|
|
separate jdom or rome, as they're inside syndie.war.
|
|
|
|
2005-11-30 jrandom
|
|
* Don't let the TCP transport alone shitlist a peer, since other
|
|
transports may be working. Also display whether TCP connections are
|
|
inbound or outbound on the peers page.
|
|
* Fixed some substantial bugs in the SSU introducers where we wouldn't
|
|
talk to anyone who didn't expose an IP (even if they had introducers),
|
|
among other goofy things.
|
|
* When dealing with SSU introducers, send them all a packet at 3s/6s/9s,
|
|
rather than sending one a packet at 3s, then another a packet at 6s,
|
|
and a third a packet at 9s.
|
|
* Fixed Syndie attachments (oops)
|
|
|
|
2005-11-29 zzz
|
|
* Added a link to orion's jump page on the 'key not found' error page.
|
|
|
|
2005-11-29 jrandom
|
|
* Further Syndie UI cleanup
|
|
* Bundled our patched MultiPartRequest code from jetty (APL2 licensed),
|
|
since it hasn't been applied to the jetty CVS yet [1]. Its packaged
|
|
into syndie.jar and renamed to net.i2p.syndie.web.MultiPartRequest, but
|
|
will be removed as soon as its integrated into Jetty. This patch allows
|
|
posting content in various character sets.
|
|
[1] http://article.gmane.org/gmane.comp.java.jetty.general/6031
|
|
* Upgraded new installs to the latest stable jetty (5.1.6), though this
|
|
isn't pushed as part of the update yet, as there aren't any critical
|
|
bugs.
|
|
|
|
2005-11-29 jrandom
|
|
* Added back in the OSX jbigi, which was accidentally removed a few revs
|
|
back (thanks for the bug report stoerte!) New installs will get the
|
|
full jbigi, or you can pull the jbigi.jar from CVS by going to
|
|
http://dev.i2p.net/cgi-bin/cvsweb.cgi/i2p/installer/lib/jbigi/jbigi.jar
|
|
and clicking on the first "download" link, saving that jbigi.jar to
|
|
lib/jbigi.jar in your I2P installation directory. After restarting your
|
|
router, it should load up fine.
|
|
|
|
2005-11-27 jrandom
|
|
* Inlined the Syndie CSS to reduce the number of HTTP requests (and
|
|
because firefox [and others?] delay rendering until they fetch the css).
|
|
* Make sure we fire the shutdown tasks when regenerating a new identity
|
|
(thanks picsou!)
|
|
* Cleaned up some of the things I b0rked in the 'dynamic keys' mode
|
|
* Don't drop SSU sessions if they're still transmitting data successfully,
|
|
even if there are transmission failures
|
|
* Adjusted the time summarization to display hours after 119m, not 90m
|
|
* Further EepGet cleanup (grr)
|
|
|
|
* 2005-11-26 0.6.1.6 released
|
|
|
|
2005-11-26 jrandom
|
|
* Update the sorting in Syndie to consider children 'newer' than parents,
|
|
even if they have the same message ID (duh)
|
|
* Cleaned up some nav links in Syndie (good idea gloin, spaetz!)
|
|
* Added a bunch of tooltips to Syndie's fields (thanks polecat!)
|
|
* Force support for nonvalidating XML in Jetty (so we can handle GCJ/etc
|
|
better)
|
|
|
|
2005-11-26 jrandom
|
|
* Be more explicit about what messages we will handle through a client
|
|
tunnel, and how we will handle them. This cuts off a set of attacks
|
|
that an active adversary could mount, though they're probably nonobvious
|
|
and would require at least some sophistication.
|
|
|
|
2005-11-26 Raccoon23
|
|
* Added support for 'dynamic keys' mode, where the router creates a new
|
|
router identity whenever it detects a substantial change in its public
|
|
address (read: SSU IP or port). This only offers minimal additional
|
|
protection against trivial attackers, but should provide functional
|
|
improvement for people who have periodic IP changes, since their new
|
|
router address would not be shitlisted while their old one would be.
|
|
* Added further infrastructure for restricted route operation, but its use
|
|
is not recommended.
|
|
|
|
2005-11-25 jrandom
|
|
* Further Syndie UI cleanups
|
|
* Logging cleanup
|
|
* Fixed link to fproxy.tino.i2p (thanks zzz!)
|
|
|
|
2005-11-25 jrandom
|
|
* Don't publish stats for periods we haven't reached yet (thanks zzz!)
|
|
* Cleaned up the syndie threaded display to show the last updated date for
|
|
a subthread, and to highlight threads updated in the last two days.
|
|
|
|
2005-11-24 jrandom
|
|
* Fix to save syndication settings in Syndie (thanks spaetz!)
|
|
|
|
2005-11-23 jrandom
|
|
* Removed spurious streaming lib RTO increase (it wasn't helpful)
|
|
* Streamlined the tunnel batching to schedule batch transmissions more
|
|
appropriately.
|
|
* Default tunnel pool variance to 2 +0-1 hops
|
|
|
|
2005-11-21 jrandom
|
|
* IE doesn't strip SPAN from <button> form fields, so add in a workaround
|
|
within I2PTunnel.
|
|
* Increase the maximum SSU retransmission timeout to accomodate slower or
|
|
more congested links (though SSU's RTO calculation will usually use a
|
|
much lower timeout)
|
|
* Moved the streaming lib timed events off the main timer queues and onto
|
|
a streaming lib specific set of timer queues. Streaming lib timed
|
|
events are more likely to have lock contention on the I2CP socket while
|
|
other timed events in the router are (largely) independent.
|
|
* Fixed a case sensitive lookup bug (thanks tino!)
|
|
* Syndie cleanup - new edit form on the preview page, and fixed some blog
|
|
links (thanks tino!)
|
|
|
|
2005-11-19 jrandom
|
|
* Implemented a trivial pure java PMTU backoff strategy, switching between
|
|
a 608 byte MTU and a 1350 byte MTU, depending upon retransmission rates.
|
|
* Fixed new user registration in Syndie (thanks Complication!)
|
|
|
|
2005-11-17 jrandom
|
|
* More cautious file handling in Syndie
|
|
|
|
2005-11-16 jrandom
|
|
* More aggressive I2PTunnel content encoding munging to work around some
|
|
rare HTTP behavior (ignoring q values on Accept-encoding, using gzip
|
|
even when only identity is specified, etc). I2PTunnelHTTPServer now
|
|
sends "Accept-encoding: \r\n" plus "X-Accept-encoding: x-i2p-gzip\r\n",
|
|
and I2PTunnelHTTPServer handles x-i2p-gzip in either the Accept-encoding
|
|
or X-Accept-encoding headers. Eepsite operators who do not know to
|
|
check for X-Accept-encoding will simply use the identity encoding.
|
|
|
|
* 2005-11-15 0.6.1.5 released
|
|
|
|
2005-11-14 jrandom
|
|
* Migrate to the new Syndie interface
|
|
|
|
2005-11-11 jrandom
|
|
* Add filtering threads by author to Syndie, populated with authors in the
|
|
user's addressbook
|
|
* When creating the default user, add
|
|
"http://syndiemedia.i2p/archive/archive.txt" to their addressbook,
|
|
configured to automatically pull updates. (what other archives should
|
|
be included?)
|
|
* Tiny servlet to help dole out the new routerconsole themes, and bundle
|
|
the installer/resources/themes/** into ./docs/themes/** on both install
|
|
and update.
|
|
|
|
2005-11-11 cervantes
|
|
* Initial pass of the routerconsole revamp, starting with I2PTunnel and
|
|
being progressively rolled out to other sections at later dates.
|
|
Featuring abstracted W3C strict XHTML1.0 markup, with CSS providing
|
|
layout and styling.
|
|
* Implemented console themes. Users can create their own themes by
|
|
creating css files in: {i2pdir}/docs/themes/console/{themename}/
|
|
and activating it using the routerconsole.theme={themename} advanced
|
|
config property. Look at the example incomplete "defCon1" theme.
|
|
Note: This is very much a work in progress. Folks might want to hold-off
|
|
creating their own skins until the markup has solidified.
|
|
* Added "routerconsole.javascript.disabled=true" to disable console
|
|
client-side scripting and "routerconsole.css.disabled=true" to remove
|
|
css styling (only rolled out in the i2ptunnel interface currently)
|
|
* Fixed long standing bug with i2ptunnel client and server edit screens
|
|
where tunnel count and depth properties would fail to save. Added
|
|
backup quantity and variance configuration options.
|
|
* Added basic accessibility support (key shortcuts, linear markup, alt and
|
|
title information and form labels).
|
|
* So far only tested on IE6, Firefox 1.0.6, Opera 8 and lynx.
|
|
|
|
2005-11-11 jrandom
|
|
* Default Syndie to single user mode, and automatically log into a default
|
|
user account (additional accounts can be logged into with the 'switch'
|
|
or login pages, and new accounts can be created with the register page).
|
|
* Disable the 'automated' column on the Syndie addressbook unless the user
|
|
is appropriately authorized (good idea Polecat!)
|
|
|
|
2005-11-10 jrandom
|
|
* First pass to a new threaded Syndie interface, which isn't enabled by
|
|
default, as its not done yet.
|
|
|
|
2005-11-06 jrandom
|
|
* Include SSU establishment failure in the peer profile as a commError,
|
|
as we do for TCP establishment failures.
|
|
* Don't throttle the initial transmission of a message because of ongoing
|
|
retransmissions to a peer, since the initial transmission of a message
|
|
is more valuable than a retransmission (since it has less latency).
|
|
* Cleaned up links to SusiDNS and I2PTunnel (thanks zzz!)
|
|
|
|
2005-11-05 jrandom
|
|
* Include the most recent ACKs with packets, rather than only sending an
|
|
ack exactly once. SSU differs from TCP in this regard, as TCP has ever
|
|
increasing sequence numbers, while each message ID in SSU is random, so
|
|
we don't get the benefit of later ACKs implicitly ACKing earlier
|
|
messages.
|
|
* Reduced the max retransmission timeout for SSU
|
|
* Don't try to send messages queued up for a long time waiting for
|
|
establishment.
|
|
|
|
2005-11-05 dust
|
|
* Fix sucker to delete its temporary files.
|
|
* Improve sucker's sml output some.
|
|
* Fix Exception in SMLParser for weird sml.
|
|
|
|
2005-11-03 zzz
|
|
* Added a new error page to the eepproxy to differentiate the full 60
|
|
second timeout from the immediate "I don't know this base64" failure.
|
|
|
|
2005-11-01 jrandom
|
|
* Added a few more css elements (thanks identiguy!)
|
|
|
|
2005-10-31 jrandom
|
|
* Fix for some syndie reply scenarios (thanks identiguy and CofE!)
|
|
* Removed a potentially infinitely recursive call (oops)
|
|
|
|
2005-10-30 dust
|
|
* Merge sucker into syndie with a rssimport.jsp page.
|
|
* Add getContentType() to EepGet.
|
|
* Make chunked transfer work (better) with EepGet.
|
|
* Do replaceAll("<","<") for logs.
|
|
|
|
* 2005-10-29 0.6.1.4 released
|
|
|
|
2005-10-29 jrandom
|
|
* Improved the bandwidth throtting on tunnel participation, especially for
|
|
low bandwidth peers.
|
|
* Improved failure handling in SSU with proactive reestablishment of
|
|
failing idle peers, and rather than shitlisting a peer who failed too
|
|
much, drop the SSU session and allow a new attempt (which, if it fails,
|
|
will cause a shitlisting)
|
|
* Clarify the cause of the shitlist on the profiles page, and include
|
|
bandwidth limiter info at the bottom of the peers page.
|
|
|
|
2005-10-26 jrandom
|
|
* In Syndie, propogate the subject and tags in a reply, and show the parent
|
|
post on the edit page for easy quoting. (thanks identiguy and CofE!)
|
|
* Streamline some netDb query handling to run outside the jobqueue -
|
|
which means they'll run on the particular SSU thread that handles the
|
|
message. This should help out heavily loaded netDb peers.
|
|
|
|
2005-10-25 jrandom
|
|
* Defer netDb searches for newly referenced peers until we actually want
|
|
them
|
|
* Ignore netDb references to peers on our shitlist
|
|
* Set the timeout for end to end client messages to the max delay after
|
|
finding the leaseSet, so we don't have as many expired messages floating
|
|
around.
|
|
* Add a floor to the streaming lib window size
|
|
* When we need to send a streaming lib ACK, try to retransmit one of the
|
|
unacked packets instead (with updated ACK/NACK fields, of course). The
|
|
bandwidth cost of an unnecessary retransmission should be minor as
|
|
compared to both an ACK packet (rounded up to 1KB in the tunnels) and
|
|
the probability of a necessary retransmission.
|
|
* Adjust the streaming lib cwin algorithm to allow growth after a full
|
|
cwin messages if the rtt is trending downwards. If it is not, use the
|
|
existing algorithm.
|
|
* Increased the maximum rto size in the streaming lib.
|
|
* Load balancing bugfix on end to end messages to distribute across
|
|
tunnels more evenly.
|
|
|
|
2005-10-22 jrandom
|
|
* Integrated GNU-Crypto's Fortuna PRNG, seeding it off /dev/urandom and
|
|
./prngseed.rnd (if they exist), and reseeding it with data out of
|
|
various crypto operations (unused bits in a DH exchange, intermediary
|
|
bits in a DSA signature generation, extra bits in an ElGamal decrypt).
|
|
The Fortuna implementation under gnu.crypto.prng has been modified to
|
|
use BouncyCastle's SHA256 and Cryptix's AES (since those are the ones
|
|
I2P uses), and the resulting gnu.crypto.prng.* are therefor available
|
|
under GPL+Classpath's linking exception (~= LGPL). I2P's SecureRandom
|
|
wrapper around it is, of course, public domain.
|
|
|
|
2005-10-20 dust
|
|
* Fix bug in ircclient that prevented it to use its own dest (i.e. was
|
|
always shared. (thx for info Ragnarok)
|
|
* Fix crash in Sucker with some bad html.
|
|
|
|
2005-10-20 jrandom
|
|
* Workaround a bug in GCJ's Calendar implementation
|
|
* Propery throw an exception in the streaming lib if we try to write to a
|
|
closed stream. This will hopefully help clear some I2Phex bugs (thanks
|
|
GregorK!)
|
|
|
|
2005-10-19 jrandom
|
|
* Ported the snark bittorrent client to I2P such that it is compatible
|
|
with i2p-bt and azneti2p. For usage information, grab an update and run
|
|
"java -jar lib/i2psnark.jar". It isn't currently multitorrent capable,
|
|
but adding in support would be fairly easy (see PeerAcceptor.java:49)
|
|
* Don't allow leaseSets expiring too far in the future (thanks postman)
|
|
|
|
2005-10-19 jrandom
|
|
* Bugfix for the auto-update code to handle different usage patterns
|
|
* Decreased the addressbook recheck frequency to once every 12 hours
|
|
instead of hourly.
|
|
* Handle dynamically changing the HMAC size (again, unless your nym is
|
|
toad or jrandom, ignore this ;)
|
|
* Cleaned up some synchronization/locking code
|
|
|
|
2005-10-17 dust
|
|
* Exchange the remaining URL with EepGet in Sucker.
|
|
* Allow /TOPIC irc command.
|
|
|
|
2005-10-17 jrandom
|
|
* Allow an env prop to configure whether we want to use the backwards
|
|
compatible (but not standards compliant) HMAC-MD5, or whether we want
|
|
to use the not-backwards compatible (but standards compliant) one. No
|
|
one should touch this setting, unless your name is toad or jrandom ;)
|
|
* Added some new dummy facades
|
|
* Be more aggressive on loading up the router.config before building the
|
|
router context
|
|
* Added new hooks for apps to deal with previously undefined I2NP message
|
|
types without having to modify any code.
|
|
* Demo code for using a castrated router for SSU comm (SSUDemo.java)
|
|
|
|
2005-10-14 jrandom
|
|
* More explicit filter for linux/PPC building (thanks anon!)
|
|
* Fixed Syndie's Sucker to not explicitly reference something only found
|
|
in sun's JVM (thanks cervantes!)
|
|
* Don't filter IRC "MAP" messages (not critical, but it doesn't hurt)
|
|
|
|
* 2005-10-14 0.6.1.3 released
|
|
|
|
2005-10-14 jrandom
|
|
* Added a key explaining peers.jsp a bit (thanks tethra!)
|
|
|
|
2005-10-13 dust
|
|
* Bundled dust's Sucker for pulling RSS/Atom content into SML, which can
|
|
then be injected into Syndie with the Syndie CLI.
|
|
* Bundled ROME and JDOM (BSD and Apache licensed, respectively) for
|
|
RSS/Atom parsing.
|
|
|
|
2005-10-13 jrandom
|
|
* SSU retransmission choke bugfix (== != !=)
|
|
* Include initial transmissions in the retransmission choke, so that
|
|
if we are already retransmitting a message, we won't send anything
|
|
to that peer other than that message (or ACKs, if necessary)
|
|
|
|
2005-10-12 jrandom
|
|
* Choke SSU retransmissions to a peer while there is already a
|
|
retransmission in flight to them. This currently lets other initial
|
|
transmissions through, since packet loss is often sporadic, but maybe
|
|
this should block initial transmissions as well?
|
|
* Display the retransmission bytes stat on peers.jsp (thanks bar!)
|
|
* Filter QUIT messages in the I2PTunnelIRCClient proxy
|
|
|
|
2005-10-11 jrandom
|
|
* Piggyback the SSU partial ACKs with data packets. This is backwards
|
|
compatible.
|
|
* Syndie RSS renderer bugfix, plus now include the full entry instead of
|
|
just the blurb before the cut.
|
|
|
|
2005-10-11 jrandom
|
|
* Piggyback the SSU explicit ACKs with data packets (partial ACKs aren't
|
|
yet piggybacked). This is backwards compatible.
|
|
* SML parser cleanup in Syndie
|
|
|
|
2005-10-10 dust
|
|
* Implemented a new I2PTunnelIRCClient which locally filters inbound and
|
|
outbound IRC commands for anonymity and security purposes, removing all
|
|
CTCP messages except ACTION, as well as stripping the hostname from the
|
|
USER message (while leaving the nick and 'full name'). The IRC proxy
|
|
doesn't use this by default, but you can enable it by creating a new
|
|
"IRC proxy" tunnel on the web interface, or by changing the tunnel type
|
|
to "ircclient" in i2ptunnel.config.
|
|
|
|
2005-10-10 jrandom
|
|
* I2PTunnel http client config cleanup and stats
|
|
* Minor SSU congestion tweaks and stats
|
|
* Reduced netDb exploration period
|
|
|
|
2005-10-09 jrandom
|
|
* Syndie CLI cleanup for simpler CLI posting. Usage shown with
|
|
java -jar lib/syndie.jar
|
|
* Beginnings of the Syndie logging cleanup
|
|
* Delete corrupt Syndie posts
|
|
|
|
2005-10-09 jrandom
|
|
* Now that the streaming lib works reasonably, set the default inactivity
|
|
event to send a 0 byte keepalive payload, rather than disconnecting the
|
|
stream. This should cut the irc netsplits and help out with other long
|
|
lived streams. The default timeout is now less than the old timeout as
|
|
well, so the keepalive will be sent before earlier builds fire their
|
|
fatal timeouts.
|
|
|
|
2005-10-08 jrandom
|
|
* Use the OS clock for stat timing, since it doesn't jump around (though
|
|
still use the NTP'ed clock for display)
|
|
* Added new DH stats
|
|
|
|
* 2005-10-07 0.6.1.2 released
|
|
|
|
2005-10-07 jrandom
|
|
* Include the 1 second bandwidth usage on the console rather than the
|
|
1 minute rate, as the 1 second value doesn't have the 1m/5m quantization
|
|
issues.
|
|
|
|
2005-10-07 jrandom
|
|
* Allow the I2PTunnelHTTPServer to send back the first few packets of an
|
|
HTTP response quicker, and initialize the streaming lib's cwin more
|
|
carefully.
|
|
* Added a small web UI to the new Syndie scheduled updater. If you log in
|
|
as a user authorized to use the remote archive funtionality, you can
|
|
request remote archives in your address book to be automatically pulled
|
|
down by checking the "scheduled?" checkbox.
|
|
|
|
2005-10-05 jrandom
|
|
* Allow the first few packets in the stream to fill in their IDs during
|
|
handshake (thanks cervantes, Complication, et al!) This should fix at
|
|
least some of the intermittent HTTP POST issues.
|
|
|
|
2005-10-04 jrandom
|
|
* Syndie patch for single user remote archives (thanks nickless_head!)
|
|
* Handle an invalid netDb store (thanks Complication!)
|
|
|
|
2005-10-04 jrandom
|
|
* Further reduction in unnecessary streaming packets.
|
|
|
|
2005-10-03 jrandom
|
|
* Properly reject unroutable IP addresses *cough*
|
|
|
|
2005-10-03 rangarok
|
|
* Changed default update delay to twelve hours, and enforced a minimum
|
|
delay of one hour.
|
|
|
|
2005-10-03 ragnarok
|
|
* Implemented a Syndie auto-updater. It will automatically pull new posts
|
|
from selected syndie archives. To try it out, add
|
|
syndie.updateArchives=<comma seperated list of syndie archives> to your
|
|
syndie.config. Archives must be specified as the full url to archive.txt
|
|
(e.g. http://syndiemedia.i2p/archive/archive.txt). By default, it checks
|
|
for new posts every hour. This can be modified by setting
|
|
syndie.updateDelay=<delay in hours> also in syndie.config.
|
|
|
|
* 2005-10-01 0.6.1.1 released
|
|
|
|
2005-09-30 ragnarok
|
|
* Implemented conditional get for syndie remote archive imports.
|
|
|
|
2005-09-30 jrandom
|
|
* Killed three more streaming lib bugs, one of which caused excess packets
|
|
to be transmitted (dupacking dupacks), one that was the root of many of
|
|
the old hung streams (shrinking highest received), and another that was
|
|
releasing data too soon.
|
|
|
|
2005-09-30 jrandom
|
|
* Only allow autodetection of our IP address if we haven't received an
|
|
inbound connection in the last two minutes.
|
|
* Increase the default max streaming resends to 8 from 5 (and down from
|
|
the earlier 10)
|
|
|
|
2005-09-29 ragnarok
|
|
* Export petnames from syndie to the router's petname db instead of
|
|
userhosts.txt.
|
|
|
|
2005-09-29 jrandom
|
|
* Support noreseed.i2p in addition to .i2pnoreseed for disabling automatic
|
|
reseeding - useful on OSes that make it hard to create dot files.
|
|
Thanks Complication (and anon)!
|
|
* Fixed the installer version string (thanks Frontier!)
|
|
* Added cleaner rejection of invalid IP addresses, shitlist those who send
|
|
us invalid IP addresses, verify again that we are not sending invalid IP
|
|
addresses, and log an error if it happens. (Thanks Complication, ptm,
|
|
and adab!)
|
|
|
|
* 2005-09-29 0.6.1 released
|
|
|
|
2005-09-29 jrandom
|
|
* Let syndie users modify their metadata.
|
|
* Reseed the router on startup if there aren't enough peer references
|
|
known locally. This can be disabled by creating the file .i2pnoreseed
|
|
in your home directory, and the existing detection and reseed handling
|
|
on the web interface is unchanged.
|
|
|
|
2005-09-28 jrandom
|
|
* Fix for at least some (all?) of the wrong stream errors in the streaming
|
|
lib
|
|
|
|
2005-09-27 jrandom
|
|
* Properly suggest filenames for attachments in Syndie (thanks all!)
|
|
* Fixed the Syndie authorization scheme for single user vs. multiuser
|
|
|
|
2005-09-27 jrandom
|
|
* I2PTunnel bugfix (thanks Complication!)
|
|
* Increase the SSU cwin slower during congestion avoidance (at k/cwin^2
|
|
instead of k/cwin)
|
|
* Limit the number of inbound SSU sessions being built at once (using
|
|
half of the i2np.udp.maxConcurrentEstablish config prop)
|
|
* Don't shitlist on a message send failure alone (unless there aren't any
|
|
common transports).
|
|
* More careful bandwidth bursting
|
|
|
|
2005-09-26 jrandom
|
|
* Reworded the SSU introductions config section (thanks duck!)
|
|
* Force identity content encoding for I2PTunnel httpserver requests
|
|
(thanks redzara!)
|
|
* Further x-i2p-gzip bugfixes for the end of streams
|
|
* Reduce the minimum bandwidth limits to 3KBps steady and burst (though
|
|
I2P's performance at 3KBps is another issue)
|
|
* Cleaned up some streaming lib structures
|
|
|
|
2005-09-25 jrandom
|
|
* Allow reseeding on the console if the netDb knows less than 30 peers,
|
|
rather than less than 10 (without internet connectivity, we keep the
|
|
last 15 router references)
|
|
* Reenable the x-i2p-gzip HTTP processing by default, flushing the stream
|
|
more aggressively.
|
|
* Show the status that used to be called "ERR-Reject" as "OK (NAT)"
|
|
* Reduced the default maximum number of streaming lib resends of a packet
|
|
(10 retransmits is a bit much with a reasonable RTO)
|
|
|
|
2005-09-25 Complication
|
|
* Better i2paddresshelper handling in the I2PTunnel httpclient, plus a new
|
|
conflict resolution page if the i2paddresshelper parameter differs from
|
|
an existing name to destination mapping.
|
|
|
|
2005-09-25 jrandom
|
|
* Fix a long standing streaming lib bug (in the inactivity detection code)
|
|
* Improved handling of initial streaming lib packet retransmissions to
|
|
kill the "lost first packet" bug (where a page shows up with the first
|
|
few KB missing)
|
|
* Add support for initial window sizes greater than 1 - useful for
|
|
eepsites to transmit e.g. 4 packets full of data along with the initial
|
|
ACK, thereby cutting down on the rtt latency. The congestion window
|
|
size can and does still shrink down to 1 packet though.
|
|
* Adjusted the streaming lib retransmission calculation algorithm to be
|
|
more TCP-like.
|
|
|
|
2005-09-21 redzara
|
|
* Use ISO-8859-1 for the susidns xml
|
|
|
|
2005-09-21 susi
|
|
* Bugfix in susidns for deleting entries
|
|
|
|
2005-09-21 jrandom
|
|
* Add support for HTTP POST to EepGet
|
|
* Use HTTP POST for syndie bulk fetches, since there's a lot of data to
|
|
put in that URL.
|
|
|
|
2005-09-18 jrandom
|
|
* Added support for pure 64bit linux with jbigi and the java service
|
|
wrapper (no need for jcpuid if we're on os.arch=amd64). Thanks mule
|
|
et al for help testing!
|
|
* UI cleanup in Syndie (thanks gloin and bar!)
|
|
|
|
2005-09-18 Ragnarok
|
|
* Made MetaNamingService the default naming service.
|
|
|
|
2005-09-17 Ragnarok
|
|
* Implemented a naming service using Syndie's petname db. It's not enabled
|
|
by default, but you can try it out by setting
|
|
i2p.naming.impl=net.i2p.client.naming.PetNameNamingService in
|
|
router.config.
|
|
* Implemented a meta naming service that will first lookup names in the
|
|
PetNameNamingService then fallback on the HostTxtNamingService. Which
|
|
naming services are checked and in which order is specified by
|
|
i2p.nameservicelist. This will probably become the default naming service
|
|
so please help test it out by setting
|
|
i2p.naming.impl=net.i2p.client.naming.MetaNamingService in router.config.
|
|
|
|
* 2005-09-17 0.6.0.6 released
|
|
|
|
2005-09-17 jrandom
|
|
* Clean up syndie a bit more and bundle a default introductory post with
|
|
both new installs and updates.
|
|
* Typo fixes on the console (thanks bar!)
|
|
|
|
2005-09-17 jrandom
|
|
* Updated the bandwidth limiter to use two tiers of bandwidth - our normal
|
|
steady state rate, plus a new limit on how fast we transfer when
|
|
bursting. This is different from the old "burst as fast as possible
|
|
until we're out of tokens" policy, and should help those with congested
|
|
networks. See /config.jsp to manage this rate.
|
|
* Bugfixes in Syndie to handle missing cache files (no data was lost, the
|
|
old posts just didn't show up).
|
|
* Log properly in EepPost
|
|
|
|
2005-09-17 jrandom
|
|
* Added the natively compiled jbigi and patched java service wrapper for
|
|
OS X. Thanks Bill Dorsey for letting me use your machine!
|
|
* Don't build i2p.exe or i2pinstall.exe when run on OS X machines, as we
|
|
don't bundle the binutils necessary (and there'd be a naming conflict
|
|
if we did).
|
|
* Added 'single user' functionality to syndie - if the single user
|
|
checkbox on the admin page is checked, all users are allowed to control
|
|
the instance and sync up with remote syndie nodes.
|
|
* Temporarily disable the x-i2p-gzip in i2ptunnel until it is more closely
|
|
debugged.
|
|
|
|
2005-09-16 jrandom
|
|
* Reject unroutable IPs in SSU like we do for the TCP transport (unless
|
|
you have i2np.udp.allowLocal=true defined - useful for private nets)
|
|
|
|
2005-09-16 jrandom
|
|
* Adjust I2PTunnelHTTPServer so it can be used for outproxy operators
|
|
(just specify the spoofed host as an empty string), allowing them to
|
|
honor x-i2p-gzip encoding.
|
|
* Let windows users build the exes too (thanks bar and redzara!)
|
|
* Allow I2PTunnel httpserver operators to disable gzip compression on
|
|
individual tunnels with the i2ptunnel.gzip=false client option
|
|
(good idea susi!)
|
|
|
|
2005-09-16 jrandom
|
|
* Added the i2p.exe and i2pinstall.exe for windows users, using launch4j.
|
|
* Added runplain.sh for *nix/osx users having problems using the java
|
|
service wrapper (called from the install dir as: sh runplain.sh)
|
|
* Bundle susidns and syndie, with links on the top nav
|
|
* Have I2PTunnelHTTPClient and I2PTunnelHTTPServer use the x-i2p-gzip
|
|
content-encoding (if offered), reducing the payload size before it
|
|
reaches the streaming lib. The existing compression is at the i2cp
|
|
level, so we've been packetizing 4KB of uncompressed data and then
|
|
compressing those messages, rather than compressing and then packetizing
|
|
4KB of compressed data. This should reduce the number of round trips
|
|
to fetch web pages substantially.
|
|
* Adjust the startup and timing of the addressbook so that susidns always
|
|
has config to work off, and expose a method for susidns to tell it to
|
|
reload its config and rerun.
|
|
|
|
2005-09-15 jrandom
|
|
* Error handling for failed intro packets (thanks red.hand!)
|
|
* More carefully verify intro addresses
|
|
|
|
2005-09-13 jrandom
|
|
* More careful error handling with introductions (thanks dust!)
|
|
* Fix the forceIntroducers checkbox on config.jsp (thanks Complication!)
|
|
* Hide the shitlist on the summary so it doesn't confuse new users.
|
|
|
|
2005-09-12 comwiz
|
|
* Migrated the router tests to junit
|
|
|
|
2005-09-12 jrandom
|
|
* Removed guaranteed delivery mode entirely (so existing i2phex clients
|
|
using it can get the benefits of mode=best_effort). Guaranteed delivery
|
|
is offered at the streaming lib level.
|
|
* Improve the peer selection code for peer testing, as everyone now
|
|
supports tests.
|
|
* Give the watchdog its fangs - if it detects obscene job lag or if
|
|
clients have been unable to get a leaseSet for more than 5 minutes,
|
|
restart the router. This was disabled a year ago due to spurious
|
|
restarts, and can be disabled by "watchdog.haltOnHang=false", but the
|
|
cause of the spurious restarts should be gone.
|
|
|
|
2005-09-12 jrandom
|
|
* Bugfix for skewed store which could kill a UDP thread (causing complete
|
|
comm failure and eventual OOM)
|
|
|
|
2005-09-12 jrandom
|
|
* More aggressively publish updated routerInfo.
|
|
* Expose the flag to force SSU introductions on the router console
|
|
* Don't give people the option to disable SNTP time sync, at least not
|
|
through the router console, because there is no reason to disable it.
|
|
No, not even if your OS is "ntp synced", because chances are, its not.
|
|
|
|
2005-09-10 jrandom
|
|
* Test the router's reachability earlier and more aggressively
|
|
* Use the low level bandwidth limiter's rates for the router console, and
|
|
if the router has net.i2p.router.transport.FIFOBandwidthLimiter=INFO in
|
|
the logger config, keep track of the 1 second transfer rates as the stat
|
|
'bw.sendBps1s' and 'bw.recvBps1s', allowing closer monitoring of burst
|
|
behavior.
|
|
|
|
2005-09-09 jrandom
|
|
* Added preliminary support for NAT hole punching through SSU introducers
|
|
* Honor peer test results from peers that we have an SSU session with if
|
|
those sessions are idle for 3 minutes or more.
|
|
|
|
2005-09-09 cervantes
|
|
* New build due to change in build number :P (thanks ugha!)
|
|
|
|
2005-09-07 BarkerJr
|
|
* HTML cleanup for the router console (thanks!)
|
|
|
|
2005-09-07 jrandom
|
|
* Lay the foundation for 'client routers' - the ability for peers to opt
|
|
out of participating in tunnels entirely due to firewall/NAT issues.
|
|
Individual routers have control over where those peers are used in
|
|
tunnels - in outbound or inbound, exploratory or client tunnels, or
|
|
none at all. The defaults with this build are to simply act as before -
|
|
placing everyone as potential participants in any tunnel.
|
|
* Another part of the foundation includes the option for netDb
|
|
participants to refuse to answer queries regarding peers who are marked
|
|
as unreachable, though this too is disabled by default (meaning the
|
|
routerInfo is retrievable from the netDb).
|
|
|
|
2005-09-05 jrandom
|
|
* Expose the HTTP headers to EepGet status listeners
|
|
* Handle DSA key failures properly (if the signature is not invertable, it
|
|
is obviously invalid)
|
|
|
|
2005-09-04 jrandom
|
|
* Don't persist peer profiles until we are shutting down, as the
|
|
persistence process gobbles RAM and wall time.
|
|
* Bugfix to allow you to check/uncheck the sharedClient setting on the
|
|
I2PTunnel web interface (thanks BarkerJr!)
|
|
* Be more careful when expiring a failed tunnel message fragment so we
|
|
don't drop the data while attempting to read it.
|
|
|
|
* 2005-09-02 0.6.0.5 released
|
|
|
|
2005-09-02 jrandom
|
|
* Don't refuse to send a netDb store if the targetted peer has failed a
|
|
bit (the value was an arbitrary amount).
|
|
* Logging changes
|
|
|
|
* 2005-09-01 0.6.0.4 released
|
|
|
|
2005-09-01 jrandom
|
|
* Don't send out a netDb store of a router if it is more than a few hours
|
|
old, even if someone asked us for it.
|
|
|
|
2005-08-31 jrandom
|
|
* Don't publish leaseSets to the netDb if they will never be looked for -
|
|
namely, if they are for destinations that only establish outbound
|
|
streams. I2PTunnel's 'client' and 'httpclient' proxies have been
|
|
modified to tell the router that it doesn't need to publish their
|
|
leaseSet (by setting the I2CP config option 'i2cp.dontPublishLeaseSet'
|
|
to 'true').
|
|
* Don't publish the top 10 peer rankings of each router in the netdb, as
|
|
it isn't being watched right now.
|
|
|
|
2005-08-29 jrandom
|
|
* Added the new test Floodfill netDb
|
|
|
|
2005-08-27 jrandom
|
|
* Minor logging and optimization tweaks in the router and SDK
|
|
* Use ISO-8859-1 in the XML files (thanks redzara!)
|
|
* The consolePassword config property can now be used to bypass the router
|
|
console's nonce checking, allowing CLI restarts
|
|
|
|
2005-08-24 jrandom
|
|
* Catch errors with corrupt tunnel messages more gracefully (no need to
|
|
kill the thread and cause an OOM...)
|
|
* Don't skip shitlisted peers for netDb store messages, as they aren't
|
|
necessarily shitlisted by other people (though they probably are).
|
|
* Adjust the netDb store per-peer timeout based on each particular peer's
|
|
profile (timeout = 4x their average netDb store response time)
|
|
* Don't republish leaseSets to *failed* peers - send them to peers who
|
|
replied but just didn't know the value.
|
|
* Set a 5 second timeout on the I2PTunnelHTTPServer reading the client's
|
|
HTTP headers, rather than blocking indefinitely. HTTP headers should be
|
|
sent entirely within the first streaming packet anyway, so this won't be
|
|
a problem.
|
|
* Don't use the I2PTunnel*Server handler thread pool by default, as it may
|
|
prevent any clients from accessing the server if the handlers get
|
|
blocked by the streaming lib or other issues.
|
|
* Don't overwrite a known status (OK/ERR-Reject/ERR-SymmetricNAT) with
|
|
Unknown.
|
|
|
|
2005-08-23 jrandom
|
|
* Removed the concept of "no bandwidth limit" - if none is specified, its
|
|
16KBps in/out.
|
|
* Include ack packets in the per-peer cwin throttle (they were part of the
|
|
bandwidth limit though).
|
|
* Tweak the SSU cwin operation to get more accurrate estimates under
|
|
congestions.
|
|
* SSU improvements to resend more efficiently.
|
|
* Added a basic scheduler to eepget to fetch multiple files sequentially.
|
|
|
|
* 2005-08-21 0.6.0.3 released
|
|
|
|
2005-08-21 jrandom
|
|
* If we already have an established SSU session with the Charlie helping
|
|
test us, cancel the test with the status of "unknown".
|
|
|
|
2005-08-17 jrandom
|
|
* Revise the SSU peer testing protocol so that Bob verifies Charlie's
|
|
viability before agreeing to Alice's request. This doesn't work with
|
|
older SSU peer test builds, but is backwards compatible (older nodes
|
|
won't ask newer nodes to participate in tests, and newer nodes won't
|
|
ask older nodes to either).
|
|
|
|
2005-08-12 jrandom
|
|
* Keep detailed stats on the peer testing, publishing the results in the
|
|
netDb.
|
|
* Don't overwrite the status with 'unknown' unless we haven't had a valid
|
|
status in a while.
|
|
* Make sure to avoid shitlisted peers for peer testing.
|
|
* When we get an unknown result to a peer test, try again soon afterwards.
|
|
* When a peer tells us that our address is different from what we expect,
|
|
if we've done a recent peer test with a result of OK, fire off a peer
|
|
test to make sure our IP/port is still valid. If our test is old or the
|
|
result was not OK, accept their suggestion, but queue up a peer test for
|
|
later.
|
|
* Don't try to do a netDb store to a shitlisted peer, and adjust the way
|
|
we monitor netDb store progress (to clear up the high netDb.storePeers
|
|
stat)
|
|
|
|
2005-08-10 jrandom
|
|
* Deployed the peer testing implementation to be run every few minutes on
|
|
each router, as well as any time the user requests a test manually. The
|
|
tests do not reconfigure the ports at the moment, merely determine under
|
|
what conditions the local router is reachable. The status shown in the
|
|
top left will be "ERR-SymmetricNAT" if the user's IP and port show up
|
|
differently for different peers, "ERR-Reject" if the router cannot
|
|
receive unsolicited packets or the peer helping test could not find a
|
|
collaborator, "Unknown" if the test has not been run or the test
|
|
participants were unreachable, or "OK" if the router can receive
|
|
unsolicited connections and those connections use the same IP and port.
|
|
|
|
* 2005-08-08 0.6.0.2 released
|
|
|
|
2005-08-08 jrandom
|
|
* Add a configurable throttle to the number of concurrent outbound SSU
|
|
connection negotiations (via i2np.udp.maxConcurrentEstablish=4). This
|
|
may help those with slow connections to get integrated at the start.
|
|
* Further fixlets to the streaming lib
|
|
|
|
2005-08-07 Complication
|
|
* Display the average clock skew for both SSU and TCP connections
|
|
|
|
2005-08-07 jrandom
|
|
* Fixed the long standing streaming lib bug where we could lose the first
|
|
packet on retransmission.
|
|
* Avoid an NPE when a message expires on the SSU queue.
|
|
* Adjust the streaming lib's window growth factor with an additional
|
|
Vegas-esque congestion detection algorithm.
|
|
* Removed an unnecessary SSU session drop
|
|
* Reduced the MTU (until we get a working PMTU lib)
|
|
* Deferr tunnel acceptance until we know how to reach the next hop,
|
|
rejecting it if we can't find them in time.
|
|
* If our netDb store of our leaseSet fails, give it a few seconds before
|
|
republishing.
|
|
|
|
* 2005-08-03 0.6.0.1 released
|
|
|
|
2005-08-03 jrandom
|
|
* Backed out an inadvertant change to the netDb store redundancy factor.
|
|
* Verify tunnel participant caching.
|
|
* Logging cleanup
|
|
|
|
2005-08-01 duck
|
|
* Update IzPack to 3.7.2 (build 2005.04.22). This fixes bug #82.
|
|
|
|
2005-08-01 duck
|
|
* Fix an addressbook NPE when a new hostname from the master addressbook
|
|
didn't exist in the router addressbook.
|
|
* Fix an addressbook bug which caused subscriptions not to be parsed at
|
|
all. (Oops!)
|
|
|
|
2005-07-31 jrandom
|
|
* Adjust the netDb search and store per peer timeouts to match the average
|
|
measured per peer success times, rather than huge fixed values.
|
|
* Optimized and reverified the netDb peer selection / retrieval process
|
|
within the kbuckets.
|
|
* Drop TCP connections that don't have any useful activity in 10 minutes.
|
|
* If i2np.udp.fixedPort=true, never change the externally published port,
|
|
even if we are autodetecting the IP address.
|
|
|
|
* 2005-07-27 0.6 released
|
|
|
|
2005-07-27 jrandom
|
|
* Enabled SSU as the default top priority transport, adjusting the
|
|
config.jsp page accordingly.
|
|
* Add verification fields to the SSU and TCP connection negotiation (not
|
|
compatible with previous builds)
|
|
* Enable the backwards incompatible tunnel crypto change as documented in
|
|
tunnel-alt.html (have each hop encrypt the received IV before using it,
|
|
then encrypt it again before sending it on)
|
|
* Disable the I2CP encryption, leaving in place the end to end garlic
|
|
encryption (another backwards incompatible change)
|
|
* Adjust the protocol versions on the TCP and SSU transports so that they
|
|
won't talk to older routers.
|
|
* Fix up the config stats handling again
|
|
* Fix a rare off-by-one in the SSU fragmentation
|
|
* Reduce some unnecessary netDb resending by inluding the peers queried
|
|
successfully in the store redundancy count.
|
|
|
|
2005-07-22 jrandom
|
|
* Use the small thread pool for I2PTunnelHTTPServer (already used for
|
|
I2PTunnelServer)
|
|
* Minor memory churn reduction in I2CP
|
|
* Small stats update
|
|
|
|
2005-07-21 jrandom
|
|
* Fix in the SDK for a bug which would manifest itself as misrouted
|
|
streaming packets when a destination has many concurrent streaming
|
|
connections (thanks duck!)
|
|
* No more "Graceful shutdown in -18140121441141s"
|
|
|
|
2005-07-20 jrandom
|
|
* Allow the user to specify an external port # for SSU even if the external
|
|
host isn't specified (thanks duck!)
|
|
|
|
2005-07-19 jrandom
|
|
* Further preparation for removing I2CP crypto
|
|
* Added some validation to the DH key agreement (thanks $anon)
|
|
* Validate tunnel data message expirations (though not really a problem,
|
|
since tunnels expire)
|
|
* Minor PRNG threading cleanup
|
|
|
|
2005-07-15 cervantes
|
|
* Added workaround for an odd win32 bug in the stats configuration console
|
|
page which meant only the first checkbox selection was saved.
|
|
|
|
2005-07-15 Romster
|
|
* Added per group selection toggles in the stats configuration console
|
|
page.
|
|
|
|
2005-07-13 jrandom
|
|
* Fixed a recently injected bug in the multitransport bidding which had
|
|
allowed an essentially arbitrary choice of transports, rather than the
|
|
properly ordered choice.
|
|
|
|
2005-07-13 jrandom
|
|
* Fixed a long standing bug where we weren't properly comparing session
|
|
tags but instead largely depending upon comparing their hashCode,
|
|
causing intermittent decryption errors.
|
|
|
|
2005-07-12 jrandom
|
|
* Add some data duplication to avoid a recently injected concurrency
|
|
problem in the session tag manager (thanks redzara and romster).
|
|
|
|
2005-07-11 jrandom
|
|
* Reduced the growth factor on the slow start and congestion avoidance for
|
|
the streaming lib.
|
|
* Adjusted some of the I2PTunnelServer threading to use a small pool of
|
|
handlers, rather than launching off new threads which then immediately
|
|
launch off an I2PTunnelRunner instance (which launches 3 more threads..)
|
|
* Don't persist session keys / session tags (not worth it, for now)
|
|
* Added some detection and handling code for duplicate session tags being
|
|
delivered (root cause still not addressed)
|
|
* Make the PRNG's buffer size configurable (via the config property
|
|
"i2p.prng.totalBufferSizeKB=4096")
|
|
* Disable SSU flooding by default (duh)
|
|
* Updates to the StreamSink apps for better throttling tests.
|
|
|
|
2005-07-05 jrandom
|
|
* Use a buffered PRNG, pulling the PRNG data off a larger precalculated
|
|
buffer, rather than the underlying PRNG's (likely small) one, which in
|
|
turn reduces the frequency of recalcing.
|
|
* More tuning to reduce temporary allocation churn
|
|
|
|
2005-07-04 jrandom
|
|
* Within the tunnel, use xor(IV, msg[0:16]) as the flag to detect dups,
|
|
rather than the IV by itself, preventing an attack that would let
|
|
colluding internal adversaries tag a message to determine that they are
|
|
in the same tunnel. Thanks dvorak for the catch!
|
|
* Drop long inactive profiles on startup and shutdown
|
|
* /configstats.jsp: web interface to pick what stats to log
|
|
* Deliver more session tags to account for wider window sizes
|
|
* Cache some intermediate values in our HMACSHA256 and BC's HMAC
|
|
* Track the client send rate (stream.sendBps and client.sendBpsRaw)
|
|
* UrlLauncher: adjust the browser selection order
|
|
* I2PAppContext: hooks for dummy HMACSHA256 and a weak PRNG
|
|
* StreamSinkClient: add support for sending an unlimited amount of data
|
|
* Migrate the tests out of the default build jars
|
|
|
|
2005-06-22 Comwiz
|
|
* Migrate the core tests to junit
|
|
|
|
2005-05-25 duck
|
|
* Fixed PRNG bug (bugzilla #107)
|
|
|
|
2005-05-01 jrandom
|
|
* Added a substantial optimization to the AES engine by caching the
|
|
prepared session keys (duh).
|
|
|
|
2005-05-01 jrandom
|
|
* Cleaned up the peers page a bit more.
|
|
|
|
2005-04-30 jrandom
|
|
* Added a small new page to the web console (/peers.jsp) which contains
|
|
the peer connection information. This will be cleaned up a lot more
|
|
before 0.6 is out, but its a start.
|
|
|
|
2005-04-30 jrandom
|
|
* Reduced some SimpleTimer churn
|
|
|
|
2005-04-29 jrandom
|
|
* Reduce the peer profile stat coallesce overhead by inlining it with the
|
|
reorganize.
|
|
* Limit each transport to at most one address (any transport that requires
|
|
multiple entry points can include those alternatives in the address).
|
|
|
|
2005-04-28 jrandom
|
|
* More fixes for the I2PTunnel "other" interface handling (thanks nelgin!)
|
|
* Add back the code to handle bids from multiple transports (though there
|
|
is still only one transport enabled by default)
|
|
* Adjust the router's queueing of outbound client messages when under
|
|
heavy load by running the preparatory job in the client's I2CP handler
|
|
thread, thereby blocking additional outbound messages when the router is
|
|
hosed.
|
|
* No need to validate or persist a netDb entry if we already have it
|
|
|
|
2005-04-25 smeghead
|
|
* Added button to router console for manual update checks.
|
|
* Fixed bug in configupdate.jsp that caused the proxy port to be updated
|
|
every time the form was submitted even if it hadn't changed.
|
|
|
|
2005-04-24 jrandom
|
|
* Added a pool of PRNGs using a different synchronization technique,
|
|
hopefully sufficient to work around IBM's PRNG bugs until we get our
|
|
own Fortuna.
|
|
* In the streaming lib, don't jack up the RTT on NACK, and have the window
|
|
size bound the not-yet-ready messages to the peer, not the unacked
|
|
message count (not sure yet whether this is worthwile).
|
|
* Many additions to the messageHistory log.
|
|
* Handle out of order tunnel fragment delivery (not an issue on the live
|
|
net with TCP, but critical with UDP).
|
|
|
|
* 2005-04-20 0.5.0.7 released
|
|
|
|
2005-04-20 jrandom
|
|
* In the SDK, we don't actually need to block when we're sending a message
|
|
as BestEffort (and these days, we're always sending BestEffort).
|
|
* Pass out client messages in fewer (larger) steps.
|
|
* Have the InNetMessagePool short circuit dispatch requests.
|
|
* Have the message validator take into account expiration to cut down on
|
|
false positives at high transfer rates.
|
|
* Allow configuration of the probabalistic window size growth rate in the
|
|
streaming lib's slow start and congestion avoidance phases, and default
|
|
them to a more conservative value (2), rather than the previous value
|
|
(1).
|
|
* Reduce the ack delay in the streaming lib to 500ms
|
|
* Honor choke requests in the streaming lib (only affects those getting
|
|
insanely high transfer rates)
|
|
* Let the user specify an interface besides 127.0.0.1 or 0.0.0.0 on the
|
|
I2PTunnel client page (thanks maestro^!)
|
|
|
|
2005-04-17 sirup
|
|
* Added the possibility for i2ptunnel client and httpclient instances to
|
|
have their own i2p session (and hence, destination and tunnels). By
|
|
default, tunnels are shared, but that can be changed on the web
|
|
interface or with the sharedClient config option in i2ptunnel.config.
|
|
|
|
2005-04-17 jrandom
|
|
* Marked the net.i2p.i2ptunnel.TunnelManager as deprecated. Anyone use
|
|
this? If not, I want to drop it (lots of tiny details with lots of
|
|
duplicated semantics).
|
|
|
|
2005-04-17 zzz
|
|
* Added new user-editable eepproxy error page templates.
|
|
|
|
2005-04-17 jrandom
|
|
* Revamp the tunnel building throttles, fixing a situation where the
|
|
rebuild may not recover, and defaulting it to unthrottled (users with
|
|
slow CPUs may want to set "router.tunnel.shouldThrottle=true" in their
|
|
advanced router config)
|
|
|
|
2005-04-16 jrandom
|
|
* Migrated to Bouncycastle's SHA256 and HMAC implementations for efficiency
|
|
|
|
2005-04-12 jrandom
|
|
* Make sure we don't get cached updates (thanks smeghead!)
|
|
* Clear out the callback for the TestJob after it passes (only affects the
|
|
job timing accounting)
|
|
|
|
2005-04-08 smeghead
|
|
* Added NativeBigInteger benchmark to scripts/i2pbench.sh.
|
|
|
|
2005-04-08 smeghead
|
|
* Security improvements to TrustedUpdate: signing and verification of the
|
|
version string along with the data payload for signed update files
|
|
(consequently the positions of the DSA signature and version string fields
|
|
have been swapped in the spec for the update file's header); router will
|
|
no longer perform a trusted update if the signed update's version is lower
|
|
than or equal to the currently running router's version.
|
|
* Added two new CLI commands to TrustedUpdate: showversion, verifyupdate.
|
|
* Extended TrustedUpdate public API for use by third party applications.
|
|
|
|
* 2005-04-06 0.5.0.6 released
|
|
|
|
2005-04-05 jrandom
|
|
* Retry I2PTunnel startup if we are unable to build a socketManager for a
|
|
client or httpclient tunnel.
|
|
* Add some basic sanity checking on the I2CP settings (thanks duck!)
|
|
|
|
2005-04-05 jrandom
|
|
* After a successfull netDb search for a leaseSet, republish it to all of
|
|
the peers we have tried so far who did not give us the key (up to 10),
|
|
rather than the old K closest (which may include peers who had given us
|
|
the key)
|
|
* Don't wait 5 minutes to publish a leaseSet (duh!), and rather than
|
|
republish it every 5 minutes, republish it every 3. In addition, always
|
|
republish as soon as the leaseSet changes (duh^2).
|
|
* Minor fix for oddball startup race (thanks travis_bickle!)
|
|
* Minor AES update to allow in-place decryption.
|
|
|
|
2005-04-03 jrandom
|
|
* EepGet fix for open-ended HTTP fetches (such as the news.xml
|
|
feeding the NewsFetcher)
|
|
|
|
2005-04-01 jrandom
|
|
* Allow editing I2PTunnel server instances with five digit ports
|
|
(thanks nickless_head!)
|
|
* More NewsFetcher debugging for reported weirdness
|
|
|
|
2005-04-01 jrandom
|
|
* Fix to check for missing news file (thanks smeghead!)
|
|
* Added destination display CLI:
|
|
java -cp lib/i2p.jar net.i2p.data.Destination privKeyFilename
|
|
* Added destination display to the web interface (thanks pnspns)
|
|
* Installed CIA backdoor
|
|
|
|
* 2005-03-29 0.5.0.5 released
|
|
|
|
2005-03-29 jrandom
|
|
* Decreased the initial RTT estimate to 10s to allow more retries.
|
|
* Increased the default netDb store replication factor from 2 to 6 to take
|
|
into consideration tunnel failures.
|
|
* Address some statistical anonymity attacks against the netDb that could
|
|
be mounted by an active internal adversary by only answering lookups for
|
|
leaseSets we received through an unsolicited store.
|
|
* Don't throttle lookup responses (we throttle enough elsewhere)
|
|
* Fix the NewsFetcher so that it doesn't incorrectly resume midway through
|
|
the file (thanks nickster!)
|
|
* Updated the I2PTunnel HTML (thanks postman!)
|
|
* Added support to the I2PTunnel pages for the URL parameter "passphrase",
|
|
which, if matched against the router.config "i2ptunnel.passphrase" value,
|
|
skips the nonce check. If the config prop doesn't exist or is blank, no
|
|
passphrase is accepted.
|
|
* Implemented HMAC-SHA256.
|
|
* Enable the tunnel batching with a 500ms delay by default
|
|
* Dropped compatability with 0.5.0.3 and earlier releases
|
|
|
|
2005-03-26 jrandom
|
|
* Added some error handling and fairly safe to cache data to the streaming
|
|
lib (good call Tom!)
|
|
|
|
2005-03-25 jrandom
|
|
* Fixed up building dependencies for the routerconsole on some more
|
|
aggressive compilers (thanks polecat!)
|
|
|
|
* 2005-03-24 0.5.0.4 released
|
|
|
|
2005-03-23 jrandom
|
|
* Added more intelligent version checking in news.xml, in case we have a
|
|
version newer than the one specified.
|
|
|
|
2005-03-23 jrandom
|
|
* Added support for Transfer-Encoding: chunked to the EepGet, so that the
|
|
cvsweb.cgi doesn't puke on us.
|
|
|
|
2005-03-23 Connelly
|
|
* Fixed Bugzilla Bug #99 in the SAM Bridge, which caused pending
|
|
stream send data to not be sent if STREAM CLOSE is issued too fast.
|
|
|
|
2005-03-23 jrandom
|
|
* Implemented the news fetch / update policy code, as configurated on
|
|
/configupdate.jsp. Defaults are to grab the news every 24h (or if it
|
|
doesn't exist yet, on startup). No action is taken however, though if
|
|
the news.xml specifies that a new release is available, an option to
|
|
update will be shown on the router console.
|
|
* New initialNews.xml delivered with new installs, and moved news.xml out
|
|
of the i2pwww module and into the i2p module so that we can bundle it
|
|
within each update.
|
|
|
|
2005-03-23 jrandom
|
|
* New /configupdate.jsp page for controlling the update / notification
|
|
process, as well as various minor related updates. Note that not all
|
|
options are exposed yet, and the update detection code isn't in place
|
|
in this commit - it currently says there is always an update available.
|
|
* New EepGet component for reliable downloading, with a CLI exposed in
|
|
java -cp lib/i2p.jar net.i2p.util.EepGet url
|
|
* Added a default signing key to the TrustedUpdate component to be used
|
|
for verifying updates. This signing key can be authenticated via
|
|
gpg --verify i2p/core/java/src/net/i2p/crypto/TrustedUpdate.java
|
|
* New public domain SHA1 implementation for the DSA code so that we can
|
|
handle signing streams of arbitrary size without excess memory usage
|
|
(thanks P.Verdy!)
|
|
* Added some helpers to the TrustedUpdate to work off streams and to offer
|
|
a minimal CLI:
|
|
TrustedUpdate keygen pubKeyFile privKeyFile
|
|
TrustedUpdate sign origFile signedFile privKeyFile
|
|
TrustedUpdate verify signedFile
|
|
|
|
2005-03-22 smeghead
|
|
* New TrustedUpdate component for signing/verifying files with a DSA
|
|
signature.
|
|
|
|
2005-03-21 jrandom
|
|
* Fixed the tunnel fragmentation handler to deal with multiple fragments
|
|
in a single message properly (rather than release the buffer into the
|
|
cache after processing the first one) (duh!)
|
|
* Added the batching preprocessor which will bundle together multiple
|
|
small messages inside a single tunnel message by delaying their delivery
|
|
up to .5s, or whenever the pending data will fill a full message,
|
|
whichever comes first. This is disabled at the moment, since without the
|
|
above bugfix widely deployed, lots and lots of messages would fail.
|
|
* Within each tunnel pool, stick with a randomly selected peer for up to
|
|
.5s before randomizing and selecting again, instead of randomizing the
|
|
pool each time a tunnel is needed.
|
|
|
|
* 2005-03-18 0.5.0.3 released
|
|
|
|
2005-03-18 jrandom
|
|
* Minor tweak to the timestamper to help reduce small skews
|
|
* Adjust the stats published to include only the relevent ones
|
|
* Only show the currently used speed calculation on the profile page
|
|
* Allow the full max # resends to be sent, rather than piggybacking the
|
|
RESET packet along side the final resend (duh)
|
|
* Add irc.postman.i2p to the default list of IRC servers for new installs
|
|
* Drop support for routers running 0.5 or 0.5.0.1 while maintaining
|
|
backwards compatability for users running 0.5.0.2.
|
|
|
|
2005-03-18 jrandom
|
|
* Eepproxy Fix for corrupted HTTP headers (thanks nickster!)
|
|
* Fixed case sensitivity issues on the HTTP headers (thanks duck!)
|
|
|
|
2005-03-17 jrandom
|
|
* Update the old speed calculator and associated profile data points to
|
|
use a non-tiered moving average of the tunnel test time, avoiding the
|
|
freshness issues of the old tiered speed stats.
|
|
* Explicitly synchronize all of the methods on the PRNG, rather than just
|
|
the feeder methods (sun and kaffe only need the feeder, but it seems ibm
|
|
needs all of them synchronized).
|
|
* Properly use the tunnel tests as part of the profile stats.
|
|
* Don't flood the jobqueue with sequential persist profile tasks, but
|
|
instead, inject a brief scheduling delay between them.
|
|
* Reduce the TCP connection establishment timeout to 20s (which is still
|
|
absurdly excessive)
|
|
* Reduced the max resend delay to 30s so we can get some resends in when
|
|
dealing with client apps that hang up early (e.g. wget)
|
|
* Added more alternative socketManager factories (good call aum!)
|
|
|
|
2005-03-16 jrandom
|
|
* Adjust the old speed calculator to include end to end RTT data in its
|
|
estimates, and use that as the primary speed calculator again.
|
|
* Use the mean of the high capacity speeds to determine the fast
|
|
threshold, rather than the median. Perhaps we should use the mean of
|
|
all active non-failing peers?
|
|
* Updated the profile page to sort by tier, then alphabetically.
|
|
* Added some alternative socketManager factories (good call aum!)
|
|
|
|
2005-03-14 jrandom
|
|
* New strict speed calculator that goes off the actual number of messages
|
|
verifiably sent through the peer by way of tunnels. Initially, this only
|
|
contains the successful message count on inbound tunnels, but may be
|
|
augmented later to include verified outbound messages, peers queried in
|
|
the netDb, etc. The speed calculation decays quickly, but should give
|
|
a better differential than the previous stat (both values are shown on
|
|
the /profiles.jsp page)
|
|
|
|
2005-03-11 jrandom
|
|
* Rather than the fixed resend timeout floor (10s), use 10s+RTT as the
|
|
minimum (increased on resends as before, of course).
|
|
* Always prod the clock update listeners, even if just to tell them that
|
|
the time hasn't changed much.
|
|
* Added support for explicit peer selection for individual tunnel pools,
|
|
which will be useful in debugging but not recommended for use by normal
|
|
end users.
|
|
* More aggressively search for the next hop's routerInfo on tunnel join.
|
|
* Give messages received via inbound tunnels that are bound to remote
|
|
locations sufficient time (taking into account clock skew).
|
|
* Give alternate direct send messages sufficient time (10s min, not 5s)
|
|
* Always give the end to end data message the explicit timeout (though the
|
|
old default was sufficient before)
|
|
* No need to give end to end messages an insane expiration (+2m), as we
|
|
are already handling skew on the receiving side.
|
|
* Don't complain too loudly about expired TunnelCreateMessages (at least,
|
|
not until after all those 0.5 and 0.5.0.1 users upgrade ;)
|
|
* Properly keep the sendBps stat
|
|
* When running the router with router.keepHistory=true, log more data to
|
|
messageHistory.txt
|
|
* Logging updates
|
|
* Minor formatting updates
|
|
|
|
2005-03-08 jrandom
|
|
* More aggressively adjust the clock
|
|
|
|
2005-03-07 jrandom
|
|
* Fix the HTTP response header filter to allow multiple headers with the
|
|
same name (thanks duck and spotteri!)
|
|
|
|
* 2005-03-06 0.5.0.2 released
|
|
|
|
2005-03-06 jrandom
|
|
* Allow the I2PTunnel web interface to select streaming lib options for
|
|
individual client tunnels, rather than sharing them across all of them,
|
|
as we do with the session options. This way people can (and should) set
|
|
the irc proxy to interactive and the eepproxy to bulk.
|
|
* Added a startRouter.sh script to new installs which simply calls
|
|
"sh i2prouter start". This should make it clear how people should start
|
|
I2P.
|
|
* Properly expand the HTTP response header buffer (thanks shendaras!)
|
|
|
|
2005-03-04 jrandom
|
|
* Filter HTTP response headers in the eepproxy, forcing Connection: close
|
|
so that broken (/malicious) webservers can't allow persistent
|
|
connections. All HTTP compliant browsers should now always close the
|
|
socket.
|
|
* Enabled the GZIPInputStream's cache (they weren't cached before)
|
|
* Make sure our first send is always a SYN (duh)
|
|
* Workaround for some buggy compilers
|
|
|
|
2005-03-03 jrandom
|
|
* Loop while starting up the I2PTunnel instances, in case the I2CP
|
|
listener isn't up yet (thanks detonate!)
|
|
* Implement custom reusable GZIP streams to both reduce memory churn
|
|
and prevent the exposure of data in the standard GZIP header (creation
|
|
time, OS, etc). This is RFC1952 compliant, and backwards compatible,
|
|
though has only been tested within the confines of I2P's compression use
|
|
(DataHelper.[de]compress).
|
|
* Preemptively support the next protocol version, so that after the 0.5.0.2
|
|
release, we'll be able to drop protocol=2 to get rid of 0.5 users.
|
|
|
|
2005-03-02 jrandom
|
|
* Fix one substantial OOM cause (session tag manager was only dropping
|
|
tags once the critical limit was met, rather than honoring their
|
|
expiration) (duh)
|
|
* Lots of small memory fixes
|
|
* Double the allowable concurrent outstanding tunnel build tasks (20)
|
|
|
|
2005-03-01 jrandom
|
|
* Really disable the streaming lib packet caching
|
|
* Synchronized a message handling point in the SDK (even though its use is
|
|
already essentially single threaded, its better to play it safe)
|
|
* Don't add new RepublishLeaseSetJobs on failure, just requeue up the
|
|
existing one (duh)
|
|
* Throttle the number of concurrent pending tunnel builds across all
|
|
pools, in addition to simply throttling the number of new requests per
|
|
minute for each pool individually. This should avoid the cascading
|
|
failure when tunnel builds take too long, as no new builds will be
|
|
created until the previous ones are handled.
|
|
* Factored out and extended the DataHelper's unit tests for dealing with
|
|
long and date formatting.
|
|
* Explicitly specify the HTTP auth realm as "i2prouter", though this
|
|
alone doesn't address the bug where jetty asks for authentication too
|
|
much. (thanks orion!)
|
|
* Updated the StreamSinkServer to ignore all read bytes, rather than write
|
|
them to the filesystem.
|
|
|
|
2005-02-27 jrandom
|
|
* Don't rerequest leaseSets if there are already pending requests
|
|
* Reverted the insufficiently tested caching in the DSA/SHA1 impl, and
|
|
temporary disabled the streaming lib packet caching.
|
|
* Reduced the resend RTT penalty to 10s
|
|
|
|
2005-02-26 jrandom
|
|
* Force 1.3-isms on the precompiled jsps too (thanks laberhost)
|
|
|
|
2005-02-26 jrandom
|
|
* Further streaming lib caching improvements
|
|
* Reduce the minimum RTT (used to calculate retry timeouts), but also
|
|
increase the RTT on resends.
|
|
* Lower the default message size to 4KB from 16KB to further reduce the
|
|
chance of failed fragmentation.
|
|
* Extend tunnel rebuild throttling to include fallback rebuilds
|
|
* If there are less than 20 routers known, don't drop the last 20 (to help
|
|
avoid dropping all peers under catastrophic failures)
|
|
* New stats for end to end messages - "client.leaseSetFoundLocally",
|
|
"client.leaseSetFoundRemoteTime", and "client.leaseSetFailedRemoteTime"
|
|
|
|
2005-02-24 jrandom
|
|
* Throttle the number of tunnel rebuilds per minute, preventing CPU
|
|
overload under catastrophic failures (thanks Tracker and cervantes!)
|
|
* Block the router startup process until we've initialized the clock
|
|
|
|
2005-02-24 jrandom
|
|
* Cache temporary memory allocation in the DSA's SHA1 impl, and the packet
|
|
data in the streaming lib.
|
|
* Fixed a streaming lib bug where the connection initiator would fail the
|
|
stream if the ACK to their SYN was lost.
|
|
|
|
2005-02-23 jrandom
|
|
* Now that we don't get stale SAM sessions, it'd be nice if we didn't
|
|
get stale tunnel pools, don't you think?
|
|
|
|
* 2005-02-23 0.5.0.1 released
|
|
|
|
2005-02-22 jrandom
|
|
* Reworked the tunnel (re)building process to remove the tokens and
|
|
provide cleaner controls on the tunnels built.
|
|
* Fixed situations where the timestamper wanted to test more servers than
|
|
were provided (thanks Tracker!)
|
|
* Get rid of the dead SAM sessions by using the streaming lib's callbacks
|
|
(thanks Tracker!)
|
|
|
|
2005-02-22 jrandom
|
|
* Temporary workaround for the I2CP disconnect bug (have the streaminglib
|
|
try to automatically reconnect on accept()/connect(..)).
|
|
* Loop check for expired lease republishing (just in case)
|
|
|
|
2005-02-22 jrandom
|
|
* Adjusted (and fixed...) the timestamper change detection
|
|
* Deal with a rare reordering bug at the beginning of a stream (so we
|
|
don't drop it unnecessarily)
|
|
* Cleaned up some dropped message handling in the router
|
|
* Reduced job queue churn when dealing with a large number of tunnels by
|
|
sharing an expiration job
|
|
* Keep a separate list of the most recent CRIT messages (shown on the
|
|
logs.jsp). This way they don't get buried among any other messages.
|
|
* For clarity, display the tunnel variance config as "Randomization" on
|
|
the web console.
|
|
* If lease republishing fails (boo! hiss!) try it again
|
|
* Actually fix the negative jobLag in the right place (this time)
|
|
* Allow reseeding when there are less than 10 known peer references
|
|
* Lots of logging updates.
|
|
|
|
2005-02-20 jrandom
|
|
* Allow the streaming lib resend frequency to drop down to 20s as the
|
|
minimum, so that up to 2 retries can get sent on an http request.
|
|
* Add further limits to failsafe tunnels.
|
|
* Keep exploratory and client tunnel testing and building stats separate.
|
|
* Only use the 60s period for throttling tunnel requests due to transient
|
|
network overload.
|
|
* Rebuild tunnels earlier (1-3m before expiration, by default)
|
|
* Cache the next hop's routerInfo for participating tunnels so that the
|
|
tunnel participation doesn't depend on the netDb.
|
|
* Fixed a long standing bug in the streaming lib where we wouldn't always
|
|
unchoke messages when the window size grows.
|
|
* Make sure the window size never reaches 0 (duh)
|
|
|
|
2005-02-20 jrandom
|
|
* Only build failsafe tunnels if we need them
|
|
* Properly implement the selectNotFailingPeers so that we get a random
|
|
selection of peers, rather than using the strictOrdering (thanks dm!)
|
|
* Don't include too many "don't tell me about" peer references in the
|
|
lookup message - only send the 10 peer references closest to the target.
|
|
|
|
2005-02-19 jrandom
|
|
* Only build new extra tunnels on failure if we don't have enough
|
|
* Fix a fencepost in the tunnel building so that e.g. a variance of
|
|
2 means +/- 2, not +/- 1 (thanks dm!)
|
|
* Avoid an NPE on client disconnect
|
|
* Never select a shitlisted peer to participate in a tunnel
|
|
* Have netDb store messages timeout after 10s, not the full 60s (duh)
|
|
* Keep session tags around for a little longer, just in case (grr)
|
|
* Cleaned up some closing event issues on the streaming lib
|
|
* Stop bundling the jetty 5.1.2 and updated wrapper.config in the update
|
|
so that 0.4.* users will need to do a clean install, but we don't need
|
|
to shove an additional 2MB in each update to those already on 0.5.
|
|
* Imported the susimail css (oops, thanks susi!)
|
|
|
|
* 2005-02-18 0.5 released
|
|
|
|
2005-02-17 jrandom
|
|
* If the clock is adjusted during a job run, don't act as if the job took
|
|
negative time.
|
|
|
|
2005-02-17 jrandom
|
|
* Included the GPL'ed susimail 0.13 by default (thanks susi23!)
|
|
|
|
2005-02-17 jrandom
|
|
* Fixed the braindead tunnel testing logic
|
|
* If a large number of tunnels are failing (within the last 5-10 minutes)
|
|
and the current tunnel pool's configuration allows it, randomly build a
|
|
zero hop tunnel to replace failed tunnels.
|
|
* Enable postman's POP3 and SMTP tunnels by default
|
|
|
|
2005-02-16 jrandom
|
|
* Added some error handling when the number of session tags exceeds the
|
|
realistic capacity, dropping a random chunk of received tag sets and
|
|
conducting some minor analysis of the remaining ones. This is a part
|
|
of a pretty serious error condition, and logs as CRIT (if/when people
|
|
see "TOO MANY SESSION TAGS!", please let me know the full log line it
|
|
puts in the wrapper.log or /logs.jsp)
|
|
* Update the addressbook to only write to the published hosts location
|
|
if the addressbook's config contains "should_publish=true" (by default,
|
|
it contains "should_publish=false")
|
|
|
|
2005-02-16 jrandom
|
|
* (Merged the 0.5-pre branch back into CVS HEAD)
|
|
* Replaced the old tunnel routing crypto with the one specified in
|
|
router/doc/tunnel-alt.html, including updates to the web console to view
|
|
and tweak it.
|
|
* Provide the means for routers to reject tunnel requests with a wider
|
|
range of responses:
|
|
probabalistic rejection, due to approaching overload
|
|
transient rejection, due to temporary overload
|
|
bandwidth rejection, due to persistent bandwidth overload
|
|
critical rejection, due to general router fault (or imminent shutdown)
|
|
The different responses are factored into the profiles accordingly.
|
|
* Replaced the old I2CP tunnel related options (tunnels.depthInbound, etc)
|
|
with a series of new properties, relevent to the new tunnel routing code:
|
|
inbound.nickname (used on the console)
|
|
inbound.quantity (# of tunnels to use in any leaseSets)
|
|
inbound.backupQuantity (# of tunnels to keep in the ready)
|
|
inbound.length (# of remote peers in the tunnel)
|
|
inbound.lengthVariance (if > 0, permute the length by adding a random #
|
|
up to the variance. if < 0, permute the length
|
|
by adding or subtracting a random # up to the
|
|
variance)
|
|
outbound.* (same as the inbound, except for the, uh, outbound tunnels
|
|
in that client's pool)
|
|
There are other options, and more will be added later, but the above are
|
|
the most relevent ones.
|
|
* Replaced Jetty 4.2.21 with Jetty 5.1.2
|
|
* Compress all profile data on disk.
|
|
* Adjust the reseeding functionality to work even when the JVM's http proxy
|
|
is set.
|
|
* Enable a poor-man's interactive-flow in the streaming lib by choking the
|
|
max window size.
|
|
* Reduced the default streaming lib max message size to 16KB (though still
|
|
configurable by the user), also doubling the default maximum window
|
|
size.
|
|
* Replaced the RouterIdentity in a Lease with its SHA256 hash.
|
|
* Reduced the overall I2NP message checksum from a full 32 byte SHA256 to
|
|
the first byte of the SHA256.
|
|
* Added a new "netId" flag to let routers drop references to other routers
|
|
who we won't be able to talk to.
|
|
* Extended the timestamper to get a second (or third) opinion whenever it
|
|
wants to actually adjust the clock offset.
|
|
* Replaced that kludge of a timestamp I2NP message with a full blown
|
|
DateMessage.
|
|
* Substantial memory optimizations within the router and the SDK to reduce
|
|
GC churn. Client apps and the streaming libs have not been tuned,
|
|
however.
|
|
* More bugfixes than you can shake a stick at.
|
|
|
|
2005-02-13 jrandom
|
|
* Updated jbigi source to handle 64bit CPUs. The bundled jbigi.jar still
|
|
only contains 32bit versions, so build your own, placing libjbigi.so in
|
|
your install dir if necessary. (thanks mule!)
|
|
* Added support for libjbigi-$os-athlon64 to NativeBigInteger and CPUID
|
|
(thanks spaetz!)
|
|
|
|
2005-02-10 smeghead
|
|
* Initial check-in of Pants, a new utility to help us manage our 3rd-party
|
|
dependencies (Fortuna, Jetty, Java Service Wrapper, etc.). Some parts of
|
|
Pants are still non-functional at this time so don't mess with it yet
|
|
unless you want to potentially mangle your working copy of CVS.
|
|
|
|
2005-02-09 duck
|
|
* Allow an unneeded newline in the SAM client connection without
|
|
disconnecting.
|
|
|
|
2005-02-07 jrandom
|
|
* Fixed a race in the streaming lib's delayed flush algorithm (thanks anon!)
|
|
|
|
2005-02-06 Sugadude
|
|
* Added a filter to the addressbook to remove entries that dont end in ".i2p"
|
|
|
|
2005-02-03 smeghead
|
|
* Added Ant buildfile in apps/fortuna for creating a custom Fortuna PRNG jar
|
|
library from GNU Crypto's CVS HEAD sources.
|
|
|
|
2005-01-26 smeghead
|
|
* i2pProxy.pac, i2pbench.sh, and i2ptest.sh are now shipped with the dist
|
|
packages and installed to $i2pinstalldir/scripts.
|
|
* Added command line params to i2ptest.sh and i2pbench.sh: --gij to run them
|
|
using gij + libgcj, and --sourcedir to run them from the source tree
|
|
instead of the installation directory.
|
|
* Fixed unreachable for() statement clause in the KBucketImpl class that was
|
|
causing gcj to toss a compilation warning (jrandom++).
|
|
|
|
2005-01-26 smeghead
|
|
* Added a couple of scripts, i2ptest.sh and i2pbench.sh, to manage the core
|
|
tests and benchmarks.
|
|
* Routerconsole now builds under gcj 3.4.3.
|
|
* Corrected divide by zero error in TunnelId class under gcj (jrandom++).
|
|
|
|
2005-01-25 smeghead
|
|
* Tweaked some classes to enable gcj 3.4.3 to compile the router and
|
|
supporting apps (except for the routerconsole which is still being
|
|
investigated).
|
|
|
|
2005-01-24 smeghead
|
|
* C#-ification of sam-sharp: interface greatly simplified using delegates
|
|
and events; SamBaseEventHandler provides basic implementation and helper
|
|
methods but is now optional.
|
|
* NAnt buildfile and README added for sam-sharp.
|
|
|
|
2005-01-23 smeghead
|
|
* Port the java SAM client library to mono/C# and released into the
|
|
public domain. The 0.1 version of this port is available in CVS as
|
|
i2p/apps/sam/csharp/src/I2P.SAM.Client. The other nonfunctional C#
|
|
library has been removed.
|
|
|
|
2005-01-21 Jhor
|
|
* Updated jbigi build scripts for OSX.
|
|
|
|
2005-01-21 jrandom
|
|
* Added support for OSX to the NativeBigInteger code so that it will look
|
|
in the classpath for libjbigi-osx-none.jnilib. At the moment, that file
|
|
is not bundled with the shipped jbigi.jar yet though.
|
|
|
|
2005-01-18 jrandom
|
|
* Increased the max # session tags maintained and decreased slightly the
|
|
period over which they are gathered.
|
|
|
|
2005-01-17 jrandom
|
|
* Added meaningful support for adjusting the preferred message size in the
|
|
streaming lib by setting the i2p.streaming.maxMessageSize=32768 (or
|
|
whatever). The other side will mimic a reduction (but never an increase).
|
|
* Always make sure to use distinct ConnectionOption objects for each
|
|
connection (duh)
|
|
* Reduced the default ACK delay to 500ms on in the streaming lib
|
|
* Only shrink the streaming window once per window
|
|
* Don't bundle a new jetty.xml with updates
|
|
* Catch another local routerInfo corruption issue on startup.
|
|
|
|
2005-01-15 cervantes
|
|
* Added support to the eepproxy for URLs such as
|
|
http://localhost:4444/eepproxy/foo.i2p/bar/baz or even
|
|
http://localhost:4444/eepproxy/foo.i2p/?i2paddresshelper=base64
|
|
|
|
2005-01-15 jrandom
|
|
* Caught a series of (previously unhandled) errors caused by requeueing
|
|
messages that had timed out on the TCP transport (thanks mae^!)
|
|
* Reduce the barrier to dropping session tags on streaming lib resends -
|
|
every fourth send should drop the tags, forcing ElGamal encryption. This
|
|
will help speed up the recovery after a disconnect, rather than the drop
|
|
every fifth send.
|
|
|
|
* 2005-01-06 0.4.2.6 released
|
|
|
|
2005-01-06 jrandom
|
|
* Added a startup message to the addressbook, printing its version number
|
|
to stdout (which is sent to wrapper.config) when it loads.
|
|
* Updated the addressbook to reread the config file periodically
|
|
* Added orion.i2p to the list of eepsites on the default homepage
|
|
|
|
2005-01-05 jrandom
|
|
* Handle unexpected network read errors more carefully (thanks parg!)
|
|
* Added more methods to partially compare (DataHelper) and display
|
|
arrays (Base64.encode).
|
|
* Exposed the AES encryptBlock/decryptBlock on the context.aes()
|
|
* Be more generous on the throttle when just starting up the router
|
|
* Fix a missing scheduled event in the streaming lib (caused after reset)
|
|
* Add a new DisconnectListener on the I2PSocketManager to allow
|
|
notification of session destruction.
|
|
* Make sure our own router identity is valid, and if it isn't, build a new
|
|
one and restart the router. Alternately, you can run the Router with
|
|
the single command line argument "rebuild" and it will do the same.
|
|
|
|
2004-12-31 ragnarok
|
|
* Integrated latest addressbook changes (2.0.3) which include support for
|
|
deploying as a .war file with no existing addressbook configuration.
|
|
* Updated main build process to bundle the addressbook.war in the
|
|
i2pinstall.jar and i2pupdate.zip.
|
|
|
|
2004-12-31 jrandom
|
|
* Speling fxi (thanks digum!)
|
|
* Bugfix for the I2PTunnel web interface so that it now properly launches
|
|
newly added tunnels that are defined to be run on startup (thanks ugha!)
|
|
|
|
2004-12-30 jrandom
|
|
* Revised the I2PTunnel client and httpclient connection establishment
|
|
throttles. There is now a pool of threads that build the I2PSocket
|
|
connections with a default size of 5, configurable via the I2PTunnel
|
|
client option 'i2ptunnel.numConnectionBuilders' (if set to 0, it will
|
|
not throttle the number of concurrent builders, but will launch a thread
|
|
per socket during establishment). In addition, sockets accepted but
|
|
not yet allocated to one of the connection builders will be destroyed
|
|
after 30 seconds, configurable via 'i2ptunnel.maxWaitTime' (if set to
|
|
0, it will wait indefinitely).
|
|
|
|
2004-12-29 jrandom
|
|
* Imported Ragnarok's addressbook source (2.0.2) which is built but not
|
|
deployed in the i2pinstall.jar/i2pupdate.zip (yet).
|
|
* Don't treat connection inactivity closure as a connection error.
|
|
|
|
2004-12-29 jrandom
|
|
* Add in a new keepalive event on each TCP connection, proactively sending
|
|
a (tiny) time message every minute or two, as well as killing the
|
|
connection if no message has been fully sent within 5 minutes or so.
|
|
This should help deal with hung connections from IP address changes.
|
|
|
|
2004-12-28 jrandom
|
|
* Cleaned up the resending and choking algorithm in the streaming lib.
|
|
* Removed the read timeout override for I2PTunnel's httpclient, allowing
|
|
it to use the default for the streaming lib.
|
|
* Revised ack triggers in the streaming lib.
|
|
* Logging.
|
|
|
|
* 2004-12-21 0.4.2.5 released
|
|
|
|
2004-12-21 jrandom
|
|
* Track a new stat for expired client leases (client.leaseSetExpired).
|
|
|
|
2004-12-21 jrandom
|
|
* Cleaned up the postinstall/startup scripts a bit more to handle winME,
|
|
and added windows info to the headless docs. (thanks ardvark!)
|
|
* Fixed a harmless (yet NPE inspiring) race during the final shutdown of
|
|
a stream (thanks frosk!)
|
|
* Add a pair of new stats for monitoring tunnel participation -
|
|
tunnel.participatingBytesProcessed (total # bytes transferred) and
|
|
tunnel.participatingBytesProcessedActive (total # bytes transferred for
|
|
tunnels whose byte count exceed the 10m average). This should help
|
|
further monitor congestion issues.
|
|
* Made the NamingService factory property public (thanks susi!)
|
|
|
|
2004-12-20 jrandom
|
|
* No longer do a blocking DNS lookup within the jobqueue (thanks mule!)
|
|
* Set a 60s dns cache TTL, instead of 0s. Most users who used to use
|
|
dyndns/etc now just use IP autodetection, so the old "we need ttl=0"
|
|
reasoning is gone.
|
|
|
|
2004-12-19 jrandom
|
|
* Fix for a race on startup wrt the new stats (thanks susi!)
|
|
|
|
2004-12-19 jrandom
|
|
* Added three new stats - router.activePeers, router.fastPeers, and
|
|
router.highCapacityPeers, updated every minute
|
|
|
|
2004-12-19 jrandom
|
|
* Added a new i2ptunnel type: 'httpserver', allowing you to specify what
|
|
hostname should be sent to the webserver. By default, new installs will
|
|
have an httpserver pointing at their jetty instance with the spoofed
|
|
name 'mysite.i2p' (editable on the /i2ptunnel/edit.jsp page).
|
|
|
|
2004-12-19 scintilla
|
|
* Convert native jcpuid code from C++ to C. This should alleviate build
|
|
problems experienced by some users.
|
|
|
|
* 2004-12-18 0.4.2.4 released
|
|
|
|
2004-12-16 jrandom
|
|
* Catch another oddball case for a reset connection in the streaming lib.
|
|
* Add a dumpprofile.jsp page, called with ?peer=base64OfPeerHash, which
|
|
dumps the current state of that peer's profile. Instead of the full
|
|
base64, you can pass in however many characters you have and it will
|
|
return the first match found.
|
|
|
|
2004-12-16 jrandom
|
|
* Remove the randomized factor in the tunnel rejection by bandwidth -
|
|
we now accept the request if we've allocated less than our limit
|
|
and reject it if we've allocated more.
|
|
* Stick to the standard capacity scale on tunnel rejection, even for
|
|
the 10m period.
|
|
* Build the time message at the very last possible moment
|
|
|
|
2004-12-15 jrandom
|
|
* Handle hard disconnects more gracefully within the streaming lib, and
|
|
log unmonitored events more aggressively.
|
|
* If we drop a peer after connection due to clock skew, log it to the
|
|
/logs.jsp#connectionlogs with relevent info. In addition, toss it in
|
|
the stat 'tcp.disconnectAfterSkew'.
|
|
* Fixed the formatting in the skew display
|
|
* Added an ERROR message that is fired once after we run out of
|
|
routerInfo files (thanks susi!)
|
|
* Set the connect timeout equal to the streaming lib's disconnect timeout
|
|
if not already specified (the I2PTunnel httpclient already enforces a
|
|
60s connect timeout)
|
|
* Fix for another connection startup problem in the streaming lib.
|
|
* Fix for a stupid error in the probabalistic drop (rand <= P, not > P)
|
|
* Adjust the capacity calculations so that tunnel failures alone in the
|
|
last 10m will not trigger a 0 capacity rank.
|
|
|
|
2004-12-14 jrandom
|
|
* Periodically send a message along all I2NP connections with the router's
|
|
current time, allowing the receiving peer to determine that the clock
|
|
has skewed too much, and hence, disconnect. For backwards compatability
|
|
reasons, this is being kludged into a DeliveryStatusMessage (ewww). The
|
|
next time we have a backwards compatability break, we can put in a proper
|
|
message setup for it.
|
|
|
|
2004-12-14 jrandom
|
|
* Reenable the probabalistic drop on the TCP queues to deal with good old
|
|
fashioned bandwidth limiting. However, by default the probability is
|
|
rigged to reserve 0% of the queue free - meaning we just aggressively
|
|
fail messages in the queue if we're transferring too slowly. That
|
|
reservation factor can be increased with 'tcp.queueFreeFactor=0.25'
|
|
(or whatever) and the drop code can be disabled with the parameter
|
|
'tcp.dropProbabalistically=false'.
|
|
* Still penalize a peer on tunnel failure, but don't immediately drop
|
|
their capacity to 0.
|
|
* More aggressively ACK duplicates
|
|
* Randomize the timestamper period
|
|
* Display the clock skew on the connection logs when a peer sends it.
|
|
* Allow the timestamper to fix skews of up to 10 minutes
|
|
* Logging
|
|
|
|
2004-12-13 jrandom
|
|
* Added some error checking on the new client send job (thanks duck!)
|
|
* Implemented tunnel rejection based on bandwidth usage (rejecting tunnels
|
|
proportional to the bytes allocated in existing tunnels vs the bytes
|
|
allowed through the bandwidth limiter).
|
|
* Enable a new configuration parameter for triggering a tunnel rebuild
|
|
(tunnel.maxTunnelFailures), where that is the max allowed test failures
|
|
before killing the tunnel (default 0).
|
|
* Gather more data that we rank capacity by (now we monitor and balance the
|
|
data from 10m/30m/60m/1d instead of just 10m/60m/1d).
|
|
* Fix a truncation/type conversion problem on the long term capacity
|
|
values (we were ignoring the daily stats outright)
|
|
|
|
2004-12-11 jrandom
|
|
* Fix the missing HTTP timeout, which was caused by the deferred syn used
|
|
by default. This, in turn, meant the I2PSocket creation doesn't fail
|
|
on .connect, but is unable to transfer any data in any direction. We now
|
|
detect that condition for the I2PTunnelHTTPClient and throw up the right
|
|
error page.
|
|
* Logging
|
|
|
|
2004-12-11 jrandom
|
|
* Use a simpler and less memory intensive job for processing outbound
|
|
client messages when the session is in mode=bestEffort. We can
|
|
immediately discard the data as soon as its sent the first time,
|
|
rather than wait for an ack, since we will never internally resend.
|
|
* Reduce some synchronization to avoid a rare deadlock
|
|
* Replaced 'localhost' with 127.0.0.1 in the i2ptunnel config, and special
|
|
case it within the tunnel controller.
|
|
* Script cleanup for building jbigi/jcpuid
|
|
* Logging
|
|
|
|
* 2004-12-08 0.4.2.3 released
|
|
|
|
2004-12-08 jrandom
|
|
* Revised the buffering when reading from the SAM client and writing
|
|
to the stream. Also added a thread (sigh) so we don't block the
|
|
SAM client from giving us more messages for abnormally long periods
|
|
of time.
|
|
* Display the router version in the logs on startup (oft requested)
|
|
* Fix a race during the closing of a messageOutputStream
|
|
|
|
2004-12-06 jrandom
|
|
* Don't do a 'passive flush' while there are already outbound messages
|
|
unacked.
|
|
* Show the reseed link if up to 10 peers profiles are active (thanks
|
|
dburton!)
|
|
|
|
2004-12-06 jrandom
|
|
* Don't propogate streaming connection failures out to the SAM bridge as
|
|
fatal errors.
|
|
* Dont barf on repeated I2CP closure.
|
|
|
|
2004-12-05 jrandom
|
|
* Explicitly use "127.0.0.1" to bind the I2CP listener, not the JVM's
|
|
getLocalhost call
|
|
|
|
2004-12-05 jrandom
|
|
* Default the I2CP listener to localhost only, unless overridden by
|
|
i2cp.tcp.bindAllInterfaces=true (thanks dm!)
|
|
* More SAM fixes for things recently broken (whee)
|
|
|
|
2004-12-05 jrandom
|
|
* Fix the recently broken SAM bridge (duh)
|
|
* Add a new pair of SAM apps - net.i2p.sam.client.SAMStreamSink and
|
|
net.i2p.sam.client.SAMStreamSend, mirroring the streaming lib's
|
|
StreamSink and StreamSend apps for transferring files.
|
|
* Make the passive flush timer fire more frequently.
|
|
|
|
2004-12-05 jrandom
|
|
* Fixed some links in the console (thanks ugha!) and the javadoc
|
|
(thanks dinoman!)
|
|
* Fix the stream's passive flush timer (oh, its supposed to work?)
|
|
|
|
2004-12-03 jrandom
|
|
* Toss in a small pool of threads (3) to execute the events queued up with
|
|
the SimpleTimer, as we do currently see the occational event
|
|
notification spiking up to a second or so.
|
|
* Implement a SAM client API in java, useful for event based streaming (or
|
|
for testing the SAM bridge)
|
|
* Added support to shut down the SAM bridge on OOM (useful if the SAM
|
|
bridge is being run outside of the router).
|
|
* Include the SAM test code in the sam.jar
|
|
* Remove an irrelevent warning message from SAM, which was caused by
|
|
perfectly normal operation due to a session being closed.
|
|
* Removed some unnecessary synchronization in the streaming lib's
|
|
PacketQueue
|
|
* More quickly clean up the memory used by the streaming lib by
|
|
immediately killing each packet's resend job as soon as it is ACKed (or
|
|
cancelled), so that there are no longer any valid pointers to the
|
|
(potentially 32KB) packet.
|
|
* Fixed the timestamps dumped to stdout when debugging the PacketHandler.
|
|
* Drop packets that would expand our inbound window beyond our maximum
|
|
buffer size (default 32 messages)
|
|
* Always read the ACK/NACK data from the verified packets received, even
|
|
if we are going to drop them
|
|
* Always adjust the window when there are messages ACKed, though do not
|
|
change its size except as before.
|
|
* Streamlined some synchronization in the router's I2CP handling
|
|
* Streamlined some memory allocation in the SAM bridge
|
|
* Default the streaming lib to disconnect on inactivity, rather than send
|
|
an empty message.
|
|
|
|
2004-12-01 jrandom
|
|
* Fix for a race in the streaming lib as caused by some odd SAM activity
|
|
|
|
* 2004-12-01 0.4.2.2 released
|
|
|
|
2004-12-01 jrandom
|
|
* Fixed a stupid typo that inadvertantly allowed persistent HTTP
|
|
connections to work (thanks duck!)
|
|
* Make sure we override the inactivity timeout too
|
|
|
|
* 2004-12-01 0.4.2.1 released
|
|
|
|
2004-12-01 jrandom
|
|
* Strip out any of the Accept-* HTTP header lines, and always make sure to
|
|
include the forged User-agent header.
|
|
* Adjust the default read timeout on the eepproxy to 60s, unless
|
|
overridden.
|
|
* Minor tweak on stream shutdown.
|
|
|
|
2004-11-30 jrandom
|
|
* Render the burst rate fields on /config.jsp properly (thanks ugha!)
|
|
* Build in a simple timeout to flush data queued into the I2PSocket but
|
|
not yet flushed.
|
|
* Don't explicitly flush after each SAM stream write, but leave it up to
|
|
the [nonblocking] passive flush.
|
|
* Don't whine about 10-99 connection events occurring in a second
|
|
* Don't wait for completion of packets that will not be ACKed (duh)
|
|
* Adjust the congestion window, even if the packet was resent (duh)
|
|
* Make sure to wake up any blocking read()'s when the MessageInputStream
|
|
is close()ed (duh)
|
|
* Never wait more than the disconnect timeout for a write to complete
|
|
|
|
2004-11-29 jrandom
|
|
* Minor fixes to avoid unnecessary errors on shutdown (thanks susi!)
|
|
|
|
2004-11-29 jrandom
|
|
* Reduced contention for local client delivery
|
|
* Drop the new code that munges the wrapper.config. Instead, updates that
|
|
need to change it will include their own wrapper.config in the
|
|
i2pupdate.zip, overwriting the existing file. If the file
|
|
"wrapper.config.updated" is included, it is deleted at first opportunity
|
|
and the router shut down, displaying a notice that the router must be
|
|
started again cleanly to allow the changes to the wrapper.config to take
|
|
effect.
|
|
* Properly stop accept()ing I2PSocket connections if we close down the
|
|
session (duh).
|
|
* Make sure we cancel any outstanding Packets in flight when a connection
|
|
is terminated (thanks susi!)
|
|
* Split up the I2PTunnel closing a little further.
|
|
|
|
2004-11-28 jrandom
|
|
* Accept IP address detection changes with a 2-out-of-3 minimum.
|
|
* As long as the router is up, keep retrying to bind the I2CP listener.
|
|
* Decrease the java service wrapper ping frequency to once every 10
|
|
minutes, rather than once every 5 seconds.
|
|
|
|
2004-11-27 jrandom
|
|
* Some cleanup and bugfixes for the IP address detection code where we
|
|
only consider connections that have actually sent and received messages
|
|
recently as active, rather than the mere presence of a TCP socket as
|
|
activity.
|
|
|
|
2004-11-27 jrandom
|
|
* Removed the I2PTunnel inactivity timeout thread, since the new streaming
|
|
lib can do that (without an additional per-connection thread).
|
|
* Close the I2PTunnel forwarder threads more aggressively
|
|
|
|
2004-11-27 jrandom
|
|
* Fix for a fast loop caused by a race in the new streaming library (thanks
|
|
DrWoo, frontier, pwk_, and thetower!)
|
|
* Minor updates to the SimpleTimer and Connection to help track down a
|
|
high CPU usage problem (dumping debug info to stdout/wrapper.log if too
|
|
many events/tasks fire in a second)
|
|
* Minor fixes for races on client disconnects (causing NPEs)
|
|
|
|
* 2004-11-26 0.4.2 released
|
|
|
|
2004-11-26 jrandom
|
|
* Enable the new streaming lib as the default. That means, for any
|
|
substantial definition, it is NOT BACKWARDS COMPATIBLE.
|
|
|
|
2004-11-25 jrandom
|
|
* Revised the installer to include start menu and desktop shortcuts for
|
|
windows platforms, including pretty icons (thanks DrWoo!)
|
|
* Allow clients specified in clients.config to have an explicit startup
|
|
delay.
|
|
* Update the default install to launch a browser pointing at the console
|
|
whenever I2P starts up, rather than only the first time it starts up
|
|
(configurable on /configservice.jsp, or in clients.config)
|
|
* Bugfix to the clock skew checking code to monitor the delta between
|
|
offsets, not the offset itself (duh)
|
|
* Router console html update
|
|
* New (and uuuuugly) code to verify that the wrapper.config contains
|
|
the necessary classpath entries on update. If it has to update the
|
|
wrapper.config, it will stop the JVM and service completely, since the
|
|
java service wrapper doesn't reread the wrapper.config on JVM restart -
|
|
requiring the user to manually restart the service after an update.
|
|
* Increase the TCP connection timeout to 30s (which is obscenely long)
|
|
|
|
2004-11-22 jrandom
|
|
* Update to the SAM bridge to reduce some unnecessary memory allocation.
|
|
* New stat to keep track of slow jobs (ones that take more than a second
|
|
to excute). This is published in the netDb as jobQueue.jobRunSlow
|
|
|
|
2004-11-21 jrandom
|
|
* Update the I2PTunnel web interface to include an option for the new
|
|
streaming lib (which is ignored until the 0.4.2 release).
|
|
* Revised the I2PTunnel web interface to keep the I2CP options of client
|
|
and httpclient tunnels in sync, as they all share the same I2CP session.
|
|
|
|
2004-11-21 jrandom
|
|
* Only allow small clock skews after the first 10 minutes of operation
|
|
(to prevent later network lag bouncing us way off course - yes, we
|
|
really need an NTP impl to balance out the network burps...)
|
|
* Revamp the I2PTunnel web interface startup process so that everything
|
|
is shown immediately, so that different pieces hanging don't hang
|
|
the rest, and other minor bugfixes.
|
|
* Take note of SAM startup error (in case you're already running a SAM
|
|
bridge...)
|
|
* Increase the bandwidth limiter burst values available to 10-60s (or
|
|
whatever is placed in /configadvanced.jsp, of course)
|
|
|
|
2004-11-21 jrandom
|
|
* Allow end of line comments in the hosts.txt and other config files,
|
|
using '#' to begin the comments (thanks susi!)
|
|
* Add support to I2PTunnel's 'client' feature for picking between multiple
|
|
target destinations (e.g. 'client 6668 irc.duck.i2p,irc.baffled.i2p')
|
|
* Add a quick link on the left hand nav to reseed if there aren't enough
|
|
known peers, as well as link to the config page if there are no active
|
|
peers. Revised config page accordingly.
|
|
|
|
2004-11-21 jrandom
|
|
* Destroy ElGamal/AES+SessionTag keys after 15 minutes of inactivity
|
|
rather that every 15 minutes, and increase the warning period in which
|
|
we refresh tags from 30s to 2 minutes.
|
|
* Bugfix for a rare problem closing an I2PTunnel stream where we'd fail
|
|
to close the I2PSocket (leaving it to timeout).
|
|
|
|
2004-11-19 jrandom
|
|
* Off-by-one fix to the tunnel pool management code, along side some
|
|
explicit initialization. This can affect clients whose lengths are
|
|
shorter than the router's default (thanks duck!)
|
|
|
|
2004-11-17 jrandom
|
|
* Fix to propogate i2psocket options into the SAM bridge correctly (thanks
|
|
Ragnarok!)
|
|
|
|
2004-11-17 jrandom
|
|
* Minor logging update.
|
|
|
|
2004-11-16 jrandom
|
|
* Clean up the propogation of i2psocket options so that various streaming
|
|
libs can honor them more precisely
|
|
|
|
2004-11-16 jrandom
|
|
* Minor logging update
|
|
|
|
2004-11-14 jrandom
|
|
* Fix a long standing leak in I2PTunnel (hanging on to i2psocket objects)
|
|
* Fix a leak injected into the SimpleTimer
|
|
* Fix a race condition in the tunnel message handling
|
|
|
|
2004-11-13 jrandom
|
|
* Added throttles on how many I2PTunnel client connections we open at once
|
|
* Replaced some buffered streams in I2PTunnel with unbuffered streams, as
|
|
the streaming library used should take care of any buffering.
|
|
* Added a cache for some objects used in I2PTunnel, especially useful when
|
|
there are many short lived connections.
|
|
* Trimmed the SimpleTimer's processing a bit
|
|
|
|
2004-11-10 jrandom
|
|
* Allow loading the (mini)streaming connection options from the
|
|
environment.
|
|
* More defensive programming in the DSA implementation.
|
|
|
|
2004-11-08 jrandom
|
|
* Remove spurious flush calls from I2PTunnel, and work with the
|
|
I2PSocket's output stream directly (as the various implementations
|
|
do their own buffering).
|
|
* Another pass at a long standing JobQueue bug - dramatically simplify
|
|
the job management synchronization since we dont need to deal with
|
|
high contention (unlike last year when we had dozens of queue runners
|
|
going at once).
|
|
* Logging
|
|
|
|
2004-11-08 jrandom
|
|
* Make the SAM bridge more resiliant to bad handshakes (thanks duck!)
|
|
|
|
* 2004-11-06 0.4.1.4 released
|
|
|
|
2004-11-06 jrandom
|
|
* Expose a drop down on the /configclients.jsp to enter the outbound
|
|
tunnel depth.
|
|
* Improved *hosts.txt loading
|
|
* Explicitly override the JVM's timezone settings to use GMT so that
|
|
any client applications which use timezones won't leak sensitive
|
|
data (thanks gott!)
|
|
* Bundle sam.jar in the update (thanks duck!)
|
|
|
|
2004-11-06 jrandom
|
|
* Fix for a long standing synchronization bug in the SDK that in rare
|
|
instances can add a few seconds of lag.
|
|
|
|
2004-11-05 jrandom
|
|
* Bugfixes and unit tests for the SAM bridge to handle quoted message
|
|
parameters, verify proper operation after multiple session lifetimes,
|
|
as well as some synchronization problems.
|
|
* New properties method on the DataHelper class.
|
|
* Address a race on fast disconnecting clients
|
|
|
|
2004-11-02 jrandom
|
|
* Fix for a long standing synchronization bug in the JobQueue (and added
|
|
some kooky flags to make sure it stays dead)
|
|
* Update the ministreaming lib to force mode=guaranteed if the default
|
|
lib is used, and mode=best_effort for all other libs.
|
|
|
|
2004-11-02 jrandom
|
|
* Fixed up the configuration overrides for the streaming socket lib
|
|
integration so that it properly honors env settings.
|
|
* More memory usage streamlining (last major revamp for now, i promise)
|
|
|
|
2004-11-01 jrandom
|
|
* Increase the tunnel test timeout rapidly if our tunnels are failing.
|
|
* Honor message expirations for some tunnel jobs that were prematurely
|
|
expired.
|
|
* Streamline memory usage with temporary object caches and more efficient
|
|
serialization for SHA256 calculation, logging, and both I2CP and I2NP
|
|
message handling.
|
|
* Fix some situations where we forward messages too eagerly. For a
|
|
request at the tunnel endpoint, if the tunnel is inbound and the target
|
|
is remote, honor the message by tunnel routing the data rather than
|
|
sending it directly to the requested location.
|
|
|
|
2004-10-30 jrandom
|
|
* Cache the temporary objects used in the AES encryption/decryption
|
|
process so that AES doesn't require any memory allocation to process
|
|
data.
|
|
* Dramatically reduce memory usage within various crypto implementations
|
|
by avoiding unnecessary (though simplifying) buffers.
|
|
* If we specify some tags to be sent in an I2CP message explicitly, use
|
|
only those, not those plus a new set (otherwise we aren't sure on ACK
|
|
which set was delivered)
|
|
* Allow configuration for the partial send timeout (how long before
|
|
resending a message down a different tunnel in a lease). This can be
|
|
updated with the "router.clientPartialSendTimeout" router config prop.
|
|
* Logging
|
|
|
|
2004-10-29 jrandom
|
|
* Strip the Referer, Via, and From headers completely, rather than
|
|
inserting a bogus value ("i2p"). This should help with the use of
|
|
SnipSnap and Geeklog (thanks nickster and DrWoo!)
|
|
|
|
2004-10-27 jrandom
|
|
* Fix a strange race condition on i2cp client disconnect.
|
|
* win98 startup fixes (thanks tester-1 and ardvark!)
|
|
* include build scripts for the new streaming lib (which is NOT ready
|
|
for use yet, but you can hack around with it)
|
|
|
|
2004-10-24 jrandom
|
|
* Allow explicit inclusion of session tags in the SDK, enabling the
|
|
resending of tags bundled with messages that would not otherwise
|
|
be ACKed.
|
|
* Don't force mode=guaranteed for end to end delivery - if mode=bestEffort
|
|
no DeliveryStatusMessage will be bundled (and as such, client apps using
|
|
it will need to do their own session tag ack/nack).
|
|
* Handle client errors when notifying them of message availability.
|
|
* New StreamSinkSend which sends a file to a destination and disconnects.
|
|
* Update the I2PSocketManagerFactory to build the specific
|
|
I2PSocketManager instance based on the "i2p.streaming.manager" property,
|
|
containing the class name of the I2PSocketManager to instantiate.
|
|
|
|
2004-10-23 jrandom
|
|
* Minor ministreaming lib refactoring to simplify integration of the full
|
|
streaming lib.
|
|
* Minor bugfixes to data structure serialization.
|
|
|
|
* 2004-10-18 0.4.1.3 released
|
|
|
|
2004-10-18 jrandom
|
|
* Allow sending messages with a section of a byte array.
|
|
* Reduced stats published.
|
|
|
|
2004-10-17 jrandom
|
|
* Don't b0rk on whitespace in the router address.
|
|
|
|
2004-10-16 jrandom
|
|
* More aggressively reduce the capacity of peers if their tunnels are
|
|
failing so that we move off them quicker.
|
|
* Simplify some data structure serialization for reuse in the streaming
|
|
lib, as well as add support for signing and verifying partial byte
|
|
arrays.
|
|
* Logging updates
|
|
|
|
2004-10-16 jrandom
|
|
* Increased the default minimum tunnel test time to 5 seconds, since we
|
|
still see the occational message processing time spike to 2 seconds.
|
|
* Update the SimpleTimer to allow rescheduling a task thats already
|
|
queued (useful for the new streaming lib).
|
|
|
|
2004-10-15 jrandom
|
|
* Replaced old minimum tunnel test timeout of 1s with a configurable
|
|
value (router.config property "router.tunnelTestMinimum", with the
|
|
default of 2s).
|
|
|
|
2004-10-14 jrandom
|
|
* Tunnel rejection is no longer a sign of an overwhelmingly loaded
|
|
peer, so don't use it as a key point of the IsFailing calculator.
|
|
We still use it as a key point of the Capacity calculator, however.
|
|
|
|
2004-10-14 jrandom
|
|
* Allow for a configurable tunnel "growth factor", rather than trying
|
|
to achieve a steady state. This will let us grow gradually when
|
|
the router is needed more, rather than blindly accepting the request
|
|
or arbitrarily choking it at an averaged value. Configure this with
|
|
"router.tunnelGrowthFactor" in the router.config (default "1.5").
|
|
* Adjust the tunnel test timeouts dynamically - rather than the old
|
|
flat 30s (!!!) timeout, we set the timeout to 2x the average tunnel
|
|
test time (the deviation factor can be adjusted by setting
|
|
"router.tunnelTestDeviation" to "3.0" or whatever). This should help
|
|
find the 'good' tunnels.
|
|
* Added some crazy debugging to try and track down an intermittent hang.
|
|
|
|
2004-10-13 jrandom
|
|
* Fix the probabalistic tunnel reject (we always accepted everything,
|
|
since the docs on java.util.Random.nextDouble() are wrong..)
|
|
* Fixed a race on startup (thanks Quadn!)
|
|
|
|
2004-10-12 jrandom
|
|
* Disable the probabalistic drop by default (enable via the router config
|
|
property "tcp.dropProbabalistically=true")
|
|
* Disable the actual watchdog shutdown by default, but keep track of more
|
|
variables and log a lot more when it occurs (enable via the router
|
|
config property "watchdog.haltOnHang=true")
|
|
* Implement some tunnel participation smoothing by refusing requests
|
|
probabalistically as our participating tunnel count exceeds the previous
|
|
hour's, or when the 10 minute average tunnel test time exceeds the 60
|
|
minute average tunnel test time. The probabilities in both cases are
|
|
oldAverage / #current, so if you're suddenly flooded with 200 tunnels
|
|
and you had previously only participated in 50, you'll have a 25% chance
|
|
of accepting a subsequent request.
|
|
|
|
* 2004-10-10 0.4.1.2 released
|
|
|
|
2004-10-10 cervantes
|
|
* Update the I2PTunnel HTTP proxy to strip out the i2paddresshelper from
|
|
the request.
|
|
|
|
2004-10-09 jrandom
|
|
* Added a watchdog timer to do some baseline liveliness checking to help
|
|
debug some odd errors.
|
|
* Added a pair of summary stats for bandwidth usage, allowing easy export
|
|
with the other stats ("bw.sendBps" and "bw.receiveBps")
|
|
* Trimmed another memory allocation on message reception.
|
|
|
|
2004-10-08 jrandom
|
|
* Revamp the AESInputStream so it doesn't allocate any temporary objects
|
|
during its operation.
|
|
|
|
2004-10-08 jrandom
|
|
* Don't kill the establisher threads during a soft restart.
|
|
* Attempt to validate the peer's routerInfo earlier during handshaking.
|
|
* Revamp the AESOutputStream so it doesn't allocate any temporary objects
|
|
during its operation.
|
|
|
|
2004-10-07 jrandom
|
|
* Reimplement the I2NP reading with less temporary memory allocation.
|
|
There is still significant GC churn, especially under load, but this
|
|
should help.
|
|
* Catch some oddball errors in the transport (message timeout while
|
|
establishing).
|
|
|
|
2004-10-07 jrandom
|
|
* Expire queued messages even when the writer is blocked.
|
|
* Reimplement most of the I2NP writing with less temporary memory
|
|
allocations (I2NP reading still gobbles memory).
|
|
|
|
2004-10-06 jrandom
|
|
* Implement an active queue management scheme on the TCP transports,
|
|
dropping messages probabalistically as the queue fills up. The
|
|
estimated queue capacity is determined by the rate at which messages
|
|
have been sent to the peer (averaged at 1, 5, and 60m periods). As
|
|
we exceed 1/2 of the estimated capacity, we drop messages throughout
|
|
the queue probabalistically with regards to their size. This is based
|
|
on RFC 2309's RED, with the minimum threshold set to 1/2 the
|
|
estimated connection capacity. We may want to consider using a send
|
|
rate and queue size measured across all connections, to deal with our
|
|
own local bandwidth saturation, but we'll try the per-con metrics first.
|
|
|
|
2004-10-06 jrandom
|
|
* Enable explicit disabling of the systray entirely for windows machines
|
|
with strange configurations: add -Dsystray.disable=true to the java
|
|
command line. (thanks mihi!)
|
|
|
|
2004-10-05 jrandom
|
|
* Allow peers on the same LAN to communicate with each other safely even
|
|
when they cannot talk to each other through the external address.
|
|
|
|
2004-10-05 jrandom
|
|
* Display how much time is left before the graceful shutdown is complete.
|
|
* Debug some improperly failed messages on timeout or disconnection.
|
|
|
|
2004-10-05 jrandom
|
|
* Don't go into a fast busy if an I2PTunnel 'server' is explicitly killed
|
|
(thanks mule!)
|
|
* Handle some more error conditions regarding abruptly closing sockets
|
|
(thanks Jonva!)
|
|
|
|
2004-10-04 jrandom
|
|
* Update the shitlist to reject a peer for an exponentially increasing
|
|
period of time (with an upper bounds of an hour).
|
|
* Various minor stat and debugging fixes
|
|
|
|
2004-10-03 jrandom
|
|
* Add a new stat logging component to optionally dump the raw stats to
|
|
disk as they are generated, rather than rely upon the summarized data.
|
|
By default, this is off, but the router property "stat.logFilters" can
|
|
be set to a comma delimited list of stats (e.g. "client.sendAckTime")
|
|
which will be written to the file "stats.log" (or whatever the property
|
|
"stat.logFile" is set to). This can also log profile related stats,
|
|
such as "dbResponseTime" or "tunnelTestResponseTime".
|
|
|
|
2004-10-02 jrandom
|
|
* Assure that we quickly fail messages bound for shitlisted peers.
|
|
* Address a race on startup where the first peer contacted could hang the
|
|
router (thanks Romster!)
|
|
* Only whine about an intermittent inability to query the time server once
|
|
|
|
2004-10-02 jrandom
|
|
* Command line utility to verify a peer's reachability - simply run
|
|
net.i2p.router.transport.tcp.ConnectionHandler hostname port# and it
|
|
will print out whether that peer is reachable or not (using a simple
|
|
verification handshake).
|
|
|
|
* 2004-10-01 0.4.1.1 released
|
|
|
|
2004-10-01 jrandom
|
|
* Handle partial reseeds, caused by seeds going away before the download
|
|
completes (thanks Sugadude!)
|
|
|
|
2004-10-01 jrandom
|
|
* Explicitly refuse IPv6 addresses, since only some peers support
|
|
them and we want fully reachable peers.
|
|
|
|
2004-10-01 jrandom
|
|
* Additional error handling for a variety of transport layer errors.
|
|
|
|
* 2004-09-30 0.4.1 released (not backwards compatible)
|
|
|
|
2004-09-30 jrandom
|
|
* Bundle the configuration necessary to run an eepsite out of the box
|
|
with Jetty - simply edit ./eepsite/docroot/index.html and give people
|
|
the key listed on the I2PTunnel configuration page, and its up.
|
|
* Router console cleanup, and some (off by default) tunnels -
|
|
smtp.postman.i2p (port 7659), pop.postman.i2p (port 7660), and
|
|
irc.baffled.i2p (port 7661)
|
|
|
|
2004-09-29 jrandom
|
|
* Always wipe the Jetty work directory on startup, so that web updates
|
|
are reflected immediately (Jetty does not honor the cache across
|
|
multiple executions)
|
|
|
|
2004-09-27 jrandom
|
|
* Limit the number of connection tags saved to 10,000. This is a huge
|
|
limit, but consumes no more than 1MB of RAM. For now, we drop them
|
|
randomly after reaching that size, forcing those dropped peers to use
|
|
a full DH negotiation.
|
|
* HTML cleanup in the console.
|
|
|
|
2004-09-26 jrandom
|
|
* Complete rewrite of the TCP transport with IP autodetection and
|
|
low CPU overhead reconnections. More concise connectivity errors
|
|
are listed on the /oldconsole.jsp as well. The IP autodetection works
|
|
by listening to the first person who tells you what your IP address is
|
|
when you have not defined one yourself and you have no other TCP
|
|
connections.
|
|
* Update to the I2NP message format to add transparent verification at
|
|
the I2NP level (beyond standard TCP verification).
|
|
* Remove a potential weakness in our AESEngine's safeEncrypt and safeDecrypt
|
|
implementation (rather than verifying with E(H(key)), we now verify with
|
|
E(H(iv))).
|
|
* The above changes are NOT BACKWARDS COMPATIBLE.
|
|
* Removed all of the old unused PHTTP code.
|
|
* Refactor various methods and clean up some javadoc.
|
|
|
|
2004-09-21 jrandom
|
|
* Have two tiers of hosts.txt files - the standard "hosts.txt" and
|
|
the new "userhosts.txt". Updates to I2P will only overwrite the former,
|
|
but values stored in the later take precedence. Both are queried on
|
|
lookup.
|
|
|
|
2004-09-16 jrandom
|
|
* Refactor the TCP transport to deal with changing identities gracefully,
|
|
and to prevent some wasted effort by keeping track of what host+port
|
|
combinations we are connected to (rather than just the identities). Also
|
|
catch a few configuration errors earlier.
|
|
* Removed no longer relevent methods from the Transport API that were
|
|
exposing ideas that probably shouldn't be exposed.
|
|
* Removed the 0.4.0.1 specific files from i2pupdate.zip (relating to script
|
|
updates)
|
|
|
|
2004-09-13 jrandom
|
|
* Update for the SDK reconnection to deal with overflow.
|
|
* Web improvements (@ not # on the /logs.jsp [thanks ugha!] and fixed the
|
|
rounding on lifetime bandwidth used [thanks gott!]).
|
|
|
|
* 2004-09-08 0.4.0.1 released
|
|
|
|
2004-09-08 jrandom
|
|
* Updated the "Active:" peer count to display the # of connections as well
|
|
as the number of recently active router identities.
|
|
* Implement some basic updating code - on startup, if there is a file named
|
|
"i2pupdate.zip" in the I2P installation directory, extract it, delete it,
|
|
then restart.
|
|
* Added an ugly little script to allow launching the router on win9x
|
|
machines without a dos box (using javaw to run a .bat file).
|
|
* Logging updates.
|
|
* Updated VERSION constants to 0.4.0.1
|
|
|
|
2004-09-08 hypercubus
|
|
* Bugfix: Running the installer as a non-privileged user on Red Hat (and
|
|
hopefully any other affected *nix systems) now properly discards non-
|
|
essential directories after installation.
|
|
* Support for Win9x in the installer and postinstall.bat.
|
|
* Changed the name of the default installation directory on all platforms
|
|
from "I2P" to "i2p" in the installer.
|
|
* Changed "wrapper.conf" to "wrapper.config" for naming consistency with the
|
|
other configuration files.
|
|
|
|
2004-09-07 cervantes:
|
|
* Proxy recursion disabled by default (strict)
|
|
* Password Authentication for session commands
|
|
* Support for http://path?i2paddresshelper=BASE64
|
|
* Support for http://i2p/BASE64/path syntax
|
|
|
|
2004-09-07 jrandom
|
|
* Make sure that peers placed in the 'fast' group are ones we both know
|
|
how to reach and have been able to reach recently. These peers may
|
|
still be placed in the 'high capacity' group however (though that group
|
|
is only queried if the 'fast' group is too small)
|
|
* Include some updates to the ProgileOrganizer's CLI.
|
|
|
|
2004-09-07 jrandom
|
|
* Disable the timestamper by default for all applications except the router
|
|
(enable via -Dtime.disabled=false)
|
|
* Simplify the retrieval of the full destination with text based browsers.
|
|
* Bundle the updated wrapper.config and hosts.txt in the i2pupdate.tar.bz2
|
|
|
|
2004-09-07 jrandom
|
|
* Write the native libraries to the current directory when they are loaded
|
|
from a resource, and load them from that file on subsequent runs (in
|
|
turn, we no longer *cough* delete the running libraries...)
|
|
* Added support for a graceful restart.
|
|
* Added new pseudo-shutdown hook specific to the router, allowing
|
|
applications to request tasks to be run when the router shuts down. We
|
|
use this for integration with the service manager, since otherwise a
|
|
graceful shutdown would cause a timeout, followed by a forced hard
|
|
shutdown.
|
|
* Made the capacity calculator a bit more dynamic by not outright ignoring
|
|
the otherwise valid capacity data for a period with a single rejected
|
|
tunnel (except for the 10 minute period). In addition, peers with an
|
|
equal capacity are ordered by speed rather than by their hashes.
|
|
* Cleaned up the SimpleTimer, addressing some threading and synchronization
|
|
issues.
|
|
* When an I2PTunnel client or httpclient is explicitly closed, destroy the
|
|
associated session (unless there are other clients using it), and deal
|
|
with a closed session when starting a new I2PTunnel instance.
|
|
* Refactoring and logging.
|
|
|
|
2004-09-06 jrandom
|
|
* Address a race condition in the key management code that would manifest
|
|
itself as a corrupt router identity.
|
|
* Properly clear old transport addresses from being displayed on the old
|
|
console after soft restarts.
|
|
* Properly refuse to load the client applications more than once in the
|
|
same JVM.
|
|
* Added support for a graceful restart (a graceful shutdown followed by a
|
|
full JVM restart - useful for restarting client apps).
|
|
* More defensive programming, HTML cleanup, logging
|
|
* wrapper.config cleanup of duplicate lines
|
|
|
|
2004-09-04 jrandom
|
|
* Added some basic guards to prevent multiple instances from running.
|
|
Specifically, a file "router.ping" in the install directory which is
|
|
written to once a minute - if that file exists and has been modified
|
|
within the last minute, refuse to start up. In turn, adjust the
|
|
service wrapper to wait a minute before restarting a crashed JVM.
|
|
* Create a "work" directory in the I2P install dir which Jetty will
|
|
use for all of its temporary files.
|
|
* Tell the browser not to cache most of the router console's pages.
|
|
|
|
2004-09-04 jrandom
|
|
* Update the SDK to automatically reconnect indefinitely with an
|
|
exponential delay on retries (capped at 5 minutes).
|
|
|
|
* 2004-09-03 0.4 released
|
|
|
|
2004-09-03 jrandom
|
|
* Updated default wrapper.config to deal with the hard restart option
|
|
* Include the history.txt in the /help.jsp page
|
|
* HTML updates (wrapper.log, and no more unix scripts)
|
|
* Updated VERSION constants to 0.4
|
|
|
|
2004-09-03 hypercubus
|
|
* Bugfix: Installer launches postinstall.bat on WinNT/2K properly.
|
|
* Temporarily removed install_i2p_service_unix and
|
|
uninstall_i2p_service_unix from distribution packages.
|
|
* postinstall.bat/postinstall.sh cleans installation directory of all files
|
|
not applicable to the host OS.
|
|
|
|
2004-09-03 oOo
|
|
* Added some filters to the HTTP request, replacing the User-Agent,
|
|
Referrer, Via, and From headers, which helps until we have a more
|
|
comprehensive filtering system.
|
|
|
|
2004-09-03 jrandom
|
|
* Disabled the old listener on port 7655.
|
|
|
|
2004-09-02 jrandom
|
|
* Cleaned up the base build.xml, adding a new target ("updater") which
|
|
builds the file i2pupdate.tar.bz2 which can be safely extracted over
|
|
existing installs.
|
|
|
|
2004-xx-xx jrandom
|
|
* Implemented the new web architecture and router console
|
|
* Implemented I2PTunnel web interface, and revamped startup process.
|
|
* Revamped peer selection code to address skew.
|
|
* Removed all temporary threads from the router and the SDK.
|
|
* Bugfix dealing with timeouts and resends.
|
|
* Integrated Iakin's jcpuid library and jbigi update, with modifications.
|
|
|
|
2004-xx-xx hypercubus
|
|
* Implemented the new installation process.
|
|
* Integrated systray
|
|
* Integrated service manager
|
|
|
|
2004-xx-xx oOo
|
|
* Implemented ?i2paddresshelper= hook
|
|
* Many small bugfixes to the web interface, router, i2ptunnel, and core.
|
|
|
|
2004-xx-xx Nightblade
|
|
* libSAM updates.
|
|
|
|
2004-xx-xx cervantes
|
|
* Imported i2pProxy.pac proxy script in with the build.
|
|
|
|
* 2004-08-20 0.3.4.3 released
|
|
* 2004-08-12 0.3.4.2 released
|
|
* 2004-08-08 0.3.4.1 released
|
|
* 2004-07-29 0.3.4 released
|
|
* 2004-07-23 0.3.3 released
|
|
* 2004-07-16 0.3.2.3 released
|
|
* 2004-07-14 0.3.2.2 released
|
|
* 2004-07-11 0.3.2.1 released
|
|
* 2004-07-07 0.3.2 released
|
|
* 2004-06-25 0.3.1.5 released
|
|
* 2004-05-23 0.3.1.4 released
|
|
* 2004-05-20 0.3.1.3 released
|
|
* 2004-05-13 0.3.1.2 released
|
|
* 2004-05-07 0.3.1.1 released
|
|
* 2004-04-30 0.3.1 released
|
|
* 2004-04-20 0.3.0.4 released
|
|
* 2004-04-04 0.3.0.3 released
|
|
* 2004-03-30 0.3.0.2 released
|
|
* 2004-03-25 0.3.0.1 released
|
|
* 2004-03-21 0.3.0 released
|
|
* 2004-03-10 0.2.5.4 released
|
|
* 2004-03-04 0.2.5.3 released
|
|
* 2004-02-28 0.2.5.2 released
|
|
* 2004-02-27 0.2.5.1 released
|
|
* 2004-02-25 0.2.5 released
|
|
* 2004-02-19 0.2.4.2 released
|
|
* 2004-02-15 0.2.4.1 released
|
|
* 2004-02-14 0.2.4 released
|
|
* 2004-01-27 0.2.3.6 released
|
|
* 2004-01-21 0.2.3.5 released
|
|
* 2004-01-14 0.2.3.4 released
|
|
* 2003-12-29 0.2.3.3 released
|
|
* 2003-12-27 0.2.3.2 released
|
|
* 2003-12-25 0.2.3.1 released
|
|
* 2003-12-13 0.2.3 released
|
|
* 2003-12-01 0.2.2 released
|
|
* 2003-11-18 0.2.1.1 released
|
|
* 2003-11-12 0.2.1 released
|
|
* 2003-11-09 0.2.0.3 released
|
|
* 2003-11-08 0.2.0.2 released
|
|
* 2003-11-03 0.2.0.1 released
|
|
* 2003-11-01 0.2 released
|