Author: gd Date: 2006-01-18 16:07:04 +0000 (Wed, 18 Jan 2006) New Revision: 13003
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=13003 Log: Allow to delete the credential cache without calling pam_sm_close_session directly but calling pam_sm_setcred with the PAM_DELETE_CRED. Guenther Modified: trunk/source/nsswitch/pam_winbind.c Changeset: Modified: trunk/source/nsswitch/pam_winbind.c =================================================================== --- trunk/source/nsswitch/pam_winbind.c 2006-01-18 16:05:27 UTC (rev 13002) +++ trunk/source/nsswitch/pam_winbind.c 2006-01-18 16:07:04 UTC (rev 13003) @@ -3,7 +3,7 @@ Copyright Andrew Tridgell <[EMAIL PROTECTED]> 2000 Copyright Tim Potter <[EMAIL PROTECTED]> 2000 Copyright Andrew Bartlett <[EMAIL PROTECTED]> 2002 - Copyright Guenther Deschner <[EMAIL PROTECTED]> 2005 + Copyright Guenther Deschner <[EMAIL PROTECTED]> 2005-2006 largely based on pam_userdb by Cristian Gafton <[EMAIL PROTECTED]> also contains large slabs of code from pam_unix by Elliot Lee <[EMAIL PROTECTED]> @@ -849,6 +849,18 @@ int pam_sm_setcred(pam_handle_t *pamh, int flags, int argc, const char **argv) { + /* parse arguments */ + int ctrl = _pam_parse(argc, argv); + if (ctrl == -1) { + return PAM_SYSTEM_ERR; + } + + _pam_log_debug(ctrl, LOG_DEBUG,"pam_winbind: pam_sm_setcred"); + + if (flags & PAM_DELETE_CRED) { + return pam_sm_close_session(pamh, flags, argc, argv); + } + return PAM_SUCCESS; } @@ -1236,7 +1248,7 @@ * Copyright (c) Andrew Tridgell <[EMAIL PROTECTED]> 2000 * Copyright (c) Tim Potter <[EMAIL PROTECTED]> 2000 * Copyright (c) Andrew Bartlettt <[EMAIL PROTECTED]> 2002 - * Copyright (c) Guenther Deschner <[EMAIL PROTECTED]> 2005 + * Copyright (c) Guenther Deschner <[EMAIL PROTECTED]> 2005-2006 * Copyright (c) Jan R�korajski 1999. * Copyright (c) Andrew G. Morgan 1996-8. * Copyright (c) Alex O. Yuriev, 1996.
