Merge pull request #172 from moobyfr/fix-pam-leak

If auth fails, call pam_end so PAM backends can call _cleanup
This commit is contained in:
Idan Freiberg 2014-09-20 09:44:54 -04:00
commit 2e0d58fbfe

View File

@ -122,6 +122,7 @@ auth_userpass(char *user, char *pass, int *errorcode)
*errorcode = error ; *errorcode = error ;
} }
g_printf("pam_start failed: %s\r\n", pam_strerror(auth_info->ph, error)); g_printf("pam_start failed: %s\r\n", pam_strerror(auth_info->ph, error));
pam_end(auth_info->ph, error);
g_free(auth_info); g_free(auth_info);
return 0; return 0;
} }
@ -135,6 +136,7 @@ auth_userpass(char *user, char *pass, int *errorcode)
} }
g_printf("pam_authenticate failed: %s\r\n", g_printf("pam_authenticate failed: %s\r\n",
pam_strerror(auth_info->ph, error)); pam_strerror(auth_info->ph, error));
pam_end(auth_info->ph, error);
g_free(auth_info); g_free(auth_info);
return 0; return 0;
} }
@ -153,6 +155,7 @@ auth_userpass(char *user, char *pass, int *errorcode)
} }
g_printf("pam_acct_mgmt failed: %s\r\n", g_printf("pam_acct_mgmt failed: %s\r\n",
pam_strerror(auth_info->ph, error)); pam_strerror(auth_info->ph, error));
pam_end(auth_info->ph, error);
g_free(auth_info); g_free(auth_info);
return 0; return 0;
} }