mirror of
https://github.com/NLnetLabs/unbound.git
synced 2025-12-20 23:00:56 -05:00
- Refactor to use sock_strerr shorthand function.
This commit is contained in:
parent
a6dc0743b4
commit
47a5dc8cae
10 changed files with 77 additions and 313 deletions
|
|
@ -566,11 +566,8 @@ ssl_print_text(RES* res, const char* text)
|
|||
if(r == -1) {
|
||||
if(errno == EAGAIN || errno == EINTR)
|
||||
continue;
|
||||
#ifndef USE_WINSOCK
|
||||
log_err("could not send: %s", strerror(errno));
|
||||
#else
|
||||
log_err("could not send: %s", wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
log_err("could not send: %s",
|
||||
sock_strerror(errno));
|
||||
return 0;
|
||||
}
|
||||
at += r;
|
||||
|
|
@ -627,11 +624,8 @@ ssl_read_line(RES* res, char* buf, size_t max)
|
|||
}
|
||||
if(errno == EINTR || errno == EAGAIN)
|
||||
continue;
|
||||
#ifndef USE_WINSOCK
|
||||
log_err("could not recv: %s", strerror(errno));
|
||||
#else
|
||||
log_err("could not recv: %s", wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
log_err("could not recv: %s",
|
||||
sock_strerror(errno));
|
||||
return 0;
|
||||
}
|
||||
break;
|
||||
|
|
@ -3108,11 +3102,7 @@ handle_req(struct daemon_remote* rc, struct rc_state* s, RES* res)
|
|||
if(rr == 0) return;
|
||||
if(errno == EINTR || errno == EAGAIN)
|
||||
continue;
|
||||
#ifndef USE_WINSOCK
|
||||
log_err("could not recv: %s", strerror(errno));
|
||||
#else
|
||||
log_err("could not recv: %s", wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
log_err("could not recv: %s", sock_strerror(errno));
|
||||
return;
|
||||
}
|
||||
r = (int)rr;
|
||||
|
|
|
|||
|
|
@ -149,15 +149,14 @@ static void dtio_wakeup(struct dt_io_thread* dtio)
|
|||
#ifndef USE_WINSOCK
|
||||
if(errno == EINTR || errno == EAGAIN)
|
||||
continue;
|
||||
log_err("dnstap io wakeup: write: %s", strerror(errno));
|
||||
#else
|
||||
if(WSAGetLastError() == WSAEINPROGRESS)
|
||||
continue;
|
||||
if(WSAGetLastError() == WSAEWOULDBLOCK)
|
||||
continue;
|
||||
log_err("dnstap io stop: write: %s",
|
||||
wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
log_err("dnstap io wakeup: write: %s",
|
||||
sock_strerror(errno));
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
|
@ -656,13 +655,8 @@ static int dtio_check_nb_connect(struct dt_io_thread* dtio)
|
|||
char* to = dtio->socket_path;
|
||||
if(!to) to = dtio->ip_str;
|
||||
if(!to) to = "";
|
||||
#ifndef USE_WINSOCK
|
||||
log_err("dnstap io: failed to connect to \"%s\": %s",
|
||||
to, strerror(error));
|
||||
#else
|
||||
log_err("dnstap io: failed to connect to \"%s\": %s",
|
||||
to, wsa_strerror(error));
|
||||
#endif
|
||||
to, sock_strerror(error));
|
||||
return -1; /* error, close it */
|
||||
}
|
||||
|
||||
|
|
@ -739,7 +733,6 @@ static int dtio_write_buf(struct dt_io_thread* dtio, uint8_t* buf,
|
|||
#ifndef USE_WINSOCK
|
||||
if(errno == EINTR || errno == EAGAIN)
|
||||
return 0;
|
||||
log_err("dnstap io: failed send: %s", strerror(errno));
|
||||
#else
|
||||
if(WSAGetLastError() == WSAEINPROGRESS)
|
||||
return 0;
|
||||
|
|
@ -749,9 +742,8 @@ static int dtio_write_buf(struct dt_io_thread* dtio, uint8_t* buf,
|
|||
UB_EV_WRITE);
|
||||
return 0;
|
||||
}
|
||||
log_err("dnstap io: failed send: %s",
|
||||
wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
log_err("dnstap io: failed send: %s", sock_strerror(errno));
|
||||
return -1;
|
||||
}
|
||||
return ret;
|
||||
|
|
@ -775,7 +767,6 @@ static int dtio_write_with_writev(struct dt_io_thread* dtio)
|
|||
#ifndef USE_WINSOCK
|
||||
if(errno == EINTR || errno == EAGAIN)
|
||||
return 0;
|
||||
log_err("dnstap io: failed writev: %s", strerror(errno));
|
||||
#else
|
||||
if(WSAGetLastError() == WSAEINPROGRESS)
|
||||
return 0;
|
||||
|
|
@ -785,9 +776,8 @@ static int dtio_write_with_writev(struct dt_io_thread* dtio)
|
|||
UB_EV_WRITE);
|
||||
return 0;
|
||||
}
|
||||
log_err("dnstap io: failed writev: %s",
|
||||
wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
log_err("dnstap io: failed writev: %s", sock_strerror(errno));
|
||||
/* close the channel */
|
||||
dtio_del_output_event(dtio);
|
||||
dtio_close_output(dtio);
|
||||
|
|
@ -1479,15 +1469,13 @@ void dtio_cmd_cb(int fd, short ATTR_UNUSED(bits), void* arg)
|
|||
#ifndef USE_WINSOCK
|
||||
if(errno == EINTR || errno == EAGAIN)
|
||||
return; /* ignore this */
|
||||
log_err("dnstap io: failed to read: %s", strerror(errno));
|
||||
#else
|
||||
if(WSAGetLastError() == WSAEINPROGRESS)
|
||||
return;
|
||||
if(WSAGetLastError() == WSAEWOULDBLOCK)
|
||||
return;
|
||||
log_err("dnstap io: failed to read: %s",
|
||||
wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
log_err("dnstap io: failed to read: %s", sock_strerror(errno));
|
||||
/* and then fall through to quit the thread */
|
||||
} else if(r == 0) {
|
||||
verbose(VERB_ALGO, "dnstap io: cmd channel closed");
|
||||
|
|
@ -1849,13 +1837,8 @@ static int dtio_open_output_local(struct dt_io_thread* dtio)
|
|||
struct sockaddr_un s;
|
||||
dtio->fd = socket(AF_LOCAL, SOCK_STREAM, 0);
|
||||
if(dtio->fd == -1) {
|
||||
#ifndef USE_WINSOCK
|
||||
log_err("dnstap io: failed to create socket: %s",
|
||||
strerror(errno));
|
||||
#else
|
||||
log_err("dnstap io: failed to create socket: %s",
|
||||
wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
sock_strerror(errno));
|
||||
return 0;
|
||||
}
|
||||
memset(&s, 0, sizeof(s));
|
||||
|
|
@ -1875,13 +1858,8 @@ static int dtio_open_output_local(struct dt_io_thread* dtio)
|
|||
dtio_close_fd(dtio);
|
||||
return 0; /* no log retries on low verbosity */
|
||||
}
|
||||
#ifndef USE_WINSOCK
|
||||
log_err("dnstap io: failed to connect to \"%s\": %s",
|
||||
to, strerror(errno));
|
||||
#else
|
||||
log_err("dnstap io: failed to connect to \"%s\": %s",
|
||||
to, wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
to, sock_strerror(errno));
|
||||
dtio_close_fd(dtio);
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -1906,12 +1884,7 @@ static int dtio_open_output_tcp(struct dt_io_thread* dtio)
|
|||
}
|
||||
dtio->fd = socket(addr.ss_family, SOCK_STREAM, 0);
|
||||
if(dtio->fd == -1) {
|
||||
#ifndef USE_WINSOCK
|
||||
log_err("can't create socket: %s", strerror(errno));
|
||||
#else
|
||||
log_err("can't create socket: %s",
|
||||
wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
log_err("can't create socket: %s", sock_strerror(errno));
|
||||
return 0;
|
||||
}
|
||||
fd_set_nonblock(dtio->fd);
|
||||
|
|
@ -2104,15 +2077,14 @@ void dt_io_thread_stop(struct dt_io_thread* dtio)
|
|||
#ifndef USE_WINSOCK
|
||||
if(errno == EINTR || errno == EAGAIN)
|
||||
continue;
|
||||
log_err("dnstap io stop: write: %s", strerror(errno));
|
||||
#else
|
||||
if(WSAGetLastError() == WSAEINPROGRESS)
|
||||
continue;
|
||||
if(WSAGetLastError() == WSAEWOULDBLOCK)
|
||||
continue;
|
||||
log_err("dnstap io stop: write: %s",
|
||||
wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
log_err("dnstap io stop: write: %s",
|
||||
sock_strerror(errno));
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
|
|
|||
|
|
@ -278,36 +278,21 @@ static int make_tcp_accept(char* ip)
|
|||
}
|
||||
|
||||
if((s = socket(addr.ss_family, SOCK_STREAM, 0)) == -1) {
|
||||
#ifndef USE_WINSOCK
|
||||
log_err("can't create socket: %s", strerror(errno));
|
||||
#else
|
||||
log_err("can't create socket: %s",
|
||||
wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
log_err("can't create socket: %s", sock_strerror(errno));
|
||||
return -1;
|
||||
}
|
||||
#ifdef SO_REUSEADDR
|
||||
if(setsockopt(s, SOL_SOCKET, SO_REUSEADDR, (void*)&on,
|
||||
(socklen_t)sizeof(on)) < 0) {
|
||||
#ifndef USE_WINSOCK
|
||||
log_err("setsockopt(.. SO_REUSEADDR ..) failed: %s",
|
||||
strerror(errno));
|
||||
#else
|
||||
log_err("setsockopt(.. SO_REUSEADDR ..) failed: %s",
|
||||
wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
sock_strerror(errno));
|
||||
sock_close(s);
|
||||
return -1;
|
||||
}
|
||||
#endif /* SO_REUSEADDR */
|
||||
if(bind(s, (struct sockaddr*)&addr, len) != 0) {
|
||||
#ifndef USE_WINSOCK
|
||||
log_err_addr("can't bind socket", strerror(errno),
|
||||
log_err_addr("can't bind socket", sock_strerror(errno),
|
||||
&addr, len);
|
||||
#else
|
||||
log_err_addr("can't bind socket",
|
||||
wsa_strerror(WSAGetLastError()), &addr, len);
|
||||
#endif
|
||||
sock_close(s);
|
||||
return -1;
|
||||
}
|
||||
|
|
@ -316,11 +301,7 @@ static int make_tcp_accept(char* ip)
|
|||
return -1;
|
||||
}
|
||||
if(listen(s, LISTEN_BACKLOG) == -1) {
|
||||
#ifndef USE_WINSOCK
|
||||
log_err("can't listen: %s", strerror(errno));
|
||||
#else
|
||||
log_err("can't listen: %s", wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
log_err("can't listen: %s", sock_strerror(errno));
|
||||
sock_close(s);
|
||||
return -1;
|
||||
}
|
||||
|
|
@ -647,7 +628,6 @@ static ssize_t receive_bytes(struct tap_data* data, int fd, void* buf,
|
|||
#ifndef USE_WINSOCK
|
||||
if(errno == EINTR || errno == EAGAIN)
|
||||
return -1;
|
||||
log_err("could not recv: %s", strerror(errno));
|
||||
#else /* USE_WINSOCK */
|
||||
if(WSAGetLastError() == WSAEINPROGRESS)
|
||||
return -1;
|
||||
|
|
@ -655,9 +635,8 @@ static ssize_t receive_bytes(struct tap_data* data, int fd, void* buf,
|
|||
ub_winsock_tcp_wouldblock(data->ev, UB_EV_READ);
|
||||
return -1;
|
||||
}
|
||||
log_err("could not recv: %s",
|
||||
wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
log_err("could not recv: %s", sock_strerror(errno));
|
||||
if(verbosity) log_info("dnstap client stream closed from %s",
|
||||
(data->id?data->id:""));
|
||||
return 0;
|
||||
|
|
@ -789,12 +768,7 @@ static int reply_with_accept(struct tap_data* data)
|
|||
}
|
||||
} else {
|
||||
if(send(data->fd, acceptframe, len, 0) == -1) {
|
||||
#ifndef USE_WINSOCK
|
||||
log_err("send failed: %s", strerror(errno));
|
||||
#else
|
||||
log_err("send failed: %s",
|
||||
wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
log_err("send failed: %s", sock_strerror(errno));
|
||||
fd_set_nonblock(data->fd);
|
||||
free(acceptframe);
|
||||
return 0;
|
||||
|
|
@ -827,11 +801,7 @@ static int reply_with_finish(int fd)
|
|||
|
||||
fd_set_block(fd);
|
||||
if(send(fd, finishframe, len, 0) == -1) {
|
||||
#ifndef USE_WINSOCK
|
||||
log_err("send failed: %s", strerror(errno));
|
||||
#else
|
||||
log_err("send failed: %s", wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
log_err("send failed: %s", sock_strerror(errno));
|
||||
fd_set_nonblock(fd);
|
||||
free(finishframe);
|
||||
return 0;
|
||||
|
|
@ -1087,7 +1057,6 @@ void dtio_mainfdcallback(int fd, short ATTR_UNUSED(bits), void* arg)
|
|||
#endif /* EPROTO */
|
||||
)
|
||||
return;
|
||||
log_err_addr("accept failed", strerror(errno), &addr, addrlen);
|
||||
#else /* USE_WINSOCK */
|
||||
if(WSAGetLastError() == WSAEINPROGRESS ||
|
||||
WSAGetLastError() == WSAECONNRESET)
|
||||
|
|
@ -1096,9 +1065,9 @@ void dtio_mainfdcallback(int fd, short ATTR_UNUSED(bits), void* arg)
|
|||
ub_winsock_tcp_wouldblock(maindata->ev, UB_EV_READ);
|
||||
return;
|
||||
}
|
||||
log_err_addr("accept failed", wsa_strerror(WSAGetLastError()),
|
||||
&addr, addrlen);
|
||||
#endif
|
||||
log_err_addr("accept failed", sock_strerror(errno), &addr,
|
||||
addrlen);
|
||||
return;
|
||||
}
|
||||
fd_set_nonblock(s);
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
31 August 2020: Wouter
|
||||
- Merge PR #293: Add missing prototype. Also refactor to use the new
|
||||
shorthand function to clean up the code.
|
||||
- Refactor to use sock_strerr shorthand function.
|
||||
|
||||
27 August 2020: Wouter
|
||||
- Similar to NSD PR#113, implement that interface names can be used,
|
||||
|
|
|
|||
|
|
@ -228,16 +228,14 @@ create_udp_sock(int family, int socktype, struct sockaddr* addr,
|
|||
*noproto = 1;
|
||||
return -1;
|
||||
}
|
||||
log_err("can't create socket: %s", strerror(errno));
|
||||
#else
|
||||
if(WSAGetLastError() == WSAEAFNOSUPPORT ||
|
||||
WSAGetLastError() == WSAEPROTONOSUPPORT) {
|
||||
*noproto = 1;
|
||||
return -1;
|
||||
}
|
||||
log_err("can't create socket: %s",
|
||||
wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
log_err("can't create socket: %s", sock_strerror(errno));
|
||||
*noproto = 0;
|
||||
return -1;
|
||||
}
|
||||
|
|
@ -250,9 +248,9 @@ create_udp_sock(int family, int socktype, struct sockaddr* addr,
|
|||
#ifdef SO_REUSEADDR
|
||||
if(setsockopt(s, SOL_SOCKET, SO_REUSEADDR, (void*)&on,
|
||||
(socklen_t)sizeof(on)) < 0) {
|
||||
#ifndef USE_WINSOCK
|
||||
log_err("setsockopt(.. SO_REUSEADDR ..) failed: %s",
|
||||
strerror(errno));
|
||||
sock_strerror(errno));
|
||||
#ifndef USE_WINSOCK
|
||||
if(errno != ENOSYS) {
|
||||
close(s);
|
||||
*noproto = 0;
|
||||
|
|
@ -260,8 +258,6 @@ create_udp_sock(int family, int socktype, struct sockaddr* addr,
|
|||
return -1;
|
||||
}
|
||||
#else
|
||||
log_err("setsockopt(.. SO_REUSEADDR ..) failed: %s",
|
||||
wsa_strerror(WSAGetLastError()));
|
||||
closesocket(s);
|
||||
*noproto = 0;
|
||||
*inuse = 0;
|
||||
|
|
@ -353,14 +349,8 @@ create_udp_sock(int family, int socktype, struct sockaddr* addr,
|
|||
if(setsockopt(s, SOL_SOCKET, SO_RCVBUFFORCE, (void*)&rcv,
|
||||
(socklen_t)sizeof(rcv)) < 0) {
|
||||
if(errno != EPERM) {
|
||||
# ifndef USE_WINSOCK
|
||||
log_err("setsockopt(..., SO_RCVBUFFORCE, "
|
||||
"...) failed: %s", strerror(errno));
|
||||
# else
|
||||
log_err("setsockopt(..., SO_RCVBUFFORCE, "
|
||||
"...) failed: %s",
|
||||
wsa_strerror(WSAGetLastError()));
|
||||
# endif
|
||||
"...) failed: %s", sock_strerror(errno));
|
||||
sock_close(s);
|
||||
*noproto = 0;
|
||||
*inuse = 0;
|
||||
|
|
@ -369,14 +359,8 @@ create_udp_sock(int family, int socktype, struct sockaddr* addr,
|
|||
# endif /* SO_RCVBUFFORCE */
|
||||
if(setsockopt(s, SOL_SOCKET, SO_RCVBUF, (void*)&rcv,
|
||||
(socklen_t)sizeof(rcv)) < 0) {
|
||||
# ifndef USE_WINSOCK
|
||||
log_err("setsockopt(..., SO_RCVBUF, "
|
||||
"...) failed: %s", strerror(errno));
|
||||
# else
|
||||
log_err("setsockopt(..., SO_RCVBUF, "
|
||||
"...) failed: %s",
|
||||
wsa_strerror(WSAGetLastError()));
|
||||
# endif
|
||||
"...) failed: %s", sock_strerror(errno));
|
||||
sock_close(s);
|
||||
*noproto = 0;
|
||||
*inuse = 0;
|
||||
|
|
@ -410,14 +394,8 @@ create_udp_sock(int family, int socktype, struct sockaddr* addr,
|
|||
if(setsockopt(s, SOL_SOCKET, SO_SNDBUFFORCE, (void*)&snd,
|
||||
(socklen_t)sizeof(snd)) < 0) {
|
||||
if(errno != EPERM) {
|
||||
# ifndef USE_WINSOCK
|
||||
log_err("setsockopt(..., SO_SNDBUFFORCE, "
|
||||
"...) failed: %s", strerror(errno));
|
||||
# else
|
||||
log_err("setsockopt(..., SO_SNDBUFFORCE, "
|
||||
"...) failed: %s",
|
||||
wsa_strerror(WSAGetLastError()));
|
||||
# endif
|
||||
"...) failed: %s", sock_strerror(errno));
|
||||
sock_close(s);
|
||||
*noproto = 0;
|
||||
*inuse = 0;
|
||||
|
|
@ -426,14 +404,8 @@ create_udp_sock(int family, int socktype, struct sockaddr* addr,
|
|||
# endif /* SO_SNDBUFFORCE */
|
||||
if(setsockopt(s, SOL_SOCKET, SO_SNDBUF, (void*)&snd,
|
||||
(socklen_t)sizeof(snd)) < 0) {
|
||||
# ifndef USE_WINSOCK
|
||||
log_err("setsockopt(..., SO_SNDBUF, "
|
||||
"...) failed: %s", strerror(errno));
|
||||
# else
|
||||
log_err("setsockopt(..., SO_SNDBUF, "
|
||||
"...) failed: %s",
|
||||
wsa_strerror(WSAGetLastError()));
|
||||
# endif
|
||||
"...) failed: %s", sock_strerror(errno));
|
||||
sock_close(s);
|
||||
*noproto = 0;
|
||||
*inuse = 0;
|
||||
|
|
@ -464,14 +436,8 @@ create_udp_sock(int family, int socktype, struct sockaddr* addr,
|
|||
int val=(v6only==2)?0:1;
|
||||
if (setsockopt(s, IPPROTO_IPV6, IPV6_V6ONLY,
|
||||
(void*)&val, (socklen_t)sizeof(val)) < 0) {
|
||||
#ifndef USE_WINSOCK
|
||||
log_err("setsockopt(..., IPV6_V6ONLY"
|
||||
", ...) failed: %s", strerror(errno));
|
||||
#else
|
||||
log_err("setsockopt(..., IPV6_V6ONLY"
|
||||
", ...) failed: %s",
|
||||
wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
", ...) failed: %s", sock_strerror(errno));
|
||||
sock_close(s);
|
||||
*noproto = 0;
|
||||
*inuse = 0;
|
||||
|
|
@ -490,14 +456,8 @@ create_udp_sock(int family, int socktype, struct sockaddr* addr,
|
|||
*/
|
||||
if (setsockopt(s, IPPROTO_IPV6, IPV6_USE_MIN_MTU,
|
||||
(void*)&on, (socklen_t)sizeof(on)) < 0) {
|
||||
# ifndef USE_WINSOCK
|
||||
log_err("setsockopt(..., IPV6_USE_MIN_MTU, "
|
||||
"...) failed: %s", strerror(errno));
|
||||
# else
|
||||
log_err("setsockopt(..., IPV6_USE_MIN_MTU, "
|
||||
"...) failed: %s",
|
||||
wsa_strerror(WSAGetLastError()));
|
||||
# endif
|
||||
"...) failed: %s", sock_strerror(errno));
|
||||
sock_close(s);
|
||||
*noproto = 0;
|
||||
*inuse = 0;
|
||||
|
|
@ -511,13 +471,8 @@ create_udp_sock(int family, int socktype, struct sockaddr* addr,
|
|||
*/
|
||||
if (setsockopt(s, IPPROTO_IPV6, IPV6_MTU,
|
||||
(void*)&mtu, (socklen_t)sizeof(mtu)) < 0) {
|
||||
# ifndef USE_WINSOCK
|
||||
log_err("setsockopt(..., IPV6_MTU, ...) failed: %s",
|
||||
strerror(errno));
|
||||
# else
|
||||
log_err("setsockopt(..., IPV6_MTU, ...) failed: %s",
|
||||
wsa_strerror(WSAGetLastError()));
|
||||
# endif
|
||||
sock_strerror(errno));
|
||||
sock_close(s);
|
||||
*noproto = 0;
|
||||
*inuse = 0;
|
||||
|
|
@ -660,29 +615,22 @@ create_tcp_accept_sock(struct addrinfo *addr, int v6only, int* noproto,
|
|||
*noproto = 1;
|
||||
return -1;
|
||||
}
|
||||
log_err("can't create socket: %s", strerror(errno));
|
||||
#else
|
||||
if(WSAGetLastError() == WSAEAFNOSUPPORT ||
|
||||
WSAGetLastError() == WSAEPROTONOSUPPORT) {
|
||||
*noproto = 1;
|
||||
return -1;
|
||||
}
|
||||
log_err("can't create socket: %s",
|
||||
wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
log_err("can't create socket: %s", sock_strerror(errno));
|
||||
return -1;
|
||||
}
|
||||
if (mss > 0) {
|
||||
#if defined(IPPROTO_TCP) && defined(TCP_MAXSEG)
|
||||
if(setsockopt(s, IPPROTO_TCP, TCP_MAXSEG, (void*)&mss,
|
||||
(socklen_t)sizeof(mss)) < 0) {
|
||||
#ifndef USE_WINSOCK
|
||||
log_err(" setsockopt(.. TCP_MAXSEG ..) failed: %s",
|
||||
strerror(errno));
|
||||
#else
|
||||
log_err(" setsockopt(.. TCP_MAXSEG ..) failed: %s",
|
||||
wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
sock_strerror(errno));
|
||||
} else {
|
||||
verbose(VERB_ALGO,
|
||||
" tcp socket mss set to %d", mss);
|
||||
|
|
@ -699,13 +647,8 @@ create_tcp_accept_sock(struct addrinfo *addr, int v6only, int* noproto,
|
|||
#ifdef SO_REUSEADDR
|
||||
if(setsockopt(s, SOL_SOCKET, SO_REUSEADDR, (void*)&on,
|
||||
(socklen_t)sizeof(on)) < 0) {
|
||||
#ifndef USE_WINSOCK
|
||||
log_err("setsockopt(.. SO_REUSEADDR ..) failed: %s",
|
||||
strerror(errno));
|
||||
#else
|
||||
log_err("setsockopt(.. SO_REUSEADDR ..) failed: %s",
|
||||
wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
sock_strerror(errno));
|
||||
sock_close(s);
|
||||
return -1;
|
||||
}
|
||||
|
|
@ -741,13 +684,8 @@ create_tcp_accept_sock(struct addrinfo *addr, int v6only, int* noproto,
|
|||
if(addr->ai_family == AF_INET6 && v6only) {
|
||||
if(setsockopt(s, IPPROTO_IPV6, IPV6_V6ONLY,
|
||||
(void*)&on, (socklen_t)sizeof(on)) < 0) {
|
||||
#ifndef USE_WINSOCK
|
||||
log_err("setsockopt(..., IPV6_V6ONLY, ...) failed: %s",
|
||||
strerror(errno));
|
||||
#else
|
||||
log_err("setsockopt(..., IPV6_V6ONLY, ...) failed: %s",
|
||||
wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
sock_strerror(errno));
|
||||
sock_close(s);
|
||||
return -1;
|
||||
}
|
||||
|
|
@ -809,11 +747,7 @@ create_tcp_accept_sock(struct addrinfo *addr, int v6only, int* noproto,
|
|||
return -1;
|
||||
}
|
||||
if(listen(s, TCP_BACKLOG) == -1) {
|
||||
#ifndef USE_WINSOCK
|
||||
log_err("can't listen: %s", strerror(errno));
|
||||
#else
|
||||
log_err("can't listen: %s", wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
log_err("can't listen: %s", sock_strerror(errno));
|
||||
sock_close(s);
|
||||
return -1;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -185,12 +185,7 @@ pick_outgoing_tcp(struct waiting_tcp* w, int s)
|
|||
((struct sockaddr_in6*)&pi->addr)->sin6_port = 0;
|
||||
else ((struct sockaddr_in*)&pi->addr)->sin_port = 0;
|
||||
if(bind(s, (struct sockaddr*)&pi->addr, pi->addrlen) != 0) {
|
||||
#ifndef USE_WINSOCK
|
||||
log_err("outgoing tcp: bind: %s", strerror(errno));
|
||||
#else
|
||||
log_err("outgoing tcp: bind: %s",
|
||||
wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
log_err("outgoing tcp: bind: %s", sock_strerror(errno));
|
||||
sock_close(s);
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -221,13 +216,8 @@ outnet_get_tcp_fd(struct sockaddr_storage* addr, socklen_t addrlen, int tcp_mss,
|
|||
s = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP);
|
||||
}
|
||||
if(s == -1) {
|
||||
#ifndef USE_WINSOCK
|
||||
log_err_addr("outgoing tcp: socket", strerror(errno),
|
||||
log_err_addr("outgoing tcp: socket", sock_strerror(errno),
|
||||
addr, addrlen);
|
||||
#else
|
||||
log_err_addr("outgoing tcp: socket",
|
||||
wsa_strerror(WSAGetLastError()), addr, addrlen);
|
||||
#endif
|
||||
return -1;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -593,11 +593,7 @@ contact_server(const char* svr, struct config_file* cfg, int statuscmd)
|
|||
addrfamily = addr_is_ip6(&addr, addrlen)?PF_INET6:PF_INET;
|
||||
fd = socket(addrfamily, SOCK_STREAM, proto);
|
||||
if(fd == -1) {
|
||||
#ifndef USE_WINSOCK
|
||||
fatal_exit("socket: %s", strerror(errno));
|
||||
#else
|
||||
fatal_exit("socket: %s", wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
fatal_exit("socket: %s", sock_strerror(errno));
|
||||
}
|
||||
if(connect(fd, (struct sockaddr*)&addr, addrlen) < 0) {
|
||||
#ifndef USE_WINSOCK
|
||||
|
|
@ -681,11 +677,7 @@ remote_read(SSL* ssl, int fd, char* buf, size_t len)
|
|||
/* EOF */
|
||||
return 0;
|
||||
}
|
||||
#ifndef USE_WINSOCK
|
||||
fatal_exit("could not recv: %s", strerror(errno));
|
||||
#else
|
||||
fatal_exit("could not recv: %s", wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
fatal_exit("could not recv: %s", sock_strerror(errno));
|
||||
}
|
||||
buf[rr] = 0;
|
||||
}
|
||||
|
|
@ -701,11 +693,7 @@ remote_write(SSL* ssl, int fd, const char* buf, size_t len)
|
|||
ssl_err("could not SSL_write");
|
||||
} else {
|
||||
if(send(fd, buf, len, 0) < (ssize_t)len) {
|
||||
#ifndef USE_WINSOCK
|
||||
fatal_exit("could not send: %s", strerror(errno));
|
||||
#else
|
||||
fatal_exit("could not send: %s", wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
fatal_exit("could not send: %s", sock_strerror(errno));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -372,11 +372,7 @@ service_send(struct ringbuf* ring, struct timeval* now, sldns_buffer* pkt,
|
|||
sldns_buffer_limit(pkt), 0,
|
||||
(struct sockaddr*)srv_addr, srv_len);
|
||||
if(sent == -1) {
|
||||
#ifndef USE_WINSOCK
|
||||
log_err("sendto: %s", strerror(errno));
|
||||
#else
|
||||
log_err("sendto: %s", wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
log_err("sendto: %s", sock_strerror(errno));
|
||||
} else if(sent != (ssize_t)sldns_buffer_limit(pkt)) {
|
||||
log_err("sendto: partial send");
|
||||
}
|
||||
|
|
@ -398,13 +394,12 @@ do_proxy(struct proxy* p, int retsock, sldns_buffer* pkt)
|
|||
#ifndef USE_WINSOCK
|
||||
if(errno == EAGAIN || errno == EINTR)
|
||||
return;
|
||||
log_err("recv: %s", strerror(errno));
|
||||
#else
|
||||
if(WSAGetLastError() == WSAEINPROGRESS ||
|
||||
WSAGetLastError() == WSAEWOULDBLOCK)
|
||||
return;
|
||||
log_err("recv: %s", wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
log_err("recv: %s", sock_strerror(errno));
|
||||
return;
|
||||
}
|
||||
sldns_buffer_set_limit(pkt, (size_t)r);
|
||||
|
|
@ -414,11 +409,7 @@ do_proxy(struct proxy* p, int retsock, sldns_buffer* pkt)
|
|||
r = sendto(retsock, (void*)sldns_buffer_begin(pkt), (size_t)r,
|
||||
0, (struct sockaddr*)&p->addr, p->addr_len);
|
||||
if(r == -1) {
|
||||
#ifndef USE_WINSOCK
|
||||
log_err("sendto: %s", strerror(errno));
|
||||
#else
|
||||
log_err("sendto: %s", wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
log_err("sendto: %s", sock_strerror(errno));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -469,11 +460,7 @@ find_create_proxy(struct sockaddr_storage* from, socklen_t from_len,
|
|||
if(!p) fatal_exit("out of memory");
|
||||
p->s = socket(serv_ip6?AF_INET6:AF_INET, SOCK_DGRAM, 0);
|
||||
if(p->s == -1) {
|
||||
#ifndef USE_WINSOCK
|
||||
fatal_exit("socket: %s", strerror(errno));
|
||||
#else
|
||||
fatal_exit("socket: %s", wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
fatal_exit("socket: %s", sock_strerror(errno));
|
||||
}
|
||||
fd_set_nonblock(p->s);
|
||||
memmove(&p->addr, from, from_len);
|
||||
|
|
@ -507,14 +494,12 @@ service_recv(int s, struct ringbuf* ring, sldns_buffer* pkt,
|
|||
#ifndef USE_WINSOCK
|
||||
if(errno == EAGAIN || errno == EINTR)
|
||||
return;
|
||||
fatal_exit("recvfrom: %s", strerror(errno));
|
||||
#else
|
||||
if(WSAGetLastError() == WSAEWOULDBLOCK ||
|
||||
WSAGetLastError() == WSAEINPROGRESS)
|
||||
return;
|
||||
fatal_exit("recvfrom: %s",
|
||||
wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
fatal_exit("recvfrom: %s", sock_strerror(errno));
|
||||
}
|
||||
sldns_buffer_set_limit(pkt, (size_t)len);
|
||||
/* find its proxy element */
|
||||
|
|
@ -571,14 +556,13 @@ service_tcp_listen(int s, fd_set* rorig, int* max, struct tcp_proxy** proxies,
|
|||
#ifndef USE_WINSOCK
|
||||
if(errno == EAGAIN || errno == EINTR)
|
||||
return;
|
||||
fatal_exit("accept: %s", strerror(errno));
|
||||
#else
|
||||
if(WSAGetLastError() == WSAEWOULDBLOCK ||
|
||||
WSAGetLastError() == WSAEINPROGRESS ||
|
||||
WSAGetLastError() == WSAECONNRESET)
|
||||
return;
|
||||
fatal_exit("accept: %s", wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
fatal_exit("accept: %s", sock_strerror(errno));
|
||||
}
|
||||
p = (struct tcp_proxy*)calloc(1, sizeof(*p));
|
||||
if(!p) fatal_exit("out of memory");
|
||||
|
|
@ -589,11 +573,7 @@ service_tcp_listen(int s, fd_set* rorig, int* max, struct tcp_proxy** proxies,
|
|||
p->server_s = socket(addr_is_ip6(srv_addr, srv_len)?AF_INET6:AF_INET,
|
||||
SOCK_STREAM, 0);
|
||||
if(p->server_s == -1) {
|
||||
#ifndef USE_WINSOCK
|
||||
fatal_exit("tcp socket: %s", strerror(errno));
|
||||
#else
|
||||
fatal_exit("tcp socket: %s", wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
fatal_exit("tcp socket: %s", sock_strerror(errno));
|
||||
}
|
||||
fd_set_nonblock(p->client_s);
|
||||
fd_set_nonblock(p->server_s);
|
||||
|
|
@ -642,13 +622,12 @@ tcp_relay_read(int s, struct tcp_send_list** first,
|
|||
#ifndef USE_WINSOCK
|
||||
if(errno == EINTR || errno == EAGAIN)
|
||||
return 1;
|
||||
log_err("tcp read: %s", strerror(errno));
|
||||
#else
|
||||
if(WSAGetLastError() == WSAEINPROGRESS ||
|
||||
WSAGetLastError() == WSAEWOULDBLOCK)
|
||||
return 1;
|
||||
log_err("tcp read: %s", wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
log_err("tcp read: %s", sock_strerror(errno));
|
||||
return 0;
|
||||
} else if(r == 0) {
|
||||
/* connection closed */
|
||||
|
|
@ -700,14 +679,12 @@ tcp_relay_write(int s, struct tcp_send_list** first,
|
|||
#ifndef USE_WINSOCK
|
||||
if(errno == EAGAIN || errno == EINTR)
|
||||
return 1;
|
||||
log_err("tcp write: %s", strerror(errno));
|
||||
#else
|
||||
if(WSAGetLastError() == WSAEWOULDBLOCK ||
|
||||
WSAGetLastError() == WSAEINPROGRESS)
|
||||
return 1;
|
||||
log_err("tcp write: %s",
|
||||
wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
log_err("tcp write: %s", sock_strerror(errno));
|
||||
return 0;
|
||||
} else if(r == 0) {
|
||||
/* closed */
|
||||
|
|
@ -1018,11 +995,7 @@ service(const char* bind_str, int bindport, const char* serv_str,
|
|||
/* bind UDP port */
|
||||
if((s = socket(str_is_ip6(bind_str)?AF_INET6:AF_INET,
|
||||
SOCK_DGRAM, 0)) == -1) {
|
||||
#ifndef USE_WINSOCK
|
||||
fatal_exit("socket: %s", strerror(errno));
|
||||
#else
|
||||
fatal_exit("socket: %s", wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
fatal_exit("socket: %s", sock_strerror(errno));
|
||||
}
|
||||
i=0;
|
||||
if(bindport == 0) {
|
||||
|
|
@ -1035,11 +1008,7 @@ service(const char* bind_str, int bindport, const char* serv_str,
|
|||
exit(1);
|
||||
}
|
||||
if(bind(s, (struct sockaddr*)&bind_addr, bind_len) == -1) {
|
||||
#ifndef USE_WINSOCK
|
||||
log_err("bind: %s", strerror(errno));
|
||||
#else
|
||||
log_err("bind: %s", wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
log_err("bind: %s", sock_strerror(errno));
|
||||
if(i--==0)
|
||||
fatal_exit("cannot bind any port");
|
||||
bindport = 1024 + ((int)arc4random())%64000;
|
||||
|
|
@ -1049,39 +1018,22 @@ service(const char* bind_str, int bindport, const char* serv_str,
|
|||
/* and TCP port */
|
||||
if((listen_s = socket(str_is_ip6(bind_str)?AF_INET6:AF_INET,
|
||||
SOCK_STREAM, 0)) == -1) {
|
||||
#ifndef USE_WINSOCK
|
||||
fatal_exit("tcp socket: %s", strerror(errno));
|
||||
#else
|
||||
fatal_exit("tcp socket: %s", wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
fatal_exit("tcp socket: %s", sock_strerror(errno));
|
||||
}
|
||||
#ifdef SO_REUSEADDR
|
||||
if(1) {
|
||||
int on = 1;
|
||||
if(setsockopt(listen_s, SOL_SOCKET, SO_REUSEADDR, (void*)&on,
|
||||
(socklen_t)sizeof(on)) < 0)
|
||||
#ifndef USE_WINSOCK
|
||||
fatal_exit("setsockopt(.. SO_REUSEADDR ..) failed: %s",
|
||||
strerror(errno));
|
||||
#else
|
||||
fatal_exit("setsockopt(.. SO_REUSEADDR ..) failed: %s",
|
||||
wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
sock_strerror(errno));
|
||||
}
|
||||
#endif
|
||||
if(bind(listen_s, (struct sockaddr*)&bind_addr, bind_len) == -1) {
|
||||
#ifndef USE_WINSOCK
|
||||
fatal_exit("tcp bind: %s", strerror(errno));
|
||||
#else
|
||||
fatal_exit("tcp bind: %s", wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
fatal_exit("tcp bind: %s", sock_strerror(errno));
|
||||
}
|
||||
if(listen(listen_s, 5) == -1) {
|
||||
#ifndef USE_WINSOCK
|
||||
fatal_exit("tcp listen: %s", strerror(errno));
|
||||
#else
|
||||
fatal_exit("tcp listen: %s", wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
fatal_exit("tcp listen: %s", sock_strerror(errno));
|
||||
}
|
||||
fd_set_nonblock(listen_s);
|
||||
printf("listening on port: %d\n", bindport);
|
||||
|
|
|
|||
|
|
@ -233,12 +233,7 @@ perfsetup(struct perfinfo* info)
|
|||
addr_is_ip6(&info->dest, info->destlen)?
|
||||
AF_INET6:AF_INET, SOCK_DGRAM, 0);
|
||||
if(info->io[i].fd == -1) {
|
||||
#ifndef USE_WINSOCK
|
||||
fatal_exit("socket: %s", strerror(errno));
|
||||
#else
|
||||
fatal_exit("socket: %s",
|
||||
wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
fatal_exit("socket: %s", sock_strerror(errno));
|
||||
}
|
||||
if(info->io[i].fd > info->maxfd)
|
||||
info->maxfd = info->io[i].fd;
|
||||
|
|
@ -281,11 +276,7 @@ perfsend(struct perfinfo* info, size_t n, struct timeval* now)
|
|||
/*log_hex("send", info->qlist_data[info->qlist_idx],
|
||||
info->qlist_len[info->qlist_idx]);*/
|
||||
if(r == -1) {
|
||||
#ifndef USE_WINSOCK
|
||||
log_err("sendto: %s", strerror(errno));
|
||||
#else
|
||||
log_err("sendto: %s", wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
log_err("sendto: %s", sock_strerror(errno));
|
||||
} else if(r != (ssize_t)info->qlist_len[info->qlist_idx]) {
|
||||
log_err("partial sendto");
|
||||
}
|
||||
|
|
@ -305,11 +296,7 @@ perfreply(struct perfinfo* info, size_t n, struct timeval* now)
|
|||
r = recv(info->io[n].fd, (void*)sldns_buffer_begin(info->buf),
|
||||
sldns_buffer_capacity(info->buf), 0);
|
||||
if(r == -1) {
|
||||
#ifndef USE_WINSOCK
|
||||
log_err("recv: %s", strerror(errno));
|
||||
#else
|
||||
log_err("recv: %s", wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
log_err("recv: %s", sock_strerror(errno));
|
||||
} else {
|
||||
info->by_rcode[LDNS_RCODE_WIRE(sldns_buffer_begin(
|
||||
info->buf))]++;
|
||||
|
|
|
|||
|
|
@ -373,12 +373,7 @@ comm_point_send_udp_msg(struct comm_point *c, sldns_buffer* packet,
|
|||
if(sent == -1) {
|
||||
if(!udp_send_errno_needs_log(addr, addrlen))
|
||||
return 0;
|
||||
#ifndef USE_WINSOCK
|
||||
verbose(VERB_OPS, "sendto failed: %s", strerror(errno));
|
||||
#else
|
||||
verbose(VERB_OPS, "sendto failed: %s",
|
||||
wsa_strerror(WSAGetLastError()));
|
||||
#endif
|
||||
verbose(VERB_OPS, "sendto failed: %s", sock_strerror(errno));
|
||||
log_addr(VERB_OPS, "remote address is",
|
||||
(struct sockaddr_storage*)addr, addrlen);
|
||||
return 0;
|
||||
|
|
@ -845,7 +840,6 @@ int comm_point_perform_accept(struct comm_point* c,
|
|||
return -1;
|
||||
}
|
||||
#endif
|
||||
log_err_addr("accept failed", strerror(errno), addr, *addrlen);
|
||||
#else /* USE_WINSOCK */
|
||||
if(WSAGetLastError() == WSAEINPROGRESS ||
|
||||
WSAGetLastError() == WSAECONNRESET)
|
||||
|
|
@ -854,9 +848,9 @@ int comm_point_perform_accept(struct comm_point* c,
|
|||
ub_winsock_tcp_wouldblock(c->ev->ev, UB_EV_READ);
|
||||
return -1;
|
||||
}
|
||||
log_err_addr("accept failed", wsa_strerror(WSAGetLastError()),
|
||||
addr, *addrlen);
|
||||
#endif
|
||||
log_err_addr("accept failed", sock_strerror(errno), addr,
|
||||
*addrlen);
|
||||
return -1;
|
||||
}
|
||||
if(c->tcp_conn_limit && c->type == comm_tcp_accept) {
|
||||
|
|
@ -1435,8 +1429,6 @@ comm_point_tcp_handle_read(int fd, struct comm_point* c, int short_ok)
|
|||
if(errno == ECONNRESET && verbosity < 2)
|
||||
return 0; /* silence reset by peer */
|
||||
#endif
|
||||
log_err_addr("read (in tcp s)", strerror(errno),
|
||||
&c->repinfo.addr, c->repinfo.addrlen);
|
||||
#else /* USE_WINSOCK */
|
||||
if(WSAGetLastError() == WSAECONNRESET)
|
||||
return 0;
|
||||
|
|
@ -1447,10 +1439,9 @@ comm_point_tcp_handle_read(int fd, struct comm_point* c, int short_ok)
|
|||
UB_EV_READ);
|
||||
return 1;
|
||||
}
|
||||
log_err_addr("read (in tcp s)",
|
||||
wsa_strerror(WSAGetLastError()),
|
||||
&c->repinfo.addr, c->repinfo.addrlen);
|
||||
#endif
|
||||
log_err_addr("read (in tcp s)", sock_strerror(errno),
|
||||
&c->repinfo.addr, c->repinfo.addrlen);
|
||||
return 0;
|
||||
}
|
||||
c->tcp_byte_count += r;
|
||||
|
|
@ -1483,8 +1474,6 @@ comm_point_tcp_handle_read(int fd, struct comm_point* c, int short_ok)
|
|||
#ifndef USE_WINSOCK
|
||||
if(errno == EINTR || errno == EAGAIN)
|
||||
return 1;
|
||||
log_err_addr("read (in tcp r)", strerror(errno),
|
||||
&c->repinfo.addr, c->repinfo.addrlen);
|
||||
#else /* USE_WINSOCK */
|
||||
if(WSAGetLastError() == WSAECONNRESET)
|
||||
return 0;
|
||||
|
|
@ -1494,10 +1483,9 @@ comm_point_tcp_handle_read(int fd, struct comm_point* c, int short_ok)
|
|||
ub_winsock_tcp_wouldblock(c->ev->ev, UB_EV_READ);
|
||||
return 1;
|
||||
}
|
||||
log_err_addr("read (in tcp r)",
|
||||
wsa_strerror(WSAGetLastError()),
|
||||
&c->repinfo.addr, c->repinfo.addrlen);
|
||||
#endif
|
||||
log_err_addr("read (in tcp r)", sock_strerror(errno),
|
||||
&c->repinfo.addr, c->repinfo.addrlen);
|
||||
return 0;
|
||||
}
|
||||
sldns_buffer_skip(c->buffer, r);
|
||||
|
|
@ -1716,8 +1704,6 @@ comm_point_tcp_handle_write(int fd, struct comm_point* c)
|
|||
if(errno == ECONNRESET && verbosity < 2)
|
||||
return 0; /* silence reset by peer */
|
||||
#endif
|
||||
log_err_addr("tcp send r", strerror(errno),
|
||||
&c->repinfo.addr, c->repinfo.addrlen);
|
||||
#else
|
||||
if(WSAGetLastError() == WSAEINPROGRESS)
|
||||
return 1;
|
||||
|
|
@ -1727,9 +1713,9 @@ comm_point_tcp_handle_write(int fd, struct comm_point* c)
|
|||
}
|
||||
if(WSAGetLastError() == WSAECONNRESET && verbosity < 2)
|
||||
return 0; /* silence reset by peer */
|
||||
log_err_addr("tcp send r", wsa_strerror(WSAGetLastError()),
|
||||
&c->repinfo.addr, c->repinfo.addrlen);
|
||||
#endif
|
||||
log_err_addr("tcp send r", sock_strerror(errno),
|
||||
&c->repinfo.addr, c->repinfo.addrlen);
|
||||
return 0;
|
||||
}
|
||||
sldns_buffer_skip(buffer, r);
|
||||
|
|
@ -1914,8 +1900,6 @@ http_read_more(int fd, struct comm_point* c)
|
|||
#ifndef USE_WINSOCK
|
||||
if(errno == EINTR || errno == EAGAIN)
|
||||
return 1;
|
||||
log_err_addr("read (in http r)", strerror(errno),
|
||||
&c->repinfo.addr, c->repinfo.addrlen);
|
||||
#else /* USE_WINSOCK */
|
||||
if(WSAGetLastError() == WSAECONNRESET)
|
||||
return 0;
|
||||
|
|
@ -1925,10 +1909,9 @@ http_read_more(int fd, struct comm_point* c)
|
|||
ub_winsock_tcp_wouldblock(c->ev->ev, UB_EV_READ);
|
||||
return 1;
|
||||
}
|
||||
log_err_addr("read (in http r)",
|
||||
wsa_strerror(WSAGetLastError()),
|
||||
&c->repinfo.addr, c->repinfo.addrlen);
|
||||
#endif
|
||||
log_err_addr("read (in http r)", sock_strerror(errno),
|
||||
&c->repinfo.addr, c->repinfo.addrlen);
|
||||
return 0;
|
||||
}
|
||||
sldns_buffer_skip(c->buffer, r);
|
||||
|
|
@ -2364,8 +2347,6 @@ http_write_more(int fd, struct comm_point* c)
|
|||
#ifndef USE_WINSOCK
|
||||
if(errno == EINTR || errno == EAGAIN)
|
||||
return 1;
|
||||
log_err_addr("http send r", strerror(errno),
|
||||
&c->repinfo.addr, c->repinfo.addrlen);
|
||||
#else
|
||||
if(WSAGetLastError() == WSAEINPROGRESS)
|
||||
return 1;
|
||||
|
|
@ -2373,9 +2354,9 @@ http_write_more(int fd, struct comm_point* c)
|
|||
ub_winsock_tcp_wouldblock(c->ev->ev, UB_EV_WRITE);
|
||||
return 1;
|
||||
}
|
||||
log_err_addr("http send r", wsa_strerror(WSAGetLastError()),
|
||||
&c->repinfo.addr, c->repinfo.addrlen);
|
||||
#endif
|
||||
log_err_addr("http send r", sock_strerror(errno),
|
||||
&c->repinfo.addr, c->repinfo.addrlen);
|
||||
return 0;
|
||||
}
|
||||
sldns_buffer_skip(c->buffer, r);
|
||||
|
|
|
|||
Loading…
Reference in a new issue