]> gitweb.michael.orlitzky.com - djbdns-logparse.git/commitdiff
djbdns/common.py: assume IPv6 if an address isn't IPv4.
authorMichael Orlitzky <michael@orlitzky.com>
Thu, 22 Sep 2022 01:25:59 +0000 (21:25 -0400)
committerMichael Orlitzky <michael@orlitzky.com>
Thu, 22 Sep 2022 01:25:59 +0000 (21:25 -0400)
In other words, probably crash if convert_ip() is fed garbage. That's
OK. We could check the length of the hex string and raise a ValueError
if it isn't 8 or 32, but we might be solving problems that don't exist.

djbdns/common.py

index 6ef4e1ceae89ab6cea39b69330b4196a8e3ff892..138101141d12339640854684adc258ca5a803a12 100644 (file)
@@ -67,6 +67,6 @@ def convert_ip(ip : str) -> str:
     if len(ip) == 8:
         # IPv4, eg. "7f000001" -> "7f 00 00 01" -> "127.0.0.1"
         return ".".join(map(str, pack(">L", int(ip, 16))))
-    elif len(ip) == 32:
-        # IPv6 is actually simpler -- it's just a string-slicing operation.
-        return ":".join([ip[(4*i) : (4*i+4)] for i in range(8)])
+
+    # IPv6 is actually simpler -- it's just a string-slicing operation.
+    return ":".join([ip[(4*i) : (4*i+4)] for i in range(8)])