PERFORCE change 105669 for review

Warner Losh imp at FreeBSD.org
Tue Sep 5 05:45:31 UTC 2006


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

Change 105669 by imp at imp_paco-paco on 2006/09/05 05:44:39

	IFC @105667

Affected files ...

.. //depot/projects/arm/src/ObsoleteFiles.inc#6 integrate
.. //depot/projects/arm/src/UPDATING#4 integrate
.. //depot/projects/arm/src/contrib/libpcap/CHANGES#2 integrate
.. //depot/projects/arm/src/contrib/libpcap/CREDITS#2 integrate
.. //depot/projects/arm/src/contrib/libpcap/FREEBSD-upgrade#2 integrate
.. //depot/projects/arm/src/contrib/libpcap/README.dag#2 integrate
.. //depot/projects/arm/src/contrib/libpcap/VERSION#2 integrate
.. //depot/projects/arm/src/contrib/libpcap/config.h.in#2 integrate
.. //depot/projects/arm/src/contrib/libpcap/configure#2 integrate
.. //depot/projects/arm/src/contrib/libpcap/configure.in#2 integrate
.. //depot/projects/arm/src/contrib/libpcap/doc/pcap.html#1 branch
.. //depot/projects/arm/src/contrib/libpcap/doc/pcap.txt#1 branch
.. //depot/projects/arm/src/contrib/libpcap/doc/pcap.xml#1 branch
.. //depot/projects/arm/src/contrib/libpcap/ethertype.h#2 integrate
.. //depot/projects/arm/src/contrib/libpcap/fad-win32.c#2 integrate
.. //depot/projects/arm/src/contrib/libpcap/gencode.c#2 integrate
.. //depot/projects/arm/src/contrib/libpcap/gencode.h#2 integrate
.. //depot/projects/arm/src/contrib/libpcap/grammar.y#2 integrate
.. //depot/projects/arm/src/contrib/libpcap/pcap-bpf.c#2 integrate
.. //depot/projects/arm/src/contrib/libpcap/pcap-bpf.h#2 integrate
.. //depot/projects/arm/src/contrib/libpcap/pcap-dag.c#2 integrate
.. //depot/projects/arm/src/contrib/libpcap/pcap-dag.h#2 integrate
.. //depot/projects/arm/src/contrib/libpcap/pcap-dlpi.c#2 integrate
.. //depot/projects/arm/src/contrib/libpcap/pcap-int.h#2 integrate
.. //depot/projects/arm/src/contrib/libpcap/pcap-linux.c#2 integrate
.. //depot/projects/arm/src/contrib/libpcap/pcap-stdinc.h#2 integrate
.. //depot/projects/arm/src/contrib/libpcap/pcap-win32.c#2 integrate
.. //depot/projects/arm/src/contrib/libpcap/pcap.3#2 integrate
.. //depot/projects/arm/src/contrib/libpcap/pcap.c#2 integrate
.. //depot/projects/arm/src/contrib/libpcap/pcap.h#2 integrate
.. //depot/projects/arm/src/contrib/libpcap/savefile.c#2 integrate
.. //depot/projects/arm/src/contrib/libpcap/scanner.l#2 integrate
.. //depot/projects/arm/src/contrib/openbsm/FREEBSD-upgrade#3 integrate
.. //depot/projects/arm/src/contrib/openbsm/HISTORY#3 integrate
.. //depot/projects/arm/src/contrib/openbsm/bin/auditd/auditd.c#3 integrate
.. //depot/projects/arm/src/contrib/openbsm/bsm/audit.h#3 delete
.. //depot/projects/arm/src/contrib/openbsm/bsm/audit_internal.h#3 delete
.. //depot/projects/arm/src/contrib/openbsm/bsm/audit_kevents.h#3 delete
.. //depot/projects/arm/src/contrib/openbsm/bsm/audit_record.h#3 delete
.. //depot/projects/arm/src/contrib/openbsm/configure#3 integrate
.. //depot/projects/arm/src/contrib/openbsm/configure.ac#3 integrate
.. //depot/projects/arm/src/contrib/openbsm/libbsm/bsm_token.c#3 integrate
.. //depot/projects/arm/src/contrib/tcpdump/CHANGES#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/CREDITS#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/FILES#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/INSTALL#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/Makefile.in#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/VERSION#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/addrtoname.c#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/configure#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/configure.in#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/dccp.h#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/ethertype.h#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/icmp6.h#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/interface.h#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/ipproto.c#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/ipproto.h#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/llc.h#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/netdissect.h#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/ospf.h#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/ppp.h#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/print-802_11.c#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/print-ap1394.c#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/print-ascii.c#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/print-atm.c#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/print-chdlc.c#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/print-cip.c#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/print-dccp.c#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/print-ether.c#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/print-fddi.c#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/print-fr.c#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/print-icmp6.c#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/print-ip.c#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/print-ip6.c#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/print-ipfc.c#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/print-ipx.c#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/print-isoclns.c#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/print-juniper.c#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/print-lane.c#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/print-ldp.c#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/print-llc.c#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/print-null.c#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/print-ospf.c#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/print-pflog.c#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/print-pim.c#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/print-radius.c#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/print-rsvp.c#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/print-sctp.c#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/print-sll.c#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/print-slow.c#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/print-symantec.c#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/print-tcp.c#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/print-token.c#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/tcpdump-stdinc.h#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/tcpdump.1#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/tcpdump.c#2 integrate
.. //depot/projects/arm/src/contrib/tcpdump/tests/.cvsignore#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/02-sunrise-sunset-esp.puu#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/08-sunrise-sunset-aes.puu#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/08-sunrise-sunset-esp2.puu#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/alltests.sh#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/bgp_vpn_attrset.out#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/bgp_vpn_attrset.sh#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/eapon1.gdbinit#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/eapon1.out#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/eapon1.puu#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/eapon1.sh#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/eapon2.puu#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/esp-secrets.txt#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/esp0.out#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/esp0.sh#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/esp1.gdbinit#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/esp1.out#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/esp1.sh#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/esp2.gdbinit#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/esp2.out#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/esp2.sh#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/esp3.gdbinit#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/esp3.sh#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/esp4.gdbinit#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/esp4.sh#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/esp5.gdbinit#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/esp5.out#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/esp5.sh#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/espudp1.out#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/espudp1.puu#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/espudp1.sh#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/isakmp-delete-segfault.puu#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/isakmp-identification-segfault.puu#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/isakmp-pointer-loop.puu#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/isakmp1.out#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/isakmp1.sh#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/isakmp2.out#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/isakmp2.sh#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/isakmp3.out#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/isakmp3.sh#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/isakmp4.out#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/isakmp4.sh#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/isakmp4500.puu#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/lmp.out#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/lmp.puu#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/lmp.sh#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/mpls-ldp-hello.out#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/mpls-ldp-hello.puu#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/mpls-ldp-hello.sh#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/ospf-gmpls.out#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/ospf-gmpls.puu#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/ospf-gmpls.sh#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/print-A.out#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/print-AA.out#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/print-X.out#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/print-XX.out#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/print-capX.out#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/print-capXX.out#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/print-flags.puu#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/print-flags.sh#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/print-x.out#1 branch
.. //depot/projects/arm/src/contrib/tcpdump/tests/print-xx.out#1 branch
.. //depot/projects/arm/src/etc/mtree/BSD.usr.dist#4 integrate
.. //depot/projects/arm/src/etc/rc.initdiskless#3 integrate
.. //depot/projects/arm/src/lib/libbsm/Makefile#2 integrate
.. //depot/projects/arm/src/lib/libc/gen/tls.c#3 integrate
.. //depot/projects/arm/src/lib/libc/powerpc/gen/_set_tp.c#3 integrate
.. //depot/projects/arm/src/lib/libc/stdlib/malloc.c#6 integrate
.. //depot/projects/arm/src/lib/libpthread/arch/ia64/ia64/pthread_md.c#2 integrate
.. //depot/projects/arm/src/lib/libpthread/arch/ia64/include/pthread_md.h#2 integrate
.. //depot/projects/arm/src/lib/libpthread/arch/powerpc/include/pthread_md.h#2 integrate
.. //depot/projects/arm/src/lib/libpthread/arch/powerpc/powerpc/pthread_md.c#2 integrate
.. //depot/projects/arm/src/lib/libthr/arch/ia64/ia64/pthread_md.c#3 integrate
.. //depot/projects/arm/src/lib/libthr/arch/ia64/include/pthread_md.h#3 integrate
.. //depot/projects/arm/src/lib/libthr/arch/powerpc/include/pthread_md.h#3 integrate
.. //depot/projects/arm/src/lib/libthr/arch/powerpc/powerpc/pthread_md.c#3 integrate
.. //depot/projects/arm/src/lib/libutil/pw_util.c#2 integrate
.. //depot/projects/arm/src/libexec/rtld-elf/ia64/reloc.c#3 integrate
.. //depot/projects/arm/src/libexec/rtld-elf/powerpc/reloc.c#2 integrate
.. //depot/projects/arm/src/libexec/rtld-elf/rtld.c#3 integrate
.. //depot/projects/arm/src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#9 integrate
.. //depot/projects/arm/src/sbin/sysctl/sysctl.c#5 integrate
.. //depot/projects/arm/src/share/man/man4/ata.4#3 integrate
.. //depot/projects/arm/src/share/man/man4/audit.4#2 integrate
.. //depot/projects/arm/src/share/man/man4/gem.4#2 integrate
.. //depot/projects/arm/src/share/man/man4/ipfirewall.4#2 integrate
.. //depot/projects/arm/src/share/man/man4/le.4#2 integrate
.. //depot/projects/arm/src/share/man/man4/man4.sparc64/ebus.4#2 integrate
.. //depot/projects/arm/src/share/man/man4/man4.sparc64/machfb.4#2 integrate
.. //depot/projects/arm/src/share/man/man4/man4.sparc64/openfirm.4#2 integrate
.. //depot/projects/arm/src/share/man/man4/man4.sparc64/sbus.4#2 integrate
.. //depot/projects/arm/src/share/man/man5/periodic.conf.5#3 integrate
.. //depot/projects/arm/src/share/man/man8/picobsd.8#2 integrate
.. //depot/projects/arm/src/share/man/man9/bus_dma.9#3 integrate
.. //depot/projects/arm/src/sys/bsm/audit_internal.h#5 integrate
.. //depot/projects/arm/src/sys/bsm/audit_record.h#6 integrate
.. //depot/projects/arm/src/sys/compat/freebsd32/freebsd32_proto.h#14 integrate
.. //depot/projects/arm/src/sys/compat/freebsd32/freebsd32_syscall.h#14 integrate
.. //depot/projects/arm/src/sys/compat/freebsd32/freebsd32_syscalls.c#14 integrate
.. //depot/projects/arm/src/sys/compat/freebsd32/freebsd32_sysent.c#14 integrate
.. //depot/projects/arm/src/sys/compat/freebsd32/syscalls.master#15 integrate
.. //depot/projects/arm/src/sys/compat/svr4/svr4_stat.c#3 integrate
.. //depot/projects/arm/src/sys/dev/acpica/acpi_thermal.c#6 integrate
.. //depot/projects/arm/src/sys/dev/aic7xxx/ahc_eisa.c#2 integrate
.. //depot/projects/arm/src/sys/dev/aic7xxx/ahc_isa.c#2 integrate
.. //depot/projects/arm/src/sys/dev/aic7xxx/ahc_pci.c#3 integrate
.. //depot/projects/arm/src/sys/dev/aic7xxx/ahd_pci.c#4 integrate
.. //depot/projects/arm/src/sys/dev/ata/ata-chipset.c#26 integrate
.. //depot/projects/arm/src/sys/dev/ata/ata-dma.c#5 integrate
.. //depot/projects/arm/src/sys/dev/ata/ata-pci.h#15 integrate
.. //depot/projects/arm/src/sys/dev/atkbdc/atkbdc.c#4 integrate
.. //depot/projects/arm/src/sys/dev/bge/if_bge.c#21 integrate
.. //depot/projects/arm/src/sys/dev/bge/if_bgereg.h#15 integrate
.. //depot/projects/arm/src/sys/dev/em/if_em.c#27 integrate
.. //depot/projects/arm/src/sys/dev/gem/if_gem.c#5 integrate
.. //depot/projects/arm/src/sys/dev/isp/isp.c#11 integrate
.. //depot/projects/arm/src/sys/dev/isp/isp_freebsd.c#14 integrate
.. //depot/projects/arm/src/sys/dev/isp/isp_freebsd.h#11 integrate
.. //depot/projects/arm/src/sys/dev/isp/isp_pci.c#14 integrate
.. //depot/projects/arm/src/sys/dev/isp/isp_sbus.c#8 integrate
.. //depot/projects/arm/src/sys/dev/mk48txx/mk48txx.c#3 integrate
.. //depot/projects/arm/src/sys/dev/ofw/openfirmio.c#2 integrate
.. //depot/projects/arm/src/sys/dev/puc/pucdata.c#7 integrate
.. //depot/projects/arm/src/sys/dev/usb/ohci_pci.c#8 integrate
.. //depot/projects/arm/src/sys/dev/vge/if_vge.c#6 integrate
.. //depot/projects/arm/src/sys/kern/bus_if.m#5 integrate
.. //depot/projects/arm/src/sys/kern/init_sysent.c#16 integrate
.. //depot/projects/arm/src/sys/kern/kern_exec.c#12 integrate
.. //depot/projects/arm/src/sys/kern/kern_umtx.c#8 integrate
.. //depot/projects/arm/src/sys/kern/subr_bus.c#17 integrate
.. //depot/projects/arm/src/sys/kern/syscalls.c#16 integrate
.. //depot/projects/arm/src/sys/kern/syscalls.master#19 integrate
.. //depot/projects/arm/src/sys/kern/systrace_args.c#4 integrate
.. //depot/projects/arm/src/sys/kern/vfs_subr.c#24 integrate
.. //depot/projects/arm/src/sys/modules/Makefile#29 integrate
.. //depot/projects/arm/src/sys/modules/sound/sound/Makefile#5 integrate
.. //depot/projects/arm/src/sys/net/bpf.h#6 integrate
.. //depot/projects/arm/src/sys/netinet/udp_usrreq.c#12 integrate
.. //depot/projects/arm/src/sys/pci/agp_ati.c#3 integrate
.. //depot/projects/arm/src/sys/powerpc/powerpc/vm_machdep.c#4 integrate
.. //depot/projects/arm/src/sys/security/audit/audit.c#9 integrate
.. //depot/projects/arm/src/sys/security/audit/audit.h#5 integrate
.. //depot/projects/arm/src/sys/security/audit/audit_arg.c#5 integrate
.. //depot/projects/arm/src/sys/security/audit/audit_bsm.c#7 integrate
.. //depot/projects/arm/src/sys/security/audit/audit_bsm_token.c#6 integrate
.. //depot/projects/arm/src/sys/security/audit/audit_private.h#6 integrate
.. //depot/projects/arm/src/sys/security/audit/audit_syscalls.c#4 integrate
.. //depot/projects/arm/src/sys/sparc64/sparc64/mp_machdep.c#5 integrate
.. //depot/projects/arm/src/sys/sys/_bus_dma.h#1 branch
.. //depot/projects/arm/src/sys/sys/bus.h#8 integrate
.. //depot/projects/arm/src/sys/sys/bus_dma.h#3 integrate
.. //depot/projects/arm/src/sys/sys/msgbuf.h#2 integrate
.. //depot/projects/arm/src/sys/sys/param.h#16 integrate
.. //depot/projects/arm/src/sys/sys/syscall.h#16 integrate
.. //depot/projects/arm/src/sys/sys/syscall.mk#16 integrate
.. //depot/projects/arm/src/sys/sys/sysproto.h#17 integrate
.. //depot/projects/arm/src/sys/vm/vm_contig.c#8 integrate
.. //depot/projects/arm/src/sys/vm/vm_page.h#8 integrate
.. //depot/projects/arm/src/tools/tools/netrate/http/http.c#2 integrate
.. //depot/projects/arm/src/usr.bin/su/Makefile#2 integrate
.. //depot/projects/arm/src/usr.bin/su/su.c#2 integrate
.. //depot/projects/arm/src/usr.bin/tip/tip/Makefile#3 integrate
.. //depot/projects/arm/src/usr.sbin/cron/crontab/crontab.c#2 integrate
.. //depot/projects/arm/src/usr.sbin/eeprom/eeprom.8#2 integrate
.. //depot/projects/arm/src/usr.sbin/eeprom/ofw_options.c#2 integrate
.. //depot/projects/arm/src/usr.sbin/freebsd-update/Makefile#2 integrate
.. //depot/projects/arm/src/usr.sbin/freebsd-update/freebsd-update.sh#2 integrate
.. //depot/projects/arm/src/usr.sbin/ipfwpcap/ipfwpcap.c#2 integrate
.. //depot/projects/arm/src/usr.sbin/lmcconfig/Makefile#2 integrate
.. //depot/projects/arm/src/usr.sbin/portsnap/portsnap/Makefile#2 integrate
.. //depot/projects/arm/src/usr.sbin/sysinstall/devices.c#3 integrate
.. //depot/projects/arm/src/usr.sbin/tcpdump/tcpdump/Makefile#2 integrate
.. //depot/projects/arm/src/usr.sbin/watchdogd/watchdog.8#2 integrate
.. //depot/projects/arm/src/usr.sbin/watchdogd/watchdogd.8#2 integrate
.. //depot/projects/arm/src/usr.sbin/wpa/hostapd/hostapd.conf.5#2 integrate

