From c236d58b5a51290da954ce6b4da3088c8a489cfb Mon Sep 17 00:00:00 2001 From: "Todd C. Miller" Date: Thu, 3 Feb 2022 10:55:45 -0700 Subject: [PATCH] Set client_closure to NULL after freeing it. --- plugins/sudoers/log_client.c | 1 - plugins/sudoers/logging.c | 2 ++ 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/plugins/sudoers/log_client.c b/plugins/sudoers/log_client.c index 50801fbb6..dec2ff7a5 100644 --- a/plugins/sudoers/log_client.c +++ b/plugins/sudoers/log_client.c @@ -1988,7 +1988,6 @@ client_closure_alloc(struct log_details *details, struct timespec *now, oom: sudo_warnx(U_("%s: %s"), __func__, U_("unable to allocate memory")); client_closure_free(closure); - closure = NULL; debug_return_ptr(NULL); } diff --git a/plugins/sudoers/logging.c b/plugins/sudoers/logging.c index 07d78d238..c06f9df16 100644 --- a/plugins/sudoers/logging.c +++ b/plugins/sudoers/logging.c @@ -155,6 +155,7 @@ log_server_reject(struct eventlog *evlog, const char *message, false, SEND_REJECT, message, event_alloc); if (client_closure != NULL) { client_closure_free(client_closure); + client_closure = NULL; ret = true; } @@ -209,6 +210,7 @@ log_server_alert(struct eventlog *evlog, struct timespec *now, SEND_ALERT, emessage ? emessage : message, event_alloc); if (client_closure != NULL) { client_closure_free(client_closure); + client_closure = NULL; ret = true; }