Ondřej Surý
22c0f129ae
Add support for cmocka assert testing by overriding REQUIRE/INSIST/... macros when UNIT_TESTING is defined
...
(cherry picked from commit 52731c000d )
2018-11-12 12:56:15 +11:00
Ondřej Surý
9000f73ba3
Properly use ATOMIC_*_LOCK_FREE preprocessor constants
...
The ATOMIC_*_LOCK_FREE can evalutate either 0, 1, or 2 which indicate the
lock-free property of the corresponding atomic types (both signed and unsigned).
Value Explanation
----- --------------------------------------
0 The atomic type is never lock-free
1 The atomic type is sometimes lock-free
2 The atomic type is always lock-free
----- --------------------------------------
(cherry picked from commit a5e7901eb9 )
2018-11-09 05:00:32 +07:00
Ondřej Surý
2079e44fb9
Define PK11_UTIMACO_FLAVOR and add detection code to configure.ac
2018-11-09 00:07:44 +07:00
Ondřej Surý
c5b54803cd
Remove dummy ISLOCKED macro
...
(cherry picked from commit 68ca987792 )
(cherry picked from commit 5ad72603a8 )
2018-11-08 22:42:52 +07:00
Ondřej Surý
f1224b4af1
When ISC assertions are disabled, still execute the condition to prevent unused variable warnings/errors from the compiler
...
(cherry picked from commit a831e0f72d )
(cherry picked from commit 3d834566f1 )
2018-11-08 22:03:00 +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ý
9d15323e24
Add small tweaks to the code to fix compilation when ISC assertions are disabled
...
While implementing the new unit testing framework cmocka, it was found that the
BIND 9 code doesn't compile when assertions are disabled or replaced with any
function (such as mock_assert() from cmocka unit testing framework) that's not
directly recognized as assertion by the compiler.
This made the compiler to complain about blocks of code that was recognized as
unreachable before, but now it isn't.
The changes in this commit include:
* assigns default values to couple of local variables,
* moves some return statements around INSIST assertions,
* adds __builtin_unreachable(); annotations after some INSIST assertions,
* fixes one broken assertion (= instead of ==)
(cherry picked from commit fbd2e47f51 )
(cherry picked from commit b222783ae9 )
2018-11-08 22:00:49 +07:00
Mark Andrews
67816c747d
document eol
...
(cherry picked from commit 97a680e5ce )
2018-10-30 11:18:06 +11:00
Mark Andrews
ced589e379
avoid macro name collision with system defined macro
...
(cherry picked from commit 81b133d963 )
2018-09-10 09:30:59 +10:00
Ondřej Surý
b92a1791b3
Use isc/stdatomic.h to switch to __atomic builtins when compiling in C++ mode
2018-09-07 16:55:22 +02:00
Witold Kręcicki
3da95ab2ed
Align CMSG buffers to a void* boundary, fixes crash on architectures with strict alignment
...
CHANGES entry
(cherry picked from commit 17212cf996 )
2018-09-07 10:30:12 +02:00
Ondřej Surý
302cae89f3
Bail-out early in the for install loops instead of continuing because for masks the error in the middle
...
(cherry picked from commit 25248eb097 )
(cherry picked from commit 3fbceba0a8 )
2018-09-03 13:49:35 +02:00
Witold Krecicki
eec06494aa
Silence some warnings and errors
...
(cherry picked from commit 0f0dfc7f86 )
2018-08-31 17:54:54 -07:00
Ondřej Surý
32a0d602ea
We want to install compatibility shim isc/int.h and isc/boolean.h headers
2018-08-22 09:07:39 +02:00
Ondřej Surý
a2ffc37ad3
Don't install removed int.h and boolean.h headers
2018-08-14 20:14:05 -04:00
Ondřej Surý
0a10dfa524
Add compatibility isc/boolean.h and isc/int.h headers
...
(cherry picked from commit 0dad73aafa )
2018-08-10 15:20:58 +02: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
Ondřej Surý
bfc6a25f2d
Replace ISC_PRINT_QUADFORMAT with inttypes.h format constants
...
(cherry picked from commit 64fe6bbaf2 )
(cherry picked from commit c863a076ae )
2018-08-10 15:20:57 +02:00
Evan Hunt
b75a2b9730
improve readability of radix code
...
- use RADIX_V4, RADIX_V6, RADIX_V4_ECS, and RADIX_V6_ECS as array
indices instead of 0 through 3.
- remove some unused macros
(cherry picked from commit f7f20b1202 )
2018-06-08 12:11:19 -07:00
Michał Kępień
803537b991
isc_buffer_*(): if source can be NULL, only call memmove() when length is non-zero
...
Certain isc_buffer_*() functions might call memmove() with the second
argument (source) set to NULL and the third argument (length) set to 0.
While harmless, it triggers an ubsan warning:
runtime error: null pointer passed as argument 2, which is declared to never be null
Modify all memmove() call sites in lib/isc/include/isc/buffer.h and
lib/isc/buffer.c which may potentially use NULL as the second argument
(source) so that memmove() is only called if the third argument (length)
is non-zero.
(cherry picked from commit 6ddbca6f2b )
2018-05-15 09:32:19 +02:00
Ondřej Surý
188526f41c
Remove $Id markers, Principal Author and Reviewed tags from the full source tree
...
(cherry picked from commit 55a10b7acd )
2018-05-11 14:25:15 +02:00
Evan Hunt
09cf48603a
update file headers
2018-03-15 18:38:48 -07:00
Evan Hunt
8b205089b7
update file headers to remove copyright years
2018-03-14 16:40:20 -07:00
Mark Andrews
5bcd0fe019
copyrights
2018-01-25 16:47:34 +11:00
Mark Andrews
31c7ab4fb3
4811. [bug] Revert api changes to use <isc/buffer.h> inline
...
macros. Provide a alternative mechanism to turn
on the use of inline macros when building BIND.
[RT #46520 ]
(cherry picked from commit a1a5145867 )
2018-01-25 16:42:37 +11:00
Evan Hunt
567aab801d
[v9_11] copyrights
2018-01-24 09:50:56 -08:00
Mark Andrews
fc04365d2f
4875. [bug] Address compile failures on older systems. [RT #47015 ]
...
(cherry picked from commit 99178b6329 )
2018-01-24 13:10:44 +11:00
Tinderbox User
9eb24f1f84
update copyright notice / whitespace
2018-01-17 23:47:10 +00:00
Francis Dupont
f9c410d937
Merged rt46864 (check MD5 amd SHA1 support)
2018-01-17 14:40:13 +01:00
Tinderbox User
a1cf2291a9
update copyright notice / whitespace
2017-12-06 23:46:07 +00:00
Mukund Sivaraman
16f43564c6
Backport performance work to 9.11 ( #45637 )
2017-12-06 10:35:21 +05:30
Mark Andrews
de9c02bbe8
silence compiler warning [RT #46471 ]
2017-11-23 17:02:31 +11:00
Mark Andrews
24231e53a5
4804. [port] win32: access() does not work on directories as
...
required by POSIX. Supply a alternative in
isc_file_isdirwritable. [RT #46394 ]
2017-11-01 09:39:08 +11:00
Tinderbox User
ff2d95be3d
update copyright notice / whitespace
2017-10-19 23:46:54 +00:00
Mark Andrews
659b66eb54
s/REQUIRE/ISC_REQUIRE/; include <isc/assertions.h> if ISC_REQUIRE is used; include <isc/likely.h> if ISC_{UN}LIKELY is used
...
(cherry picked from commit 0fab171196 )
2017-10-19 16:47:23 +11:00
Mark Andrews
f44202ab64
4774. [bug] <isc/util.h> was incorrectly included in several
...
header files. [RT #46311 ]
(cherry picked from commit fe79e2efbf )
2017-10-19 12:32:53 +11:00
Tinderbox User
3d5ed84c6f
update copyright notice / whitespace
2017-10-17 23:49:26 +00:00
Michał Kępień
ad9772c559
[v9_11] Doxygen fixes and cleanups
...
4773. [doc] Fixed generating Doxygen documentation for functions
annotated using certain macros. Miscellaneous
Doxygen-related cleanups. [RT #46276 ]
(cherry picked from commit 2361003a88 )
2017-10-17 06:58:05 +02:00
Tinderbox User
8a99b24dbe
update copyright notice / whitespace
2017-10-06 23:46:41 +00:00
Evan Hunt
f592d2f76c
[v9_11] further restrict update-policy local
...
4762. [func] "update-policy local" is now restricted to updates
from local addresses. (Previously, other addresses
were allowed so long as updates were signed by the
local session key.) [RT #45492 ]
2017-10-06 15:43:18 -07:00
Tinderbox User
0bf752f483
update copyright notice / whitespace
2017-09-27 23:46:52 +00:00
Mukund Sivaraman
a8fa3e2d44
Make isc_refcount_current() atomically read the counter value ( #46074 )
...
(cherry picked from commit abb8813a33 )
2017-09-27 15:09:42 +05:30
Mark Andrews
d72952cf25
4739. [cleanup] Address clang static analysis warnings. [RT #45952 ]
...
(cherry picked from commit f9f3f20d2d )
2017-09-27 10:58:44 +10:00
Mukund Sivaraman
dc0d95a23d
Use stdint.h only when stdatomic.h is in use (stdint.h isn't available everywhere)
...
(cherry picked from commit fb9712f639 )
2017-09-22 15:15:34 +05:30
Tinderbox User
8688e7005a
update copyright notice / whitespace
2017-09-19 23:47:50 +00:00
Mukund Sivaraman
b5252fcde5
Don't use memset() to wipe memory ( #45947 )
...
(cherry picked from commit d5707676e4 )
2017-09-19 17:00:37 +05:30
Mukund Sivaraman
9905606390
Use C11's stdatomic.h instead of isc_atomic where available
...
(cherry picked from commit 404c9b1c53 )
2017-09-19 15:49:21 +05:30
Tinderbox User
bd911976d5
update copyright notice / whitespace
2017-09-13 23:52:25 +00:00
Evan Hunt
7cd594b842
[master] cleanup strcat/strcpy
...
4722. [cleanup] Clean up uses of strcpy() and strcat() in favor of
strlcpy() and strlcat() for safety. [RT #45981 ]
(cherry picked from commit 114f95089c )
2017-09-13 00:17:16 -07:00