diff --git a/router/java/src/net/i2p/router/transport/udp/IntroductionManager.java b/router/java/src/net/i2p/router/transport/udp/IntroductionManager.java
index 960fb5ba711ca9c1f8896584f50d336654bae020..0d721c486a39ece5ce04cb294ee912244b3946f0 100644
--- a/router/java/src/net/i2p/router/transport/udp/IntroductionManager.java
+++ b/router/java/src/net/i2p/router/transport/udp/IntroductionManager.java
@@ -912,12 +912,12 @@ class IntroductionManager {
         PeerState aps = _transport.getPeerState(alice);
         if (aps != null && aps.isIPv6() == isIPv6) {
             rcode = SSU2Util.RELAY_REJECT_CHARLIE_CONNECTED;
-        } else if (_context.banlist().isBanlisted(alice)) {
+        } else if (_context.banlist().isBanlisted(alice) ||
+                   _context.blocklist().isBlocklisted(testIP)) {
             rcode = SSU2Util.RELAY_REJECT_CHARLIE_BANNED;
         } else if (!TransportUtil.isValidPort(testPort) ||
                   !_transport.isValid(testIP) ||
-                 _transport.isTooClose(testIP) ||
-                 _context.blocklist().isBlocklisted(testIP)) {
+                 _transport.isTooClose(testIP)) {
             rcode = SSU2Util.RELAY_REJECT_CHARLIE_ADDRESS;
         } else {
             // bob should have sent it to us. Don't bother to lookup
diff --git a/router/java/src/net/i2p/router/transport/udp/PeerTestManager.java b/router/java/src/net/i2p/router/transport/udp/PeerTestManager.java
index 59e487dcd594a3f8acf1b86e5f1f01fb1246507f..ac7ab3620a2e9d84b140c229bffd8e6ad7685b29 100644
--- a/router/java/src/net/i2p/router/transport/udp/PeerTestManager.java
+++ b/router/java/src/net/i2p/router/transport/udp/PeerTestManager.java
@@ -1074,12 +1074,12 @@ class PeerTestManager {
                 } else if (_transport.getEstablisher().getInboundState(from) != null ||
                            _transport.getEstablisher().getOutboundState(from) != null) {
                     rcode = SSU2Util.TEST_REJECT_CHARLIE_CONNECTED;
-                } else if (_context.banlist().isBanlisted(h)) {
+                } else if (_context.banlist().isBanlisted(h) ||
+                           _context.blocklist().isBlocklisted(testIP)) {
                     rcode = SSU2Util.TEST_REJECT_CHARLIE_BANNED;
                 } else if (!TransportUtil.isValidPort(testPort) ||
                           !_transport.isValid(testIP) ||
-                         _transport.isTooClose(testIP) ||
-                         _context.blocklist().isBlocklisted(testIP)) {
+                         _transport.isTooClose(testIP)) {
                     rcode = SSU2Util.TEST_REJECT_CHARLIE_ADDRESS;
                 } else {
                     // bob should have sent it to us. Don't bother to lookup