Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!uunet!husc6!rutgers!pyrnj!romain From: romain@pyrnj.uucp (Romain Kang) Newsgroups: comp.unix.wizards Subject: Re: NGROUP limit set at 8 Message-ID: <689@pyrnj.uucp> Date: Tue, 27-Oct-87 12:09:37 EST Article-I.D.: pyrnj.689 Posted: Tue Oct 27 12:09:37 1987 Date-Received: Thu, 29-Oct-87 23:15:20 EST References: <9096@mimsy.UUCP> Reply-To: romain@pyrnj.UUCP (Romain Kang) Organization: Pyramid Technology Corp, Woodbridge, NJ Lines: 39 Keywords: NGROUP In article <9096@mimsy.UUCP> sjr@mimsy.UUCP (Stephen J. Roznowski) writes: | it seems that I need to rebuild the | whole system to enlarge NGROUP (located in /usr/include/sys/param.h), | because the C library uses param.h. | | Is there an easier solution? Under vanllia 4.2 BSD, I got a workable system by recompiling /usr/src/lib/libc/gen/initgroups.c replace initgroups.o in /lib/libc.a, /usr/lib/libc_p.a initgroup dependents: /usr/src/bin/{login.c,su.c} /usr/src/ucb/groups.c /usr/src/bin/{ps.c,adb/} /usr/src/ucb/{{w,gcore}.c,dbx/} /usr/src/etc/{pstat,analyze}.c (as well as the kernel, of course.) Under some NFS'd kernels, you might not need to recompile all of these, since the group array was moved out of the user structure. If you don't really need to be in all those groups simultaneously, you could simply re-implement the "newgrp" command using setgid() calls. | Is there a reason why the number of groups is limited to 8? (other | that the fact that most people are in less that 8 groups...) Last I looked, group permission validation was done by a linear scan of the group array. This occurs every time someone needs to open a file, etc. One could take a performance hit by raising NGROUPS willy-nilly. | A related question, how would you make this change on a binary only | distribution? I wouldn't try it. Youi'd probably have to hack binaries without symbol tables. Most people I know don't have that sort of time to kill.