|
PcapPlusPlus
19.12
|
Go to the documentation of this file. 1 #ifndef PACKETPP_PPPOE_LAYER
2 #define PACKETPP_PPPOE_LAYER
23 #if (BYTE_ORDER == LITTLE_ENDIAN)
106 PPPoELayer(uint8_t version, uint8_t type,
PPPoELayer::PPPoECode code, uint16_t sessionId,
size_t additionalBytesToAllocate = 0);
163 virtual std::string
toString()
const;
246 memcpy(&result,
tagData + tagDataOffset,
sizeof(T));
261 memcpy(
tagData+tagDataOffset, &value,
sizeof(T));
380 mutable int m_TagCount;
382 PPPoETag* addTagAt(
PPPoETagTypes tagType, uint16_t tagLength,
const uint8_t* tagData,
int offset);
384 PPPoETag* castPtrToPPPoETag(uint8_t* ptr)
const;
386 std::string codeToString(
PPPoECode code)
const;
393 #define PCPP_PPP_PADDING 0x1
395 #define PCPP_PPP_ROHC_SCID 0x3
397 #define PCPP_PPP_ROHC_LCID 0x5
399 #define PCPP_PPP_IP 0x21
401 #define PCPP_PPP_OSI 0x23
403 #define PCPP_PPP_XNSIDP 0x25
405 #define PCPP_PPP_DEC4 0x27
407 #define PCPP_PPP_AT 0x29
409 #define PCPP_PPP_IPX 0x2b
411 #define PCPP_PPP_VJC_COMP 0x2d
413 #define PCPP_PPP_VJC_UNCOMP 0x2f
415 #define PCPP_PPP_BCP 0x31
417 #define PCPP_PPP_ST 0x33
419 #define PCPP_PPP_VINES 0x35
421 #define PCPP_PPP_AT_EDDP 0x39
423 #define PCPP_PPP_AT_SB 0x3b
425 #define PCPP_PPP_MP 0x3d
427 #define PCPP_PPP_NB 0x3f
429 #define PCPP_PPP_CISCO 0x41
431 #define PCPP_PPP_ASCOM 0x43
433 #define PCPP_PPP_LBLB 0x45
435 #define PCPP_PPP_RL 0x47
437 #define PCPP_PPP_SDTP 0x49
439 #define PCPP_PPP_LLC 0x4b
441 #define PCPP_PPP_SNA 0x4d
443 #define PCPP_PPP_IPV6HC 0x4f
445 #define PCPP_PPP_KNX 0x51
447 #define PCPP_PPP_ENCRYPT 0x53
449 #define PCPP_PPP_ILE 0x55
451 #define PCPP_PPP_IPV6 0x57
453 #define PCPP_PPP_MUX 0x59
455 #define PCPP_PPP_VSNP 0x5b
457 #define PCPP_PPP_TNP 0x5d
459 #define PCPP_PPP_RTP_FH 0x61
461 #define PCPP_PPP_RTP_CTCP 0x63
463 #define PCPP_PPP_RTP_CNTCP 0x65
465 #define PCPP_PPP_RTP_CUDP8 0x67
467 #define PCPP_PPP_RTP_CRTP8 0x69
469 #define PCPP_PPP_STAMPEDE 0x6f
471 #define PCPP_PPP_MPPLUS 0x73
473 #define PCPP_PPP_NTCITS_IPI 0xc1
475 #define PCPP_PPP_ML_SLCOMP 0xfb
477 #define PCPP_PPP_COMP 0xfd
479 #define PCPP_PPP_STP_HELLO 0x0201
481 #define PCPP_PPP_IBM_SR 0x0203
483 #define PCPP_PPP_DEC_LB 0x0205
485 #define PCPP_PPP_CDP 0x0207
487 #define PCPP_PPP_NETCS 0x0209
489 #define PCPP_PPP_STP 0x020b
491 #define PCPP_PPP_EDP 0x020d
493 #define PCPP_PPP_OSCP 0x0211
495 #define PCPP_PPP_OSCP2 0x0213
497 #define PCPP_PPP_LUXCOM 0x0231
499 #define PCPP_PPP_SIGMA 0x0233
501 #define PCPP_PPP_ACSP 0x0235
503 #define PCPP_PPP_MPLS_UNI 0x0281
505 #define PCPP_PPP_MPLS_MULTI 0x0283
507 #define PCPP_PPP_P12844 0x0285
509 #define PCPP_PPP_TETRA 0x0287
511 #define PCPP_PPP_MFTP 0x0289
513 #define PCPP_PPP_RTP_CTCPND 0x2063
515 #define PCPP_PPP_RTP_CS 0x2065
517 #define PCPP_PPP_RTP_CUDP16 0x2067
519 #define PCPP_PPP_RTP_CRDP16 0x2069
521 #define PCPP_PPP_CCCP 0x4001
523 #define PCPP_PPP_CDPD_MNRP 0x4003
525 #define PCPP_PPP_EXPANDAP 0x4005
527 #define PCPP_PPP_ODSICP 0x4007
529 #define PCPP_PPP_DOCSIS 0x4009
531 #define PCPP_PPP_CETACEANNDP 0x400b
533 #define PCPP_PPP_LZS 0x4021
535 #define PCPP_PPP_REFTEK 0x4023
537 #define PCPP_PPP_FC 0x4025
539 #define PCPP_PPP_EMIT 0x4027
541 #define PCPP_PPP_VSP 0x405b
543 #define PCPP_PPP_TLSP 0x405d
545 #define PCPP_PPP_IPCP 0x8021
547 #define PCPP_PPP_OSINLCP 0x8023
549 #define PCPP_PPP_XNSIDPCP 0x8025
551 #define PCPP_PPP_DECNETCP 0x8027
553 #define PCPP_PPP_ATCP 0x8029
555 #define PCPP_PPP_IPXCP 0x802b
557 #define PCPP_PPP_BRIDGENCP 0x8031
559 #define PCPP_PPP_SPCP 0x8033
561 #define PCPP_PPP_BVCP 0x8035
563 #define PCPP_PPP_MLCP 0x803d
565 #define PCPP_PPP_NBCP 0x803f
567 #define PCPP_PPP_CISCOCP 0x8041
569 #define PCPP_PPP_ASCOMCP 0x8043
571 #define PCPP_PPP_LBLBCP 0x8045
573 #define PCPP_PPP_RLNCP 0x8047
575 #define PCPP_PPP_SDCP 0x8049
577 #define PCPP_PPP_LLCCP 0x804b
579 #define PCPP_PPP_SNACP 0x804d
581 #define PCPP_PPP_IP6HCCP 0x804f
583 #define PCPP_PPP_KNXCP 0x8051
585 #define PCPP_PPP_ECP 0x8053
587 #define PCPP_PPP_ILECP 0x8055
589 #define PCPP_PPP_IPV6CP 0x8057
591 #define PCPP_PPP_MUXCP 0x8059
593 #define PCPP_PPP_VSNCP 0x805b
595 #define PCPP_PPP_TNCP 0x805d
597 #define PCPP_PPP_STAMPEDECP 0x806f
599 #define PCPP_PPP_MPPCP 0x8073
601 #define PCPP_PPP_IPICP 0x80c1
603 #define PCPP_PPP_SLCC 0x80fb
605 #define PCPP_PPP_CCP 0x80fd
607 #define PCPP_PPP_CDPCP 0x8207
609 #define PCPP_PPP_NETCSCP 0x8209
611 #define PCPP_PPP_STPCP 0x820b
613 #define PCPP_PPP_EDPCP 0x820d
615 #define PCPP_PPP_ACSPC 0x8235
617 #define PCPP_PPP_MPLSCP 0x8281
619 #define PCPP_PPP_P12844CP 0x8285
621 #define PCPP_PPP_TETRACP 0x8287
623 #define PCPP_PPP_MFTPCP 0x8289
625 #define PCPP_PPP_LCP 0xc021
627 #define PCPP_PPP_PAP 0xc023
629 #define PCPP_PPP_LQR 0xc025
631 #define PCPP_PPP_SPAP 0xc027
633 #define PCPP_PPP_CBCP 0xc029
635 #define PCPP_PPP_BACP 0xc02b
637 #define PCPP_PPP_BAP 0xc02d
639 #define PCPP_PPP_VSAP 0xc05b
641 #define PCPP_PPP_CONTCP 0xc081
643 #define PCPP_PPP_CHAP 0xc223
645 #define PCPP_PPP_RSAAP 0xc225
647 #define PCPP_PPP_EAP 0xc227
649 #define PCPP_PPP_SIEP 0xc229
651 #define PCPP_PPP_SBAP 0xc26f
653 #define PCPP_PPP_PRPAP 0xc281
655 #define PCPP_PPP_PRPAP2 0xc283
657 #define PCPP_PPP_PRPNIAP 0xc481
Definition: PPPoELayer.h:62
OsiModelLayer
Definition: ProtocolType.h:224
PPPoETag * getNextTag(PPPoETag *tag) const
Definition: PPPoELayer.h:197
Definition: PPPoELayer.h:189
bool removeTag(PPPoEDiscoveryLayer::PPPoETagTypes tagType)
uint16_t tagDataLength
Definition: PPPoELayer.h:229
Definition: ProtocolType.h:229
Definition: PPPoELayer.h:51
Definition: PPPoELayer.h:74
PPPoETagTypes
Definition: PPPoELayer.h:178
Definition: PPPoELayer.h:68
Definition: PPPoELayer.h:172
Definition: PPPoELayer.h:205
Definition: PPPoELayer.h:72
virtual void parseNextLayer()
Definition: PPPoELayer.h:207
Definition: PPPoELayer.h:80
uint8_t tagData[]
Definition: PPPoELayer.h:231
Definition: PPPoELayer.h:183
virtual size_t getHeaderLen() const
PPPoEDiscoveryLayer::PPPoETagTypes getType() const
Definition: PPPoELayer.h:222
PPPoETag * getFirstTag() const
Definition: ProtocolType.h:86
PPPoESessionLayer(uint8_t *data, size_t dataLen, Layer *prevLayer, Packet *packet)
Definition: PPPoELayer.h:126
T getTagDataAs(int tagDataOffset=0) const
Definition: PPPoELayer.h:243
PPPoETag * addTagAfter(PPPoETagTypes tagType, uint16_t tagLength, const uint8_t *tagData, PPPoETag *prevTag)
Definition: PPPoELayer.h:215
Definition: PPPoELayer.h:181
Definition: PPPoELayer.h:191
virtual void parseNextLayer()
Definition: PPPoELayer.h:370
virtual size_t getHeaderLen() const
Definition: PPPoELayer.h:161
Definition: PPPoELayer.h:211
Definition: PPPoELayer.h:115
uint16_t getPPPNextProtocol() const
Definition: PPPoELayer.h:193
PPPoECode
Definition: PPPoELayer.h:57
Definition: PPPoELayer.h:70
virtual std::string toString() const
Definition: PPPoELayer.h:377
PPPoEDiscoveryLayer(uint8_t *data, size_t dataLen, Layer *prevLayer, Packet *packet)
Definition: PPPoELayer.h:285
PPPoEDiscoveryLayer(const PPPoEDiscoveryLayer &other)
Definition: PPPoELayer.h:299
The main namespace for the PcapPlusPlus lib.
virtual std::string toString() const
Definition: PPPoELayer.h:201
Definition: PPPoELayer.h:64
void setTagData(T value, int tagDataOffset=0)
Definition: PPPoELayer.h:259
Definition: PPPoELayer.h:203
Definition: PPPoELayer.h:66
Definition: PPPoELayer.h:185
OsiModelLayer getOsiModelLayer() const
Definition: PPPoELayer.h:98
Definition: ProtocolType.h:91
virtual void computeCalculateFields()
PPPoETag * addTag(PPPoETagTypes tagType, uint16_t tagLength, const uint8_t *tagData)
void setPPPNextProtocol(uint16_t nextProtocol)
size_t getTagTotalSize() const
pppoe_header * getPPPoEHeader() const
Definition: PPPoELayer.h:89
PPPoESessionLayer(uint8_t version, uint8_t type, uint16_t sessionId, uint16_t pppNextProtocol)
Definition: PPPoELayer.h:135
PPPoEDiscoveryLayer(uint8_t version, uint8_t type, PPPoELayer::PPPoECode code, uint16_t sessionId)
Definition: PPPoELayer.h:294
Definition: PPPoELayer.h:76
PPPoETag * getTag(PPPoEDiscoveryLayer::PPPoETagTypes tagType) const
uint16_t tagType
Definition: PPPoELayer.h:227
Definition: PPPoELayer.h:195
Definition: PPPoELayer.h:187
Definition: PPPoELayer.h:213
Definition: PPPoELayer.h:60
Definition: PPPoELayer.h:209
Definition: PPPoELayer.h:199
Definition: PPPoELayer.h:78