Purpose of commit: bugfix
Commit summary:
---------------
Fix memory leak in pam_vprompt and adjust printf attribute. Patch
from Dmitry V. Levin.
pam_vprompt (pam_handle_t *pamh, int style, char **response,
const char *fmt, va_list args);
-extern int PAM_FORMAT((printf, 4, 0)) PAM_NONNULL((4))
+extern int PAM_FORMAT((printf, 4, 5)) PAM_NONNULL((4))
pam_prompt (pam_handle_t *pamh, int style, char **response,
const char *fmt, ...);
if (response)
*response = pam_resp == NULL ? NULL : pam_resp->resp;
_pam_overwrite (msgbuf);
+ _pam_drop (pam_resp);
free (msgbuf);
if (retval != PAM_SUCCESS)
_pam_system_log (LOG_ERR, "conversation failed");
return retval;
}
-int PAM_FORMAT((printf, 4, 0)) PAM_NONNULL((4))
+int PAM_FORMAT((printf, 4, 5)) PAM_NONNULL((4))
pam_prompt (pam_handle_t *pamh, int style, char **response,
const char *fmt, ...)
{