From 2c99f62acb9fdb488f342da6f8a0b6538e585ef3 Mon Sep 17 00:00:00 2001 From: wencyu Date: Thu, 21 Aug 2025 07:02:41 +0800 Subject: [PATCH] plugin/file: fix label offset problem in ClosestEncloser (#7465) Signed-off-by: yuwenchao --- plugin/file/closest.go | 2 +- plugin/file/closest_test.go | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/plugin/file/closest.go b/plugin/file/closest.go index 86c90fccd..7a8efd5d9 100644 --- a/plugin/file/closest.go +++ b/plugin/file/closest.go @@ -16,7 +16,7 @@ func (z *Zone) ClosestEncloser(qname string) (*tree.Elem, bool) { } qname = qname[offset:] - offset, end = dns.NextLabel(qname, offset) + offset, end = dns.NextLabel(qname, 0) } return z.Search(z.origin) diff --git a/plugin/file/closest_test.go b/plugin/file/closest_test.go index 40c04ff26..282823fcc 100644 --- a/plugin/file/closest_test.go +++ b/plugin/file/closest_test.go @@ -21,6 +21,7 @@ func TestClosestEncloser(t *testing.T) { {"blaat.www.miek.nl.", "www.miek.nl."}, {"www.blaat.miek.nl.", "miek.nl."}, {"blaat.a.miek.nl.", "a.miek.nl."}, + {"blaat.z.a.miek.nl.", "a.miek.nl."}, } for _, tc := range tests {