Page principale | Liste des namespaces | Hiérarchie des classes | Liste des classes | Répertoires | Liste des fichiers | Membres de namespace | Membres de classe | Membres de fichier

errno.h

Aller à la documentation de ce fichier.
00001 /* errno.h 
00002  *      Error codes for system calls.          
00003  *      
00004  *      Do not modify the contents of this file.
00005  *
00006  *      Try to use the most descriptive error number for the error.
00007  *      You may find it helpful to see what errors equivalent UNIX
00008  *      system calls return under various error conditions.
00009  *      For example the man page for the write system call "man 2 write" 
00010  *      provides a list of different error number values for different
00011  *      conditions.
00012  *      NOTE: there are way more errors here than you should be supporting
00013  *            and many more error conditions listed in man pages than 
00014  *            Nachos can possibly generate. The list here is to give you
00015  *            some ideas and to hopefully standardize on some error numbers.
00016  *
00017  *      ALSO NOTE: These definitions may not correspond to Solaris definitions
00018  *      (for copyright reasons these are taken from Linux).
00019  */
00020 
00021 #ifndef ERRNO_H
00022 #define ERRNO_H
00023 
00024 #include "copyright.h"          
00025 
00026 #define EPERM            -1      /* Operation not permitted */
00027 #define ENOENT           -2      /* No such file or directory */
00028 #define ESRCH            -3      /* No such process */
00029 #define EINTR            -4      /* Interrupted system call */
00030 #define EIO              -5      /* I/O error */
00031 #define ENXIO            -6      /* No such device or address */
00032 #define E2BIG            -7      /* Arg list too long */
00033 #define ENOEXEC          -8      /* Exec format error */
00034 #define EBADF            -9      /* Bad file number */
00035 #define ECHILD          -10      /* No child processes */
00036 #define EAGAIN          -11      /* Try again */
00037 #define ENOMEM          -12      /* Out of memory */
00038 #define EACCES          -13      /* Permission denied */
00039 #define EFAULT          -14      /* Bad address */
00040 #define ENOTBLK         -15      /* Block device required */
00041 #define EBUSY           -16      /* Device or resource busy */
00042 #define EEXIST          -17      /* File exists */
00043 #define EXDEV           -18      /* Cross-device link */
00044 #define ENODEV          -19      /* No such device */
00045 #define ENOTDIR         -20      /* Not a directory */
00046 #define EISDIR          -21      /* Is a directory */
00047 #define EINVAL          -22      /* Invalid argument */
00048 #define ENFILE          -23      /* File table overflow */
00049 #define EMFILE          -24      /* Too many open files */
00050 #define ENOTTY          -25      /* Not a typewriter */
00051 #define ETXTBSY         -26      /* Text file busy */
00052 #define EFBIG           -27      /* File too large */
00053 #define ENOSPC          -28      /* No space left on device */
00054 #define ESPIPE          -29      /* Illegal seek */
00055 #define EROFS           -30      /* Read-only file system */
00056 #define EMLINK          -31      /* Too many links */
00057 #define EPIPE           -32      /* Broken pipe */
00058 #define EDOM            -33      /* Math argument out of domain of func */
00059 #define ERANGE          -34      /* Math result not representable */
00060 #define EDEADLK         -35      /* Resource deadlock would occur */
00061 #define ENAMETOOLONG    -36      /* File name too long */
00062 #define ENOLCK          -37      /* No record locks available */
00063 #define ENOSYS          -38      /* Function not implemented */
00064 #define ENOTEMPTY       -39      /* Directory not empty */
00065 #define ELOOP           -40      /* Too many symbolic links encountered */
00066 #define EWOULDBLOCK     EAGAIN  /* Operation would block */
00067 #define ENOMSG          -42      /* No message of desired type */
00068 #define EIDRM           -43      /* Identifier removed */
00069 #define ECHRNG          -44      /* Channel number out of range */
00070 #define EL2NSYNC        -45      /* Level 2 not synchronized */
00071 #define EL3HLT          -46      /* Level 3 halted */
00072 #define EL3RST          -47      /* Level 3 reset */
00073 #define ELNRNG          -48      /* Link number out of range */
00074 #define EUNATCH         -49      /* Protocol driver not attached */
00075 #define ENOCSI          -50      /* No CSI structure available */
00076 #define EL2HLT          -51      /* Level 2 halted */
00077 #define EBADE           -52      /* Invalid exchange */
00078 #define EBADR           -53      /* Invalid request descriptor */
00079 #define EXFULL          -54      /* Exchange full */
00080 #define ENOANO          -55      /* No anode */
00081 #define EBADRQC         -56      /* Invalid request code */
00082 #define EBADSLT         -57      /* Invalid slot */
00083 
00084 #endif // ERRNO_H

Généré le Sun Jan 15 00:45:45 2006 pour Système NachOS : par  doxygen 1.4.4