1*22143Smckusick #ifndef lint
2*22143Smckusick static char sccsid[] = "@(#)rdwr.c 5.1 (Berkeley) 06/05/85";
3*22143Smckusick #endif not lint
4*22143Smckusick
52029Swnj #include <stdio.h>
62029Swnj
fread(ptr,size,count,iop)72029Swnj fread(ptr, size, count, iop)
82029Swnj unsigned size, count;
92029Swnj register char *ptr;
102029Swnj register FILE *iop;
112029Swnj {
122029Swnj register c;
132029Swnj unsigned ndone, s;
142029Swnj
152029Swnj ndone = 0;
162029Swnj if (size)
172029Swnj for (; ndone<count; ndone++) {
182029Swnj s = size;
192029Swnj do {
202029Swnj if ((c = getc(iop)) >= 0)
212029Swnj *ptr++ = c;
222029Swnj else
232029Swnj return(ndone);
242029Swnj } while (--s);
252029Swnj }
262029Swnj return(ndone);
272029Swnj }
282029Swnj
fwrite(ptr,size,count,iop)292029Swnj fwrite(ptr, size, count, iop)
302029Swnj unsigned size, count;
312029Swnj register char *ptr;
322029Swnj register FILE *iop;
332029Swnj {
342029Swnj register unsigned s;
352029Swnj unsigned ndone;
362029Swnj
372029Swnj ndone = 0;
382029Swnj if (size)
392029Swnj for (; ndone<count; ndone++) {
402029Swnj s = size;
412029Swnj do {
422029Swnj putc(*ptr++, iop);
432029Swnj } while (--s);
442029Swnj if (ferror(iop))
452029Swnj break;
462029Swnj }
472029Swnj return(ndone);
482029Swnj }
49