diff --git a/src/include/switch_apr.h b/src/include/switch_apr.h index e7a41d03d9..bd19353991 100644 --- a/src/include/switch_apr.h +++ b/src/include/switch_apr.h @@ -1443,6 +1443,7 @@ SWITCH_DECLARE(switch_status_t) switch_socket_create_pollset(switch_pollfd_t ** */ SWITCH_DECLARE(switch_status_t) switch_socket_create_pollfd(switch_pollfd_t **pollfd, switch_socket_t *sock, int16_t flags, void *client_data, switch_memory_pool_t *pool); SWITCH_DECLARE(switch_status_t) switch_match_glob(const char *pattern, switch_array_header_t ** result, switch_memory_pool_t *p); +SWITCH_DECLARE(switch_status_t) switch_os_sock_get(switch_os_socket_t *thesock, switch_socket_t *sock); SWITCH_DECLARE(switch_status_t) switch_socket_addr_get(switch_sockaddr_t ** sa, switch_bool_t remote, switch_socket_t *sock); /** diff --git a/src/include/switch_types.h b/src/include/switch_types.h index b4ec368021..696078a06e 100644 --- a/src/include/switch_types.h +++ b/src/include/switch_types.h @@ -1784,6 +1784,14 @@ typedef enum { SSH_FLAG_STICKY = (1 << 0) } switch_state_handler_flag_t; +#ifdef WIN32 +typedef SOCKET apr_os_sock_t; +#else +typedef int apr_os_sock_t; +#endif + +typedef apr_os_sock_t switch_os_socket_t; + typedef struct apr_pool_t switch_memory_pool_t; typedef uint16_t switch_port_t; typedef uint8_t switch_payload_t; diff --git a/src/switch_apr.c b/src/switch_apr.c index 5936c7223e..c854c97617 100644 --- a/src/switch_apr.c +++ b/src/switch_apr.c @@ -665,6 +665,11 @@ SWITCH_DECLARE(switch_status_t) switch_thread_create(switch_thread_t ** new_thre /* socket stubs */ +SWITCH_DECLARE(switch_status_t) switch_os_sock_get(switch_os_socket_t *thesock, switch_socket_t *sock) +{ + return apr_os_sock_get(thesock, sock); +} + SWITCH_DECLARE(switch_status_t) switch_socket_addr_get(switch_sockaddr_t ** sa, switch_bool_t remote, switch_socket_t *sock) { return apr_socket_addr_get(sa, (apr_interface_e) remote, sock);