int rtsmb_net_socket_new (RTP_SOCKET* sock_ptr, int port, BBOOL reliable) { int result; if (reliable) { result = rtp_net_socket_stream(sock_ptr); } else { result = rtp_net_socket_datagram(sock_ptr); } if (result < 0) { RTSMB_DEBUG_OUTPUT_STR("rtsmb_net_socket_new: Unable to get new socket\n", RTSMB_DEBUG_TYPE_ASCII); return -1; } if (rtp_net_bind(*sock_ptr, (unsigned char*)0, port, 4)) { RTSMB_DEBUG_OUTPUT_STR ("rtsmb_net_socket_new: bind to port ", RTSMB_DEBUG_TYPE_ASCII); RTSMB_DEBUG_OUTPUT_INT (port); RTSMB_DEBUG_OUTPUT_STR (" failed\n", RTSMB_DEBUG_TYPE_ASCII); return -1; } RTSMB_DEBUG_OUTPUT_STR ("rtsmb_net_socket_new: Socket ", RTSMB_DEBUG_TYPE_ASCII); RTSMB_DEBUG_OUTPUT_INT ((int) (*sock_ptr)); RTSMB_DEBUG_OUTPUT_STR (" bound to port ", RTSMB_DEBUG_TYPE_ASCII); RTSMB_DEBUG_OUTPUT_INT (port); RTSMB_DEBUG_OUTPUT_STR ("\n", RTSMB_DEBUG_TYPE_ASCII); return 0; }
int RTIP_SOCKETS_Driver::Bind( SOCK_SOCKET socket, const SOCK_sockaddr* address, int addressLen ) { NATIVE_PROFILE_PAL_NETWORK(); int ret; unsigned char *ipAddr; int port; port = ((SOCK_sockaddr_in *) address)->sin_port; ipAddr = (unsigned char *) &(((SOCK_sockaddr_in *) address)->sin_addr); ret = rtp_net_bind ((RTP_HANDLE) socket, ipAddr, port, RTP_NET_TYPE_IPV4); return ret; }