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

Skip to content
Snippets Groups Projects
history.txt 558 KiB
Newer Older
  • Learn to ignore specific revisions
  • 2015-01-30 zzz
     * HTTP Proxy: More error page changes
     * NTCP: Throttle event pumper if looping too fast (tickets #551, #1075, #1411)
    
    
    zzz's avatar
    zzz committed
     * SSU:
       - Fix replaceExternalAddress churn when firewalled
       - Sort introducers in router address, so we won't force a republish
         due to a different ordering of the same introducers
       - Don't publish an address if we need introducers but don't have any,
         so the user won't see a 'firewalled with inbound NTCP enabled' message
    
       - Fix transition from firewalled to non-firewalled
    
    zzz's avatar
    zzz committed
    2015-01-28 zzz
     * UPnP:
      - Rescan for devices periodically and when reachability changes (tickets #661, #959)
    
      - Callback when device removed
      - Consolidate callbacks
      - Clear ignored devices after primary device removed
        to allow one to be promoted on rescan
    
    zzz's avatar
    zzz committed
      - Don't put "I2P" in registered protocol name
      - Add uptime to UPnP info
      - HTML escaping
      - Remove static log on Android
    
    2015-01-11 zzz
     * i2psnark: Skip incompatible welterde tracker if we are ECDSA
     * I2PTunnel: Add option for multihoming optimization
    
    2015-01-10 zzz
     * NetDB: Stubs for bandwidth estimation during reseed (ticket #935)
    
    
    2015-01-09 zzz
     * NetDB: Publish RI faster when costs change (ticket #1437)
    
    2015-01-08 zzz
     * Console, i2ptunnel, proxy: Renaming of various things to "hidden services"
    
    
    2015-01-07 zzz
    
     * ClientAppConfig: Start i2ptunnel sooner (ticket #1162)
     * NetDB: Possible fixes for reseed completion not recognized (ticket #1384)
    
     * Router:
       - Add startup/shutdown state machine
       - Don't reset uptime after a soft restart
    
     * Startup: Accept tunnels after 10 minutes instead of 20 (ticket #1152)
    
     * Tunnels:
       - Cleanup, catch more cases of zero-hop configuration
       - Temporarily increase exploratory tunnel quantity at startup,
         so that netdb refresh will work better
    
    zzz's avatar
    zzz committed
    2015-01-05 zzz
     * Blocklist:
       - Rewrite to read and merge multiple files
       - Include in update, use version in base dir too
       - Increase limits
       - Bug fixes
    
    zzz's avatar
    zzz committed
     * EepGet: Change command line default to 0 retries
    
    zzz's avatar
    zzz committed
     * Latency reduction all over:
       - SSU: Reduce ack delay
       - Streaming: Reduce min RTO and flusher delay
       - Tunnels: Reduce GW batching time
    
    zzz's avatar
    zzz committed
     * Streaming:
       - Add API for sending/receiving payload in ping/pong
       - Fix PcapWriter
    
    zzz's avatar
    zzz committed
     * UrlLauncher:
       - Configure browser with routerconsole.browser (ticket #1159)
       - Convert to ClientApp interface
    
    
    zzz's avatar
    zzz committed
    2015-01-03 zzz
     * I2CP: Use configured leaseset keys if available
     * I2PTunnel: Persist leaseset keys
    
    
    zzz's avatar
    zzz committed
    2014-12-15 zzz
     * Console: Prevent two-word translations from splitting across lines in summary bar
    
    zzz's avatar
    zzz committed
     * Crypto: EdDSA cleanups
    
    zzz's avatar
    zzz committed
     * i2psnark: Unchoke new peer sooner
     * SSU: reduce log level of uncaught errors processing I2NP message
     * SU3:
       - Don't require specification of sig type when signing
       - Implement 'extract -k'
       - Fix getContentOffset()
       - Fail on excess data after signature
     * Tunnels: Raise concurrent build limit
    
    
    2014-12-08 zzz
     * HTTP Proxy: Fix parsing of ECDSA address helper
     * NetDB: Increase lookup throttle time
    
    
    zzz's avatar
    zzz committed
    2014-12-05 zzz
    Prop from i2p.i2p.zzz.test2:
     * Console:
       - Show b32 for local leasesets also on netdb LS tab
     * Data:
       - Disallow duplicate keys in a Mapping
       - Add RouterInfo.getVersion()
     * I2NP:
       - Move some data structures away from ByteArray; offsets were always zero
         - New BuildRequestRecord constructors
         - BuildRequestRecord field becomes final byte[222]
         - IV becomes byte[16]
         - Build record becomes EncryptedBuildRecord
       - Remove extra copy in BuildRequestRecord.encryptRecord()
       - Remove unused BuildRequestRecord.readOurIdentityMatches()
       - DatabaseStoreMessage: Mask the unused bits in the type field for future use
     * i2psnark: Reduce auto-stop threshold for update torrent
     * I2PTunnel: Reduce i2ptunnel threads, more thread pooling.
       - Move client pool from static inI2PTunnelClientBase to TCG.
       - Use client pool for some server threads
       - Run some things inline that were formerly threads
     * KeyGenerator: main() test improvements
     * Logger: Configurable flush interval
     * Plugins: Another fix for restarting a ClientApp plugin
     * Profiles: Change slice selection argument from an int to an enum for clarity
     * SusiMail:
       - Add save-as button
       - Fix encoding for filename in Content-Disposition header
     * Transport:
       - Disallow standard I2P application ports as the router port
       - Increase default class O conn. limits to 350 NTCP, 1050 SSU
     * Update: Use last-modified instead of last-checked for the next
       if-modified-since fetch, to fix failing to fetch the latest news
    
    
    zzz's avatar
    zzz committed
    * 2014-11-30 0.9.17 released
    
    
    kytv's avatar
    kytv committed
    2014-11-28 kytv
     * Updated PO files from Transifex
     * Updates to geoip.txt and geoipv6.dat.gz based on Maxmind GeoLite Country
       database from 2014-11-05.
    
    
    2014-11-26 zzz
     * BuildRequestor: Reduce delay when client build can't find
       a paired tunnel (ticket #1412)
     * Data:
       - Fix NPE on unknown sig type in destination
       - Fix hashcode and equals for typed data
     * Tunnels: Disallow changing allowZeroHop setting for exploratory
    
    2014-11-24 zzz
     * i2ptunnel: Fix automatic setting of random key
     * PrivateKeyFile: Don't rewrite file in main() if no options
    
    2014-11-23 zzz
     * Reseed hosts update
    
    
    2014-11-22 zzz
     * PeerSelector: If non-DSA, don't use incompatible peers
       for exploratory tunnels or closest-hop in client tunnels
    
     * SAM: Fix v3 bug accepting incoming connections
    
    
    2014-11-17 zzz
     * NetDB: Exclude A1/A2 "countries" from auto-floodfill
    
    2014-11-15 zzz
     * I2NP:
       - Set lookup type flags even if no reply tunnel specified
       - Reduce object churn when writing some messages
    
    
    zzz's avatar
    zzz committed
    2014-11-13 zzz
     * I2PTunnel:
       - Fix bug that left server acceptor thread running after close
       - Add destroy() methods to release all resources when closing a tunnel for good,
         particularly the streaming timer threads
       - Use COWAL to prevent concurrency problems
     * PluginStarter: Simplify detection of active threads
     * Streaming:
       - Don't return null from accept() any more; actually throw
         ConnectException as the Javadocs have always specified
       - Throw ConnectException from accept() if interrupted; previously caught and ignored
       - Throw exceptions from ConnectionHandler.accept(), not higher up
       - Close ServerSocket when ConnectionManager is shut down
       - Synchronize setActive(), clear queue when starting to accept,
         better handling of calls that don't change state
    
    
     * Data: Clear more caches when under memory pressure and at shutdown
    
     * Plugins: Fix bug in stopping a ClientApp plugin with $parameters in the args
    
    
    zzz's avatar
    zzz committed
    2014-11-09 zzz
     * i2psnark: Fix tracker config form issues
     * Router, i2ptunnel: Add option for per-pool persistent random key,
       so peer ordering does not change across restarts
    
    
    2014-11-08 zzz
     * EdDSA: Bump minimum router version to 0.9.17
     * i2psnark: Add support for specifying data dir in add form (ticket #1028)
     * ProfileOrganizer: More efficient slice calculation
     * SSU: Fix bug preventing inbound connection from non-DSA router (ticket #1408)
     * Transports: If non-DSA, check for compatibility before connecting out
    
    
    2014-11-06 zzz
    Prop from i2p.i2p.zzz.test2:
     * Blockfile:
       - Add block size to superblock
       - Add span size to skiplist block
       - Bump version to 1.2
     * Console:
       - Log warnings for Java 6 or no Pack200
       - Add ECDSA warning to sidebar
       - Don't disable updates when restarting from /configupdate
       - Recognize router.newsRefreshFrequency=0 as "never"
     * Crypto: Drop dummy crypto stubs
     * i2psnark:
       - Convert '+' to ' ' in magnet dn param
       - Fix NPE when deleting torrent if the data directory
         was deleted out from under us (ticket #1407)
       - Add new opentrackers, remove welterde
       - Support multiple default opentrackers
       - Don't link to opentrackers at the top
     * i2ptunnel:
       - ECDSA default for all new server tunnels
       - ECDSA default for streamr client tunnels
       - Fix display of server destination on edit page when not running (privkey file path wasn't absolute)
       - Fix display of persistent client key b32 on edit page when not running
       - Fix display of server sig type on edit page when we have a privkey file
     * jbigi: Save and report extracted library name
     * Reseed: SSL-only by default
     * Router:
       - Make recognition of a hidden router consistent,
         whether specified in the caps or the cert
       - Job Queue: Only drop lookup jobs if lagged
     * SSU:
       - Don't resend ACKS that are too old (ticket #772)
       - Dont OOM if ACK sender dies
       - Don't publish direct info if introducers are required
     * SU3File: Show content and file types in showversion
     * Transports:
       - Consolidate port checking code
       - Disallow SSDP port
     * Update: Implement signed news in su3 format with trusted signers,
       wrapping an Atom XML format
     * Util:
       - Use write-sync-close-rename for config file writing
       - Null check in zip entry name
    
    
    2014-11-04 zzz
     * SSU: Fix corruption of ack-only packets containing bitfields
    
    
    zzz's avatar
    zzz committed
    * 2014-11-01 0.9.16 released
    
    
    kytv's avatar
    kytv committed
    2014-10-30 kytv
     * Updates to geoip.txt and geoipv6.dat.gz based on Maxmind GeoLite Country
       database from 2014-10-07.
     * Arabic, Chinese, Czech, Dutch, French, German, Russian, and Spanish
       translation updates from Transifex
    
    
    2014-10-30 zzz
     * Router: Fix rare NPE building garlic message (ticket #1403)
    
    
    2014-10-26 zzz
     * SSU: Fix ACK Sender thread dying on corrupt packet
    
    2014-10-24 zzz
     * i2ptunnel: Fix description entered via wizard
    
    
    2014-10-23 zzz
     * SessionKeyManager:
       - Raise inbound limit
       - Delete oldest tagsets when limit is hit
       - Don't delete recent tagsets when limit is hit
     * SSL: Don't prohibit SSLv3 ciphers if that's all we have
    
    
    zzz's avatar
    zzz committed
    2014-10-20 zzz
     * Console: Fix lockups (ticket #1395)
     * Eepsite Jetty: Switch back to QueuedThreadPool (ticket #1395)
    
    
    2014-10-17 zzz
     * NTCP: Deadlock fix 3rd try (ticket #1394)
    
    
    2014-10-16 zzz
     * NTCP: Deadlock fix 2nd try (ticket #1394)
    
    
    2014-10-15 zzz
     * Console, I2CP, i2ptunnel, SSLEepGet: Set allowed SSL
    
       protocols and ciphers. Disable SSLv3 and older ciphers.
       Enable TLSv1.1 and TLSv1.2 on Java 7,
       where it is disabled by default client-side.
    
    2014-10-14 zzz
     * I2NP: Implement DatabaseLookupMessage search type field
    
    
    2014-10-13 zzz
     * i2ptunnel: Set default sig type to ECDSA-P256 for client types
       Standard, IRC, and Socks IRC, if non-shared.
    
    
    zzz's avatar
    zzz committed
    2014-10-10 zzz
     * Banlist: Remove unused banlist tracking in the profile
       causing deadlock (ticket #1394)
     * GeoIP:
       - Don't rate peers in some countries as high capacity
       - Don't enable auto-floodfill in some countries
       - Don't prefer floodfills in some countries
    
    2014-10-08 zzz
     * UPnP: Comment out unused parsers
    
    
    2014-10-07 zzz
     * CPUID: Remove Intel model 2 again, this is spoofed in the VM
     * Graphs: Catch an error caused by missing fonts
     * i2ptunnel: Handle named sig types from i2ptunnel.config in the GUI
     * SSU: Improve handling of socket that gets closed (ticket #1385)
     * Startup: Delay ReadConfigJob another minute
    
    2014-10-05 zzz
     * Crypto: EdDSA cleanup
    
    2014-10-04 zzz
     * i2psnark: Disable changing types for predefined trackers
     * i2ptunnel: Fix js confirm for delete button
    
    
    2014-10-03 zzz
     * Console: New add-to-addressbook links on leaseset page
     * CPUID: Fix Intel processor identification
     * i2psnark: Fix adding magnet links with % encoding (ticket #1391)
    
    
    2014-09-30 zzz
     * Logs: Fix displayed filename when empty (ticket #1386)
     * SAM: Fix v3 LS publish, broken in -4 (ticket #1390)
    
    2014-09-29 zzz
     * CPUID:
       - Fix main() model and family calculation
       - Add model string fetch from processor
       - AMD model string tweaks
     * i2psnark: Show subdirectory in table header on details page
    
    
    zzz's avatar
    zzz committed
    2014-09-27 zzz
    
    zzz's avatar
    zzz committed
     * CPUID:
       - Fix model and family calculations
       - Fix most AMD family 15 IDs
       - Add AMD Llano, Jaguar, Bulldozer 2
       - Add Intel Ivy Bridge, Haswell, Broadwell, Penryn,
         Pineview, Cedarview, Bay Trail, Avoton, and others
       - Set best-guess capabilities for most Intel processors
       - Supply best-guess model string in most cases
       - Processors listed above, and some others, may see crypto speedups as a result
    
    2014-09-26 zzz
    
    zzz's avatar
    zzz committed
     * EdDSA: Use our PRNG by default for keygen
     * i2psnark:
       - Increase default to 3 hops (ticket #966)
       - Show info hash on details page
     * NetDB: Increase max age of RIs to reduce number refreshed after restart
    
    zzz's avatar
    zzz committed
     * SAM:
       - Don't publish LS for DIRECTION=CREATE
       - Set default tunnel name
    
    zzz's avatar
    zzz committed
     * Tests: Fix junit compile fails due to data structure moves
     * Transport: Hooks for pluggable transports (ticket #1170)
    
    
    zzz's avatar
    zzz committed
    2014-09-23 zzz
    Prop from i2p.i2p.zzz.test2:
     * Addressbook: Improve parser efficiency
     * Data structures: Move several router-only classes from i2p.jar to
       net.i2p.data.router in router.jar. This will break existing
    
    zzz's avatar
    zzz committed
       versions of the i2pcontrol plugin.
    
    zzz's avatar
    zzz committed
     * HTTP Client: Add error page for unsupported encryption
     * I2CP:
       - Verify crypto key pair in LS
       - Verfiy same dest as before in LS
       - Enforce strict authorization when auth is enabled
     * i2psnark:
       - Set-all priority buttons (ticket #1376)
       - Comment out command-line code
       - Consolidate and clean up parameters code
       - Click to sort by column
       - Display upload ratio when sorted by ratio, and on details page (ticket #1298)
       - Consolidate code for creating img entities
       - Switch from checkbox to radio for tracker configuration form
       - Sort themes in config form
       - Consolidate HTML header code
       - Set no-cache headers
       - Don't set HTML headers for redirects
     * I2PTunnelGUI: Test tool deleted, moved to i2p.scripts
     * Jetty 8.1.16.v20140903
     * KeyGenerator: Add support for converting
       all signing key types from private to public
     * NetDB:
       - Encrypt RI lookups and request encrypted reply on
         faster boxes, to prevent scraping by OBEPs and IBGWs
       - Encrypt exploratory lookups too
       - Better handling of unsupported encryption in destinations
       - Implement handling of unsupported encryption in router identities
       - Banlist forever all RIs with unsupported encryption
       - New negative cache of all dests with unsupported encryption
       - New methods for destination lookup that will succeed even if
         the LS is expired or encryption is unsupported
       - Use new dest lookup so client will get the right error code
         later, rather than failing with no LS when we really got it
         but just couldn't verify it.
       - Don't auto-enable floodfill if ARM or if ElG decrypt is too slow
     * NTCP EstablishState:
       - Prep for future enhancements by refactoring to a state machine model
       - Reduce object churn; use SimpleByteCache
       - Synchronization
     * OCMOSJ: Detect unsupported encryption on dest and return the correct failure code
         through I2CP to streaming to i2ptunnel
     * PrivateKeyFile:
       - New constructor with padding
       - New router extension to add getRouterIdentity()
       - Add validateKeyPairs()
     * Router:
       - New router.sigType config
       - Generate / regenerate router keys based on config
       - New router.keys.dat file in PKF format for sig types and padding
       - Fix RouterInfo.readBytes() signature verification with sig types
       - Catch unset padding in KeysAndCert.writeBytes()
       - Catch key errors in ReadRouterJob
       - Show RI sig type on /netdb in console
       - Move some things from Router to startup classes
       - Startup classes package private
       - Buffer readin of key files
       - Remove configurability of router.info and router.keys file locations
       - Consolidate router keys readin code
       - Update killKeys file list
       - Validate router key pairs read in from file
       - Don't try to use an unavailable sig type for the router,
         even if it's the default
     * RoutingKeyGenerator:
       - Move from core to RouterKeyGenerator in router.jar
       - Leave RoutingKeyGenerator as a simple abstract class
       - DatabaseEntry now uses timestamp instead of mod data
         to determine if mod data has changed. Don't expose
         mod data to DatabaseEntry any more.
       - I2PAppContext.routingKeyGenerator() now returns null;
         you must be in RouterContext to get a generator.
     * SSU:
       - Implement bundling of multiple fragments in a single data message.
         This has always been in the spec and implemented in the receive side
         since the beginning, so it is compatible with all versions.
       - OutboundMessageState: Fix SSU Output Queue errors in PacketBuilder:
         Remove all buffer caching as it can't be made thread-safe.
         Just allocate buffer in constructor and let GC handle it
         Do fragmenting in constructor and make all fragment fields final
         Don't track per-fragment retransmissions as it wasn't used
         Move ack tracking from an array to a long
         Sync all ack methods; Entire class now thread-safe
       - InboundMessageState: Rewrite PartialBitfield for efficiency, less space and object churn
       - PeerState.fetchPartialACKs() improvements
       - Don't allow more than 10 bytes when reading in bitfield
       - Don't send a corrupt ack packet if the partial ack got completed (race)
     * Streaming: Re-enable message status override, but treat LS lookup failure
         as a soft failure for now.
     * Transports:
       - Handle RI sig types
       - Banlist unsupported RI sig types
       - Return unused DH keypairs to the pool
     * Tunnels:
       - Enforce request record timestamp
       - Randomize timestamp to prevent hop detection at top of hour
    
    
    2014-09-22 zzz
     * SSU: Fix 100% CPU after socket failure
     * UPnP: Catch reported error on FreeBSD
    
    
    zzz's avatar
    zzz committed
    * 2014-09-20 0.9.15 released
    
    
    kytv's avatar
    kytv committed
    2014-09-17 kytv
     * Updates to geoip.txt and geoipv6.dat.gz based on Maxmind GeoLite Country
       database from 2014-09-04.
    
     * Translations:
       - updates pulled from Transifex (cs, es, fi, fr, ja, nb, pl, ro, ru, uk)
       - en po files updated and pushed to Transifex
    
    kytv's avatar
    kytv committed
    
    
    2014-09-16 zzz
     * i2psnark: Don't send HTML-only headers for icons (2nd try)
    
    
    zzz's avatar
    zzz committed
    2014-09-13 zzz
     * i2ptunnel:
       - Fixes for stopping client tunnels
       - Fix status display for shared clients
    
    
    2014-09-12 zzz
     * i2psnark: Escape fixes
     * i2ptunnel: Fix updating session options on a running delay-open client tunnel
    
    
    zzz's avatar
    zzz committed
    2014-09-09 zzz
     * i2psnark: Escape fixes
    
    
    2014-08-31 zzz
     * Build: Add support for bundling router infos in the package
     * I2PTunnel: Allow changing of spoof host and target host/port without
                  restarting server tunnel
    
    
    zzz's avatar
    zzz committed
    2014-08-30 zzz
     * Console:
      - Re-enable plugin installation by default
      - Don't show configuration section or update-all button if no plugins installed
      - Show unavailable crypto on /logs
     * Router: Log warnings for unavailable crypto at startup
     * RouterInfo: Backport fix for verification of EdDSA RI sig type
    
    
    2014-08-28 zzz
     * Streaming: Fix verify of Ed25519 signatures in CLOSE packets
    
    
    zzz's avatar
    zzz committed
    2014-08-27 zzz
    
     * i2psnark:
       - Persist uploaded count (tickets #1034, #1298)
       - Don't retry announce if we get back HTML
       - Recognize Vuze tracker rejections
       - Don't retry rejected announces unless seeding
       - Better UI handling of announces with ports or full destination
     * NetDB: Don't abort initialization on an unsupported RI sig type
     * Streaming: Fix P521 and RSA sig types
    
    zzz's avatar
    zzz committed
    
    2014-08-23 zzz
     * Console, i2psnark, i2ptunnel: Escape fixes and cleanups
     * SSU: Drop peer tests as Bob from unestablished Alices
    
    
    zzz's avatar
    zzz committed
    2014-08-22 zzz
     * SigTypes:
       - Add isSupportedSince(), use in floodfill selection
       - Handle mixed-case 25519 enum
       - Fix 25519 type code
       - Add dup type code check
    
    2014-08-21 str4d
     * Add Ed25519 SigType
    
    
    zzz's avatar
    zzz committed
    2014-08-21 zzz
     * i2psnark:
       - Escape control chars in encodePath()
       - Increase max piece size to 8 MB (ticket #1347)
     * i2ptunnel: Add local SSL support for std. and IRC client tunnels (ticket #1107)
    
    
    zzz's avatar
    zzz committed
    2014-08-19 zzz
     * i2psnark:
       - Don't filter create torrent form, and
         fix exception on ':' in file names (ticket #1342)
       - Don't remap file names on torrents we created, and
         save remap setting in torrent config file (tickets #571, 771)
       - Escaping fixes since names may not be remapped
       - Use better encodePath() from Jetty
       - Don't say create torrent succeeded when it didn't
       - Add more sanity checks for base path of created torrent
    
    
    2014-08-18 zzz
     * i2psnark:
       - Don't send HTML-only headers for icons
       - Catch IllegalStateException for icons
     * Tunnels: Use consistent tunnel pair for Delivery Status Message
       to reduce network connections (ticket #1350)
    
    
    2014-08-15 zzz
     * Console: Escaping fix (ticket #1348)
     * I2CP: Lookup synch cleanups
    
    2014-08-13 dg
     * Console, EventLog: add BECAME_FLOODFILL and NOT_FLOODFILL, they are now shown
       at the /events page when the router changes its floodfill state
    
    2014-08-13 zzz
    
    zzz's avatar
    zzz committed
     * Console: Escaping fix (ticket #1346)
     * i2psnark: Fix add torrent NPE
    
    
    zzz's avatar
    zzz committed
    2014-08-10 zzz
    Prop from i2p.i2p.zzz.snarkconfig:
     * i2psnark:
       - Move config file and DHT persistence file to a config dir
       - Move per-torrent configuration from "zmeta" in the main config file
         to a per-torrent config file (ticket #1132)
       - Split timestamp and bitfield into separate configs
       - Fix misspelling of autoStart config
       - Remove two unused SnarkManager methods
       - Refactor file deletion in prep for better file name handling (ticket #571)
       - Don't use canonical files in directory listings,
         for speed and to avoid file comparison problems (tickets #1079, #1148)
       - Set base file/dir in Storage constructor, make final,
         in prep for arbitrary locations (ticket #1028)
       - Add missing nonce protection for file priority setting
       - Add torrent mime type
    
    
    zzz's avatar
    zzz committed
    2014-08-10 zzz
    Prop from i2p.i2p.zzz.test2:
     * Console: Show share options below 30% (ticket #1329)
     * Crypto: Move TransientSessionKeyManager from core to router.
       I2PAppContext will return the dummy SessionKeyManager which
       is sufficient for non-tag uses (e.g. Bote).
       Client use of end-to-end encryption using SessionTags was
       disabled in release 0.6, 2005-07-27.
     * KeysAndCert: Change hashcode to prevent possible collisions
       caused by apps with zeroed pubkey
     * Plugins: Start of SU3 support (ticket #1227)
     * SAM:
       - Don't spawn a thread for each transmitted datagram
       - Set protocol field for raw and signed datagrams
       - Enforce a 60s timeout for HELLO
       - Use naming service cache to reduce Destination object churn
       - Get Log object from the log manager
     * SigType: Add static isAvailable() methods
     * SSU: Speed up introductions by responding to HolePunch (ticket #1333)
     * SU3File:
       - Add support for XML and NEWS types
       - Fix NPE on EOF reading input
       - Add -x option to bypass signature verification
       - Add -k option to use specified private key cert for verification
       - Don't verify signature in showversion
     * UPnP: Disable external entities in XML parser
    
    2014-08-10 zzz
     * Console: Hide client delete buttons unless advanced on /configclients
    
    
    zzz's avatar
    zzz committed
    * 2014-08-09 0.9.14.1 released
    
    
    kytv's avatar
    kytv committed
    2014-08-07 kytv
     * Updates to geoip.txt and geoipv6.dat.gz based on Maxmind GeoLite Country
       database from 2014-08-06.
    
    
    zzz's avatar
    zzz committed
    2014-08-03 zzz
     * Console:
       - Fix update buttons
       - Don't filter parameter names starting with "nofilter_"
       - Re-allow configadvanced, news URL, and unsigned update URL if routerconsole.advanced=true
       - Re-allow plugin install if routerconsole.advanced=true or routerconsole.enablePluginInstall=true
       - Only allow whitelisted plugin signers, unless routerconsole.allowUntrustedPlugins=true
       - Re-allow clients.config changes if routerconsole.advanced=true or routerconsole.enableClientChange=true
       - More escaping
     * i2psnark: Fix add torrent form
    
    
    zzz's avatar
    zzz committed
    2014-07-31 zzz
     * ExecNamingService: Remove
     * Plugins: Add whitelist of keys
    
    
    zzz's avatar
    zzz committed
    * 2014-07-26 0.9.14 released
    
    
    zzz's avatar
    zzz committed
    2014-07-26 zzz
     * Console:
    
    zzz's avatar
    zzz committed
       - Fix several XSS issues (thx Exodus Intelligence)
    
    zzz's avatar
    zzz committed
       - Add Content-Security-Policy and X-XSS-Protection headers
       - Disable changing news feed URL from UI
       - Disable plugin install from UI
       - Disable setting unsigned update URL from UI
       - Disable /configadvanced
     * DataHelper: Disallow \r in storeProps() (thx joernchen of Phenoelit)
     * ExecNamingService: Disable (thx joernchen of Phenoelit)
     * Startup: Add susimail.config to migrated files
    
    
    kytv's avatar
    kytv committed
    2014-07-23 kytv
     * Updates to geoip.txt and geoipv6.dat.gz based on Maxmind GeoLite Country
       database from 2014-07-02.
    
    
    2014-07-19 zzz
     * i2psnark: Don't prefer leeches during end game, to
       prevent slowdowns or stalls
    
     * SAM: Add support for RAW on the bridge socket in v3 (ticket #1334)
    
     * Streaming; Disable fail-fast for now.
    
     * SusiMail: Better error message on decode fail
    
    str4d's avatar
    str4d committed
    2014-07-15 str4d
     * I2CP: Stubs for I2CP connections over Unix domain sockets
    
    
    zzz's avatar
    zzz committed
    2014-07-11 zzz
     * Datagrams:
      - Redefine the repliable datagram signature for non-DSA_SHA1 sig types;
        was the sig of the SHA-256 of the payload, now the sig of the payload itself.
    
    
    2014-07-03 zzz
     * Base64:
      - Catch numerous decoding errors that were previously misdecoded (ticket #1318)
      - Improve decoding efficiency, reduce copies
      - encode(String) now uses UTF-8 encoding
      - decode() now accepts short strings without trailing '='
      - whitespace in decode will now cause an error, was previously ignored
     * Console: Add event log viewer (ticket #1117)
    
    
    kytv's avatar
    kytv committed
    2014-07-02 kytv
    
     * Update Java Service Wrapper to v3.5.25
        - Windows: x86 and x64 versions self-compiled with VS2010 in
          Windows 7. The icon has been changed from Tanuki's default to Itoopie.
        - Linux ARMv6: Compiled on a RaspberryPi using gcc 4.6.3-14+rpi1,
          Oracle Java 1.7.0+update40 and stripped
        - All other binaries are from the "community edition" deltapack offered by
          Tanuki.
    
    
    2014-06-29 zzz
     * NetDB: Fix handling reseed URLs with ports (ticket #1278)
    
    
    2014-06-28 zzz
    
     * NetDB: Add support for reseeding with su3 files (ticket #934)
    
     * SAM:
       - Support SIGNATURE_TYPE, bump to 3.1 (ticket #1318)
       - Private key checking fixes (ticket #1318)
       - Parameter parsing fixes (ticket #1325)
       - Cleanups
    
    2014-06-24 zzz
     * Streaming; Drop the preliminary channel implementations,
       as they don't work and can't ever work as designed.
    
    
    2014-06-23 zzz
     * Streaming:
       - Bundle new socket messages for translation
       - Fix connection error message
     * Tunnels: Reject participating tunnels when hidden (ticket #1314)
    
    
    zzz's avatar
    zzz committed
    2014-06-21 zzz
     * i2psnark:
       - Display webapp name in html title (ticket #1311)
       - Use tracker from magnet link in display (ticket #1313)
       - Clarify auto-start (ticket #1293)
       - Include tracker in magnet link on details page (ticket #964)
    
    
    2014-06-13 zzz
     * i2psnark: Fix NPE when fetching invalid torrent (ticket #1307)
     * Transports: Disallow Carrier Grade NAT (RFC 6598) addresses
     * Tunnels: Don't get stuck only building tunnels
       for an empty pool (ticket #1300)
    
    
    2014-06-10 zzz
     * i2psnark: Fix decoding of negative numbers (ticket #1307)
     * NewsFetcher: Only treat correct status codes as success
    
    
    zzz's avatar
    zzz committed
    2014-06-09 zzz
     * i2psnark:
       - Show client version if available
       - Linkify all announce URLs on details page
       - Sanitize announce URLs
     * Jetty 8.1.15.v20140411
     * Tomcat 6.0.41
    
    
    2014-06-07 zzz
     * Console: Fix NPE in summary bar
     * Eepsite: Updated French help page (thx hummingbird)
     * i2psnark: Fix errors when checking read-only files
     * NetDB: Reduce negative lookup cache time
     * OCMOSJ:
       - Increase timeout if we must lookup leaseset
     * Streaming:
       - Shorter expire time in TCBCache
       - Don't fail a connection once it is up
    
    
    zzz's avatar
    zzz committed
    2014-06-01 zzz
     * i2psnark:
       - Store seed/leech status in DHT tracker (ticket #1280)
       - Increase max received DHT nodes (Vuze sends more)
    
    
    zzz's avatar
    zzz committed
    2014-05-31 zzz
    Prop from i2p.i2p.zzz.test2:
     * Console: Fix shutdown error on old wrappers (ticket #1285)
     * CPUID:
       - Add hasAES()
       - Fix bugs in unused hasSSE3(), hasSSE41(), hasSSE42()
     * Crypto:
       - Use JVM AES when faster
       - Don't start YK thread in constructor (ticket #973)
     * HTTP client:
       - Fix 'connection reset' browser messages
         after an error in the first line (ticket #1277)
      - Add GUI options for user-agent, referer, accept
      - Disable SSL to i2p addresses by default, add GUI option
      - Fix NPE in error handler
     * I2CP: Per-message reliability settings (ticket #788):
       - Store message nonce in ClientMessage, so we may send
         a MessageStatusMessage with a failure code to the client
         without sending an ACCEPTED MessageStatusMessage first.
         All MessageStatusMessages sent in response to outbound messages will now have a valid nonce.
       - Clean up and reuse MessageState for asynch notification
       - New I2PSession sendMessage() method and listener
       - Move VerifyUsage from SimpleScheduler to SimpleTimer2 for efficiency
       - New I2PSessionException
       - Streaming PacketQueue requests status for SYNs on outbound conns
       - PacketQueue throws I2PSessionException in streams
     * i2psnark:
       - Support ports in announce URLs (ticket #1283)
       - Change "private" value in infohash from string to number,
         to match what everybody else does
       - Send seed/leech status in DHT announces (ticket #1280)
       - Extend DHT tracker expire time from 45m to 3h
       - Extend DHT announce interval from 10m to 40m
       - Increase announces from 1 peer to 4 (ticket #1281)
       - Respond to get_peers with an empty peers list instead of
         a nodes list if the requester was the only peer (ticket #1279)
       - Fix sendError() (still unused)
     * i2ptunnel:
       - Show key cert settings
       - Display custom error pages for I2PSocketExceptions (ticket #788)
       - Tag I2PSocketException text for translation (no bundles yet)
       - Move methods from superclasses to I2PTunnelHTTPClientBase
       - Fix connect client error pages, but they aren't displayed anyway
       - Don't start I2PTunnelRunner threads in constructor (ticket #973)
     * SusiMail: fix NPE (ticket #1296)
     * SystemVersion: Add isJava7() and isX86()
    
    
    zzz's avatar
    zzz committed
    * 2014-05-22 0.9.13 released
    
    
    2014-05-20 zzz
     * Fixes after code review
     * SSU: Fix peer test deadlock (ticket #1286)
    
    
    2014-05-15 kytv
     * Translations, imported from Transifex:
    
    zzz's avatar
    zzz committed
       - Dutch, French, German, Italian, Japanese, Norwegian Bokmål, and Ukrainian
    
         translation updates
       - Start of Slovak language translation
     * Updates to geoip.txt and geoipv6.dat.gz based on Maxmind GeoLite Country
       database from 2014-05-06.
    
    
    kytv's avatar
    kytv committed
    2014-05-14 kytv
     * Update the UserAgent that we send for users that go out through the outproxy
    
       to match that of the current Tor Browser Bundle.
    
    kytv's avatar
    kytv committed
    
    
    2014-05-13 zzz
     * BOB, SAM, i2psnark: Fix datagram NPE (ticket #1275)
    
     * i2psnark: Escaping fixes on details page
     * SusiMail:
       - Fix AIOOBE (ticket #1269)
       - Don't let an exception on one mail break others
    
    zzz's avatar
    zzz committed
    2014-05-10 zzz
     * NTCP: Fix NPE (ticket #996)
     * SusiMail: Remove deleted mails from memory
    
    2014-05-09 zzz
     * SusiMail: Add more locking (ticket #1269)
    
    2014-05-08 zzz
     * i2psnark: Add log message if directory does not exist (ticket #1263)
     * i2ptunnel: Display warning for duplicate client ports (ticket #1265)
    
    
    2014-05-07 zzz
     * Console:
       - Add hiddengate.i2p
       - Fix console getting disabled when saving client config (ticket #1260)
     * Router: Add warning at startup if console is disabled
     * SSU: Extend establishment phase retx timeout
     * SusiMail:
       - Don't fetch headers from folder sorters
       - Update debug setting when saving config
     * Transports: Use constant time method for HMAC verification
     * Tunnels: Revert expl. OB default back to 2 + 0-1 for now
    
    2014-05-01 zzz
     * SusiMail: js enhancements, build cleanups, css tweaks
    
    
    2014-04-30 zzz
     * Plugins: Retry deletion at restart if it fails (ticket #1257)
    
    2014-04-29 zzz
     * SusiMail:
       - Add print css
       - Hide header and footer in mobile css
       - Fix 'from' address in compose
    
    2014-04-28 zzz
     * UDP:
       - Locking fixes on peer testing
       - Slow down peer test frequency, esp. when firewalled
    
    
    zzz's avatar
    zzz committed
    2014-04-27 zzz
     * NTCP: Remove published NTCP address if SSU becomes firewalled,
    
             to fix the "Firewalled with NTCP enabled" message,
             broken during IPv6 implementation in 0.9.8
    
    zzz's avatar
    zzz committed
     * Router: Set killVMOnEnd before runRouter() (for azi2phelper)
     * RoutingKeyGenerator: Don't assume UTC (for azi2phelper)
     * SusiMail:
       - Add locking for disk cache
       - Remove cancel button from login page
    
       - New configuration page (ticket #1158)
    
    zzz's avatar
    zzz committed
       - Move set page form to configuration page
       - Theme and js enhancements
     * UDP:
       - Locking fixes on rebuilding address
       - Don't rapidly churn address when we don't have enough introducers
    
    
    zzz's avatar
    zzz committed
    2014-04-25 zzz
     * SusiMail:
       - Add icons for new messages, attachments, and spam
       - Different colors for new mail and spam
       - Tweak sort button display based on current sort
       - Display image attachments inline
       - Don't rezip certain attachment types, just offer link
       - Move delete and confirmation buttons
       - Increase max size for full download again
       - Fix repeated re-saves of mail to disk
       - Enable auto-deletion of downloaded mails
    
    zzz's avatar
    zzz committed
       - Send delete to server for mails already downloaded
    
    zzz's avatar
    zzz committed
    
    
    zzz's avatar
    zzz committed
    2014-04-24 zzz
     * SusiMail:
       - Add background mail checker
       - Add idle timeout connection closer
       - Rely on idle checker for most delayed deletions
       - Cleanup resources better when shutting down session
       - Don't add deleted mails to folder
       - Set socket soTimeouts
       - Display errors after check mail button pushed
    
    
    zzz's avatar
    zzz committed
    2014-04-23 zzz
     * SusiMail:
       - Queue deletions for a later thread
       - Synch all folder access
    
    zzz's avatar
    zzz committed
       - Fix fetching of new mail
    
    zzz's avatar
    zzz committed
    
    
    zzz's avatar
    zzz committed
    2014-04-22 zzz
     * SusiMail:
       - Add persistent cache
    
    zzz's avatar
    zzz committed
       - Fix encoding in sent mails on non-UTF8 platforms
    
    zzz's avatar
    zzz committed
       - Show sender name in folder view
       - Add support for configured sender name
       - Add HTML escaping of '&'
       - Fix Folder sorting so UP is up and DOWN is down
       - Fix capture by show page after back button
    
    zzz's avatar
    zzz committed
       - Load all mails from disk at startup
       - Add offline mode
    
    zzz's avatar
    zzz committed
    
    2014-04-21 zzz
     * SusiMail:
       - Pipeline all deletes and quit
       - Don't reconnect after delete and quit
       - Verify connected before each POP3 operation
       - Don't clear messages if a reconnection fails
       - Use locale-based sorting for strings
       - Increase limit for full fetch again
       - Increase default page size back again
    
    
    2014-04-21 dg
     * findbugs: mostly stream closure fixes in router, apps, core
    
    
    zzz's avatar
    zzz committed
    2014-04-20 zzz
     * SusiMail:
       - Implement extensive pipelining in POP3 for a big speedup
         of the initial connection
       - Don't require an attachment to be "uploaded" to send it
       - Move delete attachment button, hide if no attachments
       - Save BCC-to-self preference in the session
       - Fix date format in reply
       - Close any open POP3 socket when session is unbound
       - Don't keep returning user to compose page (ticket #1252)
       - Add javascript capture of back button on compose page
    
    2014-04-19 zzz
     * Console: Remove the classpath workarounds for SusiMail,
       since it isn't using the jetty classes any more
     * SusiMail:
       - Increase max size of mails that are fetched in full,
         previous limit was so small it never happened.
       - Move page nav to top of folder view, hide if only one page
       - Refuse to send mail with no "to"
       - Reduce default page size as it slows startup
       - CSS and layout fixes
       - Flush writes in POP3 and SMTP
       - Don't wait for SMTP response after QUIT
       - Tell the user if there are no messages
       - Fix the message view layout
       - Message view attachment cleanups
       - Pipeline USER and PASS to save a round-trip at startup
       - Better synchronization in POP3
       - Properly de-byte-stuff in POP3
       - Remove unnecessary caching in POP3
       - More efficient handling of POP3 responses
       - Remove 60s timeout for fetching a message,
         so retrieval of large messages doesn't fail
       - Use pipelining in SMTP
       - Rewrite SMTP response processing
       - Translate SMTP error messages
    
    
    zzz's avatar
    zzz committed
    2014-04-18 zzz
     * configclients: Don't allow console disable
    
     * I2PTunnel IRC Client: Prevent AIOOBE (ticket #1254)
    
    zzz's avatar
    zzz committed
     * SusiMail:
       - Extend session expiration (ticket #1253)
       - Handle non-UTF8 encoding on header lines (ticket #508)
       - Display dates in current locale and time zone
       - Display sender name on message view
       - Remove sort-by-ID buttons
       - Hide "reload config" button unless config file is present
       - Increase default page size
    
       - Don't force reconnection on folder view (ticket #1253)
       - Button theme tweaks
       - Only show logout button on folder view
    
    zzz's avatar
    zzz committed
       - Add dependency tracking to build
    
    
    zzz's avatar
    zzz committed
    2014-04-17 zzz
     * i2psnark: Randomize announce list order and limit size
     * SSU: SessionRequest replay prevention (ticket #1212)
     * SusiDNS:
       - Locking on config file accesses
       - Remove static log and context
     * SusiMail:
       - Button styling for prev,next,list
       - Log errors to router log too
     * Tunnels: Increase OBEP throttle limit
    
    
    2014-04-06 zzz
     * NetDB: Iterative search improvements
    
    zzz's avatar
    -2  
    zzz committed
    2014-04-05 zzz
     * I2PTunnel:
       - Add server option for unique local address per-client
       - Fix changing outproxy without stopping tunnel (ticket #1164)
    
       - Fix add-to-addressbook hostname link in i2ptunnel (ticket #688)
    
     * NetDB: Skip key cert LS stores and verifies for floodfills that don't support them
    
    zzz's avatar
    -2  
    zzz committed
    
    
    2014-04-01 zzz
     * Console: Fix summary bar html when displaying an update constraint
     * NetDB: Handle RI response from non-floodfill router down a client tunnel
    
    
    zzz's avatar
    zzz committed
    * 2014-03-31 0.9.12 released
    
    
    2014-03-28 zzz
     * i2ptunnel.config: Remove irc.freshcoffee.i2p
     * StatManager: Don't start thread for an empty config