Differences ...

==== //depot/projects/arm/src/ObsoleteFiles.inc#6 (text+ko) ====

@@ -1,5 +1,5 @@
 #
-# $FreeBSD: src/ObsoleteFiles.inc,v 1.49 2006/08/22 11:12:09 flz Exp $
+# $FreeBSD: src/ObsoleteFiles.inc,v 1.50 2006/09/05 01:17:51 matusita Exp $
 #
 # This file lists old files (OLD_FILES), libraries (OLD_LIBS) and
 # directories (OLD_DIRS) which should get removed at an update. Recently
@@ -97,6 +97,10 @@
 OLD_FILES+=etc/rc.d/ppp-user
 # 20051012: setkey(8) moved to /sbin/
 OLD_FILES+=usr/sbin/setkey
+# 20050930: pccardd(8) removed
+OLD_FILES+=usr/sbin/pccardd
+OLD_FILES+=usr/share/man/man5/pccard.conf.5.gz
+OLD_FILES+=usr/share/man/man8/pccardd.8.gz
 # 20050927: bridge(4) replaced by if_bridge(4)
 OLD_FILES+=usr/include/net/bridge.h
 # 20050831: not implemented

==== //depot/projects/arm/src/UPDATING#4 (text+ko) ====

@@ -21,6 +21,9 @@
 	developers choose to disable these features on build machines
 	to maximize performance.
 
