12500Sdlw /* 2*23086Skre * Copyright (c) 1980 Regents of the University of California. 3*23086Skre * All rights reserved. The Berkeley software License Agreement 4*23086Skre * specifies the terms and conditions for redistribution. 52500Sdlw * 6*23086Skre * @(#)rewind.c 5.1 06/07/85 7*23086Skre */ 8*23086Skre 9*23086Skre /* 102500Sdlw * rewind.c - f77 file rewind 112500Sdlw */ 122500Sdlw 132500Sdlw #include "fio.h" 142500Sdlw 1514827Sdlw static char rwnd[] = "rewind"; 1614827Sdlw 172500Sdlw f_rew(a) alist *a; 182500Sdlw { int n; 192500Sdlw unit *b; 202500Sdlw 212500Sdlw lfname = NULL; 222500Sdlw elist = NO; 232500Sdlw external = YES; /* for err */ 242500Sdlw lunit = a->aunit; 252500Sdlw errflag = a->aerr; 2614827Sdlw if(not_legal(lunit)) err(errflag,F_ERUNIT,rwnd) 272500Sdlw b = &units[lunit]; 282500Sdlw if(!b->ufd && (n=fk_open(READ,SEQ,FMT,(ftnint)lunit)) ) 2914827Sdlw err(errflag,n,rwnd) 302500Sdlw lfname = b->ufnm; 3114827Sdlw if(!b->useek) err(errflag,F_ERNOBKSP,rwnd) 322500Sdlw b->uend = NO; 332500Sdlw if(b->uwrt) 3414827Sdlw if(n=t_runc(b,errflag,rwnd)) return(n); 352500Sdlw rewind(b->ufd); 362500Sdlw return(OK); 372500Sdlw } 38