ast@cs.vu.nl (Andy Tanenbaum) (05/30/88)
I have sort of dropped minix/include as a directory, and have all the include files in /usr/include now. This is more like UNIX. The directory /usr/include has three subdirectories, fs, minix, and sys. The files in fs and minix are links to minix/h/something, except for blocksize.h. Here is /usr/include: -rw-rw-rw- 1 ast 133 May 16 20:40 /usr/include/ar.h -rw-r--r-- 1 ast 673 May 16 20:40 /usr/include/ctype.h -rw-r--r-- 1 ast 1133 May 16 20:40 /usr/include/errno.h -rw-r--r-- 1 ast 66 May 16 20:40 /usr/include/grp.h -rw-r--r-- 1 ast 128 May 16 20:40 /usr/include/pwd.h -rw-r--r-- 1 ast 634 May 16 20:40 /usr/include/regexp.h -rw-r--r-- 1 ast 98 May 16 20:40 /usr/include/setjmp.h -rw-r--r-- 1 ast 1015 May 16 20:40 /usr/include/sgtty.h -rw-r--r-- 1 ast 1115 May 16 20:40 /usr/include/signal.h -rw-r--r-- 1 ast 1307 May 16 20:40 /usr/include/stdio.h -rw-r--r-- 1 ast 139 May 16 20:40 /usr/include/time.h /usr/include/fs: total 10 -rw-r--r-- 1 ast 2988 May 16 20:40 buf.h -rw-r--r-- 1 ast 2819 May 16 20:40 const.h -rw-r--r-- 1 ast 2080 May 16 20:40 super.h -rw-r--r-- 1 ast 710 May 16 20:40 type.h /usr/include/minix: total 20 -rw-r--r-- 1 ast 59 May 16 20:40 blocksize.h -rw-r--r-- 1 ast 1683 May 16 20:40 callnr.h -rw-r--r-- 1 ast 7328 May 16 20:40 com.h -rw-r--r-- 1 ast 4309 May 16 20:40 const.h -rw-r--r-- 1 ast 4001 May 16 20:40 type.h /usr/include/sys: total 5 -r--r--r-- 1 ast 96 May 16 20:40 dir.h -r--r--r-- 1 ast 861 May 16 20:40 stat.h -r--r--r-- 1 ast 88 May 16 20:40 timeb.h -r--r--r-- 1 ast 94 May 16 20:40 times.h -r--r--r-- 1 ast 218 May 16 20:40 types.h This posting contains some complete files (*.h) and some diff listings to be used with fix (*.diff). The files in /usr/include/minix and /usr/include/fs really are links to minix/h and minix/fs. I will post those later, when I get around to those directories. For the time being, just link them to the current files there. There aren't many changes to the kernel h files in any event. All the postings in the first round are provisional. Please look at them carefully and report bugs. If lots of bugs are reported, I may make a second round of postings later with the definitive version. If you reported some bug earlier, please check to see if it is corrected. If not, yell. This applies to bug fixes. If you posted some piece of software that is small, beautiful, V7-like, and was fully debugged, and I have not put it in V1.3, let me know. It might have been an oversight. I miss lots of stuff (chronic information overload again). : This is a shar archive. Extract with sh, not csh. : This archive ends with exit, so do not worry about trailing junk. : --------------------------- cut here -------------------------- PATH=/bin:/usr/bin:/usr/ucb echo Extracting 'listing' sed 's/^X//' > 'listing' << '+ END-OF-FILE ''listing' Xtotal 15 X-rw-rw-rw- 1 ast 2954 May 16 22:00 alldiff X-rw-rw-rw- 1 ast 133 May 16 22:09 ar.h X-r--r--r-- 1 ast 96 May 16 22:09 dir.h X-rw-rw-rw- 1 ast 109 May 16 22:09 grp.h.diff X-rw-rw-rw- 1 ast 0 May 16 22:09 listing X-rw-rw-rw- 1 ast 62 May 16 22:09 setjmp.h.diff X-rw-rw-rw- 1 ast 57 May 16 22:09 sgtty.h.diff X-rw-rw-rw- 1 ast 94 May 16 22:09 signal.h.diff X-r--r--r-- 1 ast 861 May 16 22:09 stat.h X-rw-rw-rw- 1 ast 269 May 16 22:09 stdio.h.diff X-rw-r--r-- 1 ast 139 May 16 22:09 time.h X-r--r--r-- 1 ast 88 May 16 22:09 timeb.h X-r--r--r-- 1 ast 94 May 16 22:09 times.h X-r--r--r-- 1 ast 218 May 16 22:09 types.h + END-OF-FILE listing chmod 'u=rw,g=rw,o=rw' 'listing' set `wc -c 'listing'` count=$1 case $count in 769) :;; *) echo 'Bad character count in ''listing' >&2 echo 'Count should be 769' >&2 esac echo Extracting 'ar.h' sed 's/^X//' > 'ar.h' << '+ END-OF-FILE ''ar.h' X#define ARMAG 0177545 X Xstruct ar_hdr { X char ar_name[14]; X long ar_date; X char ar_uid; X char ar_gid; X int ar_mode; X long ar_size; X}; + END-OF-FILE ar.h chmod 'u=rw,g=rw,o=rw' 'ar.h' set `wc -c 'ar.h'` count=$1 case $count in 133) :;; *) echo 'Bad character count in ''ar.h' >&2 echo 'Count should be 133' >&2 esac echo Extracting 'dir.h' sed 's/^X//' > 'dir.h' << '+ END-OF-FILE ''dir.h' X#ifndef DIRSIZ X#define DIRSIZ 14 X#endif X Xstruct direct { X ino_t d_ino; X char d_name[DIRSIZ]; X}; + END-OF-FILE dir.h chmod 'u=r,g=r,o=r' 'dir.h' set `wc -c 'dir.h'` count=$1 case $count in 96) :;; *) echo 'Bad character count in ''dir.h' >&2 echo 'Count should be 96' >&2 esac echo Extracting 'stat.h' sed 's/^X//' > 'stat.h' << '+ END-OF-FILE ''stat.h' Xstruct stat { X short int st_dev; X unsigned short st_ino; X unsigned short st_mode; X short int st_nlink; X short int st_uid; X short int st_gid; X short int st_rdev; X long st_size; X long st_atime; X long st_mtime; X long st_ctime; X}; X X/* Some common definitions. */ X#define S_IFMT 0170000 /* type of file */ X#define S_IFDIR 0040000 /* directory */ X#define S_IFCHR 0020000 /* character special */ X#define S_IFBLK 0060000 /* block special */ X#define S_IFREG 0100000 /* regular */ X#define S_ISUID 04000 /* set user id on execution */ X#define S_ISGID 02000 /* set group id on execution */ X#define S_ISVTX 01000 /* save swapped text even after use */ X#define S_IREAD 00400 /* read permission, owner */ X#define S_IWRITE 00200 /* write permission, owner */ X#define S_IEXEC 00100 /* execute/search permission, owner */ + END-OF-FILE stat.h chmod 'u=r,g=r,o=r' 'stat.h' set `wc -c 'stat.h'` count=$1 case $count in 861) :;; *) echo 'Bad character count in ''stat.h' >&2 echo 'Count should be 861' >&2 esac echo Extracting 'time.h' sed 's/^X//' > 'time.h' << '+ END-OF-FILE ''time.h' Xstruct tm { X int tm_sec; X int tm_min; X int tm_hour; X int tm_mday; X int tm_mon; X int tm_year; X int tm_wday; X int tm_yday; X int tm_isdst; X}; + END-OF-FILE time.h chmod 'u=rw,g=r,o=r' 'time.h' set `wc -c 'time.h'` count=$1 case $count in 139) :;; *) echo 'Bad character count in ''time.h' >&2 echo 'Count should be 139' >&2 esac echo Extracting 'timeb.h' sed 's/^X//' > 'timeb.h' << '+ END-OF-FILE ''timeb.h' Xstruct timeb { X long time; X unsigned short millitm; X short timezone; X short dstflag; X}; + END-OF-FILE timeb.h chmod 'u=r,g=r,o=r' 'timeb.h' set `wc -c 'timeb.h'` count=$1 case $count in 88) :;; *) echo 'Bad character count in ''timeb.h' >&2 echo 'Count should be 88' >&2 esac echo Extracting 'times.h' sed 's/^X//' > 'times.h' << '+ END-OF-FILE ''times.h' Xstruct tms { X time_t tms_utime; X time_t tms_stime; X time_t tms_cutime; X time_t tms_cstime; X}; + END-OF-FILE times.h chmod 'u=r,g=r,o=r' 'times.h' set `wc -c 'times.h'` count=$1 case $count in 94) :;; *) echo 'Bad character count in ''times.h' >&2 echo 'Count should be 94' >&2 esac echo Extracting 'types.h' sed 's/^X//' > 'types.h' << '+ END-OF-FILE ''types.h' Xtypedef long off_t; Xtypedef long time_t; Xtypedef unsigned short ino_t; Xtypedef short dev_t; X X#define makedev(maj, min) (((maj)<<8) | (min)) X#define minor(dev) ((dev) & 0xFF) X#define major(dev) (((dev)>>8) & 0xFF) + END-OF-FILE types.h chmod 'u=r,g=r,o=r' 'types.h' set `wc -c 'types.h'` count=$1 case $count in 218) :;; *) echo 'Bad character count in ''types.h' >&2 echo 'Count should be 218' >&2 esac echo Extracting 'grp.h.diff' sed 's/^X//' > 'grp.h.diff' << '+ END-OF-FILE ''grp.h.diff' X2,4c2,4 X< char *name; X< char *passwd; X< int gid; X--- X> char *gr_name; X> char *gr_passwd; X> int gr_gid; + END-OF-FILE grp.h.diff chmod 'u=rw,g=rw,o=rw' 'grp.h.diff' set `wc -c 'grp.h.diff'` count=$1 case $count in 109) :;; *) echo 'Bad character count in ''grp.h.diff' >&2 echo 'Count should be 109' >&2 esac echo Extracting 'setjmp.h.diff' sed 's/^X//' > 'setjmp.h.diff' << '+ END-OF-FILE ''setjmp.h.diff' X0a1,2 X> /* _JBLEN should be 3 for IBM PC, 13 for ATARI. */ X> + END-OF-FILE setjmp.h.diff chmod 'u=rw,g=rw,o=rw' 'setjmp.h.diff' set `wc -c 'setjmp.h.diff'` count=$1 case $count in 62) :;; *) echo 'Bad character count in ''setjmp.h.diff' >&2 echo 'Count should be 62' >&2 esac echo Extracting 'sgtty.h.diff' sed 's/^X//' > 'sgtty.h.diff' << '+ END-OF-FILE ''sgtty.h.diff' X20c20 X< /* Fields in t_flags. */ X--- X> /* Field names */ + END-OF-FILE sgtty.h.diff chmod 'u=rw,g=rw,o=rw' 'sgtty.h.diff' set `wc -c 'sgtty.h.diff'` count=$1 case $count in 57) :;; *) echo 'Bad character count in ''sgtty.h.diff' >&2 echo 'Count should be 57' >&2 esac echo Extracting 'signal.h.diff' sed 's/^X//' > 'signal.h.diff' << '+ END-OF-FILE ''signal.h.diff' X1d0 X< #define NR_SIGS 16 /* number of signals used */ X20a20 X> #define NR_SIGS NSIG + END-OF-FILE signal.h.diff chmod 'u=rw,g=rw,o=rw' 'signal.h.diff' set `wc -c 'signal.h.diff'` count=$1 case $count in 94) :;; *) echo 'Bad character count in ''signal.h.diff' >&2 echo 'Count should be 94' >&2 esac echo Extracting 'stdio.h.diff' sed 's/^X//' > 'stdio.h.diff' << '+ END-OF-FILE ''stdio.h.diff' X38,39c38,39 X< #define fgetc(f) getc(f) X< #define fputc(c,f) putc(c,f) X--- X> #define getc(f) fgetc(f) X> #define putc(c,f) fputc(c,f) X56a57,62 X> X> extern FILE *fopen(); X> extern FILE *freopen(); X> extern long ftell(); X> extern char *fgets(); X> extern char *gets(); + END-OF-FILE stdio.h.diff chmod 'u=rw,g=rw,o=rw' 'stdio.h.diff' set `wc -c 'stdio.h.diff'` count=$1 case $count in 269) :;; *) echo 'Bad character count in ''stdio.h.diff' >&2 echo 'Count should be 269' >&2 esac exit 0