]> git.ipfire.org Git - thirdparty/bind9.git/log
thirdparty/bind9.git
7 years agowin32/socket should use common isc_socket wpk-dot
Witold Kręcicki [Wed, 24 Oct 2018 10:02:58 +0000 (10:02 +0000)] 
win32/socket should use common isc_socket

7 years agoMove socket type to common isc_socket structure; add isc_sockettype_tls
Witold Kręcicki [Wed, 24 Oct 2018 09:25:06 +0000 (09:25 +0000)] 
Move socket type to common isc_socket structure; add isc_sockettype_tls

7 years agoWindows fixes
Witold Kręcicki [Wed, 24 Oct 2018 10:52:37 +0000 (10:52 +0000)] 
Windows fixes

7 years agoFix fetchlimit test to allow softquota to be overruled; Remove 'verifying that named...
Witold Kręcicki [Thu, 18 Oct 2018 14:45:28 +0000 (14:45 +0000)] 
Fix fetchlimit test to allow softquota to be overruled; Remove 'verifying that named checks for conflicting listeners' test from runtime

7 years agoCookies with non-crypto-secure random
Witold Kręcicki [Fri, 12 Oct 2018 11:59:33 +0000 (11:59 +0000)] 
Cookies with non-crypto-secure random

7 years agoUse multiple worker queues in unix/socket.c
Witold Kręcicki [Thu, 18 Oct 2018 22:00:15 +0000 (22:00 +0000)] 
Use multiple worker queues in unix/socket.c

7 years agouse REUSEPORT only for NOLISTEN dispatchers
Witold Kręcicki [Thu, 11 Oct 2018 07:50:31 +0000 (07:50 +0000)] 
use REUSEPORT only for NOLISTEN dispatchers

7 years agoFixes
Witold Kręcicki [Thu, 4 Oct 2018 14:52:54 +0000 (14:52 +0000)] 
Fixes

7 years agoFix for TCP
Witold Kręcicki [Thu, 4 Oct 2018 14:32:28 +0000 (14:32 +0000)] 
Fix for TCP

7 years agoUse isc_refcount_t in socket
Witold Kręcicki [Thu, 4 Oct 2018 12:30:04 +0000 (12:30 +0000)] 
Use isc_refcount_t in socket

7 years agoFixes for Solaris
Witold Krecicki [Thu, 4 Oct 2018 14:11:24 +0000 (16:11 +0200)] 
Fixes for Solaris

7 years agoMangle fdlocks a bit
Witold Kręcicki [Wed, 3 Oct 2018 22:11:52 +0000 (22:11 +0000)] 
Mangle fdlocks a bit

7 years agoFix a race in socket code
Witold Kręcicki [Wed, 3 Oct 2018 20:39:39 +0000 (20:39 +0000)] 
Fix a race in socket code

7 years agoSet network threads affintiy
Witold Kręcicki [Thu, 18 Oct 2018 20:47:23 +0000 (20:47 +0000)] 
Set network threads affintiy

7 years agoAdd runtime detection of SO_REUSEPORT, use it if available (instead of dup)
Witold Kręcicki [Thu, 23 Aug 2018 07:42:30 +0000 (09:42 +0200)] 
Add runtime detection of SO_REUSEPORT, use it if available (instead of dup)

7 years agoMore udp dispatchers
Witold Kręcicki [Wed, 22 Aug 2018 13:41:28 +0000 (15:41 +0200)] 
More udp dispatchers

7 years agoSet quantum to 50
Witold Kręcicki [Wed, 22 Aug 2018 12:45:39 +0000 (14:45 +0200)] 
Set quantum to 50

7 years agoMultiple network threads with separate data structures (WiP)
Witold Krecicki [Wed, 3 Oct 2018 20:46:23 +0000 (22:46 +0200)] 
Multiple network threads with separate data structures (WiP)

7 years agoDo IO after event directly in the network thread, don't schedule it for worker
Witold Kręcicki [Tue, 21 Aug 2018 12:04:06 +0000 (14:04 +0200)] 
Do IO after event directly in the network thread, don't schedule it for worker

7 years agoRemove fdwatch sockets
Witold Kręcicki [Mon, 20 Aug 2018 09:56:37 +0000 (11:56 +0200)] 
Remove fdwatch sockets

