30 #include <vnet/nhrp/nhrp.api_enum.h> 31 #include <vnet/nhrp/nhrp.api_types.h> 34 #define REPLY_MSG_ID_BASE nhrp_base_msg_id 41 vl_api_nhrp_entry_add_del_reply_t *rmp;
52 ntohl (mp->
entry.nh_table_id), &nh);
86 mp->
entry.nh_table_id =
120 #include <vnet/nhrp/nhrp.api.c> vl_api_nhrp_entry_t entry
struct vl_api_nhrp_send_t_ vl_api_nhrp_send_t
fib_protocol_t fp_proto
protocol type
VLIB_API_INIT_FUNCTION(nhrp_api_hookup)
#define REPLY_MSG_ID_BASE
static void vl_api_nhrp_dump_t_handler(vl_api_nhrp_dump_t *mp)
clib_memset(h->entries, 0, sizeof(h->entries[0]) *entries)
nhrp_entry_t * nhrp_entry_get(index_t nei)
static void vl_api_send_msg(vl_api_registration_t *rp, u8 *elem)
u32 index_t
A Data-Path Object is an object that represents actions that are applied to packets are they are swit...
void nhrp_walk(nhrp_walk_cb_t fn, void *ctx)
void * vl_msg_api_alloc(int nbytes)
static void vl_api_nhrp_entry_add_del_t_handler(vl_api_nhrp_entry_add_del_t *mp)
static clib_error_t * nhrp_api_hookup(vlib_main_t *vm)
int nhrp_entry_add(u32 sw_if_index, const ip46_address_t *peer, u32 nh_table_id, const ip46_address_t *nh)
Create a new NHRP entry.
enum walk_rc_t_ walk_rc_t
Walk return code.
static u32 nhrp_base_msg_id
Aggregate type for a prefix.
ip46_type_t ip_address_decode(const vl_api_address_t *in, ip46_address_t *out)
ip46_address_t fp_addr
The address type is not deriveable from the fp_addr member.
u32 nhrp_entry_get_fib_index(const nhrp_entry_t *ne)
An API client registration, only in vpp/vlib.
#define BAD_SW_IF_INDEX_LABEL
const ip46_address_t * nhrp_entry_get_peer(const nhrp_entry_t *ne)
int nhrp_entry_del(u32 sw_if_index, const ip46_address_t *peer)
static walk_rc_t vl_api_nhrp_send_one(index_t nei, void *arg)
static vl_api_registration_t * vl_api_client_index_to_registration(u32 index)
u32 fib_table_get_table_id(u32 fib_index, fib_protocol_t proto)
Get the Table-ID of the FIB from protocol and index.
vl_api_registration_t * reg
const fib_prefix_t * nhrp_entry_get_nh(const nhrp_entry_t *ne)
void ip_address_encode(const ip46_address_t *in, ip46_type_t type, vl_api_address_t *out)
static void setup_message_id_table(snat_main_t *sm, api_main_t *am)
u32 nhrp_entry_get_sw_if_index(const nhrp_entry_t *ne)
accessors for the opaque struct
#define VALIDATE_SW_IF_INDEX(mp)
vl_api_nhrp_entry_t entry