bind9/bin/tests
Ondřej Surý 6c54337f52 avoid a race in the qpzone getsigningtime() implementation
the previous commit introduced a possible race in getsigningtime()
where the rdataset header could change between being found on the
heap and being bound.

getsigningtime() now looks at the first element of the heap, gathers the
locknum, locks the respective lock, and retrieves the header from the
heap again.  If the locknum has changed, it will rinse and repeat.
Theoretically, this could spin forever, but practically, it almost never
will as the heap changes on the zone are very rare.

we simplify matters further by changing the dns_db_getsigningtime()
API call. instead of passing back a bound rdataset, we pass back the
information the caller actually needed: the resigning time, owner name
and type of the rdataset that was first on the heap.
2024-04-25 15:48:43 -07:00
..
startperf Reformat shell scripts with shfmt 2023-10-26 10:23:50 +02:00
system avoid a race in the qpzone getsigningtime() implementation 2024-04-25 15:48:43 -07:00
testdata/wire move all optional tests from bin/tests to bin/tests/optional 2018-03-09 14:12:47 -08:00
.gitignore Refactor TLSDNS module to work with libuv/ssl directly 2021-01-25 09:19:22 +01:00
convert-trs-to-junit.py Auto-format Python files with black 2022-06-08 10:28:08 +02:00
Makefile.am Fix JUnit test status generator for out-of-tree system tests 2022-09-22 15:20:23 +02:00
test_client.c Use EXIT_SUCCESS and EXIT_FAILURE 2024-02-08 08:01:58 +01:00
test_server.c Use EXIT_SUCCESS and EXIT_FAILURE 2024-02-08 08:01:58 +01:00
wire_test.c Use EXIT_SUCCESS and EXIT_FAILURE 2024-02-08 08:01:58 +01:00