int main(int argc, char **argv) { unsigned short port = 3000; int num_threads = 1; int c; while (-1 != (c = getopt(argc, argv, "hp:"))) { switch(c) { case 'p': port = atoi(optarg); if (port < 1024) { usage(argv[0]); } break; case 't': num_threads = atoi(optarg); if (num_threads < 1) { usage(argv[0]); } break; case 'h': default: usage(argv[0]); break; } } runserver(10, port);//my -t is not acknkowldeged, so i set threads manuly fprintf(stderr, "Server done.\n"); exit(0); }
int main(int argc, char *argv[]) { char *conffile = NULL; int request_kill = 0, show_message = 0; if (!read_parameters(argc, argv, &conffile, &request_kill, &show_message)) { print_usage(argv[0]); return 1; } /* read the config file; conffile = NULL means use the default. */ if (!read_config(conffile)) return 1; /* error reading the config file */ setup_defaults(); if (request_kill) { kill_server(); return 0; } if (show_message) { signal_message(); return 0; } setup_signals(); /* Init files and directories. * Start logging last, so that the log is only created if startup succeeds. */ if (!init_workdir() || !init_database() || !check_database() || !begin_logging()) return 1; if (!settings.nodaemon) { if (daemon(0, 0) == -1) { settings.nodaemon = TRUE; log_msg("could not detach from terminal: %s", strerror(errno)); return 1; } if (!create_pidfile()) return 1; } /* give this process and its children their own process group id for kill() */ setpgid(0, 0); report_startup(); runserver(); /* shutdown */ remove_pidfile(); end_logging(); close_database(); remove_unix_socket(); free_config(); return 0; }
int main(int argc, char **argv) { printf("Hi, I'm in main!\n"); unsigned short port = 3000; int num_threads = 1; int c; while (-1 != (c = getopt(argc, argv, "hp:"))) { switch(c) { case 'p': port = atoi(optarg); if (port < 1024) { usage(argv[0]); } break; case 't': num_threads = atoi(optarg); if (num_threads < 1) { usage(argv[0]); } break; case 'h': default: usage(argv[0]); break; } } num_threads = 3; runserver(num_threads, port); fprintf(stderr, "Server done.\n"); exit(0); }
int main(int argc, char **argv) { pid_t pid; int fds[2]; int kidret; int ret; if (argc != 2) { fprintf(stderr, "Usage: unit hostservice\n"); exit(1); } ret = socketpair(PF_LOCAL, SOCK_STREAM, 0, fds); if (ret == -1) { perror("socketpair"); exit(1); } pid = fork(); switch (pid) { case 0: close(fds[0]); ret = runserver(fds[1]); fprintf(stderr, "Child exiting.\n"); exit(ret); case -1: perror("fork"); exit(1); default: close(fds[1]); ret = runclient(fds[0], argv[1]); break; } if (wait(&kidret) == -1) { perror("wait"); kidret = 1; } if (ret) fprintf(stderr, "Parent failed.\n"); if (kidret) fprintf(stderr, "Child failed.\n"); fprintf(stderr, "Parent exiting.\n"); if (ret || kidret) return 1; return 0; }
int main(int argc, char **argv) { int cfd, sfd; /* Client and server file descriptors */ int debug = 0; data = createdb(); builddb(data); if (argc > 1) { debug = atoi(argv[1]); } daemonize(debug); runserver(&cfd, &sfd); /* Make sure that the database gets freed */ destroydb(data); return 0; }