int main(int argc, char **argv) { /* * -d debug mode */ PLOptStatus os; PLOptState *opt; program_name = argv[0]; opt = PL_CreateOptState(argc, argv, "dp:"); while (PL_OPT_EOL != (os = PL_GetNextOpt(opt))) { if (PL_OPT_BAD == os) continue; switch (opt->option) { case 'd': /* debug mode */ _debug_on = 1; break; case 'p': server_port = atoi(opt->value); break; default: break; } } PL_DestroyOptState(opt); PR_Init(PR_USER_THREAD, PR_PRIORITY_NORMAL, 0); PR_STDIO_INIT(); PR_SetConcurrency(4); TCP_Socket_Client_Server_Test(); PR_Cleanup(); if (failed_already) return 1; else return 0; }
int main(int argc, char **argv) { /* * -d debug mode */ PLOptStatus os; PLOptState *opt = PL_CreateOptState(argc, argv, "d"); while (PL_OPT_EOL != (os = PL_GetNextOpt(opt))) { if (PL_OPT_BAD == os) continue; switch (opt->option) { case 'd': /* debug mode */ _debug_on = 1; break; default: break; } } PL_DestroyOptState(opt); PR_Init(PR_USER_THREAD, PR_PRIORITY_NORMAL, 0); PR_STDIO_INIT(); #ifdef XP_MAC SetupMacPrintfLog("socket.log"); #endif PR_SetConcurrency(4); /* * run client-server test with TCP */ if (TCP_Socket_Client_Server_Test() < 0) { printf("TCP_Socket_Client_Server_Test failed\n"); goto done; } else printf("TCP_Socket_Client_Server_Test Passed\n"); /* * run client-server test with UDP */ if (UDP_Socket_Client_Server_Test() < 0) { printf("UDP_Socket_Client_Server_Test failed\n"); goto done; } else printf("UDP_Socket_Client_Server_Test Passed\n"); /* * Misc socket tests - including transmitfile, etc. */ #if !defined(WIN16) /* ** The 'transmit file' test does not run because ** transmit file is not implemented in NSPR yet. ** */ if (Socket_Misc_Test() < 0) { printf("Socket_Misc_Test failed\n"); failed_already=1; goto done; } else printf("Socket_Misc_Test passed\n"); /* * run client-server test with TCP again to test * recycling used sockets from PR_TransmitFile(). */ if (TCP_Socket_Client_Server_Test() < 0) { printf("TCP_Socket_Client_Server_Test failed\n"); goto done; } else printf("TCP_Socket_Client_Server_Test Passed\n"); #endif done: PR_Cleanup(); if (failed_already) return 1; else return 0; }