Moep Library  2.0-nc
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Groups
Moep Header Extension

The Moep Header Extension API is used to create, manipulate and delete moep extension headers. More...

Files

file  moep_hdr_ext.h
 

Data Structures

struct  moep_hdr_ext
 
struct  moep_hdr_pctrl
 

Macros

#define MOEP_HDR_NEXTHDR_PRESENT   0x40
 
#define MOEP_HDR_MASK   (MOEP_HDR_NEXTHDR_PRESENT - 1)
 

Enumerations

enum  moep_hdr_type { MOEP_HDR_INVALID = 0x00, MOEP_HDR_PCTRL, MOEP_HDR_VENDOR_MIN = 0x20, MOEP_HDR_COUNT = MOEP_HDR_MASK + 1 }
 

Functions

struct moep_hdr_extmoep_frame_moep_hdr_ext (moep_frame_t frame, enum moep_hdr_type type)
 moep header extension More...
 
struct moep_hdr_extmoep_frame_add_moep_hdr_ext (moep_frame_t frame, enum moep_hdr_type type, size_t len)
 add a moep header extension More...
 
struct moep_hdr_extmoep_frame_set_moep_hdr_ext (moep_frame_t frame, struct moep_hdr_ext *ext)
 set a moep header extension More...
 
int moep_frame_del_moep_hdr_ext (moep_frame_t frame, enum moep_hdr_type type)
 delete a moep header extension More...
 

Detailed Description

The Moep Header Extension API is used to create, manipulate and delete moep extension headers.

Function Documentation

struct moep_hdr_ext* moep_frame_moep_hdr_ext ( moep_frame_t  frame,
enum moep_hdr_type  type 
)

moep header extension

The function moep_frame_moep_hdr_ext() is used to get a moep header extension of a frame.

Parameters
framethe frame
typethe type of the header extension
Returns
This function returns the moep header extension.
Return values
NULLon error (errno is set appropriately) or if the specified header extension is not set.
Errors
EACCESThe frame is not a moep frame.
EINVALThe parameter type is not a valid moep header extension type.
ENOMEMNot enough memory available
struct moep_hdr_ext* moep_frame_add_moep_hdr_ext ( moep_frame_t  frame,
enum moep_hdr_type  type,
size_t  len 
)

add a moep header extension

The function moep_frame_add_moep_hdr_ext() is used to add a moep header extension to a frame. Any previous header extension of the same type is removed.

Parameters
framethe frame
typethe type of the header extension
lenthe len of the header extension
Returns
This function returns the new moep header extension.
Return values
NULLon error, errno is set appropriately.
Errors
EACCESThe frame is not a moep frame.
EINVALThe parameter type is not a valid moep header extension type.
ENOMEMNot enough memory available
struct moep_hdr_ext* moep_frame_set_moep_hdr_ext ( moep_frame_t  frame,
struct moep_hdr_ext ext 
)

set a moep header extension

The function moep_frame_set_moep_hdr_ext() is used to add a moep header extension to a frame. Any previous header extension of the same type is removed. The content of the header extension is copied to an internal buffer so that ext does not need to be preserved.

Parameters
framethe frame
exta pointer to the header extension
Returns
This function returns the new moep header extension.
Return values
NULLon error, errno is set appropriately.
Errors
EACCESThe frame is not a moep frame.
EINVALInvalid argument
ENOMEMNot enough memory available
int moep_frame_del_moep_hdr_ext ( moep_frame_t  frame,
enum moep_hdr_type  type 
)

delete a moep header extension

The function moep_frame_del_moep_hdr_ext() is used to remove a moep header extension from a frame.

Parameters
framethe frame
typethe type of the header extension
Return values
0on success
-1on error, errno is set appropriately.
Errors
EACCESThe frame is not a moep frame.
EINVALThe parameter type is not a valid moep header extension type.
ENOMEMNot enough memory available