Fix rule_set_ip_cidr_accept_empty not working

This commit is contained in:
世界
2026-03-03 23:26:05 +08:00
parent 0ef1c78c0e
commit 2c60eebc42
2 changed files with 17 additions and 15 deletions
+3 -1
View File
@@ -240,8 +240,10 @@ func (c *Client) Exchange(ctx context.Context, transport adapter.DNSTransport, m
if responseChecker != nil {
var rejected bool
// TODO: add accept_any rule and support to check response instead of addresses
if response.Rcode != dns.RcodeSuccess || len(response.Answer) == 0 {
if response.Rcode != dns.RcodeSuccess && response.Rcode != dns.RcodeNameError {
rejected = true
} else if len(response.Answer) == 0 {
rejected = !responseChecker(nil)
} else {
rejected = !responseChecker(MessageToAddresses(response))
}