Try to rotate the ports we assign when root better so we dont reuse

a port htat is in time-wait too frequently
libnfs-4.0.0-vitalif
Ronnie Sahlberg 2012-01-03 07:25:25 +11:00
parent 59f298f5bf
commit e6cac86f77
1 changed files with 5 additions and 2 deletions

View File

@ -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) {
int port;
static int port = 200;
int i;
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;
if(++port > 700) port = 200;
memset(&sin, 0, sizeof(sin));
sin.sin_port = htons(port);
sin.sin_family = AF_INET;