mirror of
https://github.com/mollyim/unbound.git
synced 2025-05-13 05:40:36 +01:00
Fix typos
This commit is contained in:
parent
3fc987955e
commit
c21d6af617
57 changed files with 87 additions and 87 deletions
|
@ -241,7 +241,7 @@ If you are working from a developer machine you probably already have the necess
|
||||||
|
|
||||||
The fourth step builds OpenSSL and Expat. OpenSSL and Expat are built for iOS using the scripts `contrib/ios/install_openssl.sh` and `contrib/ios/install_expat.sh`. The scripts download, configure and install the latest release version of the libraries. The libraries are configured with `--prefix="$IOS_PREFIX"` so the headers are placed in `$IOS_PREFIX/include` directory, and the libraries are placed in the `$IOS_PREFIX/lib` directory.
|
The fourth step builds OpenSSL and Expat. OpenSSL and Expat are built for iOS using the scripts `contrib/ios/install_openssl.sh` and `contrib/ios/install_expat.sh`. The scripts download, configure and install the latest release version of the libraries. The libraries are configured with `--prefix="$IOS_PREFIX"` so the headers are placed in `$IOS_PREFIX/include` directory, and the libraries are placed in the `$IOS_PREFIX/lib` directory.
|
||||||
|
|
||||||
`IOS_PREFIX` is the value `$HOME/$IOS_SDK-$IOS_CPU`. The scheme handles both iOS SDKs and cpu architectures so the pair recieves a unique installation directory. The libraries will be installed in `$HOME/iPhoneOS-armv7s`, `$HOME/iPhoneOS-arm64`, `$HOME/iPhoneSimulator-i386`, etc. For Autotools projects, the appropriate `PKG_CONFIG_PATH` is exported.
|
`IOS_PREFIX` is the value `$HOME/$IOS_SDK-$IOS_CPU`. The scheme handles both iOS SDKs and cpu architectures so the pair receives a unique installation directory. The libraries will be installed in `$HOME/iPhoneOS-armv7s`, `$HOME/iPhoneOS-arm64`, `$HOME/iPhoneSimulator-i386`, etc. For Autotools projects, the appropriate `PKG_CONFIG_PATH` is exported.
|
||||||
|
|
||||||
`PKG_CONFIG_PATH` is an important variable. It is the userland equivalent to sysroot, and allows Autotools to find non-system headers and libraries for an architecture. Typical `PKG_CONFIG_PATH` are `$HOME/iPhoneOS-armv7s/lib/pkgconfig` and `$HOME/iPhoneOS-arm64/lib/pkgconfig`.
|
`PKG_CONFIG_PATH` is an important variable. It is the userland equivalent to sysroot, and allows Autotools to find non-system headers and libraries for an architecture. Typical `PKG_CONFIG_PATH` are `$HOME/iPhoneOS-armv7s/lib/pkgconfig` and `$HOME/iPhoneOS-arm64/lib/pkgconfig`.
|
||||||
|
|
||||||
|
|
8
aclocal.m4
vendored
8
aclocal.m4
vendored
|
@ -622,7 +622,7 @@ m4_popdef([AS_MESSAGE_LOG_FD])])])# _LT_GENERATED_FILE_INIT
|
||||||
# LT_OUTPUT
|
# LT_OUTPUT
|
||||||
# ---------
|
# ---------
|
||||||
# This macro allows early generation of the libtool script (before
|
# This macro allows early generation of the libtool script (before
|
||||||
# AC_OUTPUT is called), incase it is used in configure for compilation
|
# AC_OUTPUT is called), in case it is used in configure for compilation
|
||||||
# tests.
|
# tests.
|
||||||
AC_DEFUN([LT_OUTPUT],
|
AC_DEFUN([LT_OUTPUT],
|
||||||
[: ${CONFIG_LT=./config.lt}
|
[: ${CONFIG_LT=./config.lt}
|
||||||
|
@ -659,7 +659,7 @@ configured by $[0], generated by m4_PACKAGE_STRING.
|
||||||
|
|
||||||
Copyright (C) 2011 Free Software Foundation, Inc.
|
Copyright (C) 2011 Free Software Foundation, Inc.
|
||||||
This config.lt script is free software; the Free Software Foundation
|
This config.lt script is free software; the Free Software Foundation
|
||||||
gives unlimited permision to copy, distribute and modify it."
|
gives unlimited permission to copy, distribute and modify it."
|
||||||
|
|
||||||
while test 0 != $[#]
|
while test 0 != $[#]
|
||||||
do
|
do
|
||||||
|
@ -2876,7 +2876,7 @@ linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
|
||||||
# Add ABI-specific directories to the system library path.
|
# Add ABI-specific directories to the system library path.
|
||||||
sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib"
|
sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib"
|
||||||
|
|
||||||
# Ideally, we could use ldconfig to report *all* directores which are
|
# Ideally, we could use ldconfig to report *all* directories which are
|
||||||
# searched for libraries, however this is still not possible. Aside from not
|
# searched for libraries, however this is still not possible. Aside from not
|
||||||
# being certain /sbin/ldconfig is available, command
|
# being certain /sbin/ldconfig is available, command
|
||||||
# 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64,
|
# 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64,
|
||||||
|
@ -9132,7 +9132,7 @@ dnl Check to see whether a particular set of modules exists. Similar to
|
||||||
dnl PKG_CHECK_MODULES(), but does not set variables or print errors.
|
dnl PKG_CHECK_MODULES(), but does not set variables or print errors.
|
||||||
dnl
|
dnl
|
||||||
dnl Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
|
dnl Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
|
||||||
dnl only at the first occurence in configure.ac, so if the first place
|
dnl only at the first occurrence in configure.ac, so if the first place
|
||||||
dnl it's called might be skipped (such as if it is within an "if", you
|
dnl it's called might be skipped (such as if it is within an "if", you
|
||||||
dnl have to call PKG_CHECK_EXISTS manually
|
dnl have to call PKG_CHECK_EXISTS manually
|
||||||
AC_DEFUN([PKG_CHECK_EXISTS],
|
AC_DEFUN([PKG_CHECK_EXISTS],
|
||||||
|
|
6
configure
vendored
6
configure
vendored
|
@ -13600,7 +13600,7 @@ fi
|
||||||
# Add ABI-specific directories to the system library path.
|
# Add ABI-specific directories to the system library path.
|
||||||
sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib"
|
sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib"
|
||||||
|
|
||||||
# Ideally, we could use ldconfig to report *all* directores which are
|
# Ideally, we could use ldconfig to report *all* directories which are
|
||||||
# searched for libraries, however this is still not possible. Aside from not
|
# searched for libraries, however this is still not possible. Aside from not
|
||||||
# being certain /sbin/ldconfig is available, command
|
# being certain /sbin/ldconfig is available, command
|
||||||
# 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64,
|
# 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64,
|
||||||
|
@ -15324,7 +15324,7 @@ if test "$ac_res" != no; then :
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
# check wether strptime also works
|
# check whether strptime also works
|
||||||
|
|
||||||
# check some functions of the OS before linking libs (while still runnable).
|
# check some functions of the OS before linking libs (while still runnable).
|
||||||
for ac_header in unistd.h
|
for ac_header in unistd.h
|
||||||
|
@ -18777,7 +18777,7 @@ $as_echo "#define CLIENT_SUBNET 1" >>confdefs.h
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
# check wether gost also works
|
# check whether gost also works
|
||||||
|
|
||||||
# Check whether --enable-gost was given.
|
# Check whether --enable-gost was given.
|
||||||
if test "${enable_gost+set}" = set; then :
|
if test "${enable_gost+set}" = set; then :
|
||||||
|
|
|
@ -435,7 +435,7 @@ dnscrypt_hrtime(void)
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Add the server nonce part to once.
|
* Add the server nonce part to once.
|
||||||
* The nonce is made half of client nonce and the seconf half of the server
|
* The nonce is made half of client nonce and the second half of the server
|
||||||
* nonce, both of them of size crypto_box_HALF_NONCEBYTES.
|
* nonce, both of them of size crypto_box_HALF_NONCEBYTES.
|
||||||
* \param[in] nonce: a uint8_t* of size crypto_box_NONCEBYTES
|
* \param[in] nonce: a uint8_t* of size crypto_box_NONCEBYTES
|
||||||
*/
|
*/
|
||||||
|
@ -674,7 +674,7 @@ dnsc_find_cert(struct dnsc_env* dnscenv, struct sldns_buffer* buffer)
|
||||||
/**
|
/**
|
||||||
* Insert local-zone and local-data into configuration.
|
* Insert local-zone and local-data into configuration.
|
||||||
* In order to be able to serve certs over TXT, we can reuse the local-zone and
|
* In order to be able to serve certs over TXT, we can reuse the local-zone and
|
||||||
* local-data config option. The zone and qname are infered from the
|
* local-data config option. The zone and qname are inferred from the
|
||||||
* provider_name and the content of the TXT record from the certificate content.
|
* provider_name and the content of the TXT record from the certificate content.
|
||||||
* returns the number of certificate TXT record that were loaded.
|
* returns the number of certificate TXT record that were loaded.
|
||||||
* < 0 in case of error.
|
* < 0 in case of error.
|
||||||
|
|
|
@ -114,7 +114,7 @@ void dnsc_delete(struct dnsc_env *env);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* handle a crypted dnscrypt request.
|
* handle a crypted dnscrypt request.
|
||||||
* Determine wether or not a query is coming over the dnscrypt listener and
|
* Determine whether or not a query is coming over the dnscrypt listener and
|
||||||
* attempt to uncurve it or detect if it is a certificate query.
|
* attempt to uncurve it or detect if it is a certificate query.
|
||||||
* return 0 in case of failure.
|
* return 0 in case of failure.
|
||||||
*/
|
*/
|
||||||
|
@ -122,7 +122,7 @@ int dnsc_handle_curved_request(struct dnsc_env* dnscenv,
|
||||||
struct comm_reply* repinfo);
|
struct comm_reply* repinfo);
|
||||||
/**
|
/**
|
||||||
* handle an unencrypted dnscrypt request.
|
* handle an unencrypted dnscrypt request.
|
||||||
* Determine wether or not a query is going over the dnscrypt channel and
|
* Determine whether or not a query is going over the dnscrypt channel and
|
||||||
* attempt to curve it unless it was not crypted like when it is a
|
* attempt to curve it unless it was not crypted like when it is a
|
||||||
* certificate query.
|
* certificate query.
|
||||||
* \return 0 in case of failure.
|
* \return 0 in case of failure.
|
||||||
|
|
|
@ -251,7 +251,7 @@ dt_msg_queue_submit(struct dt_msg_queue* mq, void* buf, size_t len)
|
||||||
entry->buf = buf;
|
entry->buf = buf;
|
||||||
entry->len = len;
|
entry->len = len;
|
||||||
|
|
||||||
/* aqcuire lock */
|
/* acquire lock */
|
||||||
lock_basic_lock(&mq->lock);
|
lock_basic_lock(&mq->lock);
|
||||||
/* if list was empty, start timer for (eventual) wakeup */
|
/* if list was empty, start timer for (eventual) wakeup */
|
||||||
if(mq->first == NULL)
|
if(mq->first == NULL)
|
||||||
|
@ -930,7 +930,7 @@ static int dtio_write_more_of_data(struct dt_io_thread* dtio)
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
/** write more of the current messsage. false if incomplete, true if
|
/** write more of the current message. false if incomplete, true if
|
||||||
* the message is done */
|
* the message is done */
|
||||||
static int dtio_write_more(struct dt_io_thread* dtio)
|
static int dtio_write_more(struct dt_io_thread* dtio)
|
||||||
{
|
{
|
||||||
|
@ -1181,7 +1181,7 @@ static int dtio_read_accept_frame(struct dt_io_thread* dtio)
|
||||||
goto close_connection;
|
goto close_connection;
|
||||||
return 1;
|
return 1;
|
||||||
} else {
|
} else {
|
||||||
/* unknow content type */
|
/* unknown content type */
|
||||||
verbose(VERB_ALGO, "dnstap: ACCEPT frame "
|
verbose(VERB_ALGO, "dnstap: ACCEPT frame "
|
||||||
"contains unknown content type, "
|
"contains unknown content type, "
|
||||||
"closing connection");
|
"closing connection");
|
||||||
|
|
|
@ -2415,7 +2415,7 @@ This option defaults to "default".
|
||||||
.P
|
.P
|
||||||
The following
|
The following
|
||||||
.B cachedb
|
.B cachedb
|
||||||
otions are specific to the redis backend.
|
options are specific to the redis backend.
|
||||||
.TP
|
.TP
|
||||||
.B redis-server-host: \fI<server address or name>\fR
|
.B redis-server-host: \fI<server address or name>\fR
|
||||||
The IP (either v6 or v4) address or domain name of the Redis server.
|
The IP (either v6 or v4) address or domain name of the Redis server.
|
||||||
|
|
|
@ -279,10 +279,10 @@ TYPEDEF_HIDES_STRUCT = NO
|
||||||
# For small to medium size projects (<1000 input files) the default value is
|
# For small to medium size projects (<1000 input files) the default value is
|
||||||
# probably good enough. For larger projects a too small cache size can cause
|
# probably good enough. For larger projects a too small cache size can cause
|
||||||
# doxygen to be busy swapping symbols to and from disk most of the time
|
# doxygen to be busy swapping symbols to and from disk most of the time
|
||||||
# causing a significant performance penality.
|
# causing a significant performance penalty.
|
||||||
# If the system has enough physical memory increasing the cache will improve the
|
# If the system has enough physical memory increasing the cache will improve the
|
||||||
# performance by keeping more symbols in memory. Note that the value works on
|
# performance by keeping more symbols in memory. Note that the value works on
|
||||||
# a logarithmic scale so increasing the size by one will rougly double the
|
# a logarithmic scale so increasing the size by one will roughly double the
|
||||||
# memory usage. The cache size is given by this formula:
|
# memory usage. The cache size is given by this formula:
|
||||||
# 2^(16+SYMBOL_CACHE_SIZE). The valid range is 0..9, the default is 0,
|
# 2^(16+SYMBOL_CACHE_SIZE). The valid range is 0..9, the default is 0,
|
||||||
# corresponding to a cache size of 2^16 = 65536 symbols
|
# corresponding to a cache size of 2^16 = 65536 symbols
|
||||||
|
|
|
@ -59,7 +59,7 @@ struct ecs_data {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* copy the first n BITS from src to dst iff both src and dst
|
* copy the first n BITS from src to dst iff both src and dst
|
||||||
* are large enough, return 0 on succes
|
* are large enough, return 0 on success
|
||||||
*/
|
*/
|
||||||
int
|
int
|
||||||
copy_clear(uint8_t* dst, size_t dstlen, uint8_t* src, size_t srclen, size_t n);
|
copy_clear(uint8_t* dst, size_t dstlen, uint8_t* src, size_t srclen, size_t n);
|
||||||
|
|
|
@ -497,7 +497,7 @@ eval_response(struct module_qstate *qstate, int id, struct subnet_qstate *sq)
|
||||||
if (!s_in->subnet_validdata) {
|
if (!s_in->subnet_validdata) {
|
||||||
/* The authority indicated no support for edns subnet. As a
|
/* The authority indicated no support for edns subnet. As a
|
||||||
* consequence the answer ended up in the regular cache. It
|
* consequence the answer ended up in the regular cache. It
|
||||||
* is still usefull to put it in the edns subnet cache for
|
* is still useful to put it in the edns subnet cache for
|
||||||
* when a client explicitly asks for subnet specific answer. */
|
* when a client explicitly asks for subnet specific answer. */
|
||||||
verbose(VERB_QUERY, "subnetcache: Authority indicates no support");
|
verbose(VERB_QUERY, "subnetcache: Authority indicates no support");
|
||||||
if(!sq->started_no_cache_store) {
|
if(!sq->started_no_cache_store) {
|
||||||
|
|
|
@ -37,7 +37,7 @@
|
||||||
* \file
|
* \file
|
||||||
*
|
*
|
||||||
* This file contains a module that facilitates opportunistic IPsec. It does so
|
* This file contains a module that facilitates opportunistic IPsec. It does so
|
||||||
* by also quering for the IPSECKEY for A/AAAA queries and calling a
|
* by also querying for the IPSECKEY for A/AAAA queries and calling a
|
||||||
* configurable hook (eg. signaling an IKE daemon) before replying.
|
* configurable hook (eg. signaling an IKE daemon) before replying.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
|
@ -37,7 +37,7 @@
|
||||||
* \file
|
* \file
|
||||||
*
|
*
|
||||||
* This file contains a module that facilitates opportunistic IPsec. It does so
|
* This file contains a module that facilitates opportunistic IPsec. It does so
|
||||||
* by also quering for the IPSECKEY for A/AAAA queries and calling a
|
* by also querying for the IPSECKEY for A/AAAA queries and calling a
|
||||||
* configurable hook (eg. signaling an IKE daemon) before replying.
|
* configurable hook (eg. signaling an IKE daemon) before replying.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
|
@ -3242,7 +3242,7 @@ prime_supers(struct module_qstate* qstate, int id, struct module_qstate* forq)
|
||||||
/* Convert our response to a delegation point */
|
/* Convert our response to a delegation point */
|
||||||
dp = delegpt_from_message(qstate->return_msg, forq->region);
|
dp = delegpt_from_message(qstate->return_msg, forq->region);
|
||||||
if(!dp) {
|
if(!dp) {
|
||||||
/* if there is no convertable delegation point, then
|
/* if there is no convertible delegation point, then
|
||||||
* the ANSWER type was (presumably) a negative answer. */
|
* the ANSWER type was (presumably) a negative answer. */
|
||||||
verbose(VERB_ALGO, "prime response was not a positive "
|
verbose(VERB_ALGO, "prime response was not a positive "
|
||||||
"ANSWER; failing");
|
"ANSWER; failing");
|
||||||
|
|
|
@ -31,6 +31,6 @@ Source code
|
||||||
else:
|
else:
|
||||||
print "Result is insecure"
|
print "Result is insecure"
|
||||||
|
|
||||||
More detailed informations can be seen in libUnbound DNSSEC tutorial `here`_.
|
More detailed information can be seen in libUnbound DNSSEC tutorial `here`_.
|
||||||
|
|
||||||
.. _here: http://www.unbound.net/documentation/libunbound-tutorial-6.html
|
.. _here: http://www.unbound.net/documentation/libunbound-tutorial-6.html
|
||||||
|
|
|
@ -363,7 +363,7 @@ Result: ['74.125.43.147', '74.125.43.99', '74.125.43.103', '74.125.43.104']
|
||||||
ctx.debuglevel(3)
|
ctx.debuglevel(3)
|
||||||
ctx.debugout(fw)
|
ctx.debugout(fw)
|
||||||
|
|
||||||
Another option is to print the debug informations to stderr output
|
Another option is to print the debug information to stderr output
|
||||||
|
|
||||||
::
|
::
|
||||||
|
|
||||||
|
|
|
@ -41,7 +41,7 @@
|
||||||
*
|
*
|
||||||
* Use ub_ctx_create_event_ub_base() to create an unbound context that uses
|
* Use ub_ctx_create_event_ub_base() to create an unbound context that uses
|
||||||
* the user provided event base API. Then, use the ub_resolve_event call
|
* the user provided event base API. Then, use the ub_resolve_event call
|
||||||
* to add DNS resolve queries to the context. Those then run whith the
|
* to add DNS resolve queries to the context. Those then run with the
|
||||||
* provided event_base, and when they are done you get a function callback.
|
* provided event_base, and when they are done you get a function callback.
|
||||||
*
|
*
|
||||||
* This method does not fork another process or create a thread, the effort
|
* This method does not fork another process or create a thread, the effort
|
||||||
|
|
|
@ -224,7 +224,7 @@ struct ub_result {
|
||||||
* It is called with
|
* It is called with
|
||||||
* void* my_arg: your pointer to a (struct of) data of your choice,
|
* void* my_arg: your pointer to a (struct of) data of your choice,
|
||||||
* or NULL.
|
* or NULL.
|
||||||
* int err: if 0 all is OK, otherwise an error occured and no results
|
* int err: if 0 all is OK, otherwise an error occurred and no results
|
||||||
* are forthcoming.
|
* are forthcoming.
|
||||||
* struct result: pointer to more detailed result structure.
|
* struct result: pointer to more detailed result structure.
|
||||||
* This structure is allocated on the heap and needs to be
|
* This structure is allocated on the heap and needs to be
|
||||||
|
|
|
@ -66,7 +66,7 @@ struct query_info;
|
||||||
* @param ssl_upstream: use SSL for upstream queries.
|
* @param ssl_upstream: use SSL for upstream queries.
|
||||||
* @param tls_auth_name: if ssl_upstream, use this name with TLS
|
* @param tls_auth_name: if ssl_upstream, use this name with TLS
|
||||||
* authentication.
|
* authentication.
|
||||||
* @param q: wich query state to reactivate upon return.
|
* @param q: which query state to reactivate upon return.
|
||||||
* @return: false on failure (memory or socket related). no query was
|
* @return: false on failure (memory or socket related). no query was
|
||||||
* sent.
|
* sent.
|
||||||
*/
|
*/
|
||||||
|
@ -118,7 +118,7 @@ void worker_sighandler(int sig, void* arg);
|
||||||
* @param ssl_upstream: use SSL for upstream queries.
|
* @param ssl_upstream: use SSL for upstream queries.
|
||||||
* @param tls_auth_name: if ssl_upstream, use this name with TLS
|
* @param tls_auth_name: if ssl_upstream, use this name with TLS
|
||||||
* authentication.
|
* authentication.
|
||||||
* @param q: wich query state to reactivate upon return.
|
* @param q: which query state to reactivate upon return.
|
||||||
* @return: false on failure (memory or socket related). no query was
|
* @return: false on failure (memory or socket related). no query was
|
||||||
* sent.
|
* sent.
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -90,7 +90,7 @@ We can also remove an EDNS option code from an EDNS option list.
|
||||||
log_info("python: Option code {} was not found in the "
|
log_info("python: Option code {} was not found in the "
|
||||||
"list.".format(code))
|
"list.".format(code))
|
||||||
|
|
||||||
.. note:: All occurences of the EDNS option code will be removed from the list:
|
.. note:: All occurrences of the EDNS option code will be removed from the list:
|
||||||
|
|
||||||
|
|
||||||
Controlling other modules' cache behavior
|
Controlling other modules' cache behavior
|
||||||
|
|
|
@ -12,7 +12,7 @@ module_qstate
|
||||||
|
|
||||||
.. attribute:: qinfo
|
.. attribute:: qinfo
|
||||||
|
|
||||||
(:class:`query_info`) Informations about query being answered. Name, RR type, RR class.
|
(:class:`query_info`) Information about query being answered. Name, RR type, RR class.
|
||||||
|
|
||||||
.. attribute:: query_flags
|
.. attribute:: query_flags
|
||||||
|
|
||||||
|
@ -256,7 +256,7 @@ dns_msg
|
||||||
|
|
||||||
.. attribute:: qinfo
|
.. attribute:: qinfo
|
||||||
|
|
||||||
(:class:`query_info`) Informations about query.
|
(:class:`query_info`) Information about query.
|
||||||
|
|
||||||
.. attribute:: rep
|
.. attribute:: rep
|
||||||
|
|
||||||
|
@ -440,7 +440,7 @@ DNSMessage
|
||||||
|
|
||||||
.. method:: set_return_msg(self, qstate)
|
.. method:: set_return_msg(self, qstate)
|
||||||
|
|
||||||
This method fills qstate return message according to the given informations.
|
This method fills qstate return message according to the given information.
|
||||||
It takes lists of RRs in each section of answer, created necessary RRsets in wire format and store the result in :attr:`qstate.return_msg`.
|
It takes lists of RRs in each section of answer, created necessary RRsets in wire format and store the result in :attr:`qstate.return_msg`.
|
||||||
Returns 1 if OK.
|
Returns 1 if OK.
|
||||||
|
|
||||||
|
|
|
@ -21,7 +21,7 @@ almost every mail server supports DNS based blacklisting.
|
||||||
|
|
||||||
DNS based Wake-On-Lan
|
DNS based Wake-On-Lan
|
||||||
---------------------
|
---------------------
|
||||||
Controled by secured queries secured with private key.
|
Controlled by secured queries secured with private key.
|
||||||
|
|
||||||
Dynamic translation service
|
Dynamic translation service
|
||||||
---------------------------
|
---------------------------
|
||||||
|
|
|
@ -55,7 +55,7 @@
|
||||||
# Return True on success, False on failure.
|
# Return True on success, False on failure.
|
||||||
#
|
#
|
||||||
# edns_opt_list_remove(edns_opt_list, code):
|
# edns_opt_list_remove(edns_opt_list, code):
|
||||||
# Remove all occurences of the given EDNS option code from the
|
# Remove all occurrences of the given EDNS option code from the
|
||||||
# edns_opt_list.
|
# edns_opt_list.
|
||||||
# Return True when at least one EDNS option was removed, False otherwise.
|
# Return True when at least one EDNS option was removed, False otherwise.
|
||||||
#
|
#
|
||||||
|
|
|
@ -1341,7 +1341,7 @@ int set_return_msg(struct module_qstate* qstate,
|
||||||
%pythoncode %{
|
%pythoncode %{
|
||||||
class DNSMessage:
|
class DNSMessage:
|
||||||
def __init__(self, rr_name, rr_type, rr_class = RR_CLASS_IN, query_flags = 0, default_ttl = 0):
|
def __init__(self, rr_name, rr_type, rr_class = RR_CLASS_IN, query_flags = 0, default_ttl = 0):
|
||||||
"""Query flags is a combination of PKT_xx contants"""
|
"""Query flags is a combination of PKT_xx constants"""
|
||||||
self.rr_name = rr_name
|
self.rr_name = rr_name
|
||||||
self.rr_type = rr_type
|
self.rr_type = rr_type
|
||||||
self.rr_class = rr_class
|
self.rr_class = rr_class
|
||||||
|
|
|
@ -84,7 +84,7 @@
|
||||||
#define AUTH_PROBE_TIMEOUT_STOP 1000 /* msec */
|
#define AUTH_PROBE_TIMEOUT_STOP 1000 /* msec */
|
||||||
/* auth transfer timeout for TCP connections, in msec */
|
/* auth transfer timeout for TCP connections, in msec */
|
||||||
#define AUTH_TRANSFER_TIMEOUT 10000 /* msec */
|
#define AUTH_TRANSFER_TIMEOUT 10000 /* msec */
|
||||||
/* auth transfer max backoff for failed tranfers and probes */
|
/* auth transfer max backoff for failed transfers and probes */
|
||||||
#define AUTH_TRANSFER_MAX_BACKOFF 86400 /* sec */
|
#define AUTH_TRANSFER_MAX_BACKOFF 86400 /* sec */
|
||||||
/* auth http port number */
|
/* auth http port number */
|
||||||
#define AUTH_HTTP_PORT 80
|
#define AUTH_HTTP_PORT 80
|
||||||
|
@ -243,7 +243,7 @@ msg_add_rrset_an(struct auth_zone* z, struct regional* region,
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
/** add rrset to authority section (no additonal section rrsets yet) */
|
/** add rrset to authority section (no additional section rrsets yet) */
|
||||||
static int
|
static int
|
||||||
msg_add_rrset_ns(struct auth_zone* z, struct regional* region,
|
msg_add_rrset_ns(struct auth_zone* z, struct regional* region,
|
||||||
struct dns_msg* msg, struct auth_data* node, struct auth_rrset* rrset)
|
struct dns_msg* msg, struct auth_data* node, struct auth_rrset* rrset)
|
||||||
|
@ -6491,7 +6491,7 @@ auth_xfer_probe_udp_callback(struct comm_point* c, void* arg, int err,
|
||||||
comm_point_delete(xfr->task_probe->cp);
|
comm_point_delete(xfr->task_probe->cp);
|
||||||
xfr->task_probe->cp = NULL;
|
xfr->task_probe->cp = NULL;
|
||||||
|
|
||||||
/* if the result was not a successfull probe, we need
|
/* if the result was not a successful probe, we need
|
||||||
* to send the next one */
|
* to send the next one */
|
||||||
xfr_probe_nextmaster(xfr);
|
xfr_probe_nextmaster(xfr);
|
||||||
xfr_probe_send_or_end(xfr, env);
|
xfr_probe_send_or_end(xfr, env);
|
||||||
|
|
4
services/cache/rrset.h
vendored
4
services/cache/rrset.h
vendored
|
@ -120,7 +120,7 @@ void rrset_cache_touch(struct rrset_cache* r, struct ub_packed_rrset_key* key,
|
||||||
* the new rrset. The reference may be changed if the cached rrset is
|
* the new rrset. The reference may be changed if the cached rrset is
|
||||||
* superior.
|
* superior.
|
||||||
* Before calling the rrset is presumed newly allocated and changeable.
|
* Before calling the rrset is presumed newly allocated and changeable.
|
||||||
* Afer calling you do not hold a lock, and the rrset is inserted in
|
* After calling you do not hold a lock, and the rrset is inserted in
|
||||||
* the hashtable so you need a lock to change it.
|
* the hashtable so you need a lock to change it.
|
||||||
* @param alloc: how to allocate (and deallocate) the special rrset key.
|
* @param alloc: how to allocate (and deallocate) the special rrset key.
|
||||||
* @param timenow: current time (to see if ttl in cache is expired).
|
* @param timenow: current time (to see if ttl in cache is expired).
|
||||||
|
@ -143,7 +143,7 @@ int rrset_cache_update(struct rrset_cache* r, struct rrset_ref* ref,
|
||||||
* @param rrset: which rrset to cache as wildcard. This rrset is left
|
* @param rrset: which rrset to cache as wildcard. This rrset is left
|
||||||
* untouched.
|
* untouched.
|
||||||
* @param ce: the closest encloser, will be uses to generate the wildcard dname.
|
* @param ce: the closest encloser, will be uses to generate the wildcard dname.
|
||||||
* @param ce_len: the closest encloser lenght.
|
* @param ce_len: the closest encloser length.
|
||||||
* @param alloc: how to allocate (and deallocate) the special rrset key.
|
* @param alloc: how to allocate (and deallocate) the special rrset key.
|
||||||
* @param timenow: current time (to see if ttl in cache is expired).
|
* @param timenow: current time (to see if ttl in cache is expired).
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -2618,7 +2618,7 @@ static int http2_req_begin_headers_cb(nghttp2_session* session,
|
||||||
int ret;
|
int ret;
|
||||||
if(frame->hd.type != NGHTTP2_HEADERS ||
|
if(frame->hd.type != NGHTTP2_HEADERS ||
|
||||||
frame->headers.cat != NGHTTP2_HCAT_REQUEST) {
|
frame->headers.cat != NGHTTP2_HCAT_REQUEST) {
|
||||||
/* only interrested in request headers */
|
/* only interested in request headers */
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
if(!(h2_stream = http2_stream_create(frame->hd.stream_id))) {
|
if(!(h2_stream = http2_stream_create(frame->hd.stream_id))) {
|
||||||
|
@ -2746,7 +2746,7 @@ static int http2_req_header_cb(nghttp2_session* session,
|
||||||
* the HEADER */
|
* the HEADER */
|
||||||
if(frame->hd.type != NGHTTP2_HEADERS ||
|
if(frame->hd.type != NGHTTP2_HEADERS ||
|
||||||
frame->headers.cat != NGHTTP2_HCAT_REQUEST) {
|
frame->headers.cat != NGHTTP2_HCAT_REQUEST) {
|
||||||
/* only interrested in request headers */
|
/* only interested in request headers */
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
if(!(h2_stream = nghttp2_session_get_stream_user_data(session,
|
if(!(h2_stream = nghttp2_session_get_stream_user_data(session,
|
||||||
|
@ -2842,7 +2842,7 @@ static int http2_req_header_cb(nghttp2_session* session,
|
||||||
h2_stream->query_too_large = 1;
|
h2_stream->query_too_large = 1;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
/* guaranteed to only contian digits and be null terminated */
|
/* guaranteed to only contain digits and be null terminated */
|
||||||
h2_stream->content_length = atoi((const char*)value);
|
h2_stream->content_length = atoi((const char*)value);
|
||||||
if(h2_stream->content_length >
|
if(h2_stream->content_length >
|
||||||
h2_session->c->http2_stream_max_qbuffer_size) {
|
h2_session->c->http2_stream_max_qbuffer_size) {
|
||||||
|
@ -2882,7 +2882,7 @@ static int http2_req_data_chunk_recv_cb(nghttp2_session* ATTR_UNUSED(session),
|
||||||
/* setting this to msg-buffer-size can result in a lot
|
/* setting this to msg-buffer-size can result in a lot
|
||||||
* of memory consuption. Most queries should fit in a
|
* of memory consuption. Most queries should fit in a
|
||||||
* single DATA frame, and most POST queries will
|
* single DATA frame, and most POST queries will
|
||||||
* containt content-length which does not impose this
|
* contain content-length which does not impose this
|
||||||
* limit. */
|
* limit. */
|
||||||
qlen = len;
|
qlen = len;
|
||||||
}
|
}
|
||||||
|
|
|
@ -465,7 +465,7 @@ lz_find_create_node(struct local_zone* z, uint8_t* nm, size_t nmlen,
|
||||||
|
|
||||||
/* Mark the SOA record for the zone. This only marks the SOA rrset; the data
|
/* Mark the SOA record for the zone. This only marks the SOA rrset; the data
|
||||||
* for the RR is entered later on local_zone_enter_rr() as with the other
|
* for the RR is entered later on local_zone_enter_rr() as with the other
|
||||||
* records. An artifical soa_negative record with a modified TTL (minimum of
|
* records. An artificial soa_negative record with a modified TTL (minimum of
|
||||||
* the TTL and the SOA.MINIMUM) is also created and marked for usage with
|
* the TTL and the SOA.MINIMUM) is also created and marked for usage with
|
||||||
* negative answers and to avoid allocations during those answers. */
|
* negative answers and to avoid allocations during those answers. */
|
||||||
static int
|
static int
|
||||||
|
@ -1526,7 +1526,7 @@ local_data_answer(struct local_zone* z, struct module_env* env,
|
||||||
/* write qname */
|
/* write qname */
|
||||||
memmove(d->rr_data[0] + sizeof(uint16_t), qinfo->qname,
|
memmove(d->rr_data[0] + sizeof(uint16_t), qinfo->qname,
|
||||||
qinfo->qname_len - 1);
|
qinfo->qname_len - 1);
|
||||||
/* write cname target wilcard wildcard label */
|
/* write cname target wildcard label */
|
||||||
memmove(d->rr_data[0] + sizeof(uint16_t) +
|
memmove(d->rr_data[0] + sizeof(uint16_t) +
|
||||||
qinfo->qname_len - 1, ctarget + 2,
|
qinfo->qname_len - 1, ctarget + 2,
|
||||||
ctargetlen - 2);
|
ctargetlen - 2);
|
||||||
|
|
|
@ -257,7 +257,7 @@ void local_zone_delete(struct local_zone* z);
|
||||||
* @param dclass: class to lookup.
|
* @param dclass: class to lookup.
|
||||||
* @param dtype: type to lookup, if type DS a zone higher is used for zonecuts.
|
* @param dtype: type to lookup, if type DS a zone higher is used for zonecuts.
|
||||||
* @param taglist: taglist to lookup.
|
* @param taglist: taglist to lookup.
|
||||||
* @param taglen: lenth of taglist.
|
* @param taglen: length of taglist.
|
||||||
* @param ignoretags: lookup zone by name and class, regardless the
|
* @param ignoretags: lookup zone by name and class, regardless the
|
||||||
* local-zone's tags.
|
* local-zone's tags.
|
||||||
* @return closest local_zone or NULL if no covering zone is found.
|
* @return closest local_zone or NULL if no covering zone is found.
|
||||||
|
|
|
@ -1367,7 +1367,7 @@ void mesh_query_done(struct mesh_state* mstate)
|
||||||
}
|
}
|
||||||
if(mstate->s.return_rcode == LDNS_RCODE_SERVFAIL ||
|
if(mstate->s.return_rcode == LDNS_RCODE_SERVFAIL ||
|
||||||
(rep && FLAGS_GET_RCODE(rep->flags) == LDNS_RCODE_SERVFAIL)) {
|
(rep && FLAGS_GET_RCODE(rep->flags) == LDNS_RCODE_SERVFAIL)) {
|
||||||
/* we are SERVFAILing; check for expired asnwer here */
|
/* we are SERVFAILing; check for expired answer here */
|
||||||
mesh_serve_expired_callback(mstate);
|
mesh_serve_expired_callback(mstate);
|
||||||
if((mstate->reply_list || mstate->cb_list)
|
if((mstate->reply_list || mstate->cb_list)
|
||||||
&& mstate->s.env->cfg->log_servfail
|
&& mstate->s.env->cfg->log_servfail
|
||||||
|
@ -1584,7 +1584,7 @@ int mesh_state_add_reply(struct mesh_state* s, struct edns_data* edns,
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
/* the rrset is not packed, like in the cache, but it is
|
/* the rrset is not packed, like in the cache, but it is
|
||||||
* individualy allocated with an allocator from localzone. */
|
* individually allocated with an allocator from localzone. */
|
||||||
d = regional_alloc_zero(s->s.region, sizeof(*d));
|
d = regional_alloc_zero(s->s.region, sizeof(*d));
|
||||||
if(!d)
|
if(!d)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
|
@ -79,7 +79,7 @@ void outbound_list_init(struct outbound_list* list);
|
||||||
* Clear the user owner outbound list structure.
|
* Clear the user owner outbound list structure.
|
||||||
* Deletes serviced queries.
|
* Deletes serviced queries.
|
||||||
* @param list: the list structure. It is cleared, but the list struct itself
|
* @param list: the list structure. It is cleared, but the list struct itself
|
||||||
* is callers responsability to delete.
|
* is callers responsibility to delete.
|
||||||
*/
|
*/
|
||||||
void outbound_list_clear(struct outbound_list* list);
|
void outbound_list_clear(struct outbound_list* list);
|
||||||
|
|
||||||
|
|
|
@ -1935,7 +1935,7 @@ select_id(struct outside_network* outnet, struct pending* pend,
|
||||||
LDNS_ID_SET(sldns_buffer_begin(packet), pend->id);
|
LDNS_ID_SET(sldns_buffer_begin(packet), pend->id);
|
||||||
id_tries++;
|
id_tries++;
|
||||||
if(id_tries == MAX_ID_RETRY) {
|
if(id_tries == MAX_ID_RETRY) {
|
||||||
pend->id=99999; /* non existant ID */
|
pend->id=99999; /* non existent ID */
|
||||||
log_err("failed to generate unique ID, drop msg");
|
log_err("failed to generate unique ID, drop msg");
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1095,7 +1095,7 @@ rpz_insert_rr(struct rpz* r, uint8_t* azname, size_t aznamelen, uint8_t* dname,
|
||||||
* @param qname: qname
|
* @param qname: qname
|
||||||
* @param qname_len: length of qname
|
* @param qname_len: length of qname
|
||||||
* @param qclass: qclass
|
* @param qclass: qclass
|
||||||
* @param only_exact: if 1 only excact (non wildcard) matches are returned
|
* @param only_exact: if 1 only exact (non wildcard) matches are returned
|
||||||
* @param wr: get write lock for local-zone if 1, read lock if 0
|
* @param wr: get write lock for local-zone if 1, read lock if 0
|
||||||
* @param zones_keep_lock: if set do not release the r->local_zones lock, this
|
* @param zones_keep_lock: if set do not release the r->local_zones lock, this
|
||||||
* makes the caller of this function responsible for releasing the lock.
|
* makes the caller of this function responsible for releasing the lock.
|
||||||
|
@ -1191,7 +1191,7 @@ rpz_find_zone(struct local_zones* zones, uint8_t* qname, size_t qname_len, uint1
|
||||||
* Remove RR from RPZ's local-data
|
* Remove RR from RPZ's local-data
|
||||||
* @param z: local-zone for RPZ, holding write lock
|
* @param z: local-zone for RPZ, holding write lock
|
||||||
* @param policydname: dname of RR to remove
|
* @param policydname: dname of RR to remove
|
||||||
* @param policydnamelen: lenth of policydname
|
* @param policydnamelen: length of policydname
|
||||||
* @param rr_type: RR type of RR to remove
|
* @param rr_type: RR type of RR to remove
|
||||||
* @param rdata: rdata of RR to remove
|
* @param rdata: rdata of RR to remove
|
||||||
* @param rdatalen: length of rdata
|
* @param rdatalen: length of rdata
|
||||||
|
|
|
@ -172,7 +172,7 @@ void rpz_remove_rr(struct rpz* r, size_t aznamelen, uint8_t* dname,
|
||||||
* @param temp: scratchpad
|
* @param temp: scratchpad
|
||||||
* @param repinfo: reply info
|
* @param repinfo: reply info
|
||||||
* @param taglist: taglist to lookup.
|
* @param taglist: taglist to lookup.
|
||||||
* @param taglen: lenth of taglist.
|
* @param taglen: length of taglist.
|
||||||
* @param stats: worker stats struct
|
* @param stats: worker stats struct
|
||||||
* @return: 1 if client answer is ready, 0 to continue resolving
|
* @return: 1 if client answer is ready, 0 to continue resolving
|
||||||
*/
|
*/
|
||||||
|
@ -234,7 +234,7 @@ enum rpz_action
|
||||||
respip_action_to_rpz_action(enum respip_action a);
|
respip_action_to_rpz_action(enum respip_action a);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Prepare RPZ after procesing feed content.
|
* Prepare RPZ after processing feed content.
|
||||||
* @param r: RPZ to use
|
* @param r: RPZ to use
|
||||||
*/
|
*/
|
||||||
void rpz_finish_config(struct rpz* r);
|
void rpz_finish_config(struct rpz* r);
|
||||||
|
|
|
@ -58,7 +58,7 @@ time_t sldns_mktime_from_utc(const struct tm *tm);
|
||||||
* The function interprets time as the number of seconds since epoch
|
* The function interprets time as the number of seconds since epoch
|
||||||
* with respect to now using serial arithmetics (rfc1982).
|
* with respect to now using serial arithmetics (rfc1982).
|
||||||
* That number of seconds is then converted to broken-out time information.
|
* That number of seconds is then converted to broken-out time information.
|
||||||
* This is especially usefull when converting the inception and expiration
|
* This is especially useful when converting the inception and expiration
|
||||||
* fields of RRSIG records.
|
* fields of RRSIG records.
|
||||||
*
|
*
|
||||||
* \param[in] time number of seconds since epoch (midnight, January 1st, 1970)
|
* \param[in] time number of seconds since epoch (midnight, January 1st, 1970)
|
||||||
|
|
|
@ -1427,7 +1427,7 @@ sldns_str2wire_svcbparam_parse_next_unescaped_comma(const char *val)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* The source is already properly unescaped, this double unescaping is purely to allow for
|
/* The source is already properly unescaped, this double unescaping is purely to allow for
|
||||||
* comma's in comma seperated alpn lists.
|
* comma's in comma separated alpn lists.
|
||||||
*
|
*
|
||||||
* In draft-ietf-dnsop-svcb-https-06 Section 7:
|
* In draft-ietf-dnsop-svcb-https-06 Section 7:
|
||||||
* To enable simpler parsing, this SvcParamValue MUST NOT contain escape sequences.
|
* To enable simpler parsing, this SvcParamValue MUST NOT contain escape sequences.
|
||||||
|
|
|
@ -59,7 +59,7 @@ char* sldns_wire2str_pkt(uint8_t* data, size_t len);
|
||||||
char* sldns_wire2str_rr(uint8_t* rr, size_t len);
|
char* sldns_wire2str_rr(uint8_t* rr, size_t len);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Conver wire dname to a string.
|
* Convert wire dname to a string.
|
||||||
* @param dname: the dname in uncompressed wireformat.
|
* @param dname: the dname in uncompressed wireformat.
|
||||||
* @param dname_len: length of the dname.
|
* @param dname_len: length of the dname.
|
||||||
* @return string or NULL on failure.
|
* @return string or NULL on failure.
|
||||||
|
|
|
@ -358,7 +358,7 @@ static int http2_data_chunk_recv_cb(nghttp2_session* ATTR_UNUSED(session),
|
||||||
}
|
}
|
||||||
|
|
||||||
if(sldns_buffer_remaining(h2_stream->buf) < len) {
|
if(sldns_buffer_remaining(h2_stream->buf) < len) {
|
||||||
log_err("received data chunck does not fit into buffer");
|
log_err("received data chunk does not fit into buffer");
|
||||||
return NGHTTP2_ERR_CALLBACK_FAILURE;
|
return NGHTTP2_ERR_CALLBACK_FAILURE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -531,7 +531,7 @@ run(struct http2_session* h2_session, int port, int no_tls, int count, char** q)
|
||||||
|
|
||||||
h2_session->block_select = 1;
|
h2_session->block_select = 1;
|
||||||
|
|
||||||
/* hande query */
|
/* handle query */
|
||||||
for(i=0; i<count; i+=3) {
|
for(i=0; i<count; i+=3) {
|
||||||
buf = make_query(q[i], q[i+1], q[i+2]);
|
buf = make_query(q[i], q[i+1], q[i+2]);
|
||||||
submit_query(h2_session, buf);
|
submit_query(h2_session, buf);
|
||||||
|
|
|
@ -81,7 +81,7 @@ while test $# -ne 0; do
|
||||||
echo " -d dir use directory to store keys and certificates."
|
echo " -d dir use directory to store keys and certificates."
|
||||||
echo " default: $DESTDIR"
|
echo " default: $DESTDIR"
|
||||||
echo "please run this command using the same user id that the "
|
echo "please run this command using the same user id that the "
|
||||||
echo "unboun daemon uses, it needs read privileges."
|
echo "unbound daemon uses, it needs read privileges."
|
||||||
exit 1
|
exit 1
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
2
testdata/auth_xfr_ixfrmismatch.rpl
vendored
2
testdata/auth_xfr_ixfrmismatch.rpl
vendored
|
@ -182,7 +182,7 @@ example.com. IN SOA ns.example.com. hostmaster.example.com. 2 3600 900 86400 360
|
||||||
example.com. IN SOA ns.example.com. hostmaster.example.com. 1 3600 900 86400 3600
|
example.com. IN SOA ns.example.com. hostmaster.example.com. 1 3600 900 86400 3600
|
||||||
www.example.com. IN A 1.2.3.4
|
www.example.com. IN A 1.2.3.4
|
||||||
mail.example.com. 3600 IN A 1.2.3.6
|
mail.example.com. 3600 IN A 1.2.3.6
|
||||||
; this is the delete of the nonexistant entry
|
; this is the delete of the nonexistent entry
|
||||||
nonexist.example.com. 3600 IN A 1.2.3.4
|
nonexist.example.com. 3600 IN A 1.2.3.4
|
||||||
example.com. IN SOA ns.example.com. hostmaster.example.com. 2 3600 900 86400 3600
|
example.com. IN SOA ns.example.com. hostmaster.example.com. 2 3600 900 86400 3600
|
||||||
EXTRA_PACKET
|
EXTRA_PACKET
|
||||||
|
|
2
testdata/fwd.rpl
vendored
2
testdata/fwd.rpl
vendored
|
@ -28,7 +28,7 @@ REPLY RD
|
||||||
SECTION QUESTION
|
SECTION QUESTION
|
||||||
www.example.com. IN A
|
www.example.com. IN A
|
||||||
ENTRY_END
|
ENTRY_END
|
||||||
; unneccesary nothing steps.
|
; unnecessary nothing steps.
|
||||||
STEP 2 NOTHING
|
STEP 2 NOTHING
|
||||||
STEP 3 NOTHING
|
STEP 3 NOTHING
|
||||||
STEP 4 CHECK_ANSWER
|
STEP 4 CHECK_ANSWER
|
||||||
|
|
2
testdata/fwd_any.rpl
vendored
2
testdata/fwd_any.rpl
vendored
|
@ -59,7 +59,7 @@ REPLY RD
|
||||||
SECTION QUESTION
|
SECTION QUESTION
|
||||||
www.example.com. IN A
|
www.example.com. IN A
|
||||||
ENTRY_END
|
ENTRY_END
|
||||||
; unneccesary nothing steps.
|
; unnecessary nothing steps.
|
||||||
STEP 20 NOTHING
|
STEP 20 NOTHING
|
||||||
STEP 30 CHECK_ANSWER
|
STEP 30 CHECK_ANSWER
|
||||||
ENTRY_BEGIN
|
ENTRY_BEGIN
|
||||||
|
|
|
@ -81,12 +81,12 @@ echo "> cat logfiles"
|
||||||
cat petal.log
|
cat petal.log
|
||||||
cat unbound.log
|
cat unbound.log
|
||||||
|
|
||||||
# check petal.log for the correct number of occurences.
|
# check petal.log for the correct number of occurrences.
|
||||||
# It should be 2 User-Agents, one being the custom.
|
# It should be 2 User-Agents, one being the custom.
|
||||||
echo "> check User-Agent occurences"
|
echo "> check User-Agent occurrences"
|
||||||
occurences=`grep "User-Agent:" petal.log | wc -l`
|
occurrences=`grep "User-Agent:" petal.log | wc -l`
|
||||||
echo $occurences
|
echo $occurrences
|
||||||
if test $occurences -eq 2; then
|
if test $occurrences -eq 2; then
|
||||||
echo "OK"
|
echo "OK"
|
||||||
else
|
else
|
||||||
echo "Not OK"
|
echo "Not OK"
|
||||||
|
|
2
testdata/iter_primenoglue.rpl
vendored
2
testdata/iter_primenoglue.rpl
vendored
|
@ -28,7 +28,7 @@ SECTION QUESTION
|
||||||
SECTION ANSWER
|
SECTION ANSWER
|
||||||
. IN NS K.ROOT-SERVERS.NET.
|
. IN NS K.ROOT-SERVERS.NET.
|
||||||
SECTION ADDITIONAL
|
SECTION ADDITIONAL
|
||||||
; glue ommitted!
|
; glue omitted!
|
||||||
;K.ROOT-SERVERS.NET. IN A 193.0.14.129
|
;K.ROOT-SERVERS.NET. IN A 193.0.14.129
|
||||||
ENTRY_END
|
ENTRY_END
|
||||||
|
|
||||||
|
|
2
testdata/iter_scrub_dname_rev.rpl
vendored
2
testdata/iter_scrub_dname_rev.rpl
vendored
|
@ -17,7 +17,7 @@ CONFIG_END
|
||||||
SCENARIO_BEGIN Test scrub of reversed DNAME and CNAME in answer section
|
SCENARIO_BEGIN Test scrub of reversed DNAME and CNAME in answer section
|
||||||
|
|
||||||
RANGE_BEGIN 0 100
|
RANGE_BEGIN 0 100
|
||||||
; all adresses
|
; all addresses
|
||||||
ENTRY_BEGIN
|
ENTRY_BEGIN
|
||||||
MATCH opcode qtype qname
|
MATCH opcode qtype qname
|
||||||
ADJUST copy_id
|
ADJUST copy_id
|
||||||
|
|
2
testdata/iter_scrub_dname_sec.rpl
vendored
2
testdata/iter_scrub_dname_sec.rpl
vendored
|
@ -17,7 +17,7 @@ CONFIG_END
|
||||||
SCENARIO_BEGIN Test scrub of secure DNAME in answer section
|
SCENARIO_BEGIN Test scrub of secure DNAME in answer section
|
||||||
|
|
||||||
RANGE_BEGIN 0 100
|
RANGE_BEGIN 0 100
|
||||||
; all adresses
|
; all addresses
|
||||||
ENTRY_BEGIN
|
ENTRY_BEGIN
|
||||||
MATCH opcode qtype qname
|
MATCH opcode qtype qname
|
||||||
ADJUST copy_id
|
ADJUST copy_id
|
||||||
|
|
2
testdata/root_anchor.tdir/root_anchor.test
vendored
2
testdata/root_anchor.tdir/root_anchor.test
vendored
|
@ -27,7 +27,7 @@ fi
|
||||||
|
|
||||||
echo ""
|
echo ""
|
||||||
# test that unbound-anchor, the builtin certificate, works
|
# test that unbound-anchor, the builtin certificate, works
|
||||||
# so, force https with -F and the -c is a nonexistant file
|
# so, force https with -F and the -c is a nonexistent file
|
||||||
$PRE/unbound-anchor -a test.cert -c test.pem -v -F
|
$PRE/unbound-anchor -a test.cert -c test.pem -v -F
|
||||||
# check that the test.cert file is OK.
|
# check that the test.cert file is OK.
|
||||||
if $PRE/unbound-host -f test.cert -t SOA -v . 2>&1 | grep "(secure)"; then
|
if $PRE/unbound-host -f test.cert -t SOA -v . 2>&1 | grep "(secure)"; then
|
||||||
|
|
2
testdata/svcb.tdir/svcb.test
vendored
2
testdata/svcb.tdir/svcb.test
vendored
|
@ -80,7 +80,7 @@ else
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
# check all the succes and write them
|
# check all the success and write them
|
||||||
if ! $PRE/readzone svcb.success-cases.zone > svcb.success-cases.zone.out
|
if ! $PRE/readzone svcb.success-cases.zone > svcb.success-cases.zone.out
|
||||||
then
|
then
|
||||||
echo "Some particular success cases did not succeed to parse"
|
echo "Some particular success cases did not succeed to parse"
|
||||||
|
|
2
testdata/ttl_msg.rpl
vendored
2
testdata/ttl_msg.rpl
vendored
|
@ -411,7 +411,7 @@ ENTRY_END
|
||||||
; cause a lookup for nx1.example.com bypassing the cache.
|
; cause a lookup for nx1.example.com bypassing the cache.
|
||||||
; with bug; this causes msg ttl for nx1 to be time(NOW)+ttl.
|
; with bug; this causes msg ttl for nx1 to be time(NOW)+ttl.
|
||||||
; so 15+5 = 20
|
; so 15+5 = 20
|
||||||
; visiable in debug log as "msg ttl is %d"
|
; visible in debug log as "msg ttl is %d"
|
||||||
STEP 40 QUERY
|
STEP 40 QUERY
|
||||||
ENTRY_BEGIN
|
ENTRY_BEGIN
|
||||||
REPLY RD
|
REPLY RD
|
||||||
|
|
2
testdata/val_keyprefetch_verify.rpl
vendored
2
testdata/val_keyprefetch_verify.rpl
vendored
|
@ -219,7 +219,7 @@ STEP 20 TIME_PASSES ELAPSE 3400
|
||||||
|
|
||||||
; now the key gets prefetched and has to be verified with the anchor,
|
; now the key gets prefetched and has to be verified with the anchor,
|
||||||
; not with the key itself.
|
; not with the key itself.
|
||||||
; this answer is from cache enyway.
|
; this answer is from cache anyway.
|
||||||
STEP 30 QUERY
|
STEP 30 QUERY
|
||||||
ENTRY_BEGIN
|
ENTRY_BEGIN
|
||||||
REPLY RD DO
|
REPLY RD DO
|
||||||
|
|
2
testdata/val_nodata_failwc.rpl
vendored
2
testdata/val_nodata_failwc.rpl
vendored
|
@ -42,7 +42,7 @@ SECTION ANSWER
|
||||||
SECTION AUTHORITY
|
SECTION AUTHORITY
|
||||||
nsecwc.nlnetlabs.nl. 3600 IN SOA ns.nlnetlabs.nl. ralph.nlnetlabs.nl. 1 14400 3600 604800 3600
|
nsecwc.nlnetlabs.nl. 3600 IN SOA ns.nlnetlabs.nl. ralph.nlnetlabs.nl. 1 14400 3600 604800 3600
|
||||||
nsecwc.nlnetlabs.nl. 3600 IN RRSIG SOA 8 3 3600 20200101000000 20171108114635 565 nsecwc.nlnetlabs.nl. bYibpCDg1LgrnYJgVahgu94LBqLIcNs4iC0SW8LV7pTI1hhuFKbLkO2O ekPdkJAWmu/KTytf8D+cdcK6X/9VS8QCVIF5S0hraHtNezu0f1B5ztg3 7Rqy+uJSucNKoykueAsz2z43GMgO0rGH3bqM7+3ii8p2E2rhzqEtG/D3 qyY=
|
nsecwc.nlnetlabs.nl. 3600 IN RRSIG SOA 8 3 3600 20200101000000 20171108114635 565 nsecwc.nlnetlabs.nl. bYibpCDg1LgrnYJgVahgu94LBqLIcNs4iC0SW8LV7pTI1hhuFKbLkO2O ekPdkJAWmu/KTytf8D+cdcK6X/9VS8QCVIF5S0hraHtNezu0f1B5ztg3 7Rqy+uJSucNKoykueAsz2z43GMgO0rGH3bqM7+3ii8p2E2rhzqEtG/D3 qyY=
|
||||||
; NSEC has a label lenght of 3, indication that the original owner name is:
|
; NSEC has a label length of 3, indication that the original owner name is:
|
||||||
; *.nsecwc.nlnetlabs.nl. The NSEC therefore does no prove the NODATA answer.
|
; *.nsecwc.nlnetlabs.nl. The NSEC therefore does no prove the NODATA answer.
|
||||||
_25._tcp.mail.nsecwc.nlnetlabs.nl. 3600 IN NSEC delegation.nsecwc.nlnetlabs.nl. TXT RRSIG NSEC
|
_25._tcp.mail.nsecwc.nlnetlabs.nl. 3600 IN NSEC delegation.nsecwc.nlnetlabs.nl. TXT RRSIG NSEC
|
||||||
_25._tcp.mail.nsecwc.nlnetlabs.nl. 3600 IN RRSIG NSEC 8 3 3600 20200101000000 20171108114635 565 nsecwc.nlnetlabs.nl. ddy1MRbshFuFJswlouNGHsZUF/tYu8BOCztY2JuHeTMyWL7rhRKp73q/ 1RAXMwywKsynT5ioY0bMtEQszeIEn29IYaPDHieLAobjF6BMu1kO7U2/ oEBrSHM/fx28BcaM5G4nfCIm3BlhQhWvk1NDHLn3Q26x4hF/dnmFOUet aXw=
|
_25._tcp.mail.nsecwc.nlnetlabs.nl. 3600 IN RRSIG NSEC 8 3 3600 20200101000000 20171108114635 565 nsecwc.nlnetlabs.nl. ddy1MRbshFuFJswlouNGHsZUF/tYu8BOCztY2JuHeTMyWL7rhRKp73q/ 1RAXMwywKsynT5ioY0bMtEQszeIEn29IYaPDHieLAobjF6BMu1kO7U2/ oEBrSHM/fx28BcaM5G4nfCIm3BlhQhWvk1NDHLn3Q26x4hF/dnmFOUet aXw=
|
||||||
|
|
4
testdata/val_nsec3_optout_cache.rpl
vendored
4
testdata/val_nsec3_optout_cache.rpl
vendored
|
@ -138,7 +138,7 @@ b6fuorg741ufili49mg9j4328ig53sqg.example.com. IN NSEC3 1 1 123 aabb00123456bbccd
|
||||||
b6fuorg741ufili49mg9j4328ig53sqg.example.com. 3600 IN RRSIG NSEC3 3 3 3600 20070926135752 20070829135752 2854 example.com. AKHQ0gnNP5WDab1yqbd+Bt12CSSff88sqeDR40dvhiWOcYA8mmyjYNA=
|
b6fuorg741ufili49mg9j4328ig53sqg.example.com. 3600 IN RRSIG NSEC3 3 3 3600 20070926135752 20070829135752 2854 example.com. AKHQ0gnNP5WDab1yqbd+Bt12CSSff88sqeDR40dvhiWOcYA8mmyjYNA=
|
||||||
|
|
||||||
; span around sub.example.com., same span as foo.example.com, but it has
|
; span around sub.example.com., same span as foo.example.com, but it has
|
||||||
; just changed and it is now larger to accomodate sub.example.com.
|
; just changed and it is now larger to accommodate sub.example.com.
|
||||||
6obgmo062d9935unjnnj2su5otaj9334.example.com. IN NSEC3 1 1 123 aabb00123456bbccdd 9r1f0ieoutlnjc03meng9e3bn2n0o9pd NS DS RRSIG
|
6obgmo062d9935unjnnj2su5otaj9334.example.com. IN NSEC3 1 1 123 aabb00123456bbccdd 9r1f0ieoutlnjc03meng9e3bn2n0o9pd NS DS RRSIG
|
||||||
6obgmo062d9935unjnnj2su5otaj9334.example.com. 3600 IN RRSIG NSEC3 3 3 3600 20070926135752 20070829135752 2854 example.com. ABzruSKUUcJRNlYDqZ4UmQH/WnzeXt9Gozp3chS4cR0sqsEeGjL54eQ=
|
6obgmo062d9935unjnnj2su5otaj9334.example.com. 3600 IN RRSIG NSEC3 3 3 3600 20070926135752 20070829135752 2854 example.com. ABzruSKUUcJRNlYDqZ4UmQH/WnzeXt9Gozp3chS4cR0sqsEeGjL54eQ=
|
||||||
|
|
||||||
|
@ -164,7 +164,7 @@ b6fuorg741ufili49mg9j4328ig53sqg.example.com. IN NSEC3 1 1 123 aabb00123456bbccd
|
||||||
b6fuorg741ufili49mg9j4328ig53sqg.example.com. 3600 IN RRSIG NSEC3 3 3 3600 20070926135752 20070829135752 2854 example.com. AKHQ0gnNP5WDab1yqbd+Bt12CSSff88sqeDR40dvhiWOcYA8mmyjYNA=
|
b6fuorg741ufili49mg9j4328ig53sqg.example.com. 3600 IN RRSIG NSEC3 3 3 3600 20070926135752 20070829135752 2854 example.com. AKHQ0gnNP5WDab1yqbd+Bt12CSSff88sqeDR40dvhiWOcYA8mmyjYNA=
|
||||||
|
|
||||||
; span around sub.example.com., same span as foo.example.com, but it has
|
; span around sub.example.com., same span as foo.example.com, but it has
|
||||||
; just changed and it is now larger to accomodate sub.example.com.
|
; just changed and it is now larger to accommodate sub.example.com.
|
||||||
6obgmo062d9935unjnnj2su5otaj9334.example.com. IN NSEC3 1 1 123 aabb00123456bbccdd 9r1f0ieoutlnjc03meng9e3bn2n0o9pd NS DS RRSIG
|
6obgmo062d9935unjnnj2su5otaj9334.example.com. IN NSEC3 1 1 123 aabb00123456bbccdd 9r1f0ieoutlnjc03meng9e3bn2n0o9pd NS DS RRSIG
|
||||||
6obgmo062d9935unjnnj2su5otaj9334.example.com. 3600 IN RRSIG NSEC3 3 3 3600 20070926135752 20070829135752 2854 example.com. ABzruSKUUcJRNlYDqZ4UmQH/WnzeXt9Gozp3chS4cR0sqsEeGjL54eQ=
|
6obgmo062d9935unjnnj2su5otaj9334.example.com. 3600 IN RRSIG NSEC3 3 3 3600 20070926135752 20070829135752 2854 example.com. ABzruSKUUcJRNlYDqZ4UmQH/WnzeXt9Gozp3chS4cR0sqsEeGjL54eQ=
|
||||||
|
|
||||||
|
|
|
@ -1110,7 +1110,7 @@ int cfg_count_numbers(const char* str);
|
||||||
int cfg_parse_memsize(const char* str, size_t* res);
|
int cfg_parse_memsize(const char* str, size_t* res);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Parse nsid from string into binary nsid. nsid is either a hexidecimal
|
* Parse nsid from string into binary nsid. nsid is either a hexadecimal
|
||||||
* string or an ascii string prepended with ascii_ in which case the
|
* string or an ascii string prepended with ascii_ in which case the
|
||||||
* characters after ascii_ are simply copied.
|
* characters after ascii_ are simply copied.
|
||||||
* @param str: the string to parse.
|
* @param str: the string to parse.
|
||||||
|
|
|
@ -358,7 +358,7 @@ struct module_env {
|
||||||
* @param ssl_upstream: use SSL for upstream queries.
|
* @param ssl_upstream: use SSL for upstream queries.
|
||||||
* @param tls_auth_name: if ssl_upstream, use this name with TLS
|
* @param tls_auth_name: if ssl_upstream, use this name with TLS
|
||||||
* authentication.
|
* authentication.
|
||||||
* @param q: wich query state to reactivate upon return.
|
* @param q: which query state to reactivate upon return.
|
||||||
* @return: false on failure (memory or socket related). no query was
|
* @return: false on failure (memory or socket related). no query was
|
||||||
* sent. Or returns an outbound entry with qsent and qstate set.
|
* sent. Or returns an outbound entry with qsent and qstate set.
|
||||||
* This outbound_entry will be used on later module invocations
|
* This outbound_entry will be used on later module invocations
|
||||||
|
|
|
@ -743,7 +743,7 @@ struct comm_signal* comm_signal_create(struct comm_base* base,
|
||||||
void (*callback)(int, void*), void* cb_arg);
|
void (*callback)(int, void*), void* cb_arg);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Bind signal struct to catch a signal. A signle comm_signal can be bound
|
* Bind signal struct to catch a signal. A single comm_signal can be bound
|
||||||
* to multiple signals, calling comm_signal_bind multiple times.
|
* to multiple signals, calling comm_signal_bind multiple times.
|
||||||
* @param comsig: the communication point, with callback information.
|
* @param comsig: the communication point, with callback information.
|
||||||
* @param sig: signal number.
|
* @param sig: signal number.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* util/ub_event.c - directly call libevent (compatability) functions
|
* util/ub_event.c - directly call libevent (compatibility) functions
|
||||||
*
|
*
|
||||||
* Copyright (c) 2007, NLnet Labs. All rights reserved.
|
* Copyright (c) 2007, NLnet Labs. All rights reserved.
|
||||||
*
|
*
|
||||||
|
|
|
@ -140,7 +140,7 @@ val_apply_cfg(struct module_env* env, struct val_env* val_env,
|
||||||
val_env->max_restart = cfg->val_max_restart;
|
val_env->max_restart = cfg->val_max_restart;
|
||||||
c = cfg_count_numbers(cfg->val_nsec3_key_iterations);
|
c = cfg_count_numbers(cfg->val_nsec3_key_iterations);
|
||||||
if(c < 1 || (c&1)) {
|
if(c < 1 || (c&1)) {
|
||||||
log_err("validator: unparseable or odd nsec3 key "
|
log_err("validator: unparsable or odd nsec3 key "
|
||||||
"iterations: %s", cfg->val_nsec3_key_iterations);
|
"iterations: %s", cfg->val_nsec3_key_iterations);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -484,7 +484,7 @@ generate_keytag_query(struct module_qstate* qstate, int id,
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Not interrested in subquery response. Restore the ext_state,
|
/* Not interested in subquery response. Restore the ext_state,
|
||||||
* that might be changed by generate_request() */
|
* that might be changed by generate_request() */
|
||||||
qstate->ext_state[id] = ext_state;
|
qstate->ext_state[id] = ext_state;
|
||||||
|
|
||||||
|
|
|
@ -68,7 +68,7 @@ struct config_strlist;
|
||||||
#define SENTINEL_IS "root-key-sentinel-is-ta-"
|
#define SENTINEL_IS "root-key-sentinel-is-ta-"
|
||||||
/** Root key sentinel is not ta preamble */
|
/** Root key sentinel is not ta preamble */
|
||||||
#define SENTINEL_NOT "root-key-sentinel-not-ta-"
|
#define SENTINEL_NOT "root-key-sentinel-not-ta-"
|
||||||
/** Root key sentinal keytag length */
|
/** Root key sentinel keytag length */
|
||||||
#define SENTINEL_KEYTAG_LEN 5
|
#define SENTINEL_KEYTAG_LEN 5
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Loading…
Reference in a new issue