summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/CHANGES-20203
-rw-r--r--mail/opendmarc/Makefile23
-rw-r--r--mail/opendmarc/PLIST6
-rw-r--r--mail/opendmarc/distinfo18
-rw-r--r--mail/opendmarc/patches/patch-build-config.h.in16
-rw-r--r--mail/opendmarc/patches/patch-configure191
-rw-r--r--mail/opendmarc/patches/patch-configure.ac35
-rw-r--r--mail/opendmarc/patches/patch-libopendmarc_opendmarc__dns.c27
-rw-r--r--mail/opendmarc/patches/patch-libopendmarc_opendmarc__spf__dns.c52
9 files changed, 99 insertions, 272 deletions
diff --git a/doc/CHANGES-2020 b/doc/CHANGES-2020
index 160ccdaa866..e87d3d24b81 100644
--- a/doc/CHANGES-2020
+++ b/doc/CHANGES-2020
@@ -1,4 +1,4 @@
-$NetBSD: CHANGES-2020,v 1.6848 2020/12/22 00:29:08 gutteridge Exp $
+$NetBSD: CHANGES-2020,v 1.6849 2020/12/24 01:10:22 manu Exp $
Changes to the packages collection and infrastructure in 2020:
@@ -9923,3 +9923,4 @@ Changes to the packages collection and infrastructure in 2020:
Added security/R-credentials version 1.3.0 [mef 2020-12-21]
mk/bsd.pkg.mk: started freeze for pkgsrc-2020Q4 branch [gdt 2020-12-21]
Updated x11/xfce4-notifyd to 0.6.2nb1 [gutteridge 2020-12-22]
+ Updated mail/opendmarc to 1.4.0beta1 [manu 2020-12-24]
diff --git a/mail/opendmarc/Makefile b/mail/opendmarc/Makefile
index bff9ef61396..d1494e30316 100644
--- a/mail/opendmarc/Makefile
+++ b/mail/opendmarc/Makefile
@@ -1,9 +1,13 @@
-# $NetBSD: Makefile,v 1.21 2020/08/31 18:09:59 wiz Exp $
+# $NetBSD: Makefile,v 1.22 2020/12/24 01:10:23 manu Exp $
-DISTNAME= opendmarc-1.3.1
-PKGREVISION= 9
+GITHUB_PROJECT= OpenDMARC
+GITHUB_TAG= rel-opendmarc-1-4-0-Beta1
+DISTNAME= rel-opendmarc-1-4-0-Beta1
+PKGNAME= opendmarc-1.4.0b1
+#PKGREVISION= 1
CATEGORIES= mail
-MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=opendmarc/}
+MASTER_SITES= ${MASTER_SITE_GITHUB:=trusteddomainproject/}
+DIST_SUBDIR= ${GITHUB_PROJECT}
MAINTAINER= pettai@NetBSD.org
HOMEPAGE= http://www.trusteddomain.org/opendmarc/
@@ -19,11 +23,14 @@ DEPENDS+= p5-HTTP-Message-[0-9]*:../../www/p5-HTTP-Message
RCD_SCRIPTS= opendmarc
USE_LIBTOOL= yes
-USE_TOOLS+= perl
+USE_TOOLS+= perl autoconf automake
GNU_CONFIGURE= yes
CONFIGURE_ARGS+= --sysconfdir=${PKG_SYSCONFDIR}
CONFIGURE_ARGS+= --with-milter=${BUILDLINK_PREFIX.libmilter}
+CONFIGURE_ARGS+= --with-spf
+CONFIGURE_ARGS+= --with-spf2-lib=${BUILDLINK_PREFIX.libspf2}/lib
+CONFIGURE_ARGS+= --with-spf2-include=${BUILDLINK_PREFIX.libspf2}/include/spf2
REPLACE_PERL= reports/opendmarc-expire.in
REPLACE_PERL+= reports/opendmarc-import.in
@@ -34,11 +41,17 @@ EGDIR= ${PREFIX}/share/examples/${PKGBASE}
INSTALLATION_DIRS= ${EGDIR}
+pre-configure:
+ set -e; cd ${WRKSRC}; \
+ libtoolize; aclocal; autoheader; automake -a --foreign -i; autoconf
+
post-install:
${INSTALL_DATA} ${WRKSRC}/opendmarc/opendmarc.conf.sample \
${DESTDIR}${EGDIR}/
.include "../../security/openssl/buildlink3.mk"
+BUILDLINK_API_DEPENDS.libmilter+= libmilter>=8.13.0
.include "../../mail/libmilter/buildlink3.mk"
+.include "../../mail/libspf2/buildlink3.mk"
.include "../../mk/pthread.buildlink3.mk"
.include "../../mk/bsd.pkg.mk"
diff --git a/mail/opendmarc/PLIST b/mail/opendmarc/PLIST
index 61772d01b17..fafbfd111a2 100644
--- a/mail/opendmarc/PLIST
+++ b/mail/opendmarc/PLIST
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.5 2015/03/15 22:26:34 pettai Exp $
+@comment $NetBSD: PLIST,v 1.6 2020/12/24 01:10:23 manu Exp $
include/opendmarc/dmarc.h
lib/libopendmarc.la
man/man5/opendmarc.conf.5
@@ -21,15 +21,15 @@ share/doc/opendmarc/LICENSE.Sendmail
share/doc/opendmarc/README
share/doc/opendmarc/README.rddmarc
share/doc/opendmarc/README.schema
+share/doc/opendmarc/README.specs.html
share/doc/opendmarc/dmarc_policy_t.html
share/doc/opendmarc/dmarcfail.py
-share/doc/opendmarc/draft-dmarc-base-13.txt
share/doc/opendmarc/index.html
-share/doc/opendmarc/mkdb.mysql
share/doc/opendmarc/mkdmarc
share/doc/opendmarc/mysql_ip6.c
share/doc/opendmarc/opendmarc
share/doc/opendmarc/opendmarc.conf.sample
+share/doc/opendmarc/opendmarc.service.in
share/doc/opendmarc/opendmarc.spec.in
share/doc/opendmarc/opendmarc_dns_fake_record.html
share/doc/opendmarc/opendmarc_get_policy_to_enforce.html
diff --git a/mail/opendmarc/distinfo b/mail/opendmarc/distinfo
index 0650c1d352d..3d7efc4755c 100644
--- a/mail/opendmarc/distinfo
+++ b/mail/opendmarc/distinfo
@@ -1,11 +1,9 @@
-$NetBSD: distinfo,v 1.7 2020/07/27 20:41:09 oster Exp $
+$NetBSD: distinfo,v 1.8 2020/12/24 01:10:23 manu Exp $
-SHA1 (opendmarc-1.3.1.tar.gz) = bdd12713888c16e77334281238f88990df225929
-RMD160 (opendmarc-1.3.1.tar.gz) = 623b51544f428ade14f0a5d6204f8bf41af8375a
-SHA512 (opendmarc-1.3.1.tar.gz) = 0be11540bc26bd3b3e6cc9817bc379a5d290b63ef16c5d3559bf96b241ad6628bea7a9daeb468afac855bc16be16676f722b3c1d468ea82c8d8364e8a8137226
-Size (opendmarc-1.3.1.tar.gz) = 640151 bytes
-SHA1 (patch-build-config.h.in) = 14723ab0a578978117be7dcc1d60fe5af955b610
-SHA1 (patch-configure) = 1af3b346ac6db51d1701af8ba4e123e0e6a6b973
-SHA1 (patch-configure.ac) = bfd2c16d22e25b564d33220b5e7ceadedc5ee016
-SHA1 (patch-libopendmarc_opendmarc__dns.c) = 7c75d464bcdba6baf963cb002e7ba94a60593ecc
-SHA1 (patch-libopendmarc_opendmarc__spf__dns.c) = 82f22fd2e224ddef1cd3c6788518e629fdea125f
+SHA1 (OpenDMARC/rel-opendmarc-1-4-0-Beta1.tar.gz) = 74ad1ef9f9a12b5fadef5919807cd55f7655d8d8
+RMD160 (OpenDMARC/rel-opendmarc-1-4-0-Beta1.tar.gz) = e8dda5350a734509843a04329777478d9410b796
+SHA512 (OpenDMARC/rel-opendmarc-1-4-0-Beta1.tar.gz) = d562050da9c4b96e7707157fbbf385ab3ac551cf07754b45deb6a010b4c47e7f478dfe35bc2c8625f6553af4fbf120820bf2a9f0ce246b26cabf81e7d1174405
+Size (OpenDMARC/rel-opendmarc-1-4-0-Beta1.tar.gz) = 1247386 bytes
+SHA1 (patch-configure.ac) = d174911e4de37d3b50b525469cbe410bb7ae119f
+SHA1 (patch-libopendmarc_opendmarc__dns.c) = e76ca13707677525b72609b4a5268d77efcfba84
+SHA1 (patch-libopendmarc_opendmarc__spf__dns.c) = b6e1311be8e9ef44c333be57fef474f6b080a199
diff --git a/mail/opendmarc/patches/patch-build-config.h.in b/mail/opendmarc/patches/patch-build-config.h.in
deleted file mode 100644
index 6be034a003c..00000000000
--- a/mail/opendmarc/patches/patch-build-config.h.in
+++ /dev/null
@@ -1,16 +0,0 @@
-$NetBSD: patch-build-config.h.in,v 1.1 2020/07/27 20:41:10 oster Exp $
-
-We need to use res_ndestroy() to cleanup after res_init().
-
---- build-config.h.in.orig 2015-02-23 20:32:27.000000000 +0000
-+++ build-config.h.in
-@@ -104,6 +104,9 @@
- /* Define to 1 if you have the `res_ninit()' function. */
- #undef HAVE_RES_NINIT
-
-+/* Define to 1 if you have the 'res_ndestroy()' function. */
-+#undef HAVE_RES_NDESTROY
-+
- /* Define to 1 if you have the <signal.h> header file. */
- #undef HAVE_SIGNAL_H
-
diff --git a/mail/opendmarc/patches/patch-configure b/mail/opendmarc/patches/patch-configure
deleted file mode 100644
index 9a295f1fb6a..00000000000
--- a/mail/opendmarc/patches/patch-configure
+++ /dev/null
@@ -1,191 +0,0 @@
-$NetBSD: patch-configure,v 1.2 2020/07/27 20:41:10 oster Exp $
-
-Check for res_ndestroy(), __res_init(), and __res_ndestroy().
-
---- configure.orig 2015-02-23 20:32:13.000000000 +0000
-+++ configure
-@@ -12971,6 +12971,184 @@ $as_echo "#define HAVE_RES_NINIT 1" >>co
-
- fi
-
-+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing res_ndestroy" >&5
-+$as_echo_n "checking for library containing res_ndestroy... " >&6; }
-+if ${ac_cv_search_res_ndestroy+:} false; then :
-+ $as_echo_n "(cached) " >&6
-+else
-+ ac_func_search_save_LIBS=$LIBS
-+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-+/* end confdefs.h. */
-+
-+/* Override any GCC internal prototype to avoid an error.
-+ Use char because int might match the return type of a GCC
-+ builtin and then its argument prototype would still apply. */
-+#ifdef __cplusplus
-+extern "C"
-+#endif
-+char res_ndestroy ();
-+int
-+main ()
-+{
-+return res_ndestroy ();
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+for ac_lib in '' resolv; do
-+ if test -z "$ac_lib"; then
-+ ac_res="none required"
-+ else
-+ ac_res=-l$ac_lib
-+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
-+ fi
-+ if ac_fn_c_try_link "$LINENO"; then :
-+ ac_cv_search_res_ndestroy=$ac_res
-+fi
-+rm -f core conftest.err conftest.$ac_objext \
-+ conftest$ac_exeext
-+ if ${ac_cv_search_res_ndestroy+:} false; then :
-+ break
-+fi
-+done
-+if ${ac_cv_search_res_ndestroy+:} false; then :
-+
-+else
-+ ac_cv_search_res_ndestroy=no
-+fi
-+rm conftest.$ac_ext
-+LIBS=$ac_func_search_save_LIBS
-+fi
-+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_res_ndestroy" >&5
-+$as_echo "$ac_cv_search_res_ndestroy" >&6; }
-+ac_res=$ac_cv_search_res_ndestroy
-+if test "$ac_res" != no; then :
-+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
-+
-+$as_echo "#define HAVE_RES_NDESTROY 1" >>confdefs.h
-+
-+fi
-+
-+
-+
-+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing __res_ninit" >&5
-+$as_echo_n "checking for library containing __res_ninit... " >&6; }
-+if ${ac_cv_search___res_ninit+:} false; then :
-+ $as_echo_n "(cached) " >&6
-+else
-+ ac_func_search_save_LIBS=$LIBS
-+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-+/* end confdefs.h. */
-+
-+/* Override any GCC internal prototype to avoid an error.
-+ Use char because int might match the return type of a GCC
-+ builtin and then its argument prototype would still apply. */
-+#ifdef __cplusplus
-+extern "C"
-+#endif
-+char __res_ninit ();
-+int
-+main ()
-+{
-+return __res_ninit ();
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+for ac_lib in '' resolv; do
-+ if test -z "$ac_lib"; then
-+ ac_res="none required"
-+ else
-+ ac_res=-l$ac_lib
-+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
-+ fi
-+ if ac_fn_c_try_link "$LINENO"; then :
-+ ac_cv_search___res_ninit=$ac_res
-+fi
-+rm -f core conftest.err conftest.$ac_objext \
-+ conftest$ac_exeext
-+ if ${ac_cv_search___res_ninit+:} false; then :
-+ break
-+fi
-+done
-+if ${ac_cv_search___res_ninit+:} false; then :
-+
-+else
-+ ac_cv_search___res_ninit=no
-+fi
-+rm conftest.$ac_ext
-+LIBS=$ac_func_search_save_LIBS
-+fi
-+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search___res_ninit" >&5
-+$as_echo "$ac_cv_search___res_ninit" >&6; }
-+ac_res=$ac_cv_search___res_ninit
-+if test "$ac_res" != no; then :
-+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
-+
-+$as_echo "#define HAVE_RES_NINIT 1" >>confdefs.h
-+
-+fi
-+
-+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing __res_ndestroy" >&5
-+$as_echo_n "checking for library containing __res_ndestroy... " >&6; }
-+if ${ac_cv_search___res_ndestroy+:} false; then :
-+ $as_echo_n "(cached) " >&6
-+else
-+ ac_func_search_save_LIBS=$LIBS
-+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-+/* end confdefs.h. */
-+
-+/* Override any GCC internal prototype to avoid an error.
-+ Use char because int might match the return type of a GCC
-+ builtin and then its argument prototype would still apply. */
-+#ifdef __cplusplus
-+extern "C"
-+#endif
-+char __res_ndestroy ();
-+int
-+main ()
-+{
-+return __res_ndestroy ();
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+for ac_lib in '' resolv; do
-+ if test -z "$ac_lib"; then
-+ ac_res="none required"
-+ else
-+ ac_res=-l$ac_lib
-+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
-+ fi
-+ if ac_fn_c_try_link "$LINENO"; then :
-+ ac_cv_search___res_ndestroy=$ac_res
-+fi
-+rm -f core conftest.err conftest.$ac_objext \
-+ conftest$ac_exeext
-+ if ${ac_cv_search___res_ndestroy+:} false; then :
-+ break
-+fi
-+done
-+if ${ac_cv_search___res_ndestroy+:} false; then :
-+
-+else
-+ ac_cv_search___res_ndestroy=no
-+fi
-+rm conftest.$ac_ext
-+LIBS=$ac_func_search_save_LIBS
-+fi
-+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search___res_ndestroy" >&5
-+$as_echo "$ac_cv_search___res_ndestroy" >&6; }
-+ac_res=$ac_cv_search___res_ndestroy
-+if test "$ac_res" != no; then :
-+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
-+
-+$as_echo "#define HAVE_RES_NDESTROY 1" >>confdefs.h
-+
-+fi
-+
-+
-+
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for idn_free in -lidn" >&5
- $as_echo_n "checking for idn_free in -lidn... " >&6; }
- if ${ac_cv_lib_idn_idn_free+:} false; then :
diff --git a/mail/opendmarc/patches/patch-configure.ac b/mail/opendmarc/patches/patch-configure.ac
index 2fdd1c2d3da..7959e59878c 100644
--- a/mail/opendmarc/patches/patch-configure.ac
+++ b/mail/opendmarc/patches/patch-configure.ac
@@ -1,24 +1,29 @@
-$NetBSD: patch-configure.ac,v 1.2 2020/07/27 20:41:10 oster Exp $
+$NetBSD: patch-configure.ac,v 1.3 2020/12/24 01:10:23 manu Exp $
-Add appropriate flags if res_ndestroy(), __res_ninit(), or
-__res_ndestroy() are found.
+Search for res_ndestroy and use it instead of res_nclose if available
---- configure.ac.orig 2015-02-23 20:31:50.000000000 +0000
-+++ configure.ac
-@@ -126,6 +126,16 @@ AC_CHECK_LIB(resolv, inet_aton, , , [-ln
+--- configure.ac.orig 2020-09-22 02:55:01.853002338 +0200
++++ configure.ac 2020-09-22 02:55:47.922944675 +0200
+@@ -138,8 +138,22 @@
+ [return res_ninit(NULL);])])
AC_SEARCH_LIBS(res_ninit, resolv,
AC_DEFINE(HAVE_RES_NINIT, 1,
[Define to 1 if you have the `res_ninit()' function.]))
-+AC_SEARCH_LIBS(res_ndestroy, resolv,
-+ AC_DEFINE(HAVE_RES_NDESTROY, 1,
-+ [Define to 1 if you have the `res_ndestroy()' function.]))
-+AC_SEARCH_LIBS(__res_ninit, resolv,
-+ AC_DEFINE(HAVE_RES_NINIT, 1,
-+ [Define to 1 if you have the `__res_ninit()' function.]))
-+AC_SEARCH_LIBS(__res_ndestroy, resolv,
-+ AC_DEFINE(HAVE_RES_NDESTROY, 1,
-+ [Define to 1 if you have the `__res_ndestroy()' function.]))
++AC_MSG_CHECKING([if res_ndestroy is available])
++AC_LINK_IFELSE([AC_LANG_PROGRAM([
++ #include <sys/types.h>
++ #include <netinet/in.h>
++ #include <arpa/nameser.h>
++ #include <resolv.h>
++ ],[
++ struct __res_state res;
++ res_ndestroy(&res);
++ ])], [AC_DEFINE([HAVE_RES_NDESTROY], [1],
++ [we have res_ndestroy]) res_ndestroy=yes],
++ [res_ndestroy=no])
++AC_MSG_RESULT([$res_ndestroy])
+
+ m4_rename_force([saved_AC_LANG_CALL], [AC_LANG_CALL])
AC_CHECK_LIB(idn, idn_free)
AC_CHECK_LIB(rt, nanosleep)
AC_SEARCH_LIBS(inet_addr, nsl)
diff --git a/mail/opendmarc/patches/patch-libopendmarc_opendmarc__dns.c b/mail/opendmarc/patches/patch-libopendmarc_opendmarc__dns.c
index 22c1d4e8f3c..8782233c0bb 100644
--- a/mail/opendmarc/patches/patch-libopendmarc_opendmarc__dns.c
+++ b/mail/opendmarc/patches/patch-libopendmarc_opendmarc__dns.c
@@ -1,18 +1,29 @@
-$NetBSD: patch-libopendmarc_opendmarc__dns.c,v 1.1 2020/07/27 20:41:10 oster Exp $
+$NetBSD: patch-libopendmarc_opendmarc__dns.c,v 1.2 2020/12/24 01:10:23 manu Exp $
-Patch from Roy Marples: if we have res_ndestroy(), use that in place of just res_nclose().
+Make sure res_init works on zeroed structure
+Search for res_ndestroy and use it instead of res_nclose if available
---- libopendmarc/opendmarc_dns.c.orig 2015-02-23 20:31:51.000000000 +0000
-+++ libopendmarc/opendmarc_dns.c
-@@ -211,7 +211,11 @@ dmarc_dns_get_record(char *domain, int *
+--- libopendmarc/opendmarc_dns.c.orig 2018-11-15 01:58:31.000000000 +0100
++++ libopendmarc/opendmarc_dns.c 2020-12-23 15:57:30.488718786 +0100
+@@ -201,16 +201,21 @@
+ while (*bp == '.')
+ ++bp;
+
+ #ifdef HAVE_RES_NINIT
++ memset(&resp, 0, sizeof(resp));
+ res_ninit(&resp);
+ #ifdef RES_USE_DNSSEC
+ resp.options |= RES_USE_DNSSEC;
+ #endif
(void) opendmarc_policy_library_dns_hook(&resp.nscount,
&resp.nsaddr_list);
answer_len = res_nquery(&resp, bp, C_IN, T_TXT, answer_buf, sizeof answer_buf);
+#ifdef HAVE_RES_NDESTROY
+ res_ndestroy(&resp);
-+#else
++#else /* HAVE_RES_NDESTROY */
res_nclose(&resp);
-+#endif
++#endif /* HAVE_RES_NDESTROY */
#else /* HAVE_RES_NINIT */
- #if defined RES_USE_DNSSEC
+ res_init();
+ #ifdef RES_USE_DNSSEC
_res.options |= RES_USE_DNSSEC;
diff --git a/mail/opendmarc/patches/patch-libopendmarc_opendmarc__spf__dns.c b/mail/opendmarc/patches/patch-libopendmarc_opendmarc__spf__dns.c
index 46d1fe926ad..3275c686d6c 100644
--- a/mail/opendmarc/patches/patch-libopendmarc_opendmarc__spf__dns.c
+++ b/mail/opendmarc/patches/patch-libopendmarc_opendmarc__spf__dns.c
@@ -1,66 +1,71 @@
-$NetBSD: patch-libopendmarc_opendmarc__spf__dns.c,v 1.1 2020/07/27 20:41:10 oster Exp $
-
-Patch from Roy Marples: if we have res_ndestroy(), use that in place of just res_nclose().
-
---- libopendmarc/opendmarc_spf_dns.c.orig 2015-02-23 20:31:51.000000000 +0000
-+++ libopendmarc/opendmarc_spf_dns.c
-@@ -108,7 +108,11 @@ opendmarc_spf_dns_lookup_a_actual(char *
+--- libopendmarc/opendmarc_spf_dns.c.orig 2020-09-22 03:01:49.272695446 +0200
++++ libopendmarc/opendmarc_spf_dns.c 2020-09-22 03:05:01.660275230 +0200
+@@ -107,9 +107,13 @@
+ ++bp;
#ifdef HAVE_RES_NINIT
k = res_nquery(&resp, bp, C_IN, sought, a_buf, sizeof a_buf);
+#ifdef HAVE_RES_NDESTROY
+ res_ndestroy(&resp);
-+#else
++#else /* HAVE_RES_NDESTROY */
res_nclose(&resp);
-+#endif
++#endif /* HAVE_RES_NDESTROY */
#else /* HAVE_RES_NINIT */
k = res_query(bp, C_IN, sought, a_buf, sizeof a_buf);
#endif /* HAVE_RES_NINIT */
-@@ -253,7 +257,11 @@ opendmarc_spf_dns_lookup_mx(char *domain
+ if (k < 0)
+@@ -252,9 +256,13 @@
+ #ifdef HAVE_RES_NINIT
memset(&resp, '\0', sizeof resp);
res_ninit(&resp);
k = res_nquery(&resp, domain, C_IN, T_MX, (u_char *) &q, sizeof(q));
+#ifdef HAVE_RES_NDESTROY
+ res_ndestroy(&resp);
-+#else
++#else /* HAVE_RES_NDESTROY */
res_nclose(&resp);
-+#endif
++#endif /* HAVE_RES_NDESTROY */
#else /* HAVE_RES_NINIT */
k = res_query(domain, C_IN, T_MX, (u_char *) &q, sizeof(q));
#endif /* HAVE_RES_NINIT */
-@@ -366,7 +374,11 @@ opendmarc_spf_dns_lookup_ptr(char *ip, c
+
+@@ -365,9 +373,13 @@
+ #ifdef HAVE_RES_NINIT
memset(&resp, '\0', sizeof resp);
res_ninit(&resp);
k = res_nquery(&resp, (char *)buf, C_IN, T_PTR, (u_char *) &q, sizeof(q));
+#ifdef HAVE_RES_NDESTROY
+ res_ndestroy(&resp);
-+#else
++#else /* HAVE_RES_NDESTROY */
res_nclose(&resp);
-+#endif
++#endif /* HAVE_RES_NDESTROY */
#else /* HAVE_RES_NINIT */
k = res_query((char *)buf, C_IN, T_PTR, (u_char *) &q, sizeof(q));
#endif /* HAVE_RES_NINIT */
-@@ -461,7 +473,11 @@ opendmarc_spf_dns_does_domain_exist(char
+
+@@ -460,9 +472,13 @@
+ #ifdef T_AAAA
(void) res_nquery(&resp, domain, C_IN, T_AAAA, aaaa_q, sizeof aaaa_q);
#endif /* T_AAAA */
(void) res_nquery(&resp, domain, C_IN, T_MX, mx_q, sizeof mx_q);
+#ifdef HAVE_RES_NDESTROY
+ res_ndestroy(&resp);
-+#else
++#else /* HAVE_RES_NDESTROY */
res_nclose(&resp);
-+#endif
++#endif /* HAVE_RES_NDESTROY */
#else /* HAVE_RES_NINIT */
(void) res_query(domain, C_IN, T_A, a_q, sizeof a_q);
#ifdef T_AAAA
-@@ -603,13 +619,21 @@ opendmarc_spf_dns_get_record(char *domai
+ (void) res_query(domain, C_IN, T_AAAA, aaaa_q, sizeof aaaa_q);
+@@ -602,15 +618,23 @@
+ goto got_spf_record;
}
*rp = h_errno;
#ifdef HAVE_RES_NINIT
+#ifdef HAVE_RES_NDESTROY
+ res_ndestroy(&resp);
-+#else
++#else /* HAVE_RES_NDESTROY */
res_nclose(&resp);
-+#endif
++#endif /* HAVE_RES_NDESTROY */
#endif /* HAVE_RES_NINIT */
return NULL;
}
@@ -68,9 +73,10 @@ Patch from Roy Marples: if we have res_ndestroy(), use that in place of just res
#ifdef HAVE_RES_NINIT
+#ifdef HAVE_RES_NDESTROY
+ res_ndestroy(&resp);
-+#else
++#else /* HAVE_RES_NDESTROY */
res_nclose(&resp);
-+#endif
++#endif /* HAVE_RES_NDESTROY */
#endif /* HAVE_RES_NINIT */
if (k > (int)(sizeof txt_buf))
+ k = sizeof txt_buf;