[SunHELP] solaris 2.8 getpwnam() strange behaviour ...
Adrian.Florea at alcatel.ro
Adrian.Florea at alcatel.ro
Thu Mar 6 05:30:35 CST 2003
Hi,
On Thu, 6 Mar 2003, DAUBIGNE Sebastien - BOR ( SDaubigne at bordeaux-bersol.sema.slb.com ) wrote:
> You said : "getpwnam returns a bad encrypted password"
>
> As stated in the man page of getpwnam() :
>
> "The pw_passwd field in the passwd structure should not be
> used as the encrypted password for the user; use getspnam()
> or getspnam_r() instead. See getspnam(3C)"
First I'm trying getpwnam() and then I call getspnam();
> Now, if you using getspnam() instead, I guess it should be called from
> a process which has euid of root, because of /etc/shadow access, which
> it seems not to be the case ("Apache is running as a non-root user").
> >From man getspnam() :
> "Access to the /etc/shadow file is generally restricted to processes running
>
> as the super-user (root)"
>
I call both functions from inside a PAM AUTH module (library).
then several login services are filtered through PAM.
All of them work fine (rlogin, su, telnet, ssh, CDE/dtlogin, ...) but
Apache with a PAM module works in strange ways ... i.e. in this case
getpwnam()/getspnam() calls are successful partialy (it fails once from 4
tries for example).
> ---
> Sebastien DAUBIGNE
> sdaubigne at bordeaux-bersol.sema.slb.com
> <mailto:sdaubigne at bordeaux-bersol.sema.slb.com> - (+33)5.57.26.56.36
> SchlumbergerSema - SGS/DWH/Pessac
>
> -----Message d'origine-----
> De: Adrian.Florea at alcatel.ro [SMTP:Adrian.Florea at alcatel.ro]
> Date: jeudi 6 mars 2003 11:06
> @: sunhelp at sunhelp.org
> Objet: [SunHELP] solaris 2.8 getpwnam() strange behaviour ...
>
> hello guys,
>
> Please, give me a feedback if you heared of such a problem:
>
> - I have a web user interface in which a user can chnage his
> password.
> - I'm using as backend Apache + a PAM auth Apache module
> - PAM modules are also customized by me
>
> inside the PAM authentication module I make a call to
> getpwnam/getspnam
> but between subsequent calls to these functions different bad values
> are
> returned. That's the case when the user change it's password and
> then is
> not recognized by the PAM because getpwnam returns a bad encrypted
> password.
>
> It seems that getpwnam/getspnam does not return always the good
> encrypted
> password for a user.
>
> Apache is running as a non-root user.
>
> In Apache logs I see, whenever the auth fails (because of
> getpwnam/getspnam) the err message like: "(9) Bad file number" or
> "(13)
> Permission denied"
>
>
> Thanks in advance,
> Adrian FLOREA
>
>
> P.S. all other login services (rlogin, telnet, ssh, ...) are
> filtered
> through PAM and work very fine.
> _______________________________________________
> SunHELP maillist - SunHELP at sunhelp.org
> http://www.sunhelp.org/mailman/listinfo/sunhelp
> _______________________________________________
> SunHELP maillist - SunHELP at sunhelp.org
> http://www.sunhelp.org/mailman/listinfo/sunhelp
More information about the SunHELP
mailing list