MCPcopy Create free account
hub / github.com/brainflow-dev/brainflow / connect

Method connect

src/utils/socket_client_udp.cpp:102–133  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

100}
101
102int SocketClientUDP::connect ()
103{
104 if (wsa_initialized)
105 {
106 return (int)SocketClientUDPReturnCodes::SOCKET_ALREADY_CREATED_ERROR;
107 }
108 WSADATA wsadata;
109 int res = WSAStartup (MAKEWORD (2, 2), &wsadata);
110 if (res != 0)
111 {
112 return (int)SocketClientUDPReturnCodes::WSA_STARTUP_ERROR;
113 }
114 wsa_initialized = true;
115 socket_addr.sin_family = AF_INET;
116 socket_addr.sin_port = htons (port);
117 if (inet_pton (AF_INET, ip_addr, &socket_addr.sin_addr) == 0)
118 {
119 return (int)SocketClientUDPReturnCodes::PTON_ERROR;
120 }
121 connect_socket = socket (AF_INET, SOCK_DGRAM, IPPROTO_UDP);
122 if (connect_socket == INVALID_SOCKET)
123 {
124 return (int)SocketClientUDPReturnCodes::CREATE_SOCKET_ERROR;
125 }
126
127 // ensure that library will not hang in blocking recv/send call
128 DWORD timeout = 5000;
129 setsockopt (connect_socket, SOL_SOCKET, SO_RCVTIMEO, (char *)&timeout, sizeof (timeout));
130 setsockopt (connect_socket, SOL_SOCKET, SO_SNDTIMEO, (char *)&timeout, sizeof (timeout));
131
132 return (int)SocketClientUDPReturnCodes::STATUS_OK;
133}
134
135int SocketClientUDP::set_timeout (int num_seconds)
136{

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected