]> gitweb.michael.orlitzky.com - djbdns-logparse.git/commitdiff
bin/djbdns-logparse.py: add a dosctring for decode_serial().
authorMichael Orlitzky <michael@orlitzky.com>
Fri, 16 Sep 2022 19:18:46 +0000 (15:18 -0400)
committerMichael Orlitzky <michael@orlitzky.com>
Fri, 16 Sep 2022 19:18:46 +0000 (15:18 -0400)
bin/djbdns-logparse.py

index 0abd5bc168b9370e4198311bf14b683f9162f01c..1df2bf8ce8340297ba8b9882ed6d1a22a0f05c5e 100755 (executable)
@@ -245,8 +245,39 @@ def decode_ttl(words : list, i : int):
     words[i] = f"TTL={words[i]}"
 
 def decode_serial(words : list, i : int):
-    serial = int(words[i])
-    words[i] = f"#{serial}"
+    r"""
+    Helper function to decode the serial field in a dnscache log
+    entry.
+
+    A single "serial" field is present in the drop and query entry
+    types. It's already in decimal; we simply prefix it with a hash.
+
+    Parameters
+    ----------
+
+    words : list
+        The ``words`` list (a list of fields) from
+        :func:`handle_dnscache_log`.
+
+    i : int
+        The index of the serial field within ``words``
+
+    Returns
+    -------
+
+    Nothing; the ``i``th entry in the ``words`` list is modified
+    in-place.
+
+    Examples
+    --------
+
+        >>> words = ["1", "7f000001:a3db:4fb9", "1", "www.example.com."]
+        >>> decode_serial(words, 0)
+        >>> words
+        ['#1', '7f000001:a3db:4fb9', '1', 'www.example.com.']
+
+    """
+    words[i] = f"#{words[i]}"
 
 def decode_type(words : list, i : int):
     qt = words[i]