X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;f=src%2Fmain.c;h=a4c1c12b3182045174f8af9e8ee0c106d6e8bcc9;hb=f1a666fa49ec318684c76148912a734a01e194a7;hp=5139291e9ceda08029ba886f03dfd2eb17f1dca0;hpb=820c23b9acd55999cc2e5777d5beeec8efd8970d;p=umurmur.git diff --git a/src/main.c b/src/main.c index 5139291..a4c1c12 100644 --- a/src/main.c +++ b/src/main.c @@ -1,5 +1,5 @@ -/* Copyright (C) 2009, Martin Johansson - Copyright (C) 2005-2009, Thorvald Natvig +/* Copyright (C) 2009-2010, Martin Johansson + Copyright (C) 2005-2010, Thorvald Natvig All rights reserved. @@ -34,10 +34,13 @@ #include #include #include +#include #include #include #include #include +#include +#include #include "server.h" #include "ssl.h" @@ -47,6 +50,8 @@ #include "conf.h" #include "version.h" +char system_string[64], version_string[64]; + void lockfile(const char *pidfile) { int lfp; @@ -134,6 +139,7 @@ int main(int argc, char **argv) bool_t realtime = false; char *conffile = NULL, *pidfile = NULL; int c; + struct utsname utsbuf; /* Arguments */ while ((c = getopt(argc, argv, "drp:c:h")) != EOF) { @@ -178,11 +184,22 @@ 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 */ - + + /* Build system string */ + if (uname(&utsbuf) == 0) { + snprintf(system_string, 64, "%s %s", utsbuf.sysname, utsbuf.machine); + snprintf(version_string, 64, "%s", utsbuf.release); + } + else { + snprintf(system_string, 64, "unknown unknown"); + snprintf(version_string, 64, "unknown"); + } + /* Initializing */ - SSL_init(); + SSLi_init(); Chan_init(); Client_init(); @@ -191,7 +208,7 @@ int main(int argc, char **argv) Server_run(); - SSL_deinit(); + SSLi_deinit(); Chan_free(); Log_free(); Conf_deinit();