+20060903:
+	libpcap updated to v0.9.4 and tcpdump to v3.9.4
+
 20060816:
 	The IPFIREWALL_FORWARD_EXTENDED option is gone and the behaviour
 	for IP_FIREWALL_FORWARD is now as it was before when it was first
@@ -44,6 +47,13 @@
 	the nve(4) driver. Please update your configuration
 	accordingly.
 
+20060514:
+	The i386-only lnc(4) driver for the AMD Am7900 LANCE and Am79C9xx
+	PCnet family of NICs has been removed. The new le(4) driver serves
+	as an equivalent but cross-platform replacement with the pcn(4)
+	driver still providing performance-optimized support for the subset
+	of AMD Am79C971 PCnet-FAST and greater chips as before.
+
 20060511:
 	The machdep.* sysctls and the adjkerntz utility have been
 	modified a bit.  The new adjkerntz utility uses the new
@@ -603,4 +613,4 @@
 Contact Warner Losh if you have any questions about your use of
 this document.
 
-$FreeBSD: src/UPDATING,v 1.453 2006/08/17 00:41:05 julian Exp $
+$FreeBSD: src/UPDATING,v 1.455 2006/09/04 21:49:31 sam Exp $

==== //depot/projects/arm/src/contrib/libpcap/CHANGES#2 (text+ko) ====

