| Anterior | Siguiente |
| ECONNREFUSED | ETIME |
ENODATA
Qué significa ENODATA en Solaris
ENODATA no implica necesariamente EOF. En Solaris aparece en interfaces que distinguen «sin datos disponibles» de otros estados, y varios controles STREAMS pueden devolverlo cuando no hay un mensaje adecuado en la cola.
El tratamiento correcto depende de si la operación era no bloqueante, qué control STREAMS se usó y si la capa ofrece un mecanismo de readiness. Mapearlo siempre a «archivo vacío» pierde esa semántica.
Qué comprobar
- Registra función/ioctl, descriptor y modo bloqueante/no bloqueante.
- Comprueba estado de la queue y qué evento indica que aparecerán datos.
- Distingue
EAGAIN, EOF yEPIPEsegún el tipo de objeto. - Sigue las reglas de reintento de la interfaz concreta en vez de aplicar polling indiscriminado.
Referencias técnicas
- Oracle Solaris intro(2): ENODATA
- Oracle Solaris streamio(7I): I_GETBAND and ENODATA
- Oracle Solaris STREAMS Programming Guide
¿Buscas un código diferente? Buscar otro código de estado o error.