#include #include #include #include #include // dont use stdio in these sig_atomic_t running = 1; void sig_int_handler(int num) { running = 0; } int main(int argc, char* argv[]) { if (argc<2){ fprintf(stderr, "arg1 must be set for port\n"); exit(-1); } int port = atoi(argv[1]); if (port == 0) { fprintf(stderr, "port must not be 0\n"); exit(-1); } struct Server server = server_constructor(AF_INET, SOCK_STREAM, 0, INADDR_ANY, port, 10, launch); server.html_folder = "./public_html/"; struct sigaction act = { 0 }; act.sa_handler = &sig_int_handler; sigaction(SIGINT, &act, NULL); server.launch(&server); while (running) { } usleep(1); server_close(&server); return 0; }