summaryrefslogtreecommitdiff
path: root/libexec/rpc.yppasswdd
diff options
context:
space:
mode:
authorTheo de Raadt <deraadt@cvs.openbsd.org>1996-12-06 01:55:34 +0000
committerTheo de Raadt <deraadt@cvs.openbsd.org>1996-12-06 01:55:34 +0000
commit7f52488716fc8d6e4b0c199cc0787fbeb9441969 (patch)
tree8b3acd4c439a5b63c335fdba88a8d39f72dde9c9 /libexec/rpc.yppasswdd
parent7d36f7824f4cb7e7457eb0e9b9c00449f37ff56b (diff)
vfork w/ exit botch
Diffstat (limited to 'libexec/rpc.yppasswdd')
-rw-r--r--libexec/rpc.yppasswdd/yppasswdd_mkpw.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/libexec/rpc.yppasswdd/yppasswdd_mkpw.c b/libexec/rpc.yppasswdd/yppasswdd_mkpw.c
index 08ba14529b5..62345eb9efe 100644
--- a/libexec/rpc.yppasswdd/yppasswdd_mkpw.c
+++ b/libexec/rpc.yppasswdd/yppasswdd_mkpw.c
@@ -30,7 +30,7 @@
*/
#ifndef LINT
-static char rcsid[] = "$Id: yppasswdd_mkpw.c,v 1.8 1996/08/31 13:54:13 deraadt Exp $";
+static char rcsid[] = "$Id: yppasswdd_mkpw.c,v 1.9 1996/12/06 01:54:58 deraadt Exp $";
#endif
#include <sys/types.h>
@@ -143,7 +143,10 @@ do_mkdb()
(void)fflush(stdout);
if (!(pid = vfork())) {
execl(_PATH_PWD_MKDB, "pwd_mkdb", "-p", tempname, NULL);
- pw_error(_PATH_PWD_MKDB, 1, 1);
+ warn(_PATH_PWD_MKDB);
+ warnx("%s: unchanged", _PATH_MASTERPASSWD);
+ pw_abort();
+ _exit(1);
}
pid = waitpid(pid, &pstat, 0);
if (pid == -1 || !WIFEXITED(pstat) || WEXITSTATUS(pstat) != 0)