Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 24 Jul 2005 17:58:12 GMT
From:      Peter Wemm <peter@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 80916 for review
Message-ID:  <200507241758.j6OHwCq5033417@repoman.freebsd.org>

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

Change 80916 by peter@peter_overcee on 2005/07/24 17:57:51

	IFC @80915

Affected files ...

.. //depot/projects/hammer/Makefile#34 integrate
.. //depot/projects/hammer/Makefile.inc1#99 integrate
.. //depot/projects/hammer/ObsoleteFiles.inc#1 branch
.. //depot/projects/hammer/UPDATING#82 integrate
.. //depot/projects/hammer/etc/Makefile#41 integrate
.. //depot/projects/hammer/etc/defaults/rc.conf#57 integrate
.. //depot/projects/hammer/etc/rc.d/bgfsck#6 integrate
.. //depot/projects/hammer/etc/rc.d/power_profile#7 integrate
.. //depot/projects/hammer/games/fortune/fortune/fortune.c#6 integrate
.. //depot/projects/hammer/gnu/lib/libdialog/Makefile#7 integrate
.. //depot/projects/hammer/gnu/lib/libg2c/Makefile#7 integrate
.. //depot/projects/hammer/gnu/lib/libobjc/Makefile#12 integrate
.. //depot/projects/hammer/gnu/lib/libreadline/Makefile.inc#7 integrate
.. //depot/projects/hammer/gnu/lib/libregex/Makefile#9 integrate
.. //depot/projects/hammer/gnu/lib/libstdc++/Makefile#24 integrate
.. //depot/projects/hammer/include/netdb.h#12 integrate
.. //depot/projects/hammer/kerberos5/lib/Makefile.inc#5 integrate
.. //depot/projects/hammer/lib/Makefile.inc#3 integrate
.. //depot/projects/hammer/lib/libalias/Makefile#12 integrate
.. //depot/projects/hammer/lib/libarchive/Makefile#24 integrate
.. //depot/projects/hammer/lib/libbegemot/Makefile#3 integrate
.. //depot/projects/hammer/lib/libbluetooth/Makefile#2 integrate
.. //depot/projects/hammer/lib/libbsnmp/Makefile.inc#6 integrate
.. //depot/projects/hammer/lib/libbz2/Makefile#4 integrate
.. //depot/projects/hammer/lib/libc/gen/getnetgrent.c#6 integrate
.. //depot/projects/hammer/lib/libc/net/getaddrinfo.c#23 integrate
.. //depot/projects/hammer/lib/libc/nls/pl_PL.ISO8859-2.msg#2 integrate
.. //depot/projects/hammer/lib/libc/stdio/vfprintf.c#18 integrate
.. //depot/projects/hammer/lib/libc_r/Makefile#10 integrate
.. //depot/projects/hammer/lib/libcrypt/Makefile#7 integrate
.. //depot/projects/hammer/lib/libdevstat/Makefile#7 integrate
.. //depot/projects/hammer/lib/libdevstat/devstat.h#3 integrate
.. //depot/projects/hammer/lib/libedit/Makefile#4 integrate
.. //depot/projects/hammer/lib/libexpat/Makefile#4 integrate
.. //depot/projects/hammer/lib/libfetch/Makefile#11 integrate
.. //depot/projects/hammer/lib/libftpio/Makefile#3 integrate
.. //depot/projects/hammer/lib/libgpib/Makefile#2 integrate
.. //depot/projects/hammer/lib/libipsec/Makefile#6 integrate
.. //depot/projects/hammer/lib/libkiconv/Makefile#3 integrate
.. //depot/projects/hammer/lib/libmagic/Makefile#5 integrate
.. //depot/projects/hammer/lib/libmemstat/Makefile#2 integrate
.. //depot/projects/hammer/lib/libmemstat/libmemstat.3#3 integrate
.. //depot/projects/hammer/lib/libmemstat/memstat.c#3 integrate
.. //depot/projects/hammer/lib/libmemstat/memstat.h#3 integrate
.. //depot/projects/hammer/lib/libmemstat/memstat_internal.h#3 integrate
.. //depot/projects/hammer/lib/libmemstat/memstat_malloc.c#3 integrate
.. //depot/projects/hammer/lib/libmemstat/memstat_uma.c#3 integrate
.. //depot/projects/hammer/lib/libmp/Makefile#4 integrate
.. //depot/projects/hammer/lib/libncp/Makefile#4 integrate
.. //depot/projects/hammer/lib/libncurses/Makefile#16 integrate
.. //depot/projects/hammer/lib/libnetgraph/Makefile#4 integrate
.. //depot/projects/hammer/lib/libngatm/Makefile#6 integrate
.. //depot/projects/hammer/lib/libopie/Makefile#7 integrate
.. //depot/projects/hammer/lib/libpam/Makefile.inc#9 integrate
.. //depot/projects/hammer/lib/libpthread/Makefile#17 integrate
.. //depot/projects/hammer/lib/libradius/Makefile#8 integrate
.. //depot/projects/hammer/lib/libsdp/Makefile#4 integrate
.. //depot/projects/hammer/lib/libsmb/Makefile#6 integrate
.. //depot/projects/hammer/lib/libtacplus/Makefile#5 integrate
.. //depot/projects/hammer/lib/libthr/Makefile#12 integrate
.. //depot/projects/hammer/lib/libthread_db/Makefile#5 integrate
.. //depot/projects/hammer/lib/libugidfw/Makefile#6 integrate
.. //depot/projects/hammer/lib/libusbhid/Makefile#5 integrate
.. //depot/projects/hammer/lib/libutil/Makefile#8 integrate
.. //depot/projects/hammer/lib/libvgl/Makefile#3 integrate
.. //depot/projects/hammer/lib/libwrap/Makefile#8 integrate
.. //depot/projects/hammer/lib/libypclnt/Makefile#5 integrate
.. //depot/projects/hammer/lib/msun/Makefile#28 integrate
.. //depot/projects/hammer/secure/lib/libcrypto/Makefile#17 integrate
.. //depot/projects/hammer/secure/lib/libssh/Makefile#11 integrate
.. //depot/projects/hammer/secure/lib/libssl/Makefile#8 integrate
.. //depot/projects/hammer/share/man/man4/kbdmux.4#2 integrate
.. //depot/projects/hammer/share/man/man7/build.7#9 integrate
.. //depot/projects/hammer/share/man/man7/ffs.7#3 integrate
.. //depot/projects/hammer/share/man/man9/vhold.9#3 integrate
.. //depot/projects/hammer/sys/amd64/amd64/mp_machdep.c#104 integrate
.. //depot/projects/hammer/sys/amd64/conf/NOTES#78 integrate
.. //depot/projects/hammer/sys/amd64/include/atomic.h#19 integrate
.. //depot/projects/hammer/sys/amd64/include/bus_dma.h#18 integrate
.. //depot/projects/hammer/sys/boot/ofw/libofw/ofw_copy.c#6 integrate
.. //depot/projects/hammer/sys/conf/files.amd64#77 integrate
.. //depot/projects/hammer/sys/dev/acpica/Osd/OsdDebug.c#7 integrate
.. //depot/projects/hammer/sys/dev/acpica/Osd/OsdHardware.c#13 integrate
.. //depot/projects/hammer/sys/dev/acpica/Osd/OsdInterrupt.c#9 integrate
.. //depot/projects/hammer/sys/dev/acpica/Osd/OsdMemory.c#4 integrate
.. //depot/projects/hammer/sys/dev/acpica/Osd/OsdSchedule.c#13 integrate
.. //depot/projects/hammer/sys/dev/acpica/Osd/OsdStream.c#4 integrate
.. //depot/projects/hammer/sys/dev/acpica/Osd/OsdSynch.c#8 integrate
.. //depot/projects/hammer/sys/dev/acpica/Osd/OsdTable.c#8 integrate
.. //depot/projects/hammer/sys/dev/acpica/acpi_acad.c#18 integrate
.. //depot/projects/hammer/sys/dev/acpica/acpi_battery.c#9 integrate
.. //depot/projects/hammer/sys/dev/acpica/acpi_cmbat.c#22 integrate
.. //depot/projects/hammer/sys/dev/acpica/acpi_if.m#7 integrate
.. //depot/projects/hammer/sys/dev/acpica/acpi_package.c#6 integrate
.. //depot/projects/hammer/sys/dev/acpica/acpi_quirk.c#2 integrate
.. //depot/projects/hammer/sys/dev/acpica/acpiio.h#9 integrate
.. //depot/projects/hammer/sys/dev/acpica/acpivar.h#46 integrate
.. //depot/projects/hammer/sys/dev/ath/ath_rate/amrr/amrr.c#7 integrate
.. //depot/projects/hammer/sys/dev/ath/ath_rate/onoe/onoe.c#8 integrate
.. //depot/projects/hammer/sys/dev/ath/ath_rate/sample/sample.c#4 integrate
.. //depot/projects/hammer/sys/dev/ath/if_ath.c#34 integrate
.. //depot/projects/hammer/sys/dev/ath/if_athvar.h#18 integrate
.. //depot/projects/hammer/sys/dev/awi/awi.c#16 integrate
.. //depot/projects/hammer/sys/dev/ipw/if_ipw.c#7 integrate
.. //depot/projects/hammer/sys/dev/iwi/if_iwi.c#7 integrate
.. //depot/projects/hammer/sys/dev/ral/if_ral.c#6 integrate
.. //depot/projects/hammer/sys/dev/usb/if_ural.c#6 integrate
.. //depot/projects/hammer/sys/dev/vx/if_vx.c#19 integrate
.. //depot/projects/hammer/sys/dev/wi/if_wi.c#38 integrate
.. //depot/projects/hammer/sys/i386/acpica/acpi_machdep.c#22 integrate
.. //depot/projects/hammer/sys/i386/bios/smapi_bios.S#4 integrate
.. //depot/projects/hammer/sys/libkern/iconv.c#8 integrate
.. //depot/projects/hammer/sys/net/bpf.c#35 integrate
.. //depot/projects/hammer/sys/net/bpfdesc.h#11 integrate
.. //depot/projects/hammer/sys/net/if_var.h#32 integrate
.. //depot/projects/hammer/sys/net80211/ieee80211.c#16 integrate
.. //depot/projects/hammer/sys/net80211/ieee80211.h#9 integrate
.. //depot/projects/hammer/sys/net80211/ieee80211_crypto.c#9 integrate
.. //depot/projects/hammer/sys/net80211/ieee80211_input.c#21 integrate
.. //depot/projects/hammer/sys/net80211/ieee80211_ioctl.c#21 integrate
.. //depot/projects/hammer/sys/net80211/ieee80211_ioctl.h#10 integrate
.. //depot/projects/hammer/sys/net80211/ieee80211_node.c#23 integrate
.. //depot/projects/hammer/sys/net80211/ieee80211_node.h#16 integrate
.. //depot/projects/hammer/sys/net80211/ieee80211_output.c#17 integrate
.. //depot/projects/hammer/sys/net80211/ieee80211_proto.c#17 integrate
.. //depot/projects/hammer/sys/net80211/ieee80211_proto.h#9 integrate
.. //depot/projects/hammer/sys/net80211/ieee80211_var.h#17 integrate
.. //depot/projects/hammer/sys/netgraph/ng_base.c#33 integrate
.. //depot/projects/hammer/sys/netgraph/ng_socket.c#18 integrate
.. //depot/projects/hammer/sys/netinet/ip_fastfwd.c#21 integrate
.. //depot/projects/hammer/sys/nfsclient/nfs_bio.c#36 integrate
.. //depot/projects/hammer/sys/nfsclient/nfs_node.c#20 integrate
.. //depot/projects/hammer/sys/nfsclient/nfsnode.h#15 integrate
.. //depot/projects/hammer/sys/sys/param.h#64 integrate
.. //depot/projects/hammer/tools/regression/netinet/msocket/Makefile#1 branch
.. //depot/projects/hammer/tools/regression/netinet/msocket/msocket.c#1 branch
.. //depot/projects/hammer/tools/regression/netinet/udpconnectjail/udpconnectjail.c#2 integrate
.. //depot/projects/hammer/tools/tools/ath/80211debug.c#2 integrate
.. //depot/projects/hammer/tools/tools/ath/80211stats.c#6 integrate
.. //depot/projects/hammer/usr.bin/netstat/mbuf.c#10 integrate
.. //depot/projects/hammer/usr.sbin/acpi/acpiconf/acpiconf.c#11 integrate
.. //depot/projects/hammer/usr.sbin/bsnmpd/modules/Makefile.inc#3 integrate
.. //depot/projects/hammer/usr.sbin/kbdcontrol/kbdcontrol.1#6 integrate
.. //depot/projects/hammer/usr.sbin/ndiscvt/ndisgen.8#3 integrate
.. //depot/projects/hammer/usr.sbin/ndiscvt/ndisgen.sh#2 integrate
.. //depot/projects/hammer/usr.sbin/pmcstat/pmcstat.c#6 integrate

