diff options
Diffstat (limited to 'src/vnet/mpls/mpls.h')
-rw-r--r-- | src/vnet/mpls/mpls.h | 26 |
1 files changed, 12 insertions, 14 deletions
diff --git a/src/vnet/mpls/mpls.h b/src/vnet/mpls/mpls.h index 00b493f4576..6baaaad95ba 100644 --- a/src/vnet/mpls/mpls.h +++ b/src/vnet/mpls/mpls.h @@ -23,22 +23,18 @@ #include <vnet/fib/fib_node.h> #include <vnet/adj/adj.h> -typedef enum -{ -#define mpls_error(n,s) MPLS_ERROR_##n, -#include <vnet/mpls/error.def> -#undef mpls_error - MPLS_N_ERROR, -} mpls_error_t; +struct mpls_main_t; /** * @brief Definition of a callback for receiving MPLS interface state change * notifications */ -typedef void (*mpls_interface_state_change_callback_t) (u32 sw_if_index, - u32 is_enable); +typedef void (mpls_interface_state_change_function_t) (struct mpls_main_t *mm, + uword opaque, + u32 sw_if_index, + u32 is_enable); -typedef struct +typedef struct mpls_main_t { /* MPLS FIB index for each software interface */ u32 *fib_index_by_sw_if_index; @@ -85,12 +81,14 @@ unformat_function_t unformat_mpls_unicast_label; unformat_function_t unformat_mpls_header; unformat_function_t unformat_pg_mpls_header; -int mpls_sw_interface_enable_disable (mpls_main_t * mm, - u32 sw_if_index, - u8 is_enable, u8 is_api); - u8 mpls_sw_interface_is_enabled (u32 sw_if_index); +void mpls_interface_state_change_add_callback ( + mpls_interface_state_change_function_t *function, uword opaque); + +int mpls_sw_interface_enable_disable (mpls_main_t *mm, u32 sw_if_index, + u8 is_enable); + int mpls_dest_cmp (void *a1, void *a2); int mpls_fib_index_cmp (void *a1, void *a2); |