/* Command line options (no config file options). Used in handle_sighup(). */
static struct lls_parse_result *cmdline_lpr;
-/** A random value used in child context for authentication. */
+/**
+ * A random number used to "authenticate" the afs connection.
+ *
+ * para_server picks this number by random before it forks the afs process. The
+ * command handlers know this number as well and write it to the afs socket,
+ * together with the id of the shared memory area which contains the payload of
+ * the afs command. A local process has to know this number to abuse the afs
+ * service provided by the local socket.
+ */
uint32_t afs_socket_cookie;
/** The mutex protecting the shared memory area containing the mmd struct. */
struct lls_parse_result *cf_lpr, *merged_lpr;
char *home = para_homedir();
- daemon_close_log();
if (OPT_GIVEN(CONFIG_FILE))
cf = para_strdup(OPT_STRING_VAL(CONFIG_FILE));
else
i = argc - lls_num_inputs(cmdline_lpr) - 1;
sprintf(argv[i], "para_server (afs)");
close(afs_server_socket[0]);
- afs_init(afs_socket_cookie, afs_server_socket[1]);
+ afs_init(afs_server_socket[1]);
}
close(afs_server_socket[1]);
if (read(afs_server_socket[0], &c, 1) <= 0) {