Author: toad
Date: 2007-11-29 19:49:37 +0000 (Thu, 29 Nov 2007)
New Revision: 16102
Modified:
trunk/freenet/src/freenet/node/Version.java
Log:
1076: (mandatory Tuesday)
Big Bugs:
- Fix FCP deadlock.
- Fix UOM deadlock.
- Fix inserts hanging in waiting-for-completion after receive failure. Also
avoid hang when CompletionWaiter.run() throws.
Request limiting:
- Make local requests go through shouldRejectRequest() i.e. the exact same
limiting logic that remote requests go through. Should improve security and
load management, might reduce performance a bit in the short term.
- Refactor RequestStarter a bit.
Bookmarks:
- Store in separate file.
- Synchronization fixes.
- Description separate from name.
- Lots of refactoring.
- Separate default bookmarks out from user bookmarks.
- Fix activelinks-have-two-slashes bug.
- Add Bombe's flog to defaults.
Port forward detection:
- AddressTracker: track the addresses we have contacted, the last time at which
we are sure there were no packets received or sent other than those recorded,
whether we were the initiator, the last 5 long send...recieve gaps etc.
- Connectivity Toadlet (only in advanced mode). For now this is just a dump of
the AddressTracker.
- Detect port forwarding based on long send ... receive gaps.
- Save the AddressTracker data to disk on a clean shutdown. This allows us to
detect port forwards much more quickly, because a long gap may include time
before the restart, or just the time the node was down.
- Ignore it if we're not sure there was an unclean shutdown (bootID file, 16
characters long, always overwritten using RAF, if we can't write it presumably
las time couldn't either).
- Explicitly shut down the sockets on shutdown.
- Record last 64 packets sent/received (times, weak hashes). Send the send
records on connect, use this to recognise if we are NATed and therefore lost
packets until we sent some.
Opennet:
- Make max opennet peers configurable.
Link crypto:
- Rekey once an hour or once every 1GB.
- If not successful within 5 minutes, forceDisconnect(). An attacker might have
deleted the JFK reneg packets to try to get us to keep the old key.
Plugins:
- delete cached copy of plugin if loading fails
- more work on FCP plugins, can now reply with data, simpler/better API,
plugins can talk to each other within the VM
- catch all errors when loading a plugin
- improvements to class loader code (/ is optional)
Probe requests:
- Remove for now. When re-add will be threaded like normal requests, and there
will be several different types of probe requests.
Refactoring:
- HTTPRequest.getPartAsBytes() and impl getPartAsString() using it
- FileUtil.renameTo.
- Use Closer to tidy up code and maybe fix fd leaks.
- SimpleFieldSet.writeTo(OutputStream).
- Clearer code (longToBytes, bytesToLongs etc) in Fields.
Debugging etc:
- Logging
- Better error reporting in SimpleFieldSet.
- Better error reporting when catch a throwable when trying to set port. It's
not always because the port can't be bound!
- Trivial HTML fixes
- Indenting
Resources:
- Fix some possible fd leaks.
L10n
- batosai: French updates.
- _ph00: Italian updates.
- Michael Tanzer: German updates.
- Fix some UTF-8 related bugs.
Unit tests:
- SimpleFieldSet: testToplevelKeyIterator()
Web interface
- Startup toadlet: Refresh every 5 seconds using meta
- Show the log when shutting down.
FCP:
- Fix NPE/send MISSING_FIELD if no NodeIdentifier on Peer and PeerNote messages.
- Exit immediately when a connection is closed and there are no more messages,
not within 10 seconds.
Config:
- trim() lines in config file
Temp buckets:
- Canonicalise rather than absolutise the temp directory. Cleaner, might
prevent some tempfile leaking bugs.
zothar
nextgens
saces
batosai
_ph00
Michael Tanzer
toad
Installer: (nextgens, jflesch)
- Fix to Thaw startup script on Windows
- Bundle JVM 1.6u3 not 1.6u1 with Windows installer
- Fix Windows icons/shortcuts
- Fix jSite on Windows
- Working uninstaller on Windows
- Fix offline installer
- Fix auto-update not being enabled (hopefully this only happened for a short
period?)
Echo: (saces)
- Maybe fix L10n?
0.5: (jolantern, nextgens)
- Fix imports on DiffieHellman
- Some build fixes
Modified: trunk/freenet/src/freenet/node/Version.java
===================================================================
--- trunk/freenet/src/freenet/node/Version.java 2007-11-29 19:44:47 UTC (rev
16101)
+++ trunk/freenet/src/freenet/node/Version.java 2007-11-29 19:49:37 UTC (rev
16102)
@@ -24,17 +24,17 @@
public static final String protocolVersion = "1.0";
/** The build number of the current revision */
- private static final int buildNumber = 1075;
+ private static final int buildNumber = 1076;
/** Oldest build of Fred we will talk to */
- private static final int oldLastGoodBuild = 1070;
- private static final int newLastGoodBuild = 1074;
+ private static final int oldLastGoodBuild = 1074;
+ private static final int newLastGoodBuild = 1076;
static final long transitionTime;
static {
final Calendar _cal =
Calendar.getInstance(TimeZone.getTimeZone("GMT"));
// year, month - 1 (or constant), day, hour, minute, second
- _cal.set( 2007, Calendar.NOVEMBER, 21, 0, 0, 0 );
+ _cal.set( 2007, Calendar.DECEMBER, 4, 0, 0, 0 );
transitionTime = _cal.getTimeInMillis();
}