#sccs "@(#)inchead:stand.h 1.2" /* Convergent Technologies - System V - May 1983 */ #ifndef stand_h #define stand_h /* * Header file for standalone package */ #if vax || mc68k #define FsTYPE 2 #else #define FsTYPE 1 #endif #include "errno.h" #include "sys/param.h" #include "sys/types.h" #include "sys/inode.h" /* * I/O block flags */ #ifdef mc68k #define F_RD 01 #define F_WRT 02 #else #define F_READ 01 #define F_WRITE 02 #endif #define F_ALLOC 04 #define F_FILE 010 /* * Request codes -- must be * the same as an F_XXX above */ #define READ 1 #define WRITE 2 /* * Buffer sizes */ #if FsTYPE == 2 #define BLKSIZ 1024 #else #define BLKSIZ 512 #endif #define NAMSIZ 60 /* * devsw table -- * initialized in conf.c */ struct devsw { int (*dv_strategy)(); int (*dv_open)(); int (*dv_close)(); }; extern struct devsw _devsw[]; /* * dtab table -- entries * are created by MKNOD */ #define NDEV 96 #define D_FOR 0 /* Formated device */ #define D_RAW 1 /* Raw device */ struct dtab { char *dt_name; struct devsw *dt_devp; int dt_unit; daddr_t dt_boff; char dt_type; }; extern struct dtab _dtab[]; /* * mtab table -- entries * are created by mount */ #define NMOUNT 4 struct mtab { char *mt_name; struct dtab *mt_dp; }; extern struct mtab _mtab[]; /* * I/O block: includes an inode, * cells for the use of seek, etc, * and a buffer. */ #define NFILES 6 struct iob { char i_flgs; struct inode i_ino; time_t i_atime; time_t i_mtime; time_t i_ctime; struct dtab *i_dp; off_t i_offset; daddr_t i_bn; /* disk block number (physical) */ char *i_ma; int i_cc; /* character count */ char i_buf[BLKSIZ]; }; extern struct iob _iobuf[]; /* * Set to the error type of the routine that * last returned an error -- may be read by perror. */ extern int errno; #define RAW 040 #define LCASE 04 #define XTABS 02 #define ECHO 010 #define CRMOD 020 #define B300 7 struct sgttyb { char sg_ispeed; /* input speed */ char sg_ospeed; /* output speed */ char sg_erase; /* erase character */ char sg_kill; /* kill character */ int sg_flags; /* mode flags */ }; #endif