summaryrefslogtreecommitdiff
path: root/sys/compat/linux/common/linux_error.c
diff options
context:
space:
mode:
authorfvdl <fvdl@NetBSD.org>1995-02-28 23:24:35 +0000
committerfvdl <fvdl@NetBSD.org>1995-02-28 23:24:35 +0000
commit3bf459f350dcbcf47afccba837f4466b132a98c8 (patch)
tree282143a8f0ed1d8860e89324a32312964e0bd6e8 /sys/compat/linux/common/linux_error.c
parent8bb0b6790c84a1e16ffa558fd110fb0d90cd0470 (diff)
Added Linux compat code.
Diffstat (limited to 'sys/compat/linux/common/linux_error.c')
-rw-r--r--sys/compat/linux/common/linux_error.c177
1 files changed, 177 insertions, 0 deletions
diff --git a/sys/compat/linux/common/linux_error.c b/sys/compat/linux/common/linux_error.c
new file mode 100644
index 00000000000..4cb7a313fa0
--- /dev/null
+++ b/sys/compat/linux/common/linux_error.c
@@ -0,0 +1,177 @@
+/* $NetBSD: linux_error.c,v 1.1 1995/02/28 23:24:35 fvdl Exp $ */
+
+/*
+ * Copyright (c) 1995 Frank van der Linden
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. All advertising materials mentioning features or use of this software
+ * must display the following acknowledgement:
+ * This product includes software developed for the NetBSD Project
+ * by Frank van der Linden
+ * 4. The name of the author may not be used to endorse or promote products
+ * derived from this software without specific prior written permission
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include <compat/linux/linux_errno.h>
+
+int linux_error[] = {
+ 0,
+ LINUX_EPERM,
+ LINUX_ENOENT,
+ LINUX_ESRCH,
+ LINUX_EINTR,
+ LINUX_EIO,
+ LINUX_ENXIO,
+ LINUX_E2BIG,
+ LINUX_ENOEXEC,
+ LINUX_EBADF,
+ LINUX_ECHILD,
+ LINUX_EDEADLK,
+ LINUX_ENOMEM,
+ LINUX_EACCES,
+ LINUX_EFAULT,
+ LINUX_ENOTBLK,
+ LINUX_EBUSY,
+ LINUX_EEXIST,
+ LINUX_EXDEV,
+ LINUX_ENODEV,
+ LINUX_ENOTDIR,
+ LINUX_EISDIR,
+ LINUX_EINVAL,
+ LINUX_ENFILE,
+ LINUX_EMFILE,
+ LINUX_ENOTTY,
+ LINUX_ETXTBSY,
+ LINUX_EFBIG,
+ LINUX_ENOSPC,
+ LINUX_ESPIPE,
+ LINUX_EROFS,
+ LINUX_EMLINK,
+ LINUX_EPIPE,
+ LINUX_EDOM,
+ LINUX_ERANGE,
+ LINUX_EAGAIN,
+ LINUX_EINPROGRESS,
+ LINUX_EALREADY,
+ LINUX_ENOTSOCK,
+ LINUX_EDESTADDRREQ,
+ LINUX_EMSGSIZE,
+ LINUX_EPROTOTYPE,
+ LINUX_ENOPROTOOPT,
+ LINUX_EPROTONOSUPPORT,
+ LINUX_ESOCKTNOSUPPORT,
+ LINUX_EOPNOTSUPP,
+ LINUX_EPFNOSUPPORT,
+ LINUX_EAFNOSUPPORT,
+ LINUX_EADDRINUSE,
+ LINUX_EADDRNOTAVAIL,
+ LINUX_ENETDOWN,
+ LINUX_ENETUNREACH,
+ LINUX_ENETRESET,
+ LINUX_ECONNABORTED,
+ LINUX_ECONNRESET,
+ LINUX_ENOBUFS,
+ LINUX_EISCONN,
+ LINUX_ENOTCONN,
+ LINUX_ESHUTDOWN,
+ LINUX_ETOOMANYREFS,
+ LINUX_ETIMEDOUT,
+ LINUX_ECONNREFUSED,
+ LINUX_ELOOP,
+ LINUX_ENAMETOOLONG,
+ LINUX_EHOSTDOWN,
+ LINUX_EHOSTUNREACH,
+ LINUX_ENOTEMPTY,
+ LINUX_ENOSYS, /* not mapped (EPROCLIM) */
+ LINUX_EUSERS,
+ LINUX_EDQUOT,
+ LINUX_ESTALE,
+ LINUX_EREMOTE,
+ LINUX_ENOSYS, /* not mapped (EBADRPC) */
+ LINUX_ENOSYS, /* not mapped (ERPCMISMATCH) */
+ LINUX_ENOSYS, /* not mapped (EPROGUNAVAIL) */
+ LINUX_ENOSYS, /* not mapped (EPROGMISMATCH) */
+ LINUX_ENOSYS, /* not mapped (EPROCUNAVAIL) */
+ LINUX_ENOLCK,
+ LINUX_ENOSYS,
+ LINUX_ENOSYS, /* not mapped (EFTYPE) */
+ LINUX_ENOSYS, /* not mapped (EAUTH) */
+ LINUX_ENOSYS, /* not mapped (ENEEDAUTH) */
+ LINUX_ENOSYS, /* not mapped (ELAST) */
+
+ /*
+ * The rest of the list consists of errors that only
+ * Linux has. They can be used to map them on to
+ * themselves, so Linux emulating syscalls can return
+ * these values.
+ */
+
+ LINUX_ENOMSG,
+ LINUX_EIDRM,
+ LINUX_ECHRNG,
+ LINUX_EL2NSYNC,
+ LINUX_EL3HLT,
+ LINUX_EL3RST,
+ LINUX_ELNRNG,
+ LINUX_EUNATCH,
+ LINUX_ENOCSI,
+ LINUX_EL2HLT,
+ LINUX_EBADE,
+ LINUX_EBADR,
+ LINUX_EXFULL,
+ LINUX_ENOANO,
+ LINUX_EBADRQC,
+ LINUX_EBADSLT,
+ LINUX_EDEADLOCK,
+ LINUX_EBFONT,
+ LINUX_ENOSTR,
+ LINUX_ENODATA,
+ LINUX_ETIME,
+ LINUX_ENOSR,
+ LINUX_ENONET,
+ LINUX_ENOPKG,
+ LINUX_ENOLINK,
+ LINUX_EADV,
+ LINUX_ESRMNT,
+ LINUX_ECOMM,
+ LINUX_EPROTO,
+ LINUX_EMULTIHOP,
+ LINUX_EDOTDOT,
+ LINUX_EBADMSG,
+ LINUX_EOVERFLOW,
+ LINUX_ENOTUNIQ,
+ LINUX_EBADFD,
+ LINUX_EREMCHG,
+ LINUX_ELIBACC,
+ LINUX_ELIBBAD,
+ LINUX_ELIBSCN,
+ LINUX_ELIBMAX,
+ LINUX_ELIBEXEC,
+ LINUX_EILSEQ,
+ LINUX_ERESTART,
+ LINUX_ESTRPIPE,
+ LINUX_EUCLEAN,
+ LINUX_ENOTNAM,
+ LINUX_ENAVAIL,
+ LINUX_EISNAM,
+ LINUX_EREMOTEIO
+};