commit 884859db3da820f53e4d77ce276983bf0a645868 from: Kirill A. Korinsky date: Fri Jan 31 23:33:59 2025 UTC Abort unfinished DNS query inside free commit - d8f487e36030722307b385bbdd08952816096215 commit + 884859db3da820f53e4d77ce276983bf0a645868 blob - ead4882b255d7b34343a880797c6ec1d4bd3336e blob + 86e7237b15ee6d9e56e4cffcbf79a5019de5357a --- main.c +++ main.c @@ -285,6 +285,8 @@ dkim_message_free(struct osmtpd_ctx *ctx, void *data) free(msg->header[i].sig->h[j]); free(msg->header[i].sig->h); EVP_PKEY_free(msg->header[i].sig->p); + if (msg->header[i].sig->query) + event_asr_abort(msg->header[i].sig->query); } free(msg->header[i].buf); free(msg->header[i].sig); @@ -496,6 +498,10 @@ dkim_lookup_record(struct signature *sig, const char * sig->nqueries++; + if (sig->query != NULL) { + event_asr_abort(sig->query); + sig->query = NULL; + } if ((query = res_query_async(domain, C_IN, T_TXT, NULL)) == NULL) osmtpd_err(1, "res_query_async");