Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 30 Jun 2007 21:45:35 GMT
From:      Peter Wemm <peter@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 122586 for review
Message-ID:  <200706302145.l5ULjZde097025@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=122586

Change 122586 by peter@peter_overcee on 2007/06/30 21:44:42

	IFC @122585 

Affected files ...

.. //depot/projects/hammer/ObsoleteFiles.inc#28 integrate
.. //depot/projects/hammer/contrib/ipfilter/tools/ipfstat.c#5 integrate
.. //depot/projects/hammer/contrib/less/main.c#6 integrate
.. //depot/projects/hammer/contrib/less/screen.c#6 integrate
.. //depot/projects/hammer/etc/mtree/BSD.include.dist#44 integrate
.. //depot/projects/hammer/include/Makefile#62 integrate
.. //depot/projects/hammer/lib/libarchive/archive_read_open_fd.c#9 integrate
.. //depot/projects/hammer/lib/libarchive/archive_read_open_file.c#12 integrate
.. //depot/projects/hammer/lib/libarchive/archive_read_open_filename.c#4 integrate
.. //depot/projects/hammer/lib/libc/arm/sys/sbrk.S#3 integrate
.. //depot/projects/hammer/lib/libc/net/sctp_sys_calls.c#6 integrate
.. //depot/projects/hammer/lib/libgssapi/gss_accept_sec_context.c#3 integrate
.. //depot/projects/hammer/lib/libgssapi/gss_display_status.c#2 integrate
.. //depot/projects/hammer/lib/libgssapi/gss_export_name.c#2 integrate
.. //depot/projects/hammer/lib/libgssapi/gss_indicate_mechs.c#2 integrate
.. //depot/projects/hammer/lib/libgssapi/gss_init_sec_context.c#4 integrate
.. //depot/projects/hammer/release/doc/en_US.ISO8859-1/hardware/article.sgml#3 integrate
.. //depot/projects/hammer/release/doc/share/misc/dev.archlist.txt#44 integrate
.. //depot/projects/hammer/release/scripts/src-install.sh#4 integrate
.. //depot/projects/hammer/rescue/rescue/Makefile#33 integrate
.. //depot/projects/hammer/sbin/Makefile#45 integrate
.. //depot/projects/hammer/sbin/mount/mount.8#22 integrate
.. //depot/projects/hammer/sbin/mount/mount.c#30 integrate
.. //depot/projects/hammer/sbin/mount_umapfs/Makefile#3 delete
.. //depot/projects/hammer/sbin/mount_umapfs/mount_umapfs.8#7 delete
.. //depot/projects/hammer/sbin/mount_umapfs/mount_umapfs.c#6 delete
.. //depot/projects/hammer/sbin/mount_umapfs/sample.group.mapfile#2 delete
.. //depot/projects/hammer/sbin/mount_umapfs/sample.user.mapfile#2 delete
.. //depot/projects/hammer/sbin/mount_umapfs/umap_manual#2 delete
.. //depot/projects/hammer/share/Makefile#10 integrate
.. //depot/projects/hammer/share/man/man4/Makefile#92 integrate
.. //depot/projects/hammer/share/man/man4/bce.4#4 integrate
.. //depot/projects/hammer/share/man/man4/mac.4#6 integrate
.. //depot/projects/hammer/share/man/man4/nxge.4#1 branch
.. //depot/projects/hammer/share/man/man4/pcm.4#20 integrate
.. //depot/projects/hammer/share/man/man4/tty.4#6 integrate
.. //depot/projects/hammer/share/man/man4/ucom.4#7 integrate
.. //depot/projects/hammer/share/man/man4/uhid.4#6 integrate
.. //depot/projects/hammer/share/man/man7/hier.7#34 integrate
.. //depot/projects/hammer/share/man/man9/priv.9#4 integrate
.. //depot/projects/hammer/share/man/man9/suser.9#12 integrate
.. //depot/projects/hammer/share/misc/committers-src.dot#3 integrate
.. //depot/projects/hammer/share/mk/bsd.own.mk#18 integrate
.. //depot/projects/hammer/share/mk/sys.mk#22 integrate
.. //depot/projects/hammer/sys/boot/forth/loader.conf#34 integrate
.. //depot/projects/hammer/sys/cam/cam_xpt.c#33 integrate
.. //depot/projects/hammer/sys/cam/scsi/scsi_da.c#42 integrate
.. //depot/projects/hammer/sys/conf/NOTES#120 integrate
.. //depot/projects/hammer/sys/conf/files#152 integrate
.. //depot/projects/hammer/sys/conf/options#107 integrate
.. //depot/projects/hammer/sys/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c#4 integrate
.. //depot/projects/hammer/sys/dev/acpica/acpi.c#77 integrate
.. //depot/projects/hammer/sys/dev/ata/ata-all.h#44 integrate
.. //depot/projects/hammer/sys/dev/ata/ata-chipset.c#78 integrate
.. //depot/projects/hammer/sys/dev/ata/ata-disk.c#44 integrate
.. //depot/projects/hammer/sys/dev/ata/ata-pci.h#47 integrate
.. //depot/projects/hammer/sys/dev/ata/ata-usb.c#6 integrate
.. //depot/projects/hammer/sys/dev/ath/if_ath.c#53 integrate
.. //depot/projects/hammer/sys/dev/ipw/if_ipw.c#18 integrate
.. //depot/projects/hammer/sys/dev/isp/isp.c#25 integrate
.. //depot/projects/hammer/sys/dev/isp/isp_pci.c#31 integrate
.. //depot/projects/hammer/sys/dev/iwi/if_iwi.c#24 integrate
.. //depot/projects/hammer/sys/dev/nxge/if_nxge.c#1 branch
.. //depot/projects/hammer/sys/dev/nxge/if_nxge.h#1 branch
.. //depot/projects/hammer/sys/dev/nxge/include/build-version.h#1 branch
.. //depot/projects/hammer/sys/dev/nxge/include/version.h#1 branch
.. //depot/projects/hammer/sys/dev/nxge/include/xge-debug.h#1 branch
.. //depot/projects/hammer/sys/dev/nxge/include/xge-defs.h#1 branch
.. //depot/projects/hammer/sys/dev/nxge/include/xge-list.h#1 branch
.. //depot/projects/hammer/sys/dev/nxge/include/xge-os-pal.h#1 branch
.. //depot/projects/hammer/sys/dev/nxge/include/xge-os-template.h#1 branch
.. //depot/projects/hammer/sys/dev/nxge/include/xge-queue.h#1 branch
.. //depot/projects/hammer/sys/dev/nxge/include/xgehal-channel.h#1 branch
.. //depot/projects/hammer/sys/dev/nxge/include/xgehal-config.h#1 branch
.. //depot/projects/hammer/sys/dev/nxge/include/xgehal-device.h#1 branch
.. //depot/projects/hammer/sys/dev/nxge/include/xgehal-driver.h#1 branch
.. //depot/projects/hammer/sys/dev/nxge/include/xgehal-event.h#1 branch
.. //depot/projects/hammer/sys/dev/nxge/include/xgehal-fifo.h#1 branch
.. //depot/projects/hammer/sys/dev/nxge/include/xgehal-mgmt.h#1 branch
.. //depot/projects/hammer/sys/dev/nxge/include/xgehal-mgmtaux.h#1 branch
.. //depot/projects/hammer/sys/dev/nxge/include/xgehal-mm.h#1 branch
.. //depot/projects/hammer/sys/dev/nxge/include/xgehal-regs.h#1 branch
.. //depot/projects/hammer/sys/dev/nxge/include/xgehal-ring.h#1 branch
.. //depot/projects/hammer/sys/dev/nxge/include/xgehal-stats.h#1 branch
.. //depot/projects/hammer/sys/dev/nxge/include/xgehal-types.h#1 branch
.. //depot/projects/hammer/sys/dev/nxge/include/xgehal.h#1 branch
.. //depot/projects/hammer/sys/dev/nxge/xge-osdep.h#1 branch
.. //depot/projects/hammer/sys/dev/nxge/xgehal/xge-queue.c#1 branch
.. //depot/projects/hammer/sys/dev/nxge/xgehal/xgehal-channel-fp.c#1 branch
.. //depot/projects/hammer/sys/dev/nxge/xgehal/xgehal-channel.c#1 branch
.. //depot/projects/hammer/sys/dev/nxge/xgehal/xgehal-config.c#1 branch
.. //depot/projects/hammer/sys/dev/nxge/xgehal/xgehal-device-fp.c#1 branch
.. //depot/projects/hammer/sys/dev/nxge/xgehal/xgehal-device.c#1 branch
.. //depot/projects/hammer/sys/dev/nxge/xgehal/xgehal-driver.c#1 branch
.. //depot/projects/hammer/sys/dev/nxge/xgehal/xgehal-fifo-fp.c#1 branch
.. //depot/projects/hammer/sys/dev/nxge/xgehal/xgehal-fifo.c#1 branch
.. //depot/projects/hammer/sys/dev/nxge/xgehal/xgehal-mgmt.c#1 branch
.. //depot/projects/hammer/sys/dev/nxge/xgehal/xgehal-mgmtaux.c#1 branch
.. //depot/projects/hammer/sys/dev/nxge/xgehal/xgehal-mm.c#1 branch
.. //depot/projects/hammer/sys/dev/nxge/xgehal/xgehal-ring-fp.c#1 branch
.. //depot/projects/hammer/sys/dev/nxge/xgehal/xgehal-ring.c#1 branch
.. //depot/projects/hammer/sys/dev/nxge/xgehal/xgehal-stats.c#1 branch
.. //depot/projects/hammer/sys/dev/nxge/xgell-version.h#1 branch
.. //depot/projects/hammer/sys/dev/ral/rt2560.c#8 integrate
.. //depot/projects/hammer/sys/dev/ral/rt2661.c#7 integrate
.. //depot/projects/hammer/sys/dev/rp/rp.c#22 integrate
.. //depot/projects/hammer/sys/dev/sym/sym_hipd.c#25 integrate
.. //depot/projects/hammer/sys/dev/usb/if_aue.c#35 integrate
.. //depot/projects/hammer/sys/dev/usb/if_axe.c#34 integrate
.. //depot/projects/hammer/sys/dev/usb/if_axereg.h#11 integrate
.. //depot/projects/hammer/sys/dev/usb/if_cdce.c#10 integrate
.. //depot/projects/hammer/sys/dev/usb/if_cue.c#30 integrate
.. //depot/projects/hammer/sys/dev/usb/if_kue.c#26 integrate
.. //depot/projects/hammer/sys/dev/usb/if_ural.c#23 integrate
.. //depot/projects/hammer/sys/dev/usb/uark.c#3 integrate
.. //depot/projects/hammer/sys/dev/usb/ucom.c#25 integrate
.. //depot/projects/hammer/sys/dev/usb/ugen.c#30 integrate
.. //depot/projects/hammer/sys/dev/usb/uhub.c#21 integrate
.. //depot/projects/hammer/sys/dev/usb/ukbd.c#18 integrate
.. //depot/projects/hammer/sys/dev/usb/umass.c#44 integrate
.. //depot/projects/hammer/sys/dev/usb/umodem.c#14 integrate
.. //depot/projects/hammer/sys/dev/usb/ums.c#22 integrate
.. //depot/projects/hammer/sys/dev/usb/usb.h#9 integrate
.. //depot/projects/hammer/sys/dev/usb/usb_port.h#20 integrate
.. //depot/projects/hammer/sys/dev/usb/usb_quirks.c#18 integrate
.. //depot/projects/hammer/sys/dev/usb/usb_quirks.h#9 integrate
.. //depot/projects/hammer/sys/dev/usb/usb_subr.c#32 integrate
.. //depot/projects/hammer/sys/dev/usb/usbdevs#80 integrate
.. //depot/projects/hammer/sys/dev/usb/usbdi.c#17 integrate
.. //depot/projects/hammer/sys/dev/usb/usbdi.h#14 integrate
.. //depot/projects/hammer/sys/dev/wi/if_wi.c#51 integrate
.. //depot/projects/hammer/sys/fs/tmpfs/tmpfs.h#2 integrate
.. //depot/projects/hammer/sys/fs/tmpfs/tmpfs_fifoops.c#2 integrate
.. //depot/projects/hammer/sys/fs/tmpfs/tmpfs_fifoops.h#2 integrate
.. //depot/projects/hammer/sys/fs/tmpfs/tmpfs_subr.c#2 integrate
.. //depot/projects/hammer/sys/fs/tmpfs/tmpfs_uma.c#2 delete
.. //depot/projects/hammer/sys/fs/tmpfs/tmpfs_uma.h#2 delete
.. //depot/projects/hammer/sys/fs/tmpfs/tmpfs_vfsops.c#2 integrate
.. //depot/projects/hammer/sys/fs/tmpfs/tmpfs_vnops.c#2 integrate
.. //depot/projects/hammer/sys/fs/tmpfs/tmpfs_vnops.h#2 integrate
.. //depot/projects/hammer/sys/fs/umapfs/umap.h#5 delete
.. //depot/projects/hammer/sys/fs/umapfs/umap_subr.c#8 delete
.. //depot/projects/hammer/sys/fs/umapfs/umap_vfsops.c#18 delete
.. //depot/projects/hammer/sys/fs/umapfs/umap_vnops.c#14 delete
.. //depot/projects/hammer/sys/kern/Make.tags.inc#6 integrate
.. //depot/projects/hammer/sys/kern/Makefile#5 integrate
.. //depot/projects/hammer/sys/kern/kern_malloc.c#35 integrate
.. //depot/projects/hammer/sys/kern/kern_rwlock.c#10 integrate
.. //depot/projects/hammer/sys/kern/kern_timeout.c#24 integrate
.. //depot/projects/hammer/sys/modules/Makefile#109 integrate
.. //depot/projects/hammer/sys/modules/acpi/acpi_video/Makefile#7 integrate
.. //depot/projects/hammer/sys/modules/ath_rate_amrr/Makefile#4 integrate
.. //depot/projects/hammer/sys/modules/ath_rate_onoe/Makefile#4 integrate
.. //depot/projects/hammer/sys/modules/i2c/controllers/alpm/Makefile#2 integrate
.. //depot/projects/hammer/sys/modules/i2c/controllers/viapm/Makefile#3 integrate
.. //depot/projects/hammer/sys/modules/nxge/Makefile#1 branch
.. //depot/projects/hammer/sys/modules/tmpfs/Makefile#2 integrate
.. //depot/projects/hammer/sys/modules/umapfs/Makefile#2 delete
.. //depot/projects/hammer/sys/net/bridgestp.c#14 integrate
.. //depot/projects/hammer/sys/net/if_gre.c#34 integrate
.. //depot/projects/hammer/sys/net80211/_ieee80211.h#10 integrate
.. //depot/projects/hammer/sys/net80211/ieee80211_freebsd.h#11 integrate
.. //depot/projects/hammer/sys/net80211/ieee80211_input.c#38 integrate
.. //depot/projects/hammer/sys/net80211/ieee80211_scan.c#2 integrate
.. //depot/projects/hammer/sys/net80211/ieee80211_scan.h#2 integrate
.. //depot/projects/hammer/sys/net80211/ieee80211_scan_sta.c#2 integrate
.. //depot/projects/hammer/sys/netatalk/aarp.h#4 integrate
.. //depot/projects/hammer/sys/netatalk/ddp.h#4 integrate
.. //depot/projects/hammer/sys/netatm/atm_cm.c#12 integrate
.. //depot/projects/hammer/sys/netatm/ipatm/ipatm_event.c#4 integrate
.. //depot/projects/hammer/sys/netatm/spans/spans_proto.c#6 integrate
.. //depot/projects/hammer/sys/netatm/uni/sscf_uni_lower.c#6 integrate
.. //depot/projects/hammer/sys/netatm/uni/uniarp.c#10 integrate
.. //depot/projects/hammer/sys/netatm/uni/uniarp_timer.c#4 integrate
.. //depot/projects/hammer/sys/netatm/uni/unisig_decode.h#3 integrate
.. //depot/projects/hammer/sys/netatm/uni/unisig_proto.c#5 integrate
.. //depot/projects/hammer/sys/netgraph/bluetooth/drivers/ubt/ng_ubt.c#22 integrate
.. //depot/projects/hammer/sys/netgraph/bluetooth/drivers/ubtbcmfw/ubtbcmfw.c#12 integrate
.. //depot/projects/hammer/sys/netgraph/ng_parse.c#12 integrate
.. //depot/projects/hammer/sys/netinet/sctp_indata.c#9 integrate
.. //depot/projects/hammer/sys/netinet/sctputil.c#10 integrate
.. //depot/projects/hammer/sys/security/audit/audit.h#8 integrate
.. //depot/projects/hammer/sys/security/audit/audit_arg.c#9 integrate
.. //depot/projects/hammer/sys/security/audit/audit_bsm.c#8 integrate
.. //depot/projects/hammer/sys/security/audit/audit_bsm_token.c#6 integrate
.. //depot/projects/hammer/sys/security/audit/audit_syscalls.c#9 integrate
.. //depot/projects/hammer/sys/security/mac/mac_audit.c#2 integrate
.. //depot/projects/hammer/sys/security/mac/mac_framework.h#4 integrate
.. //depot/projects/hammer/sys/security/mac/mac_policy.h#4 integrate
.. //depot/projects/hammer/sys/security/mac_stub/mac_stub.c#23 integrate
.. //depot/projects/hammer/sys/security/mac_test/mac_test.c#41 integrate
.. //depot/projects/hammer/sys/sys/_rwlock.h#4 integrate
.. //depot/projects/hammer/sys/sys/rwlock.h#8 integrate
.. //depot/projects/hammer/sys/vm/swap_pager.c#52 integrate
.. //depot/projects/hammer/sys/vm/vm_pageout.c#43 integrate
.. //depot/projects/hammer/tools/regression/fsx/fsx.c#5 integrate
.. //depot/projects/hammer/tools/regression/lib/libc/nss/test-gethostby.c#2 integrate
.. //depot/projects/hammer/tools/regression/lib/libc/nss/test-gethostby.t#2 integrate
.. //depot/projects/hammer/tools/regression/tmpfs/Makefile#2 integrate
.. //depot/projects/hammer/tools/regression/tmpfs/t_id_gen#2 delete
.. //depot/projects/hammer/tools/tools/README#25 integrate
.. //depot/projects/hammer/tools/tools/nxge/Makefile#1 branch
.. //depot/projects/hammer/tools/tools/nxge/xge_cmn.h#1 branch
.. //depot/projects/hammer/tools/tools/nxge/xge_info.c#1 branch
.. //depot/projects/hammer/tools/tools/nxge/xge_info.h#1 branch
.. //depot/projects/hammer/tools/tools/nxge/xge_log.c#1 branch
.. //depot/projects/hammer/tools/tools/nxge/xge_log.h#1 branch
.. //depot/projects/hammer/tools/tools/tinybsd/conf/bridge/tinybsd.basefiles#2 integrate
.. //depot/projects/hammer/tools/tools/tinybsd/conf/default/tinybsd.basefiles#2 integrate
.. //depot/projects/hammer/tools/tools/tinybsd/conf/firewall/tinybsd.basefiles#2 integrate
.. //depot/projects/hammer/tools/tools/tinybsd/conf/minimal/tinybsd.basefiles#2 integrate
.. //depot/projects/hammer/tools/tools/tinybsd/conf/vpn/tinybsd.basefiles#2 integrate
.. //depot/projects/hammer/tools/tools/tinybsd/conf/wireless/tinybsd.basefiles#2 integrate
.. //depot/projects/hammer/tools/tools/tinybsd/conf/wrap/tinybsd.basefiles#2 integrate
.. //depot/projects/hammer/usr.bin/calendar/calendars/calendar.freebsd#54 integrate
.. //depot/projects/hammer/usr.bin/truss/amd64-fbsd.c#6 integrate
.. //depot/projects/hammer/usr.bin/truss/i386-fbsd.c#12 integrate
.. //depot/projects/hammer/usr.bin/truss/i386-linux.c#9 integrate
.. //depot/projects/hammer/usr.bin/truss/ia64-fbsd.c#11 integrate
.. //depot/projects/hammer/usr.bin/truss/main.c#13 integrate
.. //depot/projects/hammer/usr.bin/truss/powerpc-fbsd.c#3 integrate
.. //depot/projects/hammer/usr.bin/truss/setup.c#7 integrate
.. //depot/projects/hammer/usr.bin/truss/sparc64-fbsd.c#9 integrate
.. //depot/projects/hammer/usr.bin/usbhidaction/usbhidaction.1#3 integrate
.. //depot/projects/hammer/usr.bin/usbhidaction/usbhidaction.c#3 integrate
.. //depot/projects/hammer/usr.sbin/portsnap/phttpget/phttpget.c#8 integrate
.. //depot/projects/hammer/usr.sbin/sysinstall/dist.c#30 integrate
.. //depot/projects/hammer/usr.sbin/sysinstall/dist.h#11 integrate
.. //depot/projects/hammer/usr.sbin/sysinstall/help/distributions.hlp#4 integrate
.. //depot/projects/hammer/usr.sbin/sysinstall/help/fixit.hlp#3 integrate
.. //depot/projects/hammer/usr.sbin/sysinstall/help/media.hlp#2 integrate
.. //depot/projects/hammer/usr.sbin/sysinstall/help/network_device.hlp#2 integrate
.. //depot/projects/hammer/usr.sbin/sysinstall/help/options.hlp#3 integrate
.. //depot/projects/hammer/usr.sbin/sysinstall/help/securelevel.hlp#4 integrate
.. //depot/projects/hammer/usr.sbin/sysinstall/help/shortcuts.hlp#3 integrate
.. //depot/projects/hammer/usr.sbin/sysinstall/index.c#14 integrate
.. //depot/projects/hammer/usr.sbin/sysinstall/install.c#29 integrate
.. //depot/projects/hammer/usr.sbin/sysinstall/menus.c#43 integrate
.. //depot/projects/hammer/usr.sbin/sysinstall/sysinstall.8#17 integrate
.. //depot/projects/hammer/usr.sbin/sysinstall/sysinstall.h#27 integrate
.. //depot/projects/hammer/usr.sbin/sysinstall/system.c#9 integrate

