¿Qué significa el código errno 61 (ENODATA) en Linux?

 
También puede significar:
ConstanteTipoSO
ERROR_PRINTQ_FULLError de WindowsWindows
ECONNREFUSEDerrnomacOS
ENODATAerrnoSolaris
INTERRUPT_EXCEPTION_NOT_HANDLEDCódigo BSODWindows
Anterior Siguiente
ENOSTR ECONNREFUSED

ENODATA

Qué significa ENODATA

ENODATA se conserva en Linux para compatibilidad con interfaces que distinguen explícitamente «no hay datos» dentro del modelo STREAMS. No significa EOF permanente y tampoco que falte un archivo.

En software Linux moderno, primero identifica qué biblioteca, driver o emulación devolvió el valor. Los sockets y pipes no bloqueantes normalmente usan EAGAIN/EWOULDBLOCK, por lo que ver ENODATA ya es una pista sobre la capa.

Qué comprobar

  • Registra si la operación era no bloqueante y qué objeto/stream estaba implicado.
  • Comprueba si la misma capa ofrece readiness mediante poll()/select()/epoll.
  • Distingue ENOENT y EPIPE, que describen condiciones completamente diferentes.
  • Sigue las reglas de reintento de la interfaz que produjo el código en vez de mapearlo automáticamente a socket I/O.

Referencias técnicas


¿Buscas un código diferente? Buscar otro código de estado o error.