diff options
author | Xin LI <delphij@FreeBSD.org> | 2012-10-04 21:07:56 +0000 |
---|---|---|
committer | Xin LI <delphij@FreeBSD.org> | 2012-10-04 21:07:56 +0000 |
commit | 3ca61f8b14e648b24f10072d662c12fb35fc4b44 (patch) | |
tree | c0321d3af9efd8c73c3684447c146eec380fca7b /pcap-common.c | |
parent | 5a0615f5c40ce036a7e13cfffe00927f845ad563 (diff) | |
download | src-3ca61f8b14e648b24f10072d662c12fb35fc4b44.tar.gz src-3ca61f8b14e648b24f10072d662c12fb35fc4b44.zip |
Vendor import of libpcap 1.3.0.vendor/libpcap/1.3.0
Notes
Notes:
svn path=/vendor/libpcap/dist/; revision=241199
svn path=/vendor/libpcap/1.3.0/; revision=241200; tag=vendor/libpcap/1.3.0
Diffstat (limited to 'pcap-common.c')
-rw-r--r-- | pcap-common.c | 72 |
1 files changed, 60 insertions, 12 deletions
diff --git a/pcap-common.c b/pcap-common.c index f188eeb750ec..31cf84defcc2 100644 --- a/pcap-common.c +++ b/pcap-common.c @@ -118,7 +118,7 @@ #define LINKTYPE_AX25 DLT_AX25 #define LINKTYPE_PRONET DLT_PRONET #define LINKTYPE_CHAOS DLT_CHAOS -#define LINKTYPE_TOKEN_RING DLT_IEEE802 /* DLT_IEEE802 is used for Token Ring */ +#define LINKTYPE_IEEE802_5 DLT_IEEE802 /* DLT_IEEE802 is used for 802.5 Token Ring */ #define LINKTYPE_ARCNET_BSD DLT_ARCNET /* BSD-style headers */ #define LINKTYPE_SLIP DLT_SLIP #define LINKTYPE_PPP DLT_PPP @@ -193,8 +193,8 @@ #define LINKTYPE_PFLOG 117 /* OpenBSD DLT_PFLOG */ #define LINKTYPE_CISCO_IOS 118 /* For Cisco-internal use */ -#define LINKTYPE_PRISM_HEADER 119 /* 802.11+Prism II monitor mode */ -#define LINKTYPE_AIRONET_HEADER 120 /* FreeBSD Aironet driver stuff */ +#define LINKTYPE_IEEE802_11_PRISM 119 /* 802.11 plus Prism II monitor mode radio metadata header */ +#define LINKTYPE_IEEE802_11_AIRONET 120 /* 802.11 plus FreeBSD Aironet driver radio metadata header */ /* * Reserved for Siemens HiPath HDLC. @@ -212,7 +212,7 @@ #define LINKTYPE_PCI_EXP 125 /* PCI Express */ #define LINKTYPE_AURORA 126 /* Xilinx Aurora link layer */ -#define LINKTYPE_IEEE802_11_RADIO 127 /* 802.11 plus BSD radio header */ +#define LINKTYPE_IEEE802_11_RADIOTAP 127 /* 802.11 plus radiotap radio metadata header */ /* * Reserved for the TZSP encapsulation, as per request from @@ -307,11 +307,8 @@ * including radio information: * * http://www.shaftnet.org/~pizza/software/capturefrm.txt - * - * but could and arguably should also be used by non-AVS Linux - * 802.11 drivers; that may happen in the future. */ -#define LINKTYPE_IEEE802_11_RADIO_AVS 163 /* 802.11 plus AVS radio header */ +#define LINKTYPE_IEEE802_11_AVS 163 /* 802.11 plus AVS radio metadata header */ /* * Juniper-private data link type, as per request from @@ -322,7 +319,7 @@ #define LINKTYPE_JUNIPER_MONITOR 164 /* - * Reserved for BACnet MS/TP. + * BACnet MS/TP frames. */ #define LINKTYPE_BACNET_MS_TP 165 @@ -850,7 +847,43 @@ */ #define LINKTYPE_IPOIB 242 -#define LINKTYPE_MATCHING_MAX 242 /* highest value in the "matching" range */ +/* + * MPEG-2 transport stream (ISO 13818-1/ITU-T H.222.0). + * + * Requested by Guy Martin <gmsoft@tuxicoman.be>. + */ +#define LINKTYPE_MPEG_2_TS 243 + +/* + * ng4T GmbH's UMTS Iub/Iur-over-ATM and Iub/Iur-over-IP format as + * used by their ng40 protocol tester. + * + * Requested by Jens Grimmer <jens.grimmer@ng4t.com>. + */ +#define LINKTYPE_NG40 244 + +/* + * Pseudo-header giving adapter number and flags, followed by an NFC + * (Near-Field Communications) Logical Link Control Protocol (LLCP) PDU, + * as specified by NFC Forum Logical Link Control Protocol Technical + * Specification LLCP 1.1. + * + * Requested by Mike Wakerly <mikey@google.com>. + */ +#define LINKTYPE_NFC_LLCP 245 + +/* + * pfsync output; DLT_PFSYNC is 18, which collides with DLT_CIP in + * SuSE 6.3, on OpenBSD, NetBSD, DragonFly BSD, and Mac OS X, and + * is 121, which collides with DLT_HHDLC, in FreeBSD. We pick a + * shiny new link-layer header type value that doesn't collide with + * anything, in the hopes that future pfsync savefiles, if any, + * won't require special hacks to distinguish from other savefiles. + * + */ +#define LINKTYPE_PFSYNC 246 + +#define LINKTYPE_MATCHING_MAX 246 /* highest value in the "matching" range */ static struct linktype_map { int dlt; @@ -866,11 +899,12 @@ static struct linktype_map { { DLT_AX25, LINKTYPE_AX25 }, { DLT_PRONET, LINKTYPE_PRONET }, { DLT_CHAOS, LINKTYPE_CHAOS }, - { DLT_IEEE802, LINKTYPE_TOKEN_RING }, + { DLT_IEEE802, LINKTYPE_IEEE802_5 }, { DLT_ARCNET, LINKTYPE_ARCNET_BSD }, { DLT_SLIP, LINKTYPE_SLIP }, { DLT_PPP, LINKTYPE_PPP }, { DLT_FDDI, LINKTYPE_FDDI }, + { DLT_SYMANTEC_FIREWALL, LINKTYPE_SYMANTEC_FIREWALL }, /* * These DLT_* codes have different values on different @@ -883,7 +917,6 @@ static struct linktype_map { { DLT_FR, LINKTYPE_FRELAY }, #endif - { DLT_SYMANTEC_FIREWALL, LINKTYPE_SYMANTEC_FIREWALL }, { DLT_ATM_RFC1483, LINKTYPE_ATM_RFC1483 }, { DLT_RAW, LINKTYPE_RAW }, { DLT_SLIP_BSDOS, LINKTYPE_SLIP_BSDOS }, @@ -923,6 +956,12 @@ dlt_to_linktype(int dlt) int i; /* + * Map DLT_PFSYNC, whatever it might be, to LINKTYPE_PFSYNC. + */ + if (dlt == DLT_PFSYNC) + return (LINKTYPE_PFSYNC); + + /* * Map the values in the matching range. */ if (dlt >= DLT_MATCHING_MIN && dlt <= DLT_MATCHING_MAX) @@ -950,6 +989,15 @@ linktype_to_dlt(int linktype) int i; /* + * Map LINKTYPE_PFSYNC to DLT_PFSYNC, whatever it might be. + * LINKTYPE_PFSYNC is in the matching range, to make sure + * it's as safe from reuse as we can arrange, so we do + * this test first. + */ + if (linktype == LINKTYPE_PFSYNC) + return (DLT_PFSYNC); + + /* * Map the values in the matching range. */ if (linktype >= LINKTYPE_MATCHING_MIN && |