Differences ...

==== //depot/projects/hammer/ObsoleteFiles.inc#28 (text+ko) ====

@@ -1,5 +1,5 @@
 #
-# $FreeBSD: src/ObsoleteFiles.inc,v 1.96 2007/06/18 18:50:59 rafan Exp $
+# $FreeBSD: src/ObsoleteFiles.inc,v 1.97 2007/06/25 05:06:52 rafan Exp $
 #
 # This file lists old files (OLD_FILES), libraries (OLD_LIBS) and
 # directories (OLD_DIRS) which should get removed at an update. Recently
@@ -14,6 +14,12 @@
 # The file is partitioned: OLD_FILES first, then OLD_LIBS and OLD_DIRS last.
 #
 
+# 20070625: umapfs removal
+OLD_FILES+=rescue/mount_umapfs
+OLD_FILES+=sbin/mount_umapfs
+OLD_FILES+=usr/include/fs/umapfs/umap.h
+OLD_FILES+=usr/share/man/man8/mount_umapfs.8.gz
+OLD_DIRS+=usr/include/fs/umapfs
 # 20070618: shared library version bump
 OLD_LIBS+=lib/libalias.so.5
 OLD_LIBS+=lib/libbsnmp.so.3

==== //depot/projects/hammer/contrib/ipfilter/tools/ipfstat.c#5 (text+ko) ====

