forked from I2P_Developers/i2p.i2p
SSU: Call replaceCurrentExternalAddress() from startup()
for local interfaces even when not force-firewalled, because REA2() now needs them to set the IPs regardless
This commit is contained in:
20
history.txt
20
history.txt
@@ -1,5 +1,25 @@
|
|||||||
|
2021-04-20 zzz
|
||||||
|
* SSU: Fix setting addresses from interfaces at startup
|
||||||
|
|
||||||
|
2021-04-18 zzz
|
||||||
|
* Proxy: Decode IDN hostnames in error pages
|
||||||
|
|
||||||
|
2021-04-17 zzz
|
||||||
|
* Transport: IPv6 state transition fixes
|
||||||
|
|
||||||
|
2021-04-12 zzz
|
||||||
|
* SSU: Fix peer test getting stuck
|
||||||
|
|
||||||
|
2021-04-11 zzz
|
||||||
|
* Proxy: Precompress error page CSS
|
||||||
|
* SSU: IPv6-only fixes
|
||||||
|
|
||||||
|
2021-04-09 zzz
|
||||||
|
* Router: Fixes for setting up config dir in embedded applications
|
||||||
|
|
||||||
2021-04-08 zzz
|
2021-04-08 zzz
|
||||||
* Debian: Fix link to compiler jar (Debian ticket #986474)
|
* Debian: Fix link to compiler jar (Debian ticket #986474)
|
||||||
|
* SSU: IPv6 introducer fixes
|
||||||
|
|
||||||
2021-04-05 zzz
|
2021-04-05 zzz
|
||||||
* Build: Remove launcher code
|
* Build: Remove launcher code
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ public class RouterVersion {
|
|||||||
/** deprecated */
|
/** deprecated */
|
||||||
public final static String ID = "Git";
|
public final static String ID = "Git";
|
||||||
public final static String VERSION = CoreVersion.VERSION;
|
public final static String VERSION = CoreVersion.VERSION;
|
||||||
public final static long BUILD = 12;
|
public final static long BUILD = 13;
|
||||||
|
|
||||||
/** for example "-test" */
|
/** for example "-test" */
|
||||||
public final static String EXTRA = "";
|
public final static String EXTRA = "";
|
||||||
|
|||||||
@@ -647,30 +647,30 @@ public class UDPTransport extends TransportImpl implements TimedWeightedPriority
|
|||||||
if (hasv6)
|
if (hasv6)
|
||||||
continue;
|
continue;
|
||||||
hasv6 = true;
|
hasv6 = true;
|
||||||
|
// save the external address but don't publish it
|
||||||
|
// save it where UPnP can get it and try to forward it
|
||||||
|
OrderedProperties localOpts = new OrderedProperties();
|
||||||
|
localOpts.setProperty(UDPAddress.PROP_PORT, String.valueOf(newPort));
|
||||||
|
localOpts.setProperty(UDPAddress.PROP_HOST, newIP);
|
||||||
|
RouterAddress local = new RouterAddress(STYLE, localOpts, DEFAULT_COST);
|
||||||
|
replaceCurrentExternalAddress(local, true);
|
||||||
if (isIPv6Firewalled() || _context.getBooleanProperty(PROP_IPV6_FIREWALLED)) {
|
if (isIPv6Firewalled() || _context.getBooleanProperty(PROP_IPV6_FIREWALLED)) {
|
||||||
setReachabilityStatus(Status.IPV4_UNKNOWN_IPV6_FIREWALLED, true);
|
setReachabilityStatus(Status.IPV4_UNKNOWN_IPV6_FIREWALLED, true);
|
||||||
// save the external address but don't publish it
|
|
||||||
// save it where UPnP can get it and try to forward it
|
|
||||||
OrderedProperties localOpts = new OrderedProperties();
|
|
||||||
localOpts.setProperty(UDPAddress.PROP_PORT, String.valueOf(newPort));
|
|
||||||
localOpts.setProperty(UDPAddress.PROP_HOST, newIP);
|
|
||||||
RouterAddress local = new RouterAddress(STYLE, localOpts, DEFAULT_COST);
|
|
||||||
replaceCurrentExternalAddress(local, true);
|
|
||||||
} else {
|
} else {
|
||||||
_lastInboundIPv6 = _context.clock().now();
|
_lastInboundIPv6 = _context.clock().now();
|
||||||
setReachabilityStatus(Status.IPV4_UNKNOWN_IPV6_OK, true);
|
setReachabilityStatus(Status.IPV4_UNKNOWN_IPV6_OK, true);
|
||||||
rebuildExternalAddress(newIP, newPort, false);
|
rebuildExternalAddress(newIP, newPort, false);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
// save the external address but don't publish it
|
||||||
|
// save it where UPnP can get it and try to forward it
|
||||||
|
OrderedProperties localOpts = new OrderedProperties();
|
||||||
|
localOpts.setProperty(UDPAddress.PROP_PORT, String.valueOf(newPort));
|
||||||
|
localOpts.setProperty(UDPAddress.PROP_HOST, newIP);
|
||||||
|
RouterAddress local = new RouterAddress(STYLE, localOpts, DEFAULT_COST);
|
||||||
|
replaceCurrentExternalAddress(local, false);
|
||||||
if (isIPv4Firewalled()) {
|
if (isIPv4Firewalled()) {
|
||||||
setReachabilityStatus(Status.IPV4_FIREWALLED_IPV6_UNKNOWN);
|
setReachabilityStatus(Status.IPV4_FIREWALLED_IPV6_UNKNOWN);
|
||||||
// save the external address but don't publish it
|
|
||||||
// save it where UPnP can get it and try to forward it
|
|
||||||
OrderedProperties localOpts = new OrderedProperties();
|
|
||||||
localOpts.setProperty(UDPAddress.PROP_PORT, String.valueOf(newPort));
|
|
||||||
localOpts.setProperty(UDPAddress.PROP_HOST, newIP);
|
|
||||||
RouterAddress local = new RouterAddress(STYLE, localOpts, DEFAULT_COST);
|
|
||||||
replaceCurrentExternalAddress(local, false);
|
|
||||||
} else {
|
} else {
|
||||||
setReachabilityStatus(Status.IPV4_OK_IPV6_UNKNOWN);
|
setReachabilityStatus(Status.IPV4_OK_IPV6_UNKNOWN);
|
||||||
rebuildExternalAddress(newIP, newPort, false);
|
rebuildExternalAddress(newIP, newPort, false);
|
||||||
|
|||||||
Reference in New Issue
Block a user