Date: Wed, 15 Jul 1998 01:50:34 -0700 (PDT) From: andyf@speednet.com.au Subject: bin/7287: Incorrect domain name for MAP_UPDATE in multidomain NIS environment Message-ID: <199807150850.BAA15849@hub.freebsd.org>
index | next in thread | raw e-mail
>Number: 7287
>Category: bin
>Synopsis: Incorrect domain name for MAP_UPDATE in multidomain NIS environment
>Confidential: no
>Severity: non-critical
>Priority: medium
>Responsible: freebsd-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Wed Jul 15 01:50:01 PDT 1998
>Last-Modified:
>Originator: Andy Farkas
>Organization:
Speed Internet Services Pty Ltd
>Release: 2.2.6-RELEASE
>Environment:
FreeBSD johnny.syd.speednet.com.au 2.2.6-RELEASE FreeBSD 2.2.6-RELEASE #0: Mon Jun 1 22:22:08 EST 1998 root@johnny.speednet.com.au:/usr/src/sys/compile/JOHNNY i386
>Description:
When doing a passowrd change on a system with a NIS server supporting
multiple domains, the domain name is passed to the MAP_UPDATE command.
Currently, it is passing an incorrect value.
>How-To-Repeat:
Configure NIS for multi-domain support. run rpc.yppasswdd with the -m
switch. Do a password change on another domain that the master controls.
Look at end of /var/log/messages for error log showing incorrect domain
name.
>Fix:
--- yppasswdd_server.c.orig Wed Nov 5 18:37:01 1997
+++ yppasswdd_server.c Wed Jul 15 17:18:49 1998
@@ -395,7 +395,7 @@
if (!strstr(data.data, pwbuf)) {
yp_error("warning: found entry for user %s \
in map %s@%s with wrong UID", pw->pw_name, maps[i], domain);
- yp_error("there may ne more than one user
+ yp_error("there may be more than one user
with the same name - continuing");
continue;
}
@@ -642,10 +642,10 @@
case 0:
if (inplace && !rval) {
execlp(MAP_UPDATE_PATH, MAP_UPDATE, passfile,
- yppasswd_domain, "pushpw", NULL);
+ domain, "pushpw", NULL);
} else {
execlp(MAP_UPDATE_PATH, MAP_UPDATE, passfile,
- yppasswd_domain, NULL);
+ domain, NULL);
}
yp_error("couldn't exec map update process: %s",
strerror(errno));
@@ -750,7 +750,7 @@
* domain, change the path to master.passwd accordingly.
*/
- if (strcmp(argp->domain, yppasswd_domain)) {
+ if (multidomain) {
snprintf(passfile_buf, sizeof(passfile_buf),
"%s/%s/master.passwd", yp_dir, argp->domain);
passfile = (char *)&passfile_buf;
>Audit-Trail:
>Unformatted:
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-bugs" in the body of the message
help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199807150850.BAA15849>
