@@ -402,6 +402,8 @@ rdns_process_timer (void *arg) | |||
if (!renew) { | |||
req->async->del_timer (req->async->data, | |||
req->async_event); | |||
req->async_event = NULL; | |||
HASH_DEL (req->io->requests, req); | |||
} | |||
/* We have not scheduled timeout actually due to send error */ | |||
@@ -480,6 +482,7 @@ rdns_process_retransmit (int fd, void *arg) | |||
resolver->async->del_write (resolver->async->data, | |||
req->async_event); | |||
req->async_event = NULL; | |||
r = rdns_send_request (req, fd, false); | |||
@@ -409,12 +409,16 @@ rdns_request_free (struct rdns_request *req) | |||
req->async_event); | |||
/* Remove from id hashes */ | |||
HASH_DEL (req->io->requests, req); | |||
req->async_event = NULL; | |||
} | |||
else if (req->state == RDNS_REQUEST_WAIT_SEND) { | |||
/* Remove retransmit event */ | |||
req->async->del_write (req->async->data, | |||
req->async_event); | |||
HASH_DEL (req->io->requests, req); | |||
req->async_event = NULL; | |||
} | |||
} | |||
#ifdef TWEETNACL | |||
if (req->curve_plugin_data != NULL) { |