repositories
/
deb_libnfs.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Update watch file to use tags to track new upstream releases.
[deb_libnfs.git]
/
lib
/
socket.c
diff --git
a/lib/socket.c
b/lib/socket.c
index 0f12697388779cd3f819bcf39c22227c0ddf225d..ea16d8c9e508f7ab247ec892b29196136717828c 100644
(file)
--- a/
lib/socket.c
+++ b/
lib/socket.c
@@
-381,14
+381,17
@@
static int rpc_connect_sockaddr_async(struct rpc_context *rpc, struct sockaddr_s
* to make the executable able to bind to a system port.
*/
if (1) {
* to make the executable able to bind to a system port.
*/
if (1) {
- int port;
+ static int port = 200;
+ int i;
int one = 1;
setsockopt(rpc->fd, SOL_SOCKET, SO_REUSEADDR, (char *)&one, sizeof(one));
int one = 1;
setsockopt(rpc->fd, SOL_SOCKET, SO_REUSEADDR, (char *)&one, sizeof(one));
- for (
port = 200; port < 500; port
++) {
+ for (
i = 0; i < 500; i
++) {
struct sockaddr_in sin;
struct sockaddr_in sin;
+ if(++port > 700) port = 200;
+
memset(&sin, 0, sizeof(sin));
sin.sin_port = htons(port);
sin.sin_family = AF_INET;
memset(&sin, 0, sizeof(sin));
sin.sin_port = htons(port);
sin.sin_family = AF_INET;
@@
-411,7
+414,7
@@
static int rpc_connect_sockaddr_async(struct rpc_context *rpc, struct sockaddr_s
if (connect(rpc->fd, (struct sockaddr *)s, socksize) != 0 && errno != EINPROGRESS)
#endif
{
if (connect(rpc->fd, (struct sockaddr *)s, socksize) != 0 && errno != EINPROGRESS)
#endif
{
-
rpc_set_error(rpc, "connect() to server failed"
);
+
rpc_set_error(rpc, "connect() to server failed. %s(%d)", strerror(errno), errno
);
return -1;
}
return -1;
}