git://git.onelab.eu
/
sliver-openvswitch.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Add support for listing and deleting entries based on an output port.
[sliver-openvswitch.git]
/
datapath
/
flow.h
diff --git
a/datapath/flow.h
b/datapath/flow.h
index
4db6204
..
d04d7b9
100644
(file)
--- a/
datapath/flow.h
+++ b/
datapath/flow.h
@@
-39,6
+39,11
@@
struct sw_flow_key {
uint32_t nw_dst_mask; /* 1-bit in each significant nw_dst bit. */
};
uint32_t nw_dst_mask; /* 1-bit in each significant nw_dst bit. */
};
+/* The match fields for ICMP type and code use the transport source and
+ * destination port fields, respectively. */
+#define icmp_type tp_src
+#define icmp_code tp_dst
+
/* Compare two sw_flow_keys and return true if they are the same flow, false
* otherwise. Wildcards and netmasks are not considered. */
static inline int flow_keys_equal(const struct sw_flow_key *a,
/* Compare two sw_flow_keys and return true if they are the same flow, false
* otherwise. Wildcards and netmasks are not considered. */
static inline int flow_keys_equal(const struct sw_flow_key *a,
@@
-101,6
+106,7
@@
int flow_matches_1wild(const struct sw_flow_key *, const struct sw_flow_key *);
int flow_matches_2wild(const struct sw_flow_key *, const struct sw_flow_key *);
int flow_matches_desc(const struct sw_flow_key *, const struct sw_flow_key *,
int);
int flow_matches_2wild(const struct sw_flow_key *, const struct sw_flow_key *);
int flow_matches_desc(const struct sw_flow_key *, const struct sw_flow_key *,
int);
+int flow_has_out_port(struct sw_flow *, uint16_t);
struct sw_flow *flow_alloc(size_t actions_len, gfp_t flags);
void flow_free(struct sw_flow *);
void flow_deferred_free(struct sw_flow *);
struct sw_flow *flow_alloc(size_t actions_len, gfp_t flags);
void flow_free(struct sw_flow *);
void flow_deferred_free(struct sw_flow *);