* Declarations for letting a port represent a kernel object.
*/
+#ifdef MACH_KERNEL_PRIVATE
#include <ipc/ipc_kmsg.h>
#include <ipc/ipc_port.h>
+#endif /* MACH_KERNEL_PRIVATE */
#ifndef _KERN_IPC_KOBJECT_H_
#define _KERN_IPC_KOBJECT_H_
#define IKOT_LOCK_SET 24
#define IKOT_CLOCK 25
#define IKOT_CLOCK_CTRL 26
-#define IKOT_IOKIT_SPARE 27
+#define IKOT_IOKIT_IDENT 27
#define IKOT_NAMED_ENTRY 28
#define IKOT_IOKIT_CONNECT 29
#define IKOT_IOKIT_OBJECT 30
#define IKOT_AU_SESSIONPORT 33
#define IKOT_FILEPORT 34
#define IKOT_LABELH 35
+#define IKOT_TASK_RESUME 36
+#define IKOT_VOUCHER 37
+#define IKOT_VOUCHER_ATTR_CONTROL 38
+#define IKOT_WORK_INTERVAL 39
+
/*
* Add new entries here and adjust IKOT_UNKNOWN.
* Please keep ipc/ipc_object.c:ikot_print_array up to date.
*/
-#define IKOT_UNKNOWN 36 /* magic catchall */
+#define IKOT_UNKNOWN 40 /* magic catchall */
#define IKOT_MAX_TYPE (IKOT_UNKNOWN+1) /* # of IKOT_ types */
#define is_ipc_kobject(ikot) ((ikot) != IKOT_NONE)
+#ifdef MACH_KERNEL_PRIVATE
+
/*
* Define types of kernel objects that use page lists instead
* of entry lists for copyin of out of line memory.
/* Dispatch a kernel server function */
extern ipc_kmsg_t ipc_kobject_server(
- ipc_kmsg_t request);
+ ipc_kmsg_t request,
+ mach_msg_option_t option);
/* Make a port represent a kernel object of the given type */
extern void ipc_kobject_set(
#define null_conversion(port) (port)
+#endif /* MACH_KERNEL_PRIVATE */
+
#endif /* KERNEL_PRIVATE */
#endif /* _KERN_IPC_KOBJECT_H_ */