diff --git a/NT/tools/sprshd b/NT/tools/sprshd index 34710f8d52275ca30e0a10a03e6cca13c81b4e71..c6f0f0d6ec8e2c7f594dcb505170420ed907ee46 100755 --- a/NT/tools/sprshd +++ b/NT/tools/sprshd @@ -124,7 +124,7 @@ int main(int argc, string *argv) { if(argc<2) { - werror("Usage: sprshd <port> <host to accept connections from>\n"); + werror("Usage: sprshd <port> <hosts to accept connections from>\n"); exit(1); } if(!bind((int)argv[1])) @@ -133,7 +133,22 @@ int main(int argc, string *argv) exit(1); } - string *hosts=gethostbyname(argv[2])[1]; + string *hosts=({}); + for(int e=2;e<sizeof(argv);e++) + { + if(sscanf(argv[e],"%*d.%*d")==2) + { + hosts+=argv[e]; + continue; + } + mixed tmp=gethostbyname(argv[e]); + if(!tmp) + { + werror("Gethostbyname("+argv[e]+") failed.\n"); + exit(1); + } + hosts+=tmp[1]; + } write("Ready.\n"); while(1)