diff --git a/Slackware/i2p/i2p.SlackBuild b/Slackware/i2p/i2p.SlackBuild index 421033356..3bb2c9503 100755 --- a/Slackware/i2p/i2p.SlackBuild +++ b/Slackware/i2p/i2p.SlackBuild @@ -65,7 +65,7 @@ cd $CWD/../../ ant distclean ant dist - +ant tarball tar xjvf i2p.tar.bz2 -C $TMP diff --git a/apps/BOB/nbproject/private/private.xml b/apps/BOB/nbproject/private/private.xml index 2482568bf..237b674f1 100644 --- a/apps/BOB/nbproject/private/private.xml +++ b/apps/BOB/nbproject/private/private.xml @@ -2,6 +2,6 @@ - file:/root/NetBeansProjects/i2p.i2p/apps/BOB/src/net/i2p/BOB/MUXlisten.java + file:/root/NetBeansProjects/i2p.i2p/apps/BOB/src/net/i2p/BOB/I2PtoTCP.java diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelHTTPServer.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelHTTPServer.java index d43639cb7..2f53f22d0 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelHTTPServer.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelHTTPServer.java @@ -19,6 +19,7 @@ import net.i2p.data.DataHelper; import net.i2p.util.EventDispatcher; import net.i2p.util.I2PThread; import net.i2p.util.Log; +import net.i2p.data.Base32; /** * Simple extension to the I2PTunnelServer that filters the HTTP @@ -33,6 +34,8 @@ public class I2PTunnelHTTPServer extends I2PTunnelServer { /** what Host: should we seem to be to the webserver? */ private String _spoofHost; private static final String HASH_HEADER = "X-I2P-DestHash"; + private static final String DEST64_HEADER = "X-I2P-DestB64"; + private static final String DEST32_HEADER = "X-I2P-DestB32"; public I2PTunnelHTTPServer(InetAddress host, int port, String privData, String spoofHost, Logging l, EventDispatcher notifyThis, I2PTunnel tunnel) { super(host, port, privData, l, notifyThis, tunnel); @@ -74,6 +77,9 @@ public class I2PTunnelHTTPServer extends I2PTunnelServer { StringBuffer command = new StringBuffer(128); Properties headers = readHeaders(in, command); headers.setProperty(HASH_HEADER, socket.getPeerDestination().calculateHash().toBase64()); + headers.setProperty(DEST32_HEADER, Base32.encode(socket.getPeerDestination().calculateHash().getData()) + ".b32.i2p" ); + headers.setProperty(DEST64_HEADER, socket.getPeerDestination().toBase64()); + if ( (_spoofHost != null) && (_spoofHost.trim().length() > 0) ) headers.setProperty("Host", _spoofHost); headers.setProperty("Connection", "close"); @@ -361,6 +367,10 @@ public class I2PTunnelHTTPServer extends I2PTunnelServer { name = "X-Accept-encoding"; else if (HASH_HEADER.equalsIgnoreCase(name)) continue; // Prevent spoofing + else if (DEST64_HEADER.equalsIgnoreCase(name)) + continue; // Prevent spoofing + else if (DEST32_HEADER.equalsIgnoreCase(name)) + continue; // Prevent spoofing headers.setProperty(name, value); if (_log.shouldLog(Log.DEBUG)) _log.debug("Read the header [" + name + "] = [" + value + "]"); diff --git a/history.txt b/history.txt index d02bf97dc..55dbecafa 100644 --- a/history.txt +++ b/history.txt @@ -1,3 +1,6 @@ +2009-07-05 sponge + * Added X-I2P-DestB64 and X-I2P-DestB32 http headers + 2009-06-29 zzz * Big directory rework: Eliminate all uses of the current working directory, and diff --git a/router/java/src/net/i2p/router/RouterVersion.java b/router/java/src/net/i2p/router/RouterVersion.java index bd644cee5..ef84e9e97 100644 --- a/router/java/src/net/i2p/router/RouterVersion.java +++ b/router/java/src/net/i2p/router/RouterVersion.java @@ -18,7 +18,7 @@ public class RouterVersion { /** deprecated */ public final static String ID = "Monotone"; public final static String VERSION = CoreVersion.VERSION; - public final static long BUILD = 2; + public final static long BUILD = 3; /** for example "-test" */ public final static String EXTRA = ""; public final static String FULL_VERSION = VERSION + "-" + BUILD + EXTRA;