|
OpenNSL API Guide and Reference Manual
|
Data Structures | |
| struct | opennsl_tunnel_initiator_s |
| L3 tunneling initiator. More... | |
| struct | opennsl_tunnel_terminator_s |
| L3 tunneling terminator. More... | |
Files | |
| file | tunnel.h |
| file | tunnelX.h |
Macros | |
| #define | OPENNSL_TUNNEL_INIT_USE_INNER_DF 0x00000080 |
| Copy DF from inner header. | |
| #define | OPENNSL_TUNNEL_REPLACE 0x00010000 |
| Update existing tunnel. | |
| #define | OPENNSL_TUNNEL_TERM_TUNNEL_WITH_ID 0x00000040 |
| Create tunnel with ID. | |
| #define | OPENNSL_TUNNEL_WITH_ID 0x00080000 |
| Add using the specified ID. | |
Typedefs | |
| typedef enum opennsl_tunnel_dscp_select_e | opennsl_tunnel_dscp_select_t |
| opennsl_tunnel_dscp_select_e | |
| typedef struct opennsl_tunnel_initiator_s | opennsl_tunnel_initiator_t |
| L3 tunneling initiator. | |
| typedef int(* | opennsl_tunnel_initiator_traverse_cb )(int unit, opennsl_tunnel_initiator_t *info, void *user_data) |
| typedef struct opennsl_tunnel_terminator_s | opennsl_tunnel_terminator_t |
| L3 tunneling terminator. | |
| typedef int(* | opennsl_tunnel_terminator_traverse_cb )(int unit, opennsl_tunnel_terminator_t *info, void *user_data) |
| typedef enum opennsl_tunnel_type_e | opennsl_tunnel_type_t |
| Tunnel types. | |
Enumerations | |
| enum | opennsl_tunnel_dscp_select_e { opennslTunnelDscpAssign = 0, opennslTunnelDscpPacket = 1, opennslTunnelDscpMap = 2, opennslTunnelDscpCount = 3 } |
| opennsl_tunnel_dscp_select_e More... | |
| enum | opennsl_tunnel_type_e { opennslTunnelTypeVxlan = 30 } |
| Tunnel types. More... | |
| #define OPENNSL_TUNNEL_INIT_USE_INNER_DF 0x00000080 |
| #define OPENNSL_TUNNEL_REPLACE 0x00010000 |
| #define OPENNSL_TUNNEL_TERM_TUNNEL_WITH_ID 0x00000040 |
| #define OPENNSL_TUNNEL_WITH_ID 0x00080000 |
Add using the specified ID.
Definition at line 31 of file tunnelX.h.
Referenced by example_ip_tunnel_add().
| typedef enum opennsl_tunnel_dscp_select_e opennsl_tunnel_dscp_select_t |
opennsl_tunnel_dscp_select_e
| typedef struct opennsl_tunnel_initiator_s opennsl_tunnel_initiator_t |
L3 tunneling initiator.
| typedef int(* opennsl_tunnel_initiator_traverse_cb)(int unit, opennsl_tunnel_initiator_t *info, void *user_data) |
| typedef struct opennsl_tunnel_terminator_s opennsl_tunnel_terminator_t |
L3 tunneling terminator.
| typedef int(* opennsl_tunnel_terminator_traverse_cb)(int unit, opennsl_tunnel_terminator_t *info, void *user_data) |
| typedef enum opennsl_tunnel_type_e opennsl_tunnel_type_t |
Tunnel types.
| int opennsl_tunnel_initiator_clear | ( | int | unit, |
| opennsl_l3_intf_t * | intf | ||
| ) |
Delete the tunnel association for the given L3 interface.
| unit | [IN] Unit number. |
| intf | [IN] Interface information, of which only the interface ID is used |
| OPENNSL_E_XXX |
| int opennsl_tunnel_initiator_create | ( | int | unit, |
| opennsl_l3_intf_t * | intf, | ||
| opennsl_tunnel_initiator_t * | tunnel | ||
| ) |
Set the tunneling initiator parameters on an L3 interface.
| unit | [IN] Unit number. |
| intf | [IN,OUT] Interface information, of which only the interface ID is used |
| tunnel | [IN,OUT] Individual tunnel configuration state |
| OPENNSL_E_XXX |
Referenced by example_ip_tunnel_add().
| int opennsl_tunnel_initiator_get | ( | int | unit, |
| opennsl_l3_intf_t * | intf, | ||
| opennsl_tunnel_initiator_t * | tunnel | ||
| ) |
Get the tunnel property for the given L3 interface.
| unit | [IN] Unit number. |
| intf | [IN] Interface information, of which only the interface ID is used |
| tunnel | [OUT] Individual tunnel configuration state |
| OPENNSL_E_XXX |
| int opennsl_tunnel_initiator_set | ( | int | unit, |
| opennsl_l3_intf_t * | intf, | ||
| opennsl_tunnel_initiator_t * | tunnel | ||
| ) |
Set the tunneling initiator parameters on an L3 interface.
| unit | [IN] Unit number. |
| intf | [IN] Interface information, of which only the interface ID is used |
| tunnel | [IN] Individual tunnel configuration state |
| OPENNSL_E_XXX |
| void opennsl_tunnel_initiator_t_init | ( | opennsl_tunnel_initiator_t * | tunnel_init | ) |
Initialize a opennsl_tunnel_initiator_t structure.
| tunnel_init | [IN,OUT] |
| Nothing |
Referenced by example_vxlan_egress_tunnel_create().
| int opennsl_tunnel_initiator_traverse | ( | int | unit, |
| opennsl_tunnel_initiator_traverse_cb | cb, | ||
| void * | user_data | ||
| ) |
Traverse tunnel initiator.
| unit | [IN] Unit number. |
| cb | [IN] User callback function |
| user_data | [IN] Pointer to user supplied cookie used in parameter in callback function |
| OPENNSL_E_XXX |
| int opennsl_tunnel_terminator_add | ( | int | unit, |
| opennsl_tunnel_terminator_t * | info | ||
| ) |
Add a tunnel terminator for DIP-SIP key.
| unit | [IN] Unit number. |
| info | [IN] Pointer to opennsl_tunnel_terminator_t containing fields related to IP tunnel terminator point. Valid fields: =TUNNEL_TERM_ADD_FIELDS_table |
| OPENNSL_E_XXX |
| int opennsl_tunnel_terminator_create | ( | int | unit, |
| opennsl_tunnel_terminator_t * | info | ||
| ) |
Add a tunnel terminator for DIP-SIP key.
| unit | [IN] Unit number. |
| info | [IN,OUT] Pointer to opennsl_tunnel_terminator_t containing fields related to IP tunnel terminator point. Valid fields: =TUNNEL_TERM_ADD_FIELDS_table |
| OPENNSL_E_XXX |
Referenced by example_vxlan_tunnel_terminator_create().
| int opennsl_tunnel_terminator_delete | ( | int | unit, |
| opennsl_tunnel_terminator_t * | info | ||
| ) |
Delete a tunnel terminator for DIP-SIP key.
| unit | [IN] Unit number. |
| info | [IN] Pointer to opennsl_tunnel_terminator_t containing the keys for IP tunnel terminator point. Valid fields: =TUNNEL_TERM_DEL_FIELDS_table |
| OPENNSL_E_XXX |
| int opennsl_tunnel_terminator_get | ( | int | unit, |
| opennsl_tunnel_terminator_t * | info | ||
| ) |
Get a tunnel terminator for DIP-SIP key.
| unit | [IN] Unit number. |
| info | [IN,OUT] Pointer to opennsl_tunnel_terminator_t containing fields related to IP tunnel terminator point. Valid fields: =TUNNEL_TERM_GET_FIELDS_table |
| OPENNSL_E_XXX |
| void opennsl_tunnel_terminator_t_init | ( | opennsl_tunnel_terminator_t * | tunnel_term | ) |
Initialize a opennsl_tunnel_terminator_t structure.
| tunnel_term | [IN,OUT] |
| Nothing |
Referenced by example_vxlan_tunnel_terminator_create().
| int opennsl_tunnel_terminator_traverse | ( | int | unit, |
| opennsl_tunnel_terminator_traverse_cb | cb, | ||
| void * | user_data | ||
| ) |
Traverse tunnel terminator.
| unit | [IN] Unit number. |
| cb | [IN] User callback function |
| user_data | [IN] Pointer to user supplied cookie used in parameter in callback function |
| OPENNSL_E_XXX |
| int opennsl_tunnel_terminator_update | ( | int | unit, |
| opennsl_tunnel_terminator_t * | info | ||
| ) |
Update a tunnel terminator for DIP-SIP key.
| unit | [IN] Unit number. |
| info | [IN] Pointer to opennsl_tunnel_terminator_t containing fields related to IP tunnel terminator point. Valid Fields: =TUNNEL_TERM_UPDATE_FIELDS_table |
| OPENNSL_E_XXX |