| Previous | Next |
| ECONNRESET | EISCONN |
ENOBUFS
ENOBUFS reports a resource shortage in the socket or network path. It can mean that the system could not allocate memory for socket structures, that a queue was full, or that an interface could not accept more output. The exact interpretation depends on the failing call and operating system.
Linux documentation for send() associates it with a full network-interface output queue, while also noting that Linux often drops packets silently when a device queue overflows instead of returning this errno. accept() can report ENOBUFS when free memory or socket-buffer limits prevent creation of the new connection state. Therefore an isolated error may be transient, but repeated errors indicate a capacity or backpressure problem worth measuring.
What to inspect
- Socket buffer limits, receive and send queue growth, interface drop counters, and memory pressure.
- Connection rate, listener backlog, and the application’s ability to drain accepted sockets.
- Whether a retry would duplicate a datagram or request; apply backoff and queue limits instead of unbounded resends.
Do not assume that increasing buffers alone fixes the cause: it can only postpone overload if producers continue outpacing consumers.
Linux send(2) · Linux accept(2) · BSD errno descriptions
Looking for a different code? Search another status or error code.