*BSD News Article 10974


Return to BSD News archive

Received: by minnie.vk1xwt.ampr.org with NNTP
	id AA1096 ; Tue, 23 Feb 93 14:26:02 EST
Newsgroups: comp.unix.bsd
Path: sserve!manuel.anu.edu.au!munnari.oz.au!spool.mu.edu!howland.reston.ans.net!zaphod.mps.ohio-state.edu!caen!destroyer!cs.ubc.ca!unixg.ubc.ca!kakwa.ucs.ualberta.ca!acs.ucalgary.ca!cpsc.ucalgary.ca!xenlink!newt.cuc.ab.ca!deraadt
From: deraadt@newt.cuc.ab.ca (Theo de Raadt)
Subject: 386BSD: YP...
Message-ID: <DERAADT.93Feb10015113@newt.newt.cuc.ab.ca>
Sender: news@newt.cuc.ab.ca
Nntp-Posting-Host: newt.fsa.ca
Organization: little lizard city
Date: Wed, 10 Feb 1993 08:51:13 GMT
Lines: 85

I sat down today and started modifying the getgrent() and getpwent()
routines to be YP aware. One major change had to be made: I had to
move librpc.a so that it's a part of libc.a. All the routines seem to
work, though getpwnam() and getpwuid() are pretty slow -- I need to
spiffy them up a bit.

I've finished recompiling /bin, and am now recompiling /usr/bin. When
I trust the routines a bit more, I'll recompile /sbin and /usr/sbin.
(I had trouble with emacs-18.59 dumping core at startup in it's
malloc.c, don't know why, but maybe it's because of my routines.)

For those who might be interested in this in the future, a word of
warning that installation will NOT be a minor undertaking, UNLESS we
get shared libraries (I'm a fan of sun-style shared libs). For many
people "cd /usr/src; make; make install" is going to be a wee bit too
much... (especially if you have a flaky IRQ13 387 like I do, when 10%
of the stuff causes cc to dump!)

This is a small little list that shows what it currently takes to
install all this stuff... not small... note also that I don't have a
test machine to install this stuff on, so for anyone who wants to
install this once I ship it out, it is going to be PAINFULL.
 <tdr.

	BEFORE
#Ensure you have the domainname patches installed!
#Ensure you have the real crypt(3) installed!
mkdir /usr/include/rpcsvc
mkdir /usr/src/lib/libc/yp
mkdir /usr/src/usr.sbin/yp
mkdir /usr/src/usr.sbin/yp/ypcat
mkdir /usr/src/usr.sbin/yp/ypmatch
mkdir /usr/src/usr.sbin/yp/yppasswd
mkdir /usr/src/usr.sbin/yp/ypset
mkdir /usr/src/usr.sbin/yp/ypwhich
cd /usr/lib; ln -s librpc.a librpcsvc.a
cd /usr/src/lib/libc; mkdir rpc; cd rpc; cp ../../librpc/rpc/* .
rm /usr/src/lib/libc/rpc/Makefile

	CHANGED FILES (there will be more)
/usr/src/lib/libc/Makefile
/usr/src/usr.sbin/Makefile
/usr/include/netdb.h
/usr/include/rpc/rpc.h
/usr/src/lib/librpc/Makefile
/usr/src/lib/librpc/rpc/Makefile
/usr/src/lib/librpc/rpc/rpc.h
/usr/src/lib/libc/gen/getgrent.c
/usr/src/lib/libc/gen/getpwent.c
/usr/src/lib/libc/rpc/getrpcent.c
/usr/src/lib/librpc/rpc/getrpcent.c
/usr/src/usr.bin/passwd/Makefile
/usr/src/usr.bin/passwd/passwd.c

	NEW FILES (there will be more)
/usr/include/rpcsvc/yp_prot.h
/usr/include/rpcsvc/ypclnt.h
/usr/include/rpcsvc/yppasswd.h
/usr/src/lib/libc/yp/theo_yp.h
/usr/src/lib/libc/yp/yplib.c
/usr/src/lib/libc/yp/xdryp.c
/usr/src/lib/libc/yp/xdryppasswd.c
/usr/src/lib/libc/yp/Makefile.inc
/usr/src/usr.sbin/yp/Makefile
/usr/src/usr.sbin/yp/ypbind.c
/usr/src/usr.sbin/yp/theo_yp.h
/usr/src/usr.sbin/yp/ypcat/Makefile
/usr/src/usr.sbin/yp/ypcat/ypcat.c
/usr/src/usr.sbin/yp/ypmatch/Makefile
/usr/src/usr.sbin/yp/ypmatch/ypmatch.c
/usr/src/usr.sbin/yp/yppasswd/Makefile
/usr/src/usr.sbin/yp/yppasswd/yppasswd.c
/usr/src/usr.sbin/yp/ypset/Makefile
/usr/src/usr.sbin/yp/ypset/ypset.c
/usr/src/usr.sbin/yp/ypwhich/Makefile
/usr/src/usr.sbin/yp/ypwhich/ypwhich.c
/usr/src/usr.bin/passwd/yp_passwd.c

	INSTALL
#cd /usr/src/lib/librpc; make; make install
#cd /usr/src/lib/libc; make; make install
cd /usr/src; make; make install
--

This space not left unintentionally unblank.		deraadt@newt.cuc.ab.ca