X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=lib%2Fsocket.c;h=8dc3ed2d6b0d5a9fc1a5d731f2cd96bd3ad0d48c;hb=c022471e52d3ea679139cdf026dcde179c8de23c;hp=b14231e84129f2d67980a93177e4a415a2023b03;hpb=00748f36c57324ccc2cb21ac9af45d15821cf675;p=deb_libnfs.git diff --git a/lib/socket.c b/lib/socket.c index b14231e..8dc3ed2 100644 --- a/lib/socket.c +++ b/lib/socket.c @@ -24,11 +24,11 @@ #ifdef WIN32 #include "win32_compat.h" -#else +#endif + +#ifdef HAVE_ARPA_INET_H #include -#include -#include -#endif/*WIN32*/ +#endif #ifdef HAVE_POLL_H #include @@ -42,18 +42,28 @@ #include #endif -#include -#include -#include -#include -#include -#include +#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" @@ -401,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);