diff options
author | Keith Burns (alagalah) <alagalah@gmail.com> | 2016-03-25 09:38:50 -0700 |
---|---|---|
committer | Keith Burns <alagalah@gmail.com> | 2016-04-30 16:38:09 +0000 |
commit | 52fc44d61bcebb898dc19ab818ff60e617055694 (patch) | |
tree | 2a5155984329b766f74ed4ef42569b6279d871bf /vpp/api/vpe.api | |
parent | 6de2ff28fef27421f6b9a6c1f4ef53d1bd8c7c6e (diff) |
IP6 SR multicast replicator
- adds ability to name tunnel
- creates policy as a collection of tunnel names
- map ip6 multicast address to policy and replicate packet
- adds zero memcpy for invariant portion of packet
Change-Id: Icd2fe6a2cf65c09906e82ed1afbb0eae8df79452
Signed-off-by: Keith Burns (alagalah) <alagalah@gmail.com>
Diffstat (limited to 'vpp/api/vpe.api')
-rw-r--r-- | vpp/api/vpe.api | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/vpp/api/vpe.api b/vpp/api/vpe.api index 88b6070083d..9d0f6b7f469 100644 --- a/vpp/api/vpe.api +++ b/vpp/api/vpe.api @@ -1145,6 +1145,7 @@ define l2_patch_add_del_reply { @param client_index - opaque cookie to identify the sender @param context - sender context, to match reply w/ request @param is_add - add the tunnel if non-zero, else delete it + @param name[] - tunnel name (len. 64) @param src_address[] - @param dst_address[] - @param dst_mask_width - @@ -1154,11 +1155,13 @@ define l2_patch_add_del_reply { @param n_segments - @param n_tags - @param segs_and_tags[] - + @param policy_name[] - name of policy to associate this tunnel to (len. 64) */ define sr_tunnel_add_del { u32 client_index; u32 context; u8 is_add; + u8 name[64]; u8 src_address[16]; u8 dst_address[16]; u8 dst_mask_width; @@ -1168,6 +1171,7 @@ define sr_tunnel_add_del { u8 n_segments; u8 n_tags; u8 segs_and_tags[0]; + u8 policy_name[64]; }; /** \brief IPv6 segment routing tunnel add / del response @@ -1179,6 +1183,54 @@ define sr_tunnel_add_del_reply { i32 retval; }; +/** \brief IPv6 segment routing policy add / del request + @param client_index - opaque cookie to identify the sender + @param context - sender context, to match reply w/ request + @param is_add - add the tunnel if non-zero, else delete it + @param name[] - policy name (len. 64) + @param tunnel_names[] - +*/ +define sr_policy_add_del { + u32 client_index; + u32 context; + u8 is_add; + u8 name[64]; + u8 tunnel_names[0]; +}; + +/** \brief IPv6 segment routing policy add / del response + @param context - sender context, to match reply w/ request + @param retval - return value for request +*/ +define sr_policy_add_del_reply { + u32 context; + i32 retval; +}; + +/** \brief IPv6 segment routing multicast map to policy add / del request + @param client_index - opaque cookie to identify the sender + @param context - sender context, to match reply w/ request + @param is_add - add the tunnel if non-zero, else delete it + @param multicast_address[] - IP6 multicast address + @param policy_name[] = policy name (len.64) +*/ +define sr_multicast_map_add_del { + u32 client_index; + u32 context; + u8 is_add; + u8 multicast_address[16]; + u8 policy_name[64]; +}; + +/** \brief IPv6 segment routing multicast map to policy add / del response + @param context - sender context, to match reply w/ request + @param retval - return value for request +*/ +define sr_multicast_map_add_del_reply { + u32 context; + i32 retval; +}; + /** \brief Interface set vpath request @param client_index - opaque cookie to identify the sender @param context - sender context, to match reply w/ request |