Differences ...

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

@@ -1,5 +1,5 @@
 #
-# $FreeBSD: src/Makefile,v 1.321 2005/07/19 11:21:14 ru Exp $
+# $FreeBSD: src/Makefile,v 1.322 2005/07/23 14:23:30 netchild Exp $
 #
 # The user-driven targets are:
 #
@@ -16,6 +16,9 @@
 # reinstallkernel.debug
 # kernel              - buildkernel + installkernel.
 # update              - Convenient way to update your source tree (cvs).
+# check-old           - Print a list of old files/directories in the system.
+# delete-old          - Delete obsolete files and directories interactively.
+# delete-old-libs     - Delete obsolete libraries interactively.
 #
 # This makefile is simple by design. The FreeBSD make automatically reads
 # the /usr/share/mk/sys.mk unless the -m argument is specified on the
@@ -38,15 +41,17 @@
 # For individuals wanting to upgrade their sources (even if only a
 # delta of a few days):
 #
-# 1.  `cd /usr/src'       (or to the directory containing your source tree).
-# 2.  `make buildworld'
-# 3.  `make buildkernel KERNCONF=YOUR_KERNEL_HERE'     (default is GENERIC).
-# 4.  `make installkernel KERNCONF=YOUR_KERNEL_HERE'   (default is GENERIC).
-# 5.  `reboot'        (in single user mode: boot -s from the loader prompt).
-# 6.  `mergemaster -p'
-# 7.  `make installworld'
-# 8.  `mergemaster'
-# 9.  `reboot'
+#  1.  `cd /usr/src'       (or to the directory containing your source tree).
+#  2.  `make buildworld'
+#  3.  `make buildkernel KERNCONF=YOUR_KERNEL_HERE'     (default is GENERIC).
+#  4.  `make installkernel KERNCONF=YOUR_KERNEL_HERE'   (default is GENERIC).
+#  5.  `reboot'        (in single user mode: boot -s from the loader prompt).
+#  6.  `mergemaster -p'
+#  7.  `make installworld'
+#  8.  `make delete-old'
+#  9.  `mergemaster'
+# 10.  `reboot'
+# 11.  `make delete-old-libs' (in case no 3rd party program uses them anymore)
 #
 # See src/UPDATING `COMMON ITEMS' for more complete information.
 #
