always_inline vl_api_registration_t *
vl_api_client_index_to_registration (u32 index)
{
- if (PREDICT_FALSE (socket_main.current_rp != 0))
- return socket_main.current_rp;
-
- return (vl_mem_api_client_index_to_registration (index));
+ if (vl_socket_api_registration_handle_is_valid (ntohl (index)))
+ return vl_socket_api_client_handle_to_registration (ntohl (index));
+ return vl_mem_api_client_index_to_registration (index);
}
always_inline u32
}
always_inline clib_error_t *
-vl_api_send_fd_msg (vl_api_registration_t * reg, int fd_to_send)
+vl_api_send_fd_msg (vl_api_registration_t * reg, int fds[], int n_fds)
{
clib_file_t *cf = vl_api_registration_file (reg);
if (cf)
- return vl_sock_api_send_fd_msg (cf->file_descriptor, fd_to_send);
+ return vl_sock_api_send_fd_msg (cf->file_descriptor, fds, n_fds);
return 0;
}
always_inline clib_error_t *
-vl_api_recv_fd_msg (vl_api_registration_t * reg, int *fd_to_recv, u32 wait)
+vl_api_recv_fd_msg (vl_api_registration_t * reg, int fds[], int n_fds,
+ u32 wait)
{
clib_file_t *cf = vl_api_registration_file (reg);
if (cf)
- return vl_sock_api_recv_fd_msg (cf->file_descriptor, fd_to_recv, wait);
+ return vl_sock_api_recv_fd_msg (cf->file_descriptor, fds, n_fds, wait);
return 0;
}