]> git.ipfire.org Git - thirdparty/knot-dns.git/commitdiff
ddns: return SERVFAIL to updates over XDP (not supported)
authorDaniel Salzman <daniel.salzman@nic.cz>
Sat, 11 Apr 2020 15:12:14 +0000 (17:12 +0200)
committerDaniel Salzman <daniel.salzman@nic.cz>
Tue, 21 Apr 2020 16:43:10 +0000 (18:43 +0200)
src/knot/nameserver/update.c

index 51cfa3a06a7faff9808582f713486d0043089ada..a208a24b517b80fbfed52596d651f31a2870d1f4 100644 (file)
@@ -1,4 +1,4 @@
-/*  Copyright (C) 2019 CZ.NIC, z.s.p.o. <knot-dns@labs.nic.cz>
+/*  Copyright (C) 2020 CZ.NIC, z.s.p.o. <knot-dns@labs.nic.cz>
 
     This program is free software: you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
@@ -77,6 +77,12 @@ static int update_enqueue(zone_t *zone, knotd_qdata_t *qdata)
 
 int update_process_query(knot_pkt_t *pkt, knotd_qdata_t *qdata)
 {
+       /* DDNS over XDP not supported. */
+       if (qdata->params->xdp_msg != NULL) {
+               qdata->rcode = KNOT_RCODE_SERVFAIL;
+               return KNOT_STATE_FAIL;
+       }
+
        /* RFC1996 require SOA question. */
        NS_NEED_QTYPE(qdata, KNOT_RRTYPE_SOA, KNOT_RCODE_FORMERR);