Newer
Older
- 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.
4111
4112
4113
4114
4115
4116
4117
4118
4119
4120
4121
4122
4123
4124
4125
4126
4127
4128
4129
4130
4131
4132
4133
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)
4152
4153
4154
4155
4156
4157
4158
4159
4160
4161
4162
4163
4164
4165
4166
4167
4168
4169
4170
4171
4172
4173
4174
4175
4176
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)
4203
4204
4205
4206
4207
4208
4209
4210
4211
4212
4213
4214
4215
4216
4217
4218
4219
4220
4221
4222
4223
4224
4225
4226
4227
4228
4229
4230
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
4237
4238
4239
4240
4241
4242
4243
4244
4245
4246
4247
4248
4249
4250
4251
4252
4253
4254
4255
4256
4257
4258
4259
4260
4261
4262
4263
4264
4265
4266
4267
4268
4269
4270
4271
4272
4273
4274
4275
4276
4277
4278
4279
4280
4281
4282
4283
4284
4285
4286
4287
4288
4289
4290
4291
4292
4293
4294
4295
4296
4297
4298
4299
4300
4301
4302
4303
4304
4305
4306
4307
4308
4309
4310
4311
4312
4313
4314
4315
4316
4317
4318
4319
4320
4321
4322
4323
4324
4325
4326
4327
4328
4329
4330
4331
4332
4333
4334
4335
4336
4337
4338
4339
4340
4341
4342
4343
4344
4345
4346
4347
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
4682
4683
4684
4685
4686
4687
4688
4689
4690
4691
4692
4693
4694
4695
4696
4697
4698
4699
4700
4701
4702
4703
4704
4705
4706
4707
4708
4709
4710
4711
4712
4713
4714
4715
4716
4717
4718
4719
4720
4721
4722
4723
4724
4725
4726
4727
4728
4729
4730
4731
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
4857
4858
4859
4860
4861
4862
4863
4864
4865
4866
4867
4868
4869
4870
4871
4872
4873
4874
4875
4876
4877
4878
4879
4880
4881
4882
4883
4884
4885
4886
4887
4888
4889
4890
4891
4892
4893
4894
4895
4896
4897
4898
4899
- 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
2010-02-13 sponge
* Fix addWebApplications API goofup
* Bump BOB version, which I forgot to do.
2010-02-13 zzz
* Floodfills: Increase max to 28 (was 15) and min to 20 (was 10)
2010-02-12 sponge
* org.mortbay.jetty.Server modified method to accept attributes for
batch webapp launches via addWebApplications.
2010-02-10 zzz
* I2PTunnelRunner: Flush initial data, for some reason it wasn't
getting flushed ever in some cases.
2010-02-10 zzz
64-bit windows installer fixes. Still no 64-bit wrapper.
Thanks eche|on for testing!
* Izpack:
Add 64-bit windows dll so installer doesn't die trying to add shortcuts
* Launch4j:
Upgrade to launch4j 3.0.1 2008-07-20.
The license is BSD for launch4j and MIT for the wrapper code in head/
Changelog is in installer/lib/launch4j/web/changelog.html
Hopefully this will fix installs for 64-bit JRE on 64-bit windows.
The previous version was 2.0-RC3 2005-08-13.
The previous license was GPLv2 for launch4j and LGPLv2.1 for the wrapper code in head/
The bin/ld.exe and bin/windres.exe files were contributed by
i2p users in 2005 so the i2p installer could be built on windows.
They have not been updated for 3.0.1, so pkg builds on windows
will presumably still get 2.0-RC3.
2010-02-06 zzz
* Console: Fix saving update keys, was broken in 0.7.10
* i2psnark: Add transmission ID
* news.xml: Wrap i2p version tags in XML comment
* Transport: Try yet again to prevent two NTCP pumpers
2010-02-04 zzz
* i2psnark: Fix sending stopped events to the tracker
2010-02-03 zzz
* Console:
- Hide update buttons and update config if install dir is readonly or if configured
- Show yellow star if no outbound tunnels
* i2psnark: Don't prefer to opportunistically unchoke unchoking peers when not interested
* NetDb: Lower min RouterInfo expiration to 2.5h (was 3h)
2010-01-31 zzz
* i2psnark standalone: Fix CSS
* Jetty: Update to 5.1.15 to get ResourceHandler fix
2010-01-30 sponge
* Fix NPE in TCPtoI2P when a lookup fails, report the error to the stream.
* Fix setkeys bug in DoCMDS, forgot to create the object before calling
it's methods, which threw an NPE.
2010-01-29 zzz
* build.xml: Add a debian-source target
* Data structures:
- Speed up some hashcode() and equals()
- Cleanup and javadoc
* Jetty: Turn on checkAliases
* NetDb:
- Add basic DOS prevention for lookups
- Move flood throttle check so we don't throttle ourselves
- Don't store over client tunnels to pre-0.7.10 floodfills
- Don't update unused lease fail stats
* Startup: Disable browser launch for debian daemon
2010-01-28 welterde
* enhance support for multiple RouterAddresses' of the same style in RouterInfo
* Clock: Don't refuse to update because of peer skew the first time
* I2NP: Various cleanup and bulletproofing
* Log: Try to avoid complaints at shutdown
* Profiles: Fix lack of profiles at router startup, especially for new routers
* stats.jsp: Shrink the dropdown box
* ProfileOrganizerRenderer: Cleanups
* Reseed: Update welt's reseed hostname
* Transport clock skews:
- Store and report UDP clock skews even for large values, so
a badly skewed local clock will be reported to the console
- Don't shitlist for NTCP clock skew if we don't know what time it is
- If NTP hasn't worked yet, have NTCP or SSU update the clock one time
- Include failed clock skew in NTCP skew vector if there aren't many connections
- Don't include NTCP clock skews for non-established connections
- Fix framed clock skew frame size
- Report framed clock skew even if for only one peer, if NTP hasn't worked yet
- Don't log RRD errors after clock adjustment
- Reduce min skew for console warning to 30s (was 45s)