Date: Tue, 5 Sep 2006 05:45:17 GMT From: Warner Losh <imp@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 105669 for review Message-ID: <200609050545.k855jHU3002373@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=105669 Change 105669 by imp@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@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@xelerance.com. Summary for 3.9.x tcpdump +Tue. July 5, 2005. ken@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@sandelman.ottawa.on.ca. Summary for 0.9.1 release - - Numerous fixes for - Tue. March 30, 2004. mcr@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@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@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@subscriptions.pizzolato.net> Martin Husemann <martin@netbsd.org> Matthew Luckie <mjl@luckie.org.nz> + Mike Kershaw <dragorn@kismetwireless.net> Mike Wiacek <mike@iroot.net> Monroe Williams <monroe@pobox.com> Nicolas Dade <ndade@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@tcpdump.org" for inclusion in the next vendor release of tcpdump and libpcap. -pst@freebsd.org - 19 Aug 1996 +sam@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@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@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) <<<
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200609050545.k855jHU3002373>
