16 #include "../../stdafx.h"
17 #include "../../date_func.h"
18 #include "../../debug.h"
21 #include "../../safeguards.h"
31 *this->bind.
Append() = *addr;
53 addr->Listen(SOCK_DGRAM, &this->
sockets);
65 closesocket(s->second);
93 if (!send.
IsFamily(s->first.GetAddress()->ss_family))
continue;
97 #ifndef BEOS_NET_SERVER
100 unsigned long val = 1;
101 if (setsockopt(s->second, SOL_SOCKET, SO_BROADCAST, (
char *) &val,
sizeof(val)) < 0) {
102 DEBUG(net, 1,
"[udp] setting broadcast failed with: %i", GET_LAST_ERROR());
124 for (
int i = 0; i < 1000; i++) {
125 struct sockaddr_storage client_addr;
126 memset(&client_addr, 0,
sizeof(client_addr));
129 socklen_t client_len =
sizeof(client_addr);
133 int nbytes = recvfrom(s->second, (
char*)p.
buffer,
SEND_MTU, 0, (
struct sockaddr *)&client_addr, &client_len);
136 if (nbytes <= 0)
break;
137 if (nbytes <= 2)
continue;
144 if (nbytes != p.
size) {
246 for (i = 0; i < num_grfs; i++) {