@@ -1,6 +1,17 @@
-@(#) $Header: /tcpdump/master/libpcap/CHANGES,v 1.59.2.1 2005/07/05 21:04:27 mcr Exp $ (LBL)
+@(#) $Header: /tcpdump/master/libpcap/CHANGES,v 1.59.2.8 2005/09/05 09:17:47 guy Exp $ (LBL)
+
+Mon. 	September 5, 2005.  ken at xelerance.com. Summary for 0.9.4 libpcap release
+
+	Support for radiotap on Linux (Mike Kershaw)
+	Fixes for HP-UX
+	Support for additional Juniper link-layer types
+	Fixes for filters on MPLS-encapsulated packets
+	"vlan" filter fixed
+	"pppoed" and "pppoes" filters added; the latter modifies later
+	parts of the filter expression to look at the PPP headers and
+	headers in the PPP payload
 
-Tue. 	July 5, 2005.  ken at xelerance.com. Summary for 3.9.x tcpdump
+Tue. 	July 5, 2005.  ken at xelerance.com. Summary for 0.9.3 libpcap release
 
 	Fixes for compiling on nearly every platform,
 		including improved 64bit support
@@ -9,16 +20,12 @@
 	OpenBSD pf format support
 	IrDA capture (Linux only)
 
-Tue.   May 27, 2005. mcr at sandelman.ottawa.on.ca. Summary for 0.9.1 release
-
-	Numerous fixes for 
-
 Tue.   March 30, 2004. mcr at sandelman.ottawa.on.ca. Summary for 3.8.3 release
 
 	Fixed minor problem in gencode.c that would appear on 64-bit
 	platforms.
 	Version number is now sane.
-	
+
 Mon.   March 29, 2004. mcr at sandelman.ottawa.on.ca. Summary for 3.8.2 release
 
 	updates for autoconf 2.5
@@ -31,13 +38,13 @@
 	Win32 patches from NetGroup, Politecnico di Torino (Italy)
 	OpenBSD pf, DLT_PFLOG added
 	Many changes to ATM support.
-	lookup pcap_lookupnet()	
+	lookup pcap_lookupnet()
 	Added DLT_ARCNET_LINUX, DLT_ENC, DLT_IEEE802_11_RADIO, DLT_SUNATM,
 		DLT_IP_OVER_FC, DLT_FRELAY, others.
 	Sigh.  More AIX wonderfulness.
-	Document updates. 
+	Document updates.
 	Changes to API: pcap_next_ex(), pcap_breakloop(), pcap_dump_flush(),
-			pcap_list_datalinks(), pcap_set_datalink(), 
+			pcap_list_datalinks(), pcap_set_datalink(),
 			pcap_lib_version(), pcap_datalink_val_to_name(),
 			pcap_datalink_name_to_val(), new error returns.
 
@@ -58,7 +65,7 @@
 
 	Added pcap_findalldevs() call to get list of interfaces in a MI way.
 
-	pcap_stats() has been documented as to what its counters mean on 
+	pcap_stats() has been documented as to what its counters mean on
 	each platform.
 
 Tuesday January 9, 2001. guy at alum.mit.edu. Summary for 0.6 release
@@ -131,7 +138,7 @@
 - Added a new "pcap_compile_nopcap()", which lets you compile a filter
   expression into a BPF program without having an open live capture or
   capture file.
-  
+
 v0.4 Sat Jul 25 12:40:09 PDT 1998
 
 - Fix endian problem with DLT_NULL devices. From FreeBSD via Bill

==== //depot/projects/arm/src/contrib/libpcap/CREDITS#2 (text+ko) ====

@@ -63,6 +63,7 @@
 	Mark Pizzolato			<List-tcpdump-workers at subscriptions.pizzolato.net>
 	Martin Husemann			<martin at netbsd.org>
 	Matthew Luckie			<mjl at luckie.org.nz>
+	Mike Kershaw			<dragorn at kismetwireless.net>
 	Mike Wiacek			<mike at iroot.net>
 	Monroe Williams			<monroe at pobox.com>
 	Nicolas Dade			<ndade at nsd.dyndns.org>

==== //depot/projects/arm/src/contrib/libpcap/FREEBSD-upgrade#2 (text+ko) ====

@@ -1,4 +1,4 @@
-$FreeBSD: src/contrib/libpcap/FREEBSD-upgrade,v 1.5 2002/02/08 19:45:58 obrien Exp $
+$FreeBSD: src/contrib/libpcap/FREEBSD-upgrade,v 1.6 2006/09/04 19:54:49 sam Exp $
 
 This directory contains virgin copies of the original distribution files
 on a "vendor" branch.  Do not, under any circumstances, attempt to upgrade
@@ -9,28 +9,27 @@
 	   [Do not make ANY changes to the files.]
 
 	2. Use the command:
-		cvs import -m 'Virgin import of LBL libpcap v<version>' \
-			-I SUNOS4 -I linux-include \
-			src/contrib/libpcap LBL v<version>
+		cvs import -m 'Import of libpcap v<version>' \
+			-I SUNOS4 -I msdos -I Win32 -I missing \
+			-I ChmodBPF -I linux-include \
+			src/contrib/libpcap TCPDUMP_ORG v<version>
 
-	   For example, to do the import of version 0.2.1, I typed:
-		cvs import -m 'Virgin import of LBL libpcap v0.2.1' \
-			-I SUNOS4 -I linux-include \
-			src/contrib/libpcap LBL v0_2_1
+	   For example, to do the import of version 0.9.4, I typed:
+		cvs import -m 'Import of libpcap v0.9.4 \
+			-I SUNOS4 -I msdos -I Win32 -I missing \
+			-I ChmodBPF -I linux-include \
+			src/contrib/libpcap TCPDUMP_ORG v0_9_4
 
 	3. Follow the instructions printed out in step 2 to resolve any
 	   conflicts between local FreeBSD changes and the newer version.
+	4. Bump __FreeBSD_version in sys/param.h as appropriate
 
-	4. Update the shared library version number in
-	   src/lib/libpcap/Makefile as described in the
-	   handbook section 18.
-
 Do not, under any circumstances, deviate from this procedure.
 
 To make local changes to libpcap, simply patch and commit to the main
-branch (aka HEAD).  Never make local changes on the LBL branch.
+branch (aka HEAD).  Never make local changes on the TCPDUMP_ORG branch.
 
 All local changes should be submitted to "tcpdump-workers at tcpdump.org" for
 inclusion in the next vendor release of tcpdump and libpcap.
 
-pst at freebsd.org - 19 Aug 1996
+sam at freebsd.org - 4 September 2006

==== //depot/projects/arm/src/contrib/libpcap/README.dag#2 (text+ko) ====

@@ -37,12 +37,57 @@
 
 ----------------------------------------------------------------------
 
+Libpcap when built for DAG cards against dag-2.5.1 or later releases:
+
+Timeouts are supported. pcap_dispatch() will return after to_ms milliseconds
+regardless of how many packets are received. If to_ms is zero pcap_dispatch()
+will block waiting for data indefinitely.
+
+pcap_dispatch() will block on and process a minimum of 64kB of data (before
+filtering) for efficiency. This can introduce high latencies on quiet
+interfaces unless a timeout value is set. The timeout expiring will override
+the 64kB minimum causing pcap_dispatch() to process any available data and
+return.
+
+pcap_setnonblock is supported. When nonblock is set, pcap_dispatch() will
+check once for available data, process any data available up to count, then
+return immediately.
+
+pcap_findalldevs() is supported, e.g. dag0, dag1...
+
+Some DAG cards can provide more than one 'stream' of received data.
+This can be data from different physical ports, or separated by filtering
+or load balancing mechanisms. Receive streams have even numbers, e.g.
+dag0:0, dag0:2 etc. Specifying transmit streams for capture is not supported.
+
+pcap_setfilter() is supported, BPF programs run in userspace.
+
+pcap_setdirection() is not supported. Only received traffic is captured.
+DAG cards normally do not have IP or link layer addresses assigned as
+they are used to passively monitor links.
+
+pcap_breakloop() is supported.
+
+pcap_datalink() and pcap_list_datalinks() are supported. The DAG card does
+not attempt to set the correct datalink type automatically where more than
+one type is possible.
+
+pcap_stats() is supported. ps_drop is the number of packets dropped due to
+RX stream buffer overflow, this count is before filters are applied (it will
+include packets that would have been dropped by the filter). The RX stream
+buffer size is user configurable outside libpcap, typically 16-512MB.
+
+pcap_get_selectable_fd() is not supported, DAG cards do not support
+poll/select methods.
+
+pcap_inject() and pcap_sendpacket() are not supported.
+
+----------------------------------------------------------------------
+
 Please submit bug reports via <support at endace.com>.
 
-Please also visit our Web pages at:
+Please also visit our Web site at:
 
         http://www.endace.com/
-        http://dag.cs.waikato.ac.nz/
 
 For more information about Endace DAG cards contact <sales at endace.com>.
-

==== //depot/projects/arm/src/contrib/libpcap/VERSION#2 (text+ko) ====

@@ -1,1 +1,1 @@
-0.9.1
+0.9.4

==== //depot/projects/arm/src/contrib/libpcap/config.h.in#2 (text+ko) ====

@@ -13,6 +13,9 @@
 /* define if you have the DAG API */
 #undef HAVE_DAG_API
 
+/* define if you have streams capable DAG API */
+#undef HAVE_DAG_STREAMS_API
+
 /* Define to 1 if you have the declaration of `ether_hostton', and to 0 if you
    don't. */
 #undef HAVE_DECL_ETHER_HOSTTON

==== //depot/projects/arm/src/contrib/libpcap/configure#2 (text+ko) ====

@@ -1,5 +1,5 @@
 #! /bin/sh
-# From configure.in Revision: 1.120.2.6 .
+# From configure.in Revision: 1.120.2.7 .
 # Guess values for system-dependent variables and create Makefiles.
 # Generated by GNU Autoconf 2.57.
 #
@@ -5791,6 +5791,14 @@
 
 	LDFLAGS=$saved_ldflags
 
+	if test "$dag_version" = 2.5.x; then
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_DAG_STREAMS_API 1
+_ACEOF
+
+	fi
+
 	# See if we can find a specific version string.
 	echo "$as_me:$LINENO: checking the DAG API version" >&5
 echo $ECHO_N "checking the DAG API version... $ECHO_C" >&6

==== //depot/projects/arm/src/contrib/libpcap/configure.in#2 (text+ko) ====

@@ -1,4 +1,4 @@
-dnl @(#) $Header: /tcpdump/master/libpcap/configure.in,v 1.120.2.6 2005/06/20 21:37:43 guy Exp $ (LBL)
+dnl @(#) $Header: /tcpdump/master/libpcap/configure.in,v 1.120.2.7 2005/07/07 06:56:03 guy Exp $ (LBL)
 dnl
 dnl Copyright (c) 1994, 1995, 1996, 1997
 dnl	The Regents of the University of California.  All rights reserved.
@@ -6,7 +6,7 @@
 dnl Process this file with autoconf to produce a configure script.
 dnl
 
-AC_REVISION($Revision: 1.120.2.6 $)
+AC_REVISION($Revision: 1.120.2.7 $)
 AC_PREREQ(2.50)
 AC_INIT(pcap.c)
 
@@ -569,6 +569,10 @@
 	AC_CHECK_LIB([dag], [dag_attach_stream], [dag_version="2.5.x"], [dag_version="2.4.x"])
 	LDFLAGS=$saved_ldflags
 
+	if test "$dag_version" = 2.5.x; then
+		AC_DEFINE(HAVE_DAG_STREAMS_API, 1, [define if you have streams capable DAG API])
+	fi
+
 	# See if we can find a specific version string.
 	AC_MSG_CHECKING([the DAG API version])
 	if test -r "$dag_root/VERSION"; then

==== //depot/projects/arm/src/contrib/libpcap/ethertype.h#2 (text+ko) ====

@@ -18,7 +18,7 @@
  * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
  * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
- * @(#) $Header: /tcpdump/master/libpcap/ethertype.h,v 1.13 2004/06/16 08:20:28 hannes Exp $ (LBL)
+ * @(#) $Header: /tcpdump/master/libpcap/ethertype.h,v 1.13.2.1 2005/09/05 09:08:03 guy Exp $ (LBL)
  */
 
 /*
@@ -108,6 +108,12 @@
 #ifndef ETHERTYPE_MPLS_MULTI
 #define ETHERTYPE_MPLS_MULTI    0x8848
 #endif
+#ifndef ETHERTYPE_PPPOED
+#define ETHERTYPE_PPPOED	0x8863
+#endif
+#ifndef ETHERTYPE_PPPOES
+#define ETHERTYPE_PPPOES	0x8864
+#endif
 #ifndef	ETHERTYPE_LOOPBACK
 #define	ETHERTYPE_LOOPBACK	0x9000
 #endif

==== //depot/projects/arm/src/contrib/libpcap/fad-win32.c#2 (text+ko) ====

@@ -32,7 +32,7 @@
 
 #ifndef lint
 static const char rcsid[] _U_ =
-    "@(#) $Header: /tcpdump/master/libpcap/fad-win32.c,v 1.11 2005/01/29 00:52:22 guy Exp $ (LBL)";
+    "@(#) $Header: /tcpdump/master/libpcap/fad-win32.c,v 1.11.2.1 2005/09/01 22:07:41 risso Exp $ (LBL)";
 #endif
 
 #ifdef HAVE_CONFIG_H
@@ -224,12 +224,22 @@
 	ULONG NameLength;
 	char *name;
 	
-	PacketGetAdapterNames(NULL, &NameLength);
+	if(!PacketGetAdapterNames(NULL, &NameLength) && NameLength == 0)
+	{
+		/*
+		 * If PacketGetAdapterNames *and* sets the lenght of the buffer to zero, 
+		 * it means there was an error.
+		 */
+		snprintf(errbuf, PCAP_ERRBUF_SIZE, "PacketGetAdapterNames failed: %s", pcap_win32strerror());
+		*alldevsp = NULL;
+		return -1;
+	}
 
 	if (NameLength > 0)
 		AdaptersName = (char*) malloc(NameLength);
 	else
 	{
+		snprintf(errbuf, PCAP_ERRBUF_SIZE, "no adapters found.");
 		*alldevsp = NULL;
 		return 0;
 	}

==== //depot/projects/arm/src/contrib/libpcap/gencode.c#2 (text+ko) ====

@@ -19,11 +19,11 @@
  * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
  * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  *
- * $FreeBSD: src/contrib/libpcap/gencode.c,v 1.15 2005/07/11 03:43:25 sam Exp $
+ * $FreeBSD: src/contrib/libpcap/gencode.c,v 1.16 2006/09/04 19:54:21 sam Exp $
  */
 #ifndef lint
 static const char rcsid[] _U_ =
-    "@(#) $Header: /tcpdump/master/libpcap/gencode.c,v 1.221.2.24 2005/06/20 21:52:53 guy Exp $ (LBL)";
+    "@(#) $Header: /tcpdump/master/libpcap/gencode.c,v 1.221.2.34 2005/09/05 09:08:04 guy Exp $ (LBL)";
 #endif
 
 #ifdef HAVE_CONFIG_H
@@ -86,7 +86,6 @@
 #endif /*INET6*/
 #include <pcap-namedb.h>
 
-#undef ETHERMTU
 #define ETHERMTU	1500
 
 #ifndef IPPROTO_SCTP
@@ -103,8 +102,8 @@
 static jmp_buf top_ctx;
 static pcap_t *bpf_pcap;
 
-/* Hack for updating VLAN, MPLS offsets. */
-static u_int	orig_linktype = -1U, orig_nl = -1U;
+/* Hack for updating VLAN, MPLS, and PPPoE offsets. */
+static u_int	orig_linktype = -1U, orig_nl = -1U, label_stack_depth = -1U;
 
 /* XXX */
 #ifdef PCAP_FDDIPAD
@@ -208,6 +207,7 @@
 static struct block *gen_wlanhostop(const u_char *, int);
 static struct block *gen_ipfchostop(const u_char *, int);
 static struct block *gen_dnhostop(bpf_u_int32, int);
+static struct block *gen_mpls_linktype(int);
 static struct block *gen_host(bpf_u_int32, bpf_u_int32, int, int);
 #ifdef INET6
 static struct block *gen_host6(struct in6_addr *, struct in6_addr *, int, int);
@@ -781,6 +781,9 @@
 	off_proto = -1;
 	off_payload = -1;
 
+	/*
+	 * And assume we're not doing SS7.
+	 */
 	off_sio = -1;
 	off_opc = -1;
 	off_dpc = -1;
@@ -793,6 +796,7 @@
 
 	orig_linktype = -1;
 	orig_nl = -1;
+        label_stack_depth = 0;
 
 	reg_ll_size = -1;
 
@@ -1116,8 +1120,12 @@
 		off_nl_nosnap = PFLOG_HDRLEN;	/* no 802.2 LLC */
 		return;
 
+        case DLT_JUNIPER_MFR:
         case DLT_JUNIPER_MLFR:
         case DLT_JUNIPER_MLPPP:
+        case DLT_JUNIPER_PPP:
+        case DLT_JUNIPER_CHDLC:
+        case DLT_JUNIPER_FRELAY:
                 off_linktype = 4;
 		off_nl = 4;
 		off_nl_nosnap = -1;	/* no 802.2 LLC */
@@ -1138,6 +1146,7 @@
 		/* frames captured on a Juniper PPPoE service PIC
 		 * contain raw ethernet frames */
 	case DLT_JUNIPER_PPPOE:
+        case DLT_JUNIPER_ETHER:
 		off_linktype = 16;
 		off_nl = 18;		/* Ethernet II */
 		off_nl_nosnap = 21;	/* 802.3+802.2 */
@@ -1854,6 +1863,25 @@
 {
 	struct block *b0, *b1, *b2;
 
+	/* are we checking MPLS-encapsulated packets? */
+	if (label_stack_depth > 0) {
+		switch (proto) {
+		case ETHERTYPE_IP:
+		case PPP_IP:
+		/* FIXME add other L3 proto IDs */
+			return gen_mpls_linktype(Q_IP); 
+
+		case ETHERTYPE_IPV6:
+		case PPP_IPV6:
+		/* FIXME add other L3 proto IDs */
+			return gen_mpls_linktype(Q_IPV6); 
+
+		default:
+			bpf_error("unsupported protocol over mpls");
+			/* NOTREACHED */
+		}
+	}
+
 	switch (linktype) {
 
 	case DLT_EN10MB:
@@ -2243,6 +2271,7 @@
 		/*NOTREACHED*/
 		break;
 
+        case DLT_JUNIPER_MFR:
         case DLT_JUNIPER_MLFR:
         case DLT_JUNIPER_MLPPP:
 	case DLT_JUNIPER_ATM1:
@@ -2253,6 +2282,10 @@
         case DLT_JUNIPER_ES:
         case DLT_JUNIPER_MONITOR:
         case DLT_JUNIPER_SERVICES:
+        case DLT_JUNIPER_ETHER:
+        case DLT_JUNIPER_PPP:
+        case DLT_JUNIPER_FRELAY:
+        case DLT_JUNIPER_CHDLC:
 		/* just lets verify the magic number for now -
 		 * on ATM we may have up to 6 different encapsulations on the wire
 		 * and need a lot of heuristics to figure out that the payload
@@ -3037,7 +3070,41 @@
 	return b1;
 }
 
+/*
+ * Generate a check for IPv4 or IPv6 for MPLS-encapsulated packets;
+ * test the bottom-of-stack bit, and then check the version number
+ * field in the IP header.
+ */
 static struct block *
+gen_mpls_linktype(proto)
+	int proto;
+{
+	struct block *b0, *b1;
+
+        switch (proto) {
+
+        case Q_IP:
+                /* match the bottom-of-stack bit */
+                b0 = gen_mcmp(OR_NET, -2, BPF_B, 0x01, 0x01);
+                /* match the IPv4 version number */
+                b1 = gen_mcmp(OR_NET, 0, BPF_B, 0x40, 0xf0);
+                gen_and(b0, b1);
+                return b1;
+ 
+       case Q_IPV6:
+                /* match the bottom-of-stack bit */
+                b0 = gen_mcmp(OR_NET, -2, BPF_B, 0x01, 0x01);
+                /* match the IPv4 version number */
+                b1 = gen_mcmp(OR_NET, 0, BPF_B, 0x60, 0xf0);
+                gen_and(b0, b1);
+                return b1;
+ 
+       default:
+                abort();
+        }
+}
+
+static struct block *
 gen_host(addr, mask, proto, dir)
 	bpf_u_int32 addr;
 	bpf_u_int32 mask;
@@ -3050,11 +3117,15 @@
 
 	case Q_DEFAULT:
 		b0 = gen_host(addr, mask, Q_IP, dir);
-		if (off_linktype != (u_int)-1) {
-		    b1 = gen_host(addr, mask, Q_ARP, dir);
-		    gen_or(b0, b1);
-		    b0 = gen_host(addr, mask, Q_RARP, dir);
-		    gen_or(b1, b0);
+		/*
+		 * Only check for non-IPv4 addresses if we're not
+		 * checking MPLS-encapsulated packets.
+		 */
+		if (label_stack_depth == 0) {
+			b1 = gen_host(addr, mask, Q_ARP, dir);
+			gen_or(b0, b1);
+			b0 = gen_host(addr, mask, Q_RARP, dir);
+			gen_or(b1, b0);
 		}
 		return b0;
 
@@ -4396,6 +4467,7 @@
 		 *
 		 * So we always check for ETHERTYPE_IP.
 		 */
+
 		b0 = gen_linktype(ETHERTYPE_IP);
 #ifndef CHASE_CHAIN
 		b1 = gen_cmp(OR_NET, 9, BPF_B, (bpf_int32)v);
@@ -5986,6 +6058,7 @@
 		}
 		break;
 
+        case DLT_JUNIPER_MFR:
         case DLT_JUNIPER_MLFR:
         case DLT_JUNIPER_MLPPP:
 	case DLT_JUNIPER_ATM1:
@@ -5996,6 +6069,10 @@
         case DLT_JUNIPER_ES:
         case DLT_JUNIPER_MONITOR:
         case DLT_JUNIPER_SERVICES:
+        case DLT_JUNIPER_ETHER:
+        case DLT_JUNIPER_PPP:
+        case DLT_JUNIPER_FRELAY:
+        case DLT_JUNIPER_CHDLC:
 		/* juniper flags (including direction) are stored
 		 * the byte after the 3-byte magic number */
 		if (dir) {
@@ -6039,7 +6116,7 @@
 	return (b0);
 }
 
-/* PF firewall log matched interface */
+/* PF firewall log ruleset name */
 struct block *
 gen_pf_ruleset(char *ruleset)
 {
@@ -6178,7 +6255,11 @@
 gen_vlan(vlan_num)
 	int vlan_num;
 {
-	struct	block	*b0;
+	struct	block	*b0, *b1;
+
+	/* can't check for VLAN-encapsulated packets inside MPLS */
+	if (label_stack_depth > 0)
+		bpf_error("no VLAN match after MPLS");
 
 	/*
 	 * Change the offsets to point to the type and data fields within
@@ -6210,30 +6291,28 @@
 	 * be done assuming a VLAN, even though the "or" could be viewed
 	 * as meaning "or, if this isn't a VLAN packet...".
 	 */
-        orig_linktype = off_linktype;	/* save original values */
-        orig_nl = off_nl;
+	orig_linktype = off_linktype;	/* save original values */
+	orig_nl = off_nl;
 
-        switch (linktype) {
+	switch (linktype) {
 
-        case DLT_EN10MB:
-                off_linktype += 4;
-                off_nl_nosnap += 4;
-                off_nl += 4;
-                break;
+	case DLT_EN10MB:
+		off_linktype += 4;
+		off_nl_nosnap += 4;
+		off_nl += 4;
+		break;
 
-        default:
-                bpf_error("no VLAN support for data link type %d",
-                      linktype);
-            /*NOTREACHED*/
-        }
+	default:
+		bpf_error("no VLAN support for data link type %d",
+		      linktype);
+		/*NOTREACHED*/
+	}
 
 	/* check for VLAN */
 	b0 = gen_cmp(OR_LINK, orig_linktype, BPF_H, (bpf_int32)ETHERTYPE_8021Q);
 
 	/* If a specific VLAN is requested, check VLAN id */
 	if (vlan_num >= 0) {
-		struct block *b1;
-
 		b1 = gen_mcmp(OR_LINK, orig_nl, BPF_H, (bpf_int32)vlan_num,
 		    0x0fff);
 		gen_and(b0, b1);
@@ -6250,7 +6329,7 @@
 gen_mpls(label_num)
 	int label_num;
 {
-	struct	block	*b0;
+	struct	block	*b0,*b1;
 
 	/*
 	 * Change the offsets to point to the type and data fields within
@@ -6261,44 +6340,46 @@
 	 *
 	 * XXX - this is a bit of a kludge.  See comments in gen_vlan().
 	 */
-        orig_linktype = off_linktype;	/* save original values */
         orig_nl = off_nl;
 
-        switch (linktype) {
-            
-        case DLT_C_HDLC: /* fall through */
-        case DLT_EN10MB:
-                off_nl_nosnap += 4;
-                off_nl += 4;
-                        
-                b0 = gen_cmp(OR_LINK, orig_linktype, BPF_H,
-                    (bpf_int32)ETHERTYPE_MPLS);
-                break;
-
-        case DLT_PPP:
-                off_nl_nosnap += 4;
-                off_nl += 4;
-
-                b0 = gen_cmp(OR_LINK, orig_linktype, BPF_H,
-                    (bpf_int32)PPP_MPLS_UCAST);
-                break;
-
-                /* FIXME add other DLT_s ...
-                 * for Frame-Relay/and ATM this may get messy due to SNAP headers
-                 * leave it for now */
-
-        default:
-                bpf_error("no MPLS support for data link type %d",
+        if (label_stack_depth > 0) {
+            /* just match the bottom-of-stack bit clear */
+            b0 = gen_mcmp(OR_LINK, orig_nl-2, BPF_B, 0, 0x01);
+        } else {
+            /*
+             * Indicate that we're checking MPLS-encapsulated headers,
+             * to make sure higher level code generators don't try to

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


More information about the p4-projects mailing list