_(LISP_LOCAL_EID_TABLE_DUMP, lisp_local_eid_table_dump) \
_(LISP_GPE_TUNNEL_DUMP, lisp_gpe_tunnel_dump) \
_(LISP_MAP_RESOLVER_DUMP, lisp_map_resolver_dump) \
+_(LISP_GPE_ENABLE_DISABLE_STATUS_DUMP, \
+ lisp_gpe_enable_disable_status_dump) \
_(SR_MULTICAST_MAP_ADD_DEL, sr_multicast_map_add_del)
#define QUOTE_(x) #x
decap_next_index = ntohl(mp->decap_next_index);
/* Interpret decap_vrf_id as an opaque if sending to other-than-ip4-input */
- if (decap_next_index == NSH_INPUT_NEXT_IP4_INPUT) {
+ if (decap_next_index == NSH_GRE_INPUT_NEXT_IP4_INPUT) {
p = hash_get (im->fib_index_by_table_id, ntohl(mp->decap_vrf_id));
if (! p) {
rv = VNET_API_ERROR_NO_SUCH_INNER_FIB;
a->encap_fib_index = encap_fib_index;
a->decap_fib_index = decap_fib_index;
a->decap_next_index = decap_next_index;
- a->ver_o_c = mp->ver_o_c;
- a->length = mp->length;
- a->md_type = mp->md_type;
- a->next_protocol = mp->next_protocol;
- a->spi_si = ntohl(mp->spi_si);
- a->c1 = ntohl(mp->c1);
- a->c2 = ntohl(mp->c2);
- a->c3 = ntohl(mp->c3);
- a->c4 = ntohl(mp->c4);
+ a->nsh_hdr.ver_o_c = mp->ver_o_c;
+ a->nsh_hdr.length = mp->length;
+ a->nsh_hdr.md_type = mp->md_type;
+ a->nsh_hdr.next_protocol = mp->next_protocol;
+ a->nsh_hdr.spi_si = ntohl(mp->spi_si);
+ a->nsh_hdr.c1 = ntohl(mp->c1);
+ a->nsh_hdr.c2 = ntohl(mp->c2);
+ a->nsh_hdr.c3 = ntohl(mp->c3);
+ a->nsh_hdr.c4 = ntohl(mp->c4);
for (i = 0; i < mp->tlv_len_in_words; i++)
vec_add1 (tlvs, ntohl(mp->tlvs[i]));
- a->tlvs = tlvs;
+ a->nsh_hdr.tlvs = tlvs;
rv = vnet_nsh_gre_add_del_tunnel (a, &sw_if_index);
decap_next_index = ntohl(mp->decap_next_index);
/* Interpret decap_vrf_id as an opaque if sending to other-than-ip4-input */
- if (decap_next_index == NSH_INPUT_NEXT_IP4_INPUT) {
+ if (decap_next_index == NSH_GRE_INPUT_NEXT_IP4_INPUT) {
p = hash_get (im->fib_index_by_table_id, ntohl(mp->decap_vrf_id));
if (! p) {
rv = VNET_API_ERROR_NO_SUCH_INNER_FIB;
a->decap_fib_index = decap_fib_index;
a->decap_next_index = decap_next_index;
a->vni = ntohl(mp->vni);
- a->ver_o_c = mp->ver_o_c;
- a->length = mp->length;
- a->md_type = mp->md_type;
- a->next_protocol = mp->next_protocol;
- a->spi_si = ntohl(mp->spi_si);
- a->c1 = ntohl(mp->c1);
- a->c2 = ntohl(mp->c2);
- a->c3 = ntohl(mp->c3);
- a->c4 = ntohl(mp->c4);
+ a->nsh_hdr.ver_o_c = mp->ver_o_c;
+ a->nsh_hdr.length = mp->length;
+ a->nsh_hdr.md_type = mp->md_type;
+ a->nsh_hdr.next_protocol = mp->next_protocol;
+ a->nsh_hdr.spi_si = ntohl(mp->spi_si);
+ a->nsh_hdr.c1 = ntohl(mp->c1);
+ a->nsh_hdr.c2 = ntohl(mp->c2);
+ a->nsh_hdr.c3 = ntohl(mp->c3);
+ a->nsh_hdr.c4 = ntohl(mp->c4);
for (i = 0; i < mp->tlv_len_in_words; i++)
vec_add1 (tlvs, ntohl(mp->tlvs[i]));
- a->tlvs = tlvs;
+ a->nsh_hdr.tlvs = tlvs;
rv = vnet_nsh_vxlan_gpe_add_del_tunnel (a, &sw_if_index);
decap_next_index = ntohl(mp->decap_next_index);
/* Interpret decap_vrf_id as an opaque if sending to other-than-ip4-input */
- if (decap_next_index == NSH_INPUT_NEXT_IP4_INPUT) {
+ if (decap_next_index == NSH_GRE_INPUT_NEXT_IP4_INPUT) {
p = hash_get (im->fib_index_by_table_id, ntohl(mp->decap_vrf_id));
if (! p) {
rv = VNET_API_ERROR_NO_SUCH_INNER_FIB;
}
+static void
+send_lisp_gpe_enable_disable_details (unix_shared_memory_queue_t *q,
+ u32 context)
+{
+ vl_api_lisp_gpe_enable_disable_status_details_t *rmp = NULL;
+ u8 is_en;
+
+ rmp = vl_msg_api_alloc (sizeof (*rmp));
+ memset (rmp, 0, sizeof (*rmp));
+ rmp->_vl_msg_id = ntohs(VL_API_LISP_GPE_ENABLE_DISABLE_STATUS_DETAILS);
+
+ is_en = vnet_lisp_gpe_enable_disable_status();
+ rmp->is_en = is_en;
+ rmp->context = context;
+
+ vl_msg_api_send_shmem (q, (u8 *)&rmp);
+}
+
+static void
+vl_api_lisp_gpe_enable_disable_status_dump_t_handler
+(vl_api_lisp_gpe_enable_disable_status_dump_t *mp)
+{
+ unix_shared_memory_queue_t * q = NULL;
+
+ q = vl_api_client_index_to_input_queue (mp->client_index);
+ if (q == 0) {
+ return;
+ }
+
+ send_lisp_gpe_enable_disable_details(q, mp->context);
+}
+
static void
vl_api_interface_name_renumber_t_handler (vl_api_interface_name_renumber_t *mp)
{