]> granicus.if.org Git - sudo/commitdiff
Move clearing of AUTHSTATE into aixauth_cleanup.
authorTodd C. Miller <Todd.Miller@courtesan.com>
Thu, 6 Nov 2008 00:14:45 +0000 (00:14 +0000)
committerTodd C. Miller <Todd.Miller@courtesan.com>
Thu, 6 Nov 2008 00:14:45 +0000 (00:14 +0000)
auth/aix_auth.c
auth/sudo_auth.h

index 38f80c380437cb7c79adea9e753a6c4f7a8f55d3..87f82d75a065251cda41c69f7063ec680ef992a0 100644 (file)
@@ -70,10 +70,19 @@ aixauth_verify(pw, prompt, auth)
        /* XXX - should probably print message on failure. */
        if (authenticate(pw->pw_name, pass, &reenter, &message) == 0)
            rval = AUTH_SUCCESS;
-       /* Unset AUTHSTATE as it may not be correct for the runas user. */
-       sudo_unsetenv("AUTHSTATE");
        free(message);
        zero_bytes(pass, strlen(pass));
     }
     return(rval);
 }
+
+int
+aixauth_cleanup(pw, auth)
+    struct passwd *pw;
+    sudo_auth *auth;
+{
+    /* Unset AUTHSTATE as it may not be correct for the runas user. */
+    sudo_unsetenv("AUTHSTATE");
+
+    return(AUTH_SUCCESS);
+}
index 0a2b231b481269de79987c13b089aedea8d4d93a..2783744b2213f42652e4530ee17da33f3e6daa44 100644 (file)
@@ -99,7 +99,7 @@ int securid_verify __P((struct passwd *pw, char *pass, sudo_auth *auth));
 #elif defined(HAVE_AIXAUTH)
 #  define AUTH_STANDALONE \
        AUTH_ENTRY(0, "aixauth", \
-           NULL, NULL, aixauth_verify, NULL)
+           NULL, NULL, aixauth_verify, aixauth_cleanup)
 #elif defined(HAVE_FWTK)
 #  define AUTH_STANDALONE \
        AUTH_ENTRY(0, "fwtk", \