fix: dev: Fix data race in offloaded dns_message_checksig()
When verifying a message in an offloaded thread there is a race with the worker thread which writes to the same buffer. Clone the message buffer before offloading. Closes #4929 Merge branch '4929-data-race-in-dns_dnssec_verifymessage-memmove' into 'main' See merge request isc-projects/bind9!9481
This commit is contained in:
@@ -3254,6 +3254,7 @@ dns_message_checksig_async(dns_message_t *msg, dns_view_t *view,
|
||||
dns_message_attach(msg, &chsigctx->msg);
|
||||
dns_view_attach(view, &chsigctx->view);
|
||||
|
||||
dns_message_clonebuffer(msg);
|
||||
isc_work_enqueue(loop, checksig_run, checksig_cb, chsigctx);
|
||||
|
||||
return (DNS_R_WAIT);
|
||||
|
||||
Reference in New Issue
Block a user