<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=utf-8">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <br>
    All,<br>
    <br>
    I'm new to Net::DNS and DNS as well so may well be missing something
    obvious.  I have some tests I want to do to validate results of RPZ
    configurations.  The problem is, the send() method seems to only
    return the status of the final packet of a query.  Unfortunately,
    the final status for several tests appear the same, so there is no
    way to validate the query in fact behaved as expected.  When I set
    the debug flag, I see the traffic I expect, but none of that data
    (except the last) is retained for programmatic analysis.<br>
    <br>
    Example: Setting RPZ policy action to TCP-ONLY.  (sorry, doing this
    from memory...)<br>
    <ul>
      <li>$resolver->send() (via UDP)<br>
      </li>
      <li>Initial query is truncated (tc=1), status, unknown error</li>
      <li>query resent, forcing TCP connection</li>
      <li>query returns answer correctly.  status NOERROR<br>
      </li>
    </ul>
    <p>I'd like to capture intermediate flag settings and resolver
      status to validate each step executed as expected.<br>
    </p>
    <p>A quick walk through the Net::DNS code shows it **may** be as
      simple as changing the $ans (return value) scaler to an array and
      saving each intermediate packet.  It's possible a flag could be
      set to default to current behaviour and return only the last
      packet to maintain backwards compatibility.  It seems internally,
      there are only two or three methods that would need to be modified
      as a result.  However, I'm not familiar enough with the framework
      to be sure that is all, or even be sure what I want is not really
      there already.<br>
    </p>
    <p>Help or suggestions much appreciated.  Requests for details will
      have to wait until I am back in the office tomorrow...<br>
    </p>
    <p>Robert Kuropkat<br>
      <br>
    </p>
  </body>
</html>