<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <p>All:</p>
    <p>Here is a pure python implementation of a Dnstap consumer
      designed to work with Python 3:</p>
    <blockquote>
      <p><a class="moz-txt-link-freetext" href="https://github.com/m3047/shodohflo">https://github.com/m3047/shodohflo</a></p>
    </blockquote>
    <p><br>
    </p>
    <p>Implementations of Frame Streams and Protobuf:</p>
    <blockquote>
      <p><a class="moz-txt-link-freetext" href="https://github.com/m3047/shodohflo/tree/master/shodohflo">https://github.com/m3047/shodohflo/tree/master/shodohflo</a></p>
    </blockquote>
    <p>While the implementations of Frame Streams and Protobuf on their
      own have no dependencies outside of the standard libraries, <font
        face="Courier New, Courier, monospace">shodohflo.protobuf.dnstap</font>
      does have a dependency on <font face="Courier New, Courier,
        monospace">dnspython</font>.</p>
    <p><br>
    </p>
    <p>Sample application:</p>
    <blockquote>
      <p><a class="moz-txt-link-freetext" href="https://github.com/m3047/shodohflo/blob/master/examples/tap_example.py">https://github.com/m3047/shodohflo/blob/master/examples/tap_example.py</a></p>
    </blockquote>
    <p>The sample program has no dependencies beyond those required by
      the modules above (<font face="Courier New, Courier, monospace">dnspython</font>).</p>
    <p><br>
    </p>
    <p>If the output of the sample program and the protobuf
      implementation itself look a bit Scapy-like, that's because I
      originally implemented it as a Scapy dissector several years ago.
      Unlike Scapy, this software is released under an Apache license.</p>
    <p>--</p>
    <p>Fred Morris</p>
    <p><br>
    </p>
    <p><br>
    </p>
    <br>
  </body>
</html>