2 * Acess2 Networking Test Suite (NetTest)
3 * - By John Hodge (thePowersGang)
9 #include <acess_logging.h>
14 extern int VFS_Init(void);
15 extern int IPStack_Install(char **Args);
18 void PrintUsage(const char *ProgramName)
20 fprintf(stderr, "Usage: %s <commands...>\n", ProgramName);
21 fprintf(stderr, "\n");
24 "-dev <mac>:<tapdev>\n"
25 "-ip <dev>,<addr>/<mask>\n"
26 "-route <net>,<mask>,<nexthop>\n"
29 "netcat <addr> <port>\n"
33 int main(int argc, char *argv[])
45 char *ipstack_args[] = {NULL};
46 IPStack_Install( ipstack_args );
49 for( int i = 1; i < argc; i ++ )
51 if( argv[i][0] != '-' )
53 if( strcmp(argv[i], "netcat") == 0 )
56 Log_Error("NetTest", "'netcat' <addr> <port>");
60 NetTest_Suite_Netcat(argv[i+1], strtol(argv[i+2], NULL, 0));
65 Log_Error("NetTest", "Unknown suite name '%s'", argv[i]);
71 if( strcmp(argv[i], "-dev") == 0 )
73 if( ++i == argc ) { PrintUsage(argv[0]); return 1; }
74 rv = NativeNic_AddDev(argv[i]);
76 Log_Error("NetTest", "Failed to add device %s", argv[i]);
80 else if( strcmp(argv[i], "-ip") == 0 )
82 if( ++i == argc ) { PrintUsage(argv[0]); return 1; }
83 // TODO: parse argument and poke ipstack
84 if( NetTest_AddAddress(argv[i]) ) {
90 Log_Error("NetTest", "Unknown argument '%s'", argv[i]);
98 Log_Log("NetTest", "Shutting down");
103 size_t NetTest_WriteStdout(const void *Data, size_t Size)
105 return fwrite(Data, 1, Size, stdout);