Newer
Older
* Fragmenter: don't re-throw the corrupt fragment IllegalStateException,
to limit the damage - root cause still not found
* i2psnark: (http://forum.i2p/viewtopic.php?t=3317)
- Change file limit to 512 (was 256)
- Change size limit to 10GB (was 5GB)
- Change request size to 16KB (was 32KB)
- Change pipeline to 5 (was 3)
* logs.jsp: Move version info to the top
* Jetty: Fix temp dir name handling on windows, which was
causing susidns not to start
(http://forum.i2p/viewtopic.php?t=3364)
* NTCP: Prevent IllegalStateException
* PeerProfile:
- Replace a hot lock with concurrent RW lock
- Rewrite ugly IP Restriction code
- Also use transport IP in restriction code
* RouterConsole: Make summary bar a refreshing iframe
* Transport: Start the previously unused CleanupUnreachable
appling final where it is important. Also fixed some equals methods
and commented places that need fixing.
2009-04-18 Complication
* Fix typo in "news.xml", no build number increase.
* 2009-04-18 0.7.2 released
2009-04-18 Complication
* Update versions, package release
2009-04-17 sponge
* fixed setIP, just be sure to distclean before building :-)
* more lint taken care of as well.
2009-04-17 sponge
* setIP wants to be a static method in the class, but it produces
warnings about it being static from other code.
2009-04-17 sponge
* Catch NPE in NTCP.
This possibly augments fix 2009-04-11 welterde below.
* Various LINT on NTCP sources, and removal of space-wasting
spaces at end of lines in sources touched.
2009-04-13 Mathiasdm
* Bugfix on tray icon updating
* Some more work on the general configuration menu
(currently not added to the tray icon menu yet, needs more work)
* Tweaked the desktopgui logo
2009-04-13 Mathiasdm
* Added I2P version and GUI version to desktopgui
* Tweaks to the tray icon menu
* Some starting work on a GUI general configuration menu
* Bugfix allowing spaces in directory structure
2009-04-11 sponge
* i2ptunnel janitorial work and fixes on most locks.
Some locks still need work, and are marked with LINT in the comment.
Just grep for "LINT" to see where the remaining places are.
2009-04-10 sponge
* More BOB threadgroup fixes, plus debug dump when things go wrong.
* Fixes to streaminglib, I2CP, which are related to the TG problem.
* JavaDocs fixups.
2009-04-08 sponge
* More hopeful fixups to the infamous orpahned tunnel problem. *Sigh*
2009-04-08 zzz
* IPV6/localhost:
- Enable IPv6 stack in the JVM, hopefully won't break anything
- Patch Jetty to support binding to IPv6 addresses
- Allow multiple bind addresses for the router console
in the clients.config file; for new installs the
default is now "127.0.0.1,::1"
- Change most instances of "localhost" to "127.0.0.1"
throughout the code
* Router:
- Move some classes to private static inner
2009-04-07 sponge
* BOB prevent jvac from optimizing out thread-group code from -10
2009-04-07 zzz
* NTCP: Prevent occasional NPE introduced in -4
* streamr: Synchronize DatagramMaker
2009-04-07 sponge
* SimpleTimer2, SimpleScheduler fixed so that the threads all run from
The main threadgroup, not in the current possible child threadgroup.
So long as any SimpleTimer2/SimpleScheduler is started *BEFORE* any
child threadgroups, the constructors are threadgroup safe. What would
be super cool is if they were to be all jailed within thier very own
threadgroup too, but, I2P isn't up to the task of this yet.
* Fixes to BOB to ensure the above is true.
2009-04-06 sponge
* Debugging to make SimpleTimer2 and SimpleScheduler easier to debug.
* Fix for the config files in the GUI from mathiasdm
2009-04-04 sponge
* Hopeful fixups to the infamous orpahned tunnel problem.
* BOB now 0.0.5
2009-04-03 zzz
* Console:
- Fix bug with IE buttons not working,
because it sends the label instead of the value
- Display version of downloaded update
* Update:
- Change default to "Download and verify"
- Change news fetch default to 24h (was 12h)
2009-04-03 sponge
* Fix broken dependencies for BOB.jar
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2009-04-02 zzz
* Profiles:
- Remove unused calculators and RateStats:
CapacityCalculator, StrictSpeedCalculator, IsFailingCalculator;
sendFailureSize, processSuccessRate, processfailureRate, commErrorRate,
tunnelTestResponseTimeSlow
- Reduced number of Rates in these RateStats:
sendSuccessSize, receiveSize, rejectRate, failRate
- ~5KB/profile savings total
- Deflate speed calculation once an hour instead of once a day,
to improve fast tier selection
- Remove dup comment in persisted files
* StatisticsManager - effective in 0.7.2:
- Spoof uptime to 90m for all
- Change tunnel stats from 10m to 60m
* Transport:
- Maintain a router hash -> IP map in transport,
to support additional IP checks (unused for now)
- Catch error on pre-2.6 kernels
- Some concurrent conversion
- Fix an HTML error on peers.jsp
2009-04-01 zzz
* I2PTunnel: Fix tunnel close
http://forum.i2p/viewtopic.php?t=3231
2009-03-30 zzz
* I2CP:
- Implement BandwidthLimitsMessage
- Have i2psnark use new message, remove
build dependency on router
* Peer Selection:
- Limit peers to a max % of all tunnels with
router.maxTunnelPercentage=nn, default 33
- Add chart to tunnels.jsp to see results
* 2009-03-29 0.7.1 released
2009-03-29 Complication
* Update versions, package release
2009-03-27 zzz
* Add readme_fr.html
* License splash update
* Catch rare TunnelGatewayMessage AIOOB, root cause unknown
2009-03-24 zzz
* I2PTunnel:
- Add some warnings about new features
- Fix encrypted leasesets broken in about -4
- Suppress log error on manual stop
- Fix NPE on close of a tunnel not open yet
* Transport:
- Increase default bw to 64/32, burst 80/40
* Tunnels: Change some fragmentation errors to warns
2009-03-16 zzz
* help.jsp: Add some
* I2PTunnel: Cleanup
* I2PTunnelHTTPClient: Fix NPE on delayed open
* I2PTunnelHTTPServer: Maybe catch an NPE
* SOCKS: Allow .onion addresses for onioncat testing
* Tunnel: Catch a rare AIOOB
2009-03-09 zzz
* Client:
- Clean up retry code
- Bring I2CP listen error to the summary bar
http://forum.i2p/viewtopic.php?t=3133
* I2PSnark: Remove the http from the add torrent box
* I2PTunnel:
- Add persistent key option for standard and IRC clients
- Add delay-open option for clients
- Get regenerate-dest-on-reconnect working
- Add default key file name
- Add link to addressbook
- I2PSink: Send protocol byte
* OCMOSJ:
- Change from 5% reply requests to at least
once per minute, in hopes of reducing IRC drops
- More clean up of the cache cleaning
* Routerconsole: Don't OOM configpeer.jsp on huge blocklists
2009-02-26 zzz
* I2CP Client: Add support for muxing
* I2PTunnel:
- Add new IRCServer tunnel type
- Add SOCKS 4/4a support
- Catch OOMs in HTTPServer
- Name the IRCClient filter threads
- Port Streamr to I2PTunnel
- The beginnings of SOCKS UDP support
* Naming: Add reverse lookup by hash
* OCMOSJ: Clean up the cache cleaning
* Router: Move addShutdownTask from Router to I2PAppContext
so that apps can register more easily
* Routerconsole:
- Thread hard shutdown and restart requests from the routerconsole,
and add a delay even if no tunnels, to allow time for a UI response
- Sort the summary bar destinations
- Move dest-to-hash converter to new helper class so we can
use it in i2ptunnel
2009-02-22 sponge
* BOB: Orphan tunnel issue fix, bump BOB version
* bump to Build 6
2009-02-16 zzz
* Streaming lib: Plug timer leak, don't send keepalives
after close, don't disconnect hard after close
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254
2255
2256
2257
2258
2259
2260
2261
2262
2263
2264
2009-02-15 zzz
* Add licenses to all packages
* I2PSession: Concurrent _messagesReceived
* i2psnark: tmp file removal try #3
* I2PTunnel:
- Don't buffer POST data in HTTPClient
- Display destination even when stopped
- Enable key generation, dest modification, and
hashcash estimation in the GUI
- Add new CONNECT client
* NetDb: Enforce 60s minimum leaseset publish interval
* Streaming lib:
- Plug connection leak
- Move ConEvent from SimpleTimer to SimpleScheduler
- Move RetransmissionTimer (ResendPacketEvent)
from SimpleTimer to new SimpleTimer2
- Move ActivityTimer and Flusher from SimpleTimer to RetransmissionTimer
- SimpleTimer2 allows specifying "fuzz" to reduce
timer queue churn further
* Susidns: Fix save of new dest broken in 0.7
* TunnelPool:
- Allow leasesets with reduced leases for robustness and startup speed
- Plug in-progress build leak
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
2009-02-07 zzz
* ClientConnectionRunner, Shitlist, TunnelDispatcher:
Update using concurrent
* Streaming ConnectionHandler: Bound SYN queue and
use concurrent to prevent blowup
* HTTP Proxy: Fix error msg for b32 addresses
* I2CP: Implement optional reduce tunnels on idle - not hooked
in to i2ptunnel GUI yet - still needs tweaks
* I2CP MessageReader: Prevent rare NPE
* I2CP Writer: Rewrite using concurrent
* i2psnark: Add torrent and connection count
* I2PTunnel & I2CP:
- Fix tunnel reduction/restore, hook in the GUI
- Hook leaseset encryption into the GUI
- Implement saves for all the new stuff
- Add cancel button
- Add b32 display for non-http servers
- Prep for CONNECT
- Fix error msg when connection goes away
* NetDb: Remove all DataPublisher stuff
* Wrapper: Remove dup timeout
2009-02-02 sponge
* Final? cleanups to Slackbuilds.
* ant target for Slackbuilds.
2009-02-01 sponge
* Slackbuild files... if we can have them for Debian, why not :-)
2294
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2009-02-01 zzz
* Convert some inner classes to static (findbugs)
* DataHelper.readLong(): Was returning -1 on EOF instead
of throwing exception
* i2psnark: Increase tunnels and pipeline to 3
* NTCP: Use a java.util.concurrent execution queue instead of
SimpleTimer for afterSend() to reduce lock contention
* Remove source from susimail.war, susidns.war, i2ptunnel.war (85KB)
* Routerconsole:
- Move common methods to new HelperBase class
- Make reseed link a button
* SimpleScheduler: New replacement for SimpleTimer when events
will not be rescheduled or cancelled, to reduce SimpleTimer
lock contention
* Tunnel Pool:
- Remove tunnel from participating if can't contact next hop
- Fail outbound build faster if can't contact first hop
* Wrapper: Remove dup timeout
2009-01-31 dream
* Debian files
2009-01-31 sponge
* One line BOB discarded interger fix
(not that it mattered at this point)
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344
2345
2346
2347
2348
2349
2350
2351
2352
2353
2354
2355
2356
2357
2358
2359
2360
2361
2362
2363
2009-01-25 zzz
* Build files:
- Don't bundle unneeded XML parser xercesImpl.jar (1MB)
- Don't include unneeded stuff in Copy, Delete, Exec.jar (300KB)
* I2CP:
Implement new I2CP message ReconfigureSessionMessage.
Will be used for tunnel reduction.
* I2PTunnel Edit Pages:
- Change default length to 2+0
- Cleanup helper code
- Prevent null spoofhost
- Stub out the following new options (C=client, S=server):
+ Access list (S)
+ Certificate type (S)
+ Encrypted LeaseSet (S)
+ New dest on idle restart (C)
+ Tunnel closure on idle (C)
+ Tunnel reduction on idle (C,S)
* I2PTunnel Socks:
- Add support for SOCKS to GUI
- Don't NPE on SOCKS 4, just close
- Don't have SOCKS build a new dest for every request
- Beginnings of SOCKS configuration by port
- HTML error msg for attempted HTTP access
* LeaseSet: Add encrypt/decrypt methods
* netdb.jsp: Don't show stats by default
* OCMOSJ: Bundle a reply when we switch tunnel or lease,
to detect failure sooner
* PublishLocalRouterInfoJob:
- Delay for 5m at startup
- Run every 20m (was 7.5m)
* RebuildRouterInfoJob: Don't run it
* Router: Add a keyring for decrypting leases
* Routerconsole: Add configkeyring.jsp
* SummaryHelper.getTransferred() move to DataHelper,
rename to formatSize(), use on tunnels.jsp
* Streaming, I2CP, Client Message sending:
Pass message timeout through new I2CP message
SendMessageExpiresMessage, so that the router
uses the same expiration as the streaming lib.
Should help reliability.
* Streaming: TCB control block sharing
* 2009-01-24 0.7 released
2009-01-24 Complication
* Update versions, package release
2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2009-01-14 zzz
* config.jsp: Fix burst seconds display
* HTTPClient: Fix per-tunnel settings for i2cp.gzip and
i2ptunnel.httpclient.send* (thx tino)
* i2psnark:
- Fix double completion message
- Add crstrack
* initialNews.xml: Add .de (thx echelon)
* Message: Always distribute an inbound msg back out
a tunnel to foil a possible latency-measuring attack
(welterde)
* Naming:
- Change base32 names to *.b32.i2p
- Add i2p.naming.hostsTxt.useB32 config
* profiles.jsp: Remove 1m column
* SAM: Don't build tests by default
* Streaming:
- Prevent a rare NPE
- Reduce initial RTT to 8s (was 10s)
* tunnels.jsp: Add netdb links
2392
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404
2405
2406
2407
2408
2409
2410
2411
2412
2413
2414
2415
2416
2417
2418
2419
2420
2421
2422
2009-01-08 zzz
* addressbook: Prevent Base32 hostnames
* build.xml: Remove readme_xx.html from updater
* configtunnels.jsp: Fix display of outbound backup count
* configupdate.jsp: Fix corruption of update URLs
* i2psnark: Recognize Robert 0.3 and 4
* ExploreJob/SearchJob - fix brokenness:
- Give each search a minimum of time even at the end
- Fix ExploreJob exclude peer list
- Always add floodfills to exclude peer list
- Don't queue keys for exploration or run ExploreJob
if floodfill
- Allow floodfills to return non-floodfills in
a DSRM msg so exploration works
* ExploreJob/SearchJob - more fixes:
- Disable ExploreKeySelectorJob completely, just have
StartExplorersJob select a random key if queue is empty
- Add netDb.alwaysQuery=[B64Hash] for debugging
- Queue results of exploration for more exploration
- Floodfills periodically shuffle their KBuckets, and
FloodfillPeerSelector sorts more keys, so that
exploration works well
* Shitlist: Reduce max time to 30m (was 60m)
* Streaming:
- Reduce default initial window size from 12 to 6,
to account for the MTU increase in the last release
and try to limit initial packet loss
- Reduce fast retransmit threshold from 3 to 2
* Transport: Don't shitlist a peer if we are at our
connection limit
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2009-01-03 zzz
* config.jsp: Move the buttons up
* configservice.jsp: Clean up and fix the broken (?)
browser launch configuration
* i2psnark:
- Try again to remove the i2psnarkurl files on shutdown
- Sort torrents with a locale-based sort
* NetDb:
- Expire routers with introducers after 90m.
This should improve reachability to firewalled routers
by keeping introducer info current.
- Expire routers with no addresses after 90m.
- Convert to java concurrent
* Stats: Add router.memoryUsed, graph by default
* Summary bar: Remove spurious UDP warning on startup
* UpdateHandler: Make extensible for upcoming
torrent updater
2008-12-15 zzz
* Remove apps/ bogobot jdom pants q rome stasher syndie
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
2461
2462
2463
2464
2465
2466
2467
2468
2469
2470
2471
2008-12-14 zzz
* Contexts: Add int getProperty(String prop, int default)
* I2PAppThread: Constructor fix
* More split classes into their own files for mkvore
* Streaming: Don't build test cases by default
* Summary bar: Replace links with buttons
* Transport:
- Cleanup max connections code
- Add i2np.udp.maxConnections
- Set max connections based on share bandwidth
- Add haveCapacity() that can be used for connection
throttling in the router
- Reject IBGW/OBEP requests when near connection limit
- Reduce idle timeout when near connection limit
* Tunnel request handler:
- Require tunnel.dropLoad* stats
- Speed up request loop
* I2CP, HostsTxtNamingService, I2PTunnel:
Implement Base32 Hash hostnames, via the naming service.
Names are of the form [52-characters].i2p, where
the 52 characters are the Base32 representation of our
256-byte hash. The client requests a lookup of the hash
via a brief I2CP session using new I2CP request/reply
messages. The router looks up the leaseset for the hash
to convert the hash to a dest. Convert the I2PTunnel
'preview' links to use Base32 hostnames as a
demonstration.
2472
2473
2474
2475
2476
2477
2478
2479
2480
2481
2482
2483
2484
2485
2486
2487
2488
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2008-12-08 zzz
* ATalk: Move from core to apps
* Blocklists: enable by default, include blocklist file
in new installs
* Build: Add findbugs target
* Cleanup of removed netdb stats
* Console:
- Don't display restart button if no wrapper
- Remove PRNG stats
* Eepsite: Disable jetty webapps by default for new installs
* i2psnark:
- Add default i2psnark.config for new installs
- Remove wishlist link
- Recognize robert and i2psnarkxl clients
- Increase max files to 256
* Increase standalone heap size to 128MB
* NetDb: Split classes into their own files for mkvore
* PeerManager: Fix NPE on early shutdown
* SusiDNS: Add textareas
* Transport:
- Fixes, avoid NPEs, and cleanups when NTCP and/or UDP transports disabled
- More TCP removal cleanup
- Clean up bandwidth limiting, centralize defaults
- Force burst to be >= limit
- Increase default bw to 48/24, burst 64/32
* Tunnels: Avoid two NPEs on corrupt fragments
2499
2500
2501
2502
2503
2504
2505
2506
2507
2508
2509
2510
2511
2512
2513
2514
2515
2516
2517
2518
2519
2520
2521
2522
2523
2524
2525
2526
2527
2528
2529
2530
2531
2532
2533
2008-12-01 zzz
* i2psnark:
- Refactor to allow running a single Snark without a SnarkManager again,
by moving some things from SnarkManager to I2PSnarkUtil,
having Snark call completeListener callbacks,
and having Storage call storageListener callbacks.
This is in preparation for using Snark for router updates.
Step 2 is to allow multiple I2PSnarkUtil instances.
- Big rewrite of Storage to open file descriptors on demand, and
close them when unused, so we can support large numbers of torrents.
* i2psnark:
- Remove static instances of I2PSnarkUtil, ConnectionAcceptor,
and PeerCoordinatorSet
- Convert static classes in Snark to listeners
- Fix Snark to work in single torrent mode again
- Should now work with multiple single Snarks
* i2psnark:
- Use new I2PAppThread that does not call global listeners on OOM,
so that OOMing apps will not shutdown the whole router.
* i2psnark:
- Don't create SnarkManager instance until first call,
so it doesn't create the i2psnark dir, read the config,
etc., for single Snark instances.
- Don't read i2psnark.config twice; fix setting
i2psnark.dir
- More Snark constructor changes for calling from router
- Make max connections per torrent configurable
* SAM:
- Use new I2PAppThread that does not call global listeners on OOM,
so that OOMing SAM will not shutdown the whole router.
* 2008-12-01 0.6.5 released
2008-12-01 Complication
* Update versions, package release, fix typo in comment
2008-11-21 zzz
* Cache DNS and negative DNS for 5m (was 1m and forever)
* Delay shitlist cleaner at startup
* Strip wrapper properties from client config
* Define multiple cert type
* Prohibit negative maxSends in streaming
* HTML fixup on configtunnels.jsp
* Increase wrapper exit timeout from default 15s to 30s
2008-11-20 zzz
* I2PTunnel: Handle missing fields in edit pages better
* Move DummyNetworkDatabaseFacade to his own file
to help the build dependencies
* Drop old tcp transport and old tunnel build sources
* EepGet:
- Better handling of 504 gateway timeout
(keep going up to limit of retry count rather
than just one more partial fetch)
- Add -t cmd line option for timeout
- Better handling of 403, 409, 503 errors
- Don't keep going after unknown return code
- Don't delay before exiting after a failure
2008-11-15 zzz
* Build files:
- Don't die if depend not available
- Only verify Jetty hash once
- Add streaming lib tests to depend task
* I2CP Compression:
- Add i2cp.gzip option (default true)
- Add compression stats
- Don't bother compressing if really small
2008-11-13 zzz
* Streaming:
- Add more info to Connection.toString() for debugging
- Fix lifetimeMessages{Sent,Received} stats
- Reduce RTT damping to 0.875 (was 0.9)
- Add a stream.con.initialRTT.{in,out} stats
* Build files:
- Use the depend task with caching for more accurate dependencies
- Make sure the routerconsole gets the latest router version
- Fix addressbook repeated builds
* HTTPClient: Add config options to pass Via, Referer,
and User-Agent through
* Blocklists: Fix lists with hashes only
2008-11-11 zzz
* Streaming - Fix several bugs and improve performance
when the initial data is larger than one MTU,
e.g. HTTP GETs with large URLs, CGI params or cookies,
or large HTTP POSTS:
- Don't reject additional packets received without a
send stream ID (i.e. sent before the SYN ACK was received)
- Put unknown non-SYN packets on the SYN queue also
so they won't be rejected
- Reduce flusher delay to 250ms (was 500)
- Flush unless window is full (was window is non-empty)
* Streaming: Enforce a minimum MTU of 512
* I2PTunnel: Change "interactive" max window size to 16 (was 1)
* NetDb: Fix a deadlock caused by last checkin
2604
2605
2606
2607
2608
2609
2610
2611
2612
2613
2614
2615
2616
2617
2618
2619
2620
2621
2622
2623
2624
2625
2626
2627
2628
2629
2630
2631
2632
2008-11-09 zzz
* build.xml: Build speedups:
- Don't distclean in the updaterRouter target
- Don't make prepUpdate and prepupdateSmall depend
on distclean
- Don't make susimail build always clean
- Make pkg depend on distclean to be sure
- Clean out more routerconsole and susidns files in 'ant clean'
- i2ptunnel, routerconsole, susidns:
Only build WEB-INF when necessary
- systray: Only build jar when necessary
- Don't build i2psnark standalone for the updater target
* configclients.jsp: Provide a link when starting a webapp
* configtunnels.jsp:
- Code cleanup
- Add 4-hop option
- Remove +/- 0-2 option
* javadoc: Add some more package.html files
* I2PTunnelHTTPServer: Put the requestor's dest hash
in the request headers
* Jetty: Add a I2PRequestLog class to log request dest hash
* NetDb: Don't drop routerInfos if we have connectivity
issues or other problems
* NTCP: Lower idle timeout to 10m (was 15m)
* Routerconsole: Replace wtf msg w/ something nicer
* Tunnel BuildHandler: add config router.participantOnly,
set to true to refuse OBEP and IBGW roles, should
reduce connections significantly if set.
2008-11-02 zzz
* Certificates:
- Add a signed Certificate type
- Add a main() to PrivateKeyFile to generate
Destinations with various Certificate types
- Add a VerifiedDestination class to check Certificates
of various types
- Add a HashCash library from http://www.nettgryppa.com/code/
(no distribution restrictions)
- Allow non-null Certificates in addressbook
* I2PTunnel: Move some wayward stats to the I2PTunnel group
* NamingServices: Implement caching in the abstract class
* NewsFetcher: Fix last updated time
* Streaming: Increase MTU to 1730 (was 960);
see ConnectionOptions.java for analysis
* Throttle: Reduce default max tunnels to 2000 (was 2500)
* clients.config: Disable SAM and BOB by default for new installs
2008-10-26 zzz
2652
2653
2654
2655
2656
2657
2658
2659
2660
2661
2662
2663
2664
2665
2666
2667
2668
2669
2670
2671
2672
2673
2674
2675
2676
2677
2678
2679
2680
2681
2682
2683
2684
2685
2686
2687
2688
* config.jsp: Add more help
* peers.jsp: Clean up 'Listening on' formatting
* profiles.jsp: Don't override locale number format
* netdb.jsp: Indicate if hidden
* summary.jsp: Indicate if hidden
* i2ptunnel/edit.jsp: Disable word wrap in textarea
* Blocklist: Change logging from ERROR to WARN
* FloodfillMonitor:
- Fix ff count (we forgot ourselves)
- Don't become ff if hidden
* HandleFloodfillDatabaseLookupMessageJob:
Send back your routerinfo with the DSRM if not ff to
spread the word that you aren't ff anymore
* I2Ping:
- Add -n count option
- Add rtt output
- Enhance help
- Fix option handling
* More findbugs cleanups
* NetDb:
- Fix behavior when router.isHidden=true
- Delay StartExplorersJob for 10m at startup
- Update dbLookup profile stats in FloodOnlySearchJob
and FloodfillVerifyStoreJob
- Fix response time store in profile in SearchJob
* Stats:
- Remove unused tunnel.buildSuccess and tunnel.buildFailure
- Remove tunnel.buildRequestTime and 5m rate stats from
netDb, effective in next release
* UDP:
- Don't do peer tests when hidden
- Don't offer to introduce when hidden
- Don't continually rebuild routerInfo when hidden
- Don't continually rebuild routerInfo when
i2np.udp.internalPort is set but i2np.udp.port is not
- Remove some unused functions
2008-10-20 zzz
* configclients.jsp: Handle clients with no args
* index.jsp: Add readme_nl.html (thanks mathiasdm!),
readme_sv.html (thanks hottuna!)
* Big findbugs cleanup
* Client: Prevent a race causing session reconnect
* FloodfillMonitor:
- Don't become ff if clock skew is high
- Rebuild routerinfo immediately when ff status changes
* FloodOnlySearchJob: Recover better if the floodfills
you know are no longer floodfill or are gone
* Installer: Bump min JRE to 1.5
* ShellCommand: Fix main()
2008-10-14 zzz
* index.jsp: Add multilanguage support for readme.html;
add readme_de.html (thanks devzero!)
* configupdate.jsp, configadvanced.jsp:
Disable word wrap in textareas
* install*.txt: Update for 1.5
* summary.jsp: Remove failing peer count
2008-10-10 zzz
* Profiles: Reduce reject penalty in
capacity calculation to avoid a congestion collapse
* Throttle: Change reject to BANDWIDTH from CRIT on shutdown
for improved anonymity
* Tunnels: Implement random discard to enforce share limit
* Tunnel Tests: Add time for outbound delay, to avoid
congestion collapse
* UDPPacketReader: Adjust logging
* build files: Change to source=1.5, target=1.5
* configpeer.jsp: Table cleanup
* i2psnark: Change default tunnel length from 1+1 to 2+0
* peers.jsp: Change <,> to in,out for UDP
2008-10-09 sponge
* Update version to -3
* BOB database threadlocking fixes
2008-10-08 sponge
* Update version to -2
* Bugfixes and additions to BOB
2008-10-07 sponge
* Bugfixes and additions to streaming.
* Added SimpleStore class in utils.
* Fixed SimpleTimer class to allow exit.
* BOB (Basic Open Bridge) added.
* 2008-10-05 0.6.4 released
2008-10-05 Complication
* Update versions, package release
2008-09-29 zzz
* i2psnark: Add codevoid link, remove mastertracker
2008-09-23 zzz
* config.jsp: Add some reachability help
* configpeer.jsp: Add blocklist info
* help.jsp: Add link to German FAQ
* tunnels.jsp: Fix inactive participating count
* SearchReplyJob: Don't look up references to shitlisted peers
* TunnelPeerSelector: Avoid a peer for 20s after a reject or timeout
2008-09-20 zzz
* NetDb: Fix the totally broken "check new routers against blocklist"
code from 3 checkins ago
* tunnels.jsp: Sort participating tunnels by usage, display rate
2008-09-19 zzz
* Tunnels:
- Add missing message accounting for inbound gateways,
we were underestimating participating traffic because of it,
and the tunnels were classified "inactive"
- Add participating tunnel role on tunnels.jsp
2008-09-18 zzz
* Throttle:
- Correctly check inbound and outbound total bw limits separately
- Fix up and actually use the tunnel.participatingMessageCount stat,
favor it if lower than the total bw stat, so that
client traffic isn't included for throttle decisions
- Reduce min message count from 60 to 40
* Tunnel Dispatcher:
- Add tunnel.participatingBandwidth stat
- Remove all 3h and 24h stats
2008-09-15 zzz
* FloodOnlySearchJob:
- Ask non-floodfill peers if we don't know any floodfills
- Lookup hashes in the DatabaseSearchReplyMessage if we
don't know enough floodfills
* NetDb: Check new routers against blocklist
* Router: Shutdown clients first
* Throttle:
- Use 60s rather than 10m tunnel.participatingMessageCount stat
- Fix a summary bar message
* Tunnel Dispatcher: Update tunnel.participatingMessageCount
every 20s, rather than at tunnel expiration, to maintain
a more current stat
* Tunnel Pool:
- Prevent excess zero-hop tunnels
- Always wait before looping in BuildExecutor
* configlogging.jsp: Increase box width
* logs.jsp: Remove unused connection log, cut wrapper log output in half
2008-09-12 zzz
* Blocklist: Fix a log message format
* HarvesterJob: Don't instantiate if disabled
* i2psnark:
- Add config i2psnark.linkPrefix to enable access to completed
torrents from a different machine - examples:
i2psnark.linkPrefix=file://///localserver/path/to/files/
i2psnark.linkPrefix=http://localwebserver/path/
(Stop i2psnark, add to i2psnark.config, restart)
- Remove Galen and NickyB trackers
* NetDb: Add netDb.exploreKeySet stat
* netdb.jsp: Add parameter ?r=xxxxxx to view a single routerinfo,
and ?r=. to view our own; change links on other pages too
* Transport: Make 0.0.0.0/8 and 169.254.0.0/16 private
2008-09-06 zzz
* EepGet command line: Fix byte counts after a failed resume
* NTCP: Mark unreachable on outbound connection timeout
* Shitlist: Fix partial shitlisting (still unused though)
* Summary Bar: Warn if firewalled and floodfill
* Throttle: Combine current and last bw measurement,
reduce default max tunnels to 2500 (was 3000)
* Tunnel BuildHandler: Logging cleanup
* UpdateHandler: Cleanup, clarify failure message
* DataHelper: Prepare for 999 day uptime :)
2008-08-29 zzz
* Tunnel BuildExecutor: Debug cleanup
* Profiles: Penalize capacity when tunnel build request times out
* Shutdown: Call the shutdown hooks before the router shutdown
rather than after
* Stats: Remove tunnel.Bps.* stats when the tunnel pool is closed
2008-08-27 zzz
* Floodfill Peer Selector: Prefer already-connected floodfill
peer for direct RouterInfo stores, to mimimize floodfill
connections
* Peer Profiles: Classify connected peers as "active",
which will help improve the fast pool
* Transport Manager: Add isEstablished(Hash)
* NTCP: Reduce max idle time from 20m to 15m
* NetDb stats: Post-0.6.3 clean up
* 2008-08-24 0.6.3 released
2008-08-24 Complication
* Update versions, package release
2008-08-20 zzz
* Blocklists: Handle blank lines and \r\n in blocklist.txt
* NTCP: Add connection limit, set by i2np.ntcp.maxConnections,
default is 500 (very high for now)
* Persistent data store: Increase write limit from 300 to 600
so floodfill routers don't get backed up
2008-08-13 zzz
* i2psnark: Fix OOM vulnerability by checking incoming message length
(thanks devzero!)
2008-08-04 zzz
* Floodfill Peer Selector:
- Avoid peers whose netdb is old, or have a recent failed store,
or are forever-shitlisted
2008-07-30 zzz
* Blocklists:
- New, disabled by default, except for blocking of
forever-shitlisted peers. See source for instructions
and file format.
* Transport - Reject peers from inbound connections:
- Check IP against blocklist
- Check router hash against forever-shitlist, then block IP
2008-07-16 zzz
* configpeer.jsp: New
* i2psnark: Open completed files read-only the first time
* profiles.jsp: Show bonuses, link to configpeer.jsp
* PRNG: Move logging from wrapper to router log
* SSU:
Don't proactively reconnect until 30m idle, so
we don't lose introducer tags prematurely
2008-07-16 Oldaris
* Imports cleanup
2008-07-07 zzz
* i2psnark:
- Repair corrupted files with wrong length rather than die
- Register shutdown hook to properly shutdown torrents when
the router shuts down, hopefully will reduce corruption
- Add Galen tracker
2889
2890
2891
2892
2893
2894
2895
2896
2897
2898
2899
2900
2901
2902
2903
2904
2905
2906
2907
2908
2909
* HTTP Proxy: Don't show jump links for unknown jump hosts
* KeyManager:
- Don't write router key backup when leaseSet keys are updated
- Synchronize to prevent concurrent writes (thanks Galen!)
- Backup keys every 7 days instead of every 5 minutes
* LoadTestManager: Don't instantiate, it's disabled
* Router console: Flag placeholder pages as noncacheable
* Streaming lib:
- Change some logging from WARN to INFO
- Clean up toString()
* SSU:
- Try to pick better introducers by checking shitlist,
wasUnreachable list, failing list, and idle times
- To keep introducer connections up and valid,
periodically send a "ping" (a data packet with no data and no acks)
to everybody that has been an introducer in the last two hours
- Add a stat udp.receiveRelayRequestBadTag, make udp.receiveRelayRequest only for good ones
- Remove some 60s and 5m stats, leave only the 10m ones
- Narrow the range for the retransmit time after an allocation fail
- Adjust some logging
2008-06-30 zzz
* configstats.jsp: Fix NPE when no stats checked (thanks nothome27!)
* i2psnark:
- Fix NPE caused by race (thanks echelon!)
- Add mastertracker, remove de-ebook
* NTCP:
- Try to fix 100% CPU, caused perhaps by JVM NIO bug...
- Fix failsafe stats
* PersistentDataStore: More leaseSet code cleanup
* SimpleTimer: Change congestion message from error to warn
2008-06-24 zzz
* FloodfillMonitorJob: Change range from 5-7 to 4-6
* NTCP: Remove getIsInbound(), duplicate of isInbound()
* PersistentDataStore: Don't try to remove nonexistent leaseSet files
* Router console: add placeholder pages for i2psnark, i2ptunnel,
susidns, and susimail for use when the .wars are not running
* Streaming lib: Increase max window size to 128
2008-06-22 welterde
* Optimize I2PDatagramDissector
2008-06-20 zzz
* configclients.jsp: Add start button for clients and webapps.
* PRNG: Add two stats
* Summary bar:
- Display Warning for TCP private IP address
- Display PRNG stats
* OutNetMessage: Change cache logging from WARN to INFO
2008-06-17 zzz
* Comm System: Add new STATUS_HOSED for use when UDP bind fails
* Summary bar: Display helpful errror message when UDP bind fails
* UDP: Don't bid when UDP bind fails
* configclients.jsp: Implement saves for clients and webapps.
2008-06-16 zzz
* UDP: Prevent 100% CPU when UDP bind fails;
change bind fail message from ERROR to CRIT
* Refactor LoadClientAppsJob.java, move some functions to new
ClientAppConfig.java, to make them easily available to
new configclients.jsp
* RouterConsoleRunner: Use a new config file, webapps.config,
to control which .wars in webapps/ get run. Apps are enabled
by default; disable by (e.g.) webapps.syndie.startOnLoad=false
Config file is written if it does not exist.
Implement methods for use by new configclients.jsp.
* configclients.jsp: New. For both clients and webapps.
Saves are not yet implemented.
2008-06-10 zzz
* Floodfill: Add new FloodfillMonitorJob, which tracks active
floodfills, and automatically enables/disables floodfill on
Class O routers to maintain 5-7 total active floodfills
* NetDb Stats:
- Remove several more stats
- Don't publish bw stats in first hour of uptime
- Publish floodfill stats even if other stats are disabled
- Changes not effective until 0.6.2.1 to provide cover.
* Throttle: Use BANDWIDTH rather than CRIT as the rejection reason at
startup, so peers don't list us as failing.
* graphs.jsp: Fix a bug where it tries to display the combined
bandwidth graph when it isn't available
2008-06-09 zzz
* Propagate i2.i2p.i2p-0.6.2.1-pre branch to i2p.i2p
2008-06-09 zzz
* Reachability: Restrict peers with no SSU address at all from inbound tunnels
* News:
- Add display of last updated and last checked time
on index.jsp and configupdate.jsp
- Add a function to get update version (unused for now)
* config.jsp: Add another warning
2008-06-07 zzz
* NetDb: Tweak some logging on lease problems
* Shitlist:
- Add shitlistForever() and isShitlistedForever(), unused for now
- Sort the HTML output by router hash
* netdb.jsp:
- Sort the lease HTML output by dest hash, local first
- Sort the router HTML output by router hash
2008-06-06 zzz
* LeaseSet:
- Sort the leases by expiration date in TunnelPool.locked_buildNewLeaseSet()
to make later LeaseSet comparisons reliable. This cleans up the code too.
- Fix broken old vs. new LeaseSet comparison
in ClientConnectionRunner.requestLeaseSet(),
so that we only sign and publish a new LeaseSet when it's really new.