Provided by: libowfat-dev_0.30-2ubuntu1_amd64 bug


       io_waitread - read from a descriptor


       #include <io.h>

       int io_waitread(int64 fd,char* buf,int64 len);


       io_waitread  tries  to read len bytes of data from descriptor fd into buf[0], buf[1], ...,
       buf[len-1]. (The effects are undefined if len is 0 or smaller.) There are several possible

       ·  o_waitread returns an integer between 1 and len: This number of bytes was available for
          immediate reading; the bytes were read into the beginning of buf. Note that this number
          can  be,  and  often  is, smaller than len; you must not assume that io_waitread always
          succeeds in reading exactly len bytes.

       ·  io_waitread returns 0: No bytes were read, because the descriptor is at  end  of  file.
          For example, this descriptor has reached the end of a disk file, or is reading an empty
          pipe that has been closed by all writers.

       ·  io_waitread returns -3, setting errno to something other than  EAGAIN:  No  bytes  were
          read,  because  the read attempt encountered a persistent error, such as a serious disk
          failure (EIO), an unreachable network (ENETUNREACH), or an  invalid  descriptor  number


       io_nonblock(3), io_waitread(3), io_waitreadtimeout(3)