@@ -62,9 +67,9 @@
 # developer convenience only.  They are intentionally not documented and
 # completely subject to change without notice.
 #
-TGTS=	all all-man buildenv buildkernel buildworld checkdpadd clean \
-	cleandepend cleandir depend distribute distributeworld \
-	distrib-dirs distribution everything \
+TGTS=	all all-man buildenv buildkernel buildworld check-old checkdpadd \
+	clean cleandepend cleandir delete-old delete-old-libs depend \
+	distribute distributeworld distrib-dirs distribution everything \
 	hierarchy install installcheck installkernel installkernel.debug\
 	reinstallkernel reinstallkernel.debug installworld \
 	kernel-toolchain libraries lint maninstall \

==== //depot/projects/hammer/Makefile.inc1#99 (text+ko) ====

@@ -1,5 +1,5 @@
 #
-# $FreeBSD: src/Makefile.inc1,v 1.500 2005/07/15 14:38:54 ru Exp $
+# $FreeBSD: src/Makefile.inc1,v 1.501 2005/07/23 14:23:30 netchild Exp $
 #
 # Make command line options:
 #	-DNO_DYNAMICROOT do not link /bin and /sbin dynamically
@@ -1070,3 +1070,95 @@
 .endfor
 
 .include <bsd.subdir.mk>