@@ -1,4 +1,4 @@
-/*	$FreeBSD: src/contrib/ipfilter/tools/ipfstat.c,v 1.5 2007/06/04 02:54:34 darrenr Exp $	*/
+/*	$FreeBSD: src/contrib/ipfilter/tools/ipfstat.c,v 1.6 2007/06/24 16:39:12 darrenr Exp $	*/
 
 /*
  * Copyright (C) 2002-2006 by Darren Reed.
@@ -1811,7 +1811,7 @@
 			*port = -1;
 		} else if (!sscanf(comma + 1, "%d", port) ||
 			   (*port < 0) || (*port > 65535)) {
-			fprintf(stderr, "Invalid port specfication in %s\n",
+			fprintf(stderr, "Invalid port specification in %s\n",
 				argument);
 			free(s);
 			exit(-2);
@@ -1823,6 +1823,7 @@
 	/* get ip address */
 	if (!strcasecmp(s, "any")) {
 		ip->in4.s_addr = INADDR_ANY;
+		ok = 1;
 #ifdef	USE_INET6
 		ip->in6 = in6addr_any;
 	} else if (use_inet6 && inet_pton(AF_INET6, s, &ip->in6)) {

==== //depot/projects/hammer/contrib/less/main.c#6 (text+ko) ====

@@ -1,4 +1,4 @@
-/* $FreeBSD: src/contrib/less/main.c,v 1.8 2007/06/21 10:39:24 delphij Exp $ */
+/* $FreeBSD: src/contrib/less/main.c,v 1.9 2007/06/23 15:28:00 delphij Exp $ */
 /*
  * Copyright (C) 1984-2007  Mark Nudelman
  *
@@ -59,6 +59,7 @@
 extern int	missing_cap;
 extern int	know_dumb;
 extern int	quit_if_one_screen;
+extern int	no_init;
 extern int	pr_type;
 
 
@@ -165,7 +166,7 @@
 	}
 
 	if (less_is_more && get_quit_at_eof())
-		quit_if_one_screen = TRUE;
+		no_init = quit_if_one_screen = TRUE;
 
 #if EDITOR
 	editor = lgetenv("VISUAL");

==== //depot/projects/hammer/contrib/less/screen.c#6 (text+ko) ====

@@ -1,4 +1,4 @@
-/* $FreeBSD: src/contrib/less/screen.c,v 1.7 2007/06/21 10:44:50 delphij Exp $ */
+/* $FreeBSD: src/contrib/less/screen.c,v 1.8 2007/06/23 15:28:00 delphij Exp $ */
 /*
  * Copyright (C) 1984-2007  Mark Nudelman
  *
@@ -228,8 +228,6 @@
 extern int no_back_scroll;
 extern int swindow;
 extern int no_init;
-extern int quit_at_eof;
-extern int less_is_more;
 extern int no_keypad;
 extern int sigs;
 extern int wscroll;
@@ -1211,19 +1209,11 @@
 	if (sc_e_keypad == NULL)
 		sc_e_keypad = "";
 		
-	/*
-	 * This loses for terminals with termcap entries with ti/te strings
-	 * that switch to/from an alternate screen, and we're in quit_at_eof
-	 * (eg, more(1)).
- 	 */
-	if (!quit_at_eof && !less_is_more) {
-		sc_init = ltgetstr("ti", &sp);
-		sc_deinit = ltgetstr("te", &sp);
-	}
-
+	sc_init = ltgetstr("ti", &sp);
 	if (sc_init == NULL)
 		sc_init = "";
 
+	sc_deinit= ltgetstr("te", &sp);
 	if (sc_deinit == NULL)
 		sc_deinit = "";
 

==== //depot/projects/hammer/etc/mtree/BSD.include.dist#44 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/etc/mtree/BSD.include.dist,v 1.114 2007/06/01 18:53:36 ru Exp $
+# $FreeBSD: src/etc/mtree/BSD.include.dist,v 1.115 2007/06/25 05:06:53 rafan Exp $
 #
 # Please see the file src/etc/mtree/README before making changes to this file.
 #
@@ -146,8 +146,6 @@
         ..
         udf
         ..
-        umapfs
-        ..
         unionfs
         ..
     ..

==== //depot/projects/hammer/include/Makefile#62 (text+ko) ====

@@ -1,5 +1,5 @@
 #	@(#)Makefile	8.2 (Berkeley) 1/4/94
-# $FreeBSD: src/include/Makefile,v 1.270 2007/04/13 01:39:33 pjd Exp $
+# $FreeBSD: src/include/Makefile,v 1.271 2007/06/25 05:06:53 rafan Exp $
 #
 # Doing a "make install" builds /usr/include.
 
@@ -42,8 +42,7 @@
 	dev/ic dev/iicbus ${_dev_ieee488} dev/lmc dev/ofw \
 	dev/pbio ${_dev_powermac_nvram} dev/ppbus dev/smbus dev/speaker dev/usb dev/utopia dev/vkbd dev/wi \
 	fs/devfs fs/fdescfs fs/fifofs fs/msdosfs fs/ntfs fs/nullfs \
-	${_fs_nwfs} fs/portalfs fs/procfs fs/smbfs fs/udf fs/umapfs \
-	fs/unionfs \
+	${_fs_nwfs} fs/portalfs fs/procfs fs/smbfs fs/udf fs/unionfs \
 	geom/cache geom/concat geom/eli geom/gate geom/journal geom/label \
 	geom/mirror geom/nop geom/raid3 geom/shsec geom/stripe \
 	netatm/ipatm netatm/sigpvc netatm/spans netatm/uni \

==== //depot/projects/hammer/lib/libarchive/archive_read_open_fd.c#9 (text+ko) ====

@@ -24,7 +24,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: src/lib/libarchive/archive_read_open_fd.c,v 1.12 2007/06/18 00:36:54 kientzle Exp $");
+__FBSDID("$FreeBSD: src/lib/libarchive/archive_read_open_fd.c,v 1.13 2007/06/26 03:06:48 kientzle Exp $");
 
 #ifdef HAVE_SYS_STAT_H
 #include <sys/stat.h>
@@ -78,7 +78,8 @@
 		return (ARCHIVE_FATAL);
 	}
 	mine->fd = fd;
