int main(int argc, char *argv[]) { struct v7 *v7 = v7_create(); int i, error_code; v7_init_stdlib(v7); for (i = 1; i < argc; i++) { if (strcmp(argv[i], "-e") == 0 && i + 1 < argc) { if ((error_code = v7_exec(v7, argv[i + 1])) != V7_OK) { fprintf(stderr, "Error executing [%s]: %d\n", argv[i + 1], error_code); } } } v7_destroy(&v7); return 0; }
int main(int argc, char *argv[]) { const char *script = "nsv7.js", *port = "4000"; struct ns_server server; struct v7 *v7; int i; // Parse command line options for (i = 1; i < argc; i++) { if (strcmp(argv[i], "-f") == 0 && i + 1 < argc) { script = argv[++i]; } else if (strcmp(argv[i], "-p") == 0 && i + 1 < argc) { port = argv[++i]; } else { elog(1, "Usage: %s [-f FILE] [-p PORT]", argv[0]); } } signal(SIGTERM, signal_handler); signal(SIGINT, signal_handler); // Initialize scripting engine v7 = v7_create(); v7_init_stdlib(v7); if (v7_exec_file(v7, script) != V7_OK) { elog(1, "Error executing %s", script); } // Initialize server ns_server_init(&server, v7, ev_handler); ns_bind(&server, port); while (s_received_signal == 0) { ns_server_poll(&server, 1000); } printf("Existing on signal %d\n", s_received_signal); v7_destroy(&v7); ns_server_free(&server); return EXIT_SUCCESS; }
int main(int argc, char *argv[]) { int i, error_code; signal(SIGTERM, signal_handler); signal(SIGINT, signal_handler); s_v7 = v7_create(); v7_init_stdlib(s_v7); v7_set_func(s_v7, v7_get_root_namespace(s_v7), "WebsocketServer", js_ws); v7_set_func(s_v7, v7_get_root_namespace(s_v7), "RunTcpServer", js_tcp); for (i = 1; i < argc; i++) { if ((error_code = v7_exec_file(s_v7, argv[i])) != V7_OK) { fprintf(stderr, "Error executing %s line %d: %s\n", argv[i], s_v7->line_no, v7_err_to_str(error_code)); exit(EXIT_FAILURE); } } fprintf(stderr, "Existing on signal %d\n", s_received_signal); v7_destroy(&s_v7); return EXIT_SUCCESS; }