I2P Address: [http://git.idk.i2p]

Skip to content
Snippets Groups Projects
  1. Aug 14, 2009
  2. Aug 11, 2009
    • sponge's avatar
      2009-08-11 sponge · 3fbff718
      sponge authored
          * 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.
      3fbff718
  3. Aug 02, 2009
    • zzz's avatar
      * Ministreaming: · d8d76fd3
      zzz authored
            - Make getInt() static
            - Move the big TestSwarm class out of the lib
      d8d76fd3
  4. Jul 16, 2009
    • sponge's avatar
      * ministreaming: · 5106c37a
      sponge authored
            - 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.
      5106c37a
  5. Jun 30, 2009
    • sponge's avatar
      2009-06-30 sponge · c7541f81
      sponge authored
          * 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.
      c7541f81
  6. May 05, 2009
  7. Apr 08, 2009
    • zzz's avatar
      * IPV6/localhost: · 0cfbe9c2
      zzz authored
            - 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
      0cfbe9c2
  8. Apr 04, 2009
  9. Apr 02, 2009
    • mkvore-commit's avatar
      SAM version 3 : · a4d16af9
      mkvore-commit authored
            - Raw and Datagram sessions implemented
            - option "SILENT=true" added to the stream protocol
            - java 6 warnings removed
         ministreaming :
            - java 6 warnings removed
         ministreaming and streaming :
            -  added functions : 
            	I2PServerSocket.waitIncoming(long timeout)
            	I2PServerSocket.accept(boolean block)
      a4d16af9
  10. Oct 19, 2008
  11. Oct 11, 2008
  12. Sep 27, 2008
  13. Sep 25, 2008
  14. Jul 16, 2008
  15. Sep 18, 2007
    • zzz's avatar
      2007-09-18 zzz · b7721790
      zzz authored and zzz's avatar zzz committed
          * 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
      b7721790
  16. Dec 30, 2005
    • jrandom's avatar
      2005-12-30 jrandom · 8e87ae08
      jrandom authored and zzz's avatar zzz committed
          * Small streaming lib bugfixes for the modified timeouts
          * Minor Syndie/Sucker RSS html fix
          * Small synchronization fix in I2PSnark (thanks fsm!)
      8e87ae08
  17. Jul 11, 2005
    • jrandom's avatar
      2005-07-11 jrandom · 9d5f16a8
      jrandom authored and zzz's avatar zzz committed
          * Reduced the growth factor on the slow start and congestion avoidance for
            the streaming lib.
          * Adjusted some of the I2PTunnelServer threading to use a small pool of
            handlers, rather than launching off new threads which then immediately
            launch off an I2PTunnelRunner instance (which launches 3 more threads..)
          * Don't persist session keys / session tags (not worth it, for now)
          * Added some detection and handling code for duplicate session tags being
            delivered (root cause still not addressed)
          * Make the PRNG's buffer size configurable (via the config property
            "i2p.prng.totalBufferSizeKB=4096")
          * Disable SSU flooding by default (duh)
          * Updates to the StreamSink apps for better throttling tests.
      9d5f16a8
  18. Jul 04, 2005
    • jrandom's avatar
      2005-07-04 jrandom · 18d3f5d2
      jrandom authored and zzz's avatar zzz committed
          * Within the tunnel, use xor(IV, msg[0:16]) as the flag to detect dups,
            rather than the IV by itself, preventing an attack that would let
            colluding internal adversaries tag a message to determine that they are
            in the same tunnel.  Thanks dvorak for the catch!
          * Drop long inactive profiles on startup and shutdown
          * /configstats.jsp: web interface to pick what stats to log
          * Deliver more session tags to account for wider window sizes
          * Cache some intermediate values in our HMACSHA256 and BC's HMAC
          * Track the client send rate (stream.sendBps and client.sendBpsRaw)
          * UrlLauncher: adjust the browser selection order
          * I2PAppContext: hooks for dummy HMACSHA256 and a weak PRNG
          * StreamSinkClient: add support for sending an unlimited amount of data
          * Migrate the tests out of the default build jars
      
      2005-06-22  Comwiz
          * Migrate the core tests to junit
      18d3f5d2
  19. Apr 20, 2005
    • jrandom's avatar
      2005-04-20 jrandom · a2c7c5a5
      jrandom authored and zzz's avatar zzz committed
          * In the SDK, we don't actually need to block when we're sending a message
            as BestEffort (and these days, we're always sending BestEffort).
          * Pass out client messages in fewer (larger) steps.
          * Have the InNetMessagePool short circuit dispatch requests.
          * Have the message validator take into account expiration to cut down on
            false positives at high transfer rates.
          * Allow configuration of the probabalistic window size growth rate in the
            streaming lib's slow start and congestion avoidance phases, and default
            them to a more conservative value (2), rather than the previous value
            (1).
          * Reduce the ack delay in the streaming lib to 500ms
          * Honor choke requests in the streaming lib (only affects those getting
            insanely high transfer rates)
          * Let the user specify an interface besides 127.0.0.1 or 0.0.0.0 on the
            I2PTunnel client page (thanks maestro^!)
      (plus minor udp tweaks)
      a2c7c5a5
  20. Mar 26, 2005
    • jrandom's avatar
      2005-03-26 jrandom · ebac4df2
      jrandom authored and zzz's avatar zzz committed
          * Added some error handling and fairly safe to cache data to the streaming
            lib (good call Tom!)
      ebac4df2
  21. Mar 17, 2005
    • jrandom's avatar
      2005-03-17 jrandom · a997a460
      jrandom authored and zzz's avatar zzz committed
          * Update the old speed calculator and associated profile data points to
            use a non-tiered moving average of the tunnel test time, avoiding the
            freshness issues of the old tiered speed stats.
          * Explicitly synchronize all of the methods on the PRNG, rather than just
            the feeder methods (sun and kaffe only need the feeder, but it seems ibm
            needs all of them synchronized).
          * Properly use the tunnel tests as part of the profile stats.
          * Don't flood the jobqueue with sequential persist profile tasks, but
            instead, inject a brief scheduling delay between them.
          * Reduce the TCP connection establishment timeout to 20s (which is still
            absurdly excessive)
          * Reduced the max resend delay to 30s so we can get some resends in when
            dealing with client apps that hang up early (e.g. wget)
          * Added more alternative socketManager factories (good call aum!)
      a997a460
    • jrandom's avatar
      2005-03-16 jrandom · 538dd07e
      jrandom authored and zzz's avatar zzz committed
          * Adjust the old speed calculator to include end to end RTT data in its
            estimates, and use that as the primary speed calculator again.
          * Use the mean of the high capacity speeds to determine the fast
            threshold, rather than the median.  Perhaps we should use the mean of
            all active non-failing peers?
          * Updated the profile page to sort by tier, then alphabetically.
          * Added some alternative socketManager factories (good call aum!)
      538dd07e
  22. Mar 01, 2005
    • smeghead's avatar
      big code cleanup to reduce number of compiler warnings · 2d15a421
      smeghead authored and zzz's avatar zzz committed
      2d15a421
    • jrandom's avatar
      2005-03-01 jrandom · 57d6a2f6
      jrandom authored and zzz's avatar zzz committed
          * Really disable the streaming lib packet caching
          * Synchronized a message handling point in the SDK (even though its use is
            already essentially single threaded, its better to play it safe)
          * Don't add new RepublishLeaseSetJobs on failure, just requeue up the
            existing one (duh)
          * Throttle the number of concurrent pending tunnel builds across all
            pools, in addition to simply throttling the number of new requests per
            minute for each pool individually.  This should avoid the cascading
            failure when tunnel builds take too long, as no new builds will be
            created until the previous ones are handled.
          * Factored out and extended the DataHelper's unit tests for dealing with
            long and date formatting.
          * Explicitly specify the HTTP auth realm as "i2prouter", though this
            alone doesn't address the bug where jetty asks for authentication too
            much.  (thanks orion!)
          * Updated the StreamSinkServer to ignore all read bytes, rather than write
            them to the filesystem.
      57d6a2f6
  23. Feb 16, 2005
    • jrandom's avatar
      2005-02-16 jrandom · 566a713b
      jrandom authored and zzz's avatar zzz committed
          * (Merged the 0.5-pre branch back into CVS HEAD)
          * Replaced the old tunnel routing crypto with the one specified in
            router/doc/tunnel-alt.html, including updates to the web console to view
            and tweak it.
          * Provide the means for routers to reject tunnel requests with a wider
            range of responses:
              probabalistic rejection, due to approaching overload
              transient rejection, due to temporary overload
              bandwidth rejection, due to persistent bandwidth overload
              critical rejection, due to general router fault (or imminent shutdown)
            The different responses are factored into the profiles accordingly.
          * Replaced the old I2CP tunnel related options (tunnels.depthInbound, etc)
            with a series of new properties, relevent to the new tunnel routing code:
              inbound.nickname (used on the console)
              inbound.quantity (# of tunnels to use in any leaseSets)
              inbound.backupQuantity (# of tunnels to keep in the ready)
              inbound.length (# of remote peers in the tunnel)
              inbound.lengthVariance (if > 0, permute the length by adding a random #
                                      up to the variance.  if < 0, permute the length
                                      by adding or subtracting a random # up to the
                                      variance)
              outbound.* (same as the inbound, except for the, uh, outbound tunnels
                          in that client's pool)
            There are other options, and more will be added later, but the above are
            the most relevent ones.
          * Replaced Jetty 4.2.21 with Jetty 5.1.2
          * Compress all profile data on disk.
          * Adjust the reseeding functionality to work even when the JVM's http proxy
            is set.
          * Enable a poor-man's interactive-flow in the streaming lib by choking the
            max window size.
          * Reduced the default streaming lib max message size to 16KB (though still
            configurable by the user), also doubling the default maximum window
            size.
          * Replaced the RouterIdentity in a Lease with its SHA256 hash.
          * Reduced the overall I2NP message checksum from a full 32 byte SHA256 to
            the first byte of the SHA256.
          * Added a new "netId" flag to let routers drop references to other routers
            who we won't be able to talk to.
          * Extended the timestamper to get a second (or third) opinion whenever it
            wants to actually adjust the clock offset.
          * Replaced that kludge of a timestamp I2NP message with a full blown
            DateMessage.
          * Substantial memory optimizations within the router and the SDK to reduce
            GC churn.  Client apps and the streaming libs have not been tuned,
            however.
          * More bugfixes thank you can shake a stick at.
      
      2005-02-13  jrandom
          * Updated jbigi source to handle 64bit CPUs.  The bundled jbigi.jar still
            only contains 32bit versions, so build your own, placing libjbigi.so in
            your install dir if necessary.  (thanks mule!)
          * Added support for libjbigi-$os-athlon64 to NativeBigInteger and CPUID
            (thanks spaetz!)
      566a713b
  24. Jan 26, 2005
    • smeghead's avatar
      2005-01-25 smeghead · 4fac2f10
      smeghead authored and zzz's avatar zzz committed
          * Tweaked some classes to enable gcj 3.4.3 to compile the router and
            supporting apps (except for the routerconsole which is still being
            investigated).
      4fac2f10
  25. Jan 17, 2005
    • jrandom's avatar
      2005-01-17 jrandom · 61f217c6
      jrandom authored and zzz's avatar zzz committed
          * Added meaningful support for adjusting the preferred message size in the
            streaming lib by setting the i2p.streaming.maxMessageSize=32768 (or
            whatever).  The other side will mimic a reduction (but never an increase).
          * Always make sure to use distinct ConnectionOption objects for each
            connection (duh)
          * Reduced the default ACK delay to 500ms on in the streaming lib
          * Only shrink the streaming window once per window
          * Don't bundle a new jetty.xml with updates
          * Catch another local routerInfo corruption issue on startup.
      61f217c6
  26. Jan 06, 2005
    • jrandom's avatar
      2005-01-05 jrandom · 48385644
      jrandom authored and zzz's avatar zzz committed
          * Handle unexpected network read errors more carefully (thanks parg!)
          * Added more methods to partially compare (DataHelper) and display
            arrays (Base64.encode).
          * Exposed the AES encryptBlock/decryptBlock on the context.aes()
          * Be more generous on the throttle when just starting up the router
          * Fix a missing scheduled event in the streaming lib (caused after reset)
          * Add a new DisconnectListener on the I2PSocketManager to allow
            notification of session destruction.
          * Make sure our own router identity is valid, and if it isn't, build a new
            one and restart the router.  Alternately, you can run the Router with
            the single command line argument "rebuild" and it will do the same.
      48385644
  27. Dec 11, 2004
    • jrandom's avatar
      2004-12-11 jrandom · 60f8d349
      jrandom authored and zzz's avatar zzz committed
          * Use a simpler and less memory intensive job for processing outbound
            client messages when the session is in mode=bestEffort.  We can
            immediately discard the data as soon as its sent the first time,
            rather than wait for an ack, since we will never internally resend.
          * Reduce some synchronization to avoid a rare deadlock
          * Replaced 'localhost' with 127.0.0.1 in the i2ptunnel config, and special
            case it within the tunnel controller.
          * Script cleanup for building jbigi/jcpuid
          * Logging
      60f8d349
  28. Dec 09, 2004
  29. Dec 04, 2004
    • jrandom's avatar
      2004-12-03 jrandom · 1a30cd5f
      jrandom authored and zzz's avatar zzz committed
          * Toss in a small pool of threads (3) to execute the events queued up with
            the SimpleTimer, as we do currently see the occational event
            notification spiking up to a second or so.
          * Implement a SAM client API in java, useful for event based streaming (or
            for testing the SAM bridge)
          * Added support to shut down the SAM bridge on OOM (useful if the SAM
            bridge is being run outside of the router).
          * Include the SAM test code in the sam.jar
          * Remove an irrelevent warning message from SAM, which was caused by
            perfectly normal operation due to a session being closed.
          * Removed some unnecessary synchronization in the streaming lib's
            PacketQueue
          * More quickly clean up the memory used by the streaming lib by
            immediately killing each packet's resend job as soon as it is ACKed (or
            cancelled), so that there are no longer any valid pointers to the
            (potentially 32KB) packet.
          * Fixed the timestamps dumped to stdout when debugging the PacketHandler.
          * Drop packets that would expand our inbound window beyond our maximum
            buffer size (default 32 messages)
          * Always read the ACK/NACK data from the verified packets received, even
            if we are going to drop them
          * Always adjust the window when there are messages ACKed, though do not
            change its size except as before.
          * Streamlined some synchronization in the router's I2CP handling
          * Streamlined some memory allocation in the SAM bridge
          * Default the streaming lib to disconnect on inactivity, rather than send
            an empty message.
      this still doesnt get the BT to where it needs to be, or fix the timeout problem,
      but i dont like having so many commits outstanding and these updates are sound
      1a30cd5f
  30. Nov 26, 2004
  31. Nov 25, 2004
    • jrandom's avatar
      2004-11-25 jrandom · 8bd99f69
      jrandom authored and zzz's avatar zzz committed
          * Revised the installer to include start menu and desktop shortcuts for
            windows platforms, including pretty icons (thanks DrWoo!)
          * Allow clients specified in clients.config to have an explicit startup
            delay.
          * Update the default install to launch a browser pointing at the console
            whenever I2P starts up, rather than only the first time it starts up
            (configurable on /configservice.jsp, or in clients.config)
          * Bugfix to the clock skew checking code to monitor the delta between
            offsets, not the offset itself (duh)
          * Router console html update
          * New (and uuuuugly) code to verify that the wrapper.config contains
            the necessary classpath entries on update.  If it has to update the
            wrapper.config, it will stop the JVM and service completely, since the
            java service wrapper doesn't reread the wrapper.config on JVM restart -
            requiring the user to manually restart the service after an update.
          * Increase the TCP connection timeout to 30s (which is obscenely long)
      ------------------------------------------------
      8bd99f69
  32. Nov 16, 2004
    • jrandom's avatar
      2004-11-16 jrandom · d943b499
      jrandom authored and zzz's avatar zzz committed
          * Clean up the propogation of i2psocket options so that various streaming
            libs can honor them more precisely
      d943b499
  33. Nov 10, 2004
    • jrandom's avatar
      *cough* · 6fc6866e
      jrandom authored and zzz's avatar zzz committed
      6fc6866e
    • jrandom's avatar
      2004-11-10 jrandom · 881524a5
      jrandom authored and zzz's avatar zzz committed
          * Allow loading the (mini)streaming connection options from the
            environment.
          * More defensive programming in the DSA implementation.
      881524a5
Loading