/* Main program -------------------------------------------------------------*/ int main(int argc, char *argv[]) { pthread_t *listen_threads; /* Server threads that accept new clients */ /* Initialize the server */ if (server_initialize() != 0) { fprintf(stderr, "Could not initialize server\n"); exit(EXIT_FAILURE); } /* Launch the two listener threads */ if ((listen_threads = launch_listen_threads()) == NULL) { fprintf(stderr, "Could launch listen threads\n"); exit(EXIT_FAILURE); } /* Join with the two listener threads, then exit */ void *rc; for (int i = 0; i < 2; i++) { if (pthread_join(listen_threads[i], &rc) != 0) { fprintf(stderr, "Could not join thread\n"); exit(EXIT_FAILURE); } } sleep(1); free(listen_threads); return EXIT_SUCCESS; }
int main(int argc, char** argv) { uv_loop_t* loop; loop = uv_default_loop(); server_initialize(loop, &_server); server_start(&_server); fprintf(stderr, "socket-server starts...\n"); uv_run(loop); server_destroy(&_server); return 0; }
bool app_start(char *err_str) { // initialize timing game_time_initialize(); // physics ray tracing if (!ray_trace_initialize(err_str)) return(FALSE); // OS network initialization net_initialize(); // read setup preferences setup_xml_read(); // client network defaults net_setup.mode=net_mode_none; // initialize server if (!server_initialize(err_str)) return(FALSE); // initialize view // if not running in dedicated host mode if (!app.dedicated_host) { if (!view_initialize(err_str)) { server_shutdown(); return(FALSE); } console_initialize(); } return(TRUE); }
/** * Server example for libQuickFT * * @param argc * @param argv * @return */ int main(int argc, char *argv[]) { int port = 2332; int max_connections = 256; int timeout = 60; int opt; // // Parameters parsing // struct option long_options[] = { {"help", no_argument, 0, 'h' }, {"port", required_argument, 0, 'p' }, // port to listen on {"maxconn", required_argument, 0, 'm' }, // max. connections supoerted by the server {"timeout", required_argument, 0, 't' }, // timeout for messages, can be 0 for default {0, 0, 0, 0 } }; int option_index = 0; int value; opterr = 0; while ((opt = getopt_long(argc, argv, "hp:m:t:", long_options, &option_index)) != -1) { value = 0; if (optarg != 0x00) value = atoi(optarg); switch (opt) { case 'p': if (value != 0) port = value; break; case 'm': if (value != 0) max_connections = value; break; case 't': if (value != 0) timeout = value; break; case 'h': printf("usage: server -p [--port]: specifies port to listen on.\n"); printf(" -m [--maxconn]: max. simultaneous connections.\n"); printf(" -t [--timeout] timeout for messages, 0 for default.\n"); printf(" -h [--help] displays this instructions.\n"); printf("\n"); return 0; case '?': default: printf("Invalid parameters. Type server --help for usage.\n"); return 1; } } // // Initializes server // SERVER_T * server = NULL; printf("Initializing server on port %d...\n", port); server = server_initialize(port, max_connections, timeout*1000, &logger); if (server != NULL) { puts("[OK] ...server listening. Press Enter key to end."); } else { puts("[FAIL] ...could not initialize server."); return 1; } getchar(); server_finalize(&server); puts("Server finalized."); return 0; }