INET Framework for OMNeT++/OMNEST
inet::PppProtocolDissector Class Reference

#include <PppProtocolDissector.h>

Inheritance diagram for inet::PppProtocolDissector:
inet::ProtocolDissector

Public Member Functions

virtual void dissect (Packet *packet, const Protocol *protocol, ICallback &callback) const override
 Dissects the packet according to the protocol implemented by this ProtocolDissector. More...
 

Member Function Documentation

◆ dissect()

void inet::PppProtocolDissector::dissect ( Packet packet,
const Protocol protocol,
ICallback callback 
) const
overridevirtual

Dissects the packet according to the protocol implemented by this ProtocolDissector.

Implements inet::ProtocolDissector.

20 {
21  callback.startProtocolDataUnit(&Protocol::ppp);
22  const auto& header = packet->popAtFront<PppHeader>();
23  const auto& trailer = packet->popAtBack<PppTrailer>(PPP_TRAILER_LENGTH);
24  callback.visitChunk(header, &Protocol::ppp);
25  auto payloadProtocol = ProtocolGroup::pppprotocol.findProtocol(header->getProtocol());
26  callback.dissectPacket(packet, payloadProtocol);
27  callback.visitChunk(trailer, &Protocol::ppp);
28  callback.endProtocolDataUnit(&Protocol::ppp);
29 }

The documentation for this class was generated from the following files:
inet::ProtocolGroup::findProtocol
const Protocol * findProtocol(int protocolNumber) const
Definition: ProtocolGroup.cc:25
inet::Protocol::ppp
static const Protocol ppp
Definition: Protocol.h:104
inet::PPP_TRAILER_LENGTH
const B PPP_TRAILER_LENGTH
Definition: PppFrame_m.h:47
inet::ProtocolGroup::pppprotocol
static ProtocolGroup pppprotocol
Definition: ProtocolGroup.h:43