]> git.saurik.com Git - apple/launchd.git/blobdiff - launchd/src/bootstrap.h
launchd-329.3.tar.gz
[apple/launchd.git] / launchd / src / bootstrap.h
index b76c52a745b04db172e7c6bca4e4d73c046a7512..15f32481310c9f392e86a799a087c0a435c0ed8a 100644 (file)
@@ -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);
 
 /*