Revision: 22893 http://trac.macosforge.org/projects/launchd/changeset/22893 Author: zarzycki@apple.com Date: 2006-10-13 07:52:18 -0700 (Fri, 13 Oct 2006) Log Message: ----------- Now that the job MIG intran hook can lookup by both port and PID, we no longer need The "get_self" MIG routine. Modified Paths: -------------- trunk/launchd/src/bootstrap_public.c trunk/launchd/src/launchd_core_logic.c trunk/launchd/src/protocol_legacy.defs Modified: trunk/launchd/src/bootstrap_public.c =================================================================== --- trunk/launchd/src/bootstrap_public.c 2006-10-13 01:21:54 UTC (rev 22892) +++ trunk/launchd/src/bootstrap_public.c 2006-10-13 14:52:18 UTC (rev 22893) @@ -34,10 +34,6 @@ #include <stdlib.h> #include <errno.h> -static mach_port_t vproc_self; - -static void vproc_get_self(void); - kern_return_t _launchd_to_launchd(mach_port_t bp, mach_port_t *reqport, mach_port_t *rcvright, name_array_t *service_names, mach_msg_type_number_t *service_namesCnt, @@ -204,13 +200,7 @@ kern_return_t bootstrap_check_in(mach_port_t bp, name_t service_name, mach_port_t *sp) { - if(bp != bootstrap_port) { - return BOOTSTRAP_NOT_PRIVILEGED; - } - - vproc_get_self(); - - return vproc_mig_check_in(vproc_self, service_name, sp); + return vproc_mig_check_in(bp, service_name, sp); } kern_return_t @@ -278,22 +268,6 @@ } -void -vproc_get_self(void) -{ - mach_port_t bp_self; - - if (vproc_self != MACH_PORT_NULL) { - return; - } - - if (vproc_mig_get_self(bootstrap_port, &bp_self) != 0) { - return; - } - - vproc_self = bp_self; -} - const char * bootstrap_strerror(kern_return_t r) { Modified: trunk/launchd/src/launchd_core_logic.c =================================================================== --- trunk/launchd/src/launchd_core_logic.c 2006-10-13 01:21:54 UTC (rev 22892) +++ trunk/launchd/src/launchd_core_logic.c 2006-10-13 14:52:18 UTC (rev 22893) @@ -3533,26 +3533,6 @@ } kern_return_t -job_mig_get_self(job_t j, mach_port_t *unprivportp) -{ - struct ldcred ldc; - - runtime_get_caller_creds(&ldc); - - job_log(j, LOG_DEBUG, "Requested unprivileged bootstrap port"); - - if (j->anonymous) { - job_log(j, LOG_NOTICE, "PID %u not managed by %s", ldc.pid, getprogname()); - return BOOTSTRAP_NOT_PRIVILEGED; - } - - *unprivportp = job_get_bsport(j); - - return BOOTSTRAP_SUCCESS; -} - - -kern_return_t job_mig_check_in(job_t j, name_t servicename, mach_port_t *serviceportp) { static pid_t last_warned_pid = 0; Modified: trunk/launchd/src/protocol_legacy.defs =================================================================== --- trunk/launchd/src/protocol_legacy.defs 2006-10-13 01:21:54 UTC (rev 22892) +++ trunk/launchd/src/protocol_legacy.defs 2006-10-13 14:52:18 UTC (rev 22893) @@ -109,8 +109,3 @@ routine uncork_fork( __bs_port : job_t); - -/* Essentially the inverse of bootstrap_unprivileged() */ -routine get_self( - __bs_port : job_t; - out __job_port : mach_port_make_send_t);
participants (1)
-
source_changes@macosforge.org