Mellanox SwitchX SDK API Guide  4.3.2104
sx_api_mpls.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2014-2019. Mellanox Technologies, Ltd. ALL RIGHTS RESERVED.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License"); you may
5  * not use this file except in compliance with the License. You may obtain
6  * a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
7  *
8  * THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR
9  * CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT
10  * LIMITATION ANY IMPLIED WARRANTIES OR CONDITIONS OF TITLE, FITNESS
11  * FOR A PARTICULAR PURPOSE, MERCHANTABLITY OR NON-INFRINGEMENT.
12  *
13  * See the Apache Version 2.0 License for specific language governing
14  * permissions and limitations under the License.
15  *
16  */
17 #ifndef __SX_API_MPLS_H__
18 #define __SX_API_MPLS_H__
19 
20 #include <sx/sdk/sx_api.h>
21 #include <sx/sdk/sx_mpls.h>
22 #include <sx/sdk/sx_strings.h>
23 
24 /************************************************
25  * API functions
26  ***********************************************/
27 
40 sx_status_t sx_api_mpls_log_verbosity_level_set(const sx_api_handle_t handle,
41  const sx_log_verbosity_target_t verbosity_target,
42  const sx_verbosity_level_t module_verbosity_level,
43  const sx_verbosity_level_t api_verbosity_level);
44 
57 sx_status_t sx_api_mpls_log_verbosity_level_get(const sx_api_handle_t handle,
58  const sx_log_verbosity_target_t verbosity_target,
59  sx_verbosity_level_t *module_verbosity_level_p,
60  sx_verbosity_level_t *api_verbosity_level_p);
61 
74 sx_status_t sx_api_mpls_init_set(const sx_api_handle_t handle,
75  const sx_mpls_general_params_t *general_params);
76 
88 sx_status_t sx_api_mpls_deinit_set(const sx_api_handle_t handle);
89 
103 sx_status_t sx_api_mpls_ilm_init_set(const sx_api_handle_t handle,
104  const sx_access_cmd_t cmd,
105  const sx_mpls_ilm_table_id_t ilm_table);
106 
122 sx_status_t sx_api_mpls_in_segment_set(const sx_api_handle_t handle,
123  const sx_access_cmd_t cmd,
124  const sx_mpls_in_segment_key_t *in_segment_key_p,
125  const sx_mpls_in_segment_params_t *in_segment_params_p);
126 
140 sx_status_t sx_api_mpls_in_segment_get(const sx_api_handle_t handle,
141  const sx_mpls_in_segment_key_t *in_segment_key_p,
142  sx_mpls_in_segment_params_t *in_segment_params_p);
143 
206 sx_status_t sx_api_mpls_in_segment_iter_get(const sx_api_handle_t handle,
207  const sx_access_cmd_t cmd,
208  const sx_mpls_in_segment_key_t *in_segment_key_p,
209  const sx_in_segment_key_filter_t *filter_p,
210  sx_mpls_in_segment_key_t *in_segment_key_list_p,
211  uint32_t *in_segment_get_entries_cnt_p);
212 
227 sx_status_t sx_api_mpls_router_interface_attributes_set(const sx_api_handle_t handle,
228  const sx_router_interface_t rif,
229  const sx_mpls_router_interface_attr_t rif_mpls_attr);
230 
242 sx_status_t sx_api_mpls_router_interface_attributes_get(const sx_api_handle_t handle,
243  const sx_router_interface_t rif,
244  sx_mpls_router_interface_attr_t *rif_mpls_attr_p);
245 
257 sx_status_t sx_api_mpls_ilm_counter_bind_set(const sx_api_handle_t handle,
258  const sx_access_cmd_t cmd,
259  const sx_mpls_in_segment_key_t *in_segment_key_p,
260  const sx_flow_counter_id_t counter_id);
261 
273 sx_status_t sx_api_mpls_ilm_counter_bind_get(const sx_api_handle_t handle,
274  const sx_access_cmd_t cmd,
275  const sx_mpls_in_segment_key_t *in_segment_key_p,
276  sx_flow_counter_id_t *counter_id_p);
277 
278 #endif /* __SX_API_MPLS_H__ */
sx_api_mpls_log_verbosity_level_get
sx_status_t sx_api_mpls_log_verbosity_level_get(const sx_api_handle_t handle, const sx_log_verbosity_target_t verbosity_target, sx_verbosity_level_t *module_verbosity_level_p, sx_verbosity_level_t *api_verbosity_level_p)
sx_api_mpls_router_interface_attributes_get
sx_status_t sx_api_mpls_router_interface_attributes_get(const sx_api_handle_t handle, const sx_router_interface_t rif, sx_mpls_router_interface_attr_t *rif_mpls_attr_p)
sx_api_mpls_deinit_set
sx_status_t sx_api_mpls_deinit_set(const sx_api_handle_t handle)
sx_api_mpls_ilm_counter_bind_get
sx_status_t sx_api_mpls_ilm_counter_bind_get(const sx_api_handle_t handle, const sx_access_cmd_t cmd, const sx_mpls_in_segment_key_t *in_segment_key_p, sx_flow_counter_id_t *counter_id_p)
sx_api_mpls_init_set
sx_status_t sx_api_mpls_init_set(const sx_api_handle_t handle, const sx_mpls_general_params_t *general_params)
sx_api_mpls_in_segment_iter_get
sx_status_t sx_api_mpls_in_segment_iter_get(const sx_api_handle_t handle, const sx_access_cmd_t cmd, const sx_mpls_in_segment_key_t *in_segment_key_p, const sx_in_segment_key_filter_t *filter_p, sx_mpls_in_segment_key_t *in_segment_key_list_p, uint32_t *in_segment_get_entries_cnt_p)
sx_api_mpls_ilm_init_set
sx_status_t sx_api_mpls_ilm_init_set(const sx_api_handle_t handle, const sx_access_cmd_t cmd, const sx_mpls_ilm_table_id_t ilm_table)
sx_api_mpls_ilm_counter_bind_set
sx_status_t sx_api_mpls_ilm_counter_bind_set(const sx_api_handle_t handle, const sx_access_cmd_t cmd, const sx_mpls_in_segment_key_t *in_segment_key_p, const sx_flow_counter_id_t counter_id)
sx_api_mpls_router_interface_attributes_set
sx_status_t sx_api_mpls_router_interface_attributes_set(const sx_api_handle_t handle, const sx_router_interface_t rif, const sx_mpls_router_interface_attr_t rif_mpls_attr)
sx_api_mpls_in_segment_get
sx_status_t sx_api_mpls_in_segment_get(const sx_api_handle_t handle, const sx_mpls_in_segment_key_t *in_segment_key_p, sx_mpls_in_segment_params_t *in_segment_params_p)
sx_api_mpls_in_segment_set
sx_status_t sx_api_mpls_in_segment_set(const sx_api_handle_t handle, const sx_access_cmd_t cmd, const sx_mpls_in_segment_key_t *in_segment_key_p, const sx_mpls_in_segment_params_t *in_segment_params_p)
sx_api_mpls_log_verbosity_level_set
sx_status_t sx_api_mpls_log_verbosity_level_set(const sx_api_handle_t handle, const sx_log_verbosity_target_t verbosity_target, const sx_verbosity_level_t module_verbosity_level, const sx_verbosity_level_t api_verbosity_level)