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

Skip to content
Snippets Groups Projects
history.txt 518 KiB
Newer Older
2011-12-12 zzz
  * ExploreJob: Tweaks to handle DatabaseLookupMessage changes
  * I2NP:
    - Deprecate unused stream methods and I2NPMessageReader since
      all transports provide encapsulation.
    - Don't throw IOE from byte array methods
    - Use cached null cert in GarlicClove
    - Add method to limit size of buffer to read
    - Don't check checksum at input, in most cases
zzz's avatar
zzz committed
    - Reuse checksum at output, for unmodified pass-through messages
      (but recalculating it now and logging on a mismatch for testing)
    - Fix DatabaseLookupMessage to internally store the don't include peers as
      a List, not a Set, so it doesn't get reordered and break the checksum
    - Log cleanup
  * NTCP:
    - Zero-copy and limit size when handing buffer to I2NP
    - Log hex dump message on I2NPMessageException, like in SSU
    - Don't close connection on I2NPMessageException
  * PortMapper: New service for registering application ports in the context
  * ReusableGZIPInputStream: Fix 3 major bugs, all present since 2005:
    - Payloads an exact multiple of 512 bytes failed to decompress
    - Data at the end of the stream could be lost
    - read() returned -1 when the data was 0xff
  * SearchState: generics and cleanups

