diff --git a/CHANGES b/CHANGES index 52af77f57889225ed49c37f360d61970af3e5602..b4220a408e3c67070b7346d683ccf9b059a6bd17 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,6 @@ +5125. [bug] Allow for up to 100 records or 64k of data when caching + a negative response. [GL #804] + 5124. [bug] Named could incorrectly return FORMERR rather than SERVFAIL. [GL #804] diff --git a/lib/dns/ncache.c b/lib/dns/ncache.c index 1f060a4abc2d59c035a054c1abeee7daf4e974f3..f83fe289a001939e0a83e6c47f2153b8fa6504d1 100644 --- a/lib/dns/ncache.c +++ b/lib/dns/ncache.c @@ -28,7 +28,7 @@ #include #include -#define DNS_NCACHE_RDATA 20U +#define DNS_NCACHE_RDATA 100U /* * The format of an ncache rdata is a sequence of zero or more records of @@ -133,7 +133,7 @@ addoptout(dns_message_t *message, dns_db_t *cache, dns_dbnode_t *node, dns_rdata_t rdata[DNS_NCACHE_RDATA]; dns_rdataset_t ncrdataset; dns_rdatalist_t ncrdatalist; - unsigned char data[4096]; + unsigned char data[65536]; unsigned int next = 0; /*