表A.1列出了WSAGetLastError()函数返回的可能错误码和它们的解释,它们可分为四个部分。
错误码的第一部分是用来解决在不同的C编译中对标准C错误码的不一致的定义。错误码的第二部分是标准Berkeley Sockets错误码的Windows Sockets版本。错误码的第三部分包括特定Windows Sockets扩充的错误码。错误码的第四部分由Windows Sockets的getXbyY()和WSAAsyncGetXByY()函数返回, Berkeley软件中由变量h_errno返回的错误(事实上,Windows Sockets在头文件winsock.h中已将h_error定义成其值为WSAGetLastError()的一个宏),它们相当于由域名服务(Domain Name Service)返回的各种失败。如果Windows Sockets实现没有使用域名服务,它将使用最合适的代码。一般地,Windows Sockets应用程序应该将错误WSAHOST_NOT_FOUND和WSANO_DATA解释为指示关键字(名字,地址等)没有找着,而错误WSATRY_AGAIN和WSANO_RECOVERY是提醒名字服务自身是非操作的。
错误码由Windows Sockets 规范定义,在所有同一版本规范的Windows Sockets兼容实现中,它们是一致的。
表A.1 Windows Sockets错误码
Windows Sockets错误码 | Berkeley 对应错误码 | 错误号 | 解 释 |
WSAEINTR | EINTR | 10004 | 同标准C |
WSAEBADF | EBADF | 10009 | 同标准C |
WSAEACCES | EACCES | 10013 | 同标准C |
WSAEFAULT | EFAULT | 10014 | 同标准C |
WSAEINVAL | EINVAL | 10022 | 同标准C |
WSAEMFILE | EMFILE | 10024 | 同标准C |
WSAEWOULDBLOCK | EWOULDBLOCK | 10035 | 同BSD |
WSAEINPROGRESS | EINPROGRESS | 10036 | 当一个阻塞函数正在进行时,调用任何Windows Sockets API函数均返回此错误 |
WSAEALREADY | EALREADY | 10037 | 同BSD |
WSAENOTSOCK | ENOTSOCK | 10038 | 同BSD |
WSAEDESTADDRREQ | EDESTADDRREQ | 10039 | 同BSD |
WSAEMSGSIZE | EMSGSIZE | 10040 | 同BSD |
WSAEPROTOTYPE | EPROTOTYPE | 10041 | 同BSD |
WSAENOPROTOOPT | ENOPROTOOPT | 10042 | 同BSD |
WSAEPROTONOSUPPORT | EPROTONOSUPPORT | 10043 | 同BSD |
WSAESOCKTNOSUPPORT | ESOCKTNOSUPPORT | 10044 | 同BSD |
WSAEOPNOTSUPP | EOPNOTSUPP | 10045 | 同BSD |
WSAEPFNOSUPPORT | EPFNOSUPPORT | 10046 | 同BSD |
WSAEAFNOSUPPORT | EAFNOSUPPORT | 10047 | 同BSD |
WSAEADDRINUSE | EADDRINUSE | 10048 | 同BSD |
WSAEADDRNOTAVAIL | EADDRNOTAVAIL | 10049 | 同BSD |
WSAEnetDOWN | ENETDOWN | 10050 | 同BSD。任何时候只要Windows Sockets实现检测到网络子系统失败,它就报告此错误。 |
WSAENETUNREACH | ENETUNREACH | 10051 | 同BSD |
WSAENETRESET | ENETRESET | 10052 | 同BSD |
WSAECONNABORTED | ECONNABORTED | 10053 | 同BSD |
WSAECONNRESET | ECONNRESET | 10054 | 同BSD |
WSAENOBUFS | ENOBUFS | 10055 | 同BSD |
WSAEISCONN | EISCONN | 10056 | 同BSD |
WSAENOTCONN | ENOTCONN | 10057 | 同BSD |
WSAESHUTDOWN | ESHUTDOWN | 10058 | 同BSD |
WSAETOOMANYREFS | ETOOMANYREFS | 10059 | 同BSD |
WSAETIMEDOUT | ETIMEDOUT | 10060 | 同BSD |
WSAECONNREFUSED | ECONNREFUSED | 10061 | 同BSD |
WSAELOOP | ELOOP | 10062 | 同BSD |
WSAENAMETOOLONG | ENAMETOOLONG | 10063 | 同BSD |
WSAEHOSTDOWN | EHOSTDOWN | 10064 | 同BSD |
WSAEHOSTUNREACH | EHOSTUNREACH | 10065 | 同BSD |
|
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/79126/viewspace-993563/ ,如需转载,请注明出处,否则将追究法律责任。
上一篇:
男人们,请珍惜青春
下一篇:
网管和黑客都必须知道的命令
请登录后发表评论
登录
全部评论
|