{
int pam_error;
+ *pamh = (pam_handle_t *)NULL;
+
DEBUG(4,("PAM: Init user: %s\n", user));
pam_error = pam_start("samba", user, &smb_pam_conversation, pamh);
if( !smb_pam_error_handler(*pamh, pam_error, "Init Failed", 0)) {
- smb_pam_end(*pamh);
+ *pamh = (pam_handle_t *)NULL;
return False;
}
pam_error = pam_set_item(*pamh, PAM_RHOST, rhost);
if(!smb_pam_error_handler(*pamh, pam_error, "set rhost failed", 0)) {
smb_pam_end(*pamh);
+ *pamh = (pam_handle_t *)NULL;
return False;
}
#endif
pam_error = pam_set_item(*pamh, PAM_TTY, "samba");
if (!smb_pam_error_handler(*pamh, pam_error, "set tty failed", 0)) {
smb_pam_end(*pamh);
+ *pamh = (pam_handle_t *)NULL;
return False;
}
#endif
}
if (!smb_pam_start(&pamh, user, rhost)) {
- smb_pam_end(pamh);
return False;
}
{
int pam_error;
+ *pamh = (pam_handle_t *)NULL;
+
DEBUG(4,("PAM: Init user: %s\n", user));
pam_error = pam_start("samba", user, &smb_pam_conversation, pamh);
if( !smb_pam_error_handler(*pamh, pam_error, "Init Failed", 0)) {
- smb_pam_end(*pamh);
+ *pamh = (pam_handle_t *)NULL;
return False;
}
pam_error = pam_set_item(*pamh, PAM_RHOST, rhost);
if(!smb_pam_error_handler(*pamh, pam_error, "set rhost failed", 0)) {
smb_pam_end(*pamh);
+ *pamh = (pam_handle_t *)NULL;
return False;
}
#endif
pam_error = pam_set_item(*pamh, PAM_TTY, "samba");
if (!smb_pam_error_handler(*pamh, pam_error, "set tty failed", 0)) {
smb_pam_end(*pamh);
+ *pamh = (pam_handle_t *)NULL;
return False;
}
#endif
}
if (!smb_pam_start(&pamh, user, rhost)) {
- smb_pam_end(pamh);
return False;
}