Prayer

在一般中寻求卓越
posts - 1256, comments - 190, trackbacks - 0, articles - 0
  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

AIX 下定义的错误号

Posted on 2009-04-24 13:55 Prayer 阅读(2186) 评论(0)  编辑 收藏 引用 所属分类: C/C++LINUX/UNIX/AIX

在/usr/include/sys$ 目录下的errno.h

#define EPERM 1 /* Operation not permitted  */
#define ENOENT 2 /* No such file or directory  */
#define ESRCH 3 /* No such process   */
#define EINTR 4 /* interrupted system call  */
#define EIO 5 /* I/O error    */
#define ENXIO 6 /* No such device or address  */
#define E2BIG 7 /* Arg list too long   */
#define ENOEXEC 8 /* Exec format error   */
#define EBADF 9 /* Bad file descriptor   */
#define ECHILD 10 /* No child processes   */
#define EAGAIN 11 /* Resource temporarily unavailable */
#define ENOMEM 12 /* Not enough space   */
#define EACCES 13 /* Permission denied   */
#define EFAULT 14 /* Bad address    */
#define ENOTBLK 15 /* Block device required  */
#define EBUSY 16 /* Resource busy   */
#define EEXIST 17 /* File exists    */
#define EXDEV 18 /* Improper link   */
#define ENODEV 19 /* No such device   */
#define ENOTDIR 20 /* Not a directory   */
#define EISDIR 21 /* Is a directory   */
#define EINVAL 22 /* Invalid argument   */
#define ENFILE 23 /* Too many open files in system */
#define EMFILE 24 /* Too many open files   */
#define ENOTTY 25 /* Inappropriate I/O control operation */
#define ETXTBSY 26 /* Text file busy   */
#define EFBIG 27 /* File too large   */
#define ENOSPC 28 /* No space left on device  */
#define ESPIPE 29 /* Invalid seek    */
#define EROFS 30 /* Read only file system  */
#define EMLINK 31 /* Too many links   */
#define EPIPE 32 /* Broken pipe    */
#define EDOM 33 /* Domain error within math function */
#define ERANGE 34 /* Result too large   */
#define ENOMSG 35 /* No message of desired type  */
#define EIDRM 36 /* Identifier removed   */
#define ECHRNG 37 /* Channel number out of range  */
#define EL2NSYNC 38 /* Level 2 not synchronized  */
#define EL3HLT 39 /* Level 3 halted   */
#define EL3RST 40 /* Level 3 reset   */
#define ELNRNG 41 /* Link number out of range  */
#define EUNATCH 42 /* Protocol driver not attached  */
#define ENOCSI 43 /* No CSI structure available  */
#define EL2HLT 44 /* Level 2 halted   */
#define EDEADLK 45 /* Resource deadlock avoided  */

#define ENOTREADY 46 /* Device not ready  */
#define EWRPROTECT 47 /* Write-protected media  */
#define EFORMAT  48 /* Unformatted media   */

#define ENOLCK  49 /* No locks available   */

#define ENOCONNECT      50      /* no connection                */
#define ESTALE          52      /* no filesystem                */
#define EDIST  53  /* old, currently unused AIX errno*/

/* non-blocking and interrupt i/o */
/*
 * AIX returns EAGAIN where 4.3BSD used EWOULDBLOCK;
 * but, the standards insist on unique errno values for each errno.
 * A unique value is reserved for users that want to code case
 * statements for systems that return either EAGAIN or EWOULDBLOCK.
 */
#if _XOPEN_SOURCE_EXTENDED==1
#define EWOULDBLOCK     EAGAIN   /* Operation would block */
#else /* _XOPEN_SOURCE_EXTENDED */
#define EWOULDBLOCK 54
#endif /* _XOPEN_SOURCE_EXTENDED */

#define EINPROGRESS     55      /* Operation now in progress */
#define EALREADY        56      /* Operation already in progress */

/* ipc/network software */

 /* argument errors */
