Myra Canyon  v0.0.1-768
network control
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Myra::L3_ARP Namespace Reference

Layer 3 is ARP. More...

Classes

struct  Header
 ARP header. More...
 

Enumerations

enum  Opcode {
  Opcode::Reserved = 0x0000,
  Opcode::Request = 0x0100,
  Opcode::Reply = 0x0200
}
 

Functions

Opcode get_opcode (const Header *header)
 Extract the Opcode from the ARP packet. More...
 
const Headerget_header (const uint8_t *ptr)
 Get the layer 3 ARP header. More...
 
const Headerget_header (const L2::Header *l2)
 Get the layer 3 ARP header. More...
 
bool is_request (const Opcode &opcode)
 Determine if the ARP packet represents a request or a reply. More...
 
bool is_reply (const Opcode &opcode)
 Determine if the ARP packet represents a request or a reply. More...
 
bool is_request (const Header *header)
 Determine if the ARP packet represents a request or a reply. More...
 
bool is_reply (const Header *header)
 Determine if the ARP packet represents a request or a reply. More...
 

Detailed Description

Layer 3 is ARP.

Enumeration Type Documentation

enum Myra::L3_ARP::Opcode
strong
See also
Myra::L3_ARP::Header::opcode
Enumerator
Reserved 

RFC 5494.

Request 

Host 0x0001, net 0x0100, RFC 826, RFC 5227.

Reply 

Host 0x0002, net 0x0200, RFC 826, RFC 1868, RFC 5227.

Function Documentation

const Header* Myra::L3_ARP::get_header ( const uint8_t *  ptr)
inline

Get the layer 3 ARP header.

Here is the caller graph for this function:

const Header* Myra::L3_ARP::get_header ( const L2::Header *  l2)
inline

Get the layer 3 ARP header.

Here is the call graph for this function:

Opcode Myra::L3_ARP::get_opcode ( const Header *  header)
inline

Extract the Opcode from the ARP packet.

Here is the caller graph for this function:

bool Myra::L3_ARP::is_reply ( const Opcode &  opcode)
inline

Determine if the ARP packet represents a request or a reply.

Here is the caller graph for this function:

bool Myra::L3_ARP::is_reply ( const Header *  header)
inline

Determine if the ARP packet represents a request or a reply.

Here is the call graph for this function:

bool Myra::L3_ARP::is_request ( const Opcode &  opcode)
inline

Determine if the ARP packet represents a request or a reply.

Here is the caller graph for this function:

bool Myra::L3_ARP::is_request ( const Header *  header)
inline

Determine if the ARP packet represents a request or a reply.

Here is the call graph for this function: