OpenBSD src changes summary for 2015-08-30 to 2015-09-06 inclusive ==================================================================
bin/ksh distrib/amd64 distrib/notes distrib/sets distrib/special etc/etc.amd64/Makefile.inc gnu/usr.bin/binutils-2.17 include/db.h include/err.h include/stdbool.h lib/csu lib/libc lib/libkvm lib/libssl libexec/ftpd libexec/ld.so regress/lib regress/sbin regress/usr.bin regress/usr.sbin sbin/dhclient sbin/fdisk sbin/fsck_ext2fs sbin/fsck_ffs sbin/pfctl sbin/ping sbin/ping6 share/man share/misc share/mk sys/arch/alpha/alpha sys/arch/alpha/dev sys/arch/alpha/eisa sys/arch/amd64/amd64 sys/arch/amd64/conf sys/arch/amd64/include sys/arch/amd64/stand sys/arch/amd64/stand/boot sys/arch/amd64/stand/cdboot sys/arch/amd64/stand/efi sys/arch/amd64/stand/efiboot sys/arch/amd64/stand/libsa sys/arch/amd64/stand/pxeboot sys/arch/arm/include sys/arch/hppa/hppa sys/arch/hppa64/hppa64 sys/arch/i386/i386 sys/arch/i386/include sys/arch/i386/isa sys/arch/i386/pci sys/arch/i386/stand/boot sys/arch/i386/stand/cdboot sys/arch/i386/stand/libsa sys/arch/i386/stand/pxeboot sys/arch/macppc/conf sys/arch/macppc/macppc sys/arch/macppc/pci sys/arch/mips64/mips64 sys/arch/octeon/dev sys/arch/powerpc/include sys/arch/powerpc/powerpc sys/arch/sgi/hpc sys/arch/sgi/sgi sys/arch/sh/sh sys/arch/solbourne/solbourne sys/arch/sparc/conf sys/arch/sparc/dev sys/arch/sparc/include sys/arch/sparc64/include sys/arch/sparc64/sparc64 sys/arch/vax/include sys/compat/linux sys/conf sys/crypto sys/ddb sys/dev sys/dev/acpi sys/dev/ic sys/dev/pci sys/dev/pckbc sys/dev/rasops sys/dev/usb sys/dev/wscons sys/isofs/udf sys/kern sys/lib/libsa sys/miscfs/fifofs sys/miscfs/fuse sys/net sys/netinet sys/netinet6 sys/netmpls sys/nfs sys/stand sys/sys sys/uvm usr.bin/awk usr.bin/bc usr.bin/calendar usr.bin/compress usr.bin/cvs usr.bin/diff3 usr.bin/doas usr.bin/mandoc usr.bin/nc usr.bin/netstat usr.bin/rcs usr.bin/sndiod usr.bin/ssh usr.bin/tmux usr.bin/tsort usr.bin/units usr.bin/w usr.sbin/acpidump usr.sbin/bgpd usr.sbin/portmap usr.sbin/rpc.lockd usr.sbin/smtpd usr.sbin/syslogd usr.sbin/tcpdump usr.sbin/traceroute usr.sbin/unbound usr.sbin/wsfontload == bin =============================================================== 01/13 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/bin ksh ~ c_ksh.c ~ edit.c ~ emacs.c ~ expand.h ~ history.c ~ mail.c ~ syn.c ~ table.c ~ tree.c ~ var.c ~ vi.c > remove casts and null checks before free. from Michael McConville > ok deraadt (tedu@) ~ main.c > no need to check for null argv anymore. from Martijn van Duren > ok deraadt (tedu@) ~ path.c > Add brackets to clarify assignments that are the result of a test operator. > ok deraadt@ looks correct millert@ jung@ (jsg@) == distrib =========================================================== 02/13 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/distrib amd64 ~ iso/Makefile + iso/template > create uefi/msdos partition using fdisk -b, then place uefi bootloader > into there. inspired by similar changes kettenis is making to the > smaller miniroot. (deraadt@) ~ common/Makefile.inc ~ ramdisk_cd/Makefile + ramdisk_cd/template > Use the new fdisk -b functionality to put an EFI system partition on the > minirootXX.fs image and put the new UEFI bootloader on there. > Stop relying on /etc/disktab for the partition layout. Instead use a > suitable > template and let disklabel(8) allocate all remaining free space to the 'a' > partition. > ok deraadt@ (kettenis@) notes ~ octeon/install > Tell user to Put quotes around ${bootcmd} when saving it. Avoids > stopping at the first ';' (command separator). ok miod@ (matthieu@) ~ alpha/contents > minimal words about the miniroot. My god, the notes have gotten so long > and verbose, who would ever spend their time reading them. (deraadt@) sets ~ lists/base/md.amd64 ~ lists/comp/md.amd64 > sync (deraadt@) ~ lists/man/mi > sync (deraadt@) ~ lists/man/mi > sync (deraadt@) ~ lists/comp/mi ~ lists/man/mi > sync (deraadt@) ~ lists/base/md.amd64 > sync (deraadt@) special ~ libstubs/Makefile > add -I${LIBCSRCDIR}/hidden to handle _glibc_ churn (deraadt@) ~ libstubs/db.c > Add DEB_WEAK(dbopen) such that we provide dbopen as well as _libc_dbopen. > ok deraadt@ (kettenis@) == etc =============================================================== 03/13 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/etc etc.amd64/Makefile.inc ~ etc.amd64/Makefile.inc > ship BOOTX64.EFI BOOTX86.EFI (deraadt@) ~ etc.amd64/Makefile.inc > copy from mdec to reldir (deraadt@) == gnu =============================================================== 04/13 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/gnu usr.bin/binutils-2.17 ~ bfd/elfxx-mips.c > The code that guesstimates the number of local GOT entries assumes that > there > are only two loadable segments. With W^X on OpenBSD, we will typically > create more than two. Most shared libraries and binaries end up with > five of them. One of them is the GOT itself so we don't need to take that > one into account. So raise the number of spare local GOT entries from 5 to > 7. > This fixes building liblto_plugin.so in the gcc 4.9 port. > ok miod@, jasper@, pascal@ (kettenis@) == include =========================================================== 05/13 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/include db.h ~ db.h > Use new framework for wrapping dbopen() > Move internal declarations from <db.h> to libc's hidden/db.h > ok kettenis@ (guenther@) err.h ~ err.h > Add framework for resolving (pun intended) libc namespace issues, using > wrapper .h files and asm labels to let internal calls resolve directly and > not be overridable or use the PLT. Then, apply that framework to most of > the functions in stdio.h, string.h, err.h, and wchar.h. Delete the > should-have-been-hidden-all-along _v?(err|warn)[cx]? symbols while here. > tests clean on i386, amd64, sparc64, powerpc, and mips64 > naming feedback from kettenis@ and millert@ > ok kettenis@ (guenther@) stdbool.h ~ stdbool.h > These days pcc defines __GNUC__ and we don't support gcc2. Also needed > for upcoming CompCert port. > Final version of the diff is from kettenis@ with input from jsg@ and tedu@. > ok kettenis@, jsg@, "I agree" millert@ (daniel@) == lib =============================================================== 06/13 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/lib csu ~ crt0.c ~ alpha/md_init.h ~ amd64/md_init.h ~ arm/md_init.h ~ hppa/md_init.h ~ hppa64/md_init.h ~ i386/md_init.h ~ m88k/md_init.h ~ mips64/md_init.h ~ powerpc/md_init.h ~ sh/md_init.h ~ sparc/md_init.h ~ sparc64/md_init.h ~ vax/md_init.h > In static binaries, invoke kbind() once to disable it. > With much assistance from miod@ > ok deraadt@@ (guenther@) libc ~ net/rcmd.c > Use nanosleep instead of sleep to avoid the extra layer and simplify later > symbol hiding > ok w/tweak deraadt@ (guenther@) ~ arch/hppa/SYS.h ~ arch/hppa/string/memmove.S > Add ALTEXIT_{STRONG,WEAK} to support wrapping of functions using ALTENTRY. > Fix memmove with that > ok deraadt@ (guenther@) ~ arch/arm/SYS.h > use #function rather than @function on arm > ok guenther (deraadt@) ~ arch/hppa/SYS.h ~ arch/hppa64/SYS.h > Also add ALTEXIT_{STRONG,WEAK} to hppa64, copied from hppa. Document'em > too > ok deraadt@ (guenther@) ~ include/namespace.h ~ Symbols.list ~ Makefile.inc ~ arch/alpha/SYS.h ~ arch/alpha/string/bcopy.S ~ arch/alpha/string/bzero.S ~ arch/alpha/string/ffs.S ~ arch/alpha/string/memcpy.S ~ arch/alpha/string/memmove.S ~ arch/amd64/SYS.h ~ arch/amd64/string/bcmp.S ~ arch/amd64/string/bzero.S ~ arch/amd64/string/ffs.S ~ arch/amd64/string/memchr.S ~ arch/amd64/string/memmove.S ~ arch/amd64/string/memset.S ~ arch/amd64/string/strchr.S ~ arch/amd64/string/strcmp.S ~ arch/amd64/string/strlen.S ~ arch/amd64/string/strrchr.S ~ arch/arm/SYS.h ~ arch/arm/string/_memcpy.S ~ arch/arm/string/bcopy.S ~ arch/arm/string/bzero.S ~ arch/arm/string/ffs.S ~ arch/arm/string/memcmp.S ~ arch/arm/string/memcpy.S ~ arch/arm/string/memmove.S ~ arch/arm/string/memset.S ~ arch/arm/string/strcmp.S ~ arch/arm/string/strncmp.S ~ arch/hppa/SYS.h ~ arch/hppa/string/memmove.S ~ arch/hppa64/SYS.h ~ arch/i386/SYS.h ~ arch/i386/string/bcmp.S ~ arch/i386/string/bzero.S ~ arch/i386/string/ffs.S ~ arch/i386/string/memchr.S ~ arch/i386/string/memcmp.S ~ arch/i386/string/memmove.S ~ arch/i386/string/memset.S ~ arch/i386/string/strcat.S ~ arch/i386/string/strchr.S ~ arch/i386/string/strcmp.S ~ arch/i386/string/strcpy.S ~ arch/i386/string/strncmp.S ~ arch/i386/string/strrchr.S ~ arch/m88k/SYS.h ~ arch/mips64/SYS.h ~ arch/mips64/string/bcmp.S ~ arch/mips64/string/bcopy.S ~ arch/mips64/string/bzero.S ~ arch/mips64/string/ffs.S ~ arch/mips64/string/strchr.S ~ arch/mips64/string/strcmp.S ~ arch/mips64/string/strlen.S ~ arch/mips64/string/strrchr.S ~ arch/powerpc/SYS.h ~ arch/powerpc/string/memmove.S ~ arch/sh/SYS.h ~ arch/sh/string/bcopy.S ~ arch/sh/string/ffs.S ~ arch/sh/string/memcpy.S ~ arch/sh/string/memmove.S ~ arch/sh/string/memset.S ~ arch/sparc/DEFS.h ~ arch/sparc/SYS.h ~ arch/sparc/string/bzero.S ~ arch/sparc/string/ffs.S ~ arch/sparc/string/strlen.S ~ arch/sparc64/SYS.h ~ arch/sparc64/string/ffs.S ~ arch/sparc64/string/strlen.S ~ arch/vax/DEFS.h ~ arch/vax/SYS.h ~ arch/vax/string/bcmp.S ~ arch/vax/string/bcopy.S ~ arch/vax/string/bzero.S ~ arch/vax/string/ffs.S ~ arch/vax/string/memcmp.S ~ arch/vax/string/memcpy.S ~ arch/vax/string/memmove.S ~ arch/vax/string/memset.S ~ arch/vax/string/strchr.S ~ gen/auth_subr.c ~ gen/authenticate.c ~ gen/ctermid.c ~ gen/err.c ~ gen/errc.c ~ gen/errx.c ~ gen/getbsize.c ~ gen/getnetgrent.c ~ gen/popen.c ~ gen/psignal.c ~ gen/shm_open.c ~ gen/verr.c ~ gen/verrc.c ~ gen/verrx.c ~ gen/vwarn.c ~ gen/vwarnc.c ~ gen/vwarnx.c ~ gen/warn.c ~ gen/warnc.c ~ gen/warnx.c ~ stdio/asprintf.c ~ stdio/clrerr.c ~ stdio/dprintf.c ~ stdio/fclose.c ~ stdio/fdopen.c ~ stdio/feof.c ~ stdio/ferror.c ~ stdio/fflush.c ~ stdio/fgetc.c ~ stdio/fgetln.c ~ stdio/fgetpos.c ~ stdio/fgets.c ~ stdio/fgetwc.c ~ stdio/fgetws.c ~ stdio/fileno.c ~ stdio/fmemopen.c ~ stdio/fopen.c ~ stdio/fprintf.c ~ stdio/fpurge.c ~ stdio/fputc.c ~ stdio/fputs.c ~ stdio/fputwc.c ~ stdio/fputws.c ~ stdio/fread.c ~ stdio/freopen.c ~ stdio/fscanf.c ~ stdio/fseek.c ~ stdio/fsetpos.c ~ stdio/ftell.c ~ stdio/funopen.c ~ stdio/fwide.c ~ stdio/fwprintf.c ~ stdio/fwrite.c ~ stdio/fwscanf.c ~ stdio/getc.c ~ stdio/getchar.c ~ stdio/getdelim.c ~ stdio/getline.c ~ stdio/getw.c ~ stdio/getwc.c ~ stdio/getwchar.c ~ stdio/mktemp.c ~ stdio/open_memstream.c ~ stdio/open_wmemstream.c ~ stdio/perror.c ~ stdio/printf.c ~ stdio/putc.c ~ stdio/putchar.c ~ stdio/puts.c ~ stdio/putw.c ~ stdio/putwc.c ~ stdio/putwchar.c ~ stdio/remove.c ~ stdio/rewind.c ~ stdio/rget.c ~ stdio/scanf.c ~ stdio/setbuf.c ~ stdio/setbuffer.c ~ stdio/setvbuf.c ~ stdio/snprintf.c ~ stdio/sscanf.c ~ stdio/swprintf.c ~ stdio/swscanf.c ~ stdio/tempnam.c ~ stdio/tmpfile.c ~ stdio/tmpnam.c ~ stdio/ungetc.c ~ stdio/ungetwc.c ~ stdio/vasprintf.c ~ stdio/vdprintf.c ~ stdio/vfprintf.c ~ stdio/vfscanf.c ~ stdio/vfwprintf.c ~ stdio/vfwscanf.c ~ stdio/vprintf.c ~ stdio/vscanf.c ~ stdio/vsnprintf.c ~ stdio/vsscanf.c ~ stdio/vswprintf.c ~ stdio/vswscanf.c ~ stdio/vwprintf.c ~ stdio/vwscanf.c ~ stdio/wbuf.c ~ stdio/wprintf.c ~ stdio/wscanf.c ~ string/bcmp.c ~ string/bcopy.c ~ string/bzero.c ~ string/explicit_bzero.c ~ string/ffs.c ~ string/memccpy.c ~ string/memchr.c ~ string/memcmp.c ~ string/memcpy.c ~ string/memmem.c ~ string/memmove.c ~ string/memrchr.c ~ string/memset.c ~ string/stpncpy.c ~ string/strcasecmp.c ~ string/strcasestr.c ~ string/strchr.c ~ string/strcmp.c ~ string/strcoll.c ~ string/strcspn.c ~ string/strdup.c ~ string/strerror.c ~ string/strerror_r.c ~ string/strlcat.c ~ string/strlcpy.c ~ string/strlen.c ~ string/strmode.c ~ string/strncat.c ~ string/strncmp.c ~ string/strncpy.c ~ string/strndup.c ~ string/strnlen.c ~ string/strpbrk.c ~ string/strrchr.c ~ string/strsep.c ~ string/strsignal.c ~ string/strspn.c ~ string/strstr.c ~ string/strtok.c ~ string/strxfrm.c ~ string/timingsafe_bcmp.c ~ string/timingsafe_memcmp.c + hidden/err.h + hidden/stdio.h + hidden/string.h + hidden/wchar.h > Add framework for resolving (pun intended) libc namespace issues, using > wrapper .h files and asm labels to let internal calls resolve directly and > not be overridable or use the PLT. Then, apply that framework to most of > the functions in stdio.h, string.h, err.h, and wchar.h. Delete the > should-have-been-hidden-all-along _v?(err|warn)[cx]? symbols while here. > tests clean on i386, amd64, sparc64, powerpc, and mips64 > naming feedback from kettenis@ and millert@ > ok kettenis@ (guenther@) ~ Makefile.inc > only 32-bit systems need the quad functions. > skipping a libc crank since unused in base on 64bit systems > discussed with miod, tedu; ok kettenis (deraadt@) ~ rpc/svc_run.c ~ rpc/svc_tcp.c ~ rpc/svc_udp.c > Remove calls to perror(); the error returns are sufficient, and these > library may not assume stderr is useable. > ok millert miod beck (deraadt@) ~ rpc/auth_unix.c ~ rpc/clnt_tcp.c ~ rpc/clnt_udp.c ~ rpc/svc_simple.c ~ rpc/svc_tcp.c ~ rpc/svc_udp.c ~ rpc/xdr.c ~ rpc/xdr_array.c ~ rpc/xdr_rec.c ~ rpc/xdr_reference.c > Remove all bogus writes to stderr. Only explicit requests should > go that way. > ok miod beck (deraadt@) ~ rpc/svc_auth_unix.c > do not printf() on error from libc; ok millert (deraadt@) ~ rpc/auth_unix.c ~ rpc/pmap_clnt.c ~ rpc/pmap_getmaps.c > Delete 3 more stderr messages, right before returning a proper error. > Code from way in the past. (deraadt@) ~ asr/asr.c > use _PATH_RESCONF (deraadt@) ~ gen/auth_subr.c > no more gcc2. > ok deraadt@ (daniel@) ~ gen/gethostname.3 > word fix; from henning petersen (netbsd pr/49641, -r1.18) > ok millert (jmc@) ~ sys/getsockopt.2 > Add missing information to the socket splicing man page to make it > more comprehensible. > OK jmc@ tedu@ (bluhm@) ~ arch/amd64/SYS.h ~ arch/amd64/sys/Ovfork.S ~ arch/amd64/sys/brk.S ~ arch/amd64/sys/sbrk.S ~ arch/amd64/sys/sigprocmask.S ~ arch/amd64/sys/sigsuspend.S ~ arch/amd64/sys/syscall.S ~ arch/i386/SYS.h ~ arch/i386/sys/Ovfork.S ~ arch/i386/sys/brk.S ~ arch/i386/sys/cerror.S ~ arch/i386/sys/sbrk.S ~ arch/i386/sys/sigpending.S ~ arch/i386/sys/sigprocmask.S ~ arch/i386/sys/sigreturn.S ~ arch/i386/sys/sigsuspend.S ~ arch/i386/sys/syscall.S ~ arch/i386/sys/tfork_thread.S ~ arch/mips64/SYS.h ~ arch/mips64/sys/brk.S ~ arch/mips64/sys/sbrk.S ~ arch/mips64/sys/sigprocmask.S ~ arch/powerpc/SYS.h ~ arch/powerpc/sys/brk.S ~ arch/powerpc/sys/cerror.S ~ arch/powerpc/sys/sbrk.S ~ arch/powerpc/sys/sigpending.S ~ arch/powerpc/sys/sigprocmask.S ~ arch/powerpc/sys/sigsuspend.S ~ arch/powerpc/sys/tfork_thread.S ~ arch/sparc64/SYS.h ~ arch/sparc64/sys/brk.S ~ arch/sparc64/sys/cerror.S ~ arch/sparc64/sys/sbrk.S ~ arch/sparc64/sys/sigpending.S ~ arch/sparc64/sys/sigprocmask.S ~ arch/sparc64/sys/sigreturn.S ~ arch/sparc64/sys/sigsuspend.S ~ arch/sparc64/sys/tfork_thread.S > Adds hidden _libc_FOO aliases for the system call stubs. > Stop generating _brk and _sbrk symbols: they've already been hidden. > Set the ELF symbol size on the syscall stubs. > Give the __{min,cur}brk symbols a size and type, and hide more jump labels. > ok deraadt@ (guenther@) - nls/_catclose.c - nls/_catgets.c - nls/_catopen.c ~ Symbols.list ~ include/namespace.h ~ nls/Makefile.inc ~ nls/catclose.c ~ nls/catgets.c ~ nls/catopen.c ~ string/strerror_r.c + hidden/nl_types.h > Use new framework for wrapping cat{open,gets,close}(), eliminating > _cat* in the process. > ok kettenis@ (guenther@) ~ db/db/db.c + hidden/db.h > Use new framework for wrapping dbopen() > Move internal declarations from <db.h> to libc's hidden/db.h > ok kettenis@ (guenther@) ~ hidden/nl_types.h > Delete duplicated CVS $foo tags (guenther@) ~ citrus/citrus_utf8.c > check for limiting the range of UTF-8 to 0x10FFFF, as requested by RFC > 3629. > ok stsp@ (semarie@) ~ yp/yp_bind.c > rather than assuming stderr is alive, open + dprintf to /dev/tty > ok guenther millert (deraadt@) ~ Symbols.list > Hide some YP internals. Annotate a few private hooks currently used > by ypserv, passwd, or chpass... maybe we can use different tricks to > interface with libc... (deraadt@) ~ citrus/citrus_utf8.c > off-by-one for the previous patch. the limit is inclusive: 0x10ffff is a > valid codepoint. > ok stsp@ (semarie@) ~ arch/mips64/SYS.h > This is probably what guenther@ had in mind. (miod@) ~ arch/powerpc/sys/sigsuspend.S > Fix previous: restore a PSEUDO_SUFFIX macro to actually handle errno and > return > cone of shame guenther@ > ok deraadt@ (guenther@) ~ sys/tame.2 > remove excessive Xr; from rob pierce (deraadt@) ~ sys/tame.2 > spacing required before punctuation; (jmc@) - gen/_sys_errlist.c - gen/_sys_nerr.c - gen/_sys_siglist.c ~ Symbols.list ~ gen/Makefile.inc ~ gen/errlist.c ~ gen/siglist.c ~ gen/signame.c ~ hidden/stdio.h ~ include/namespace.h ~ string/strerror_r.c + hidden/errno.h + hidden/signal.h > Fix aliasing of sys_errlist, sys_nerr, sys_siglist, and sys_signame > to eliminate duplicate copies of the tables and get direct access > internally > ok kettenis@ deraadt@ (guenther@) ~ Symbols.list > Document the rule for keeping static and shared archs in sync (guenther@) libkvm ~ kvm_private.h ~ kvm.c > add kvm_realloc() as a private function. > part of a larger diff > ok millert@ guenther@ (dlg@) ~ kvm.c ~ kvm_file2.c > fix a race when fetching files from the kernel. the number of files > might have increased between when we got the number of files and > when we requested that number of files. > now we allocate another 10ish percent on top of what the kernel > says we need, and retry if that still isnt enough. > while here use realloc instead of constantly going through free/malloc > sequences. > with input from claudio@ deraadt@ > ok millert@ guenther@ (dlg@) libssl ~ src/ssl/bs_cbb.c > Make it always safe to call CBB_cleanup() providing that CBB_init() or > CBB_init_fixed() have been attempted. > ok doug@ (jsing@) ~ src/ssl/s23_clnt.c ~ src/ssl/s3_clnt.c ~ src/ssl/s3_srvr.c ~ src/ssl/ssl_locl.h ~ src/ssl/t1_lib.c > Remove the ssl_prepare_{client,server}hello_tlsext() functions, which are > now nothing more than noops. > ok bcook@ doug@ (jsing@) ~ src/ssl/srtp.h > Remove duplicate prototype for SSL_get_selected_srtp_profile(). > From Aaron Burghardt. (jsing@) ~ src/ssl/s23_clnt.c > Fewer magic numbers - we already have defines for the header lengths, so > make use of them. > ok doug@ (jsing@) ~ src/ssl/d1_clnt.c ~ src/ssl/s3_clnt.c ~ src/ssl/ssl_locl.h > Replace dtls1_client_hello() with ssl3_client_hello() - both are basically > the same code, with two slight differences for DTLS handling. > Also, make use of send_cookie to determine if the client random needs to > be preserved, rather than testing if it is zeroed (hopefully your random > number generator never returned all zeros, since the existing code would > break). Inspired by BoringSSL. > ok doug@ (jsing@) == libexec =========================================================== 07/13 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/libexec ftpd ~ ftpd.c > test pointers with NULL not '\0' (jsg@) ld.so ~ Makefile > Add framework for resolving (pun intended) libc namespace issues, using > wrapper .h files and asm labels to let internal calls resolve directly and > not be overridable or use the PLT. Then, apply that framework to most of > the functions in stdio.h, string.h, err.h, and wchar.h. Delete the > should-have-been-hidden-all-along _v?(err|warn)[cx]? symbols while here. > tests clean on i386, amd64, sparc64, powerpc, and mips64 > naming feedback from kettenis@ and millert@ > ok kettenis@ (guenther@) ~ m88k/rtld_machine.c ~ sparc/rtld_machine.c > Use kbind for lazy binding GOT/PLT updates on m88k and sparc. > Much discussion with and assistance from miod and deraadt > ok miod@ (guenther@) ~ ldconfig/library.c ~ ldconfig/prebind.c > Check strdup return value for NULL. > ok millert@ (tobias@) == regress =========================================================== 08/13 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/regress lib ~ libssl/Makefile + libssl/client/Makefile + libssl/client/clienttest.c > Add an initial TLS client regress, which currently covers ClientHello > message generation. (jsing@) sbin ~ route/Makefile ~ route/rttest14.ok ~ route/rttest16.ok > No more connected routes on loopback interfaces. > Those tests now pass even if you have an AUTOCONF'd address on your > machine. > Note that the global list of prefixes is *still* not rtable ID aware. > (mpi@) ~ pfctl/pf103.ok > sync to reflect changes in pfctl_parser.c -r1.305 (mikeb@) ~ pfctl/pf47.ok ~ pfctl/pf47.optimized > order of assigned v6 addresses has slightly changed (mikeb@) ~ pfctl/pfail8.ok > route-to, reply-to and dup-to are no longer supported on block rules > (mikeb@) ~ pfctl/pf47.ok ~ pfctl/pf47.optimized > revert previous since the v6 address order has been restored (mikeb@) usr.bin ~ tsort/Makefile + tsort/hints1 + tsort/hints2 + tsort/pairs7 + tsort/t7.canonical > simple check of -h option. More deviously, check that option/parameter > handling actually works correctly. (espie@) ~ ssh/hostkey-rotate.sh > trim junk from end of file; bz#2455 from Jakub Jelen (djm@) ~ mandoc/man/SH/noarg.out_ascii ~ mandoc/man/SH/noarg.out_lint ~ mandoc/man/SS/noarg.out_ascii ~ mandoc/man/SS/noarg.out_lint ~ mandoc/man/TP/Makefile + mandoc/man/TP/fill.in + mandoc/man/TP/fill.out_ascii > Fill mode changes don't break next-line scope in all cases, > in particular not for tagged paragraphs. > Issue found by Christian Neukirchen <chneukirchen at gmail dot com> > in the exiv2(1) manual page. (schwarze@) usr.sbin + syslogd/args-block-host-tcp6.pl + syslogd/args-block-host-udp4.pl + syslogd/args-logsocket.pl > New tests for +host in syslog.conf that matches on an IPv4 and IPv6 > address. Add test for syslogd -p log_socket. (bluhm@) ~ syslogd/args-dropped-tcp.pl ~ syslogd/args-dropped-tls.pl ~ syslogd/args-sync-tcp.pl ~ syslogd/syslogd.pl + syslogd/args-sendsyslog-error.pl > Add test for sendsyslog(2) dropped message reporting. (bluhm@) == sbin ============================================================== 09/13 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/sbin dhclient ~ dhclient.c > Support deviant but historically blessed practice of accepting > multiple domain names in dhcp option 15 (Domain Name). This allows > resolv.conf 'search' statements to be built with multiple entries. > Adhere to the limits stated in resolv.conf(5) - no more than 6 > domains and less than 1024 characters total length. > Encountered in the wild and fix tested by beck@. Feedback from > deraadt@ (krw@) ~ dhclient.c > Some whitespace bulking out a diff unnecessarily. (krw@) fdisk ~ fdisk.8 ~ fdisk.c ~ mbr.c > Add a -b option, to be used together with -i, that tells fdisk to add a > special boot partition on architectures that need it. > For now those architectures are amd64 and i386, where this option will > create an EFI system partition to store our new UEFI bootloader. > ok deraadt@, krw@ (kettenis@) ~ fdisk.8 ~ fdisk.c > shuffle -b into place; while there, do some general tidy up > of SYNOPSIS and usage(); (jmc@) ~ fdisk.8 ~ fdisk.c > correct a mistake in my previous commit; (jmc@) fsck_ext2fs ~ utilities.c > snprintf+write --> dprintf > ok deraadt@ (guenther@) fsck_ffs ~ utilities.c > snprintf+write --> dprintf > ok deraadt@ (guenther@) pfctl ~ parse.y > - route-to, dup-to, reply-to should not override the block action > Spotted by Dilli Paudel <dilli ! paudel at oracle ! com> > ok jung@, ok mikeb@ (sashan@) ~ pfctl_parser.c > interface should only be specified for root queues; found by jsg (mikeb@) ping ~ ping.c > Move tricky system calls up and sensitive data calculations down so > that tame(2) can sit in the middle. > diff from deraadt@ > "you can commit that diff" deraadt@ (florian@) ping6 ~ ping6.c > Remove RH0 support, it was deprecated in RFC 5095 some time ago and > you couldn't send packets anyway since our stack drops them > unconditionally. > reasoning is sound to deraadt@, OK mpi@ (florian@) ~ ping6.c > Clean up getaddrinfo(3) calls to make them look like the canonical > example from the man page. While there was nothing wrong this pattern > makes it easier to figure that out. > While here be more paranoid how much we memcpy(3). > Looks clean to deraadt@ (florian@) ~ ping6.8 > Forgot to commit the man page bits when removing RH0 support. (florian@) ~ ping6.c > remove unused define; no binary change (florian@) ~ ping6.c > Display the correct source address when using a non-default routing > table. > Problem reported on bugs@ and diff from phil AT unita.com.au, thanks! > OK phessler (florian@) == share ============================================================= 10/13 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/share man ~ man4/man4.amd64/Makefile + man4/man4.amd64/efifb.4 > Add efifb(4) man page. > ok deraadt (yasuoka@) ~ man4/man4.amd64/efifb.4 > tweak previous; (jmc@) ~ man5/port-modules.5 > Less confusing description of 'nort' for ghc.port.mk. (kili@) ~ man7/mandoc_char.7 > Recommend an unambiguous escape for minus signs instead of \-. > Historically, \- was used in troff for three cases: flags/pathnames, > en dashes, and minus signs. mandoc_char(7) currently recommends it > for minus signs, recommends \(en for en dashes, and doesn't mention > flags/pathnames. > In the old days, nroff rendered \- as ASCII '-', and troff rendered > it as en dash/minus (which were visually indistinguishable). > In Unicode, en dashes and minus signs are semantically distinct and > encoded differently (U+2013 for en dash, U+2212 for minus), and > often rendered differently too. Meanwhile ASCII '-' has been renamed > "hyphen-minus" and fonts typically render it closest to a hyphen, not > a minus. > There is very little consistency across roff implementations and output > formats for what Unicode character \- corresponds to. So at least for > minus signs, change the recommendation to the unambiguous \(mi escape. > ok jmc@ (after reams of discussion) (bentley@) ~ man9/Makefile ~ man9/srp_enter.9 > mattieu baptiste reported a problem with bpf+srps where the per cpu > hazard pointers were becoming corrupt and therefore panics. > the problem turned out to be that bridge_input calls if_input on > behalf of a hardware interface which then calls bpf_mtap at splsoftnet, > while the actual hardware nic calls if_input and bpf_mtap at splnet. > the hardware interrupts ran in the middle of the bpf calls bridge > runs at softnet. this means the same srps are being entered and > left on the same cpu at different ipls, which led to races because > of the order of operations on the per cpu hazard pointers. > after a lot of experimentation, jmatthew@ figured out how to deal > with this problem without introducing per cpu critical sections > (ie, splhigh) calls in srp_enter and srp_leave, and without introducing > atomic operations. > the solution is to iterate forward through the array of hazard > pointers in srp_enter, and backward in srp_leave to clear. if you > guarantee that you leave srps in the reverse order to entering them, > then you can use the same set of SRPs at different IPLs on the same > CPU. > the ordering requirement is a problem if we want to build linked > data structures out of srps because you need to hold a ref to the > current element containing the next srp to use it, before giving > up the current ref. we're adding srp_follow() to support taking the > next ref and giving up the current one while preserving the structure > of the hazard pointer list. srp_follow() does this by reusing the > hazard pointer for the current reference for the next ref. > both mattieu baptiste and jmatthew@ have been hitting this pretty > hard with a tweaked version of srp+bpf that uses srp_follow instead > of interleaved srp_enter/srp_leave sequences. neither can reproduce > the panics anymore. > thanks to mattieu for the report and tests > ok jmatthew@ (dlg@) ~ man9/Makefile ~ man9/rtalloc.9 > Introduce rtisvalid(9) a function to check if a (cached) route entry > can be used or should be released by rtfree(9). > It currently checks if the route is UP and is not attached to a stall > ifa. > ok bluhm@, claudio@ (mpi@) ~ man9/rtalloc.9 > space between macro args and punctuation; (jmc@) ~ man5/ruby-module.5 > Remove ruby19 and rbx FLAVOR information, as support for both was removed > recently. > OK kspillner@ (jeremy@) ~ man9/pool.9 > Remove some lies and document that passing the PR_WAITOK flag to > pmap_init(9) > is the new way to request a non-interrupt-safe backend allocator. > ok jmc@, deraadt@ (kettenis@) ~ man4/puc.4 > Add support for QEMU PCI serial devices in puc(4) > OK deraadt@ (sf@) misc ~ countrycodes > sync with ISO web site; ok millert@ (naddy@) mk ~ bsd.own.mk > update reasons for arch without pie; with pascal (deraadt@) == sys =============================================================== 11/13 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/sys arch/alpha/alpha ~ interrupt.c > sizes for free() (deraadt@) arch/alpha/dev ~ shared_intr.c > sizes for free() (deraadt@) arch/alpha/eisa ~ eisa_machdep.c > sizes for free() (deraadt@) arch/amd64/amd64 ~ acpi_machdep.c ~ bios.c ~ machdep.c ~ mainbus.c ~ wscons_machdep.c + efifb.c > Modify kernel to prepare boot from UEFI. > - Add new boot arg "bios_efi_info_t" to pass the paramters from UEFI > - Make bios(4) and acpi(4) be able to probe with the parameters from > UEFI > - Add efifb(8). It uses the framebuffer from UEFI and it will work as > a backend of wsdisplay(4) and wsfb (X11 video driver). Disabled by > the kernel config for this moment > input and ok kettenis (yasuoka@) ~ mainbus.c > Don't try to attach efifb(4) on non-UEFI boots. > ok miod@, deraadt@ (kettenis@) ~ efifb.c ~ mainbus.c > Check driver name in match function such that driver only attempts to > attach > when we actually want it to. > ok deraadt@ (kettenis@) ~ trap.c > Delete bogus MATH_EMULATE holdover from i386 (guenther@) ~ efifb.c > Only advertise the color depth we actually support. This makes the > xf86-video-wsfb driver work. > Map the framebuffer in write-combining mode. This significantly speeds > things up. > ok yuo@, yasuoka@, deraadt@ (kettenis@) ~ trap.c > set sival_ptr before calling trapsignal() for user breakpoint/trace traps > ok guenther@ (jsg@) ~ disksubr.c > Always call readdoslabel() before readgptlabel(). Doubly always call them > in the same order. Fix writedisklabel() to follow these simple rules. > ok kettenis@ (krw@) ~ i8259.c > remove a bunch of orphaned prototypes and unused functions; ok miod > (mikeb@) ~ bios.c > Fix the condition of finding SMBIOS. Found by gerhard@. > ok gerhard uebayasi deraadt (yasuoka@) ~ pmap.c > Fix a race in pmap_page_remove(). > This should get mail from the mailing lists flowing again. Thanks to > millert@ for helping me tracking this down. > ok millert@, tedu@, mlarkin@ (kettenis@) ~ efifb.c > Correct bounds checking in efifb_mmap(). ok yasuoka@ (miod@) arch/amd64/conf ~ GENERIC ~ files.amd64 > Modify kernel to prepare boot from UEFI. > - Add new boot arg "bios_efi_info_t" to pass the paramters from UEFI > - Make bios(4) and acpi(4) be able to probe with the parameters from > UEFI > - Add efifb(8). It uses the framebuffer from UEFI and it will work as > a backend of wsdisplay(4) and wsfb (X11 video driver). Disabled by > the kernel config for this moment > input and ok kettenis (yasuoka@) ~ GENERIC ~ RAMDISK > Enable efifb(4). > ok deraadt kettenis (yasuoka@) ~ RAMDISK ~ RAMDISK_CD > No real point in having efifb(4) on the floppies; we want it on everything > else! > ok deraadt@ (kettenis@) ~ files.amd64 > Let efifb depend on rasops32 such that it works on ramdisks where rasops32 > isn't brought in by inteldrm or radeondrm. (kettenis@) arch/amd64/include ~ biosvar.h + efifbvar.h > Modify kernel to prepare boot from UEFI. > - Add new boot arg "bios_efi_info_t" to pass the paramters from UEFI > - Make bios(4) and acpi(4) be able to probe with the parameters from > UEFI > - Add efifb(8). It uses the framebuffer from UEFI and it will work as > a backend of wsdisplay(4) and wsfb (X11 video driver). Disabled by > the kernel config for this moment > input and ok kettenis (yasuoka@) ~ efifbvar.h > Check driver name in match function such that driver only attempts to > attach > when we actually want it to. > ok deraadt@ (kettenis@) ~ i8259.h > remove a bunch of orphaned prototypes and unused functions; ok miod > (mikeb@) arch/amd64/stand ~ Makefile > enter efiboot (deraadt@) arch/amd64/stand/boot ~ Makefile > Initial commit of uefi boot loader of OpenBSD. > ok deraadt yuo (yasuoka@) ~ conf.c > Bring the boot changes on amd64 to i386. alloca is deleted. > Also fix the boot from BIOS and bump the version. > input and ok deraadt (yasuoka@) arch/amd64/stand/cdboot ~ Makefile > Initial commit of uefi boot loader of OpenBSD. > ok deraadt yuo (yasuoka@) ~ conf.c > Bring the boot changes on amd64 to i386. alloca is deleted. > Also fix the boot from BIOS and bump the version. > input and ok deraadt (yasuoka@) arch/amd64/stand/efi + include/README + include/efi.h + include/efi_nii.h + include/efiapi.h + include/eficon.h + include/eficonsctl.h + include/efidebug.h + include/efidef.h + include/efidevp.h + include/efierr.h + include/efifpswa.h + include/efifs.h + include/efigop.h + include/efinet.h + include/efipart.h + include/efiprot.h + include/efipxebc.h + include/efiser.h + include/efistdarg.h + include/amd64/efibind.h + include/i386/efibind.h > Initial commit of uefi boot loader of OpenBSD. > ok deraadt yuo (yasuoka@) arch/amd64/stand/efiboot + Makefile + Makefile.common + Makefile.inc + conf.c + efiboot.c + efiboot.h + eficall.S + eficall.h + efidev.c + efidev.h + heap.h + ldscript.amd64 + ldscript.i386 + run_i386.S + run_i386.h + self_reloc.c + start.S + bootx64/Makefile + bootx86/Makefile > Initial commit of uefi boot loader of OpenBSD. > ok deraadt yuo (yasuoka@) ~ Makefile > only enter deeper on amd64 (deraadt@) ~ conf.c > Bring the boot changes on amd64 to i386. alloca is deleted. > Also fix the boot from BIOS and bump the version. > input and ok deraadt (yasuoka@) ~ efidev.c ~ efidev.h > Add missing copyright. (yasuoka@) ~ efiboot.c > Use the pointer we got back from alloc() when calling free() instead of > something that points smack in the middle of the buffer. (kettenis@) ~ efiboot.c > Improve the code that tries to figure out which device we booted from. The > EFI Loaded Image Device Path Protocol typically includes partition and file > components. We want to match it to a "raw" Device Path without these > components though, so we declare we have found the boot device as soon as > the Device Path matches the initial components of the Loaded Image Device > Path. > ok yasuoka@ (kettenis@) ~ efidev.c > Use checksum to check the gpt parition. Old check was missing > letoh32()/letoh64() calls. Also increase buffer size from 512 to > 4092. > initial work from krw > ok krw (yasuoka@) arch/amd64/stand/libsa ~ alloca.S ~ biosdev.c ~ biosdev.h ~ cmd_i386.c ~ disk.h ~ diskprobe.c ~ exec_i386.c ~ machdep.c ~ memprobe.c ~ softraid.c + random_amd64.S > Initial commit of uefi boot loader of OpenBSD. > ok deraadt yuo (yasuoka@) ~ exec_i386.c > Bring the boot changes on amd64 to i386. alloca is deleted. > Also fix the boot from BIOS and bump the version. > input and ok deraadt (yasuoka@) - alloca.S > alloca() no longer needed (deraadt@) ~ random_amd64.S > sync comment (naddy@) arch/amd64/stand/pxeboot ~ Makefile > Initial commit of uefi boot loader of OpenBSD. > ok deraadt yuo (yasuoka@) ~ conf.c > Bring the boot changes on amd64 to i386. alloca is deleted. > Also fix the boot from BIOS and bump the version. > input and ok deraadt (yasuoka@) arch/arm/include ~ asm.h > Provide remaining arch with END() macro for setting calculated size on > symbols in ASM > ok deraadt@ mpi@ (guenther@) arch/hppa/hppa ~ pmap.c > The pmap_pmap_pool pool will never be used in interrupt context, so pass > the > PR_WAITOK flag to pmap_init and pass NULL as the pool allocator. > (kettenis@) arch/hppa64/hppa64 ~ pmap.c > PR_WAITOK for the pmap_pmap_pool here as well. (kettenis@) arch/i386/i386 ~ pmap.c > The pmap_pmap_pool pool will never be used in interrupt context, so pass > the > PR_WAITOK flag to pool_init and pass NULL as the pool allocator. > ok mlarkin@ (kettenis@) ~ softintr.c > fairly simple sizes for free() (deraadt@) ~ disksubr.c > Always call readdoslabel() before readgptlabel(). Doubly always call them > in the same order. Fix writedisklabel() to follow these simple rules. > ok kettenis@ (krw@) ~ bios.c > Fix the condition of finding SMBIOS. Found by gerhard@. > ok gerhard uebayasi deraadt (yasuoka@) ~ pmap.c ~ pmapae.c > Fix a race in pmap_page_remove_86() and pmap_page_remove_pae(). > ok millert@, tedu@, mlarkin@ (kettenis@) arch/i386/include ~ asm.h > Provide remaining arch with END() macro for setting calculated size on > symbols in ASM > ok deraadt@ mpi@ (guenther@) ~ i8259.h > ditch a few prototypes for non-existant functions (mikeb@) ~ i8259.h > remove a bunch of orphaned prototypes and unused functions; ok miod > (mikeb@) ~ biosvar.h > match amd64; bios_efi_info_t is required here as well, because acpidump > compiles on more than one platform. (deraadt@) arch/i386/isa ~ isa_machdep.c > fairly simple sizes for free() (deraadt@) arch/i386/pci ~ vga_post.c ~ rccosb4.c ~ piix.c ~ pci_machdep.c > fairly simple sizes for free() (deraadt@) arch/i386/stand/boot ~ Makefile ~ conf.c > Bring the boot changes on amd64 to i386. alloca is deleted. > Also fix the boot from BIOS and bump the version. > input and ok deraadt (yasuoka@) arch/i386/stand/cdboot ~ Makefile ~ conf.c > Bring the boot changes on amd64 to i386. alloca is deleted. > Also fix the boot from BIOS and bump the version. > input and ok deraadt (yasuoka@) arch/i386/stand/libsa ~ alloca.S ~ biosdev.c ~ biosdev.h ~ cmd_i386.c ~ disk.h ~ diskprobe.c ~ exec_i386.c ~ machdep.c ~ memprobe.c ~ softraid.c > Bring the boot changes on amd64 to i386. alloca is deleted. > Also fix the boot from BIOS and bump the version. > input and ok deraadt (yasuoka@) - alloca.S > alloca() no longer needed (deraadt@) ~ exec_i386.c > Fix the bios boot to pass the bootargs properly. > ok deraddt (yasuoka@) arch/i386/stand/pxeboot ~ Makefile ~ conf.c > Bring the boot changes on amd64 to i386. alloca is deleted. > Also fix the boot from BIOS and bump the version. > input and ok deraadt (yasuoka@) arch/macppc/conf ~ GENERIC ~ RAMDISK > Enable xhci(4) now that it attaches correctly on my G5. (mpi@) arch/macppc/macppc ~ mem.c > pretty simple size for free() (deraadt@) ~ mainbus.c > seperate a variable into two, so that the size of a free() is remembered. > ok semarie (deraadt@) arch/macppc/pci ~ ht.c > Map the whole config1 space based on the size read from the > device-tree. > With this change, supplementary PCIe cards are now properly > detected. > This should prevents the kernel from faulting when reading > unmapped PCI addresses as reported by Donovan Watteau on ppc@. > ok kettenis@ (mpi@) arch/mips64/mips64 ~ softintr.c > simple size for free() (deraadt@) arch/octeon/dev ~ octdwctwo.c > Increase transfer FIFOs for dwc2, to improve USB performance. The new > values are from dwc2 of NetBSD. > ok jmatthew@, jasper@ (visa@) arch/powerpc/include ~ asm.h > Provide remaining arch with END() macro for setting calculated size on > symbols in ASM > ok deraadt@ mpi@ (guenther@) arch/powerpc/powerpc ~ bus_dma.c > Sync bus_dmamap_load_raw(9) with amd64/i386 in order to respect the > segement size constraint. > Make xhci(4) work on my G5. > ok dlg@ (mpi@) ~ softintr.c > size for free() (deraadt@) arch/sgi/hpc ~ hpc.c ~ hpcreg.h ~ hpcvar.h ~ if_sq.c ~ if_sqvar.h > Give up trying to map DMA descriptor in uncached memory on ECC flavours of > the > IP22 motherboard (IP26, IP28). Instead, do not ask for a BUS_DMA_COHERENT > mapping, but perform explicit cache operations. > This removes the need for the memory controller to switch between `fast' > and > `slow' mode every time a DMA descriptor is updated. > Tested on IP22 and IP28. (miod@) arch/sgi/sgi ~ bus_dma.c > Give up trying to map DMA descriptor in uncached memory on ECC flavours of > the > IP22 motherboard (IP26, IP28). Instead, do not ask for a BUS_DMA_COHERENT > mapping, but perform explicit cache operations. > This removes the need for the memory controller to switch between `fast' > and > `slow' mode every time a DMA descriptor is updated. > Tested on IP22 and IP28. (miod@) ~ ip22.h ~ ip22_machdep.c > Do not make ip22_{slow,fast}_mode() public anymore. (miod@) arch/sh/sh ~ interrupt.c > free() size (deraadt@) arch/solbourne/solbourne ~ pmap.c > missing splx > ok miod@ (jsg@) arch/sparc/conf ~ RAMDISK > qlw fits (miod@) arch/sparc/dev ~ z8530kbd.c > missing splx > ok miod@ (jsg@) arch/sparc/include ~ asm.h > Provide remaining arch with END() macro for setting calculated size on > symbols in ASM > ok deraadt@ mpi@ (guenther@) arch/sparc64/include ~ asm.h > Provide remaining arch with END() macro for setting calculated size on > symbols in ASM > ok deraadt@ mpi@ (guenther@) arch/sparc64/sparc64 ~ pmap.c > The pmap_pool pool will never be used in interrupt context, so pass the > PR_WAITOK flag to pmap_init and pass NULL as the pool allocator. > (kettenis@) ~ pmap.c > Make pmap_kenter_pa(9) and pmap_kremove(9) mpsafe. This required me to > use atomic operations to operate on pm_stats.resident_count. Is it really > necessary to keep track of that for the kernel pmap? (kettenis@) arch/vax/include ~ asm.h > Provide remaining arch with END() macro for setting calculated size on > symbols in ASM > ok deraadt@ mpi@ (guenther@) compat/linux ~ linux_futex.c > The futex_pool and futex_wp_pool pools never get used in interrupt context. > ok mlarkin@ (kettenis@) conf ~ files > Add missing net/art.c, found the hardway by reyk@ (mpi@) ~ newvers.sh TAGGED OPENBSD_5_8 > 5.8-stable (sthen@) crypto ~ cryptosoft.c > two fairly simple sizes for free() (deraadt@) ddb ~ db_trap.c > Automatically perform traces upon panic. Shrink message about > reporting bugs to pointing at http://www.openbsd.org/ddb.html, > because vertical space becomes more precious. > ok beck krw kettenis (deraadt@) ~ db_struct.c > initialise the width var in db_struct_offset_cmd() > ok miod@ deraadt@ (jsg@) dev ~ diskmap.c > size for free(); ok krw (deraadt@) ~ audio.c > Fix condition used while seaching candidates for "record level" > control for wskbd. This may fix "record level" keys on certain > keyboards. (ratchov@) dev/acpi ~ acpi.c > clarify malloc arguments (base + length...) (deraadt@) dev/ic ~ dc.c ~ dcreg.h > Track rom size, for free() (deraadt@) ~ cac.c > size for free() (deraadt@) ~ re.c ~ rtl81x9reg.h > add support for RTL8168H > tedu tested an almost identical diff from brad that set the same flags. > (jsg@) ~ acx.c > firmware size for free() (deraadt@) ~ atw.c > srom size is tracked, pass to free() (deraadt@) dev/pci ~ envy.c ~ envyvar.h > Add the number of midi ports to the card description, and use it to > prevent cards with no midi connectors from attaching midi(4) devices. > (ratchov@) ~ if_myx.c > free() firmware with right len; ok dlg (deraadt@) ~ if_em.c ~ if_ipw.c ~ if_ipwvar.h ~ if_iwi.c ~ if_iwn.c ~ if_ix.c > sizes for free(), mostly related to firmwares. > ok dlg (deraadt@) ~ if_em.c > Use the correct free(9) size for the RX ring. > ok dlg@, phessler@ (mpi@) ~ if_ix.c > correct sizes for free(), sigh (deraadt@) ~ if_bnx.c > The bnx_tx_pool gets used from interrupt context, so drop the explicit > backend allocoter here without passing PR_WAITOK to pool_init(9). > ok mikeb@ (kettenis@) ~ pcidevs > add some braswell ids (jsg@) ~ pcidevs.h ~ pcidevs_data.h > regen (jsg@) ~ if_wpi.c > sizes for free() - most are about the firmware memory (deraadt@) ~ qle.c > sizes for free(); ok jmatthew (deraadt@) ~ drm/drm_drv.c > We actually need an interrupt-safe allocator here, as we call pool_put() > with a mutex held, so we can't have it sleep. (kettenis@) ~ pcidevs > Add ids for Qemu PCI serial devices > OK deraadt@ (sf@) ~ pcidevs_data.h ~ pcidevs.h > regenerate from pcidevs (sf@) ~ pucdata.c > Add support for QEMU PCI serial devices in puc(4) > OK deraadt@ (sf@) dev/pckbc ~ pms.c ~ pmsreg.h > Improve tap-and-drag detection for ALPS touchpads. > The ALPS mechanism for gesture detection can produce long delays between > a packet that signals a tap and the next packet, which either signals > the end of the gesture or the start of a drag-operation. The time spans > can exceed the timeouts used by the generic detection mechanism in the > synaptics driver. Reporting both the touch and the release event when > the second packet has arrived ensures that the tap will be recognized. > ok mpi@ shadchin@ (bru@) ~ pms.c ~ pmsreg.h > Support Synaptics touchpads without W mode. > Emulate W mode if a Synaptics model doesn't provide it, and check > for the success of the resolution query during setup. > ok shadchin@, mpi@ (bru@) dev/rasops ~ rasops.c > uses sizes for free() (deraadt@) dev/usb ~ uow.c > Use one xfer per pipe instead of doing an alloc/free dance for every > usbd_transfer(9). > This fixes a use-after-free. > Bug found by and diff from John L. Scarfone <john AT scarfone DOT net> > (mpi@) ~ usb.c > Reject USB requests that could damage the bus integrity, just like it > is done in ugen(4). > Found by Grant Czajkowski during the GSoC 2015. (mpi@) ~ ugen.c > Do not use an intermediary buffer on the stack of the caller when > submitting a read request. > This also means big read requests are no longer split into multiple > small transfers something that libusb consumers do not expect. > Tested by ajacatoutot@. > Found by Grant Czajkowski <czajkow2 AT illinois DOT edu> during the > GSoC 2015. (mpi@) ~ dwc2/dwc2.c ~ dwc2/dwc2var.h > Remove sc->sc_lock and add several splusb()'s in dwc2, to avoid a > possible lock recursion panic on transfer timeout. The lock is not > needed yet because the USB stack is not MP-safe. > ok mpi@, "makes sense" jasper@ (visa@) ~ dwc2/dwc2.c ~ dwc2/dwc2var.h > Remove the abort_task field in struct dwc2_xfer. There is an identical > field in struct usbd_xfer which is part of dwc2_xfer. > ok mpi@ (visa@) ~ dwc2/dwc2.c > Properly cancel any pending USB abort task when aborting a transfer > and skip completed transfers in dwc2_abort_xfer(). This fixes some > timeout-related crashes. > Feedback and ok mpi@ (visa@) ~ ugen.c > Do not use an intermediary buffer on the stack of the caller when > submitting a bulk write request. > This also means big bulk write requests are no longer split into > multiple small transfers something that libusb consumers do not > expect. > From Grant Czajkowski <czajkow2 AT illinois DOT edu> as part of the > GSoC 2015. (mpi@) dev/wscons ~ wsconsio.h > Modify kernel to prepare boot from UEFI. > - Add new boot arg "bios_efi_info_t" to pass the paramters from UEFI > - Make bios(4) and acpi(4) be able to probe with the parameters from > UEFI > - Add efifb(8). It uses the framebuffer from UEFI and it will work as > a backend of wsdisplay(4) and wsfb (X11 video driver). Disabled by > the kernel config for this moment > input and ok kettenis (yasuoka@) ~ wsemul_vt100_subr.c > Support for xterm-compatible SGR escapes 39 and 49 (reset fg/bg colour to > default). From Matthew Martin on tech@ (miod@) isofs/udf ~ udf_vfsops.c > Use PR_WAITOK to indicate that pools are not used in interrupt context > instead of using pool_allocator_nointr. > ok tedu@ (kettenis@) kern ~ vfs_syscalls.c > For *chmod, allow S_ISTXT in tame mode. I am evaluating what to > do about S_ISUID and SISGID... maybe we should mask them and allow > the operation to happen? (deraadt@) ~ init_main.c ~ uipc_domain.c > Use a global table for domains instead of building a list at run time. > As a side effect there's no need to run if_attachdomain() after the > list of domains has been built. > ok claudio@, reyk@ (mpi@) ~ subr_disk.c > Eliminate a couple of extraneous DL_SECTOBLK() calls. > The disklabel is either 0 bytes into a 512-byte disk sector, or 512 > bytes into a larger disk sector. The address of the disk sector > read is irrelevant. > Pointed out by jsing@ I think. ok deraadt@ (krw@) ~ subr_disk.c > In readgptlabel() avoid pointless conversions from sector counts > to daddr_t counts and back again. And rename 'part_blkno' to > 'sector' to mirror readdoslabel() changes and make code clearer. > Reads ok to jsing@ and kettenis@. Tested by bmercer@ as part of > larger diff. (krw@) ~ vfs_syscalls.c > KNF (deraadt@) ~ kern_tame.c > spaces snuck in (deraadt@) ~ subr_disk.c > Rejig the the expression calculating of the address of the disk > sector containing the disklabel, eliminating an unnecessary " * > DL_BLKSPERSEC()". > Tested by bmercer@ as part of larger diff. > Idea from & reads ok to jsing@. ok kettenis@. (krw@) ~ vfs_syscalls.c > Rather than killing when *chmod is asked to do setuid/setgid, clear > those bits in the request and continue. This is a better posix-subset > to give to programs. (deraadt@) ~ vfs_syscalls.c > In tame mode, return EPERM for *chown if uid/gid change is not towards > cr_uid/cr_gid (effective ids). Thus, chown(, -1,-1) should work OK, so > should chown(, me, -1), etc. With this commited, more people can test. > (deraadt@) ~ subr_disk.c > Abstract 5 identical code blocks into a readdisksector() function. > Cleaner, clearer and less error prone. > Tested by bmercer@ as part of a larger diff, of which this is the > last part. > reads ok to jsing@ kettenis@. ok deraadt@. (krw@) ~ kern_tame.c > Consider getfsstat() a RPATH, even though it has no path in it. We may > want to do the same for fstatfs(), after we handle statfs(). These system > calls leak path information, however I am reluctant to add a seperate > catagory. (deraadt@) ~ subr_disk.c > Missing letoh64() when checking value of gh_lba_alt. (krw@) ~ subr_disk.c > 'bogous' is bogus spelling of 'bogus' in debug message. (krw@) ~ subr_disk.c > a white space krw could not see (deraadt@) ~ kern_srp.c > mattieu baptiste reported a problem with bpf+srps where the per cpu > hazard pointers were becoming corrupt and therefore panics. > the problem turned out to be that bridge_input calls if_input on > behalf of a hardware interface which then calls bpf_mtap at splsoftnet, > while the actual hardware nic calls if_input and bpf_mtap at splnet. > the hardware interrupts ran in the middle of the bpf calls bridge > runs at softnet. this means the same srps are being entered and > left on the same cpu at different ipls, which led to races because > of the order of operations on the per cpu hazard pointers. > after a lot of experimentation, jmatthew@ figured out how to deal > with this problem without introducing per cpu critical sections > (ie, splhigh) calls in srp_enter and srp_leave, and without introducing > atomic operations. > the solution is to iterate forward through the array of hazard > pointers in srp_enter, and backward in srp_leave to clear. if you > guarantee that you leave srps in the reverse order to entering them, > then you can use the same set of SRPs at different IPLs on the same > CPU. > the ordering requirement is a problem if we want to build linked > data structures out of srps because you need to hold a ref to the > current element containing the next srp to use it, before giving > up the current ref. we're adding srp_follow() to support taking the > next ref and giving up the current one while preserving the structure > of the hazard pointer list. srp_follow() does this by reusing the > hazard pointer for the current reference for the next ref. > both mattieu baptiste and jmatthew@ have been hitting this pretty > hard with a tweaked version of srp+bpf that uses srp_follow instead > of interleaved srp_enter/srp_leave sequences. neither can reproduce > the panics anymore. > thanks to mattieu for the report and tests > ok jmatthew@ (dlg@) ~ subr_pool.c > Push down the KERNEL_LOCK/KERNEL_UNLOCK calls into the back-end allocator > functions. Note that these calls are deliberately not added to the > special-purpose back-end allocators in the various pmaps. Those allocators > either don't need to grab the kernel lock, are always called with the > kernel > lock already held, or are only used on non-MULTIPROCESSOR platforms. > pk tedu@, deraadt@, dlg@ (kettenis@) ~ kern_tame.c > Corrects a use-after-free in tame_namei(). > ok doug@ (semarie@) ~ kern_tame.c > the special check logic for /usr/share/nls/../libc.cat became failure > to return failure. open() of these paths should succeed to satisfy > strerror() and friends. > ok semarie (deraadt@) ~ subr_log.c > To make logging to local syslog reliable, log a message about failed > log atempts. sendsyslog(2) is a good place to detect and report > the problem. > OK deraadt@ (bluhm@) ~ kern_sysctl.c > Fix !INET6 build. (mpi@) ~ uipc_domain.c ~ vfs_subr.c > Make every subsystem using a radix tree call rn_init() and pass the > length of the key as argument. > This way every consumer of the radix tree has a chance to explicitly > initialize the shared data structures and no longer rely on another > subsystem to do the initialization. > As a bonus ``dom_maxrtkey'' is no longer used an die. > ART kernels should now be fully usable because pf(4) and IPSEC properly > initialized the radix tree. > ok chris@, reyk@ (mpi@) ~ subr_pool.c > We no longer need to grab the kernel lock for allocating and freeing pages > in the (default) single page pool backend allocator. This means it is now > safe to call pool_get(9) and pool_put(9) for "small" items while holding > a mutex without holding the kernel lock as well as these functions will > no longer acquire the kernel lock under any circumstances. For "large" > items > (where large is larger than 1/8th of a page) this still isn't safe though. > ok dlg@ (kettenis@) lib/libsa ~ pbkdf2.c ~ stand.h > Initial commit of uefi boot loader of OpenBSD. > ok deraadt yuo (yasuoka@) miscfs/fifofs ~ fifo_vnops.c > trivial size for free() (deraadt@) miscfs/fuse ~ fuse_device.c > fairly easy size for free() (deraadt@) net ~ if.c ~ if.h ~ pfkey.c ~ radix.c ~ route.c > Use a global table for domains instead of building a list at run time. > As a side effect there's no need to run if_attachdomain() after the > list of domains has been built. > ok claudio@, reyk@ (mpi@) ~ bpf.c ~ bpfdesc.h > reintroduce bpf.c r1.121. > this differs slightly from 1.121 in that it uses the new srp_follow() > to walk the list of descriptors on an interface. this is instead > of interleaving srp_enter() and srp_leave(), which can lead to races > and corruption if you're touching the same SRPs at different IPLs > on the same CPU. > ok deraadt@ jmatthew@ (dlg@) ~ if.c > dont need the kernel lock for mpsafe bpfs (again) (dlg@) ~ route.c > Do not try to find a possible ``ifa'' in rt_ifal_del(9) and trust the > checks done in rtrequest1(9). > This chunk has been introduced in 1991 when rtrequest1(RTM_DELETE...) > was not doing a route lookup and no longer make any sense. > ok bluhm@ (mpi@) ~ route.c ~ route.h > Introduce rtisvalid(9) a function to check if a (cached) route entry > can be used or should be released by rtfree(9). > It currently checks if the route is UP and is not attached to a stall > ifa. > ok bluhm@, claudio@ (mpi@) ~ pf.c > - route-to, dup-to, reply-to should not override the block action > Spotted by Dilli Paudel <dilli ! paudel at oracle ! com> > ok jung@, ok mikeb@ (sashan@) ~ if_gif.c ~ if_tun.c ~ pipex.c ~ radix_mpath.c > Replace sockaddr casts with the proper satosin(), ... calls. > From David Hill; OK mpi@; tested kspillner@; tweaks bluhm@ (bluhm@) ~ route.c > Unconditionally set the RTF_UP flags when adding a route to the table. > This makes dhclient(8) configured default routes usable without relying > on the link-state change hooks not present in RAMDISK kernels. > ok krw@, claudio@ (mpi@) ~ if_pflow.c > Fix an mbuf use-after-fruit in pflow_clone_create(). > Issue reported by semarie@ on bugs@ who also isolated the > use-after-fruit to pflow(4) using dlg@'s tracing mbuf diff. > Inputs from and ok florian@, semarie@, benno@ (mpi@) ~ pf_table.c ~ pfkey.c ~ pipex.c ~ radix.c ~ radix.h ~ route.c ~ rtable.c ~ rtable.h > Make every subsystem using a radix tree call rn_init() and pass the > length of the key as argument. > This way every consumer of the radix tree has a chance to explicitly > initialize the shared data structures and no longer rely on another > subsystem to do the initialization. > As a bonus ``dom_maxrtkey'' is no longer used an die. > ART kernels should now be fully usable because pf(4) and IPSEC properly > initialized the radix tree. > ok chris@, reyk@ (mpi@) ~ if_pflow.c > pflow_flush() still needs sc->send_nam; free it later. (florian@) ~ pf_if.c ~ pf_ioctl.c ~ pf_osfp.c > The pf_osfp_pl and pf_osfp_entry_pl never get used in interrupt context. > Drop the explicit pool backend allocator here and add PR_WAITOK to the > flags passed to pool_init(9). > The pfi_addr_pl and pf_rule_pl can get used in interrupt context though. > So simply drop the explicit pool backend allocator without adding PR_WAITOK > to the flags passed to pool_init(9). > ok mikeb@ (kettenis@) ~ if_pppx.c > The pppx_if_pl pool will never be used in interrupt context, so pass the > PR_WAITOK flag to pool_init and pass NULL as the pool allocator. > ok dlg@ (kettenis@) netinet ~ in_proto.c > Use a global table for domains instead of building a list at run time. > As a side effect there's no need to run if_attachdomain() after the > list of domains has been built. > ok claudio@, reyk@ (mpi@) ~ ip_output.c > `encif' should only be used under #ifdef NPF. > Reported by jsg@, ok deraadt@ (mpi@) ~ ip_output.c > Convert ip{,6}_output() (cached) route entry checks to rtisvalid(9). > ok bluhm@ (mpi@) ~ in_pcb.c ~ ip_divert.c ~ ip_icmp.c ~ ip_mroute.c ~ tcp_subr.c > Replace sockaddr casts with the proper satosin(), ... calls. > From David Hill; OK mpi@; tested kspillner@; tweaks bluhm@ (bluhm@) ~ ip_output.c > Revert the two uses of rtisvalid(9) for the moment, it breaks dhclient(8) > configured networks on RAMDISK kernels. > The problem is that the default route installed by dhclient(8) does not > have the RTF_UP flag in this environement and rtisvalid(9) doesn't allow > you to use a RTF_DOWN route. (mpi@) ~ ip_output.c > Convert ip{,6}_output() (cached) route entry checks to rtisvalid(9). > This introduces a behavior change as we now reject !RTF_UP routes to > output packets. This stricter check exposed a bug in the setup of > new routes and was the reason for the previous revert. This should > be now fixed by r1.229 of sys/net/route.c . > ok bluhm@ (mpi@) ~ ip_output.c > Revert (again!) the two uses of rtisvalid(9), they break NFS! > Found the hardway by naddy@ (mpi@) ~ in_proto.c > Make every subsystem using a radix tree call rn_init() and pass the > length of the key as argument. > This way every consumer of the radix tree has a chance to explicitly > initialize the shared data structures and no longer rely on another > subsystem to do the initialization. > As a bonus ``dom_maxrtkey'' is no longer used an die. > ART kernels should now be fully usable because pf(4) and IPSEC properly > initialized the radix tree. > ok chris@, reyk@ (mpi@) netinet6 ~ in6_proto.c > Use a global table for domains instead of building a list at run time. > As a side effect there's no need to run if_attachdomain() after the > list of domains has been built. > ok claudio@, reyk@ (mpi@) ~ in6.c ~ in6_ifattach.c > Do not install connected routes on loopback interfaces. > Previously loopback connected routes were managed via the global list > of prefixes, which mean that systems with AUTOCONF'd addresses did not > see them in the routing table. > This also makes inet6 route creation coherent with inet. (mpi@) ~ nd6.c ~ nd6.h > The return value of nd6_cache_lladdr() is never used so make it a void. > Fewer "struct rtentry" left in the wild! (mpi@) ~ ip6_forward.c ~ ip6_output.c > `encif' should only be used under #ifdef NPF. > Reported by jsg@, ok deraadt@ (mpi@) ~ ip6_output.c > Compute the checksum before looping back the copy of a multicast packet. > Found while comparing IPv4 and IPv6 versions. > ok naddy@ (mpi@) ~ in6_src.c > Convert ip{,6}_output() (cached) route entry checks to rtisvalid(9). > ok bluhm@ (mpi@) ~ in6_var.h > Kill unused ``ia_net'' field in the struct in6_ifaddr, bad copy > paste from the IPv4 time. > While here update the comment about ``ia6_ndpr'' it's now only > used for autoconf. (mpi@) ~ in6_src.c > Revert the two uses of rtisvalid(9) for the moment, it breaks dhclient(8) > configured networks on RAMDISK kernels. > The problem is that the default route installed by dhclient(8) does not > have the RTF_UP flag in this environement and rtisvalid(9) doesn't allow > you to use a RTF_DOWN route. (mpi@) ~ in6_src.c > Convert ip{,6}_output() (cached) route entry checks to rtisvalid(9). > This introduces a behavior change as we now reject !RTF_UP routes to > output packets. This stricter check exposed a bug in the setup of > new routes and was the reason for the previous revert. This should > be now fixed by r1.229 of sys/net/route.c . > ok bluhm@ (mpi@) ~ in6_src.c > Revert (again!) the two uses of rtisvalid(9), they break NFS! > Found the hardway by naddy@ (mpi@) ~ in6_ifattach.c > Change the order of operations for loopback interfaces to have > ::1 configured before fe80::1. > (lo0:0) in pf should resolve to 127.0.0.1 ::1. > reported by and ok mikeb@ (mpi@) ~ in6_proto.c > Make every subsystem using a radix tree call rn_init() and pass the > length of the key as argument. > This way every consumer of the radix tree has a chance to explicitly > initialize the shared data structures and no longer rely on another > subsystem to do the initialization. > As a bonus ``dom_maxrtkey'' is no longer used an die. > ART kernels should now be fully usable because pf(4) and IPSEC properly > initialized the radix tree. > ok chris@, reyk@ (mpi@) ~ in6.c > Tunnels also need a cloning route. > Fix a regression reported by Brad. (mpi@) netmpls ~ mpls_proto.c > Use a global table for domains instead of building a list at run time. > As a side effect there's no need to run if_attachdomain() after the > list of domains has been built. > ok claudio@, reyk@ (mpi@) ~ mpls_proto.c > Make every subsystem using a radix tree call rn_init() and pass the > length of the key as argument. > This way every consumer of the radix tree has a chance to explicitly > initialize the shared data structures and no longer rely on another > subsystem to do the initialization. > As a bonus ``dom_maxrtkey'' is no longer used an die. > ART kernels should now be fully usable because pf(4) and IPSEC properly > initialized the radix tree. > ok chris@, reyk@ (mpi@) nfs ~ nfs_serv.c > Keep track of a length for free() in error paths. Be careful, > because the nfsm_strsiz() macro sneakily modifies a parameter! > ok beck (deraadt@) ~ nfs_boot.c > Replace sockaddr casts with the proper satosin(), ... calls. > From David Hill; OK mpi@; tested kspillner@; tweaks bluhm@ (bluhm@) ~ nfs_syscalls.c > The nfsrv_descript_pl pool never gets used in interrupt context. > ok deraadt@ (kettenis@) stand ~ boot/bootarg.c ~ boot/bootarg.h > Initial commit of uefi boot loader of OpenBSD. > ok deraadt yuo (yasuoka@) sys ~ domain.h > Use a global table for domains instead of building a list at run time. > As a side effect there's no need to run if_attachdomain() after the > list of domains has been built. > ok claudio@, reyk@ (mpi@) ~ srp.h > mattieu baptiste reported a problem with bpf+srps where the per cpu > hazard pointers were becoming corrupt and therefore panics. > the problem turned out to be that bridge_input calls if_input on > behalf of a hardware interface which then calls bpf_mtap at splsoftnet, > while the actual hardware nic calls if_input and bpf_mtap at splnet. > the hardware interrupts ran in the middle of the bpf calls bridge > runs at softnet. this means the same srps are being entered and > left on the same cpu at different ipls, which led to races because > of the order of operations on the per cpu hazard pointers. > after a lot of experimentation, jmatthew@ figured out how to deal > with this problem without introducing per cpu critical sections > (ie, splhigh) calls in srp_enter and srp_leave, and without introducing > atomic operations. > the solution is to iterate forward through the array of hazard > pointers in srp_enter, and backward in srp_leave to clear. if you > guarantee that you leave srps in the reverse order to entering them, > then you can use the same set of SRPs at different IPLs on the same > CPU. > the ordering requirement is a problem if we want to build linked > data structures out of srps because you need to hold a ref to the > current element containing the next srp to use it, before giving > up the current ref. we're adding srp_follow() to support taking the > next ref and giving up the current one while preserving the structure > of the hazard pointer list. srp_follow() does this by reusing the > hazard pointer for the current reference for the next ref. > both mattieu baptiste and jmatthew@ have been hitting this pretty > hard with a tweaked version of srp+bpf that uses srp_follow instead > of interleaved srp_enter/srp_leave sequences. neither can reproduce > the panics anymore. > thanks to mattieu for the report and tests > ok jmatthew@ (dlg@) ~ domain.h > Make every subsystem using a radix tree call rn_init() and pass the > length of the key as argument. > This way every consumer of the radix tree has a chance to explicitly > initialize the shared data structures and no longer rely on another > subsystem to do the initialization. > As a bonus ``dom_maxrtkey'' is no longer used an die. > ART kernels should now be fully usable because pf(4) and IPSEC properly > initialized the radix tree. > ok chris@, reyk@ (mpi@) ~ types.h > These days pcc defines __GNUC__ and we don't support gcc2. Also needed > for upcoming CompCert port. > Final version of the diff is from kettenis@ with input from jsg@ and tedu@. > ok kettenis@, jsg@, "I agree" millert@ (daniel@) uvm ~ uvm_map.c > size for free(), and make allocation side look similar (deraadt@) ~ uvm_mmap.c ~ uvm_swap.c > sizes for free(); ok semarie (deraadt@) == usr.bin =========================================================== 12/13 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/usr.bin awk ~ run.c > When rand() was made fully random, the return value of srand() was > also affected incorrectly. Noticed by Stephane Chazelas. This reverts > the return value of srand() to the old (not very useful) behaviour. > This also allows toggling rand() to strong/weak based upon whether > srand() is called without/with an argument. > Long discussion and work with millert > ok beck (deraadt@) bc ~ tty.c > Avoid unintended problems with operator precedence when doing an > assignment and comparison. > ok deraadt@ looks correct millert@ jung@ (jsg@) calendar ~ calendars/calendar.computer > append the year Zilog Z-80 8-bit microprocessor was introduced; > a nice processor, learnt assembly on a Z-80A when I was twelve years old. > ok jmc@ (sobrado@) compress ~ main.c > Ignore setuid/setgid settings from a compress/gzip file; original CSRG > code. Found by trondd exercising coverage of tame in gzip. > ok guenther millert kettenis (deraadt@) cvs ~ diff3.c > Add brackets to clarify assignments that are the result of a test operator. > ok deraadt@ looks correct millert@ jung@ (jsg@) diff3 ~ diff3prog.c > Add brackets to clarify assignments that are the result of a test operator. > ok deraadt@ looks correct millert@ jung@ (jsg@) doas ~ doas.c ~ doas.conf.5 > only need to restrict exec path if the rule specifies a command. > add a hint about path restrictions to man page. > ok deraadt espie (tedu@) ~ parse.y > increment the line number after the line continuation; ok tedu (mikeb@) ~ doas.c > replace permfail calls with errc. the permfail calls had been retained for > clarity and/or future use, but if people send me diffs fixing it, it's > not worth fighting for. from Martin Natano (tedu@) mandoc ~ mdoc_html.c > If an .Fo macro lacks its mandatory argument, don't die on an assertion. > Bug found by jsg@ with afl. (schwarze@) ~ term.c > Drop leading, internal, and trailing blank characters in \o (overstrike) > escape sequences; that's cleaner for all output modes, and it's required > to prevent the PostScript/PDF formatter from dying on assertions. > Bug found by jsg@ with afl. (schwarze@) ~ man.c ~ man_macro.c > Fill mode changes don't break next-line scope in all cases, > in particular not for tagged paragraphs. > Issue found by Christian Neukirchen <chneukirchen at gmail dot com> > in the exiv2(1) manual page. (schwarze@) nc ~ netcat.c > synchronize synopsis and usage. (sobrado@) netstat ~ mbuf.c > Fix mbuf memory accounting after recent *8 pool size change. > Use the ``pr_pgsize'' argument instead of assuming that pool page > sizes are identical to the value returned by getpagesize(3). > Issue reported by trondd <trondd AT kagu-tsuchi DOT com> on tech@. > ok millert@, tedu@ (mpi@) rcs ~ ci.c > Avoid unintended problems with operator precedence when doing an > assignment and comparison. > ok deraadt@ looks correct millert@ jung@ (jsg@) ~ diff3.c > Add brackets to clarify assignments that are the result of a test operator. > ok deraadt@ looks correct millert@ jung@ (jsg@) sndiod ~ dev.c ~ sndiod.1 > typos in comments: xfree -> free (ratchov@) ~ sndiod.1 > In the last commit, the man-page change was committed by mistake, > backit out. (ratchov@) ssh ~ auth.c TAGGED OPENBSD_5_8 > MFC, original commit by djm@ > "fix inverted logic that broke PermitRootLogin; > reported by Mantas Mikulenas; ok markus@" (jasper@) ~ authfd.c ~ krl.c ~ monitor.c ~ sshkey.c TAGGED OPENBSD_5_8 > Fix occurrences of "r = func() != 0" which result in the wrong error > codes being returned due to != having higher precedence than =. > ok deraadt@ markus@ (jsg@) ~ sshconnect.c TAGGED OPENBSD_5_8 > remove extra newline in nethack-mode hostkey; > from Christian Hesse bz#2686 (djm@) ~ monitor.c TAGGED OPENBSD_5_8 > don't record hostbased authentication hostkeys as user keys > in test for multiple authentication with the same key (djm@) ~ ssh_config.5 TAGGED OPENBSD_5_8 > better document ExitOnForwardFailure; bz#2444, ok dtucker@ (djm@) ~ sshconnect.c TAGGED OPENBSD_5_8 > correct function name in error messages (djm@) ~ ssh.c TAGGED OPENBSD_5_8 > add a debug2() right before DNS resolution; it's a place where > ssh could previously silently hang for a while. bz#2433 (djm@) ~ ssh_config.5 TAGGED OPENBSD_5_8 > full stop belongs outside the brackets, not inside; (jmc@) ~ ssh.c ~ sshd.c TAGGED OPENBSD_5_8 > Plug minor memory leaks when options are used more than once. bz#2182, > patch from Tiago Cunha, ok deraadt djm (dtucker@) tmux ~ cmd-show-environment.c ~ cmd-swap-pane.c ~ server-client.c ~ tmux.c ~ xterm-keys.c > Some style nits and dead assignments. (nicm@) ~ client.c ~ server.c ~ tmux.c ~ tmux.h > Event base does not need to be global. (nicm@) ~ client.c ~ tmux.c ~ tmux.h > Login shell can be a client flag, and move the exec code into client.c. > (nicm@) ~ tmux.c ~ tmux.h > Path from $TMUX does not need to be global anymore. (nicm@) ~ cmd.c ~ tmux.h > All the cmd_*_entry declarations do not need to be in tmux.h. (nicm@) ~ cfg.c ~ server.c ~ tmux.h > Move initial conf load into cfg.c. (nicm@) ~ cfg.c ~ tmux.c ~ tmux.h > Work out config file when needed not at startup. (nicm@) ~ tmux.h > Remove dead_clients which is no longer used. (nicm@) ~ session.c > Fix a spelling error, sesson -> session. (nicm@) ~ log.c > Pass logging through vis(3). (nicm@) ~ input.c > Log the whole new input buffer once rather than each byte. (nicm@) ~ input.c ~ server-client.c ~ tty-term.c > Tweak some error messages/comments. (nicm@) ~ grid.c > Fix indentation of grid_string_cells_fg. (nicm@) ~ tmux.h ~ tty-keys.c ~ tty.c > We no longer need the terminal service class, so don't bother asking for > it. (nicm@) ~ alerts.c ~ tmux.h ~ tty.c > A one line helper function is a little silly. (nicm@) ~ input.c > Log pane which received input data. (nicm@) ~ format.c ~ tmux.c > A couple of style nits. (nicm@) ~ cmd-wait-for.c > Change wait-for to work when the signal comes before the wait, also use > some helper functions and add some logging. (nicm@) tsort ~ tsort.c > wrong index in error message (espie@) ~ tsort.c > indent is 8 not 4 (espie@) ~ tsort.c > reorg code, preliminary step to more cleanup > - split the two blobs in main into separate functions > - use return instead of exit > okay millert@ (espie@) units ~ units.lib > update currency exchange rates; (jmc@) w ~ w.c > calculate screen size way earlier, this will provide some opportunities > for taming the string manipulation in the later half of the program. > (deraadt@) == usr.sbin ========================================================== 13/13 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/usr.sbin acpidump ~ Makefile ~ acpidump.c > Modify acpidump to work on systems booted from efi boot. Use the ACPI > config address passed through the boot parameter. > ok mlarkin (yasuoka@) ~ acpidump.c > zap extra newline that snuck in (jasper@) bgpd ~ rde.c ~ rde_attr.c > rename a variable "err" to "error" (deraadt@) portmap ~ portmap.c > stop defining a local copy of perror(); libc/rpc no longer uses it. > ok beck millert miod (deraadt@) rpc.lockd ~ test.c > Avoid unintended problems with operator precedence when doing an > assignment and comparison. > ok deraadt@ looks correct millert@ jung@ (jsg@) smtpd ~ smtp_session.c > the session kicking mechanism has an accounting bug leading to some legit > sessions being kicked if they generate too many consecutive errors. > remove the mechanism altogether until it is redesigned. (gilles@) ~ iobuf.c > move paren to correctly return a negative error value instead of the > result of the < 0 test which would be 1. > ok gilles@ (jsg@) ~ aliases.5 ~ smtpd.8 ~ smtpd.conf.5 > Document spool dir in smtpd's FILES section and be consistent with > using compact lists for FILES in the other manual pages. OK gilles@ > (millert@) syslogd ~ syslogd.c > The !prog and +host features allow to select log messages from a > specific programm or host. It does not make sense to truncate the > string from the config at some character from a list. Just take > whatever the user specified as progname or hostname. If it contains > funky charactes it will not match and the action is not taken. This > fixes matching with IP addresses if syslogd is started with -n. > OK semarie@ (bluhm@) ~ syslogd.c > Bind the *:514 UDP socket of syslogd with SO_REUSEADDR. This avoids > conflicts with other processes bound to a specific address with the > same port. Syslogd uses this socket basically for outgoing traffic > to remote UDP log servers, so increase the chance that it works. > OK jung@ benno@ (bluhm@) ~ syslogd.c > Instead of creating a line buffer on the stack, tcp_readcb() can > use the global linebuf like the other libevent read callbacks. > OK jung@ (bluhm@) ~ syslogd.c > In sendsyslog(2) I got the plural s of messages right. The messages > of syslogd(8) should be alike. syslogd: dropped 1 message > OK lteo@ millert@ (bluhm@) tcpdump ~ print-radius.c > hex array of bytes should be printed fixed-form; from Jihyun Yu (deraadt@) traceroute ~ traceroute.c > warnx(3) has an implicit \n at the end. > pointed out by deraadt@ (florian@) unbound ~ libunbound/libunbound.c > Avoid unintended problems with operator precedence when doing an > assignment and comparison. > ok deraadt@ looks correct millert@ jung@ (jsg@) wsfontload ~ wsfontload.c > Avoid floating point exception when an invalid font width was specified. > Also print actually helpful error messages when command line arguments > are invalid. > ok miod@ (tobias@) ~ wsfontload.c > UINT_MAX would overflow the integer calculation later on, leading to > floating point exception just like -1 would do. Use INT_MAX, which is > already way too high to make sense anyway. (tobias@) =============================================================================== _______________________________________________ owc mailing list [email protected] http://www.squish.net/mailman/listinfo/owc
