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

Skip to content
Snippets Groups Projects
history.txt 638 KiB
Newer Older
str4d's avatar
str4d committed
 * Console:
   - Increase displayed changelog lines to help ensure at least one whole
     release cycle is visible
   - /tunnels: Fix display issue with inbound/outbound glyph display in table
     header (classic/light)
   - light: Prevent routerlogs from causing horizontal page overflow
 * I2PSnark:
   - Fix I2PSnarkUtil.getCommentsName() to match its JavaDoc
   - Reduce size of screenlog font at 1400-1600px viewport width to lessen
     chance of text-wrapping (ticket #1996)
   - classic: Fix a linespacing issue in the config section (options:) that only
     triggers in foreign languages that force the options td to wrap
 * Fix HTML tags across non-default conditional branches
zzz's avatar
zzz committed
2017-07-08 zzz
 * GeoIP, blocklist, translations update

 * Console:
   - /configlogging: Fix log file size config bug (ticket #1996)
   - /logs: Correctly format unavailable crypto warnings (ticket #1996)
   - Show advanced sidebar links by default in advanced mode (ticket #1996)
2017-07-02 str4d
str4d's avatar
str4d committed
 * Console:
   - Show correct icon for "Firewalled" network status
   - Cosmetic changes to new firewalled network status in sidebar
   - Arabic: ensure the destinations correctly align on /tunnels
 * SusiDNS: Default to the console theme
str4d's avatar
str4d committed
 * I2PSnark: Ensure .snarkNoneLoaded background color remains constant on
   mouseover in dark theme
str4d's avatar
str4d committed
2017-07-01 str4d
str4d's avatar
str4d committed
 * Console:
   - /netdb:
     - All Routers/Leasesets/Sybil sections:
       - Each transport instance on own line
       - Better presentation of address characteristics
       - Place flag in table header
     - Container div for leasesets to allow 2 column display at wider viewport width
     - Increased spacing of lease information in leaseset tables
     - Add div for "not initialized" message
     - Reorganize content display in sybil database to reduce horizontal whitespace:
       - Conditional 2-column display of sybil families
       - Sybil router characteristics & threatpoints presented in multi-column view
       - Added empty (n/a) fields to maintain visual consistency in column view
   - /tunnels:
     - Tag "Local" for translation (and convert to lowercase in CSS)
     - Arabic: ensure our tunnel tables display correctly
str4d's avatar
str4d committed
 * I2PSnark:
   - Fix unclosed <label>
   - Standalone:
str4d's avatar
str4d committed
     - Better target the per-theme and imported console resources
str4d's avatar
str4d committed
     - List all available themes in config section
   - Themes: tidyups & further optimizations to reduce lag
zzz's avatar
zzz committed
2017-07-01 zzz
 * Fix family key export (ticket #2011)

str4d's avatar
str4d committed
 * Console:
   - Welcome page readmes:
     - Responsive 2 column layout for eepsite section
     - Minor formatting corrections
     - Ensure urls in Arabic display correctly
     - Fix commenting out of forum.i2p where it impacts surrounding text
     - Cleanup unneeded CSS classes
     - Enhance Chinese legibility
   - Add untagged strings for /tunnels tooltips and local tunnel indicator (to
     be tagged for translation post .31 release)
   - classic: reduce color contrast of main display font
   - classic/dark/midnight: alignment on /peers and /tunnels
   - /tunnels:
     - Add bandwidth tiers definitions
     - Indicator for local tunnels
   - /profiles:
     - Split capabilities and version
     - Minimize wrapping at narrow viewport width
     - Iconify view profile link
     - Add "OK" status indication for functional peers
   - /peers: merge Dir and CWND rows in definitions table
   - /events: when no events found, place result in table
   - All themes: marginally increased width of sidebar to better accommodate
     extra long strings
   - Chinese: ensure buttons do not deviate in height (ticket #1996)
   - Arabic: fix alignment issues on /configui; presentational enhancements
   - Misc: remove erroneous tags
 * i2ptunnel: consistent tooltips and Destinations for editClient and editServer
str4d's avatar
str4d committed
 * I2PSnark:
   - Disable JavaScript td:onclick (handled by css)
   - Fix minimode bug in vanilla/ubergine
   - Minimode for dark/classic
   - ubergine:
     - Further optimizations to reduce lag/cpu load
     - New hidpi details.png to bypass mix-blend mode in .snarkTorrents
   - Usability:
     - Tab navigation now works for toggle panels
     - Touch target for configure button now extends entire length
   - All themes: cleanups and optimizations
zzz's avatar
zzz committed
2017-06-15 zzz
 * Data: Cache hostname lookups in RouterAddress (ticket #1998)
 * Job Queue: Make search jobs droppable (ticket #1998)
 * Router: Increase JVM DNS cache time (ticket #1998)
 * Util: Add negative DNS lookup cache, increase cache size (ticket #1998)

str4d's avatar
str4d committed
2017-06-12 str4d
 * Console:
str4d's avatar
str4d committed
   - /logs: fixed environment/running info table resize on hover (ticket #1996)
str4d's avatar
str4d committed
   - Scale theme/language divs so we don't truncate language display
   - Arabic (light) adjust font size for sidebar elements
   - Sidebar network status display (ticket #1996)
   - Usability:
     - Enhance presentation of tables on /peers (improve header/column alignment,
       center to separator for multi-value rows)
     - Enhance presentation of tables on /tunnels (reliable alignment of mixed
       content in rows, more prominence to bandwidth tiers)
   - /netdb: Fix UI bug with unpublished LeaseSets
str4d's avatar
str4d committed
 * I2PSnark:
   - Usability: add tabindex="0" to screenlog
   - Update navbar link classes to allow easier targetting of button type
   - Remove disabled cursor for known tracker radio icons (ticket #1996)
   - Fix alignment issue for comments (ticket #1996)
   - ubergine: further optimize theme to reduce scroll lag (ticket #1996)
   - ubergine/vanilla:
     - Add mini-mode at <=800px
     - Small size reduction to navbar links (ticket #1996)
 * Imagegen: Theme tweaks

2017-06-05 str4d
 * Add state classes to network status messages in sidebar
str4d's avatar
str4d committed
 * Switch light theme to the same top-nav style as the other themes
str4d's avatar
str4d committed
2017-06-04 str4d
 * De-duplicate strings for translation
 * Minor theme tweaks and bugfixes
 * SusiDNS: Update SVG image to use grouped objects for styling and hotlinks
 * Hardcode language names in their native language (to make them easier for
   users to identify)
str4d's avatar
str4d committed

str4d's avatar
str4d committed
2017-06-03 str4d
 * Console:
   - Add spans to /stats page to avoid summary info breaking mid-sentence, and
     to aid presentation
   - Adjust /stats CSS so information isn't over-dense
   - Set graph size for generated graphs on /stats to 600x200
   - Fix netdb leaseset tables
     - Ensure we only iconify add to addressbook links and not b32 dests
   - Individual icons for I2PSnark and I2P Plugins on /home
   - Add div to upnpstatus on peers to comply with layout
   - Fix various unclosed/erroneous tags
str4d's avatar
str4d committed
 * SusiDNS:
   - Rework SVG image
     - Now features interactive feedback when mouseover objects and hotlinks
   - Update fallback images for en and fr
   - Update overview text
   - added tabindex="0" to destination addresses, highlighted on :focus
str4d's avatar
str4d committed
 * i2psnark:
   - Reorder .snarkCommentInfo sections so my rating / average rating is located
     directly above posted comments/ratings in .snarkComments
   - If author name for comments is configured, display it in .snarkCommentInfo
     table header
   - Full status tooltips for status icons in .snarkTorrents
   - Rework td/th classes for .snarkTorrents so each column (both th + td) now
     belongs to a given class
   - Stop .snarkTorrentStatus class being incorrectly applied to .peerinfo
     columns
   - Spans for DHT peers / Dest in #totals, .snarkTorrentInfo info hash
   - Delete icon for delete comments td
   - Overhaul .snarkTorrents column widths
   - CSS tidyups
 * Compress some of the larger image files by 40-60%
str4d's avatar
str4d committed
 * UI feedback:
   * Console:
     - Increase contrast of table rows on profile/tunnels/peers tables
     - Changed pink font to magenta in /logs to increase legibility
     - Soften H3 headings in sidebar
     - Single click to select I2P Version and Running Environment table text,
       with table:hover color change and text cursor to better reflect selection
       - Modify text above to indicate what exactly needs to be included in logs
     - Reduce size of monospace dests in peers/profiles/tunnels, add additional
       spacing (responsive)
     - Fix resizing of sidebar reseed button
str4d's avatar
str4d committed
     - De-emphasise sidebar app icons with background-blend-mode: luminosity
str4d's avatar
str4d committed
     - Change sidebar snark icon to match homepage icon
     - Bump div.main text color from #222 to #333 (reduce contrast)
str4d's avatar
str4d committed
     - (light, dark, midnight) fix minor alignment issues with Arabic CSS
     - JRobin (graphs):
       - Fix font size issue for non-title text on graphs
       - Optimise layout (tweaked padding, legend box size etc)
       - Tweak graph lines (now dotted, slightly less opaque)
str4d's avatar
str4d committed
   * i2ptunnel:
     - Remove redundant labels and spans for keyaccess
     - Edit Server:
       - Shift Local Destination / Private Key file to share table row
       - Move "Use SSL to connect to target" to Target Port column
     - Add translation tagging for title tags
     - Remove redundant title tags and provide enhanced strings for features
       that benefit from clarification
str4d's avatar
str4d committed
     - Move title tags to <label> where applicable
     - Fixed Cancel button on registration so it now jumps back to the list page
     - textareas for registration page and local destination on edit server page
       changed to divs
       - Scrollbars hidden until mouseover, 1 click to select content
       - Responsive width, tabindex="0"
     - Fix overflow issue on select dropdowns (edit server/client -> tunnel
       options) in Chrome / Blink
     - More generous vertical padding for th (responsive)
     - Larger h2/h3s (responsive)
     - Increase spacing between panels in iframe mode
str4d's avatar
str4d committed
   * SusiDNS: Change address helper icon to add book icon
   * i2psnark:
     - Remove font-adjust-size (ubergine/vanilla)
     - Add extra spacing to screenlogger bullets (ubergine)
str4d's avatar
str4d committed
     - (ubergine) speed up tr:hover events by optimizing css (remove latency)
     - (all) remove fade activation delay for download bars, speed up fade-in /
       fade-out
     - Fix i2psnark link in navbar overflow issue in Arabic (ubergine/vanilla)
     - (ubergine) change default font for screenlog from Noto Mono to Droid Sans
       Mono to soften text/slightly reduce text size
str4d's avatar
str4d committed

2017-05-25 zzz
 * Crypto: Fix AES NPE on 4-core RPi 2nd try (ticket #1989)

2017-05-24 zzz
 * GeoIP: Fix NPE

2017-05-21 zzz
 * i2psnark: Fix bencoded scrape response for zzzot (ticket #1994)

2017-05-21 str4d
 * i2psnark: Integrate ratings and comments into themes

str4d's avatar
str4d committed
2017-05-20 str4d
   - Clarify choices on address helper save page (ticket #1940)
   - Add router.hideFloodfillParticipant to advanced settings help
str4d's avatar
str4d committed
 * i2psnark:
   - Make DHT debug section collapsible
   - Tooltips for downloading/finished torrents
   - Download bars for torrents, torrent parts and peer downloads
   - Friendlier date format (with completed: <date> tooltip for finished torrents)

2017-05-19 zzz
 * Console: Move /peers page rendering from router to console (ticket #1879)
 * i2psnark: Add ut_comment UI and per-torrent configuration
str4d's avatar
str4d committed
2017-05-18 str4d
Prop from i2p.i2p.str4d.ui:
 * Backend HTML changes to routerconsole and apps:
   - IDs, classes and <span>s for styling
   - <label>s to extend touch targets
   - Table layouts where it makes sense
   - Tooltips
   - Move most of the hard-coded styles to CSS
 * Overhaul all themes:
   - Responsive layouts
   - Standardisation of UI elements, configuration labels, etc.
   - Consistent layouts, spacing, font sizes, etc.
   - Routerconsole themes now present for all bundled plugins
   - HiDPI images
   - Accessibility and localisation improvements
   - Testing on a wide array of browsers and screen sizes
 * Console:
   - /home:
     - Move console links above hidden service links
     - Link are now full touch button targets
     - Add tabindex ="-1" to icon links
   - Sidebar:
     - Include bandwidth in minimal sidebar
     - Optional Advanced section
   - /graphs:
     - Graph image updates
       - Improve contrast
       - Custom fonts with fallback
       - Left-align legend
       - Thinner restart and graph lines for clarity
       - Separate legend and display period date
       - Text tidyups
     - Tweak layout and text of configuration options
     - Default width to 400px to avoid info truncation
     - 15s and 30s refresh options
   - /help:
     - Collate help topics from various routerconsole pages
     - Document various router.config settings
     - Add mini-FAQ
   - /peers: CSS sort buttons, with new icons to avoid conflation of
     tunnel direction and sort direction
   - /profiles: Add definitions for capabilities
   - Limit file inputs to accepted extensions
   - Fix bug in /configui lang selector when not in advanced mode
 * i2psnark:
   - Collapsible "Add Torrent" and "Create Torrent" sections
   - Disable theme selector when "universal theming" enabled
   - Debug info styling
   - <noscript> fallbacks:
     - Use meta-refresh
     - Hide JavaScript-dependent buttons
 * SusiDNS:
   - Disable spellcheck on config editor
   - Additional column on hostname list page for helper address with icon, and
     iconfication of b32 addresses
   - Add minified identicon to hostname column
   - Consolidation of Hostname/host name/name referenced: now all "Hostname"

 * Crypto: Fix AES NPE on 4-core RPi (ticket #1989)
 * i2psnark: Fix HTML double-escape (ticket #1992)
 * Router: New method to get bandwidth class

2017-05-12 zzz
 * i2psnark: Better handling of read-only i2psnark dir (ticket #1990)

2017-05-10 zzz
 * Debian: Fix apparmor profile (ticket #1986)
 * SusiDNS: Fix display of default subscription

2017-05-05 zzz
 * Blockfile: Move from i2p.jar to addressbook.jar
 * i2psnark: Initial support for ut_comment, no UI yet
 * Jetty: New default servlet for eepsite, with
   locale-independent directory listing (ticket #1965)
zzz's avatar
zzz committed
* 2017-05-03 0.9.30 released

2017-04-30 zzz
 * Jetty: Rollover log files at midnight, not noon

zzz's avatar
zzz committed
2017-04-29 zzz
 * Build: Fix failing release tests
 * Jetty:
   - Revert previous checkin, unrelated to the Jetty Timer bug
   - Add patch to fix Jetty Timer bug, backported from Jetty 9.4
 * Translations update

2017-04-27 zzz
 * Console: Disable Jetty timer thread consolidation
   causing log file rollover to stop (ticket #1068)

2017-04-26 zzz
 * HTTP Proxy: Add delay before jump page

2017-04-14 zzz
 * SSU:
   - Reuse previous introducer expiration if available,
     so we don't force a republish
   - Don't run peer test if configured to force firewalled

2017-04-13 zzz
 * SSU: Publish introducer expiration (proposal 133)

2017-04-06 zzz
 * Debian: Add bash-completion scripts

2017-04-04 zzz
 * Router: Fix config dir location in Gentoo

2017-04-02 zzz
 * Context: Fix ClientAppManagerImpl in AppContext
 * i2psnark: Fix standalone configuration for Jetty 9

2017-04-01 zzz
 * Console: Fix stopping of webapps when console stops (ticket #1893)
 * i2psnark: Only rewrite torrent config file if changed (ticket #1893)
 * KeyStoreUtil: Reduce log level of expired cert error
 * Util: Don't sync config writes on Android/ARM (ticket #1893)

2017-03-31 zzz
 * SSU:
   - When a IPv6 peer connects, trigger a IPv6 peer test, not a IPv4 one
   - Require two consecutive peer test results for some state transitions,
     to prevent frequent transitions to firewalled and back

2017-03-29 zzz
 * SSU: Refactor PeerTestEvent out of UDPTransport
 * Throttle: Reduce threshold for probabalistic throttling
   on slow platforms (ticket #1964)

2017-03-27 zzz
 * Blockfile: Include authentication strings in exports
 * Build: Suppress JarScanner warning during Debian build (ticket #1975)
 * Debian: Add missing addressbook.jar to package (ticket #1973)
 * SusiDNS: Add addressbook.jar to classpath, don't fail
   to start if it's still not found (ticket #1973)
 * Time: Fix crashes on old Androids (ticket #1976)

2017-03-25 zzz
 * Blockfile: Upgrade to Blockfile format 4 on non-Android ARM
 * i2ptunnel: Allow alt priv key file to be added without restarting I2P

zzz's avatar
zzz committed
2017-03-24 zzz
 * Addressbook: Remove static reference, hide implementation
 * CPUID: Recognize Ryzen

2017-03-23 zzz
 * Plugins:
   - Blacklist i2pbote and BwSchedule
   - Translate exceptions thrown from PluginStarter
   - Add version number to console messages when installing/starting

2017-03-21 zzz
 * i2psnark: Enhancement to support RPC plugin
zzz's avatar
zzz committed
 * Context: New ClientAppManagerImpl in AppContext, so registration works
2017-03-20 zzz
 * i2psnark: Enhancements to support RPC plugin
 * SSU: More work on introducer expiration (proposal 133)
2017-03-18 zzz
 * Addressbook (ticket #1966):
   - Build as jar, not war
   - Put empty war in updater
   - Move Servlet starter to SusiDNS
   - Skip war in RouterConsoleRunner

2017-03-14 zzz
 * Blockfile: Fix specified-destination deletion from the correct book
 * i2ptunnel:
   - New form to enter private key file for alternate destination
   - Use alt destination for registration if set
 * NBI: Adjust info logging at startup
 * SusiDNS:
   - New button for adding alternate destination
   - Fix nonces on details page with multiple destinations
   - Fix single dest deletion on details page with multiple destinations
   - Set book in all forms to ensure correct book

2017-03-13 zzz
 * i2ptunnel:
   - Add subsession support to servers
   - Reset I2P socket on TCP socket errors
 * SAM: Reset I2P socket on handler errors
 * Streaming: Add reset() to I2PSocket API

2017-03-11 zzz
Prop from i2p.i2p.zzz.jetty9:
 * Console: Fix RouterConsoleRunner for Jetty 9
 * Debian packages:
   - Remove libjetty8-java and ant-optional dependencies
   - Add libjetty9-java and libtomcat8-java dependencies
     Fixes stretch/sid package (ticket #1902)
   - Fix up build files for package builds
 * Eepsite: Update initial configuration files for Jetty 9
 * Jetty:
   - Update to Jetty 9.2.21.v20170120 and Tomcat 8.0.33 (tickets #1512, #1935)
     Fixes jsp compilation on Java 9 (ticket #1870)
     Fixes InstanceManager warning (ticket #1818)
     We now support servlet API 3.1, JSP API 2.3, and EL API 3.0.
     Breaks the following plugins: bwschedule, i2pbote, i2pcontrol, zzzot
 * Startup: Add migration code for eepsite Jetty 8 configuration files

2017-03-09 zzz
 * i2psnark: Prevent RuntimeException caused by corrupt i2psnark.dht.dat file
 * Router: Set default sig type to EdDSA for non-Android ARM
 * Streaming: Don't change buffer size when max message size is adjusted

2017-03-06 zzz
 * CPUID:
   - Fix saving of libjcpuid.jnifile on Macs,
     was incorrectly saving as libjcpuid.so (tickets #1865, #1900)
   - Try to load libjcpuid-x86_64-osx.jnilib for 32-bit Macs,
     because as of 0.9.26 it's a 'fat binary' with 32-bit in it also.
   - Add library search path logging to main()
 * NBI:
   - Try to load the "none" architecture for x86, even if
     CPUID loading fails (tickets #1865, #1900)
   - Add library search path logging to main()
 * Throttle: Fix disable of probabalistic throttling
   (ticket #1963) (thx mysterious)

2017-03-03 zzz
 * Utils: Fix crash in Windows installer

2017-03-02 zzz
 * SSU:
   - Initial work on introducer expiration (proposal 133)
   - Fix bug in error handling for introduction parameters in RI

2017-03-01 zzz
 * Servlet: Catch OOM in MultiPartRequest

2017-02-27 zzz
 * i2psnark: Fix disappearing start button
 * addressbook: Add date parameter to authentication strings

zzz's avatar
zzz committed
* 2017-02-27 0.9.29 released

2017-02-27 zzz
 * i2ptunnel: Fix generation of advanced authentication strings

2017-02-23 zzz
 * HostTxtParser: Add -q command line option, enhance return codes
 * PrivateKeyFile: Add option to generate addressbook authentication

zzz's avatar
zzz committed
2017-02-20 zzz
 * GeoIP and blocklist update

 * Build: Fix calls to Class.newInstance() deprecated in Java 9
 * I2CP: Return null on decompression failure instead of
   throwing exception (ticket #1915)
 * Utils: Disable caching of ResettableGZIPOutputStreams,
   add more checks for compression failure,
   fix output for zero-length input (ticket #1915)

2017-02-10 zzz
 * Test: Add random delays and drops to LocalClientManager

 * Streaming: Fix optional delay and choking (tickets #1046, #1939)

2017-02-08 zzz
 * I2CP: Return local delivery failure on queue overflow (ticket #1939)

2017-02-05 zzz
 * Console: Consolidate timer threads (ticket #1068)
 * NTCP: Don't write to an inbound connection before
   fully established, causing NPE (ticket #996)
 * Streaming:
   - Don't always send optional delay (ticket #1046)
   - Don't hard fail on expired message error (ticket #1748)

2017-02-04 zzz
 * HTTP proxies:
   - Pass through relative referer URIs, convert same-origin
     absolute referer URIs to relative (ticket #1862)
 * NTP: Enable IPv6 support (ticket #1896)

2017-01-30 zzz
 * Router: Run shutdown tasks in parallel,
   increase max time for shutdown tasks (ticket #1893)
   i2psnark: Remove most delay between announces at shutdown

2017-01-29 zzz
 * i2ptunnel CONNECT proxy:
   - Add support for outproxy plugin (tickets #1364, #1895)
   - Add support for ports

2017-01-28 zzz
 * Utils: Detect when running as service on Gentoo

zzz's avatar
zzz committed
2017-01-26 zzz
 * Build: Set up translations for man pages
 * Javadoc: Fixes (ticket #1894)

2017-01-24 zzz
 * i2prouter: Add root check to restart and condrestart (ticket #1770)

2017-01-17 zzz
 * Utils: Java 9 yakkety workarounds

2017-01-12 zzz
 * DTG: Don't try to start if headless (ticket #1924)

2017-01-07 zzz
 * i2ptunnel: Fix NPE on proxy.i2p/add when no params

2017-01-06 zzz
 * EepGet: Recognize more status codes

2017-01-04 zzz
 * Crypto: Enforce correct seed and hash lengths in EdDSAPrivateKeySpec
 * Data: No longer sort addresses in an RI by SHA256
 * Router: Replace random tunnel keys when rekeying

2016-12-24 zzz
 * Utils: Add RKG command line tool

2016-12-23 zzz
 * Console: Add Referrer-Policy header

2016-12-22 zzz
 * Blocklist:
   - More efficiently check blocklist when receiving new RI
   - Check blocklist when loading RIs
   - Ensure blocklist is initialized before netdb
 * Clock: Fix duplicate notification of clock shift listeners
 * Console: Limit age of news entries displayed
 * Update: Fix JVM crash and i2p.jar corruption when updating from -1

2016-12-21 zzz
 * NTP:
   - Verify source address and port
   - Add to command line
   - Add KoD support (ticket #1897)
   - Add initial IPv6 support (ticket #1896)

2016-12-20 zzz
 * Build: Fix installer compile failure

2016-12-16 zzz
 * Router: Synchronize graceful exit code access
 * Update: Save blocklist version in UpdateManager

2016-12-16 zzz
Prop from i2p.i2p.zzz.test2:
 * BOB:
   - Refactor NamedDB implementation to HashMap
   - Refactor NamedDB locks to ReentrantReadWriteLock
   - All unlocks in finally blocks, remove redundant unlocking
   - Remove throw declaration from methods that don't
   - Read under write lock when that's simpler
   - Use Boolean fields rather than valueOf()
   - Fix unlock order inversion in I2PtoTCP and MUXlisten
   - Remove unused locking in TCPtoI2P
   - Add missing locking in status command
   - Remove redundant locking
   - Remove unnecessary catch-and-rethrows
   - Spelling fix in error message
   - Make some methods static
 * Console: Sort banlist and floodfills in true binary order, not by base64 string
 * Utils:
   - Consolidate stream copy code
   - Consolidate base64 alphabet string

zzz's avatar
zzz committed
* 2016-12-12 0.9.28 released

zzz's avatar
zzz committed
2016-12-09 zzz
 * Translation updates

2016-12-06 zzz
 * GeoIP: Update from Maxmind 2016-12-06

2016-12-05 zzz
 * Router:
   - Revert default family sig type back to ECDSA
   - Update blocklist

2016-12-02 zzz
 * Cleanup: Single char indexOf()
 * Console: Version the css links

zzz's avatar
zzz committed
2016-12-01 zzz
 * NetDb: Peer selection tweaks

2016-11-27 zzz
zzz's avatar
zzz committed
 * NetDb:
   - Add same-port check in peer selector
   - Add MTU, SSU caps, IPv6 prefix, and cost lookups

2016-11-26 zzz
 * NetDb:
   - Add advanced lookup form
   - Add port and sig type lookups
   - Fix /16 and /8 lookup
   - Fix tab highlighted for all lookups
   - Add sybil points for banlist

2016-11-25 zzz
 * SU3File: Add types for blocklist (proposal #130)

2016-11-24 zzz
 * Sybil tool enhancements
 * Blocklist feed tweaks

2016-11-23 zzz
 * Console: Support RI lookup by caps or IP
 * NetDB: Penalize new and slow peers
 * News: Add command line utility support
 * Router: Support blocklist in the news feed (proposal #129)

2016-11-21 zzz
 * NetDB: Fix detection of bandwidth class with multiple values specified

2016-11-20 zzz
 * NetDB: When doing lookups, don't use floodfills too close
 * Router: Change default family sig type to EdDSA

2016-11-17 zzz
 * Build: Add attributes for java version to all jars and wars
 * Blocklist: Add support for IPv6 in blocklist.txt
 * Console: Add netdb lookup by family
 * NetDB: When verifying store, don't use floodfills too close
 * Tomcat 6.0.48

2016-11-16 zzz
 * Console: Remove dead home page links (ticket #1882)
 * Profiles: Pull same-IP detection into a utility class
 * Router: Add methods to verify and track members of our family

2016-11-15 zzz
 * Certs: Add Let's Encrypt ISRG Root X1 cert

2016-11-14 zzz
 * Logs: Fix output of dup message after 30 minutes

2016-11-13 zzz
 * Console: Add initial news to bottom of news page (ticket #1153)
zzz's avatar
zzz committed
 * i2psnark: Periodically save DHT nodes (ticket #1328)
 * UPnP:
   - Prevent exception on bad HTTP header (ticket #1480)
   - Prevent NPE on socket creation fail (tickets #728, #1681)

2016-11-12 zzz
 * Console:
   - Fix inadvertent config save when clicking sidebar
     buttons on /configstats
   - Add IPv6 firewalled setting on /confignet
 * I2CP: Reduce error level on session closed while signing LS (ticket #1606)
 * JRobin: Move DeallocationHelper logging from wrapper log to router log
 * Profiles: Periodically save, delete old ones after saving (ticket #1328)
 * Susimail:
   - Add logout button to more pages (ticket #1374)
   - Fix nonce error on login after logout
   - Fix internal error after cancel button on settings form when not logged in

2016-11-11 zzz
 * Build: Truncate history.txt bundled in installers

2016-11-10 zzz
 * Transport: Use NTCP for some outbound connections even before
   SSU minimums are met (ticket #1835)

2016-11-09 zzz
 * Transport: Add stats for inbound v4/v6 connections (ticket #1854)
 * Tunnels: Reduce default VTBM records from 5 to 4

2016-11-08 zzz
 * Build: Fix minimum Java version for Windows
 * Install: Add max memory option to runplain.sh
 * Crypto: Change serial number in selfsigned certs from int to long
 * Router: Fix low-memory log messages for non-wrapper (ticket #1795)
zzz's avatar
zzz committed
 * Transport: Improve IPv6 address selection logic
2016-11-06 zzz
 * Console: Add Java 9 log warning (ticket #1870)
 * Security: Consistently log authentication failures for all interfaces
 * Util: Consolidate linux service detection code

2016-11-05 zzz
 * Build: Add support for using libtomcat8-java package
 * Console: Add message to ignore InstanceManager warning (ticket #1818)
 * SusiDNS: Fix jsp EL syntax error with EL 3.0 (Tomcat 8) (ticket #1870)

2016-11-04 zzz
 * Console: Improve handling and logging of webapps that fail to start
 * i2psnark: Add launch-i2psnark.bat (ticket #1871)
 * Transports:
   - New config i2np.allowLocal, fixes test networks (ticket #1875)
   - New configs i2np.udp.minpeers and i2np.udp.minv6peers, for testing (ticket #1876)

2016-10-29 zzz
 * Console: Java 9 fixes for classloader (ticket #1870)

2016-10-28 zzz
 * Build: Fix typo in jcpuid build.sh for Mac (ticket #1865)
 * Crypto:
   - Generate more-conforming selfsigned certs (ticket #1853)
   - Remove deprecated Sha256Standalone as scheduled
 * Utils:
   - Fix Java version detection for Java 9 (ticket #1870)
   - Add Addresses methods for multiple DNS results (ticket #1050)

2016-10-26 zzz
 * Build: Mac jbigi/jcpuid improvements and docs (ticket #1865)
 * JRobin 1.6.0-1
 * Systray: Remove old 32-bit Windows implementation, replaced by DTG

2016-10-25 zzz
 * i2psnark: Better calculation of total upload limit
 * SSU: Increase max IPv6 MTU (proposal #127)
 * Zxing 3.3.0

2016-10-23 zzz
 * Crypto: Create keystore directory when making SSL keys (ticket #1866)

2016-10-22 zzz
 * Build: Fix jbigi build in Arch Linux and others for Java 8 (ticket #1863)
 * Console:
   - New Korean translation
   - New Chinese (Taiwan) translations for susidns, susimail, debian
   - New initial news translations: Czech, Greek
 * Jetty 8.1.21.v20160908

zzz's avatar
zzz committed
2016-10-21 zzz
 * Console:
   - New Galician translation
   - Remove calls to deprecated two-arg setStatus()
zzz's avatar
zzz committed
 * Crypto: Actually use a random nonzero byte in ElGamal
 * Data: Cache serialized leasesets on floodfills
 * NetDB: Disallow RSA for RI or LS
 * Tomcat 6.0.47
 * Utils: Add MTU to command line utils
zzz's avatar
zzz committed
 * Wrapper 3.5.30

2016-10-20 zzz
 * Build: Add library jars to i2p.jar classpath for Debian builds
 * Console: Fix HTML error on /configservice
 * Debian: Update package descriptions, allow Java 9
 * i2psnark: Add ids to rows, add to per-torrent show peers link
 * SSU: Fix minimum version check for IPv6 peer test (tickets #1829, #1861)
zzz's avatar
zzz committed
* 2016-10-17 0.9.27 released

2016-10-16 zzz
 * Fix test for IPv6 firewalled configuration

zzz's avatar
zzz committed
2016-10-14 zzz
 * Translations: Update from Transifex

2016-10-10 zzz
 * Debian: Don't use glassfish-javaee.jar for jstl.jar (ticket #1793)

2016-10-06 zzz
 * GeoIP: Update from Maxmind 2016-10-04

2016-10-02 zzz
 * Crypto: Add EdDSA private key spec constructor for hash
 * i2psnark: Add standalone shutdown method
 * i2ptunnel: Registration page layout fixes
 * SusiMail:
   - Show settings button even if no messages
   - Add nonce to forms (thx Kevin Froman)

2016-09-24 zzz
 * DesktopGUI: Enable by default on Windows
 * i2ptunnel:
   - Don't accept default 'mysite.i2p' as a valid spoof host
   - Don't wrap destination in status message box
 * Reseed: Remove user.mx24.eu as requested
 * Utils: Move SipHashInline from util to crypto

2016-09-22 zzz
 * Crypto: Don't NPE in encoding when field not set
 * DataHelper: Fix read() for nonzero offset
 * i2ptunnel: Whitelist IRC AWAY inbound

2016-08-21 zzz
 * Console: Add jsps to view entire router.log and wrapper.log files

2016-08-19 zzz
 * CPUID: Add IDs for Kaby Lake
 * JettyStart: Fix main()
 * Router: Fix return code in getShutdownTimeRemaining()
 * Tunnels:
   - Enable tunnel testing when in hidden mode (ticket #1192)
   - Enable tunnel testing when without addresses (ticket #1835)
   - Use fast peers for inbound tunnels when without addresses (ticket #1835)

2016-08-14 zzz
 * i2ptunnel:
   - Register actual listen host with port mapper
   - Register POP and SMTP ports with port mapper
 * Reseed: Add new 'atomike' reseed

2016-08-12 zzz
 * i2ptunnel:
   - Add outproxy plugin support to SOCKS (ticket #1824)
   - Use preferred sigtype for new SOCKS tunnels

2016-08-09 zzz
 * Console: Fix UPnP NPE on /peers (ticket #1830)

2016-08-02 zzz
 * i2psnark: Fix SIOOBE on bad announce URL (ticket #1823)
 * SSU: Fix peer test stuck when IPv6-only (ticket #1819)
 * Streaming: Fix debug NPE (ticket #1821)

2016-07-20 zzz
 * SSU:
   - Increase minimum peers if we have a IPv6 address
   - Check for 'B' cap for peer test
   - Fix peer test IP length check

zzz's avatar
zzz committed
 * i2ptunnel: Block 'Proxy' header
 * SU3File: Also look in config dir for signer certificate

2016-07-16 zzz
 * I2CP Client: Handle disconnect properly if received before first LS
 * Streaming: Kill accept() when session disconnects

2016-06-25 zzz
 * SSU peer testing: Add IPv6 implementation (ticket #1752; proposal #126)
 * Utils: Improve random seed initialization
zzz's avatar
zzz committed
2016-06-22 zzz
 * SSU peer testing:
   - Forget the test and don't keep retransmitting to Charlie
     if we receive the Bob reply after the 2nd Charlie reply
   - Only fire a peer test on connection if address has changed

2016-06-16 zzz
 * Console: Split up configclients, add configi2cp,
   configplugins, configwebapps (ticket #1804)

2016-06-15 zzz
 * Utils: Add method to set language in standalone app context
 * i2psnark:
   - Add form to set language in standalone context
   - Add Ukrainian and Japanese translations

zzz's avatar
zzz committed
2016-06-11 zzz
Prop from i2p.i2p.zzz.test2:
 * CPUID: Add CLI output for new AMD tests
zzz's avatar
zzz committed
 * i2psnark standalone (ticket #1191):
zzz's avatar
zzz committed
   - Cherry-pick fixes from psi's github i2psnark_rpc branch
   - Fix up Jetty XML file for Jetty 8
   - Start with JettyStart
   - Add UrlLauncher to launch browser
   - Fix up paths in CSS files during build
   - Force startup delay to 0
   - Fix theme selection
   - Adjust CSS and image paths
   - Add shutdown hook to delete temp dir
 * i2ptunnel CLI: Don't set the listen host to the I2CP host
 * jbigi:
   - Fix GMP version reporting for shared library (ticket #1800)
   - mbuild-all script fixes
 * NetDB: Improve handling of deferred search result jobs

zzz's avatar
zzz committed
* 2016-06-07 0.9.26 released

zzz's avatar
zzz committed
2016-06-03 zzz
 * Update translations from Transifex

2016-06-01 zzz
 * Build: Fix Debian build on ARM (ticket #1801)

2016-05-29 zzz
 * Console: Fix /configfamily form (ticket #1797)

str4d's avatar
str4d committed
2016-05-29 str4d
 * CertUtil: Dynamically load javax.naming classes to avoid
   VerifyErrors on some Androids
str4d's avatar
str4d committed
 * LogWriter: Dynamically load Android writer

2016-05-26 zzz
 * Build: Launchpad build fixes

2016-05-25 zzz
 * DesktopGui: Add monochrome icons for Windows and Mac
 * Reseed:
   - Require two sources minimum (ticket #1794)
   - Update list of sources requiring SNI
 * Translations: Update English po files

str4d's avatar
str4d committed
2016-05-22 str4d
 * I2CP: Dynamically load Android domain socket code

2016-05-20 zzz
 * DesktopGui:
   - Fix systray menu redraw on Mac;
   - Switch to AWT by default on Mac;
   - Hide DTG enable on Mac until we fix dock

2016-05-19 zzz
 * Config files, eepsite help: Add path information for OS X
   and Windows as a service. (ticket #1495)

2016-05-12 zzz
 * NTP:
   - Don't put random data in zeroed fields
   - Increase random data in originate timestamp from 1 byte to 2 bytes
   - Verify originate timestamp to prevent injection
   - Verify received packet size
 * SSU:
   - If configured with a hostname, bind to all v4/v6
     addresses found for that hostname.
   - Fix binding if more than one IP or host was configured.

2016-05-09 zzz
 * Console:
   - Fix escaping of search URLs on /confighome
   - Fix HTML error on /configui
 * DesktopGui: Add 9 new translations
 * i2psnark: Limit cases when we display tracker errors;
   include host name of tracker when we do

2016-05-08 zzz
 * Console: Fix UTF-8 passwords, partial fix for usernames

zzz's avatar
zzz committed
2016-05-07 zzz
 * Build:
   - Add DTG to updater
   - Fix and bundle DTG license info
   - Remove jstl.jar and standard.jar from updater,
     last changed in 0.9
   - Fix bundling of Tomcat license info
   - Add back the old way to build bundles for gettext < 0.19
 * Console:
   - Change to new DTG constructor
   - Don't attempt to start systray or DTG when running as a service
   - Show systray controls for all OSes on /configservice
   - Implement backend for systray control
 * DesktopGui:
   - Implement second TrayManager menu implementation in Swing.
   - Use Swing except on Windows
   - Hide restart menu items if no wrapper
   - Add graceful restart and shutdown menu items
   - Add basic adjustment of menu based on shutdown state
   - Disable wrapper notification for now
   - Remove Swing DesktopguiConfigurationFrame,
     move to a submenu.
   - Remove LookAndFeel setting
   - Make Main class a RouterApp
   - Remove all static log, context, and instance fields
   - Remove unused ConfigurationManager class
   - Translate tooltip, disable tooltip on linux
   - Use safer exec call to start i2p
   - Remove all images, use itoopie
   - Don't start spinner thread in router context
   - Handle various startup errors better
   - Synchs, finals, javadocs, cleanups

2016-05-04 zzz
zzz's avatar
zzz committed
 * i2prouter: Set JAVA_HOME correctly on Mac OS X 10.5 and later (ticket #1783)
 * Utils: Fix bug in periodic timers triggered by
   a backwards clock shift, caused graphs to be blank
   and various router, streaming, and i2ptunnel
zzz's avatar
zzz committed
   degradations over time (tickets #1702, #1776)
zzz's avatar
zzz committed
 * Wrapper: Update to wrapper 3.5.29, except for Windows.
   Fixes wrapper failure on FreeBSD 10 (ticket #1118)

2016-05-01 zzz
 * Build: Compile resource bundles from ant, not msgfmt,
   speeding up builds with translations by 20x
 * Debian: Back out libhttpclient-java dependency,
   requires 4.4 which is too recent for most distros

2016-04-30 zzz
 * Blocklist: Add RFC 6598 addresses
 * Console:
   - Only display cpuid information on x86
   - Readme page link fixes (tickets #1789, #1790)
 * Data: Fix NPE calculating the hash of a RI of unknown sig type
 * Debian:
   - Add runtime dependency on libhttpclient-java,
     link to /usr/share/java/httpclient.jar and httpcore.jar
 * Eepsite: comment out gzip filtering in cgi context,
   causes hung threads, root cause unknown
 * Router: Reduce log level of RI sig failure
 * SAM: Log tweaks (ticket #1778)

2016-04-29 zzz
 * Debian:
   - Add runtime dependency on gettext-base,
     link to /usr/share/java/libintl.jar
   - Add runtime dependency on libgetopt-java,
     link to /usr/share/java/gnu-getopt.jar
 * SysTray:
   - Remove systray4j.jar from linux installers
   - Move SysTray.java to SysTrayImpl.java
   - New SysTray.java that instantiates SysTrayImpl
     by reflection, so the SysTrayImpl.java source is optional
   - Remove systray4j.jar, systray4j.dll, and SysTrayImpl.java
     from Debian source packages
   - Remove systray4j.jar from Debian binary packages
 * Update: Enable libjbigi update for ARM

2016-04-28 zzz
 * News: Parse and store CRLs in news feed

zzz's avatar
zzz committed
2016-04-28 zzz
Prop from i2p.i2p.zzz.gmp6-prop:
 * CPUID:
   - Added source of CPUID information
   - Made CPUIDCPUInfo non-abstract to support looking for
     CPU features during CPU identification
   - Add support for extended feature registers EBX/ECX
   - No such thing as EBX for 0x80000001 call; remove getExtendedEBXCPUFlags(),
     replaced with getExtendedEBXFeatureFlags()
   - Check for support of 6 required Core i3/i5/i7 instructions to enable Haswell,
     since GMP Haswell requires Core i3/i5/i7 support.
     There are Pentium/Celeron Haswells that do not support these instructions.
   - Added AVX, AVX2, AVX512, TBM, ADX, BMI1, BMI2, MOVBE, FMA3 feature detection
   - More diagnostic output in CPUID.main()
   - More javadocs
   - Only call getCPUVendorID() once in getInfo()
   - Recognize Skylake
   - Do the same checks for Broadwell and Skylake that we do for
     Haswell, and check ADX as well, which will be used in GMP 6.1
 * Crypto:
   - Use constant time modPow() for signing and decryption
   - Use native modInverse()
 * libjbigi:
   - Added nativeJbigiVersion(), nativeGMPMajorVersion(),
     nativeGMPMinorVersion(), nativeGMPPatchVersion(),
     nativeModInverse(), nativeModPowCT()
   - Support negative vaules in conversion functions
   - Support negative base value in modPow()
   - Throw ArithmeticException for bad arguments rather than crashing
   - New build targets
   - Drop 32-bit corei libs where they are identical to the
     core2 lib, since we now have a generic fallback in NBI:
     libjbigi-freebsd-corei.so, libjbigi-linux-corei.so,
     libjbigi-osx-corei.jnilib
   - Revamped downloading of gmp files
   - Revamped cross-compilation support
   - Added 'osx' alias for darwin
   - Added FreeBSD cross-compilation instructions
   - Removed NetBSD, kFreeBSD, Solaris, OpenBSD binaries
   - Added coreihwl, coreisbr, bulldozer, steamroller,
     cortex a9, and cortex a15 support
   - Rebuilt all binaries with GMP 6.0.0a
 * libjcpuid:
   - Add nativeJcpuidVersion()
   - Clear ECX register to ensure it will work with EAX=7
   - Added jcpuid build instructions for linux/osx/freebsd/windows
   - Improved build script
   - Imported Microsoft Visual Studio Community 2015 project files.
   - Fixed OSX include search path
   - Rebuilt all binaries
 * NativeBigInteger:
   - Version reporting
   - Total redesign of fallback code
   - core2 is always a fallback for corei, and
     core2_64 is always a fallback for corei_64
   - Remove special case for core2/corei in getMiddleName2()
     since it's now a fallback in getResourceList()
   - Added support for new CPUs:
     Intel Sandy Bridge, Haswell and Broadwell;
     AMD Bulldozer, Piledriver, Steamroller, Excavator and Jaguar;
     ARM Cortex A5/A7/A8/A9/A15; ARM A12/A17 using the A15 libs
   - Test improvements:
     Output versions; Only warmup crypto once;
     Add -n option to test native only;
     Reduce output if only native or only Java tested;
     Try to prevent not-coprime errors

2016-04-26 zzz
 * Addressbook:
   - Finish implementation of signed actions
   - Move HostTxtEntry to net.i2p.client.naming for use by i2ptunnel
   - Add tests for Daemon to read local subscription file
   - Store last-modified date
   - Logging cleanups and consolidation
 * Blockfile: Remove unused code and classes
 * BlockfileNamingService:
   - Implementation and fixes for new API methods
   - Add support for long property values, backward compatbile, no version bump
 * DataHelper: Properties methods cleanup
 * i2ptunnel:
   - New page for registration authentication
   - Remove old, unused hostname signature generation
 * NamingService: Add new API methods for reverseLookupAll()
 * PrivateKeyFile:
   - Add InputStream constructor for i2ptunnel
   - Ensure initialization before returning private keys
 * SusiDNS:
   - Display signature validation on details page
   - Add support for multiple dests per hostname

2016-04-20 zzz
 * Addressbook:
   - Add sign/verify methods for inner signature
   - Add preliminary handling of incoming actions
 * Blockfile:
   - Add generics
   - Add method to change serialization schema for a skiplist
   - Fix delIndex() method
 * BlockfileNamingService:
   - New database version 4, for multiple destinations per hostname
   - Disallow database version higher than supported
 * NamingService: Add new API methods for multiple Destinations per hostname

2016-04-17 zzz
 * Addressbook:
   - Several cleanups and refactoring
   - Add initial support for signatures in subscriptions
   - Fix main-class in addressbook.jar
   - Fix corrupted manifest in addressbook.jar
 * Build: Fix broken build from scratch in jetty build.xml
 * Console:
   - Add JSTL version to /logs
   - Update version warnings
   - Add OpenJDK check for ARM
 * PrivateKeyFile: Add method to specify sig type on creation
 * SingleFileNamingService: Store signature properties on write
 * TunnelId: Add max value check

2016-04-13 zzz
 * SOCKS: Fix NPE on lookup failure in SOCKS 4a

zzz's avatar
zzz committed
2016-04-07 zzz
 * Debian builds:
   - Prep for depending on tomcat packages
   - Minor fixes

2016-04-04 zzz
 * Debian builds:
   - Depend on glassfish-javaee for JSTL 1.2 by default

zzz's avatar
zzz committed
2016-04-03 zzz
 * Debian builds:
   - Add build options to depend on various packages
   - Depend on geoip-database and libjetty8-java by default
   - Add debian-alt directory with configurations for alternate series
   - Prep for depending on additional packages
   - Improvements in ant debian build targets
 * Transport:
   - Add library to read standard Maxmind geoip database format
   - Use system Maxmind geoip files if available

zzz's avatar
zzz committed
* 2016-03-22 0.9.25 released

2016-03-14 zzz
 * Console: Replace pastethis with zerobin
 * Peer selection: Don't truncate data used for random slice
 * Router: Fix corner cases maintaining local leasesets (ticket #1768)
 * Susimail: Fix NPE
 * UPnP: Fix NPE in HTML output on /peers (ticket #1779)

2016-03-01 zzz
 * i2psnark: Fix handling of HAVE messages received before metainfo
 * i2ptunnel: Don't default to a private key file that exists (ticket #1628)
 * NetDb:
   - Search for new leaseset before expiration;
   - Reduce expiration for router infos with introducers
   - Add missing reseed cert
 * SSU: Switch introducers less often

zzz's avatar
zzz committed
2016-02-26 zzz
 * Console:
   - Add X-Content-Type-Options header everywhere (ticket #1763)
   - Don't display error after clicking restart on /graph page (ticket #1582)
 * i2ptunnel:
   - Fix default shouldBundleReplyInfo for non-HTTP servers
   - Fix display of hostname signature
   - Add QR code generation
 * Router: Log full path to wrapper.log when dumping threads
 * Transports: Increase connection limits for class N and higher
 * Utils: Add main classes to i2p.jar and router.jar
   for simple command line access to utilities
zzz's avatar
zzz committed

2016-02-22 zzz
 * Console: Improve news CSS (ticket #1710)
 * Crypto: Blacklist certificates by SHA1 hash, not by serial/CN/OU
 * I2CP: Improve client error message when internal router connection fails 
 * Graphs: Increase font size
 * Transports: Increase default max inbound bandwidth,
   increase minimum in/out bandwidths

2016-02-19 zzz
 * Clock: Add sanity checks to detect invalid system clock

2016-02-18 zzz
 * Console: Clean up display and form handling
   for specifying a fixed host name or IP on /confignet
 * Crypto: Add utilities for loading CRLs from disk;
   check for revocation when reading in certificates
 * Transport:
   - Implement mayDisconnect() for outbound connections also,
     use when publishing RI directly to floodfill
   - Run SSU idle disconnect check faster if floodfill or near connection limit
 * NetDB: Fix bug publishing router info too often

zzz's avatar
zzz committed
2016-02-17 zzz
 * i2psnark: Increase max files per torrent to 2000
 * I2PTunnel: Improve layout of blacklist radio buttons
 * Router: Switch to new lease sooner before expiration
 * SAM: Don't log an error on datagram send success

zzz's avatar
zzz committed
2016-02-13 zzz
 * I2PTunnel:
   - Add options to block by referer and user-agent
   - Log blocked destinations in b32, not b64
 * Imagegen: Add text to QR codes

2016-02-10 zzz
 * Crypto: Use new internal key generation instead of calling
   out to keytool; save CRL for new su3 amd family keys

2016-02-09 zzz
 * Crypto: Fix raw (su3) signing, broken in test2 prop (-2)

zzz's avatar
zzz committed
2016-02-08 zzz
 * BOB: Fix invalid output after getnick (ticket #1204)
 * SAM v3.3:
   - Add support for MASTER sessions
   - Add support for per-packet optins SEND_TAGS, TAG_THRESHOLD, EXPIRES, and SEND_LEASESET
   - Refactoring and cleanups
   - Client test enhancements
   - Fix bug receiving datagrams on v3 sessions with UTF-8 session IDs

zzz's avatar
zzz committed
2016-02-03 zzz
Prop from i2p.i2p.zzz.test2:
 * Build: More checks in release target
 * Console:
   - New /configfamily for export/import and setup (ticket #1510)
   - Custom icons for non-webapp plugins (ticket #1550)
   - Add secure.thethinhat.i2p to console home page and hosts.txt
 * Crypto:
   - Implement EdDSA key encoding and decoding (ticket #1723, github issue #13)
   - Fix I2P crypto provider and add it
   - Specify I2P provider in keytool arguments when necessary
   - Add EdDSA key generator support to provider
   - Synch fix in EdDSA (github issue #10)
   - Add hashCode() and equals() everywhere it was missing in EdDSA
   - Put unknown class name in EdDSA exceptions
   - Implement one-shot methods in EdDSA so we don't copy
     the data if all the data is available (ticket #1750)
   - Fix API violation if EdDSA signing object is reused (ticket #1750)
   - Add ElGamal classes, from Bouncy Castle 1.53, for provider
   - Implement Java ElGamal keys built on the BC classes
   - Add KeyFactory and KeyPairGenerator for ElGamal
   - Add ElGamal signature implementation, to be reviewed
   - KeyGenerator: Check that dsax is greater than zero
   - SHA256Generator: Don't fall back to Sha256Standalone,
     SHA-256 support must now be in the JRE.
     Deprecate all uses of Sha256Standalone, schedule for removal.
     This will require a new Syndie release.
   - New utils to support private key import/export
   - Add support for CRL generation and export
   - Consolidate PEM encoding
   - Improve ASN.1 signature encoding/decoding utilities
   - New selfsigned key and cert generator,
     to be hooked in to KeyStoreUtil to replace keytool.
   - Add EdDSA_SHA512_Ed25519ph sig type
   - Add OIDs to sig types
 * I2PTunnel: Fix exception message choice that was backwards
   for router/non-router context
 * Jetty: Add gzip filter to eepsite Jetty (new installs only)
 * Random: Don't bother trying to seed from /dev/urandom on Windows
 * Router: Make network ID configurable
zzz's avatar
zzz committed
 * Utils: New ArraySet implementation
zzz's avatar
zzz committed

2016-02-01 zzz
 * Imagegen:
   - Return 403 if no code specified in QR or RA
   - Mode parameter for html or text in RA
   - Set RA text-mode character encoding
   - Fix up test page

zzz's avatar
zzz committed
2016-02-01 zzz
Prop from i2p.i2p.zzz.imagegen:
 * Console:
   - New imagegen webapp, including servlets for identicons, QR codes,
     and random art. Bundles a small part of zxing, most of identicon,
zzz's avatar
zzz committed
     and a rewrite of randomart from gnutls (ticket #1652)
zzz's avatar
zzz committed
   - Add identicons to sybil page.
 * i2ptunnel: Add identicons to i2ptunnel address helper conflict page.
     Clean up text on the conflict page for readability.
 * SusiDNS:
   - Display QR and identicon images on details page
   - Fix title whitespace

zzz's avatar
zzz committed
* 2016-01-27 0.9.24 released

2016-01-27 zzz
 * SocksHeader: Fix arraycopy argument order
 * SSU: Fix minimum version for extended options

2016-01-20 zzz
 * SusiDNS: Replace image (ticket #1301)

2016-01-17 zzz
 * BuildHandler: Disable tunnel removal on next-hop timeout
 * Console:
   - Fix mime type for svg in themes directory
   - Add zh_TW translation
 * Fortuna: Add getByte() method
 * i2psnark: add opendocument mime types
 * i2ptunnel: Remove unused stats
 * Utils: Move CachedIteratorArrayList from core to router

zzz's avatar
zzz committed
2016-01-13 zzz
 * BuildHandler: More early-disconnect cases
 * Family: Add i2p-dev cert

2016-01-10 zzz
 * Tunnels: Fix build request Bloom filter (ticket #1746)

2016-01-07 zzz
 * Console: Fixed summary bar overflow (ticket #1739)

2016-01-06 zzz
 * Build: Remove big geoip files from release again
 * Console: Properly register listen hosts with PortMapper
 * DataHelper: Optimize checks in storeProps()
 * I2PTunnel: Fixup console links in error pages if console is
   on a non-standard host or port, or on https
 * Jetty: Change default source logging from b64 to b32.
   To change back to b64, add the following to the RequestLogImpl
   section of jetty.xml: <Set name="b64">true</Set>
 * NetDB: Don't query floodfills if they are too old to
   support sig types or encrypted replies (ticket #1742)
 * PortMapper: Add method to convert wildcard host to actual host

2015-12-21 zzz
 * SSU: Hand all messages pending after establishment to the
   outbound queue at once, for efficiency.
   Don't sort outbound messages by size, keep priority order instead.

zzz's avatar
zzz committed
2015-12-20 zzz
 * BuildHandler: Additional fixes (ticket #1738)
 * CertUtil: Add methods to export private keys
 * Console: Sybil tool enhancements
zzz's avatar
zzz committed
 * Transports:
   - Disconnect faster when first message is a
     tunnel build request which we reject
   - Display SSU sent/received messages, not packets,
     on /peers to be consistent with NTCP

2015-12-18 zzz
 * BuildHandler: Fix NPE (ticket #1738)

2015-12-16 zzz
 * Profiles:
   - Don't use same family in a tunnel
   - Reduce IPv6 mask from 8 to 6

zzz's avatar
zzz committed
2015-12-13 zzz
 * Data: Optimize router info writes, disable caching

2015-12-12 zzz
 * Router:
   - Add family public key to router info (ticket #1510)
   - More deadlock prevention (ticket #1722)

2015-12-11 zzz
 * Logs: Windows line ending fixes
 * Router:
   - Fix family verification, partially hook into netdb store()
   - Limit wait for NTP to 45 seconds (ticket #1725)
   - Increase lookup cache max sizes,
     reduce max lookup depth, and increase non-floodfill profile bonus
     to attempt to reduce load on floodfills
   - Don't let context clock shifts affect calculated uptime
 * Transport: More deadlock prevention (ticket #1722)
 * SSU: Fix outbound IPv6 errors on Windows without a real v6 address
   when explict host is set. Validate addresses before confirming that
   we have an IPv6 address. Possibly related to ticket #1538.
 * Wrapper: Listen for Windows Service shutdown events to stop router

zzz's avatar
zzz committed
2015-12-10 zzz
 * Router:
   - Change addCapabilities() to getCapabilities()
   - Add netdb family sign/verify utility (ticket #1510)
 * RouterInfo:
   - Remove addCapability() and delCapability()
 * StatPublisher:
   - Remove Service interface, not required
   - Consolidate getCapabilities() and network ID here
   - Add family signatures

str4d's avatar
str4d committed
2015-12-08 str4d
 * Core: Fill in basic datastructure length tests
 * Ministreaming: Add unit tests
 * Streaming:
   - Add more unit tests
   - Separate out integration tests

zzz's avatar
zzz committed
2015-12-08 zzz
 * Crypto: Consolidate certificate import methods

2015-12-06 zzz
 * Console: Don't force profile creation when loading floodfill tab
 * Installer: Add wrapper deadlock detection to default wrapper.config
 * NetDb: Stub out a "family" indicator (ticket #1510)
 * Profiles: More changes to reduce memory usage
 * Startup: Increase rekey probability
 * Sybil tool: Tweaks and enhancements

zzz's avatar
zzz committed
2015-12-04 zzz
 * Console: Fix NPE on /profiles
 * Profiles:
   - Fix first heard about to be earliest, undeprecate
   - Fixup first heard about at profile readin
   - Persist good/bad lookup/store DBHistory stats added in 0.7.8
   - Remove unused DBHistory methods and fields to save memory
   - Change bonus longs to ints to save memory
   - Extend profile expiration time from 3 days to 15
   - Consolidate getLong()
   - Synch fixes
 * Sybil tool: Tweaks and enhancements

2015-12-03 zzz
 * Console: Add experimental Sybil analysis tool
zzz's avatar
zzz committed
 * NetDb: Fix deadlock (ticket #1722)
zzz's avatar
zzz committed
2015-12-01 zzz
 * i2psnark:
   - Consolidate default tunnel length definition
   - Increase max peers and uploaders per torrent
   - Increase default max total uploaders
   - Increase max peers sent and returned in DHT
zzz's avatar
zzz committed
 * SAM:
zzz's avatar
zzz committed
   - Don't map keys to upper case in parser, corrupts I2CP options
   - Register SSL and UDP ports with PortMapper
zzz's avatar
zzz committed
 * SSU: Allow IP and port in relay request if it matches the source
 * Transport: Interrupt DH refiller thread when pool is empty,
   to speed refilling and reduce pumper stalls
zzz's avatar
zzz committed

2015-11-30 zzz
 * SAM:
   - Timeout for first command after HELLO
   - Send error message if no NAME key in LOOKUP
   - Destination caching enhancements
   - Client: Add SSL forward support, handle header line in forwarded stream

2015-11-29 zzz
 * i2ptunnel:
   - Change preferred sig type to Ed
   - Set permissions on backup tunnel keys file

2015-11-28 zzz
 * i2psnark:
   - Fix NPE caused by URL-to-URI conversion in -2 (ticket #1715)
   - Increase max pieces to 32K
zzz's avatar
zzz committed
   - BEP 21 support (upload_only)
zzz's avatar
zzz committed
 * SAM:
   - Fix parser to allow spaces in quoted values (tickets #1325, #1488)
   - Handle UTF-8 in ReadLine (ticket #1488)
   - 3.2 complete (ticket #1574)

2015-11-27 zzz
 * SAM:
   - Use DataHelper to load/store sam.keys
   - Move sam.keys to config dir (ticket #677)

zzz's avatar
zzz committed
2015-11-27 zzz
Prop from i2p.i2p.zzz.sam:
 * PasswordManager: new methods for use by SAM
 * SAM:
   - Use getopt for SAM args processing
   - Change default host from 0.0.0.0 to 127.0.0.1
   - Add SSL support with -s option (ticket #1106)
zzz's avatar
zzz committed
   - Add -c configfile option, default sam.config
   - Add protocol and port notification (ticket #1323)
   - Add authorization options in HELLO (ticket #1106)
zzz's avatar
zzz committed
   - Add AUTH commands: ENABLE, DISABLE, ADD, REMOVE
   - Add PING, PONG commands (tickets #1572, #1573)
   - Add QUIT, STOP, EXIT commands
zzz's avatar
zzz committed
   - Add SSL option for STREAM FORWARD
   - Move DatagramServer from SAMv3Handler to its own file
   - Make DatagramServer a Handler, register with bridge
   - Use ReadLine with timeout for SAMHandlerFactory
   - Support parallel STREAM ACCEPTs
   - Add HEADER option for RAW forwarding
   - Better exception handling
   - Extensive enhancements to Java client for testing
   - Bump version to 3.2 (ticket #1574)
zzz's avatar
zzz committed
 * Streaming: Fix recognition of PoisonPacket in ConnectionHandler

2015-11-22 zzz
Prop from i2p.i2p.zzz.test2:
 * Build:
   - More release checks
   - Add systray dependency tracking to build
   - Remove commons-logging classes from commons-logging.jar (ticket #1679)
 * Lint:
   - Replace URL with URI where possible
   - Don't use DataHelper.fromLong() for 1-byte reads, for efficiency
   - Don't catch Exception, catch RuntimeException or checked exception.
 * i2psnark:
   - Minor details page reformatting
   - Add skipped length on details page
 * NewsManager: Make it a ClientApp, not a RouterApp
 * Profiles: Don't allow creation of our own profile
 * Router: Revert JobTiming being a clock shift listener, not needed
 * SSU:
   - Support extended options
   - Add support for requesting a relay tag via
zzz's avatar
zzz committed
     Session Request extended options (tickets #1465, #1656)
 * Tunnels:
   - Locking fixes
   - Don't set stats in our own profile
   - Minor optimizations
 * Utils:
   - Centralize time zone code in DataHelper
   - Add caching string split()

2015-11-21 zzz
  * Console: Fix escaping of plugin description on /configclients (ticket #1711)

str4d's avatar
str4d committed
* 2015-11-19 0.9.23 released

2015-11-19 str4d
  * build.xml: Stop building SUD and SU2 update files in "ant release" (ticket #1709)

2015-11-15 kytv
 * Updates to geoip.txt and geoipv6.dat.gz based on Maxmind GeoLite Country
   database from 2015-11-03.
kytv's avatar
kytv committed
 * Translation updates
zab2's avatar
zab2 committed
2015-11-13 zab
 * Interrupt() when cancelling scheduled tasks (tickets #1694, #1705)
zab2's avatar
zab2 committed

2015-11-13 zzz
 * Console: Fix lifetime participating bandwidth display (ticket #1706)

2015-11-12 zzz
 * Console /configclients:
   = Fix filtering and escaping
   - Fix autostart setting on new client, was inverted

2015-11-11 zzz
 * i2psnark:
   - Change log level to hide socket closed error at tunnel shutdown (ticket #1687)
   - Increase max pieces
 * Timers: State fix 4th try (tickets #1694, #1705)

 * I2CP: Fix additional connections getting rejected during tunnel open (tickets #1650, #1698)
 * Streaming: Split blacklist into one for EC and one for Ed

2015-11-04 zzz
 * Threads: More conversions to I2PAppThread
 * Timers: Improve OutboundMessageRegistry locking (ticket #1694)

2015-11-02 z3r0fox
 * EepGet: Fix command line filename selection (ticket #1616)

2015-11-01 zzz
 * Utils: Double IP lookup cache size (ticket #1700)

2015-10-31 zzz
 * Convert remaining Threads to I2PThread or I2PAppThread
 * UPnP: Fix deadlock in callbacks (ticket #1699)

2015-10-30 zzz
 * Router: Fix cascading I2CP error (ticket #1692)

2015-10-21 zzz
 * i2psnark: More consistency and torrent links in messages
 * Router: Increase timer thread priority

2015-10-17 zzz
 * Crypto:
   - Consolidate duplicate unlimited strength crypto check code
   - Disable TLS_DHE_DSS_WITH_AES_128_CBC_SHA

 * Console: Add Java 6 warning to summary bar
 * i2psnark:
   - Fix deadlock (ticket #1432)
   - Add "smart sort" option, set sort based on language (tickets #637, #1303)
   - Don't balloon files on ARM (ticket #1684)

2015-10-14 zzz
 * Update:
   - Require Java 7 to download dev builds (ticket #1669)
   - Fix persistence of the available dev version

2015-10-13 zzz
 * Startup: Delete our old RI from netDB when rekeying

2015-10-11 zzz
 * Crypto: Test for broken Gentoo ECDSA support

2015-10-10 zzz
 * i2psnark: Increase max piece size to 16 MB, max files to 999,
   close files faster based on file count (tickets #1626, #1671)
 * JobQueue: Only adjust timing for negative clock shifts
 * NamingServices: Add support for lookups prefixed with "www."
 * Startup: Increase rekey probability
2015-10-08 zzz
 * SimpleTimer2: Additional fix for uncaught IllegalStateException
   affecting streaming timers (ticket #1672)

2015-10-02 zzz
 * Router: Don't check config files for reload on Android

2015-09-28 zzz
 * Addressbook: Fix isValidDest() for EC/Ed dests
 * i2psnark: Support adding plain base 32 hashes
 * Susimail: Hide headers and buttons if search results are empty

2015-09-27 dg
 * Router: Fix soft restarts for 'massive' clock jumps (over +150s or -61s) and recover from standby
   and hibernate (ticket #1014).

2015-09-27 zzz
 * Console:
   - Export SSL cert on creation
   - New /certs page to show local SSL certs
   - Show 'none' if no leasesets
 * SimpleTimer2: Fix bug in forceReschedule() that caused subsequent uncaught IllegalStateException,
   affected streaming timers
 * Streaming: Move throttler from context timer to streaming timer
 * Tunnels: Use max of 2 not-failing peers in an exploratory tunnel,
   use high cap for the rest; change outbound exploratory
   default length from 2 + 0-1 to 3+0.
 * Util: Speed up IP address validation by using Apache's implementation (ticket #1198)
2015-09-25 dg
 * Rename _() for translation to _t() for Java 9 compatibility (ticket #1456)

2015-09-24 zzz
  - Rename bad .torrent files instead of deleting them

dg2-new's avatar
dg2-new committed
2015-09-20 dg
 * /configreseed: Add 'Reset URL list' button for revert to default hosts (ticket #1554, thanks dzirtt@gmail.com)

2015-09-19 zzz
 * i2psnark: Add recheck/start/stop buttons to details page (ticket #372)

2015-09-18 zzz
 * EepGet:
   - Send Accept-Encoding: gzip even when proxied
   - Fix man page (ticket #1631)
 * i2psnark:
   - Don't display "Tracker Error" if torrent is stopped (ticket #1654)
   - Improve directory listing efficiency (ticket #1079)
 * i2ptunnel:
   - Pass Accept-Encoding header through HTTP client and server proxies,
     to allow end-to-end compression
   - Don't do transparent response compression if response
     Content-Encoding indicates it is already compressed
 * Streaming: Move remaining timers from the context to streaming's SimpleTimer2

2015-09-17 zzz
 * i2psnark:
   - Store magnet parameters across restart (ticket #1485)
   - Don't delete torrent config file after error on initial startup (tickets #1575, #1658)
2015-09-16 zzz
 * Build:
   - Include geoip in update files for next release
   - Add created-by string to release torrents
 * i2psnark:
   - Store torrent added and completed times in config files, display on details page
   - Add metainfo creation command line support for created-by string
 * Profiles: Bias slightly away from floodfills

2015-09-15 zzz
 * Console:
   - Store news feed items separately on disk in XML, like a real feed reader
   - Limit display to 2 news items in summary bar, /home and /console
   - New /news page to show all news (ticket #1425)

zzz's avatar
zzz committed
* 2015-09-12 0.9.22 released

kytv's avatar
kytv committed
2015-09-11 kytv
 * Updates to geoip.txt and geoipv6.dat.gz based on Maxmind GeoLite Country
   database from 2015-09-02.
 * Translation updates pulled from Transifex

2015-09-04 zzz
 * UPnP: Fix "content not allowed in trailing section"
   (tickets #481, #1653)

2015-08-31 zzz
 * Data: Cache P256 and Ed255i9 key certificates
 * i2psnark: Change default sig type to Ed25519

zzz's avatar
zzz committed
2015-08-29 zzz
 * Router:
   - Change default RI sig type to Ed25519, with a 10% chance od
     rekeying from DSA at each restart
   - Don't initialize KeyManager before selecting sig type
   - Don't log KeyManager error when changing sig type

zzz's avatar
zzz committed
2015-08-25 zzz
 * i2psnark:
   - Return partial piece to coordinator after reject
   - Fix tracking of downloaded portion of piece after reject
   - Send reject on receipt of bad request
   - Mark piece unrequested after receiving bad data, so it
     will be requested again, but not from the same peer
   - Fix NPE in Request constructor on error
   - Fix stuck before completion due to reject handling (ticket #1633)
zzz's avatar
zzz committed
   - Fix orphaned temp files due to reject handling (ticket #1635)
zzz's avatar
zzz committed

2015-08-02 zzz
 * Console: Fix SSL excluded ciphers (thx lazyg)
 * SU3File: Add keystore password command line option

zzz's avatar
zzz committed
* 2015-07-31 0.9.21 released

zzz's avatar
zzz committed
2015-07-27 zzz
 * Update: Fix processing of translated news su3 files

2015-07-26 zzz
 * Update translations

zzz's avatar
zzz committed
2015-07-25 zzz
 * i2psnark: Fix total_size in metadata message (ticket #1618)
 * NetDB: Fix NPE (ticket #1619)

str4d's avatar
str4d committed
2015-07-21 str4d
 * Core: Throw DFE in Certificate.create() instead of AIOOBE (ticket #1016)

2015-07-21 str4d
 * Core: Fix parsing bug in KeyCertificate

zzz's avatar
zzz committed
2015-07-16 zzz
 * Console: Add dates to news headings

zzz's avatar
zzz committed
2015-07-12 zzz
 * Findbugs all over

2015-07-08 zzz
 * Tunnels: New Bloom filter size, increase bandwidth limit (ticket #1505)

2015-07-07 zzz
 * Crypto: Check for error return from sign()
 * i2psnark: Tweak dest display in footer
 * Streaming: New config to add to DSA-only list
 * Updates: New news URL

2015-07-05 zzz
 * SSU: Compete better with NTCP for outbound bandwidth allocations
 * Transport: Adjust thread priorities to prevent I/O stalling

2015-06-29 zzz
 * Transport: More fixes for SSU stalling

2015-06-28 zzz
 * Apache Tomcat 6.0.44

2015-06-25 zzz
 * Console: Use registered host/port for eepsite link (ticket #1604)
 * Jetty starter: Register host/port when started
 * PortMapper: Add hostname support

2015-06-24 zzz
 * Transport: Add failsafe to prevent complete SSU stall waiting
   for bandwidth limiter

2015-06-23 zzz
 * Console: Fix NPE on /configtunnels
 * GeoIP: Add countries and flags for Asia/Pacific, Bonaire, St. Barts,
   St. Maarten, South Sudan
 * I2CP: Don't try to decrypt an LS before it's encrypted (ticket #1608)
 * Router: Increase default outbound bandwidth to 60 KBps;
   raise class L/M boundary to match so defaulted routers are still L

zzz's avatar
zzz committed
 * NetDB: Partially revert last NetDB change: flood because we don't want
   to create a hole in the DHT before publisher resends to somebody else.
2015-06-20 dg
 * I2PSnark: Auto-start now only starts torrents which were running at shutdown (#766)
 * NetDB: Don't say we stored, and don't flood, if we're shutting down
2015-06-19 zzz
 * I2CP: Fix simple session lookups, broken in prop
 * I2PSocketEepGet: Do hostname lookups in-session for efficiency
 * Tunnels: Increase default max tunnels

2015-06-18 zzz
 * I2CP:
   - Don't send the first LS request to the client until we have
     at least one OB tunnel, so the client waits until we are ready.
   - Fixes to prevent multiple pending LS requests
   - Move client-side implementation classes to
     new package net.i2p.client.impl, leaving only the
     factories and interfaces in net.i2p.client
 * Update: Add language param to news fetch for translated news (ticket #1425)

zzz's avatar
zzz committed
2015-06-17 zzz
Prop from i2p.i2p.zzz.multisess:
 * Router, I2CP, Streaming, i2ptunnel:
   - Multisession support and multiple destinations in one tunnel pool
   - Connections to Hardcoded blacklist of destinations that do not
     support ECDSA will use the DSA session
   - Change shared clients to ECDSA by default, with a DSA subsession
   - Add support for 'aliased' local destinations that use the same tunnel pools
   - No UI or config support, no server support, may be added later
   - Catch uncaught exceptions in ClientConnectionRunner and stop connection
   - When socket is closed, set sessionID and LS to null,
     close subsession and set its sessionID and LS to null
   - Checks on client side for null session ID
   - Check for null session in Destroy Session message
zzz's avatar
zzz committed

2015-06-13 zzz
 * i2psnark: Fix NPE (ticket #1602)
 * NetDB:
   - Improve routing of DatabaseStoreMessage acks
   - Send our own RI unsolicited in reply if we aren't floodfill
   - Don't ack or flood a store of an unknown type
   - Don't say we stored, and don't flood if we're shutting down
 * PeerTestJob: Don't generate zero reply token
zzz's avatar
zzz committed
 * Timestamper: Reduce NTP timeouts to shorten startup time
   when NTP is blocked
 * Tunnels: More checks of messages received down exploratory tunnels

dg2-new's avatar
dg2-new committed
2015-06-08 dg
 * Language fixes
 * Make netDb.storeFloodNew graphable for testing (#1195)
 * Directly connect to nearby floodfills to share our RI
   to speed up integration of new floodfills (#1195)
dg2-new's avatar
dg2-new committed
 * Silence Irc{Inbound,Outbound}Filter warnings about 'no streams'
   when we can't connect to an IRC server. Change to WARN.
dg2-new's avatar
dg2-new committed

2015-06-07 zzz
 * Logs: Correct wrapper.config location when running as a service
 * NetDB: Fix early NPE
 * SSU: Possible fix for NPE in establisher

2015-06-06 zzz
 * Console: Add indication of current ff status on /configadvanced,
   change immediately when config changes, force republish

2015-06-06 str4d
 * newsxml: Don't use XXX for parsing dates on Android

2015-06-04 str4d
 * i2ptunnel:
   - Don't connect manager to router in constructor (ticket #815)
   - Don't call startup() in chained constructor (ticket #1593)
zzz's avatar
zzz committed
2015-06-03 zzz
Prop from i2p.i2p.zzz.sam:
 * I2CP: Set keepalive on sockets (ticket #1573)
 * SAM:
   - Close sockets and stop tunnels when router-side SAM stops (ticket #1572)
   - Better checks for quoting status message strings (ticket #1488)
   - Set encoding for sam.keys file
   - Don't throw NPE on rare stream errors
   - Comment out unused dumpProperties()
   - Cleanups, log tweaks, thread name tweaks
   - Set keepalive on sockets (ticket #1573)
Prop from i2p.i2p.zzz.test2:
 * Console:
   -  Don't allow unbanning of all-zero hash
   -  Nicer "move" icons on /configsidebar, add tooltips
   -  Prevent bad line-wrap of very long menu items
 * HTTP Client: Greatly simplify decompression by using InflaterOutputStream
 * I2CP: Prevent sending messages before handshake with router is complete
 * i2psnark:
   - Add support for fast extensions (BEP 6)
   - Don't say 'download finished' unless we downloaded something
   - Don't lose sort param when hiding peers
 * i2ptunnel: Strip top-level supercookies too
 * LogWriter: Write dup message to wrapper log and crit buf also (ticket #1585)
 * Reseed: Only log reseed network disconnected warning once
 * Router: Add gzip and translate caches to clearCaches()
 * Susidns, addressbook: Don't attempt to fetch subscriptions if
   HTTP proxy is down (ticket #1530)
 * SSU: More synchronization in PeerState
 * Stats: Reduce number of rates in required stats to save memory
 * UPnP: Only log network disconnected warning once

zzz's avatar
zzz committed
* 2015-06-02 0.9.20 released

2015-05-31 zzz
 * Fortuna: Catch AIOOBE (ticket #1576)

2015-05-30 zzz
 * i2ptunnel: Fix +/- variance config (ticket #1587)

2015-05-29 zzz
 * HTTP client: Fix occasional truncation of compressed responses

2015-05-27 zzz
 * Banlist: Ban all-zero hash
 * DataHelper: Add year output to formatDuration()
 * Graphs: prevent NaNs if we are skewed ahead of system time
 * NetDb: Drop all-zero lookups and stores, add stats
 * SSU:
   - Fix debug logging of dumped packets
   - Drop sessions with bad clock skew, banlist peer, add stats
   - Drop sessions with corrupt DSM, banlist peer, add stats

2015-05-23 zzz
 * I2CP: Add an INIT state for session, so a newly created session
   isn't treated as CLOSED and immediately replaced by i2ptunnel,
   which caused dup shared clients in a race at startup
   (possible related tickets #642, #650, #815, #1545)

2015-05-21 kytv
 * Updates to geoip.txt and geoipv6.dat.gz based on Maxmind GeoLite Country
   database from 2015-05-06.
 * Translation updates

2015-05-13 zzz
 * Console: Fix URLs caught in XSS filter on /confighome (ticket #1569)
 * i2psnark: Fix deletion of single-file torrent outside snark dir (ticket #1544)
 * NTCP: Catch race in Reader (ticket #1534)

2015-02-12 dg
 * Job Queue/stats: add stat/graph for amount of scheduled jobs (router.tunnelBacklog)
 * FloodfillMonitorJob:
   - Use avg of router.tunnelBacklog instead of current backlog
 * Some language/spelling fixes

2015-05-11 zzz
 * Util: Fix corruption of cached ReusableGZIPInputStreams

 * i2ptunnel: Improve error handling in UDP tunnels
 * Plugins: Add support for custom icons (ticket #1550)

2015-05-08 zzz
 * Reseed: Don't reseed while shutting down (ticket #1565)

 * SAM: Close datagram or raw session when underlying
   I2P session closes (tickets #1455, #1563)
 * Update: Add support for su3-signed development builds (ticket #1381)

2015-05-06 zzz
 * Datagram: Convert IOE to DFE and throw on error (ticket #1562)
 * Naming services: Export address books with Windows
   line endings on Windows (ticket #1557)
 * Transport: Add config to force IPv4 (only) to firewalled (ticket #1541)

2015-05-04 zzz
 * i2ptunnel:
   - Close input stream when HTTP client decompressor
     terminates (ticket #1506)
   - Add Connection: close headers to errors and proxy.i2p responses
     where it was missing (ticket #1531)

zzz's avatar
zzz committed
2015-05-03 zzz
 * Console: Add floodfill configuration form to /configadvanced
 * Router: Allow class M to become floodfill;
   add bandwidth classes P and X (ticket #1447)
zzz's avatar
zzz committed
 * SusiDNS: Add export button

2015-05-02 zzz
 * Console: Fix Indonesian translations
 * Jetty 8.1.17.v20150415
 * Transports: Cleanup of ticket #1458 fixes

zzz's avatar
zzz committed
2015-04-30 zzz
zzz's avatar
zzz committed
 * Transports: Correctly handle IPv4 firewalled, IPv6 not (ticket #1458)
zzz's avatar
zzz committed

2015-04-29 zzz
 * Clock: Make forward slewing work better
zzz's avatar
zzz committed
 * I2CP: Periodically send a SetDate message to external clients
 * Transports:
   - Fix clock skew calculations
   - Track IPv4/v6 reachability separately (ticket #1458)

2015-04-28 zzz
 * JobQueueRunner: Don't call System.exit() on OOM,
   let the shutdown progress normally;
   Make it an I2PThread instead of a Runner so we can
   call fireOOM() for consistent logging (ticket #1549)
 * Router: Don't add OOM listener on Android so
   we don't hang onto the context

2015-04-27 zzz
 * NamingService: Add export methods
 * SusiDNS: Add export support, no UI yet
 * Transports:
   - Convert internal state to enums, prep for tracking
     IPv4/v6 reachability separately (ticket #1458)
   - Don't set TCP keepalive for IPv6

2015-04-26 zzz
 * i2ptunnel: Reduce sleep time in runners to reduce latency

zzz's avatar
zzz committed
2015-04-25 zzz
 * I2PSSLSocketFactory: Add hostname verification
 * SSLEepGet:
   - Rework recent setSoTimeout code changes, as they broke SNI
   - Add option to save certs even if no errors
   - Add option to disable hostname verification

zzz's avatar
zzz committed
 * Util: Catch and convert OOM in I2PThread.start()
 * i2ptunnel:
   - Fix Socks and SocksIRC tunnels not starting
   - Fix shutdown of client tunnels on server socket errors,
 * Updates: Fail fast if HTTP proxy is not running (ticket #1530)

2015-04-23 zzz
 * Streaming:
   - Reduce min RTO for quicker recovery after packet loss
   - Reduce default initial ack delay
   - More efficient checking for input buffer overflow

2015-04-22 zzz
 * i2psnark: Fix deletion of config files, cleanup old ones (ticket #1498)
 * I2PSocketEepGet: Fix i2psnark NPE caused by -6 (ticket #1543)
 * NTCP: Reduce min send finisher threads to 1
 * PortMapper: Status output for /debug

2015-04-21 zzz
 * i2ptunnel: Log uncaught errors in thread pool
 * Reseed: Disable non-su3 reseeding
 * Router timestamper:
   - Add country-to-continent mapping
   - Add continent zones as fallback
   - Don't start threads in constructors
 * Transports: Reduce idle timeouts

2015-04-20 zzz
 * Blockfile: Unroll recursive initialization
 * EepGet: Set soTimeout for non-proxied fetches to enforce
   header timeout and prevent long reseed hangs
 * Reseed:
   - Honor SSL/non-SSL setting when custom reseed list is set (ticket #1136)
   - Remove all default HTTP URLs (ticket #1514)

zzz's avatar
zzz committed
2015-04-17 zzz
Prop from i2p.i2p.zzz.test2:
 * Console: Set session cookies to HttpOnly
 * i2psnark: Remove extra mime types in i2psnark web.xml;
   added to Jetty's default by now, or in our mime.properties file
 * i2ptunnel:
   - Send HTTP server port 443 traffic to the server
     transparently, to support HTTPS over the same tunnel, if so configured
   - Add check for total header size in HTTP server
   - Return specific error pages to client on errors
     in HTTP header processing in the HTTP server (ticket #1507)
 * Jetty:
   -  Add extensive help to jetty-ssl.xml
   -  Set session cookies to HttpOnly in all webapps
 * JobQueue: Make number of runners configurable
 * Router: Move update extraction code to new class in tasks/
 * Tunnels:
   - Add bloom filter warning if high bandwidth but low memory
   - Add new Bloom filter size, increase bandwidth limit (ticket #1505)
   - Add config to disable Bloom filter for testing

2015-04-16 zzz
 * I2CP: Run DistributeLocal jobs inline (ticket #1506)
 * i2psnark: Increase max tunnels to 10
zzz's avatar
zzz committed
 * i2ptunnel: Don't start tunnels in constructors (ticket #815)
 * NetDB: Reduce max search depth
 * Transport: Fix active peer count for NTCP

 * SimpleScheduler: Deprecated, functionality moved to SimpleTimer2 (ticket #1069)
zzz's avatar
zzz committed

2015-04-13 zzz
 * Router: Fix NPE on bad share bandwidth config (ticket #1524)
 * Streaming: Handle reset packets without a FROM field, validate
              signature using connection's destination
 * Update: Don't log an error for the "dummy" updater (ticket #1525)
zzz's avatar
zzz committed
* 2015-04-12 0.9.19 released

zzz's avatar
zzz committed
2015-04-11 zzz
 * Updates after review

2015-04-09 kytv
 * Updates to geoip.txt and geoipv6.dat.gz based on Maxmind GeoLite Country
   database from 2015-04-07.
 * Translation updates

2015-04-05 zzz
 * IRC Server: Better timeout handling reading initial lines (ticket #723)

zzz's avatar
zzz committed
2015-04-04 zzz
 * i2ptunnel:
   - Better timeout handling when reading headers in HTTP server (ticket #723)
   - Fix NoSuchElementException processing proxyList caused by 03-31 checkin
 * Streaming:
   - Fix read timeout on input stream (ticket #723)
   - Fix read() returning 0 instead of -1 on read timeout (ticket #335)

2015-04-03 zzz
 * i2ptunnel: Fix stopping tunnel on bad args when starting
 * wrapper.config: Remove old mortbay Jetty parameters

2015-04-01 zzz
 * I2CP: Allow larger client clock skew (ticket #1503)
 * i2psnark: Fix changing data directory on Windows (ticket #1503)

 * API: Fix some client-side APIs to honor defaults in Properties;
   add javadocs to specify where we do and don't (ticket #1491)
 * i2ptunnel: Fix multiple SSL outproxies in HTTP client

2015-03-29 zzz
 * I2CP: Prevent NPE (ticket #1503)

2015-03-25 zzz
 * i2ptunnel HTTP client: Replace all getBytes() calls
   with a Writer or getBytes("UTF-8") (ticket #457)

2015-03-24 zzz
 * Streaming: Throw I2PSocketException when connection is reset,
   display new error page in HTTP client (ticket #643)

2015-03-23 zzz
 * Javadoc: Add missing package.html files (ticket #1109)
 * Summary bar: linkify news headings, remove 'show news' link

2015-03-22 zzz
 * Console: Better status feedback on manual reseed from URL
 * NetDB: Don't become floodfill w/o ECDSA support
 * Reseed: Better status feedback and cleanup in summary bar

2015-03-21 zzz
 * Console: Support plugin installation from local file

zzz's avatar
zzz committed
2015-03-20 zzz
 * Reseed:
  - Move multipart form support from susimail to jetty-i2p.jar
    so console can use it
  - Finish manual reseed from local file

zzz's avatar
zzz committed
2015-03-19 zzz
 * Reseed (ticket #1369):
zzz's avatar
zzz committed
  - Add form to manually reseed from zip or su3 URL
  - Add form to manually reseed from local zip or su3 file
  - Add form to create reseed zip file to share
  - Backend support and refactoring in reseed code

zzz's avatar
zzz committed
2015-03-18 zzz
 * NetDB:
  - Send exploratory lookups directly to the floodfill if
    we are already connected to him
  - Don't encrypt RI lookups when overloaded
  - Don't explore when overloaded
zzz's avatar
zzz committed
  - Don't publish non-ff RI on exit if we are coming right back
 * Router: Allow disabling the setting of some System properties, for embedded applications
 * StatisticsManager: Publish dummy LS count if we just started
 * Streaming: Reduce min RTO again
zzz's avatar
zzz committed
 * Tunnels: Drop instead of reject requests on high job lag
zzz's avatar
zzz committed
 * UPnP: Update to cyberlink 3.0

2015-03-16 zzz
zzz's avatar
zzz committed
 * Apache Tomcat 6.0.43
 * NetDB: Send RI lookups directly to the floodfill if
   we are already connected to him
 * Router:
   - Republish RI early if capabilities change
   - Increase exploratory tunnel quantity if floodfill
 * Throttle: Reject tunnels based on job lag

zzz's avatar
zzz committed
2015-03-15 zzz
 * Job Queue:
   - Fix overload dropping
   - Add drop count to job stats
   - Decrease overload threshold again
 * NetDb: Track flood success
zzz's avatar
zzz committed

zzz's avatar
zzz committed
2015-03-13 zzz
 * i2psnark:
   - Auto-reduce tunnel quantity based on peer count
   - Increase max tunnels
 * Job Queue:
   - Drop garlic message decryption jobs on overload
   - Decrease overload threshold

2015-03-13 dg
 * Router: create router.integratedPeers (floodfills) stat, and 
   allow graphing of it.

2015-03-08 zzz
 * i2psnark: Increase min and default bandwidth
 * Throttle: Tweak messages during probabalistic rejection
 * Transport: Add missing bogons to IP validity check

zzz's avatar
zzz committed
* 2015-02-22 0.9.18 released

2015-02-18 kytv
 * Updates to geoip.txt and geoipv6.dat.gz based on Maxmind GeoLite Country
kytv's avatar
kytv committed
   database from 2015-02-04.
dg2-new's avatar
dg2-new committed
2015-02-15 dg
 * FloodfillMonitorJob: 
   - Use lifetime average value for job lag
   - Change the job lag limit to less than 25ms
   - Consider and set the limit of backlogged tunnels to less than 5

2015-02-10 dg
 * I2PSnark, Jetty, SAM, crypto: findbugs resource leaks.

2015-02-07 zzz
 * SSU: Limit range for valid clock skew
 * Transport: Ban routers if they are too old and we are non-DSA

2015-02-06 zzz
 * NetDB: Reduce max job lag for floodfill
 * NTCP: Block IP for a while when incoming connection is dropped before
   receiving a message. Possible workaround for tickets #551, #1075, #1411.
 * Transport:
   - Decrease DH refiller initial delay and increase buffer size
     to reduce chance of running out on high-bandwidth routers
   - Add event log for reachability change

2015-02-01 zzz
 * Crypto: Catch IAE in generateCertificate()
 * NetDB: Don't flood an RI back to itself. While Java ffs self-flood,
   other implementations may not.
 * OCMOSJ: Pick a OB tunnel at random, not with the OBEP closest
   to the lease, as that may be hurting connection reliability.
 * Router: Call warmupCrypto() earlier in the initialization

zzz's avatar
zzz committed
2015-01-31 zzz
 * Console:
   - Don't display invalid IPv6 addresses as options on /confignet
   - Disable changing log path
 * NetDb:
   - Encrypt lookups for 32-bit x86 also
   - Disable floodfill in laptop mode
 * PRNG: Don't hang forever at startup waiting for SecureRandom init
zzz's avatar
zzz committed
 * Transport: Set 4 MBps max bw due to bloom filter

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
 * StatisticsManager: Don't publish client tunnel stats

kytv's avatar
kytv committed
2014-03-28 kytv
 * Updates to geoip.txt and geoipv6.dat.gz based on Maxmind GeoLite Country
   database from 2014-03-05.
zzz's avatar
zzz committed
 * Brazilian Portuguese, French, Norwegian, and Russian translation updates imported from Transifex
kytv's avatar
kytv committed

2014-03-23 str4d
 * Console: Handle stopping plugin ClientApps

2014-03-16 zzz
 * SSU: Fix corruption of introducer keys

2014-03-15 zzz
 * Certificate: Fix null cert hash code
 * Hash: Cleanup of cached hash
 * NetDB: Randomize returned DSM timestamp

2014-03-13 zzz
 * SAM: Class, field, findbugs cleanups

2014-03-12 zzz
 * Console: Handle ISO-639-2 language codes (ticket #1229)
 * I2PTunnel: Send message to client on HTTP Server OOM or out of threads
 * Streaming:
   - Track recently closed connections (ticket #1161)
   - Workaround for jwebcache and i2phex (ticket #1231)
 * Wrapper: Fix failed restarts on ARM (ticket #1230)

2014-03-08 zzz
 * PeerManager: Restore profileOrganizer.sameCountryBonus advanced config,
                inadvertently removed in 0.9.10

zzz's avatar
zzz committed
2014-03-07 zzz
 * Router:
   - Look for DeliveryStatusMessages beyond the message expiration,
     so we don't throw out a tagset that gets acked late
   - Allow re-adding of a "failed" tagset to the SKM
   - Extend max message age in MessageValidator
   - Remove unused and confusing timeout param when registering a selector

2014-03-06 zzz
 * Router: Encrypt DeliveryStatusMessages sent in garlics (ticket #1217)

2014-03-05 zzz
 * Transports: Don't send a duplicate store of our RI at
     start of a connection (ticket #1187)
 * NTCP:
   - Lower send priority of the RI at exchange
   - Bob will now send his RI even if he doesn't have Alice's
   - Send RI again sooner on long-lived connections

str4d's avatar
str4d committed
 * Console: Updated website URLs in readme.html files
 * susimail: Removed remaining Jetty dependencies in susimail
   (patch from wockenfuss) (ticket #1165)

zzz's avatar
zzz committed
2014-02-24 zzz
 * NetDB: Slow down router refresh after startup to reduce load
   on exploratory tunnels
 * NTCP:
   - Add check for replayed session requests (ticket #1212)
   - Disable inbound check connection
   - Reduce object churn in EstablishmentManager
   - Don't pollute Hash cache in EstablishmentManager
 * Transports: Use SigUtil.rectify() in DH
 * Tunnels: Rate-limit connections at the OBEP (ticket #1134)

 * I2PTunnel: add 'irc.dg.i2p' to the default IRC2P tunnel (for more
   information, see http://echelon.i2p/docs/IRC2p/irc2p_userguide.txt)
2014-02-21 zzz
 * Build: Add property for target version
 * I2CP Client: Generate revocation key of same type as signing key
 * i2ptunnel: Only offer SigType options that are available in the JVM
 * LeaseSet: Add check for SigType mismatch
 * RouterAddress: Restore storage of expiration and use in signature
   calculation, broken in 0.9.3, in anticipation of using it someday
 * SigType: Add isAvailable()

2014-02-20 zzz
 * i2ptunnel: Add inproxy block option to HTTP server
 * Router: Allow null args to main() (broke Android)

zzz's avatar
zzz committed
2014-02-17 zzz
 * HMAC:
   - Replace BC MD5 with JVM version, refactor I2PHMAC to use
     MessageDigest instead of BC Digest (ticket #1189)
   - Use JVM HmacSHA256 instead of I2PHMAC for Syndie since it is standard
zzz's avatar
zzz committed
 * SSU:
   - Use session key for relay request/response if available (ticket #1206)
zzz's avatar
zzz committed
   - Restrict authentication with Bob's intro key to session created packet
zzz's avatar
zzz committed
   - Remove packetAuthTime stats
 * Initial support for key certificates and arbitrary types and lengths
   of signing keys and signatures in RouterIdentities and Destinations.
   - Fixup of Destination.create() and Destination.size()
   - Add generic off/len methods in DSAEngine, needed for streaming
   - Support i2cp.destination.sigType option in TunnelController and
     I2PSocketManagerFactory
   - Fixup of sign/verify in streaming Packet
   - Add setting in i2ptunnel server edit page (hidden for now)
   - Comment out cert setting on i2ptunnel server edit page
   - Show key type on susidns details page and LS debug page
   - Hide setting in i2ptunnel edit pages unless advanced user
   - Only store LS with key certs to routers that support it
   - Only store LS with more than 6 leases to routers that support it
 * Jetty:
   - Update to Jetty 8.1.14.v20131031, Servlet 3.0, JSP 2.2
   - Use Servlet and JSP jars from Jetty instead of Tomcat
   - Tomcat remains at 6.0.37 supporting Servlet 2.5 / JSP 2.1
   - Remove Jetty dependency in console error pages
   - Require Java 6
zzz's avatar
zzz committed

zzz's avatar
zzz committed
2014-02-14 zzz
 * I2CP:
   - Add session limit, add new status code for refused
   - Ramdomize session ID, prevent dups
   - Make SessionId immutable

2014-02-13 zzz
 * Router: Convert to getopt (ticket #1173)
 * Tunnels: Change expl. OB default to 3+0

2014-02-11 zzz
 * HTTP client proxy: Don't flush after headers for a POST,
   so the POST data is included in the SYN packet,
   to improve speed and reliability of small POSTs

zzz's avatar
zzz committed
2014-02-10 zzz
Prop from i2p.i2p.zzz.test2:
 * Addressbook: Rewrite subscriptions.txt for new default URL
 * Build: Honor require.gettext=false for i2prouter translations
 * Core: Add lightweight getopt command line parsing lib (ticket #1173)
 * EepGet:
   - Convert to getopt (ticket #1173)
   - New option -c for clearnet (no proxy), same as -p:0
   - Proxy option -p with host name arg only (no ':') now allowed
   - Proxy password option is now -x, not the second arg to -u
   - Prompt for proxy password if not supplied in options
   - Line length option is now -l, not the second arg to -m
   - Error on nonproxied .onion hosts
   - Update man page, sort options (ticket #1173)
   - Support Digest proxy authentication (ticket #1173)
   - Move authentication parsing method from I2PTunnelHTTPClientBase
 * EepHead, PartialEepGet, SSLEepGet: Convert to getopt (ticket #1173)
 * EepHead, PartialEepGet:
   - New option -c for clearnet (no proxy), same as -p:0
   - New option -o, same as EepGet
   - Proxy option -p with host name arg only (no ':') now allowed
   - Add proxy auth support with -u and -x options (ticket #1173)
 * I2Ping:
   - Convert to getopt (ticket #1173)
   - Add support for from/to ports
 * i2psnark: Cache PeerID.toString()
 * I2PTunnel:
   - Convert to getopt (ticket #1173)
   - Add more argument sanity checking and a usage output
 * PrivateKeyFile:
   - Convert to getopt (ticket #1173)
   - New option -e for hashcash effort, replaces -h with arg
   - Stub out -t option, to be propped from ecdsa branch
 * Streaming:
   - Set ports on many packets that were missing them
   - Use connection throttling methods on pings too (ticket #1142)
   - Add methods to set ports on pings
   - Argument checking on ping methods
 * SU3File: Convert to getopt (ticket #1173)
 * UpdateManager: Convert to RouterApp and remove update hooks from context
     (ticket #1185)

zzz's avatar
zzz committed
2014-02-10 zzz
 * Console:
   - Don't reset graph settings when clicking restart or shutdown on graphs page
   - Don't recommend guest login on trac, it's disabled
   - Catch and remove corrupt jrb file (ticket #1186)
   - Always set default language on /configui
 * Transports: Reduce target connection count again to reduce
               tunnel reject rate further

* 2014-02-08 0.9.11 released

zzz's avatar
zzz committed
2014-02-07 zzz
 * Services:
   - Move backup news to psi.i2p
   - Move default addressbook subscription to i2p-projekt.i2p
   - Remove www.i2p2.i2p from default update lists
   - Add psi.i2p to hosts.txt
   - Update links on help pages to avoid redirects on new website
     and select the correct language
 * SusiDNS: Fix whitespace issues

kytv's avatar
kytv committed
2014-02-06 kytv
 * Brazilian Portuguese, Danish, French, Japanese, Polish, Russian, Ukrainian
   translation updates
 * Updates to geoip.txt and geoipv6.dat.gz based on Maxmind GeoLite Country
   database from 2014-02-05.

zzz's avatar
zzz committed
2014-01-31 zzz
 * /logs: Fix encoding of wrapper log section (ticket #1193)
 * NetDB: Fix cases where corrupt RouterInfo files were not deleted (ticket #1190)
 * SOCKS: Remove static logs

2014-01-30 zzz
 * InboundMessageDistributor: Set reply flag on LeaseSets

2014-01-28 zzz
 * /configclients: Add link to plugins.i2p; don't show delete button for console
 * Tunnels: Change expl. IB default to 2 + 0-1

2014-01-28 dg
 * I2PSnark: Make 'kitty.png' transparent
2014-01-28 zzz
 * I2CP: Use client tunnels for b32 lookups (ticket #1166)

zzz's avatar
zzz committed
2014-01-27 zzz
Prop from i2p.i2p.zzz.i2cp:
 * I2CP:
   - Add support for hostname lookups over I2CP with new
     HostLookup and HostReply messages.
   - Move username / password from CreateSession to GetDate for
     early authentication; this is an incompatible chage.
     Outside router context with authentication enabled,
     new clients will not work with old routers.
     Early authentication is not yet enforced, enable with
     i2cp.strictAuth=true. Will change default to true in a later release.
   - Block all actions before authentication.
   - Better disconnect messages to clients for diagnostics
   - Improve lookup command, add auth command in i2ptunnel CLI for testing
   - Don't start ClientWriterRunner thread in constructor
   - Don't flush in ClientWriterRunner unless necessary
   - Send GetDate even in SimpleSession outside of RouterContext
   - Improve SetDate wait logic to reduce locks and break out when Disconnect received
   - Add Disconnect handler to SimpleSession
   - Add SessionID to HostLookup/Reply messages, for future
     use when we have multiple sessions
   - Throw IAE on invalid SessionID values
   - Add support for b64 conversion in destLookup()
   - Catch invalid message length sooner
 * I2Ping:
   - Extend I2PTunnelClientBase so non-shared-client,
     I2CP options, and other features will work
   - Fixes for fields and threading
   - Cleanups
 * Streaming:
   - Send LS with ping (broken since 0.9.2)
   - Set the NO_ACK flag on pings and pongs

2014-01-27 zab
 * Move message serialization later in the SSU sending pipeline
zzz's avatar
zzz committed
   (Ticket #1183)
2014-01-27 zzz
 * i2ptunnel HTTP Proxy: Fix default enable for outproxy plugin

zzz's avatar
zzz committed
Prop from i2p.i2p.zzz.outproxy:
 * i2psnark: Lower threshold for auto-stop
 * i2ptunnel HTTP Proxy:
   - Add support for HTTPS
   - Add support for outproxy plugins
 * Installer: Update links
 * NetDB: Fix NPE after client shutdown (ticket #1174)
 * Router: Lower frequency for publishing stats
 * Update: All updates via torrent

2014-01-25 zab
 * Move OutNetMessage buffer preparation to the Writer threads 
zzz's avatar
zzz committed
* 2014-01-22 0.9.10 released

kytv's avatar
kytv committed
2014-01-20 kytv
kytv's avatar
kytv committed
 * Translation updates
kytv's avatar
kytv committed
 * Updates to geoip.txt and geoipv6.dat.gz based on Maxmind GeoLite Country
   database from 2014-01-08.

2014-01-20 zzz
 * Console: Change www.i2p2.i2p links to i2p-projekt.i2p
 * Reseed: Remove netdb.i2p2.de

 * NetDB: Fix handling of DSRM and DSM down client tunnels
zzz's avatar
zzz committed
2014-01-11 zzz
 * NetDB:
   - Reduce min part tunnels for ffs to 35
   - Use client tunnels for LS lookups from OCMOSJ (ticket #1166)

2014-01-11 str4d
 * BOB: Pass through I2CP host/port (ticket #827)

2014-01-10 str4d
 * BOB: Implement ClientApp interface (ticket #347)

zzz's avatar
zzz committed
2014-01-09 zzz
 * Kademila: Fix NPE in remove()

2014-01-09 kytv
 * Translations
  - Updates to French, German, Romanian, and Russian
  - New Brazilian Portuguese translation
  - Mass pull of translations from Transifex
  - Update of English strings

str4d's avatar
str4d committed
2014-01-09 str4d
 * susimail:
  - Fixed pagination with zero entries (ticket #1168)
  - UTF-8 support from wockenfuss (ticket #508)
str4d's avatar
str4d committed
 * Console: Fixed overlapping text issue in midnight theme

zzz's avatar
zzz committed
2014-01-07 zzz
 * Streaming: Fix StandardServerSocket.close() and isClosed()

zzz's avatar
zzz committed
2014-01-04 zzz
 * Peermanager: Disable small same-country bonus
 * Tunnels: Change client default to 3 hops in router;
   change expl. default to 2+0 IB and 2 + 0-1 OB

2014-01-04 dg
 * Streaming: Move streaming to new package (ticket #1135)
 * Console: Change /configclients 'advanced warning' to include 'toopie, no red
dg2-new's avatar
dg2-new committed
 * Console: Add 'advanced warning' to /configclients
 * SOCKS5Server: Remove redundant, commented out line from my previous findbugs

zzz's avatar
zzz committed
2013-12-19 zzz
 * NetDB: Fixes for ExpireRoutersJob
  - Don't expire if too few routers
  - Don't expire if net is disconnected
  - Don't run in VMCommSystem

2013-12-15 zzz
* EepGet: Allow override of the User-Agent
* i2psnark: Set User-Agent

zzz's avatar
zzz committed
2013-12-14 zzz
* NetDB:
 - Just before midnight, flood to new location too so lookups
   don't fail after keyspace rotation (ticket #510)
 - Refactor RoutingKeyGenerator and UpdateRoutingKeyModifierJob
   in support of the above

zzz's avatar
zzz committed
2013-12-13 zzz
 * i2ptunnel: Show destination for persistent client key only if available;
              show b32 for the key as well
 * NetDB:
   - Increase new kad size to K=24, B=4
   - Fix router count by counting in the data store, not the kbuckets
   - Randomize the order we load router infos at startup so we
     don't bias the kbuckets

zzz's avatar
zzz committed
2013-12-10 zzz
Prop from i2p.i2p.zzz.test2:
 * Config files: Allow empty values
 * Data: Deprecate Signature.FAKE_SIGNATURE
 * GeoIP: Thread the periodic lookup so it doesn't clog the timer queue
 * I2CP router-side: Disconnect client on attempt to publish invalid leaseset
 * i2psnark:
   - Make a set of the default trackers so the config array
     can be private and the lookup for the form is more efficient.
   - Disable streaming pings (ticket #1142)
 * i2ptunnel: Disable streaming pings for clients (ticket #1142)
 * i2ptunnel IRC client: Do not filter server PING or client PONG (ticket #1141)
 * Jetty 7.6.14.v20131031
 * PeerManager: Thread the periodic reorg so it doesn't clog the timer queue
 * PrivateKeyFile: Fix ISE (ticket #1145)
 * Startup: Wait a while and recheck if a recent ping file is there,
            so that a crashed router doesn't prevent a restart (ticket #633)
 * Transport: Reduce target connections from 60% to 45% of limit
   to improve network capacity. Apparent problems with lower limits were
   actually due to unrelated bugs, fixed in 0.9.8.1-22.
 * Translations:
   - Add support for country variants (ticket #1133)
   - Refactor data in ConfigUIHelper
 * UDP PeerState: findbugs volatile/atomic/synch
Prop from i2p.i2p.zzz.netdbkad:
 * NetDB:
   - Move net.i2p.kademlia package from i2psnark to core, and convert
     netdb to use it.
   - Delete old implementation in netdb
   - Fixups in netdb for generics
   - Add debug output to /debug
 * Kad unit tests:
   - Move KBucketSetTest to new directory
   - Fix testSelf() as new implementation will never include myself
   - Delete KBucketImplTest, not applicable/useful now
   - Port KBSTest from i2p.zzz.kademlia branch
   - Fix RandomTrimmer so it always returns true, so it may be used
     as the trimmer in the unit tests

zzz's avatar
zzz committed
* 2013-12-07 0.9.9 released

zzz's avatar
zzz committed
2013-12-04 zzz
i2psnark: Fix ConnectionAcceptor not restarting after tunnel
  restart, preventing incoming connections

2013-12-01 kytv
 * Update geoip.txt based on Maxmind GeoLite Country database from 2013-11-05.
 * French, Italian, Romanian, Spanish, and Swedish translation updates from transifex

 * I2PTunnel: Don't send 'X-Powered-By' on HTTP server tunnels for anonymity reasons.
2013-11-25 str4d
 * Reseed: Listen to "Require SSL" config option

zzz's avatar
zzz committed
2013-11-23 zzz
 * i2ptunnel: Clean up old timer threads

2013-11-23 str4d
 * susimail: Fix NPE when deleting last message (ticket #414)

2013-11-19 kytv
 * Translation updates and start of Japanese translation pulled from Transifex

2013-11-14 kytv
 * Update Java Service Wrapper to v3.5.22
    - Windows: 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,
      Icedtea6 6b27-1.12.5-1+rpi1 and stripped
    - All other binaries are from the "community edition" deltapack offered by
      Tanuki.

zzz's avatar
zzz committed
2013-11-14 zzz
 * Tunnels: Fix reception of encrypted responses to LS lookups (ticket #1125)

2013-11-07 zzz
 * i2psnark: Fix file links, broken in -12 (ticket #1114)
 * Logging: Track duplicates across flush interval (ticket #1110)
 * NetDB: Fix RI publish interval, broken in -7

2013-11-03 zzz
 * NetDB: Allow store of leaseset as long as one lease has not expired
 * Transport:
   - Expire wasUnreachable entries, so inbound tunnel build failures
     don't escalate
   - Add network status to event log

2013-11-01 zzz
 * Transport: Fix GeoIPv6 (ticket #1096)

zzz's avatar
zzz committed
2013-10-31 zzz
 * i2psnark: Always verify file lengths at startup (ticket #1099)
 * Transports: Increase threshold for idle timeout reduction
   (partially back out change from -10)

2013-10-29 dg
 * i2psnark: Start torrents by default (ticket #1072)

zzz's avatar
zzz committed
2013-10-29 zzz
 * i2psnark: Fix start and start-all buttons on text-mode browsers
   and Opera (ticket #1093)
zzz's avatar
zzz committed
 * InboundMessageDistributor:
   - Don't discard an encrypted DSRM received
     down a tunnel, just strip the hashes like we do for unencrypted
   - Send a store of our own encrypted LS received down a tunnel to
     the InNetMessagePool so the FloodfillVerifyStoreJob will see it.
 * NetDB: Fix LS store verifies with encrypted replies
   by storing the tagset with the correct SKM for the inbound tunnel used.
   Broken since 0.9.7 when it was introduced.
 * Tunnels:
   - Build a new exploratory fallback tunnel in the BuildExecutor
     loop if we run out.
   - Don't use closest expl. tunnel as the paired tunnel for a build,
     use a random one instead (partially back out change from -12)

meeh's avatar
meeh committed
2013-10-29 meeh
 * Adding no.i2p registrar

dg2-new's avatar
dg2-new committed
2013-10-28 dg
 * I2PTunnel: Enable persistent keying for SOCKS tunnels (ticket #1088)

2013-10-27 zzz
 * Streaming; Fix crash caused by previous blacklist fix (ticket #1070)

zzz's avatar
zzz committed
2013-10-26 zzz
zzz's avatar
zzz committed
 * i2psnark: Display base name, not torrent file name (ticket #985)
zzz's avatar
zzz committed
 * I2PTunnel HTTP server: New POST limiter
zzz's avatar
zzz committed
 * Profiles: Ensure we select random peers even before the first reorganization
 * Streaming: Randomize end of first conn limit period
 * Tunnels:
   - Don't use fallback expl. tunnels as the paired tunnel
     for a client tunnel build.
   - Fix selection of an expl. tunnel close to a hash
zzz's avatar
zzz committed

zzz's avatar
zzz committed
2013-10-25 zzz
zzz's avatar
zzz committed
 * Router: Only log ping file error once (ticket #1086)
zzz's avatar
zzz committed
 * Streaming:
   - Check blacklist/whitelist before connection limits, so
     a blacklisted peer does not increment the counters
   - Don't increment total throttle if peer is throttled
   - Fix blacklist NPE after config change (ticket #1070)
 * Transports: Reduce connection idle time sooner

2013-10-24 zzz
zzz's avatar
zzz committed
 * i2psnark: Drop incoming connections on HTTP port
 * I2PTunnel: Don't let uncaught exception kill server acceptor (ticket #1070)
 * I2PTunnel standard, HTTP, and IRC servers:
   Route connections to specific targets based on incoming I2P port
   with custom option targetForPort.xxxx=myserver:yyyy
   This allows multiple services on a single server tunnel (ticket #1066)

zzz's avatar
zzz committed
2013-10-23 zzz
 * I2PTunnel standard and IRC clients:
   - Allow host:port targets; set defaults in i2ptunnel.config (ticket #1066)
   - Don't fail start if hostname is unresolvable; retry at connect time (ticket #946)
   - Output IRC message on connect exception
   - Update target list on-the-fly when configuration changes
zzz's avatar
zzz committed
 * NetDB:
   - Increase RI publish interval to reduce the connection load on ffs
   - Save RI-last-published time; check it before publishing

2013-10-19 zzz
 * NetDB:
   - Reinstate ExpireRoutersJob
   - Reduce min part. tunnels for floodfill
   - Reduce floodfill redundancy

2013-10-17 zzz
 * I2CP: Move SSL client socket code to util,
   move cert location to certificates/i2cp.
 * I2PTunnel: Support SSL for connection to local server
   for Standard, HTTP, and IRC server tunnels.
   Put server cert in certificates/i2ptunnel if necessary.
 * Streaming: Throw IOE if socket is closed (ticket #1077)

2013-10-14 kytv
 * French translation updates from Transifex

2013-10-14 zzz
 * Translations: Move country names to a new resource bundle

 Prop from branch i2p.i2p.zzz.test2:
 * Console:
   - Implement webapp state detection and stop button for webapps
     on /configclients (Ticket #1025)
   - Set per-connector acceptors back to 1, Jetty default changed to 2?
   - Tag strings on /jobs (ticket #969)
 * Data Structures:
   - Make Destination and RouterIdentity keys and cert immutable
   - Add Destination cache
 * i2psnark:
   - Combine getPeers and announce into a single method, as we must announce to
     the closest from the getPeers, not the closest from the kbuckets
   - Stop getPeers when nothing closer is found
   - Increase DHT dest lookup, search timeouts, and max search depth
   - Loop tracker client faster when in magnet mode or if DHT announce fails
   - Don't return an empty peers list in DHT if we only know about the requestor
   - Refactor Storage file data structures
   - Sort files when creating torrents
   - Add torrent auto-stop support; enable for update file
   - Add tunnel auto-close when no torrents are running
   - Close socket before closing output stream to avoid blocking in
     Peer.disconnect(), and prevent Peer.disconnect() loop
 * I2PTunnelHTTPServer: Don't thread a receiver for GET or HEAD
 * Jetty 7.6.13.v20130916
 * Logging:
   - Require strict match of class name component
   - parseLimits() cleanup
 * SSU: More efficient InboundMessageState
 * Streaming:
   - Fix active stream counting so it doesn't count streams
     that are closed and in TIME-WAIT state. Also, break out of the
     counting loop as soon as we know the answer. (Ticket #1039)
   - Consolidate scheduling of DisconnectEvent, and ensure
     we only do it once. (Ticket #1041)
   - Atomics for close/reset send/receive
     so we only do things once. (Ticket #1041)
   - Remove setCloseReceivedOn(), unused outside Connection
   - OR the isFlagSet parameter instead of multiple calls
   - Remove acked packets from _outboundPackets inside synced iterator
   - Short-circuit _outboundPackets iterator if empty
   - Small optimization if not logging in ConnectionPacketHandler
   - Stub out processing of close ack (ticket #1042)
   - Don't queue a message for an unknown connection on the SYN queue
     if it has a send ID set, it must be for a recently closed connection
   - Major rework of connection disconnect process. Tickets 1040-1042.
   - Prevent multiple calls or reentrancy in disconnect() (ticket #1041)
   - Implement processing of close to skip TIME-WAIT, and
     wait for all packets to be acked (not just the CLOSE) before
     doing so, if possible (ticket #1042)
   - Don't call disconnect() or disconnectComplete() from I2PSocketFull.destroy()
     so retransmissions and acks can still happen (removes some close loops)
   - Don't call disconnect() until we have both sent and received a CLOSE (ticket #1040)
   - Don't reset the connection from CPH just because we sent a CLOSE
     and it was acked (ticket #1040)
   - Ack packets even if we sent a CLOSE  (ticket #1040)
   - Retransmit CLOSE if not acked (ticket #1040)
   - Send received packets to the MessageInputStream even if we haven't received a SYN
   - Don't call MessageInputStream.messageReceived() for ack-only packets, that was pointless
   - Don't send a RESET after timeout of an outbound connection
   - Work around bugs on other end by limiting retransmission of CLOSE packets
   - Make I2PSocketFull.close() nonblocking; it will now cause any user-side
     writes blocked in I/O (Connection.packetSendChoke()) to throw
     an exception (tickets #629, #1041)
   - Don't ignore InterruptedExceptions; throw InterruptedIOException
   - MessageInputStream locking fixes
   - Make _isInbound final
   - More cleanups, javadocs, log tweaks
 * Transport: Treat more IPs as local
   - 25/8 Hamachi (moved from 5/8 Nov. 2012)
   - 2620:9b::/32 Hamachi
   - 3ffc::/16 6bone
   - 2001:db8::/32 example (RFC 3849)
   - 0::/8 Includes IPv4 compatibility addresses ::xxxx:xxxx
 * Update:
   - Support notification of updates that cannot be downloaded
     due to "constraints". Add constraint checks for java version,
     router version, configuration, and base permissions. (ticket #1024)
   - Thread news fetcher so it doesn't clog the scheduler
 * Watchdog: Format messages better

zzz's avatar
zzz committed
2013-10-06 zzz
 Prop from branch i2p.i2p.zzz.ecdsa:
 * Build:
   - Generate su3 file in release target
   - Add zzz's new RSA 4096 pubkey cert for updates
   - Fix checkcerts.sh
 * Console: Move advanced setting to HelperBase
 * DSAEngine changes:
   - Implement raw sign/verify for other SigTypes
   - Add sign/verify methods using Java keys
 * ECDSA Support:
   - Add ECConstants which looks for named curves and falls back to
     explicitly defining the curves
   - Add support for ECDSA to SigType, DSAEngine and KeyGenerator
   - Attempt to add BC as a Provider
   - genSpec: fallback to BC provider
 * EepGet:
   - Fix non-proxied PartialEepGet
   - Prevent non-proxied eepget for an I2P host
 * KeyGenerator changes:
   - Generate key pairs for all supported SigTypes
   - KeyPairGen: Catch ProviderException, fallback to BC provider
   - Add KeyGenerator main() tests
 * KeyRing and DirKeyRing added: simple backend for storing X.509 certs
 * KeyStoreUtil added:
   - Consolidate KeyStore code from SSLEepGet, I2CPSSLSocketFactory,
     SSLClientListenerRunner, and RouterConsoleRunner into new
     KeyStoreUtil and CertUtil classes in net.i2p.crypto (ticket #744)
   - Change default to RSA 2048 (ticket #1017)
   - Set file modes on written keys
   - Overwrite check in createKeys()
   - New getCert(), getKey()
   - Extend keygen max wait
   - Read back private key to verify after keygen
   - Validate cert after reading from file
   - Validate CN in cert
   - Specify cert signature algorithm when generating keys
 * NativeBigInteger: Tweak to prevent early context instantiation
 * RSA support added: constants, parameters, sig types, support in DSAEngine, KeyGenerator, SigUtil
 * SHA1Hash: Add no-arg constructor
 * SigType changes:
   - Add parameters (curve specs) to SigTypes
   - Add getHashInstance()
   - Add RSA, fix ECDSA
   - Renumber, rename, comment out types that are too short.
 * SigUtil added:
   - Converters from Java formats (ASN.1, X.509, PKCS#8)
     to I2P formats for Signatures and SigningKeys
   - Move ASN.1 converter from DSAEngine to SigUtil, generalize
     for variable length, add support for longer sequences,
     add more sanity checks, add more exceptions
   - Move I2P-to-Java DSA key conversion from DSAEngine to SigUtil
   - Add Java-to-I2P DSA key conversion
   - Add Java key import
   - New split() and combine() methods
 * SSLEepGet: Move all certificates to certificates/ssl, in preparation
   for other certificate uses by SU3File
 * SU3File changes:
   - Support all SigTypes
   - Implement keygen
   - Readahead to get sigtype on verify, as we need the hash type
   - Enum for content type
   - Add unknown content type, make default
   - Fix NPE if private key not found or sign fails
   - Store generated keys in keystore, and get private key from keystore
     for signing, in Java format
   - Use Java keys to sign and verify so we don't
     lose the key parameters in the conversion to I2P keys
   - Type checking of Java private key vs. type when signing
   - Use certs instead of public keys for verification
   - Fix arg processing
   - Improve validate-without-extract
   - New extract command
   - Change static fields to avoid early context init
   - Reduce PRNG buffer size for faster signing
 * Update: Preliminary work for su3 router updates:
   - New ROUTER_SIGNED_SU3 UpdateType
   - Add support for torrent and HTTP
   - Refactor UpdateRunners to return actual UpdateType
   - Deal with signed/su3 conflicts
   - Verify and extract su3 files.
   - Stub out support for clearnet su3 updating
   - New config for proxying news, separate from proxying update
   - PartialEepGet and SSLEepGet tweaks to support clearnet update
   - Remove proxy, key, and url config from /configupdate
   - More URI checks in UpdateRunner
   - Add https support for news fetch
   - Add su3 mime type
   - Reset found version in update loop so we don't fetch from
     the next host too.
   - Prevent NPE on version after SSL fetch

zzz's avatar
zzz committed
* 2013-10-02 0.9.8.1 released

2013-10-01 zzz
 * Startup: Fix rekeying on Windows (tickets #1056, 1057)

zzz's avatar
zzz committed
* 2013-09-30 0.9.8 released

2013-09-26 kytv
 * French, German, Russian, and Swedish translation updates from Transifex
 * Update geoip.txt based on Maxmind GeoLite Country database from 2013-09-03

2013-09-23 zzz
 * Console: Add /proof page which can copied to prove you run a router

kytv's avatar
kytv committed
2013-09-20 kytv
 * Chinese, French, German, Russian, and Swedish translation updates from
   Transifex
 * Revert expl. default back to 2 hops, wait for next release
2013-09-07 zzz
 * Crypto: Don't use "short exponent" on faster platforms.
   Rebuild router identity if key length doesn't match setting.

2013-09-03 zzz
 * configui: Change pw restart warning to error so people dont miss it
 * Data: deprecate most of LeaseSetKeys
 * i2ptunnel: Reduce buffer size and use cache in HTTPServer
 * Jetty: Increase maxIdleTime
 * profiles: use different sort for floodfill profiles display
 * Utils: Consolidate maxMemory() calls

zab2's avatar
zab2 committed
2013-08-31 zab
 * Streaming: Use only non-retransmitted packets when sampling RTT
zab2's avatar
zab2 committed
   (Ticket 1007, RFC 6298)
zab2's avatar
zab2 committed

 * Addressbook: Don't write to log file on Android (ticket #859)
 * Addresses: Treat Teredo addresses 2001:0::/32 as local
 * Console: Display "accepting tunnels" instead of "rejecting tunnels"
            after 20 minutes (ticket #902)
 * i2psnark: Highlight table rows on hover
 * NTCP: Handle race where peer's NTCP address goes away
 * SSU, confignet: Add support for specifiying multiple addresses
 * SusiDNS: Don't require last subscription to be terminated by newline (ticket #1000)

zzz's avatar
zzz committed
2013-08-11 zzz
 * Jetty 7.6.12.v20130726

2013-08-11 kytv
 * Update Java Service Wrapper to v3.5.20
    - Windows: 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,
      Icedtea6 6b27-1.12.5-1+rpi1 and stripped
    - All other binaries are from the "community edition" deltapack offered by
      Tanuki.
 * Translations
   - French, Portugeuse, Russian, Spanish, and Turkish updates from Transifex
   - Start of Romanian translation from Transifex
zab2's avatar
zab2 committed
2013-08-11 zab
 * Streaming:
   - reduce initial ack delay 2000->1000
   - rework the logic of acking duplicate packets

zzz's avatar
zzz committed
* 2013-08-10 0.9.7.1 released

zzz's avatar
zzz committed
2013-08-10 zzz
zzz's avatar
zzz committed
 * Prop from i2p.i2p.0971
 * Update:
   - New update hosts, thanks Meeh and dg
   - Increase update-via-torrent to 30%

zzz's avatar
zzz committed
2013-07-30 zzz
 * i2psnark: Increase max piece size to 4 MB (ticket #993)
 * Tunnels: Extend local expiration of IB tunnels, to allow for
   more clock skew and not drop valid messages at their destination

zzz's avatar
zzz committed
2013-07-29 zzz
zzz's avatar
zzz committed
 * Signatures:
   - Prep for new signature algorithms; new SigType enum;
     Signature, SigningPublicKey, SigningPrivateKey store type
   - New Hash384 and Hash512 classes
   - Remove length field in SimpleDataStructure
   - New SU3File generator/verifier/extractor
zzz's avatar
zzz committed
 * GeoIPv6: Fix NPE (ticket #992)
zzz's avatar
zzz committed

zzz's avatar
zzz committed
2013-07-28 zzz
 * Addresses: Treat RFC 4193 addresses fc00::/7 as local
 * NetDB: Disable RI verifies for now

zzz's avatar
zzz committed
2013-07-26 zzz
 * Transports:
   - Fix IPv6-only option 2nd try
   - Treat RFC 4193 addresses fc00::/7 as local

zzz's avatar
zzz committed
2013-07-25 zzz
zzz's avatar
zzz committed
 * Transports:
   - Prefer IPv6 by default
   - Fix IPv6-only option
   - Don't try NTCP IPv6 addresses unless we have one
   - Fix non-%16 SSU padding; enable by default
 * Tunnels:
   - Make expl. default 3 hops  (ticket #966)
   - Allow expl. fallback up to -2 hops

zzz's avatar
zzz committed
2013-07-24 zzz
 * GeoIP: Fix lookups, broken in IPv6 branch
 * UPnP:
   - main() tweaks for debugging
   - Fix for devices that return base URLs with trailing '/' (ticket #986)
zzz's avatar
zzz committed
2013-07-22 zzz
 * BuildReplyHandler:
   - Make non-static
   - Don't pollute Hash cache with build response record hashes
   - Use SimpleByteCache
   - cleanups
 * HashComparator:
   - Don't pollute Hash cache with hashes
   - cleanups

zzz's avatar
zzz committed
2013-07-21 zzz
 * I2CP:
   - Don't NPE when loglevel=warn
   - Don't enforce property length limits when inside router JVM
 * I2PSnark: Log uncaught error in ThreadedStarter to router log
 * I2PThread: Log uncaught error to wrapper log

zzz's avatar
zzz committed
2013-07-20 zzz
 Prop from i2p.i2p.zzz.ipv6:
 * Addresses:
   - blocklist 192.88.88.0/24 6to4 anycast
   - invalidate 2002::/16
   - Strip scope from returned IPv6 addresses
 * Blocklist:
   - Add IPv6 in-memory single list
   - Limit in-memory single list size
   - Fix dup check in getAddresses()
 * CSFI: Pass TransportManager instead of CSFI to GetBidsJob; remove unused methods
 * Console:
   - Add IPv6 column on /peers
   - Other minor /peers cleanup
 * FloodfillPeerSelector, ProfileOrganizer: Use 8 bytes for IPv6 check
 * GeoIP:
   - Use cached IP in RouterAddresses
   - Use both NTCP and SSU addresses
 * GeoIPv6:
   - Handle gzipped input data in merge tool
   - Add script to generate compressed data
   - Add local additions
   - Add compressed data file, generated from Maxmind data fetched 2013-05-24
   - Include data in installer and updater
   - Update Maxmind license info, now CC-SA 3.0
   - Enable GeoIPv6 lookup in CSFI
 * NetDb:
   - Add floodfillEnabled() to NetworkDatabaseFacade so callers don't
     have to cast to FNDF, and Dummy NDF will work
   - Remove static FNDF.floodfillEnabled()
 * NTCP:
   - Move SSU address notification handling from CSFI to NTCPTransport
   - Drop NTCPAddress, just use RouterAddress
   - Drop _myAddress field, use super's currentAddress
   - Bad bind config not fatal
   - Fix publishing address when host specified but interface is not
   - Republish even if only changing cost
 * PacketPusher: Minor optimization
 * Peer tests:
   - Use only IPv4 peer for Alice and Bob in peer tests; Charlie may be an IPv6 peer.
   - Enforce IPv4 (Alice's) address inside PeerTest packet
 * RouterAddress and RouterInfo toString() cleanups; don't cache RI in _stringified
 * RouterAddress:
   - hashCode/equals tweaks
   - Add new constructor
   - Add add getHost() and deepEquals()
   - Compare host string, not IP, in equals()
   - Deprecate some setters
   - Add warning about setCost()
   - Change cost storage from int to short
   - Cost range checks
 * RouterContext: Fix disabling client manager with i2p.dummyClientFacade=true
 * SSU:
   - Change from single UDPEndpoint to a List of UDPEndpoints
   - Move (single) receive queue from UDPReceiver to PacketHandler
   - Multiple transmit queues (one for each UDPEndpoint/UDPSender),
     select queue in PacketPusher
   - Throw exception on UDPEndpoint.startup() failure
   - Remove all _external* fields; use _currentAddresses in super
   - Big rework of externalAddressReceived(), rebuildExternalAddress(),
     needsRebuild(), and replaceAddress() for multiple addresses and IPv6
   - Add caching in UDPAddress
   - More IPv6 flavors of utility methods
   - Remove two-arg replaceAddress()
   - Fixes for i2np.udp.allowLocal, log tweaks, sender/receiver thread name tweaks
   - Handle IPv6 in too-close checks
   - IPv6 SSU MTU adjustments
   - Hash IPv6 addresses in IPThrottler
 * SSU Introduction:
   - Document that Alice-Bob RelayRequest/RelayResponse may be IPv4 or IPv6,
     but don't implement IPv6 yet.
     Changes required in IntroductionManager and PacketBuilder to send Alice's
     IPv4 address in the RelayRequest packet over IPv6, and to publish
     IPv6 introducer IPs.
   - Bob-Charlie RelayIntro must be IPv4
   - Only offer/accept relay tags as Bob or Charlie if the Bob-Charlie session is IPv4
   - Alice-Charlie communication must be IPv4
Loading
Loading full blame...