X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Tools%2FNetTest%2Fmain.c;fp=Tools%2FNetTest%2Fmain.c;h=2aba06078af934ab99b7fd70aa0fa364f069d65b;hb=50a98c40481c6d1df267f4631228e9a4d107fe74;hp=95e70ab07679e56bba39ae854afe123bc7fb99ce;hpb=7b64f5e7f00e445a5637e9e3289a1332a14d28e5;p=tpg%2Facess2.git diff --git a/Tools/NetTest/main.c b/Tools/NetTest/main.c index 95e70ab0..2aba0607 100644 --- a/Tools/NetTest/main.c +++ b/Tools/NetTest/main.c @@ -22,12 +22,16 @@ void PrintUsage(const char *ProgramName) fprintf(stderr, "\n"); fprintf(stderr, "Options:\n" - "-dev :\n" + "-dev ::\n" "-ip ,/\n" - "-route ,,\n" + "-route /,\n" "\n" - "Suites:\n" + "Commands:\n" "netcat \n" + "\n" + "Device Types:\n" + "tun - Linux TUN/TAP device (takes an optional name)\n" + "unix - Unix named pipe (datagram)\n" ); } @@ -51,9 +55,10 @@ int main(int argc, char *argv[]) for( int i = 1; i < argc; i ++ ) { - if( argv[i][0] != '-' ) + char *arg = argv[i];; + if( arg[0] != '-' ) { - if( strcmp(argv[i], "netcat") == 0 ) + if( strcmp(arg, "netcat") == 0 ) { if( argc-i != 3 ) { Log_Error("NetTest", "'netcat' "); @@ -64,34 +69,45 @@ int main(int argc, char *argv[]) NetTest_Suite_Netcat(argv[i+1], strtol(argv[i+2], NULL, 0)); i += 2; } + else if( strcmp(arg, "cmdline") == 0 ) + { + NetTest_Suite_Cmdline(); + } else { - Log_Error("NetTest", "Unknown suite name '%s'", argv[i]); + Log_Error("NetTest", "Unknown suite name '%s'", arg); PrintUsage(argv[0]); } } else { - if( strcmp(argv[i], "-dev") == 0 ) + if( strcmp(arg, "--help") == 0 ) + { + PrintUsage(0); + return 0; + } + else if( strcmp(arg, "-dev") == 0 ) { - if( ++i == argc ) { PrintUsage(argv[0]); return 1; } - rv = NativeNic_AddDev(argv[i]); + if( i+1 == argc ) { PrintUsage(argv[0]); return 1; } + rv = NativeNic_AddDev(argv[i+1]); if( rv ) { - Log_Error("NetTest", "Failed to add device %s", argv[i]); + Log_Error("NetTest", "Failed to add device %s", argv[i+1]); return -1; } + i ++; } - else if( strcmp(argv[i], "-ip") == 0 ) + else if( strcmp(arg, "-ip") == 0 ) { - if( ++i == argc ) { PrintUsage(argv[0]); return 1; } - // TODO: parse argument and poke ipstack - if( NetTest_AddAddress(argv[i]) ) { + if( i+1 == argc ) { PrintUsage(argv[0]); return 1; } + // Parse argument and poke ipstack + if( NetTest_AddAddress(argv[i+1]) ) { return -1; } + i ++; } else { - Log_Error("NetTest", "Unknown argument '%s'", argv[i]); + Log_Error("NetTest", "Unknown argument '%s'", arg); PrintUsage(argv[0]); return -1; }