]> git.saurik.com Git - apple/xnu.git/blobdiff - libsyscall/mach/err_mach_ipc.sub
xnu-1228.tar.gz
[apple/xnu.git] / libsyscall / mach / err_mach_ipc.sub
diff --git a/libsyscall/mach/err_mach_ipc.sub b/libsyscall/mach/err_mach_ipc.sub
new file mode 100644 (file)
index 0000000..c9e6a79
--- /dev/null
@@ -0,0 +1,119 @@
+/*
+ * @OSF_COPYRIGHT@
+ */
+
+/* 
+ * Mach Operating System
+ * Copyright (c) 1991,1990,1989 Carnegie Mellon University
+ * All Rights Reserved.
+ * 
+ * Permission to use, copy, modify and distribute this software and its
+ * documentation is hereby granted, provided that both the copyright
+ * notice and this permission notice appear in all copies of the
+ * software, derivative works or modified versions, and any portions
+ * thereof, and that both notices appear in supporting documentation.
+ * 
+ * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS 
+ * CONDITION.  CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR
+ * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
+ * 
+ * Carnegie Mellon requests users of this software to return to
+ * 
+ *  Software Distribution Coordinator  or  Software.Distribution@CS.CMU.EDU
+ *  School of Computer Science
+ *  Carnegie Mellon University
+ *  Pittsburgh PA 15213-3890
+ * 
+ * any improvements or extensions that they make and grant Carnegie the
+ * rights to redistribute these changes.
+ */
+
+/*
+ *     File:   err_mach_ipc.sub
+ *     Author: Richard Draves, Carnegie Mellon University
+ *     Date:   Jan, 1990
+ *
+ *     Error string definitions for the new Mach IPC
+ */
+
+static const char * err_codes_mach_send[] = {
+       /* 0 */ "(ipc/send) no error",
+       /* 1 */ "(ipc/send) send in progress",
+       /* 2 */ "(ipc/send) invalid data",
+       /* 3 */ "(ipc/send) invalid destination port",
+       /* 4 */ "(ipc/send) timed out",
+       /* 5 */ "(ipc/send) will notify",
+       /* 6 */ "(ipc/send) notify in progress",
+       /* 7 */ "(ipc/send) interrupted",
+       /* 8 */ "(ipc/send) msg too small",
+       /* 9 */ "(ipc/send) invalid reply port",
+       /* 10 */        "(ipc/send) invalid port right",
+       /* 11 */        "(ipc/send) invalid notify port",
+       /* 12 */        "(ipc/send) invalid memory",
+       /* 13 */        "(ipc/send) no msg buffer",
+       /* 14 */        "(ipc/send) no notify possible",
+       /* 15 */        "(ipc/send) invalid msg-type",
+       /* 16 */        "(ipc/send) invalid msg-header",
+       /* 17 */ "(ipc/send) invalid msg-trailer",
+       /* 18 */ "(ipc/send) DIPC transport failure",
+       /* 19 */ "(ipc/send) DIPC port migrated",
+       /* 20 */ "(ipc/send) DIPC resend failed",
+       /* 21 */ "(ipc/send) out-of-line buffer too large",
+};
+
+static const char * err_codes_mach_rcv[] = {
+       /* 0 */ "(ipc/rcv) no error",
+       /* 1 */ "(ipc/rcv) receive in progress",
+       /* 2 */ "(ipc/rcv) invalid name",
+       /* 3 */ "(ipc/rcv) timed out",
+       /* 4 */ "(ipc/rcv) msg too large",
+       /* 5 */ "(ipc/rcv) interrupted",
+       /* 6 */ "(ipc/rcv) port changed",
+       /* 7 */ "(ipc/rcv) invalid notify port",
+       /* 8 */ "(ipc/rcv) invalid data",
+       /* 9 */ "(ipc/rcv) port died",
+       /* 10 */        "(ipc/rcv) port in set",
+       /* 11 */        "(ipc/rcv) header error",
+       /* 12 */        "(ipc/rcv) body error",
+       /* 13 */        "(ipc/rcv) invalid scatter list entry",
+       /* 14 */        "(ipc/rcv) overwrite region too small",
+       /* 15 */ "(ipc/rcv) invalid msg-trailer",
+       /* 16 */ "(ipc/rcv) DIPC transport error",
+};
+
+static const char      * err_codes_mach_mig[] = {
+       /* 0 */ "(ipc/mig) client type check failure",
+       /* 1 */ "(ipc/mig) wrong reply message ID",
+       /* 2 */ "(ipc/mig) server detected error",
+       /* 3 */ "(ipc/mig) bad request message ID",
+       /* 4 */ "(ipc/mig) server type check failure",
+       /* 5 */ "(ipc/mig) no reply should be sent",
+       /* 6 */ "(ipc/mig) server raised exception",
+       /* 7 */ "(ipc/mig) array not large enough",
+       /* 8 */ "(ipc/mig) server died",
+       /* 9 */ "(ipc/mig) unknown trailer format",
+};
+
+/*     err_mach_ipc subsystems         */
+static const struct error_subsystem err_mach_ipc_sub[] = {
+       /* ipc/0; */
+       {
+               "(ipc/send)",
+               errlib_count(err_codes_mach_send),
+               err_codes_mach_send,
+       },
+       /* ipc/1; */
+       {
+               "(ipc/rcv)",
+               errlib_count(err_codes_mach_rcv),
+               err_codes_mach_rcv,
+
+       },
+       /* ipc/2 */
+       {
+               "(ipc/mig)",
+               errlib_count(err_codes_mach_mig),
+               err_codes_mach_mig,
+       },
+
+};