X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=lib%2Fsocket.c;h=8dc3ed2d6b0d5a9fc1a5d731f2cd96bd3ad0d48c;hb=c022471e52d3ea679139cdf026dcde179c8de23c;hp=66e1021c5892d52bbd3933318eba32c8a4bc7fa4;hpb=622489d36e0a2d1b15f0ed9aa92a84fae1bc54fd;p=deb_libnfs.git diff --git a/lib/socket.c b/lib/socket.c index 66e1021..8dc3ed2 100644 --- a/lib/socket.c +++ b/lib/socket.c @@ -14,18 +14,6 @@ You should have received a copy of the GNU Lesser General Public License along with this program; if not, see . */ -#ifdef WIN32 -#include "win32_compat.h" -#define ioctl ioctlsocket -#define close closesocket -#else -#include -#include -#include -#include -#include -#endif/*WIN32*/ - #ifdef HAVE_CONFIG_H #include "config.h" #endif @@ -34,22 +22,48 @@ #include "aros_compat.h" #endif +#ifdef WIN32 +#include "win32_compat.h" +#endif + +#ifdef HAVE_ARPA_INET_H +#include +#endif + #ifdef HAVE_POLL_H #include #endif -#include -#include -#include -#include -#include -#include +#ifdef HAVE_UNISTD_H +#include +#endif + +#ifdef HAVE_SYS_IOCTL_H +#include +#endif + +#ifdef HAVE_SYS_SOCKET_H +#include +#endif + +#ifdef HAVE_NETDB_H +#include +#endif + #ifdef HAVE_SYS_FILIO_H #include #endif + #ifdef HAVE_SYS_SOCKIO_H #include #endif + +#include +#include +#include +#include +#include +#include #include #include "libnfs-zdr.h" #include "libnfs.h" @@ -397,8 +411,12 @@ static int rpc_connect_sockaddr_async(struct rpc_context *rpc, struct sockaddr_s static int portOfs = 0; const int firstPort = 512; /* >= 512 according to Sun docs */ const int portCount = IPPORT_RESERVED - firstPort; - int startOfs = portOfs, port, rc; + int startOfs, port, rc; + if (portOfs == 0) { + portOfs = time(NULL) % 400; + } + startOfs = portOfs; do { rc = -1; port = htons(firstPort + portOfs);