+
+#
+# check for / delete old files section
+#
+
+.include "ObsoleteFiles.inc"
+
+OLD_LIBS_MESSAGE="Please be sure no application still uses those libraries, \
+else you can not start such an application. Consult UPDATING for more \
+information regarding how to cope with the removal/revision bump of a \
+specific library."
+
+.if !defined(BATCH_DELETE_OLD_FILES)
+RM_I=-i
+.endif
+
+delete-old-files:
+.if defined(${TARGET_ARCH})
+.error "You have to run this in a native environment!"
+.endif
+	@echo ">>> Removing old files (only deletes safe to delete libs)"
+.for file in ${OLD_FILES}
+# Ask for every old file if the user really wants to remove it.
+# It's anoying, but beter safe than sorry.
+	@[ ! -f "${DESTDIR}/${file}" ] || (rm ${RM_I} "${DESTDIR}/${file}" \
+                ||  ([ -f "${DESTDIR}/${file}" ] \
+                        && echo "Removing schg flag on ${DESTDIR}/${file}" \
+                        && chflags noschg "${DESTDIR}/${file}" \
+                        && rm ${RM_I} "${DESTDIR}/${file}"))
+.endfor
+	@echo ">>> Old files removed"
+
+check-old-files:
+.if defined(${TARGET_ARCH})
+.error "You have to run this in a native environment!"
+.endif
+	@echo ">>> Checking for old files"
+.for file in ${OLD_FILES}
+	@[ ! -f "${DESTDIR}/${file}" ] || echo "${DESTDIR}/${file}"
+.endfor
+
+delete-old-libs:
+.if defined(${TARGET_ARCH})
+.error "You have to run this in a native environment!"
+.endif
+	@echo ">>> Removing old libraries"
+	@echo "${OLD_LIBS_MESSAGE}" | fmt
+.for file in ${OLD_LIBS}
+	@[ ! -f "${DESTDIR}/${file}" ] || (rm ${RM_I} "${DESTDIR}/${file}" \
+		||  ([ -f "${DESTDIR}/${file}" ] \
+			&& echo "Removing schg flag on ${DESTDIR}/${file}" \
+			&& chflags noschg "${DESTDIR}/${file}" \
+			&& rm ${RM_I} "${DESTDIR}/${file}"))
+.endfor
+	@echo ">>> Old libraries removed"
+
+check-old-libs:
+.if defined(${TARGET_ARCH})
+.error "You have to run this in a native environment!"
+.endif
+	@echo ">>> Checking for old libraries"
+.for file in ${OLD_LIBS}
+	@[ ! -f "${DESTDIR}/${file}" ] || echo "${DESTDIR}/${file}"
+.endfor
+
+delete-old-dirs:
+.if defined(${TARGET_ARCH})
+.error "You have to run this in a native environment!"
+.endif
+	@echo ">>> Removing old directories"
+.for dir in ${OLD_DIRS}
+# Don't fail if an old directory isn't empty.
+	@[ ! -d "${DESTDIR}/${dir}" ] || (rmdir -v "${DESTDIR}/${dir}" || true)
+.endfor
+	@echo ">>> Old directories removed"
+
+check-old-dirs:
+.if defined(${TARGET_ARCH})
+.error "You have to run this in a native environment!"
+.endif
+	@echo ">>> Checking for old directories"
+.for dir in ${OLD_DIRS}
+	@[ ! -d "${DESTDIR}/${dir}" ] || echo "${DESTDIR}/${dir}"
+.endfor
+
+delete-old: delete-old-files delete-old-dirs
+	@echo "To remove old libraries run '${MAKE} delete-old-libs'."
+
+check-old: check-old-files check-old-libs check-old-dirs
+	@echo "To remove old files and directories run '${MAKE} delete-old'."
+	@echo "To remove old libraries run '${MAKE} delete-old-libs'."
+

==== //depot/projects/hammer/UPDATING#82 (text+ko) ====

@@ -21,6 +21,13 @@
 	developers choose to disable these features on build machines
 	to maximize performance.
 
+20050722:
+	The ai_addrlen of a struct addrinfo was changed to a socklen_t
+	to conform to POSIX-2001.  This change broke an ABI
+	compatibility on 64 bit architecture.  You have to recompile
+	userland programs that use getaddrinfo(3) on 64 bit
+	architecture.
+
 20050711:
 	RELENG_6 branched here.
 
@@ -270,6 +277,7 @@
 	<reboot in single user>				[3]
 	mergemaster -p					[5]
 	make installworld
+	make delete-old
 	mergemaster					[4]
 	<reboot>
 
@@ -307,6 +315,7 @@
 	<reboot in single user>				[3]
 	mergemaster -p					[5]
 	make installworld
+	make delete-old
 	mergemaster -i					[4]
 	<reboot>
 
@@ -400,4 +409,4 @@
 Contact Warner Losh if you have any questions about your use of
 this document.
 
-$FreeBSD: src/UPDATING,v 1.417 2005/07/11 15:46:45 kensmith Exp $
+$FreeBSD: src/UPDATING,v 1.419 2005/07/23 14:23:30 netchild Exp $

==== //depot/projects/hammer/etc/Makefile#41 (text+ko) ====

@@ -1,5 +1,5 @@
 #	from: @(#)Makefile	5.11 (Berkeley) 5/21/91
-# $FreeBSD: src/etc/Makefile,v 1.344 2005/07/15 14:52:29 ru Exp $
+# $FreeBSD: src/etc/Makefile,v 1.345 2005/07/22 10:35:35 ru Exp $
 
 .if !defined(NO_SENDMAIL)
 SUBDIR=	sendmail
@@ -86,6 +86,10 @@
 .endif
 
 distribution:
+.if !defined(DESTDIR)
+	@echo "set DESTDIR before running \"make ${.TARGET}\""
+	@false
+.endif
 	cd ${.CURDIR}; \
 	    ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 644 \
 		${BIN1} ${DESTDIR}/etc; \

==== //depot/projects/hammer/etc/defaults/rc.conf#57 (text+ko) ====

@@ -15,7 +15,7 @@
 # For a more detailed explanation of all the rc.conf variables, please
 # refer to the rc.conf(5) manual page.
 #
-# $FreeBSD: src/etc/defaults/rc.conf,v 1.253 2005/07/21 15:17:54 pav Exp $
+# $FreeBSD: src/etc/defaults/rc.conf,v 1.254 2005/07/22 00:38:55 obrien Exp $
 
 ##############################################################
 ###  Important initial Boot-time options  ####################
@@ -482,10 +482,10 @@
 devfs_system_ruleset=""	# The name of a ruleset to apply to /dev
 devfs_set_rulesets=""	# A list of /mount/dev=ruleset_name settings to
 			# apply (must be mounted already, i.e. fstab(5))
-performance_cx_lowest="HIGH"		# Online CPU idle state
-performance_cpu_freq="NONE"		# Online CPU frequency
-economy_cx_lowest="HIGH"		# Offline CPU idle state
-economy_cpu_freq="NONE"			# Offline CPU frequency
+performance_cx_lowest="HIGH"	# Online CPU idle state
+performance_cpu_freq="NONE"	# Online CPU frequency
+economy_cx_lowest="HIGH"	# Offline CPU idle state
+economy_cpu_freq="NONE"		# Offline CPU frequency
 virecover_enable="YES"	# Perform housekeeping for the vi(1) editor
 ugidfw_enable="NO"	# Load mac_bsdextended(4) rules on boot
 bsdextended_script="/etc/rc.bsdextended"	# Default mac_bsdextended(4)

==== //depot/projects/hammer/etc/rc.d/bgfsck#6 (text+ko) ====

@@ -1,10 +1,10 @@
 #!/bin/sh
 #
-# $FreeBSD: src/etc/rc.d/bgfsck,v 1.6 2004/10/07 13:55:25 mtm Exp $
+# $FreeBSD: src/etc/rc.d/bgfsck,v 1.7 2005/07/22 00:57:37 obrien Exp $
 #
 
 # PROVIDE: bgfsck
