aboutsummaryrefslogtreecommitdiffstats
path: root/src/scvpp/src/sc_vpp_interface.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/scvpp/src/sc_vpp_interface.h')
-rw-r--r--src/scvpp/src/sc_vpp_interface.h43
1 files changed, 26 insertions, 17 deletions
diff --git a/src/scvpp/src/sc_vpp_interface.h b/src/scvpp/src/sc_vpp_interface.h
index 45cc2ef..32b61bc 100644
--- a/src/scvpp/src/sc_vpp_interface.h
+++ b/src/scvpp/src/sc_vpp_interface.h
@@ -17,36 +17,45 @@
#ifndef __BAPI_INTERFACE_H__
#define __BAPI_INTERFACE_H__
-
#include <vapi/interface.api.vapi.h>
+int interface_enable(const char *interface_name, const bool enable);
+//TODO remove the following structures ASAP
typedef struct {
bool interface_found;
vapi_payload_sw_interface_details sw_interface_details;
} sw_interface_details_query_t;
+typedef struct _vpp_interface_t
+{
+ u32 sw_if_index;
+ char interface_name[VPP_INTFC_NAME_LEN];
+ u8 l2_address[VPP_MAC_ADDRESS_LEN];
+ u32 l2_address_length;
+ u64 link_speed;
+ u16 link_mtu;
+ u8 admin_up_down;
+ u8 link_up_down;
+} vpp_interface_t;
+
+typedef struct _dump_all_ctx
+{
+ int num_ifs;
+ int capacity;
+ vpp_interface_t * intfcArray;
+} dump_all_ctx;
+
+/* return the number of interfaces or a negative error code */
+extern int interface_dump_all(dump_all_ctx * dctx);
+
extern void sw_interface_details_query_set_name(sw_interface_details_query_t * query,
const char * interface_name);
//input - sw_interface_details_query shall contain interface_name
-extern bool get_interface_id(sw_interface_details_query_t * sw_interface_details_query);
+extern int get_interface_id(sw_interface_details_query_t * sw_interface_details_query);
//input - sw_interface_details_query shall contain sw_if_index
-extern bool get_interface_name(sw_interface_details_query_t * sw_interface_details_query);
-
-
-
-extern vapi_error_e bin_api_sw_interface_dump(const char * interface_name);
-
-extern vapi_error_e bin_api_sw_interface_set_flags(u32 if_index, u8 up);
-
-extern vapi_error_e bin_api_sw_interface_set_l2_bridge(u32 bd_id,
- u32 rx_sw_if_index,
- bool enable);
-
-extern vapi_error_e bin_api_create_loopback(
- vapi_payload_create_loopback_reply *reply);
-
+extern int get_interface_name(sw_interface_details_query_t * sw_interface_details_query);
#endif /* __BAPI_INTERFACE_H__ */