summaryrefslogtreecommitdiff
path: root/lib/packets.h
diff options
context:
space:
mode:
authorYi Yang <yi.y.yang@intel.com>2018-01-06 13:47:51 +0800
committerBen Pfaff <blp@ovn.org>2018-01-08 13:19:14 -0800
commitf59cb331c481d08f9a851c07cf31e9d826650485 (patch)
tree4aacb2db30cd80a9a7f43f733fa29d49db0ffd65 /lib/packets.h
parentd3b8483300532167ece1307252b441de24f07dfa (diff)
downloadopenvswitch-f59cb331c481d08f9a851c07cf31e9d826650485.tar.gz
nsh: rework NSH netlink keys and actions
This patch changes OVS_KEY_ATTR_NSH to nested attribute and adds three new NSH sub attribute keys: OVS_NSH_KEY_ATTR_BASE: for length-fixed NSH base header OVS_NSH_KEY_ATTR_MD1: for length-fixed MD type 1 context OVS_NSH_KEY_ATTR_MD2: for length-variable MD type 2 metadata Its intention is to align to NSH kernel implementation. NSH match fields, set and PUSH_NSH action all use the below nested attribute format: OVS_KEY_ATTR_NSH begin OVS_NSH_KEY_ATTR_BASE OVS_NSH_KEY_ATTR_MD1 OVS_KEY_ATTR_NSH end or OVS_KEY_ATTR_NSH begin OVS_NSH_KEY_ATTR_BASE OVS_NSH_KEY_ATTR_MD2 OVS_KEY_ATTR_NSH end In addition, NSH encap and decap actions are renamed as push_nsh and pop_nsh to meet action naming convention. Signed-off-by: Yi Yang <yi.y.yang@intel.com> Signed-off-by: Ben Pfaff <blp@ovn.org>
Diffstat (limited to 'lib/packets.h')
-rw-r--r--lib/packets.h5
1 files changed, 2 insertions, 3 deletions
diff --git a/lib/packets.h b/lib/packets.h
index 395599f08..f583e0540 100644
--- a/lib/packets.h
+++ b/lib/packets.h
@@ -434,9 +434,8 @@ void push_eth(struct dp_packet *packet, const struct eth_addr *dst,
const struct eth_addr *src);
void pop_eth(struct dp_packet *packet);
-void encap_nsh(struct dp_packet *packet,
- const struct ovs_action_encap_nsh *encap_nsh);
-bool decap_nsh(struct dp_packet *packet);
+void push_nsh(struct dp_packet *packet, const struct nsh_hdr *nsh_hdr_src);
+bool pop_nsh(struct dp_packet *packet);
#define LLC_DSAP_SNAP 0xaa
#define LLC_SSAP_SNAP 0xaa