9readn.c 221 B

123456789101112131415161718192021
  1. #include "sys9.h"
  2. long
  3. _READN(int f, void *av, long n)
  4. {
  5. char *a;
  6. long m, t;
  7. a = av;
  8. t = 0;
  9. while(t < n){
  10. m = _READ(f, a+t, n-t);
  11. if(m <= 0){
  12. if(t == 0)
  13. return m;
  14. break;
  15. }
  16. t += m;
  17. }
  18. return t;
  19. }