- Use strerror() instead of sys_errlist[] for increased portability
[tinc] / src / tincd.c
index e5257b5..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.7 2000/08/08 14:54:57 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>
@@ -296,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";
     }
 }
@@ -460,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