From nobody  Thu Sep 17 15:03:19 1998
Received: (from nobody@localhost)
          by hub.freebsd.org (8.8.8/8.8.8) id PAA17615;
          Thu, 17 Sep 1998 15:03:19 -0700 (PDT)
          (envelope-from nobody)
Message-Id: <199809172203.PAA17615@hub.freebsd.org>
Date: Thu, 17 Sep 1998 15:03:19 -0700 (PDT)
From: eburke@syntunix.com
To: freebsd-gnats-submit@freebsd.org
Subject: If /usr/libexec/yppwupdate DNE, rpc.yppasswdd will nuke password maps
X-Send-Pr-Version: www-1.0

>Number:         7968
>Category:       bin
>Synopsis:       If /usr/libexec/yppwupdate DNE, rpc.yppasswdd will nuke password maps
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    mbr
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Thu Sep 17 15:10:01 PDT 1998
>Closed-Date:    Sun Jun 15 03:43:47 PDT 2003
>Last-Modified:  Sun Jun 15 03:43:47 PDT 2003
>Originator:     Eli Burke
>Release:        2.2.7R
>Organization:
Syntunix Technologies
>Environment:
% uname -a
FreeBSD odin.syntunix.com 2.2.7-RELEASE FreeBSD 2.2.7-RELEASE #0: Wed Jul 22 08:48:29 GMT 1998     root@builder.cdrom.com:/usr/src/sys/compile/GENERIC  i386

>Description:
Line 797 of /usr/src/usr.sbin/rpc.yppasswdd/yppasswdd_server.c
If !inplace editing, and MAP_UPDATE (yppwupdate) does not exist,
execlp will fail and the forked child will try to recover by 
restoring the temporary copy of the password map (passfile_hold).
However, the parent process has already unlinked passfile_hold
in the default case of the switch statement.
>How-To-Repeat:
remove /usr/libexec/yppwupdate, run NIS, and change a password
with yppasswd.
>Fix:
rewrite code. At the very least, don't have the child 
unlink(passfile);
Also, hit Bill Paul with a silly stick.
>Release-Note:
>Audit-Trail:
Responsible-Changed-From-To: gnats-admin->freebsd-bugs 
Responsible-Changed-By: steve 
Responsible-Changed-When: Fri Sep 18 22:03:12 PDT 1998 
Responsible-Changed-Why:  
Misfiled PR. 
Responsible-Changed-From-To: freebsd-bugs->mbr 
Responsible-Changed-By: mbr 
Responsible-Changed-When: Tue May 27 16:08:34 PDT 2003 
Responsible-Changed-Why:  
Take this PR. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=7968 
State-Changed-From-To: open->closed 
State-Changed-By: mbr 
State-Changed-When: Sun Jun 15 03:43:29 PDT 2003 
State-Changed-Why:  
Fixed in CURRENT. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=7968 
>Unformatted:
