1. 程式人生 > >TCP/IP 最常見的錯誤原因碼 (errno)列表

TCP/IP 最常見的錯誤原因碼 (errno)列表

軟件 被拒絕 pan 文件描述符 數據庫管理 set socket 識別 linu

對於在基於 UNIX 的環境中的 TCP/IP 用戶,下表列出了某些最常見的錯誤原因碼 (errno)。它不是完整的錯誤列表。可以在文件 /usr/include/sys/errno.h 中找到 Errno。針對每一種操作系統給出了errno 號碼。

基於 UNIX 的 TCP/IP errno
Errno
Errno號碼
AIXHP-UXSolarisUnixWareLinux
說明
EINTR 4 4 4 4 4 系統調用中斷。
EAGAIN 11 11 11 11 11 資源臨時不可用。
EBUSY 16 16 16 16 16 資源正忙。
EMFILE 24 24 24 24 24 每個進程文件描述符表已滿。
EPIPE 32 32 32 32 32 管道斷開。
EADDRINUSE 67 226 125 125 98 已經在使用指定的地址。
ENETDOWN 69 228 127 127 100 網絡已停止。
ENETUNREACH 70 229 128 128 101 沒有到達網絡的可用路由。
ENETRESET 71 230 129 129 102 重設時網絡已卸下了連接。
ECONNRESET 73 232 131 131 104 夥伴已重設了連接。
ENOBUFS 74 233 132 132 105 系統中沒有足夠的緩沖區空間資源可用來完成調用。
ENOTCONN 76 235 134 134 107 未連接套接字。
ETIMEDOUT 78 238 145 145 110 連接超時。
ECONNREFUSED 79 239 146 146 111 連接已被拒絕。若您正在嘗試與數據庫相連,則檢查是否已成功啟動了服務器上的數據庫管理程序和 TCP/IP 協議支持。 若使用 SOCKS 協議支持,則還要確保在 SOCKS 服務器上已成功啟動了 TCP/IP 協議支持。
EHOSTDOWN 80 241 147 147 147 主機已停機。
EHOSTUNREACH 81 242 148 148 113 沒有到達主機的可用路由。

--------------------------------------------------------------------------------

對於 OS/2 環境中的 TCP/IP 用戶,下面的列表顯示了最常見的 errno。它不是完整的錯誤列表。可以在文件 nerrno.h 中找到 Errno。此文件是 TCP/IP 產品包含文件的一部分。若尚未安裝這些文件,則在您的系統上可能不會出現。errno 號碼本身是用括號括起來的。

SOCEINTR (10003):系統調用被中斷。
SOCEMFILE (10024):打開的文件太多。
SOCEPIPE (10032):管道被斷開。
EADDRINUSE (10048):已經在使用指定的地址。
ENETDOWN (10050):網絡已停止。
ENETUNREACH (10051):沒有到達網絡的可用路由。
ENETRESET (10052):重設時網絡已卸下了連接。
SOCECONNABORTED (10053):軟件導致連接異常中止。
ECONNRESET (10054):夥伴已重設了連接。
ENOBUFS (10055):無緩沖區空間可用。
ENOTCONN (10057):未連接套接字。
ETIMEDOUT (10060): 在進行連接之前,建立連接超時。
ECONNREFUSED (10061):連接已被拒絕。若您正在嘗試與數據庫相連,則檢查是否已成功啟動了服務器上的數據庫管理程序和 TCP/IP 協議支持。
若使用 SOCKS 協議支持,則還要確保在 SOCKS 服務器上已成功啟動了 TCP/IP 協議支持。
EHOSTDOWN (10064):主機已停機。
EHOSTUNREACH (10065):沒有到達主機的可用路由。
SOCEOS2ERR (10100):OS/2 錯誤。
有關 OS/2 TCP/IP 通信錯誤的詳情,參考 OS/2 TCP/IP 文檔。

--------------------------------------------------------------------------------

對於 Windows 95、Windows 98 或 Windows NT 下的 TCP/IP 或 IPX/SPX 用戶,下面的列表顯示了最常見的錯誤碼。它不是完整的錯誤列表。可以在文件 winsock.h 中找到由 WSAGetLastError() 返回的錯誤。

WSAEINVAL (10022):若在函數 WSASTARTUP 上接收到此錯誤,則此 DLL 不支持應用程序所支持的 Windows Sockets 版本。
WSAEMFILE (10024):沒有可用的文件描述符。
WSAEWOULDBLOCK (10035):套接字標記為未分塊,而操作將分塊。
WSAEINPROGRESS (10036):正在進行分塊 Windows Sockets 操作。
WSAENOPROTOOPT (10042):該選項是未知的或不受支持的。
WSAEADDRINUSE (10048):已經在使用指定的地址。
WSAENETDOWN (10050):網絡子系統已失敗。
WSAENETUNREACH (10051):此時不能從此主機到達網絡。
WSAENETRESET (10052):由於重設了遠程主機,所以連接已斷開。
WSAECONNABORTED (10053):由於超時或其他故障,導致虛擬電路異常中止。重設時網絡已卸下了連接。
WSAECONNRESET (10054):夥伴已重設了連接。
WSAENOBUFS (10055):無緩沖區空間可用,連接太多。
WSAENOTCONN (10057):未連接套接字。
WSAETIMEDOUT (10060):在進行連接之前,建立連接超時。
WSAECONNREFUSED (10061):連接已被拒絕。若您正在嘗試與數據庫相連,則檢查在服務器上是否已成功啟動了數據庫管理程序和 TCP/IP 協議支持。
WSAEHOSTUNREACH (10065):此時不能從此主機到達網絡。
WSASYSNOTREADY (10091):基礎網絡子系統未準備好進行網絡通信。
WSAVERNOTSUPPORTED (10092):此特定的 Windows Sockets 實現未提供請求的 Windows Sockets API 支持的版本。
WSAHOST_NOT_FOUND (11001):找不到主機。
WSATRY_AGAIN (11002):找不到主機。請求從名稱服務器中檢索主機名的 IP 地址失敗。
WSANO_DATA (11004):名稱無效,沒有請求的類型的數據記錄。名稱服務器或 hosts 文件不識別主機名,或者在 services 文件中未指定服務名。
有關 Windows 下的 TCP/IP 通信錯誤的詳情,參考 Windows Sockets 文檔。

轉自:http://www.cnblogs.com/qq78292959/archive/2013/04/22/3036103.html

TCP/IP 最常見的錯誤原因碼 (errno)列表