| Previous | Next |
| ECONNREFUSED | ETIME |
ENODATA
ENODATA is Solaris errno value 61, No data available
. The exact meaning depends on the interface that returned it. A concrete Solaris STREAMS example is the I_GETBAND ioctl: it returns this result when no message is present on the stream-head read queue.
No data is not automatically end-of-file
Preserve the failed call and its mode before interpreting the errno. STREAMS interfaces expose message queues, priority bands, and control operations; an empty queue for a non-waiting query is different from a peer closing a byte stream. Other interfaces can also use this result for their own documented no-data condition.
For STREAMS diagnostics, inspect which ioctl or read-style operation was requested and whether a message of the expected priority band should already have reached the stream head. Compare with I_PEEK, which reports the absence of a message through its return value rather than this result. The API contract, not the errno text alone, tells you whether to wait, poll, change the query, or treat the condition as final.
References
- Oracle Solaris intro(2): ENODATA
- Oracle Solaris streamio(7I): I_GETBAND and ENODATA
- Oracle Solaris STREAMS Programming Guide
Looking for a different code? Search another status or error code.