-# REQUIRE: cron devfs
+# REQUIRE: cron devfs syslogd
 # KEYWORD: nojail
 
 . /etc/rc.subr

==== //depot/projects/hammer/etc/rc.d/power_profile#7 (text+ko) ====

@@ -5,11 +5,13 @@
 #
 # Arguments: 0x00 (AC offline, economy) or 0x01 (AC online, performance)
 #
-# $FreeBSD: src/etc/rc.d/power_profile,v 1.7 2005/02/26 20:17:07 njl Exp $
+# $FreeBSD: src/etc/rc.d/power_profile,v 1.8 2005/07/22 00:57:04 obrien Exp $
 #
 
 # PROVIDE: power_profile
+# REQUIRE: mountcritlocal syslogd
 # KEYWORD: nojail nostart
+# BEFORE: NETWORKING
 
 . /etc/rc.subr
 

==== //depot/projects/hammer/games/fortune/fortune/fortune.c#6 (text+ko) ====

@@ -46,7 +46,7 @@
 #endif /* not lint */
 #endif
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/games/fortune/fortune/fortune.c,v 1.27 2005/02/17 18:06:37 ru Exp $");
+__FBSDID("$FreeBSD: src/games/fortune/fortune/fortune.c,v 1.29 2005/07/23 18:24:47 ache Exp $");
 
 # include	<sys/stat.h>
 # include	<sys/endian.h>

==== //depot/projects/hammer/gnu/lib/libdialog/Makefile#7 (text+ko) ====

@@ -1,11 +1,11 @@
 # Makefile for libdialog
-# $FreeBSD: src/gnu/lib/libdialog/Makefile,v 1.42 2005/04/22 18:57:32 trhodes Exp $
+# $FreeBSD: src/gnu/lib/libdialog/Makefile,v 1.43 2005/07/22 17:18:57 kensmith Exp $
 
 LIB=    dialog
 INCS=	dialog.h
 MAN=	dialog.3
 
-SHLIB_MAJOR= 4
+SHLIB_MAJOR= 5
 SRCS=   kernel.c rc.c checklist.c inputbox.c menubox.c msgbox.c \
 	lineedit.c radiolist.c textbox.c yesno.c prgbox.c raw_popen.c \
 	fselect.c ui_objects.c dir.c notify.c help.c gauge.c tree.c

==== //depot/projects/hammer/gnu/lib/libg2c/Makefile#7 (text+ko) ====

@@ -1,11 +1,11 @@
-# $FreeBSD: src/gnu/lib/libg2c/Makefile,v 1.15 2004/12/21 09:33:45 ru Exp $
+# $FreeBSD: src/gnu/lib/libg2c/Makefile,v 1.16 2005/07/22 17:18:57 kensmith Exp $
 
 SRCDIR=	${.CURDIR}/../../../contrib/libf2c
 
 .PATH: ${SRCDIR} ${SRCDIR}/libU77 ${SRCDIR}/libF77 ${SRCDIR}/libI77
 
 LIB=		g2c
-SHLIB_MAJOR=	1
+SHLIB_MAJOR=	2
 
 # Traditional FORTRAN Library members defined in libF77
 

==== //depot/projects/hammer/gnu/lib/libobjc/Makefile#12 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/gnu/lib/libobjc/Makefile,v 1.26 2005/05/01 01:59:48 peter Exp $
+# $FreeBSD: src/gnu/lib/libobjc/Makefile,v 1.27 2005/07/22 17:18:58 kensmith Exp $
 
 OBJCDIR=${.CURDIR}/../../../contrib/libobjc
 GCCDIR=	${.CURDIR}/../../../contrib/gcc
@@ -6,7 +6,7 @@
 .PATH: ${OBJCDIR}/objc ${OBJCDIR}
 
 LIB=		objc
-SHLIB_MAJOR=	1
+SHLIB_MAJOR=	2
 NO_MAN=
 
 SRCS=   archive.c class.c encoding.c gc.c hash.c init.c misc.c \

==== //depot/projects/hammer/gnu/lib/libreadline/Makefile.inc#7 (text+ko) ====

@@ -1,6 +1,6 @@
-# $FreeBSD: src/gnu/lib/libreadline/Makefile.inc,v 1.11 2004/10/18 08:29:47 ache Exp $
+# $FreeBSD: src/gnu/lib/libreadline/Makefile.inc,v 1.12 2005/07/22 17:18:58 kensmith Exp $
 
-SHLIB_MAJOR=5
+SHLIB_MAJOR=6
 RL_LIBRARY_VERSION=5.0
 
 SRCDIR= ${.CURDIR}/../../../../contrib/libreadline

==== //depot/projects/hammer/gnu/lib/libregex/Makefile#9 (text+ko) ====

@@ -1,9 +1,9 @@
-# $FreeBSD: src/gnu/lib/libregex/Makefile,v 1.31 2005/05/10 11:37:37 tjr Exp $
+# $FreeBSD: src/gnu/lib/libregex/Makefile,v 1.32 2005/07/22 17:18:58 kensmith Exp $
 
 SUBDIR=		doc
 
 LIB=		gnuregex
-SHLIB_MAJOR=	2
+SHLIB_MAJOR=	3
 
 SRCS=		gnuregex.c
 INCSGROUPS=	INCS WRINCS PXINCS

==== //depot/projects/hammer/gnu/lib/libstdc++/Makefile#24 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/gnu/lib/libstdc++/Makefile,v 1.55 2005/04/22 18:57:32 trhodes Exp $
+# $FreeBSD: src/gnu/lib/libstdc++/Makefile,v 1.56 2005/07/22 17:18:58 kensmith Exp $
 
 GCCDIR=	${.CURDIR}/../../../contrib/gcc
 SRCDIR=	${.CURDIR}/../../../contrib/libstdc++
@@ -9,7 +9,7 @@
        ${SUPDIR} ${GCCDIR}
 
 LIB=		stdc++
-SHLIB_MAJOR=	4
+SHLIB_MAJOR=	5
 
 CFLAGS+=	-DIN_GLIBCPP_V3 -DHAVE_CONFIG_H
 CFLAGS+=	-I${.CURDIR} -I${SUPDIR} -I${GCCDIR} -I${SRCDIR}/include

==== //depot/projects/hammer/include/netdb.h#12 (text+ko) ====

@@ -55,7 +55,7 @@
 /*
  *      @(#)netdb.h	8.1 (Berkeley) 6/2/93
  *      From: Id: netdb.h,v 8.9 1996/11/19 08:39:29 vixie Exp $
- * $FreeBSD: src/include/netdb.h,v 1.38 2005/06/03 03:32:06 ume Exp $
+ * $FreeBSD: src/include/netdb.h,v 1.39 2005/07/22 18:21:28 ume Exp $
  */
 
 #ifndef _NETDB_H_
@@ -63,8 +63,6 @@
 
 #include <sys/cdefs.h>
 #include <sys/_types.h>
-#include <machine/_limits.h>
-#include <machine/endian.h>
 
 #ifndef _SIZE_T_DECLARED
 typedef	__size_t	size_t;
@@ -125,29 +123,12 @@
 	int	p_proto;	/* protocol # */
 };
 
-/*
- * Note: ai_addrlen used to be a size_t, per RFC 2553.
- * In XNS5.2, and subsequently in POSIX-2001 and RFC 3493 it was
- * changed to a socklen_t.
- * To accomodate for this while preserving binary compatibility with the
- * old interface, we prepend or append 32 bits of padding, depending on
- * the (LP64) architecture's endianness.
- *
- * This should be deleted the next time the libc major number is
- * incremented.
- */
 struct addrinfo {
 	int	ai_flags;	/* AI_PASSIVE, AI_CANONNAME, AI_NUMERICHOST */
 	int	ai_family;	/* PF_xxx */
 	int	ai_socktype;	/* SOCK_xxx */
 	int	ai_protocol;	/* 0 or IPPROTO_xxx for IPv4 and IPv6 */
-#if __LONG_BIT == 64 && _BYTE_ORDER == _BIG_ENDIAN
-	uint32_t __ai_pad0;	/* ABI compatibility */
-#endif
 	socklen_t ai_addrlen;	/* length of ai_addr */
-#if __LONG_BIT == 64 && _BYTE_ORDER == _LITTLE_ENDIAN
-	uint32_t __ai_pad0;	/* ABI compatibility */
-#endif
 	char	*ai_canonname;	/* canonical name for hostname */
 	struct	sockaddr *ai_addr;	/* binary address */
 	struct	addrinfo *ai_next;	/* next structure in linked list */

==== //depot/projects/hammer/kerberos5/lib/Makefile.inc#5 (text+ko) ====

@@ -1,5 +1,5 @@
-# $FreeBSD: src/kerberos5/lib/Makefile.inc,v 1.6 2003/10/09 19:48:45 nectar Exp $
+# $FreeBSD: src/kerberos5/lib/Makefile.inc,v 1.7 2005/07/22 17:18:58 kensmith Exp $
 
-SHLIB_MAJOR?=	7
+SHLIB_MAJOR?=	8
 
 .include "../Makefile.inc"

==== //depot/projects/hammer/lib/Makefile.inc#3 (text+ko) ====

@@ -1,3 +1,3 @@
-# $FreeBSD: src/lib/Makefile.inc,v 1.2 2002/09/28 00:25:28 peter Exp $
+# $FreeBSD: src/lib/Makefile.inc,v 1.3 2005/07/22 17:18:58 kensmith Exp $
 # Default version for system libs (override in <lib>/Makefile if necessary)
-SHLIB_MAJOR?= 2
+SHLIB_MAJOR?= 3

==== //depot/projects/hammer/lib/libalias/Makefile#12 (text+ko) ====

@@ -1,10 +1,10 @@
-# $FreeBSD: src/lib/libalias/Makefile,v 1.30 2005/05/04 12:49:44 glebius Exp $
+# $FreeBSD: src/lib/libalias/Makefile,v 1.31 2005/07/22 17:18:59 kensmith Exp $
 
 .PATH:	${.CURDIR}/../../sys/netinet/libalias
 
 LIB=	alias
 SHLIBDIR?= /lib
-SHLIB_MAJOR=	4
+SHLIB_MAJOR=	5
 MAN=	libalias.3
 SRCS=	alias.c alias_cuseeme.c alias_db.c alias_ftp.c alias_irc.c \
 	alias_nbt.c alias_pptp.c alias_proxy.c alias_skinny.c alias_smedia.c \

==== //depot/projects/hammer/lib/libarchive/Makefile#24 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/lib/libarchive/Makefile,v 1.36 2005/06/04 22:30:36 kientzle Exp $
+# $FreeBSD: src/lib/libarchive/Makefile,v 1.37 2005/07/22 17:18:59 kensmith Exp $
 
 #
 # Use "make distfile" to build a conventional tar.gz archive
@@ -9,7 +9,7 @@
 LIB=	archive
 VERSION=	1.02.026
 ARCHIVE_API_FEATURE=	2
-ARCHIVE_API_VERSION=	1
+ARCHIVE_API_VERSION=	2
 SHLIB_MAJOR=	${ARCHIVE_API_VERSION}
 CFLAGS+=	-DPACKAGE_NAME=\"lib${LIB}\"
 CFLAGS+=	-DPACKAGE_VERSION=\"${VERSION}\"

==== //depot/projects/hammer/lib/libbegemot/Makefile#3 (text+ko) ====

@@ -1,11 +1,11 @@
-# $FreeBSD: src/lib/libbegemot/Makefile,v 1.2 2004/11/04 08:25:03 ru Exp $
+# $FreeBSD: src/lib/libbegemot/Makefile,v 1.3 2005/07/22 17:18:59 kensmith Exp $
 
 LIBBEGEMOT_DIR=${.CURDIR}/../../contrib/libbegemot
 
 .PATH: ${LIBBEGEMOT_DIR}
 
 LIB=	begemot
-SHLIB_MAJOR= 1
+SHLIB_MAJOR= 2
 SHLIBDIR?= /lib
 
 # WARNS?=	6

==== //depot/projects/hammer/lib/libbluetooth/Makefile#2 (text+ko) ====

@@ -1,5 +1,5 @@
 # $Id: Makefile,v 1.5 2003/07/22 18:38:04 max Exp $
-# $FreeBSD: src/lib/libbluetooth/Makefile,v 1.1 2003/10/12 22:04:18 emax Exp $
+# $FreeBSD: src/lib/libbluetooth/Makefile,v 1.2 2005/07/22 17:18:59 kensmith Exp $
 
 LIB=		bluetooth
 MAN=		bluetooth.3
@@ -7,7 +7,7 @@
 WARNS?=		2
 CFLAGS+=	-I${.CURDIR} -I${.CURDIR}/../../sys
 
-SHLIB_MAJOR=	1
+SHLIB_MAJOR=	2
 
 SRCS=		bluetooth.c
 INCS=		bluetooth.h

==== //depot/projects/hammer/lib/libbsnmp/Makefile.inc#6 (text+ko) ====

@@ -1,6 +1,6 @@
-# $FreeBSD: src/lib/libbsnmp/Makefile.inc,v 1.5 2004/10/24 15:32:30 ru Exp $
+# $FreeBSD: src/lib/libbsnmp/Makefile.inc,v 1.6 2005/07/22 17:18:59 kensmith Exp $
 
-SHLIB_MAJOR=	2
+SHLIB_MAJOR=	3
 WARNS?=		6
 NO_WERROR=
 INCSDIR=	${INCLUDEDIR}/bsnmp

==== //depot/projects/hammer/lib/libbz2/Makefile#4 (text+ko) ====

@@ -1,10 +1,10 @@
-# $FreeBSD: src/lib/libbz2/Makefile,v 1.5 2003/06/14 19:32:51 obrien Exp $
+# $FreeBSD: src/lib/libbz2/Makefile,v 1.6 2005/07/22 17:18:59 kensmith Exp $
 
 BZ2DIR=	${.CURDIR}/../../contrib/bzip2
 .PATH: ${BZ2DIR}
 
 LIB=		bz2
-SHLIB_MAJOR=	1
+SHLIB_MAJOR=	2
 SRCS=		bzlib.c blocksort.c compress.c crctable.c decompress.c \
 		huffman.c randtable.c
 INCS=		bzlib.h

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

@@ -38,7 +38,7 @@
 static char sccsid[] = "@(#)getnetgrent.c	8.2 (Berkeley) 4/27/95";
 #endif /* LIBC_SCCS and not lint */
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/gen/getnetgrent.c,v 1.33 2005/01/13 18:33:01 jon Exp $");
+__FBSDID("$FreeBSD: src/lib/libc/gen/getnetgrent.c,v 1.34 2005/07/22 22:20:26 jon Exp $");
 
 #include <ctype.h>
 #include <stdio.h>
@@ -305,22 +305,44 @@
 }
 
 static int
