|
|
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: fread(ptr,(int)len,(int)(*number),cf); ! 13: return(0); ! 14: } ! 15: else ! 16: { ! 17: reclen += *number * len; ! 18: 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,errno,"eof/uio") ! 38: else return(0); ! 39: } ! 40: 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.