7 years agoComment about taskmgr exclusive mode, fix a REQUIRE.
Witold Kręcicki [Tue, 23 Oct 2018 09:39:56 +0000 (09:39 +0000)] 
Comment about taskmgr exclusive mode, fix a REQUIRE.

7 years agoAllow slight over-quota in'checking lame server clients are dropped at the soft limit...
Witold Kręcicki [Tue, 23 Oct 2018 09:03:31 +0000 (09:03 +0000)] 
Allow slight over-quota in'checking lame server clients are dropped at the soft limit' test

7 years agoSaner exclusive task handling in taskmgr
Witold Kręcicki [Tue, 23 Oct 2018 08:47:44 +0000 (08:47 +0000)] 
Saner exclusive task handling in taskmgr

7 years agoFormatting
Witold Kręcicki [Tue, 23 Oct 2018 08:20:17 +0000 (08:20 +0000)] 
Formatting

7 years agoGet rid of isc_taskmgr_setmode, we only use it to set privileged mode
Witold Kręcicki [Mon, 22 Oct 2018 11:18:45 +0000 (11:18 +0000)] 
Get rid of isc_taskmgr_setmode, we only use it to set privileged mode

7 years agoMake sure all priority tasks are done before entering normal execution
Witold Kręcicki [Mon, 22 Oct 2018 10:57:05 +0000 (10:57 +0000)] 
Make sure all priority tasks are done before entering normal execution

7 years agoPost shutting down tasks always to manager 0
Witold Kręcicki [Mon, 22 Oct 2018 12:26:27 +0000 (12:26 +0000)] 
Post shutting down tasks always to manager 0

7 years agoSeparate structure for each thread/queue; 2-phase-locking for exclusive tasks
Witold Kręcicki [Mon, 22 Oct 2018 09:37:17 +0000 (09:37 +0000)] 
Separate structure for each thread/queue; 2-phase-locking for exclusive tasks

7 years agoAlways restart dispatchers on empty readyq
Witold Kręcicki [Fri, 19 Oct 2018 10:13:20 +0000 (10:13 +0000)] 
Always restart dispatchers on empty readyq

7 years agoTaskmgr shutdown fixes
Witold Kręcicki [Thu, 18 Oct 2018 18:16:25 +0000 (18:16 +0000)] 
Taskmgr shutdown fixes

7 years agoMultiple worker queues
Witold Kręcicki [Thu, 11 Oct 2018 13:39:04 +0000 (13:39 +0000)] 
Multiple worker queues

7 years agoisc_thread_setaffinity()
Witold Krecicki [Wed, 3 Oct 2018 21:20:22 +0000 (23:20 +0200)] 
isc_thread_setaffinity()

7 years agoMerge branch 'wpk-temporarily-disable-qmin-for-rpz' into 'master'
Evan Hunt [Wed, 24 Oct 2018 02:49:29 +0000 (22:49 -0400)] 
Merge branch 'wpk-temporarily-disable-qmin-for-rpz' into 'master'

Disable qname minimization in RPZ test for now

See merge request isc-projects/bind9!882

7 years agoDisable qname minimization in RPZ test for now
Witold Kręcicki [Tue, 23 Oct 2018 21:48:23 +0000 (21:48 +0000)] 
Disable qname minimization in RPZ test for now

7 years agoMerge branch '610-address-memory-leak-on-error' into 'master'
Mark Andrews [Wed, 24 Oct 2018 00:51:58 +0000 (20:51 -0400)] 
Merge branch '610-address-memory-leak-on-error' into 'master'

Resolve "Address memory leak on error"

Closes #610

See merge request isc-projects/bind9!859

7 years agofree key on error
Mark Andrews [Fri, 19 Oct 2018 08:23:39 +0000 (19:23 +1100)] 
free key on error

7 years agoMerge branch 'cleanup-changes' into 'master'
Evan Hunt [Tue, 23 Oct 2018 20:29:51 +0000 (16:29 -0400)] 
Merge branch 'cleanup-changes' into 'master'

minor CHANGES edits

See merge request isc-projects/bind9!880

