190 #ifndef __SL_NET_SOCK_H__ 191 #define __SL_NET_SOCK_H__ 194 #include <sys/time.h> 218 #define SLNETSOCK_MAX_CONCURRENT_SOCKETS (32) 221 #define SLNETSOCK_AF_UNSPEC (0) 222 #define SLNETSOCK_AF_INET (2) 223 #define SLNETSOCK_AF_INET6 (3) 224 #define SLNETSOCK_AF_RF (6) 225 #define SLNETSOCK_AF_PACKET (17) 228 #define SLNETSOCK_PF_UNSPEC SLNETSOCK_AF_UNSPEC 229 #define SLNETSOCK_PF_INET SLNETSOCK_AF_INET 230 #define SLNETSOCK_PF_INET6 SLNETSOCK_AF_INET6 233 #define SLNETSOCK_SOCK_STREAM (1) 234 #define SLNETSOCK_SOCK_DGRAM (2) 235 #define SLNETSOCK_SOCK_RAW (3) 236 #define SLNETSOCK_SOCK_RX_MTR (4) 237 #define SLNETSOCK_SOCK_MAC_WITH_CCA (5) 238 #define SLNETSOCK_SOCK_MAC_WITH_NO_CCA (6) 239 #define SLNETSOCK_SOCK_BRIDGE (7) 240 #define SLNETSOCK_SOCK_ROUTER (8) 243 #define SLNETSOCK_PROTO_TCP (6) 244 #define SLNETSOCK_PROTO_UDP (17) 245 #define SLNETSOCK_PROTO_RAW (255) 246 #define SLNETSOCK_PROTO_SECURE (100) 249 #define SLNETSOCK_INADDR_ANY (0) 250 #define SLNETSOCK_IN6ADDR_ANY (0) 256 #define SLNETSOCK_LVL_SOCKET (1) 257 #define SLNETSOCK_LVL_IP (2) 258 #define SLNETSOCK_LVL_PHY (3) 263 #define SLNETSOCK_OPSOCK_RCV_BUF (8) 264 #define SLNETSOCK_OPSOCK_SND_BUF (202) 265 #define SLNETSOCK_OPSOCK_RCV_TIMEO (20) 266 #define SLNETSOCK_OPSOCK_SND_TIMEO (21) 267 #define SLNETSOCK_OPSOCK_KEEPALIVE (9) 268 #define SLNETSOCK_OPSOCK_KEEPALIVE_TIME (37) 269 #define SLNETSOCK_OPSOCK_LINGER (13) 270 #define SLNETSOCK_OPSOCK_NON_BLOCKING (24) 271 #define SLNETSOCK_OPSOCK_NON_IP_BOUNDARY (39) 272 #define SLNETSOCK_OPSOCK_ERROR (58) 273 #define SLNETSOCK_OPSOCK_SLNETSOCKSD (59) 274 #define SLNETSOCK_OPSOCK_BROADCAST (200) 275 #define SLNETSOCK_OPSOCK_REUSEADDR (201) 276 #define SLNETSOCK_OPSOCK_REUSEPORT (203) 279 #define SLNETSOCK_OPIP_MULTICAST_TTL (61) 280 #define SLNETSOCK_OPIP_ADD_MEMBERSHIP (65) 281 #define SLNETSOCK_OPIP_DROP_MEMBERSHIP (66) 282 #define SLNETSOCK_OPIP_HDRINCL (67) 283 #define SLNETSOCK_OPIP_RAW_RX_NO_HEADER (68) 284 #define SLNETSOCK_OPIP_RAW_IPV6_HDRINCL (69) 285 #define SLNETSOCK_OPIPV6_ADD_MEMBERSHIP (70) 286 #define SLNETSOCK_OPIPV6_DROP_MEMBERSHIP (71) 287 #define SLNETSOCK_OPIPV6_MULTICAST_HOPS (72) 290 #define SLNETSOCK_OPPHY_CHANNEL (28) 291 #define SLNETSOCK_OPPHY_RATE (100) 292 #define SLNETSOCK_OPPHY_TX_POWER (101) 293 #define SLNETSOCK_OPPHY_NUM_FRAMES_TO_TX (102) 294 #define SLNETSOCK_OPPHY_PREAMBLE (103) 295 #define SLNETSOCK_OPPHY_TX_INHIBIT_THRESHOLD (104) 296 #define SLNETSOCK_OPPHY_TX_TIMEOUT (105) 297 #define SLNETSOCK_OPPHY_ALLOW_ACKS (106) 300 #define SLNETSOCK_TCP_NODELAY (203) 301 #define SLNETSOCK_TCP_MAXSEG (204) 302 #define SLNETSOCK_TCP_NOPUSH (205) 303 #define SLNETSOCK_TCP_NOOPT (206) 304 #define SLNETSOCK_TCP_SACKPERMITTED (207) 305 #define SLNETSOCK_TCP_MAXRTT (208) 358 #define SLNETSOCK_SEC_METHOD_SSLV3 (0) 359 #define SLNETSOCK_SEC_METHOD_TLSV1 (1) 360 #define SLNETSOCK_SEC_METHOD_TLSV1_1 (2) 361 #define SLNETSOCK_SEC_METHOD_TLSV1_2 (3) 362 #define SLNETSOCK_SEC_METHOD_SSLv3_TLSV1_2 (4) 363 #define SLNETSOCK_SEC_METHOD_DLSV1 (5) 366 #define SLNETSOCK_SEC_CIPHER_SSL_RSA_WITH_RC4_128_SHA (1 << 0) 367 #define SLNETSOCK_SEC_CIPHER_SSL_RSA_WITH_RC4_128_MD5 (1 << 1) 368 #define SLNETSOCK_SEC_CIPHER_TLS_RSA_WITH_AES_256_CBC_SHA (1 << 2) 369 #define SLNETSOCK_SEC_CIPHER_TLS_DHE_RSA_WITH_AES_256_CBC_SHA (1 << 3) 370 #define SLNETSOCK_SEC_CIPHER_TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA (1 << 4) 371 #define SLNETSOCK_SEC_CIPHER_TLS_ECDHE_RSA_WITH_RC4_128_SHA (1 << 5) 372 #define SLNETSOCK_SEC_CIPHER_TLS_RSA_WITH_AES_128_CBC_SHA256 (1 << 6) 373 #define SLNETSOCK_SEC_CIPHER_TLS_RSA_WITH_AES_256_CBC_SHA256 (1 << 7) 374 #define SLNETSOCK_SEC_CIPHER_TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 (1 << 8) 375 #define SLNETSOCK_SEC_CIPHER_TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 (1 << 9) 376 #define SLNETSOCK_SEC_CIPHER_TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA (1 << 10) 377 #define SLNETSOCK_SEC_CIPHER_TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA (1 << 11) 378 #define SLNETSOCK_SEC_CIPHER_TLS_RSA_WITH_AES_128_GCM_SHA256 (1 << 12) 379 #define SLNETSOCK_SEC_CIPHER_TLS_RSA_WITH_AES_256_GCM_SHA384 (1 << 13) 380 #define SLNETSOCK_SEC_CIPHER_TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 (1 << 14) 381 #define SLNETSOCK_SEC_CIPHER_TLS_DHE_RSA_WITH_AES_256_GCM_SHA384 (1 << 15) 382 #define SLNETSOCK_SEC_CIPHER_TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (1 << 16) 383 #define SLNETSOCK_SEC_CIPHER_TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (1 << 17) 384 #define SLNETSOCK_SEC_CIPHER_TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 (1 << 18) 385 #define SLNETSOCK_SEC_CIPHER_TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 (1 << 19) 386 #define SLNETSOCK_SEC_CIPHER_TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 (1 << 20) 387 #define SLNETSOCK_SEC_CIPHER_TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256 (1 << 21) 388 #define SLNETSOCK_SEC_CIPHER_TLS_DHE_RSA_WITH_CHACHA20_POLY1305_SHA256 (1 << 22) 389 #define SLNETSOCK_SEC_CIPHER_FULL_LIST (0xFFFFFFFF) 392 #define SLNETSOCK_SEC_ALPN_H1 (1 << 0) 393 #define SLNETSOCK_SEC_ALPN_H2 (1 << 1) 394 #define SLNETSOCK_SEC_ALPN_H2C (1 << 2) 395 #define SLNETSOCK_SEC_ALPN_H2_14 (1 << 3) 396 #define SLNETSOCK_SEC_ALPN_H2_16 (1 << 4) 397 #define SLNETSOCK_SEC_ALPN_FULL_LIST ((SLNETSOCK_SEC_ALPN_H2_16 << 1 ) - 1) 400 #define SLNETSOCK_SEC_START_SECURITY_SESSION_ONLY (1 << 0) 401 #define SLNETSOCK_SEC_BIND_CONTEXT_ONLY (1 << 1) 402 #define SLNETSOCK_SEC_IS_SERVER (1 << 2) 406 #define SLNETSOCK_CREATE_IF_STATE_ENABLE (1 << 0) 407 #define SLNETSOCK_CREATE_IF_STATUS_CONNECTED (1 << 1) 408 #define SLNETSOCK_CREATE_ALLOW_PARTIAL_MATCH (1 << 2) 412 #define SLNETSOCK_SHUT_RD (0) 413 #define SLNETSOCK_SHUT_WR (1) 414 #define SLNETSOCK_SHUT_RDWR (2) 417 #define SLNETSOCK_INET6_ADDRSTRLEN (46) 418 #define SLNETSOCK_INET_ADDRSTRLEN (16) 426 #define SLNETSOCK_MSG_OOB (0x0001) 427 #define SLNETSOCK_MSG_PEEK (0x0002) 428 #define SLNETSOCK_MSG_WAITALL (0x0004) 429 #define SLNETSOCK_MSG_DONTWAIT (0x0008) 430 #define SLNETSOCK_MSG_DONTROUTE (0x0010) 431 #define SLNETSOCK_MSG_NOSIGNAL (0x0020) 454 uint8_t s_b1,s_b2,s_b3,s_b4;
482 uint32_t noDelayEnabled;
498 uint32_t noPushEnabled;
506 uint32_t noOptEnabled;
514 uint32_t sackPermittedEnabled;
530 uint32_t keepaliveEnabled;
538 int32_t nonIpBoundaryEnabled;
554 uint32_t nonBlockingEnabled;
562 uint32_t broadcastEnabled;
572 uint16_t attribBuffLen;
602 uint8_t secureMethod;
611 uint32_t imr_interface;
620 uint32_t ipv6mr_interface;
662 uint16_t sin6_family;
664 uint32_t sin6_flowinfo;
666 uint32_t sin6_scope_id;
813 int16_t
SlNetSock_create(int16_t domain, int16_t type, int16_t protocol, uint32_t ifBitmap, int16_t flags);
1471 int32_t
SlNetSock_setOpt(int16_t sd, int16_t level, int16_t optname,
void *optval, SlNetSocklen_t optlen);
1504 int32_t
SlNetSock_getOpt(int16_t sd, int16_t level, int16_t optname,
void *optval, SlNetSocklen_t *optlen);
1535 int32_t
SlNetSock_recv(int16_t sd,
void *buf, uint32_t len, uint32_t flags);
1605 int32_t
SlNetSock_send(int16_t sd,
const void *buf, uint32_t len, uint32_t flags);
1851 int32_t
SlNetSock_startSec(int16_t sd, SlNetSockSecAttrib_t *secAttrib, uint8_t flags);
The SlNetSock_IpMreq_t structure is used in SLNETSOCK_OPIP_ADD_MEMBERSHIP and SLNETSOCK_OPIP_DROP_MEM...
Definition: slnetsock.h:609
struct SlNetSock_Keepalive_t SlNetSock_Keepalive_t
The SlNetSock_Keepalive_t structure is used in SLNETSOCK_OPSOCK_KEEPALIVE socket level option...
Definition: slnetsock.h:335
int32_t SlNetSock_sdsSet(int16_t sd, SlNetSock_SdSet_t *sdset)
SlNetSock_select's SlNetSock_SdSet_t SET function.
struct SlNetSock_MaxRtt_t SlNetSock_MaxRtt_t
The SlNetSock_MaxRtt_t structure is used in SLNETSOCK_TCP_MAXRTT TCP level option.
SlNetSockSecAttrib_e
The SlNetSockSecAttrib_e enumerations are used to declare security attribute objects in SlNetSock_sec...
Definition: slnetsock.h:326
struct SlNetSock_Broadcast_t SlNetSock_Broadcast_t
The SlNetSock_Broadcast_t structure is used in SLNETSOCK_OPSOCK_BROADCAST socket level option...
int32_t SlNetSock_startSec(int16_t sd, SlNetSockSecAttrib_t *secAttrib, uint8_t flags)
Start a security session on an opened socket.
int32_t SlNetSock_recvFrom(int16_t sd, void *buf, uint32_t len, uint32_t flags, SlNetSock_Addr_t *from, SlNetSocklen_t *fromlen)
Read data from socket.
Definition: slnetsock.h:316
struct SlNetSock_IpMreq_t SlNetSock_IpMreq_t
The SlNetSock_IpMreq_t structure is used in SLNETSOCK_OPIP_ADD_MEMBERSHIP and SLNETSOCK_OPIP_DROP_MEM...
struct SlNetSock_SecureALPN_t SlNetSock_SecureALPN_t
Secure ALPN structure.
Secure Mask structure.
Definition: slnetsock.h:593
The SlNetSock_SackPermitted_t structure is used in SLNETSOCK_TCP_NOPUSH TCP level option...
Definition: slnetsock.h:513
Definition: slnetsock.h:317
int32_t SlNetSock_sdsIsSet(int16_t sd, SlNetSock_SdSet_t *sdset)
SlNetSock_select's SlNetSock_SdSet_t ISSET function.
Generic socket address type to hold either IPv4 or IPv6 address.
Definition: slnetsock.h:687
int32_t SlNetSock_bind(int16_t sd, const SlNetSock_Addr_t *addr, int16_t addrlen)
Assign a name to a socket.
int32_t SlNetSock_getOpt(int16_t sd, int16_t level, int16_t optname, void *optval, SlNetSocklen_t *optlen)
Get socket options.
int32_t SlNetSock_close(int16_t sd)
Gracefully close socket.
int32_t SlNetSock_shutdown(int16_t sd, int16_t how)
Shutting down parts of a full-duplex connection.
int32_t SlNetSock_getIfID(uint16_t sd)
Get interface ID from socket descriptor (sd)
int32_t SlNetSock_recv(int16_t sd, void *buf, uint32_t len, uint32_t flags)
Read data from TCP socket.
The SlNetSock_NonIpBoundary_t structure is used in SLNETSOCK_OPSOCK_NON_IP_BOUNDARY socket level opti...
Definition: slnetsock.h:537
int32_t SlNetSock_secAttribSet(SlNetSockSecAttrib_t *secAttrib, SlNetSockSecAttrib_e attribName, void *val, uint16_t len)
set a security attribute
Definition: slnetsock.h:331
uint16_t SlNetSocklen_t
The SlNetSocklen_t is used for declaring the socket length parameter.
Definition: slnetsock.h:647
Definition: slnetsock.h:336
int16_t SlNetSock_create(int16_t domain, int16_t type, int16_t protocol, uint32_t ifBitmap, int16_t flags)
Create an endpoint for communication.
IpV4 socket address.
Definition: slnetsock.h:652
struct SlNetSock_AddrIn6_t SlNetSock_AddrIn6_t
SlNetSock IPv6 address, Internet style.
Definition: slnetsock.h:329
struct SlNetSock_Addr_t SlNetSock_Addr_t
IpV4 socket address.
#define SLNETSOCK_MAX_CONCURRENT_SOCKETS
Definition: slnetsock.h:218
int32_t SlNetSock_init(int32_t flags)
Initialize the SlNetSock module.
Definition: slnetsock.h:328
The SlNetSock_SdSet_t structure holds the sd array for SlNetSock_select function. ...
Definition: slnetsock.h:696
Definition: slnetsock.h:330
struct SlNetSock_SockAddrStorage_t SlNetSock_SockAddrStorage_t
Generic socket address type to hold either IPv4 or IPv6 address.
int16_t SlNetSock_accept(int16_t sd, SlNetSock_Addr_t *addr, SlNetSocklen_t *addrlen)
Accept a connection on a socket.
uint32_t s_addr
Definition: slnetsock.h:445
int32_t SlNetSock_sdsClr(int16_t sd, SlNetSock_SdSet_t *sdset)
SlNetSock_select's SlNetSock_SdSet_t CLR function.
struct SlNetSock_InAddr_t SlNetSock_InAddr_t
Internet address.
int32_t SlNetSock_getPeerName(int16_t sd, SlNetSock_Addr_t *addr, SlNetSocklen_t *addrlen)
Return address info about the remote side of the connection.
Internet address.
Definition: slnetsock.h:442
struct SlNetSock_NoOpt_t SlNetSock_NoOpt_t
The SlNetSock_NoOpt_t structure is used in SLNETSOCK_TCP_NOOPT TCP level option.
struct SlNetSock_SackPermitted_t SlNetSock_SackPermitted_t
The SlNetSock_SackPermitted_t structure is used in SLNETSOCK_TCP_NOPUSH TCP level option...
The SlNetSock_Winsize_t structure is used in SLNETSOCK_OPSOCK_RCV_BUF socket level option...
Definition: slnetsock.h:545
int32_t SlNetSock_setOpt(int16_t sd, int16_t level, int16_t optname, void *optval, SlNetSocklen_t optlen)
Set socket options.
The SlNetSock_NoDelay_t structure is used in SLNETSOCK_TCP_NODELAY TCP level option.
Definition: slnetsock.h:481
Definition: slnetsock.h:332
struct SlNetSock_Nonblocking_t SlNetSock_Nonblocking_t
The SlNetSock_Nonblocking_t structure is used in SLNETSOCK_OPSOCK_NON_BLOCKING socket level option...
struct SlNetSock_TransceiverRxOverHead_t SlNetSock_TransceiverRxOverHead_t
The SlNetSock_TransceiverRxOverHead_t structure holds the data for Rx transceiver mode using a raw so...
The SlNetSock_NoPush_t structure is used in SLNETSOCK_TCP_NOPUSH TCP level option.
Definition: slnetsock.h:497
Secure socket attribute context.
Definition: slnetsock.h:569
SlNetSock IPv6 address, Internet style.
Definition: slnetsock.h:661
int32_t SlNetSock_sdsClrAll(SlNetSock_SdSet_t *sdset)
SlNetSock_select's SlNetSock_SdSet_t ZERO function.
struct SlNetSock_NoPush_t SlNetSock_NoPush_t
The SlNetSock_NoPush_t structure is used in SLNETSOCK_TCP_NOPUSH TCP level option.
struct SlNetSock_IpV6Mreq_t SlNetSock_IpV6Mreq_t
The SlNetSock_IpV6Mreq_t structure is used in SLNETSOCK_OPIPV6_ADD_MEMBERSHIP and SLNETSOCK_OPIPV6_DR...
Definition: slnetsock.h:312
SlNetSockTxInhibitThreshold_e
The SlNetSockTxInhibitThreshold_e enumerations is used in SLNETSOCK_OPPHY_TX_INHIBIT_THRESHOLD PHY le...
Definition: slnetsock.h:310
SlNetSock_SecAttribNode_t * SlNetSockSecAttrib_t
Secure socket attribute handler.
Definition: slnetsock.h:580
Definition: slnetsock.h:313
The SlNetSock_Keepalive_t structure is used in SLNETSOCK_OPSOCK_KEEPALIVE socket level option...
Definition: slnetsock.h:529
struct SlNetSock_SecureMask_t SlNetSock_SecureMask_t
Secure Mask structure.
struct SlNetSock_linger_t SlNetSock_linger_t
The SlNetSock_linger_t structure is used in SLNETSOCK_OPSOCK_LINGER socket level option.
Definition: slnetsock.h:315
The SlNetSock_MaxRtt_t structure is used in SLNETSOCK_TCP_MAXRTT TCP level option.
Definition: slnetsock.h:521
int32_t SlNetSock_connect(int16_t sd, const SlNetSock_Addr_t *addr, SlNetSocklen_t addrlen)
Initiate a connection on a socket.
The SlNetSock_TransceiverRxOverHead_t structure holds the data for Rx transceiver mode using a raw so...
Definition: slnetsock.h:705
struct SlNetSock_SecAttribNode_t * next
Definition: slnetsock.h:574
struct SlNetSock_In6Addr_t SlNetSock_In6Addr_t
IpV6 or Ipv6 EUI64.
struct SlNetSock_SecAttribNode_t SlNetSock_SecAttribNode_t
Secure socket attribute context.
The SlNetSock_Nonblocking_t structure is used in SLNETSOCK_OPSOCK_NON_BLOCKING socket level option...
Definition: slnetsock.h:553
Secure Method structure.
Definition: slnetsock.h:601
struct SlNetSock_AddrIn_t SlNetSock_AddrIn_t
SlNetSock IPv4 address, Internet style.
Definition: slnetsock.h:314
struct SlNetSock_SecureMethod_t SlNetSock_SecureMethod_t
Secure Method structure.
SlNetSock IPv4 address, Internet style.
Definition: slnetsock.h:673
IpV6 or Ipv6 EUI64.
Definition: slnetsock.h:468
The SlNetSock_linger_t structure is used in SLNETSOCK_OPSOCK_LINGER socket level option.
Definition: slnetsock.h:627
The SlNetSock_MaxSeg_t structure is used in SLNETSOCK_TCP_MAXSEG TCP level option.
Definition: slnetsock.h:489
int32_t SlNetSock_listen(int16_t sd, int16_t backlog)
Listen for connections on a socket.
int32_t SlNetSock_sendTo(int16_t sd, const void *buf, uint32_t len, uint32_t flags, const SlNetSock_Addr_t *to, SlNetSocklen_t tolen)
Write data to socket.
The SlNetSock_IpV6Mreq_t structure is used in SLNETSOCK_OPIPV6_ADD_MEMBERSHIP and SLNETSOCK_OPIPV6_DR...
Definition: slnetsock.h:618
Definition: slnetsock.h:334
int32_t SlNetSock_secAttribDelete(SlNetSockSecAttrib_t *secAttrib)
Deletes a security attributes object.
struct SlNetSock_NoDelay_t SlNetSock_NoDelay_t
The SlNetSock_NoDelay_t structure is used in SLNETSOCK_TCP_NODELAY TCP level option.
Definition: slnetsock.h:333
SlNetSockSecAttrib_t * SlNetSock_secAttribCreate(void)
Creates a security attributes object.
struct SlNetSock_MaxSeg_t SlNetSock_MaxSeg_t
The SlNetSock_MaxSeg_t structure is used in SLNETSOCK_TCP_MAXSEG TCP level option.
struct timeval SlNetSock_Timeval_t
The SlNetSock_Timeval_t structure is used in the SLNETSOCK_OPSOCK_RCV_TIMEO and SLNETSOCK_OPSOCK_SND_...
Definition: slnetsock.h:642
int32_t SlNetSock_send(int16_t sd, const void *buf, uint32_t len, uint32_t flags)
Write data to TCP socket.
struct SlNetSock_NonIpBoundary_t SlNetSock_NonIpBoundary_t
The SlNetSock_NonIpBoundary_t structure is used in SLNETSOCK_OPSOCK_NON_IP_BOUNDARY socket level opti...
Definition: slnetsock.h:354
struct SlNetSock_Winsize_t SlNetSock_Winsize_t
The SlNetSock_Winsize_t structure is used in SLNETSOCK_OPSOCK_RCV_BUF socket level option...
Secure ALPN structure.
Definition: slnetsock.h:585
The SlNetSock_Broadcast_t structure is used in SLNETSOCK_OPSOCK_BROADCAST socket level option...
Definition: slnetsock.h:561
int32_t SlNetSock_getSockName(int16_t sd, SlNetSock_Addr_t *addr, SlNetSocklen_t *addrlen)
Get local address info by socket descriptor.
The SlNetSock_NoOpt_t structure is used in SLNETSOCK_TCP_NOOPT TCP level option.
Definition: slnetsock.h:505
struct SlNetSock_SdSet_t SlNetSock_SdSet_t
The SlNetSock_SdSet_t structure holds the sd array for SlNetSock_select function. ...
int32_t SlNetSock_select(int16_t nsds, SlNetSock_SdSet_t *readsds, SlNetSock_SdSet_t *writesds, SlNetSock_SdSet_t *exceptsds, SlNetSock_Timeval_t *timeout)
Monitor socket activity.