- if (ssvm_type (fs) == SSVM_SEGMENT_MEMFD
- && vl_api_registration_file_index (reg) == VL_API_INVALID_FI)
+ mp = vl_mem_api_alloc_as_if_client_w_reg (reg, sizeof (*mp));
+ memset (mp, 0, sizeof (*mp));
+ mp->_vl_msg_id = clib_host_to_net_u16 (VL_API_UNMAP_SEGMENT);
+ strcpy ((char *) mp->segment_name, (char *) fs->name);
+
+ vl_msg_api_send_shmem (reg->vl_input_queue, (u8 *) & mp);
+
+ return 0;
+}
+
+static int
+send_app_cut_through_registration_add (u32 api_client_index, u64 mq_addr,
+ u64 peer_mq_addr)
+{
+ vl_api_app_cut_through_registration_add_t *mp;
+ vl_api_registration_t *reg;
+ svm_msg_q_t *mq, *peer_mq;
+ int fds[2];
+
+ reg = vl_mem_api_client_index_to_registration (api_client_index);
+ if (!reg)