Date: Wed, 21 Apr 2004 07:41:29 -0700 From: "Jin Guojun [NCS]" <j_guojun@lbl.gov> To: Matthew Seaman <m.seaman@infracaninophile.co.uk> Cc: questions@freebsd.org Subject: Re: what things can cause yppasswd failure? Message-ID: <40868819.6D7F6518@lbl.gov> References: <4085889D.C5EA07D7@lbl.gov> <40859A57.68F03A90@lbl.gov> <20040421074109.GA41275@happy-idiot-talk.infracaninophile.co.uk>
next in thread | previous in thread | raw e-mail | index | archive | help
The 5.2.1-R does not have yppasswdd coredump problem, so this could be something in
5.1 only.
We have found what trigged this problem.
When installing bash in a FreeBSD system, it is installed in /usr/local/bin.
To make it consistent with other OS platforms, we made a link from
/usr/local/bin to /bin . However, /etc/shells only knows /usr/local/bin/bash on NIS
server.
When a user with /bin/bash changes passwd, it causes NIS failure.
Since 5.2.1-R does not have problem on catching SIG 11,
I think that this is no longer a problem.
Thanks,
    -Jin
Matthew Seaman wrote:
> On Tue, Apr 20, 2004 at 02:47:03PM -0700, Jin Guojun [NCS] wrote:
> > "Jin Guojun [NCS]" wrote:
> >
> > > We have experience very strange problem on using NIS over FreeBSD 4.x and 5.x.
> > > Some uses can change passwd where other users cannot.
> > >
> > > case 1:    Use FreeBSD 5.1 as NIS server -- NIS client is a FreeBSD 4.9 host
> > > I can change my passwd any time and any where, and most people cannot.
> > > If I change my home directory to anywhere else in the master.passwd file,
> > > re-make in /var/yp directory, then I cannot change my passwd any more.
> > > It causes yppasswdd dying on signal 11, which most users encountered.
> > >
> > > case 2: Use FreeBSD 4.10-BETA as NIS server -- same NIS client
> > > I have no problem to change passwd, other users do. Failure will not
> > > kill yppasswdd, but it returns following error:
> > >
> > > passwd: failed to change NIS password: RPC: Server can't decode arguments
> > >
> > > After this message I still can change my passwd.  Also, changing my home
> > > directory in /var/yp/master.passwd and re-making DO NOT AFFECT
> > > me to change passwd.
> >
> > By searching mail archive, I did not find related problem.
> > This is what we found:
> >
> >     If users login with bash, these users are not able to change their passwd.
> >     The error is:
> >
> >     passwd: failed to change NIS password: RPC: Server can't decode arguments
> >
> > Probably bash is not part of default FreeBSD syste, NIS system has not been
> > tested
> > with bash for changing password.
>
> Interesting: nice work deducing that.  This is clearly a bug --
> certainly if rpc.yppasswdd dies with a SEGV, which should never
> happen.  Please do report this problem via send-pr(1).
>
> However, I think there must be something different about your systems,
> as bash(1) is a popular shell and if this was a general problem I
> should think someone would have complained about it by now.
>
> Does this apply to other shells than bash -- eg zsh(1), ksh(1)?
>
> Does using the '-v' (verbose logging) flag on rpc.yppasswdd get you
> any more information?
>
> Does this still apply if there's an entry for bash in /etc/shells on
> the NIS server?
>
>         Cheers,
>
>         Matthew
>
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?40868819.6D7F6518>
