From owner-cvs-usrsbin Wed May 8 08:58:03 1996 Return-Path: owner-cvs-usrsbin Received: (from root@localhost) by freefall.freebsd.org (8.7.3/8.7.3) id IAA16127 for cvs-usrsbin-outgoing; Wed, 8 May 1996 08:58:03 -0700 (PDT) Received: (from wpaul@localhost) by freefall.freebsd.org (8.7.3/8.7.3) id IAA15876 Wed, 8 May 1996 08:57:14 -0700 (PDT) Date: Wed, 8 May 1996 08:57:14 -0700 (PDT) From: Bill Paul Message-Id: <199605081557.IAA15876@freefall.freebsd.org> To: CVS-committers, cvs-all, cvs-usrsbin Subject: cvs commit: src/usr.sbin/rpc.yppasswdd yppasswdd_server.c Sender: owner-cvs-usrsbin@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk wpaul 96/05/08 08:57:13 Modified: usr.sbin/rpc.yppasswdd yppasswdd_server.c Log: Fix 'multidomain' code. It returns a pointer to memory that it doesn't really own (and which can end up being mangled later). The manifestation of this bug is that the first attempt by a user to change their NIS password succeeds, but all subsequent attempts fail. rpc.yppasswdd also logs a message about not being able to find a file called '/var/yp//master.passwd.' (Note that for some bizarre reason, this doesn't happen with the malloc() from FreeBSD 2.1.0. I suppose this means we can chalk up another victory for phkmalloc. :) This bug only occurs if you use the -m flag with rpc.yppasswdd. Fix this by copying the domain name to a static buffer and returning a pointer to that instead. Reported by: Jian-Da Li (jdli@csie.nctu.edu.tw) Revision Changes Path 1.3 +6 -8 src/usr.sbin/rpc.yppasswdd/yppasswdd_server.c