|
|
The MD5PacketRouteEntry4 may appear as the first route entry in a RIPv2 packet. It has the same size as an PacketRouteEntry<IPv4>. The address family has the special value 0xffff which implies authentication. The authentication type is overlaid in the route tag field and takes the special value 3. With MD5 the authentication data appears after the remaining route entries. Details are disclosed in RFC2082.
All items in the route entry are stored in network order. The accessor methods provide values in host order, and the modifiers take arguments in host order.
NB We describe the field labelled as "RIP-2 Packet Length" on page 5 of RFC 2082 as the "auth_off". This matches the textual description in the RFC.
The MD5 authentication entry has the following content:
af (2 bytes): // 0xffff - Authentication header auth (2 bytes): // Authentication type auth_off (2 bytes): // Offset of authentication data key_id (1 byte): // Key number used auth_bytes (1 byte): // Auth data length at end of packet seqno (4 bytes): // Monotonically increasing seqno mbz (8 bytes): // Must-be-zero
MD5PacketRouteEntry4 (const uint8_t* data)
| MD5PacketRouteEntry4 |
static const size_t SIZE | SIZE |
size_t size ()
| size |
[static]
Get the RIP IPv4 MD5 authentication route entry size.
Returns: the RIP IPv4 MD5 authentication route entry size.
uint16_t addr_family ()
| addr_family |
[const]
uint16_t auth_type ()
| auth_type |
[const]
uint16_t auth_off ()
| auth_off |
[const]
uint8_t key_id ()
| key_id |
[const]
uint8_t auth_bytes ()
| auth_bytes |
[const]
uint32_t seqno ()
| seqno |
[const]
static const uint16_t ADDR_FAMILY | ADDR_FAMILY |
static const uint16_t AUTH_TYPE | AUTH_TYPE |
static const size_t _af_sizeof | _af_sizeof |
[protected]
static const size_t _auth_sizeof | _auth_sizeof |
[protected]
static const size_t _auth_off_sizeof | _auth_off_sizeof |
[protected]
static const size_t _key_id_sizeof | _key_id_sizeof |
[protected]
static const size_t _auth_bytes_sizeof | _auth_bytes_sizeof |
[protected]
static const size_t _seqno_sizeof | _seqno_sizeof |
[protected]
static const size_t _mbz_sizeof | _mbz_sizeof |
[protected]
static const size_t _af_offset | _af_offset |
[protected]
static const size_t _auth_offset | _auth_offset |
[protected]
static const size_t _auth_off_offset | _auth_off_offset |
[protected]
static const size_t _key_id_offset | _key_id_offset |
[protected]
static const size_t _auth_bytes_offset | _auth_bytes_offset |
[protected]
static const size_t _seqno_offset | _seqno_offset |
[protected]
static const size_t _mbz_offset | _mbz_offset |
[protected]