2 * Acess2 Networking Test Suite (NetTest)
3 * - By John Hodge (thePowersGang)
9 #include <acess_logging.h>
15 extern int VFS_Init(void);
16 extern int IPStack_Install(char **Args);
19 void PrintUsage(const char *ProgramName)
21 fprintf(stderr, "Usage: %s <commands...>\n", ProgramName);
22 fprintf(stderr, "\n");
25 "-dev <mac>:<tapdev>\n"
26 "-ip <dev>,<addr>/<mask>\n"
27 "-route <net>,<mask>,<nexthop>\n"
30 "netcat <addr> <port>\n"
34 int main(int argc, char *argv[])
48 char *ipstack_args[] = {NULL};
49 IPStack_Install( ipstack_args );
52 for( int i = 1; i < argc; i ++ )
54 if( argv[i][0] != '-' )
56 if( strcmp(argv[i], "netcat") == 0 )
59 Log_Error("NetTest", "'netcat' <addr> <port>");
64 NetTest_Suite_Netcat(argv[i+1], strtol(argv[i+2], NULL, 0));
69 Log_Error("NetTest", "Unknown suite name '%s'", argv[i]);
75 if( strcmp(argv[i], "-dev") == 0 )
77 if( ++i == argc ) { PrintUsage(argv[0]); return 1; }
78 rv = NativeNic_AddDev(argv[i]);
80 Log_Error("NetTest", "Failed to add device %s", argv[i]);
84 else if( strcmp(argv[i], "-ip") == 0 )
86 if( ++i == argc ) { PrintUsage(argv[0]); return 1; }
87 // TODO: parse argument and poke ipstack
88 if( NetTest_AddAddress(argv[i]) ) {
94 Log_Error("NetTest", "Unknown argument '%s'", argv[i]);
102 Log_Log("NetTest", "Shutting down");
107 size_t NetTest_WriteStdout(const void *Data, size_t Size)
109 return fwrite(Data, 1, Size, stdout);