From: Jeffrey Altman Date: Thu, 14 Jun 2007 20:05:03 +0000 (+0000) Subject: STABLE14-rx-lwp-sendmsg-20070614 X-Git-Tag: openafs-stable-1_4_5-pre1~92 X-Git-Url: https://git.michaelhowe.org/gitweb/?a=commitdiff_plain;h=00943d625ec0c536857313bfd447ea7e1b36089d;p=packages%2Fo%2Fopenafs.git STABLE14-rx-lwp-sendmsg-20070614 update the lwp version of rxi_sendmsg to return the same error, -1, returned by the pthread version. replace errno with WSAGetLastError() in the Windows blocks so that the correct error value is checked. (cherry picked from commit 46a931d020da24dd534e1064ea9fbe693acbdf65) --- diff --git a/src/rx/rx_lwp.c b/src/rx/rx_lwp.c index 9748b7d6e..5f9f1c172 100644 --- a/src/rx/rx_lwp.c +++ b/src/rx/rx_lwp.c @@ -445,12 +445,12 @@ rxi_Sendmsg(osi_socket socket, struct msghdr *msg_p, int flags) if (!(sfds = IOMGR_AllocFDSet())) { (osi_Msg "rx failed to alloc fd_set: "); perror("rx_sendmsg"); - return 3; + return -1; } FD_SET(socket, sfds); } #ifdef AFS_NT40_ENV - if (errno) + if (WSAGetLastError()) #elif defined(AFS_LINUX22_ENV) /* linux unfortunately returns ECONNREFUSED if the target port * is no longer in use */ @@ -463,7 +463,7 @@ rxi_Sendmsg(osi_socket socket, struct msghdr *msg_p, int flags) { (osi_Msg "rx failed to send packet: "); perror("rx_sendmsg"); - return 3; + return -1; } while ((err = select(socket + 1, 0, sfds, 0, 0)) != 1) { if (err >= 0 || errno != EINTR) diff --git a/src/rx/rx_packet.c b/src/rx/rx_packet.c index bf1f4da23..37f984921 100644 --- a/src/rx/rx_packet.c +++ b/src/rx/rx_packet.c @@ -2216,7 +2216,7 @@ rxi_SendPacket(struct rx_call *call, struct rx_connection *conn, * code. So, when this happens let's "down" the host NOW so * we don't sit around waiting for this host to timeout later. */ - if (call && code == -1 && errno == WSAEHOSTUNREACH) + if (call && code == -1 && WSAGetLastError() == WSAEHOSTUNREACH) call->lastReceiveTime = 0; #endif #if defined(KERNEL) && defined(AFS_LINUX20_ENV)