Revised OpenFlow Library  v0.6.0dev
 All Classes Files Functions Variables Friends Groups Pages
Public Member Functions | Friends | List of all members
rofl::openflow::coxmatch Class Reference

Public Member Functions

 coxmatch (uint32_t oxm_id)
 
 coxmatch (uint8_t *oxm_hdr, size_t oxm_len)
 
 coxmatch (uint32_t oxm_id, uint8_t value)
 
 coxmatch (uint32_t oxm_id, uint8_t value, uint8_t mask)
 
 coxmatch (uint32_t oxm_id, uint16_t value)
 
 coxmatch (uint32_t oxm_id, uint16_t value, uint16_t mask)
 
 coxmatch (uint32_t oxm_id, uint32_t value)
 
 coxmatch (uint32_t oxm_id, uint32_t value, uint32_t mask)
 
 coxmatch (uint32_t oxm_id, uint64_t value)
 
 coxmatch (uint32_t oxm_id, uint64_t value, uint64_t mask)
 
 coxmatch (uint32_t oxm_id, rofl::caddress_in4 const &value)
 
 coxmatch (uint32_t oxm_id, rofl::caddress_in4 const &value, rofl::caddress_in4 const &mask)
 
 coxmatch (uint32_t oxm_id, rofl::caddress_in6 const &value)
 
 coxmatch (uint32_t oxm_id, rofl::caddress_in6 const &value, rofl::caddress_in6 const &mask)
 
 coxmatch (uint32_t oxm_id, rofl::cmacaddr const &value)
 
 coxmatch (uint32_t oxm_id, rofl::cmacaddr const &value, rofl::cmacaddr const &mask)
 
 coxmatch (coxmatch const &oxm)
 
coxmatchoperator= (coxmatch const &oxm)
 
bool operator== (coxmatch const &oxm) const
 
bool operator!= (coxmatch const &oxm) const
 
bool operator< (coxmatch const &oxm)
 
virtual void clear ()
 
virtual size_t length () const
 
virtual void pack (uint8_t *buf, size_t buflen)
 Copies content of this cmemory instance to specified buffer.
 
virtual void unpack (uint8_t *buf, size_t buflen)
 Copies content of specified buffer into this cmemory instance .
 
void set_oxm_id (uint32_t oxm_id)
 
uint32_t get_oxm_id () const
 
void set_oxm_class (uint16_t oxm_class)
 
uint16_t get_oxm_class () const
 
void set_oxm_field (uint8_t oxm_field)
 
uint8_t get_oxm_field () const
 
void set_oxm_hasmask (bool oxm_hasmask)
 
bool get_oxm_hasmask () const
 
void set_oxm_length (uint8_t oxm_len)
 
uint8_t get_oxm_length ()
 
uint8_t get_u8value () const
 
uint8_t get_u8mask () const
 
uint8_t get_u8masked_value () const
 
uint16_t get_u16value () const
 
uint16_t get_u16mask () const
 
uint16_t get_u16masked_value () const
 
uint32_t get_u32value () const
 
uint32_t get_u32mask () const
 
uint32_t get_u32masked_value () const
 
rofl::caddress_in4 get_u32value_as_addr () const
 
rofl::caddress_in4 get_u32mask_as_addr () const
 
rofl::caddress_in4 get_u32masked_value_as_addr () const
 
rofl::cmacaddr get_u48value () const
 
rofl::cmacaddr get_u48mask () const
 
rofl::cmacaddr get_u48masked_value () const
 
uint64_t get_u64value () const
 
uint64_t get_u64mask () const
 
uint64_t get_u64masked_value () const
 
rofl::caddress_in6 get_u128value () const
 
rofl::caddress_in6 get_u128mask () const
 
rofl::caddress_in6 get_u128masked_value () const
 
void set_u8value (uint8_t value)
 
void set_u8mask (uint8_t mask)
 
void set_u16value (uint16_t value)
 
