LIST OF CHANGES FROM PREVIOUS RELEASE: <$Revision: 1.603 $> Changes from 386bsd 0.1 + patchkit 0.2.2 to NetBSD 0.8: fdescfs, kernfs included added bsd mt ktrace works crond, crontab cleaned, and install properly prompt for floppy root disk added kgmon, gprof many vm bug fixes free ed fixes to /etc/*, particular /etc/{weekly,daily,monthly}, netstart beginnings of yp support tmpnam fix some alpha patchkit 0.2.3 stuff (piecemeal, and in some cases improved) better sun rpc support rwall, rwalld ETXTBUSY, returned properly on writes to files being executed, etc maxfdescs - fixes bash, sendmail, etc. behaviour when you use 'unlimit' larger default tcp windows (buffer space per socket) games brought in from bnr2 bpf fixes wdc vs wd, fdc vs fd fix; basically distinguish between controller and slave(s) attached to it. see sample configs incomplete wd7000 driver makesyscalls.sh, brought in from bnr2, works longer wd/fd probes, to catch more controller/drive combos (customize kernel config to look for devices that you know are there, to avoid delay). better fix in next release multiple open st(4) should get EBUSY updated elvis options SCSI, no more 'scbus' crap. see sample configs patch, patchlevel 12 integrated (non-GPLed) netiso, netcitt, netns added and they even compile more stuff incorporated from bnr2 (some from patchkit 2.3, some not) probe printf improvements fnmatch fix fdisk program pcfs hacked config(8) to be more rational, generate less broken garbage, added expression support, and "requires" swapinfo ps(1), and w(1) fix for command line args mmap, et. al protection fixes nfs client, nfs server split. now individually configurable, see sample configs zillions of bug fixes for broken Makefiles poor error handling broken features enhancements for ease of use greater functionality fixing, and replacing some of Jolitz's cruftier hacks bringing some old BSD utilities into modern age Changes from NetBSD 0.8 to NetBSD 0.9: fixed PCFS so this it actually works now. (Jim Jegers, via patchkit) got rid of bt0 driver in GENERICISA, as it was conflicting with aha0. (cgd) make sure .../sys.386bsd/compile makes it into the distribution. (cgd) added support for BSDI's QMAGIC exec format to the kernel and related utilities; *NULL now core dumps. Also fixed several NULL pointer references caught by this. (mycroft and sef) fixed "/bin/sh: not found" problem when cleaning in libc (cgd) added the latest db lib from vangogh (v1.1 done by proven, 1.6 by cgd) db.h, ndbm.h, mpool.h updated. sys/syslimits.h has macro for SSIZE_MAX libc/getpwent and ttyname changed to use dbopen along with pwd_mkdb, kvm_mkdb, dev_mkdb, vacation, ps sped up console driver considerably by reducing the number of spl*() calls. (mycroft) fixed various bugs in the games. (mycroft) moved non-exportable crypt(3) software into /usr/src/lib/libcrypt, made crypt.c in libc a dummy, and made appropriate changes elsewhere to get things right. use "make EXPORTABLE_SYSTEM=true" to make binaries w/o libcrypt. (cgd) added YP to libc, and yp programs to usr.sbin/yp. (deraadt) netstat -s now prints out all of the udp statistics gathered (glass) brought in new login(1) from uunet. (cgd) brought in new test(1) from uunet, ditched bash version (glass) brought in new tr(1) from uunet (glass) added termios(4) man page from uunet (glass) updated syslog(3) from uunet for better error handling (glass) fixed syscall() with John Kohl's patch (proven) tcp_*space reduced to 4k, because of interactions with vm. (cgd) fixed: SLATTACH hangs up on connect to modem port -> raise DTR patch from: bugs@rafal.slip.uiuc.edu (cgd) can't exec a file people are writing to, any more... (cgd) fixed the amazingly shitty ethernet performance with cheap Western Digital cards. (mycroft) the /usr/src/sys/i386/boot/rmaouthdr script was not executable, which caused 0.8 to have a broken bootwd (deraadt) segregated GNU software in the standard dist. from the rest. it's now in /usr/src/gnu/* (cgd) various changes from Ralf Freidl to fix brokenness in pcfs (cgd) replaced gnu tail(1), join(1) with bsd equivalents from uunet (glass) fixed kernel profiling, again. now it _works_. (cgd) integrated CSRG-released touch(1), err(3) (glass) add process accounting & fix related utilities (cgd) make generic kernels include slip interface so they don't die of stack overflow when using loopback w/no enet (cgd) rpc include files are now installed from /usr/src/include (deraadt) actually fix that loopback+no other interfaced->reboot problem (cgd) make serial ports be correctly-numbered (cgd) added support for HP ethernet controllers. (mycroft) made the entire distribution compile and run with GCC 2. (mycroft) replace GNU dd(1) with recently released Berkeley version (glass) update (f)lex to version 2.3.8 from prep.ai.mit.edu (cgd) fix bc so that it uses the distributed files, not ones we yacc/lex ourself. makes it work, and not require extra newlines (cgd) ifconfig -a (deraadt) iostat and vmstat now understand wd/fd disks. Not scsi disks yet though.. (deraadt) Jim Wilson's sh changes (sef) add uname program and syscall, for POSIX. changes came from John Brezak (cgd) made num, caps, and scroll lock not repeat. (mycroft) fix from Pete Chown for appropriate mmap permissions checking (cgd) add assembly language version of index, rindex, strchr, and strrchr supplied by J.T. Conklin (cgd) update source tree with changes from patchkit-0.2.3 (cgd) update stdio buffering routines with replacements from Chris Torek (cgd) network loopback now supports multiple interfaces via, e.g. "pseudo-device loop 2". patch provided by David Burren (cgd) wd disks print their geometry if it can be determined via a READP command (deraadt) fd drives print their geometry according to what the BIOS says (deraadt) npx changes from patchkit patch 10002. Original author of these patches is Bruce Evans. (deraadt) the ring buffer code now uses "rbchar"s rather than char's. An rbchar is actually a short. This patch allows "literal next" to work (ie. ^V^D) (deraadt) fixed kvm_getprocs() to work after kvm_getprocs() and kvm_freeprocs() have been called already (cgd) fix from Bakul Shah to make tip not dump core when Courier acu routines are used with a non- USR Courier modem. (cgd) nfsd will no longer loop endlessly if it is invoked on a kernel in which NFSSERVER has not been included in. (glass) crond will no longer directly open /var/cron/log, fail and complain. now uses syslog(3); cron.info can now be used to select the messages it logs. default syslog.conf has: cron.info /var/cron/log # for backwards compat. lockf patch from Paul Kranenburg (deraadt) the rpc library now has xdr_float and xdr_double. patches from J.T. Conklin (deraadt) fix tmac.andoc .TH directive handling. patch from J.T. Conklin (cgd) make sendbug give a "To:" to sendmail. patch supplied by Gordon Burditt (cgd) fix kernel printf's "%b" (bits) format. patch supplied by Gordon Burditt (cgd) add TIOCSTAT ioctl to give load average stats if requested (for tcsh) from Luke Mewburn (cgd) integraged hp300 code from net/2 (cgd) fixed uninitialized field of struct proc which would occasionally cause "w" to panic the system (cgd) various 8-bit patches from Andrew Chernov tty_compat.c is cleaned up, as is STOP+TIOCSTI in tty.c (deraadt) fd error reporting cleanup. (deraadt) fixed bad man page & syscall definition for getpgrp(). (posix says it takes no args, and i don't argue...) (cgd) add change from Guido van Rooij so that io port access from user processes doesn't randomly work/fail. now must open /dev/mem to get access. (cgd) apply patch from Jagane D. Sundar to allow NFS-mounting of ISO 9660 (isofs) filesystems, and to fix a few small isofs bugs. (cgd) have config make kernel compilation directoris in /sys/${MACHINE}/compile rather than /sys/compile (cgd) changes from David Burren so that netstat prints names for routes when not given -n, and so that it prints address family names (cgd) add new getcap routines to libc, adjust termcap build and tset(1) accordingly, and add cap_mkdb (cgd) move csu.${MACHINE} libraries into one subdir in /usr/src/lib (cgd) moved kernel architecture-dependent sub-directories into /sys/arch/${MACHINE}. great for more archs! (cgd) fixed "swap generic" support (cgd) improve kernel select mechanism further, by making setup done by a function. put protos into /sys/sys/select.h and clean up all of the messes it makes (cgd) file now prints the targets of symbolic links, thanks to John Brezak (brezak@osf.org) for the patch. (cgd) ed: 8-bit clean; no line-length limit; regex support for NULs (alm) sed: fixed NULL indirection (alm) fix "cpu" declarations in kernel config files so that they work as originally intended. this means that only cpus for which there is a cpu declaration (see kernel config files for examples) are supported by a kernel compiled with the config. also, if you want the math emulator in your kernel, you now need the "MATH_EMULATE" option in the kernel config file. (cgd) disklabel stuff in the kernel has been split up into arch indep & arch dep components. no more dos stuff in ufs_disksubr.c! (deraadt) add packet size check for raw IP provided by Paul Antonov , to fix the "traceroute foohost 2000 causes panic" problem. (cgd) Fixed packet counters in if_ec, as noted by Mike J. Fuller (davidb) Modified the SCSI disk startup so that DEC disks (for example) are told to spin up _before_ they are asked if they're ready. (davidb) Updated the rpc library to support MIPS and NS32k CPUs. (davidb) applied various patches supplied by Havard Eidnes to generally fix ISO support, including: reception of ISO multicasts in with we ethernet driver, fixed CLNP Echo reponder, and netstat, ifconfig, and libc fixes (cgd) use the Athena "newsyslog" utility to rotate logs, rather than the old, cumbersome method in /etc/{daily,weekly,monthly} (cgd) replaced broken /usr/include/bitstring.h w/new version from Mike Murphy (cgd) added /usr/src/regress, for regression tests (cgd) add Yuval Yarom's changes (originally for BSD/386) for advisory record locking on NFS files. Note that this DOES NOT support network locking, only local advisory locks. (cgd) fix /bin/ls; is clobbered first env. var. if given no filename args given. patch from Bob Willcox . (deraadt) mail.local can now use username.lock files as well as flock(). Use the -l flag in your favorite sendmail.cf file. (deraadt) don't remake newvers and relink kernel if nothing has changed (cgd) fix SUP to not need any version of crypt. Use "make MAKE_EXPORT=1" to build a SUP for export. (brezak) add patch00144: fixed compress bug with a small path[] array from . (deraadt) add patch00149: sd/cd drivers printed incorrect blocknumbers when they hit errors. From . (deraadt) /etc/localtime is now created from by "make distribution" (deraadt) fixed /usr/bin/more to not play with magic numbers from executables directly. It now uses the N_BADMAG() macro. (deraadt) fixed lpr's dealings with magic numbers. It now no longer accesses exec.a_magic directly, and it knows about modern "ar" files rather than the old ones (deraadt) use EXPORTABLE_SYSTEM instead of MAKE_EXPORT to build crypt-free SUP. Just like the rest of the system. (brezak) tty structures are allocated dynamically. The d_ttys field in cdevs[] now has an extra level of indirection. The pty and com drivers allocate pty's dynamically, the pccons driver does not. Check out the "ttys" field in vmstat -m. (deraadt) make sleeps during FIFO open interruptable (cgd) various pacthes to kernel files to make things compile with GCC-2.3.3 (proven) patch to signal .h for ANSI validation (proven) update to version 3.0 of Paul Vixie's cron package (cgd) kernels without pc0 support can be built, and work (deraadt) add yppoll command (brezak) update yacc to the latest version from Berkeley (1.9) (cgd) fixed kernfs security hole, where it wouldn't actually check perms before allowing users to write hostname (cgd) added chown/chmod/chgrp functionality to kernfs (cgd) sending simple telnet commands fixed. patch originally from Jonathan Stone (cgd) replace execve with new one, based on work by Wolfgang Solfrank , but beaten up a good amount be cgd. (after several iterations of beating have gone on, this code is *really* differnt...) (cgd) update kvm library for the new exec, and add a kvm_getenv function, to get a process's environment var list. ps and w apply strvis() to args/environment before printing (cgd) give ps an 'e' option, to print the environment variables of processes (cgd) add vt300 to termcap.src (brezak) fixed stty so that setting "ispeed" works. (cgd) move i386 signal trampoline code from the pcb to the top of the stack. at the same time, implement copying out of the signal trampoline code, on process creation. (cgd) shut up libg++ "make"'s whining (cgd) allow user to specity that programs depend on c++ sources (previously only could be done for libraries) (cgd) fix library "make depend" problem, in which it wasn't generating dependencies for profiled .o files (cgd) fix ps to not show cpu/memory/swap usage if process is zombie (cgd) fix from Wolfgang Solfrank (ws@tools.de) to kill processes outright if they exceed their hard CPU-usage limit (cgd) fix for NFS's bogus use if va_flags and va_gen, and other minor NFS fixes, supplied by John Woods, jfw@ksr.com (cgd) fix /usr/include/rpcsvc/rnusers.x - versions were reversed (brezak) add /lib/rpcsvc for upcoming rusers/rup clients and daemons (brezak) revert the "syncing disks" message on reboot to it's original, more informative, form (cgd) fix /usr/include/rpcsvc/klm_prot.x so it compiles. (brezak) add /usr/libexec/rpc.rstatd, rpc.rusersd, rpc.rwalld. (brezak) add /usr/bin/rup, rusers, rwall(changes). (brezak) add LIBRPCSVC to bsd.prog.mk. (brezak) removed bugs and memory leaks from directory functions (proven) make tip obey Taylor UUCP's locking conventions. Patch from Peter da Silva , patchkit patch #139. (cgd) patch from David Greenman and Rod Grimes (davidg@implode.rain.com and rgrimes@agora.rain.com) to support 57600 and 115200 baud in the kernel, tip, and getty. pk patch #150 (cgd) patch from so rlogin understands higher baud rates (deraadt) use Bruce Evans' pc3 termcap entry. pk patch #156 (cgd) add delay loop to lpa and lpt drivers to allow data port to stablize. make "lpflag" unique. patch from Rod Grimes , as pk patch #164 (cgd) change MCLSHIFT to 11, so mbuf cluster size is bigger than MTU of network interfaces, for performance. to use old size, use "options MCLSHIFT=10" in your kernel config. this is patchkit patch #166. (cgd) remove /usr/local and /usr/contrib from root's path, and also give root and operator "sane" group ids. (cgd) convert to Bruce Evans' new interrupt system, as hacked by Rod Grimes , and suppied in the patchkit (in patches 158 and 167). (cgd) get rid of the "as" (old SCSI) driver, finally. (cgd) rename kernel functions getc() and ungetc() to rbgetc() and rbungetc(), respectively. (cgd) chmod's dealings with symbolic links now un-hosed (deraadt) clean up miscfs and isofs filesystems. they now have their own vnode types and malloc types. (cgd) added Terry Lambert's loadable kernel modules code. (cgd) add man pages for rpc.rwalld, rpc.rusersd, cleaup rpc.rstatd (brezak) fix alloca() definition in stdlib.h for gcc2 and gcc1. (brezak) change host field width in rusers and rup. Also print idle time in days,hours,minutes,seconds in rusers. (brezak) add man pages for rwall, and rusers. (brezak) integrate changes from conklin@talisman.kaleida.com (J.T. Conklin) that incorporate changes from TIRPC to include/rpc and lib/librpc. I also added code to getrpcent.c for YP. (brezak) delete lib/libc/yp/yppasswdxdr.c because it is now in librpcsvc. (brezak) updated file(1) and magic database to Ian Darwin's latest release. (jtc) patch from Yuval Yarom so implicit binds in in_pcbbind will assign used ports if the if the port is bound on specific interface, and not on INADDR_ANY. (deraadt) patch from Yavul Yarom. The loopback check for forwarded packets was wrong (deraadt) fix pwd_mkdb to not accidentally grow a complete passwd file from the YP passwd map. Include a getpwent.o that -UYP. (brezak) leave hole for AFS in vfssw[]. Define MOUNT_AFS in mount.h. (brezak) install symlinks to rpc and xdr manpages for rpc library routines; convert rpcgen, rpcinfo, and librpc manpages to -mandoc macros (jtc) inetd now can start RPC services. (brezak) remove starting of rwalld from /etc/rc and netstart. (brezak) chpass and passwd will use YP is available. (brezak) added -d option to install (jtc) tip can now read ~/.tiprc even when this file is not world- accessible. (andrew) applied Yuval Yarom's closef() panic patch - the panic was caused by multiple calls to unp_discard() sometimes being made when closing a socket. (andrew) added Microsoft and Logitech busmouse drivers, originally by Erik Forsberg. (andrew) added fast symlinks. Add `options FASTLINKS' to your config file or frob the variable `ufs_write_fastlinks' to enable creating them. Note potential conflict with Pete Chown's ACLs (which is currently not in our tree). And don't blame me if (though it's unlikely) your existing symlinks all barf because they have dirty spare fields. (mycroft) changed aha scsi driver to reduce the card's bus-on time from the default 11ms to 9ms. Prevents floppy drive read/write problems during heavy scsi io. (andrew) changed expr(1) to use POSIX regular expressions (jtc) add assembly language versions of bcmp, ffs, memchr, memcmp, memset, strcat, strcmp, strcpy, strlen, and strncmp; change bzero to word align before its wordwise set. (jtc) integrate fnmatch from keith bostic/bsd4.4-alpha; update sources that use fnmatch: find, locate, mtree (jtc) move sys/arch/i386/isa/spkr.h to sys/arch/i386/include. (brezak) completely rewrote and replaced physio (cgd) silence complaints about can't read size during probe in cd.c (brezak) change assert.h to be ANSI compliant (jtc) change signal.c to use ANSI C macro SIG_ERR, instead of BADSIG. remove BADSIG from signal.h, it's not used elsewhere. (jtc) nuke silly printf in vm_swap.c. (brezak) Use NNPX instead of NPX from npx.h. (brezak) Correctly extract version number from version string for uname. (brezak) add new Julian Elischer's new floppy driver, with modifications, from the patchkit (deraadt) convert the a.out format's a_magic fields and a_mid fields into one field, which is kept in network byte order (deraadt) integrate Donn Seeley's (i.e. BSDI's & CSRG's) init, as posted to various newsgroups (cgd) upgraded m4 to latest version retrieved from Ozan Yigit after some begging. adds support for 'm4 ', and works with sendmail r8's m4 usage (glass) upgraded sendmail to sendmail 8.1B; will follow future releases. see sendmail/READ_ME for information about the degree of backward compatability provided. also sendmail/cf/README. fixed bug in ECHONL processing (andrew) date command ignored setting the seconds value. patch from (deraadt) Fixed othersrc/xntp to find NetBSD kernels. (davidb) Add getopt command to usr.bin from agate:.../public. (brezak) added ANSIfications to /sys/{sys,kern} and sundry other affected areas; removed the never-used second argument that was being passed to timeout functions. (andrew) applied Yuval Yarom's recv() socket fixes to prevent incorrect blocking with MSG_WAITALL. Fixes a sbdrop() panic during some MSG_WAITALL recv(2) sleeps. Access rights problem also fixed. (andrew) fixed bugs in vm_glue.c that allowed a process to access its user pages. Writing to one of these pages on an i[34]86 system tends to cause an instant reboot... (andrew) brought in versions of Bmake'd versions of GNU gzip and tar off of freefall. These understand the .gz suffix for gzip'ed archives. (brezak) uucpd from Net2. (brezak) Support high tty speeds in slattach. (brezak) applied Paul Kranenburg's VM deadlock patches from the patchkit [patch00147, parts 2-4 - part 1 was already applied] (andrew) fixed new i386 interrupt code to only do verbose statistics- gathering when compiled with INTR_DEBUG. also, use local labels for internal branches, so profiling works better. (cgd) add support for David Greenman's if_ed wd80[01]3 and 3c503 i386 ethernet driver. modify it to allow the "iosiz" to override the probed shared memory size, to help compatibility with clone boards (cgd) change i386 interrupt vectors names so that they being with "X" instead of "V", like every other BSD system... (cgd) fixed /sys/scsi/sd.c to reject non block-aligned transfers, which were causing scsi hangs (andrew) convince /usr/src/share/doc to make and use "obj" directories (cgd) make the boot blocks make & install in same way as the rest of /usr/src (cgd) uniq -c /dev/null now works properly, it was not checking the return value from an fgets(). fix from (deraadt) first part of merge of amiga code, sys/arch/amiga. Full merge will require some changes outside too, as well as some renameing in sys/arch/amiga to avoid conflicts with existing modules (mw) i386 wd controller driver: major rewrite of timeout code to use DELAY(). added code to reset controller if it times out. patches sent in by many people. (deraadt) make the rlist code go away. it wasn't useful in the place it was intended to be used, and it was incompatible. in addition, it caused a few bugs... replace it with rmap code written by Wolfgang Solfrank. (cgd) i386 pccons driver now malloc()'s it's "struct tty" (deraadt) i386/hp300 cons.c "struct tty *cn_tty" wasn't being used by anything, so it goes away (deraadt) fix problem of passwd local_passwd exiting instead of passing status so YP password can be tried. Also change NIS --> YP. (brezak) remove usr.bin/gnu/tar. Use tar-1.11.2 instead. (brezak) update grep, egrep, and fgrep to gnu grep 2.0. (jtc) update awk to gawk 2.15.2. (jtc) update diff, diff3, and sdiff to gnu diffutils 2.3. (jtc) update rcs to 5.6.0.1. (jtc) update gzip to 1.2.2. (jtc). 'w' no longer thinks the console is a special device. (deraadt) ignore the flags field in midmag in kern_exec.c from pk@cs.few.eur.nl. (brezak) nuke yppasswd. Use "passwd" to change YP password. (brezak) add Kermit 51(198) to othersrc. (brezak) libcurses updated with Andrew Chernov's 8-bit clean patches (alm) patch from Paul Kranenburg so that if given a kernel name, kvm_mkdb will work properly. (cgd) patch from Paul Kranenburg to use symbols and line numbers in stack tracebacks. Also a fix to the stack traceback for syscalls. Did NOT include dynamic sym changes. (brezak) allow SYS_INCLUDE={copies,symlinks} in src/include/Makefile to be selected in bsd.own.mk. (brezak) upgrade gcc and cc to gcc-2.4.5 (paul) convince ddb to be quiet if it doesn't find any space for debugging symbols, and then don't ignore its output or exit code (cgd) integrated Bruce Evans' bios boot-block modifications, which include read-ahead buffering, loading kernels at the 1MB mark, bad144 support and various other fixes (which enables the code to work with aha174x cards in enhanced mode). (andrew) upgrade if_is.c to handle multiple cards and bpf (paul) make ps with an odd number of "w" flags behave properly. (cgd) changed tty queue interface to be like old BSD clists, but with a (new) ring buffer implementation which is more memory efficient. (mycroft and deraadt) fixed nice(1) to not dump core when invoked with no arguments, and to understand negative niceness values. (jtc) fixed dbsym to strip gcc2 related trash syms before stuffing them into the kernel. Added "-l" flag to strip local syms too. (brezak) replaced gcc1 with gcc2 as standard compiler, and removed gcc1 and the old version of g++ (cgd) upgraded libg++ to version 2.3.90 (cgd) changed env, head, nohup, wc, and xargs to be IEEE 1003.2 (D11.2) compliant. (jtc) upgraded groff to version 1.08. (jtc) i386 if_ne.c bug fixes from (deraadt) ddb changes. Add -more- pager for output. Add 'ps' command. bring in ddb(4) man page. (brezak) added Havard Eidnes fixes to netstat (paul) fixed gcc2 for multiple archs and tidied up man pages in cpp (paul) updated libg++ to 2.4 (paul) make lib/libtelnet/enc_des.c optional for telnet. (brezak) copyin/out(), copyin/outstr(), s/fubyte() et al protection fixes, including COW support, using code based on that from Wolfgang Solfrank and Christoph Robitschko. (andrew) user segment descriptors fixed to disallow access to user area (andrew) bde's boot >= 1MB fixes (andrew) make NOPs in locore do something, by default. to make them faster (and doing so will break some systems), use 'options "DUMMY_NOPS"' in kernel config file (cgd) multiple beeps now generate a continuous tone. also, sysbeep() now takes a frequency as its first argument. (mycroft) added library dependencies to Makefiles where they were missing. (mycroft) changed dinode.di_un to a dev_t in preparation for making dev_t larger. (mycroft) moved asm.h from /usr/include/sys to /usr/include/machine. (mycroft) added CXX and CXXFLAGS and suffix rules for C++ files in /usr/share/mk/*, with attendent Makefile changes. (mycroft) fixed search paths for whereis. (mycroft) fixed memory trashing bug in compress. (mycroft) fixed various bugs in if_hp.c. (mycroft) changed implementation of scroll lock to use sleep() and wakeup() so it doesn't freeze all sessions. (mycroft) fixed bug in cat re: short (usually interrupted) writes. (mycroft) made pccons output in small chunks use ttrstrt() so it doesn't hog the CPU. (mycroft) made splimp() mask both spltty() and splnet(), and removed Bill's kluge for SLIP that made spltty() and splnet() include each other. (mycroft) fixed handling of bad syscall numbers on 386. (mycroft) changed `make depend' to work in two passes--one for C files and one for C++ files. for the latter, `-+' is passed to mkdep automatically; no need to specify it in the Makefile. (mycroft) moved struct definitions outside of function declarations in kernel, so GCC doesn't emit tons of warnings. (mycroft and cgd) added -T option to dbsym to specify load address of kernel. this is necessary for it to be able to find the blasted string it's supposed to insert into when the kernel is not loaded at the default address. Makefile.i386 now uses this. (mycroft) added a way to specify the kernel load address in the config file; add `at address' (e.g. `at 0xfe100000') to the `config' line. (mycroft) made GDB deal with stabs type info output by GCC 2. (mycroft) fix from Brian Somers to make "ps -o command" work correctly (cgd) made kvm_procread() read the swap area in CLBYTES chunks. (mycroft) added ISOFS support for Rockridge filesystems, written by Atsushi Murai . (cgd) scsi bus probing sped up by remembering if there's actually a device at a particular unit number (deraadt) hp300 tty devs changed to do dynamic tty allocation (deraadt) the ifconfig aui/bnc keywords go away, use -llc0 to select bnc/other onboard tranceiver, llc0 to select aui (deraadt) cleaned up /etc/magic to grok new-style executables (deraadt) removed bogus nop-like instructions put at the start of the i386 crt0.c by Bill (deraadt) i386 wd.c now has timeout debugging code useful for seeing how slow your controller's DIAG command really is. Enable WDCNDELAY_DEBUG in wd.c if interested... (deraadt) i386 if_ed.c call bpfattach() at the same place as other enet drivers (deraadt) bpf man page error found by hpeyerl, ok'd by mccanne (deraadt) added -g option to dbsym to include line number and function symbols for DDB; note that this generates REALLY LARGE symbol tables; you'll need to load the kernel at >=1MB to use it. (mycroft) replaced vfs__bio.c with better one derived from one from CMU. it works better, does the right thing with buffer_map, and, in general, is cleaner than the old one. (cgd) added man pages for all external mount types. (cgd) fix from J.T. Conklin to make nohup print the correct message re: the logging file on the user's console. (cgd) mount_pcfs moved to mount_msdos; the latter is more appropriate (cgd) sendmail upgraded to version 8.3 added statistics counters to if_is.c,ipackets etc (paul) ultrastore 14f driver should now work w/34f as well. (cgd) got rid of broken toupper() and tolower() macros (cgd) i386 wd.c change from to fix single drive systems (deraadt) i386 fd.c reliability fix from (deraadt) kern_sig.c used to wrap swtch() with splhardclock()/splnone() which isn't right. (cgd) i386 swtch() didn't save splx() value per-process. (deraadt) Changes from NetBSD 0.9 to NetBSD 1.0: delete share/man/man4/kadb.4. (brezak) cleanup for DDB: allow one to fault in DDB, cleanup pretty printers for maps and objects, and support for adding symbol tables at runtime. (brezak) use XIDLE extension in rpc.rusersd (if present). (brezak) changed kill, mkdir, mkfifo, rmdir, and umask (sh builtin) to be IEEE 1003.2 (D11.2) compliant. (jtc) add latent support to config to generate header files for options. (brezak) rewrote sun copyrighted header files (deraadt) fixed yp-related bug in endpwent() found by (deraadt) othersrc/kermit add LOCKDIR for Taylor uucp, SETREUID, and STRINGPIDS. (brezak) fixed vm_object.c to remove an object from the hashtable when vm_object_collapse() starts fiddling with pagers. (pk) removed two bogus splx() calls in aha1742.c found by (deraadt) added RCS identifiers to many of the files which were missing them. (mycroft) added support for the `noauto' option to mount. (mycroft) replaced much of the rtc code with code from Mach. Now handles resettodr(). (brezak) added support for i486 instruction set extensions to gas. (jtc) implement play_msf variants for SCSI cd. Now for the player... (brezak) changes from for gzip'ed sup file transfer. (brezak) add service port for WWW http to /etc/services. (brezak) upgraded uucp to version 1.04. (jtc) upgraded manpages of many programs, and most of the games to use -mandoc macros. (jtc) added __pure qualifier to many of the function declarations in . (jtc) replaced volatile qualifier in with __dead, for when we're not compiling with gcc. (jtc) updated fts(3), vis(3), and glob(3) to latest versions from Berkeley, with local bug fixes. (mycroft) added sys_signame[] to libc, like 4.4, and changed some programs to use it. (mycroft) added getbsize() to libutil, like 4.4, but with a `force' flag to specify a particular block size. (mycroft) updated du and df to latest versions from Berkeley, but with `-k' flag readded. (mycroft) added a missing suser() to if_sl.c (deraadt) fixed the suser() call in if_tun.c (deraadt) fixed a few utilities to work with the new fts(3) routines (deraadt) new MID_M68K and MID_M68K4K executables, and associated changes to file command (deraadt) add MI insque/remque (and man pages) to libc. (brezak) brought in fixed/renamed/matching MS-DOS FS code, from Jeff Polk . (cgd) ppp added thanks to , , and (deraadt) ppp bugs/completeness - stty/print.c (recognize line disc), pppd/main.c (use LOG_INFO for informational stuff, correctly set line speeds), pppd/pppstats/Makefile,pppstats.c (install group and kernel name). (brezak) changed cut, date (via changes to strftime()), expand, nice, ln, time and wc to be IEEE 1003.2-92 compliant. (jtc) changed system(), popen(), and pclose() to be IEEE 1003.2-92 compliant. (jtc) fixes for some typos in the pc3 termcap entry from Thorsten Lockert (cgd) fix for make's handling of obj symlinks which point nowhere, from Christoph Robitschko (cgd) added proc filesystem (PROCFS) code (pk) add SYSV shared memory library stubs to libc. From usenet posting. (brezak) added "ed1" to generic kernels for 3c503 support. (cgd) vop_setattr() aded to procfs, enables chmod's of processes and chmod/chown/chgrp on the procfs root dir. (pk) add bootpd to othersrc. Add bootp service nos to/etc/services. (brezak) add -x flag to strip. Removes local syms, stabs, and compiler idents symbols. (brezak) machine independant changes to VM to be able to handle machines with non-contiguous memory from Wolfgang Solfrank. Machines that need this use "option MACHINE_NONCONTIG". (brezak) i386 machine dependant changes for non-contiguous memory. WARNING- you will need a new config for this. (brezak) i386 boot program changes to load the symbols table from the image, be able to boot omagic executables, pass a few more arguments, and enable the kbd clock. [You will need this for the next changes having to do with DDB symbol loading] (brezak) update othersrc/bootpd to conform with RFC-1395. (brezak) changes to allow boot to load ddb symbols. define SYMTAB_SPACE=nnn if your boot program cannot do this. Otherwise build the new boot program for the i386 and don't define SYMTAB_SPACE. (brezak) kernel pagers are controlled as options, not as pseudo-devices (deraadt) tty device driver XXstart() routines return void (deraadt) make pagers options, not pseudo-devices (deraadt) sun3 port now in the tree. Doesn't actually work, but real close. Status info in sys/arch/sun3/STATUS. (glass) torek's 'config.new' integrated, including the kernel support for his autoconfig mechanisim. Currently used only by sun3. (glass) priority queueing for interactive traffic + bpf support added to the ppp driver. (paulus) fix from "James W. Dolter" so that exec deals properly with shell scripts with symlinks in their names. (cgd) use "posix" rather than "right" rules for time conversions. fixes a 14-second discrepancy with other systems and WWV (cgd) if_ppp.c: received IP packets now passed correctly to BPF. (paulus) reduce i386 max stack limit to 2M (cgd) clean up stack size and limit code (cgd) replace ptrace() implementation with a better one from Sean Fagan (cgd) fix LKM's loading of device driver modules so it actually does it. patch from Szabolcs Sziget (cgd) modified VFS readdir semantics to better support nfs cookies (ws) changed mountd/mount system call to allow exporting of filesystems other than UFS (ws) enhanced ISOFS filesystem with better Rockridge support, support for generation numbers, extended attributes and associated files (ws) strip filename records from symtab with "strip -x". (brezak) add .S.o rule to sys.mk. (brezak) fixes from Jim Wilson to sh: don't core if given a pair of backquotes with no command in between. also, don't accept semicolon in for loop without 'in' keyword, and handle TEOF like TNL in command parsing. (cgd) allow for exporting whole directory trees with -alldir in /etc/exports, changes from Richard A Macklem > (ws) first fixes for the short/int mismatch in the system calls. (phil) imported the src/sys/arch/pc532 tree. (phil) added a number of necessary #ifdef pc532 cases (deraadt) fixed bug in ypbind that caused it to not keep the binding file up-to-date (deraadt) fixed arch/pc532/include/param.h (phil) fixed up vm_object_print and vm_map_print so that they work as DIAGNOSTIC and DDB. (brezak) added MACHINE_NONCONTIG to *standard* configs. (brezak) changes to config and sys/arch/i386/conf/Makefile.i386 to default kernel load address at 1M. Use "at 0xfe000000" in config to load kernel low. (brezak) eliminte syscframes, they are now the same as trap frames. (brezak) aculog owned by uucp.dialer after log rotation, not root.wheel. bug reported by Greg Tanaka (cgd) fix to the 'size' primary; -size c didn't work. from Thomas Eberhardt (cgd) fix for "touch -t CCYYMMDDhhmm[.SS]". the CC part didn't work. from Thomas Eberhardt (cgd) upgraded diff, diff3, and sdiff to version 2.4. (jtc) imported the src/lib/csu/pc532 and src/lib/libc/pc532 trees. (phil) added timezone rules for Moscow, Russia, as provided by Andrew A. Chernov (cgd) added fix from Theo for ypset. This should fix ypset through GW's. (brezak) changes to support running of Windows executable via Wine. Changes to the kernel activated with "USER_LDT" option. New syscalls are in new architecure specific library - libarch/libi386. (brezak) add clearing of direction flag back to i386 bcopy and memmove. This previous change to remove it was too aggresive and broke things like the Xserver. (brezak) fixed isascii(3) man page (cgd) made biodone() work properly, from spec in daemon book and from what the various other parts of the system expect (cgd) fix resettodr() to be able to reset rtc even if it's time is invalid. (brezak) fix crond so that it only stat()s the first 'word' of the command for root's crontab (cgd) incorporate GNU malloc into the src/gnu source tree (cgd) convert all GNU utilities to use GNU malloc (cgd) added keyboard typematic rate support to pccons and split off ioctl definitions to (andrew) macros added to support PIC code generation lib/libc/i386/SYS.h in library assembler stubs. Changed a number of these stubs in files in lib/libc/i386/{sys,gen} that touch global data. (pk) buffer allocation is now static at startup, rather than allocated (via various means) by vfs_bio. (cgd) upgraded diff, diff3, and sdiff to version 2.5. (jtc) patch from Christoph Badura to fix credential use by read-ahead blocks. (cgd) put gamma.c into libm, at the prompting of Eliot Dresselhaus (cgd) update of gas to version 1.92.3 to support PIC code (i386 and sparc ports only, as of this moment) (pk) support for PIC relocation records in (pk) defined EX_DYNAMIC flag in (pk) configured gcc to generate mode complete link commands, output .size directives and generate a libgcc_pic.a archive (pk) update Australia's zoneinfo file with new data from Mark Davies (cgd) nfsd now reports fatal errors with syslog(), rather than err() per Vernon Schryver (cgd) added a cyclades cyclom-8y (and 4/16y) multiport async serial driver. (andrew) fixed vfs_bio so that it dynamically moves pages between buffers (cgd) don't try to display the resident text size with "ps -v". Fix from Thomas Eberhardt (cgd) move architecture-specific directories in libc into an 'arch' subdir, in the same way that they're under 'arch' in the kernel (cgd) move rpc library code into libc; it was being included in libc via makefile trickery, and there was no good reason to keep it out of the libc source tree proper (cgd) Rand48 routines from Martin Birgmeier . Sorry no man pages for this from the author. (brezak) finger fixes and enhancements from Luke Mewburn . (brezak) moved sources for rpc protocol definitions into src/lib/librpcsvc, and set it up so that include/rpcsvc is made from there (cgd) several extensions to inetd: group id specification, per service maximum invocation rate, a `/var/run/inetd.pid', AF_UNIX family support, several minor bug fixes. (pk) substantially modified ld in an effort to support shared libraries, including a run-time linker ld.so (in subdir rtld). (pk) added src/lib/csu/sparc + contents, modified crt0 (sparc+i386) to support dynamic linking. (pk) fix pow() to handle x == 0 and x == infinity (cgd) tossed old accounting routines in favor of better ones by Mark Tinguely (cgd) upgraded db library routines to version 1.72, from ftp.cs.berkeley.edu (cgd) fix from Andrew Moore to correct test's handling of (non-negated) "-a" and "-o". (cgd) exec fixed to return EACCES if trying to exec a program on a file system mounted MNT_NOEXEC. (cgd) update execve man page to note that, and fix a typo, with diffs. fixes from Garrett Wollman . (cgd) fixed multiple off-by-one bugs in fstat which caused open file printing to not print the last open file. patch from David Greenman . (cgd) cleanup dup'ed defines for GDT/LDT entries in machdep.c/sys_machdep.c. call resettodr() in boot() like other ports. (brezak) return EINVAL if trying to send negative amounts of data, and a couple of minor TCP bugs. (from bsdi-users) (cgd) fix panic that can occur when two renames are moving the same source at the same time, and check that the rootfs pointer is non-null before using it in sync(). (from bsdi-users) (cgd) add a free 'units' command, written by Adrian Mariano ( or ) (cgd) apply fix in i386/isa/spkr.c for PIT_MODE from Keith White . (brezak) ISOFS: better handling of empty files (fix the symlink bug). Let filenames alone, if mounted with -gen. Change filename of associated files to start with `=' and not end in `@'. (ws) m4 upgraded to Ozan Yigit's latest and greatest version. (glass) Fixes bug that broke > 8.3 sendmail config files sendmail upgraded from version 8.3 to 8.6.3 (glass) See sendmail/RELEASE_NOTES for a detailed list of changes. tablet line discipline ported to net/2 tty system. (glass) update the cksum(1) utility from the latest sources on uunet. (cgd) update the mtree(8) utility from the latest sources on uunet. (cgd) added a64l(), l64a(), lfind(), lsearch(), , etc. (jtc) changed rm to be 1003.2-1992 compliant. (jtc) added -print0 option to find. (jtc) gas: changed write.h to compile with PIC not defined (phil) gas: added patch to config/tc-ns32k.c to make "movd x(pc),y(pc)" work correctly. (phil) file(1) updated to do sign-extension correctly for signed comparisons, and also allow explicitly unsigned comparisons (by prepending `u' to the type). (mycroft) moved chown(8) and chgrp(1) into usr (where they were in net/2) (cgd) broke link from 'acctoff' to accton; the former is no longer used (cgd) fixed elvis so it returns exit code 0 if file unmodified (cgd) updated timezone files with new revisions supplied by Arthur David Olson (cgd) update timed to the latest version, as supplied and ported by vjs@calcite.rhyolite.com. (cgd) updated README.sup to reflect changes to collections. (brezak) incorporate new dev pager from Mike Hibler (cgd) altered sed to exit when the n)ext command reaches EOF. (andrew) changed printf(3), et. al. to be ANSI compliant. (jtc) changed printf(1) to be 1003.2-1992 compliant. (jtc) add Mitsumi (non-SCSI) CD-ROM driver, written by Holger Veit and Brian Moore (cgd) fixed bad bcd(6) punch codes Dyane Bruce . (jtc) sendmail upgraded from version 8.6.3 to 8.6.4 (glass) See sendmail/RELEASE_NOTES for a detailed list of changes. fix from David Greenman to improve socket performance by keeping sosend from attempting to reserve space in an mbuf cluster for datagram headers. It was unnecessary because the mbuf allocation routines do the right then when prepending to mbuf clusters. (cgd) fix from David Greenman to keep large amounts of unidirectional UDP traffic from filling up interface output queues with fragments. (cgd) fix bogus uses of splnone() in the i386 port. (cgd) update err(3), fnmatch(3), glob(3), and fts(3) from uunet. (cgd) define BSDSRCDIR and BSDOBJDIR to have make think of the src and obj trees as being rooted someplace other than /usr/src and /usr/obj. (cgd) update /etc/services and /etc/protocols with more (official) data Garrett Wollman did the leg-work (cgd) update /etc/namedb/root.cache with current data. Garrett Wollman did the leg-work. (cgd) clean up /etc/rc and /etc/netstart, add entry in netstart for sysads to define flags passed to sendmail and possibly turn it off (cgd) disable sendmail by default in future distributions; bad things could happen if config files aren't properly customized (cgd) some sunos compatibility code in struct sigacts (deraadt) add pmax architecture support to config program, done by rick &/| ralph (deraadt) move __LDPGSZ from sys/exec.h to machine/exec.h, because there's too many "#ifdef ${ARCH}" things in there. (deraadt) set up make templates so that the contents of the LDSTATIC variable control static linking (cgd) use ./yearistype.sh rather than yearistype.sh when making /usr/share/zoneinfo (cgd) fix mount(2) man page to use the right names for mount flags (cgd) make csh be rational w.r.t. forground process groups (cgd) add link(5) manual page, update of a.out(5) (pk) update curses(3) with latest version from CSRG (cgd) update more(1) with the latest version for uunet and added regex(3) support (alm) update pppd to version 2.0, fixes to chat (paulus) 'T_LINEP' member of 'struct tty' is now 't_sc' which is how it is being used currently. (glass) pppd: add RCS IDs, minor enhancements (default local address to first IP address of host), bugfix (paulus) fix some uninitialized variables in lpr and lpd (cgd) make crontab(1) do the right thing with EDITOR and PATH. reported (with fix) by Roland McGrath (cgd) make rup and rusers prettier (deraadt) add some useful memory summing stuff to vmstat (cgd & deraadt) replace -lgnuregex and the regexp(3) functions in libc with Henry Spencer's new POSIX.2 compliant regex(3) functions. (jtc) upgraded diff, diff3, and sdiff to version 2.6. (jtc) moved fifo.h and specdev.h to /sys/miscfs, along with the various file system ops they defined. (cgd) add regex(3) support to elvis (alm) update ed(1) - fixed line addressing to be consistent with SunOS ed (alm) change bootcode to not skip the 256 bytes of BIOS variables if load address isn't 0 (ws) more stdio fixes from from torek with help from cgd. (cgd) fix termcap(3) man page to have the correct definition of tgetstr(). fix supplied by gordon@sneaky.lonestar.org (Gordon Burditt). (cgd) Add the System V message queue and semaphore facilities. Implemented by Daniel Boulet . (cgd) Add an initial implementation of the POSIX 1003.4a Draft 7 thread standard. (proven) fixes to join to fix a seg fault and a mixed up buffer, from Dave Matthews , modded by cgd. (cgd) Add -t (radix) flag to strings to conform to POSIX.2. (jtc) changes for othersrc/mh-6.8 to use a libmh.so. Also fix vmh for new curses. (brezak) add usr.sbin/slstats command from CSLIP-2.6 distr. (brezak) fix uninitialized variable bug that caused quiz to dump core. from Szabolcs Szigeti (cgd) change fnmatch(3) and getopt(3) to be POSIX.2 compliant. (jtc) add POSIX.2's confstr(3). (jtc) do the right thing when lookup()-ing for creation. (cgd) change libg++ to not install "compatibility" header files --- our header files are allready C++ compatible. (jtc) add -m and -n options to swapinfo. (cgd) patch from Ukai Fumitoshi to do the right thing with NFS fsid's and getnewfsid(). (cgd) patches from Thomas Eberhardt to make size(1) and strip(1) more robust, and to strip trailing zeroes in the data segment of an executable. Further modifications to strip(1) by me. (mycroft) fix function prototypes in shm.h to comply with the SVID. (brezak) use fread(), not read(), pending Vern Paxson's decision of what to do in the next version of flex. (cgd) merged printf(1) with latest version from uunet. (jtc) changes to gas to handle the `.type' directive and symbolic expressions in `.size' directives (pk) remove rusers version 1 interface support (/etc/inetd.conf). Redo version2 interface to use hand-crafted xdr routines to make it interoperable with Sun's. Rpcgen cannot generate this. Also add support for the version 3 interface in the rpc.rusersd daemon. Add rusers.x (version 3 only) to librpcsvc. (brezak) shared-library support for the m68k architecture in gcc2, gas and ld; create m68k/ directories for this stuff rather than having separate directories for each m68k-based machine (paulus) bug fixes to ISOFS: memory corruption on RR-CD with name longer than 255 chars fix handling of associated files' names on RR-CDs incomplete directory on nfs-mounted CD hack to make find work on non-RR-CD the last two reported by mycroft (ws) shared-library support for m68k machines in src/lib/csu/m68k and src/lib/libc/arch/m68k (paulus) fixes to ppp stuff: pppstats.c uses ; enhance pppd security (paulus) don't start sendmail if there's no /etc/sendmail.cf (cgd) make rcs deal properly with EINVAL when fsync()'ing a pipe (cgd) tsort shouldn't be so thorough when finding nodes in a cycle. fix provided by Jarle.F.Greipsland@idt.unit.no. (cgd) more fixes to MS-DOS filesystem code, from Jeff Polk. (cgd) fix uninitialized variable in ptrace() system call, from Andy Heffernan . (cgd) fix tsort's behaviour when given a filename argument on the command line, from Frank van der Linden . (cgd) replaced `#ifdef's i386' with `#ifdef's NetBSD' in `libexec/rarpd.c' so it will compile on other BSD ports as well (pk) replaced `#ifdef sparc' with `#ifdef sun' in `usr.sbin/pppd/auth.c', (`sparc' is an architecture, not an environment) (pk) upgraded lex to version 2.4.2. (jtc) change YP /var/yp/binding/ files to match Sun's files (deraadt) add MACHINE_ARCH to the set of variables defined by make(1). (cgd) make libc and libkern use MACHINE_ARCH. (cgd) dump cores as "progname.core" rather than "core.progname" (cgd) add at(1) and atrun(8), written by Thomas Koenig and seriously hacked by me. (cgd) put atrun into root's crontab, to run every 10 minutes. (cgd) actually delete the GNU regex library (cgd) make sure that crond records the commands that it runs. fix supplied by thomas@mathematik.uni-Bremen.de. (cgd) sup instructions updated. see ~ftp/pub/sup/README.sup. (glass) don't have gcc define __386BSD__ on the i386. (cgd) replace all .s files in libraries with .S equivalents. (cgd) fix ifdef 386BSD -> NetBSD in othersrc/{sup,kermit,mh-6.8}. (brezak) upgraded lex to version 2.4.3. (jtc) several bug fixes in libc i386 assembler stubs supplied by thomas@mathematik.uni-Bremen.de. (pk) allow NFS mount parameters to be set by using `mount -u'. (pk) use credentials in physio(). (pk) make setpriority() actually return the correct error. (cgd) add sparc machine dependent sources to libc Makefiles. (pk) fix from Piero Serini to get "id " to get the primary group name correct. (cgd) upgraded lex to version 2.4.4. (jtc) fix the Makefile in ed/test to not demand that . be in PATH. (cgd) fix to stty from Piero Serini so that you can undef tty control characters. (cgd) change interface IFF_LLC* flags to be IFF_LINK*. (cgd) convert SLIP to use IFF_LINK* flags for compression/icmp enable, and update associated utilities. kill 2 SLIP ioctls. (cgd) fix from Brad Parker to curb routed inflation when using MULTICAST. it wasn't properly ignoring the new interface flags. (cgd) speedup getpwnam/getpwuid if YP is enabled (deraadt) fix tty subsystem to echo ^V^? correctly as ^?. From Edward Wang (deraadt) various programs and libraries were not bzero'ing their automatic sockaddr_in's before passing them into the kernel. (deraadt) rusers and rup are now quite SunOS compatible (jtc & deraadt) tcpdump must be linked -ll because of new lex (deraadt) teach the mod* programs to love ansi (deraadt) config generates a 4.4-like pdevinit[] arrays for pseudo-device initialization (deraadt) initialize pseudo-devices by calling their XXattach() routines based on the pdevinuit[] array in ioconf.c rather than the previous #ifdef hell in init_main.c (deraadt) create various XXattach routines so that the pdevinit[] stuff works as it should (deraadt) make both config and config.new deal properly with \" and \n inside a "'d string, ie. option XX="\"something\"". (deraadt) config's yacc grammer no longer redefines `MACHINE' (deraadt) move sunos emulation code code to /sys/compat/sunos, for use by all m68k and sparc ports. significantly cleaned and extended up from Torek's base, with help at implimenting various system calls and ioctl's from mw & pk. (deraadt) don't permit TIOCSCTTY on /dev/tty, or kernel recursion happens. from Lars Fredriksen (deraadt) ypset should only be permitted from a reserved port. from Tor Egge (deraadt) move tcpdump into src/usr.sbin, and cleanup (deraadt) ensure shm's are deleted by an execve() (deraadt) per-process emulation variable keeps track of how signals/syscalls should be handled. this is set/reset by execve, based on what the cpu_exec* functions ask for (deraadt) sparc must flush register windows before doing a vm_deallocate in execve(), or the registers might get dumped on someone else's stack... (deraadt) keep execve arg buffer around for later use (deraadt & cgd) STACKGAP: a small optional buffer located near the top of the stack where binary compatibility functions can copyout/copyin argument buffers that are copyin/copyout'd at low levels by various system calls (deraadt) support OMAGIC/NMAGIC a.out's (deraadt & mycroft) in execve(), don't assume VM_MIN_ADDRESS is 0. (deraadt) in syscalls.master, make syscall#0 "syscall", like in 4.4, and thus cause SYS_syscall to be defined (deraadt) pull COMPAT_SUNOS code for sparc/m68k machines down from magnum branch. Original code by Chris Torek , Much improved by Markus Wild , Paul Kranenburg and myself. (deraadt) tunnel driver cleanup done by Brad Parker and myself (deraadt) upgraded lex to version 2.4.5. (jtc) tty subsystem VMIN/VTIME implimentation from Marc Teitelbaum (deraadt) multicast patches added. Original code by Steve Mccanne and LBL. Netbsd patches from Chris Maeda (hpeyerl) add files I'd forgotten earlier. reminders from Brad Parker and Havard Eidnes . (hpeyerl) patch to if_ed.c to make multicasts work with bpf. . (hpeyerl) add 3c509 (Etherlink-III) driver. (hpeyerl) patch ping for multicast. Original by Steve Mccanne and LBL (hpeyerl) sunos-like ethers(3) functions and man pages in libc, from Roland McGrath . YP code fixed by myself. (deraadt) LBL rarpd cleanup: moved from libexec to usr.sbin. SIOCGIFCONF cleanup by Roland McGrath (deraadt) in /etc/rc, startup the rpc services in the proper order (deraadt) fix from Daniel Harris makes tty.c untimeout() a VTIME timeout(). Saves us from a panic, which is always nice. (deraadt) plug a security hole in "crontab -r". fix from Todd C. Miller . (cgd) add regress tests for sys/arch/i386/ldt. (brezak) add vnode device from mike@cs.utah.edu. See vnconfig.8. (brezak) replace man with new version from bostic@vangogh. (cgd) add the include file, from bostic@vangogh. (cgd) fixes to kermit for UUCP file locking and high speeds from Mike Long . (brezak) add .OBJDIR variable to make for readable Makefiles. (pk) fix to 'netstat -w' from James Jegers . (cgd) update to latest fgetline() from berkeley, and attendent changes. (cgd) add -L options to rshd, which logs all incoming 'rsh' commands. (cgd) add new filesystems from Jan-Simon Pendry (cgd) add new flag, 'union', to mount options. (cgd) correct tab expansion code in tty.c (when encountering a full output queue) (deraadt) changed find(1) so it doesn't try to interpret unknown primaries as file names. Not only is this behavior required for POSIX.2, it avoids a situation where a destructive primrary (like -exec rm {} ;) is applied to files it is not intended to do so. (jtc) merged in changes from 4.4BSD version to our find(1). (jtc) fixed wc -c when reading from stdin. (andrew) changed to in othersrc/sup. (brezak) changed /dev name in vnconfig.8 man page. (brezak) changed ranlib(1) to use temporary directory specified by TMPDIR, as is done with ar(1). fix, with slight changes from me, by Ed Hudson . (jtc) integrated strtoq(3) & strtouq(3) from bsd-sources on uunet. (jtc) rename fgetline() to fgetln(). (cgd) fix chmod so that "chmod o= foo" works right. (cgd) fix from Fen Labalme to calendar, and more from myself. (cgd) installed C++ shared library run-time support (/usr/lib/c++rt0.o), every (GNU g++) C++ shared library should be linked with it to get their global contructors called (pk) upgraded cron/crontab to vixie cron 3.0. (jtc) upgraded lex to version 2.4.6. (jtc) reorganize execve() sub-functons, and streamline them. (cgd) reorganize ptrace code, so that it's more easily shareable. (cgd) started collecting common m68k code. (cgd) have /usr/src/include/Makefile make a symlink/dir in /usr/include for ${MACHINE_ARCH}. (cgd) added code to 'config' to pull in ${MACHINE_ARCH}'s 'files' file and to create a symlink for MACHINE_ARCH. (cgd) add similar code to 'config.new'. (cgd) put SHM_LOCK and SHM_UNLOCK in .../sys/shm.h, where they belong, and modify sysv_shm.c so that they're usable. (cgd) fix sup Makefile. (brezak) implement PT_ATTACH and PT_DETACH. (cgd) add LBL soundblaster and /dev/audio drivers, as ported by brad@fcr.com. (cgd) add rbootd for booting hp workstations diskless. From Mike Hibler . (brezak) i386: check user's selectors in sigreturn(). (brezak) add IP mcast and IGMP support to netstat from LBL via cmaeda@cs.washington.edu. (brezak) add mrouted from LBL via cmaeda@cs.washington.edu. (brezak) sendmail is now configured to be YP capable, and MIME-style MAILER-DAEMON messages disabled on suggestion from sendmail author. (glass) MAXBSIZE is now 16k. (cgd) plug an `arp -f' security hole (deraadt) amd now works correctly with YP, and will be started by /etc/rc if /etc/netstat says so. (deraadt) portmap, yp, mountd, and nfs mounts are now started in /etc/rc in a better order (deraadt) fixup various gunk in passwd including YP (deraadt) fix more tty.c tab problems relating to ring buffers (deraadt) rpc.bootparamd by Klas Heggemann (deraadt) make bpf's BIO* ioctl's print nicely. sent in by (deraadt) bootparamd improvements by and me (deraadt) bpf write's now allocate a packet header for the mbuf (deraadt) i386: cleanup ldt regress test. (brezak) update disklabel.h with new filesystem types from 4.4 . (brezak) patch for ip-multicast bugs from mccanne@ee.lbl.gov (Steven McCanne). (brezak) hp300: fix uninitialized variable in swapgeneric.c. (brezak) fix "off by one" bug in group_from_gid() -- messed up "ls -l" output with eight character group names. (jtc) fix rpcgen so that generated files are written to the current working directory (instead of the same directory as the source files) and that #includes in those files do not contain the path to the source file. (jtc) clean up libterm substantially (cgd) incorporage fix from Christos Zoulas which makes tput do the right thing with termcap string arguments. (cgd) hp300: add basic disklabel support to sd.c. (brezak) hp300: set text start address at 0 for kernel. (brezak) bring in CMU/4.4 standalone library. (brezak) hp300: standalone bootstrap for use with CMU libsa. This also includes support for loading the symbol table. (brezak) hp300: add support to locore.s for dealing with DDB symbols from bootstrap. This requires a new bootstrap. (brezak) hp300: fix silly type for rd disks: NSD --> NRD. (brezak) fix rarpd byte order bug (deraadt) pmax: Terry Friedrichsen is helping with the pmax port. numberous fixes from him and myself (deraadt) initialize network protocols without lowering the spl level on leveled-spl systems (deraadt) move my SUNOS_COMPAT changes down from the magnum branch (deraadt) i386: fix a number of if_ep.c bugs (deraadt) change ether_input() and ether_output() to take a network-byte-order ether_type field in the ethernet header. Note: All network device drivers have to be fixed. (deraadt) delete RMP code in kernel, we have a bpf-based solution now (deraadt) new bpf.c from Steve Mccanne, with our own hacks. (deraadt) make /bin/sh . (source) command search $PATH as it should. from dkionka@Cadence.COM (Daniel P. Kionka), fixed by me (deraadt) from & mail now will use $MAIL as default mailbox. from Christos Zoulas (deraadt) i386: correct printing of disk sizes for sd drives. from (deraadt) patch to ttyname() from Steven M. Schultz to kill a memory leak. (cgd) reorganize libutil; move most of its contents into libc. create a libkvm to handle kvm stuff. (it'll be needed in the future for the LBL kvm code.) (cgd) fix getloadavg() so it no longer uses the kvm routines. add a new getkerninfo() subroutine to facilitate this. (cgd) remove dbsym. (cgd) upgrade gdb to version 4.11, support for i386, m68k and sparc. Sparc port needs more work on reading core files; m68k port needs testing (pk) fix a panic in ip multicast code. (brezak) sendmail upgraded to version 8.6.5. (glass) update linker sources to convey gcc's .type directives into shared objects. (pk) update sed with a new version from Diomidis Spinellis (cgd) update the 'leapseconds' file, from Arthur David Olson (cgd) update tsort with a version from Christos Zoulas, and convert it to use new err() and warn() functions. (cgd) add pidentd (written by Peter Eriksson ) as /usr/libexec/identd. (cgd) fix to uname(1) from Matthieu Herrb to handle multiple arguments. (cgd) fix sigismember() in libc (proven) add more stuff for the implementation of the POSIX 1003.4a Draft 7 thread standard. This is version 1.18 from my tree. (proven) fix bug that prevented unmounting of read-only MS-DOS fs's. (cgd) got rid of some cruft from 'othersrc' -- an old version of tcsh, and ttcp. also, cleaned up the Makefile. (cgd) fixed "cat /kern -> panic" bug (cgd) remove bogus 'install -d's from system makefiles and from other places in /usr/src. (cgd) add quot utility as /usr/sbin/quot (ws) integrated new math library based on Sun's FDLIBM 5.1 (jtc) fixed find(1)'s -nouser and -nogroup options. (andrew) update awk to gawk 2.15.4. (jtc) add da30 port (yet another m68k machine). (paulus) change hardclock() to take a "clockframe *" instead of a "clockframe". simplifies things for some ports (deraadt) very strange hack in vnode.h to ensure that inodes are double aligned in struct vnode. Various new processors, including sparc, require structures to be double-word aligned (deraadt) panic() is now a varargs function (deraadt) sparc: sparc port works! Ported from 4.4 to NetBSD by myself. Much thanks to Chris Torek for the original code from 4.4, and Paul Kranenburg for helping with the userland code. (deraadt) in tty.c, undo a flow control bug introduced months ago. (deraadt) modload & friends mistakenly were compiled with a -DKERNEL. Please don't do this. (deraadt) i386: MAKEDEV no longer creates symbolic links in /dev. (deraadt) i386: more if_ep.c bugs fixed (deraadt) sparc: don't cache dma memory. fix from Chris Torek (deraadt) sparc: NetBSD/sparc is capable of compiling it's own kernel, so the support for cross-compiling the kernel goes away (deraadt) sparc: proper /dev/MAKEDEV. derived from hp300. (pk & deraadt) amiga: proper /dev/MAKEDEV. cleaned up from original by Markus and Ty Sarna apparently (deraadt) split /etc/ttys per architecture, mostly because /dev/console is done in different ways (deraadt) sparc: use normally ordered pty major numbers (deraadt) tty.c's VMIN/VTIME code was missing an untimeout(). fix from freebsd. (deraadt) support for the "lookup" keyword in resolv.conf. See the man page for more details (deraadt) sun3: sun3 port boots and runs init, spawns a shell and will even run ls upon request. needs drivers and some stability work.. (glass) update telnet and telnetd from latest sources on ftp.cray.com. (cgd) slightly disambiguate setuid() man page. (cgd) fix the way apropos et al. deal with underscores in names. (cgd) fix reset's tabset file problems, based on a fix sent in by Frank van der Linden (cgd) fix bsd.dep.make to clean .depend files only only on cleandir. Pointed out by michaelv@iastate.edu. (cgd) add 3Com 3c501 driver by Matt Kimmel . (hpeyerl) when restoring from multi-volume dump, check the correct tape header volume number, from thomas@mathematik.uni-Bremen.de. (cgd) fix to 'primes' to deal properly with large numbers, from Arne Juul . (cgd) fix rarpd to put necessary fields in network byte order, from Christos Zoulas . (cgd) fix sed to do the right thing with empty regex matches. (cgd) fix from Christos Zoulas to keep tftpd from dumping core when invoked with no arguments. (cgd) fix from Christos Zoulas to keep vi from trying to use its controlling tty when it doesn't really have one. (cgd) mods to msdos filesystem code so it works on big-endian machines. (paulus) fix i386 disklabel routines so that when creating a new label, they fill in the info for the appropriate partition. (cgd) various fixes and improvements to make(1) supplied by Christos Zoulas . (cgd) sparc: support lkm/tun/vn, SYSVSHM, SYSVMSG (deraadt) fix serious YP bug in gethostbyname() functions (deraadt) ar had a file descriptor leak, fix from Robert Crowe (deraadt) i386: integrate new Bustek driver which works on many more models of the card. Fixed by Michael VanLoon (deraadt) sparc: various fixes and changes torek sent me ages ago (deraadt) fairly simple SUNOS_COMPAT sysconf() function (deraadt) netstat core dump fix from Chuck Cranor (deraadt) fix from Arne Juul for bug where extra null chars would get appended to mailbox by mail(1). (cgd) fix to keep the getcap(3) routines from accessing freed memory. from Thomas Eberhardt (cgd) fix for symlink-related security hole in lpr. From comp.security.unix. (cgd) update to latest version of rdist(1) from UCB (via uunet). No new security fixes, but general cleanup. (cgd) MAKEDEV cleanup for hp300 and sparc (deraadt) fix small YP bug, and bogus initialization of gr_mem in getgrent() and friends. (deraadt) lpd shouldn't clobber the page width specified in the printcap file. fix from John F. Woods . (cgd) pr shouldn't croak if -w specified without multi-column mode. fix from John F. Woods . (cgd) fix two bugs in at(1)'s date/time parsing. One of the fixes was from Javier Martin Rueda . (cgd) gprof: added ns32k support files (phil) converted getty to use the getcap(3) routines. (cgd) hp300: fix standalone disk and tape drivers to allow units > 0. (brezak) make FFS optional. (ws) integrated diff, diff3, & sdiff manpages by Larry Jones . (jtc) gcc2: added arch/ns32k directory with files (phil) sendmail upgraded to version 8.6.7. This fixes a major security hole in v8. Our distribution has also been cleaned up. (glass) sendmail upgraded to version 8.6.8. This fixes a security hole in v8. (glass) Lets not make this three in a row... fix from mark@aggregate.com (Mark P. Gooderum) to convince diff -l to invoke 'pr' correctly. (cgd) in tput, don't assume that only valid thing starting with 'l' is longname. Fix from Eric J. Haug (cgd) various manual page fixes from Luke Mewburn and myself. (cgd) ipcrm rewritten (glass) fix a couple of typos in getty's headers. from Andras Olah . (cgd) fixes from Thomas Eberhardt to get 'swapinfo' to do the right thing with blocksizes. (cgd) convince lastcomm to use stdio rather than it's own (broken) buffering scheme. (cgd) a few routing ref-count fixes. (cgd) [i386] allow mmap()ing of /dev/mem and /dev/kmem, the former for people with buff video boards, the latter for fun. (cgd) mmap() defaults to MAP_FILE as apposed to failing when neither MAP_FILE or MAP_ANON flags are present. (chopps) add a 'sa' command, written by me. (cgd) change uid_t and gid_t to 32-bit quantities, and off_t to a 64-bit quantity. Lots of associated changes. (cgd) __initdb() should only warn about spwd.db errors once, fix from (deraadt) i386: attempt to get the cursor correct on MDA/Hercules cards. If this still doesn't work, use FAT_CURSOR in your kernel config file. (deraadt) repair host map alias in ypmatch (deraadt) various sparc fixes (deraadt) take disklib.c out of libkern, put it back in the kernel proper (deraadt) fix sh/mkinit.c to not generate garbage in init.c (deraadt) fix hang in rcmd.c if either socket was >= 32 (deraadt) reorganize mmap() flags, and squish MAP_FILE. (cgd) upgrade 'vi' to the latest version of nvi (1.11) by Keith Bostic, available from ftp.cs.berkeley.edu. (cgd) add an 'ac' command, by Simon J. Gerraty and myself. (cgd) add 'ttyflags' to set device-specific tty flags. (cgd) i386: add -r flag to boot block, to select RB_DFLTROOT. (cgd) lots of man page fixes from Mark Weaver. (cgd) fix tn3270's idea of where map3270 lives, and fix the map3270 defaults to work with vt200's and xterms. from Mark Weaver. (cgd) change the way syscalls with quad arguments are implemented. (cgd) change stdio's fpos_t to an off_t. (cgd) added hilinfo and grfinfo, from Utah, for the hp300. (cgd) modify ftpd to support non-anonymous chrooted users. patches from Jarle.F.Greipsland@idt.unit.no. (cgd) updated our set*id() syscalls to match the POSIX security model, with _POSIX_SAVED_IDS. fixed a few bugs, in the process, and obsoleted (i.e. moved into libc/compat-43) several functions and (former) syscalls. (cgd) add a MNT_USER flag, for mounts made by users. (cgd) modify mount_msdos so that the uid, gid, and permissions masks for files in the FS are inherited from the mounted-on dir, and are user-settable. Also, allow users to mount MS-DOS file systems. (cgd) ns32k support for ld (thanks to Matthias Pfaller). (pk) fix various doc bugs in tunefs and newfs, and severely clean tunefs. (cgd) kill MOUNT_AFS vfs table slot. (cgd) add information about "np" to gettytab(5). (cgd) fix procfs to be smarter about names found by lookup, also, don't display a 'regs' or 'fpregs' file for system processes. (cgd) fix console hanging problem once and for all (hopefully). (cgd) bump NetBSD0_9 symbol in to 2 (i.e. 0.9a). (cgd) fix stty's notion of where MDMBUF resides. (cgd) i386: 3c509 driver now works on the 3c579 EISA card too (deraadt) sparc: keyboard repeat code, cleanup sunos cgthree compatibility, repair MAKEDEV (deraadt) support "fsck /dir" and "fsck /dev/sd0a", plus fix a coredump bug, by (deraadt) repair bogus roff macro use in termcap(5) (deraadt) repair paths in various utilities, report by (deraadt) new optimized and enhanced BIND resolver code by me (some changes based on 4.9.2 by Vixie). Note: the `search' keyword in resolv.conf is now quite important! (deraadt) strftime bugfix for "%R" from (deraadt) TIOCGWINSZ support in rain & snake (deraadt) sparc: support 64 bit system calls (deraadt) add a setproctitle() call to libc, to frob the process title. (cgd) change mount()'s type to be a string. backward compatible with COMPAT_09. Various associated changes, including better VFS LKM support. (cgd) convert the vm system to use (cgd) add a 'mb' flag to gettytab, to specify MDMBUF. (cgd) fix more(1) to use termios rather than sgtty (andrew) kill symorder(1); kvm_mkdb makes it obsolete. (cgd) fix gethostname() to set h_errno for non-BIND transactions too (deraadt) fix m_adj() in uipc_mbuf.c to adjust m_pkthdr.len in the correct mbuf (deraadt) implement better locking in mbuf.h, and fix cltom() macro (deraadt) i386: 3c509 driver support for promiscious and multicast, and a few other misc fixes (deraadt) sparc: make swap work, make keyboard repeat work for ^@ (deraadt) fix talk(1) to not trounce it arguments (deraadt) nfs diskless support revised. uses bootp+rpc to gather appropriate parameters. see diskless(8). (glass) bootpd(8) moved from othersrc to libexec/bootpd. bootptab added to etc. (glass) amiga: many fd (floppy) fixes from Michael Hitch makes it work (chopps) amiga: changed internal serial port driver to use much smaller buffers (16k -> 256 and 24k ->3k) (chopps) amiga: added 2 non-copyright fonts for console- default to using them and not a possibly non-existant (c) user supplied one (chopps) sendmail upgraded to version 8.6.9. (glass) allow TIOCSETD on ptys. (cgd) obsolete quad and u_quad types. (cgd) convert inodes, etc., to use quad_t and u_quad_t. (cgd) convert vnode.h, mount.h, buf.h and associated files to use rather than their own queues. (cgd) added POSIX.2 compliant getconf utility. (jtc) added ns32k support to gdb. (phil) getty(8) now uses termios. (pk) add pig(6) to the games suite. (cgd) add getgrouplist() function to libc. (cgd) update id, groups, and whoami. (cgd) update mrouted to VJ's 2.2 version. (brezak) add network standalone support to sys/lib/libsa for netboot. (brezak) amiga: moved to config.new many devices modified and names fixed. (chopps) amiga: now uses system standard scsi code (/sys/scsi) (chopps) amiga: disklabel support re-written to be more functional also added a machine/disklabel.h (chopps) amiga: added delay() an accurate useq delay uses last two free 16 bit countdown timers (chopps) amiga: added SYSCALL_DEBUG support (chopps) incorporate new version of lpd. (cgd) incorporate new version of libc's rcmd() and related functions. (cgd) add new pstat(8) program, which obsoletes swapinfo. (cgd) roll in a new sysv shared-memory module. (hpeyerl) introduce new core dump format. (pk) kernel debugging support in gdb. (pk) pc532: added the boot from ufs program. (phil) adosfs added (ro version) along with mount_ados (chopps) amiga: added new floppy, much cleaner (chopps) update rlogind, rshd, and telnetd to 4.4-Lite versions. (cgd) make fixes from Christos Zoulas which eliminate memory leaks and improper memory accesses (jtc) sh fix from Christos Zoulas which elimintes core dump when compiled w/out history support (for install floppies). (jtc) ip multicast mrouting fixes. Bring in previous version of mrouting code. Apply bug fix for igmp.c cksum errors from Steve McCanne. Fix mrouted (and friends) to fill in ip hdr fields that 4.4 no longer does for you. (brezak) updated chown/chgrp to 4.4-Lite versions. (cgd) replaced ipcs with version written by Thorsten Lockert . (cgd) updated src/share/doc tree to work like 4.4-Lite's. (cgd) added bm(3) functions from Keith Bostic. (cgd) fixed share/mk files to be not so agressive w/_SUBDIRUSE. (cgd) replaced test with version from pdksh, with enhancements and cleanup by me. (jtc) rename cd.c to ccd.c and update to 4.4Lite version in /sys/dev. (concatenated disk driver). (hpeyerl) i386: fix disklabel clobbering MBR on disks shared with DOS. (brezak) add kerberos5 (k5login.c) authentication for login. (brezak) build mount_nfs with kerberos iff kerberos environment. (brezak) build sys/lib/libsa with the rest of the kernel/sa libs. (brezak) add conditional kerberosIV and kerberos5 support to passwd. (brezak) vax: initial uploads of VAX architecture code. (ragge) [i386] boot block fixed to run on 386s (mycroft) [i386] disklabel no longer munges device number (mycroft) [i386] autoconf detects SCSI card IRQ/DRQ for aha/ahb/bt/uha (mycroft) update nvi to version 1.34 from Berkeley, DB to version 1.79, and curses to the latest version. (cgd) make sys/lib/libsa build. (brezak) hp300: use installboot.sh in stand - no more installboot.c. (brezak) sparc bootblocks; integration with disklabel needed (pk) rtld: issue warning if required minor revision can't be found (pk) hp300: do echo in tgets() instead of prf.c like libsa:gets(). (brezak) update 'ftp' to 4.4-Lite version, and add support for the 'PASV' command, supplied by David Carrel . (cgd) make src/distrib part of the tree, for distribution tools. (cgd) add 'crunch' by James da Silva, in src/distrib/crunch. (cgd) add distribution set lists in src/distrib/sets. (cgd) add i386 floppy build tools to src/distrib/i386. (cgd) fix building passwd with kerberos4 support. From Michael Graff . (brezak) make zcat be the gzip(1) version, so that it can uncompress .gz's (cgd) fixed sigvec(3) cross-refs in libc, as suggested by Lennart Augustsson (cgd)