| ENOTCONN |
| | The operation is only defined on a connected socket, but the socket wasnt connected. |
| EINVAL | Invalid argument passed. |
| EMSGSIZE |
| | Datagram is bigger than the DDP MTU. |
| EACCES | The user tried to execute an operation without the necessary permissions. These include sending to a broadcast address without having the broadcast flag set, and trying to bind to a reserved port without effective user id 0 or CAP_NET_BIND_SERVICE. |
| EADDRINUSE |
| | Tried to bind to an address already in use. |
| ENOMEM" and "ENOBUFS |
| | Not enough memory available. |
| ENOPROTOOPT" and "EOPNOTSUPP |
| | Invalid socket option passed. |
| EPERM | User doesnt have permission to set high priority, make a configuration change, or send signals to the requested process or group, |
| EADDRNOTAVAIL |
| | A non-existent interface was requested or the requested source address was not local. |
| EAGAIN | Operation on a nonblocking socket would block. |
| ESOCKTNOSUPPORT |
| | The socket was unconfigured, or an unknown socket type was requested. |
| EISCONN |
| | connect(2) was called on an already connected socket. |
| EALREADY |
| | A connection operation on a non-blocking socket is already in progress. |
| ECONNABORTED |
| | A connection was closed during an accept(2). |
| EPIPE | The connection was unexpectedly closed or shut down by the other end. |
| ENOENT | SIOCGSTAMP was called on a socket where no packet arrived. |
| EHOSTUNREACH |
| | No routing table entry matches the destination address. |
| ENODEV |
| | Network device not available or not capable of sending IP. |
| ENOPKG |
| | A kernel subsystem was not configured. |
|