Změna hesla v NIS doméně
Pavel Just
Pavel.Just na ais.cz
Úterý Listopad 16 15:46:17 CET 2004
Zdravím.
Píšu aplikaci, která má m.j. dovolit uživateli změnu hesla. Jsem NIS
klient. (Linux RH 7.3 i nebo Debian sarge, NIS server je RH 7.3). Program
/usr/bin/passwd proběhne úspěšne. Moje aplikace ne. Vlastní ji root a je
suid.
Kód vypadá takto:
pamh = NULL;
conv.conv = back_conv;
conv.appdata_ptr = strdup(new_passwd);
retval = pam_start("chpas", username, &conv, &pamh);
if (retval != PAM_SUCCESS)
{
if (debug) fprintf(stderr,"%s\n",pam_strerror(pamh,retval));
return (5);
}
retval = pam_chauthtok(pamh,0);/* bylo i PAM_CHANGE_EXPIRED_AUTHTOK*/
if (retval != PAM_SUCCESS)
{
if (debug) fprintf(stderr,"%s\n",pam_strerror(pamh,retval));
retval = pam_end(pamh, retval);
return (6);
}
retval = pam_end(pamh, retval);
return retval;
Funkce back_conv je zatím opsaná z passwd 0.67. Vždy to vypadne s
návratový kódem 6 a retval je v tu chívli 20, což je "Authentication token
manipulation error"
Kde mám chybu ?
Pavel Just
--
-----------------------------------
Tato zpráva neobsahuje viry, protože nepoužívám MS Windows.
Další informace o konferenci Linux