# 2.11BSD#431 - /usr/src/usr.lib/libI77/rdfe.c

##### Functions

    e_rdfe            X
    s_rdfe            X
    y_getc            X
    y_rnew            X

##### Variables

    rdfe              X

       1: /*
       2:  * Copyright (c) 1980 Regents of the University of California.
       3:  * All rights reserved.  The Berkeley software License Agreement
       4:  * specifies the terms and conditions for redistribution.
       5:  *
       6:  *	@(#)rdfe.c	5.1	6/7/85
       7:  */
       8:
       9: /*
      10:  * read direct formatted external i/o
      11:  */
      12:
      13: #include "fio.h"
      14:
      15: extern int rd_ed(),rd_ned();
      16: int y_getc(),y_rnew(),y_tab();
      17:
      18: LOCAL char rdfe[] = "read dfe";
      19:
      20: s_rdfe(a) cilist *a;
      21: {
      22:     int n;
      23:     reading = YES;
      24:     if(n=c_dfe(a,READ,rdfe)) return(n);
      25:     if(curunit->uwrt && ! nowreading(curunit)) err(errflag, errno, rdfe)
      26:     getn = y_getc;
      27:     doed = rd_ed;
      28:     doned = rd_ned;
      29:     dotab = y_tab;
      30:     dorevert = doend = donewrec = y_rnew;
      31:     if(pars_f()) err(errflag,F_ERFMT,rdfe)
      32:     fmt_bg();
      33:     return(OK);
      34: }
      35:
      36: e_rdfe()
      37: {
      38:     en_fio();
      39:     return(OK);
      40: }
      41:
      42: LOCAL
      43: y_getc()
      44: {
      45:     int ch;
      46:     if(curunit->uend) return(EOF);
      47:     if(curunit->url==1 || recpos++ < curunit->url)
      48:     {
      49:         if((ch=getc(cf))!=EOF)
      50:         {
      51:                 return(ch);
      52:         }
      53:         if(feof(cf))
      54:         {
      55:             curunit->uend = YES;
      56:             return(EOF);
      57:         }
      58:         err(errflag,errno,rdfe);
      59:     }
      60:     else return(' ');
      61: }
      62:
      63: /*
      64: /*y_rev()
      65: /*{	/*what about work done?*/
      66: /*	if(curunit->url==1) return(0);
      67: /*	while(recpos<curunit->url) (*putn)(' ');
      68: /*	recpos=0;
      69: /*	return(0);
      70: /*}
      71: /*
      72: /*y_err()
      73: /*{
      74: /*	err(errflag, F_EREREC, rdfe+5);
      75: /*}
      76: */
      77:
      78: LOCAL
      79: y_rnew()
      80: {   if(curunit->url != 1)
      81:     {   fseek(cf,(long)curunit->url*(++recnum),0);
      82:         recpos = reclen = cursor = 0;
      83:     }
      84:     return(OK);
      85: }

#### Defined functions

e_rdfe defined in line 36; never used
s_rdfe defined in line 20; never used
y_getc defined in line 42; used 2 times

- in line 16, 26

y_rnew defined in line 78; used 2 times

- in line 16, 30

#### Defined variables

rdfe defined in line 18; used 4 times

- in line 24-25(2), 31, 58

Last modified: 1987-02-18 Generated: 2016-12-26 | Generated by src2html V0.67 page hit count: 589 |