pcappp::DataLink Class Reference

#include <DataLink.h>

List of all members.

Public Types

enum  Type {
  NONE = -1,
  APPLE_IP_OVER_IEEE1394 = DLT_APPLE_IP_OVER_IEEE1394,
  AIRONET_HEADER = DLT_AIRONET_HEADER,
  ARCNET = DLT_ARCNET,
  ARCNET_LINUX = DLT_ARCNET_LINUX,
  A429 = DLT_A429,
  A653_ICM = DLT_A653_ICM,
  ATM_CLIP = DLT_ATM_CLIP,
  ATM_RFC1483 = DLT_ATM_RFC1483,
  AURORA = DLT_AURORA,
  AX25 = DLT_AX25,
  BACNET_MS_TP = DLT_BACNET_MS_TP,
  BLUETOOTH_HCI_H4 = DLT_BLUETOOTH_HCI_H4,
  BLUETOOTH_HCI_H4_WITH_PHDR = DLT_BLUETOOTH_HCI_H4_WITH_PHDR,
  BSD_LOOP = DLT_NULL,
  CAN20B = DLT_CAN20B,
  CHAOS = DLT_CHAOS,
  CISCO_IOS = DLT_CISCO_IOS,
  C_HDLC = DLT_C_HDLC,
  ECONET = DLT_ECONET,
  EN10MB = DLT_EN10MB,
  EN3MB = DLT_EN3MB,
  ENC = DLT_ENC,
  ERF = DLT_ERF,
  ERF_ETH = DLT_ERF_ETH,
  ERF_POS = DLT_ERF_POS,
  DOCSIS = DLT_DOCSIS,
  FDDI = DLT_FDDI,
  FRELAY = DLT_FRELAY,
  GCOM_T1E1 = DLT_GCOM_T1E1,
  GCOM_SERIAL = DLT_GCOM_SERIAL,
  GPF_F = DLT_GPF_F,
  GPF_T = DLT_GPF_T,
  GPRS_LLC = DLT_GPRS_LLC,
  HHDLC = DLT_HHDLC,
  IBM_SN = DLT_IBM_SN,
  IBM_SP = DLT_IBM_SP,
  IEEE802 = DLT_IEEE802,
  IEEE802_11 = DLT_IEEE802_11,
  IEEE802_11_RADIO = DLT_IEEE802_11_RADIO,
  IEEE802_11_RADIO_AVS = DLT_IEEE802_11_RADIO_AVS,
  IEEE802_15_4 = DLT_IEEE802_15_4,
  IEEE802_15_4_LINUX = DLT_IEEE802_15_4_LINUX,
  IEEE802_16_MAC_CPS = DLT_IEEE802_16_MAC_CPS,
  IEEE802_16_MAC_CPS_RADIO = DLT_IEEE802_16_MAC_CPS_RADIO,
  IP_OVER_FC = DLT_IP_OVER_FC,
  IPFILTER = DLT_IPFILTER,
  IPMB = DLT_IPMB,
  JUNIPER_ATM1 = DLT_JUNIPER_ATM1,
  JUNIPER_ATM2 = DLT_JUNIPER_ATM2,
  JUNIPER_CHDLC = DLT_JUNIPER_CHDLC,
  JUNIPER_ES = DLT_JUNIPER_ES,
  JUNIPER_ETHER = DLT_JUNIPER_ETHER,
  JUNIPER_FRELAY = DLT_JUNIPER_FRELAY,
  JUNIPER_GGSN = DLT_JUNIPER_GGSN,
  JUNIPER_ISM = DLT_JUNIPER_ISM,
  JUNIPER_MFR = DLT_JUNIPER_MFR,
  JUNIPER_MLFR = DLT_JUNIPER_MLFR,
  JUNIPER_MLPPP = DLT_JUNIPER_MLPPP,
  JUNIPER_MONITOR = DLT_JUNIPER_MONITOR,
  JUNIPER_PIC_PEER = DLT_JUNIPER_PIC_PEER,
  JUNIPER_PPP = DLT_JUNIPER_PPP,
  JUNIPER_PPPOE = DLT_JUNIPER_PPPOE,
  JUNIPER_PPPOE_ATM = DLT_JUNIPER_PPPOE_ATM,
  JUNIPER_SERVICES = DLT_JUNIPER_SERVICES,
  JUNIPER_ST = DLT_JUNIPER_ST,
  LINUX_IRDA = DLT_LINUX_IRDA,
  LINUX_LAPD = DLT_LINUX_LAPD,
  LINUX_SLL = DLT_LINUX_SLL,
  LOOP = DLT_LOOP,
  LTALK = DLT_LTALK,
  MFR = DLT_MFR,
  MTP2 = DLT_MTP2,
  MTP2_WITH_PHDR = DLT_MTP2_WITH_PHDR,
  MTP3 = DLT_MTP3,
  PCI_EXP = DLT_PCI_EXP,
  PFLOG = DLT_PFLOG,
  PPI = DLT_PPI,
  PPP = DLT_PPP,
  PPP_BSDOS = DLT_PPP_BSDOS,
  PPP_PPPD = DLT_PPP_PPPD,
  PPP_SERIAL = DLT_PPP_SERIAL,
  PPP_ETHER = DLT_PPP_ETHER,
  PRISM_HEADER = DLT_PRISM_HEADER,
  PRONET = DLT_PRONET,
  RAIF1 = DLT_RAIF1,
  RAW = DLT_RAW,
  REDBACK_SMARTEDGE = DLT_REDBACK_SMARTEDGE,
  RIO = DLT_RIO,
  SCCP = DLT_SCCP,
  SITA = DLT_SITA,
  SLIP = DLT_SLIP,
  SLIP_BSDOS = DLT_SLIP_BSDOS,
  SUNATM = DLT_SUNATM,
  SYMANTEC_FIREWALL = DLT_SYMANTEC_FIREWALL,
  TZSP = DLT_TZSP,
  USB = DLT_USB,
  USB_LINUX = DLT_USB_LINUX
}
 Link layer type. More...

Public Member Functions

 DataLink (DataLink const &datalink)
 Creates a DataLink object as a copy of another.
 DataLink (Type type=NONE)
 Creates a DataLink object.
std::string get_description () const
 Gets the description of the DataLink.
Type get_type () const
 Gets the Type of the DataLink.
DataLinkoperator= (DataLink const &datalink)
 Assign another DataLink object's contents to this one.
 ~DataLink ()
 Destroys a DataLink object.


Member Enumeration Documentation

Link layer type.

See the man page of pcap(3) for more information

Enumerator:
NONE  No type (used for unitialized DataLink's).
APPLE_IP_OVER_IEEE1394  Apple IP-over-IEEE 1394.
AIRONET_HEADER  Reserved for Aironet 802.11 cards.
ARCNET  ARCNET (Attached Resource Computer NETwork).
ARCNET_LINUX  ARCNET, with no exception frames.
A429  Arinc 429.
A653_ICM  Arinc 653 Interpartition Communication.
ATM_CLIP  Linux classical IP-over-ATM.
ATM_RFC1483  RFC 1483 LLC/SNAP-encapsulated ATM.
AURORA  Xilinx Aurora link layer.
AX25  Amateur radio AX.25.
BACNET_MS_TP  BACnet MS/TP.
BLUETOOTH_HCI_H4  Bluetooth HCI UART transport layer.
BLUETOOTH_HCI_H4_WITH_PHDR  Bluetooth HCI UART transport layer (part H:4), with pseudo-header
BSD_LOOP  BSD loopback encapsulation (libpcap's DLT_NULL).
CAN20B  Controller Area Network (CAN) v. 2.0B.
CHAOS  Chaos.
CISCO_IOS  Cisco-internal use.
C_HDLC  Cisco PPP with HDLC framing, as per section 4.3.1 of RFC 1547.
ECONET  Acorn Econet.
EN10MB  Ethernet (10Mb, 100Mb, 1000Mb, and up).
EN3MB  Experimental ethernet (3Mb).
ENC  OpenBSD encapsulated IP.
ERF  Endace.
ERF_ETH  Ethernet with Endace ERF header.
ERF_POS  Packet-over-SONET with Endace ERF header.
DOCSIS  DOCSIS.
FDDI  FDDI (Fiber Distributed Data interface).
FRELAY  Frame Relay.
GCOM_T1E1  Gcom's T1/E1 line monitoring equipment.
GCOM_SERIAL  Gcom's T1/E1 line monitoring equipment.
GPF_F  GPF-F.
GPF_T  GPF-T.
GPRS_LLC  GPRS LLC.
HHDLC  Siemens HiPath HDLC.
IBM_SN  IBM Next Federation switch.
IBM_SP  IBM SP switch.
IEEE802  IEEE 802.5 Token Ring.
IEEE802_11  IEEE 802.11 wireless LAN.
IEEE802_11_RADIO  Link-layer information followed by an 802.11 header.
IEEE802_11_RADIO_AVS  802.11 plus AVS radio information header
IEEE802_15_4  IEEE 802.15.4, exactly as it appears in the spec (no padding, no nothing)
IEEE802_15_4_LINUX  IEEE 802.15.4, with address fields padded.
IEEE802_16_MAC_CPS  IEEE 802.16 MAC Common Part Sublayer.
IEEE802_16_MAC_CPS_RADIO  802.16 MAC Common Part Sublayer plus a radiotap radio header
IP_OVER_FC  IP-over-Fibre Channel, with the link-layer header being the Network_Header as described in RFC 2625
IPFILTER  Reserved for use with OpenBSD ipfilter.
IPMB  IPMB packet for IPMI, beginning with the I2C slave address.
JUNIPER_ATM1  Juniper ATM1 PIC.
JUNIPER_ATM2  Juniper ATM2 PIC.
JUNIPER_CHDLC  Juniper Cisco HDLC.
JUNIPER_ES  Juniper Encryption Services PIC.
JUNIPER_ETHER  Juniper Ethernet.
JUNIPER_FRELAY  Juniper Frame Relay.
JUNIPER_GGSN  Juniper GGSN PIC.
JUNIPER_ISM  Juniper-private data link type.
JUNIPER_MFR  Juniper FRF.16 Frame Relay.
JUNIPER_MLFR  Juniper Multi-Link Frame Relay.
JUNIPER_MLPPP  Juniper Multi-Link PPP.
JUNIPER_MONITOR  Juniper Passive Monitor PIC.
JUNIPER_PIC_PEER  Juniper PIC Peer.
JUNIPER_PPP  Juniper PPP.
JUNIPER_PPPOE  Juniper PPPoE.
JUNIPER_PPPOE_ATM  Juniper PPPoE/ATM.
JUNIPER_SERVICES  Juniper Advanced Services PIC.
JUNIPER_ST  Juniper-private data link type.
LINUX_IRDA  Linux-IrDA packets, with a DLT_LINUX_SLL header followed by the IrLAP header
LINUX_LAPD  LAPD (Q.921) frames, with a DLT_LINUX_SLL header captured via vISDN
LINUX_SLL  Linux "cooked" capture encapsulation.
LOOP  OpenBSD loopback encapsulation.
LTALK  Apple LocalTalk. The packet begins with an AppleTalk LLAP header.
MFR  FRF.16 Frame Relay.
MTP2  SS7 MTP2.
MTP2_WITH_PHDR  SS7 MTP2 with Pseudo-header.
MTP3  SS7 MTP3.
PCI_EXP  PCI Express.
PFLOG  OpenBSD pflog.
PPI  Per Packet Information encapsulated packets.
PPP  PPP (Point to Point Protocol).
PPP_BSDOS  BSD/OS PPP.
PPP_PPPD  PPP for pppd, with direction flag.
PPP_SERIAL  PPP in HDLC-like framing, as per RFC 1662, or Cisco PPP with HDLC framing, as per section 4.3.1 of RFC 1547
PPP_ETHER  PPPoE (Point-to-Point Protocol over Ethernet), as per RFC 2516.
PRISM_HEADER  Prism monitor mode information followed by an 802.11 header.
PRONET  Proteon ProNET token ring.
RAIF1 
RAW  Raw IP. The packet begins with an IP header.
REDBACK_SMARTEDGE  Redback SmartEdge 400/800.
RIO  RapidIO.
SCCP  SCCP, without pseudo-header or MTP2 or MTP3.
SITA  SITA.
SLIP  SLIP (Serial Line Internet Protocol).
SLIP_BSDOS  BSD/OS SLIP.
SUNATM  SunATM devices.
SYMANTEC_FIREWALL  Symantec firewall.
TZSP  Tazmen Sniffer Protocol.
USB  USB packets, beginning with a USB setup header.
USB_LINUX  USB packets, beginning with a Linux USB header.


Constructor & Destructor Documentation

pcappp::DataLink::DataLink ( Type  type = NONE  )  [inline]

Creates a DataLink object.

Parameters:
type The Type of the link layer, or DataLink::NONE to create an unitialized DataLink

pcappp::DataLink::DataLink ( DataLink const &  datalink  )  [inline]

Creates a DataLink object as a copy of another.

pcappp::DataLink::~DataLink (  )  [inline]

Destroys a DataLink object.


Member Function Documentation

std::string pcappp::DataLink::get_description (  )  const [inline]

Gets the description of the DataLink.

Type pcappp::DataLink::get_type (  )  const [inline]

Gets the Type of the DataLink.

DataLink& pcappp::DataLink::operator= ( DataLink const &  datalink  )  [inline]

Assign another DataLink object's contents to this one.


The documentation for this class was generated from the following file:

Generated on Tue Apr 15 17:36:29 2008 for libpcap++ by  doxygen 1.5.5