forked from Qortal/qortal
Bug fixes found when testing previous commits.
This commit is contained in:
parent
1030b00f0a
commit
1d7203a6fb
@ -1,5 +1,6 @@
|
|||||||
package org.qortal.controller.arbitrary;
|
package org.qortal.controller.arbitrary;
|
||||||
|
|
||||||
|
import com.google.common.net.InetAddresses;
|
||||||
import org.apache.logging.log4j.LogManager;
|
import org.apache.logging.log4j.LogManager;
|
||||||
import org.apache.logging.log4j.Logger;
|
import org.apache.logging.log4j.Logger;
|
||||||
import org.qortal.arbitrary.ArbitraryDataFile;
|
import org.qortal.arbitrary.ArbitraryDataFile;
|
||||||
@ -20,7 +21,6 @@ import org.qortal.utils.ArbitraryTransactionUtils;
|
|||||||
import org.qortal.utils.Base58;
|
import org.qortal.utils.Base58;
|
||||||
import org.qortal.utils.NTP;
|
import org.qortal.utils.NTP;
|
||||||
|
|
||||||
import java.net.InetSocketAddress;
|
|
||||||
import java.security.SecureRandom;
|
import java.security.SecureRandom;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.concurrent.ExecutorService;
|
import java.util.concurrent.ExecutorService;
|
||||||
@ -518,12 +518,21 @@ public class ArbitraryDataFileManager extends Thread {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Make sure to remove the port, since it isn't guaranteed to match next time
|
// Make sure to remove the port, since it isn't guaranteed to match next time
|
||||||
InetSocketAddress address = Peer.parsePeerAddress(peerAddress);
|
String[] parts = peerAddress.split(":");
|
||||||
this.recentDataRequests.put(address.getHostString(), now);
|
if (parts.length == 0) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
String host = parts[0];
|
||||||
|
if (!InetAddresses.isInetAddress(host)) {
|
||||||
|
// Invalid host
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
this.recentDataRequests.put(host, now);
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean isPeerRequestingData(String peerAddressWithoutPort) {
|
public boolean isPeerRequestingData(String peerAddressWithoutPort) {
|
||||||
return this.recentDataRequests.containsValue(peerAddressWithoutPort);
|
return this.recentDataRequests.containsKey(peerAddressWithoutPort);
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean hasPendingDataRequest() {
|
public boolean hasPendingDataRequest() {
|
||||||
|
@ -121,6 +121,7 @@ public class ChannelAcceptTask implements Task {
|
|||||||
|
|
||||||
newPeer = new Peer(socketChannel);
|
newPeer = new Peer(socketChannel);
|
||||||
if (isDataPeer) {
|
if (isDataPeer) {
|
||||||
|
newPeer.setIsDataPeer(true);
|
||||||
newPeer.setMaxConnectionAge(Settings.getInstance().getMaxDataPeerConnectionTime() * 1000L);
|
newPeer.setMaxConnectionAge(Settings.getInstance().getMaxDataPeerConnectionTime() * 1000L);
|
||||||
}
|
}
|
||||||
network.addConnectedPeer(newPeer);
|
network.addConnectedPeer(newPeer);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user