Re: Bug#155583: radiusd-freeradius history and future
On Wed, Nov 12, 2003 at 05:59:09PM +0100, Andreas Metzler wrote:
> You are wrong, unix_chkpwd does NIS (at least in the szenario I just
> tested). After changing unix_chkpwd from 4755 root:root to 2755
> root:shadow a NIS user can not unlock the terminal he has just locked
> himself with vlock anymore.
>
> The NIS-server is configured with
> * : * : shadow.byname : port
> * : * : passwd.adjunct.byname : port
>
> and
>
> MERGE_PASSWD=false
The code does this:
if (strcmp(pwd->pw_passwd, "*NP*") == 0) { /* NIS+
*/
uid_t save_uid;
save_uid = geteuid();
seteuid(pwd->pw_uid);
spwdent = getspnam(name);
seteuid(save_uid);
salt = x_strdup(spwdent->sp_pwdp);
} else {
salt = x_strdup(pwd->pw_passwd);
}
Obviously, seteuid isn't going to work when we aren't root.
--
- mdz
Reply to: