chiark / gitweb /
Bodge adns_r_addr query-id selection and fix regression tests to match.
[adns.git] / regress / hack-query-ids
diff --git a/regress/hack-query-ids b/regress/hack-query-ids
new file mode 100755 (executable)
index 0000000..0c9b8d7
--- /dev/null
@@ -0,0 +1,17 @@
+#! /usr/bin/perl
+
+@seq = sort { $a <=> $b } map { hex } @ARGV;
+
+while (<STDIN>) {
+  print;
+  if (/^ (sendto fd=\d+|recvfrom=OK) addr=([0-9.]+|\[0-9a-f:]+\]).*:53/) {
+    my $line = <STDIN>;
+    if ($line !~ /^     ([0-9a-f]{4})(.*)$/s) {
+      print $line;
+      next;
+    }
+    my $qq = hex $1;
+    for my $q (@seq) { $qq++ if $qq >= $q; }
+    printf "     %04x%s", ($qq & 0xffff), $2;
+  }
+}