Newer
Older
- For clients, use a common thread pool that expires idle threads
rather than keeping 5 accept() threads for each client.
- Use pool for HTTP decompression also.
- Disable router host/port options when in router context
- Add blacklist, connection limit, and jump list options to edit form
* Pack200: Find and use either Oracle or Apache library at runtime;
neither required at compile time.
* Router: Convert 'mark router liveliness' thread to SimpleScheduler
* Stats: Change stat.full default to false
* Threads:
- Reduce thread pool sizes based on memory and/or bandwidth limits
- Tweak some thread names for clarity
* Update:
- Change the UpdateHandler to try all sources in a loop, rather than one,
so the user need not retry manually
- For each source, fetch the first 56 bytes and check the version
before downloading the whole thing, so we need not wait for every
host to have the latest before updating the news.
2010-12-26 sponge
* URI resource fixes from pre-review time from upstream prior merge
* Evolve URI fixs another step.
* Document how the URI path fix works.
* Fix 302 redirects so they URL encode properly.
* bump to -1
2010-12-13 dr|z3d
* Console themes: Midnight & Classic renovations.
2010-12-12 zzz
* i2psnark:
- Fix end-game deadlock
- Fix last-modified check for multifile torrents, causing
apparent loss of data after abnormal exit
- Tweaks
* I2CP: Change a log error to a warning (ticket #353)
* i2psnark:
- Restore text (ticket #273)
- Fix several HTML errors (ticket #273)
- Fix HTML error causing info links to be unclickable in dillo (tiicket #273)
- Fix alt text duplicated or looking bad in text browsers (ticket #273)
- Fix Opera button errors (ticket #332)
- Fix POST resubmission errors (ticket #334)
- Catch FetchAndAdd copy error (ticket #352)
- Set permissions on downloaded torrent files
- Hide some columns when not running
- Lots of spacing cleanups
- Rename images so users don't end up with unused files
- Remove ~15 unused images
- Clean up theme selection speed-coding exercise
- Indent fixes
* Log: Don't double-timestamp CRITS in wrapper.log
* News: XML fixes (ticket #350)
* Plugins: Better handling of signing keys (Ticket #351)
* TunnelPoolManager: Fix rare startup NPE (http://forum.i2p/viewtopic.php?t=5192)
2010-12-10 Mathiasdm
* I2PTunnel: Fixed up security fix.
2010-12-07 Mathiasdm
* I2PTunnel: Security fix: change server reply
to return 'I2PServer' instead of the actual servername.
- Resolve table header wrapping issue.
- Vanilla/Ubergine theme enhancements.
2010-12-05 zzz
* DataHelper: Have readLong() and readString() throw an
EOFException instead of a DataFormatException on EOF,
which should lower the log severity in I2CP and I2NP
when a client or peer disconnects.
* I2NP: Allow message to be written more than once,
instead of throwing an IllegalStateException
* Streaming: Restore I2PSocketManagerFull as public
(broke jwebcahe ticket #345)
* Transport: Hamachi address block 5/8 assigned by IANA
- Extensive reworking of ieshim.css for classic theme/Internet Explorer.
- Additional console_big.css files for other themes to enhance doublebyte glyph support.
- Make show/hide peers and stop/start all torrent buttons more obvious.
- Rework Vanilla icons to bring in line with color scheme.
2010-11-30 zzz
* I2CP: Try to hide Pipe closed messages (several tickets)
* i2psnark: Move PeerCheckerTask from Timer to SimpleTimer2
to save some threads
* Logging:
- Limit buffer size; block and wakeup writer when full
- Limit errors written to system log
- Add method to force a log below the current level
* Streaming: Change some logged errors to warnings
(tickets 76, 341 and others)
2010-11-29 zzz
* i2psnark:
- Don't timeout queued piece messages
* Logging:
- Use System locale and time zone for default date/time format,
so it matches the wrapper log time (we can't set the wrapper log time zone).
(existing installs must remove logger.dateFormat line
in logger.config to get system default format)
- Force RuntimeExceptions to CRIT level
- Don't have log() count buffer size
* Streaming: Make all classes outside the API package private
* UDP:
- Fix bug causing PacketPusher to loop quickly instead of sleeping
- Fix udp.sendCycleTime stat
- Fix speed values on peers.jsp
- Try to fix rare NPE (ticket 298)
2010-11-28 zzz
* Build: Move all dependencies to top-level build.xml,
so each sub-build.xml is only executed once
* i2psnark:
- Fix NPE and other partials bugs
- More extension message stubbing
- Log tweaks
* I2PTunnel: Deprecate destFromName()
2010-11-27 zzz
* Build:
- Add man pages to package
- New updaterWithJavadoc target
* configstats.jsp: Fix NPE
* Console:
- Linkify "plugin installed and started" message
- Add link to javadocs if installed
* i2psnark:
- Drop queued outbound requests when choked
- Redo some data structures and locking to hopefully prevent deadlock
- Memory reduction part 3: Return partial pieces to PeerCoordinator when choked
* Streaming: Fix race NPE at stream close
* I2PSnark: New alternative theme: "Vanilla".
* Big thanks to sponge for implementing the theme changer!
2010-11-27 sponge
* Plugin: ticket 336 fix NPE
2010-11-27 sponge
* Slackware: bump i2p-base version, so that it can be upgraded with the new
base code fixes.
2010-11-26 sponge
* i2psnark: Don't save theme parameter if it has not changed.
2010-11-26 sponge
* i2psnark: Add theme change and theme selection storage abilities.
* Console: Split initialNews.xml into a file for each language
don't copy to config dir at install.
* i2psnark: Clean up and enhance the PeerCoordinator's partial piece handling,
in preparation for more improvements
* LogManager: When not in router context, delay creating log file until required
* NetDb: Lower RouterInfo expiration time again
* Router: Prevent NCDFE after unzipping update file
2010-11-25 dr|z3d
* Console themes: Classic and Dark theme refresh.
* Fix langbox overflow issue in all themes.
2010-11-24 zzz
* configui: Add .pt
* configtunnels: Log cleanup
* graphs: Synch to conserve memory; cleanup
* i2psnark:
- Prevent dup requests during end game
(ticket 331 - thanks sponge and Oct!)
- POST parameter tweaks
- Message cleanup
* logs: Add trac login hint
* Router:
- Save some info to config file when installing or updating
- Remove global lock on accessing config
- Add global lock on reading/writing config file
* SimpleDataStructure: Fix problem in fromBase64() that
manifested itself as a configtunnels.jsp bug
2010-11-24 sponge
* Slackware, fix rc.i2p, bad logic.
2010-11-24 sponge
* Plugin: ticket 104 Fix webapp isRunning to check ALL webapps.
The only defecency is that if one is running, that it considers the
entire pliugin to be running. I'm not sure if that is a good thing
or a bad thing, but the other code checks threads that way.
3212
3213
3214
3215
3216
3217
3218
3219
3220
3221
3222
3223
3224
3225
3226
3227
3228
3229
3230
3231
3232
3233
3234
2010-11-22 zzz
* Addressbook: Fix rename error on Windows (tkt 323 - thanks RN!)
* build.xml: Cleanup, fix distclean error in older ants.
* Console:
- Convert GraphHelper to a FormHandler
- Require POST for all forms
- Change the way we store the Writer to prevent problems
- Fix bonus setting on configpeer.jsp
- More ".jsp" removal
* i2psnark:
- Defer piece loading until required
- Stub out Extension message support
- Convert GET to POST, require POST
* NTCP: Log tweak
* SSLEepGet, Reseeder:
- Implement additional CA loading
- Provide facility to reuse SSL state for speed
- Provide facility to store previously untrusted certificates
- Add www.cacert.org cert to the installer and updater so
SSL on a.netdb.i2p2.de and c.netdb.i2p2.de will work
- Add SSL reseed hosts, prefer them by default
- Reseed message cleanup
2010-11-19 zzz
* Addressbook
- Store last-fetched time so we don't always fetch subscriptions after restart
- Randomize first fetch time
- Make most classes package private
* Console: Rewrite URLs so we don't need .jsp
* i2psnark: Recognize postman b32, recognize ogv and oga.
* i2ptunnel:
- More work on error propagation and improving log messages
- Increase nonce queue size again
* News:
- Store news last-fetched time so we don't always fetch news after restart
- Don't include news in the updater
* peers.jsp fixups
* PrivateKeyFile: Speedups and better messages
* SecureFile: New class, catch places that were missed,
add i2p.insecureFiles option to disable (default false)
3253
3254
3255
3256
3257
3258
3259
3260
3261
3262
3263
3264
3265
3266
3267
3268
3269
3270
3271
3272
3273
3274
3275
3276
3277
2010-11-17 zzz
* Addressbook: Try to save files safely
* Console: Display durations with new tagged formatDuration2()
* DataStructures:
- Shim in 3 new abstract classes
SimpleDataStructure, KeysAndCert, and DatabaseEntry
* I2CP:
- Send DisconnectMessage at router shutdown
- Add username/password authorization
* I2PTunnel:
- Improve messages when starting and stopping tunnels
- Index page outproxy display cleanup
* I2PTunnel HTTP and Connect clients:
- Shim in a new abstract superclass I2PTunnelHTTPClientBase for common code
- Add local proxy username/password authorization
- Add outproxy username/password authorization
- Filter hop-by-hop Proxy headers appropriately
* I2PTunnel SOCKS and SOCKS IRC clients:
- Add local proxy username/password authorization
- Add SOCKS 5 outproxy support, with username/password authorization
* logs.jsp: Format multiline messages better
* Stats: Improve Frequency, enable coalescing; cleanup and javadocs
* stats.jsp: Cleanup, more tagging, hide obscure stuff unless ?f=1
* Streaming: Fix bug causing read() to incorrectly return EOF
2010-11-08 zzz
* I2CP: Fix NPE caused by null session options (seen in i2pbote)
2010-11-06 HungryHobo
* New Ant target: debianrepo
* Rename debian target to debian-binary
* New debian target generates binary and source packages
* Debian tweaks
2010-11-03 zzz
* Merge and snark fixups
2010-11-01 zzz
* ClientConnectionRunner: Add synch to fix race causing AIOOBE
(http://forum.i2p/viewtopic.php?t=5061)
* configlogging.jsp: Parse log limit with current locale
(ticket #118)
* i2psnark:
- Limit number of parallel requests of a single piece when in the end game
- Shorten and weight the speed tracker so the display is more
reflective of current speed
* logs.jsp: Add message if wrapper log not found
(ticket #103)
3304
3305
3306
3307
3308
3309
3310
3311
3312
3313
3314
3315
3316
3317
3318
3319
3320
3321
3322
3323
3324
3325
3326
3327
3328
3329
3330
3331
2010-10-30 zzz
* i2psnark:
- Priority mapping bugfix
- Close files as we go when creating/checking
so we don't run out of file descriptors
- Update request queues after priority change
- Only add wanted pieces to wanted list at startup
- Make sure lastRequest is null when it should be
- Delay during StopAll so we don't close the tunnel before the
stopped announces go out and reopen it
- Logging tweaks
2010-10-27 zzz
* i2psnark:
- Don't stay interested if we run out of pieces
to request (thanks sponge)
- Enhance debug mode to show requests
- Priority mapping bugfix
* Transport: Avoid rare NPE at startup
2010-10-24 zzz
* FileUtil: Make it easier to compile without Pack200, or with
Apache Harmony's Pack200, add unzip to main()
* i2psnark: Catch a race after disconnect()
* NTCP: Catch a race after stop()
* Router: Set permissions on wrapper.log when not called by RouterLaunch
* Systray: New doc and main()
2010-10-22 sponge
* Sanity and some fixs for slackware package
2010-10-22 sponge
* Fix rc.i2p for slackware package
3338
3339
3340
3341
3342
3343
3344
3345
3346
3347
3348
3349
3350
3351
3352
3353
3354
3355
3356
3357
3358
3359
3360
3361
3362
3363
3364
3365
3366
3367
3368
3369
3370
3371
3372
3373
3374
3375
3376
3377
3378
3379
3380
3381
3382
3383
3384
3385
3386
3387
3388
3389
3390
3391
3392
3393
3394
3395
3396
3397
3398
3399
3400
3401
3402
3403
3404
3405
3406
3407
3408
3409
3410
3411
3412
3413
3414
3415
3416
3417
3418
3419
3420
3421
3422
3423
3424
3425
3426
3427
3428
3429
3430
3431
3432
3433
3434
3435
3436
3437
3438
3439
3440
3441
3442
3443
3444
3445
3446
3447
3448
2010-10-19 zzz
* Escape & in logs and i2psnark (much more to do)
* JobImpl: Deprecate two debugging methods
* replaceAll() -> replace() when we don't need regex
2010-10-15 zzz
* i2psnark: Add file priority feature
* I2PSocketEepGet: Set connect delay to save a RTT, will
speed announces in i2psnark
2010-10-12 zzz
*** 1.6 or higher JDK now required to build
* configlogging.jsp:
- Add easy way to add an override
- Make file size specifier more flexible
* Console:
- Sort RouterAddress options on netdb.jsp and peers.jsp
- Remove unused web-*.xml file from war
* Crypto:
- Convert all ArrayList caching to LBQs in YKGenerator,
HMACGenerator, and AESKeyCache.
- Change DSAEngine params from Hash to new SHA1Hash, since
these were really 20 byte hashes, not 32 byte Hashes.
- Add stats to track YKGenerator caching success
- Fix YKGenerator precalculation to be much more useful by
increasing the cache size and dramatically shortening the delay
- Option cleanups
- YKGenerator cleanups
- Mark HMAC256Generator unused
* EepGet: Reset length variable on redirect
* Files: Change permissions to 600/700 for all written files/directories.
Now requires Java 1.6 to build, but only 1.5+ to run.
(requires 1.6 to set permissiomns)
* GeoIP: Fix locking bug causing lookups to stop
* Hash: Throw IAE if data length is not 32 bytes,
now that DSAEngine abuse is gone
* HTTPResponseOutputStream:
- More caching
- Stats cleanup
- Max header length check
- Catch OOM
- Initializer cleanup
- Javadoc
* I2CP:
- Add new option i2cp.messageReliability=none, which prevents the
router from sending MessageStatusMessages back in reply to an
outbound SendMessageMessage. Since the streaming lib always ignored
the MSMs anyway, make it the default for streaming.
This will reduce the I2CP traffic significantly.
MSM handling now avoided, but it is still fairly broken, see
comments in I2PSessionImpl2.
- Cleanups to replace method calls with fields
- More cleanups, javadoc, rate reduction
* i2psnark:
- Compact response format
- Add link to finished torrent in message box
- Don't let one bad torrent prevent others from
starting or stopping
- Sort peers by completion %
- Add some missing mime types to web.xml
- shouldLog() cleanup
* i2ptunnel:
- Now that streaming flush() is fixed, use it in IRCClient, and
for initial data in I2PTunnel runner, to avoid the 250 ms
passive flush delay
- Add hostname DSA signature field, to be used for addkey forms.
Experimental, may be commented out later.
- More header blocking (thanks telecomix!)
- Remove unused web-*.xml file from war
* Installer: Add startup hint for non-x86
* Javadoc updates all over the place
* LogConsoleBuffer: Java 5
* Naming:
- Increase cache size and expiration time
- Add clearCache() method
- Don't use EepGet or Exec for b32
- Javadoc updates
* NetDB:
- Expire unreachable routers quickly, even if they don't have introducers,
so we don't have old data on routers that ran out of introducers.
- Fix rare NPEs at shutdown
* NTCP:
- Cleanups
* Streaming:
- Make flush() block less, by waiting only for "accept" into the
streaming queue rather than "completion" (i.e. ACK from the far end).
This prevents complete stalls when flushing, and should help performance
of apps that use flush(), like i2psnark (and SAM?).
close() still does a flush that waits for completion, as i2ptunnel
doesn't like a fast return from close().
- cleanups
* SusiDNS:
- Remove unused web-*.xml file from war
* TransportManager: Convert _transports from a List to a CHM
to prevent a rare concurrent exception
* Tunnels:
- Don't use peers < 0.7.9 for tunnels due to the old
message corruption bugs
- Javadoc
- Cleanups
* UDP:
- Beginnings of destroy message support
- Try to avoid running out of introducers by relaxing selection criteria
and increasing minimum number of potential introducers
- Avoid rare AIOOBE
- PacketBuilder refactor
- Make most classes package private
- Comments
- Logging cleanup
- Comment out a main()
2010-10-10 sponge
* Fulfill Request for name resolving in BOB
* I2PSnark: Overhaul UI, implement new theme.
2010-07-08 zzz
* I2PTunnel: More error propagation fixes
2010-07-07 duck
* RouterConsole: Add Help & FAQ link, minor label improvements.
2010-07-05 zzz
* i2psnark: Fix transition to end game
* I2PTunnelIRCClient: Filter PART messages like we do for QUIT
2010-07-04 duck
* RouterConsole: Dutch translation (thanks to monkeybrains)
2010-07-03 zzz
* Build: Fix poupdate dependencies
* I2PTunnel: More error propagation fixes
* I2PTunnelHTTPClient: Don't use BufferedReader
2010-07-01 zzz
* EventDispatcher: Minor cleanups and comments
* I2PTunnel: Don't start a tunnel if no valid destinations;
cleanups, logging, and error propagation fixes
* Transport: Fix NTCP address generation when host is specified but port is auto
2010-06-29 sponge
* 25%-50% cpu savings in BOB. The remainder of the fix is in streaming
lib, which aparently keeps running and does not sleep according to
profiling.
2010-06-29 zzz
* CapacityCalculator: Cleanup
* I2PTunnel: Add default HTTPS outproxy
* Jetty: Disable TRACE and OPTIONS in console and eepsite
* RouterInfo: Add main() to dump RI files
* Scale prng.buffers based on max memory, reduce default from 16 to 9
* SOCKS: Better HTTP error message
2010-06-26 zzz
* I2PTunnel:
- Move connection profile and delay connect to advanced config section
- Add persistent client key support to SOCKS IRC
- Fix display of interactive setting
* jbigi, jcpuid: Suppress log messages when not in router context
* jetty.xml: Add info on how to configure for following symlinks
* logs.jsp: Add more JVM version info so we can distinguish OpenJDK from Sun
2010-06-16 zzz
* Console: Sort countries with selected locale
* FileUtil: Try to handle lack of unpack200 support more gracefully
* Update: Select old update URL if no unpack200 available
2010-06-13 zzz
* Console: Add some divs for languages to news and readmes
* HTTP Proxy: Pass different User Agent to outproxy
* i2psnark:
- Move config to separate page
- Icon tweaks
* Translation: zh fix
2010-06-12 welterde
* fixed possible race-condition and improved code style in ObjectCounter utility class
* 2010-06-07 0.7.14 released
2010-06-07 zzz
* Misc tweaks after code review
2010-06-05 zzz
* Netdb:
- Use new receivedAsReply flag in LeaseSet to mark
those received as response to a query
- Mark which methods in FloodfillPeerSelector may return
our own hash
- Redefine selectNearest() so it may return our own hash,
so it can be used for closeness measurement
- Redefine findNearestRouters() to return Hashes
instead of RouterInfos
- Fix LeaseSet response decisions for floodfills, based
on partial keyspace and closeness measurements
- List only count of published leasesets in netdb
2010-06-03 zzz
* NewsFetcher: Delay a minimum amount at startup
* Update: Fix multiple updates after manually
starting update - caused by refreshing summary bar
(thx 'backup'!)
2010-06-02 zzz
* graphs.jsp: Tag some more
* Translation: Set xgettext add-comments option
* UDP: Fix a bug from a blank i2np.udp.host config
causing frequent RouterInfo updates and incorrect
addition of introducers, caused by config.jsp handling
* Update: Change default update URLs to .su2 for pack200
2010-06-01 zzz
* i2psnark:
- More listing fixes
- Revert choker change
* Installer: Disable pack200 in updater again, doesn't work
on Java 1.5
* Remove jetty from updater - it's been in for a few
releases, and i2psnark now has its own listHTML method
2010-05-27 zzz
* Translate: Add GNU ngettext (plurals) support
2010-05-26 zzz
* i2psnark: Listing fixes and cleanups;
icons on front page; tweak bw choker again
2010-05-23 welterde
* core:
- fixed major security hole in DatagramDissector
* I2PTunnelServer: Implemented WEBIRC support in IRC server tunnel
2010-05-23 zzz
* i2psnark:
- Choke slower when at bandwidth limit
- Fix completion % for small files
- Use Random from context
* NewsFetcher:
- Add backup URL
- Change to 0 retries (was 2)
2010-05-21 zzz
* i2psnark:
- Spiff up dir listings
- Urlify some messages
- Only go into end game at the end
2010-05-19 zzz
* Data: Remove lots of unnecessary initializers
* susidns: More validatation when adding entry
2010-05-15 zzz
* Console:
- Tag text in graphs
- Move SummaryRenderer to its own file
* Eepsite: Set no-cache in redirecting page
* Hash: Move caching XOR methods only used by KBucket
into netdb
* i2psnark: CSS tweaks
* Log: Translate priority
2010-05-13 zzz
* netdb.jsp debug tweaks
* Plugins: Try to prevent ZipErrors after upgrade
2010-05-10 zzz
* Console:
- Summary bar tweaks
- Add monthly bw estimate
* DataHelper: Deprecate inefficient eq() methods
* i2psnark:
- Add tunnel config dropdowns
- Comment out old proxy stuff
* NetDB:
- Handle old and duplicate stores more efficiently
- Have DataStore put() return success
- Move getDistance() to its own class
* Router: Add router.forceBandwidthClass advanced config for testing
* Streaming: Add support for connection throttling
* TunnelPoolManager: Concurrent
* UDP: To help limit connections, don't offer to introduce
when floodfill
2010-05-10 sponge
* PluginStarter: If there is some delay, there may be a really good reason for it.
Loading a class would be one of them!
So we do a quick check first, If it bombs out, we delay and try again.
If it bombs after that, then we throw the ClassNotFoundException.
2010-05-05 zzz
* build.xml: Create packed sud in release
* Console:
- Print stack trace if exception on startup
- IllegalStateException rather than NPE if no context
* EepGet: Limit max times to fail completely even if numRetries is higher
* i2psnark: Skip 'the' when sorting snarks
* I2PTunnelHTTPClient: Reject 192.168.*
* Plugins:
- Set classpath for specific client only, not for the whole JVM
- Use ConfigDir() not AppDir()
* Replace size() <= 0 with isEmpty() everywhere, ditto > 0 -> !isEmpty()
* RouterInfo: Clean up use of sortStructures()
2010-05-02 zzz
* ByteCache:
- Add a per-cache stat
- Limit each cache based on max memory
- Disable in UDP MessageReceiver
- Add clearAll() method to be called when under
severe memory pressure; call from Router
* Plugins: Fix version checker bug
2010-04-27 zzz
* i2psnark: Serve downloaded files from the servlet rather
than with a file: link
* Jetty: Backport directory listing bugfix from jetty 6
* peers.jsp: Cleanup and tag
2010-04-21 zzz
* EepGet: Don't convert a MalformedURLException into
* ReusableGZIPStreams:
- Concurrent
- Workaround for Apache Harmony 5.0M13 Deflater bug
* TrustedUpdate: Increase buf size for extraction
2010-04-18 zzz
* configclients.jsp: Start button logic for clients was inverted
* Console: IRC links in readmes and initialNews
* I2PTunnelServer: Debug log incoming conns
* Transport: Reduce floodfill max NTCP conns to 425 (was 500)
2010-04-16 sponge
* BOB early session destroy to speed up tunnel tare-down.
2010-04-15 zzz
* DataHelper: Limit max length in readline()
* Floodfills: Increase max to 100 (was 60) and min to 60 (was 45)
* i2ptunnel: Log tweaks
* I2PTunnelHTTPServer: Limit max header lines
2010-04-15 sponge
* I2PTunnelHTTPClient: Test for "http://:/" and output error page.
This avoids an ArrayIndexOutOfBoundsException, which can eventually
cause the eepproxy to stop functioning.
2010-04-12 zzz
* configstats.jsp: Fix full stats checkbox default
* i2psnark:
- Concurrent, limit, display, log tweaks
* i2ptunnel: Implement access lists for TCP servers.
Enter b32 or b64 hash or dest into list box, and
check enable for whitelist. Uncheck enable and enter
i2cp.enableBlackList=true in advanced i2cp options for
blacklist. Todo: make black/whitelists radio buttons.
* LogManager: Concurrent
2010-04-10 zzz
* i2psnark:
- Disconnect seeds that connect to a seed
- Lower per-torrent conn limits for large pieces
* Startup:
- Don't die horribly if there is a router.info file
but no router.keys file
http://forum.i2p/viewtopic.php?t=4424
- Log tweaks
* Streaming:
- Fix the window size increment logic so it
does it much more often
2010-04-08 zzz
* Key Manager: Hopefully avoid some races at startup
http://forum.i2p/viewtopic.php?t=4424
* OCMOSJ:
- Increase min timeout
- Logging tweaks
* Streaming:
- Detect and drop dup SYNs rather than create
a duplicate connection - will hopefully fix
"Received a syn with the wrong IDs"
- Send reset for a SYN ACK with the wrong IDs
- Don't send a reset to a null dest
- Logging tweaks
- Cleanups
2010-04-05 zzz
* Console:
- Add tooltip support for plugin links
- Make target=_blank for plugin links
- More HTML transitional fixes
- Standardize on 'save' to the right of 'cancel'
2010-04-02 zzz
* FloodfillPeerSelector: Adjust rankings again
2010-03-31 zzz
* FloodfillPeerSelector: Adjust rankings to try to
improve LeaseSet lookups
* HostsTxtNamingService: Don't load the whole hosts.txt
into memory for every lookup
* configclients.jsp:
- Always show start button for webapps and plugins
* configclients.jsp, configupdate.jsp:
- Fix submission when entering CR in a text box
* EepGet: Don't retry after a MalformedURLException
* HTTPResponseOutputStream: More static
* Plugins:
- Stop all plugins at shutdown
- Log tweaks
* WebApps:
- Remove the WAC after stopping it
- Stop a WAC before starting it to prevent dups
- Implement destroy() in addressbook to prevent dups
- Implement destroy() in i2psnark to prevent dups
2010-03-25 zzz
* configclients.jsp: Fix dup anchor
* Console: Sort plugin links in summary bar
* i2psnark:
- Send numwant=0 if we don't need peers
- Report returned complete and incomplete counts
if higher than peer count
- Allow missing peer list
- Log tweaks
* netdb.jsp: Tag transport properties
* Plugins: Remove final check and install console
messages after a while
* PrivateKeyFile: Add b32 output
* Reseed: Add another host
3783
3784
3785
3786
3787
3788
3789
3790
3791
3792
3793
3794
3795
3796
3797
3798
3799
3800
3801
3802
3803
3804
3805
3806
3807
3808
3809
3810
3811
3812
3813
3814
3815
3816
3817
3818
3819
3820
3821
3822
3823
3824
3825
3826
3827
3828
3829
3830
3831
3832
2010-03-18 zzz
* Blocklist, CommSystem, FIFOBandwidth, TransportManager,
OutNetMessage, InNetMessagePool:
- Java 5 cleanup
* ByteCache:
- Replace some locks with concurrent
* Clients:
- Negative delay means run immediately and inline
- Add methods to test class and run inline,
to propagate errors to the console
- Use new methods for plugins
- Add javadoc for clients.config format
* config.jsp: Set burst to +10% for 20s by default,
to fix bug where the burst stays high when limits
are reduced.
* FIFOBandwidthRefiller:
- Replace global counters with atomics
- Use lockless shortcut methods to grant
requests if we can satisfy immediately
* i2psnark: Tweak upload bw tracking
* Installer: Enable pack200 (-3.3MB)
* Job Queue:
- Replace some locks with concurrent
- Change job ID to a long so it won't wrap
- Remove some unused stats
- Java 5 and debug cleanup
* KeyManager: Concurrent
* logs.jsp: Add link to trac
* netdb.jsp: Display transport cost if not default
* Peer Manager:
- Replace some locks with concurrent
- Switch back to fast version of getPeersByCapability()
- Java 5 cleanup
* Streaming: Concurrent
* Throttle:
- Remove some unused stats
* Tunnel Builds: Enable VTBM
* Tunnel Dispatcher: Discard at IBGW based on router clock,
not system clock.
* TunnelGatewayPumper:
- Refactor for concurrent
* UDP:
- Big refactor of several classes for concurrent,
elimination of several locks
- Reduce max number of resent acks in a packet to
lower overhead
- Take incoming messages from the head of the queue,
not sure why taking them from the tail "reduces latency"
- Java 5 cleanup
2010-03-17 zzz
* I2PTunnel: Disable nonce checking when console password set
* Reseed: Add another host
* Partial fix for i2ptunnel nonce troubles
2010-03-08 zzz
* Floodfills: Increase max to 60 (was 28) and min to 45 (was 20)
* i2psnark: Better track outgoing bandwidth by incrementing
counter before the blocking write
* Random: Remove and deprecate some old classses
* Reseeder: Reduce max response size to 1MB (was 8MB)
* Console:
- Tag reseed messages
- Translate country names on flag popups
* I2PSOCKSIRCTunnel:
- New, for filtering IRC client traffic when using SOCKS
* I2PTunnelIRCClient:
- Make filter classes static and public for use by SOCKS
- Eliminate redundant case conversion
- Pass ISON message through (jIRCii uses it for pings)
- Switch back to StringBuffer since it's used by 2 threads
- Set daemon on filter threads
* SOCKS5Server:
- Fix handling of multiple authentication methods
2010-03-02 zzz
* Console:
- Add link to jobs.jsp on configservice.jsp
- Add plugin disableStop support
* Context: Add boolean getProperty methods
* HTTP Proxy:
- Fix address helper conflicts caused by last checkin
- Use B32 instead of random hostname for conflict link
* LoadClientAppsJob:
- Fix unquoted arg after quoted arg
- Logging cleanup
2010-02-27 zzz
* eepsite: Add some help to index.html
* HTTP Proxy:
- Put B32 instead of B64 in Host: header, saves 450 bytes
- Eliminate some redundant lookups
- Fix http://i2p/b64/ and /eepproxy/site/ requests
- Disallow a port specified for an i2p address
- Cleanup and comments
- For more info see http://zzz.i2p/topics/566
* i2psnark:
- Fix NPE after create file failure
- Sanitize more characters in file names
* netdb: Fix NPE after OOM http://trac.i2p2.i2p/ticket/38
* NTCP Transport:
- Replace lists with concurrent queues in EventPumper
and NTCPConnection to remove global locks
- Java 5 cleanup
* Plugins: Support console themes
* UDP Transport:
- Replace the unused-since-2006 TimedWeightedPriorityMessageQueue
with DummyThrottle
- Don't instantiate and start TWPMQ Cleaner and OutboundRefiller
threads, part of priority queues unused since 0.6.1.11
- Don't instantiate and start UDPFlooder, it is for testing only
- Prevent NPE http://zzz.i2p/topics/571
2010-02-23 zzz
* Unzip: Any files in the zip with a .jar.pack or .war.pack extension
will be transparently unpacked with unpack200. Savings is about 60%.
Someday we will do this for suds, but we can do it for xpi2ps now.
* build: Add updater200 target
2010-02-22 zzz
* configclients.jsp:
- Add js delete confirm
- Remove delete button for webapps
* i2psnark:
- Ignore a non-i2p tracker in a torrent rather than deleting
the torrent, thus "converting" a torrent to in-netowrk use
via the open trackers
- Add js delete confirm
2010-02-19 zzz
* i2psnark: Make file box bigger
* Plugins:
- Fix display of download status
- Unhide
2010-02-18 zzz
* Clock: Slew tweak
* i2psnark: Improve error message when finding HTML
* HTTP Proxy: Fix blank page instead of error page for eepsite unreachable
* Plugins:
- Fix plugin start button
- Change signer prop to match docs
- Tweaks
* Transport:
- Fix recognition of IP change when not firewalled
- Require consecutive identical results from two peers before changing IP
* TrustedUpdate: CLI exits 1 on failure for ease of use in scripts
2010-02-15 zzz
Propagate from 3 dev branches.
i2p.i2p.zzz.test:
* Clock:
- getFramedAveragePeerClockSkew() now returns a long (ms);
was a Long (s)
- Implement NTP-style clock slewing so the clock is adjusted
gradually
- Implement clock strata so we prefer better clocks
- Implement a timestamper in the transport so we will periodically
update the clock even if NTP is not working.
This allows the router to converge the clock instead of simply
hoping the first connected peer is correct.
- Slow down NTP attempts after several consecutive failures
* Console: refactor and tag update messages
* Streaming: MessageOutputStream logging tweaks
* Transport:
- Prepare for using address costs
- Adjust bids based on address cost
- Increase cost if near transport capacity, disabled until 0.7.12
3958
3959
3960
3961
3962
3963
3964
3965
3966
3967
3968
3969
3970
3971
3972
3973
3974
3975
3976
3977
3978
3979
3980
3981
3982
3983
3984
3985
3986
3987
3988
3989
3990
3991
3992
3993
3994
3995
3996
3997
3998
3999
4000
- Clear the geoip negative cache periodically
i2p.i2p.zzz.plugin:
* Jrobin: Move from routerconsole.jar to its own jrobin.jar,
adjust classpath in routerconsole.jar manifest
* Plugins:
New plugin support, hidden for now, enable with router.enablePlugins=true
Configure and add plugins on configclients.jsp
Supports the following:
- Console webapps
- New translation bundles
- Link on console
- Anything that can be started in clients.config
- Additions to classpath for clients and webapps
* TrustedUpdate:
- Add method to check if we know about a key
- Add method to add a key
- Add method to extract without verifying
- Add method to get key signer name
* Webapps: Allow additions to a webapp classpath.
- Pull jstl.jar and standard.jar out of susidns.war
- Remove 100KB of duplicate classes from i2psnark.war
i2p.i2p.zzz.VTBM:
* I2NP: Add UnknownI2NPMessage so we can route unknown message types
* Tunnel Builds:
- Add getRecordCount() to TunnelBuildMessage and TunnelBuildReplyMessage so they can be extended.
- New I2NP Messages VariableTunnelBuildMessage and VariableTunnelBuildReplyMessage,
which contain the number of request slots in them.
- Convert all static assumptions of 8 slots to getRecordCount()
- Use the new VTBM if all hops in the tunnel and the OBEP or IBGW of the reply tunnel
support it, and the tunnel is 4 hops or shorter.
- Reply to a VTBM with a VTBRM of the same size
- Make BuildReplyHandler static
- Convert the currentlyBuilding List to a ConcurrentHashMap to speed reply lookups
and eliminate a global lock; don't put fallback tunnels in there
- Add new tunnel.corruptBuildReply stat
- Various cleanups and javadoc
- Fix first hop expiration for Build Messages, was way too long
- Randomize Build Message expiration to make it harder to guess hop position
- Save expired tunnel build configs for a while, so that we will still use the tunnel
and update peer stats if the reply comes in late
- Don't update our own profile for Tunnel Build Replies