INET Framework for OMNeT++/OMNEST
IPDatagram_m.h File Reference
#include <omnetpp.h>
#include "IPAddress.h"
#include "IPProtocolId_m.h"

Go to the source code of this file.

Classes

class  IPRecordRouteOption
class  IPTimestampOption
class  IPSourceRoutingOption
class  IPDatagram

Defines

#define MSGC_VERSION   0x0402

Enumerations

enum  IPOptionClass { IPOPTION_CLASS_CONTROL = 0, IPOPTION_CLASS_RESERVED = 1, IPOPTION_CLASS_DEBUGGING = 2, IPOPTION_CLASS_RESERVED2 = 3 }
enum  IPOption {
  IPOPTION_END_OF_OPTIONS = 0, IPOPTION_NO_OPTION = 1, IPOPTION_SECURITY = 2, IPOPTION_LOOSE_SOURCE_ROUTING = 3,
  IPOPTION_TIMESTAMP = 4, IPOPTION_RECORD_ROUTE = 7, IPOPTION_STREAM_ID = 8, IPOPTION_STRICT_SOURCE_ROUTING = 9,
  IPOPTION_ROUTER_ALERT = 20
}
enum  TimestampFlag { IP_TIMESTAMP_TIMESTAMP_ONLY = 0, IP_TIMESTAMP_WITH_ADDRESS = 1, IP_TIMESTAMP_SENDER_INIT_ADDRESS = 3 }

Functions

void doPacking (cCommBuffer *b, IPRecordRouteOption &obj)
void doUnpacking (cCommBuffer *b, IPRecordRouteOption &obj)
void doPacking (cCommBuffer *b, IPTimestampOption &obj)
void doUnpacking (cCommBuffer *b, IPTimestampOption &obj)
void doPacking (cCommBuffer *b, IPSourceRoutingOption &obj)
void doUnpacking (cCommBuffer *b, IPSourceRoutingOption &obj)
void doPacking (cCommBuffer *b, IPDatagram &obj)
void doUnpacking (cCommBuffer *b, IPDatagram &obj)

Variables

const int IP_HEADER_BYTES = 20
const int IP_MAX_HEADER_BYTES = 60
const unsigned int MAX_IPADDR_OPTION_ENTRIES = 9
const unsigned int MAX_TIMESTAMP_OPTION_ENTRIES = 4

Define Documentation

#define MSGC_VERSION   0x0402

Definition at line 11 of file IPDatagram_m.h.


Enumeration Type Documentation

enum IPOption

Enum generated from networklayer/ipv4/IPDatagram.msg by opp_msgc.

 enum IPOption
 {
     IPOPTION_END_OF_OPTIONS = 0;
     IPOPTION_NO_OPTION = 1;
     IPOPTION_SECURITY = 2;
     IPOPTION_LOOSE_SOURCE_ROUTING = 3;
     IPOPTION_TIMESTAMP = 4;
     IPOPTION_RECORD_ROUTE = 7;
     IPOPTION_STREAM_ID = 8;
     IPOPTION_STRICT_SOURCE_ROUTING = 9;
     IPOPTION_ROUTER_ALERT = 20;
 };
 
Enumerator:
IPOPTION_END_OF_OPTIONS 
IPOPTION_NO_OPTION 
IPOPTION_SECURITY 
IPOPTION_LOOSE_SOURCE_ROUTING 
IPOPTION_TIMESTAMP 
IPOPTION_RECORD_ROUTE 
IPOPTION_STREAM_ID 
IPOPTION_STRICT_SOURCE_ROUTING 
IPOPTION_ROUTER_ALERT 

Definition at line 69 of file IPDatagram_m.h.

Enum generated from networklayer/ipv4/IPDatagram.msg by opp_msgc.

 enum IPOptionClass
 {
     IPOPTION_CLASS_CONTROL = 0;
     IPOPTION_CLASS_RESERVED = 1;
     IPOPTION_CLASS_DEBUGGING = 2;
     IPOPTION_CLASS_RESERVED2 = 3;
 };
 
Enumerator:
IPOPTION_CLASS_CONTROL 
IPOPTION_CLASS_RESERVED 
IPOPTION_CLASS_DEBUGGING 
IPOPTION_CLASS_RESERVED2 

Definition at line 45 of file IPDatagram_m.h.

Enum generated from networklayer/ipv4/IPDatagram.msg by opp_msgc.

 enum TimestampFlag
 {
     IP_TIMESTAMP_TIMESTAMP_ONLY = 0;
     IP_TIMESTAMP_WITH_ADDRESS = 1;
     IP_TIMESTAMP_SENDER_INIT_ADDRESS = 3;
 }
 
Enumerator:
IP_TIMESTAMP_TIMESTAMP_ONLY 
IP_TIMESTAMP_WITH_ADDRESS 
IP_TIMESTAMP_SENDER_INIT_ADDRESS 

Definition at line 92 of file IPDatagram_m.h.


Function Documentation

void doPacking ( cCommBuffer *  b,
IPRecordRouteOption obj 
) [inline]

Definition at line 139 of file IPDatagram_m.h.

{obj.parsimPack(b);}
void doPacking ( cCommBuffer *  b,
IPTimestampOption obj 
) [inline]

Definition at line 199 of file IPDatagram_m.h.

{obj.parsimPack(b);}
void doPacking ( cCommBuffer *  b,
IPSourceRoutingOption obj 
) [inline]

Definition at line 247 of file IPDatagram_m.h.

{obj.parsimPack(b);}
void doPacking ( cCommBuffer *  b,
IPDatagram obj 
) [inline]

Definition at line 350 of file IPDatagram_m.h.

{obj.parsimPack(b);}
void doUnpacking ( cCommBuffer *  b,
IPRecordRouteOption obj 
) [inline]

Definition at line 140 of file IPDatagram_m.h.

{obj.parsimUnpack(b);}
void doUnpacking ( cCommBuffer *  b,
IPTimestampOption obj 
) [inline]

Definition at line 200 of file IPDatagram_m.h.

{obj.parsimUnpack(b);}
void doUnpacking ( cCommBuffer *  b,
IPSourceRoutingOption obj 
) [inline]

Definition at line 248 of file IPDatagram_m.h.

{obj.parsimUnpack(b);}
void doUnpacking ( cCommBuffer *  b,
IPDatagram obj 
) [inline]

Definition at line 351 of file IPDatagram_m.h.

{obj.parsimUnpack(b);}

Variable Documentation

const int IP_HEADER_BYTES = 20

Definition at line 21 of file IPDatagram_m.h.

Referenced by IP::encapsulate(), IPSerializer::parse(), and IPSerializer::serialize().

const int IP_MAX_HEADER_BYTES = 60

Definition at line 24 of file IPDatagram_m.h.

const unsigned int MAX_IPADDR_OPTION_ENTRIES = 9

Definition at line 27 of file IPDatagram_m.h.

const unsigned int MAX_TIMESTAMP_OPTION_ENTRIES = 4

Definition at line 28 of file IPDatagram_m.h.