-_buildkey(char *key, const char *str, const char *dom, int *rotation)
+_revnetgr_lookup(char* lookupdom, char* map, const char* str,
+		 const char* dom, const char* group)
 {
-	(*rotation)++;
-	if (*rotation > 4)
-		return(0);
-	switch(*rotation) {
-		case(1): sprintf((char *)key, "%s.%s", str, dom ? dom : "*");
-			 break;
-		case(2): sprintf((char *)key, "%s.*", str);
-			 break;
-		case(3): sprintf((char *)key, "*.%s", dom ? dom : "*");
-			 break;
-		case(4): sprintf((char *)key, "*.*");
-			 break;
+	int y, rv, rot;
+	char key[MAXHOSTNAMELEN];
+	char *result;
+	int resultlen;
+
+	for (rot = 0; ; rot++) {
+		switch (rot) {
+			case(0): snprintf(key, MAXHOSTNAMELEN, "%s.%s",
+					  str, dom?dom:lookupdom);
+				 break;
+			case(1): snprintf(key, MAXHOSTNAMELEN, "%s.*",
+					  str);
+				 break;
+			case(2): snprintf(key, MAXHOSTNAMELEN, "*.%s",
+					  dom?dom:lookupdom);
+				 break;
+			case(3): snprintf(key, MAXHOSTNAMELEN, "*.*");
+				 break;
+			default: return(0);
+		}
+		y = yp_match(lookupdom, map, key, strlen(key), &result,
+			     &resultlen);
+		if (y == 0) {
+			rv = _listmatch(result, group, resultlen);
+			free(result);
+			if (rv) return(1);
+		} else if (y != YPERR_KEY) {
+			/*
+			 * If we get an error other than 'no
+			 * such key in map' then something is
+			 * wrong and we should stop the search.
+			 */
+			return(-1);
+		}
 	}
-	return(1);
 }
 #endif
 
@@ -331,11 +353,6 @@
 innetgr(const char *group, const char *host, const char *user, const char *dom)
 {
 	char *hst, *usr, *dm;
-#ifdef YP
-	char *result;
-	int resultlen;
-	int rv;
-#endif
 	/* Sanity check */
 	
 	if (group == NULL || !strlen(group))
@@ -350,44 +367,36 @@
 	/*
 	 * If we're in NIS-only mode, do the search using
 	 * NIS 'reverse netgroup' lookups.
+	 * 
+	 * What happens with 'reverse netgroup' lookups:
+	 * 
+	 * 1) try 'reverse netgroup' lookup
+	 *    1.a) if host is specified and user is null:
+	 *         look in netgroup.byhost
+	 *         (try host.domain, host.*, *.domain or *.*)
+	 *         if found, return yes
+	 *    1.b) if user is specified and host is null:
+	 *         look in netgroup.byuser
+	 *         (try host.domain, host.*, *.domain or *.*)
+	 *         if found, return yes
+	 *    1.c) if both host and user are specified,
+	 *         don't do 'reverse netgroup' lookup.  It won't work.
+	 *    1.d) if neither host ane user are specified (why?!?)
+	 *         don't do 'reverse netgroup' lookup either.
+	 * 2) if domain is specified and 'reverse lookup' is done:
+	 *    'reverse lookup' was authoritative.  bye bye.
+	 * 3) otherwise, too bad, try it the slow way.
 	 */
-	if (_use_only_yp) {
-		char _key[MAXHOSTNAMELEN];
-		int rot = 0, y = 0;
-
+	if (_use_only_yp && (host == NULL) != (user == NULL)) {
+		int ret;
 		if(yp_get_default_domain(&_netgr_yp_domain))
 			return(0);
-		while(_buildkey(_key, user ? user : host, dom, &rot)) {
-			y = yp_match(_netgr_yp_domain, user? "netgroup.byuser":
-			    "netgroup.byhost", _key, strlen(_key), &result,
-			    	&resultlen);
-			if (y) {
-				/*
-				 * If we get an error other than 'no
-				 * such key in map' then something is
-				 * wrong and we should stop the search.
-				 */
-				if (y != YPERR_KEY)
-					break;
-			} else {
-				rv = _listmatch(result, group, resultlen);
-				free(result);
-				if (rv)
-					return(1);
-				else
-					return(0);
-			}
-		}
-		/*
-		 * Couldn't match using NIS-exclusive mode. If the error
-	 	 * was YPERR_MAP, then the failure happened because there
-	 	 * was no netgroup.byhost or netgroup.byuser map. The odds
-		 * are we are talking to a Sun NIS+ server in YP emulation
-		 * mode; if this is the case, then we have to do the check
-		 * the 'old-fashioned' way by grovelling through the netgroup
-		 * map and resolving memberships on the fly.
-		 */
-		if (y != YPERR_MAP)
+		ret = _revnetgr_lookup(_netgr_yp_domain, 
+				      host?"netgroup.byhost":"netgroup.byuser",
+				      host?host:user, dom, group);
+		if (ret == 1)
+			return(1);
+		else if (ret == 0 && dom != NULL)
 			return(0);
 	}
 

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

@@ -63,7 +63,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/net/getaddrinfo.c,v 1.69 2005/05/15 20:15:15 ume Exp $");
+__FBSDID("$FreeBSD: src/lib/libc/net/getaddrinfo.c,v 1.70 2005/07/22 18:21:28 ume Exp $");
 
 #include "namespace.h"
 #include <sys/types.h>
@@ -1352,9 +1352,6 @@
 	memset(ai->ai_addr, 0, (size_t)afd->a_socklen);
 	ai->ai_addr->sa_len = afd->a_socklen;
 	ai->ai_addrlen = afd->a_socklen;
-#if __LONG_BIT == 64
-	ai->__ai_pad0 = 0;		/* ABI compatibility */
-#endif
 	ai->ai_addr->sa_family = ai->ai_family = afd->a_af;
 	p = (char *)(void *)(ai->ai_addr);
 #ifdef FAITH

==== //depot/projects/hammer/lib/libc/nls/pl_PL.ISO8859-2.msg#2 (text+ko) ====

@@ -1,4 +1,4 @@
-$ $FreeBSD: src/lib/libc/nls/pl_PL.ISO8859-2.msg,v 1.1 2005/03/01 14:38:30 pjd Exp $
+$ $FreeBSD: src/lib/libc/nls/pl_PL.ISO8859-2.msg,v 1.2 2005/07/23 21:30:35 pjd Exp $
 $
 $ Message catalog for pl_PL.ISO8859-2 locale
 $
@@ -62,7 +62,7 @@
 $ ENOSPC
 28 Brak miejsca na urządzeniu
 $ ESPIPE
-29 Błędne przesunięcie
+29 Przesunięcie niemożliwe
 $ EROFS
 30 System plików tylko do odczytu
 $ EMLINK

==== //depot/projects/hammer/lib/libc/stdio/vfprintf.c#18 (text+ko) ====

@@ -38,7 +38,7 @@
 static char sccsid[] = "@(#)vfprintf.c	8.1 (Berkeley) 6/4/93";
 #endif /* LIBC_SCCS and not lint */
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/stdio/vfprintf.c,v 1.69 2005/04/16 22:36:51 das Exp $");
+__FBSDID("$FreeBSD: src/lib/libc/stdio/vfprintf.c,v 1.70 2005/07/24 12:12:44 tjr Exp $");
 
 /*
  * Actual printf innards.
@@ -331,9 +331,9 @@
 
 /*
  * Convert a wide character string argument for the %ls format to a multibyte
- * string representation. ``prec'' specifies the maximum number of bytes
- * to output. If ``prec'' is greater than or equal to zero, we can't assume
- * that the wide char. string ends in a null character.
+ * string representation. If not -1, prec specifies the maximum number of
+ * bytes to output, and also means that we can't assume that the wide char.
+ * string ends is null-terminated.
  */
 static char *
 __wcsconv(wchar_t *wcsarg, int prec)
@@ -342,53 +342,49 @@
 	mbstate_t mbs;
 	char buf[MB_LEN_MAX];
 	wchar_t *p;
-	char *convbuf, *mbp;
+	char *convbuf;
 	size_t clen, nbytes;
 
-	/*
-	 * Determine the number of bytes to output and allocate space for
-	 * the output.
-	 */
-	if (prec >= 0) {
-		nbytes = 0;
-		p = wcsarg;
-		mbs = initial;
-		for (;;) {
-			clen = wcrtomb(buf, *p++, &mbs);
-			if (clen == 0 || clen == (size_t)-1 ||
-			    nbytes + clen > prec)
-				break;
-			nbytes += clen;
-		}
-	} else {
+	/* Allocate space for the maximum number of bytes we could output. */
+	if (prec < 0) {
 		p = wcsarg;
 		mbs = initial;
 		nbytes = wcsrtombs(NULL, (const wchar_t **)&p, 0, &mbs);
 		if (nbytes == (size_t)-1)
 			return (NULL);
+	} else {
+		/*
+		 * Optimisation: if the output precision is small enough,
+		 * just allocate enough memory for the maximum instead of
+		 * scanning the string.
+		 */
+		if (prec < 128)
+			nbytes = prec;
+		else {
+			nbytes = 0;
+			p = wcsarg;
+			mbs = initial;
+			for (;;) {
+				clen = wcrtomb(buf, *p++, &mbs);
+				if (clen == 0 || clen == (size_t)-1 ||
+				    nbytes + clen > prec)
+					break;
+				nbytes += clen;
+			}
+		}
 	}
 	if ((convbuf = malloc(nbytes + 1)) == NULL)
 		return (NULL);
 
-	/*
-	 * Fill the output buffer with the multibyte representations of as
-	 * many wide characters as will fit.
-	 */
-	mbp = convbuf;
+	/* Fill the output buffer. */

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



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