[launchd-changes] [23694] trunk/launchd/src/launchd_core_logic.c

source_changes at macosforge.org source_changes at macosforge.org
Fri Aug 22 15:41:12 PDT 2008


Revision: 23694
          http://trac.macosforge.org/projects/launchd/changeset/23694
Author:   dsorresso at apple.com
Date:     2008-08-22 15:41:11 -0700 (Fri, 22 Aug 2008)
Log Message:
-----------
Merging in changes for rdar://problem/5923864.

Modified Paths:
--------------
    trunk/launchd/src/launchd_core_logic.c

Modified: trunk/launchd/src/launchd_core_logic.c
===================================================================
--- trunk/launchd/src/launchd_core_logic.c	2008-08-22 22:31:47 UTC (rev 23693)
+++ trunk/launchd/src/launchd_core_logic.c	2008-08-22 22:41:11 UTC (rev 23694)
@@ -475,6 +475,7 @@
 static bool job_setup_machport(job_t j);
 static void job_setup_fd(job_t j, int target_fd, const char *path, int flags);
 static void job_postfork_become_user(job_t j);
+static void job_enable_audit_for_user(job_t j, uid_t u, char *name);
 static void job_postfork_test_user(job_t j);
 static void job_log_pids_with_weird_uids(job_t j);
 static void job_force_sampletool(job_t j);
@@ -3355,6 +3356,8 @@
 		desired_gid = gre->gr_gid;
 	}
 
+	job_enable_audit_for_user(j, desired_uid, loginname);
+
 	if (!job_assumes(j, setlogin(loginname) != -1)) {
 		_exit(EXIT_FAILURE);
 	}
@@ -3391,6 +3394,28 @@
 }
 
 void
+job_enable_audit_for_user(job_t j, uid_t u, char *name)
+{
+	auditinfo_t auinfo = {
+		.ai_auid = u,
+		.ai_asid = j->p,
+	};
+	long au_cond;
+
+	if (!job_assumes(j, auditon(A_GETCOND, &au_cond, sizeof(long)) == 0)) {
+		_exit(EXIT_FAILURE);
+	}
+
+	if (au_cond != AUC_NOAUDIT) {
+		if (!job_assumes(j, au_user_mask(name, &auinfo.ai_mask) == 0)) {
+			_exit(EXIT_FAILURE);
+		} else if (!job_assumes(j, setaudit(&auinfo) == 0)) {
+			_exit(EXIT_FAILURE);
+		}
+	}
+}
+
+void
 job_setup_attributes(job_t j)
 {
 	struct limititem *li;
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/launchd-changes/attachments/20080822/21675ff9/attachment.html 


More information about the launchd-changes mailing list