uid_t our_uid;
gid_t our_gid;
-int am_generator = 0;
+int am_receiver = 0; /* Only set to 1 after the receiver/generator fork. */
+int am_generator = 0; /* Only set to 1 after the receiver/generator fork. */
int local_server = 0;
int daemon_over_rsh = 0;
mode_t orig_umask = 0;
}
if (pid == 0) {
+ am_receiver = 1;
send_msgs_to_gen = am_server;
close(error_pipe[0]);
exit_cleanup(RERR_SYNTAX);
}
- /* we set a 0 umask so that correct file permissions can be
- * carried across */
- orig_umask = umask(0);
+ /* Get the umask for use in permission calculations. We no longer set
+ * it to zero; that is ugly and pointless now that all the callers that
+ * relied on it have been reeducated to work with default ACLs. */
+ umask(orig_umask = umask(0));
#if defined CONFIG_LOCALE && defined HAVE_SETLOCALE
setlocale(LC_CTYPE, "");