/* * Copyright (c) 2017 Intel and/or its affiliates. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at: * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ /** \brief Set or delete an GTPU tunnel @param client_index - opaque cookie to identify the sender @param context - sender context, to match reply w/ request @param is_add - add address if non-zero, else delete @param is_ipv6 - src_address and dst_address is ipv6 or not @param src_address - GTPU tunnel's source address. @param dst_address - GTPU tunnel's destination address. @param mcast_sw_if_index - version, O-bit and C-bit (see nsh_packet.h) @param encap_vrf_id - fib identifier used for outgoing encapsulated packets @param decap_next_index - the index of the next node if success @param teid - Local Tunnel Endpoint Identifier */ define gtpu_add_del_tunnel { u32 client_index; u32 context; u8 is_add; u8 is_ipv6; u8 src_address[16]; u8 dst_address[16]; u32 mcast_sw_if_index; u32 encap_vrf_id; u32 decap_next_index; u32 teid; }; /** \brief reply for set or delete an GTPU tunnel @param context - sender context, to match reply w/ request @param retval - return code @param sw_if_index - software index of the interface */ define gtpu_add_del_tunnel_reply { u32 context; i32 retval; u32 sw_if_index; }; /** \brief Dump GTPU tunnel @param client_index - opaque cookie to identify the sender @param context - sender context, to match reply w/ request @param sw_if_index - software index of the interface */ define gtpu_tunnel_dump { u32 client_index; u32 context; u32 sw_if_index; }; /** \brief dump details of an GTPU tunnel @param context - sender context, to match reply w/ request @param sw_if_index - software index of the interface @param is_ipv6 - src_address and dst_address is ipv6 or not @param src_address - GTPU tunnel's source address. @param dst_address - GTPU tunnel's destination address. @param mcast_sw_if_index - version, O-bit and C-bit (see nsh_packet.h) @param encap_vrf_id - fib identifier used for outgoing encapsulated packets @param decap_next_index - the index of the next node if success @param teid - Local Tunnel Endpoint Identifier */ define gtpu_tunnel_details { u32 context; u32 sw_if_index; u8 is_ipv6; u8 src_address[16]; u8 dst_address[16]; u32 mcast_sw_if_index; u32 encap_vrf_id; u32 decap_next_index; u32 teid; }; /** \brief Interface set gtpu-bypass request @param client_index - opaque cookie to identify the sender @param context - sender context, to match reply w/ request @param sw_if_index - interface used to reach neighbor @param is_ipv6 - if non-zero, enable ipv6-gtpu-bypass, else ipv4-gtpu-bypass @param enable - if non-zero enable, else disable */ define sw_interface_set_gtpu_bypass { u32 client_index; u32 context; u32 sw_if_index; u8 is_ipv6; u8 enable; }; /** \brief Interface set gtpu-bypass response @param context - sender context, to match reply w/ request @param retval - return code for the request */ define sw_interface_set_gtpu_bypass_reply { u32 context; i32 retval; }; /* * Local Variables: * eval: (c-set-style "gnu") * End: */