diff options
-rw-r--r-- | source3/nsswitch/pam_winbind.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/source3/nsswitch/pam_winbind.c b/source3/nsswitch/pam_winbind.c index b92ff5a8a0..0fb52404d5 100644 --- a/source3/nsswitch/pam_winbind.c +++ b/source3/nsswitch/pam_winbind.c @@ -1054,14 +1054,20 @@ PAM_EXTERN int pam_sm_setcred(pam_handle_t *pamh, int flags, int argc, const char **argv) { + dictionary *d = NULL; + /* parse arguments */ - int ctrl = _pam_parse(pamh, flags, argc, argv, NULL); + int ctrl = _pam_parse(pamh, flags, argc, argv, &d); if (ctrl == -1) { return PAM_SYSTEM_ERR; } _pam_log_debug(pamh, ctrl, LOG_DEBUG, "pam_winbind: pam_sm_setcred (flags: 0x%04x)", flags); + if (d) { + iniparser_freedict(d); + } + if (flags & PAM_DELETE_CRED) { return pam_sm_close_session(pamh, flags, argc, argv); } |