shithub: riscv

ref: 8ea31ae7b21e9f0c8991b2b861bc51ea3d67c3cd
dir: /sys/src/ape/lib/ap/plan9/9readn.c/

View raw version
#include "sys9.h"

long
_READN(int f, void *av, long n)
{
	char *a;
	long m, t;

	a = av;
	t = 0;
	while(t < n){
		m = _READ(f, a+t, n-t);
		if(m <= 0){
			if(t == 0)
				return m;
			break;
		}
		t += m;
	}
	return t;
}