OpenBSD src changes summary for 2016-03-21 ==========================================
bin/ksh games/hunt lib/libc lib/libedit lib/librthread lib/libssl libexec/ld.so regress/bin regress/usr.sbin share/man sys/arch/octeon/include sys/arch/octeon/octeon sys/arch/sparc64/dev sys/dev/ic sys/dev/pci sys/dev/usb sys/kern sys/netinet sys/netinet6 sys/sys usr.bin/kdump usr.bin/netstat usr.bin/tcpbench usr.sbin/npppd usr.sbin/radiusd usr.sbin/ypbind == bin =============================================================== 01/09 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/bin ksh ~ c_ksh.c ~ ksh.1 ~ sh.1 > More ksh POSIX compliance fixes by Martijn Dekker: > This simple patch makes the 'command' builtin POSIX-compliant and > consistent with other current shells. It fixes two things: > a) 'command -v' does not find shell reserved words (a.k.a. keywords). > For instance, 'command -v select' outputs nothing but should output > 'select'. > b) 'command -pv' always outputs the path of an external command, even > if 'command -p' would execute a builtin. For instance, 'command -p kill' > executes the 'kill' builtin, as expected, but 'command -pv kill' outputs > '/bin/kill'. The '-v' option is supposed to reflect what would actually > be executed, so 'command -pv kill' should output 'kill'. The -p option > sets the PATH to a default system value before doing the search, but > that has no bearing on the fact that builtins take precedence over > external commands. > The patch fixes both issues for 'command' without affecting the > behaviour of the ksh-specific builtin 'whence', which is handled by the > same C function. > Regression test added to obsd-regress.t. > Issues found and fixed by Martijn Dekker, ok millert@ (tb@) == games ============================================================= 02/09 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/games hunt ~ huntd/answer.c ~ huntd/driver.c > Instead of creating a socket with socket() or accept() and then > setting the O_NONBLOCK flag on it with fcntl(F_SETFL) afterwards, > just pass SOCK_NONBLOCK to socket() or accept4() and get it right > to begin with. > ok millert@ krw@ beck@ deraadt@ jca@ (guenther@) == lib =============================================================== 03/09 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/lib libc - arch/alpha/gdtoa/kbind.h - arch/amd64/gdtoa/kbind.h - arch/arm/gdtoa/kbind.h - arch/hppa/gdtoa/kbind.h - arch/hppa64/gdtoa/kbind.h - arch/i386/gdtoa/kbind.h - arch/m88k/gdtoa/kbind.h - arch/mips64/gdtoa/kbind.h - arch/powerpc/gdtoa/kbind.h - arch/sh/gdtoa/kbind.h - arch/sparc/gdtoa/kbind.h - arch/sparc64/gdtoa/kbind.h ~ dlfcn/init.c > The asm in the MD_DISABLE_KBIND macro was too fragile and broke alpha and > hppa. > So instead, do the kbind disabling with syscall(). > debugging and ok deraadt@, ok kettenis@ (guenther@) ~ shlib_version ~ gen/syslog_r.c ~ hidden/syslog.h ~ sys/Makefile.inc ~ sys/sendsyslog.2 ~ sys/stack_protector.c > Rename the system call sendsyslog2 to sendsyslog. Keep the old one > as osendsyslog for a while. The three argument variant is the only > one that will stay. > input kettenis@; OK deraadt@ (bluhm@) libedit ~ read.c > Merge a few simple fixes from NetBSD: > NetBSD rev. 1.68 2012/09/10 christos (bugfixes from Steffen Nurpmeso) > * el_wgetc(): set el_errno after read_char() failure > * el_wgets(): flag error condition after read_getcmd() failure > NetBSD rev. 1.69 2012/09/11 christos (bugfix from Christos Zoulas) > * read_getcmd(): return failure after el_wgetc() failure > NetBSD rev. 1.75 2016/02/12 christos (cleanup from Christos Zoulas) > * read_getcmd(): use a constant rather than a magical number (schwarze@) ~ Makefile ~ chared.c ~ common.c ~ eln.c ~ keymacro.c ~ read.c ~ search.c > Reduce the FUN() macro madness by no longer applying it to el_[w]getc(3). > Always use el_wgetc(3) internally. In the !WIDECHAR case, casting > the result to (Char) is safe because the function returns a byte > rather than a character in that case. > No functional change except for fixing a printf(3) format string issue > when compiled with DEBUG_READ and WIDECHAR. > OK czarkoff@ (schwarze@) ~ chartype.c ~ chartype.h ~ el.c ~ el.h ~ eln.c ~ read.c ~ read.h ~ readline.c > Make the read_char() function always take a wchar_t * argument. > On first sight, it might look as if this required a bump because > it seems to change the public type el_rfunc_t. But we only compile > with WIDECHAR, and in that case, there is no change in the interface. > This also simplifies some logic by getting rid of the NARROW_READ flag > which was broken anyway. > OK czarkoff@ (schwarze@) ~ editline.3 > fix el_{w,}getc documentation; > OK czarkoff@ (schwarze@) ~ editline.3 > Markup fixes: use .Ev and .Er where appropriate. > While here, also use \-1 rather than -1; not sure that's really > better, but Thomas is right it should at least be consistent > within a page. > From Thomas Klausner <wiz @ NetBSD>. (schwarze@) ~ chartype.c ~ chartype.h ~ eln.c > Christos Zoulas just rescinded clauses 3 & 4 of his licenses, see > NetBSD chartype.c rev. 1.23, chartype.h rev. 1.25, eln.c rev. 1.28. > No code change. (schwarze@) librthread ~ shlib_version > Rename the system call sendsyslog2 to sendsyslog. Keep the old one > as osendsyslog for a while. The three argument variant is the only > one that will stay. > input kettenis@; OK deraadt@ (bluhm@) libssl ~ src/crypto/x509/x509_att.c ~ src/crypto/x509/x509_v3.c > Return zero from two functions on allocation failure instead of always > returning one (indicating success). Each function has only a single > usage, and both usages check the return value. > Merged from BoringSSL 0ce78a757d815c0dde9ed5884229f3a5b2cb3e9c: > https://boringssl.googlesource.com/boringssl/+/0ce78a757d815c0dde9ed5884229 > f3a5b2cb3e9c%5E!/#F0 > ok beck@ (mmcc@) == libexec =========================================================== 04/09 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/libexec ld.so ~ util.c ~ alpha/ldasm.S ~ alpha/syscall.h ~ amd64/ldasm.S ~ amd64/syscall.h ~ arm/ldasm.S ~ arm/syscall.h ~ hppa/ldasm.S ~ hppa/syscall.h ~ i386/ldasm.S ~ i386/syscall.h ~ m88k/ldasm.S ~ m88k/syscall.h ~ mips64/ldasm.S ~ mips64/syscall.h ~ powerpc/ldasm.S ~ powerpc/syscall.h ~ sh/ldasm.S ~ sh/syscall.h ~ sparc/ldasm.S ~ sparc/syscall.h ~ sparc64/ldasm.S ~ sparc64/syscall.h > Switch ld.so's stack smash handler from sendsyslog to sendsyslog2 > and pass the LOG_CONS flag like libc's handler. > ok deraadt@ bluhm@ (who had a similar diff) (guenther@) ~ Symbols.map ~ dlfcn.c > Provide _dlctl(), an alternate name for dlctl() that's in the reserved > namespace, for use by libpthread (guenther@) ~ util.c ~ alpha/ldasm.S ~ alpha/syscall.h ~ amd64/ldasm.S ~ amd64/syscall.h ~ arm/ldasm.S ~ arm/syscall.h ~ hppa/ldasm.S ~ hppa/syscall.h ~ i386/ldasm.S ~ i386/syscall.h ~ m88k/ldasm.S ~ m88k/syscall.h ~ mips64/ldasm.S ~ mips64/syscall.h ~ powerpc/ldasm.S ~ powerpc/syscall.h ~ sh/ldasm.S ~ sh/syscall.h ~ sparc/ldasm.S ~ sparc/syscall.h ~ sparc64/ldasm.S ~ sparc64/syscall.h > Rename the system call sendsyslog2 to sendsyslog. Keep the old one > as osendsyslog for a while. The three argument variant is the only > one that will stay. > input kettenis@; OK deraadt@ (bluhm@) == regress =========================================================== 05/09 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/regress bin ~ ksh/obsd-regress.t > More ksh POSIX compliance fixes by Martijn Dekker: > This simple patch makes the 'command' builtin POSIX-compliant and > consistent with other current shells. It fixes two things: > a) 'command -v' does not find shell reserved words (a.k.a. keywords). > For instance, 'command -v select' outputs nothing but should output > 'select'. > b) 'command -pv' always outputs the path of an external command, even > if 'command -p' would execute a builtin. For instance, 'command -p kill' > executes the 'kill' builtin, as expected, but 'command -pv kill' outputs > '/bin/kill'. The '-v' option is supposed to reflect what would actually > be executed, so 'command -pv kill' should output 'kill'. The -p option > sets the PATH to a default system value before doing the search, but > that has no bearing on the fact that builtins take precedence over > external commands. > The patch fixes both issues for 'command' without affecting the > behaviour of the ksh-specific builtin 'whence', which is handled by the > same C function. > Regression test added to obsd-regress.t. > Issues found and fixed by Martijn Dekker, ok millert@ (tb@) usr.sbin - syslogd/args-sendsyslog-syscall2.pl ~ syslogd/args-sendsyslog-console.pl ~ syslogd/args-sendsyslog-dropped.pl ~ syslogd/args-sendsyslog-native.pl ~ syslogd/args-sendsyslog-syscall.pl ~ syslogd/args-tls-cafile-fake.pl ~ syslogd/funcs.pl + syslogd/args-sendsyslog-flags.pl > System call sendsyslog2 is gone, adapt tests. (bluhm@) == share ============================================================= 06/09 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/share man ~ man9/pmap.9 > s/the pmap_init_module/the pmap module/ > In r1.15 some occurrences of 'pmap' have been replaced with 'pmap_init' > by accident, due to unrelated refactoring. > ok jmc (natano@) == sys =============================================================== 07/09 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/sys arch/octeon/include ~ octeonvar.h > On Octeon systems, U-Boot provides a list of usable memory regions. Use > the list instead of hardcoded regions in memory setup. Works on > EdgeRouter Lite, EdgeRouter Pro, Lanner MR326b and Movidis 16x. > Tested by jj@ > Tested by and ok jmatthew@ (visa@) arch/octeon/octeon ~ machdep.c > On Octeon systems, U-Boot provides a list of usable memory regions. Use > the list instead of hardcoded regions in memory setup. Works on > EdgeRouter Lite, EdgeRouter Pro, Lanner MR326b and Movidis 16x. > Tested by jj@ > Tested by and ok jmatthew@ (visa@) arch/sparc64/dev ~ vnet.c > Plug a memory leak in vnet(4) ioctl code path. > ok kettenis@ (stsp@) dev/ic ~ rtwn.c ~ rtwnvar.h > The common part of rtwn(4) needs help from attachment drivers to determine > the chip type. Require chip type as a parameter to rtwn_attach(). > ok mpi@ (stsp@) ~ rt2860.c ~ rt2860var.h > Fix watchdog timeouts and dropped frames under load with RT2860 ral(4). > On full tx ring, ring->cur wraps to an active tx descriptor. Passing > that wrapped value to the card was observed to cause general flakiness. > Fix prevents the wrap at the cost of reducing usable tx descriptors by one. > Patch by Richard Procter via bugs@ > Tested by Richard on RT2860 and by me on RT3090 and RT2700. > ok mpi@ dlg@ (stsp@) ~ rt2860.c ~ rt2860var.h > In ral(4) RT2860 code, replace custom defrag with m_defrag(). > This fixes an error in the existing code: the "hopeless case" guard > equivales 'ring now full', so oactive is never set: the code drops any mbuf > that would fill the ring. This occurs often in practice. > The new code avoids some hoop-jumping. Currently, one tx dma-map can fill > the tx ring. Therefore an mbuf that fits a dma-map may yet not fit into the > tx > ring's remaining space. To be sure it can, we must in general count the > mbuf's fragments and, if necessary, defrag it and reload the dmamap. > Patch by Richard Procter via bugs@ > Tested by Richard on RT2860 and by me on RT3090 and RT2700. > ok mpi@ dlg@ (stsp@) dev/pci ~ if_rtwn.c > The common part of rtwn(4) needs help from attachment drivers to determine > the chip type. Require chip type as a parameter to rtwn_attach(). > ok mpi@ (stsp@) dev/usb ~ if_urtwn.c > Replace magic number in urtwn(4) with corresponding macro from > ic/r92creg.h. (stsp@) kern ~ init_sysent.c ~ kern_pledge.c ~ subr_log.c ~ syscalls.c ~ syscalls.master > Rename the system call sendsyslog2 to sendsyslog. Keep the old one > as osendsyslog for a while. The three argument variant is the only > one that will stay. > input kettenis@; OK deraadt@ (bluhm@) netinet ~ tcp_input.c ~ tcp_var.h > Add a tcps_sc_seedrandom counter in TCP SYN cache and netstat -s. > This shows how often the hash function is reseeded and the random > bucket distribution changes. > OK mpi@ claudio@ (bluhm@) ~ in_pcb.h > Extract in6_pcbaddrisavail() from in6_pcbbind(), and use it when > checking for source availability in udp6_output(); This time with > all the files. > Ok jca@ bluhm@ (vgross@) netinet6 ~ in6_pcb.c ~ udp6_output.c > Extract in6_pcbaddrisavail() from in6_pcbbind(), and use it when > checking for source availability in udp6_output(); This time with > all the files. > Ok jca@ bluhm@ (vgross@) sys ~ syscall.h ~ syscallargs.h > Rename the system call sendsyslog2 to sendsyslog. Keep the old one > as osendsyslog for a while. The three argument variant is the only > one that will stay. > input kettenis@; OK deraadt@ (bluhm@) == usr.bin =========================================================== 08/09 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/usr.bin kdump ~ kdump.c > Handle kbind()'s third argument correctly (guenther@) netstat ~ inet.c > Add a tcps_sc_seedrandom counter in TCP SYN cache and netstat -s. > This shows how often the hash function is reseeded and the random > bucket distribution changes. > OK mpi@ claudio@ (bluhm@) tcpbench ~ tcpbench.c > Instead of creating a socket with socket() or accept() and then > setting the O_NONBLOCK flag on it with fcntl(F_SETFL) afterwards, > just pass SOCK_NONBLOCK to socket() or accept4() and get it right > to begin with. > ok millert@ krw@ beck@ deraadt@ jca@ (guenther@) == usr.sbin ========================================================== 09/09 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/usr.sbin npppd ~ l2tp/l2tpd.c ~ pptp/pptpd.c > Instead of creating a socket with socket() or accept() and then > setting the O_NONBLOCK flag on it with fcntl(F_SETFL) afterwards, > just pass SOCK_NONBLOCK to socket() or accept4() and get it right > to begin with. > ok millert@ krw@ beck@ deraadt@ jca@ (guenther@) radiusd ~ radiusd.c ~ radiusd_radius.c > Instead of creating a socket with socket() or accept() and then > setting the O_NONBLOCK flag on it with fcntl(F_SETFL) afterwards, > just pass SOCK_NONBLOCK to socket() or accept4() and get it right > to begin with. > ok millert@ krw@ beck@ deraadt@ jca@ (guenther@) ypbind ~ ypbind.c > Instead of creating a socket with socket() or accept() and then > setting the O_NONBLOCK flag on it with fcntl(F_SETFL) afterwards, > just pass SOCK_NONBLOCK to socket() or accept4() and get it right > to begin with. > ok millert@ krw@ beck@ deraadt@ jca@ (guenther@) =============================================================================== _______________________________________________ odc mailing list [email protected] http://www.squish.net/mailman/listinfo/odc
