Protocol++® (Protocolpp®)  v5.6.2
ProtocolPP::jgresa Class Reference
Inheritance diagram for ProtocolPP::jgresa:
Collaboration diagram for ProtocolPP::jgresa:

Public Member Functions

 jgresa ()
 Standard constructor.
 
 jgresa (direction_t dir, protocol_t prot, bool cbit, bool kbit, bool sbit, uint8_t ver, uint16_t protype, uint32_t key, uint8_t flowid=0)
 
 jgresa (jgresa &rhs)
 standard copy constructor
 
 jgresa (std::shared_ptr< jgresa > &rhs)
 standard copy constructor from shared pointer
 
virtual ~jgresa ()
 Default deconstructor.
 
template<typename T >
void set_field (field_t field, T fieldval)
 
template<typename T >
get_field (field_t field)
 
void to_xml (tinyxml2::XMLPrinter &myxml, direction_t direction)
 
void to_json (std::ofstream &myjson, direction_t direction, std::string &indent)
 
 jgresa (const jgresa &)=delete
 
- Public Member Functions inherited from ProtocolPP::jsecass
 jsecass ()
 
virtual ~jsecass ()=default
 Standard deconstructor.
 
 jsecass (jsecass &jsecass)=delete
 
 jsecass (const jsecass &jsecass)=delete
 

Constructor & Destructor Documentation

◆ jgresa()

ProtocolPP::jgresa::jgresa ( direction_t  dir,
protocol_t  prot,
bool  cbit,
bool  kbit,
bool  sbit,
uint8_t  ver,
uint16_t  protype,
uint32_t  key,
uint8_t  flowid = 0 
)

Constructor to support GRE, PPTP GRE, and NVGRE

Parameters
dir- Direction of processing (ENCAP or DECAP)
prot- Protocol to encapsulate (GRE or NVGRE)
cbit- Indicates checksum is present in header
kbit- Indicates key is present in header
sbit- Indicates seqnum is present in header
ver- Version of GRE
protype- Type of GRE protocol
key- Key field
flowid- used in NVGRE to add entropy to the host

Member Function Documentation

◆ get_field()

template<typename T >
T ProtocolPP::jgresa::get_field ( field_t  field)

Retrieve the value of the field

Parameters
field- field to retrieve
Returns
current value of the field

◆ set_field()

template<typename T >
void ProtocolPP::jgresa::set_field ( field_t  field,
fieldval 
)

Set the specified field with a new value

Parameters
field- field to set
fieldval- new value for the field

◆ to_json()

void ProtocolPP::jgresa::to_json ( std::ofstream &  myjson,
direction_t  direction,
std::string &  indent 
)
virtual

print the protocol and security objects as JSON

Parameters
myjson- object to print to
direction- randomization
indent- indentation for JSON output

Implements ProtocolPP::jsecass.

◆ to_xml()

void ProtocolPP::jgresa::to_xml ( tinyxml2::XMLPrinter myxml,
direction_t  direction 
)
virtual

print the protocol and security objects as XML

Parameters
myxml- object to print to
direction- randomization

Implements ProtocolPP::jsecass.


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