Bill Paul 0c06051e16 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/<some garbage string>/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)
1996-05-08 15:57:11 +00:00
..