Skip site navigation (1)Skip section navigation (2)
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>

next in thread | raw e-mail | index | archive | help

>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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199807150850.BAA15849>