1 #include <u.h> 2 #include <libc.h> 3 #include <bio.h> 4 #include "authcmdlib.h" 5 6 /* 7 * read exactly len bytes 8 */ 9 int readn(int fd,char * buf,int len)10readn(int fd, char *buf, int len) 11 { 12 int m, n; 13 14 for(n = 0; n < len; n += m){ 15 m = read(fd, buf+n, len-n); 16 if(m <= 0) 17 return -1; 18 } 19 return n; 20 } 21