diff options
Diffstat (limited to 'test/rctest.c')
| -rw-r--r-- | test/rctest.c | 30 | 
1 files changed, 16 insertions, 14 deletions
| diff --git a/test/rctest.c b/test/rctest.c index 17d7c5d3..8de23f78 100644 --- a/test/rctest.c +++ b/test/rctest.c @@ -390,22 +390,24 @@ static void reconnect_mode(char *svr)  	}  } -static void multi_connect_mode(char *svr) +static void multi_connect_mode(int argc, char *argv[])  { -	while (1) { -		int i, sk; - -		for (i = 0; i < 10; i++) { -			if (fork()) continue; +	int i, n, sk; -			/* Child */ -			sk = do_connect(svr); -			usleep(500); -			close(sk); -			exit(0); +	while (1) { +		for (n = 0; n < argc; n++) { +			for (i = 0; i < count; i++) { +				if (fork()) +					continue; + +				/* Child */ +				sk = do_connect(argv[n]); +				usleep(500); +				close(sk); +				exit(0); +			}  		} - -		sleep(2); +		sleep(4);  	}  } @@ -589,7 +591,7 @@ int main(int argc, char *argv[])  			break;  		case MULTY: -			multi_connect_mode(argv[optind]); +			multi_connect_mode(argc - optind, argv + optind);  			break;  		case CONNECT: | 
