summaryrefslogtreecommitdiffstats
path: root/examples/filter_rcode.lua
diff options
context:
space:
mode:
authorDaniel Baumann <mail@daniel-baumann.ch>2023-12-10 09:45:31 +0000
committerDaniel Baumann <mail@daniel-baumann.ch>2023-12-10 09:45:31 +0000
commitf5b47f1a6e9048e72f1e3b0e0f7c03459e20ca66 (patch)
treeb0042536e5ff6047564d27d25470dcec2b92f258 /examples/filter_rcode.lua
parentReleasing debian version 1.2.3-3. (diff)
downloaddnsjit-f5b47f1a6e9048e72f1e3b0e0f7c03459e20ca66.tar.xz
dnsjit-f5b47f1a6e9048e72f1e3b0e0f7c03459e20ca66.zip
Merging upstream version 1.3.0.
Signed-off-by: Daniel Baumann <mail@daniel-baumann.ch>
Diffstat (limited to 'examples/filter_rcode.lua')
-rwxr-xr-xexamples/filter_rcode.lua13
1 files changed, 12 insertions, 1 deletions
diff --git a/examples/filter_rcode.lua b/examples/filter_rcode.lua
index c3f0254..729cb8e 100755
--- a/examples/filter_rcode.lua
+++ b/examples/filter_rcode.lua
@@ -28,9 +28,20 @@ while true do
end
transport = transport.obj_prev
end
+ local protocol = obj.obj_prev
+ while protocol ~= nil do
+ if protocol.obj_type == object.UDP or protocol.obj_type == object.TCP then
+ break
+ end
+ protocol = protocol.obj_prev
+ end
+ dns:reset()
+ if protocol ~= nil and protocol.obj_type == object.TCP then
+ dns.includes_dnslen = 1
+ end
dns.obj_prev = obj
- if transport and dns and dns:parse_header() == 0 and dns.have_rcode == 1 and dns.rcode == rcode then
+ if transport ~= nil and dns:parse_header() == 0 and dns.have_rcode == 1 and dns.rcode == rcode then
transport = transport:cast()
print(dns.id, transport:source().." -> "..transport:destination())
end