- Nov 21, 2005
-
-
* IE doesn't strip SPAN from <button> form fields, so add in a workaround within I2PTunnel. * Increase the maximum SSU retransmission timeout to accomodate slower or more congested links (though SSU's RTO calculation will usually use a much lower timeout) * Moved the streaming lib timed events off the main timer queues and onto a streaming lib specific set of timer queues. Streaming lib timed events are more likely to have lock contention on the I2CP socket while other timed events in the router are (largely) independent. * Fixed a case sensitive lookup bug (thanks tino!) * Syndie cleanup - new edit form on the preview page, and fixed some blog links (thanks tino!)
-
- Nov 20, 2005
-
- Nov 17, 2005
-
- Nov 16, 2005
-
-
* More aggressive I2PTunnel content encoding munging to work around some rare HTTP behavior (ignoring q values on Accept-encoding, using gzip even when only identity is specified, etc). I2PTunnelHTTPServer now sends "Accept-encoding: \r\n" plus "X-Accept-encoding: x-i2p-gzip\r\n", and I2PTunnelHTTPServer handles x-i2p-gzip in either the Accept-encoding or X-Accept-encoding headers. Eepsite operators who do not know to check for X-Accept-encoding will simply use the identity encoding.
-
-
- Nov 15, 2005
-
- Nov 12, 2005
-
-
* Add filtering threads by author to Syndie, populated with authors in the user's addressbook * When creating the default user, add "http://syndiemedia.i2p/archive/archive.txt" to their addressbook, configured to automatically pull updates. (what other archives should be included?) * Tiny servlet to help dole out the new routerconsole themes, and bundle the installer/resources/themes/** into ./docs/themes/** on both install and update.
-
* Initial pass of the routerconsole revamp, starting with I2PTunnel and being progressively rolled out to other sections at later dates. Featuring abstracted W3C strict XHTML1.0 markup, with CSS providing layout and styling. * Implemented console themes. Users can create their own themes by creating css files in: {i2pdir}/docs/themes/console/{themename}/ and activating it using the routerconsole.theme={themename} advanced config property. Look at the example incomplete "defCon1" theme. Note: This is very much a work in progress. Folks might want to hold-off creating their own skins until the markup has solidified. * Added "routerconsole.javascript.disabled=true" to disable console client-side scripting and "routerconsole.css.disabled=true" to remove css styling (only rolled out in the i2ptunnel interface currently) * Fixed long standing bug with i2ptunnel client and server edit screens where tunnel count and depth properties would fail to save. Added backup quantity and variance configuration options. * Added basic accessibility support (key shortcuts, linear markup, alt and title information and form labels). * So far only tested on IE6, Firefox 1.0.6, Opera 8 and lynx.
-
- Nov 11, 2005
-
-
* Default Syndie to single user mode, and automatically log into a default user account (additional accounts can be logged into with the 'switch' or login pages, and new accounts can be created with the register page). * Disable the 'automated' column on the Syndie addressbook unless the user is appropriately authorized (good idea Polecat!)
-
- Nov 06, 2005
-
-
* Include SSU establishment failure in the peer profile as a commError, as we do for TCP establishment failures. * Don't throttle the initial transmission of a message because of ongoing retransmissions to a peer, since the initial transmission of a message is more valuable than a retransmission (since it has less latency). * Cleaned up links to SusiDNS and I2PTunnel (thanks zzz!)
-
- Nov 05, 2005
-
-
* Include the most recent ACKs with packets, rather than only sending an ack exactly once. SSU differs from TCP in this regard, as TCP has ever increasing sequence numbers, while each message ID in SSU is random, so we don't get the benefit of later ACKs implicitly ACKing earlier messages. * Reduced the max retransmission timeout for SSU * Don't try to send messages queued up for a long time waiting for establishment.
-
- Nov 04, 2005
-
- Nov 02, 2005
-
- Oct 31, 2005
-
- Oct 30, 2005
-
- Oct 29, 2005
-
-
* Improved the bandwidth throtting on tunnel participation, especially for low bandwidth peers. * Improved failure handling in SSU with proactive reestablishment of failing idle peers, and rather than shitlisting a peer who failed too much, drop the SSU session and allow a new attempt (which, if it fails, will cause a shitlisting) * Clarify the cause of the shitlist on the profiles page, and include bandwidth limiter info at the bottom of the peers page.
- Oct 28, 2005
-
-
* In Syndie, propogate the subject and tags in a reply, and show the parent post on the edit page for easy quoting. (thanks identiguy and CofE!) * Streamline some netDb query handling to run outside the jobqueue - which means they'll run on the particular SSU thread that handles the message. This should help out heavily loaded netDb peers.
-
- Oct 25, 2005
-
-
* Defer netDb searches for newly referenced peers until we actually want them * Ignore netDb references to peers on our shitlist * Set the timeout for end to end client messages to the max delay after finding the leaseSet, so we don't have as many expired messages floating around. * Add a floor to the streaming lib window size * When we need to send a streaming lib ACK, try to retransmit one of the unacked packets instead (with updated ACK/NACK fields, of course). The bandwidth cost of an unnecessary retransmission should be minor as compared to both an ACK packet (rounded up to 1KB in the tunnels) and the probability of a necessary retransmission. * Adjust the streaming lib cwin algorithm to allow growth after a full cwin messages if the rtt is trending downwards. If it is not, use the existing algorithm. * Increased the maximum rto size in the streaming lib. * Load balancing bugfix on end to end messages to distribute across tunnels more evenly.
-
- Oct 22, 2005
-
-
* Integrated GNU-Crypto's Fortuna PRNG, seeding it off /dev/urandom and ./prngseed.rnd (if they exist), and reseeding it with data out of various crypto operations (unused bits in a DH exchange, intermediary bits in a DSA signature generation, extra bits in an ElGamal decrypt). The Fortuna implementation under gnu.crypto.prng has been modified to use BouncyCastle's SHA256 and Cryptix's AES (since those are the ones I2P uses), and the resulting gnu.crypto.prng.* are therefor available under GPL+Classpath's linking exception (~= LGPL). I2P's SecureRandom wrapper around it is, of course, public domain.
-
- Oct 20, 2005
-
- Oct 19, 2005
-
-
* Ported the snark bittorrent client to I2P such that it is compatible with i2p-bt and azneti2p. For usage information, grab an update and run "java -jar lib/i2psnark.jar". It isn't currently multitorrent capable, but adding in support would be fairly easy (see PeerAcceptor.java:49) * Don't allow leaseSets expiring too far in the future (thanks postman)
-
* Bugfix for the auto-update code to handle different usage patterns * Decreased the addressbook recheck frequency to once every 12 hours instead of hourly. * Handle dynamically changing the HMAC size (again, unless your nym is toad or jrandom, ignore this ;) * Cleaned up some synchronization/locking code
-
- Oct 18, 2005
-
-
* Allow an env prop to configure whether we want to use the backwards compatible (but not standards compliant) HMAC-MD5, or whether we want to use the not-backwards compatible (but standards compliant) one. No one should touch this setting, unless your name is toad or jrandom ;) * Added some new dummy facades * Be more aggressive on loading up the router.config before building the router context * Added new hooks for apps to deal with previously undefined I2NP message types without having to modify any code. * Demo code for using a castrated router for SSU comm (SSUDemo.java)
- Oct 14, 2005
-
-
-
* Bundled dust's Sucker for pulling RSS/Atom content into SML, which can then be injected into Syndie with the Syndie CLI. * Bundled ROME and JDOM (BSD and Apache licensed, respectively) for RSS/Atom parsing. 2005-10-13 jrandom * SSU retransmission choke bugfix (== != !=) * Include initial transmissions in the retransmission choke, so that if we are already retransmitting a message, we won't send anything to that peer other than that message (or ACKs, if necessary)
- Oct 13, 2005
-
-
* Choke SSU retransmissions to a peer while there is already a retransmission in flight to them. This currently lets other initial transmissions through, since packet loss is often sporadic, but maybe this should block initial transmissions as well? * Display the retransmission bytes stat on peers.jsp (thanks bar!) * Filter QUIT messages in the I2PTunnelIRCClient proxy
- Oct 11, 2005
-
- Oct 10, 2005
-
-
* Implemented a new I2PTunnelIRCClient which locally filters inbound and outbound IRC commands for anonymity and security purposes, removing all CTCP messages except ACTION, as well as stripping the hostname from the USER message (while leaving the nick and 'full name'). The IRC proxy doesn't use this by default, but you can enable it by creating a new "IRC proxy" tunnel on the web interface, or by changing the tunnel type to "ircclient" in i2ptunnel.config. 2005-10-10 jrandom * I2PTunnel http client config cleanup and stats * Minor SSU congestion tweaks and stats * Reduced netDb exploration period
-
- Oct 09, 2005
-
-
* Now that the streaming lib works reasonably, set the default inactivity event to send a 0 byte keepalive payload, rather than disconnecting the stream. This should cut the irc netsplits and help out with other long lived streams. The default timeout is now less than the old timeout as well, so the keepalive will be sent before earlier builds fire their fatal timeouts.