cocci: Add semantic patch to refactor dns_message_destroy()

dns_message_t objects are now being handled using reference counting
semantics, so now dns_message_destroy() is not called directly anymore,
dns_message_detach must be called instead.

(cherry picked from commit 7deaf9a93c)
This commit is contained in:
Diego Fronza
2020-09-30 11:35:23 +10:00
committed by Mark Andrews
parent f557681472
commit 46f22df54c
3 changed files with 13 additions and 7 deletions
+5 -5
View File
@@ -157,12 +157,12 @@ recvresponse(isc_task_t *task, isc_event_t *event) {
CHECK("dns_request_getresponse", result2);
if (response != NULL) {
dns_message_destroy(&response);
dns_message_detach(&response);
}
end:
if (query != NULL) {
dns_message_destroy(&query);
dns_message_detach(&query);
}
if (reqev->request != NULL) {
@@ -255,7 +255,7 @@ end:
dns_message_puttemprdataset(message, &qrdataset);
}
if (message != NULL) {
dns_message_destroy(&message);
dns_message_detach(&message);
}
}
@@ -321,11 +321,11 @@ initctx2(isc_task_t *task, isc_event_t *event) {
tsigkey = NULL;
}
dns_message_destroy(&response);
dns_message_detach(&response);
end:
if (query != NULL) {
dns_message_destroy(&query);
dns_message_detach(&query);
}
if (reqev->request != NULL) {
+2 -2
View File
@@ -111,7 +111,7 @@ recvdone(isc_task_t *task, isc_event_t *event) {
printf("%.*s\n", (int)isc_buffer_usedlength(&outbuf),
(char *)isc_buffer_base(&outbuf));
dns_message_destroy(&response);
dns_message_detach(&response);
isc_event_free(&event);
isc_app_shutdown();
@@ -186,7 +186,7 @@ buildquery(void) {
inr.length = sizeof(rdata);
result = isc_socket_recv(s, &inr, 1, task1, recvdone, NULL);
CHECK("isc_socket_recv", result);
dns_message_destroy(&query);
dns_message_detach(&query);
}
int
+6
View File
@@ -0,0 +1,6 @@
@@
expression M;
@@
- dns_message_destroy(M);
+ dns_message_detach(M);