Linux errno 错误码对应描述

逆向程序时调用__xstat64运行后返回值是-1,errno的值为2,为了搞清楚对应的描述,故而全显示出来。

#include <stdio.h>
#include <string.h>
#include <errno.h>

#if 0
/usr/include/asm-generic/errno-base.h        1-34
/usr/include/asm-generic/errno.h            35-133

#endif

#define ERRNO_LEN    133

int main()
{
    int err_num;

    for (err_num = 0; err_num <= ERRNO_LEN; err_num++) {
        errno = err_num;
        printf("errno:%d:\t%s\n", err_num, strerror(errno));
    }

    return 0;
}

#if 0
errno:0:    Success
errno:1:    Operation not permitted
errno:2:    No such file or directory
errno:3:    No such process
errno:4:    Interrupted system call
errno:5:    Input/output error
errno:6:    No such device or address
errno:7:    Argument list too long
errno:8:    Exec format error
errno:9:    Bad file descriptor
errno:10:    No child processes
errno:11:    Resource temporarily unavailable
errno:12:    Cannot allocate memory
errno:13:    Permission denied
errno:14:    Bad address
errno:15:    Block device required
errno:16:    Device or resource busy
errno:17:    File exists
errno:18:    Invalid cross-device link
errno:19:    No such device
errno:20:    Not a directory
errno:21:    Is a directory
errno:22:    Invalid argument
errno:23:    Too many open files in system
errno:24:    Too many open files
errno:25:    Inappropriate ioctl for device
errno:26:    Text file busy
errno:27:    File too large
errno:28:    No space left on device
errno:29:    Illegal seek
errno:30:    Read-only file system
errno:31:    Too many links
errno:32:    Broken pipe
errno:33:    Numerical argument out of domain
errno:34:    Numerical result out of range
errno:35:    Resource deadlock avoided
errno:36:    File name too long
errno:37:    No locks available
errno:38:    Function not implemented
errno:39:    Directory not empty
errno:40:    Too many levels of symbolic links
errno:41:    Unknown error 41
errno:42:    No message of desired type
errno:43:    Identifier removed
errno:44:    Channel number out of range
errno:45:    Level 2 not synchronized
errno:46:    Level 3 halted
errno:47:    Level 3 reset
errno:48:    Link number out of range
errno:49:    Protocol driver not attached
errno:50:    No CSI structure available
errno:51:    Level 2 halted
errno:52:    Invalid exchange
errno:53:    Invalid request descriptor
errno:54:    Exchange full
errno:55:    No anode
errno:56:    Invalid request code
errno:57:    Invalid slot
errno:58:    Unknown error 58
errno:59:    Bad font file format
errno:60:    Device not a stream
errno:61:    No data available
errno:62:    Timer expired
errno:63:    Out of streams resources
errno:64:    Machine is not on the network
errno:65:    Package not installed
errno:66:    Object is remote
errno:67:    Link has been severed
errno:68:    Advertise error
errno:69:    Srmount error
errno:70:    Communication error on send
errno:71:    Protocol error
errno:72:    Multihop attempted
errno:73:    RFS specific error
errno:74:    Bad message
errno:75:    Value too large for defined data type
errno:76:    Name not unique on network
errno:77:    File descriptor in bad state
errno:78:    Remote address changed
errno:79:    Can not access a needed shared library
errno:80:    Accessing a corrupted shared library
errno:81:    .lib section in a.out corrupted
errno:82:    Attempting to link in too many shared libraries
errno:83:    Cannot exec a shared library directly
errno:84:    Invalid or incomplete multibyte or wide character
errno:85:    Interrupted system call should be restarted
errno:86:    Streams pipe error
errno:87:    Too many users
errno:88:    Socket operation on non-socket
errno:89:    Destination address required
errno:90:    Message too long
errno:91:    Protocol wrong type for socket
errno:92:    Protocol not available
errno:93:    Protocol not supported
errno:94:    Socket type not supported
errno:95:    Operation not supported
errno:96:    Protocol family not supported
errno:97:    Address family not supported by protocol
errno:98:    Address already in use
errno:99:    Cannot assign requested address
errno:100:    Network is down
errno:101:    Network is unreachable
errno:102:    Network dropped connection on reset
errno:103:    Software caused connection abort
errno:104:    Connection reset by peer
errno:105:    No buffer space available
errno:106:    Transport endpoint is already connected
errno:107:    Transport endpoint is not connected
errno:108:    Cannot send after transport endpoint shutdown
errno:109:    Too many references: cannot splice
errno:110:    Connection timed out
errno:111:    Connection refused
errno:112:    Host is down
errno:113:    No route to host
errno:114:    Operation already in progress
errno:115:    Operation now in progress
errno:116:    Stale file handle
errno:117:    Structure needs cleaning
errno:118:    Not a XENIX named type file
errno:119:    No XENIX semaphores available
errno:120:    Is a named type file
errno:121:    Remote I/O error
errno:122:    Disk quota exceeded
errno:123:    No medium found
errno:124:    Wrong medium type
errno:125:    Operation canceled
errno:126:    Required key not available
errno:127:    Key has expired
errno:128:    Key has been revoked
errno:129:    Key was rejected by service
errno:130:    Owner died
errno:131:    State not recoverable
errno:132:    Operation not possible due to RF-kill
errno:133:    Memory page has hardware error
#endif

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值