X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;f=src%2Fmain.c;h=d1351ddc080f9c76a761023f1f43fb2e288975b6;hb=a76733ea91c6a1d42dfbb50631fa214cc284c3bf;hp=cce178a1ffe458d90de0efd9fcb64aabc4ce580a;hpb=e5078110436f4461a1f70c364bab84e8b82b155d;p=umurmur.git diff --git a/src/main.c b/src/main.c index cce178a..d1351dd 100644 --- a/src/main.c +++ b/src/main.c @@ -39,6 +39,8 @@ #include #include #include +#include +#include #include "server.h" #include "ssl.h" @@ -49,6 +51,8 @@ #include "version.h" char system_string[64], version_string[64]; +int bindport; +char *bindaddr; void lockfile(const char *pidfile) { @@ -127,6 +131,8 @@ void printhelp() printf(" -p - Write PID to this file\n"); printf(" -c - Specify configuration file\n"); printf(" -r - Run with realtime priority\n"); + printf(" -a
- Bind to IP address\n"); + printf(" -b - Bind to port\n"); printf(" -h - Print this help\n"); exit(0); } @@ -140,7 +146,7 @@ int main(int argc, char **argv) struct utsname utsbuf; /* Arguments */ - while ((c = getopt(argc, argv, "drp:c:h")) != EOF) { + while ((c = getopt(argc, argv, "drp:c:a:b:h")) != EOF) { switch(c) { case 'c': conffile = optarg; @@ -148,6 +154,12 @@ int main(int argc, char **argv) case 'p': pidfile = optarg; break; + case 'a': + bindaddr = optarg; + break; + case 'b': + bindport = atoi(optarg); + break; case 'd': nodaemon = true; break; @@ -182,6 +194,7 @@ int main(int argc, char **argv) signal(SIGTSTP, SIG_IGN); /* ignore tty signals */ signal(SIGTTOU, SIG_IGN); signal(SIGTTIN, SIG_IGN); + signal(SIGPIPE, SIG_IGN); signal(SIGHUP, signal_handler); /* catch hangup signal */ signal(SIGTERM, signal_handler); /* catch kill signal */ @@ -196,7 +209,7 @@ int main(int argc, char **argv) } /* Initializing */ - SSL_init(); + SSLi_init(); Chan_init(); Client_init(); @@ -205,7 +218,7 @@ int main(int argc, char **argv) Server_run(); - SSL_deinit(); + SSLi_deinit(); Chan_free(); Log_free(); Conf_deinit();