Browse Source

Include the external port when responding ArbitraryDataFileListRequests

pull/75/head
CalDescent 3 years ago
parent
commit
f0136a5018
  1. 2
      src/main/java/org/qortal/controller/arbitrary/ArbitraryDataFileListManager.java
  2. 13
      src/main/java/org/qortal/network/Network.java

2
src/main/java/org/qortal/controller/arbitrary/ArbitraryDataFileListManager.java

@ -627,7 +627,7 @@ public class ArbitraryDataFileListManager {
arbitraryDataFileListRequests.put(message.getId(), newEntry);
}
String ourAddress = Network.getInstance().getOurExternalIpAddress();
String ourAddress = Network.getInstance().getOurExternalIpAddressAndPort();
ArbitraryDataFileListMessage arbitraryDataFileListMessage = new ArbitraryDataFileListMessage(signature,
hashes, NTP.getTime(), 0, ourAddress, true);
arbitraryDataFileListMessage.setId(message.getId());

13
src/main/java/org/qortal/network/Network.java

@ -121,6 +121,7 @@ public class Network {
private List<String> ourExternalIpAddressHistory = new ArrayList<>();
private String ourExternalIpAddress = null;
private int ourExternalPort = Settings.getInstance().getListenPort();
// Constructors
@ -1160,6 +1161,7 @@ public class Network {
return;
}
String host = parts[0];
try {
InetAddress addr = InetAddress.getByName(host);
if (addr.isAnyLocalAddress() || addr.isSiteLocalAddress()) {
@ -1170,6 +1172,9 @@ public class Network {
return;
}
// Keep track of the port
this.ourExternalPort = Integer.parseInt(parts[1]);
// Add to the list
this.ourExternalIpAddressHistory.add(host);
@ -1232,6 +1237,14 @@ public class Network {
return this.ourExternalIpAddress;
}
public String getOurExternalIpAddressAndPort() {
String ipAddress = this.getOurExternalIpAddress();
if (ipAddress == null) {
return null;
}
return String.format("%s:%d", ipAddress, this.ourExternalPort);
}
// Peer-management calls

Loading…
Cancel
Save