-	mine->can_skip = 1;
+	/* lseek() hardly ever works, so disable it by default.  See below. */
+	mine->can_skip = 0;
 	return (archive_read_open2(a, mine, file_open, file_read, file_skip, file_close));
 }
 
@@ -93,8 +94,18 @@
 		return (ARCHIVE_FATAL);
 	}
 
-	if (S_ISREG(st.st_mode))
+	if (S_ISREG(st.st_mode)) {
 		archive_read_extract_set_skip_file(a, st.st_dev, st.st_ino);
+		/*
+		 * Enabling skip here is a performance optimization for
+		 * anything that supports lseek().  On FreeBSD, only
+		 * regular files and raw disk devices support lseek() and
+		 * there's no portable way to determine if a device is
+		 * a raw disk device, so we only enable this optimization
+		 * for regular files.
+		 */
+		mine->can_skip = 1;
+	}
 	return (ARCHIVE_OK);
 }
 

==== //depot/projects/hammer/lib/libarchive/archive_read_open_file.c#12 (text+ko) ====

@@ -24,7 +24,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: src/lib/libarchive/archive_read_open_file.c,v 1.19 2007/01/09 08:05:55 kientzle Exp $");
+__FBSDID("$FreeBSD: src/lib/libarchive/archive_read_open_file.c,v 1.20 2007/06/26 03:06:48 kientzle Exp $");
 
 #ifdef HAVE_SYS_STAT_H
 #include <sys/stat.h>
@@ -51,6 +51,7 @@
 	FILE    *f;
 	size_t	 block_size;
 	void	*buffer;
+	char	 can_skip;
 };
 
 static int	file_close(struct archive *, void *);
@@ -80,6 +81,8 @@
 		return (ARCHIVE_FATAL);
 	}
 	mine->f = f;
+	/* Suppress skip by default. See below. */
+	mine->can_skip = 0;
 	return (archive_read_open2(a, mine, file_open, file_read,
 		    file_skip, file_close));
 }
@@ -95,8 +98,11 @@
 	 * it's not a file.  (FILE * objects can wrap many kinds
 	 * of I/O streams.)
 	 */
-	if (fstat(fileno(mine->f), &st) == 0 && S_ISREG(st.st_mode))
+	if (fstat(fileno(mine->f), &st) == 0 && S_ISREG(st.st_mode)) {
 		archive_read_extract_set_skip_file(a, st.st_dev, st.st_ino);
+		/* Enable the seek optimization for regular files. */
+		mine->can_skip = 1;
+	}
 
 	return (ARCHIVE_OK);
 }
@@ -125,21 +131,25 @@
 {
 	struct read_FILE_data *mine = (struct read_FILE_data *)client_data;
 
+	(void)a; /* UNUSED */
+
 	/*
-	 * Note: the 'fd' and 'filename' versions round the request
-	 * down to a multiple of the block size to ensure proper
-	 * operation on block-oriented media such as tapes.  But stdio
-	 * doesn't work with such media (it doesn't ensure blocking),
-	 * so we don't need to bother.
+	 * If we can't skip, return 0 as the amount we did step and
+	 * the caller will work around by reading and discarding.
 	 */
+	if (!mine->can_skip)
+		return (0);
+	if (request == 0)
+		return (0);
+
 #if HAVE_FSEEKO
 	if (fseeko(mine->f, request, SEEK_CUR) != 0)
 #else
 	if (fseek(mine->f, request, SEEK_CUR) != 0)
 #endif
 	{
-		archive_set_error(a, errno, "Error skipping forward");
-		return (ARCHIVE_FATAL);
+		mine->can_skip = 0;
+		return (0);
 	}
 	return (request);
 }