7 years agominor edits
Evan Hunt [Tue, 23 Oct 2018 20:28:57 +0000 (13:28 -0700)] 
minor edits

7 years agoMerge branch '187-libirs-handle-scoped-ipv6-addresses-in-etc-resolv.conf' into 'master'
Michał Kępień [Tue, 23 Oct 2018 13:13:14 +0000 (09:13 -0400)] 
Merge branch '187-libirs-handle-scoped-ipv6-addresses-in-etc-resolv.conf' into 'master'

libirs: handle scoped IPv6 addresses in /etc/resolv.conf

Closes #187

See merge request isc-projects/bind9!854

7 years agoAdd CHANGES entry
Michał Kępień [Tue, 23 Oct 2018 12:50:00 +0000 (14:50 +0200)] 
Add CHANGES entry

5050. [bug] The libirs version of getaddrinfo() was unable to parse
scoped IPv6 addresses present in /etc/resolv.conf.
[GL #187]

7 years agolibirs: handle scoped IPv6 addresses in /etc/resolv.conf
Michał Kępień [Tue, 23 Oct 2018 12:50:00 +0000 (14:50 +0200)] 
libirs: handle scoped IPv6 addresses in /etc/resolv.conf

Commonly used network configuration tools write scoped IPv6 nameserver
addresses to /etc/resolv.conf.  libirs only handles these when it is
compiled with -DIRS_HAVE_SIN6_SCOPE_ID, which is not the default, and
only handles numeric scopes, which is not what network configuration
tools typically use.  This causes dig to be practically unable to handle
scoped IPv6 nameserver addresses in /etc/resolv.conf.

Fix the problem by:

  - not requiring a custom compile-time flag to be set in order for
    scoped IPv6 addresses to be processed by getaddrinfo(),

  - parsing non-numeric scope identifiers using if_nametoindex(),

  - setting the sin6_scope_id field in struct sockaddr_in6 structures
    returned by getaddrinfo() even if the AI_CANONNAME flag is not set.

7 years agoMerge branch '16-qname-minimization-newfctx' into 'master'
Witold Krecicki [Tue, 23 Oct 2018 12:33:12 +0000 (08:33 -0400)] 
Merge branch '16-qname-minimization-newfctx' into 'master'

QNAME minimization remake

See merge request isc-projects/bind9!548

7 years agouse ns_client_log
Mark Andrews [Mon, 8 Oct 2018 00:19:00 +0000 (11:19 +1100)] 
use ns_client_log

7 years agolog pre rrl check state
Mark Andrews [Thu, 4 Oct 2018 23:23:45 +0000 (09:23 +1000)] 
log pre rrl check state

7 years agochanges
Witold Kręcicki [Fri, 17 Aug 2018 14:20:20 +0000 (16:20 +0200)] 
changes

7 years agostop.pl: report test being stopped
Mark Andrews [Fri, 17 Aug 2018 06:24:51 +0000 (16:24 +1000)] 
stop.pl: report test being stopped

7 years agowhitespace
Mark Andrews [Fri, 28 Sep 2018 09:22:42 +0000 (19:22 +1000)] 
whitespace

7 years agoset fctx->client to NULL
Mark Andrews [Fri, 28 Sep 2018 08:59:30 +0000 (18:59 +1000)] 
set fctx->client to NULL

7 years agocheckpoint
Mark Andrews [Fri, 28 Sep 2018 06:51:55 +0000 (16:51 +1000)] 
checkpoint

7 years agoInitialize adbname->client properly; check for loops
Witold Kręcicki [Fri, 17 Aug 2018 14:46:34 +0000 (16:46 +0200)] 
Initialize adbname->client properly; check for loops

7 years agouse RUNTIME_CHECK
Mark Andrews [Wed, 15 Aug 2018 06:14:46 +0000 (16:14 +1000)] 
use RUNTIME_CHECK

7 years agoaddress fctx reference count leaks; style
Mark Andrews [Wed, 15 Aug 2018 05:49:33 +0000 (15:49 +1000)] 
address fctx reference count leaks; style

7 years agoFix looping issues
Witold Kręcicki [Sat, 14 Jul 2018 18:11:03 +0000 (20:11 +0200)] 
Fix looping issues

7 years agoMake resolver tests more civilized
Witold Kręcicki [Thu, 5 Jul 2018 11:50:54 +0000 (13:50 +0200)] 
Make resolver tests more civilized

7 years agoqmin: fixup expected queries for query for .ugly succeds when qname-minimization...
Mark Andrews [Wed, 19 Sep 2018 05:31:06 +0000 (15:31 +1000)] 
qmin: fixup expected queries for query for .ugly succeds when qname-minimization is in relaxed mode

7 years agoqmin: fix 'query for .ugly fails when qname-minimization is in strict mode'; remove...
Mark Andrews [Wed, 19 Sep 2018 05:25:54 +0000 (15:25 +1000)] 
qmin: fix 'query for .ugly fails when qname-minimization is in strict mode'; remove debugging echos

7 years agoQNAME miminimization should create a separate fetch context for each fetch -
Witold Kręcicki [Wed, 13 Jun 2018 07:29:40 +0000 (09:29 +0200)] 
QNAME miminimization should create a separate fetch context for each fetch -
this makes the cache more efficient and eliminates duplicates queries.

7 years agoMerge branch 'wpk-servfail-on-upstream-formerr' into 'master'
Michał Kępień [Tue, 23 Oct 2018 12:09:11 +0000 (08:09 -0400)] 
Merge branch 'wpk-servfail-on-upstream-formerr' into 'master'

Set result to SERVFAIL if upstream responded with FORMERR

See merge request isc-projects/bind9!876

7 years agoSet result to SERVFAIL if upstream responded with FORMERR
Witold Kręcicki [Tue, 23 Oct 2018 11:45:30 +0000 (13:45 +0200)] 
Set result to SERVFAIL if upstream responded with FORMERR

Commit ba912435427cf884fdc1ca26743eba6c00439106 causes the resolver to
respond to a client query with FORMERR when all upstream queries sent to
the servers authoritative for QNAME elicit FORMERR responses.  This
happens because resolver code returns DNS_R_FORMERR in such a case and
dns_result_torcode() acts as a pass-through for all arguments which are
already a valid RCODE.

The correct RCODE to set in the response returned to the client in the
case described above is SERVFAIL.  Make sure this happens by overriding
the RCODE in query_gotanswer(), on the grounds that any format errors in
the client query itself should be caught long before execution reaches
that point.  This change should not reduce query error logging accuracy
as the resolver code itself reports the exact reason for returning a
DNS_R_FORMERR result using log_formerr().

7 years agoMerge branch '4-rename-configure.in-to-configure.ac' into 'master'
Ondřej Surý [Tue, 23 Oct 2018 08:11:31 +0000 (04:11 -0400)] 
Merge branch '4-rename-configure.in-to-configure.ac' into 'master'

Rename configure.in to configure.ac

See merge request isc-projects/bind9!872

7 years agoRename configure.in to proper name configure.ac
Ondřej Surý [Tue, 23 Oct 2018 07:55:26 +0000 (09:55 +0200)] 
Rename configure.in to proper name configure.ac

7 years agoMerge branch '612-problems-compiling-on-arm-processor' into 'master'
Ondřej Surý [Tue, 23 Oct 2018 07:46:33 +0000 (03:46 -0400)] 
Merge branch '612-problems-compiling-on-arm-processor' into 'master'

Resolve "Problems compiling on arm processor"

Closes #612

See merge request isc-projects/bind9!869

7 years agoCheck for yield support on ARM and print helpfull error message about -march
Ondřej Surý [Tue, 23 Oct 2018 07:27:02 +0000 (09:27 +0200)] 
Check for yield support on ARM and print helpfull error message about -march

7 years agoFix typo in isc_rwlock_pause() on sparc
Ondřej Surý [Mon, 22 Oct 2018 09:43:59 +0000 (11:43 +0200)] 
Fix typo in isc_rwlock_pause() on sparc

7 years agoAdd information compilation instructions for support on ARM
Ondřej Surý [Mon, 22 Oct 2018 09:43:29 +0000 (11:43 +0200)] 
Add information compilation instructions for  support on ARM

7 years agoMerge branch '506-print-fips-mode' into 'master'
Ondřej Surý [Mon, 22 Oct 2018 19:18:45 +0000 (15:18 -0400)] 
Merge branch '506-print-fips-mode' into 'master'

Add configure option to enable FIPS mode if OpenSSL provides the option

Closes #506

See merge request isc-projects/bind9!853

7 years agoAdd CHANGES note.
Ondřej Surý [Thu, 18 Oct 2018 11:47:45 +0000 (13:47 +0200)] 
Add CHANGES note.

XXXX. [feature] Add configure option to enabled and enforce FIPS mode
in BIND 9. [GL #506]

7 years agoAdd release notes for the FIPS mode feature
Ondřej Surý [Thu, 18 Oct 2018 14:13:30 +0000 (16:13 +0200)] 
Add release notes for the FIPS mode feature

7 years agoAdd support for enabling and enforcing FIPS mode in OpenSSL:
Ondřej Surý [Sun, 14 Oct 2018 12:32:02 +0000 (14:32 +0200)] 
Add support for enabling and enforcing FIPS mode in OpenSSL:

* Add configure option --enable-fips-mode that detects and enables FIPS mode
* Add a function to enable FIPS mode and call it on crypto init
* Log an OpenSSL error when FIPS_mode_set() fails and exit
* Report FIPS mode status in a separate log message from named

7 years agoMerge branch '565-automatically-trigger-gitlab-pages-pipelines' into 'master'
Michał Kępień [Sat, 20 Oct 2018 22:01:52 +0000 (18:01 -0400)] 
Merge branch '565-automatically-trigger-gitlab-pages-pipelines' into 'master'

Automatically trigger GitLab Pages pipelines

Closes #565

See merge request isc-projects/bind9!866

7 years agoAutomatically trigger GitLab Pages pipelines
Michał Kępień [Sat, 20 Oct 2018 21:09:08 +0000 (23:09 +0200)] 
Automatically trigger GitLab Pages pipelines

Whenever master or one for the v9_* branches gets updated, the current
ARM should be published on GitLab Pages.  Add a pipeline stage which
takes care of triggering GitLab Pages pipelines.  Extend the lifetime of
artifact archives containing the ARM to prevent GitLab Pages pipelines
from failing due to artifacts being unavailable.

7 years agoMerge branch '565-generate-the-arm-during-ci' into 'master'
Michał Kępień [Sat, 20 Oct 2018 10:17:11 +0000 (06:17 -0400)] 
Merge branch '565-generate-the-arm-during-ci' into 'master'

Generate the ARM during CI

See merge request isc-projects/bind9!863

7 years agoGenerate the ARM during CI
Michał Kępień [Fri, 19 Oct 2018 20:42:44 +0000 (22:42 +0200)] 
Generate the ARM during CI

Add a CI job which generates the HTML version of the ARM and makes it
available for download.  Since this is expected to be a quick process,
the new job is enabled for all pipelines.

7 years agoMerge branch '607-win32-fixes' into 'master'
Evan Hunt [Fri, 19 Oct 2018 08:04:37 +0000 (04:04 -0400)] 
Merge branch '607-win32-fixes' into 'master'

Resolve "windows builds are failing for master"

Closes #607

See merge request isc-projects/bind9!858

7 years agoaddress unresolved externals
Evan Hunt [Fri, 19 Oct 2018 07:20:57 +0000 (00:20 -0700)] 
address unresolved externals

7 years agoremove references to methods and app_api.c
Evan Hunt [Fri, 19 Oct 2018 06:59:18 +0000 (23:59 -0700)] 
remove references to methods and app_api.c

7 years agoMerge branch 'fix-windows' into 'master'
Evan Hunt [Fri, 19 Oct 2018 03:44:24 +0000 (23:44 -0400)] 
Merge branch 'fix-windows' into 'master'

fix windows build error

Closes #607

See merge request isc-projects/bind9!857

7 years agochange to bool constants; also fixed style error
Evan Hunt [Fri, 19 Oct 2018 03:42:25 +0000 (20:42 -0700)] 
change to bool constants; also fixed style error

7 years agoMerge branch '479-remove-isc_bind9' into 'master'
Witold Krecicki [Thu, 18 Oct 2018 10:39:42 +0000 (06:39 -0400)] 
Merge branch '479-remove-isc_bind9' into 'master'

Remove isc_bind9 from (almost) everywhere

Closes #479

See merge request isc-projects/bind9!656

7 years agoretain a minimal "methods" struct in the mctx
Evan Hunt [Thu, 4 Oct 2018 02:04:46 +0000 (19:04 -0700)] 
retain a minimal "methods" struct in the mctx

- this enables memory to be allocated and freed in dyndb modules
  when named is linked statically. when we standardize on libtool,
  this should become unnecessary.
- also, simplified the isc_mem_create/createx API by removing
  extra compatibility functions

7 years agoremove isc_bind9 usage from view.c
Evan Hunt [Thu, 4 Oct 2018 00:56:50 +0000 (17:56 -0700)] 
remove isc_bind9 usage from view.c

7 years agocomplete removal of a few unneeded functions
Evan Hunt [Wed, 3 Oct 2018 23:11:10 +0000 (16:11 -0700)] 
complete removal of a few unneeded functions

- removed register functions from isc_app, isc_timer, isc_task
- added a task_p.h header for use by unit tests

7 years agoRemove layering from isc_task, isc_app, isc_socket, isc_timer, isc_mem
Witold Kręcicki [Mon, 6 Aug 2018 11:00:55 +0000 (13:00 +0200)] 
Remove layering from isc_task, isc_app, isc_socket, isc_timer, isc_mem

7 years agoGet rid of isc_bind9 conditional
Witold Kręcicki [Mon, 6 Aug 2018 10:15:50 +0000 (12:15 +0200)] 
Get rid of isc_bind9 conditional

7 years agoMerge branch 'stephen-update-releaase-template' into 'master'
Stephen Morris [Fri, 12 Oct 2018 12:06:43 +0000 (08:06 -0400)] 
Merge branch 'stephen-update-releaase-template' into 'master'

Update release checklist as per discussion in Amsterdam BIND meeting.

See merge request isc-projects/bind9!852

7 years agoUpdate release checklist as per discussion in Amsterdam BIND meeting.
Stephen Morris [Fri, 12 Oct 2018 11:57:11 +0000 (13:57 +0200)] 
Update release checklist as per discussion in Amsterdam BIND meeting.

7 years agoMerge branch '572-improve-accuracy-of-query-error-logging' into 'master'
Michał Kępień [Mon, 8 Oct 2018 11:01:43 +0000 (07:01 -0400)] 
Merge branch '572-improve-accuracy-of-query-error-logging' into 'master'

Improve accuracy of query error logging

Closes #572

See merge request isc-projects/bind9!837

7 years agoAdd CHANGES entry
Michał Kępień [Mon, 8 Oct 2018 10:47:28 +0000 (12:47 +0200)] 
Add CHANGES entry

5047. [bug] Messages logged for certain query processing failures
now include a more specific error description if it is
available. [GL #572]

7 years agoDo not set qctx->result to DNS_R_SERVFAIL unless necessary
Michał Kępień [Mon, 8 Oct 2018 10:47:28 +0000 (12:47 +0200)] 
Do not set qctx->result to DNS_R_SERVFAIL unless necessary

In some cases, setting qctx->result to DNS_R_SERVFAIL causes the value
of a 'result' variable containing a more specific failure reason to be
effectively discarded.  This may cause certain query error log messages
to lack specificity despite a more accurate problem cause being
determined during query processing.

In other cases, qctx->result is set to DNS_R_SERVFAIL even though a more
specific error (e.g. ISC_R_NOMEMORY) could be explicitly indicated.

Since the response message's RCODE is derived from qctx->result using
dns_result_torcode(), which handles a number of possible isc_result_t
values and returns SERVFAIL for anything not explicitly listed, it is
fine to set qctx->result to something more specific than DNS_R_SERVFAIL
(in fact, this is already being done in a few cases).  Modify most
QUERY_ERROR() calls so that qctx->result is set to a more specific error
code when possible.  Adjust query_error() so that statistics are still
calculated properly.  Remove the RECURSE_ERROR() macro which was
introduced exactly because qctx->result could be set to DNS_R_SERVFAIL
instead of DNS_R_DUPLICATE or DNS_R_DROP, which need special handling.
Modify dns_sdlz_putrr() so that it returns DNS_R_SERVFAIL when a DLZ
driver returns invalid RDATA, in order to prevent setting RCODE to
FORMERR (which is what dns_result_torcode() translates e.g. DNS_R_SYNTAX
to) while responding authoritatively.

7 years agoRemove the 'want_stale' field from struct query_ctx
Michał Kępień [Mon, 8 Oct 2018 10:47:28 +0000 (12:47 +0200)] 
Remove the 'want_stale' field from struct query_ctx

As the previous commit makes the 'want_stale' field of struct query_ctx
redundant, remove it.

7 years agoSet up stale response lookup before query_done() is called
Michał Kępień [Mon, 8 Oct 2018 10:47:28 +0000 (12:47 +0200)] 
Set up stale response lookup before query_done() is called

When something goes wrong while recursing for an answer to a query,
query_gotanswer() sets a flag (qctx->want_stale) in the query context.
query_done() is subsequently called and it can either set up a stale
response lookup (if serve-stale is enabled) or conclude that a SERVFAIL
response should be sent.  This may cause confusion when looking at query
error logs since the QUERY_ERROR() line responsible for setting the
response's RCODE to SERVFAIL is not in a catch-all branch of a switch
statement inside query_gotanswer() (like it is for authoritative
responses) but rather in a code branch which appears to have something
to do with serve-stale, even when the latter is not enabled.

Extract the part of query_done() responsible for checking serve-stale
configuration and optionally setting up a stale response lookup into a
separate function, query_usestale(), shifting the responsibility for
setting the response's RCODE to SERVFAIL to the same QUERY_ERROR() line
in query_gotanswer() which is evaluated for authoritative responses.

7 years agoMerge branch 'move-declaration' into 'master'
Evan Hunt [Fri, 5 Oct 2018 18:25:00 +0000 (14:25 -0400)] 
Merge branch 'move-declaration' into 'master'

style correction

See merge request isc-projects/bind9!849

7 years agomove declaration to the top of the block
Evan Hunt [Fri, 5 Oct 2018 18:13:54 +0000 (11:13 -0700)] 
move declaration to the top of the block

7 years agoMerge branch 'rpz-shutdown-crash' into 'master'
Evan Hunt [Fri, 5 Oct 2018 17:59:26 +0000 (13:59 -0400)] 
Merge branch 'rpz-shutdown-crash' into 'master'

Fix crash at shutdown during an RPZ reload. [RT #46210]

See merge request isc-projects/bind9!71

7 years agoFix crash at shutdown during an RPZ reload. [RT #46210]
Tony Finch [Fri, 8 Dec 2017 14:01:41 +0000 (14:01 +0000)] 
Fix crash at shutdown during an RPZ reload. [RT #46210]

7 years agoMerge branch 'fix-windows' into 'master'
Evan Hunt [Fri, 5 Oct 2018 16:19:02 +0000 (12:19 -0400)] 
Merge branch 'fix-windows' into 'master'

remove references to deleted files

See merge request isc-projects/bind9!847

7 years agoremove references to deleted files
Evan Hunt [Fri, 5 Oct 2018 16:10:40 +0000 (09:10 -0700)] 
remove references to deleted files

7 years agoMerge branch 'fix-openssl_shim' into 'master'
Ondřej Surý [Fri, 5 Oct 2018 11:21:58 +0000 (07:21 -0400)] 
Merge branch 'fix-openssl_shim' into 'master'

Remove HAVE_OPENSSL guard from openssl_shim.{c,h} and uncrustify it

See merge request isc-projects/bind9!846

7 years agoRemove HAVE_OPENSSL guard from openssl_shim.{c,h} and uncrustify it
Ondřej Surý [Fri, 5 Oct 2018 11:06:31 +0000 (13:06 +0200)] 
Remove HAVE_OPENSSL guard from openssl_shim.{c,h} and uncrustify it

7 years agoMerge branch 'host-idn-disable' into 'master'
Ondřej Surý [Fri, 5 Oct 2018 10:14:28 +0000 (06:14 -0400)] 
Merge branch 'host-idn-disable' into 'master'

Disable IDN from environment as documented

See merge request isc-projects/bind9!800