From 448536e0f78a750566ff73a3f85cde5f48e19b2c Mon Sep 17 00:00:00 2001 From: "Todd C. Miller" Date: Tue, 24 Aug 2021 13:00:52 -0600 Subject: [PATCH] Fold intercept_closure_reset() into intercept_close(). --- src/exec_intercept.c | 35 +++++++---------------------------- 1 file changed, 7 insertions(+), 28 deletions(-) diff --git a/src/exec_intercept.c b/src/exec_intercept.c index 785884382..d5631a062 100644 --- a/src/exec_intercept.c +++ b/src/exec_intercept.c @@ -73,13 +73,17 @@ struct intercept_closure { }; /* - * Reset intercept closure for re-use. + * Close intercept fd and free closure. + * Called on EOF from sudo_intercept.so due to program exit. */ static void -intercept_closure_reset(struct intercept_closure *closure) +intercept_close(int fd, struct intercept_closure *closure) { size_t n; - debug_decl(intercept_closure_reset, SUDO_DEBUG_EXEC); + debug_decl(intercept_close, SUDO_DEBUG_EXEC); + + sudo_ev_del(NULL, &closure->ev); + close(fd); free(closure->buf); free(closure->command); @@ -93,32 +97,7 @@ intercept_closure_reset(struct intercept_closure *closure) free(closure->run_envp[n]); free(closure->run_envp); } - sudo_ev_del(NULL, &closure->ev); - - /* Reset all but the event (which we may reuse). */ - closure->errstr = NULL; - closure->command = NULL; - closure->run_argv = NULL; - closure->run_envp = NULL; - closure->buf = NULL; - closure->len = 0; - closure->policy_result = -1; - - debug_return; -} - -/* - * Close intercept fd and free closure. - * Called on EOF from sudo_intercept.so due to program exit. - */ -static void -intercept_close(int fd, struct intercept_closure *closure) -{ - debug_decl(intercept_close, SUDO_DEBUG_EXEC); - - intercept_closure_reset(closure); free(closure); - close(fd); debug_return; }