The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/xen/interface/errno.h

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 /*
    2  * There are two expected ways of including this header.
    3  *
    4  * 1) The "default" case (expected from tools etc).
    5  *
    6  * Simply #include <public/errno.h>
    7  *
    8  * In this circumstance, normal header guards apply and the includer shall get
    9  * an enumeration in the XEN_xxx namespace, appropriate for C or assembly.
   10  *
   11  * 2) The special case where the includer provides a XEN_ERRNO() in scope.
   12  *
   13  * In this case, no inclusion guards apply and the caller is responsible for
   14  * their XEN_ERRNO() being appropriate in the included context.  The header
   15  * will unilaterally #undef XEN_ERRNO().
   16  */
   17 
   18 #ifndef XEN_ERRNO
   19 
   20 /*
   21  * Includer has not provided a custom XEN_ERRNO().  Arrange for normal header
   22  * guards, an automatic enum (for C code) and constants in the XEN_xxx
   23  * namespace.
   24  */
   25 #ifndef __XEN_PUBLIC_ERRNO_H__
   26 #define __XEN_PUBLIC_ERRNO_H__
   27 
   28 #define XEN_ERRNO_DEFAULT_INCLUDE
   29 
   30 #ifndef __ASSEMBLY__
   31 
   32 #define XEN_ERRNO(name, value) XEN_##name = value,
   33 enum xen_errno {
   34 
   35 #elif __XEN_INTERFACE_VERSION__ < 0x00040700
   36 
   37 #define XEN_ERRNO(name, value) .equ XEN_##name, value
   38 
   39 #endif /* __ASSEMBLY__ */
   40 
   41 #endif /* __XEN_PUBLIC_ERRNO_H__ */
   42 #endif /* !XEN_ERRNO */
   43 
   44 /* ` enum neg_errnoval {  [ -Efoo for each Efoo in the list below ]  } */
   45 /* ` enum errnoval { */
   46 
   47 #ifdef XEN_ERRNO
   48 
   49 /*
   50  * Values originating from x86 Linux. Please consider using respective
   51  * values when adding new definitions here.
   52  *
   53  * The set of identifiers to be added here shouldn't extend beyond what
   54  * POSIX mandates (see e.g.
   55  * http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/errno.h.html)
   56  * with the exception that we support some optional (XSR) values
   57  * specified there (but no new ones should be added).
   58  */
   59 
   60 XEN_ERRNO(EPERM,         1)     /* Operation not permitted */
   61 XEN_ERRNO(ENOENT,        2)     /* No such file or directory */
   62 XEN_ERRNO(ESRCH,         3)     /* No such process */
   63 #ifdef __XEN__ /* Internal only, should never be exposed to the guest. */
   64 XEN_ERRNO(EINTR,         4)     /* Interrupted system call */
   65 #endif
   66 XEN_ERRNO(EIO,           5)     /* I/O error */
   67 XEN_ERRNO(ENXIO,         6)     /* No such device or address */
   68 XEN_ERRNO(E2BIG,         7)     /* Arg list too long */
   69 XEN_ERRNO(ENOEXEC,       8)     /* Exec format error */
   70 XEN_ERRNO(EBADF,         9)     /* Bad file number */
   71 XEN_ERRNO(ECHILD,       10)     /* No child processes */
   72 XEN_ERRNO(EAGAIN,       11)     /* Try again */
   73 XEN_ERRNO(EWOULDBLOCK,  11)     /* Operation would block.  Aliases EAGAIN */
   74 XEN_ERRNO(ENOMEM,       12)     /* Out of memory */
   75 XEN_ERRNO(EACCES,       13)     /* Permission denied */
   76 XEN_ERRNO(EFAULT,       14)     /* Bad address */
   77 XEN_ERRNO(EBUSY,        16)     /* Device or resource busy */
   78 XEN_ERRNO(EEXIST,       17)     /* File exists */
   79 XEN_ERRNO(EXDEV,        18)     /* Cross-device link */
   80 XEN_ERRNO(ENODEV,       19)     /* No such device */
   81 XEN_ERRNO(EISDIR,       21)     /* Is a directory */
   82 XEN_ERRNO(EINVAL,       22)     /* Invalid argument */
   83 XEN_ERRNO(ENFILE,       23)     /* File table overflow */
   84 XEN_ERRNO(EMFILE,       24)     /* Too many open files */
   85 XEN_ERRNO(ENOSPC,       28)     /* No space left on device */
   86 XEN_ERRNO(EROFS,        30)     /* Read-only file system */
   87 XEN_ERRNO(EMLINK,       31)     /* Too many links */
   88 XEN_ERRNO(EDOM,         33)     /* Math argument out of domain of func */
   89 XEN_ERRNO(ERANGE,       34)     /* Math result not representable */
   90 XEN_ERRNO(EDEADLK,      35)     /* Resource deadlock would occur */
   91 XEN_ERRNO(EDEADLOCK,    35)     /* Resource deadlock would occur. Aliases EDEADLK */
   92 XEN_ERRNO(ENAMETOOLONG, 36)     /* File name too long */
   93 XEN_ERRNO(ENOLCK,       37)     /* No record locks available */
   94 XEN_ERRNO(ENOSYS,       38)     /* Function not implemented */
   95 XEN_ERRNO(ENOTEMPTY,    39)     /* Directory not empty */
   96 XEN_ERRNO(ENODATA,      61)     /* No data available */
   97 XEN_ERRNO(ETIME,        62)     /* Timer expired */
   98 XEN_ERRNO(EBADMSG,      74)     /* Not a data message */
   99 XEN_ERRNO(EOVERFLOW,    75)     /* Value too large for defined data type */
  100 XEN_ERRNO(EILSEQ,       84)     /* Illegal byte sequence */
  101 #ifdef __XEN__ /* Internal only, should never be exposed to the guest. */
  102 XEN_ERRNO(ERESTART,     85)     /* Interrupted system call should be restarted */
  103 #endif
  104 XEN_ERRNO(ENOTSOCK,     88)     /* Socket operation on non-socket */
  105 XEN_ERRNO(EMSGSIZE,     90)     /* Message too large. */
  106 XEN_ERRNO(EOPNOTSUPP,   95)     /* Operation not supported on transport endpoint */
  107 XEN_ERRNO(EADDRINUSE,   98)     /* Address already in use */
  108 XEN_ERRNO(EADDRNOTAVAIL, 99)    /* Cannot assign requested address */
  109 XEN_ERRNO(ENOBUFS,      105)    /* No buffer space available */
  110 XEN_ERRNO(EISCONN,      106)    /* Transport endpoint is already connected */
  111 XEN_ERRNO(ENOTCONN,     107)    /* Transport endpoint is not connected */
  112 XEN_ERRNO(ETIMEDOUT,    110)    /* Connection timed out */
  113 XEN_ERRNO(ECONNREFUSED, 111)    /* Connection refused */
  114 
  115 #undef XEN_ERRNO
  116 #endif /* XEN_ERRNO */
  117 /* ` } */
  118 
  119 /* Clean up from a default include.  Close the enum (for C). */
  120 #ifdef XEN_ERRNO_DEFAULT_INCLUDE
  121 #undef XEN_ERRNO_DEFAULT_INCLUDE
  122 #ifndef __ASSEMBLY__
  123 };
  124 #endif
  125 
  126 #endif /* XEN_ERRNO_DEFAULT_INCLUDE */

Cache object: 16ef33016c8ac034d00c3e941f7c3b7c


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.