Annotation of researchv10dc/libI77/old/uio.c, revision 1.1.1.1

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: }

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.