xnu-7195.60.75.tar.gz
[apple/xnu.git] / osfmk / mach / thread_act.defs
index 9754acb63283e8140dab537b735ebbb7bfc0523d..e7f20e54cdc6a787142639dc395315821070dc03 100644 (file)
@@ -71,6 +71,12 @@ subsystem
 #include <mach/std_types.defs>
 #include <mach/mach_types.defs>
 
+#if !KERNEL && !LIBSYSCALL_INTERFACE
+#define PREFIX(NAME) _kernelrpc_ ## NAME
+#else
+#define PREFIX(NAME) NAME
+#endif
+
 /*
  *     Destroy the target thread.
  *
@@ -90,8 +96,13 @@ routine thread_terminate(
  *     may be stale.  [Flavor THREAD_STATE_FLAVOR_LIST provides a
  *     list of valid flavors for the target thread.]
  */
-routine act_get_state(
-               target_act      : thread_act_t;
+routine
+#ifdef KERNEL_SERVER
+act_get_state_to_user(
+#else
+act_get_state(
+#endif
+               target_act      : thread_read_t;
                flavor          : int;
        out     old_state       : thread_state_t, CountInOut);
 
@@ -119,8 +130,13 @@ act_set_state(
  *     may be stale.  [Flavor THREAD_STATE_FLAVOR_LIST provides a
  *     list of valid flavors for the target thr_act.]
  */
-routine thread_get_state(
-               target_act      : thread_act_t;
+routine
+#ifdef KERNEL_SERVER
+thread_get_state_to_user(
+#else
+thread_get_state(
+#endif
+               target_act      : thread_read_t;
                flavor          : thread_state_flavor_t;
        out     old_state       : thread_state_t, CountInOut);
 
@@ -185,7 +201,12 @@ routine thread_abort_safely(
                target_act      : thread_act_t);
 
 
-routine thread_depress_abort(
+routine
+#ifdef KERNEL_SERVER
+thread_depress_abort_from_user(
+#else
+thread_depress_abort(
+#endif
                thread          : thread_act_t);
 
 
@@ -193,11 +214,18 @@ routine thread_depress_abort(
  *     Returns the current value of the selected special port
  *     associated with the target thread.
  */
-routine thread_get_special_port(
-               thr_act         : thread_act_t;
+routine
+#ifdef KERNEL_SERVER
+thread_get_special_port_from_user(
+               port            : mach_port_t;
+#else
+thread_get_special_port(
+               thr_act         : thread_inspect_t;
+#endif
                which_port      : int;
        out     special_port    : mach_port_t);
 
+
 /*
  *     Set one of the special ports associated with the
  *     target thread.
@@ -211,7 +239,7 @@ routine thread_set_special_port(
  *      Returns information about the target thread.
  */
 routine thread_info(
-                target_act      : thread_act_t;
+                target_act      : thread_inspect_t;
                 flavor          : thread_flavor_t;
         out     thread_info_out : thread_info_t, CountInOut);
 
@@ -228,8 +256,14 @@ routine            thread_set_exception_ports(
 /*
  * Lookup some of the old exception handlers for a thread
  */
-routine                thread_get_exception_ports(
+routine                
+#if KERNEL_SERVER
+thread_get_exception_ports_from_user(
+                       port        : mach_port_t;
+#else
+thread_get_exception_ports(
                        thread          : thread_act_t;
+#endif
                        exception_mask  : exception_mask_t;
                  out   masks           : exception_mask_array_t;
                  out   old_handlers    : exception_handler_array_t, SameCount;
@@ -255,7 +289,7 @@ routine             thread_swap_exception_ports(
 /*
  * OBSOLETE interface.
  */
-routine thread_policy(
+routine PREFIX(thread_policy)(
        thr_act                 : thread_act_t;
        policy                  : policy_t;
        base                    : policy_base_t;
@@ -266,13 +300,13 @@ routine thread_policy(
  * (Approved Mac OS X microkernel interface)
  */
 
-routine thread_policy_set(
+routine PREFIX(thread_policy_set)(
        thread                  : thread_act_t;
        flavor                  : thread_policy_flavor_t;
        policy_info             : thread_policy_t);
 
 routine thread_policy_get(
-       thread                  : thread_act_t;
+       thread                  : thread_inspect_t;
        flavor                  : thread_policy_flavor_t;
 out    policy_info             : thread_policy_t, CountInOut;
 inout  get_default             : boolean_t);
@@ -316,18 +350,41 @@ routine thread_assign_default(
  *     Get current assignment for thread.
  */
 routine thread_get_assignment(
-               thread          : thread_act_t;
+               thread          : thread_inspect_t;
        out     assigned_set    : processor_set_name_t);
 
-
 /*
  * OBSOLETE interface.
  */
-routine thread_set_policy(
-       thr_act                 : thread_act_t;
-       pset                    : processor_set_t;
-       policy                  : policy_t;
-       base                    : policy_base_t;
-       limit                   : policy_limit_t);
+routine PREFIX(thread_set_policy)(
+               thr_act         : thread_act_t;
+               pset            : processor_set_t;
+               policy          : policy_t;
+               base            : policy_base_t;
+               limit           : policy_limit_t);
+
+routine thread_get_mach_voucher(
+               thr_act         : thread_read_t;
+               which           : mach_voucher_selector_t;
+       out     voucher         : ipc_voucher_t);
+
+routine thread_set_mach_voucher(
+               thr_act         : thread_act_t;
+               voucher         : ipc_voucher_t);
+       
+routine thread_swap_mach_voucher(
+               thr_act         : thread_act_t;
+               new_voucher     : ipc_voucher_t;
+       inout   old_voucher     : ipc_voucher_t);
+
+routine thread_convert_thread_state(
+               thread          : thread_act_t;
+               direction       : int;
+               flavor          : thread_state_flavor_t;
+               in_state        : thread_state_t;
+       out     out_state       : thread_state_t, CountInOut);
+
+#ifdef XNU_KERNEL_PRIVATE
+#endif
 
 /* vim: set ft=c : */