Newer
Older
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)

kytv
committed
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)

dg2-new
committed
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)
2015-05-07 zzz
* SAM: Close datagram or raw session when underlying
I2P session closes (tickets #1455, #1563)
* Update: Add support for su3-signed development builds (ticket #1381)
* 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)
* Console: Add floodfill configuration form to /configadvanced
* Router: Allow class M to become floodfill;
add bandwidth classes P and X (ticket #1447)
* SusiDNS: Add export button
2015-05-02 zzz
* Console: Fix Indonesian translations
* Jetty 8.1.17.v20150415
* Transports: Cleanup of ticket #1458 fixes
* Transports: Correctly handle IPv4 firewalled, IPv6 not (ticket #1458)
* Clock: Make forward slewing work better
* 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
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
* 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)
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
* 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)
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)
2015-04-05 zzz
* IRC Server: Better timeout handling reading initial lines (ticket #723)
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
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
* Reseed (ticket #1369):
- 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
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
- 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
* Tunnels: Drop instead of reject requests on high job lag
* UPnP: Update to cyberlink 3.0
* 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
2015-03-15 zzz
* Job Queue:
- Fix overload dropping
- Add drop count to job stats
- Decrease overload threshold again
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

dg2-new
committed
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

kytv
committed
* Updates to geoip.txt and geoipv6.dat.gz based on Maxmind GeoLite Country

kytv
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
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
2015-01-30 zzz
* HTTP Proxy: More error page changes
* NTCP: Throttle event pumper if looping too fast (tickets #551, #1075, #1411)
* 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
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
- 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"
* 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
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
* Latency reduction all over:
- SSU: Reduce ack delay
- Streaming: Reduce min RTO and flusher delay
- Tunnels: Reduce GW batching time
* Streaming:
- Add API for sending/receiving payload in ping/pong
- Fix PcapWriter
* UrlLauncher:
- Configure browser with routerconsole.browser (ticket #1159)
- Convert to ClientApp interface
2015-01-03 zzz
* I2CP: Use configured leaseset keys if available
* I2PTunnel: Persist leaseset keys
2014-12-15 zzz
* Console: Prevent two-word translations from splitting across lines in summary bar
* 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
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
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
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
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
2014-11-12 zzz
* Data: Clear more caches when under memory pressure and at shutdown
* Plugins: Fix bug in stopping a ClientApp plugin with $parameters in the args
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
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
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
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
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.
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
* 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
* 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
* SAM:
- Don't publish LS for DIRECTION=CREATE
- Set default tunnel name
* Tests: Fix junit compile fails due to data structure moves
* Transport: Hooks for pluggable transports (ticket #1170)
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
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
* 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
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
2014-09-16 zzz
* i2psnark: Don't send HTML-only headers for icons (2nd try)
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
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
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
* 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
2014-08-23 zzz
* Console, i2psnark, i2ptunnel: Escape fixes and cleanups
* SSU: Drop peer tests as Bob from unestablished Alices
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
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)
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
* Console: Escaping fix (ticket #1346)
* i2psnark: Fix add torrent NPE
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
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
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
2014-08-07 kytv
* Updates to geoip.txt and geoipv6.dat.gz based on Maxmind GeoLite Country
database from 2014-08-06.
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
2014-07-31 zzz
* ExecNamingService: Remove
* Plugins: Add whitelist of keys
- 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
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
2014-07-15 str4d
* I2CP: Stubs for I2CP connections over Unix domain sockets
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)
* 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)
* 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)
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
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
2014-06-01 zzz
* i2psnark:
- Store seed/leech status in DHT tracker (ticket #1280)
- Increase max received DHT nodes (Vuze sends more)
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
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()
2014-05-20 zzz
* Fixes after code review
* SSU: Fix peer test deadlock (ticket #1286)
2014-05-15 kytv
* Translations, imported from Transifex:
- 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.
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.
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
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
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
* 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)
- 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
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
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
2014-04-23 zzz
* SusiMail:
- Queue deletions for a later thread
- Synch all folder access
- 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
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
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
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
* I2PTunnel IRC Client: Prevent AIOOBE (ticket #1254)
* 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
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
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
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
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
2014-03-28 kytv
* Updates to geoip.txt and geoipv6.dat.gz based on Maxmind GeoLite Country
database from 2014-03-05.
* Brazilian Portuguese, French, Norwegian, and Russian translation updates imported from Transifex
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
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
2014-03-05 str4d
* susimail: Removed remaining Jetty dependencies in susimail
(patch from wockenfuss) (ticket #1165)
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)
2014-02-23 dg
* 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)
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
* SSU:
- Use session key for relay request/response if available (ticket #1206)
* 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
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
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
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)
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-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
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.
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)
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
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
* Up version to -5
2014-01-27 zzz
* i2ptunnel HTTP Proxy: Fix default enable for outproxy plugin
* 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
(Ticket #1183)
* Up version to -1
* 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
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)
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
* susimail:
- Fixed pagination with zero entries (ticket #1168)
- UTF-8 support from wockenfuss (ticket #508)
2014-01-07 zzz
* Streaming: Fix StandardServerSocket.close() and isClosed()
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
* SOCKS5Server: Remove redundant, commented out line from my previous findbugs
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
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
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
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
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
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
2013-11-28 dg
* 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
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.
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)
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)
* i2psnark: Fix start and start-all buttons on text-mode browsers
and Opera (ticket #1093)
* 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)
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)
* 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
* 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
* 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)
* 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
* 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
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
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
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
* 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
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
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
2013-10-01 zzz
* Startup: Fix rekeying on Windows (tickets #1056, 1057)
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
* 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
2013-08-31 zab
* Streaming: Use only non-retransmitted packets when sampling RTT
* 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)
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
2013-08-11 zab
* Streaming:
- reduce initial ack delay 2000->1000
- rework the logic of acking duplicate packets
* Prop from i2p.i2p.0971
* Update:
- New update hosts, thanks Meeh and dg
- Increase update-via-torrent to 30%
* 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
* 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
* Addresses: Treat RFC 4193 addresses fc00::/7 as local
* NetDB: Disable RI verifies for now
* Transports:
- Fix IPv6-only option 2nd try
- Treat RFC 4193 addresses fc00::/7 as local
* 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
* UPnP:
- main() tweaks for debugging
- Fix for devices that return base URLs with trailing '/' (ticket #986)
* 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
* 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
Loading
Loading full blame...