Updated text, removed protocol flowchart
[tinc] / src / tincd.c
index f63540a..fcd7052 100644 (file)
@@ -17,7 +17,7 @@
     along with this program; if not, write to the Free Software
     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 
-    $Id: tincd.c,v 1.10.4.6 2000/06/30 11:45:16 guus Exp $
+    $Id: tincd.c,v 1.10.4.9 2000/09/06 11:49:05 guus Exp $
 */
 
 #include "config.h"
@@ -30,6 +30,7 @@
 #include <sys/types.h>
 #include <syslog.h>
 #include <unistd.h>
+#include <signal.h>
 
 #ifdef HAVE_SYS_IOCTL_H
 # include <sys/ioctl.h>
@@ -43,6 +44,7 @@
 #include "encr.h"
 #include "net.h"
 #include "netutl.h"
+#include "protocol.h"
 
 #include "system.h"
 
@@ -295,30 +297,24 @@ void make_names(void)
     {
       if(netname)
        {
-         configfilename = xmalloc(strlen(netname)+18+strlen(CONFDIR));
-         sprintf(configfilename, "%s/tinc/%s/tinc.conf", CONFDIR, netname);
+         asprintf(&configfilename, "%s/tinc/%s/tinc.conf", CONFDIR, netname);
        }
       else
        {
-         configfilename = xmalloc(17+strlen(CONFDIR));
-         sprintf(configfilename, "%s/tinc/tinc.conf", CONFDIR);
+         asprintf(&configfilename, "%s/tinc/tinc.conf", CONFDIR);
        }
     }
   
   if(netname)
     {
-      pidfilename = xmalloc(strlen(netname)+20);
-      sprintf(pidfilename, "/var/run/tinc.%s.pid", netname);
-      confbase = xmalloc(strlen(netname)+8+strlen(CONFDIR));
-      sprintf(confbase, "%s/tinc/%s/", CONFDIR, netname);
-      identname = xmalloc(strlen(netname)+7);
-      sprintf(identname, "tinc.%s", netname);
+      asprintf(&pidfilename, "/var/run/tinc.%s.pid", netname);
+      asprintf(&confbase, "%s/tinc/%s/", CONFDIR, netname);
+      asprintf(&identname, "tinc.%s", netname);
     }
   else
     {
       pidfilename = "/var/run/tinc.pid";
-      confbase = xmalloc(7+strlen(CONFDIR));
-      sprintf(confbase, "%s/tinc/", CONFDIR);
+      asprintf(&confbase, "%s/tinc/", CONFDIR);
       identname = "tinc";
     }
 }
@@ -336,7 +332,7 @@ main(int argc, char **argv, char **envp)
 
   if(show_version)
     {
-      printf(_("%s version %s\n"), PACKAGE, VERSION);
+      printf(_("%s version %s (built %s %s, protocol %d)\n"), PACKAGE, VERSION, __DATE__, __TIME__, PROT_CURRENT);
       printf(_("Copyright (C) 1998,1999,2000 Ivo Timmermans and others,\n"
               "see the AUTHORS file for a complete list.\n\n"
               "tinc comes with ABSOLUTELY NO WARRANTY.  This is free software,\n"
@@ -459,10 +455,10 @@ RETSIGTYPE
 sighuh(int a)
 {
   if(cp_file)
-    syslog(LOG_NOTICE, _("Got unexpected signal %d after %s line %d"),
-          a, cp_file, cp_line);
+    syslog(LOG_NOTICE, _("Got unexpected %s after %s line %d"),
+          strsignal(a), cp_file, cp_line);
   else
-    syslog(LOG_NOTICE, _("Got unexpected signal %d"), a);
+    syslog(LOG_NOTICE, _("Got unexpected %s"), strsignal(a));
 }
 
 void