2011-12-11 sponge
  * HTTP server tunnel, use log.WARN for 3 first minutes. (closes #460)

2011-12-10 kytv
  * Replace eepget's whitelist of accepted characters with the
    blacklist from i2psnark. (closes #562)

zzz's avatar
zzz committed
2011-12-09 zzz
  * Base64: Add decodestring command in main()
  * Console, i2psnark: More button CSS tweaks
  * I2NP:
    - Earlier detection and better logging of
      truncated TunnelGatewayMessage and DatabaseStoreMessage
    - Fix and enhance UnknownI2NPMessage implementation
    - Don't deserialize or verify the checksum of the
      embeddedI2NP message in the TunnelGatewayMessage
      at the IBGW, just use UnknownI2NPMessage and pass it along,
      except if zero hop; Still to do: similar thing at OBEP
    - Cleanups and javadoc
  * LeaseSet: Fix size calculations
  * UDP:
    - Fix major bug from 2005 that corrupted outbound messages
      that were an exact multiple of the fragment size.
    - Round expiration times when converting to seconds
    - Zero-copy of single-fragment messages in MessageReceiver
    - Optimizations, log tweaks, comments

2011-12-06 zzz
  * Router:
    - More refactoring tasks to their own files
    - Adjust some thread priorities
  * Susimail: Adjust login form sizes
  * Tunnels: Increase next hop send timeout
  * UDP: Fix major MTU bug introduced in 0.8.9.
    - Change large MTU from 1492 to 1484 and small from 608 to 620
      for encryption padding efficiency
    - Enforce sent MTU limit
    - Increase receive buffer size from 1536 to 1572 so that excessive-sized
      packets sent by 0.8.9-0.8.11 routers aren't dropped
    - Limit the max acks in a data packet
    - Limit the duplicate acks in successive data packets
    - Only include acks that will fit in the mtu in a data packet
    - Correctly remove acks from the pending set after they are sent,
      so they aren't sent repeatedly
    - Don't pad data packets unless necessary
    - Debug logging and javadocs

zzz's avatar
zzz committed
2011-12-04 zzz
  * Console:
    - Less icons on configclients.jsp
    - Fix some browsers breaking line on negative numbers
    - Tab CSS tweaks
  * i2psnark: Fix directories not always deleted when torrent is deleted
  * IRC Client: Lower log level for connect error to warn (thx echelon/sponge)
  * Tunnel RED:
    - Complete rework of participating traffic RED.
      Implement an accurate bandwidth tracker in FIFOBandwidthRefiller.
    - Fix drop priority of VTBM at OBEP
    - Lower drop priority of VTBRM at IBGW
    - Raise threshold from 95% to 120%
    - Remove unused things in HopConfig
  * UDP: Fix i2np.udp.allowLocal operation (thx Quizzers)

zzz's avatar
zzz committed
2011-12-02 zzz
  * Console:
    - Summary bar tweaks
    - Config nav CSS tabs
    - CSS cleanups from last checkin
  * Susimail:
    - Login screen tweaks
    - Cleanups, generics, static

zzz's avatar
zzz committed
2011-12-01 zzz
  * Console:
    - Split up config network page
    - CSS tweaks in summary bar
    - Spiff up the buttons
  * i2psnark:
    - Retry link on torrent download fail
    - Clear URL after clicking 'add torrent'
    - Message tweaks
    - CSS tweaks
  * IRC Server: Fix IOOBE (ticket #559)
  * Throttle: Update throttle status immediately on shutdown request;
              clear starting-up message after 20 minutes

zzz's avatar
zzz committed
2011-11-29 zzz
  * Random: Use new nextBytes(buf, off, len) for efficiency
  * Router: Refactor periodic tasks to their own files

zzz's avatar
zzz committed
2011-11-28 zzz
  * Specify locale in all toLowerCase() and toUpperCase() calls to
    avoid the "Turkish four i problem";
    replace most equalsIgnoreCase() calls too.
  * Update: Files listed in deletelist.txt will be deleted

2011-11-28 kytv
  * IRCClient: Add IRCop commands (and other safe commands) to the whitelist

zzz's avatar
zzz committed
2011-11-27 zzz
  * IRCClient: Outbound whitelist optimization
  * Reseed:
    - Restore i2pbote (ticket #516)
    - Remove r31453 (cert expiring, host soon to be shut down permanently)

zzz's avatar
zzz committed
2011-11-26 zzz
  * DCCServer: Socket error log fix
zzz's avatar
zzz committed
  * NTCP: Fix pumper NPE (ticket #555)
zzz's avatar
zzz committed

zzz's avatar
zzz committed
2011-11-23 zzz
  * CryptixAESEngine: Fix bogus bounds checks
  * NTCP:
    - More optimizations in recvEncrypted()
    - More efficient XOR
    - Reduce bandwidth stat update frequency
    - Check for repeated zero-length reads
  * RandomSource: Add new method getBytes(buf, offset, length)
  * Tunnel encryption: More efficient XOR

zzz's avatar
zzz committed
2011-11-21 zzz
  * NTCP Pumper:
    - Ensure failsafe pumper code gets run on schedule
    - Don't copy the read buffers
    - Adjust minimum read buffers based on memory
    - New i2np.ntcp.useDirectBuffer option (default false)
    - Mark peer unreachable when read failure is during establishment
    - Change some Reader Lists to Sets to avoid linear search
    - Log tweaks, debugging, new loop stats

zzz's avatar
zzz committed
2011-11-18 zzz
  * NTCP:
    - First cut at improving EventPumper performance (ticket #551)
    - Establishment timeout cleanup/concurrent
    - Remove some logging and stats
    - Switch some Queues from LBQ to CLQ
    - Static ByteBuffer cache

2011-11-16 zzz
  * Console: Add Jetty version to logs page
  * NTCP: Reduce log level for race (ticket #392)
  * NTCPConnection: Concurrent PrepBufs
  * OutNetMessage: Remove some fields and methods used only in NTCP debugging
  * Router: Move router.ping file from temp directory to config directory

zzz's avatar
zzz committed
2011-11-14 zzz
  * Console: Remove % chart at bottom of tunnels.jsp
  * Profiles: Only use same-country metric for countries with
    lots of I2P users
  * SusiDNS: Remove .jsp suffixes

2011-11-12 zzz
  * Installer: Fix Ukrainian translation (ticket #550) thx rndnick

2011-11-11 zzz
  * Console:
    - Less magic and fix img sizes, for speed and less artifacts while rendering
    - CSS tweaks

zzz's avatar
-1  
zzz committed
2011-11-09 zzz
  * Console: Add ability to hide news
  * I2PTunnel IRC Client: Don't filter PASS (ticket #549)
  * Licenses: Update information
  * Router: Clean up config map methods and uses
  * wrapper.config: Increase shutdown timeout

zzz's avatar
zzz committed
* 2011-11-08 0.8.11 released

kytv's avatar
kytv committed
2011-11-05 kytv
  * Update geoip.txt based on Maxmind GeoLite Country
    database from 2011-11-02

zzz's avatar
zzz committed
2011-11-02 zzz
  * HTTP Proxy: Error page tweak
  * Reseed:
    - Add new host
    - Handle % escaping in file URLs
    - Do basic validation of router hash
    - Add some more sanity checks

kytv's avatar
kytv committed
2011-11-01 kytv
  * Update Ukrainian translations from Transifex
  * Update i2prouter script for better compatibility with Gentoo

zzz's avatar
zzz committed
2011-10-31 zzz
  * NetDB: Reduce max RI publish interval
  * ProfileOrganizer:
    - Fix expiration of old profiles
    - Don't exceed high cap limit between reorgs
    - Reduce max reorg cycle time
    - Reduce new bonus values
zzz's avatar
zzz committed
    - Fix rare NSEE thx sponge
zzz's avatar
zzz committed
  * SSU: Increase threshold for incremented cost
zzz's avatar
zzz committed
  * Tunnels:
    - Restore and implement lengthOverride()
    - Adjust quantity override
zzz's avatar
zzz committed

zzz's avatar
-3  
zzz committed
2011-10-29 zzz
  * BuildHandler: Add router.buildHandlerThreads config setting
  * CapacityCalculator: Small adjustment for XOR distance to
    break ties and encourage closeness
zzz's avatar
-3  
zzz committed
  * ProfileOrganizer: Reduce min expire time
  * SSU: Limit max peers to use as introducers

zzz's avatar
zzz committed
2011-10-28 zzz
  * BuildHandler: Move inbound request handling to its own thread(s)
    (ticket #542, see also http://zzz.i2p/topics/996)
  * CapacityCalculator: Small boost for connected peers, new peers, and
    same-country peers; deduct for recently-unreachable peers
  * DecayingBloomFilter: Whups fix NPE from previous checkin if log=INFO
  * NTCP: Reduce min idle time
  * SSU:
    - Increase default max connections again
    - Reduce min idle time
    - Separate out introducer pinger from introducer selection
      so it can be run separately and more often
    - Only ping introducers if we need them
  * Tunnels:
     - Reduce exploratory tunnel quantity if build success rate
       is very low, but may disable this later
     - Try rebuilding same tunnel (some of the time)

zzz's avatar
zzz committed
2011-10-25 zzz
  * BloomSHA1, DecayingBloomFilter:
    - Refactor for concurrent, at some small risk of false negatives
    - Optimizations to cache objects and reuse offsets
  * Tunnels:
    - Make most classes package private
    - Final, static, logs, cleanups
zzz's avatar
zzz committed
    - Consolidate createRateStat calls
zzz's avatar
zzz committed
    - Add getTotalLength()
    - Remove unused lengthOverride()
  * UDP: Mark only first fragment as a duplicate

zzz's avatar
zzz committed
* 2011-10-20 0.8.10 released

2011-10-19 kytv
  * Update Italian translation from Transifex (thanks danimoth)

zzz's avatar
zzz committed
2011-10-19 zzz
  * I2PTunnel: Fix timeout message on POST (ticket #531)
zzz's avatar
zzz committed
  * NetDB: Reduce RI max expiration again

zzz's avatar
zzz committed
2011-10-18 zzz
zzz's avatar
zzz committed
  * StoreJob: Ensure nonzero token
  * Tunnels: Connection limit mitigation:
    - Disable tunnel testing
    - Implement closest-to-the-key tunnel selection
    - Use closest-selection in NetDB lookups, stores, and verifies;
      OCMOSJ; and in BuildRequestor

zzz's avatar
zzz committed
2011-10-17 zzz
zzz's avatar
zzz committed
  * BuildExecutor: Efficiency tweak
  * Console: Hide tunnel lag if tunnel testing is disabled
  * NetDB: Fix rare NPE from netdb.jsp (ticket #539)
  * Router: Change all shutdown CRITs to ERRORs; shutdown
    the stat manager last to reduce chance of NPEs
    (similar to that in tickets #534,535)
  * SSU: Increase max concurrent outbound attempts;
    fix udp.establishRejected stat

zzz's avatar
zzz committed
2011-10-15 zzz
  * BuildExecutor: Add tunnel.buildConfigTime stat
  * configupdate.jsp:
    - Fix setting to 'never' (ticket #523)
    - Fix always saying trusted keys changed
    - Parameterize tags
  * EepGet:
    - Add gunzip support (nonproxied only)
    - Clean up progress formatting
  * FloodfillMonitorJob: Log tweak (ticket #533)
  * I2CP: Improve error message (ticket #533)
  * JobQueue:
    - Log error when queue is out of order
    - Log tweaks
  * FloodfillPeerSelector: Fix stat NPE (tickets #534,535)
  * RouterThrottle:
    - Fix stat NPE (tickets #534,535)
    - Increase max tunnels and max delay again
  * OutNetMessagePool: Log tweak (ticket #533)
  * Router:
    - Add OOM help (ticket #533)
    - Prevent parallel shutdowns after multiple OOMs (tickets #534,535)
  * Stats: Add API methods for zero duration
  * SSLEepGet:
    - Add gunzip support
    - Increase buffer size
zzz's avatar
zzz committed
  * SSU: Fix concurrency errors (ticket #536)          \
zzz's avatar
zzz committed
2011-10-13 kytv
  * Updated translations from Transifex
    - Swedish: debconf and i2psnark
    - Finnish: router console

zzz's avatar
zzz committed
* 2011-10-11 0.8.9 released

2011-10-10 zzz
  * Lower max netdb RI expiration again
  * Increase default max tunnels
  * Cleanups after review
  * Exorcism (ticket #476)

kytv's avatar
kytv committed
2011-10-07 kytv
  * GeoIP:
    - Switch to Maxmind's GeoIP service (it's better maintained
      than our old provider)
    - Update based on Maxmind GeoLite Country database from 2011-10-07
kytv's avatar
kytv committed
  * Translation updates from Transifex:
    - I2PSnark: de, es, and pt
    - I2PTunnel: de and es
    - RouterConsole: de and es
    - SusiDNS: de and es
    - SusiMail: de and es
kytv's avatar
kytv committed

zzz's avatar
zzz committed
2011-10-07 zzz
zzz's avatar
zzz committed
  * Reseed:
    - Add an https reseed, thx h2ik
    - Restore ovh reseeds, thx mathiasdm
  * Tunnels:
    - For expl. tunnels, fall back to high cap sooner
    - Tweak build rejections for class N
2011-10-06 kytv
  * Add diftracker.i2p to I2PSnark

zzz's avatar
zzz committed
2011-10-06 zzz
  * RepublishLeaseSetJob:
    - Out-of-order JobQueue 3nd try to fix
    - Lower timeouts
  * Reseed:
    - Update host lists
    - Switch back to https by default
  * Throttle: Increase max message delay
  * Transport:
    - Add per-style send processing time stat
    - Increase default SSU conn limit

2011-10-05 zzz
  * Streaming: Fix build
  * UDP: Catch address without key sooner

zzz's avatar
zzz committed
2011-09-30 zzz
  * logs.jsp: Add wrapper version
  * Shitlist: Shorten time
  * Wrapper: Update armv7 to 3.5.12

kytv's avatar
kytv committed
2011-09-30 kytv
  * fix umask bug by upgrading to wrapper v3.5.12. Binaries are from Tanuki's
    delta pack for the community edition, except:
    - Win64: not available from Tanuki--compiled with VS2010
    - FreeBSD: Tanuki's binaries are compiled in FBSD v6.  I compiled the
      wrapper in FreeBSD 7.4 to eliminate the dependency on the compat6x port.
    - Linux ARM: not available from Tanuki
    - OSX: Tanuki offers separate binaries for 32bit VS 64bit. Our
      wrapper is quad-fat supporting PPC32/PPC64 and x86/x86_64.

2011-09-29 zzz
  * Bandwidth refiller: Reinitialize at restart, avoid
    issues from clock skews

2011-09-27 kytv
  * Remove exotrack.i2p from i2psnark

2011-09-24 zzz
  * HTTPClient: Fix error page not appearing, broken by
                StreamForwarder change
  * HTTPServer: More mime types not to compress

2011-09-23 kytv
  * Update Italian, Spanish, and Swedish translations
    from Transifex

zzz's avatar
zzz committed
2011-09-20 zzz
  * Crypto: Comment out some main()
  * ClientMessage: Remove unused MessageReceptionInfo
  * i2psnark: File allocation cleanup to use less heap
  * i2ptunnel HTTPResponseOutputStream:
    - Use reusable gunzipper and a larger pipe for efficiency
    - Close output stream in StreamForwarder to prevent lost data,
      existing bug but made worse by larger pipe
  * I2PTunnelHTTPServer: Don't compress small responses or images
  * I2PTunnel, NTCP: Catch unchecked exceptions from GNU NIO (ticket # 519)
  * JobQueue, RepublishLeaseSetJob, StartExplorerJob:
    Out-of-order JobQueue 2nd try to fix
  * NetDB: Limit max explore queue
  * RouterContext: Remove unused MessageStateMonitor

2011-09-18 kytv
kytv's avatar
kytv committed
 * Add OpenBSD & NetBSD to NBI and CPUID
zzz's avatar
zzz committed
2011-09-16 zzz
  * Console: Home page flag spacing
  * EepGet: Add some new command line options
  * JobQueue:
    - Add warning to setStartAfter() as queue is no longer
      continuously sorted
    - Fix StartExplorerJob not calling requeue()
    - More pumper cleanups
  * Reseed:
    - Add HTTP proxy authorization support
    - Stub out SSL proxy support
    - Disable i2pbote reseed
  * Router: Fix router changing client-side tunnel options,
    causing original tunnel quantity to not be restored
    (ticket #513)

zzz's avatar
zzz committed
2011-09-14 zzz
  * Console: Verify valid host/IP before saving on net config form
  * i2psnark:
    - Add refresh time option
    - Add public file permissions option (ticket #501)
    - Fix configuration of tunnel parameters (ticket #524)
    - Allow changing I2CP parameters while tunnel is open
    - Remove duplicated options in I2CP options string
    - Don't open tunnel when saving config
  * IRC DCC: Fix conn limit options
  * Router: Set permissions on router.ping file

kytv's avatar
kytv committed
2011-09-13 kytv
  * Update i2prouter script

zzz's avatar
zzz committed
2011-09-12 zzz
zzz's avatar
zzz committed
  * build.xml: Run test scripts at release time
zzz's avatar
zzz committed
  * Build Executor:
    - Limit max parallel builds on really slow machines (ticket #519)
    - Slow down build loop when network is apparently disconnected (ticket #519)
  * i2psnark: Fix inaccuracy in the completed bytes display
zzz's avatar
zzz committed
  * NetDB: Disable floodfill at shutdown time if enabled

2011-09-09 zzz
  * TunnelDispatcher: Fix bug in -13 preventing participating
    tunnels from being expired and causing high CPU usage

2011-09-08 zzz
  * Blocklist: Include IP in shitlist reason
  * Ministreaming: Drop old classes replaced by streaming
    years ago.
  * NTCP: Hopefully fix race NPE, thx devzero
  * Tunnels: Limit Bloom filter size based on max memory

2011-09-07 zzz
  * Console: Limit max displayed participating tunnels
  * JobQueue: Change queue from a Set to a TreeSet for more efficiency
  * TunnelDispatcher: Change participant expire List to a Queue for
    efficiency and to remove global lock. Also remove separate
    time List for space savings.

  * Console: Move jobs.jsp rendering code from
  * Crypto: Rework use of SHA256 for efficiency and
    to avoid clogging the Hash cache with one-time hashes,
    and avoiding the global cache lock.
    This also greatly increases Hash cache hit rates.
    Also use SimpleByteCache for temporary byte buffers.
  * I2PTunnel: Save keys to privkey file when enabling
    persistent key after tunnel creation (ticket #480)
  * JobQueue: Change queue from a List to a Set for efficiency
  * PrivateKeyFile: Add more constructors
  * SDSCache: Use weak refs; increase size for pub keys

zzz's avatar
zzz committed
  * NetDB:
    - Try again to fix ISJ deadlock, thx devzero
    - Lower RI expiration again
    - Expire RIs with SSU only and no introducers sooner
  * Transport: Remove one global lock in OutboundMessageRegistry.

zzz's avatar
zzz committed
2011-09-03 zzz
  * i2psnark: Fix "eject" button in certain browsers (ticket #511)
  * UDP Inbound:
    - Hopefully fix race NPE, thx devzero
zzz's avatar
zzz committed
    - Catch some more fragment errors
    - Exception and log tweaks
    - Cleanups and javadocs

2011-09-02 zzz
  * Console: Cache user-agent processing
  * NetDB: Hopefully fix ISJ deadlock, thx devzero
2011-09-02 sponge
  * I2PSnark: Fix GUI html tag for adding a torrent, it was missing a space.

zzz's avatar
-8  
zzz committed
2011-09-01 zzz
  * Console: Enable color logs
  * GeoIP: Cache country codes
  * NetDB: Explore more aggressively if hidden or K
  * UDP: Cleanups and introduction fixes

2011-08-31 zzz
  * OCMOSJ: Remove some global cache locks, other cleanups

2011-08-30 zzz
  * I2CP: Cache b32 lookups client-side
  * I2PTunnelHTTPClient: Use existing session for b32 lookups
                         rather than a new SimpleSession
  * Naming: Increase b32 lookup timeout to 15 sec.

zzz's avatar
zzz committed
2011-08-29 zzz
  * NetDB:
    - Replace the old parallel lookup method with a true
      Kademlia lookup that iteratively queries additional floodfill
      peers returned in DatabaseSearchReplyMessages. This is a more
      efficient and reliable lookup that will work much better
      when not all floodfill peers are known, and it removes a serious
      limitation to network growth.
    - Limit max number of DSRM entries to look up
    - Cleanups, javadocs, log tweaks
  * Tunnels:
    - Increase timeouts on all deferred netdb lookups to 15s; add lookup stats
    - Cleanups, javadocs, log tweaks

zzz's avatar
-2  
zzz committed
2011-08-28 zzz
  * checkcerts.sh: New test
  * Console: Remove 'firewalled and fast' message, just say 'firewalled'
  * I2PTunnelRunner: Fix logging
  * Log: Fix level stuck at DEBUG when using public constructor
  * OutboundMessageRegistry: Cleanups
  * Stats: Restore pre-0.8.8 API to not create a new Rate if it does not
           exist in RateStat.getRate()
  * UPnP: Lower some log levels

kytv's avatar
kytv committed
2011-08-26 kytv
  * Debian: Bugfix: Avoid overwriting preseeded debconf values
    upon package installation (ticket #514).
  * Windows: Fix bug in fixperms.bat that occurred when installing on
    non-English versions of Windows 7 and Vista.

zzz's avatar
zzz committed
2011-08-25 zzz
  * Blockfile:
    - Avoid NPE after corruption (ticket #515)
    - Add reverse lookup table; bump DB rev to 2
  * I2PTunnelIRCClient:
    - Big refactoring into multiple class files
    - Allow AWAY and CAP messages
    - First cut at DCC support - not for SOCKS (yet)
  * Streaming:
    - Hook I2CP ports through to I2PSocket
    - Javadocs, init cleanups, final
  * UDP:
    - Complete rewrite of OutboundMessageFragments for
      concurrent and for efficiency to avoid O(n**2) behavior
    - Don't delay in OutboundMessageFragments at the end
      of the loop if we have more to send now, this should
      speed things up
    - Queue a new send immediately after a packet is acked
    - Send session destroy message when dropping connection
    - Increase large MTU to 1492 (was 1350)
    - Cleanups, log tweaks, javadocs, final

zzz's avatar
zzz committed
* 2011-08-23 0.8.8 released

2011-08-23 zzz
  * Tweaks after review

zzz's avatar
zzz committed
2011-08-21 zzz
  * RateStat: Cleanups and javadoc fixes
  * susimail: Fix page encoding

  * Translations:
    - New Danish and Ukranian translations from transifex
    - Update Italian, Chinese, Spanish, Polish, Swedish,
      and Vietnamese translations from transifex
    - Update .tx/config
zzz's avatar
zzz committed
2011-08-19 zzz
  * Soft restart:
    - Allow NTP to reinitialize clock after the comm system
      in the first minute of uptime
    - Fix i2ptunnels not restarting
    - Increase minimum forward clock shift for soft restart
    - Reduce minimum backward clock shift for soft restart
    - Signal the I2CP client with a different message when restarting
    - I2CP client reconnects when receiving restart message

2011-08-17 kytv
  * Fix #506: Don't attempt to load systray4j when using a 64bit JVM
    in Windows.

  * Console: Tweak logs page CSS
  * Graphs: Delete corrupt rrd file (ticket #483)
  * UPnP: Fix bug causing failure when the PC has multiple interfaces

2011-08-06 kytv
 * Fix #473 (wrapper.logfile set to the wrong path in Windows).

2011-07-31 zzz
  * Crypto: Implement and then comment out an alternate
            AES-256/CBC implementation using the JVM crypto libs,
            and tests, it isn't faster
  * Netdb: Add a job to refresh all the old router infos at startup,
           to speed integration

2011-07-30 kytv
kytv's avatar
kytv committed
 * Installer:
   - add libjbigi*core*jnilib, libjbigi-osx-none_64.jnilib, and
     libjbigi-linux-ppc.so
   - Add Linux PPC wrapper
 * Add linux-ppc to NBI.
 * Remove unused lock

zzz's avatar
zzz committed
2011-07-29 zzz
  * Netdb Search:
    - Follow all DSRM's, not just the last one, by moving the code
      from the match job to the selector
    - Update peer profile after SingleSearchJob
    - Cleanups, javadocs, log tweaks, final
  * ProfileOrganizer: Tweak fast tier size

2011-07-28 zzz
  * Context: Split up big lock to avoid deadlocks
  * Streaming: Avoid a rare exception on race
  * TunnelPoolManager: Reduce race window for restarting a tunnel pool

kytv's avatar
kytv committed
2011-07-27 kytv
  * Add armel (armv5tejl) wrapper. Compiled and tested in Debian Squeeze.

zzz's avatar
zzz committed
2011-07-26 zzz
  * Installer: The previous wrapper files only work on armv7
  * NativeBigInteger: Move libjbigi-linux-arm.so to libjbigi-linux-armv7.so,
                      do ARM version detection in NBI.
zzz's avatar
zzz committed
  * NetDB:
    - Explore even more aggressively at startup
    - Increase SingleSearchJob timeout
    - Increase time at startup for processing DSRM
    - Cleanups, final, javadoc, concurrent
  * OutNetMessage: Cleanups
  * Tunnels: Change another log error to a warn
  * Watchdog: Improve the way it calls for a thread dump

2011-07-22 kytv
  * Add a 64bit wrapper to OSX. With 0.8.7 came a fat Mac wrapper with i386 and PPC.
    The included wrapper is now quad-fat (i386, ppc, x86_64, and ppc64).

2011-07-21 zzz
  * Atalk: Remove this terrible example
  * Console: Use capability method for counting integrated peers
  * i2psnark: Don't let connection problem crash the DirMonitor (ticket #495)
  * Netdb: Speed up collection of all the floodfill peers by using
           PeerManager.getPeersByCapability()
  * PeerManager: Capability cleanups
  * Tunnel TestJob:
    - Don't continue testing after the pool is dead
    - Tweak test intervals
  * TunnelPool: Make more methods package private

zzz's avatar
zzz committed
2011-07-18 zzz
  * FileUtil: Add a rename method and a new copy method
  * I2PTunnel: Rename privkey file when deleting tunnel to prevent inadvertent reuse
  * Netdb: Update reseed lists
  * Streaming: Improve conn limit log message
  * UDP: Lower max port below 31000 since wrapper uses that

zzz's avatar
zzz committed
2011-07-15 zzz
  * Shutdown:
    - Cancel our JVM shutdown hook when shutting down
    - Run a spinner task so shutdown always completes
    - exit() instead of halt() so other JVM shutdown hooks run
    - Prevent duplicate wrapper notifier hooks
    - Notify the wrapper twice, once for stopping and once for stopped

zzz's avatar
zzz committed
2011-07-13 zzz
  * Blocklist:
    - Fix delayed lookup of reason from file
    - Tag strings for translation
    - Sort IPs on configpeer.jsp correctly
  * SummaryHelper: Fix NPE at startup (ticket #493)

2011-07-10 zzz
  * DH, YK:
    - Improve YK speed test
    - Shut down thread faster
    - Refiller keeps going until full
    - Cleanups
  * I2PTunnel: Fix a shutdown hang
  * Message Registry: Clear pending messages at restart / shutdown
  * OCMOSJ: Clear caches at restart
  * Router Clock: First cut at recognizing and reacting to large system
    clock shifts by partially restarting the router. Also improve
    restarts initiated from config.jsp
    Tickets #465, #468, #494
  * UPnP:
    - Wait for a while to ensure port removal at shutdown or restart
    - Fix device rediscovery and port opening after restart

zzz's avatar
zzz committed
2011-07-08 zzz
zzz's avatar
zzz committed
  * Findbugs: Several fixes and cleanups
  * I2NP: Consolidate common code from TunnelBuildMessage and
          TunnelBuildReplyMessage into a common base class
zzz's avatar
zzz committed
  * NetDB, TestJob: Fix NPEs at startup (ticket #493)
zzz's avatar
zzz committed
  * Sha256Standalone:
    - Use system SHA-256 MessageDigest instead of Sha256Standalone in PRNG
    - Deprecate DataHelper functions using Sha256Standalone arguments;
      used only by Syndie
    - Note deprecation in javadocs

zzz's avatar
zzz committed
2011-07-07 zzz
  * Blockfile:
    - Log error on out-of-order spans
    - Log error on corrupt level and discard
    - Fix SkipSpan non-flush bug causing null levels
    - Add level fixer that repairs nulls and out-of-order levels
    - Fix bug on backwards span construction, not hit in practice
    - Lots of log level changes

zzz's avatar
-5  
zzz committed
2011-07-06 zzz
  * EepGet: Add method to add extra headers to request
  * Floodfills: Increase again
  * HTTP Proxy: Fix error on shutdown
  * NamingService: Use HostsTxtNamingService if default fails to initialize
  * Netdb: Catch exception on dup netdb entries
  * Netdb exploration:
    - Remove floodfills from dont-include list in exploration
      DatabaseLookupMessage, as the dont-include-floodfills flag
      has been supported since release 0.7.9.
      This will make exploration work better, as there is room for
      non-floodfills in the don't-include list now.
    - Reduce min and max exploration intervals
    - Explore aggressively at startup and if known routers is low
    - Explore slowly if known routers is high
  * PeerManager: Load profiles in separate thread to avoid slowing
                 down the context initAll()
  * Tunnels: Use exploratory tunnels to help maintain a minimum number
             of connected peers

2011-07-03 zzz
  * AppContext: Add hasWrapper() method
  * Shutdown:
    - Clear more resources in peer manager, netdb, stat manager,
      session key manager, naming service, tunnel dispatcher,
      OCMOSJ (result of testing with jvisualvm)
    - Don't call wrapper on shutdown (starting two threads) if we
      were started with runplain

2011-07-01 zzz
  * EepGet:
    - Fix error output bug
    - Output error data for 504 too
  * I2PThread: Remove logging, too many issues with extra contexts
  * Router, console, i2psnark: Change three errors to warns (tickets #479, #482, #487)

2011-06-30 zzz
  * BlockfileNamingService:
    - Support readonly blockfiles
    - Open blockfile readonly if not in router context
    - Log warning if blockfile is locked
    - Set as default
  * DataHelper: Throw IOE if uncompressed data too big,
    instead of silently truncating
  * EepGet:
    - Add method to get response code
    - Add method to write error data to the output
    - Increase buffer size to 8 KB
    - Trim content type
  * IRC Server: Send a message back if the tunnel is up but the server is down
  * NewsFetcher: Change default interval to 36 hours
  * Random: Refactor refiller for concurrent
  * Shutdown:
    - Register shutdown hooks for caches, in the first step of cleaning up
      resources on shutdown, which is important in Android as the JVM
      isn't going away.
    - Clear profiles from memory on shutdown
    - Add shutdown hook for AsyncFortunaRandomSource
    - Implement and call shutdown for BandwidthRefiller
    - Implement and register shutdown hook for i2ptunnel
    - Implement and register shutdown hook for Jetty console server
    - Implement and register shutdown hook for Timestamper
    - Fix UPnP-SSDPNotifySocket thread not stopping
    - Fix all but one UDP PacketHandler threads not stopping
    - Fix i2psnark DirMonitor not stopping
    - Fix UPnP-Disposer not stopping quickly
    - Implement and call YKGenerator and DHSessionKeyBuilder shutdown
    - Implement and call shutdown for RouterWatchdog
    - Kill the global app context
    - Recognize multi-router case
    - Fix RandomIterator, YKGenerator, DHBuilder, NTCPConnection
      hanging on to old context
    - Fix DHBuilder thread not stopping
    - Stop I2PThread from starting a new App context at shutdown
    - Stop LogWriter from starting a new App context at shutdown
    - Have router kill any leftover App context at startup
    - Fix I2PThread hanging on to old context
  * Updates:
    - Add the router version to the zip file comment in the updater
    - Add a class to extract the zip file comment
    - Require the sud version header to match the zip file comment
      to prevent spoofing of the version number, since the version
      number in the header is not covered by the sud signature.

zzz's avatar
zzz committed
* 2011-06-27 0.8.7 released

zzz's avatar
zzz committed
2011-06-26 zzz
  * Fixes after review:
    - Fix Polish po file
    - Install as a service by default on Windows again
    - Change CPUID getters to package private
    - Split new jbigi install messages into two lines
    - Test script updates
    - Javadocs

zzz's avatar
zzz committed
2011-06-23 zzz
  * IRC: Allow outbound INVITE

2011-06-21 kytv
  * Make the i2prouter script fail more gracefully if there's
    a problem loading the wrapper.

2011-06-14 zzz
zzz's avatar
zzz committed
  * Build: New targets for including jbigi in the updater
  * Console: CSS tweak for flag box
  * i2psnark: Recognize ktorrent
  * Jbigi / NBI / wrapper / installer:
    jbigi and wrapper files for arm.
    Compiled on trimslice with gcc version 4.4.5 (Ubuntu/Linaro 4.4.4-14ubuntu5)
    Log postinstall errors to postinstall.log.
zzz's avatar
zzz committed
  * NetDB: Increase floodfills and better adjustment based on available memory
  * RateStat: final
zzz's avatar
zzz committed
  * Router: Delete old libjbigi.so and libjcpuid.so at startup if jbigi.jar is newer.
            This will force a reextraction by CPUID and NBI.
duck's avatar
duck committed
2011-06-13 duck
    * Finnish, Italian, Polish and Vietnamese translations, thanks Transifex teams.

2011-06-13 zzz
   * To ensure we don't release bad packages, fail the build
     if gettext fails. Change property at top of build.xml if
     you don't have gettext and want the build to continue.

kytv's avatar
kytv committed
2011-06-12 kytv
   * Add jcpuid files (32 & 64bit) for Intel Macs
   * Compile jbigi-osx-none for Intel Macs. libjbigi-osx-none.jnilib
     is now a fat binary combining the already existing PPC
kytv's avatar
kytv committed
     compile and my new x86 build.
2011-06-11 zzz
    * i2psnark Polish translation, thanks polacco

2011-06-10 zzz
    * CPUID, NativeBigI: Add support for atom, core2, corei, nano, pentiumm, geode
    * Random: Add config setting prng.bufferSize to override the default 256 KB
    * JBigI:
      - Add new libjbigi-linux-xxx.so files built by sponge, now that we have
        CPUID.java support for them (thanks hottuna).
        See http://zzz.i2p/topics/306 for discussion and test results.

        64-bit processors (atom, core2, corei, nano):
        Built with GMP 5.0.2. License is LGPLv3.
        Built by sponge with GCC 4.4.4, downloaded from
        http://sponge.i2p/files/jbigi/gmp-5.0.2/
        For 64-bit processors, both performance testing and
        the GMP changelog http://gmplib.org/gmp5.0.html led us to use 5.0.2
        for both the 32- and 64-bit versions, even though the files are twice as big.
        5.0.x contains specific optimizations for atom and nano.
        All 64-bit libs have _64 appended.

        32-bit processors (pentiumm, geode):
        Built with GMP 4.3.2. License is LGPLv3.
        Built by sponge with GCC 4.4.4, downloaded from
        http://sponge.i2p/files/jbigi/gmp-4.3.2/
        The 4.3.2 files are half the size of those built with GMP 5.0.2, and there was
        little or no performance difference between the two versions for 32 bit processors.
    * NBI: Enable 64-bit processor detection
    * Profiles: Skip and delete a corrupt profile read from disk

2011-06-10 kytv
   * jcpuid & jbigi added for 64bit Windows (only used with a 64bit jvm).

kytv's avatar
kytv committed
2011-06-09 kytv
   * Added an x64 wrapper for Windows. This is needed because a 32bit wrapper
     cannot start a 64bit JVM.

2011-06-08 zzz
    * Build:
      - Add standard manifest to jbigi.jar
      - Don't do 'mtn list changed' if not in a workspace or not needed
    * LogManager: Use DataHelper methods for loading and storing config
    * Update jbigi/jcpuid Windows dlls. As was done for FreeBSD and Linux, the
      libraries for 32bit CPUs were linked against gmp-4.3.2 and those for the
      64bit CPUs were linked against gmp-5.0.2.

2011-06-07 kytv
    * Upgrade the wrapper to 3.5.9. Noticable changes include:
      - FreeBSD amd64 is now a supported arch along with i386. To use the wrapper
        with the most recent version of FreeBSD the port 'misc/compat6x' will need
        to be installed.
      - OSX: Both Intel and PPC Macs are supported. 32-bit support. If you'd like 64-bit
        support, please file a bug in trac with the output of "uname -m".
    * Upgrade jbigi/jcpuid for FreeBSD i386 and add support for amd64. As was done with
      the Linux compiles, 32bit compiles were linked with gmp 4.3.2 and 64 bit builds
      (as well as 32bit builds for 64bit cpus) were linked against gmp 5.0.2.

2011-06-06 zzz
    * Drop andorid/ directory; further development will happen in
      an android-only branch.

zzz's avatar
zzz committed
2011-06-05 zzz
    * Console: Tag stat descriptions at declaration rather than in Strings.java
    * Data: Remove duplicate signature verification code
            in RouterInfo and LeaseSet
    * DSAEngine: Add code for alternate implementation using Java libs;
                 disabled by default. Add test code to verify identical results
                 and compare speed.
    * JBigI:
      - Replace old non-PIC 32-bit linux libs (GMP 4.1.3 built in 2004)
        with PIC libs built with GMP 4.3.2. License is LGPLv3.
        Built by sponge with GCC 4.4.4, downloaded from
        http://sponge.i2p/files/jbigi/gmp-4.3.2/
        The 4.3.2 files are half the size of those built with GMP 5.0.2, and there was
        little or no performance difference between the two versions for 32 bit processors.
        See http://zzz.i2p/topics/306 for discussion and test results.
      - Replace old non-PIC 64-bit linux libs (GMP 4.1.4 built in 2005)
zzz's avatar
zzz committed
        with PIC libs built with GMP 5.0.2. License is LGPLv3.
        Built by sponge with GCC 4.4.4, downloaded from
        http://sponge.i2p/files/jbigi/gmp-5.0.2/
        For 64-bit processors, both performance testing and
        the GMP changelog led us to use 5.0.2 for both the 32- and 64-bit versions,
        even though the files are twice as big.
        See http://zzz.i2p/topics/306 for discussion and test results.
        libjbigi-linux-athlon64.so was a 64 bit file; by the new naming standard
        supported by NativeBigInteger, it is now a 32-bit file and the
        64-bit one is libjbigi-linux-athlon64_64.so.
        All new 64-bit libs will have _64 appended.
      - Remove libjbigi-windows-athlon64.dll which was a duplicate of libjbigi-windows-athlon.dll;
        NBI now tries athlon as a fallback for all 64-bit processors.
      - Update build docs

zzz's avatar
zzz committed
2011-06-04 zzz
    * NBigI: Recognize Android
    * KeyGenerator: Restore old return type to not break ABI (thx kytv)
    * Router:
      - Add a lock for reading/writing the router.info file
      - Check our RouterInfo validity after reading and before saving,
        to catch fatal errors sooner

2011-06-03 zzz
    * Android: More build updates, start working on JNI for GMP
    * Build: Fix dependency issue cause by misspelled file name

2011-06-02 zzz
    * Android: Build fixes
    * Crypto:
      - HMAC Javadocs and cleanups
      - HMAC Use SimpleByteCache
    * ElGamalAESEngine: Fixups required after SessionKey enforcement
    * Reseed: Give up on a seed after 90% of fetches fail
    * SessionKey: Enforce data size and prevent reuse

2011-06-02 sponge
    * Remove txt file in BOB.jar as per zzz's request.

zzz's avatar
zzz committed
2011-06-01 zzz
    * Crypto:
      - Use java.security.MessageDigest instead of bundled GNU SHA-256 code
        if available, which it should always be.
        5 to 20% faster on Oracle JVM; 40 to 60% on Harmony;
        5 to 15% on JamVM; 20x (!) on GIJ.
      - Use java.security.MessageDigest instead of bundled Bitzi SHA-1 code
        if available on non-Oracle JVMs, which it should always be.
        Not faster on Oracle JVM; 30 to 60% faster on Harmony;
        15 to 20% on JamVM; 10-15x (!) on GIJ.

2011-06-01 sponge
    * ConfigClients stopClient stubbed out.

2011-06-01 sponge
    * Re the below, using better way that kytv suggested.
      There is more than one way to peel a pineapple...

2011-06-01 sponge
    * Remove the one little html file that ends up in BOB.jar.
        The file is NOT a javadoc file, it is a package file.