Skip to content

Commit 39b4329

Browse files
vasildjonatack
andcommitted
test: add test for banning of non-IP addresses
Co-authored-by: Jon Atack <[email protected]>
1 parent 94d335d commit 39b4329

File tree

1 file changed

+16
-0
lines changed

1 file changed

+16
-0
lines changed

test/functional/rpc_setban.py

+16
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,9 @@ def set_test_params(self):
1515
self.setup_clean_chain = True
1616
self.extra_args = [[],[]]
1717

18+
def is_banned(self, node, addr):
19+
return any(e['address'] == addr for e in node.listbanned())
20+
1821
def run_test(self):
1922
# Node 0 connects to Node 1, check that the noban permission is not granted
2023
self.connect_nodes(0, 1)
@@ -42,5 +45,18 @@ def run_test(self):
4245
peerinfo = self.nodes[1].getpeerinfo()[0]
4346
assert(not 'noban' in peerinfo['permissions'])
4447

48+
self.log.info("Test that a non-IP address can be banned/unbanned")
49+
node = self.nodes[1]
50+
tor_addr = "pg6mmjiyjmcrsslvykfwnntlaru7p5svn6y2ymmju6nubxndf4pscryd.onion"
51+
ip_addr = "1.2.3.4"
52+
assert(not self.is_banned(node, tor_addr))
53+
assert(not self.is_banned(node, ip_addr))
54+
node.setban(tor_addr, "add")
55+
assert(self.is_banned(node, tor_addr))
56+
assert(not self.is_banned(node, ip_addr))
57+
node.setban(tor_addr, "remove")
58+
assert(not self.is_banned(self.nodes[1], tor_addr))
59+
assert(not self.is_banned(node, ip_addr))
60+
4561
if __name__ == '__main__':
4662
SetBanTests().main()

0 commit comments

Comments
 (0)