X-Git-Url: https://git.saurik.com/apple/launchd.git/blobdiff_plain/ef3989319e2fdaf6ddb7590bc634ee693aa02a3b..587e987eefe38fd31fb51b6d52f422eac67bdf8e:/launchd/src/bootstrap.h?ds=sidebyside diff --git a/launchd/src/bootstrap.h b/launchd/src/bootstrap.h index b76c52a..15f3248 100644 --- a/launchd/src/bootstrap.h +++ b/launchd/src/bootstrap.h @@ -96,18 +96,21 @@ typedef char cmd_t[BOOTSTRAP_MAX_CMD_LEN]; typedef name_t *name_array_t; typedef int bootstrap_status_t; typedef bootstrap_status_t *bootstrap_status_array_t; +typedef unsigned int bootstrap_property_t; +typedef bootstrap_property_t * bootstrap_property_array_t; typedef boolean_t *bool_array_t; #define BOOTSTRAP_MAX_LOOKUP_COUNT 20 -#define BOOTSTRAP_SUCCESS 0 +#define BOOTSTRAP_SUCCESS 0 #define BOOTSTRAP_NOT_PRIVILEGED 1100 #define BOOTSTRAP_NAME_IN_USE 1101 #define BOOTSTRAP_UNKNOWN_SERVICE 1102 #define BOOTSTRAP_SERVICE_ACTIVE 1103 -#define BOOTSTRAP_BAD_COUNT 1104 -#define BOOTSTRAP_NO_MEMORY 1105 +#define BOOTSTRAP_BAD_COUNT 1104 +#define BOOTSTRAP_NO_MEMORY 1105 +#define BOOTSTRAP_NO_CHILDREN 1106 #define BOOTSTRAP_STATUS_INACTIVE 0 #define BOOTSTRAP_STATUS_ACTIVE 1 @@ -233,13 +236,16 @@ kern_return_t bootstrap_parent( * * This API is deprecated. Old scenarios and recommendations: * - * 1) If the code was registering a well known name, please switch to launchd. + * 1) Code that used to call bootstrap_check_in() and then bootstrap_register() + * can now always call bootstrap_check_in(). * - * 2) If the code was registering a dynamically generated string and passing + * 2) If the code was registering a well known name, please switch to launchd. + * + * 3) If the code was registering a dynamically generated string and passing * the string to other applications, please rewrite the code to send a Mach * send-right directly. * - * 3) If the launchd job maintained an optional Mach service, please reserve + * 4) If the launchd job maintained an optional Mach service, please reserve * the name with launchd and control the presense of the service through * ownership of the Mach receive right like so. * @@ -261,26 +267,27 @@ kern_return_t bootstrap_parent( * Returns BOOTSTRAP_NAME_IN_USE, if service has already been * register or checked-in. */ -kern_return_t bootstrap_register( - mach_port_t bp, - name_t service_name, - mach_port_t sp) - AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER_BUT_DEPRECATED_IN_MAC_OS_X_VERSION_10_5; +AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER_BUT_DEPRECATED_IN_MAC_OS_X_VERSION_10_5 +kern_return_t +bootstrap_register(mach_port_t bp, name_t service_name, mach_port_t sp); /* * bootstrap_create_service() * - * Creates a service named "service_name" and returns send rights to that + * Creates a service named "service_name" and returns a send right to that * port in "service_port." The port may later be checked in as if this * port were configured in the bootstrap configuration file. * + * This API is deprecated. Please call bootstrap_check_in() instead. + * * Errors: Returns appropriate kernel errors on rpc failure. * Returns BOOTSTRAP_SERVICE_ACTIVE, if service already exists. */ -kern_return_t bootstrap_create_service( - mach_port_t bp, - name_t service_name, - mach_port_t *sp); +#ifdef AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER_BUT_DEPRECATED_IN_MAC_OS_X_VERSION_10_6 +AVAILABLE_MAC_OS_X_VERSION_10_0_AND_LATER_BUT_DEPRECATED_IN_MAC_OS_X_VERSION_10_6 +#endif +kern_return_t +bootstrap_create_service(mach_port_t bp, name_t service_name, mach_port_t *sp); /* * bootstrap_check_in() @@ -302,7 +309,7 @@ kern_return_t bootstrap_create_service( */ kern_return_t bootstrap_check_in( mach_port_t bp, - name_t service_name, + const name_t service_name, mach_port_t *sp); /* @@ -317,7 +324,7 @@ kern_return_t bootstrap_check_in( */ kern_return_t bootstrap_look_up( mach_port_t bp, - name_t service_name, + const name_t service_name, mach_port_t *sp); /*