#define ENOTSOCK        57      /* Socket operation on non-socket */
#define EDESTADDRREQ    58      /* Destination address required */
#define EDESTADDREQ     EDESTADDRREQ /* Destination address required */
#define EMSGSIZE        59      /* Message too long */
#define EPROTOTYPE      60      /* Protocol wrong type for socket */
#define ENOPROTOOPT     61      /* Protocol not available */
#define EPROTONOSUPPORT 62      /* Protocol not supported */
#define ESOCKTNOSUPPORT 63      /* Socket type not supported */
#define EOPNOTSUPP      64      /* Operation not supported on socket */
#define EPFNOSUPPORT    65      /* Protocol family not supported */
#define EAFNOSUPPORT    66      /* Address family not supported by protocol family */
#define EADDRINUSE      67      /* Address already in use */
#define EADDRNOTAVAIL   68      /* Can't assign requested address */

 /* operational errors */
#define ENETDOWN        69      /* Network is down */
#define ENETUNREACH     70      /* Network is unreachable */
#define ENETRESET       71      /* Network dropped connection on reset */
#define ECONNABORTED    72      /* Software caused connection abort */
#define ECONNRESET      73      /* Connection reset by peer */
#define ENOBUFS         74      /* No buffer space available */
#define EISCONN         75      /* Socket is already connected */
#define ENOTCONN        76      /* Socket is not connected */
#define ESHUTDOWN       77      /* Can't send after socket shutdown */

#define ETIMEDOUT       78      /* Connection timed out */
#define ECONNREFUSED    79      /* Connection refused */

#define EHOSTDOWN       80      /* Host is down */
#define EHOSTUNREACH    81      /* No route to host */

/* ERESTART is used to determine if the system call is restartable */
#define ERESTART 82 /* restart the system call */

/* quotas and limits */
#define EPROCLIM 83 /* Too many processes */
#define EUSERS  84 /* Too many users */
#define ELOOP  85 /* Too many levels of symbolic links      */
#define ENAMETOOLONG 86 /* File name too long     */

/*
 * AIX returns EEXIST where 4.3BSD used ENOTEMPTY;
 * but, the standards insist on unique errno values for each errno.
 * A unique value is reserved for users that want to code case
 * statements for systems that return either EEXIST or ENOTEMPTY.
 */
#if defined(_ALL_SOURCE) && !defined(_LINUX_SOURCE_COMPAT)
#define ENOTEMPTY EEXIST /* Directory not empty */
#else /* not _ALL_SOURCE */
#define ENOTEMPTY 87
#endif /* _ALL_SOURCE */

/* disk quotas */
#define EDQUOT  88 /* Disc quota exceeded */

#define ECORRUPT        89      /* Invalid file system control data */

/* errnos 90-92 reserved for future use compatible with AIX PS/2 */

/* network file system */
#define EREMOTE  93 /* Item is not local to host */

/* errnos 94-108 reserved for future use compatible with AIX PS/2 */

#define ENOSYS  109 /* Function not implemented  POSIX */

/* disk device driver */
#define EMEDIA  110  /* media surface error */
#define ESOFT           111     /* I/O completed, but needs relocation */

/* security */
#define ENOATTR  112  /* no attribute found */
#define ESAD  113 /* security authentication denied */
#define ENOTRUST 114 /* not a trusted program */

/* BSD 4.3 RENO */
#define ETOOMANYREFS    115     /* Too many references: can't splice */

#define EILSEQ  116     /* Invalid wide character */
#define ECANCELED  117     /* asynchronous i/o cancelled */

/* SVR4 STREAMS */
#define ENOSR  118 /* temp out of streams resources */
#define ETIME  119 /* I_STR ioctl timed out */
#define EBADMSG  120 /* wrong message type at stream head */
#define EPROTO  121 /* STREAMS protocol error */
#define ENODATA  122 /* no message ready at stream head */
#define ENOSTR  123 /* fd is not a stream */

#define ECLONEME ERESTART /* this is the way we clone a stream ... */

#define ENOTSUP  124 /* POSIX threads unsupported value */

#define EMULTIHOP       125     /* multihop is not allowed */
#define ENOLINK         126     /* the link has been severed */
#define EOVERFLOW       127     /* value too large to be stored in data type */


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   博问   Chat2DB   管理