PERFORCE change 38555 for review

Marcel Moolenaar marcel at FreeBSD.org
Wed Sep 24 21:04:09 PDT 2003


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

Change 38555 by marcel at marcel_nfs on 2003/09/24 21:03:34

	IFC @38553

Affected files ...

.. //depot/projects/ia64/UPDATING#52 integrate
.. //depot/projects/ia64/crypto/openssh/auth-chall.c#6 integrate
.. //depot/projects/ia64/crypto/openssh/auth2-pam-freebsd.c#11 integrate
.. //depot/projects/ia64/crypto/openssh/ssh_config#12 integrate
.. //depot/projects/ia64/crypto/openssh/ssh_config.5#8 integrate
.. //depot/projects/ia64/crypto/openssh/sshd_config#13 integrate
.. //depot/projects/ia64/crypto/openssh/sshd_config.5#8 integrate
.. //depot/projects/ia64/crypto/openssh/version.h#13 integrate
.. //depot/projects/ia64/etc/sendmail/Makefile#14 integrate
.. //depot/projects/ia64/lib/libalias/Makefile#5 integrate
.. //depot/projects/ia64/lib/libalias/alias.c#7 integrate
.. //depot/projects/ia64/lib/libalias/alias.h#5 integrate
.. //depot/projects/ia64/lib/libalias/alias_db.c#8 integrate
.. //depot/projects/ia64/lib/libalias/alias_local.h#4 integrate
.. //depot/projects/ia64/lib/libalias/alias_skinny.c#1 branch
.. //depot/projects/ia64/lib/libalias/libalias.3#7 integrate
.. //depot/projects/ia64/lib/libpthread/arch/i386/i386/thr_getcontext.S#4 integrate
.. //depot/projects/ia64/lib/libpthread/thread/thr_info.c#5 integrate
.. //depot/projects/ia64/lib/libpthread/thread/thr_kern.c#37 integrate
.. //depot/projects/ia64/lib/libpthread/thread/thr_mutex.c#11 integrate
.. //depot/projects/ia64/lib/libpthread/thread/thr_private.h#25 integrate
.. //depot/projects/ia64/lib/libpthread/thread/thr_sig.c#25 integrate
.. //depot/projects/ia64/release/scripts/print-cdrom-packages.sh#28 integrate
.. //depot/projects/ia64/sbin/dump/optr.c#12 integrate
.. //depot/projects/ia64/sbin/mdconfig/mdconfig.8#8 integrate
.. //depot/projects/ia64/sbin/natd/natd.8#10 integrate
.. //depot/projects/ia64/sbin/natd/natd.c#8 integrate
.. //depot/projects/ia64/share/examples/etc/make.conf#34 integrate
.. //depot/projects/ia64/share/man/man4/ath.4#11 integrate
.. //depot/projects/ia64/share/man/man4/bridge.4#5 integrate
.. //depot/projects/ia64/share/man/man4/ugen.4#3 integrate
.. //depot/projects/ia64/share/man/man4/wi.4#31 integrate
.. //depot/projects/ia64/share/man/man5/make.conf.5#41 integrate
.. //depot/projects/ia64/share/man/man9/BUS_CONFIG_INTR.9#1 branch
.. //depot/projects/ia64/share/man/man9/Makefile#30 integrate
.. //depot/projects/ia64/sys/alpha/alpha/elf_machdep.c#10 integrate
.. //depot/projects/ia64/sys/alpha/include/bus.h#14 integrate
.. //depot/projects/ia64/sys/alpha/include/elf.h#5 integrate
.. //depot/projects/ia64/sys/alpha/linux/linux_sysvec.c#13 integrate
.. //depot/projects/ia64/sys/alpha/osf1/osf1_sysvec.c#7 integrate
.. //depot/projects/ia64/sys/amd64/acpica/acpi_machdep.c#4 integrate
.. //depot/projects/ia64/sys/amd64/amd64/busdma_machdep.c#8 integrate
.. //depot/projects/ia64/sys/amd64/amd64/elf_machdep.c#5 integrate
.. //depot/projects/ia64/sys/amd64/amd64/exception.S#6 integrate
.. //depot/projects/ia64/sys/amd64/amd64/machdep.c#14 integrate
.. //depot/projects/ia64/sys/amd64/amd64/trap.c#9 integrate
.. //depot/projects/ia64/sys/amd64/amd64/tsc.c#3 integrate
.. //depot/projects/ia64/sys/amd64/ia32/ia32_syscall.c#5 integrate
.. //depot/projects/ia64/sys/amd64/include/acpica_machdep.h#3 integrate
.. //depot/projects/ia64/sys/amd64/include/bus_amd64.h#3 integrate
.. //depot/projects/ia64/sys/amd64/include/clock.h#2 integrate
.. //depot/projects/ia64/sys/amd64/include/cpu.h#3 integrate
.. //depot/projects/ia64/sys/amd64/include/elf.h#3 integrate
.. //depot/projects/ia64/sys/amd64/include/endian.h#3 integrate
.. //depot/projects/ia64/sys/amd64/include/legacyvar.h#2 integrate
.. //depot/projects/ia64/sys/amd64/include/md_var.h#5 integrate
.. //depot/projects/ia64/sys/amd64/include/pci_cfgreg.h#2 integrate
.. //depot/projects/ia64/sys/amd64/include/segments.h#3 integrate
.. //depot/projects/ia64/sys/amd64/include/specialreg.h#2 integrate
.. //depot/projects/ia64/sys/amd64/include/vmparam.h#4 integrate
.. //depot/projects/ia64/sys/amd64/isa/clock.c#3 integrate
.. //depot/projects/ia64/sys/amd64/pci/pci_bus.c#5 integrate
.. //depot/projects/ia64/sys/arm/include/elf.h#2 integrate
.. //depot/projects/ia64/sys/compat/ia32/ia32_sysvec.c#2 integrate
.. //depot/projects/ia64/sys/compat/ia32/ia32_util.h#2 integrate
.. //depot/projects/ia64/sys/compat/linprocfs/linprocfs.c#23 integrate
.. //depot/projects/ia64/sys/compat/pecoff/imgact_pecoff.c#17 integrate
.. //depot/projects/ia64/sys/compat/svr4/svr4_sysvec.c#15 integrate
.. //depot/projects/ia64/sys/contrib/ipfilter/netinet/ip_fil.c#9 integrate
.. //depot/projects/ia64/sys/dev/acpica/acpi_button.c#10 integrate
.. //depot/projects/ia64/sys/dev/ata/atapi-cam.c#19 integrate
.. //depot/projects/ia64/sys/dev/ata/atapi-cd.c#31 integrate
.. //depot/projects/ia64/sys/dev/ata/atapi-cd.h#12 integrate
.. //depot/projects/ia64/sys/dev/bge/if_bge.c#42 integrate
.. //depot/projects/ia64/sys/dev/em/if_em.c#27 integrate
.. //depot/projects/ia64/sys/dev/em/if_em.h#20 integrate
.. //depot/projects/ia64/sys/dev/exca/exca.c#11 integrate
.. //depot/projects/ia64/sys/dev/ips/ips_disk.c#4 integrate
.. //depot/projects/ia64/sys/dev/pccard/pccarddevs#37 integrate
.. //depot/projects/ia64/sys/dev/pccard/pccarddevs.h#37 integrate
.. //depot/projects/ia64/sys/dev/uart/uart.h#2 integrate
.. //depot/projects/ia64/sys/dev/uart/uart_bus_pccard.c#2 integrate
.. //depot/projects/ia64/sys/dev/uart/uart_core.c#4 integrate
.. //depot/projects/ia64/sys/dev/uart/uart_cpu.h#4 integrate
.. //depot/projects/ia64/sys/dev/uart/uart_cpu_alpha.c#3 integrate
.. //depot/projects/ia64/sys/dev/uart/uart_cpu_amd64.c#3 integrate
.. //depot/projects/ia64/sys/dev/uart/uart_cpu_i386.c#3 integrate
.. //depot/projects/ia64/sys/dev/uart/uart_cpu_ia64.c#3 integrate
.. //depot/projects/ia64/sys/dev/uart/uart_cpu_pc98.c#4 integrate
.. //depot/projects/ia64/sys/dev/uart/uart_cpu_sparc64.c#4 integrate
.. //depot/projects/ia64/sys/dev/uart/uart_dev_sab82532.c#4 integrate
.. //depot/projects/ia64/sys/dev/uart/uart_dev_z8530.c#4 integrate
.. //depot/projects/ia64/sys/dev/usb/usbdevs#48 integrate
.. //depot/projects/ia64/sys/dev/usb/usbdevs.h#46 integrate
.. //depot/projects/ia64/sys/dev/usb/usbdevs_data.h#46 integrate
.. //depot/projects/ia64/sys/dev/wi/if_wi_pccard.c#32 integrate
.. //depot/projects/ia64/sys/geom/geom_disk.c#38 integrate
.. //depot/projects/ia64/sys/i386/acpica/acpi_wakeup.c#21 integrate
.. //depot/projects/ia64/sys/i386/i386/elf_machdep.c#12 integrate
.. //depot/projects/ia64/sys/i386/i386/pmap.c#65 integrate
.. //depot/projects/ia64/sys/i386/ibcs2/ibcs2_sysvec.c#5 integrate
.. //depot/projects/ia64/sys/i386/include/bus_at386.h#7 integrate
.. //depot/projects/ia64/sys/i386/include/bus_pc98.h#6 integrate
.. //depot/projects/ia64/sys/i386/include/clock.h#7 integrate
.. //depot/projects/ia64/sys/i386/include/elf.h#6 integrate
.. //depot/projects/ia64/sys/i386/include/endian.h#9 integrate
.. //depot/projects/ia64/sys/i386/include/pmap.h#14 integrate
.. //depot/projects/ia64/sys/i386/isa/clock.c#23 integrate
.. //depot/projects/ia64/sys/i386/linux/linux_sysvec.c#27 integrate
.. //depot/projects/ia64/sys/ia64/ia32/ia32_sysvec.c#8 integrate
.. //depot/projects/ia64/sys/ia64/ia64/elf_machdep.c#13 integrate
.. //depot/projects/ia64/sys/ia64/include/bus.h#15 integrate
.. //depot/projects/ia64/sys/ia64/include/elf.h#9 integrate
.. //depot/projects/ia64/sys/kern/imgact_aout.c#17 integrate
.. //depot/projects/ia64/sys/kern/imgact_elf.c#33 integrate
.. //depot/projects/ia64/sys/kern/init_main.c#37 integrate
.. //depot/projects/ia64/sys/kern/kern_exec.c#53 integrate
.. //depot/projects/ia64/sys/kern/kern_linker.c#28 integrate
.. //depot/projects/ia64/sys/kern/vfs_bio.c#61 integrate
.. //depot/projects/ia64/sys/modules/bridge/Makefile#3 integrate
.. //depot/projects/ia64/sys/modules/ipfilter/Makefile#3 integrate
.. //depot/projects/ia64/sys/net/bridge.c#22 integrate
.. //depot/projects/ia64/sys/net/pfil.c#5 integrate
.. //depot/projects/ia64/sys/net/pfil.h#4 integrate
.. //depot/projects/ia64/sys/net/radix.c#10 integrate
.. //depot/projects/ia64/sys/netinet/if_ether.c#19 integrate
.. //depot/projects/ia64/sys/netinet/ip_input.c#34 integrate
.. //depot/projects/ia64/sys/netinet/ip_output.c#32 integrate
.. //depot/projects/ia64/sys/netinet/ip_var.h#15 integrate
.. //depot/projects/ia64/sys/netinet6/ip6_forward.c#6 integrate
.. //depot/projects/ia64/sys/netinet6/ip6_input.c#17 integrate
.. //depot/projects/ia64/sys/netinet6/ip6_output.c#14 integrate
.. //depot/projects/ia64/sys/netinet6/ip6_var.h#6 integrate
.. //depot/projects/ia64/sys/netinet6/ip6protosw.h#4 integrate
.. //depot/projects/ia64/sys/pc98/i386/busiosubr.c#3 integrate
.. //depot/projects/ia64/sys/powerpc/include/elf.h#5 integrate
.. //depot/projects/ia64/sys/powerpc/include/param.h#9 integrate
.. //depot/projects/ia64/sys/powerpc/powermac/ata_macio.c#6 integrate
.. //depot/projects/ia64/sys/powerpc/powerpc/elf_machdep.c#9 integrate
.. //depot/projects/ia64/sys/powerpc/powerpc/pmap.c#30 integrate
.. //depot/projects/ia64/sys/powerpc/psim/ata_iobus.c#5 integrate
.. //depot/projects/ia64/sys/sparc64/include/bus.h#21 integrate
.. //depot/projects/ia64/sys/sparc64/include/elf.h#7 integrate
.. //depot/projects/ia64/sys/sparc64/sparc64/elf_machdep.c#16 integrate
.. //depot/projects/ia64/sys/sys/kobj.h#3 integrate
.. //depot/projects/ia64/sys/sys/param.h#43 integrate
.. //depot/projects/ia64/sys/sys/protosw.h#6 integrate
.. //depot/projects/ia64/sys/sys/sysent.h#11 integrate
.. //depot/projects/ia64/sys/vm/vm_map.c#64 integrate
.. //depot/projects/ia64/sys/vm/vm_mmap.c#24 integrate
.. //depot/projects/ia64/sys/vm/vm_page.c#54 integrate
.. //depot/projects/ia64/usr.bin/Makefile#55 integrate
.. //depot/projects/ia64/usr.bin/fstat/msdosfs.c#5 integrate
.. //depot/projects/ia64/usr.sbin/newsyslog/extern.h#2 integrate
.. //depot/projects/ia64/usr.sbin/newsyslog/newsyslog.c#24 integrate
.. //depot/projects/ia64/usr.sbin/newsyslog/ptimes.c#3 integrate
.. //depot/projects/ia64/usr.sbin/ppp/command.c#16 integrate
.. //depot/projects/ia64/usr.sbin/ppp/nat_cmd.c#5 integrate
.. //depot/projects/ia64/usr.sbin/ppp/nat_cmd.h#3 integrate
.. //depot/projects/ia64/usr.sbin/ppp/ppp.8.m4#18 integrate
.. //depot/projects/ia64/usr.sbin/sysinstall/menus.c#34 integrate

Differences ...

==== //depot/projects/ia64/UPDATING#52 (text+ko) ====

@@ -17,6 +17,12 @@
 	developers choose to disable these features on build machines
 	to maximize performance.
 
+20030923:
+	Fix a bug in arplookup(), whereby a hostile party on a locally
+	attached network could exhaust kernel memory, and cause a system 
+	panic, by sending a flood of spoofed ARP requests. See
+	FreeBSD-SA-03:14.arp.
+
 20030915:
 	A change to /etc/defaults/rc.conf now causes inetd to be started
 	with `-C 60' if it is not overridden in /etc/rc.conf.  This
@@ -1362,4 +1368,4 @@
 Contact Warner Losh if you have any questions about your use of
 this document.
 
-$FreeBSD: src/UPDATING,v 1.266 2003/09/15 17:20:05 nectar Exp $
+$FreeBSD: src/UPDATING,v 1.267 2003/09/23 16:39:30 bms Exp $

==== //depot/projects/ia64/crypto/openssh/auth-chall.c#6 (text+ko) ====

@@ -24,7 +24,7 @@
 
 #include "includes.h"
 RCSID("$OpenBSD: auth-chall.c,v 1.8 2001/05/18 14:13:28 markus Exp $");
-RCSID("$FreeBSD: src/crypto/openssh/auth-chall.c,v 1.6 2003/03/31 13:45:36 des Exp $");
+RCSID("$FreeBSD: src/crypto/openssh/auth-chall.c,v 1.7 2003/09/24 18:24:27 des Exp $");
 
 #include "auth.h"
 #include "log.h"
@@ -93,7 +93,7 @@
 			xfree(info);
 		}
 		/* if we received more prompts, we're screwed */
-		res = (numprompts != 0);
+		res = (res == 0 && numprompts == 0) ? 0 : -1;
 	}
 	device->free_ctx(authctxt->kbdintctxt);
 	authctxt->kbdintctxt = NULL;

==== //depot/projects/ia64/crypto/openssh/auth2-pam-freebsd.c#11 (text+ko) ====

@@ -30,7 +30,7 @@
  */
 
 #include "includes.h"
-RCSID("$FreeBSD: src/crypto/openssh/auth2-pam-freebsd.c,v 1.11 2003/03/31 13:48:18 des Exp $");
+RCSID("$FreeBSD: src/crypto/openssh/auth2-pam-freebsd.c,v 1.13 2003/09/24 19:11:52 des Exp $");
 
 #ifdef USE_PAM
 #include <security/pam_appl.h>
@@ -134,8 +134,8 @@
 	*resp = xmalloc(n * sizeof **resp);
 	buffer_init(&buffer);
 	for (i = 0; i < n; ++i) {
-		resp[i]->resp_retcode = 0;
-		resp[i]->resp = NULL;
+		(*resp)[i].resp_retcode = 0;
+		(*resp)[i].resp = NULL;
 		switch (msg[i]->msg_style) {
 		case PAM_PROMPT_ECHO_OFF:
 			buffer_put_cstring(&buffer, msg[i]->msg);
@@ -143,7 +143,7 @@
 			ssh_msg_recv(ctxt->pam_csock, &buffer);
 			if (buffer_get_char(&buffer) != PAM_AUTHTOK)
 				goto fail;
-			resp[i]->resp = buffer_get_string(&buffer, NULL);
+			(*resp)[i].resp = buffer_get_string(&buffer, NULL);
 			break;
 		case PAM_PROMPT_ECHO_ON:
 			buffer_put_cstring(&buffer, msg[i]->msg);
@@ -151,7 +151,7 @@
 			ssh_msg_recv(ctxt->pam_csock, &buffer);
 			if (buffer_get_char(&buffer) != PAM_AUTHTOK)
 				goto fail;
-			resp[i]->resp = buffer_get_string(&buffer, NULL);
+			(*resp)[i].resp = buffer_get_string(&buffer, NULL);
 			break;
 		case PAM_ERROR_MSG:
 			buffer_put_cstring(&buffer, msg[i]->msg);
@@ -169,8 +169,6 @@
 	buffer_free(&buffer);
 	return (PAM_SUCCESS);
  fail:
-	while (i)
-		xfree(resp[--i]);
 	xfree(*resp);
 	*resp = NULL;
 	buffer_free(&buffer);
@@ -550,20 +548,20 @@
 	for (i = 0; i < n; ++i) {
 		switch (msg[i]->msg_style) {
 		case PAM_PROMPT_ECHO_OFF:
-			resp[i]->resp =
+			(*resp)[i].resp =
 			    read_passphrase(msg[i]->msg, RP_ALLOW_STDIN);
-			resp[i]->resp_retcode = PAM_SUCCESS;
+			(*resp)[i].resp_retcode = PAM_SUCCESS;
 			break;
 		case PAM_PROMPT_ECHO_ON:
 			fputs(msg[i]->msg, stderr);
 			fgets(input, sizeof input, stdin);
-			resp[i]->resp = xstrdup(input);
-			resp[i]->resp_retcode = PAM_SUCCESS;
+			(*resp)[i].resp = xstrdup(input);
+			(*resp)[i].resp_retcode = PAM_SUCCESS;
 			break;
 		case PAM_ERROR_MSG:
 		case PAM_TEXT_INFO:
 			fputs(msg[i]->msg, stderr);
-			resp[i]->resp_retcode = PAM_SUCCESS;
+			(*resp)[i].resp_retcode = PAM_SUCCESS;
 			break;
 		default:
 			goto fail;
@@ -571,8 +569,6 @@
 	}
 	return (PAM_SUCCESS);
  fail:
-	while (i)
-		xfree(resp[--i]);
 	xfree(*resp);
 	*resp = NULL;
 	return (PAM_CONV_ERR);

==== //depot/projects/ia64/crypto/openssh/ssh_config#12 (text+ko) ====

@@ -1,5 +1,5 @@
 #	$OpenBSD: ssh_config,v 1.16 2002/07/03 14:21:05 markus Exp $
-#	$FreeBSD: src/crypto/openssh/ssh_config,v 1.21 2003/04/23 17:10:53 des Exp $
+#	$FreeBSD: src/crypto/openssh/ssh_config,v 1.22 2003/09/24 19:20:23 des Exp $
 
 # This is the ssh client system-wide configuration file.  See
 # ssh_config(5) for more information.  This file provides defaults for
@@ -35,4 +35,4 @@
 #   Cipher 3des
 #   Ciphers aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,arcfour,aes192-cbc,aes256-cbc
 #   EscapeChar ~
-#   VersionAddendum FreeBSD-20030423
+#   VersionAddendum FreeBSD-20030924

==== //depot/projects/ia64/crypto/openssh/ssh_config.5#8 (text+ko) ====

@@ -35,7 +35,7 @@
 .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 .\"
 .\" $OpenBSD: ssh_config.5,v 1.7 2003/03/28 10:11:43 jmc Exp $
-.\" $FreeBSD: src/crypto/openssh/ssh_config.5,v 1.9 2003/04/23 17:10:53 des Exp $
+.\" $FreeBSD: src/crypto/openssh/ssh_config.5,v 1.10 2003/09/24 19:20:23 des Exp $
 .Dd September 25, 1999
 .Dt SSH_CONFIG 5
 .Os
@@ -623,7 +623,7 @@
 Specifies a string to append to the regular version string to identify
 OS- or site-specific modifications.
 The default is
-.Dq FreeBSD-20030423 .
+.Dq FreeBSD-20030924 .
 .It Cm XAuthLocation
 Specifies the full pathname of the
 .Xr xauth 1

==== //depot/projects/ia64/crypto/openssh/sshd_config#13 (text+ko) ====

@@ -1,5 +1,5 @@
 #	$OpenBSD: sshd_config,v 1.59 2002/09/25 11:17:16 markus Exp $
-#	$FreeBSD: src/crypto/openssh/sshd_config,v 1.32 2003/04/23 17:10:53 des Exp $
+#	$FreeBSD: src/crypto/openssh/sshd_config,v 1.33 2003/09/24 19:20:23 des Exp $
 
 # This is the sshd server system-wide configuration file.  See
 # sshd_config(5) for more information.
@@ -14,7 +14,7 @@
 # Note that some of FreeBSD's defaults differ from OpenBSD's, and
 # FreeBSD has a few additional options.
 
-#VersionAddendum FreeBSD-20030423
+#VersionAddendum FreeBSD-20030924
 
 #Port 22
 #Protocol 2,1

==== //depot/projects/ia64/crypto/openssh/sshd_config.5#8 (text+ko) ====

@@ -35,7 +35,7 @@
 .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 .\"
 .\" $OpenBSD: sshd_config.5,v 1.15 2003/03/28 10:11:43 jmc Exp $
-.\" $FreeBSD: src/crypto/openssh/sshd_config.5,v 1.11 2003/04/23 17:10:53 des Exp $
+.\" $FreeBSD: src/crypto/openssh/sshd_config.5,v 1.12 2003/09/24 19:20:23 des Exp $
 .Dd September 25, 1999
 .Dt SSHD_CONFIG 5
 .Os
@@ -650,7 +650,7 @@
 Specifies a string to append to the regular version string to identify
 OS- or site-specific modifications.
 The default is
-.Dq FreeBSD-20030423 .
+.Dq FreeBSD-20030924 .
 .It Cm X11DisplayOffset
 Specifies the first display number available for
 .Nm sshd Ns 's

==== //depot/projects/ia64/crypto/openssh/version.h#13 (text+ko) ====

@@ -1,11 +1,11 @@
 /* $OpenBSD: version.h,v 1.37 2003/04/01 10:56:46 markus Exp $ */
-/* $FreeBSD: src/crypto/openssh/version.h,v 1.22 2003/09/17 14:36:14 nectar Exp $ */
+/* $FreeBSD: src/crypto/openssh/version.h,v 1.23 2003/09/24 19:20:23 des Exp $ */
 
 #ifndef SSH_VERSION
 
 #define SSH_VERSION             (ssh_version_get())
 #define SSH_VERSION_BASE        "OpenSSH_3.6.1p1"
-#define SSH_VERSION_ADDENDUM    "FreeBSD-20030917"
+#define SSH_VERSION_ADDENDUM    "FreeBSD-20030924"
 
 const char *ssh_version_get(void);
 void ssh_version_set_addendum(const char *add);

==== //depot/projects/ia64/etc/sendmail/Makefile#14 (text+ko) ====

@@ -1,5 +1,5 @@
 #	@(#)Makefile	8.19 (Berkeley) 1/14/97
-# $FreeBSD: src/etc/sendmail/Makefile,v 1.28 2003/09/01 03:40:33 gshapiro Exp $
+# $FreeBSD: src/etc/sendmail/Makefile,v 1.29 2003/09/24 04:19:26 gshapiro Exp $
 
 M4=		m4
 CHMOD=		chmod
@@ -8,17 +8,17 @@
 
 SENDMAIL_DIR=	${.CURDIR}/../../contrib/sendmail
 SMDIR=		${SENDMAIL_DIR}/src
-CFDIR=		${SENDMAIL_DIR}/cf
+SENDMAIL_CF_DIR?=${SENDMAIL_DIR}/cf
 
 # this is overkill, but....
-M4FILES!=	find ${CFDIR} -type f -name '*.m4' -print
+M4FILES!=	find ${SENDMAIL_CF_DIR} -type f -name '*.m4' -print
 
 .SUFFIXES: .mc .cf
 
 .mc.cf: ${M4FILES}
 	${RM} ${.TARGET}
-	${M4} -D_CF_DIR_=${CFDIR}/ ${SENDMAIL_M4_FLAGS} \
-	    ${CFDIR}/m4/cf.m4 ${.IMPSRC} > ${.TARGET}
+	${M4} -D_CF_DIR_=${SENDMAIL_CF_DIR}/ ${SENDMAIL_M4_FLAGS} \
+	    ${SENDMAIL_CF_DIR}/m4/cf.m4 ${.IMPSRC} > ${.TARGET}
 	${CHMOD} ${ROMODE} ${.TARGET}
 
 DEST_CF=	${DESTDIR}/etc/mail/sendmail.cf
@@ -61,10 +61,10 @@
 all: ${ALL}
 
 # Build the installed submit.cf from the sendmail distributed submit.mc.
-freebsd.submit.cf:	${CFDIR}/cf/submit.mc
+freebsd.submit.cf:	${SENDMAIL_CF_DIR}/cf/submit.mc
 	${RM} ${.TARGET}
-	${M4} -D_CF_DIR_=${CFDIR}/ ${SENDMAIL_M4_FLAGS} \
-	    ${CFDIR}/m4/cf.m4 ${.ALLSRC} > ${.TARGET}
+	${M4} -D_CF_DIR_=${SENDMAIL_CF_DIR}/ ${SENDMAIL_M4_FLAGS} \
+	    ${SENDMAIL_CF_DIR}/m4/cf.m4 ${.ALLSRC} > ${.TARGET}
 	${CHMOD} ${ROMODE} ${.TARGET}
 
 install distribution:
@@ -76,7 +76,8 @@
 	${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 644 \
 	    ${.CURDIR}/freebsd.mc freebsd.cf ${DESTDIR}/etc/mail
 	${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 444 \
-	    ${CFDIR}/cf/submit.mc ${DESTDIR}/etc/mail/freebsd.submit.mc
+	    ${SENDMAIL_CF_DIR}/cf/submit.mc \
+	    ${DESTDIR}/etc/mail/freebsd.submit.mc
 	${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 444 \
 	    freebsd.submit.cf ${DESTDIR}/etc/mail
 	${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 444 \

==== //depot/projects/ia64/lib/libalias/Makefile#5 (text+ko) ====

@@ -1,11 +1,11 @@
-# $FreeBSD: src/lib/libalias/Makefile,v 1.22 2003/08/18 15:25:38 obrien Exp $
+# $FreeBSD: src/lib/libalias/Makefile,v 1.23 2003/09/23 07:41:53 marcus Exp $
 
 LIB=	alias
 SHLIBDIR?= /lib
 SHLIB_MAJOR=	4
 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_smedia.c \
+	alias_nbt.c alias_pptp.c alias_proxy.c alias_skinny.c alias_smedia.c \
 	alias_util.c
 INCS=	alias.h
 

==== //depot/projects/ia64/lib/libalias/alias.c#7 (text+ko) ====

@@ -27,7 +27,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libalias/alias.c,v 1.37 2003/06/13 21:54:01 ru Exp $");
+__FBSDID("$FreeBSD: src/lib/libalias/alias.c,v 1.38 2003/09/23 07:41:53 marcus Exp $");
 
 /*
     Alias.c provides supervisory control for the functions of the
@@ -917,6 +917,9 @@
         if (ntohs(tc->th_dport) == PPTP_CONTROL_PORT_NUMBER
          || ntohs(tc->th_sport) == PPTP_CONTROL_PORT_NUMBER)
             AliasHandlePptpIn(pip, link);
+        else if (skinnyPort != 0 && (ntohs(tc->th_dport) == skinnyPort
+         || ntohs(tc->th_sport) == skinnyPort))
+            AliasHandleSkinny(pip, link);
 
         alias_address = GetAliasAddress(link);
         original_address = GetOriginalAddress(link);
@@ -1098,6 +1101,9 @@
         else if (ntohs(tc->th_dport) == PPTP_CONTROL_PORT_NUMBER
          || ntohs(tc->th_sport) == PPTP_CONTROL_PORT_NUMBER)
             AliasHandlePptpOut(pip, link);
+        else if (skinnyPort != 0 && (ntohs(tc->th_sport) == skinnyPort
+         || ntohs(tc->th_dport) == skinnyPort))
+            AliasHandleSkinny(pip, link);
 
 /* Adjust TCP checksum since source port is being aliased */
 /* and source address is being altered                    */

==== //depot/projects/ia64/lib/libalias/alias.h#5 (text+ko) ====

@@ -25,7 +25,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $FreeBSD: src/lib/libalias/alias.h,v 1.24 2003/06/01 23:15:00 ru Exp $
+ * $FreeBSD: src/lib/libalias/alias.h,v 1.25 2003/09/23 07:41:53 marcus Exp $
  */
 
 /*-
@@ -45,6 +45,7 @@
 void	 PacketAliasInit(void);
 void	 PacketAliasSetAddress(struct in_addr _addr);
 void	 PacketAliasSetFWBase(unsigned int _base, unsigned int _num);
+void	 PacketAliasSetSkinnyPort(unsigned int _port);
 unsigned int
 	 PacketAliasSetMode(unsigned int _flags, unsigned int _mask);
 void	 PacketAliasUninit(void);

==== //depot/projects/ia64/lib/libalias/alias_db.c#8 (text+ko) ====

@@ -27,7 +27,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libalias/alias_db.c,v 1.54 2003/09/09 23:50:57 ru Exp $");
+__FBSDID("$FreeBSD: src/lib/libalias/alias_db.c,v 1.55 2003/09/23 07:41:53 marcus Exp $");
 
 /*
     Alias_db.c encapsulates all data structures used for storing
@@ -398,6 +398,9 @@
                                      /* flag.                           */
 #endif
 
+unsigned int skinnyPort = 0;         /* TCP port used by the Skinny     */
+                                     /* protocol.                       */
+
 
 
 
@@ -2948,3 +2951,8 @@
     fireWallNumNums = num;
 #endif
 }
+
+void
+PacketAliasSetSkinnyPort(unsigned int port) {
+    skinnyPort = port;
+}

==== //depot/projects/ia64/lib/libalias/alias_local.h#4 (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/libalias/alias_local.h,v 1.23 2002/07/01 11:19:40 brian Exp $
+ * $FreeBSD: src/lib/libalias/alias_local.h,v 1.24 2003/09/23 07:41:53 marcus Exp $
  */
 
 /*
@@ -74,6 +74,7 @@
 /* Globals */
 
 extern int packetAliasMode;
+extern unsigned int skinnyPort;
 
 /* Prototypes */
 
@@ -212,6 +213,9 @@
 void	 AliasHandleCUSeeMeOut(struct ip *_pip, struct alias_link *_link);
 void	 AliasHandleCUSeeMeIn(struct ip *_pip, struct in_addr _original_addr);
 
+/* Skinny routines */
+void	 AliasHandleSkinny(struct ip *_pip, struct alias_link *_link);
+
 /* Transparent proxy routines */
 int	 ProxyCheck(struct ip *_pip, struct in_addr *_proxy_server_addr,
 	    u_short *_proxy_server_port);

==== //depot/projects/ia64/lib/libalias/libalias.3#7 (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/libalias/libalias.3,v 1.48 2003/09/08 19:57:13 ru Exp $
+.\" $FreeBSD: src/lib/libalias/libalias.3,v 1.49 2003/09/23 07:41:53 marcus Exp $
 .\"
 .Dd April 13, 2000
 .Dt LIBALIAS 3
@@ -265,6 +265,16 @@
 flag).
 The range will be cleared for all rules on initialization.
 .Ed
+.Pp
+.Ft void
+.Fn PacketAliasSkinnyPort "unsigned int port"
+.Bd -ragged -offset indent
+Set the TCP port used by the Skinny Station protocol.
+Skinny is used by Cisco IP phones to communicate with
+Cisco Call Managers to set up voice over IP calls.
+If this is not set, Skinny aliasing will not be done.
+The typical port used by Skinny is 2000.
+.Ed
 .Sh PACKET HANDLING
 The packet handling functions are used to modify incoming (remote to local)
 and outgoing (local to remote) packets.

==== //depot/projects/ia64/lib/libpthread/arch/i386/i386/thr_getcontext.S#4 (text+ko) ====

@@ -25,7 +25,7 @@
  */
 
 #include <machine/asm.h>
-__FBSDID("$FreeBSD: src/lib/libpthread/arch/i386/i386/thr_getcontext.S,v 1.4 2003/08/05 22:45:59 deischen Exp $");
+__FBSDID("$FreeBSD: src/lib/libpthread/arch/i386/i386/thr_getcontext.S,v 1.5 2003/09/22 14:34:02 davidxu Exp $");
 
 /*
  * Where do we define these?
@@ -88,9 +88,9 @@
 	cmpl	$MC_OWNEDFP_PCB, MC_OWNEDFP_OFFSET(%edx)
 	jne	5f
 3:	cmpl	$MC_FPFMT_387, MC_FPFMT_OFFSET(%edx)
-	jne	5f
+	jne	4f
 	frstor	MC_FPREGS_OFFSET(%edx)	/* restore 387 FP regs */
-	jmp	5f
+	jmp	6f
 4:	cmpl	$MC_FPFMT_XMM, MC_FPFMT_OFFSET(%edx)
 	jne	5f
 	fxrstor	MC_FPREGS_OFFSET(%edx)	/* restore XMM FP regs */

==== //depot/projects/ia64/lib/libpthread/thread/thr_info.c#5 (text+ko) ====

@@ -29,7 +29,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $FreeBSD: src/lib/libpthread/thread/thr_info.c,v 1.26 2003/07/07 12:12:33 davidxu Exp $
+ * $FreeBSD: src/lib/libpthread/thread/thr_info.c,v 1.27 2003/09/22 00:40:23 davidxu Exp $
  */
 #include <stdio.h>
 #include <stdlib.h>
@@ -185,7 +185,7 @@
 			__sys_write(fd, s, strlen(s));
 			for (i = _SIG_WORDS - 1; i >= 0; i--) {
 				snprintf(s, sizeof(s), "%08x ",
-				    ~pthread->sigmask.__bits[i]);
+				    pthread->data.sigwait->waitset->__bits[i]);
 				__sys_write(fd, s, strlen(s));
 			}
 			snprintf(s, sizeof(s), "(lo)\n");

==== //depot/projects/ia64/lib/libpthread/thread/thr_kern.c#37 (text+ko) ====

@@ -33,7 +33,7 @@
  *
  */
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libpthread/thread/thr_kern.c,v 1.96 2003/09/19 23:28:13 marcel Exp $");
+__FBSDID("$FreeBSD: src/lib/libpthread/thread/thr_kern.c,v 1.97 2003/09/23 04:02:23 davidxu Exp $");
 
 #include <sys/types.h>
 #include <sys/kse.h>
@@ -2352,6 +2352,10 @@
 	kse_critical_t crit;
 
 	DBG_MSG("Freeing thread %p\n", thread);
+	if (thread->name) {
+		free(thread->name);
+		thread->name = NULL;
+	}
 	if ((curthread == NULL) || (free_thread_count >= MAX_CACHED_THREADS)) {
 		thr_destroy(thread);
 	} else {

==== //depot/projects/ia64/lib/libpthread/thread/thr_mutex.c#11 (text+ko) ====

@@ -29,7 +29,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $FreeBSD: src/lib/libpthread/thread/thr_mutex.c,v 1.41 2003/09/04 14:06:42 davidxu Exp $
+ * $FreeBSD: src/lib/libpthread/thread/thr_mutex.c,v 1.42 2003/09/24 12:52:57 davidxu Exp $
  */
 #include <stdlib.h>
 #include <errno.h>
@@ -346,6 +346,7 @@
 			(*mutex)->m_prio = curthread->active_priority;
 			(*mutex)->m_saved_prio =
 			    curthread->inherited_priority;
+			curthread->inherited_priority = (*mutex)->m_prio;
 			THR_SCHED_UNLOCK(curthread, curthread);
 
 			/* Add to the list of owned mutexes: */
@@ -540,10 +541,10 @@
 				/* Schedule the next thread: */
 				_thr_sched_switch(curthread);
 
+				curthread->data.mutex = NULL;
 				if (THR_IN_MUTEXQ(curthread)) {
 					THR_LOCK_ACQUIRE(curthread, &(*m)->m_lock);
 					mutex_queue_remove(*m, curthread);
-					curthread->data.mutex = NULL;
 					THR_LOCK_RELEASE(curthread, &(*m)->m_lock);
 				}
 			}
@@ -619,10 +620,10 @@
 				/* Schedule the next thread: */
 				_thr_sched_switch(curthread);
 
+				curthread->data.mutex = NULL;
 				if (THR_IN_MUTEXQ(curthread)) {
 					THR_LOCK_ACQUIRE(curthread, &(*m)->m_lock);
 					mutex_queue_remove(*m, curthread);
-					curthread->data.mutex = NULL;
 					THR_LOCK_RELEASE(curthread, &(*m)->m_lock);
 				}
 			}
@@ -708,10 +709,10 @@
 				/* Schedule the next thread: */
 				_thr_sched_switch(curthread);
 
+				curthread->data.mutex = NULL;
 				if (THR_IN_MUTEXQ(curthread)) {
 					THR_LOCK_ACQUIRE(curthread, &(*m)->m_lock);
 					mutex_queue_remove(*m, curthread);
-					curthread->data.mutex = NULL;
 					THR_LOCK_RELEASE(curthread, &(*m)->m_lock);
 				}
 
@@ -1590,9 +1591,6 @@
 		TAILQ_REMOVE(&mutex->m_queue, pthread, sqe);
 		pthread->sflags &= ~THR_FLAGS_IN_SYNCQ;
 
-		/* This thread is no longer waiting for this mutex. */
-		pthread->data.mutex = NULL;
-
 		/*
 		 * Only exit the loop if the thread hasn't been
 		 * cancelled.

==== //depot/projects/ia64/lib/libpthread/thread/thr_private.h#25 (text+ko) ====

@@ -31,7 +31,7 @@
  *
  * Private thread definitions for the uthread kernel.
  *
- * $FreeBSD: src/lib/libpthread/thread/thr_private.h,v 1.102 2003/09/14 22:52:16 davidxu Exp $
+ * $FreeBSD: src/lib/libpthread/thread/thr_private.h,v 1.103 2003/09/22 14:40:36 davidxu Exp $
  */
 
 #ifndef _THR_PRIVATE_H
@@ -580,6 +580,7 @@
 	int			psf_valid;
 	int			psf_flags;
 	int			psf_interrupted;
+	int			psf_timeout;
 	int			psf_signo;
 	enum pthread_state	psf_state;
 	union pthread_wait_data psf_wait_data;

==== //depot/projects/ia64/lib/libpthread/thread/thr_sig.c#25 (text+ko) ====

@@ -29,7 +29,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $FreeBSD: src/lib/libpthread/thread/thr_sig.c,v 1.72 2003/09/15 00:08:48 davidxu Exp $
+ * $FreeBSD: src/lib/libpthread/thread/thr_sig.c,v 1.73 2003/09/22 14:40:36 davidxu Exp $
  */
 #include <sys/param.h>
 #include <sys/types.h>
@@ -349,7 +349,7 @@
 	intr_save = curthread->interrupted;
 	_kse_critical_enter();
 	/* Get a fresh copy of signal mask */
-	curthread->sigmask = ucp->uc_sigmask;
+	__sys_sigprocmask(SIG_BLOCK, NULL, &curthread->sigmask);
 	KSE_LOCK_ACQUIRE(curkse, &_thread_signal_lock);
 	sigfunc = _thread_sigact[sig - 1].sa_sigaction;
 	sa_flags = _thread_sigact[sig - 1].sa_flags & SA_SIGINFO;
@@ -1072,6 +1072,7 @@
 		PANIC("invalid pthread_sigframe\n");
 	thread->flags = psf->psf_flags;
 	thread->interrupted = psf->psf_interrupted;
+	thread->timeout = psf->psf_timeout;
 	thread->state = psf->psf_state;
 	thread->data = psf->psf_wait_data;
 	thread->wakeup_time = psf->psf_wakeup_time;
@@ -1084,6 +1085,7 @@
 	psf->psf_flags =
 	    thread->flags & (THR_FLAGS_PRIVATE | THR_FLAGS_IN_TDLIST);
 	psf->psf_interrupted = thread->interrupted;
+	psf->psf_timeout = thread->timeout;
 	psf->psf_state = thread->state;
 	psf->psf_wait_data = thread->data;
 	psf->psf_wakeup_time = thread->wakeup_time;

==== //depot/projects/ia64/release/scripts/print-cdrom-packages.sh#28 (text+ko) ====

@@ -2,7 +2,7 @@
 #
 # Author:	Jordan Hubbard
 # Date:		Mon Jul 10 01:18:20 2000
-# Version:	$FreeBSD: src/release/scripts/print-cdrom-packages.sh,v 1.46 2003/08/19 05:48:08 murray Exp $
+# Version:	$FreeBSD: src/release/scripts/print-cdrom-packages.sh,v 1.47 2003/09/21 19:05:40 marcus Exp $
 #
 # MAINTAINER:	re
 #
@@ -92,7 +92,7 @@
 CDROM_SET_1="${CDROM_SET_1} x11-wm/afterstep"
 CDROM_SET_1="${CDROM_SET_1} x11-wm/enlightenment"
 CDROM_SET_1="${CDROM_SET_1} x11-wm/fvwm2"
-CDROM_SET_1="${CDROM_SET_1} x11-wm/sawfish"
+CDROM_SET_1="${CDROM_SET_1} x11-wm/sawfish2"
 CDROM_SET_1="${CDROM_SET_1} x11-wm/windowmaker"
 CDROM_SET_1="${CDROM_SET_1} x11/XFree86-4"
 CDROM_SET_1="${CDROM_SET_1} x11/XFree86-4-clients"
@@ -114,7 +114,7 @@
 CDROM_SET_1="${CDROM_SET_1} graphics/gimp1"
 CDROM_SET_1="${CDROM_SET_1} graphics/xpdf"
 CDROM_SET_1="${CDROM_SET_1} graphics/xv"
-CDROM_SET_1="${CDROM_SET_1} irc/xchat"
+CDROM_SET_1="${CDROM_SET_1} irc/xchat2"
 CDROM_SET_1="${CDROM_SET_1} mail/exim"
 CDROM_SET_1="${CDROM_SET_1} mail/fetchmail"
 CDROM_SET_1="${CDROM_SET_1} mail/mutt"

==== //depot/projects/ia64/sbin/dump/optr.c#12 (text+ko) ====

@@ -36,7 +36,7 @@
 static char sccsid[] = "@(#)optr.c	8.2 (Berkeley) 1/6/94";
 #endif
 static const char rcsid[] =
-  "$FreeBSD: src/sbin/dump/optr.c,v 1.26 2003/09/20 23:35:37 ps Exp $";
+  "$FreeBSD: src/sbin/dump/optr.c,v 1.27 2003/09/21 22:14:49 ps Exp $";
 #endif /* not lint */
 
 #include <sys/param.h>
@@ -227,17 +227,20 @@
 msg(const char *fmt, ...)
 {
 	va_list ap;
+	va_list ap2;
 
 	(void) fprintf(stderr,"  DUMP: ");
 #ifdef TDEBUG
 	(void) fprintf(stderr, "pid=%d ", getpid());
 #endif
 	va_start(ap, fmt);
-	(void) vsnprintf(lastmsg, sizeof(lastmsg), fmt, ap);
-	(void) fprintf(stderr, lastmsg);
+	va_copy(ap2, ap);
+	(void) vfprintf(stderr, fmt, ap);
 	(void) fflush(stdout);
 	(void) fflush(stderr);
+	(void) vsnprintf(lastmsg, sizeof(lastmsg), fmt, ap2);
 	va_end(ap);
+	va_end(ap2);
 }
 
 void

==== //depot/projects/ia64/sbin/mdconfig/mdconfig.8#8 (text+ko) ====

@@ -39,7 +39,7 @@
 .\"     @(#)vnconfig.8	8.1 (Berkeley) 6/5/93
 .\" from: src/usr.sbin/vnconfig/vnconfig.8,v 1.19 2000/12/27 15:30:29
 .\"
-.\" $FreeBSD: src/sbin/mdconfig/mdconfig.8,v 1.20 2003/06/11 06:38:24 rwatson Exp $
+.\" $FreeBSD: src/sbin/mdconfig/mdconfig.8,v 1.21 2003/09/21 19:05:35 phk Exp $
 .\"
 .Dd December 31, 2000
 .Dt MDCONFIG 8
@@ -60,6 +60,8 @@
 .Op Fl f Ar file
 .Op Fl S Ar sectorsize
 .Op Fl u Ar unit
+.Op Fl x Ar sectors/track
+.Op Fl y Ar heads/cyl
 .Nm
 .Fl d
 .Fl u Ar unit
@@ -119,6 +121,18 @@
 denotes kilobyte, megabyte and gigabyte respectively.
 .It Fl S Ar sectorsize
 Sectorsize to use for malloc backed device.
+.It Fl x Ar sectors/track
+See description of
+.Fl y 
+below.
+.It Fl y Ar heads/cylinder
+For malloc backed devices, the
+.Fl x
+and
+.Fl y
+options can be used to specify a synthetic geometry.
+This is useful for constructing bootable images for later download to
+other devices.
 .It Fl o Oo Cm no Oc Ns Ar option
 Set or reset options.
 .Bl -tag -width indent

==== //depot/projects/ia64/sbin/natd/natd.8#10 (text+ko) ====

@@ -1,4 +1,4 @@
-.\" $FreeBSD: src/sbin/natd/natd.8,v 1.60 2003/08/13 15:13:33 ru Exp $
+.\" $FreeBSD: src/sbin/natd/natd.8,v 1.61 2003/09/23 07:41:55 marcus Exp $
 .Dd February 28, 2003
 .Dt NATD 8
 .Os
@@ -31,6 +31,7 @@
 .Op Fl log_denied
 .Op Fl log_facility Ar facility_name
 .Op Fl punch_fw Ar firewall_range
+.Op Fl skinny_port Ar port
 .Op Fl log_ipfw_denied
 .Op Fl pid_file | P Ar pidfile
 .Ek
@@ -483,6 +484,13 @@
 .Ar basenumber
 will be used for punching firewall holes.
 The range will be cleared for all rules on startup.
+.It Fl skinny_port Ar port
+This option allows you to specify the TCP port used for
+the Skinny Station protocol.
+Skinny is used by Cisco IP phones to communicate with
+Cisco Call Managers to set up voice over IP calls.
+By default, Skinny aliasing is not performed.
+The typical port value for Skinny is 2000.
 .It Fl log_ipfw_denied
 Log when a packet cannot be re-injected because an
 .Xr ipfw 8

==== //depot/projects/ia64/sbin/natd/natd.c#8 (text+ko) ====

@@ -11,7 +11,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sbin/natd/natd.c,v 1.43 2003/08/13 13:16:19 ru Exp $");
+__FBSDID("$FreeBSD: src/sbin/natd/natd.c,v 1.44 2003/09/23 07:41:55 marcus Exp $");
 
 #define SYSLOG_NAMES
 
@@ -99,6 +99,7 @@
 static int      StrToAddrAndPortRange (const char* str, struct in_addr* addr, char* proto, port_range *portRange);
 static void	ParseArgs (int argc, char** argv);
 static void	SetupPunchFW(const char *strValue);
+static void	SetupSkinnyPort(const char *strValue);
 
 /*
  * Globals.
@@ -838,6 +839,7 @@
  	LogDenied,
  	LogFacility,
 	PunchFW,
+	SkinnyPort,
 	LogIpfwDenied,
 	PidFile
 };
@@ -1059,6 +1061,14 @@
 		"punch_fw",
 		NULL },
 
+	{ SkinnyPort,
+		0,
+		String,
+		"port",
+		"set the TCP port for use with the Skinny Station protocol",
+		"skinny_port",
+		NULL },
+
 	{ LogIpfwDenied,
 		0,
 		YesNo,
@@ -1258,6 +1268,10 @@
 		SetupPunchFW(strValue);
 		break;
 
+	case SkinnyPort:
+		SetupSkinnyPort(strValue);
+		break;
+
 	case LogIpfwDenied:
 		logIpfwDenied = yesNoValue;;
 		break;
@@ -1705,3 +1719,14 @@
 	PacketAliasSetFWBase(base, num);
 	(void)PacketAliasSetMode(PKT_ALIAS_PUNCH_FW, PKT_ALIAS_PUNCH_FW);
 }
+
+static void
+SetupSkinnyPort(const char *strValue)
+{
+	unsigned int port;
+
+	if (sscanf(strValue, "%u", &port) != 1)
+		errx(1, "skinny_port: port parameter required");
+

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


More information about the p4-projects mailing list