- 15 Feb, 2018 19 commits
-
-
Mark Andrews authored
-
Mark Andrews authored
-
Mark Andrews authored
-
Mark Andrews authored
-
Mark Andrews authored
-
Mark Andrews authored
-
Mark Andrews authored
-
Mark Andrews authored
-
Mark Andrews authored
-
Mark Andrews authored
-
Mark Andrews authored
-
Mark Andrews authored
-
Michał Kępień authored
Fix DNS_ZONEFLG_LOADPENDING handling See merge request !22
-
Evan Hunt authored
-
Michał Kępień authored
4892. [bug] named could leak memory when "rndc reload" was invoked before all zone loading actions triggered by a previous "rndc reload" command were completed. [RT #47076]
-
Michał Kępień authored
Remove a block of code which dates back to commit 8a2ab2b9, when dns_zone_asyncload() did not yet check DNS_ZONEFLG_LOADPENDING. Currently, no race in accessing DNS_ZONEFLG_LOADPENDING is possible any more, because: - dns_zone_asyncload() is still the only function which may queue zone_asyncload(), - dns_zone_asyncload() accesses DNS_ZONEFLG_LOADPENDING under a lock (and potentially queues an event under the same lock), - DNS_ZONEFLG_LOADPENDING is not cleared until the load actually completes. Thus, the rechecking code can be safely removed from zone_asyncload(). Note that this also brings zone_asyncload() to a state in which the completion callback is always invoked. This is required to prevent leaking memory in case something goes wrong in zone_asyncload() and a zone table the zone belongs to is indefinitely left with a positive reference count.
-
Michał Kępień authored
Code handling cancellation of asynchronous zone load events was likely copied over from other functions when asynchronous zone loading was first implemented in commit 8a2ab2b9. However, unlike those other functions, asynchronous zone loading events currently have no way of getting canceled once they get posted, which means the aforementioned code is effectively dead. Remove it to prevent confusion.
-
Michał Kępień authored
zone_load() is not always synchronous, it may only initiate an asynchronous load and return DNS_R_CONTINUE, which means zone loading has not yet been completed. In such a case, zone_asyncload() must not clear DNS_ZONEFLG_LOADPENDING immediately and leave that up to zone_postload().
-
Michał Kępień authored
While this is not an issue in named, which only calls dns_zone_asyncload() from task-exclusive mode, this function is exported by libdns and thus may in theory be concurrently called for the same zone by multiple threads. It also does not hurt to be consistent locking-wise with other DNS_ZONEFLG_LOADPENDING accesses.
-
- 14 Feb, 2018 4 commits
-
-
Ondřej Surý authored
Archive the full bin/tests/ directory and bin/named/named binary on build/test failure in GitLab CI See merge request !24
-
Ondřej Surý authored
-
- 12 Feb, 2018 17 commits
-
-
Ondřej Surý authored
Update libtool files to 2.4.6 See merge request !4
-
Ondřej Surý authored
Add support for running builds directly from Gitlab CI See merge request !20
-
Ondřej Surý authored
-
Ondřej Surý authored
-
Ondřej Surý authored
-
Ondřej Surý authored
-
Ondřej Surý authored
-
Ondřej Surý authored
-
Ondřej Surý authored
-
Ondřej Surý authored
-
Ondřej Surý authored
-
Ondřej Surý authored
-
Ondřej Surý authored
-
Ondřej Surý authored
-
Ondřej Surý authored
-
Ondřej Surý authored
-
Ondřej Surý authored
-