diff options
author | Yi Yang <yi.y.yang@intel.com> | 2018-01-06 13:47:51 +0800 |
---|---|---|
committer | Ben Pfaff <blp@ovn.org> | 2018-01-08 13:19:14 -0800 |
commit | f59cb331c481d08f9a851c07cf31e9d826650485 (patch) | |
tree | 4aacb2db30cd80a9a7f43f733fa29d49db0ffd65 /lib/packets.h | |
parent | d3b8483300532167ece1307252b441de24f07dfa (diff) | |
download | openvswitch-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.h | 5 |
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 |