Ipv4OptionTimestamp

Namespace inet

Ipv4OptionTimestamp

class

Option structure: Timestamp

Extends

Name Type Description
Ipv4Option (unknown -- not in documented files)

Fields

Name Type Description
type
flag TimestampFlag

length = 4 + 4 * getRecordAddressArraySize() + 4 * getRecordTimestampArraySize();

overflow short
nextIdx short

pointer = 5 + (flag == IP_TIMESTAMP_TIMESTAMP_ONLY ? 4 : 8) * nextIdx

recordAddress Ipv4Address[]

use either up to 4 addresses with timestamps or only up to 9 timestamps, according to the flag

recordTimestamp simtime_t[]

Source code

//
// Option structure: Timestamp
//
class Ipv4OptionTimestamp extends Ipv4Option
{
    type = IPOPTION_TIMESTAMP;
    // length = 4 + 4 * getRecordAddressArraySize() + 4 * getRecordTimestampArraySize();
    TimestampFlag flag;
    short overflow;
    short nextIdx;
    // pointer = 5 + (flag == IP_TIMESTAMP_TIMESTAMP_ONLY ? 4 : 8) * nextIdx

    // use either up to 4 addresses with timestamps or
    // only up to 9 timestamps, according to the flag
    Ipv4Address recordAddress[];
    simtime_t recordTimestamp[];
}

File: src/inet/networklayer/ipv4/Ipv4Header.msg