From cd199def687d00bdd63435b1b51e6e5b11ea25d9 Mon Sep 17 00:00:00 2001 From: Willem Toorop Date: Fri, 13 Jan 2017 19:45:54 +0100 Subject: [PATCH] Cookies and roadblock avoidance on by default per RFC7873 and RFC8027 --- configure.ac | 29 ++++++++++++++--------------- src/getdns/getdns.h.in | 1 + 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/configure.ac b/configure.ac index 2bca8ae8..f102aedc 100644 --- a/configure.ac +++ b/configure.ac @@ -447,32 +447,31 @@ case "$enable_dsa" in ;; esac -AC_ARG_ENABLE(draft-dnssec-roadblock-avoidance, AC_HELP_STRING([--enable-draft-dnssec-roadblock-avoidance], [Enable experimental dnssec roadblock avoidance])) -AC_ARG_ENABLE(draft-edns-cookies, AC_HELP_STRING([--enable-draft-edns-cookies], [Enable experimental edns cookies])) -AC_ARG_ENABLE(all-drafts, AC_HELP_STRING([--enable-all-drafts], [Enable cookies and roadblock avoidance])) +AC_ARG_ENABLE(all-drafts, AC_HELP_STRING([--enable-all-drafts], [No drafts in this release])) case "$enable_all_drafts" in yes) - enable_draft_dnssec_roadblock_avoidance=yes - enable_draft_edns_cookies=yes ;; no|*) ;; esac -case "$enable_draft_dnssec_roadblock_avoidance" in - yes) - AC_DEFINE_UNQUOTED([DNSSEC_ROADBLOCK_AVOIDANCE], [1], [Define this to enable the experimental draft dnssec roadblock avoidance.]) +AC_ARG_ENABLE(dnssec-roadblock-avoidance, AC_HELP_STRING([--disable-dnssec-roadblock-avoidance], [Disable dnssec roadblock avoidance])) +case "$enable_dnssec_roadblock_avoidance" in + no) ;; - no|*) + yes|*) + AC_DEFINE_UNQUOTED([DNSSEC_ROADBLOCK_AVOIDANCE], [1], [Define this to enable the experimental dnssec roadblock avoidance.]) ;; esac -case "$enable_draft_edns_cookies" in - yes) + +AC_ARG_ENABLE(edns-cookies, AC_HELP_STRING([--disable-edns-cookies], [Disable edns cookies])) +case "$enable_edns_cookies" in + no) + ;; + yes|*) if test "x_$HAVE_SSL" != "x_yes"; then - AC_MSG_ERROR([edns cookies need openssl libcrypto which is not available, please rerun without --enable-draft-edns-cookies]) + AC_MSG_ERROR([edns cookies need openssl libcrypto which is not available, please rerun with --disable-edns-cookies]) fi - AC_DEFINE_UNQUOTED([EDNS_COOKIES], [1], [Define this to enable the experimental draft edns cookies.]) - ;; - no|*) + AC_DEFINE_UNQUOTED([EDNS_COOKIES], [1], [Define this to enable the experimental edns cookies.]) ;; esac AC_DEFINE_UNQUOTED([EDNS_COOKIE_OPCODE], [10], [The edns cookie option code.]) diff --git a/src/getdns/getdns.h.in b/src/getdns/getdns.h.in index 2a8f7f2a..f7825361 100644 --- a/src/getdns/getdns.h.in +++ b/src/getdns/getdns.h.in @@ -485,6 +485,7 @@ typedef enum getdns_callback_type_t { #define GETDNS_RCODE_BADNAME 20 #define GETDNS_RCODE_BADALG 21 #define GETDNS_RCODE_BADTRUNC 22 +#define GETDNS_RCODE_COOKIE 23 /** @} */