|
|
1.1 root 1: #include "fio.h"
2: int reclen;
3: do_us(number,ptr,len) ftnint *number; ftnlen len; char *ptr;
4: {
5: if(reading)
6: {
7: recpos += *number * len;
8: if(recpos>reclen)
9: {
10: err(elist->cierr,110,"eof/uio");
11: }
12: (void) fread(ptr,(int)len,(int)(*number),cf);
13: return(0);
14: }
15: else
16: {
17: reclen += *number * len;
18: (void) fwrite(ptr,(int)len,(int)(*number),cf);
19: return(0);
20: }
21: }
22: do_uio(number,ptr,len) ftnint *number; ftnlen len; char *ptr;
23: {
24: if(sequential)
25: return(do_us(number,ptr,len));
26: else return(do_ud(number,ptr,len));
27: }
28: do_ud(number,ptr,len) ftnint *number; ftnlen len; char *ptr;
29: {
30: recpos += *number * len;
31: if(recpos > curunit->url && curunit->url!=1)
32: err(elist->cierr,110,"eof/uio");
33: if(reading)
34: {
35: if(fread(ptr,(int)len,(int)(*number),cf)
36: != *number)
37: err(elist->cierr,27,"eof/uio")
38: else return(0);
39: }
40: (void) fwrite(ptr,(int)len,(int)(*number),cf);
41: return(0);
42: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.