diff -ru pam_keyring-0.0.8.orig/src/compat.c pam_keyring-0.0.8/src/compat.c --- pam_keyring-0.0.8.orig/src/compat.c 2006-06-02 13:04:37.000000000 -0400 +++ pam_keyring-0.0.8/src/compat.c 2006-10-02 00:03:20.000000000 -0400 @@ -37,15 +37,15 @@ if (!msgbuf) { syslog (LOG_AUTHPRIV|LOG_CRIT, "%s: vasprintf: %m", "pam_keyring"); - closelog(); - return; - } - - syslog (LOG_AUTHPRIV|priority, "%s: %s: %s", + } else { + syslog (LOG_AUTHPRIV|priority, "%s: %s: %s", "pam_keyring", service, msgbuf); + free(msgbuf); // _pam_overwrite(msgbuf); + } closelog(); + } /* @@ -53,7 +53,7 @@ * response. */ int -pam_prompt(pam_handle_t *pamh, int style, const char *prompt, char **user_msg) +pam_prompt(pam_handle_t *pamh, int style, char **user_msg, const char *prompt) { int retval; const void *item; diff -ru pam_keyring-0.0.8.orig/src/compat.h pam_keyring-0.0.8/src/compat.h --- pam_keyring-0.0.8.orig/src/compat.h 2006-06-01 13:15:38.000000000 -0400 +++ pam_keyring-0.0.8/src/compat.h 2006-10-01 23:56:46.000000000 -0400 @@ -6,6 +6,6 @@ extern int PAM_FORMAT((printf, 4, 5)) PAM_NONNULL((1,4)) pam_prompt (pam_handle_t *pamh, int style, char **response, - const char *fmt, ...); + const char *prompt); #endif