Doxify error2.c and add GPL header.
[paraslash.git] / server.c
index f26abef5753204c4628c4183519f50f02b8f674e..fc7ff296e4848bd4f1c487caa3d2e044c2c033a6 100644 (file)
--- a/server.c
+++ b/server.c
@@ -8,10 +8,7 @@
 
 
 /**
- * \mainpage Paraslash API Reference
- *
- * Starting points for getting an overview:
- *
+ * \mainpage Starting points for getting an overview:
  *
  *     - The main programs: \ref server.c, \ref audiod.c, \ref client.c,
  *       \ref audioc.c, \ref afh.c, \ref play.c,
@@ -52,7 +49,7 @@
  *     - Spawning processes: \ref exec.c,
  *     - Inter process communication: \ref ipc.c,
  *     - Blob tables: \ref blob.c,
- *     - The error subsystem: \ref error.h.
+ *     - The error subsystem: \ref error.h, \ref error2.c,
  *     - Access control for paraslash senders: \ref acl.c, \ref acl.h.
  *     - Internal crypto API: \ref crypt.h.
  *     - interactive sessions (libreadline): \ref interactive.c.
@@ -391,6 +388,9 @@ static int command_post_select(struct sched *s, struct task *t)
                goto out;
        }
        if (child_pid) {
+               /* avoid problems with non-fork-safe PRNGs */
+               unsigned char buf[16];
+               get_random_bytes_or_die(buf, sizeof(buf));
                close(new_fd);
                /* parent keeps accepting connections */
                return 0;