BSD 1 development
[unix-history] / portlib / rew.c
CommitLineData
520d5775
EA
1# include "iodec.h"
2
3/**
4 ** rewind a file
5 **/
6
7rew(fn)
8int fn;
9{
10 register struct fileps *fp;
11
12 if (fn < 0 || fn >= MAXFILES)
13 __error("rew: bad file number %d", fn);
14 fp = &__filehdr[fn];
15 if (fp->wrflag == 0)
16 return;
17 switch (fp->wrflag)
18 {
19
20 case 3:
21 fp->wrflag = 2;
22 return;
23
24 case 4: /* modify */
25 case 2: /* write */
26 cflush(fn);
27
28 case 1: /* read */
29 fp->nchars = fp->eoferr = 0;
30 seek(fn, 0, 0);
31 return;
32
33 }
34}