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