PERFORCE change 130725 for review

Kip Macy kmacy at FreeBSD.org
Wed Dec 12 11:18:36 PST 2007


http://perforce.freebsd.org/chv.cgi?CH=130725

Change 130725 by kmacy at kmacy:storage:toehead on 2007/12/12 19:17:35

	IFC 130720

Affected files ...

.. //depot/projects/toehead/include/nsswitch.h#2 integrate
.. //depot/projects/toehead/lib/Makefile#3 integrate
.. //depot/projects/toehead/lib/libc/gen/getgrent.c#2 integrate
.. //depot/projects/toehead/lib/libc/gen/getgrouplist.c#2 integrate
.. //depot/projects/toehead/lib/libc/locale/localeconv.c#2 integrate
.. //depot/projects/toehead/lib/libc/net/nsdispatch.c#2 integrate
.. //depot/projects/toehead/lib/libc/string/strtok.3#2 integrate
.. //depot/projects/toehead/lib/libc/string/strtok.c#2 integrate
.. //depot/projects/toehead/lib/libc/string/wcstok.c#2 integrate
.. //depot/projects/toehead/share/man/man5/src.conf.5#3 integrate
.. //depot/projects/toehead/share/mk/bsd.own.mk#3 integrate
.. //depot/projects/toehead/sys/dev/sound/pci/ich.c#2 integrate
.. //depot/projects/toehead/sys/netgraph/ng_l2tp.c#2 integrate
.. //depot/projects/toehead/tools/build/options/WITHOUT_BZIP2#2 integrate
.. //depot/projects/toehead/tools/build/options/WITHOUT_GNU#2 integrate
.. //depot/projects/toehead/tools/build/options/WITHOUT_GSSAPI#1 branch
.. //depot/projects/toehead/tools/build/options/WITHOUT_KERBEROS#3 integrate
.. //depot/projects/toehead/tools/build/options/WITHOUT_KVM#2 integrate
.. //depot/projects/toehead/tools/build/options/WITHOUT_PAM#2 integrate
.. //depot/projects/toehead/tools/build/options/WITHOUT_TOOLCHAIN#2 integrate
.. //depot/projects/toehead/tools/build/options/WITH_GSSAPI#2 delete
.. //depot/projects/toehead/tools/build/options/makeman#2 integrate

Differences ...

==== //depot/projects/toehead/include/nsswitch.h#2 (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/toehead/lib/Makefile#3 (text+ko) ====

@@ -1,5 +1,5 @@
 #	@(#)Makefile	8.1 (Berkeley) 6/4/93
-# $FreeBSD: src/lib/Makefile,v 1.227 2007/12/10 19:09:24 dougb Exp $
+# $FreeBSD: src/lib/Makefile,v 1.228 2007/12/12 16:39:31 ru Exp $
 
 .include <bsd.own.mk>
 
@@ -62,12 +62,8 @@
 _libsdp=	libsdp
 .endif
 
-.if ${MK_KERBEROS} != "no"
+.if ${MK_GSSAPI} != "no"
 _libgssapi=	libgssapi
-.else
-.if ${MK_GSSAPI} == "yes"
-_libgssapi=	libgssapi
-.endif
 .endif
 
 .if ${MK_IPX} != "no"

==== //depot/projects/toehead/lib/libc/gen/getgrent.c#2 (text+ko) ====

@@ -31,7 +31,7 @@
  *
  */
 #include <sys/cdefs.h>
-__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 <sys/param.h>
@@ -40,6 +40,7 @@
 #include <rpcsvc/yp_prot.h>
 #include <rpcsvc/ypclnt.h>
 #endif
+#include <assert.h>
 #include <ctype.h>
 #include <errno.h>
 #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/toehead/lib/libc/gen/getgrouplist.c#2 (text+ko) ====

@@ -31,7 +31,7 @@
 static char sccsid[] = "@(#)getgrouplist.c	8.2 (Berkeley) 12/8/94";
 #endif /* LIBC_SCCS and not lint */
 #include <sys/cdefs.h>
-__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 <string.h>
 #include <unistd.h>
 
+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])
-				goto skip;
-		}
-		for (i = 0; grp->gr_mem[i]; i++) {
-			if (!strcmp(grp->gr_mem[i], uname)) {
-				if (ngroups >= maxgroups) {
-					ret = -1;
-					break;
-				}
-				groups[ngroups++] = grp->gr_gid;
-				break;
-			}
-		}
-skip:
-		;
-	}
-	endgrent();
-	*grpcnt = ngroups;
-	return (ret);
-}

==== //depot/projects/toehead/lib/libc/locale/localeconv.c#2 (text+ko) ====

@@ -11,10 +11,6 @@
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notice, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- *    must display the following acknowledgement:
- *	This product includes software developed by the University of
- *	California, Berkeley and its contributors.
  * 4. Neither the name of the University nor the names of its contributors
  *    may be used to endorse or promote products derived from this software
  *    without specific prior written permission.
@@ -36,7 +32,7 @@
 static char sccsid[] = "@(#)localeconv.c	8.1 (Berkeley) 6/4/93";
 #endif /* LIBC_SCCS and not lint */
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/locale/localeconv.c,v 1.13 2003/06/26 10:46:16 phantom Exp $");
+__FBSDID("$FreeBSD: src/lib/libc/locale/localeconv.c,v 1.14 2007/12/12 07:43:23 phantom Exp $");
 
 #include <locale.h>
 

==== //depot/projects/toehead/lib/libc/net/nsdispatch.c#2 (text+ko) ====

@@ -68,7 +68,7 @@
  *
  */
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/net/nsdispatch.c,v 1.14 2007/05/17 03:33:23 jon Exp $");
+__FBSDID("$FreeBSD: src/lib/libc/net/nsdispatch.c,v 1.15 2007/12/12 10:08:03 bushman Exp $");
 
 #include "namespace.h"
 #include <sys/param.h>
@@ -136,6 +136,15 @@
 #endif
 
 /*
+ * When this is set to 1, nsdispatch won't use nsswitch.conf
+ * but will consult the 'defaults' source list only.
+ * NOTE: nested fallbacks (when nsdispatch calls fallback functions,
+ *     which in turn calls nsdispatch, which should call fallback
+ *     function) are not supported
+ */
+static	int			fallback_dispatch = 0;
+
+/*
  * Attempt to spew relatively uniform messages to syslog.
  */
 #define nss_log(level, fmt, ...) \
@@ -600,7 +609,7 @@
 	va_list		 ap;
 	const ns_dbt	*dbt;
 	const ns_src	*srclist;
-	nss_method	 method;
+	nss_method	 method, fb_method;
 	void		*mdata;
 	int		 isthreaded, serrno, i, result, srclistsize;
 
@@ -609,6 +618,9 @@
 	nss_cache_data	*cache_data_p;
 	int		 cache_flag;
 #endif
+	
+	dbt = NULL;
+	fb_method = NULL;
 
 	isthreaded = __isthreaded;
 	serrno = errno;
@@ -624,8 +636,13 @@
 		result = NS_UNAVAIL;
 		goto fin;
 	}
-	dbt = vector_search(&database, _nsmap, _nsmapsize, sizeof(*_nsmap),
-	    string_compare);
+	if (fallback_dispatch == 0) {
+		dbt = vector_search(&database, _nsmap, _nsmapsize, sizeof(*_nsmap),
+		    string_compare);
+		fb_method = nss_method_lookup(NSSRC_FALLBACK, database,
+		    method_name, disp_tab, &mdata);
+	}
+
 	if (dbt != NULL) {
 		srclist = dbt->srclist;
 		srclistsize = dbt->srclistsize;
@@ -684,6 +701,12 @@
 
 			if (result & (srclist[i].flags))
 				break;
+		} else if (fb_method != NULL) {
+			fallback_dispatch = 1;
+			va_start(ap, defaults);
+			result = fb_method(retval, (void *)srclist[i].name, ap);
+			va_end(ap);
+			fallback_dispatch = 0;
 		}
 	}
 

==== //depot/projects/toehead/lib/libc/string/strtok.3#2 (text+ko) ====

@@ -22,12 +22,6 @@
 .\"    disclaimer in the documentation and/or other materials provided
 .\"    with the distribution.
 .\"
-.\" 3. All advertising materials mentioning features or use of this
-.\"    software must display the following acknowledgement:
-.\"
-.\"	This product includes software developed by Softweyr LLC, the
-.\"      University of California, Berkeley, and its contributors.
-.\"
 .\" 4. Neither the name of Softweyr LLC, the University nor the names
 .\"    of its contributors may be used to endorse or promote products
 .\"    derived from this software without specific prior written
@@ -48,7 +42,7 @@
 .\" SUCH DAMAGE.
 .\"
 .\"     @(#)strtok.3	8.2 (Berkeley) 2/3/94
-.\" $FreeBSD: src/lib/libc/string/strtok.3,v 1.25 2005/01/20 09:17:04 ru Exp $
+.\" $FreeBSD: src/lib/libc/string/strtok.3,v 1.26 2007/12/12 18:33:06 wes Exp $
 .\"
 .Dd November 27, 1998
 .Dt STRTOK 3

==== //depot/projects/toehead/lib/libc/string/strtok.c#2 (text+ko) ====

@@ -15,10 +15,6 @@
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notices, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- *    must display the following acknowledgement:
- *	This product includes software developed by Softweyr LLC, the
- *      University of California, Berkeley, and its contributors.
  * 4. Neither the name of the University nor the names of its contributors
  *    may be used to endorse or promote products derived from this software
  *    without specific prior written permission.
@@ -40,7 +36,7 @@
 static char sccsid[] = "@(#)strtok.c	8.1 (Berkeley) 6/4/93";
 #endif /* LIBC_SCCS and not lint */
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/string/strtok.c,v 1.9 2002/09/07 02:53:19 tjr Exp $");
+__FBSDID("$FreeBSD: src/lib/libc/string/strtok.c,v 1.10 2007/12/12 18:33:06 wes Exp $");
 
 #include <stddef.h>
 #ifdef DEBUG_STRTOK

==== //depot/projects/toehead/lib/libc/string/wcstok.c#2 (text+ko) ====

@@ -15,10 +15,6 @@
  * 2. Redistributions in binary form must reproduce the above copyright
  *    notices, this list of conditions and the following disclaimer in the
  *    documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- *    must display the following acknowledgement:
- *	This product includes software developed by Softweyr LLC, the
- *      University of California, Berkeley, and its contributors.
  * 4. Neither the name of the University nor the names of its contributors
  *    may be used to endorse or promote products derived from this software
  *    without specific prior written permission.
@@ -37,7 +33,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/string/wcstok.c,v 1.2 2003/03/12 06:41:49 tjr Exp $");
+__FBSDID("$FreeBSD: src/lib/libc/string/wcstok.c,v 1.3 2007/12/12 18:33:06 wes Exp $");
 
 #include <wchar.h>
 

==== //depot/projects/toehead/share/man/man5/src.conf.5#3 (text) ====

@@ -1,7 +1,7 @@
 .\" DO NOT EDIT-- this file is automatically generated.
-.\" from FreeBSD: src/tools/build/options/makeman,v 1.7 2007/11/06 23:12:53 danger Exp
-.\" $FreeBSD: src/share/man/man5/src.conf.5,v 1.22 2007/12/10 19:11:56 dougb Exp $
-.Dd December 10, 2007
+.\" from FreeBSD: src/tools/build/options/makeman,v 1.8 2007/12/12 16:39:31 ru Exp
+.\" $FreeBSD: src/share/man/man5/src.conf.5,v 1.23 2007/12/12 16:45:01 ru Exp $
+.Dd December 12, 2007
 .Dt SRC.CONF 5
 .Os
 .Sh NAME
@@ -175,9 +175,11 @@
 .\" from FreeBSD: src/tools/build/options/WITHOUT_BOOT,v 1.1 2006/03/21 07:50:49 ru Exp
 Set to not build the boot blocks and loader.
 .It Va WITHOUT_BZIP2
-.\" from FreeBSD: src/tools/build/options/WITHOUT_BZIP2,v 1.1 2007/01/26 10:19:08 delphij Exp
+.\" from FreeBSD: src/tools/build/options/WITHOUT_BZIP2,v 1.2 2007/12/12 16:43:17 ru Exp
 Set to not build contributed bzip2 software as a part of the base system.
-.Sy "The option has no effect yet."
+.Bf -symbolic
+The option has no effect yet.
+.Ef
 When set, it also enforces the following options:
 .Pp
 .Bl -item -compact
@@ -211,6 +213,10 @@
 .Pp
 .Bl -item -compact
 .It
+.Va WITHOUT_GSSAPI
+(can be overridden with
+.Va WITH_GSSAPI )
+.It
 .Va WITHOUT_KERBEROS
 .It
 .Va WITHOUT_KERBEROS_SUPPORT
@@ -267,11 +273,13 @@
 Set to not build
 .Xr gdb 1 .
 .It Va WITHOUT_GNU
-.\" from FreeBSD: src/tools/build/options/WITHOUT_GNU,v 1.2 2006/07/31 13:53:27 yar Exp
+.\" from FreeBSD: src/tools/build/options/WITHOUT_GNU,v 1.3 2007/12/12 16:43:17 ru Exp
 Set to not build contributed GNU software as a part of the base system.
 This option can be useful if the system built must not contain any code
 covered by the GNU Public License due to legal reasons.
-.Sy "The option has no effect yet."
+.Bf -symbolic
+The option has no effect yet.
+.Ef
 When set, it also enforces the following options:
 .Pp
 .Bl -item -compact
@@ -288,11 +296,9 @@
 .\" from FreeBSD: src/tools/build/options/WITHOUT_GROFF,v 1.1 2006/03/21 07:50:49 ru Exp
 Set to not build
 .Xr groff 1 .
-.It Va WITH_GSSAPI
-.\" from FreeBSD: src/tools/build/options/WITH_GSSAPI,v 1.1 2007/12/10 19:09:24 dougb Exp
-Set to build libgssapi when
-.Va WITHOUT_KERBEROS
-is set.
+.It Va WITHOUT_GSSAPI
+.\" from FreeBSD: src/tools/build/options/WITHOUT_GSSAPI,v 1.1 2007/12/12 16:39:31 ru Exp
+Set to not build libgssapi.
 .It Va WITH_HESIOD
 .\" from FreeBSD: src/tools/build/options/WITH_HESIOD,v 1.1 2006/03/21 07:50:50 ru Exp
 Set to build Hesiod support.
@@ -351,17 +357,16 @@
 .\" from FreeBSD: src/tools/build/options/WITHOUT_IPX_SUPPORT,v 1.1 2006/03/21 07:50:50 ru Exp
 Set to build some programs without IPX support.
 .It Va WITHOUT_KERBEROS
-.\" from FreeBSD: src/tools/build/options/WITHOUT_KERBEROS,v 1.2 2007/12/10 19:09:24 dougb Exp
+.\" from FreeBSD: src/tools/build/options/WITHOUT_KERBEROS,v 1.3 2007/12/12 16:42:03 ru Exp
 Set this if you do not want to build Kerberos 5 (KTH Heimdal).
-This option implies
-.Va WITHOUT_GSSAPI .
-Set
-.Va WITH_GSSAPI
-to override.
 When set, it also enforces the following options:
 .Pp
 .Bl -item -compact
 .It
+.Va WITHOUT_GSSAPI
+(can be overridden with
+.Va WITH_GSSAPI )
+.It
 .Va WITHOUT_KERBEROS_SUPPORT
 .El
 .It Va WITHOUT_KERBEROS_SUPPORT
@@ -374,11 +379,13 @@
 and
 .Xr telnetd 8 .
 .It Va WITHOUT_KVM
-.\" from FreeBSD: src/tools/build/options/WITHOUT_KVM,v 1.1 2007/06/13 02:08:04 sepotvin Exp
+.\" from FreeBSD: src/tools/build/options/WITHOUT_KVM,v 1.2 2007/12/12 16:43:17 ru Exp
 Set to not build the
 .Nm libkvm
 library as a part of the base system.
-.Sy "The option has no effect yet."
+.Bf -symbolic
+The option has no effect yet.
+.Ef
 When set, it also enforces the following options:
 .Pp
 .Bl -item -compact
@@ -502,6 +509,10 @@
 .Pp
 .Bl -item -compact
 .It
+.Va WITHOUT_GSSAPI
+(can be overridden with
+.Va WITH_GSSAPI )
+.It
 .Va WITHOUT_KERBEROS
 .It
 .Va WITHOUT_KERBEROS_SUPPORT
@@ -509,9 +520,11 @@
 .Va WITHOUT_OPENSSH
 .El
 .It Va WITHOUT_PAM
-.\" from FreeBSD: src/tools/build/options/WITHOUT_PAM,v 1.2 2006/07/31 13:53:27 yar Exp
+.\" from FreeBSD: src/tools/build/options/WITHOUT_PAM,v 1.3 2007/12/12 16:43:17 ru Exp
 Set to not build PAM library and modules.
-.Sy "This option is deprecated and does nothing."
+.Bf -symbolic
+This option is deprecated and does nothing.
+.Ef
 When set, it also enforces the following options:
 .Pp
 .Bl -item -compact
@@ -587,11 +600,13 @@
 (which is
 .Xr tcsh 1 ) .
 .It Va WITHOUT_TOOLCHAIN
-.\" from FreeBSD: src/tools/build/options/WITHOUT_TOOLCHAIN,v 1.2 2007/07/19 08:14:28 bz Exp
+.\" from FreeBSD: src/tools/build/options/WITHOUT_TOOLCHAIN,v 1.3 2007/12/12 16:43:17 ru Exp
 Set to not install
 programs used for program development,
 compilers, debuggers etc.
-.Sy "The option does not work for build targets."
+.Bf -symbolic
+The option does not work for build targets.
+.Ef
 When set, it also enforces the following options:
 .Pp
 .Bl -item -compact

==== //depot/projects/toehead/share/mk/bsd.own.mk#3 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/share/mk/bsd.own.mk,v 1.70 2007/12/10 19:09:24 dougb Exp $
+# $FreeBSD: src/share/mk/bsd.own.mk,v 1.71 2007/12/12 16:39:32 ru Exp $
 #
 # The include file <bsd.own.mk> set common variables for owner,
 # group, mode, and directories. Defaults are in brackets.
@@ -381,7 +381,6 @@
 #
 .for var in \
     BIND_LIBS \
-    GSSAPI \
     HESIOD \
     IDEA
 .if defined(WITH_${var}) && defined(WITHOUT_${var})
@@ -479,6 +478,27 @@
 MK_${var}_SUPPORT:= yes
 .endif
 .endfor
+
+#
+# MK_* options whose default value depends on another option.
+#
+.for vv in \
+    GSSAPI/KERBEROS
+.if defined(WITH_${vv:H}) && defined(WITHOUT_${vv:H})
+.error WITH_${vv:H} and WITHOUT_${vv:H} can't both be set.
+.endif
+.if defined(MK_${vv:H})
+.error MK_${vv:H} can't be set by a user.
+.endif
+.if defined(WITH_${vv:H})
+MK_${vv:H}:=	yes
+.elif defined(WITHOUT_${vv:H})
+MK_${vv:H}:=	no
+.else
+MK_${vv:H}:=	${MK_${vv:T}}
+.endif
+.endfor
+
 .endif # !_WITHOUT_SRCCONF
 
 .endif	# !target(__<bsd.own.mk>__)

==== //depot/projects/toehead/sys/dev/sound/pci/ich.c#2 (text+ko) ====

@@ -32,7 +32,7 @@
 #include <dev/pci/pcireg.h>
 #include <dev/pci/pcivar.h>
 
-SND_DECLARE_FILE("$FreeBSD: src/sys/dev/sound/pci/ich.c,v 1.78 2007/07/11 14:27:45 ariff Exp $");
+SND_DECLARE_FILE("$FreeBSD: src/sys/dev/sound/pci/ich.c,v 1.79 2007/12/12 18:21:05 ariff Exp $");
 
 /* -------------------------------------------------------------------- */
 
@@ -980,6 +980,10 @@
 	    device_get_unit(dev), "fixedrate", &i) == 0 && i != 0)
 		sc->flags |= ICH_FIXED_RATE;
 
+	if (resource_int_value(device_get_name(dev),
+	    device_get_unit(dev), "micchannel_enabled", &i) == 0 && i != 0)
+		sc->hasmic = 1;
+
 	sc->irqid = 0;
 	sc->irq = bus_alloc_resource_any(dev, SYS_RES_IRQ, &sc->irqid,
 	    RF_ACTIVE | RF_SHAREABLE);
@@ -1026,7 +1030,8 @@
 	extcaps = ac97_getextcaps(sc->codec);
 	sc->hasvra = extcaps & AC97_EXTCAP_VRA;
 	sc->hasvrm = extcaps & AC97_EXTCAP_VRM;
-	sc->hasmic = ac97_getcaps(sc->codec) & AC97_CAP_MICCHANNEL;
+	sc->hasmic = (sc->hasmic != 0 &&
+	    (ac97_getcaps(sc->codec) & AC97_CAP_MICCHANNEL)) ? 1 : 0;
 	ac97_setextmode(sc->codec, sc->hasvra | sc->hasvrm);
 
 	sc->dtbl_size = sizeof(struct ich_desc) * ICH_DTBL_LENGTH *

==== //depot/projects/toehead/sys/netgraph/ng_l2tp.c#2 (text+ko) ====

@@ -36,7 +36,7 @@
  * 
  * Author: Archie Cobbs <archie at freebsd.org>
  *
- * $FreeBSD: src/sys/netgraph/ng_l2tp.c,v 1.21 2007/10/12 04:56:26 mav Exp $
+ * $FreeBSD: src/sys/netgraph/ng_l2tp.c,v 1.22 2007/12/12 19:04:30 mav Exp $
  */
 
 /*
@@ -88,7 +88,7 @@
 #define L2TP_DATA_HDR		(L2TP_HDR_VERSION)	/* optional: len, seq */
 
 /* Some hard coded values */
-#define L2TP_MAX_XWIN		16			/* my max xmit window */
+#define L2TP_MAX_XWIN		128			/* my max xmit window */
 #define L2TP_MAX_REXMIT		5			/* default max rexmit */
 #define L2TP_MAX_REXMIT_TO	30			/* default rexmit to */
 #define L2TP_DELAYED_ACK	((hz + 19) / 20)	/* delayed ack: 50 ms */

==== //depot/projects/toehead/tools/build/options/WITHOUT_BZIP2#2 (text+ko) ====

@@ -1,3 +1,5 @@
-.\" $FreeBSD: src/tools/build/options/WITHOUT_BZIP2,v 1.1 2007/01/26 10:19:08 delphij Exp $
+.\" $FreeBSD: src/tools/build/options/WITHOUT_BZIP2,v 1.2 2007/12/12 16:43:17 ru Exp $
 Set to not build contributed bzip2 software as a part of the base system.
-.Sy "The option has no effect yet."
+.Bf -symbolic
+The option has no effect yet.
+.Ef

==== //depot/projects/toehead/tools/build/options/WITHOUT_GNU#2 (text+ko) ====

@@ -1,5 +1,7 @@
-.\" $FreeBSD: src/tools/build/options/WITHOUT_GNU,v 1.2 2006/07/31 13:53:27 yar Exp $
+.\" $FreeBSD: src/tools/build/options/WITHOUT_GNU,v 1.3 2007/12/12 16:43:17 ru Exp $
 Set to not build contributed GNU software as a part of the base system.
 This option can be useful if the system built must not contain any code
 covered by the GNU Public License due to legal reasons.
-.Sy "The option has no effect yet."
+.Bf -symbolic
+The option has no effect yet.
+.Ef

==== //depot/projects/toehead/tools/build/options/WITHOUT_KERBEROS#3 (text) ====

@@ -1,7 +1,2 @@
-.\" $FreeBSD: src/tools/build/options/WITHOUT_KERBEROS,v 1.2 2007/12/10 19:09:24 dougb Exp $
+.\" $FreeBSD: src/tools/build/options/WITHOUT_KERBEROS,v 1.3 2007/12/12 16:42:03 ru Exp $
 Set this if you do not want to build Kerberos 5 (KTH Heimdal).
-This option implies
-.Va WITHOUT_GSSAPI .
-Set
-.Va WITH_GSSAPI
-to override.

==== //depot/projects/toehead/tools/build/options/WITHOUT_KVM#2 (text+ko) ====

@@ -1,5 +1,7 @@
-.\" $FreeBSD: src/tools/build/options/WITHOUT_KVM,v 1.1 2007/06/13 02:08:04 sepotvin Exp $
+.\" $FreeBSD: src/tools/build/options/WITHOUT_KVM,v 1.2 2007/12/12 16:43:17 ru Exp $
 Set to not build the
 .Nm libkvm
 library as a part of the base system.
-.Sy "The option has no effect yet."
+.Bf -symbolic
+The option has no effect yet.
+.Ef

==== //depot/projects/toehead/tools/build/options/WITHOUT_PAM#2 (text+ko) ====

@@ -1,3 +1,5 @@
-.\" $FreeBSD: src/tools/build/options/WITHOUT_PAM,v 1.2 2006/07/31 13:53:27 yar Exp $
+.\" $FreeBSD: src/tools/build/options/WITHOUT_PAM,v 1.3 2007/12/12 16:43:17 ru Exp $
 Set to not build PAM library and modules.
-.Sy "This option is deprecated and does nothing."
+.Bf -symbolic
+This option is deprecated and does nothing.
+.Ef

==== //depot/projects/toehead/tools/build/options/WITHOUT_TOOLCHAIN#2 (text) ====

@@ -1,5 +1,7 @@
-.\" $FreeBSD: src/tools/build/options/WITHOUT_TOOLCHAIN,v 1.2 2007/07/19 08:14:28 bz Exp $
+.\" $FreeBSD: src/tools/build/options/WITHOUT_TOOLCHAIN,v 1.3 2007/12/12 16:43:17 ru Exp $
 Set to not install
 programs used for program development,
 compilers, debuggers etc.
-.Sy "The option does not work for build targets."
+.Bf -symbolic
+The option does not work for build targets.
+.Ef

==== //depot/projects/toehead/tools/build/options/makeman#2 (text) ====

@@ -2,7 +2,7 @@
 #
 # This file is in the public domain.
 
-ident='$FreeBSD: src/tools/build/options/makeman,v 1.7 2007/11/06 23:12:53 danger Exp $'
+ident='$FreeBSD: src/tools/build/options/makeman,v 1.8 2007/12/12 16:39:31 ru Exp $'
 
 #
 # usage: show { settings | options } ...
@@ -49,7 +49,7 @@
 main()

>>> TRUNCATED FOR MAIL (1000 lines) <<<


More information about the p4-projects mailing list