From owner-p4-projects@FreeBSD.ORG Wed Dec 12 23:20:11 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 726A516A480; Wed, 12 Dec 2007 23:20:11 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 121C316A41A for ; Wed, 12 Dec 2007 23:20:11 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id C359B13C46A for ; Wed, 12 Dec 2007 23:20:08 +0000 (UTC) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBCNK8HI085161 for ; Wed, 12 Dec 2007 23:20:08 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBCNK6cn085153 for perforce@freebsd.org; Wed, 12 Dec 2007 23:20:06 GMT (envelope-from peter@freebsd.org) Date: Wed, 12 Dec 2007 23:20:06 GMT Message-Id: <200712122320.lBCNK6cn085153@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Cc: Subject: PERFORCE change 130754 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Dec 2007 23:20:11 -0000 http://perforce.freebsd.org/chv.cgi?CH=130754 Change 130754 by peter@peter_daintree on 2007/12/12 23:19:34 IFC @130733 Affected files ... .. //depot/projects/hammer/Makefile#44 integrate .. //depot/projects/hammer/contrib/amd/FREEBSD-Xlist#4 integrate .. //depot/projects/hammer/contrib/amd/FREEBSD-upgrade#4 integrate .. //depot/projects/hammer/contrib/gcc/config/sparc/freebsd.h#10 integrate .. //depot/projects/hammer/contrib/gcc/fold-const.c#10 integrate .. //depot/projects/hammer/include/nsswitch.h#4 integrate .. //depot/projects/hammer/lib/Makefile#66 integrate .. //depot/projects/hammer/lib/libc/gdtoa/_ldtoa.c#5 integrate .. //depot/projects/hammer/lib/libc/gen/getgrent.c#13 integrate .. //depot/projects/hammer/lib/libc/gen/getgrouplist.c#6 integrate .. //depot/projects/hammer/lib/libc/locale/localeconv.c#4 integrate .. //depot/projects/hammer/lib/libc/net/nsdispatch.c#10 integrate .. //depot/projects/hammer/lib/libc/stdio/vfscanf.c#16 integrate .. //depot/projects/hammer/lib/libc/stdio/vfwscanf.c#13 integrate .. //depot/projects/hammer/lib/libc/stdlib/rand.c#4 integrate .. //depot/projects/hammer/lib/libc/string/strtok.3#5 integrate .. //depot/projects/hammer/lib/libc/string/strtok.c#3 integrate .. //depot/projects/hammer/lib/libc/string/wcstok.c#3 integrate .. //depot/projects/hammer/lib/libthr/thread/thr_mutex.c#37 integrate .. //depot/projects/hammer/release/Makefile#98 integrate .. //depot/projects/hammer/release/doc/zh_CN.GB2312/Makefile#3 integrate .. //depot/projects/hammer/release/doc/zh_CN.GB2312/errata/Makefile#2 integrate .. //depot/projects/hammer/release/doc/zh_CN.GB2312/hardware/Makefile#2 integrate .. //depot/projects/hammer/release/doc/zh_CN.GB2312/hardware/Makefile.inc#2 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/hardware/amd64/Makefile#2 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/hardware/amd64/article.sgml#2 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/hardware/amd64/proc-amd64.sgml#4 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/hardware/article.sgml#1 branch .. //depot/projects/hammer/release/doc/zh_CN.GB2312/hardware/common/artheader.sgml#5 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/hardware/common/dev.sgml#11 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/hardware/common/hw.ent#3 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/hardware/common/intro.sgml#3 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/hardware/i386/Makefile#2 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/hardware/i386/article.sgml#2 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/hardware/i386/proc-i386.sgml#4 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/installation/Makefile#3 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/installation/Makefile.inc#2 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/installation/amd64/Makefile#2 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/installation/amd64/article.sgml#2 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/installation/common/abstract.sgml#2 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/installation/common/artheader.sgml#5 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/installation/common/install.ent#2 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/installation/common/install.sgml#7 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/installation/common/layout.sgml#4 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/installation/common/trouble.sgml#5 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/installation/common/upgrade.sgml#3 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/installation/i386/Makefile#2 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/installation/i386/article.sgml#2 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/installation/ia64/Makefile#2 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/installation/ia64/article.sgml#2 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/installation/pc98/Makefile#2 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/installation/pc98/article.sgml#2 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/installation/sparc64/Makefile#2 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/installation/sparc64/article.sgml#2 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/installation/sparc64/install.sgml#3 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/readme/article.sgml#3 integrate .. //depot/projects/hammer/release/doc/zh_CN.GB2312/relnotes/Makefile#3 integrate .. //depot/projects/hammer/release/doc/zh_CN.GB2312/relnotes/Makefile.inc#2 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/relnotes/amd64/Makefile#2 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/relnotes/amd64/article.sgml#3 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/relnotes/article.sgml#1 branch .. //depot/projects/hammer/release/doc/zh_CN.GB2312/relnotes/common/new.sgml#13 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/relnotes/common/relnotes.ent#2 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/relnotes/i386/Makefile#2 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/relnotes/i386/article.sgml#2 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/relnotes/ia64/Makefile#2 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/relnotes/ia64/article.sgml#2 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/relnotes/pc98/Makefile#2 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/relnotes/pc98/article.sgml#2 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/relnotes/powerpc/Makefile#2 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/relnotes/powerpc/article.sgml#2 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/relnotes/sparc64/Makefile#3 delete .. //depot/projects/hammer/release/doc/zh_CN.GB2312/relnotes/sparc64/article.sgml#3 delete .. //depot/projects/hammer/sbin/bsdlabel/bsdlabel.c#21 integrate .. //depot/projects/hammer/sbin/ifconfig/ifconfig.8#47 integrate .. //depot/projects/hammer/sbin/ifconfig/ifconfig.c#36 integrate .. //depot/projects/hammer/sbin/natd/natd.8#8 integrate .. //depot/projects/hammer/sbin/newfs_msdos/newfs_msdos.8#7 integrate .. //depot/projects/hammer/share/man/man4/nve.4#9 integrate .. //depot/projects/hammer/share/man/man5/src.conf.5#14 integrate .. //depot/projects/hammer/share/man/man7/build.7#17 integrate .. //depot/projects/hammer/share/mk/bsd.own.mk#21 integrate .. //depot/projects/hammer/sys/amd64/amd64/machdep.c#163 integrate .. //depot/projects/hammer/sys/amd64/amd64/pmap.c#169 integrate .. //depot/projects/hammer/sys/arm/arm/pmap.c#47 integrate .. //depot/projects/hammer/sys/cam/scsi/scsi_da.c#44 integrate .. //depot/projects/hammer/sys/compat/freebsd32/freebsd32_misc.c#54 integrate .. //depot/projects/hammer/sys/conf/files#167 integrate .. //depot/projects/hammer/sys/conf/files.amd64#100 integrate .. //depot/projects/hammer/sys/conf/files.i386#86 integrate .. //depot/projects/hammer/sys/dev/amr/amr.c#37 integrate .. //depot/projects/hammer/sys/dev/amr/amr_cam.c#20 integrate .. //depot/projects/hammer/sys/dev/amr/amr_pci.c#26 integrate .. //depot/projects/hammer/sys/dev/amr/amrvar.h#21 integrate .. //depot/projects/hammer/sys/dev/arcmsr/arcmsr.c#15 integrate .. //depot/projects/hammer/sys/dev/if_ndis/if_ndis.c#58 integrate .. //depot/projects/hammer/sys/dev/sound/pci/ich.c#39 integrate .. //depot/projects/hammer/sys/dev/usb/umass.c#47 integrate .. //depot/projects/hammer/sys/dev/usb/usbdevs#92 integrate .. //depot/projects/hammer/sys/fs/udf/udf_vfsops.c#31 integrate .. //depot/projects/hammer/sys/geom/geom_bsd_enc.c#7 integrate .. //depot/projects/hammer/sys/geom/part/g_part.c#10 integrate .. //depot/projects/hammer/sys/i386/i386/machdep.c#82 integrate .. //depot/projects/hammer/sys/i386/i386/pmap.c#104 integrate .. //depot/projects/hammer/sys/kern/kern_proc.c#63 integrate .. //depot/projects/hammer/sys/kern/kern_resource.c#37 integrate .. //depot/projects/hammer/sys/kern/sched_4bsd.c#55 integrate .. //depot/projects/hammer/sys/kern/sched_ule.c#87 integrate .. //depot/projects/hammer/sys/net/bridgestp.c#17 integrate .. //depot/projects/hammer/sys/net/bridgestp.h#4 integrate .. //depot/projects/hammer/sys/net/if.h#29 integrate .. //depot/projects/hammer/sys/net/route.c#29 integrate .. //depot/projects/hammer/sys/net/route.h#16 integrate .. //depot/projects/hammer/sys/netgraph/ng_l2tp.c#13 integrate .. //depot/projects/hammer/sys/netinet/if_ether.c#42 integrate .. //depot/projects/hammer/sys/netinet/ip_fw2.c#90 integrate .. //depot/projects/hammer/sys/netinet/tcp_ofld.c#1 branch .. //depot/projects/hammer/sys/netinet/tcp_ofld.h#1 branch .. //depot/projects/hammer/sys/netinet/tcp_syncache.c#56 integrate .. //depot/projects/hammer/sys/netinet/tcp_syncache.h#2 integrate .. //depot/projects/hammer/sys/netinet/tcp_var.h#50 integrate .. //depot/projects/hammer/sys/netinet/toedev.h#1 branch .. //depot/projects/hammer/sys/netinet6/dest6.c#6 integrate .. //depot/projects/hammer/sys/netinet6/frag6.c#12 integrate .. //depot/projects/hammer/sys/netinet6/icmp6.c#31 integrate .. //depot/projects/hammer/sys/netinet6/in6.c#29 integrate .. //depot/projects/hammer/sys/netinet6/in6.h#20 integrate .. //depot/projects/hammer/sys/netinet6/in6_cksum.c#14 integrate .. //depot/projects/hammer/sys/netinet6/in6_gif.c#15 integrate .. //depot/projects/hammer/sys/netinet6/in6_gif.h#5 integrate .. //depot/projects/hammer/sys/netinet6/in6_ifattach.c#21 integrate .. //depot/projects/hammer/sys/netinet6/in6_ifattach.h#6 integrate .. //depot/projects/hammer/sys/netinet6/in6_pcb.c#32 integrate .. //depot/projects/hammer/sys/netinet6/in6_pcb.h#12 integrate .. //depot/projects/hammer/sys/netinet6/in6_proto.c#20 integrate .. //depot/projects/hammer/sys/netinet6/in6_rmx.c#12 integrate .. //depot/projects/hammer/sys/netinet6/in6_src.c#24 integrate .. //depot/projects/hammer/sys/netinet6/in6_var.h#18 integrate .. //depot/projects/hammer/sys/netinet6/ip6_ecn.h#4 integrate .. //depot/projects/hammer/sys/netinet6/ip6_forward.c#20 integrate .. //depot/projects/hammer/sys/netinet6/ip6_id.c#5 integrate .. //depot/projects/hammer/sys/netinet6/ip6_input.c#33 integrate .. //depot/projects/hammer/sys/netinet6/ip6_ipsec.c#4 integrate .. //depot/projects/hammer/sys/netinet6/ip6_ipsec.h#3 integrate .. //depot/projects/hammer/sys/netinet6/ip6_mroute.c#22 integrate .. //depot/projects/hammer/sys/netinet6/ip6_mroute.h#7 integrate .. //depot/projects/hammer/sys/netinet6/ip6_output.c#46 integrate .. //depot/projects/hammer/sys/netinet6/ip6_var.h#20 integrate .. //depot/projects/hammer/sys/netinet6/ip6protosw.h#6 integrate .. //depot/projects/hammer/sys/netinet6/mld6.c#21 integrate .. //depot/projects/hammer/sys/netinet6/mld6_var.h#6 integrate .. //depot/projects/hammer/sys/netinet6/nd6.c#35 integrate .. //depot/projects/hammer/sys/netinet6/nd6.h#9 integrate .. //depot/projects/hammer/sys/netinet6/nd6_nbr.c#24 integrate .. //depot/projects/hammer/sys/netinet6/nd6_rtr.c#17 integrate .. //depot/projects/hammer/sys/netinet6/pim6.h#3 integrate .. //depot/projects/hammer/sys/netinet6/pim6_var.h#4 integrate .. //depot/projects/hammer/sys/netinet6/raw_ip6.c#32 integrate .. //depot/projects/hammer/sys/netinet6/raw_ip6.h#3 integrate .. //depot/projects/hammer/sys/netinet6/route6.c#9 integrate .. //depot/projects/hammer/sys/netinet6/scope6.c#10 integrate .. //depot/projects/hammer/sys/netinet6/scope6_var.h#6 integrate .. //depot/projects/hammer/sys/netinet6/sctp6_usrreq.c#15 integrate .. //depot/projects/hammer/sys/netinet6/sctp6_var.h#8 integrate .. //depot/projects/hammer/sys/netinet6/tcp6_var.h#4 integrate .. //depot/projects/hammer/sys/netinet6/udp6_usrreq.c#33 integrate .. //depot/projects/hammer/sys/netinet6/udp6_var.h#6 integrate .. //depot/projects/hammer/sys/sys/cdefs.h#25 integrate .. //depot/projects/hammer/sys/sys/socket.h#24 integrate .. //depot/projects/hammer/sys/vm/vm_page.c#66 integrate .. //depot/projects/hammer/tools/build/options/WITHOUT_BZIP2#2 integrate .. //depot/projects/hammer/tools/build/options/WITHOUT_GNU#2 integrate .. //depot/projects/hammer/tools/build/options/WITHOUT_GSSAPI#1 branch .. //depot/projects/hammer/tools/build/options/WITHOUT_INSTALLLIB#1 branch .. //depot/projects/hammer/tools/build/options/WITHOUT_KERBEROS#2 integrate .. //depot/projects/hammer/tools/build/options/WITHOUT_KVM#2 integrate .. //depot/projects/hammer/tools/build/options/WITHOUT_PAM#2 integrate .. //depot/projects/hammer/tools/build/options/WITHOUT_TOOLCHAIN#3 integrate .. //depot/projects/hammer/tools/build/options/makeman#5 integrate .. //depot/projects/hammer/tools/regression/lib/libc/stdio/test-scanfloat.c#7 integrate .. //depot/projects/hammer/tools/regression/lib/msun/test-lround.c#2 integrate .. //depot/projects/hammer/tools/regression/lib/msun/test-next.c#2 integrate .. //depot/projects/hammer/usr.bin/make/Makefile.dist#4 integrate .. //depot/projects/hammer/usr.bin/procstat/procstat_args.c#2 integrate .. //depot/projects/hammer/usr.bin/procstat/procstat_bin.c#2 integrate .. //depot/projects/hammer/usr.bin/procstat/procstat_cred.c#2 integrate .. //depot/projects/hammer/usr.bin/procstat/procstat_files.c#2 integrate .. //depot/projects/hammer/usr.sbin/pkg_install/Makefile#9 integrate .. //depot/projects/hammer/usr.sbin/pkg_install/add/pkg_add.1#17 integrate .. //depot/projects/hammer/usr.sbin/pkg_install/create/pkg_create.1#14 integrate .. //depot/projects/hammer/usr.sbin/pkg_install/delete/pkg_delete.1#5 integrate .. //depot/projects/hammer/usr.sbin/pkg_install/info/pkg_info.1#13 integrate .. //depot/projects/hammer/usr.sbin/pkg_install/search/Makefile#2 delete .. //depot/projects/hammer/usr.sbin/pkg_install/search/pkg_search.1#2 delete .. //depot/projects/hammer/usr.sbin/pkg_install/search/pkg_search.sh#2 delete .. //depot/projects/hammer/usr.sbin/pkg_install/updating/pkg_updating.1#3 integrate .. //depot/projects/hammer/usr.sbin/pkg_install/version/pkg_version.1#14 integrate .. //depot/projects/hammer/usr.sbin/sysinstall/media.c#6 integrate .. //depot/projects/hammer/usr.sbin/sysinstall/system.c#10 integrate .. //depot/projects/hammer/usr.sbin/syslogd/syslogd.c#31 integrate Differences ... ==== //depot/projects/hammer/Makefile#44 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile,v 1.342 2007/10/18 08:41:52 delphij Exp $ +# $FreeBSD: src/Makefile,v 1.343 2007/12/11 20:00:55 imp Exp $ # # The user-driven targets are: # @@ -234,17 +234,19 @@ PATH=${PATH} ${BINMAKE} obj >/dev/null 2>&1 && \ PATH=${PATH} ${BINMAKE} >/dev/null 2>&1); \ then \ - (cd ${.CURDIR} && make make); \ + (cd ${.CURDIR} && ${BSDMAKE} make); \ fi # # Upgrade make(1) to the current version using the installed -# headers, libraries and tools. +# headers, libraries and tools. Also, allow the location of +# the system bsdmake-like utility to be overridden. # +BSDMAKE?=make MMAKEENV= MAKEOBJDIRPREFIX=${MAKEPATH} \ DESTDIR= \ INSTALL="sh ${.CURDIR}/tools/install.sh" -MMAKE= ${MMAKEENV} make \ +MMAKE= ${MMAKEENV} ${BSDMAKE} \ -D_UPGRADING \ -DNOMAN -DNO_MAN -DNOSHARED -DNO_SHARED \ -DNO_CPU_CFLAGS -DNO_WERROR ==== //depot/projects/hammer/contrib/amd/FREEBSD-Xlist#4 (text+ko) ==== @@ -1,7 +1,8 @@ -$FreeBSD: src/contrib/amd/FREEBSD-Xlist,v 1.5 2004/07/06 12:52:27 mbr Exp $ +$FreeBSD: src/contrib/amd/FREEBSD-Xlist,v 1.6 2007/12/11 19:15:17 obrien Exp $ *LSM.am-utils *Makefile.* *README.autofs +*README.osx *ac*.m4 *.old *acconfig.h @@ -15,6 +16,7 @@ *missing *mkinstalldirs *stamp-h.in +*amd/test1.sh *amd/Makefile.* *amq/Makefile.* *commit @@ -38,10 +40,13 @@ *conf/fh_dref/fh_dref_sunos3.h *conf/fh_dref/fh_dref_sunos4.h *conf/fh_dref/fh_dref_svr4.h +*conf/hn_dref/hn_dref_default.h, *conf/hn_dref/hn_dref_isc3.h *conf/hn_dref/hn_dref_linux.h *conf/mount/mount_aix.c +*conf/mount/mount_aix3.c *conf/mount/mount_bsdi3.c +*conf/mount/mount_default.c *conf/mount/mount_freebsd3.c *conf/mount/mount_hpux.c *conf/mount/mount_irix5.c @@ -54,6 +59,7 @@ *conf/mtab/mtab_aix.c *conf/mtab/mtab_file.c *conf/mtab/mtab_isc3.c +*conf/mtab/mtab_linux.c *conf/mtab/mtab_mach3.c *conf/mtab/mtab_osf.c *conf/mtab/mtab_svr4.c @@ -63,6 +69,7 @@ *conf/nfs_prot/nfs_prot_aix4_2.h *conf/nfs_prot/nfs_prot_aix4_3.h *conf/nfs_prot/nfs_prot_aix5_1.h +*conf/nfs_prot/nfs_prot_aix5_2.h *conf/nfs_prot/nfs_prot_bsdi2.h *conf/nfs_prot/nfs_prot_bsdi3.h *conf/nfs_prot/nfs_prot_darwin.h @@ -92,6 +99,12 @@ *conf/nfs_prot/nfs_prot_sunos5_8.h *conf/nfs_prot/nfs_prot_svr4.h *conf/nfs_prot/nfs_prot_ultrix.h +*conf/autofs/autofs_linux.h +*conf/autofs/autofs_linux.c +*conf/autofs/autofs_solaris_v1.h +*conf/autofs/autofs_solaris_v1.c +*conf/autofs/autofs_solaris_v2_v3.h +*conf/autofs/autofs_solaris_v2_v3.c *conf/sa_dref/sa_dref_386bsd.h *conf/sa_dref/sa_dref_aix3.h *conf/sa_dref/sa_dref_aoi.h @@ -103,6 +116,7 @@ *conf/trap/trap_aix3.h *conf/trap/trap_aux.h *conf/trap/trap_dgux.h +*conf/trap/trap_freebsd3.h *conf/trap/trap_hcx.h *conf/trap/trap_hpux.h *conf/trap/trap_hpux11.h @@ -115,7 +129,9 @@ *conf/trap/trap_stellix.h *conf/trap/trap_svr4.h *conf/trap/trap_ultrix.h +*conf/umount/umount_aix.c *conf/umount/umount_default.c +*conf/umount/umount_linux.c *conf/umount/umount_osf.c *doc/Makefile.am *doc/Makefile.in @@ -135,11 +151,118 @@ *fsinfo/Makefile.* *hlfsd/Makefile.* *libamu/Makefile.* +*libamu/alloca.c *libamu/clnt_sperrno.c *libamu/memcmp.c *libamu/strcasecmp.c *libamu/strdup.c *libamu/strstr.c +*libamu/strlcat.c +*libamu/strlcpy.c *libamu/ualarm.c *mk-amd-map/Makefile.* *wire-test/Makefile.* +*m4/GNUmakefile +*m4/amdgrep* +*m4/amindent* +*m4/autopat* +*m4/chop-aclocal.pl* +*m4/copy-if-newbig* +*m4/mk-aclocal* +*m4/mkconf* +*m4/rmtspc* +*m4/update_build_version* +*m4/macros/HEADER +*m4/macros/TRAILER +*m4/macros/c_void_p.m4 +*m4/macros/cache_check_dynamic.m4 +*m4/macros/check_amu_fs.m4 +*m4/macros/check_checkmount_style.m4 +*m4/macros/check_extern.m4 +*m4/macros/check_fhandle.m4 +*m4/macros/check_field.m4 +*m4/macros/check_fs_headers.m4 +*m4/macros/check_fs_mntent.m4 +*m4/macros/check_gnu_getopt.m4 +*m4/macros/check_hide_mount_type.m4 +*m4/macros/check_lib2.m4 +*m4/macros/check_map_funcs.m4 +*m4/macros/check_mnt2_cdfs_opt.m4 +*m4/macros/check_mnt2_gen_opt.m4 +*m4/macros/check_mnt2_nfs_opt.m4 +*m4/macros/check_mnttab_file_name.m4 +*m4/macros/check_mnttab_location.m4 +*m4/macros/check_mnttab_opt.m4 +*m4/macros/check_mnttab_style.m4 +*m4/macros/check_mnttab_type.m4 +*m4/macros/check_mount_style.m4 +*m4/macros/check_mount_trap.m4 +*m4/macros/check_mount_type.m4 +*m4/macros/check_mtype_printf_type.m4 +*m4/macros/check_mtype_type.m4 +*m4/macros/check_network_transport_type.m4 +*m4/macros/check_nfs_fh_dref.m4 +*m4/macros/check_nfs_hn_dref.m4 +*m4/macros/check_nfs_prot_headers.m4 +*m4/macros/check_nfs_sa_dref.m4 +*m4/macros/check_nfs_socket_connection.m4 +*m4/macros/check_os_libs.m4 +*m4/macros/check_restartable_signal_handler.m4 +*m4/macros/check_umount_style.m4 +*m4/macros/check_unmount_args.m4 +*m4/macros/check_unmount_call.m4 +*m4/macros/expand_cpp_hex.m4 +*m4/macros/expand_cpp_int.m4 +*m4/macros/expand_cpp_string.m4 +*m4/macros/expand_run_string.m4 +*m4/macros/extern_optarg.m4 +*m4/macros/extern_sys_errlist.m4 +*m4/macros/field_mntent_t_mnt_time_string.m4 +*m4/macros/func_bad_memcmp.m4 +*m4/macros/func_bad_yp_all.m4 +*m4/macros/header_templates.m4 +*m4/macros/host_macros.m4 +*m4/macros/linux_headers.m4 +*m4/macros/localconfig.m4 +*m4/macros/mount_headers.m4 +*m4/macros/name_package.m4 +*m4/macros/name_version.m4 +*m4/macros/opt_amu_cflags.m4 +*m4/macros/opt_cppflags.m4 +*m4/macros/opt_debug.m4 +*m4/macros/opt_ldflags.m4 +*m4/macros/opt_libs.m4 +*m4/macros/os_cflags.m4 +*m4/macros/os_cppflags.m4 +*m4/macros/os_ldflags.m4 +*m4/macros/package_bugreport.m4 +*m4/macros/package_name.m4 +*m4/macros/package_version.m4 +*m4/macros/save_state.m4 +*m4/macros/struct_field_nfs_fh.m4 +*m4/macros/struct_mntent.m4 +*m4/macros/struct_mnttab.m4 +*m4/macros/struct_nfs_args.m4 +*m4/macros/struct_nfs_fh.m4 +*m4/macros/struct_nfs_fh3.m4 +*m4/macros/struct_nfs_gfs_mount.m4 +*m4/macros/try_compile_anyfs.m4 +*m4/macros/try_compile_nfs.m4 +*m4/macros/try_compile_rpc.m4 +*m4/macros/type_auth_create_gidlist.m4 +*m4/macros/type_cachefs_args.m4 +*m4/macros/type_cdfs_args.m4 +*m4/macros/type_efs_args.m4 +*m4/macros/type_lofs_args.m4 +*m4/macros/type_mfs_args.m4 +*m4/macros/type_pcfs_args.m4 +*m4/macros/type_recvfrom_fromlen.m4 +*m4/macros/type_rfs_args.m4 +*m4/macros/type_svc_in_arg.m4 +*m4/macros/type_time_t.m4 +*m4/macros/type_tmpfs_args.m4 +*m4/macros/type_ufs_args.m4 +*m4/macros/type_xdrproc_t.m4 +*m4/macros/type_xfs_args.m4 +*m4/macros/type_yp_order_outorder.m4 +*m4/macros/with_addon.m4 ==== //depot/projects/hammer/contrib/amd/FREEBSD-upgrade#4 (text+ko) ==== @@ -1,21 +1,19 @@ # ex:ts=8 -$FreeBSD: src/contrib/amd/FREEBSD-upgrade,v 1.15 2004/05/14 13:29:48 mbr Exp $ +$FreeBSD: src/contrib/amd/FREEBSD-upgrade,v 1.16 2007/12/11 19:16:51 obrien Exp $ -AMD (am-utils) 6.0.9 - originals can be found at: ftp://shekel.mcl.cs.columbia.edu/pub/am-utils/ - (http://www.cs.columbia.edu/~ezk/am-utils/index.html) - +AMD (am-utils) 6.1.5 + originals can be found at: ftp://ftp.am-utils.org/pub/am-utils/ For the import of AMD many files were pruned by: - tar -X FREEBSD-Xlist -xzf am-utils-6.0.9.tar.gz + tar -X FREEBSD-Xlist -xf am-utils-6.1.5.tar.gz and `find . -name '.cvsignore' -delete` Then imported by: - cvs import -m 'Virgin import of AMD (am-utils) v6.0.9' \ - src/contrib/amd COLUMBIA amd_6_0_9 + cvs import -m 'Virgin import of AMD (am-utils) v6.1.5' \ + src/contrib/amd COLUMBIA amd_6_1_5 After the import, a separate extraction of am-utils was GNU configured in the "normal" way. The resulting config.h file should be compared with @@ -25,8 +23,11 @@ To make local changes to amd, simply patch and commit to the main branch (aka HEAD). Never make local changes on the vendor (COLUMBIA) branch. -All local changes should be submitted to "amd-dev@majordomo.cs.columbia.edu" -for inclusion in the next vendor release. +Note, we don't trim anything in scripts/ as sysadmins may find the bits +as a useful reference. + +All local changes should be submitted to "am-utils@am-utils.org" or +https://bugzilla.am-utils.org for inclusion in the next vendor release. Local changes: ==== //depot/projects/hammer/contrib/gcc/config/sparc/freebsd.h#10 (text+ko) ==== @@ -19,24 +19,26 @@ the Free Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ -/* $FreeBSD: src/contrib/gcc/config/sparc/freebsd.h,v 1.10 2007/05/19 02:30:20 kan Exp $ */ +/* $FreeBSD: src/contrib/gcc/config/sparc/freebsd.h,v 1.11 2007/12/09 17:41:47 marius Exp $ */ #undef SUBTARGET_EXTRA_SPECS #define SUBTARGET_EXTRA_SPECS \ { "fbsd_dynamic_linker", FBSD_DYNAMIC_LINKER } /* FreeBSD needs the platform name (sparc64) defined. - Emacs needs to know if the arch is 64 or 32-bits. */ - -#undef CPP_CPU64_DEFAULT_SPEC -#define CPP_CPU64_DEFAULT_SPEC \ - "-D__sparc64__ -D__sparc_v9__ -D__sparcv9 -D__sparc__ -D__arch64__" + Emacs needs to know if the arch is 64 or 32-bits. + This also selects which targets are available via -mcpu. */ #undef FBSD_TARGET_CPU_CPP_BUILTINS #define FBSD_TARGET_CPU_CPP_BUILTINS() \ do \ { \ builtin_define ("__LP64__"); \ + builtin_define ("__sparc64__"); \ + builtin_define ("__sparc_v9__"); \ + builtin_define ("__sparcv9"); \ + builtin_define ("__sparc__"); \ + builtin_define ("__arch64__"); \ } \ while (0) ==== //depot/projects/hammer/contrib/gcc/fold-const.c#10 (text+ko) ==== @@ -5661,6 +5661,9 @@ } break; } + /* If the constant is negative, we cannot simplify this. */ + if (tree_int_cst_sgn (c) == -1) + break; /* FALLTHROUGH */ case NEGATE_EXPR: if ((t1 = extract_muldiv (op0, c, code, wide_type, strict_overflow_p)) ==== //depot/projects/hammer/include/nsswitch.h#4 (text+ko) ==== @@ -1,5 +1,5 @@ /* $NetBSD: nsswitch.h,v 1.6 1999/01/26 01:04:07 lukem Exp $ */ -/* $FreeBSD: src/include/nsswitch.h,v 1.4 2006/04/28 12:03:34 ume Exp $ */ +/* $FreeBSD: src/include/nsswitch.h,v 1.5 2007/12/12 10:08:02 bushman Exp $ */ /*- * Copyright (c) 1997, 1998, 1999 The NetBSD Foundation, Inc. @@ -68,7 +68,8 @@ #define NSSRC_DNS "dns" /* DNS; IN for hosts, HS for others */ #define NSSRC_NIS "nis" /* YP/NIS */ #define NSSRC_COMPAT "compat" /* passwd,group in YP compat mode */ -#define NSSRC_CACHE "cache" /* cache daemon */ +#define NSSRC_CACHE "cache" /* nscd daemon */ +#define NSSRC_FALLBACK "__fallback" /* internal fallback source */ /* * currently implemented databases @@ -132,6 +133,7 @@ */ #define NS_FILES_CB(F,C) { NSSRC_FILES, F, C }, #define NS_COMPAT_CB(F,C) { NSSRC_COMPAT, F, C }, +#define NS_FALLBACK_CB(F) { NSSRC_FALLBACK, F, NULL }, #ifdef HESIOD # define NS_DNS_CB(F,C) { NSSRC_DNS, F, C }, ==== //depot/projects/hammer/lib/Makefile#66 (text+ko) ==== @@ -1,5 +1,5 @@ # @(#)Makefile 8.1 (Berkeley) 6/4/93 -# $FreeBSD: src/lib/Makefile,v 1.226 2007/11/17 21:29:02 cognet Exp $ +# $FreeBSD: src/lib/Makefile,v 1.228 2007/12/12 16:39:31 ru Exp $ .include @@ -62,6 +62,10 @@ _libsdp= libsdp .endif +.if ${MK_GSSAPI} != "no" +_libgssapi= libgssapi +.endif + .if ${MK_IPX} != "no" _libipx= libipx .endif ==== //depot/projects/hammer/lib/libc/gdtoa/_ldtoa.c#5 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libc/gdtoa/_ldtoa.c,v 1.4 2007/12/03 07:17:32 das Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/gdtoa/_ldtoa.c,v 1.5 2007/12/09 19:48:57 das Exp $"); #include #include @@ -88,9 +88,7 @@ break; case FP_SUBNORMAL: kind = STRTOG_Denormal; -#ifdef LDBL_IMPLICIT_NBIT be++; -#endif break; case FP_INFINITE: kind = STRTOG_Infinite; ==== //depot/projects/hammer/lib/libc/gen/getgrent.c#13 (text+ko) ==== @@ -31,7 +31,7 @@ * */ #include -__FBSDID("$FreeBSD: src/lib/libc/gen/getgrent.c,v 1.36 2006/09/18 09:34:48 maxim Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/gen/getgrent.c,v 1.37 2007/12/12 10:08:02 bushman Exp $"); #include "namespace.h" #include @@ -40,6 +40,7 @@ #include #include #endif +#include #include #include #ifdef HESIOD @@ -143,6 +144,9 @@ static int compat_setgrent(void *, void *, va_list); static int compat_group(void *, void *, va_list); +static int gr_addgid(gid_t, gid_t *, int, int *); +static int getgroupmembership_fallback(void *, void *, va_list); + #ifdef NS_CACHING static int grp_id_func(char *, size_t *, va_list, void *); static int grp_marshal_func(char *, size_t *, void *, va_list, void *); @@ -361,89 +365,195 @@ NSS_MP_CACHE_HANDLING(group); #endif /* NS_CACHING */ - -/* XXX IEEE Std 1003.1, 2003 specifies `void setgrent(void)' */ -int -setgrent(void) -{ #ifdef NS_CACHING - static const nss_cache_info cache_info = NS_MP_CACHE_INFO_INITIALIZER( - group, (void *)nss_lt_all, - NULL, NULL); +static const nss_cache_info setgrent_cache_info = NS_MP_CACHE_INFO_INITIALIZER( + group, (void *)nss_lt_all, + NULL, NULL); #endif - static const ns_dtab dtab[] = { - { NSSRC_FILES, files_setgrent, (void *)SETGRENT }, +static const ns_dtab setgrent_dtab[] = { + { NSSRC_FILES, files_setgrent, (void *)SETGRENT }, #ifdef HESIOD - { NSSRC_DNS, dns_setgrent, (void *)SETGRENT }, + { NSSRC_DNS, dns_setgrent, (void *)SETGRENT }, #endif #ifdef YP - { NSSRC_NIS, nis_setgrent, (void *)SETGRENT }, + { NSSRC_NIS, nis_setgrent, (void *)SETGRENT }, #endif - { NSSRC_COMPAT, compat_setgrent, (void *)SETGRENT }, + { NSSRC_COMPAT, compat_setgrent, (void *)SETGRENT }, #ifdef NS_CACHING - NS_CACHE_CB(&cache_info) + NS_CACHE_CB(&setgrent_cache_info) #endif - { NULL, NULL, NULL } - }; - (void)_nsdispatch(NULL, dtab, NSDB_GROUP, "setgrent", defaultsrc, 0); - return (1); -} - + { NULL, NULL, NULL } +}; -int -setgroupent(int stayopen) -{ #ifdef NS_CACHING - static const nss_cache_info cache_info = NS_MP_CACHE_INFO_INITIALIZER( - group, (void *)nss_lt_all, - NULL, NULL); +static const nss_cache_info endgrent_cache_info = NS_MP_CACHE_INFO_INITIALIZER( + group, (void *)nss_lt_all, + NULL, NULL); #endif - static const ns_dtab dtab[] = { - { NSSRC_FILES, files_setgrent, (void *)SETGRENT }, +static const ns_dtab endgrent_dtab[] = { + { NSSRC_FILES, files_setgrent, (void *)ENDGRENT }, #ifdef HESIOD - { NSSRC_DNS, dns_setgrent, (void *)SETGRENT }, + { NSSRC_DNS, dns_setgrent, (void *)ENDGRENT }, #endif #ifdef YP - { NSSRC_NIS, nis_setgrent, (void *)SETGRENT }, + { NSSRC_NIS, nis_setgrent, (void *)ENDGRENT }, #endif - { NSSRC_COMPAT, compat_setgrent, (void *)SETGRENT }, + { NSSRC_COMPAT, compat_setgrent, (void *)ENDGRENT }, #ifdef NS_CACHING - NS_CACHE_CB(&cache_info) + NS_CACHE_CB(&endgrent_cache_info) #endif - { NULL, NULL, NULL } - }; - (void)_nsdispatch(NULL, dtab, NSDB_GROUP, "setgrent", defaultsrc, - stayopen); - return (1); -} - + { NULL, NULL, NULL } +}; -void -endgrent(void) -{ #ifdef NS_CACHING - static const nss_cache_info cache_info = NS_MP_CACHE_INFO_INITIALIZER( - group, (void *)nss_lt_all, - NULL, NULL); +static const nss_cache_info getgrent_r_cache_info = NS_MP_CACHE_INFO_INITIALIZER( + group, (void *)nss_lt_all, + grp_marshal_func, grp_unmarshal_func); #endif - static const ns_dtab dtab[] = { - { NSSRC_FILES, files_setgrent, (void *)ENDGRENT }, +static const ns_dtab getgrent_r_dtab[] = { + { NSSRC_FILES, files_group, (void *)nss_lt_all }, #ifdef HESIOD - { NSSRC_DNS, dns_setgrent, (void *)ENDGRENT }, + { NSSRC_DNS, dns_group, (void *)nss_lt_all }, #endif #ifdef YP - { NSSRC_NIS, nis_setgrent, (void *)ENDGRENT }, + { NSSRC_NIS, nis_group, (void *)nss_lt_all }, #endif - { NSSRC_COMPAT, compat_setgrent, (void *)ENDGRENT }, + { NSSRC_COMPAT, compat_group, (void *)nss_lt_all }, #ifdef NS_CACHING - NS_CACHE_CB(&cache_info) + NS_CACHE_CB(&getgrent_r_cache_info) #endif - { NULL, NULL, NULL } + { NULL, NULL, NULL } +}; + +static int +gr_addgid(gid_t gid, gid_t *groups, int maxgrp, int *grpcnt) +{ + int ret, dupc; + + for (dupc = 0; dupc < MIN(maxgrp, *grpcnt); dupc++) { + if (groups[dupc] == gid) + return 1; + } + + ret = 1; + if (*grpcnt < maxgrp) + groups[*grpcnt] = gid; + else + ret = 0; + + (*grpcnt)++; + + return ret; +} + +static int +getgroupmembership_fallback(void *retval, void *mdata, va_list ap) +{ + const ns_src src[] = { + { mdata, NS_SUCCESS }, + { NULL, 0} }; - (void)_nsdispatch(NULL, dtab, NSDB_GROUP, "endgrent", defaultsrc); + struct group grp; + struct group *grp_p; + char *buf; + size_t bufsize; + const char *uname; + gid_t *groups; + gid_t agroup; + int maxgrp, *grpcnt; + int i, rv, ret_errno; + + /* + * As this is a fallback method, only provided src + * list will be respected during methods search. + */ + assert(src[0].name != NULL); + + uname = va_arg(ap, const char *); + agroup = va_arg(ap, gid_t); + groups = va_arg(ap, gid_t *); + maxgrp = va_arg(ap, int); + grpcnt = va_arg(ap, int *); + + rv = NS_UNAVAIL; + + buf = malloc(GRP_STORAGE_INITIAL); + if (buf == NULL) + goto out; + + bufsize = GRP_STORAGE_INITIAL; + + gr_addgid(agroup, groups, maxgrp, grpcnt); + + _nsdispatch(NULL, setgrent_dtab, NSDB_GROUP, "setgrent", src, 0); + for (;;) { + do { + ret_errno = 0; + grp_p = NULL; + rv = _nsdispatch(&grp_p, getgrent_r_dtab, NSDB_GROUP, + "getgrent_r", src, &grp, buf, bufsize, &ret_errno); + + if (grp_p == NULL && ret_errno == ERANGE) { + free(buf); + if ((bufsize << 1) > GRP_STORAGE_MAX) { + buf = NULL; + errno = ERANGE; + goto out; + } + + bufsize <<= 1; + buf = malloc(bufsize); + if (buf == NULL) { + goto out; + } + } + } while (grp_p == NULL && ret_errno == ERANGE); + + if (ret_errno != 0) { + errno = ret_errno; + goto out; + } + + if (grp_p == NULL) + break; + + for (i = 0; grp.gr_mem[i]; i++) { + if (strcmp(grp.gr_mem[i], uname) == 0) + gr_addgid(grp.gr_gid, groups, maxgrp, grpcnt); + } + } + + _nsdispatch(NULL, endgrent_dtab, NSDB_GROUP, "endgrent", src); +out: + free(buf); + return (rv); +} + +/* XXX IEEE Std 1003.1, 2003 specifies `void setgrent(void)' */ +int +setgrent(void) +{ + (void)_nsdispatch(NULL, setgrent_dtab, NSDB_GROUP, "setgrent", defaultsrc, 0); + return (1); +} + + +int +setgroupent(int stayopen) +{ + (void)_nsdispatch(NULL, setgrent_dtab, NSDB_GROUP, "setgrent", defaultsrc, + stayopen); + return (1); +} + + +void +endgrent(void) +{ + (void)_nsdispatch(NULL, endgrent_dtab, NSDB_GROUP, "endgrent", defaultsrc); } @@ -451,31 +561,11 @@ getgrent_r(struct group *grp, char *buffer, size_t bufsize, struct group **result) { -#ifdef NS_CACHING - static const nss_cache_info cache_info = NS_MP_CACHE_INFO_INITIALIZER( - group, (void *)nss_lt_all, - grp_marshal_func, grp_unmarshal_func); -#endif - - static const ns_dtab dtab[] = { - { NSSRC_FILES, files_group, (void *)nss_lt_all }, -#ifdef HESIOD - { NSSRC_DNS, dns_group, (void *)nss_lt_all }, -#endif -#ifdef YP - { NSSRC_NIS, nis_group, (void *)nss_lt_all }, -#endif - { NSSRC_COMPAT, compat_group, (void *)nss_lt_all }, -#ifdef NS_CACHING - NS_CACHE_CB(&cache_info) -#endif - { NULL, NULL, NULL } - }; int rv, ret_errno; ret_errno = 0; *result = NULL; - rv = _nsdispatch(result, dtab, NSDB_GROUP, "getgrent_r", defaultsrc, + rv = _nsdispatch(result, getgrent_r_dtab, NSDB_GROUP, "getgrent_r", defaultsrc, grp, buffer, bufsize, &ret_errno); if (rv == NS_SUCCESS) return (0); @@ -560,6 +650,30 @@ } + +int +__getgroupmembership(const char *uname, gid_t agroup, gid_t *groups, + int maxgrp, int *grpcnt) +{ + static const ns_dtab dtab[] = { + NS_FALLBACK_CB(getgroupmembership_fallback) + { NULL, NULL, NULL } + }; + int rv; + + assert(uname != NULL); + /* groups may be NULL if just sizing when invoked with maxgrp = 0 */ + assert(grpcnt != NULL); + + *grpcnt = 0; + rv = _nsdispatch(NULL, dtab, NSDB_GROUP, "getgroupmembership", + defaultsrc, uname, agroup, groups, maxgrp, grpcnt); + + /* too many groups found? */ + return (*grpcnt > maxgrp ? -1 : 0); +} + + static struct group grp; static char *grp_storage; static size_t grp_storage_size; @@ -1436,3 +1550,5 @@ return (NS_RETURN); } } + + ==== //depot/projects/hammer/lib/libc/gen/getgrouplist.c#6 (text+ko) ==== @@ -31,7 +31,7 @@ static char sccsid[] = "@(#)getgrouplist.c 8.2 (Berkeley) 12/8/94"; #endif /* LIBC_SCCS and not lint */ #include -__FBSDID("$FreeBSD: src/lib/libc/gen/getgrouplist.c,v 1.15 2007/01/09 00:27:53 imp Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/gen/getgrouplist.c,v 1.16 2007/12/12 10:08:02 bushman Exp $"); /* * get credential @@ -42,46 +42,11 @@ #include #include +extern int __getgroupmembership(const char *, gid_t, gid_t *, int, int *); + int getgrouplist(const char *uname, gid_t agroup, gid_t *groups, int *grpcnt) { - const struct group *grp; - int i, maxgroups, ngroups, ret; + return __getgroupmembership(uname, agroup, groups, *grpcnt, grpcnt); +} - ret = 0; - ngroups = 0; - maxgroups = *grpcnt; - /* - * When installing primary group, duplicate it; - * the first element of groups is the effective gid - * and will be overwritten when a setgid file is executed. - */ - groups[ngroups++] = agroup; - if (maxgroups > 1) - groups[ngroups++] = agroup; - /* - * Scan the group file to find additional groups. - */ - setgrent(); - while ((grp = getgrent()) != NULL) { - for (i = 0; i < ngroups; i++) { - if (grp->gr_gid == groups[i]) >>> TRUNCATED FOR MAIL (1000 lines) <<<