summaryrefslogtreecommitdiff
path: root/python
diff options
context:
space:
mode:
authorRuben Herold <ruben@puettmann.net>2026-08-07 22:56:21 +0200
committerRuben Herold <ruben@puettmann.net>2026-08-07 22:56:21 +0200
commitf968d22867beb2ea44a6e6716e2fb40e73a68b39 (patch)
tree3ad618b1a3b98ca09c6213a1650c3eda13208b62 /python
parent278fba204200f02bb461f786f889b40dc38a26f6 (diff)
downloadvyos-1x-f968d22867beb2ea44a6e6716e2fb40e73a68b39.tar.gz
vyos-1x-f968d22867beb2ea44a6e6716e2fb40e73a68b39.zip
utils: T9177: fix _are_same_ip() using wrong address family
_are_same_ip() computed the address family of both arguments but only ever passed the first one's family to inet_pton() for both, via a computed-but-unused "s_two" local. Comparing addresses of different families (e.g. one IPv4, one IPv6) raised instead of returning False. Found via ruff flagging s_two as an unused local; the function currently has no callers.
Diffstat (limited to 'python')
-rw-r--r--python/vyos/utils/network.py6
1 files changed, 4 insertions, 2 deletions
diff --git a/python/vyos/utils/network.py b/python/vyos/utils/network.py
index 5b75de1cc..ef8205b97 100644
--- a/python/vyos/utils/network.py
+++ b/python/vyos/utils/network.py
@@ -25,8 +25,10 @@ def _are_same_ip(one, two):
from vyos.template import is_ipv4
# compare the binary representation of the IP
f_one = AF_INET if is_ipv4(one) else AF_INET6
- s_two = AF_INET if is_ipv4(two) else AF_INET6
- return inet_pton(f_one, one) == inet_pton(f_one, two)
+ f_two = AF_INET if is_ipv4(two) else AF_INET6
+ if f_one != f_two:
+ return False
+ return inet_pton(f_one, one) == inet_pton(f_two, two)
def get_protocol_by_name(protocol_name):
"""Get protocol number by protocol name