==== //depot/projects/hammer/lib/libarchive/archive_read_open_filename.c#4 (text+ko) ====

@@ -24,7 +24,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: src/lib/libarchive/archive_read_open_filename.c,v 1.19 2007/06/18 00:36:54 kientzle Exp $");
+__FBSDID("$FreeBSD: src/lib/libarchive/archive_read_open_filename.c,v 1.20 2007/06/26 03:06:48 kientzle Exp $");
 
 #ifdef HAVE_SYS_STAT_H
 #include <sys/stat.h>
@@ -96,7 +96,8 @@
 	mine->block_size = block_size;
 	mine->buffer = NULL;
 	mine->fd = -1;
-	mine->can_skip = 1;
+	/* lseek() almost never works; disable it by default.  See below. */
+	mine->can_skip = 0;
 	return (archive_read_open2(a, mine, file_open, file_read, file_skip, file_close));
 }
 
@@ -123,8 +124,19 @@
 	if (fstat(mine->fd, &st) == 0) {
 		/* If we're reading a file from disk, ensure that we don't
 		   overwrite it with an extracted file. */
-		if (S_ISREG(st.st_mode))
+		if (S_ISREG(st.st_mode)) {
 			archive_read_extract_set_skip_file(a, st.st_dev, st.st_ino);
+			/*
+			 * Enabling skip here is a performance
+			 * optimization for anything that supports
+			 * lseek().  On FreeBSD, only regular files
+			 * and raw disk devices support lseek() and
+			 * there's no portable way to determine if a
+			 * device is a raw disk device, so we only
+			 * enable this optimization for regular files.
+			 */
+			mine->can_skip = 1;
+		}
 		/* Remember mode so close can decide whether to flush. */
 		mine->st_mode = st.st_mode;
 	} else {

==== //depot/projects/hammer/lib/libc/arm/sys/sbrk.S#3 (text+ko) ====

@@ -32,10 +32,10 @@
  */
 
 #include <machine/asm.h>
-__FBSDID("$FreeBSD: src/lib/libc/arm/sys/sbrk.S,v 1.2 2004/11/09 16:49:14 cognet Exp $");
+__FBSDID("$FreeBSD: src/lib/libc/arm/sys/sbrk.S,v 1.3 2007/06/27 02:45:37 kan Exp $");
 #include "SYS.h"
 
-	.globl	_C_LABEL(end)
+	.globl	_C_LABEL(_end)
 
 #ifdef WEAK_ALIAS
 WEAK_ALIAS(sbrk, _sbrk)
@@ -46,7 +46,7 @@
 	.globl	CURBRK
 	.type	CURBRK,#object
 CURBRK:
-	.word	_C_LABEL(end)
+	.word	_C_LABEL(_end)
 
 /*
  * Change the data segment size

==== //depot/projects/hammer/lib/libc/net/sctp_sys_calls.c#6 (text+ko) ====

@@ -29,7 +29,7 @@
  * SUCH DAMAGE.
  */
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/net/sctp_sys_calls.c,v 1.9 2007/06/22 13:59:54 rrs Exp $");
+__FBSDID("$FreeBSD: src/lib/libc/net/sctp_sys_calls.c,v 1.11 2007/06/26 02:07:47 mjacob Exp $");
 #include <stdio.h>
 #include <string.h>
 #include <errno.h>
@@ -185,10 +185,18 @@
 	/* validate all the addresses and get the size */
 	for (i = 0; i < addrcnt; i++) {
 		if (at->sa_family == AF_INET) {
+			if (at->sa_len != sizeof(struct sockaddr_in)) {
+				errno = EINVAL;
+				return (-1);
+			}
 			memcpy(cpto, at, at->sa_len);
 			cpto = ((caddr_t)cpto + at->sa_len);
 			len += at->sa_len;
 		} else if (at->sa_family == AF_INET6) {
+			if (at->sa_len != sizeof(struct sockaddr_in6)) {
+				errno = EINVAL;
+				return (-1);
+			}
 			if (IN6_IS_ADDR_V4MAPPED(&((struct sockaddr_in6 *)at)->sin6_addr)) {
 				len += sizeof(struct sockaddr_in);
 				in6_sin6_2_sin((struct sockaddr_in *)cpto, (struct sockaddr_in6 *)at);
@@ -205,7 +213,8 @@
 		}
 		if (len > (sizeof(buf) - sizeof(int))) {
 			/* Never enough memory */
-			return (E2BIG);
+			errno = E2BIG;
+			return (-1);
 		}
 		at = (struct sockaddr *)((caddr_t)at + at->sa_len);
 		cnt++;
@@ -231,7 +240,7 @@
 {
 	struct sctp_getaddresses *gaddrs;
 	struct sockaddr *sa;
-	int i, sz, fam, argsz;
+	int i, sz, argsz;
 
 	/* validate the flags */
 	if ((flags != SCTP_BINDX_ADD_ADDR) &&
@@ -251,23 +260,30 @@
 		errno = ENOMEM;
 		return (-1);
 	}
-	gaddrs->sget_assoc_id = 0;
 	sa = addrs;
 	for (i = 0; i < addrcnt; i++) {
 		sz = sa->sa_len;
-		fam = sa->sa_family;
-		if ((fam != AF_INET) && (fam != AF_INET6)) {
+		if (sa->sa_family == AF_INET) {
+			if (sa->sa_len != sizeof(struct sockaddr_in))
+				goto out_error;
+		} else if (sa->sa_family == AF_INET6) {
+			if (sa->sa_len != sizeof(struct sockaddr_in6))
+				goto out_error;
+		} else {
+			/* invalid address family specified */
+	out_error:
 			free(gaddrs);
 			errno = EINVAL;
 			return (-1);
 		}
+		memset(gaddrs, 0, argsz);
+		gaddrs->sget_assoc_id = 0;
 		memcpy(gaddrs->addr, sa, sz);
-		if (setsockopt(sd, IPPROTO_SCTP, flags,
-		    gaddrs, (socklen_t) argsz) != 0) {
+		if (setsockopt(sd, IPPROTO_SCTP, flags, gaddrs,
+		    (socklen_t) argsz) != 0) {
 			free(gaddrs);
 			return (-1);
 		}
-		memset(gaddrs, 0, argsz);
 		sa = (struct sockaddr *)((caddr_t)sa + sz);
 	}
 	free(gaddrs);
@@ -315,7 +331,6 @@
 		errno = ENOMEM;
 		return (-1);
 	}
-	memset(addrs, 0, siz);
 	addrs->sget_assoc_id = id;
 	/* Now lets get the array of addresses */
 	if (getsockopt(sd, IPPROTO_SCTP, SCTP_GET_PEER_ADDRESSES,
@@ -380,7 +395,6 @@
 		errno = ENOMEM;
 		return (-1);
 	}
-	memset(addrs, 0, siz);
 	addrs->sget_assoc_id = id;
 	/* Now lets get the array of addresses */
 	if (getsockopt(sd, IPPROTO_SCTP, SCTP_GET_LOCAL_ADDRESSES, addrs,

==== //depot/projects/hammer/lib/libgssapi/gss_accept_sec_context.c#3 (text+ko) ====

@@ -23,7 +23,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- *	$FreeBSD: src/lib/libgssapi/gss_accept_sec_context.c,v 1.2 2007/04/04 02:40:59 kan Exp $
+ *	$FreeBSD: src/lib/libgssapi/gss_accept_sec_context.c,v 1.3 2007/06/30 07:47:45 dfr Exp $
  */
 
 #include <gssapi/gssapi.h>
@@ -48,7 +48,7 @@
     OM_uint32 *time_rec,
     gss_cred_id_t *delegated_cred_handle)
 {
-	OM_uint32 major_status;
+	OM_uint32 major_status, mech_ret_flags;
 	struct _gss_mech_switch *m;
 	struct _gss_context *ctx = (struct _gss_context *) *context_handle;
 	struct _gss_cred *cred = (struct _gss_cred *) acceptor_cred_handle;
@@ -165,7 +165,7 @@
 	    &src_mn,
 	    mech_type,
 	    output_token,
-	    ret_flags,
+	    &mech_ret_flags,
 	    time_rec,
 	    &delegated_mc);
 	if (major_status != GSS_S_COMPLETE &&
@@ -187,7 +187,7 @@
 		*src_name = (gss_name_t) name;
 	}
 
-	if (*ret_flags & GSS_C_DELEG_FLAG) {
+	if (mech_ret_flags & GSS_C_DELEG_FLAG) {
 		if (!delegated_cred_handle) {
 			m->gm_release_cred(minor_status, &delegated_mc);
 			*ret_flags &= ~GSS_C_DELEG_FLAG;
@@ -217,6 +217,8 @@
 		}
 	}
 
+	if (ret_flags)
+		*ret_flags = mech_ret_flags;
 	*context_handle = (gss_ctx_id_t) ctx;
 	return (major_status);
 }

==== //depot/projects/hammer/lib/libgssapi/gss_display_status.c#2 (text+ko) ====

@@ -23,46 +23,122 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- *	$FreeBSD: src/lib/libgssapi/gss_display_status.c,v 1.1 2005/12/29 14:40:20 dfr Exp $
+ *	$FreeBSD: src/lib/libgssapi/gss_display_status.c,v 1.2 2007/06/30 07:47:45 dfr Exp $
+ */
+/*
+ * Copyright (c) 1998 - 2005 Kungliga Tekniska Högskolan
+ * (Royal Institute of Technology, Stockholm, Sweden). 
+ * All rights reserved. 
+ *
+ * Redistribution and use in source and binary forms, with or without 
+ * modification, are permitted provided that the following conditions 
+ * are met: 
+ *
+ * 1. Redistributions of source code must retain the above copyright 
+ *    notice, this list of conditions and the following disclaimer. 
+ *
+ * 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. Neither the name of the Institute nor the names of its contributors 
+ *    may be used to endorse or promote products derived from this software 
+ *    without specific prior written permission. 
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND 
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE 
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
+ * LIABILITY, OR TORT (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 <gssapi/gssapi.h>
 #include <string.h>
+#include <errno.h>
 
 #include "mech_switch.h"
 
-struct _gss_status_desc {
-	OM_uint32	gs_status;
-	const char*	gs_desc;
-};
+static const char *
+calling_error(OM_uint32 v)
+{
+    static const char *msgs[] = {
+	NULL,			/* 0 */
+	"A required input parameter could not be read.", /*  */
+	"A required output parameter could not be written.", /*  */
+	"A parameter was malformed"
+    };
+
+    v >>= GSS_C_CALLING_ERROR_OFFSET;
+
+    if (v == 0)
+	return "";
+    else if (v >= sizeof(msgs)/sizeof(*msgs))
+	return "unknown calling error";
+    else
+	return msgs[v];
+}
+
+static const char *
+routine_error(OM_uint32 v)
+{
+    static const char *msgs[] = {
+	NULL,			/* 0 */
+	"An unsupported mechanism was requested",
+	"An invalid name was supplied",
+	"A supplied name was of an unsupported type",
+	"Incorrect channel bindings were supplied",
+	"An invalid status code was supplied",
+	"A token had an invalid MIC",
+	"No credentials were supplied, "
+	"or the credentials were unavailable or inaccessible.",
+	"No context has been established",
+	"A token was invalid",
+	"A credential was invalid",
+	"The referenced credentials have expired",
+	"The context has expired",
+	"Miscellaneous failure (see text)",
+	"The quality-of-protection requested could not be provide",
+	"The operation is forbidden by local security policy",
+	"The operation or option is not available",
+	"The requested credential element already exists",
+	"The provided name was not a mechanism name.",
+    };
+
+    v >>= GSS_C_ROUTINE_ERROR_OFFSET;
+
+    if (v == 0)
+	return "";
+    else if (v >= sizeof(msgs)/sizeof(*msgs))
+	return "unknown routine error";
+    else
+	return msgs[v];
+}
+
+static const char *
+supplementary_error(OM_uint32 v)
+{
+    static const char *msgs[] = {
+	"normal completion",
+	"continuation call to routine required",
+	"duplicate per-message token detected",
+	"timed-out per-message token detected",
+	"reordered (early) per-message token detected",
+	"skipped predecessor token(s) detected"
+    };
 
-static struct _gss_status_desc _gss_status_descs[] = {
-	GSS_S_BAD_MECH,		"An unsupported mechanism was requested",
-	GSS_S_BAD_NAME,		"An invalid name was supplied",
-	GSS_S_BAD_NAMETYPE,	"A supplied name was of an unsupported type",
-	GSS_S_BAD_BINDINGS,	"Incorrect channel bindings were supplied",
-	GSS_S_BAD_STATUS,	"An invalid status code was supplied",
-	GSS_S_BAD_MIC,		"A token had an invalid MIC",
-	GSS_S_NO_CRED,		"No credentials were supplied, or the "
-				"credentials were unavailable or inaccessible",
-	GSS_S_NO_CONTEXT,	"No context has been established",
-	GSS_S_DEFECTIVE_TOKEN,	"A token was invalid",
-	GSS_S_DEFECTIVE_CREDENTIAL, "A credential was invalid",
-	GSS_S_CREDENTIALS_EXPIRED, "The referenced credentials have expired",
-	GSS_S_CONTEXT_EXPIRED,	"The context has expired",
-	GSS_S_FAILURE,		"Miscellaneous failure",
-	GSS_S_BAD_QOP,		"The quality-of-protection requested could "
-				"not be provided",
-	GSS_S_UNAUTHORIZED,	"The operation is forbidden by local security "
-				"policy",
-	GSS_S_UNAVAILABLE,	"The operation or option is unavailable",
-	GSS_S_DUPLICATE_ELEMENT, "The requested credential element already "
-				"exists",
-	GSS_S_NAME_NOT_MN,	"The provided name was not a mechanism name"
-};
-#define _gss_status_desc_count \
-	sizeof(_gss_status_descs) / sizeof(_gss_status_descs[0])
+    v >>= GSS_C_SUPPLEMENTARY_OFFSET;
 
+    if (v >= sizeof(msgs)/sizeof(*msgs))
+	return "unknown routine error";
+    else
+	return msgs[v];
+}
 
 OM_uint32
 gss_display_status(OM_uint32 *minor_status,
@@ -73,31 +149,29 @@
     gss_buffer_t status_string)
 {
 	OM_uint32 major_status;
-	struct _gss_mech_switch *m;
-	int i;
-	const char *message;
 
 	*minor_status = 0;
 	switch (status_type) {
-	case GSS_C_GSS_CODE:
-		for (i = 0; i < _gss_status_desc_count; i++) {
-			if (_gss_status_descs[i].gs_status == status_value) {
-				message = _gss_status_descs[i].gs_desc;
-				status_string->length = strlen(message);
-				status_string->value = strdup(message);
-				return (GSS_S_COMPLETE);
-			}
-		}
+	case GSS_C_GSS_CODE: {
+		char *buf;
+
+		if (GSS_SUPPLEMENTARY_INFO(status_value))
+		    asprintf(&buf, "%s", supplementary_error(
+		        GSS_SUPPLEMENTARY_INFO(status_value)));
+		else
+		    asprintf (&buf, "%s %s",
+		        calling_error(GSS_CALLING_ERROR(status_value)),
+			routine_error(GSS_ROUTINE_ERROR(status_value)));
+
+		status_string->length = strlen(buf);
+		status_string->value  = buf;
 
-		/*
-		 * Fall through to attempt to get some underlying
-		 * implementation to describe the value.
-		 */
-	case GSS_C_MECH_CODE:
-		SLIST_FOREACH(m, &_gss_mechs, gm_link) {
-			if (mech_type &&
-			    !_gss_oid_equal(&m->gm_mech_oid, mech_type))
-				continue;
+		return GSS_S_COMPLETE;
+	}
+	case GSS_C_MECH_CODE: {
+	       struct _gss_mech_switch *m;
+	       m = _gss_find_mech_switch(mech_type);
+	       if (m) {
 			major_status = m->gm_display_status(minor_status,
 			    status_value, status_type, mech_type,
 			    message_content, status_string);
@@ -105,6 +179,8 @@
 				return (GSS_S_COMPLETE);
 		}
 	}
-
+	}
+	status_string->value = NULL;
+	status_string->length = 0;
 	return (GSS_S_BAD_STATUS);
 }

==== //depot/projects/hammer/lib/libgssapi/gss_export_name.c#2 (text+ko) ====

@@ -23,7 +23,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- *	$FreeBSD: src/lib/libgssapi/gss_export_name.c,v 1.1 2005/12/29 14:40:20 dfr Exp $
+ *	$FreeBSD: src/lib/libgssapi/gss_export_name.c,v 1.2 2007/06/30 07:47:45 dfr Exp $
  */
 
 #include <gssapi/gssapi.h>
@@ -39,6 +39,9 @@
 	struct _gss_name *name = (struct _gss_name *) input_name;
 	struct _gss_mechanism_name *mn;
 
+	exported_name->value = NULL;
+	exported_name->length = 0;
+
 	/*
 	 * If this name already has any attached MNs, export the first
 	 * one, otherwise export based on the first mechanism in our

==== //depot/projects/hammer/lib/libgssapi/gss_indicate_mechs.c#2 (text+ko) ====

@@ -23,7 +23,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- *	$FreeBSD: src/lib/libgssapi/gss_indicate_mechs.c,v 1.1 2005/12/29 14:40:20 dfr Exp $
+ *	$FreeBSD: src/lib/libgssapi/gss_indicate_mechs.c,v 1.2 2007/06/30 07:47:45 dfr Exp $
  */
 
 #include <gssapi/gssapi.h>
@@ -46,13 +46,18 @@
 		return (major_status);
 	
 	SLIST_FOREACH(m, &_gss_mechs, gm_link) {
-		major_status = m->gm_indicate_mechs(minor_status, &set);
-		if (major_status)
-			continue;
-		for (i = 0; i < set->count; i++)
-			major_status = gss_add_oid_set_member(minor_status,
-			    &set->elements[i], mech_set);

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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200706302145.l5ULjZde097025>