Return NOT supported EDE with unknown query classes
@@ -1627,10 +1627,13 @@ query_process(query_type *q, nsd_type *nsd)
if (q->qclass == CLASS_CH) {
return answer_chaos(nsd, q);
} else {
- return query_error(q, NSD_RC_REFUSE);
+ RCODE_SET(q->packet, RCODE_REFUSE);
+ /* RFC8914 - Extended DNS Errors
+ * 4.22. Extended DNS Error Code 21 - Not Supported */
+ q->edns.ede = EDE_NOT_SUPPORTED;
+ return QUERY_PROCESSED;
}
}
-
query_state = answer_axfr_ixfr(nsd, q);
if (query_state == QUERY_PROCESSED || query_state == QUERY_IN_AXFR) {
return query_state;
