Newer
Older
2009-07-25 dr|z3d
* Enhance the layout of /graphs.jsp
* Fix some of the irks in I2PSnark UI.
* Ongoing tweaks and fiddles the the theme css. Not finished by any means!
2009-07-24 zzz
* Eepsite: Add Deutsch index page and css (thanks sperrbezirk!)
* Router: Support i2p.dir.base and i2p.dir.config passed in via properties
* Throttle: Decrease default max tunnels to 2500
2009-07-23 dr|z3d
* Include additional tile graphics and I2PSnark header logo in /console/images/
* Tidy up some layout irks; add some last minute 0.7.6 pre-release sparkle!
* Ongoing overhaul of the I2PSnark UI.
2009-07-23 sponge
* Add bob.i2p and sponge.i2p keys to hosts.txt
2009-07-22 dr|z3d
* More work on the I2PSnark UI.
* Start of improvements to tunnel table data.
* Ongoing theme enhancements.
2009-07-21 dr|z3d
* First stage of overhaul of webapps ui.
susidns, susimail & i2psnark now lightly themed.
* Proxy error messages now themed as per chosen theme.
* Modest tweaks to the classic theme, et al.
2009-07-21 zzz
* configclients.jsp: Close anchor
* Console: Drop top-level css, unused now
* Eepsite: Add default robots.txt (thanks v1v4)
* GeoIP: Add license info
* HTTP Proxy: Additional proxy.i2p restrictions
* ServiceManager: Drop, unused
2009-07-20 zzz
* BuildHandler: Increase threshold for dropping instead
of rejecting to 81% (was 75%)
* Console: Hide configui.jsp from IE, disable selection
* GeoIP: Fix minor bugs (thanks Arsene)
* graphs.jsp: Reduce refresh time to eliminate double iframe load
* HTTP Proxy: Fix proxy.i2p "home page" (thanks dr|z3d)
* I2PSnark: Remove Postman tracker
* Peer Profiles:
- Reduce max age for display to 2h (was 3h)
- Drop unused Persist classes
- Dynamically adjust expire time to control memory use
- Increase reorganize time to 45s (was 30s) to reduce CPU use
and lock contention
- Remove some stat rates
- Delay start of PeerTestJob
* Stats: Increase coalesce time to 50s (was 20s) to reduce CPU use
* summarynoframe.jsp: Cleanup
* Transports: Reduce the number of Rates
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.
* 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
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
* 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.
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
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
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
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
* 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-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!
- 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
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
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:
- 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)
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
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
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
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
* 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
* 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
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-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-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-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
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
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
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
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 :-)
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
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)
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
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
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
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
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
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
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
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
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
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.
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
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
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
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-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
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
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
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
* 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
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
* 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
* 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-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
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
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
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
* 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
- 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
* TunnelPeerSelectors: Implement strict ordering of peers,
Loading
Loading full blame...