1 #ifndef OF10OPENFLOW_MATCH_H
2 #define OF10OPENFLOW_MATCH_H 1
6 #include "fluid/util/util.h"
7 #include "fluid/util/ethaddr.hh"
8 #include "fluid/util/ipaddr.hh"
9 #include "openflow-10.h"
36 bool operator==(
const Match &other)
const;
37 bool operator!=(
const Match &other)
const;
38 size_t pack(uint8_t *buffer);
39 of_error unpack(uint8_t *buffer);
40 uint32_t wildcards() {
41 return this->wildcards_;
44 return this->in_port_;
53 return this->dl_vlan_;
55 uint8_t dl_vlan_pcp() {
56 return this->dl_vlan_pcp_;
59 return this->dl_type_;
65 return this->nw_proto_;
80 void wildcards(uint32_t wildcards);
81 void in_port(uint16_t in_port);
84 void dl_vlan(uint16_t dl_vlan);
85 void dl_vlan_pcp(uint8_t dl_vlan_pcp);
86 void dl_type(uint16_t dl_type);
87 void nw_tos(uint8_t nw_tos);
88 void nw_proto(uint8_t nw_proto);
91 void nw_src(
const IPAddress &nw_src, uint32_t prefix);
92 void nw_dst(
const IPAddress &nw_src, uint32_t prefix);
93 void tp_src(uint16_t tp_src);
94 void tp_dst(uint16_t tp_dst);