X-Git-Url: http://git.tuebingen.mpg.de/?a=blobdiff_plain;f=server.c;h=a9e9495fd3f7238c4b875f7958cc5ebf8ccdd863;hb=027f2c12;hp=f26abef5753204c4628c4183519f50f02b8f674e;hpb=9d75ded33ce6664156acb07e311f51d55970bbea;p=paraslash.git diff --git a/server.c b/server.c index f26abef5..a9e9495f 100644 --- a/server.c +++ b/server.c @@ -1,5 +1,5 @@ /* - * Copyright (C) 1997-2013 Andre Noll + * Copyright (C) 1997-2014 Andre Noll * * Licensed under the GPL v2. For licencing details see COPYING. */ @@ -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,10 +49,11 @@ * - Spawning processes: \ref exec.c, * - Inter process communication: \ref ipc.c, * - Blob tables: \ref blob.c, - * - The error subsystem: \ref error.h. - * - Access control for paraslash senders: \ref acl.c, \ref acl.h. - * - Internal crypto API: \ref crypt.h. - * - interactive sessions (libreadline): \ref interactive.c. + * - 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, + * - sideband API: \ref sideband.h. * * Low-level data structures: * @@ -391,6 +389,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;