Newer
Older
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 validataion 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
2010-03-18 zzz
* Blocklist, CommSystem, FIFOBandwidth, TransportManager,
OutNetMessage, InNetMessagePool:
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
- 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
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
- 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)
- More Java 5 cleanups
2010-01-24 zzz
* Clock:
- Don't let a client update the router clock
- Restore and enhance vanished clock error log message
* Graphs: Enforce max size to lessen chance of OOM from malicious link
* NetDb:
- Move stat initialization, reduce number of rates
- Add basic DOS prevention by not flooding if stores are too-frequent
* ProfileOrganizer:
- Limit High Cap to 75 max
- Reduce max lock wait time, change no lock error to warning
- More cleanup
* Startup:
- Enable multiple parallel job runners much sooner to speed startup
- Rearrange the startup order to get the long jobs started sooner
- Don't allow the netDb readin job to clog the job queue
2010-01-21 dr|z3d
* New eepsite structure and enhanced pages. Now with graphics and stuff!
2010-01-21 zzz
* eepget.bat: Add to pkg
* Floodfills: Increase max to 15 (was 9) and min to 10 (was 4)
* I2PTunnelServer: Fix bug preventing connection retries
at startup from working
* Logs: Don't be quite so noisy in the wrapper log if we
can't open the router log
* Properties: Don't play games with \r and \n on load/save,
it was causing fatal issues on DOS if your username started
with r or n
2010-01-19 sponge
* Firewall fix for NTCP, where firewalls will forget a NAT relationship
on a stream... AKA setting keepalive. This should fix the stuck NTCP
issue that has been bothing zzz for years.
* Set keepalive on BOB connections too, since this will assist closing
the connections in the event of a crash on a client.
2010-01-18 zzz
* configclients.jsp: Fix add-new-client feature
* Console: Add a tunnel share ratio estimate
* graphs.jsp:
- Remove jrobin sig
- Set lower limit to 0
- Save settings when changed
* Reseed: Support SSL and proxies
* Translate: Catch empty string
2010-01-17 zzz
* Clock: Change a CRIT to an ERROR, lower threshold for changing from 10s to 5s
* configclients.jsp: Support add, delete, edit
* I2CP: Clean up resources on 5-minute leaseset timeout at startup
* LeaseSet generation: Increment the lease date slightly, to force
the floodfill to flood it when it changes
* NetDb Lookups: Don't try to send a RI lookup to itself through a zero-hop tunnel
* NetDb Stores and Verifies:
- Do LS stores and verifies through client tunnels
to prevent correlation by the OBEP or FF
- Encrypt LS stores to prevent snooping by the OBEP,
if the floodfill supports it
- Encrypt LS and RI verifies to prevent snooping by the OBEP
- Extend verify delay and timeout
- Reenable RI verifies
- Disallow simultaneous verifies for the same key
- Don't resend on verify timeout; try a different peer instead
- Don't resend to same peer on verify fail, try a different one
- Adjust ff selection criteria
- Flood even if received garlic-encrypted
* Profiles: Limit fast peers to 30 max
* SSLEepGet: New
* Tunnels: Prevent more than one zero-hop tunnel in a lease
* VersionComparator: Move from TrustedUpdate.java to util
2010-01-14 sponge
* Fully clean up I2PTunnel. No more lint issues, should compile 100%
clean.
* Dropped unused class BufferLogger from I2PTunnel as it is not used
anylonger.
2010-01-14 sponge
* Clean up reverse connection ability, remove some annoyingly redundent
code. Place all settings in the console. It works!
2010-01-10 sponge
* Insert reverse connection ability into the http server code so that
seedless can start to get worked on. It's disabled by default.
* 2010-01-12 0.7.9 released
2010-01-12 zzz
* I2CP: Clean up resources on 5-minute leaseset timeout at startup
* Increase max floodfills to 9 (was 6)
* Temporarily disable routerInfo floodfill verifies
* Fix .fr eepsite index css
* Javdoc tweaks
2010-01-09 zzz
* Include new eepsite indexes in pkg
2010-01-06 zzz
* Summary bar tweaks
2010-01-02 sponge
* Fix one last stupid mistake in build.xml, my fault.
2010-01-02 sponge
* Fix NB 6.8 goofyness... 'till ant 1.7.1 or > is needed, stay with NB
6.5, as the newer ones place a check for 1.7.1. We require 1.7.0
2010-01-02 sponge
* Fix build.xml target for justBOB
* Fix Main build.xml so that it actually deletes backup files and add a
few extra types that should be commonly needed... atleast by me.
2010-01-02 zzz
* Console: Save refresh setting
* i2psnark:
- Don't URL-encode chars we don't have to
- CSS tweaks
* Transport: Implement 'laptop mode' to change ident and port
when the IP changes
2010-01-01 sponge
* Happy New year everyone!
* Added a target to generate a stand-alone BOB jar file.
2009-12-31 zzz
* BuildResponseRecord: Make static
* i2np: Remove unused logs
* i2psnark: Fix message box, was a little too small
* InternalSocket: Fallback to external socket on fail
* NetDb: Fix exploration by adding a null hash to mean
"don't give me floodfills"
* PeerSelector: Downgrade floodfills with high fail rate
2009-12-26 zzz
* Console:
- Tag the rest of logs.jsp
* Tunnels, Transports:
- Lots of code to detect improper reuse of cached objects
after release
- Prevent release of TunnelDataMessage cached ByteArray,
as it may be reused if retried in another transport;
a nasty bug causing corrupt messages
- Prevent race with released resources in UDP OutboundMessageState;
a nasty bug causing corrupt messages
- More cleanups and comments
* UDP: Bid lower than NTCP when we need introducers and don't
have enough
2009-12-22 zzz
* Tunnels:
- Do RED dropping before the IBGW fragmenter, not after
- Change batch time to 250ms for IBGWs (was 100ms)
- Change batch time to 150ms for exploratory OBGWs (was 100ms)
- Start a new message in the fragmenter if almost full
- Fix a major, longstanding synchronization bug in the FragmentHandler
which led to corrupt messages at the endpoints
- More cleanups and comments
2009-12-20 zzz
* Console:
- Fix status to show a disconnected network error rather than
clock skew or UDP error when disconnected
- Use peer clock skew rather than clock offset for determining
whether to display clock skew error
- tunnels.jsp: Clarify tunnel table headings
* Contexts: Add isRouterContext() method
* Profile, DBHistory:
- Tweak the rate periods
- Add a global fail rate stat
- Increase the HashMap sizes
* Router: Move some more threads to I2PAppThread so an OOM won't
crash the router
* Timestamper: Reduce delays (cuts 10s out of router startup)
* Transport: Rework peer clock skew method to always return a value
* Tunnels:
- Reduce the drop probability for TunnelBuildMessages at the OBEP
- Schedule outbound startup instead of hanging the thread for 3s
- Cleanup preprocessor code, add comments
2009-12-18 zzz
* Console: Fix spacing in update section
* I2CP:
- Move client-side writes to their own thread
- Reenable InternalSockets
* i2ptunnel: Fix bundle script
* InNetMessagePool: Cleanup
* Log:
- Close old file on rotate
- Buffer writes
- Write in UTF-8
* SusiDNS:
- Remove untranslatable button images (-15KB)
- Tag buttons and messages
- Add some button CSS
* Tunnel building:
- Increase timeout to 13s (was 10s)
- Fix tunnel.buildReplyTooSlow stat
- Tweak logging
- Prioritize expl. builds over client builds
- Code cleanups
* TunnelSettings: Drop, unused
2009-12-15 zzz
* HTTP Proxy: Make jump server list configurable
* i2psnark: Fix stop/start, cleanups
* i2ptunnel: Fix bundle location
* SusiDNS:
- Rewrite and correct a lot of the text, tag jsps
- UTF-8 fixes
* TunnelManager: Fix a locking bug
* Update: Improve error message
2009-12-13 zzz
* Find ResourceBundles in wars
* Fix restart from config.jsp if no wrapper
* i2psnark: Elaborate popups
2009-12-12 welterde
2009-12-12 zzz
* Disable InternalSockets until it's fixed
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
2009-12-11 zzz
* Addressbook, susidns: Rework addressbook into a
HttpServlet, so susidns can kick it when the subscription
list changes
* Build: Truncate the history in the updater (-80KB)
* Console:
- Add a nicer handler for missing webapps
- Restore the restart message
- Change "depth" to "length"
* Data: Cache the Hash hashcode
* EepGet: Use InternalSocket if available
* Fragmenter: Pull the new comments, new stats, and
debug log fix from i2p.i2p.zzz.batch in - but not the
batching mods, which need a fresh look.
* I2CP: Implement an internal "socket" class that
allows clients in the same JVM to connect to the
router without going through the kernel
* I2NP: Drop unused classes
* i2psnark:
- Translation support
- Tweak torrent name popup
* I2PTunnel:
- Translation support
- Switch all I2PThreads to I2PAppThreads
- Run an InternalSocket as well for the HTTP Proxy
* Naming Services:
- New EepGetAndAddNamingService that appends new
hosts to hosts.txt
- Move default reverseLookup to base class
- Deprecate unused services
* NetDb:
- Switch from ArrayList to ConcurrentHashSet in
KBucketImpl to reduce chance of deadlock;
remove periodic shuffling of the bucket,
needs to be addressed elsewhere
* SusiDNS:
- Translation support
- Remove jsp's from the war
* Translation: Move code from routerconsole to core,
to support translation of other webapps
* 2009-12-08 0.7.8 released
2009-12-08 zzz
* Misc. cleanups after review, prep for release
2009-12-06 zzz
* netdb.jsp: Fix bug caused by XSS fix
* Translations: drop ru until after release
2009-12-05 zzz
* Build: Fix poupdate dependency
* Console: Add Russian option
2009-12-05 sponge
* BOB: fix a critical bug causing ghosts on probes
and remove unused code.
2009-12-04 zzz
* Console: Close up some possible XSS (thanks Pragmatk)
* i2psnark: Config cleanup, more HTML transitional fixes
* readme*.html: Point to translated pages on www.i2p2.i2p
2009-11-29 zzz
* config.jsp: Comment out unused stuff better
* profiles.jsp: Hide non-ff from ff table
* HTTP Proxy: Don't send proxy.i2p to the naming service,
it was making the error pages load slowly
* SOCKS Proxy: Fix an error message
* Transport: Fix the default inbound burst
2009-11-29 sponge
* net.i2p.router.transport.udp deadwood code cleanup.
* documented rare NPE in InboundEstablishState.java.
2009-11-28 sponge
* Improvement to BOB's TCPio to hopefully lower load average. It seems
to be helping a little when stress-tested with Robert.
2009-11-24 zzz
* DataStructures: Remove unused Logs
* OrderedProperties: Simplify, use in i2psnark
* Profiles: Record successes in the DB fail rate
too, so we can calculate a percentage
* profiles.jsp:
- Change fail rate from count to percent
- Hide standard profiles by default
* Streaming:
- When an "immediate" ack is requested, do it within
250 ms (was 2000)
- Request immediate acks when < 1/3 of window remains,
or when < 3 packets remain in window,
and every 8 packets (was when < 2 packets in window remain)
- Change requested delay to RTT/2 (was RTO/2)
- Log cleanup and javadoc
* Netdb Floodfill rework part 4 of N:
- Search closest-to-the-key
- Put closest-to-the-key in explore don't-include-list
- Use facade's peer selector for exploration rather than
instantiating a new one
- Adjust response time limit
* netdb.jsp: Add popups on flags
* Routerconsole build: rename include files so they aren't
compiled and bundled separately (~15KB)
2009-11-18 zzz
* Build: Don't update the po files by default, add new
target "poupdate" to do that.
* Netdb:
- Floodfill rework part 3 of N: Send closest-to-the-key
in DSRM replies
- Adjust criteria for following DSRM
- Note failed floods in the profile
- Reduce max flood
2009-11-16 zzz
* addressbook: Move class to net.i2p.addressbook
* build: Take two test scripts out of the installer
* i2psnark: Bye TPB
* Shitlist: Fix bug from two checkins ago, all were forever
2009-11-14 zzz
* HTTP Proxy:
- Add support for error page translations
- Add support for external pages for all errors
- Fix lack of \r in error page headers
- HTML transitional fixes
- Cleanups
* UDP PeerTestManager: Throw in some synchronization to
try to fix stuck tests
2009-11-11 zzz
* Console: Some colon cleansing
* FloodfillPeerSelector: Adjustments
* Shitlist: Move HTML renderer to router console,
add cause parameter for ease of translation,
tag all causes
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
2009-11-11 zzz
* Addressbook, NamingService: Allow 516 byte dests
that end with AA but not AAAA, so we can permit
non-null zero-length certs.
* Console:
- Tag tunnel status
- Add transport table to netdb.jsp
* i2psnark:
- Reject torrents with too many pieces
- Reject torrents with a single file named *.torrent
- Increase max piece size to 2MB (was 1MB), but reduce
max number of connections to lessen ooms
* Netdb FloodOnlySearchJob:
- Fix up field hiding and duplicate overrides
- Other javadoc and java 5 improvements
* Netdb StoreJob, FloodfillVerifyStoreJob:
- Fix bug where reply selector wasn't registered for
routerinfo stores, so we didn't get stats, and
we kept retrying. This also prevented verification
and profile updates for routerinfo stores.
This bug was introduced 4 years ago by the change to
store routerinfos directly.
- Add dbStoreSuccessful() to profile, and have FVSJ
call it or dbStoreFailed() as appropriate to give
credit or blame to the floodfill we stored to.
- Don't let FVSJ verify using the peer we stored to
* Netdb Stores:
- Floodfill rework part 2 of N:
Store and verify closest to the key, subject to
last-failed lookup and store stats.
- DataHelper: Fix broken byte[] compareTo() used by XORComparator,
was not doing unsigned comparisons!
- FloodfillPeerSelector: Use standard XORComparator
now that it works, instead of messing with BigInteger
- FloodfillVerifyStoreJob: Set correct timeout for
requeued store job (was only 10s)
- KNDF: Rework getPeerTimout() to use 1 day averages,
and lower the min, max, and multiplication factor.
- Publish jobs: Lengthen timeout to 90s (was 30s for
routerinfos and 60s for leasesets)
- StoreJob: Limit max peer timeout to 15s for direct stores
* Streaming: Fix unused resend delay field in the packet header,
it is defined as seconds and we were not dividing by 1000,
so we were truncating 1000 to one byte which equals 232.
* UDP:
- Better handle a test reply from bob with a 0-length IP
- Add config options for min and max random port
* New midnight blue lightweight theme; supports IE and provisions its own console_big.css
* Streamlining and honing of console_big.css
* Console:
- countries.txt: Convert to mixed case, include in update
- netdb.jsp: Hide all routers by default, sort and tag country names
- oldstats.jsp: Move to stats.jsp
- profiles.jsp: Show new DBH times instead of counts
* Profiles:
- Track last good and bad lookup times
and last good and bad store times,
to prep for floodfill changes
- Don't reset last-heard-about at router startup
* Checklist and Android readme fixups
2009-11-04 zzz
* Build:
- Move some files to installer/resources
- Fix initialNews.xml in install package
* Console: More tagging
* NetDb: Reduce routerinfo expiration slightly
* Profiles:
- Remove the almost-unused send and receive size RateStats;
this also reduces the effective time for isActive()
- Only store DB history on-demand to save space;
fix up resulting NPEs
- Savings: ~2MB heap
* Throttle: Reduce max msg delay to 1250ms (was 1500)
* UDP: Pick a random port on first install or bind failure -
No more port 8887 to prevent easy state-level blocking
2009-11-04 sponge
* Fixups to Slackware scripts
2009-10-31 zzz
* Console:
- More tagging
- Show user-installed themes on configui.jsp
- Fix reseed button spacing
* GraphHelper cleanup
* Susidns: add link to subscription faq
2009-10-29 zzz
* Console tag fixes, bundle script fix
* Add help target to build.xml
2009-10-28 zzz
* Console:
- Rewrite TrustedUpdate version comparator, use for netdb version table
so 0.7.10 will be sorted correctly
- Reduce netdb.jsp memory usage
- More tagging fixups
- configclients.jsp fixup for "Web console"
- Remove limiter status from peers.jsp
- Fix UPnP status header
* NetDb:
- Generate new RI immediately at startup
- Try again to not publish RI until we have been up a few minutes
2009-10-26 zzz
* Console:
- Add parameterized tag
- Don't save config when checking for updates on configupdate.jsp
- Refactor confignav.jsp to java and tag
- Start tagging profiles.jsp
- Rework ConfigRestartBean and tag
- More tag fixups
- Add lang=xx for testing
- Add file for additional tagged strings
2009-10-23 zzz
* Certificate: Fix the (apparently unused) readBytes(byte[], int) method
for a null certificate - http://zzz.i2p/topics/388 - thanks HungryHobo
* Console:
- Don't hide link to configui.jsp for IE any more
- Add lang selection on configui.jsp
- Tag strings in configui.jsp
- Load console_big.css if lang == zh
- Add _x() tag for static iniitializers
- HTML transitional input tags
- Rename cssHelper to intl for ease of tagging
* Update: Better error message when .sud file not found or truncated
http://forum.i2p/viewtopic.php?t=3979
The bug with the file going to the wrong place was fixed a couple months ago.
2009-10-21 dr|z3d
* Enhance index.jsp with "paperclips" for the main links
* Tighten sidepanel layout to gain us some vertical screen real estate
* Update news.xml with the correct link for Chinese translation page
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
2009-10-20 zzz
* I2NP: Remove old TunnelCreateMessage and TunnelCreateStatusMessage
* Logger: Don't kill the whole JVM if we can't open the log file
* MessageHistory: Cleanups
* NetDb: Move renderStatusHTML to routerconsole
* Router Console translation infrastructure:
- Persistent lang setting with routerconsole.lang=xx
- Loading any page with ?lang=xx changes the persistent setting
- Add a custom Jetty handler to load foo_xx.jsp if it
exists for language xx. This is for jsp files with lots
of text in them. Otherwise use inline translate methods.
Not for included jsps.
- Add a script to create and update messages_xx.po translation
files, and create ResourceBundles from them
- Add class to translate strings from cached ResourceBundles
- Add translate wrappers to HelperBase, FormHandler, and *Renderer,
so calls can be made from both jsp and java files
- Add example translations on configupdate.jsp - two in
the jsp itself and one in the helper.
- This is for strings in routerconsole only. Will be expanded
to other webapps and the router later.
* summarynoframe.jsp:
- Refactor to SummaryBarRenderer (saves 100KB)
- Add translate tags
- Use context RNG for nonces
- Transitional HTML style for input tags
* TunnelDispatcher: Drop messages that expire far in the future
* TunnelPoolManager: Move renderStatusHTML to routerconsole
2009-10-16 dr|z3d
* Extensive UI whitespace cleanups and positional finessing.
2009-10-16 zzz
* Crypto: Two more test classes out of the lib
* FloodfillMonitor: Slow down the volunteers again
* NetDb: Rework part 1 of N:
- Flood only to those closest to the key
- Java 5 fixups
* ProfileOrganizerRenderer:
- Move to routerconsole
- Write directly to Writer for speed
* Router: Add router.hideFloodfillParticipant option for testing
* StatisticsManager: Cleanup after release
* 2009-10-12 0.7.7 released
2009-10-11 zzz
* Misc. cleanups after review, prep for release
* I2PTunnel: Fix persistent client tunnel keyfile location
2009-10-09 dr|z3d
* Add paste.i2p2.i2p, and echelon's software links to readmes (thanks
to GoHE for Swedish translations); cosmetic tweaks to same.
* Various optimizations and tweaks to all 3 themes.
2009-10-07 zzz
* Doc and eepsite_index updates
* UDP: Remove port number from thread names
2009-10-04 zzz
* i2psnark: Fix NPE caused by last checkin (thanks wuxia!)
2009-10-02 zzz
* BuildMessageTest: Move out of the lib
* i2psnark: Fix changing opentracker list
* Makefile.gcj: fixups
* OCMOSJ: Fix SKM NPE on closed dest
* ProfileOrganizerRenderer: static tweaks
* SusiDNS: HTML transitional fixes, might help opera
* Tunnel IVValidator: Increase size of bloom filter
for high-bw routers (>= 512KBps share bw) to reduce
false positive rate. Adds 2MB heap for >= 512KBps routers
and 6MB for >= 1536KBps.
2009-09-21 sponge
* fixups to SlackBuilds. requiredbuilder does the wrong thing, and
thinks that java is perl! This isn't really a big deal,
the file format is simple enough and the requirements are known.
2009-09-07 mkvore
* removes a SAM v1&2 bug
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
2009-09-04 zzz
* SessionKeyManager, OCMOSJ, Garlic:
- Enable per-client SessionKeyManagers for better anonymity
- tagsDelivered() now means tags are sent, not acked.
- OCMOSJ uses the new TagSetHandle object returned from tagsDelivered()
to call tagsAcked() or failTags() as appropriate.
- Assume tags delivered on an established session to
reduce streaming lib stalls caused by massive tag deliveries;
should increase throughput and window sizes on long-lived streams
- Unacked tagsets on a new session are stored on a separate list
- Don't kill an OB Session just because it's temporarily out of tags
- Increase min tag threshold to 30 (was 20) due to new speculative
tags delivered scheme, and to increase effective max window
- More Java 5 and dead code cleanups, and more comments and javadoc,
debug logging cleanups
- Key toString()s for easier debugging
- HandleGarlicMessageJob: cleanup of unused things
* Tunnel TestJob:
- Consume the tag after a failed test so it doesn't
stay in the SKM
- Disable tests with router.disableTunnelTesting=true
* configkeyring.jsp: Add delete and cancel buttons
* Logging: Fix directory for rotated log
* TunnelDispatcher: Cleanup
2009-09-02 sponge
* Small logic fix for dr|z3d
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
2009-08-28 zzz
* Client: Fail if no date handshake after 30s or no leaseset
after 5m, rather than hanging forever.
* Console:
- Prevent OOMs in NewsFetcher or StatsSummarizer from
killing the router
- Fix favicon (-17)
* Data: Speed up many hashcodes
* DataHelper: Fix byte array hashcode for small arrays
* DecayingBloomFilter:
- Replace with new DecayingHashSet for 3 of 4 uses,
and also in the 4th if the router is low-bandwidth.
Saves 8 MB heap.
* EepGet, I2PSnark:
- New I2PSocketEepGet fetches through existing tunnels
rather than through the proxy
- Use new eepget for i2psnark
- Add a fake user agent for non-proxied fetches
- Cleanups
* NetDb:
- oops, store leaseset locally even when shutting down
(fix -16)
- Java 5 cleanups
* PRNG:
- Rename config option to prng.buffers (was router.prng.buffers)
- Change the default from 16 to 2 for I2PAppContext (saves 3.5MB)
* Tunnel:
- Adjust the random drop probability for the message size
- Concurrentify HashSetIVValidator
* TunnelPool:
- Don't test tunnels when shutting down
- Less rates
- Java 5 cleanups
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
1206
1207
1208
1209
2009-08-24 zzz
* ClientManager:
- Prevent client destination theft by rejecting duplicates
- Java 5 cleanups
* Console:
- Put favicon on every page
- Make every page UTF-8, ☃ safe for snowmen
- Remove options boxes on configtunnels.jsp
- Fix UTF-8 form submission (i2ptunnel too)
- Throw 403 instead of 404 from flags.jsp and viewstat.jsp
so we don't render error.jsp
* I2CP: Fix the SessionConfig serializer in DataHelper,
so that UTF-8 tunnel names are not corrupted by
I2CP and can be displayed on the console
* Message: Move 2 unused classes out of the router lib (~15KB)
(more SKM prep)
* Message, I2PSession, SessionKeyManager, Console:
Prep for SessionKeyManager work in the router -
Fix up SKM renderStatusHTML(); add debug.jsp to see it;
Redefine getClientSessionKeyManager();
More cleanups
* Ministreaming: Kill deprecation warnings
* profiles.jsp: Bulletproofing, less memory usage
* Streaming, I2PSession:
Prep for SessionKeyManager work in the router -
Comment out, deprecate, and javadoc for unused keys and tags,
they are vestiges of end-to-end crypto
* Updates: Verify zip at startup before extracting
* Wrapper: Take a couple fields out of the log so it's narrower
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
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
2009-08-20 zzz
* Config files:
- Add some path and encoding help
* configclients.jsp: Add full path to config file
* configpeer.jsp: Limit max displayed banned IPs
* Console:
- Don't display firewall warning unless it's real
- Cleanups
* DataHelper, I2PTunnel, Router:
- Save config files in UTF-8 rather than the default encoding,
since we read them in UTF-8!
* eepsite_index_de.html: localhost -> 127.0.0.1
* i2psnark: Add size total
* I2PTunnel:
- Make IRC Proxy non-shared, delayed-start, close-on-idle
for new users, for the anonymity benefits (see "Shared Clients,
Correlation and Collusion" http://zzz.i2p/topics/217 )
- Remove "experimental" flag on new client options
* Jetty build: More clean targets
* jetty.xml: Change encoding to UTF-8
* jobs.jsp: Cleanup
* logs.jsp: Add system encoding
* Ministreaming: Cleanups, deprecation, move demos out of the lib
* netdb.jsp: Flags for leases
* NTCP: Clean up clock skew shitlist message
* profiles.jsp:
- Rename the Failing column
- Reduce the time cutoff again to 90m (was 2h)
* readme*html: localhost -> 127.0.0.1
* Router: Don't do some things when we are shutting down
* Shitlist: Clean up expire message
* Stats:
- Fix BufferedStatsLog so it works at all
- Don't instantiate BufferedStatsLog unless stats.logFilters
property is defined (restart now required to enable logging)
This eliminates the StatLogWriter thread and a decent
amount of memory.
- Move two CLI classes out of the lib
- Commment out places where getStatLog() isn't checked for null
- Cleanups
* Transports: Lower conn limit factor to 50 (was 60)
* Update:
- Fix problems where a requested unsigned update would actually
kick off a signed update
- Fix problem when policy set to notify, and clicking
check for update, incorrectly causing unsigned update download
and bad messages
- Verify zip integrity of unsigned updates
- Move zip files to router dir, not base dir
- More tweaks and cleanup
* VMCommSystem fixups
* WorkingDir: Ensure modified files are processed with UTF-8 encoding
* XmlPull: Remove, unused.
2009-08-19 sponge
* Java code to set Router Console password for dr|z3d
2009-08-18 dr|z3d
* Fixes for sidepanel
* Overhauled classic theme for i2ptunnels
* First stage of code validation to fix broken and "illegal" code
* Multifarious other UI tweaks and fiddles.
2009-08-15 sponge
* Merge in dr|z3d and my own html fixes for router console java and jsp
files so that Opera (and now IE?) doesn't puke anymore on the missing
and misplaced HTML tags.
* Optimized all jsp files so that they are shorter to save space, which
is then used to fix the broken HTML. We should break even space-wise.
* Bump to -13.
2009-08-11 sponge
* Code Janitor time! Many fixes and documenting fixes that should be
done in the future. for the most part, this is a general code cleanup.
* On smaller/embedded systems, the "final" keyword cleanups will have
more of an impact than on larger systems.
* Document missing hashCode() methods.
* Unhide more variables to make code easier to read.
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
1314
1315
1316
1317
1318
1319
1320
2009-08-11 zzz
* Android:
- Merge in the branch
- Build instructions in the android/ dir
- Rename HMac to I2PHMac to avoid android lib conflicts
- Configurable number of PRNG buffers in AsyncFortunaStandalone
(router.prng.buffers=16) to control memory use - these
are 256KB each.
- Configurable size of the DecayingBloomFilters
(router.decayingBloomFilterM=23) to control memory use - there
are 4 pairs of these (8 total), each 2**(M-3) bytes,
or 8MB total for M=23.
- There's at least two unsolved fatal problems:
1) Most of the routerinfo signature verifications fail,
including our own
2) It randomly dies after a while
* Console:
- Rename the shitlist and the blocklist
- Try to reduce servlet problems on iframe
- Select server or client icon for local dests
* EepHead: New
* Move StatsGenerator from router to routerconsole
* Move the unused AdminManager from router to the apps directory
* NetDb stats: Hide part. tunnel total events, effective next release
* Router: Comment out dead oldconsole code
* Updater:
- Add new unsigned update option, triggered by
last-modified date, using the new EepHead.
Buttons still are not hidden after download complete.
- Make the .sud updater use the temp dir when proxied
- Several cleanups
2009-08-11 dr|z3d
* Extensive sidepanel overhaul
- Ensure all sidepanel headings link to pertinent pages
- First stage of enhanced Local Destinations sub-panel presentation
- Move Configuration, Help, and I2PTunnel manager links to headings
- Add tooltips to all linked content; table content next in line
2009-08-07 dr|z3d
* summarynoframe.jsp
- Main content now tabulated for better presentation
- Headings now more prominent
- Pruning where necessary of text strings
* Console themes (light/dark/classic)
- Ensure functionality with new sidepanel layout
- Custom hacks for IE/classic
- Enhanced form/button presentation
1338
1339
1340
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
2009-08-07 zzz
* build.xml:
- Try to automate the release process
- Take jetty back out of the updater after 4 releases
* Console:
- Add a custom error page
- Don't count ourselves in known peers
- Hide update button when shutting down
- Increase skew warning threshold to 3s (was 100ms)
- Remove UTC time from summary bar
- Truncate long dest names
- Try to reduce servlet problems on index page
* Core:
- Catch unzip fd leaks on error
- Move 2 test classes out of the lib
* Eepsite:
- Quote the jetty.xml path in clients.config,
and adjust the migration function, to fix the
eepsite-won't-start bug on windows
* HTTP Proxy:
- Restore the localhost error message
- Catch 127.0.0.1:xxxx addresses too
* I2PTunnel:
- Move the privkey files from the app dir to the
config dir, in preparation for splitting the two
dirs by default
* Ministreaming:
- Make getInt() static
- Move the big TestSwarm class out of the lib
* NetDb stats: Post-release cleanup
* PersistentKeyRing: Fix broken storage of keys in config file
* Router: Move the WorkingDir class from i2p.jar to router.jar
* Streaming: New option i2p.streaming.answerPings (default true)
* Timestamper: Don't start thread if not enabled
* Wrapper:
- Extend timeout to 20s (was 5s)
- Shorten ping interval to 5m (was 10m)
2009-08-03 dr|z3d
* Extensive update to the Classic theme; custom css hacks for IE.
2009-08-02 dr|z3d
* Better support for Internet Explorer/classic theme.
* Incremental improvements to classic theme.
* More UI tweaks and fiddles.
2009-07-31 dr|z3d
* Resolve anomalous buttons and text fields in console ui.
* Enhance presentation of data in /peers.jsp.
* Fix themes issue with horizontal width of radio/checkbox icons.
* Other cosmetic UI enhancements.
* 2009-07-31 0.7.6 released
2009-07-31 zzz
* Update versions, package release
* Fix snark.css link
* Revert graph antialias enable
* Remove <center> from iframe head
* Fix tunnels.jsp HTML
* Prevent linux-only installer screen from displaying on windows
2009-07-27 zzz
* Add flag dimensions to speed up profiles.jsp rendering
* Catch i2psnark create torrent with no data entered error
http://forum.i2p/viewtopic.php?t=3763
* Fix typos in proxy error files
2009-07-26 zzz
* Add wrapper.config and i2prouter comments for 'portable'
* Recognize same base and config dir in WorkingDir
* Reformat XInfoPanel in installer for clarity
2009-07-25 dr|z3d
* Enhance the layout of /graphs.jsp
* Fix some of the irks in I2PSnark UI.
* Ongoing tweaks and fiddles to the themes' 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-23 sponge
* Fix jdk 1.6izm in BOB as per zzz
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.
2009-07-15 zzz
* Console:
- Make light the default theme
- Convert readme_zh.html from GB2312 to UTF-8
* Installer: Don't launch the router from the postinstall.sh script
on linux anymore; add a panel to the installer to provide launch instructions.
2009-07-15 sponge
* Slackware SlackBuild fixes.
2009-07-14 dr|z3d
* Increment to 0.7.5-10
* Tidy up layout of readme.* files.
* Work on console css to make it more Opera/webkit friendly.
* Other cosmetic tweaks.
2009-07-13 zzz
* Build: Add readme*.html files to the udpater
* Build Handler: Don't reject for conn limits if class O,
under the assumption that they are already talking
to most of the routers, so there's no reason to reject. This may drive them
to their conn. limits, but it's hopefully a temporary solution to the
tunnel build congestion. As the net grows this will have to be revisited.
* Throttle: Increase default max tunnels to 3000,
to give us more capacity during congestion
* Tunnels: Change the default variance from 1 to 0.
Under the one-packet-enough theory, and the fact that most
tunnels in a x+1 pool are of length x, variable lengths
don't really help that much. Also, a default of 1 led
to all sorts of problems with iMule/SAM, who was not
setting the variance properties.
This will affect exploratory tunnels for new users,
and those that have never saved a change on configtunnels.jsp,
and iMule users 1.4.5 and earlier.
2009-07-12 zzz
* Add configui.jsp
* orange flash remove take 2
2009-07-11 zzz
* netdb.jsp: Fix bad tag causing orange mouseovers
2009-07-11 dr|z3d
* More enhancements to the router console, consolidation of the
light and dark themes.
- Apply new themes with routerconsole.theme=light/dark/classic
added to advanced config.
2009-07-11 zzz
* Build Handler: Drop rather than reject requests when near
conn limits and the next hop is not connected, to reduce
connection congestion
* Console: Force IE to the classic theme
* I2PSnark:
- Bring back details links for Postman2 B64 torrents
* I2PTunnel:
- Make reduce-on-idle the default for all the shared clients
for new installs (15m)
* Profile Organizer:
- Allow NTCP-only peers in inbound tunnels
* Transports:
- Move from a single connection limit threshold (80%) to
two (75% and 87%), and only start rejecting tunnels
at the higher threshold, to increase build success
- Move some limit methods from the transports to TransportImpl
- Add limit methods with a threshold argument
- Increase default SSU conn limits a little more
* 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!
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
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
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
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.
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
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
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
2009-06-12 zzz
* Console:
- Move the console css from default.css in the .war to docs/themes/console/console.css,
and support console themes in the main console with routerconsole.theme=foo
- Remove unused NoticeHelper
* Installer:
Upgrade to izpack 4.3.0 and add a short script to fix Vista install problems.
(previous izpack was 3.7.2 from 2005-04-22)
izpack 4.3.0 from :
http://dist.codehaus.org/izpack/releases/4.3.0/IzPack-install-4.3.0.jar
SHA1 f06da6b26ac2c68fed64ab38980352989b8d8841
(no signatures or sha1sums found on website, and the jar is unsigned)
License: Apache 2.0
upack izpack:
java -jar IzPack-install-4.3.0.jar
or
java -jar IzPack-install-4.3.0.jar -console
get the standalone-compiler.jar from the installation lib/ directory:
SHA1 6d2b4a5657bfb864a333b1c4b1c0f8223aa57d80
(no signatures or sha1sums found on website, and the jar is unsigned)
This fixes the bug with the install windows centered in all the
workspaces, not the current workspace. And who knows what other
bugs in the last 4 years.
To fix Vista (and presumably Windows 7) permissiom problems,
add a run-privileged flag for those, and run the new fixperms.bat
which calls icacls to add the privileges to the install directory.
Add support for 6 more language packs found in the new release.
Change from ISO3 codes to native language names.
Disable creation of the i2p.tar.bz2 file in build.xml
(distributed as i2pheadless-0.7.x.tar.bz2), as izpack 4.3.0 now
supports headless installation with java -jar i2pinstall.exe -console.
Update INSTALL.txt and INSTALL-headless.txt accordingly.
- Add install and temp path substitution to wrapper.config and
i2prouter on install
- Change the wrapper.config classpath to one line: lib/*.jar
This means we lose control of classpath load order, so move the windows installer
jars copy.jar, delete.jar, and exec.jar to a new installer/ directory so
these jars won't be in the classpath or potentially conflict, since
copy.jar and delete.jar include FileUtil.class, and we don't want to have
to remember to add them to the updater if we ever change FileUtil.class.
Delete the installer/ directory in postinstall.sh since it is windows-only.
* Watchdog: Only try to dump threads if there is a wrapper
and we aren't on windows
* 2009-06-12 0.7.4 released
2009-06-12 Complication
* Update versions, package release
2009-06-09 zzz
* NTCP: Fix startup race NPE (thanks postman!)
2009-06-08 sponge
* Last commit for this cycle. All debugging except for WARN removed.
I can use the visit command to debug now anyway.
2009-06-08 sponge
* Removed BOB debugging as-per zzz
2009-06-08 sponge
* Fixed NPE and some other goofups in BOB.
* BOB bump version
2009-06-07 zzz
* Build file:
- Add updaterWithJettyFixesAndGeoIP, use it in pkg for one release
- Cleanups
* Console:
- netdb.jsp cleanup
- tunnels.jsp cleanup
* ExploratoryPeerSelector:
- Limit to connected peers when near connection limit
* Timestamper:
- Use locale country if geoip unavailable
* Transport:
- Lower min NTCP idle time to 3m (was 5m)
- Increase SSU conn limit by 33%
* UPnP: Fix deprecation warning
* Watchdog:
- Defang him again
2009-06-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!
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
- 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
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
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)
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
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
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
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-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!
2253
2254
2255
2256
2257
2258
2259
2260
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
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-03 sponge
* Fix broken dependencies for BOB.jar
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404
2405
2406
2407
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
2497
2498
2499
2500
2501
2502
2503
2504
2505
2506
2507
2508
2509
2510
2511
2512
2513
2514
2515
2516
2517
2518
2519
2520
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
2521
2522
2523
2524
2525
2526
2527
2528
2529
2530
2531
2532
2533
2534
2535
2536
2537
2538
2539
2540
2541
2542
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 :-)
2550
2551
2552
2553
2554
2555
2556
2557
2558
2559
2560
2561
2562
2563
2564
2565
2566
2567
2568
2569
2570
2571
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)
2576
2577
2578
2579
2580
2581
2582
2583
2584
2585
2586
2587
2588
2589
2590
2591
2592
2593
2594
2595
2596
2597
2598
2599
2600
2601
2602
2603
2604
2605
2606
2607
2608
2609
2610
2611
2612
2613
2614
2615
2616
2617
2618
2619
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
2627
2628
2629
2630
2631
2632
2633
2634
2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
2646
2647
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
2648
2649
2650
2651
2652
2653
2654
2655
2656
2657
2658
2659
2660
2661
2662
2663
2664
2665
2666
2667
2668
2669
2670
2671
2672
2673
2674
2675
2676
2677
2678
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
2679
2680
2681
2682
2683
2684
2685
2686
2687
2688
2689
2690
2691
2692
2693
2694
2695
2696
2697
2698
2699
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
2700
2701
2702
2703
2704
2705
2706
2707
2708
2709
2710
2711
2712
2713
2714
2715
2716
2717
2718
2719
2720
2721
2722
2723
2724
2725
2726
2727
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.
2728
2729
2730
2731
2732
2733
2734
2735
2736
2737
2738
2739
2740
2741
2742
2743
2744
2745
2746
2747
2748
2749
2750
2751
2752
2753
2754
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
2755
2756
2757
2758
2759
2760
2761
2762
2763
2764
2765
2766
2767
2768
2769
2770
2771
2772
2773
2774
2775
2776
2777
2778
2779
2780
2781
2782
2783
2784
2785
2786
2787
2788
2789
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
2860
2861
2862
2863
2864
2865
2866
2867
2868
2869
2870
2871
2872
2873
2874
2875
2876
2877
2878
2879
2880
2881
2882
2883
2884
2885
2886
2887
2888
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
2908
2909
2910
2911
2912
2913
2914
2915
2916
2917
2918
2919
2920
2921
2922
2923
2924
2925
2926
2927
2928
2929
2930
2931
2932
2933
2934
2935
2936
2937
2938
2939
2940
2941
2942
2943
2944
* 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
3145
3146
3147
3148
3149
3150
3151
3152
3153
3154
3155
3156
3157
3158
3159
3160
3161
3162
3163
3164
3165
* 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
3361
3362
3363
3364
3365
3366
3367
3368
3369
3370
3371
3372
3373
3374
3375
3376
3377
3378
3379
3380
3381
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,
3609
3610
3611
3612
3613
3614
3615
3616
3617
3618
3619
3620
3621
3622
3623
3624
3625
3626
3627
3628
3629
3630
3631
3632
3633
3634
3635
3636
based on XOR distance from a random hash
separately generated for each tunnel pool
2008-03-07 zzz
* Naming: Optimize lookups for a destkey
* ProfileOrganizer, TunnelPoolSettings, ClientPeerSelector:
- Prevent peers with matching IPs from joining same tunnel.
Match 0-4 bytes of IP (0=off, 1=most restrictive, 4=least).
Default is 2 (disallow routers in same /16).
Set with router.defaultPool.IPRestriction=x
- Comment out unused RebuildPeriod pool setting
- Add random key to pool in preparation for XOR peer ordering
* SusiMail: Add 'Create Account' link
* TunnelDispatcher: Change a common wtf error to a warn
2008-03-05 zzz
* Naming: Make HostsTxt the sole default NamingService
(was Meta = PetName + HostsTxt)
* Naming: Add two new experimental NamingServices, EepGet and Exec,
not enabled by default -
see source comments in core/java/src/net/i2p/client/naming
for configuration instructions
* i2psnark: Don't do a naming lookup for Base64 destkeys
* i2psnark: Add a StartAll button
* Stats: Add code to disable most stats to save memory.
Set on configstats.jsp or set stat.full=false to disable the stats.
(true by default for now)
2008-03-09 Complication
* Give the Jetty build file ability to ask permission
before downloading the Jetty archive from the web,
and to verify its SHA1 + MD5 hashes. Adjust the main build file
in accordance with this change.
* Improve the release checklist.
* 2008-03-09 0.6.1.32 released
2008-03-07 zzz
* Update news and version numbers
2008-03-01 zzz
* Fix netdb.knownLeaseSets count reported by floodfill routers
(was broken by -3)
2008-02-27 zzz
* i2ptunnel: Add 3-hop option to edit.jsp to match configtunnels.jsp
* i2psnark: Remove orion and gaytorrents from default tracker list
* Remove orion from jump list and from eepsite_index.html
* Jbigi: Change jbigi version to 4.2.2 in build scripts - tested by amiga
* Capitalize OutboundMessageDistributor job name
* TunnelPool: Add a warning if all tunnels are backlogged
2008-02-26 zzz
* Reintroduce NTCP backlog pushback, with switch back to
previous tunnel when no longer backlogged
* Catch an nio exception in an NTCP logging statement if loglevel is WARN
* IRC Proxy: terminate all messages with \r\n (thanks TrivialPursuit!)
2008-02-21 zzz
* Raise inbound default bandwidth to 32KBps
* Fix config.jsp that showed 0KBps share bandwidth by default
2008-02-19 zzz
* Addressbook: Disallow '--' in host names except in IDN,
add some reserved host names
* I2PTunnel: Clarify edit form
* NetDb: Remove many stats from netDb, effective as of .32
* profiles.jsp: Display capabilities
* Tunnels: Enforce max tunnel length of 8, catch an index error
http://forum.i2p/viewtopic.php?t=2561
2008-02-16 zzz
* Fix race in TunnelDispatcher which caused
participating tunnel count to seesaw -
should increase network capacity
* Leave participating tunnels in 10s batches for efficiency
* Update participating tunnel ratestat when leaving a tunnel too,
to generate a smoother graph
* Fix tunnel.participatingMessageCount stat to include all
participating tunnels, not just outbound endpoints
* Simplify Expire Tunnel job name
2008-02-13 zzz
* PersistentDataStore: Write out 300 records every 10 min
rather than 1 every 10 sec;
Don't store leasesets to disk or read them in
* Combine rates for pools with the same length setting
in the new tunnel build algorithm
* Clarify a log message in the UpdateHandler
2008-02-13 zzz
* Make graphs clickable to get larger graphs
* Change SimpleTimer CRIT to a WARN, increase threshold
* Checklist update
2008-02-11 welterde
* Fix an NPE in UDP http://forum.i2p/viewtopic.php?t=2545
2008-02-10 zzz
* Add new tunnel build algorithm (preliminary)
* Change NTCP backlogged message from error to warning
* Checklist updates
* 2008-02-10 0.6.1.31 released
2008-02-10 Complication
* Update news and version numbers
2008-02-06 zzz
* build.xml: Add some apps to javadoc
* checklist.txt: Add some things
* news.xml: make links relative
* runplain.sh: Add some comments
* wrapper.config: Add some comments
2008-02-05 Complication
* Change the dates too (sorry for such forgetfulness!)
2008-02-04 Complication
* Also use the new key for checking, and add it into news.xml
2008-02-04 Complication
* Added my release signing key into TrustedUpdate.java
2008-01-31 zzz
* NewsFetcher: Change fetch failed from error to warning
* installer: Fix URL and "email"
* checklist.txt: New release checklist
2008-01-29 zzz
* Addressbook: Change default subscription
* ConfigUpdateHandler: Change default news URL
* initialNews.xml: Update version to .31
* news.xml: More updates
* hosts.txt: Add i2p-projekt.i2p
* readme.html: More URL updates
* SusiDNS: Change references to default subscription
2008-01-28 zzz
* news.xml: Updates, still preliminary
* ReseedHandler: Change default URL
* i2ptunnel.config: Change default outproxies
* readme.html: Change *.i2p.net URLs
* help.jsp: Change *.i2p.net URLs
* eepsite_index.html: Change stats.i2p addressbook subscription URL
* hosts.txt: Add krabs.i2p, true.i2p, www.i2p2.i2p
* 2008-01-28 0.6.1.30-20 converted from CVS to MTN
2008-01-08 zzz
* addressbook: Limit size of subscribed hosts.txt,
don't save old etag or last-modified data
* EepGet: Add some logging,
enforce size limits even when size not in returned header,
don't return old etag or last-modified data,
don't call transferFailed listener more than once
* Sign my update signing key
* NewsFetcher: add last-modified support, reduce number of retries
* Error pages: add icon and logo,
clarify 'destination not found' and 'proxy not found' pages
2008-01-07 zzz
* profiles.jsp formatting cleanup
* NTCP: Reduce max idle time from 60m to 20m
* NTCP: Fix idle time on connections with zero messages,
correctly drop these connections
2008-01-03 zzz
* addressbook: Do basic validation of hostnames and destkeys
* susidns: Add support for the private addressbook,
update the text and links somewhat
2008-01-02 zzz
* Add stats.i2p to the jump list
* Impose 20MB limit on POSTs and catch OOMs in POST
* eepsite_index.html: add stats.i2p services
* addressbook: log source of new keys; disallow dests > 516 bytes
* addressbook: convert hostnames to lower case to prevent duplicates
* susidns: generalize references to orion
* Allow commas in router.trustedUpdateKeys and router.updateURL again
2007-12-26 Complication
* Improve reseed handler (less repetitive code,
avoid reporting errors when less than 10% of fetches fail)
2007-12-26 Complication
* Escape both CR, LF and CR LF line breaks in Router.saveConfig()
and unescape them in DataHelper.loadProps() to support
saving and loading config properties with line breaks
* Change the update URLs textbox into a textarea like keys have,
so different URLs go on different lines
* Modify TrustedUpdate to provide a method which supplies a key list
delimited with CR LF line breaks
* Modify DEFAULT_UPDATE_URL to supply a default URL list
delimited with CR LF line breaks
* Modify selectUpdateURL() to handle URL lists
delimited by any kind of line breaks
* Start saving trusted update keys
* Improve formatting on configupdate.jsp
2007-12-22 zzz
* Add support for multiple update URLs
* Change default for update to use i2p proxy,
add several URLs as defaults
* Enable trusted key form on configupdate.jsp
* Clarify the 'destination not found' error page
2007-12-16 zzz
* i2psnark: remove anonymitytracker from default list
2007-12-02 Complication
* Commit SAM v2 patch from mkvore (thank you!)
* Minor reformatting to preserve consistent whitespace
in old SAM classes (new classes unaltered)
2007-12-01 Complication
* Separate the checks "does Jetty .zip file need downloading"
and "does Jetty .zip file need extracting" in the Jetty buildfile.
First download (unless already done), then extract (unless done).
2007-11-26 zzz
* i2psnark: add timeout for receive inactivity
2007-11-24 zzz
* i2psnark: increase streaming lib write timeout to 240 sec and change
timeout action from "ping" to "disconect", as the fix in .30 to
honor options on outbound connections led to hung outbound connections
(bitfield never transmitted, connection never dropped)
2007-10-11 zzz
* IRC Proxy: Fix several possible anonymity holes:
- Block CTCP in NOTICE messages
- Block CTCP anywhere in PRIVMSG and NOTICE, not just at first character
- Check for lower case commands
(Thanks sponge!)
2007-10-07 jrandom
* back out the NTCP backlog pushback, as it could be used to mount an
active anonymity attack.
2007-10-07 Complication
* Fix an issue in EepGet whereby sending of "etag" and "lastModified" headers
broke retrying.
2007-09-27 zzz
* Implement pushback of NTCP transport backlog to the outbound tunnel selection code
* Clean up the NTCP and UDP tables on peers.jsp to be consistent,
fix some of the sorting
2007-09-22 zzz
* Send messages for the same destination out the same outbound
tunnel to reduce out-of-order delivery.
2007-09-19 zzz
* i2psnark: Fix broken multifile torrent Delete;
cleanup Storage resources in AddTorrent;
don't autostart torrent after Create
2007-09-18 zzz
* eepsite_index.html: Add links to trevorreznik address book
* streaming lib: Fix SocketManagerFactory to honor options on outbound connections
* streaming lib: Fix setDefaultOptions() when called with a ConnectionOptions parameter
* i2psnark: Don't make outbound connections to already-connected peers
* i2psnark: Debug logging cleanup
2007-09-14 zzz
* eepget: Increase header timeout to 45s
* HTTP proxy: Return a better error message for localhost requests
* tunnels: Fix PooledTunnelCreatorConfig memory leak
2007-09-09 zzz
* eepget: Add support for Last-Modified and If-Modified-Since
* addressbook: Finish incomplete support for Last-Modified
2007-09-08 zzz
* eepget: Copy over SocketTimeout.java file from syndie
2007-09-07 jrandom
* eepget: Merge timeout support from syndie
2007-08-12 zzz
* readme.html - Add inproxy.tino.i2p, replace search.i2p with eepsites.i2p,
tweak the eepsite and troubleshooting sections
2007-08-11 zzz
* Add stats for individual tunnel rates (nice when graphed)
* i2psnark: Fix outbound tunnel nickname
2007-08-05 Complication
* Update the sharing calculator on config.jsp
and explain the trade-off even more thoroughly.
2007-08-04 Complication
* Lower the threshold between the K and L bandwidth class,
so that K is now < 12 KB/s, instead of <= 16 KB/s.
Hopefully this lets people with 128 kbit/s (16 KB/s) upload lines
participate in routing, if they keep the default share percentage.
2007-07-16 zzz
* i2psnark: Add tooltip info for choked/uninterested
2007-07-16 zzz
* Make selection of graphed data configurable via configstats.jsp,
remove most of the default graphs to save some memory
2007-07-15 zzz
* Add current values to graph legends
* Fix up previous Rate fix to check for divide by zero
2007-07-14 Complication
* Take the post-download routerInfo size check back out of ReseedHandler,
since it wasn't helpful, and a lower limit caused false warnings.
* Give EepGet ability to enforce a min/max HTTP response size.
* Enforce a maximum response size of 8 MB when ReseedHandler
downloads into a ByteArrayOutputStream.
* Refactor ReseedHandler/ReseedRunner from static to ordinary classes,
change invocation from RouterConsoleRunner accordingly.
* Add an EepGet status listener to ReseedHandler to log causes of reseed failure,
provide status reports to indicate the progress of reseeding.
* Enable icon for default eepsite, and the index page
of the router console (more later).
2007-07-14 zzz
* Clean up graphs.jsp - set K=1024 where appropriate,
output image sizes in html, catch ooms, other minor tweaks
* Fix current event count truncation which fixes graphs with low
60-sec event counts displaying high values
(bw.* and router.* graphs for example were 1.5x too high)
Affects all "events per period" (non-lifetime) counts.
2007-07-09 zzz
* i2psnark: give a better error message for a non-i2p torrent
2007-07-07 zzz
* Add auto-detect IP/Port to NTCP. When enabled on config.jsp,
SSU will notify/restart NTCP when the external address changes.
Now you can enable inbound TCP without a static IP or dyndns service.
2007-07-04 zzz
* Display calculated share bandwidth and remove load testing
on config.jsp
2007-07-01 zzz
* Replace broken option i2np.udp.alwaysPreferred with
i2np.udp.preferred and adjust UDP bids; possible settings are
"false" (default), "true", and "always".
Default setting results in same behavior as before
(NTCP is preferred unless it isn't established and UDP is established).
Use to compare NTCP and UDP transports.
2007-06-27 jrandom
* fix for a streaming lib bug that could leave a thread waiting
indefinitely (thanks Complication!)
2007-06-16 Complication
* First pass on EepGet and ReseedHandler improvements,
please avoid use on routers which matter!
* Give EepGet ability of downloading into an OutputStream,
such as the ByteArrayOutputStream of ReseedHandler.
* Detect failure to reseed better, report it persistently
and more verbosely, provide a link to logs
and suggest manual reseed.
2007-05-06 Complication
* Fix the build.xml file, so the preppkg build target won't try copying files
which became deprecated with the old Syndie (thanks for alerting, itsu!)
2007-03-31 zzz
* Add trevorreznik jump server to the http proxy error page
* Add anonymity to the trackers supporting details links in i2psnark
2007-03-24 zzz
* Remove Syndie from build targets and navbar
2007-03-22 zzz
* i2psnark tracker handling tweaks:
- Add link to tracker details page (Postman only for now, requires bytemonsoon patch)
- Add Base URL to tracker list configuration
- Web page links built from tracker list Base URLs
- Only build and sort tracker list once
- Add anonymityWeb tracker to default list
- Add tooltip info for TrackerErrs
- Stop torrent if not registered with tracker
- Mark temp files as delete on exit
2007-03-18 zzz
* i2psnark: Cleanup some handling of saved partial pieces
* i2psnark: Put bit counting in Bitfield.java for efficiency
* i2psnark: Save torrent completion state in i2psnark.config
2007-03-13 zzz
* i2psnark: Make max total uploaders configurable (thanks Amiga4000!)
2007-03-12 jrandom
* dodge a race on startup (thanks zzz!)
2007-03-10 zzz
* Streaming lib: Change initial RTT deviation from RTT to RTT/2
(RFC 2988) to reduce early RTO values
2007-03-08 zzz
* i2psnark changes to improve upload performance:
* Implement total uploader limit (10)
* Don't timeout non-piece messages out
* Change chunk size to 32K (was 64K)
* Change request limit to 64K (was 256K)
* i2psnark: Disconnect from seeds when complete
2007-03-07 zzz
* Remove dynamic router keys from config.jsp
2007-03-07 zzz
* Streaming lib changes to improve upstream performance during congestion:
* Change min window size from 12 to 1
* Change max timeout from 10 to 45 sec
* Change initial timeout from 10 to 15 sec
* Change intial window size for i2psnark from 12 to 1
* Change slow start growth rate for i2psnark from 1/2 to 1
2007-03-04 zzz
* Update eepsite_index.html
2007-03-03 zzz
* Upgrade from Jetty 5.1.6 to 5.1.12 which fixes spaces in URL
* Add a updaterWithJetty build target
2007-03-03 zzz
* Implement priority sending for NTCP
* Disable trimForOverload() in tunnel BuildExecutor which
was preventing tunnel builds when outbound traffic was high
(i.e. most of the time when running i2psnark)
2007-02-28 zzz
* i2psnark: File reopen cleanup
2007-02-28 zzz
* i2psnark: Add peer details to web page
* 2007-02-15 0.6.1.27 released
2007-02-15 jrandom
* Limit the whispering floodfill sends to at most 3 randomly
chosen from the known floodfill peers
2007-02-14 jrandom
* Don't filter out KICK and H(ide oper status) IRC messages
(thanks Takk and postman!)
2007-02-13 jrandom
* Tell our peers about who we know in the floodfill netDb every
6 hours or so, mitigating the situation where peers lose track
of floodfill routers.
* Disable the Syndie updater (people should use the new Syndie,
not this one)
* Disable the eepsite tunnel by default
2007-01-30 zzz
* i2psnark: Don't hold _snarks lock while checking a snark,
so web page is responsive at startup
2007-01-28 zzz
* i2psnark: Don't hold sendQueue lock while flushing output,
to make everything run smoother
2007-01-27 zzz
* i2psnark: Fix orphaned Snark reader tasks leading to OOMs
2007-01-20 Complication
* Drop overlooked comment
2007-01-20 Complication
* Modify ReseedHandler to query the "i2p.reseedURL" property from I2PAppContext
instead of System, so setting a reseed URL in advanced configuration has effect.
* Clean out obsolete reseed code from ConfigNetHandler.
2007-01-20 zzz
* i2psnark: More choking rotation tweaks
* Improve performance by not reading in the whole
piece from disk for each request. A huge memory savings
on 1MB torrents with many peers.
2007-01-17 zzz
* Add new HTTP Proxy error message for non-http protocols
* Add note on Syndie index.html steering people to new Syndie
2007-01-16 zzz
* i2psnark: Fix crash when autostart off and
tcrrent started manually
2007-01-16 zzz
* i2psnark: Fix bug caused by last i2psnark checkin
(ConnectionAcceptor not started)
* Don't start PeerCoordinator, ConnectionAcceptor,
and TrackerClient unless starting torrent
2007-01-15 jrandom
* small guard against unnecessary streaming lib reset packets
(thanks Complication!)
2007-01-15 zzz
* i2psnark: Add 'Stop All' link on web page
* Add some links to trackers and forum on web page
* Don't start tunnel if 'Autostart' unchecked
* Fix torrent restart bug by reopening file descriptors
2007-01-14 zzz
* i2psnark: Improvements for torrents with > 4 leechers:
choke based on upload rate when seeding, and
be smarter and fairer about rotating choked peers.
* Handle two common i2psnark OOM situations rather
than shutting down the whole thing.
* Fix reporting to tracker of remaining bytes for
torrents > 4GB (but ByteMonsoon still has a bug)
2006-10-29 zzz
* i2psnark: Fix and enable generation of multifile torrents,
print error if no tracker selected at create-torrent,
fix stopping a torrent that hasn't started successfully,
add eBook and GayTorrents trackers to form,
web page formatting tweaks
2006-10-29 Complication
* Ensure we get NTP samples from more diverse sources
(0.pool.ntp.org, 1.pool.ntp.org, etc)
* Discard median-based peer skew calculator as framed average works,
and adjusting its percentage can make it behave median-like
* Require more data points (from at least 20 peers)
before considering a peer skew measurement reliable
2006-10-10 jrandom
* Removed the status display from the console, as its more confusing
than informative (though the content is still displayed in the HTML)
2006-10-08 Complication
* Add a framed average peer clock skew calculator
* Add config property "router.clockOffsetSanityCheck" to determine
if NTP-suggested clock offsets get sanity checked (default "true")
* Reject NTP-suggested clock offsets if they'd increase peer clock skew
by more than 5 seconds, or make it more than 20 seconds total
* Decrease log level in getMedianPeerClockSkew()
2006-09-29 zzz
* i2psnark: Second try at synchronization fix - synch addRequest()
completely rather than just portions of it and requestNextPiece()
2006-09-27 jrandom
* added HMAC-SHA256
* properly use CRLF with EepPost
* suppress jbigi/jcpuid messages if jbigi.dontLog/jcpuid.dontLog is set
* PBE session key generation (with 1000 rounds of SHA256)
* misc SDK helper functions
2006-09-26 Complication
* Take back another inadverent logging change in NTCPConnection
2006-09-26 Complication
* Take back an accidental log level change
2006-09-26 Complication
* Subclass from Clock a RouterClock which can access router transports,
with the goal of developing it to second-guess NTP results
* Make transports report clock skew in seconds
* Adjust renderStatusHTML() methods accordingly
* Show average for NTCP clock skews too
* Give transports a getClockSkews() method to report clock skews
Loading
Loading full blame...