11679Smckusick /* Copyright (c) 1979 Regents of the University of California */ 21679Smckusick 3*2309Smckusic static char sccsid[] = "@(#)READ4.c 1.3 01/28/81"; 41679Smckusick 51679Smckusick #include "h00vars.h" 61679Smckusick #include "h01errs.h" 71679Smckusick 81679Smckusick READ4(curfile) 91679Smckusick 101679Smckusick register struct iorec *curfile; 111679Smckusick { 122223Smckusic int data, retval; 131679Smckusick 141679Smckusick if (curfile->funit & FWRITE) { 151679Smckusick ERROR(EREADIT, curfile->pfname); 161679Smckusick return; 171679Smckusick } 181679Smckusick UNSYNC(curfile); 192223Smckusic retval = fscanf(curfile->fbuf, "%ld", &data); 202223Smckusic if (retval == EOF) { 212223Smckusic ERROR(EPASTEOF, curfile->pfname); 222223Smckusic return; 232223Smckusic } 242223Smckusic if (retval == 0) { 251679Smckusick ERROR(EBADINUM, curfile->pfname); 261679Smckusick return; 271679Smckusick } 28*2309Smckusic curfile->funit &= ~EOLN; 291679Smckusick curfile->funit |= SYNC; 301679Smckusick return data; 311679Smckusick } 32