|
|
1.1 ! root 1: /****************************************************************************\ ! 2: * errmsg.c -- sample program demonstrating NWLink. ! 3: * ! 4: * Original code from Micro Computer Systems, Inc. ! 5: * Copyright(c) 1992 All Rights Reserved. ! 6: * Microsoft Developer Support ! 7: * Copyright (c) 1992, 1993 Microsoft Corporation ! 8: * ! 9: * Demonstrates basic sockets programming with the Windows Sockets API ! 10: * using the NWLink transport. ! 11: * ! 12: ****************************************************************************/ ! 13: #include <winsock.h> ! 14: #include "externs.h" ! 15: ! 16: /* ! 17: * Messages we return if there was no error or we didn't have it ! 18: * in our list. ! 19: */ ! 20: ! 21: char msg_no_error[19] = "No error occurred!"; ! 22: char msg_unknown_error[14] = "Unknown error"; ! 23: ! 24: /* ! 25: * Error structures - Windows error number (from winsock.h) and ! 26: * the corresponding description string. ! 27: */ ! 28: ! 29: ERROR_STRUCT errlist[] = { ! 30: {WSAEINTR, "WSAEINTR - Interrupted"}, ! 31: {WSAEBADF, "WSAEBADF - Bad file number"}, ! 32: {WSAEFAULT, "WSAEFAULT - Bad address"}, ! 33: {WSAEINVAL, "WSAEINVAL - Invalid argument"}, ! 34: {WSAEMFILE, "WSAEMFILE - Too many open files"}, ! 35: ! 36: /* ! 37: * Windows Sockets definitions of regular Berkeley error constants ! 38: */ ! 39: ! 40: {WSAEWOULDBLOCK, "WSAEWOULDBLOCK - Socket marked as non-blocking"}, ! 41: {WSAEINPROGRESS, "WSAEINPROGRESS - Blocking call in progress"}, ! 42: {WSAEALREADY, "WSAEALREADY - Command already completed"}, ! 43: {WSAENOTSOCK, "WSAENOTSOCK - Descriptor is not a socket"}, ! 44: {WSAEDESTADDRREQ, "WSAEDESTADDRREQ - Destination address required"}, ! 45: {WSAEMSGSIZE, "WSAEMSGSIZE - Data size too large"}, ! 46: {WSAEPROTOTYPE, "WSAEPROTOTYPE - Protocol is of wrong type for this socket"}, ! 47: {WSAENOPROTOOPT, "WSAENOPROTOOPT - Protocol option not supported for this socket type"}, ! 48: {WSAEPROTONOSUPPORT, "WSAEPROTONOSUPPORT - Protocol is not supported"}, ! 49: {WSAESOCKTNOSUPPORT, "WSAESOCKTNOSUPPORT - Socket type not supported by this address family"}, ! 50: {WSAEOPNOTSUPP, "WSAEOPNOTSUPP - Option not supported"}, ! 51: {WSAEPFNOSUPPORT, "WSAEPFNOSUPPORT - "}, ! 52: {WSAEAFNOSUPPORT, "WSAEAFNOSUPPORT - Address family not supported by this protocol"}, ! 53: {WSAEADDRINUSE, "WSAEADDRINUSE - Address is in use"}, ! 54: {WSAEADDRNOTAVAIL, "WSAEADDRNOTAVAIL - Address not available from local machine"}, ! 55: {WSAENETDOWN, "WSAENETDOWN - Network subsystem is down"}, ! 56: {WSAENETUNREACH, "WSAENETUNREACH - Network cannot be reached"}, ! 57: {WSAENETRESET, "WSAENETRESET - Connection has been dropped"}, ! 58: {WSAECONNABORTED, "WSAECONNABORTED - "}, ! 59: {WSAECONNRESET, "WSAECONNRESET - "}, ! 60: {WSAENOBUFS, "WSAENOBUFS - No buffer space available"}, ! 61: {WSAEISCONN, "WSAEISCONN - Socket is already connected"}, ! 62: {WSAENOTCONN, "WSAENOTCONN - Socket is not connected"}, ! 63: {WSAESHUTDOWN, "WSAESHUTDOWN - Socket has been shut down"}, ! 64: {WSAETOOMANYREFS, "WSAETOOMANYREFS - "}, ! 65: {WSAETIMEDOUT, "WSAETIMEDOUT - Command timed out"}, ! 66: {WSAECONNREFUSED, "WSAECONNREFUSED - Connection refused"}, ! 67: {WSAELOOP, "WSAELOOP - "}, ! 68: {WSAENAMETOOLONG, "WSAENAMETOOLONG - "}, ! 69: {WSAEHOSTDOWN, "WSAEHOSTDOWN - "}, ! 70: {WSAEHOSTUNREACH, "WSAEHOSTUNREACH - "}, ! 71: {WSAENOTEMPTY, "WSAENOTEMPTY - "}, ! 72: {WSAEPROCLIM, "WSAEPROCLIM - "}, ! 73: {WSAEUSERS, "WSAEUSERS - "}, ! 74: {WSAEDQUOT, "WSAEDQUOT - "}, ! 75: {WSAESTALE, "WSAESTALE - "}, ! 76: {WSAEREMOTE, "WSAEREMOTE - "}, ! 77: ! 78: /* ! 79: * Extended Windows Sockets error constant definitions ! 80: */ ! 81: ! 82: {WSASYSNOTREADY, "WSASYSNOTREADY - Network subsystem not ready"}, ! 83: {WSAVERNOTSUPPORTED, "WSAVERNOTSUPPORTED - Version not supported"}, ! 84: {WSANOTINITIALISED, "WSANOTINITIALISED - WSAStartup() has not been successfully called"}, ! 85: ! 86: /* ! 87: * Other error constants. ! 88: */ ! 89: ! 90: {WSAHOST_NOT_FOUND, "WSAHOST_NOT_FOUND - Host not found"}, ! 91: {WSATRY_AGAIN, "WSATRY_AGAIN - Host not found or SERVERFAIL"}, ! 92: {WSANO_RECOVERY, "WSANO_RECOVERY - Non-recoverable error"}, ! 93: {WSANO_DATA, "WSANO_DATA - (or WSANO_ADDRESS) - No data record of requested type"}, ! 94: {-1, NULL} ! 95: };
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.