chiark / gitweb /
server/admin.c (a_init): Restore the old umask after creating the socket.
[tripe] / server / tripe.c
index ebd8efc7eda172cc9fbee5b919403da709bd5516..2dc03434de57139c6b8fd9b224081d1b1813f155 100644 (file)
@@ -114,7 +114,7 @@ Options:\n\
 int main(int argc, char *argv[])
 {
   const char *kr_priv = "keyring", *kr_pub = "keyring.pub";
-  const char *tag_priv = "tripe-dh";
+  const char *tag_priv = 0;
   const char *csock = SOCKETDIR "/tripesock";
   const char *dir = CONFIGDIR;
   const char *p;
@@ -288,9 +288,10 @@ int main(int argc, char *argv[])
       af |= AF_FOREGROUND;
     a_create(STDIN_FILENO, STDOUT_FILENO, af);
   }
+  ps_split(f & f_daemon);
+  a_init(csock, u, g);
   u_setugid(u, g);
   km_init(kr_priv, kr_pub, tag_priv);
-  a_init(csock);
   if (f & f_daemon) {
     if (daemonize())
       die(EXIT_FAILURE, "couldn't become a daemon: %s", strerror(errno));