Newer
Older
* Bandwidth Limiter: Fix stats broken in -1
* HTTP Proxy: Store referrer of new addresses in address book
* NTCP:
- Fix NPE (ticket #770)
- Use ByteCache for buffers
* SOCKS: Reduce log level of connect errors
* SSU: Fix bug that would drop 512 byte messages
* stats.jsp: Link to graph page, not single image
2012-11-10 kytv
* eepget: Add logic to figure out the path to java.exe (java isn't always added to the system path
in Windows) (ticket #769)
2012-11-05 zzz
* Console:
- Fix NPE after restart (ticket #763)
- Move more nonces out of system properties
* i2psnark:
- More DHT limits
- Announce to backup trackers if DHT is empty
- Use PEX and DHT info in torrent peer count
- Don't use temp files for announces
* PeerManager: Don't reorganize as often if it takes too long (ticket #765)
* RequestLeaseSetJob: Only disconnect client after multiple dropped
lease set requests; reduce timeout, other cleanups
* Unsigned Update: Fix notification on failure
2012-11-02 kytv
* German, Portuguese, and Swedish translation updates from Transifex
* Refreshed English po files to push to TX.
2012-11-02 zzz
* configstats: Fix group sorting, translate groups
* I2CP:
- Better fix for logging dropped messages (ticket #758)
- Implement fast receive to reduce per-message handshakes
- Make messageReliability=none the default
* i2psnark:
- Split buckets correctly
- More exploration fixes
* i2ptunnel:
- Better privkey backup file name
- Revert increment of privkey tunnel name
- Move deleted privkeys to backup dir
- Fix jsp build dependencies
- Fix layout issue on Chrome (ticket #757)
* KeyManager: Eliminate races, buffer I/O, eliminate periodic syncing
2012-10-31 zzz
* FIFOBandwidthRefiller: Reduce refill interval to smooth output
* I2CP: Reduce log level when outbound queue is full (ticket #758)
* i2ptunnel: Fix NPE in zzzot plugin
* PriBlockingQueue: Enforce max size
* Streaming: New disableRejectLogging option (default false), enable for snark
5056
5057
5058
5059
5060
5061
5062
5063
5064
5065
5066
5067
5068
5069
5070
5071
5072
5073
5074
5075
5076
5077
5078
5079
5080
5081
2012-10-30 zzz
* i2psnark:
- Add kbucket debugging
- Eliminate redundant explore keys
- Add more limits to DHT tracker
- Delay expiration at startup
- Only enable updates for dev builds and 1% of release builds
* i2ptunnel:
- Create backup privkey files (ticket #752)
- Fix NPE in Android startup
* Installer: Drop news.xml and old certs
* logs.jsp:
- Don't display dup message if last
- Spacing tweaks
* OutNetMessage: Properly clean up when dropped by codel (but unused for now
since codel is disabled for ONM)
* SSU:
- Adjust RTT/RTO calculations
- Better bandwidth tracking
- Cleanup of OutboundMessageState
- Stat tweaks
* StatisticsManager: Publish stats less often
* Transports: Increase min peer port to 1024
* Tunnels: Implement per-client outbound tunnel message priority (ticket #719)
* Update Manager: Warn on dup registration
2012-10-28 zzz
* Addresses:
- Add methods for connectivity detection
- Remove Hamachi restriction
* Banlist: renamed
* Clients: New interface for clients started via clients.config, and a new
manager to track the lifecycle and start/stop clients on demand.
(ticket #347)
* Console:
- Add console password form to configui.jsp
- Consolidate all the jsp formhandler boilerplate in the new formhandler.jsi
- Store form handler nonces in the servlet session instead of system properties,
to prevent cross-session interference
- Bypass nonces if console password enabled
- Remove ports from port mapper on shutdown, other changes to
track actual ports better (ticket #731)
- Prep for RouterApp interface by storing context in a field,
shuffle around what's static and what's not (ticket #347)
- Convert to RouterApp interface
- Convert from basic to digest authentication (ticket #652)
5105
5106
5107
5108
5109
5110
5111
5112
5113
5114
5115
5116
5117
5118
5119
5120
5121
5122
5123
5124
5125
5126
5127
5128
- Use new password manager (ticket #731)
* Core: New password manager for storing passwords in router.config
in consistent ways, including salting and hashing if possible.
(ticket #731)
* i2ptunnel:
- Convert HTTP and CONNECT proxies from basic to digest authentication
- Bypass nonces if console password enabled
- Convert to ClientApp interface
- Synchronization improvements
* Streaming: Add pcap debug facility, from i2p.i2p.zzz.pcap
* Transport:
- Add a simple network monitor
- Add new reachability state for network disconnected
- Prevent any tunnel building when disconnected (ticket #519)
- Don't unleash watchdog when disconnected
- Split up NTCPConnection's single _bwRequests Set into inbound and outbound,
make FIFOBandwithLimiter.Request unidirectional (ticket #719)
* Update: Major redesign of the update facilities:
- Generic interfaces for updating and checking things
- Allow checkers and updaters outside router context
- Hide update buttons after downloading update (ticket #484)
- Add update-via-i2psnark facility
- Don't hold references to updaters after completion
2012-10-25 zzz
* BuildHandler: Fix "too slow" rejections due to internal clock skew
2012-10-24 zzz
* I2PSnark:
- Fix several partial piece (temp file) leaks
- Don't lose all DHT peers if we stop quickly
- Explore a kbucket if it's less than 3/4 full
2012-10-24 str4d
* i2ptunnel: Truncate long client destinations (ticket #581)
2012-10-21 zzz
* Watchdog: Don't dump threads too often (ticket #519)
2012-10-20 zzz
* Transport: Back out CoDel for SSU PeerState and NTCP
2012-10-19 zzz
* UDP: Fix peer test NPE (ticket # 748)
2012-10-18 kytv
* Portuguese and Spanish updates from Transifex
* Update geoip.txt based on Maxmind GeoLite Country database from 2012-10-02
2012-10-15 kytv
* Italian and Swedish updates from Transifex
2012-10-14 zzz
* Console: Use non-nio connector for Java 5 and JamVM/gij
(tickets #715 and #743)
* i2psnark: Fix request tracking bug preventing piece requests
2012-10-11 kytv
* Italian translation updates from Transifex
* i2prouter:
- Support for installing as a daemon with systemd on Arch Linux and Suse
- Support installing as a daemon on Slackware
2012-10-10 zzz
* ShellCommand: Fix launching all browsers at startup (ticket #453)
* stats.jsp: Sort groups by translated name
* EventLog: Add more events
* NetDB: Increase floodfills again
* RouterInfo: Exit 1 on error in main()
* SSU:
- Add peer test throttling
- Peer test packet count fixes
- Adjust peer test timeouts and add backoff
- Reject relays and peer tests from same /16
- More peer test cleanup and log tweaks
* Transports:
- Enforce minimum peer port
- Warn on low router ports
2012-10-08 zzz
* SSU:
- Fix relay request handling bug from -10
- Fix peer test reply handling bug from -10
- Fix NPE from -6
2012-10-07 zzz
* I2PAppContext: Improved synching in constructor
* i2ptunnel:
- Set default read timeout in standard server
- Reduce header timeout, enforce total header timeout
in IRC and HTTP servers (ticket #723)
* Logs:
- Flush buffers in logs.jsp
- Add dup message to buffers, was in file only
* Streaming: Don't ignore option or force connect timeout to 5 minutes
* UPnP: Workaround NPE (ticket #728)
2012-10-06 zzz
* configlogging.jsp: Fix IAE
* error500.jsp: Fix whitespace
* i2psnark:
- Add allocating and checking indications (ticket #695)
- Add bandwidth message at startup
- More checks at torrent creation
* SSU:
- Throttle outbound destroys on shutdown
- Limit outbound introduction offers
- Validate port/IP in received peer tests
2012-10-05 zzz
* configservice.jsp: Add GC button
* DataHelper: Sanity checks in storeProps(), use
storeProps() for router config again
* SSU:
- More synchronization fixes
- Reduce chance of dup acks in a single message
- Reduce max unsent acks to 50
- Use last ack time in ping decision too
- Reduce ack delay
* TunnelPoolManager: Fix early NPE (ticket #724)
2012-10-03 zzz
* NTCP: Reduce conLock contention
* SSU:
- Increase max outbound establishments based on bandwidth
- Synchronization fix for Java 5
- Use multiple buffer sizes in OutboundMessageState to
reduce memory usage
- Adjust skew calculation, synchronize too
- Ping loop improvements
2012-10-02 zzz
* I2CP: Delay after sending disconnect message to
help it get through
* i2psnark: Fix delete download message
* i2ptunnel: Fix log message
* NTCP: Only set keepalive if firewalled
* OOMListener: Dump threads on OOM
* PRNG, LogWriter: Use I2PThread to catch OOM
* SimpleByteCache: Fix ABQ/LBQ selection
* SSU:
- Fix memory leak in _peersByRemoteHost map caused by not
removing peers that change IP or port
- Send keepalives if firewalled
- Handle peers that change ports on an established session
- Synchronize adds and drops
- Don't use peers with high RTTs in clock skew calculation
- Reduce initial RTT/RTO
2012-09-28 zzz
* i2psnark:
- Fix bugs in rarest-first tracking
- Fix requesting of partial piece when there are multiple seeds
- Synch fix in BitField
* i2ptunnel: Fix wrong server IP in log message
* peers.jsp: Remove SSU "Dev" column
* SessionKeyManager: Store original tagset size for debugging
* Streaming: Don't send RST on globally-blackisted conns
* Addresses: Reject numeric IPs of the form n, n.n, and n.n.n
* Console, i2ptunnel: More validation of address and port in forms
* ConvertToHash:
- Add support for b64hash.i2p
- Cleanup and use cache
* i2psnark: Enable DHT by default
* RFC822Date: Synchronization fix
* Streaming:
- Implement changing connection limits on a running session
- Implement global blacklist
2012-09-25 zzz
* Context: Make files final
* EventLog: Fix IAE on portable
* Jetty: Add non-NIO selector option (ticket #715)
* OutboundEstablishState: Cleanup (ticket #671)
* SimpleByteCache: Concurrent fix
* UPnP: Cleanup & final
5290
5291
5292
5293
5294
5295
5296
5297
5298
5299
5300
5301
5302
5303
5304
5305
5306
5307
5308
5309
5310
5311
5312
5313
5314
5315
5316
5317
5318
5319
5320
5321
5322
5323
5324
5325
5326
5327
5328
5329
5330
5331
5332
5333
5334
5335
5336
2012-09-21 zzz
* BuildHandler: Use CoDel for inbound queue
* ByteCache:
- Prevent release of wrong size
- Move all 16/32 byte users to SimpleByteCache
- Increase SimpleByteCache default size.
* ClientConnectionRunner:
- Run HandleJob and MessageReceivedJob inline for speed
- Remove payload from message map if availability announce fails
- Cleanups
* ClientManager:
- Concurrent client map for faster lookup
- Add by-hash client map for faster lookup by hash
* ClientWriterRunner: Limit queue size
* Clock: Synchronization, log large shifts to event log
* Console: Mark all restarts on graphs using the event log.
* FortunaRandomSource:
- Fix bug that wasted entropy in nextInt()
- Improved synchronization
* GarlicMessage:
- Add notes about GarlicMessageHandler and HandleGarlicMessageJob
being unused in practice
* I2CP:
- Limit router/client queue sizes and queue wait times
- Buffer output streams
* i2psnark:
- Implement blacklist for unreachable DHT peers
- Reduce threshold for unreachable
- Use ByteCache for chunks in/out
* IP Lookup:
- Add caching in RouterAddress with secondary caching
in Addresses; use caches to speed up transport bids,
blocklist checks, geoip lookups, and profile organizer
checks (ticket #707)
- Limit IP cache size in TransportImpl
- Clear caches at shutdown
* JobQueue: Reduce lock contention
* LHMCache: New util, replacing several private versions
* LogWriter:
- Duplicate log message removal
- Increase buffer time
* NTCP: Move NTCPConnection outbound queue to CoDelPriority
* OutNetMessage:
- Centralize priority definitions
- Raise netdb store and reply priority
* Router:
- Boost priority of shutdown thread
- Replace ident log with new, general-purpose event log;
use for stops, starts, and updates, and others.
5339
5340
5341
5342
5343
5344
5345
5346
5347
5348
5349
5350
5351
5352
5353
5354
5355
5356
5357
5358
5359
5360
5361
5362
5363
5364
5365
5366
5367
5368
5369
5370
5371
- New AQM CoDel queue utilities
- Startup/shutdown synchronization fixes
* RouterAddress: Remove unused expiration field to save space
* SimpleTimer (ticket #653):
- Move all remaining uses to SimpleTimer2
- Deprecate
* SSU:
- Move MessageReceiver, UDPSender and UDPReceiver queues to CoDel
- Separate PeerState outbound message list into a queue for unsent messages
and a list for sent messages awaiting ack
- Implement PeerState outbound queue as CoDelPriority
- Implement backlogged indication like in NTCP
- Increase initial and max RTO
- Don't count ack-only packets in bandwidth allocation
* Streaming: Don't send a RST to an hour/day limited peer,
or blacklisted, or non-whitelisted, to not waste outbound bandwidth
* SystemVersion: New util, to consolidate duplicate code,
and determine Java version on Android
* TunnelGateway:
- Refactor TunnelGateway.Pending to its own file PendingGatewayMesasge
- Move OBGW queue to CoDelPriority
- Move IBGW queue to CoDel
- Limit queue sizes
- Add stat for overflow
- Remove some stats
- Change pumper to LinkedHashSet for efficiency
(like NTCP Reader/Writer)
- Limit messages pumped per cycle to increase
round-robin fairness
- Implement pushback from a backlogged transport
queue to the pre-fragmentation queue
- Comment out some unused code
2012-09-15 zzz
* Build: Fix unpack problem on Java 5: http://forum.i2p/viewtopic.php?t=7334
2012-09-14 zzz
* SSU: Fix shutdown NPE (ticket #709)
2012-09-13 kytv
* Update geoip.txt based on Maxmind GeoLite Country database from 2012-09-05
2012-09-10 meeh
* Added fix for startup issues on newer versions of launchd (osx startup scripts)
2012-09-05 meeh
* Added startup scripts for osx
2012-09-04 zzz
* I2PTunnelServer: Clean shutdown after session exception
* OutNetMessage: Speedup after profiling (ticket #707 - thx dg, kytv, zab)
* SSU: Fix some issues with queueing outbound establishments
2012-08-31 zzz
* i2psnark: Remove * from magnet and download names
* Router: Lengthen shutdown spinner life
* Startup: Don't complain about clients.config missing on Android
* ClientManager: Cleanups
* i2psnark:
- Fix NPE on destroy() if init() failed
- Add new flood-resistant KBucket trim policy
- Limit received MsgID size
* NTCP: Reduce lock contention (ticket #697)
* RandomIterator: Workaround for Android bug (ticket #703)
* i2psnark:
- Notify threads awaiting DHT replies at shutdown
- Fix cases where we weren't using the session for b32 lookup
* Reseed: Remove forum.i2p2.de
* Streaming: Limit amount of slow-start exponential growth
* SSU:
- Limit UDPSender queue size
- Increase UDPSender max packet lifetime
- Clear UDPSender queue before sending destroys to all
- Increase PeerState queue size so large streaming windows
don't get dropped right away, especially at slow start
- Various improvements on iterating over pending outbound
messages in PeerState
* Wrapper: Update armv7 to 3.5.15
2012-08-27 kytv
* Update Java Service Wrapper to v3.5.15.
- Windows: Self-compiled with VS2010 in Windows 7. The icon has been
changed from Tanuki's default to Itoopie.
- FreeBSD: Self-compiled in FreeBSD 7.4 to eliminate the dependency on the
compat6x port.
- Linux ARMv5, Linux PPC32: Self-compiled in Debian Squeeze
- Linux x86, Linux x64, MacOSX & Solaris: Binares are from the "community
edition" deltapack offered by Tanuki. The x86 and x64 binaries for Linux
have been stripped.
2012-08-26 zzz
* DataHelper: Trim trailing whitespace when loading properties
* NetDB: Increase floodfills, decrease flood redundancy
* SendMessageOptions: Increase tag fields to 4 bits and use
table lookup for more flexibility
* Streaming: Use packet type and current window size to adjust
number of tags sent and tag threshold, to improve
efficiency and reliability
2012-08-25 kytv
* Dutch and German translation updates from Transifex
* Router console typo fixes (#701)
2012-08-25 zzz
* SDSCache: Reduce min and increase max size
* SimpleByteCache: Change from LBQ to ABQ to reduce object churn
* Other object churn cleanups (ticket #699)
2012-08-24 zzz
* I2CP:
- Add methods for sending a message with extended options
- Fix cases where the efficient sendNoEffort() wasn't being used
* i2psnark:
- Use extended I2CP options for datagrams
- Fix timeout for sent datagrams
- Add link for local torrent file on details page
- Show totals line even if only one torrent
- Reduce token timeout
- Check token age before use
- Limit incoming token size
* OCMOSJ:
- Implement per-message overrides for tag threshold,
tags to send, and bundle leaseset
- Fix bug adjusting timeouts
- Warn on client expiration time bugs
2012-08-23 zzz
* Crypto: Rename bouncycastle HMAC libs so they don't conflict
with older Android versions which bundle them
* SSU:
- Don't relay or introduce to/from privileged ports
- Various spoof detections
2012-08-22 zzz
* NetDB: Add hash collision detection
* SimpleTimer2: Synchronization improvements (ticket #653)
* SSU:
- Fail establishment immediately on SessionCreated
validation fail
- Defer outbound DH generation until required
- Validate address/port in RelayIntro messages
- Throttle hole punches
- Workaround for Android ICS bug
- More cleanups
2012-08-21 zzz
* NetDB: Decrease stat publish probability
* SSU:
- Use external, not internal port to sign SessionCreated message.
Together with previous fix to allow external port change, this
should fix session establish fails when NAT changes our port
- Track outbound establishments by both Hash and IP/port,
to improve lookups of establishments in progress
- Fix expiration of outbound establishments
- Validate address/port in RelayResponse messages
- Change RemoteHostID to store Hash instead of byte[] for the peer hash
- Log tweaks
2012-08-20 zzz
* I2CP: MessageStatus cleanup
* i2psnark: Add minimum tracker and DHT announce intervals
* I2PTunnelRunner: Remove unnecessary lock (ticket #690)
* SSU: Allow port change if firewalled
* Streaming: Increase max connection timeout
* UPnP:
- Prep for UPnP returning different external port
- Better logging of errors
2012-08-18 kytv
* Fix hang during uninstallation experienced by some users in Windows
2012-08-17 zzz
* i2psnark:
- Adjust DHT timeouts
- Add max peers per-torrent in tracker
- Remove duplicate clean task for nodes
- Fix another DHT warning message
* SSU:
- Use remote MTU when published (ticket #682)
- Queue outbound msgs during inbound establish
- IntroManager cleanups
- More synchronization
2012-08-17 sponge
* BOB: just some cleanup of old, dead meaningless commentedout code
and a little reformatting.
2012-08-16 zzz
* Utils: Drop unused BufferedRandomSource, PooledRandomSource,
EepGetScheduler, EepPost and HTTPSendData, moved to i2p.scripts
2012-08-15 zzz
* i2psnark:
- Fix bug preventing completion announcement, broken in 0.9.1
- Fix setting short retry time after initial announce failure
- Fix DHT announce and getPeers
- Fix DHT warning message
2012-08-13 zzz
* SSU EstablishmentManager:
- Remove use of outbound timers in EstablishmentManager; drive all events in Establisher thread
- Don't change nonces when retransmitting intro packets
- More synchronization in EstablishmentManager
- Increase establishment timeouts and implement timeouts for individual phases (ticket #669)
- Fix bug where InboundEstablishState.createdPacketSent() wasn't being called,
so SessionCreated packets weren't retransmitted
- Increase retransmission timeout for SessionCreated and implement backoff
- Send destroy if establishment times out in the middle
- Fix code that pulls outbound states off a deferred queue
- Improve UDPPacket.toString() for debugging
- More logging of packets dropped in EstablishmentManager
- Change establish states to enums
2012-08-12 zzz
* Jetty: Don't use direct byte buffers that may be leaking (ticket #679)
* PeerManager: Fix NPE on Android (ticket #687)
* SSU:
- Reject some packet types if they came in via fallback introKey
- Increase retransmission timeout for SessionRequest, SessionConfirm,
and RelayRequest; implement backoff
- Move UDPFlooder to test
- More volatiles, finals, cleanups, stat removals, log tweaks
2012-08-11 zzz
* DataHelper: toString(byte[]) cleanup
* i2psnark:
- Fix DHT nodes not being saved at shutdown
* RouterContext: Make the contexts list concurrent
* SSLEepGet: Don't throw UOE in TrustManager
* SSU MTU (ticket #682):
- Use local MTU detection
- i2np.udp.mtu now sets max MTU, not initial MTU
- Put local MTU in netDb
- Fix receive MTU calculations
- Track remote MTU based on actual received packet size
- Display local MTU on peers page
2012-08-10 kytv
* German and Greek translation updates from Transifex
2012-08-09 zzz
* Datagrams: Remove static logs
* i2psnark:
- Remove static SnarkManager instance
- Allow DHT-only torrents
- DHT debugging
* NTCP: Stat cleanup
* SAM:
- Don't use direct byte buffers that may be leaking (ticket #679)
- Volatiles and finals
* SSU:
- Don't send a packet that exceeds the MTU
- Stub out local MTU detection (ticket #682)
- More cleanups
2012-08-07 str4d
* Console:
- Theme updates from dr|z3d
- Changed universal theming key so it is not mistaken as a theme
name by the routerconsole
* i2psnark:
- Theme updates from dr|z3d
- If universal theming is set and routerconsole theme is classic,
use light theme explicitly
* susidns: new midnight theme from dr|z3d
2012-08-06 zzz
* Clone System properties before iterating to avoid
ConcurrentModificationException (ticket #680)
* Console: Fix flag links on /console to return to same page
* i2psnark: Add support for DHT (disabled by default)
* jbigi: Add ARMv6 libjbigi.so for Raspberry Pi
2012-08-05 zzz
* I2PSessionImpl: One more volatile (ticket #659)
* i2ptunnel, I2CP, EepGet: Buffer socket input streams (ticket #666)
* UDP:
- Limit PacketHandler threads to 1 (ticket #660)
- Limit queue sizes between UDPReceiver and PacketHandler,
and between PacketHandler and MessageReceiver, to prevent OOMs
and/or excessive queue delays
- Increase UDPPacket cache size based on max mem
- Remove more stats
2012-08-03 zzz
* build.xml: Add buildI2PTunnelJar target for Android
* i2psnark: Finish migration to I2P logging to reduce object churn (ticket #673)
* LogManager: Add logger.logBufferSize and logger.dropOnOverflow options (ticket #662)
* JobQueue: Synch fix (ticket #670)
* OutNetMessage: Fix NPE when log level = INFO (ticket #676)
* SimpleScheduler, SimpleTimer2: Replace getInstance() calls
* UDP:
- Catch some cases where UDPPackets were not returned to the cache (ticket #675)
- Fix inverted logging logic (ticket #663)
- Remove check in UDPPacket.getLifetime() (ticket #664)
- RemoteHostID cleanup, cache hashcode
- Remove udp.fetchRemoteSlow stat
- Remove some time stamping in UDPPacket
- Other cleanups - see http://zzz.i2p/topics/1198
2012-08-03 str4d
* Console: universal theming support - packaged apps will try and use the routerconsole
theme if universal theming is enabled there and the same theme exists for the app.
2012-07-31 str4d
* core, router:
- Existing JUnit test framework fixed up and running.
- Code coverage tools (Clover and Cobertura) integrated into unit test targets.
- Implemented new test-related targets to provide a ScalaTest test framework.
5660
5661
5662
5663
5664
5665
5666
5667
5668
5669
5670
5671
5672
5673
5674
5675
5676
5677
5678
5679
5680
5681
5682
5683
2012-07-30 zzz
* build.xml: Move more default properties to build.properties
* DecayingBloomFilter, DecayingHashSet, xlattice filters:
- Move from core to router
- Comment out tests
* ElGamal/AES/SessionTag:
- Increase TX expire from 10 to 12 min, while keeping RX expire at 15 min.
3 minutes should be plenty of clock skew + delay.
- Move tags-to-send and low-threshold values to be per-SKM
- New session config options crypto.tagsToSend and crypto.lowTagThreshold
- Prep for per-packet override of tags and thresholds
- Cleanups and Javadocs
* GarlicMessageBuilder:
- Put data clove last to speed acks and leaseset store on far end
* I2PTunnel: Add some defaults for the new session config options
* OCMOSJ:
- Don't bundle LeaseSet just because we're requesting an ACK
- Changed session config option shouldBundleReplyInfo to default to true
and be used to disable bundling altogether when set to false.
Was previously an undocumented option to force bundling with a certain probability.
- Don't send tags unless we've already generated a reply token (race)
- Cleanups and Javadocs
* RoutingKeyGenerator: Cleanups (ticket #672)
2012-07-28 str4d
* Console: theme fixes
2012-07-26 kytv
* Update geoip.txt based on Maxmind GeoLite Country database from 2012-07-04
* Finnish, French, German, Spanish and Swedish translation updates from TX
* BOB Fix static references to Log
2012-07-24 sponge
* BOB reset spin flag to enable restart from zap command
* Summary bar: disable fallback iframe in summary.jsi (so when JS is disabled
the summary bar will not refresh at all)
* Home page:
- Replaced 16x16 icons with 32x32 ones
- Updated icon for git.repo.i2p
2012-07-24 zzz
* LookaheadInputStream: Fix bug causing gunzip fails, esp. on Android
* Router: Don't create router.ping file on Android
2012-07-21 zzz
* i2psnark: Remove dark theme
* SSU: Remove exception creation (ticket #665)
2012-07-21 str4d
* Home page: unlinked the iframed pages for i2psnark and susimail (the pages
/webmail and /torrents still exist, but the console links to the apps
directly instead for now)
2012-07-19 str4d
* Home page: replaced itoopie with an eepsite icon (c/o dr|z3d) for eepsites
with no icon of their own.
* i2psnark:
- New light theme (c/o dr|z3d) which integrates with console light theme
- Moved table heading text into tooltips to reduce visual clutter
2012-07-18 str4d
* Home page: Added id3nt.i2p and git.repo.i2p
2012-07-18 zzz
* Home page: Add colombo-bt.i2p, remove keys.i2p
* i2psnark: Clear rate stats when restarting torrent
5736
5737
5738
5739
5740
5741
5742
5743
5744
5745
5746
5747
5748
5749
5750
5751
5752
5753
5754
5755
5756
5757
5758
5759
5760
5761
5762
5763
5764
5765
5766
5767
5768
5769
2012-07-16 str4d
* console: work towards better integration
- Wrapped the bundled apps in iFrames (with a link in the page header to
open the app in a new tab):
- i2ptunnel
- i2psnark
- susimail
- susidns
- Theme improvements
- Added theme support to susimail and susidns
- "susimail.theme=foo" in susimail.config
- "theme=foo" on susidns config page
- Extensive work on dark console theme (dr|z3d)
- Improved integration of i2ptunnel in iframe
- General improvements
- New dark themes for i2psnark, susimail and susidns which integrate well
with dark console theme (dr|z3d)
- Tweaks to other themes (console and i2psnark) to work with the various
structural changes (dr|z3d)
- Added per-theme favicons
- Updated IE shim to fix some issues
- Summary bar improvements
- Updated every console page to use Ajax for the summary bar
- Falls back to iFrame if JS disabled
- Ajax refresh time is adjustable
- The summary bar is now customizable; sections can be added, removed and
reordered as desired
- Added/updated tooltips
- Added a new summary bar section to show news headings when the main news
display is hidden
- Changes to structure of /home to bring it in line with rest of console
* i2psnark
- Reworked the torrent info/file manager page to improve the layout
2012-07-15 zzz
* XORComparator: Reduce object churn (Ticket #658)
2012-07-12 kytv
* Translations from Transifex:
- Add new Greek translation
- Dutch translation update
2012-07-01 zzz
* i2psnark:
- Don't send a keepalive to a peer we are going to disconnect
- Disconnect peer when idle a long time
- PeerCheckerTask cleanup
- Static ref cleanup
- Don't show a downloaded torrent file as "seeding"
- Better torrent file download icon
2012-06-29 zzz
* HTTP Proxy: Change the error code for unknown host from 404 to 500
* SimpleTimer: Fix logging
* Streaming:
- Allow at least 3 packets and up to half the window to be active resends
instead of just 1, to reduce stall time after a packet drop
- Increase fast retransmit threshold back to 3 to reduce retransmissions
- Don't fast retransmit if we recently retransmitted it already
- Allow double the window as long as gaps are less than the window
- Don't set the MSS in a resent packet (saves 2 bytes)
- Remove redundant calls to updateAcks()
- Update activity timer when resending a packet
- Reset unackedPacketsReceived counter at all places where acks are sent
so it isn't wrong
- Fix some places where the activeResends count could become wrong
- Prevent storm of CLOSE packets
- Never resend the whole packet in ackImmediately(), just send an ack
- Cancel flusher timer in MessageOutputStream when closed
- Move some createRateStats to ConnectionManager to reduce repeated calls
- Cleanups, javadocs, logging, volatile, finals
* Update: Increase eepget timeouts
* ElGamalAESEngine: Fix bad size estimate when tags are included,
resulting in trailing zeros after the padding
in the unencrypted data
* i2psnark: Don't create a new PeerCoordinator after restart, as the
TrackerClient holds on to the old one and that causes it
to not get peers. Possibly fixes ticket #563.
* I2PTunnel: Fix NPE on shared client creation, thx kytv
* Transport: Add Ethiopia to hidden mode list
2012-06-21 zzz
* I2CP: Make separate message ID counters per-destination, use atomic,
increase max (could have caused "local loopback" problems)
* IRC Client: Don't flush output unless out of input, so the
streaming messages don't get split up unnecessarily
* OCMOSJ, ElG, Streaming: log tweaks
* TunnelInfo: Change msg counter from long to int
* TunnelPeerSelectors: Minor refactoring to store context
* TunnelPool: Fix bug where a tunnel was marked as reused when it wasn't
* TunnelPoolManager: Use one ClientPeerSelector for all pools
2012-06-20 zzz
* I2PSession:
- Greatly simplify the VerifyUsage timers
- Constructor cleanup
2012-06-19 zzz
* i2psnark:
- Hide buttons while stopping all
* Socks: Pass remote port through
* Streaming:
- Listen only on local port if set
- Listen only for streaming protocol if configured (new option)
- Javadocs re: ports
2012-06-18 zzz
* i2psnark:
- Improve torrent shutdown handling to maximize chance of
announces getting to tracker
- Thread task to open tunnel and improve UI feedback while open is pending
- Clean up delete-torrent messages
- Remove redundant shutdown hook
- Avoid NPE in PEX message handling
- Log tweaks
2012-06-15 zzz
* I2PSocketEepGet: Use specified port
* I2PTunnel:
- Don't strip port from an I2P URL
- More client options cleanups
- Options changes now propagate to running
socket managers and sessions, and through to the router
- Better parsing of jump server URLs
* NetDB: Only publish stats every so often, to improve
anonymity while preserving the ability to monitor
the network (effective next release)
* SocketManager:
- Simplify factory, use 4-arg constructor,
make fields final, deprecate 0-arg constructor
- Improve how options are updated
- Javadocs
2012-06-13 zzz
* I2PSocketEepGet: Set port to 80
* I2PTunnel:
- Pass port through HTTP client proxy
- HTTP server proxy sets host header to
the value of "spoofedhost.xx" option for port xx
- Set client options more efficiently
* i2psnark: Possible fix for piece-after-choke
* Streaming:
- Channel cleanups and comments
- New I2PSocketAddress
2012-06-11 zzz
* i2psnark:
- Display torrent file downloads in torrent area
- Sort magnets and downloads first
- Fix sorting problem when torrent dir is a symlink
- Reduce max file idle time
- Reduce TrackerClient threads
- Reduce delay between peer adds for faster startup
- Thread the announces and reduce timeout when stopping
* NativeBigInteger: Workaround for Raspberry Pi to load the correct lib
* Router: Don't let shutdown tasks hang the shutdown (tickets #564, #566)
2012-06-08 zzz
* i2psnark:
- Move private tracker config from create box to torrent config
- Refactor private and open tracker configuration
- Add private indication on details page
* netdb.jsp: Don't show our info on summary page
2012-06-04 zzz
* i2psnark: Take tracker out of opentracker list when removed
* Translation updates:
- Add Hungarian language from Transifex (thanks AdminLMH!)
- Italian language updates from Transifex (thanks ColumboBT)
2012-06-02 zzz
* i2psnark: Improve opentracker configuration
* Job Queue: Add failsafe check
2012-06-01 zzz
* Console: Tab the netdb and profile pages
* i2psnark: Fix partially-complete torrent not announcing
* NetDB: Reduce flood redundancy from 8x to 6x
2012-05-31 zzz
* i2psnark:
- Add per-hour conn limit
- Blacklist peer after two bad handshakes
- Reduce connect timeout
- Close connection immediately if bad protocol
- Stop adding peers when we hit the limit
- Lower limit for outbound connections so we give
new peers a better chance in large swarms
2012-05-30 zzz
* Graphs: Reduce log EOF error to warn
* i2psnark:
- Increase max upload (ticket #645)
- Increase per-minute conn limit from 6 to 8
- Improve rarest-first behavior
- Handle URI encoding, UTF-8, and multiple trackers in magnet links
* Timestamper:
- Move from core to router, leave stub in core
so it doesn't break compatibility. This removes a
thread in app context and prevents any app context from
running NTP; external clients must use the time
received from the router.
- Increase query interval
* i2prouter: Add support so that 'i2prouter install' will work in ArchLinux
* jbigi/jcpuid scripts: Improve support for ArchLinux
* German, Italian, Spanish, and Swedish translation updates from Transifex
2012-05-23 zzz
* i2psnark:
- Fixes when complete except for skipped files
(ticket #447) status in UI, don't connect outbound,
disconnect seeds when done
- More classes pkg private
* jobs.jsp: Add more queue diagnostics
2012-05-22 zzz
* i2psnark:
- Refactor tracker map
- Prevent torrent shutdown when changing file priority to skip
- Fix deadlock when changing file priorities
2012-05-20 zzz
* Console: Add full file path to thread dump message
* i2psnark:
- Create sparse files at torrent creation and delay
"ballooning" until first write (ticket #641, #447)
- Redo clear messages button
- Concurrent message queue
* Profiles: reduce same-country bonus
* RoutingKeyModifier: Several changes to ensure the routing key
is correctly changed just after midnight.
2012-05-19 zzz
* i2psnark:
- Store received chunks in temp files
- Don't allocate from heap for unneeded chunks
- Remove peer count restriction for torrents with large pieces
- Use priorities and rarest calculations to sort partials
- Preserve p parameter in clear messages link
2012-05-13 zzz
* Console: Add X-Frame-Options to headers,
disable with routerconsole.disableXFrame=true
2012-04-26 kytv
* German, Spanish, and Swedish Translation updates
from Transifex