MCPcopy Create free account
hub / github.com/cppla/ServerStatus / net_socket_read_wait

Function net_socket_read_wait

server/src/system.c:1507–1540  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1505}
1506
1507int net_socket_read_wait(NETSOCKET sock, int time)
1508{
1509 struct timeval tv;
1510 fd_set readfds;
1511 int sockid;
1512
1513 tv.tv_sec = 0;
1514 tv.tv_usec = 1000*time;
1515 sockid = 0;
1516
1517 FD_ZERO(&readfds);
1518 if(sock.ipv4sock >= 0)
1519 {
1520 FD_SET(sock.ipv4sock, &readfds);
1521 sockid = sock.ipv4sock;
1522 }
1523 if(sock.ipv6sock >= 0)
1524 {
1525 FD_SET(sock.ipv6sock, &readfds);
1526 if(sock.ipv6sock > sockid)
1527 sockid = sock.ipv6sock;
1528 }
1529
1530 /* don't care about writefds and exceptfds */
1531 select(sockid+1, &readfds, NULL, NULL, &tv);
1532
1533 if(sock.ipv4sock >= 0 && FD_ISSET(sock.ipv4sock, &readfds))
1534 return 1;
1535
1536 if(sock.ipv6sock >= 0 && FD_ISSET(sock.ipv6sock, &readfds))
1537 return 1;
1538
1539 return 0;
1540}
1541
1542int time_timestamp()
1543{

Callers 1

RunMethod · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected