Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
HardenedBSD
HardenedBSD
Commits
5bcd892e
Commit
5bcd892e
authored
Mar 05, 2016
by
Dag-Erling Smørgrav
Browse files
import unbound 1.5.8
parent
e24c5f97
Changes
63
Expand all
Hide whitespace changes
Inline
Side-by-side
Makefile.in
View file @
5bcd892e
...
...
@@ -54,6 +54,7 @@ LEX=@LEX@
STRIP
=
@STRIP@
CC
=
@CC@
CPPFLAGS
=
-I
.
@CPPFLAGS@
PYTHON_CPPFLAGS
=
-I
.
@PYTHON_CPPFLAGS@
CFLAGS
=
@CFLAGS@
LDFLAGS
=
@LDFLAGS@
LIBS
=
@LIBS@
...
...
@@ -216,14 +217,14 @@ WINAPPS=@WINAPPS@
WIN_DAEMON_THE_SRC
=
winrc/win_svc.c winrc/w_inst.c
SVCINST_SRC
=
winrc/unbound-service-install.c
SVCINST_OBJ
=
unbound-service-install.lo
SVCINST_OBJ_LINK
=
$(SVCINST_OBJ)
w_inst.lo rsrc_svcinst.o
$(COMPAT_OBJ_WITHOUT_CTIME)
SVCINST_OBJ_LINK
=
$(SVCINST_OBJ)
w_inst.lo rsrc_svcinst.o
$(COMPAT_OBJ_WITHOUT_CTIME
ARC4
)
SVCUNINST_SRC
=
winrc/unbound-service-remove.c
SVCUNINST_OBJ
=
unbound-service-remove.lo
SVCUNINST_OBJ_LINK
=
$(SVCUNINST_OBJ)
w_inst.lo rsrc_svcuninst.o
\
$(COMPAT_OBJ_WITHOUT_CTIME)
$(COMPAT_OBJ_WITHOUT_CTIME
ARC4
)
ANCHORUPD_SRC
=
winrc/anchor-update.c
ANCHORUPD_OBJ
=
anchor-update.lo
ANCHORUPD_OBJ_LINK
=
$(ANCHORUPD_OBJ)
rsrc_anchorupd.o
$(COMPAT_OBJ_WITHOUT_CTIME)
ANCHORUPD_OBJ_LINK
=
$(ANCHORUPD_OBJ)
rsrc_anchorupd.o
$(COMPAT_OBJ_WITHOUT_CTIME
ARC4
)
RSRC_OBJ
=
rsrc_svcinst.o rsrc_svcuninst.o rsrc_anchorupd.o rsrc_unbound.o
\
rsrc_unbound_host.o rsrc_unbound_anchor.o rsrc_unbound_control.o
\
rsrc_unbound_checkconf.o
...
...
@@ -243,7 +244,7 @@ ALL_OBJ=$(COMMON_OBJ) $(UNITTEST_OBJ) $(DAEMON_OBJ) \
$(COMPAT_OBJ)
$(PYUNBOUND_OBJ)
\
$(SVCINST_OBJ)
$(SVCUNINST_OBJ)
$(ANCHORUPD_OBJ)
$(SLDNS_OBJ)
COMPILE
=
$(LIBTOOL)
--tag
=
CC
--mode
=
compile
$(CC)
$(CPPFLAGS)
$(CFLAGS)
COMPILE
=
$(LIBTOOL)
--tag
=
CC
--mode
=
compile
$(CC)
$(CPPFLAGS)
$(CFLAGS)
@PTHREAD_CFLAGS_ONLY@
LINK
=
$(LIBTOOL)
--tag
=
CC
--mode
=
link
$(CC)
$(staticexe)
$(RUNTIME_PATH)
$(CPPFLAGS)
$(CFLAGS)
$(LDFLAGS)
LINK_LIB
=
$(LIBTOOL)
--tag
=
CC
--mode
=
link
$(CC)
$(RUNTIME_PATH)
$(CPPFLAGS)
$(CFLAGS)
$(LDFLAGS)
$(staticexe)
-version-info
@LIBUNBOUND_CURRENT@:@LIBUNBOUND_REVISION@:@LIBUNBOUND_AGE@
-no-undefined
...
...
@@ -353,7 +354,7 @@ delayer$(EXEEXT): $(DELAYER_OBJ_LINK)
$(LINK)
-o
$@
$(DELAYER_OBJ_LINK)
$(SSLLIB)
$(LIBS)
signit$(EXEEXT)
:
testcode/signit.c
$(CC)
$(CPPFLAGS)
$(CFLAGS)
-o
$@
testcode/signit.c
$(LDFLAGS)
-lldns
$(SSLLIB)
$(LIBS)
$(CC)
$(CPPFLAGS)
$(CFLAGS)
@PTHREAD_CFLAGS_ONLY@
-o
$@
testcode/signit.c
$(LDFLAGS)
-lldns
$(SSLLIB)
$(LIBS)
unbound.h
:
$(srcdir)/libunbound/unbound.h
sed
-e
's/@''UNBOUND_VERSION_MAJOR@/
$(UNBOUND_VERSION_MAJOR)
/'
-e
's/@''UNBOUND_VERSION_MINOR@/
$(UNBOUND_VERSION_MINOR)
/'
-e
's/@''UNBOUND_VERSION_MICRO@/
$(UNBOUND_VERSION_MICRO)
/'
<
$(srcdir)
/libunbound/unbound.h
>
$@
...
...
@@ -389,13 +390,13 @@ pythonmod.lo pythonmod.o: $(srcdir)/pythonmod/pythonmod.c config.h \
pythonmod/interface.h
:
$(srcdir)/pythonmod/interface.i config.h
@
-if
test
!
-d
pythonmod
;
then
$(INSTALL)
-d
pythonmod
;
fi
$(SWIG)
$(CPPFLAGS)
-o
$@
-python
$(srcdir)
/pythonmod/interface.i
$(SWIG)
$(
PYTHON_
CPPFLAGS)
-o
$@
-python
$(srcdir)
/pythonmod/interface.i
libunbound_wrap.lo libunbound_wrap.o
:
libunbound/python/libunbound_wrap.c
\
unbound.h
libunbound/python/libunbound_wrap.c
:
$(srcdir)/libunbound/python/libunbound.i unbound.h
@
-if
test
!
-d
libunbound/python
;
then
$(INSTALL)
-d
libunbound/python
;
fi
$(SWIG)
-python
-o
$@
$(CPPFLAGS)
-DPY_MAJOR_VERSION
=
$(PY_MAJOR_VERSION)
$(srcdir)
/libunbound/python/libunbound.i
$(SWIG)
-python
-o
$@
$(
PYTHON_
CPPFLAGS)
-DPY_MAJOR_VERSION
=
$(PY_MAJOR_VERSION)
$(srcdir)
/libunbound/python/libunbound.i
# Pyunbound python unbound wrapper
_unbound.la
:
libunbound_wrap.lo libunbound.la
...
...
@@ -506,11 +507,11 @@ install-all: all $(PYTHONMOD_INSTALL) $(PYUNBOUND_INSTALL) $(UNBOUND_EVENT_INSTA
$(INSTALL)
-m
755
-d
$(DESTDIR)$(mandir)
/man8
$(INSTALL)
-m
755
-d
$(DESTDIR)$(mandir)
/man5
$(INSTALL)
-m
755
-d
$(DESTDIR)$(mandir)
/man1
$(LIBTOOL)
--mode
=
install cp
unbound
$(EXEEXT)
$(DESTDIR)$(sbindir)
/unbound
$(EXEEXT)
$(LIBTOOL)
--mode
=
install cp
unbound-checkconf
$(EXEEXT)
$(DESTDIR)$(sbindir)
/unbound-checkconf
$(EXEEXT)
$(LIBTOOL)
--mode
=
install cp
unbound-control
$(EXEEXT)
$(DESTDIR)$(sbindir)
/unbound-control
$(EXEEXT)
$(LIBTOOL)
--mode
=
install cp
unbound-host
$(EXEEXT)
$(DESTDIR)$(sbindir)
/unbound-host
$(EXEEXT)
$(LIBTOOL)
--mode
=
install cp
unbound-anchor
$(EXEEXT)
$(DESTDIR)$(sbindir)
/unbound-anchor
$(EXEEXT)
$(LIBTOOL)
--mode
=
install cp
-f
unbound
$(EXEEXT)
$(DESTDIR)$(sbindir)
/unbound
$(EXEEXT)
$(LIBTOOL)
--mode
=
install cp
-f
unbound-checkconf
$(EXEEXT)
$(DESTDIR)$(sbindir)
/unbound-checkconf
$(EXEEXT)
$(LIBTOOL)
--mode
=
install cp
-f
unbound-control
$(EXEEXT)
$(DESTDIR)$(sbindir)
/unbound-control
$(EXEEXT)
$(LIBTOOL)
--mode
=
install cp
-f
unbound-host
$(EXEEXT)
$(DESTDIR)$(sbindir)
/unbound-host
$(EXEEXT)
$(LIBTOOL)
--mode
=
install cp
-f
unbound-anchor
$(EXEEXT)
$(DESTDIR)$(sbindir)
/unbound-anchor
$(EXEEXT)
$(INSTALL)
-c
-m
644 doc/unbound.8
$(DESTDIR)$(mandir)
/man8
$(INSTALL)
-c
-m
644 doc/unbound-checkconf.8
$(DESTDIR)$(mandir)
/man8
$(INSTALL)
-c
-m
644 doc/unbound-control.8
$(DESTDIR)$(mandir)
/man8
...
...
@@ -567,7 +568,7 @@ DEPEND_TARGET2=Makefile.in
# then, remove srcdir from the (generated) parser and lexer.
# and mention the .lo
depend
:
(
cd
$(srcdir)
;
$(CC)
$(DEPFLAG)
$(CPPFLAGS)
$(CFLAGS)
$(ALL_SRC)
$(COMPAT_SRC)
)
|
\
(
cd
$(srcdir)
;
$(CC)
$(DEPFLAG)
$(CPPFLAGS)
$(CFLAGS)
@PTHREAD_CFLAGS_ONLY@
$(ALL_SRC)
$(COMPAT_SRC)
)
|
\
sed
-e
's!'
$$
HOME
'[^ ]* !!g'
-e
's!'
$$
HOME
'[^ ]*$$!!g'
\
-e
's!/usr[^ ]* !!g'
-e
's!/usr[^ ]*$$!!g'
\
-e
's!/opt[^ ]* !!g'
-e
's!/opt[^ ]*$$!!g'
|
\
...
...
aclocal.m4
View file @
5bcd892e
This diff is collapsed.
Click to expand it.
acx_nlnetlabs.m4
View file @
5bcd892e
...
...
@@ -2,7 +2,9 @@
# Copyright 2009, Wouter Wijngaards, NLnet Labs.
# BSD licensed.
#
# Version 30
# Version 32
# 2016-01-04 -D_DEFAULT_SOURCE defined with -D_BSD_SOURCE for Linux glibc 2.20
# 2015-12-11 FLTO check for new OSX, clang.
# 2015-11-18 spelling check fix.
# 2015-11-05 ACX_SSL_CHECKS no longer adds -ldl needlessly.
# 2015-08-28 ACX_CHECK_PIE and ACX_CHECK_RELRO_NOW added.
...
...
@@ -241,7 +243,7 @@ ACX_CHECK_COMPILER_FLAG(xc99, [C99FLAG="-xc99"])
AC_CHECK_HEADERS([getopt.h time.h],,, [AC_INCLUDES_DEFAULT])
ACX_CHECK_COMPILER_FLAG_NEEDED($C99FLAG -D__EXTENSIONS__ -D_BSD_SOURCE -D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600 -D_XOPEN_SOURCE_EXTENDED=1 -D_ALL_SOURCE,
ACX_CHECK_COMPILER_FLAG_NEEDED($C99FLAG -D__EXTENSIONS__ -D_BSD_SOURCE
-D_DEFAULT_SOURCE
-D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600 -D_XOPEN_SOURCE_EXTENDED=1 -D_ALL_SOURCE,
[
#include "confdefs.h"
#include <stdlib.h>
...
...
@@ -276,9 +278,9 @@ int test() {
a = 0;
return a;
}
], [CFLAGS="$CFLAGS $C99FLAG -D__EXTENSIONS__ -D_BSD_SOURCE -D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600 -D_XOPEN_SOURCE_EXTENDED=1 -D_ALL_SOURCE"])
], [CFLAGS="$CFLAGS $C99FLAG -D__EXTENSIONS__ -D_BSD_SOURCE
-D_DEFAULT_SOURCE
-D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600 -D_XOPEN_SOURCE_EXTENDED=1 -D_ALL_SOURCE"])
ACX_CHECK_COMPILER_FLAG_NEEDED($C99FLAG -D__EXTENSIONS__ -D_BSD_SOURCE -D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600 -D_ALL_SOURCE,
ACX_CHECK_COMPILER_FLAG_NEEDED($C99FLAG -D__EXTENSIONS__ -D_BSD_SOURCE
-D_DEFAULT_SOURCE
-D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600 -D_ALL_SOURCE,
[
#include "confdefs.h"
#include <stdlib.h>
...
...
@@ -313,7 +315,7 @@ int test() {
a = 0;
return a;
}
], [CFLAGS="$CFLAGS $C99FLAG -D__EXTENSIONS__ -D_BSD_SOURCE -D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600 -D_ALL_SOURCE"])
], [CFLAGS="$CFLAGS $C99FLAG -D__EXTENSIONS__ -D_BSD_SOURCE
-D_DEFAULT_SOURCE
-D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600 -D_ALL_SOURCE"])
ACX_CHECK_COMPILER_FLAG_NEEDED($C99FLAG,
[
...
...
@@ -325,7 +327,7 @@ int test() {
}
], [CFLAGS="$CFLAGS $C99FLAG"])
ACX_CHECK_COMPILER_FLAG_NEEDED(-D_BSD_SOURCE,
ACX_CHECK_COMPILER_FLAG_NEEDED(-D_BSD_SOURCE
-D_DEFAULT_SOURCE
,
[
#include <ctype.h>
...
...
@@ -334,7 +336,7 @@ int test() {
a = isascii(32);
return a;
}
], [CFLAGS="$CFLAGS -D_BSD_SOURCE"])
], [CFLAGS="$CFLAGS -D_BSD_SOURCE
-D_DEFAULT_SOURCE
"])
ACX_CHECK_COMPILER_FLAG_NEEDED(-D_GNU_SOURCE,
[
...
...
@@ -423,7 +425,7 @@ AC_DEFUN([ACX_CHECK_FLTO], [
BAKCFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -flto"
AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])], [
if $CC $CFLAGS -o conftest conftest.c 2>&1 |
grep
"warning: no debug symbols in executable" >/dev/null; then
if $CC $CFLAGS -o conftest conftest.c 2>&1 |
$GREP -e
"warning: no debug symbols in executable"
-e "warning: object"
>/dev/null; then
CFLAGS="$BAKCFLAGS"
AC_MSG_RESULT(no)
else
...
...
@@ -1284,6 +1286,7 @@ AC_DEFUN([ACX_STRIP_EXT_FLAGS],
AC_MSG_NOTICE([Stripping extension flags...])
ACX_CFLAGS_STRIP(-D_GNU_SOURCE)
ACX_CFLAGS_STRIP(-D_BSD_SOURCE)
ACX_CFLAGS_STRIP(-D_DEFAULT_SOURCE)
ACX_CFLAGS_STRIP(-D__EXTENSIONS__)
ACX_CFLAGS_STRIP(-D_POSIX_C_SOURCE=200112)
ACX_CFLAGS_STRIP(-D_XOPEN_SOURCE=600)
...
...
@@ -1311,6 +1314,7 @@ dnl config.h part to define omitted cflags, use with ACX_STRIP_EXT_FLAGS.
AC_DEFUN([AHX_CONFIG_EXT_FLAGS],
[AHX_CONFIG_FLAG_EXT(-D_GNU_SOURCE)
AHX_CONFIG_FLAG_EXT(-D_BSD_SOURCE)
AHX_CONFIG_FLAG_EXT(-D_DEFAULT_SOURCE)
AHX_CONFIG_FLAG_EXT(-D__EXTENSIONS__)
AHX_CONFIG_FLAG_EXT(-D_POSIX_C_SOURCE=200112)
AHX_CONFIG_FLAG_EXT(-D_XOPEN_SOURCE=600)
...
...
ax_pthread.m4
View file @
5bcd892e
...
...
@@ -82,7 +82,7 @@
# modified version of the Autoconf Macro, you may extend this special
# exception to the GPL to apply to your modified version as well.
#serial 2
0
#serial 2
1
AU_ALIAS([ACX_PTHREAD], [AX_PTHREAD])
AC_DEFUN([AX_PTHREAD], [
...
...
@@ -103,8 +103,8 @@ if test x"$PTHREAD_LIBS$PTHREAD_CFLAGS" != x; then
save_LIBS="$LIBS"
LIBS="$PTHREAD_LIBS $LIBS"
AC_MSG_CHECKING([for pthread_join in LIBS=$PTHREAD_LIBS with CFLAGS=$PTHREAD_CFLAGS])
AC_TRY_LINK_FUNC(pthread_join, ax_pthread_ok=yes)
AC_MSG_RESULT($ax_pthread_ok)
AC_TRY_LINK_FUNC(
[
pthread_join
]
,
[
ax_pthread_ok=yes
]
)
AC_MSG_RESULT(
[
$ax_pthread_ok
]
)
if test x"$ax_pthread_ok" = xno; then
PTHREAD_LIBS=""
PTHREAD_CFLAGS=""
...
...
@@ -164,6 +164,20 @@ case ${host_os} in
;;
esac
# Clang doesn't consider unrecognized options an error unless we specify
# -Werror. We throw in some extra Clang-specific options to ensure that
# this doesn't happen for GCC, which also accepts -Werror.
AC_MSG_CHECKING([if compiler needs -Werror to reject unknown flags])
save_CFLAGS="$CFLAGS"
ax_pthread_extra_flags="-Werror"
CFLAGS="$CFLAGS $ax_pthread_extra_flags -Wunknown-warning-option -Wsizeof-array-argument"
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([int foo(void);],[foo()])],
[AC_MSG_RESULT([yes])],
[ax_pthread_extra_flags=
AC_MSG_RESULT([no])])
CFLAGS="$save_CFLAGS"
if test x"$ax_pthread_ok" = xno; then
for flag in $ax_pthread_flags; do
...
...
@@ -178,7 +192,7 @@ for flag in $ax_pthread_flags; do
;;
pthread-config)
AC_CHECK_PROG(ax_pthread_config, pthread-config, yes, no)
AC_CHECK_PROG(
[
ax_pthread_config
]
,
[
pthread-config
]
,
[
yes
]
,
[
no
]
)
if test x"$ax_pthread_config" = xno; then continue; fi
PTHREAD_CFLAGS="`pthread-config --cflags`"
PTHREAD_LIBS="`pthread-config --ldflags` `pthread-config --libs`"
...
...
@@ -193,7 +207,7 @@ for flag in $ax_pthread_flags; do
save_LIBS="$LIBS"
save_CFLAGS="$CFLAGS"
LIBS="$PTHREAD_LIBS $LIBS"
CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
CFLAGS="$CFLAGS $PTHREAD_CFLAGS
$ax_pthread_extra_flags
"
# Check for various functions. We must include pthread.h,
# since some functions may be macros. (On the Sequent, we
...
...
@@ -219,7 +233,7 @@ for flag in $ax_pthread_flags; do
LIBS="$save_LIBS"
CFLAGS="$save_CFLAGS"
AC_MSG_RESULT($ax_pthread_ok)
AC_MSG_RESULT(
[
$ax_pthread_ok
]
)
if test "x$ax_pthread_ok" = xyes; then
break;
fi
...
...
@@ -245,9 +259,9 @@ if test "x$ax_pthread_ok" = xyes; then
[attr_name=$attr; break],
[])
done
AC_MSG_RESULT($attr_name)
AC_MSG_RESULT(
[
$attr_name
]
)
if test "$attr_name" != PTHREAD_CREATE_JOINABLE; then
AC_DEFINE_UNQUOTED(PTHREAD_CREATE_JOINABLE, $attr_name,
AC_DEFINE_UNQUOTED(
[
PTHREAD_CREATE_JOINABLE
]
,
[
$attr_name
]
,
[Define to necessary symbol if this constant
uses a non-standard name on your system.])
fi
...
...
@@ -261,24 +275,25 @@ if test "x$ax_pthread_ok" = xyes; then
if test "$GCC" = "yes"; then
flag="-D_REENTRANT"
else
# TODO: What about Clang on Solaris?
flag="-mt -D_REENTRANT"
fi
;;
esac
AC_MSG_RESULT($
{
flag
}
)
AC_MSG_RESULT(
[
$flag
]
)
if test "x$flag" != xno; then
PTHREAD_CFLAGS="$flag $PTHREAD_CFLAGS"
fi
AC_CACHE_CHECK([for PTHREAD_PRIO_INHERIT],
ax_cv_PTHREAD_PRIO_INHERIT, [
AC_LINK_IFELSE([
AC_LANG_PROGRAM([[#include <pthread.h>]],
[[int i = PTHREAD_PRIO_INHERIT;]])],
[
ax_cv_PTHREAD_PRIO_INHERIT
]
, [
AC_LINK_IFELSE([
AC_LANG_PROGRAM([[#include <pthread.h>]],
[[int i = PTHREAD_PRIO_INHERIT;]])],
[ax_cv_PTHREAD_PRIO_INHERIT=yes],
[ax_cv_PTHREAD_PRIO_INHERIT=no])
])
AS_IF([test "x$ax_cv_PTHREAD_PRIO_INHERIT" = "xyes"],
AC_DEFINE([HAVE_PTHREAD_PRIO_INHERIT],
1
, [Have PTHREAD_PRIO_INHERIT.]))
[
AC_DEFINE([HAVE_PTHREAD_PRIO_INHERIT],
[1]
, [Have PTHREAD_PRIO_INHERIT.])
]
)
LIBS="$save_LIBS"
CFLAGS="$save_CFLAGS"
...
...
@@ -301,13 +316,13 @@ fi
test -n "$PTHREAD_CC" || PTHREAD_CC="$CC"
AC_SUBST(PTHREAD_LIBS)
AC_SUBST(PTHREAD_CFLAGS)
AC_SUBST(PTHREAD_CC)
AC_SUBST(
[
PTHREAD_LIBS
]
)
AC_SUBST(
[
PTHREAD_CFLAGS
]
)
AC_SUBST(
[
PTHREAD_CC
]
)
# Finally, execute ACTION-IF-FOUND/ACTION-IF-NOT-FOUND:
if test x"$ax_pthread_ok" = xyes; then
ifelse([$1],,AC_DEFINE(HAVE_PTHREAD
,1
,[Define if you have POSIX threads libraries and header files.]),[$1])
ifelse([$1],,
[
AC_DEFINE(
[
HAVE_PTHREAD
],[1]
,[Define if you have POSIX threads libraries and header files.])
]
,[$1])
:
else
ax_pthread_ok=no
...
...
config.h.in
View file @
5bcd892e
...
...
@@ -242,6 +242,9 @@
/* Define to 1 if you have the <netinet/in.h> header file. */
#undef HAVE_NETINET_IN_H
/* Define to 1 if you have the <netinet/tcp.h> header file. */
#undef HAVE_NETINET_TCP_H
/* Use libnettle for crypto */
#undef HAVE_NETTLE
...
...
@@ -293,7 +296,7 @@
/* Define to 1 if you have the `recvmsg' function. */
#undef HAVE_RECVMSG
/*
D
efine
to 1
if you have the
`
sbrk
' function.
*/
/*
d
efine if you have the sbrk
() call
*/
#undef HAVE_SBRK
/* Define to 1 if you have the `sendmsg' function. */
...
...
@@ -461,8 +464,7 @@
/* if lex has yylex_destroy */
#undef LEX_HAS_YYLEX_DESTROY
/* Define to the sub-directory in which libtool stores uninstalled libraries.
*/
/* Define to the sub-directory where libtool stores uninstalled libraries. */
#undef LT_OBJDIR
/* Define to the maximum message length to pass to syslog. */
...
...
@@ -484,6 +486,9 @@
/* Put -D_BSD_SOURCE define in config.h */
#undef OMITTED__D_BSD_SOURCE
/* Put -D_DEFAULT_SOURCE define in config.h */
#undef OMITTED__D_DEFAULT_SOURCE
/* Put -D_GNU_SOURCE define in config.h */
#undef OMITTED__D_GNU_SOURCE
...
...
@@ -738,6 +743,10 @@
#define _BSD_SOURCE 1
#endif
#if defined(OMITTED__D_DEFAULT_SOURCE) && !defined(_DEFAULT_SOURCE)
#define _DEFAULT_SOURCE 1
#endif
#if defined(OMITTED__D__EXTENSIONS__) && !defined(__EXTENSIONS__)
#define __EXTENSIONS__ 1
#endif
...
...
@@ -811,6 +820,10 @@
#include <netinet/in.h>
#endif
#ifdef HAVE_NETINET_TCP_H
#include <netinet/tcp.h>
#endif
#ifdef HAVE_ARPA_INET_H
#include <arpa/inet.h>
#endif
...
...
configure
View file @
5bcd892e
This source diff could not be displayed because it is too large. You can
view the blob
instead.
configure.ac
View file @
5bcd892e
...
...
@@ -10,15 +10,15 @@ sinclude(dnstap/dnstap.m4)
# must be numbers. ac_defun because of later processing
m4_define([VERSION_MAJOR],[1])
m4_define([VERSION_MINOR],[5])
m4_define([VERSION_MICRO],[
7
])
m4_define([VERSION_MICRO],[
8
])
AC_INIT(unbound, m4_defn([VERSION_MAJOR]).m4_defn([VERSION_MINOR]).m4_defn([VERSION_MICRO]), unbound-bugs@nlnetlabs.nl, unbound)
AC_SUBST(UNBOUND_VERSION_MAJOR, [VERSION_MAJOR])
AC_SUBST(UNBOUND_VERSION_MINOR, [VERSION_MINOR])
AC_SUBST(UNBOUND_VERSION_MICRO, [VERSION_MICRO])
LIBUNBOUND_CURRENT=
5
LIBUNBOUND_REVISION=
1
0
LIBUNBOUND_AGE=
3
LIBUNBOUND_CURRENT=
6
LIBUNBOUND_REVISION=0
LIBUNBOUND_AGE=
4
# 1.0.0 had 0:12:0
# 1.0.1 had 0:13:0
# 1.0.2 had 0:14:0
...
...
@@ -64,6 +64,7 @@ LIBUNBOUND_AGE=3
# 1.5.5 had 5:8:3
# 1.5.6 had 5:9:3
# 1.5.7 had 5:10:3
# 1.5.8 had 6:0:4 # adds ub_ctx_set_stub
# Current -- the number of the binary API that we're implementing
# Revision -- which iteration of the implementation of the binary
...
...
@@ -276,7 +277,7 @@ AC_CHECK_TOOL(STRIP, strip)
ACX_LIBTOOL_C_ONLY
# Checks for header files.
AC_CHECK_HEADERS([stdarg.h stdbool.h netinet/in.h sys/param.h sys/socket.h sys/un.h sys/uio.h sys/resource.h arpa/inet.h syslog.h netdb.h sys/wait.h pwd.h glob.h grp.h login_cap.h winsock2.h ws2tcpip.h endian.h],,, [AC_INCLUDES_DEFAULT])
AC_CHECK_HEADERS([stdarg.h stdbool.h netinet/in.h
netinet/tcp.h
sys/param.h sys/socket.h sys/un.h sys/uio.h sys/resource.h arpa/inet.h syslog.h netdb.h sys/wait.h pwd.h glob.h grp.h login_cap.h winsock2.h ws2tcpip.h endian.h],,, [AC_INCLUDES_DEFAULT])
# check for types.
# Using own tests for int64* because autoconf builtin only give 32bit.
...
...
@@ -417,6 +418,36 @@ if test x_$withval != x_no; then
CC="$PTHREAD_CC"
ub_have_pthreads=yes
AC_CHECK_TYPES([pthread_spinlock_t, pthread_rwlock_t],,,[#include <pthread.h>])
if echo "$CFLAGS" | $GREP -e "-pthread" >/dev/null; then
AC_MSG_CHECKING([if -pthread unused during linking])
# catch clang warning 'argument unused during compilation'
AC_LANG_CONFTEST([AC_LANG_SOURCE(AC_INCLUDES_DEFAULT
[[
int main(void) {return 0;}
]])])
pthread_unused="yes"
# first compile
echo "$CC $CFLAGS -c conftest.c -o conftest.o" >&AS_MESSAGE_LOG_FD
$CC $CFLAGS -c conftest.c -o conftest.o 2>&AS_MESSAGE_LOG_FD >&AS_MESSAGE_LOG_FD
if test $? = 0; then
# then link
echo "$CC $CFLAGS -Werror $LDFLAGS $LIBS -o conftest contest.o" >&AS_MESSAGE_LOG_FD
$CC $CFLAGS -Werror $LDFLAGS $LIBS -o conftest conftest.o 2>&AS_MESSAGE_LOG_FD >&AS_MESSAGE_LOG_FD
if test $? -ne 0; then
AC_MSG_RESULT(yes)
CFLAGS=`echo "$CFLAGS" | sed -e 's/-pthread//'`
PTHREAD_CFLAGS_ONLY="-pthread"
AC_SUBST(PTHREAD_CFLAGS_ONLY)
else
AC_MSG_RESULT(no)
fi
else
AC_MSG_RESULT(no)
fi # endif cc successful
rm -f conftest conftest.c conftest.o
fi # endif -pthread in CFLAGS
])
fi
...
...
@@ -999,6 +1030,10 @@ AC_INCLUDES_DEFAULT
#include <netinet/in.h>
#endif
#ifdef HAVE_NETINET_TCP_H
#include <netinet/tcp.h>
#endif
#ifdef HAVE_ARPA_INET_H
#include <arpa/inet.h>
#endif
...
...
@@ -1012,10 +1047,23 @@ AC_INCLUDES_DEFAULT
#endif
])
AC_SEARCH_LIBS([setusercontext], [util])
AC_CHECK_FUNCS([tzset sigprocmask fcntl getpwnam getrlimit setrlimit setsid
sbrk
chroot kill chown sleep usleep random srandom recvmsg sendmsg writev socketpair glob initgroups strftime localtime_r setusercontext _beginthreadex endservent endprotoent fsync])
AC_CHECK_FUNCS([tzset sigprocmask fcntl getpwnam getrlimit setrlimit setsid chroot kill chown sleep usleep random srandom recvmsg sendmsg writev socketpair glob initgroups strftime localtime_r setusercontext _beginthreadex endservent endprotoent fsync])
AC_CHECK_FUNCS([setresuid],,[AC_CHECK_FUNCS([setreuid])])
AC_CHECK_FUNCS([setresgid],,[AC_CHECK_FUNCS([setregid])])
AC_MSG_CHECKING([for sbrk])
# catch the warning of deprecated sbrk
old_cflags="$CFLAGS"
CFLAGS="$CFLAGS -Werror"
AC_COMPILE_IFELSE([AC_LANG_SOURCE(AC_INCLUDES_DEFAULT
[[
int main(void) { void* cur = sbrk(0); printf("%u\n", (unsigned)(size_t)((char*)cur - (char*)sbrk(0))); return 0; }
]])], [
AC_MSG_RESULT(yes)
AC_DEFINE(HAVE_SBRK, 1, [define if you have the sbrk() call])
], [AC_MSG_RESULT(no)])
CFLAGS="$old_cflags"
# check if setreuid en setregid fail, on MacOSX10.4(darwin8).
if echo $build_os | grep darwin8 > /dev/null; then
AC_DEFINE(DARWIN_BROKEN_SETREUID, 1, [Define this if on macOSX10.4-darwin8 and setreuid and setregid do not work])
...
...
@@ -1250,6 +1298,10 @@ dnl includes
#include <netinet/in.h>
#endif
#ifdef HAVE_NETINET_TCP_H
#include <netinet/tcp.h>
#endif
#ifdef HAVE_ARPA_INET_H
#include <arpa/inet.h>
#endif
...
...
contrib/aaaa-filter-iterator.patch
View file @
5bcd892e
--- unbound-1.4.17.orig/doc/unbound.conf.5.in
+++ unbound-1.4.17/doc/unbound.conf.5.in
@@ -519,6 +519,13 @@
authority servers and checks if the repl
Disabled by default.
This feature is an experimental implementation of draft dns\-0x20.
Index: trunk/doc/unbound.conf.5.in
===================================================================
--- trunk/doc/unbound.conf.5.in (revision 3587)
+++ trunk/doc/unbound.conf.5.in (working copy)
@@ -593,6 +593,13 @@
possible. Best effort approach, full QNAME and original QTYPE will be sent when
upstream replies with a RCODE other than NOERROR. Default is off.
.TP
+.B aaaa\-filter: \fI<yes or no>
+Activate behavior similar to BIND's AAAA-filter.
...
...
@@ -13,20 +15,12 @@
+.TP
.B private\-address: \fI<IP address or subnet>
Give IPv4 of IPv6 addresses or classless subnets. These are addresses
on your private network, and are not allowed to be returned for public
--- unbound-1.4.17.orig/util/config_file.c
+++ unbound-1.4.17/util/config_file.c
@@ -160,6 +160,7 @@
config_create(void)
cfg->harden_below_nxdomain = 0;
cfg->harden_referral_path = 0;
cfg->use_caps_bits_for_id = 0;
+ cfg->aaaa_filter = 0; /* ASN: default is disabled */
cfg->private_address = NULL;
cfg->private_domain = NULL;
cfg->unwanted_threshold = 0;
--- unbound-1.4.17.orig/iterator/iter_scrub.c
+++ unbound-1.4.17/iterator/iter_scrub.c
@@ -580,6 +580,32 @@
static int sanitize_nsec_is_overreach(st
on your private network, and are not allowed to be returned for
Index: trunk/iterator/iter_scrub.c
===================================================================
--- trunk/iterator/iter_scrub.c (revision 3587)
+++ trunk/iterator/iter_scrub.c (working copy)
@@ -617,6 +617,32 @@
}
/**
...
...
@@ -38,7 +32,7 @@
+ */
+static int
+asn_lookup_a_record_from_cache(struct query_info* qinfo,
+ struct module_env* env, struct iter_env* ie)
+ struct module_env* env, struct iter_env*
ATTR_UNUSED(
ie)
)
+{
+ struct ub_packed_rrset_key* akey;
+
...
...
@@ -59,7 +53,7 @@
* Given a response event, remove suspect RRsets from the response.
* "Suspect" rrsets are potentially poison. Note that this routine expects
* the response to be in a "normalized" state -- that is, all "irrelevant"
@@ -
598
,6 +6
25
,7 @@
scrub_sanitize(ldns_buffer* pkt, struct
@@ -
635
,6 +6
61
,7 @@
struct query_info* qinfo, uint8_t* zonename, struct module_env* env,
struct iter_env* ie)
{
...
...
@@ -67,7 +61,7 @@
int del_addi = 0; /* if additional-holding rrsets are deleted, we
do not trust the normalized additional-A-AAAA any more */
struct rrset_parse* rrset, *prev;
@@ -6
33
,6 +6
61
,13 @@
scrub_sanitize(ldns_buffer* pkt, struct
@@ -6
70
,6 +6
97
,13 @@
rrset = rrset->rrset_all_next;
}
...
...
@@ -81,7 +75,7 @@
/* At this point, we brutally remove ALL rrsets that aren't
* children of the originating zone. The idea here is that,
* as far as we know, the server that we contacted is ONLY
@@ -6
44
,6 +
679
,24 @@
scrub_sanitize(ldns_buffer* pkt, struct
@@ -6
81
,6 +
715
,24 @@
rrset = msg->rrset_first;
while(rrset) {
...
...
@@ -105,10 +99,24 @@
+
/* remove private addresses */
if( (rrset->type == LDNS_RR_TYPE_A ||
rrset->type == LDNS_RR_TYPE_AAAA) &&
--- unbound-1.4.17.orig/iterator/iterator.c
+++ unbound-1.4.17/iterator/iterator.c
@@ -1579,6 +1579,53 @@
processDSNSFind(struct module_qstate* qs
rrset->type == LDNS_RR_TYPE_AAAA)) {
Index: trunk/iterator/iter_utils.c
===================================================================
--- trunk/iterator/iter_utils.c (revision 3587)
+++ trunk/iterator/iter_utils.c (working copy)
@@ -175,6 +175,7 @@
}
iter_env->supports_ipv6 = cfg->do_ip6;
iter_env->supports_ipv4 = cfg->do_ip4;
+ iter_env->aaaa_filter = cfg->aaaa_filter;
return 1;
}
Index: trunk/iterator/iterator.c
===================================================================
--- trunk/iterator/iterator.c (revision 3587)
+++ trunk/iterator/iterator.c (working copy)
@@ -1776,6 +1776,53 @@
return 0;
}
...
...
@@ -128,7 +136,7 @@
+ */
+static int
+asn_processQueryAAAA(struct module_qstate* qstate, struct iter_qstate* iq,
+ struct iter_env* ie, int id)
+ struct iter_env*
ATTR_UNUSED(
ie
)
, int id)
+{
+ struct module_qstate* subq = NULL;
+
...
...
@@ -162,7 +170,7 @@
/**
* This is the request event state where the request will be sent to one of
@@ -1
626
,6 +1
673
,13 @@
processQueryTargets(struct module_qstate
@@ -1
823
,6 +1
870
,13 @@
return error_response(qstate, id, LDNS_RCODE_SERVFAIL);
}
...
...
@@ -176,7 +184,7 @@
/* Make sure we have a delegation point, otherwise priming failed
* or another failure occurred */
if(!iq->dp) {
@@ -2
568
,6 +2
622
,6
2
@@
processFinished(struct module_qstate* qs
@@ -2
922
,6 +2
976
,6
1
@@
return 0;
}
...
...
@@ -195,9 +203,8 @@
+asn_processAAAAResponse(struct module_qstate* qstate, int id,
+ struct module_qstate* super)
+{
+ struct iter_qstate* iq = (struct iter_qstate*)qstate->minfo[id];
+
/*
struct iter_qstate* iq = (struct iter_qstate*)qstate->minfo[id];
*/
+ struct iter_qstate* super_iq = (struct iter_qstate*)super->minfo[id];
+ struct ub_packed_rrset_key* rrset;
+ struct delegpt_ns* dpns = NULL;
+ int error = (qstate->return_rcode != LDNS_RCODE_NOERROR);
+
...
...
@@ -239,7 +246,7 @@
/*
* Return priming query results to interestes super querystates.
*
@@ -2
587
,6 +
2697
,9 @@
iter_inform_super(struct module_qstate*
@@ -2
941
,6 +
3050
,9 @@
else if(super->qinfo.qtype == LDNS_RR_TYPE_DS && ((struct iter_qstate*)
super->minfo[id])->state == DSNS_FIND_STATE)
processDSNSResponse(qstate, id, super);
...
...
@@ -249,7 +256,7 @@
else if(qstate->return_rcode != LDNS_RCODE_NOERROR)
error_supers(qstate, id, super);
else if(qstate->is_priming)
@@ -2
624
,6 +
2737
,9 @@
iter_handle(struct module_qstate* qstate
@@ -2
978
,6 +
3090
,9 @@
case INIT_REQUEST_3_STATE:
cont = processInitRequest3(qstate, iq, id);
break;
...
...
@@ -259,7 +266,7 @@
case QUERYTARGETS_STATE:
cont = processQueryTargets(qstate, iq, ie, id);
break;
@@ -
2863,6 +2979,8 @@
iter_state_to_string(enum iter_state sta
@@ -
3270,6 +3385,8 @@
return "INIT REQUEST STATE (stage 2)";
case INIT_REQUEST_3_STATE:
return "INIT REQUEST STATE (stage 3)";
...
...
@@ -268,7 +275,7 @@
case QUERYTARGETS_STATE :
return "QUERY TARGETS STATE";
case PRIME_RESP_STATE :
@@ -
2887
,6 +3
005
,7 @@
iter_state_is_responsestate(enum iter_st
@@ -
3294
,6 +3
411
,7 @@
case INIT_REQUEST_STATE :
case INIT_REQUEST_2_STATE :
case INIT_REQUEST_3_STATE :
...
...
@@ -276,29 +283,21 @@
case QUERYTARGETS_STATE :
case COLLECT_CLASS_STATE :
return 0;
--- unbound-1.4.17.orig/iterator/iter_utils.c
+++ unbound-1.4.17/iterator/iter_utils.c
@@ -128,6 +128,7 @@
iter_apply_cfg(struct iter_env* iter_env
}
iter_env->supports_ipv6 = cfg->do_ip6;
iter_env->supports_ipv4 = cfg->do_ip4;
+ iter_env->aaaa_filter = cfg->aaaa_filter;
return 1;
}