From 8d7e013726f89140403e7f4f173968db99696748 Mon Sep 17 00:00:00 2001 From: Simon Josefsson Date: Tue, 24 Mar 2009 13:38:33 +0000 Subject: [PATCH] Don't pass integers via pam_set_data/pam_get_data. --- NEWS | 4 ++++ pam_yubico.c | 4 ++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/NEWS b/NEWS index 4d8c5a4..bd959b1 100644 --- a/NEWS +++ b/NEWS @@ -2,6 +2,10 @@ pam_yubico NEWS -- History of user-visible changes. -*- outline -*- * Version 1.13 (unreleased) +** Don't pass integers via pam_set_data/pam_get_data. +May solve problems on 64-bit platforms. Based on patch from +forum.yubico.com. + * Version 1.12 (released 2009-03-24) ** Add support for "use_first_pass" and "try_first_pass". diff --git a/pam_yubico.c b/pam_yubico.c index 06d0f82..eeb92de 100644 --- a/pam_yubico.c +++ b/pam_yubico.c @@ -567,7 +567,7 @@ done: } if (debug) D (("done. [%s]", pam_strerror (pamh, retval))); - pam_set_data (pamh, "yubico_setcred_return", (void *) retval, NULL); + pam_set_data (pamh, "yubico_setcred_return", &retval, NULL); return retval; } @@ -583,7 +583,7 @@ pam_sm_setcred (pam_handle_t * pamh, int flags, int argc, const char **argv) /* TODO: ? */ retval = pam_get_data (pamh, "yubico_setcred_return", - (const void **) &auth_retval); + &auth_retval); if (retval != PAM_SUCCESS) return PAM_CRED_UNAVAIL;