Subject: bin/6394: rpc.yppasswdd fails if old password empty
To: None <gnats-bugs@gnats.netbsd.org>
From: Martin J. Laubach <mjl@emsi.priv.at>
List: netbsd-bugs
Date: 11/03/1998 00:56:01
>Number:         6394
>Category:       bin
>Synopsis:       rpc.yppasswdd fails if old password empty
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    bin-bug-people (Utility Bug People)
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Mon Nov  2 16:05:01 1998
>Last-Modified:
>Originator:     Martin J. Laubach
>Organization:
	
>Release:        <NetBSD-current source date>
>Environment:
	
System: NetBSD asparagus 1.3.2 NetBSD 1.3.2 (ASPARAGUS) #14: Sat Aug 29 16:16:00 CEST 1998 mjl@asparagus:/home/temp/kernel/sys/arch/i386/compile/ASPARAGUS i386


>Description:
  Try to change a user's password that is initially emtpy. yppasswd
will complain it cannot change the password.

>How-To-Repeat:
  See above.

>Fix:
  In yppasswdd_mkpw.c change

        if (strcmp(crypt(argp->oldpass, pw->pw_passwd), pw->pw_passwd) != 0)
                RETURN(1);

  to something like

        if (*pw->pw_passwd &&
            strcmp(crypt(argp->oldpass, pw->pw_passwd), pw->pw_passwd) != 0)
                RETURN(1);

>Audit-Trail:
>Unformatted: