PERFORCE change 136617 for review

Marcel Moolenaar marcel at FreeBSD.org
Sun Mar 2 00:37:32 UTC 2008


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

Change 136617 by marcel at marcel_cluster on 2008/03/02 00:37:23

	IFC @136615

Affected files ...

.. //depot/projects/e500/UPDATING#9 integrate
.. //depot/projects/e500/games/fortune/datfiles/fortunes#9 integrate
.. //depot/projects/e500/lib/libarchive/archive_read_support_format_zip.c#8 integrate
.. //depot/projects/e500/lib/libarchive/archive_write_disk.c#8 integrate
.. //depot/projects/e500/lib/libc/gen/sysconf.c#2 integrate
.. //depot/projects/e500/lib/libc/stdio/fdopen.c#2 integrate
.. //depot/projects/e500/lib/libc/stdio/fopen.c#2 integrate
.. //depot/projects/e500/lib/libc/stdio/freopen.c#2 integrate
.. //depot/projects/e500/lib/libc/stdlib/getenv.c#4 integrate
.. //depot/projects/e500/lib/libc/sys/mq_close.2#4 integrate
.. //depot/projects/e500/lib/libc/sys/mq_getattr.2#4 integrate
.. //depot/projects/e500/lib/libc/sys/mq_notify.2#4 integrate
.. //depot/projects/e500/lib/libc/sys/mq_open.2#4 integrate
.. //depot/projects/e500/lib/libc/sys/mq_receive.2#4 integrate
.. //depot/projects/e500/lib/libc/sys/mq_send.2#4 integrate
.. //depot/projects/e500/lib/libc/sys/mq_setattr.2#4 integrate
.. //depot/projects/e500/lib/msun/src/e_rem_pio2.c#6 integrate
.. //depot/projects/e500/lib/msun/src/e_rem_pio2f.c#6 integrate
.. //depot/projects/e500/sbin/ifconfig/ifconfig.8#5 integrate
.. //depot/projects/e500/sbin/ipfw/ipfw.8#8 integrate
.. //depot/projects/e500/sbin/ipfw/ipfw2.c#11 integrate
.. //depot/projects/e500/share/man/man4/Makefile#12 integrate
.. //depot/projects/e500/share/man/man4/ng_nat.4#3 integrate
.. //depot/projects/e500/share/man/man4/uchcom.4#1 branch
.. //depot/projects/e500/share/man/man4/ucom.4#3 integrate
.. //depot/projects/e500/share/man/man4/ucycom.4#2 integrate
.. //depot/projects/e500/share/man/man4/uscanner.4#3 integrate
.. //depot/projects/e500/share/man/man9/Makefile#7 integrate
.. //depot/projects/e500/share/man/man9/lock.9#7 integrate
.. //depot/projects/e500/share/misc/bsd-family-tree#7 integrate
.. //depot/projects/e500/share/misc/committers-doc.dot#4 integrate
.. //depot/projects/e500/share/mk/bsd.cpu.mk#7 integrate
.. //depot/projects/e500/sys/boot/i386/boot2/boot2.c#3 integrate
.. //depot/projects/e500/sys/boot/i386/btx/btx/Makefile#2 integrate
.. //depot/projects/e500/sys/boot/i386/btx/btx/btx.S#2 integrate
.. //depot/projects/e500/sys/boot/i386/gptboot/gptboot.c#2 integrate
.. //depot/projects/e500/sys/boot/i386/libi386/biosdisk.c#3 integrate
.. //depot/projects/e500/sys/boot/pc98/btx/btx/Makefile#2 integrate
.. //depot/projects/e500/sys/boot/pc98/btx/btx/btx.S#2 integrate
.. //depot/projects/e500/sys/boot/pc98/libpc98/Makefile#2 integrate
.. //depot/projects/e500/sys/boot/pc98/libpc98/biosdisk.c#3 integrate
.. //depot/projects/e500/sys/cam/cam_xpt.c#10 integrate
.. //depot/projects/e500/sys/conf/NOTES#14 integrate
.. //depot/projects/e500/sys/conf/files#15 integrate
.. //depot/projects/e500/sys/dev/drm/drm_pciids.h#2 integrate
.. //depot/projects/e500/sys/dev/em/LICENSE#2 integrate
.. //depot/projects/e500/sys/dev/em/e1000_80003es2lan.c#4 integrate
.. //depot/projects/e500/sys/dev/em/e1000_80003es2lan.h#4 integrate
.. //depot/projects/e500/sys/dev/em/e1000_82540.c#4 integrate
.. //depot/projects/e500/sys/dev/em/e1000_82541.c#4 integrate
.. //depot/projects/e500/sys/dev/em/e1000_82541.h#4 integrate
.. //depot/projects/e500/sys/dev/em/e1000_82542.c#4 integrate
.. //depot/projects/e500/sys/dev/em/e1000_82543.c#4 integrate
.. //depot/projects/e500/sys/dev/em/e1000_82543.h#4 integrate
.. //depot/projects/e500/sys/dev/em/e1000_82571.c#4 integrate
.. //depot/projects/e500/sys/dev/em/e1000_82571.h#4 integrate
.. //depot/projects/e500/sys/dev/em/e1000_82575.c#4 delete
.. //depot/projects/e500/sys/dev/em/e1000_82575.h#4 delete
.. //depot/projects/e500/sys/dev/em/e1000_api.c#4 integrate
.. //depot/projects/e500/sys/dev/em/e1000_api.h#4 integrate
.. //depot/projects/e500/sys/dev/em/e1000_defines.h#4 integrate
.. //depot/projects/e500/sys/dev/em/e1000_hw.h#4 integrate
.. //depot/projects/e500/sys/dev/em/e1000_ich8lan.c#4 integrate
.. //depot/projects/e500/sys/dev/em/e1000_ich8lan.h#4 integrate
.. //depot/projects/e500/sys/dev/em/e1000_mac.c#4 integrate
.. //depot/projects/e500/sys/dev/em/e1000_mac.h#4 integrate
.. //depot/projects/e500/sys/dev/em/e1000_manage.c#4 integrate
.. //depot/projects/e500/sys/dev/em/e1000_manage.h#4 integrate
.. //depot/projects/e500/sys/dev/em/e1000_nvm.c#4 integrate
.. //depot/projects/e500/sys/dev/em/e1000_nvm.h#4 integrate
.. //depot/projects/e500/sys/dev/em/e1000_osdep.h#4 integrate
.. //depot/projects/e500/sys/dev/em/e1000_phy.c#4 integrate
.. //depot/projects/e500/sys/dev/em/e1000_phy.h#4 integrate
.. //depot/projects/e500/sys/dev/em/e1000_regs.h#4 integrate
.. //depot/projects/e500/sys/dev/em/if_em.c#7 integrate
.. //depot/projects/e500/sys/dev/em/if_em.h#5 integrate
.. //depot/projects/e500/sys/dev/igb/e1000_82575.c#1 branch
.. //depot/projects/e500/sys/dev/igb/e1000_82575.h#1 branch
.. //depot/projects/e500/sys/dev/igb/e1000_api.c#1 branch
.. //depot/projects/e500/sys/dev/igb/e1000_api.h#1 branch
.. //depot/projects/e500/sys/dev/igb/e1000_defines.h#1 branch
.. //depot/projects/e500/sys/dev/igb/e1000_hw.h#1 branch
.. //depot/projects/e500/sys/dev/igb/e1000_mac.c#1 branch
.. //depot/projects/e500/sys/dev/igb/e1000_mac.h#1 branch
.. //depot/projects/e500/sys/dev/igb/e1000_manage.c#1 branch
.. //depot/projects/e500/sys/dev/igb/e1000_manage.h#1 branch
.. //depot/projects/e500/sys/dev/igb/e1000_nvm.c#1 branch
.. //depot/projects/e500/sys/dev/igb/e1000_nvm.h#1 branch
.. //depot/projects/e500/sys/dev/igb/e1000_osdep.h#1 branch
.. //depot/projects/e500/sys/dev/igb/e1000_phy.c#1 branch
.. //depot/projects/e500/sys/dev/igb/e1000_phy.h#1 branch
.. //depot/projects/e500/sys/dev/igb/e1000_regs.h#1 branch
.. //depot/projects/e500/sys/dev/igb/if_igb.c#1 branch
.. //depot/projects/e500/sys/dev/igb/if_igb.h#1 branch
.. //depot/projects/e500/sys/dev/md/md.c#9 integrate
.. //depot/projects/e500/sys/dev/msk/if_msk.c#6 integrate
.. //depot/projects/e500/sys/dev/msk/if_mskreg.h#4 integrate
.. //depot/projects/e500/sys/dev/usb/ehci.c#5 integrate
.. //depot/projects/e500/sys/fs/nwfs/nwfs_subr.c#2 integrate
.. //depot/projects/e500/sys/gdb/gdb_main.c#2 integrate
.. //depot/projects/e500/sys/geom/part/g_part_mbr.c#2 integrate
.. //depot/projects/e500/sys/i386/cpufreq/est.c#2 integrate
.. //depot/projects/e500/sys/i386/i386/identcpu.c#4 integrate
.. //depot/projects/e500/sys/kern/kern_lock.c#8 integrate
.. //depot/projects/e500/sys/kern/vfs_bio.c#10 integrate
.. //depot/projects/e500/sys/kern/vfs_subr.c#10 integrate
.. //depot/projects/e500/sys/modules/Makefile#9 integrate
.. //depot/projects/e500/sys/modules/em/Makefile#2 integrate
.. //depot/projects/e500/sys/modules/igb/Makefile#1 branch
.. //depot/projects/e500/sys/modules/ipfw_nat/Makefile#1 branch
.. //depot/projects/e500/sys/net80211/ieee80211_scan_sta.c#3 integrate
.. //depot/projects/e500/sys/netgraph/ng_nat.c#3 integrate
.. //depot/projects/e500/sys/netgraph/ng_nat.h#3 integrate
.. //depot/projects/e500/sys/netinet/ip_dummynet.c#7 integrate
.. //depot/projects/e500/sys/netinet/ip_fw.h#3 integrate
.. //depot/projects/e500/sys/netinet/ip_fw2.c#8 integrate
.. //depot/projects/e500/sys/netinet/ip_fw_nat.c#1 branch
.. //depot/projects/e500/sys/netinet/tcp_input.c#8 integrate
.. //depot/projects/e500/sys/netncp/ncp_conn.h#2 integrate
.. //depot/projects/e500/sys/netsmb/smb_conn.h#2 integrate
.. //depot/projects/e500/sys/nfs4client/nfs4_idmap.c#3 integrate
.. //depot/projects/e500/sys/pc98/cbus/sio.c#5 integrate
.. //depot/projects/e500/sys/pc98/pc98/machdep.c#7 integrate
.. //depot/projects/e500/sys/security/audit/audit.c#9 integrate
.. //depot/projects/e500/sys/security/audit/audit_bsm_klib.c#6 integrate
.. //depot/projects/e500/sys/security/audit/audit_private.h#4 integrate
.. //depot/projects/e500/sys/security/audit/audit_syscalls.c#7 integrate
.. //depot/projects/e500/sys/security/audit/audit_trigger.c#3 integrate
.. //depot/projects/e500/sys/security/audit/audit_worker.c#6 integrate
.. //depot/projects/e500/sys/sys/buf.h#6 integrate
.. //depot/projects/e500/sys/sys/bufobj.h#2 integrate
.. //depot/projects/e500/sys/sys/lockmgr.h#7 integrate
.. //depot/projects/e500/sys/sys/mount.h#3 integrate
.. //depot/projects/e500/sys/sys/param.h#12 integrate
.. //depot/projects/e500/sys/sys/vnode.h#7 integrate
.. //depot/projects/e500/sys/vm/vm_map.h#5 integrate
.. //depot/projects/e500/tools/build/mk/OptionalObsoleteFiles.inc#4 integrate
.. //depot/projects/e500/tools/regression/environ/envctl.c#2 integrate
.. //depot/projects/e500/usr.bin/awk/Makefile#3 integrate
.. //depot/projects/e500/usr.bin/calendar/calendars/calendar.freebsd#9 integrate
.. //depot/projects/e500/usr.bin/unifdef/unifdef.c#2 integrate

Differences ...

==== //depot/projects/e500/UPDATING#9 (text+ko) ====

@@ -22,6 +22,20 @@
 	to maximize performance.  (To disable malloc debugging, run
 	ln -s aj /etc/malloc.conf.)
 
+20080301:
+	The layout of struct vmspace has changed. This affects libkvm
+	and any executables that link against libkvm and use the
+	kvm_getprocs() function. In particular, but not exclusively,
+	it affects ps(1), fstat(1), pkill(1), systat(1), top(1) and w(1).
+	The effects are minimal, but it's advisable to upgrade world
+	nonetheless.
+
+20080229:
+	The latest em driver no longer has support in it for the
+	82575 adapter, this is now moved to the igb driver. The
+	split was done to make new features that are incompatible
+	with older hardware easier to do.
+
 20080220:
 	The new geom_lvm(4) geom class has been renamed to geom_linux_lvm(4),
 	likewise the kernel option is now GEOM_LINUX_LVM.
@@ -983,4 +997,4 @@
 Contact Warner Losh if you have any questions about your use of
 this document.
 
-$FreeBSD: src/UPDATING,v 1.520 2008/02/20 07:50:12 thompsa Exp $
+$FreeBSD: src/UPDATING,v 1.522 2008/03/01 22:54:42 marcel Exp $

==== //depot/projects/e500/games/fortune/datfiles/fortunes#9 (text+ko) ====

@@ -1,5 +1,5 @@
 This fortune brought to you by:
-$FreeBSD: src/games/fortune/datfiles/fortunes,v 1.255 2008/01/10 14:51:24 des Exp $
+$FreeBSD: src/games/fortune/datfiles/fortunes,v 1.257 2008/02/28 15:16:24 yar Exp $
 %
 =======================================================================
 ||								     ||
@@ -15979,6 +15979,9 @@
 %
 Don't mind him; politicians always sound like that.
 %
+Don't patch bad code -- rewrite it.
+		-- "The Elements of Programming Style", Kernighan and Plauger
+%
 Don't plan any hasty moves.
 You'll be evicted soon anyway.
 %
@@ -31243,7 +31246,7 @@
 		-- Charles Dickens
 %
 Let the machine do the dirty work.
-		-- "Elements of Programming Style", Kernighan and Ritchie
+		-- "The Elements of Programming Style", Kernighan and Plauger
 %
 Let the meek inherit the earth -- they have it coming to them.
 		-- James Thurber

==== //depot/projects/e500/lib/libarchive/archive_read_support_format_zip.c#8 (text+ko) ====

@@ -24,7 +24,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: src/lib/libarchive/archive_read_support_format_zip.c,v 1.21 2008/02/26 07:17:47 kientzle Exp $");
+__FBSDID("$FreeBSD: src/lib/libarchive/archive_read_support_format_zip.c,v 1.22 2008/02/27 06:05:59 kientzle Exp $");
 
 #ifdef HAVE_ERRNO_H
 #include <errno.h>
@@ -636,7 +636,7 @@
 {
 	struct zip *zip;
 	const void *buff = NULL;
-	ssize_t bytes_avail;
+	off_t bytes_skipped;
 
 	zip = (struct zip *)(a->format->data);
 
@@ -659,19 +659,10 @@
 	 * If the length is at the beginning, we can skip the
 	 * compressed data much more quickly.
 	 */
-	while (zip->entry_bytes_remaining > 0) {
-		bytes_avail = (a->decompressor->read_ahead)(a, &buff, 1);
-		if (bytes_avail <= 0) {
-			archive_set_error(&a->archive,
-			    ARCHIVE_ERRNO_FILE_FORMAT,
-			    "Truncated ZIP file body");
-			return (ARCHIVE_FATAL);
-		}
-		if (bytes_avail > zip->entry_bytes_remaining)
-			bytes_avail = zip->entry_bytes_remaining;
-		(a->decompressor->consume)(a, bytes_avail);
-		zip->entry_bytes_remaining -= bytes_avail;
-	}
+	bytes_skipped = (a->decompressor->skip)(a, zip->entry_bytes_remaining);
+	if (bytes_skipped < 0)
+		return (ARCHIVE_FATAL);
+
 	/* This entry is finished and done. */
 	zip->end_of_entry_cleanup = zip->end_of_entry = 1;
 	return (ARCHIVE_OK);

==== //depot/projects/e500/lib/libarchive/archive_write_disk.c#8 (text+ko) ====

@@ -25,7 +25,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: src/lib/libarchive/archive_write_disk.c,v 1.22 2008/02/19 05:39:35 kientzle Exp $");
+__FBSDID("$FreeBSD: src/lib/libarchive/archive_write_disk.c,v 1.23 2008/02/27 06:16:41 kientzle Exp $");
 
 #ifdef HAVE_SYS_TYPES_H
 #include <sys/types.h>
@@ -1167,7 +1167,7 @@
 	struct stat st;
 
 	/*
-	 * Gaurd against symlink tricks.  Reject any archive entry whose
+	 * Guard against symlink tricks.  Reject any archive entry whose
 	 * destination would be altered by a symlink.
 	 */
 	/* Whatever we checked last time doesn't need to be re-checked. */

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

@@ -34,7 +34,7 @@
 static char sccsid[] = "@(#)sysconf.c	8.2 (Berkeley) 3/20/94";
 #endif /* LIBC_SCCS and not lint */
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/gen/sysconf.c,v 1.25 2007/04/14 13:06:57 pjd Exp $");
+__FBSDID("$FreeBSD: src/lib/libc/gen/sysconf.c,v 1.26 2008/02/27 05:56:57 wollman Exp $");
 
 #include <sys/param.h>
 #include <sys/time.h>
@@ -100,7 +100,16 @@
 		mib[1] = KERN_NGROUPS;
 		break;
 	case _SC_OPEN_MAX:
-	case _SC_STREAM_MAX:	/* assume fds run out before memory does */
+		if (getrlimit(RLIMIT_NOFILE, &rl) != 0)
+			return (-1);
+		if (rl.rlim_cur == RLIM_INFINITY)
+			return (-1);
+		if (rl.rlim_cur > LONG_MAX) {
+			errno = EOVERFLOW;
+			return (-1);
+		}
+		return ((long)rl.rlim_cur);
+	case _SC_STREAM_MAX:
 		if (getrlimit(RLIMIT_NOFILE, &rl) != 0)
 			return (-1);
 		if (rl.rlim_cur == RLIM_INFINITY)
@@ -109,6 +118,15 @@
 			errno = EOVERFLOW;
 			return (-1);
 		}
+		/*
+		 * struct __sFILE currently has a limitation that
+		 * file descriptors must fit in a signed short.
+		 * This doesn't precisely capture the letter of POSIX
+		 * but approximates the spirit.
+		 */
+		if (rl.rlim_cur > SHRT_MAX)
+			return (SHRT_MAX);
+
 		return ((long)rl.rlim_cur);
 	case _SC_JOB_CONTROL:
 		return (_POSIX_JOB_CONTROL);

==== //depot/projects/e500/lib/libc/stdio/fdopen.c#2 (text+ko) ====

@@ -34,7 +34,7 @@
 static char sccsid[] = "@(#)fdopen.c	8.1 (Berkeley) 6/4/93";
 #endif /* LIBC_SCCS and not lint */
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/stdio/fdopen.c,v 1.8 2007/01/09 00:28:06 imp Exp $");
+__FBSDID("$FreeBSD: src/lib/libc/stdio/fdopen.c,v 1.10 2008/02/27 21:25:19 jhb Exp $");
 
 #include "namespace.h"
 #include <sys/types.h>
@@ -42,6 +42,7 @@
 #include <unistd.h>
 #include <stdio.h>
 #include <errno.h>
+#include <limits.h>
 #include "un-namespace.h"
 #include "local.h"
 
@@ -57,6 +58,18 @@
 	if (nofile == 0)
 		nofile = getdtablesize();
 
+	/*
+	 * File descriptors are a full int, but _file is only a short.
+	 * If we get a valid file descriptor that is greater than
+	 * SHRT_MAX, then the fd will get sign-extended into an
+	 * invalid file descriptor.  Handle this case by failing the
+	 * open.
+	 */
+	if (fd > SHRT_MAX) {
+		errno = EMFILE;
+		return (NULL);
+	}
+
 	if ((flags = __sflags(mode, &oflags)) == 0)
 		return (NULL);
 

==== //depot/projects/e500/lib/libc/stdio/fopen.c#2 (text+ko) ====

@@ -34,14 +34,16 @@
 static char sccsid[] = "@(#)fopen.c	8.1 (Berkeley) 6/4/93";
 #endif /* LIBC_SCCS and not lint */
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/stdio/fopen.c,v 1.11 2007/01/09 00:28:06 imp Exp $");
+__FBSDID("$FreeBSD: src/lib/libc/stdio/fopen.c,v 1.13 2008/02/27 21:25:19 jhb Exp $");
 
 #include "namespace.h"
 #include <sys/types.h>
 #include <sys/stat.h>
 #include <fcntl.h>
+#include <unistd.h>
 #include <stdio.h>
 #include <errno.h>
+#include <limits.h>
 #include "un-namespace.h"
 
 #include "local.h"
@@ -63,6 +65,18 @@
 		fp->_flags = 0;			/* release */
 		return (NULL);
 	}
+	/*
+	 * File descriptors are a full int, but _file is only a short.
+	 * If we get a valid file descriptor that is greater than
+	 * SHRT_MAX, then the fd will get sign-extended into an
+	 * invalid file descriptor.  Handle this case by failing the
+	 * open.
+	 */
+	if (f > SHRT_MAX) {
+		_close(f);
+		errno = EMFILE;
+		return (NULL);
+	}
 	fp->_file = f;
 	fp->_flags = flags;
 	fp->_cookie = fp;

==== //depot/projects/e500/lib/libc/stdio/freopen.c#2 (text+ko) ====

@@ -34,13 +34,14 @@
 static char sccsid[] = "@(#)freopen.c	8.1 (Berkeley) 6/4/93";
 #endif /* LIBC_SCCS and not lint */
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/stdio/freopen.c,v 1.18 2007/01/09 00:28:06 imp Exp $");
+__FBSDID("$FreeBSD: src/lib/libc/stdio/freopen.c,v 1.20 2008/02/27 21:25:19 jhb Exp $");
 
 #include "namespace.h"
 #include <sys/types.h>
 #include <sys/stat.h>
 #include <fcntl.h>
 #include <errno.h>
+#include <limits.h>
 #include <unistd.h>
 #include <stdio.h>
 #include <stdlib.h>
@@ -203,6 +204,20 @@
 		}
 	}
 
+	/*
+	 * File descriptors are a full int, but _file is only a short.
+	 * If we get a valid file descriptor that is greater than
+	 * SHRT_MAX, then the fd will get sign-extended into an
+	 * invalid file descriptor.  Handle this case by failing the
+	 * open.
+	 */
+	if (f > SHRT_MAX) {
+		fp->_flags = 0;		/* set it free */
+		FUNLOCKFILE(fp);
+		errno = EMFILE;
+		return (NULL);
+	}
+
 	fp->_flags = flags;
 	fp->_file = f;
 	fp->_cookie = fp;

==== //depot/projects/e500/lib/libc/stdlib/getenv.c#4 (text+ko) ====

@@ -23,23 +23,25 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
+
+#include <sys/cdefs.h>
+__FBSDID("$FreeBSD: src/lib/libc/stdlib/getenv.c,v 1.13 2008/02/28 04:09:08 scf Exp $");
+
+
+#include "namespace.h"
 #include <sys/types.h>
-#include <err.h>
 #include <errno.h>
 #include <stdbool.h>
 #include <stddef.h>
 #include <stdlib.h>
 #include <string.h>
+#include <unistd.h>
+#include "un-namespace.h"
 
 
-#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/stdlib/getenv.c,v 1.12 2007/09/22 02:30:44 scf Exp $");
-
-
-static const char CorruptEnvFindMsg[] =
-    "environment corrupt; unable to find %.*s";
+static const char CorruptEnvFindMsg[] = "environment corrupt; unable to find ";
 static const char CorruptEnvValueMsg[] =
-    "environment corrupt; missing value for %s";
+    "environment corrupt; missing value for ";
 
 
 /*
@@ -97,6 +99,26 @@
 
 
 /*
+ * A simple version of warnx() to avoid the bloat of including stdio in static
+ * binaries.
+ */
+static void
+__env_warnx(const char *msg, const char *name, size_t nameLen)
+{
+	static const char nl[] = "\n";
+	static const char progSep[] = ": ";
+
+	_write(STDERR_FILENO, _getprogname(), strlen(_getprogname()));
+	_write(STDERR_FILENO, progSep, sizeof(progSep) - 1);
+	_write(STDERR_FILENO, msg, strlen(msg));
+	_write(STDERR_FILENO, name, nameLen);
+	_write(STDERR_FILENO, nl, sizeof(nl) - 1);
+
+	return;
+}
+
+
+/*
  * Inline strlen() for performance.  Also, perform check for an equals sign.
  * Cheaper here than peforming a strchr() later.
  */
@@ -341,7 +363,8 @@
 			envVars[envNdx].valueSize =
 			    strlen(envVars[envNdx].value);
 		} else {
-			warnx(CorruptEnvValueMsg, envVars[envNdx].name);
+			__env_warnx(CorruptEnvValueMsg, envVars[envNdx].name,
+			    strlen(envVars[envNdx].name));
 			errno = EFAULT;
 			goto Failure;
 		}
@@ -356,8 +379,8 @@
 		activeNdx = envVarsTotal - 1;
 		if (__findenv(envVars[envNdx].name, nameLen, &activeNdx,
 		    false) == NULL) {
-			warnx(CorruptEnvFindMsg, (int)nameLen,
-			    envVars[envNdx].name);
+			__env_warnx(CorruptEnvFindMsg, envVars[envNdx].name,
+			    nameLen);
 			errno = EFAULT;
 			goto Failure;
 		}
@@ -527,7 +550,8 @@
 		if (origEnviron != NULL)
 			for (env = origEnviron; *env != NULL; env++) {
 				if ((equals = strchr(*env, '=')) == NULL) {
-					warnx(CorruptEnvValueMsg, *env);
+					__env_warnx(CorruptEnvValueMsg, *env,
+					    strlen(*env));
 					errno = EFAULT;
 					return (-1);
 				}

==== //depot/projects/e500/lib/libc/sys/mq_close.2#4 (text+ko) ====

@@ -25,17 +25,17 @@
 .\" OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
 .\" EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 .\"
-.\"   Portions of this text are reprinted and reproduced in electronic form
-.\"   from IEEE Std 1003.1, 2003 Edition, Standard for Information
-.\"   Technology -- Portable Operating System Interface (POSIX), The Open
-.\"   Group Base Specifications Issue 6, Copyright (C) 2001-2003 by the
-.\"   Institute of Electrical and Electronics Engineers, Inc and The Open
-.\"   Group. In the event of any discrepancy between this version and the
-.\"   original IEEE and The Open Group Standard, the original IEEE and The
-.\"   Open Group Standard is the referee document. The original Standard can
-.\"   be obtained online at http://www.opengroup.org/unix/online.html .
+.\" Portions of this text are reprinted and reproduced in electronic form
+.\" from IEEE Std 1003.1, 2004 Edition, Standard for Information Technology --
+.\" Portable Operating System Interface (POSIX), The Open Group Base
+.\" Specifications Issue 6, Copyright (C) 2001-2004 by the Institute of
+.\" Electrical and Electronics Engineers, Inc and The Open Group.  In the
+.\" event of any discrepancy between this version and the original IEEE and
+.\" The Open Group Standard, the original IEEE and The Open Group Standard is
+.\" the referee document.  The original Standard can be obtained online at
+.\"	http://www.opengroup.org/unix/online.html.
 .\"
-.\" $FreeBSD: src/lib/libc/sys/mq_close.2,v 1.5 2008/02/21 19:16:57 philip Exp $
+.\" $FreeBSD: src/lib/libc/sys/mq_close.2,v 1.6 2008/02/29 17:48:25 philip Exp $
 .\"
 .Dd November 29, 2005
 .Dt MQ_CLOSE 2
@@ -95,11 +95,11 @@
 .Fx 7.0 .
 .Sh COPYRIGHT
 Portions of this text are reprinted and reproduced in electronic form
-from IEEE Std 1003.1, 2003 Edition, Standard for Information
-Technology -- Portable Operating System Interface (POSIX), The Open
-Group Base Specifications Issue 6, Copyright (C) 2001-2003 by the
-Institute of Electrical and Electronics Engineers, Inc and The Open
-Group. In the event of any discrepancy between this version and the
-original IEEE and The Open Group Standard, the original IEEE and The
-Open Group Standard is the referee document. The original Standard can
-be obtained online at http://www.opengroup.org/unix/online.html .
+from IEEE Std 1003.1, 2004 Edition, Standard for Information Technology --
+Portable Operating System Interface (POSIX), The Open Group Base
+Specifications Issue 6, Copyright (C) 2001-2004 by the Institute of
+Electrical and Electronics Engineers, Inc and The Open Group.  In the
+event of any discrepancy between this version and the original IEEE and
+The Open Group Standard, the original IEEE and The Open Group Standard is
+the referee document.  The original Standard can be obtained online at
+	http://www.opengroup.org/unix/online.html.

==== //depot/projects/e500/lib/libc/sys/mq_getattr.2#4 (text+ko) ====

@@ -25,17 +25,17 @@
 .\" OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
 .\" EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 .\"
-.\"   Portions of this text are reprinted and reproduced in electronic form
-.\"   from IEEE Std 1003.1, 2003 Edition, Standard for Information
-.\"   Technology -- Portable Operating System Interface (POSIX), The Open
-.\"   Group Base Specifications Issue 6, Copyright (C) 2001-2003 by the
-.\"   Institute of Electrical and Electronics Engineers, Inc and The Open
-.\"   Group. In the event of any discrepancy between this version and the
-.\"   original IEEE and The Open Group Standard, the original IEEE and The
-.\"   Open Group Standard is the referee document. The original Standard can
-.\"   be obtained online at http://www.opengroup.org/unix/online.html .
+.\" Portions of this text are reprinted and reproduced in electronic form
+.\" from IEEE Std 1003.1, 2004 Edition, Standard for Information Technology --
+.\" Portable Operating System Interface (POSIX), The Open Group Base
+.\" Specifications Issue 6, Copyright (C) 2001-2004 by the Institute of
+.\" Electrical and Electronics Engineers, Inc and The Open Group.  In the
+.\" event of any discrepancy between this version and the original IEEE and
+.\" The Open Group Standard, the original IEEE and The Open Group Standard is
+.\" the referee document.  The original Standard can be obtained online at
+.\"	http://www.opengroup.org/unix/online.html.
 .\"
-.\" $FreeBSD: src/lib/libc/sys/mq_getattr.2,v 1.5 2008/02/21 19:16:57 philip Exp $
+.\" $FreeBSD: src/lib/libc/sys/mq_getattr.2,v 1.6 2008/02/29 17:48:25 philip Exp $
 .\"
 .Dd November 29, 2005
 .Dt MQ_GETATTR 2
@@ -117,11 +117,11 @@
 .Fx 7.0 .
 .Sh COPYRIGHT
 Portions of this text are reprinted and reproduced in electronic form
-from IEEE Std 1003.1, 2003 Edition, Standard for Information
-Technology -- Portable Operating System Interface (POSIX), The Open
-Group Base Specifications Issue 6, Copyright (C) 2001-2003 by the
-Institute of Electrical and Electronics Engineers, Inc and The Open
-Group. In the event of any discrepancy between this version and the
-original IEEE and The Open Group Standard, the original IEEE and The
-Open Group Standard is the referee document. The original Standard can
-be obtained online at http://www.opengroup.org/unix/online.html .
+from IEEE Std 1003.1, 2004 Edition, Standard for Information Technology --
+Portable Operating System Interface (POSIX), The Open Group Base
+Specifications Issue 6, Copyright (C) 2001-2004 by the Institute of
+Electrical and Electronics Engineers, Inc and The Open Group.  In the
+event of any discrepancy between this version and the original IEEE and
+The Open Group Standard, the original IEEE and The Open Group Standard is
+the referee document.  The original Standard can be obtained online at
+	http://www.opengroup.org/unix/online.html.

==== //depot/projects/e500/lib/libc/sys/mq_notify.2#4 (text+ko) ====

@@ -25,17 +25,17 @@
 .\" OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
 .\" EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 .\"
-.\"   Portions of this text are reprinted and reproduced in electronic form
-.\"   from IEEE Std 1003.1, 2003 Edition, Standard for Information
-.\"   Technology -- Portable Operating System Interface (POSIX), The Open
-.\"   Group Base Specifications Issue 6, Copyright (C) 2001-2003 by the
-.\"   Institute of Electrical and Electronics Engineers, Inc and The Open
-.\"   Group. In the event of any discrepancy between this version and the
-.\"   original IEEE and The Open Group Standard, the original IEEE and The
-.\"   Open Group Standard is the referee document. The original Standard can
-.\"   be obtained online at http://www.opengroup.org/unix/online.html .
+.\" Portions of this text are reprinted and reproduced in electronic form
+.\" from IEEE Std 1003.1, 2004 Edition, Standard for Information Technology --
+.\" Portable Operating System Interface (POSIX), The Open Group Base
+.\" Specifications Issue 6, Copyright (C) 2001-2004 by the Institute of
+.\" Electrical and Electronics Engineers, Inc and The Open Group.  In the
+.\" event of any discrepancy between this version and the original IEEE and
+.\" The Open Group Standard, the original IEEE and The Open Group Standard is
+.\" the referee document.  The original Standard can be obtained online at
+.\"	http://www.opengroup.org/unix/online.html.
 .\"
-.\" $FreeBSD: src/lib/libc/sys/mq_notify.2,v 1.9 2008/02/21 19:16:57 philip Exp $
+.\" $FreeBSD: src/lib/libc/sys/mq_notify.2,v 1.10 2008/02/29 17:48:25 philip Exp $
 .\"
 .Dd November 29, 2005
 .Dt MQ_NOTIFY 2
@@ -141,11 +141,11 @@
 .Fx 7.0 .
 .Sh COPYRIGHT
 Portions of this text are reprinted and reproduced in electronic form
-from IEEE Std 1003.1, 2003 Edition, Standard for Information
-Technology -- Portable Operating System Interface (POSIX), The Open
-Group Base Specifications Issue 6, Copyright (C) 2001-2003 by the
-Institute of Electrical and Electronics Engineers, Inc and The Open
-Group. In the event of any discrepancy between this version and the
-original IEEE and The Open Group Standard, the original IEEE and The
-Open Group Standard is the referee document. The original Standard can
-be obtained online at http://www.opengroup.org/unix/online.html .
+from IEEE Std 1003.1, 2004 Edition, Standard for Information Technology --
+Portable Operating System Interface (POSIX), The Open Group Base
+Specifications Issue 6, Copyright (C) 2001-2004 by the Institute of
+Electrical and Electronics Engineers, Inc and The Open Group.  In the
+event of any discrepancy between this version and the original IEEE and
+The Open Group Standard, the original IEEE and The Open Group Standard is
+the referee document.  The original Standard can be obtained online at
+	http://www.opengroup.org/unix/online.html.

==== //depot/projects/e500/lib/libc/sys/mq_open.2#4 (text+ko) ====

@@ -25,17 +25,17 @@
 .\" OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
 .\" EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 .\"
-.\"   Portions of this text are reprinted and reproduced in electronic form
-.\"   from IEEE Std 1003.1, 2003 Edition, Standard for Information
-.\"   Technology -- Portable Operating System Interface (POSIX), The Open
-.\"   Group Base Specifications Issue 6, Copyright (C) 2001-2003 by the
-.\"   Institute of Electrical and Electronics Engineers, Inc and The Open
-.\"   Group. In the event of any discrepancy between this version and the
-.\"   original IEEE and The Open Group Standard, the original IEEE and The
-.\"   Open Group Standard is the referee document. The original Standard can
-.\"   be obtained online at http://www.opengroup.org/unix/online.html .
+.\" Portions of this text are reprinted and reproduced in electronic form
+.\" from IEEE Std 1003.1, 2004 Edition, Standard for Information Technology --
+.\" Portable Operating System Interface (POSIX), The Open Group Base
+.\" Specifications Issue 6, Copyright (C) 2001-2004 by the Institute of
+.\" Electrical and Electronics Engineers, Inc and The Open Group.  In the
+.\" event of any discrepancy between this version and the original IEEE and
+.\" The Open Group Standard, the original IEEE and The Open Group Standard is
+.\" the referee document.  The original Standard can be obtained online at
+.\"	http://www.opengroup.org/unix/online.html.
 .\"
-.\" $FreeBSD: src/lib/libc/sys/mq_open.2,v 1.9 2008/02/21 19:16:57 philip Exp $
+.\" $FreeBSD: src/lib/libc/sys/mq_open.2,v 1.10 2008/02/29 17:48:25 philip Exp $
 .\"
 .Dd November 29, 2005
 .Dt MQ_OPEN 2
@@ -313,11 +313,11 @@
 and contain no other slash characters.
 .Sh COPYRIGHT
 Portions of this text are reprinted and reproduced in electronic form
-from IEEE Std 1003.1, 2003 Edition, Standard for Information
-Technology -- Portable Operating System Interface (POSIX), The Open
-Group Base Specifications Issue 6, Copyright (C) 2001-2003 by the
-Institute of Electrical and Electronics Engineers, Inc and The Open
-Group. In the event of any discrepancy between this version and the
-original IEEE and The Open Group Standard, the original IEEE and The
-Open Group Standard is the referee document. The original Standard can
-be obtained online at http://www.opengroup.org/unix/online.html .
+from IEEE Std 1003.1, 2004 Edition, Standard for Information Technology --
+Portable Operating System Interface (POSIX), The Open Group Base
+Specifications Issue 6, Copyright (C) 2001-2004 by the Institute of
+Electrical and Electronics Engineers, Inc and The Open Group.  In the
+event of any discrepancy between this version and the original IEEE and
+The Open Group Standard, the original IEEE and The Open Group Standard is
+the referee document.  The original Standard can be obtained online at
+	http://www.opengroup.org/unix/online.html.

==== //depot/projects/e500/lib/libc/sys/mq_receive.2#4 (text+ko) ====

@@ -25,17 +25,17 @@
 .\" OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
 .\" EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 .\"
-.\"   Portions of this text are reprinted and reproduced in electronic form
-.\"   from IEEE Std 1003.1, 2003 Edition, Standard for Information
-.\"   Technology -- Portable Operating System Interface (POSIX), The Open
-.\"   Group Base Specifications Issue 6, Copyright (C) 2001-2003 by the
-.\"   Institute of Electrical and Electronics Engineers, Inc and The Open
-.\"   Group. In the event of any discrepancy between this version and the
-.\"   original IEEE and The Open Group Standard, the original IEEE and The
-.\"   Open Group Standard is the referee document. The original Standard can
-.\"   be obtained online at http://www.opengroup.org/unix/online.html .
+.\" Portions of this text are reprinted and reproduced in electronic form
+.\" from IEEE Std 1003.1, 2004 Edition, Standard for Information Technology --
+.\" Portable Operating System Interface (POSIX), The Open Group Base
+.\" Specifications Issue 6, Copyright (C) 2001-2004 by the Institute of
+.\" Electrical and Electronics Engineers, Inc and The Open Group.  In the
+.\" event of any discrepancy between this version and the original IEEE and
+.\" The Open Group Standard, the original IEEE and The Open Group Standard is
+.\" the referee document.  The original Standard can be obtained online at
+.\"	http://www.opengroup.org/unix/online.html.
 .\"
-.\" $FreeBSD: src/lib/libc/sys/mq_receive.2,v 1.6 2008/02/21 19:16:57 philip Exp $
+.\" $FreeBSD: src/lib/libc/sys/mq_receive.2,v 1.7 2008/02/29 17:48:25 philip Exp $
 .\"
 .Dd November 29, 2005
 .Dt MQ_RECEIVE 2
@@ -207,11 +207,11 @@
 .Fx 7.0 .
 .Sh COPYRIGHT
 Portions of this text are reprinted and reproduced in electronic form
-from IEEE Std 1003.1, 2003 Edition, Standard for Information
-Technology -- Portable Operating System Interface (POSIX), The Open
-Group Base Specifications Issue 6, Copyright (C) 2001-2003 by the
-Institute of Electrical and Electronics Engineers, Inc and The Open
-Group. In the event of any discrepancy between this version and the
-original IEEE and The Open Group Standard, the original IEEE and The
-Open Group Standard is the referee document. The original Standard can
-be obtained online at http://www.opengroup.org/unix/online.html .
+from IEEE Std 1003.1, 2004 Edition, Standard for Information Technology --
+Portable Operating System Interface (POSIX), The Open Group Base
+Specifications Issue 6, Copyright (C) 2001-2004 by the Institute of
+Electrical and Electronics Engineers, Inc and The Open Group.  In the
+event of any discrepancy between this version and the original IEEE and
+The Open Group Standard, the original IEEE and The Open Group Standard is
+the referee document.  The original Standard can be obtained online at
+	http://www.opengroup.org/unix/online.html.

==== //depot/projects/e500/lib/libc/sys/mq_send.2#4 (text+ko) ====

@@ -25,17 +25,17 @@
 .\" OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
 .\" EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 .\"
-.\"   Portions of this text are reprinted and reproduced in electronic form
-.\"   from IEEE Std 1003.1, 2003 Edition, Standard for Information
-.\"   Technology -- Portable Operating System Interface (POSIX), The Open
-.\"   Group Base Specifications Issue 6, Copyright (C) 2001-2003 by the
-.\"   Institute of Electrical and Electronics Engineers, Inc and The Open
-.\"   Group. In the event of any discrepancy between this version and the
-.\"   original IEEE and The Open Group Standard, the original IEEE and The
-.\"   Open Group Standard is the referee document. The original Standard can
-.\"   be obtained online at http://www.opengroup.org/unix/online.html .
+.\" Portions of this text are reprinted and reproduced in electronic form
+.\" from IEEE Std 1003.1, 2004 Edition, Standard for Information Technology --
+.\" Portable Operating System Interface (POSIX), The Open Group Base
+.\" Specifications Issue 6, Copyright (C) 2001-2004 by the Institute of
+.\" Electrical and Electronics Engineers, Inc and The Open Group.  In the
+.\" event of any discrepancy between this version and the original IEEE and
+.\" The Open Group Standard, the original IEEE and The Open Group Standard is
+.\" the referee document.  The original Standard can be obtained online at
+.\"	http://www.opengroup.org/unix/online.html.
 .\"
-.\" $FreeBSD: src/lib/libc/sys/mq_send.2,v 1.5 2008/02/21 19:16:57 philip Exp $
+.\" $FreeBSD: src/lib/libc/sys/mq_send.2,v 1.6 2008/02/29 17:48:25 philip Exp $
 .\"
 .Dd November 29, 2005
 .Dt MQ_SEND 2
@@ -226,11 +226,11 @@
 .Fx 7.0 .
 .Sh COPYRIGHT
 Portions of this text are reprinted and reproduced in electronic form
-from IEEE Std 1003.1, 2003 Edition, Standard for Information
-Technology -- Portable Operating System Interface (POSIX), The Open
-Group Base Specifications Issue 6, Copyright (C) 2001-2003 by the
-Institute of Electrical and Electronics Engineers, Inc and The Open
-Group. In the event of any discrepancy between this version and the
-original IEEE and The Open Group Standard, the original IEEE and The
-Open Group Standard is the referee document. The original Standard can
-be obtained online at http://www.opengroup.org/unix/online.html .
+from IEEE Std 1003.1, 2004 Edition, Standard for Information Technology --
+Portable Operating System Interface (POSIX), The Open Group Base
+Specifications Issue 6, Copyright (C) 2001-2004 by the Institute of
+Electrical and Electronics Engineers, Inc and The Open Group.  In the
+event of any discrepancy between this version and the original IEEE and
+The Open Group Standard, the original IEEE and The Open Group Standard is
+the referee document.  The original Standard can be obtained online at
+	http://www.opengroup.org/unix/online.html.

==== //depot/projects/e500/lib/libc/sys/mq_setattr.2#4 (text+ko) ====

@@ -25,17 +25,17 @@
 .\" OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
 .\" EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 .\"
-.\"   Portions of this text are reprinted and reproduced in electronic form
-.\"   from IEEE Std 1003.1, 2003 Edition, Standard for Information
-.\"   Technology -- Portable Operating System Interface (POSIX), The Open
-.\"   Group Base Specifications Issue 6, Copyright (C) 2001-2003 by the
-.\"   Institute of Electrical and Electronics Engineers, Inc and The Open
-.\"   Group. In the event of any discrepancy between this version and the
-.\"   original IEEE and The Open Group Standard, the original IEEE and The
-.\"   Open Group Standard is the referee document. The original Standard can
-.\"   be obtained online at http://www.opengroup.org/unix/online.html .
+.\" Portions of this text are reprinted and reproduced in electronic form
+.\" from IEEE Std 1003.1, 2004 Edition, Standard for Information Technology --
+.\" Portable Operating System Interface (POSIX), The Open Group Base
+.\" Specifications Issue 6, Copyright (C) 2001-2004 by the Institute of
+.\" Electrical and Electronics Engineers, Inc and The Open Group.  In the
+.\" event of any discrepancy between this version and the original IEEE and
+.\" The Open Group Standard, the original IEEE and The Open Group Standard is
+.\" the referee document.  The original Standard can be obtained online at
+.\"	http://www.opengroup.org/unix/online.html.
 .\"
-.\" $FreeBSD: src/lib/libc/sys/mq_setattr.2,v 1.6 2008/02/21 19:16:57 philip Exp $
+.\" $FreeBSD: src/lib/libc/sys/mq_setattr.2,v 1.7 2008/02/29 17:48:25 philip Exp $
 .\"
 .Dd November 29, 2005
 .Dt MQ_SETATTR 2
@@ -113,11 +113,11 @@
 .Fx 7.0 .
 .Sh COPYRIGHT
 Portions of this text are reprinted and reproduced in electronic form
-from IEEE Std 1003.1, 2003 Edition, Standard for Information
-Technology -- Portable Operating System Interface (POSIX), The Open
-Group Base Specifications Issue 6, Copyright (C) 2001-2003 by the
-Institute of Electrical and Electronics Engineers, Inc and The Open
-Group. In the event of any discrepancy between this version and the
-original IEEE and The Open Group Standard, the original IEEE and The
-Open Group Standard is the referee document. The original Standard can
-be obtained online at http://www.opengroup.org/unix/online.html .
+from IEEE Std 1003.1, 2004 Edition, Standard for Information Technology --
+Portable Operating System Interface (POSIX), The Open Group Base
+Specifications Issue 6, Copyright (C) 2001-2004 by the Institute of
+Electrical and Electronics Engineers, Inc and The Open Group.  In the
+event of any discrepancy between this version and the original IEEE and
+The Open Group Standard, the original IEEE and The Open Group Standard is
+the referee document.  The original Standard can be obtained online at
+	http://www.opengroup.org/unix/online.html.

==== //depot/projects/e500/lib/msun/src/e_rem_pio2.c#6 (text+ko) ====

@@ -14,7 +14,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/msun/src/e_rem_pio2.c,v 1.17 2008/02/25 18:28:58 bde Exp $");
+__FBSDID("$FreeBSD: src/lib/msun/src/e_rem_pio2.c,v 1.18 2008/02/28 16:22:36 bde Exp $");
 
 /* __ieee754_rem_pio2(x,y)
  * 
@@ -126,7 +126,7 @@
 		}
 	    }
 	}
-	if(ix<=0x413921fb) { /* |x| ~<= 2^19*(pi/2), medium size */
+	if(ix<0x413921fb) {	/* |x| ~< 2^20*(pi/2), medium size */
 medium:
 	    /* Use a specialized rint() to get fn.  Assume round-to-nearest. */
 	    STRICT_ASSIGN(double,fn,x*invpio2+0x1.8p52);

==== //depot/projects/e500/lib/msun/src/e_rem_pio2f.c#6 (text+ko) ====

@@ -15,7 +15,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/msun/src/e_rem_pio2f.c,v 1.28 2008/02/25 22:19:17 bde Exp $");
+__FBSDID("$FreeBSD: src/lib/msun/src/e_rem_pio2f.c,v 1.29 2008/02/28 16:22:36 bde Exp $");
 
 /* __ieee754_rem_pio2f(x,y)
  *
@@ -38,8 +38,8 @@
 static const double
 half =  5.00000000000000000000e-01, /* 0x3FE00000, 0x00000000 */
 invpio2 =  6.36619772367581382433e-01, /* 0x3FE45F30, 0x6DC9C883 */
-pio2_1  =  1.57079632673412561417e+00, /* 0x3FF921FB, 0x54400000 */
-pio2_1t =  6.07710050650619224932e-11; /* 0x3DD0B461, 0x1A626331 */
+pio2_1  =  1.57079631090164184570e+00, /* 0x3FF921FB, 0x50000000 */
+pio2_1t =  1.58932547735281966916e-08; /* 0x3E5110b4, 0x611A6263 */
 
 #ifdef INLINE_REM_PIO2F
 extern inline
@@ -55,7 +55,7 @@
 	GET_FLOAT_WORD(hx,x);
 	ix = hx&0x7fffffff;
     /* 33+53 bit pi is good enough for medium size */
-	if(ix<=0x49490f80) {		/* |x| ~<= 2^19*(pi/2), medium size */
+	if(ix<0x4dc90fdb) {		/* |x| ~< 2^28*(pi/2), medium size */
 	    /* Use a specialized rint() to get fn.  Assume round-to-nearest. */
 	    STRICT_ASSIGN(double,fn,x*invpio2+0x1.8p52);
 	    fn = fn-0x1.8p52;

==== //depot/projects/e500/sbin/ifconfig/ifconfig.8#5 (text+ko) ====

@@ -26,9 +26,9 @@
 .\" SUCH DAMAGE.
 .\"
 .\"     From: @(#)ifconfig.8	8.3 (Berkeley) 1/5/94
-.\" $FreeBSD: src/sbin/ifconfig/ifconfig.8,v 1.145 2007/12/10 02:31:00 sam Exp $
+.\" $FreeBSD: src/sbin/ifconfig/ifconfig.8,v 1.146 2008/02/29 20:42:17 sam Exp $
 .\"
-.Dd December 8, 2007
+.Dd February 29, 2008
 .Dt IFCONFIG 8
 .Os
 .Sh NAME
@@ -779,6 +779,8 @@
 .It Cm deftxkey Ar index
 Set the default key to use for transmission.
 Typically this is only set when using WEP encryption.
+Note that you must set a default transmit key
+for the system to know which key to use in encrypting outbound traffic.
 The
 .Cm weptxkey
 is an alias for this request; it is provided for backwards compatibility.
@@ -1263,6 +1265,10 @@
 If that is the case, then the first four keys
 (1-4) will be the standard temporary keys and any others will be adaptor
 specific keys such as permanent keys stored in NVRAM.
+.Pp
+Note that you must set a default transmit key with
+.Cm deftxkey
+for the system to know which key to use in encrypting outbound traffic.
 .It Cm wme
 Enable Wireless Multimedia Extensions (WME) support, if available,
 for the specified interface.

==== //depot/projects/e500/sbin/ipfw/ipfw.8#8 (text+ko) ====

@@ -1,5 +1,5 @@
 .\"
-.\" $FreeBSD: src/sbin/ipfw/ipfw.8,v 1.210 2008/02/24 15:37:45 piso Exp $
+.\" $FreeBSD: src/sbin/ipfw/ipfw.8,v 1.211 2008/02/27 13:52:33 dwmalone Exp $
 .\"
 .Dd November 26, 2007
 .Dt IPFW 8
@@ -1971,6 +1971,13 @@
 Even worse effects can result if you get packets from an
 interface with a much larger MTU, e.g.\& the loopback interface
 with its 16KB packets.
+The
+.Xr sysctl 8
+variables
+.Em net.inet.ip.dummynet.pipe_byte_limit
+and
+.Em net.inet.ip.dummynet.pipe_slot_limit
+control the maximum lengths that can be specified.

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


More information about the p4-projects mailing list