void set_u16mask (uint16_t mask)
 
void set_u32value (uint32_t value)
 
void set_u32mask (uint32_t mask)
 
void set_u32value (rofl::caddress_in4 const &addr)
 
void set_u32mask (rofl::caddress_in4 const &mask)
 
void set_u48value (rofl::cmacaddr const &addr)
 
void set_u48mask (rofl::cmacaddr const &mask)
 
void set_u64value (uint64_t value)
 
void set_u64mask (uint64_t mask)
 
void set_u128value (rofl::caddress_in6 const &addr)
 
void set_u128mask (rofl::caddress_in6 const &mask)
 
- Public Member Functions inherited from rofl::cmemory
 cmemory (size_t len=CMEMORY_DEFAULT_SIZE)
 Constructor. Allocates a new memory area with specified size (default: 1024 bytes). More...
 
 cmemory (uint8_t *data, size_t datalen)
 Constructor. Allocates a new memory area and clones specified buffer. More...
 
 cmemory (cmemory const &m)
 Copy constructor. More...
 
virtual ~cmemory ()
 Destructor. Calls C-function free() for allocated memory area.
 
cmemoryoperator= (cmemory const &m)
 Assignment operator. More...
 
uint8_t & operator[] (size_t index) const
 Index operator. More...
 
bool operator== (cmemory const &m) const
 Comparison operator. More...
 
bool operator!= (cmemory const &m) const
 Comparison operator (unequal). More...
 
bool operator< (cmemory const &m) const
 Less than operator. More...
 
bool operator> (cmemory const &m) const
 Less than operator. More...
 
cmemory operator& (cmemory const &m) const
 AND operator. More...
 
cmemoryoperator+= (cmemory const &m)
 Append operator with assignment to this cmemory instance. More...
 
cmemory operator+ (cmemory const &m)
 Append operator with assignment to temporary cmemory instance. More...
 
uint8_t * somem () const
 Returns pointer to start of allocated memory area.
 
size_t memlen () const
 Returns length of allocated memory area.
 
virtual void assign (uint8_t *buf, size_t buflen)
 Overwrites memory area with plain buffer specified. Resizes internal memory as necessary. More...
 
virtual uint8_t * resize (size_t len)
 Resizes allocated memory area by calling C-function realloc(). More...
 
uint8_t * insert (uint8_t *ptr, size_t len)
 Inserts len bytes at pointer ptr into allocated memory area. More...
 
uint8_t * insert (unsigned int offset, size_t len)
 Inserts len bytes at start of allocated memory area plus offset. More...
 
void remove (uint8_t *ptr, size_t len)
 Removes len bytes starting at pointer ptr from allocated memory area. More...
 
void remove (unsigned int offset, size_t len)
 Removes len bytes starting at offset relative to the allocated memory area. More...
 
unsigned int find_first_of (uint8_t value, unsigned int start)
 Returns index of first byte with value "value" found in allocated memory area starting at offset "start". More...
 
void clear ()
 Clears the allocated memory area by setting all bytes to 0.
 
virtual std::string toString () const
 map onto std::string instance
 
virtual bool empty () const
 Returns boolean value empty/non empty.
 

Friends

std::ostream & operator<< (std::ostream &os, coxmatch const &oxm)
 
Inheritance diagram for rofl::openflow::coxmatch:
rofl::cmemory rofl::openflow::coxmatch_ofb_arp_opcode rofl::openflow::coxmatch_ofb_arp_sha rofl::openflow::coxmatch_ofb_arp_spa rofl::openflow::coxmatch_ofb_arp_tha rofl::openflow::coxmatch_ofb_arp_tpa rofl::openflow::coxmatch_ofb_eth_dst rofl::openflow::coxmatch_ofb_eth_src rofl::openflow::coxmatch_ofb_eth_type rofl::openflow::coxmatch_ofb_icmpv4_code rofl::openflow::coxmatch_ofb_icmpv4_type rofl::openflow::coxmatch_ofb_icmpv6_code rofl::openflow::coxmatch_ofb_icmpv6_type rofl::openflow::coxmatch_ofb_in_phy_port rofl::openflow::coxmatch_ofb_in_port rofl::openflow::coxmatch_ofb_ip_dscp rofl::openflow::coxmatch_ofb_ip_ecn rofl::openflow::coxmatch_ofb_ip_proto rofl::openflow::coxmatch_ofb_ipv4_dst rofl::openflow::coxmatch_ofb_ipv4_src rofl::openflow::coxmatch_ofb_ipv6_dst rofl::openflow::coxmatch_ofb_ipv6_exthdr rofl::openflow::coxmatch_ofb_ipv6_flabel rofl::openflow::coxmatch_ofb_ipv6_nd_sll rofl::openflow::coxmatch_ofb_ipv6_nd_target rofl::openflow::coxmatch_ofb_ipv6_nd_tll rofl::openflow::coxmatch_ofb_ipv6_src rofl::openflow::coxmatch_ofb_metadata rofl::openflow::coxmatch_ofb_mpls_bos rofl::openflow::coxmatch_ofb_mpls_label rofl::openflow::coxmatch_ofb_mpls_tc rofl::openflow::coxmatch_ofb_pbb_isid rofl::openflow::coxmatch_ofb_sctp_dst rofl::openflow::coxmatch_ofb_sctp_src rofl::openflow::coxmatch_ofb_tcp_dst rofl::openflow::coxmatch_ofb_tcp_src rofl::openflow::coxmatch_ofb_tunnel_id rofl::openflow::coxmatch_ofb_udp_dst rofl::openflow::coxmatch_ofb_udp_src rofl::openflow::coxmatch_ofb_vlan_pcp rofl::openflow::coxmatch_ofb_vlan_present rofl::openflow::coxmatch_ofb_vlan_untagged rofl::openflow::coxmatch_ofb_vlan_vid rofl::openflow::coxmatch_ofx_nw_dst rofl::openflow::coxmatch_ofx_nw_proto rofl::openflow::coxmatch_ofx_nw_src rofl::openflow::coxmatch_ofx_nw_tos rofl::openflow::coxmatch_ofx_tp_dst rofl::openflow::coxmatch_ofx_tp_src rofl::openflow::experimental::capwap::coxmatch_ofx_capwap_flags rofl::openflow::experimental::capwap::coxmatch_ofx_capwap_rid rofl::openflow::experimental::capwap::coxmatch_ofx_capwap_wbid rofl::openflow::experimental::gre::coxmatch_ofx_gre_key rofl::openflow::experimental::gre::coxmatch_ofx_gre_prot_type rofl::openflow::experimental::gre::coxmatch_ofx_gre_version rofl::openflow::experimental::gtp::coxmatch_ofx_gtp_msg_type rofl::openflow::experimental::gtp::coxmatch_ofx_gtp_teid rofl::openflow::experimental::pppoe::coxmatch_ofx_ppp_prot rofl::openflow::experimental::pppoe::coxmatch_ofx_pppoe_code rofl::openflow::experimental::pppoe::coxmatch_ofx_pppoe_sid rofl::openflow::experimental::pppoe::coxmatch_ofx_pppoe_type rofl::openflow::experimental::wlan::coxmatch_ofx_wlan_address_1 rofl::openflow::experimental::wlan::coxmatch_ofx_wlan_address_2 rofl::openflow::experimental::wlan::coxmatch_ofx_wlan_address_3 rofl::openflow::experimental::wlan::coxmatch_ofx_wlan_direction rofl::openflow::experimental::wlan::coxmatch_ofx_wlan_fc rofl::openflow::experimental::wlan::coxmatch_ofx_wlan_subtype rofl::openflow::experimental::wlan::coxmatch_ofx_wlan_type

The documentation for this class was generated from the following files: