|
|
1.1 root 1: #define BUFSIZ 512
2: #define RMSSIZ 256
3: #define _NFILE 20
4: # ifndef FILE
5: extern struct _iobuf {
6: char *_ptr;
7: char *_rms;
8: char *_base;
9: long int _sectr;
10: short int _flag;
11: short int _cnt;
12: char _links;
13: char _file;
14: short int _maxoffset;
15: long int _maxsectr;
16: } _iob[_NFILE];
17: # endif
18:
19: #define _IOREAD 01
20: #define _IOWRT 02
21: #define _IOBIN 04
22: #define _IOPRT 010
23: #define _IOMODE 014
24: #define _IOTXT 00
25: #define _IOMYBUF 002000
26: #define _IOEOF 020
27: #define _IOERR 040
28: #define _IOSTRG 0100
29: #define _IONBF 0200
30: #define _IOTTY 0400
31: #define _IODIRT 01000
32: #define NULL 0
33: #define FILE struct _iobuf
34: #define EOF (-1)
35:
36: #define stdin (&_iob[0])
37: #define stdout (&_iob[1])
38: #define stderr (&_iob[2])
39: #define getc(p) (--(p)->_cnt>=0? *(p)->_ptr++&0377:_filbuf(p))
40: #define getchar() getc(stdin)
41: #define putchar(x) putc(x,stdout)
42: #define feof(p) (((p)->_flag&_IOEOF)!=0)
43: #define ferror(p) (((p)->_flag&_IOERR)!=0)
44: #define fileno(p) p->_file
45:
46: FILE *fopen();
47: FILE *freopen();
48: extern struct io$head {
49: int initzd;
50: int lobr;
51: FILE *ufiles[_NFILE];
52: int hibr;
53: int mxbr;
54: int lopg;
55: int hipg;
56: int mxpg;
57: char stinrms[RMSSIZ];
58: char storms[RMSSIZ];
59: char sterrms[RMSSIZ];
60: char stinbuf[BUFSIZ];
61: char stobuf[BUFSIZ];
62: char sterbuf[BUFSIZ];
63: } io_com ;
64:
65: #define check(c,s); if (c) {errno = s; return(-1);}
66: #define EBADF 9
67: #define EINVAL 22
68: #define EMFILE 24
69:
70: extern int errno;
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.