I appreciate the pam module feature having an environment variable
PASSWORD_EXPIRES set after login.
However, migrating from a 31bit system (architecture s390) to a 64bit
system
(architecture s390x) the variable started to contain useless garbage but
the
actual amount of days until the password expires.
After some investigation I found out that this fix should help:
--- src/pam/afs_setcred.c.orig 2003-07-16 01:15:56.000000000 +0200
+++ src/pam/afs_setcred.c 2006-01-09 13:50:45.855802000 +0100
@@ -62,7 +62,7 @@
int auth_ok = 0;
char *lh;
char *user = NULL;
- long password_expires = -1;
+ int password_expires = -1;
char *reason = NULL;
struct passwd unix_pwd, *upwd = NULL;
char upwd_buf[2048]; /* size is a guess. */
It seems that "password_expires" is handled in a 32bit variable and
on 64bit systems the type "long" defaults to a 64bit object.
With kind regards,
Carsten Jacobi (*120-4468)
Firmware Development in Böblingen
IBM Deutschland Entwicklung GmbH
Vorsitzender des Aufsichtsrats: Martin Jetter
Geschäftsführung: Herbert Kircher
Sitz der Gesellschaft: Böblingen
Registergericht: Amtsgericht Stuttgart, HRB 243294