fix(ci): harden dns fake-ip assertions across linux distros
This commit is contained in:
1 parent
00e7f36aee
commit
4b4dac70e4
1 file changed
+2
-2
@@ -110,11 +110,11 @@ jobs:
|
||||
|
||||
DNS_V4="$(cargo run -q -p proxychains-bin -- -q -f ./ci.e2e.conf python3 -c "import socket;print(socket.getaddrinfo(\"dns-proxychains-e2e.invalid\",443,0,socket.SOCK_STREAM)[0][4][0])" | tr -d "\r\n")"
|
||||
echo "dns v4 fake ip: ${DNS_V4}"
|
||||
DNS_V4="${DNS_V4}" python3 -c "import ipaddress, os; ip = ipaddress.ip_address(os.environ['DNS_V4']); assert ip.version == 4 and ip in ipaddress.ip_network('224.0.0.0/8')"
|
||||
DNS_V4="${DNS_V4}" python3 -c "import ipaddress, os; n = ipaddress.ip_network(\"224.0.0.0/8\"); ip = ipaddress.ip_address(os.environ[\"DNS_V4\"]); mapped = getattr(ip, \"ipv4_mapped\", None); ok = (ip.version == 4 and ip in n) or (ip.version == 6 and mapped is not None and mapped in n); assert ok"
|
||||
|
||||
DNS_V6="$(cargo run -q -p proxychains-bin -- -q -f ./ci.e2e.conf python3 -c "import socket;print(socket.getaddrinfo(\"dns-proxychains-e2e.invalid\",443,socket.AF_INET6,socket.SOCK_STREAM)[0][4][0])" | tr -d "\r\n")"
|
||||
echo "dns v6 fake ip: ${DNS_V6}"
|
||||
DNS_V6="${DNS_V6}" python3 -c "import ipaddress, os; ip = ipaddress.ip_address(os.environ['DNS_V6']); mapped = ip.ipv4_mapped; assert ip.version == 6 and mapped is not None and mapped in ipaddress.ip_network('224.0.0.0/8')"
|
||||
DNS_V6="${DNS_V6}" python3 -c "import ipaddress, os; n = ipaddress.ip_network(\"224.0.0.0/8\"); lo_min = int(ipaddress.ip_address(\"224.0.0.0\")); lo_max = int(ipaddress.ip_address(\"239.255.255.255\")); ip = ipaddress.ip_address(os.environ[\"DNS_V6\"]); mapped = getattr(ip, \"ipv4_mapped\", None); v4compat = ip.version == 6 and (int(ip) >> 32) == 0 and lo_min <= (int(ip) & 0xffffffff) <= lo_max; v4mapped = ip.version == 6 and mapped is not None and mapped in n; assert v4compat or v4mapped"
|
||||
|
||||
PROXYCHAINS_TEST_SOCKS5_ADDR=127.0.0.1:19080 \
|
||||
PROXYCHAINS_TEST_HTTP_ADDR=127.0.0.1:18080 \
|
||||
|
||||
Reference in new issue
Block a user