this is a saner default for large answers. instead of waiting for
probably lost/thrown away fragmented packet, do the query over TCP
instead
* @cond internal
*/
#define KR_CONN_RTT_MAX 3000 /* Timeout for network activity */
-#define KR_ITER_LIMIT 50 /* Built-in iterator limit */
+#define KR_ITER_LIMIT 50 /* Built-in iterator limit */
/*
* Defines.
*/
#define KR_DNS_PORT 53
#define KR_EDNS_VERSION 0
-#define KR_EDNS_PAYLOAD 4096
+#define KR_EDNS_PAYLOAD 1452 /* Maximum payload for unfragmented UDP/v6 */
/* @endcond */
.ctx = mp_new (KNOT_WIRE_MAX_PKTSIZE),
.alloc = (mm_alloc_t) mp_alloc
};
- knot_pkt_t *query = knot_pkt_new(NULL, KNOT_EDNS_MAX_UDP_PAYLOAD, &pool);
+ knot_pkt_t *query = knot_pkt_new(NULL, KR_EDNS_PAYLOAD, &pool);
knot_pkt_t *resp = knot_pkt_new(NULL, KNOT_WIRE_MAX_PKTSIZE, &pool);
if (!query || !resp) {
mp_delete(pool.ctx);