Michał Kępień
47c206f386
Silence cppcheck 2.2 false positive in udp_recv()
...
cppcheck 2.2 reports the following false positive:
lib/dns/dispatch.c:1220:14: warning: Either the condition 'resp==NULL' is redundant or there is possible null pointer dereference: resp. [nullPointerRedundantCheck]
if (disp != resp->disp) {
^
lib/dns/dispatch.c:1191:11: note: Assuming that condition 'resp==NULL' is not redundant
if (resp == NULL) {
^
lib/dns/dispatch.c:1220:14: note: Null pointer dereference
if (disp != resp->disp) {
^
Apparently this version of cppcheck gets confused about conditional
"goto" statements because line 1220 can never be reached if 'resp' is
NULL.
Move a code block to prevent the above false positive from being
reported without affecting the processing logic.
(cherry picked from commit 0b6216d1c7 )
2020-11-25 13:42:12 +01:00
Mark Andrews
86d9d04fd8
Hold qid->lock when calling deref_portentry() as
...
socket_search() need portentry to be unchanging.
WARNING: ThreadSanitizer: data race
Write of size 8 at 0x000000000001 by thread T1 (mutexes: write M1):
#0 deref_portentry lib/dns/dispatch.c:630
#1 deactivate_dispsocket lib/dns/dispatch.c:861
#2 udp_recv lib/dns/dispatch.c:1105
#3 udp_exrecv lib/dns/dispatch.c:1028
#4 dispatch lib/isc/task.c:1152
#5 run lib/isc/task.c:1344
#6 <null> <null>
Previous read of size 8 at 0x000000000001 by thread T2 (mutexes: write M1, write M2):
#0 socket_search lib/dns/dispatch.c:661
#1 get_dispsocket lib/dns/dispatch.c:744
#2 dns_dispatch_addresponse lib/dns/dispatch.c:3120
#3 resquery_send lib/dns/resolver.c:2467
#4 fctx_query lib/dns/resolver.c:2217
#5 fctx_try lib/dns/resolver.c:4245
#6 fctx_timeout lib/dns/resolver.c:4570
#7 dispatch lib/isc/task.c:1152
#8 run lib/isc/task.c:1344
#9 <null> <null>
(cherry picked from commit 5c253c416d )
2020-10-24 08:23:31 +11:00
Evan Hunt
400171aee8
update all copyright headers to eliminate the typo
2020-09-14 17:00:40 -07:00
Evan Hunt
191b616579
fix additional spelling errors
2020-02-24 22:04:43 -08:00
Evan Hunt
e63223332c
fix spelling errors reported by Fossies.
2020-02-21 14:09:59 -08:00
Mark Andrews
d74a6a96c3
move maxbuffers test to allocate_udp_buffer
...
(cherry picked from commit 26a93d77aa )
2019-11-26 11:53:33 +11:00
Mark Andrews
1d928de33e
Lock dispatch manager buffer_lock before accessing buffers;
...
Only test buffers for UDP dispatches.
(cherry picked from commit 011af4de71 )
2019-11-26 11:53:33 +11:00
Mark Andrews
dcb21f39b6
lock disp->mgr before reading disp->mgr->buffers
...
(cherry picked from commit afc7389ce8 )
2019-11-26 11:53:33 +11:00
Mark Andrews
9cffeb606a
lock dispatch before reporting state
...
(cherry picked from commit 3075445ed6 )
2019-11-23 08:25:47 +11:00
Mark Andrews and Evan Hunt
3a9c7bb80d
move item_out test inside lock in dns_dispatch_getnext()
...
(cherry picked from commit 60c42f849d520564ed42e5ed0ba46b4b69c07712)
2019-06-19 15:55:04 -07:00
Ondřej Surý
2f8b28efad
Hint the compiler with ISC_UNREACHABLE(); that code after INSIST(0); cannot be reached
...
(cherry picked from commit 23fff6c569 )
(cherry picked from commit 4568669807 )
2018-11-08 22:42:52 +07:00
Ondřej Surý
12a266211e
Turn (int & flag) into (int & flag) != 0 when implicitly typed to bool
...
(cherry picked from commit b2b43fd235 )
(cherry picked from commit fcd1569e2b )
2018-11-08 22:02:58 +07:00
Ondřej Surý
1084b40b44
Replace custom isc_boolean_t with C standard bool type
...
(cherry picked from commit 994e656977 )
(cherry picked from commit 884929400c )
2018-08-10 15:20:57 +02:00
Ondřej Surý
aaa76dc654
Replace custom isc_u?intNN_t types with C99 u?intNN_t types
...
(cherry picked from commit cb6a185c69 )
(cherry picked from commit d61e6a3111 )
2018-08-10 15:20:57 +02:00
Evan Hunt
8b205089b7
update file headers to remove copyright years
2018-03-14 16:40:20 -07:00
Ondřej Surý
c62d9ac65f
[v9_11] Type the shifted values to isc_uint32_t so the top bit is unsigned (found by UBSAN) [RT #46740 ]
...
(cherry picked from commit a4a148cf9a )
2017-11-30 18:27:07 +01:00
Michał Kępień
17441aca3d
[v9_11] Remove REQUIRE preventing change 4592 from working
...
Change 4592 was supposed to replace a REQUIRE with a conditional return.
While the latter was added, the former was not removed. Remove the
relevant REQUIRE to fix RT #43822 for good.
(cherry picked from commit a94d68ce43 )
2017-10-24 21:14:22 +02:00
Evan Hunt
527163f0e5
[v9_11] fix dispatch.c shutdown race
...
4952. [bug] A race condition on shutdown could trigger an
assertion failure in dispatch.c. [RT #43822 ]
(cherry picked from commit 019132b70c )
2017-04-20 17:41:58 -07:00
Tinderbox User
9b2743294c
update copyright notice / whitespace
2017-01-14 23:46:06 +00:00
Mark Andrews
7bcba68b95
4554. [bug] Remove double unlock in dns_dispatchmgr_setudp.
...
[RT #44336 ]
(cherry picked from commit 5dfa5221d5 )
2017-01-14 13:14:25 +11:00
Mukund Sivaraman
4e9a1ad226
Fix RPZ CIDR tree insertion bug ( #43035 )
...
(cherry picked from commit 131307a70e )
2016-08-15 17:07:50 +05:30
Mark Andrews
35c014cb1d
4408. [func] Continue waiting for expected response when we the
...
response we get does not match the request. [RT #41026 ]
(cherry picked from commit ec5e01747a )
2016-07-12 11:33:49 +10:00
Mark Andrews
0c27b3fe77
4401. [misc] Change LICENSE to MPL 2.0.
2016-06-27 14:56:38 +10:00
Mark Andrews
af669cb4fd
4074. [cleanup] Cleaned up more warnings from gcc -Wshadow. [RT #38708 ]
2015-02-27 10:55:55 +11:00
Evan Hunt
2616cb6944
[master] fix PRNG selection in dispatch.c
...
4058. [bug] UDP dispatches could use the wrong psuedorandom
number generator context. [RT #38578 ]
2015-02-10 13:54:48 -08:00
Francis Dupont
1059bc2e42
added mdig tool
2015-02-04 14:22:32 +01:00
Tinderbox User
39f68d7b64
update copyright notice / whitespace
2015-01-21 23:45:24 +00:00
Evan Hunt
ff62d4458a
[master] allow shared TCP sockets when connecting
...
4041. [func] TCP sockets can now be shared while connecting.
(This will be used to enable client-side support
of pipelined queries.) [RT #38231 ]
2015-01-20 17:22:31 -08:00
Evan Hunt
761d135ed6
[master] add TCP pipelining support
...
4040. [func] Added server-side support for pipelined TCP
queries. TCP connections are no longer closed after
the first query received from a client. (The new
"keep-response-order" option allows clients to be
specified for which the old behavior will still be
used.) [RT #37821 ]
2015-01-20 16:14:09 -08:00
Tinderbox User
be484acb22
update copyright notice
2014-09-30 23:45:22 +00:00
Mark Andrews
ffeaac1d82
3961. [bug] Forwarding of SIG(0) signed UPDATE messages failed with
...
BADSIG. [RT #37216 ]
2014-10-01 07:24:16 +10:00
Tinderbox User
948c80ffa8
update copyright notice
2014-09-04 23:45:24 +00:00
Mark Andrews
74717eef53
3939. [func] Improve UPDATE forwarding performance by allowing TCP
...
connections to be shared. [RT #37039 ]
2014-09-04 10:37:45 +10:00
Mark Andrews
493f3eb297
3913. [bug] Address race issue in dispatch. [RT #36731 ]
2014-08-06 18:49:53 +10:00
Mukund Sivaraman
84dc4b3e7e
[35942] Update random number generator to ChaCha based (and add tests)
...
Squashed commit of the following:
commit 219a904fea95c74016229b6f4436d4f09de1bfd0
Author: Evan Hunt <each@isc.org >
Date: Mon Jun 2 12:20:54 2014 -0700
[rt35942] style
commit 90bc77185e9798af4595989abb8698efef8c70d7
Author: Mukund Sivaraman <muks@isc.org >
Date: Mon Jun 2 18:01:30 2014 +0530
Return p-value=0 when prerequisite (monobit) fails
commit 5594669728f1181a447616f60b835e4a043d1b21
Author: Mukund Sivaraman <muks@isc.org >
Date: Mon Jun 2 17:44:25 2014 +0530
Print proportion of test sequences passing too
commit 9e94b67a4114651224a8285f7c4a7fb03907f376
Author: Mukund Sivaraman <muks@isc.org >
Date: Mon Jun 2 17:34:03 2014 +0530
Check uniform distribution of p-values
commit acf911b32dd84ac1c30c57d8937cfeb6b3ff972f
Author: Mukund Sivaraman <muks@isc.org >
Date: Mon Jun 2 17:17:39 2014 +0530
Check proportion of sequences passing a test
commit 7289eb441fc4ec623364ad882e22b240ba8da308
Author: Mukund Sivaraman <muks@isc.org >
Date: Mon Jun 2 04:33:37 2014 +0530
Refactor common setup code into random_test()
No behavioral change is made.
commit 51feef3e08c233d34a6b8b9d25a72d43110b4eed
Author: Mukund Sivaraman <muks@isc.org >
Date: Sun Jun 1 17:31:57 2014 +0530
Fix binary rank computation
commit 0ea3c03dea353f309d13c38e26aa0abbffdcff2b
Author: Mukund Sivaraman <muks@isc.org >
Date: Tue May 27 06:01:10 2014 +0530
Add binary matrix rank RNG test
commit eb4e7c53540ac97436d94714d30084907eeff01a
Author: Mukund Sivaraman <muks@isc.org >
Date: Mon May 26 15:45:31 2014 +0530
Add function to find rank of a binary matrix
commit 1292a06e0e09ebd37d4ecf5337814951dcacc4a4
Author: Evan Hunt <each@isc.org >
Date: Thu May 29 16:21:51 2014 -0700
[rt35942] style; check whether we need libm for exp()
commit c19788e5a89235e937a5aedf2ebea50f33406609
Author: Evan Hunt <each@isc.org >
Date: Thu May 29 15:31:19 2014 -0700
[rt35942] incidental spelling error fixed
commit c833326ad0df21e2a8b35958e85ccc0a692e38be
Author: Mukund Sivaraman <muks@isc.org >
Date: Thu May 29 11:34:37 2014 +0530
Revert "Add function to find rank of a binary matrix"
This reverts commit 21b2f230e17f7fc638f81d9a34bcb148b0c4a6fb.
This test will be added in RT#36125.
commit cf786a533d34fdcd9e1c5650356e56d33e93a29f
Author: Mukund Sivaraman <muks@isc.org >
Date: Thu May 29 11:33:18 2014 +0530
Revert "Add binary matrix rank RNG test"
This reverts commit dd843b9ca84fa9af80ec39631152f82778f0b97c.
This test will be added in RT#36125.
commit dd843b9ca84fa9af80ec39631152f82778f0b97c
Author: Mukund Sivaraman <muks@isc.org >
Date: Tue May 27 06:01:10 2014 +0530
Add binary matrix rank RNG test
commit 21b2f230e17f7fc638f81d9a34bcb148b0c4a6fb
Author: Mukund Sivaraman <muks@isc.org >
Date: Mon May 26 15:45:31 2014 +0530
Add function to find rank of a binary matrix
commit 313c30088d6ba933bde3abb920f2a6d16b9b77e1
Author: Mukund Sivaraman <muks@isc.org >
Date: Mon May 26 13:38:44 2014 +0530
Add block frequency random test
commit 0d279c60ed3eabe52cf3e1435bf14ec62752536f
Author: Mukund Sivaraman <muks@isc.org >
Date: Mon May 26 13:04:03 2014 +0530
Add preconditions from NIST spec
commit 7a6c5f2ce5078814d5cf0fea30596e58171174c1
Author: Mukund Sivaraman <muks@isc.org >
Date: Mon May 26 12:51:03 2014 +0530
Add functions to use in RNG tests
commit 8c5cb5594f904f6669cdffaa364f799b4a2c6b58
Author: Mukund Sivaraman <muks@isc.org >
Date: Thu May 22 00:26:10 2014 +0530
Add runs RNG test
commit 4882f078cc2596c0911066ffb783e4dd145a63ec
Author: Mukund Sivaraman <muks@isc.org >
Date: Wed May 21 23:58:20 2014 +0530
Pre-compute bitcounts LUT
commit 896db3809fba2d9884a4a3a2fa847a73e007ad7f
Author: Mukund Sivaraman <muks@isc.org >
Date: Wed May 21 23:30:23 2014 +0530
Fix the bit value being checked (this shouldn't affect the test)
commit b932cbb5dae39eb819db29cf9490fb51d59b7c56
Author: Mukund Sivaraman <muks@isc.org >
Date: Wed May 21 19:35:12 2014 +0530
Add monobits RNG test
commit 7bef19fd8b095aa567a975ef5c97d5812162d92e
Author: Mukund Sivaraman <muks@isc.org >
Date: Wed May 21 16:53:02 2014 +0530
Add API documentation
commit 54483f7feb64b5646dd1da45b1fd396e7d04b926
Author: Mukund Sivaraman <muks@isc.org >
Date: Wed May 21 16:39:03 2014 +0530
Rename isc_rngctx_t to isc_rng_t
commit 7c5031b53555137a82c6b6218cd4dd5e95acf94d
Author: Evan Hunt <each@isc.org >
Date: Tue May 20 23:29:53 2014 -0700
[rt35942] use attach/detach with isc_rngctx_t
commit 8aabae5e09888e6af651ed27bd6b4e9f76334d55
Author: Mukund Sivaraman <muks@isc.org >
Date: Tue May 20 18:32:42 2014 +0530
Move RNG from dispatch.c to libisc
commit e6d4ad4f389998b91d46e95e258cf420cb21d977
Author: Mukund Sivaraman <muks@isc.org >
Date: Mon May 12 19:16:27 2014 +0530
Replace old arc4random with new ChaCha implementation from OpenBSD
2014-06-04 13:44:10 +05:30
Evan Hunt
38c3ed154a
[master] fix race
...
3804. [bug] Corrected a race condition in dispatch.c in which
portentry could be reset leading to an assertion
failure in socket_search(). (Change #3708
addressed the same issue but was incomplete.)
[RT #35128 ]
2014-04-07 13:54:08 -07:00
Mark Andrews
702958d202
3708. [bug] Address a portentry locking issue in dispatch.c.
...
[RT #35128 ]
2014-01-15 15:55:35 +11:00
Tinderbox User
431a83fb29
update copyright notice
2014-01-09 23:46:35 +00:00
Mark Andrews
109f477ed7
silence compiler warning
2014-01-09 15:57:59 +11:00
Evan Hunt
e851ea8260
[master] replace memcpy() with memmove().
...
3698. [cleanup] Replaced all uses of memcpy() with memmove().
[RT #35120 ]
2014-01-08 16:39:05 -08:00
Evan Hunt
2b258a1f5b
[master] dispatch.c race
...
3695. [bug] Address a possible race in dispatch.c. [RT #35107 ]
2013-12-23 09:50:18 -08:00
Evan Hunt
0606c47750
[master] correct dispatch address/port check
...
3690. [bug] Iterative responses could be missed when the source
port for an upstream query was the same as the
listener port (53). [RT #34925 ]
2013-12-12 22:39:12 -08:00
Evan Hunt
b99bfa184b
[master] unify internal and export libraries
...
3550. [func] Unified the internal and export versions of the
BIND libraries, allowing external clients to use
the same libraries as BIND. [RT #33131 ]
2013-04-10 13:49:57 -07:00
Evan Hunt
67adc03ef8
[master] add DSCP support
...
3535. [func] Add support for setting Differentiated Services Code
Point (DSCP) values in named. Most configuration
options which take a "port" option (e.g.,
listen-on, forwarders, also-notify, masters,
notify-source, etc) can now also take a "dscp"
option specifying a code point for use with
outgoing traffic, if supported by the underlying
OS. [RT #27596 ]
2013-03-22 14:05:33 -07:00
Tinderbox User
dc3d68d6fe
update copyright notice
2013-01-11 23:46:02 +00:00
Mark Andrews
99394e9807
3465. [bug] Handle isolated reserved ports. [RT #31778 ]
2013-01-11 14:10:07 +11:00
Mark Andrews
4151109b94
silence clang --analyze warnings
2012-11-30 18:50:38 +11:00
Evan Hunt
47c5b8af92
[master] silence coverity warnings
...
3401. [bug] Addressed Coverity warnings. [RT #31484 ]
2012-10-23 22:04:06 -07:00
Evan Hunt
41bbb34bc2
fix coverity issues
...
3388. [bug] Fixed several Coverity warnings. [RT #30996 ]
2012-10-02 23:44:03 -07:00
Evan Hunt
da35568c71
use correct port range
...
3382. [bug] SOA query from slave used use-v6-udp-ports range,
if set, regardless of the address family in use.
[RT #24173 ]
2012-09-26 13:55:18 -07:00