OpenBSD src changes summary for 2017-02-12 to 2017-02-19 inclusive
==================================================================

bin/cat                                 bin/chmod
bin/ksh                                 distrib/arm64
distrib/miniroot                        distrib/sets
distrib/special                         etc/Makefile
etc/mtree/4.4BSD.dist                   etc/mtree/special
etc/rc.d/rc.subr                        gnu
gnu/lib/libstdc++-v3                    gnu/usr.bin/binutils-2.17
gnu/usr.bin/cc                          gnu/usr.bin/clang
gnu/usr.bin/perl                        lib/csu
lib/libc                                lib/libcrypto
lib/libcxx                              lib/libcxxabi
lib/libssl                              libexec/ld.so
regress/bin                             regress/sys
regress/usr.bin                         sbin/dhclient
share/man                               sys/arch/alpha/alpha
sys/arch/amd64/amd64                    sys/arch/arm/arm
sys/arch/arm/include                    sys/arch/arm64/arm64
sys/arch/arm64/dev                      sys/arch/arm64/include
sys/arch/hppa/hppa                      sys/arch/i386/i386
sys/arch/loongson/dev                   sys/arch/loongson/include
sys/arch/loongson/loongson              sys/arch/m88k/include
sys/arch/m88k/m88k                      sys/arch/mips64/mips64
sys/arch/octeon/dev                     sys/arch/powerpc/powerpc
sys/arch/sh/sh                          sys/arch/sparc64/include
sys/arch/sparc64/sparc64                sys/dev
sys/dev/acpi                            sys/dev/ic
sys/dev/isa                             sys/dev/pci
sys/dev/pv                              sys/dev/usb
sys/kern                                sys/net
sys/netinet                             sys/netinet6
sys/sys                                 sys/uvm
usr.bin/file                            usr.bin/fmt
usr.bin/mandoc                          usr.bin/sndiod
usr.bin/ssh                             usr.bin/tmux
usr.sbin/bgpctl                         usr.sbin/bgpd
usr.sbin/dhcpd                          usr.sbin/dhcrelay
usr.sbin/nsd                            usr.sbin/pkg_add
usr.sbin/smtpd                          usr.sbin/syspatch
usr.sbin/unbound                        usr.sbin/vmd
usr.sbin/ypbind                         

== bin =============================================================== 01/12 ==

  http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/bin

cat

  ~ Makefile                              

  > More whitespace, helps reading
  > ok ajacoutot@ (jca@)

chmod

  ~ chmod.c                               

  > In chmod's symbolic mode without -h and -R flags, a missing FTS_COMFOLLOW
  > flag to fts_open led to the following behavior: the symlink's permissions
  > were read, changed according to the command line, and transferred to the
  > target file.  chflags had a similar problem while chmod was unaffected.
  > Regression introduced in r1.33.  Reported by Christopher Wellons, thanks!
  > ok guenther (tb@)

ksh

  ~ ksh.1                                 

  > Assigning to RANDOM calls srand_deterministic(3), not srand(3),
  > and simplify the next sentence; triggered by a different patch
  > from Anton dot Lindqvist at gmail dot com.
  > OK millert@ tb@ (schwarze@)

== distrib =========================================================== 02/12 ==

  http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/distrib

arm64

  ~ miniroot/Makefile                     ~ ramdisk/Makefile
  ~ ramdisk/install.md                    ~ ramdisk/list

  > Add miniroot and ramdisk hooks for the Raspberry Pi 3.
  > Unlike the TI boot ROM the Broadcom one doesn't understand FAT12, only
  > FAT16 or FAT32.
  > The u-boot-aarch64 and raspberrypi-firmware packages are now required to
  > run make release on arm64.
  > ok patrick@ (jsg@)

miniroot

  ~ install.sub                           

  > In autoinstall, no need to create /mnt/root/.ssh if the install script
  > provided an ssh public key, the directory is in the base set now.
  > From tb@, discussed with rpe@ and tb@ (landry@)

  ~ install.sub                           

  > Rename functions to match the predominantly used verb_noun naming scheme
  > and to improve readability.
  > addhostent -> add_hostent
  > askpass -> ask_pass
  > askpassword -> ask_password
  > makedev -> make_dev
  > showcols -> show_cols
  > startcgiinfo -> start_cgiinfo
  > waitcgiinfo -> wait_cgiinfo
  > OK krw@, tb@ (rpe@)

  ~ install.sub                           

  > Fix comment. (rpe@)

  ~ install.sub                           

  > These variables are global so use uppercase and rename sshd and xdm
  > to START_SSHD and START_XDM to better match their purpose.
  > aperture -> APERTURE
  > defcons -> DEFCONS
  > ssh_enableroot -> SSHD_ENABLEROOT
  > sshd -> START_SSHD
  > xdm -> START_XDM
  > OK krw@, tb@ (rpe@)

  ~ install.sub                           

  > Remove an unfortunate significant trailing whitespace that ended up passing
  > a bogus argument to ftp(1), disabling redirection and running ftp(1) in the
  > background.
  > ok rpe (tb@)

sets

  ~ lists/base/mi                         ~ lists/etc/mi

  > sync (add /root/.ssh & /root/.ssh/authorized_keys) (landry@)

  ~ lists/comp/mi                         

  > sync (tb@)

  ~ lists/man/mi                          

  > sync perl manpages (afresh1@)

special

  ~ dhclient/Makefile                     

  > Switch from 'legacy' errwarn.c to standard daemon logging functions.
  > No objections heard. Feedback from millert@ guenther@ (krw@)

== etc =============================================================== 03/12 ==

  http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/etc

Makefile

  ~ Makefile                              

  > As it's done in /etc/skel for new regular users, create an empty
  > /root/.ssh/authorized_keys file with correct permissions (0600 for the
  > file, 0700 for /root/.ssh dir). Since we encourage administrators to use
  > public keys only if they want to access root account via ssh, might
  > aswell make it easier, this will be particularly useful in
  > managed/provisioned environments (think ansible & others).
  > Note that administrators might get an e-mail from security(8) if the
  > file suddenly appears after an update - this is of course expected :)
  > ok tb@ sthen@ rpe@ ajacoutot@ (landry@)

mtree/4.4BSD.dist

  ~ mtree/4.4BSD.dist                     

  > As it's done in /etc/skel for new regular users, create an empty
  > /root/.ssh/authorized_keys file with correct permissions (0600 for the
  > file, 0700 for /root/.ssh dir). Since we encourage administrators to use
  > public keys only if they want to access root account via ssh, might
  > aswell make it easier, this will be particularly useful in
  > managed/provisioned environments (think ansible & others).
  > Note that administrators might get an e-mail from security(8) if the
  > file suddenly appears after an update - this is of course expected :)
  > ok tb@ sthen@ rpe@ ajacoutot@ (landry@)

mtree/special

  ~ mtree/special                         

  > Add /root/.ssh/authorized_keys to /etc/mtree/special so that security(8)
  > checks for the correct mode/ownership.
  > prodded by ajacoutot@ (landry@)

rc.d/rc.subr

  ~ rc.d/rc.subr                          

  > Stop supporting the historical way of starting ypbind(8); that is setting
  > 'ypbind_flags=""' when domainname is set and /var/yp/binding exists.
  > This can lead to inconsistent behavior at startup since /var may not be
  > mounted yet and /etc/rc's start_daemon() will not start ypbind.
  > A.K.A. make ypbind startup consistent with all other OpenBSD daemons.
  > ok deraadt@ (ajacoutot@)

== gnu =============================================================== 04/12 ==

  http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/gnu

gnu

  ~ llvm/tools/clang/include/clang/Basic/DiagnosticSemaKinds.td

  > Disable -Wpointer-sign warnings per default
  > base gcc does the same. suggested by and ok jsg@ (stefan@)

lib/libstdc++-v3

  ~ Makefile                              

  > gcc4 on m88k still uses sjlj exceptions, as did arm before EABI. (miod@)

usr.bin/binutils-2.17

  ~ bfd/elf64-aarch64.c                   

  > elf64-aarc64 -> elf64-aarch64 in TARGET_LITTLE_NAME
  > ok patrick@ (jsg@)

  ~ binutils/readelf.c                    

  > Add an ELF machine number to string mapping for AArch64. (jsg@)

usr.bin/cc

  ~ libobjc/Makefile                      

  > gcc4 on m88k still uses sjlj exceptions, as did arm before EABI. (miod@)

usr.bin/clang

  ~ Makefile.inc                          

  > clang is installed as cc and c++ there is no need to set CC and CXX to
  > clang and clang++. (jsg@)

usr.bin/perl

  ~ Makefile.bsd-wrapper1                 

  > Correct list of perl manpages to be installed
  > Many thanks to schwarze@ for feedback and OK (afresh1@)

== lib =============================================================== 05/12 ==

  http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/lib

csu

  ~ crtbegin.c                            ~ crtbeginS.c

  > Move static variables from .data to .bss by not initializing them to zero
  > ok kettenis@ (guenther@)

libc

  ~ stdlib/malloc.3                       

  > malloc does not *need* to return page-aligned objects for size >=
  > a page.  This is not required by any standard and other malloc
  > implementation do not document (or implement) this. ok deraadt@ (otto@)

  ~ sys/poll.2                            

  > Missing opening brace. Spotted by Hiltjo Posthuma. (tb@)

  ~ stdlib/malloc.c                       

  > Add a NULL test to wrterror() to avoid a NULL deref when called from a
  > free() error path.
  > ok otto@ (jsg@)

  ~ gen/fts.c                             

  > Style improvement, no functional change.
  > As reported by Yuri Pankov, some versions of GCC whine that "tmp"
  > might be used uninitialized in fts_open(3).  Clearly, that cannot
  > actually happen, but explicitly setting it to NULL is safer anyway.
  > While here, rename the badly named variable "tmp" and make the
  > inner "if" easier to understand.
  > Feedback and OK guenther@ (schwarze@)

  ~ asr/res_send_async.c                  

  > Increase UDP packet buffer to 4096 bytes from 512. There are some really
  > broken DNS servers out there that send packets >512 bytes w/o even the
  > courtesy of trying to use EDNS0.
  > A partial workaround as more complete packet parsing solutions are
  > worked on.
  > ok jca@ eric@ (krw@)

  ~ asr/asr_debug.c                       ~ asr/asr_private.h
  ~ asr/asr_utils.c                       

  > use common errnos instead of random strings as error indicators in
  > pack/unpack contexts.
  > ok krw@ deraadt@ (eric@)

  ~ net/resolver.3                        ~ asr/asr.c
  ~ asr/asr_private.h                     ~ asr/asr_run.3
  ~ asr/asr_utils.c                       ~ asr/res_mkquery.c
  ~ asr/res_send_async.c                  

  > Add EDNS0 support.
  > EDNS allows for various DNS extensions, among which UDP DNS packets size
  > bigger than 512 bytes.  The default is still to not advertize anything.
  > ok eric@ (jca@)

  ~ asr/res_send_async.c                  

  > Use more specific error codes for invalid packets.
  > In particular, truncated packets without the TC flag set (non-compliant
  > server sending too large packets) now fail with EOVERFLOW instead of
  > EINVAL,
  > so the TCP fallback mechanism can work.
  > feedback and ok krw@ jca@ benno@ (eric@)

  ~ asr/asr_utils.c                       

  > Use T_OPT instead of literal "41".
  > Requested earlier by eric@ (jca@)

libcrypto

  ~ opensslv.h                            

  > bump to 2.5.2 (bcook@)

libcxx

  ~ Makefile                              

  > clang is installed as cc and c++ there is no need to set CC and CXX to
  > clang and clang++. (jsg@)

libcxxabi

  ~ Makefile                              

  > clang is installed as cc and c++ there is no need to set CC and CXX to
  > clang and clang++. (jsg@)

libssl

  ~ ssl_lib.c                             

  > Avoid dereferencing a pointer when reporting an error about the same
  > pointer being NULL.
  > Found by jsg@ with cppcheck; also detected by Coverity. (jsing@)

== libexec =========================================================== 06/12 ==

  http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/libexec

ld.so

  ~ m88k/rtld_machine.c                   

  > Make this build (and run) with gcc 4. (miod@)

  ~ aarch64/Makefile.inc                  

  > Match the recent change in the kernel and ask for a generic armv8-a
  > encoding rather than one based on and tuned for cortex-a57 when using
  > +nofp+nosimd. (jsg@)

  ~ alpha/rtld_machine.c                  

  > correct format strings, ok guenther (deraadt@)

  ~ malloc.c                              

  > Add NULL tests to wrterror() to avoid a NULL deref when called from
  > malloc initialization or a free() error path.
  > Prompted by libc's malloc.c rev 1.214; with correction from jsg@ and otto@
  > ok jsg@ krw@ (guenther@)

== regress =========================================================== 07/12 ==

  http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/regress

bin

  ~ chmod/Makefile                        

  > Add tests for chmod's interaction with symlinks: missing tests for -h and
  > add tests for the regression introduced in chmod.c r1.33 that transferred
  > the permissions from the link to the target file in some circumstances.
  > There are no tests for chflags since I couldn't come up with testcases
  > without undesirable side-effects like breaking make clean.
  > Four of these tests fail and will be fixed in the upcoming r1.40 to chmod.
  > Prompted by a bug report from Christopher Wellons (tb@)

  ~ chmod/Makefile                        

  > Add a regress test for the chflags problem analogous to the chmod bug
  > found by Christopher Wellons (see chmod.c r1.41). (tb@)

sys

  ~ netinet/ipsec/Makefile                ~ netinet/ipsec/README
  ~ netinet/ipsec/ipsec.conf              

  > Test IPsec with AH the same way it is already done for ESP. (bluhm@)

  ~ kern/execve/tests/goodaout.c          

  > Fix type of argv.  Found by clang.
  > ok bluhm@ (patrick@)

  ~ kern/pledge/generic/main.c            ~ kern/pledge/generic/manager.c
  ~ kern/pledge/generic/tests.out         

  > Clean up regress/sys/kern/pledge/generic tests: many tests failed because
  > wlpaths is disabled in GENERIC kernels: remove or disable failing test
  > cases. Also remove the test_mmap() function testing the prot_exec promise
  > since it would need to be run on a wxallowed partition.
  > from semarie (tb@)

  ~ kern/pledge/Makefile                  

  > re-enable generic pledge tests (tb@)

usr.bin

  ~ mandoc/eqn/matrix/Makefile            ~ mandoc/eqn/unary/sqrt.in
  ~ mandoc/eqn/unary/sqrt.out_ascii       ~ mandoc/eqn/unary/sqrt.out_html
  + mandoc/eqn/matrix/empty.in            + mandoc/eqn/matrix/empty.out_ascii
  + mandoc/eqn/matrix/empty.out_html      

  > Do not access a NULL pointer if a matrix or square root are empty.
  > Crashes found by tb@ with afl(1). (schwarze@)

  ~ mandoc/mdoc/break/twice.in            ~ mandoc/mdoc/break/twice.out_ascii
  ~ mandoc/mdoc/break/twice.out_lint      

  > Fix block scoping error if an explicit block is broken by two
  > implicit blocks (.Aq Bq Po .Pc) that left the outer breaker open
  > and could in exceptional cases, like between .Bl and .It, cause
  > tree corruption leading to NULL dereference.
  > Found by tb@ with afl(1).
  > While here, do not mark intermediate ENDBODY markers as broken. (schwarze@)

  ~ mandoc/db/out/all.mout                ~ mandoc/db/out/fn.dout
  ~ mandoc/db/out/padfentry.dout          ~ mandoc/db/out/padientry.dout
  ~ mandoc/db/out/padmentry.dout          ~ mandoc/db/out/threemacros.dout
  ~ mandoc/db/out/va.dout                 ~ mandoc/db/out/xr.dout

  > cope with macro value sorting implemented in dba.c rev. 1.6 (schwarze@)

  ~ mandoc/mdoc/Bl/breakingTa.in          

  > Surprisingly, groff does not support scaling units in .Bl -column
  > column width specifiers, so stop supporting them, too.
  > As a side effect, this fixes an assertion failure that tb@ found
  > with afl(1), triggered by: .Bl -column -4n (schwarze@)

  ~ mandoc/man/IP/literal.in              ~ mandoc/man/IP/literal.out_ascii

  > more tests for .IP/.nf interaction that i forgot to commit (schwarze@)

  ~ mandoc/mdoc/Dq/empty.out_ascii        ~ mandoc/mdoc/Lb/badargs.out_ascii
  ~ mandoc/mdoc/Lb/break.out_ascii        ~ mandoc/mdoc/Lb/eos.out_ascii
  ~ mandoc/mdoc/Op/broken.out_ascii       ~ mandoc/mdoc/St/badargs.out_ascii
  ~ mandoc/mdoc/St/call.out_ascii         
  ~ mandoc/roff/cond/before-Dd.out_ascii
  ~ mandoc/roff/de/escname.out_ascii      ~ mandoc/roff/esc/c.out_ascii

  > Many people have been complaining for a long time that ``...'' looks
  > ugly in -Tascii output.  For that reason, bentley@ submitted patches
  > to render "..." instead to groff in November 2014 (yes, more than
  > two years ago).  Carsten Kunze yesterday merged them for the upcoming
  > groff-1.22.4 release.  Yay!
  > Consequently, do the same in mandoc: Render \(Lq and \(Rq (which
  > are used for .Do, .Dq, .Lb, and .St) as '"' in -Tascii output.
  > All other output modes including -Tutf8 remain unchanged. (schwarze@)

  ~ mandoc/mdoc/Rs/Makefile               + mandoc/mdoc/Rs/allch.out_utf8
  + mandoc/mdoc/Rs/break.out_utf8         + mandoc/mdoc/Rs/empty.out_utf8
  + mandoc/mdoc/Rs/three_authors.out_utf8

  > Use typographic quotes rather than '"' for .Rs %T (no change for -Tascii
  > output, of course).  Patch from bentley@ in November 2014.  This can be
  > committed now because groff merged Anthony's patch yesterday.
  > Simply committing myself because asking Anthony to go search for
  > his two-year-old patch and have him discover that it had accumulated
  > an average of (felt) two or three conflicts per line by now would
  > have been mean, even if hilarious. (schwarze@)

  ~ ssh/unittests/utf8/tests.c            

  > add test cases for C locale; ok schwarze@ (djm@)

== sbin ============================================================== 08/12 ==

  http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/sbin

dhclient

  ~ Makefile                              ~ bpf.c
  ~ clparse.c                             ~ conflex.c
  ~ dhclient.c                            ~ dhcpd.h
  ~ dispatch.c                            ~ kroute.c
  ~ options.c                             ~ packet.c
  ~ parse.c                               ~ privsep.c
  + log.c                                 + log.h

  > Switch from 'legacy' errwarn.c to standard daemon logging functions.
  > No objections heard. Feedback from millert@ guenther@ (krw@)

  - errwarn.c                             

  > Remove now unused file. (krw@)

  ~ bpf.c                                 ~ clparse.c
  ~ dhclient.c                            ~ dispatch.c
  ~ kroute.c                              ~ options.c

  > Adjust lines that are too long. (krw@)

  ~ bpf.c                                 ~ dhclient.c
  ~ dispatch.c                            ~ kroute.c
  ~ privsep.c                             

  > Eliminate most strerror() invocations by using log_warn() and fatal()
  > instead of log_warnx() and fatalx(). A few log_info() to log_warn()
  > for the same reason.
  > Suggested by millert@. (krw@)

  ~ dhclient.c                            ~ dispatch.c

  > fatalx() prepends 'fatal in _progname:'. So eliminate redundant
  > '; exiting' suffix used by old style logging.
  > Eliminate an extra log message before fatal()'ing out with a summary
  > message. (krw@)

  ~ dhclient.8                            

  > Adopt the common verbiage other log.[ch] daemons use to describe '-d'.
  > Point out that dhcpd(8) -f is an alias for -d. (krw@)

  ~ dhclient.c                            ~ parse.c

  > Use new log.[ch] functions in parse_warn().
  > Simplify the "^" placing logic and make it apply to log entries as
  > well as terminal output.
  > Since dhclient(8) can be re-exec'd for various reasons after going
  > daemon, make sure we don't try to log to stderr if it isn't a TTY. (krw@)

== share ============================================================= 09/12 ==

  http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/share

man

  ~ man9/Makefile                         ~ man9/fork1.9
  + man9/thread_fork.9                    

  > Split up fork1():
  > - FORK_THREAD handling is a totally separate function, thread_fork(),
  > that is only used by sys___tfork() and which loses the flags, func,
  > arg, and newprocp parameters and gains tcb parameter to guarantee
  > the new thread's TCB is set before the creating thread returns
  > - fork1() loses its stack and tidptr parameters
  > Common bits factor out:
  > - struct proc allocation and initialization moves to thread_new()
  > - maxthread handling moves to fork_check_maxthread()
  > - setting the new thread running moves to fork_thread_start()
  > The MD cpu_fork() function swaps its unused stacksize parameter for
  > a tcb parameter.
  > luna88k testing by aoyama@, alpha testing by dlg@
  > ok mpi@ (guenther@)

  ~ man1/clang-local.1                    

  > mention -Wpointer-sign being off by default (jsg@)

  ~ man1/Makefile                         

  > install clang-local(1) (jsg@)

  ~ man1/clang-local.1                    ~ man1/gcc-local.1

  > tweak previous; ok jsg, who reminded me the same text in
  > gcc-local needed bumped too; (jmc@)

  ~ man9/thread_fork.9                    

  > Fix some grammar and correct a manpage section
  > prodding and ok jmc@ (guenther@)

  ~ man7/mdoc.7                           

  > Surprisingly, groff does not support scaling units in .Bl -column
  > column width specifiers, so stop supporting them, too.
  > As a side effect, this fixes an assertion failure that tb@ found
  > with afl(1), triggered by: .Bl -column -4n (schwarze@)

  ~ man4/dwctwo.4                         

  > Mention arm64 and armv7. (visa@)

  ~ man5/bsd.port.mk.5                    

  > tighter introduction (espie@)

  ~ man5/bsd.port.mk.5                    

  > bye bye addsum, use SUPDISTFILES correctly
  > also, NO_CHECKSUM is very specific and limited now (espie@)

  ~ man5/bsd.port.mk.5                    

  > bye bye PREFERRED_CIPHERS (espie@)

  ~ man5/bsd.port.mk.5                    

  > shorten description (espie@)

  ~ man5/resolv.conf.5                    

  > Add EDNS0 support.
  > EDNS allows for various DNS extensions, among which UDP DNS packets size
  > bigger than 512 bytes.  The default is still to not advertize anything.
  > ok eric@ (jca@)

  ~ man5/bsd.port.mk.5                    

  > trailing space (espie@)

  ~ man5/bsd.port.mk.5                    

  > more removing / simplifying of fetch stuff (espie@)

  ~ man5/bsd.port.mk.5                    

  > more old mirror targets (espie@)

== sys =============================================================== 10/12 ==

  http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/sys

arch/alpha/alpha

  ~ vm_machdep.c                          

  > Split up fork1():
  > - FORK_THREAD handling is a totally separate function, thread_fork(),
  > that is only used by sys___tfork() and which loses the flags, func,
  > arg, and newprocp parameters and gains tcb parameter to guarantee
  > the new thread's TCB is set before the creating thread returns
  > - fork1() loses its stack and tidptr parameters
  > Common bits factor out:
  > - struct proc allocation and initialization moves to thread_new()
  > - maxthread handling moves to fork_check_maxthread()
  > - setting the new thread running moves to fork_thread_start()
  > The MD cpu_fork() function swaps its unused stacksize parameter for
  > a tcb parameter.
  > luna88k testing by aoyama@, alpha testing by dlg@
  > ok mpi@ (guenther@)

arch/amd64/amd64

  ~ vm_machdep.c                          

  > Split up fork1():
  > - FORK_THREAD handling is a totally separate function, thread_fork(),
  > that is only used by sys___tfork() and which loses the flags, func,
  > arg, and newprocp parameters and gains tcb parameter to guarantee
  > the new thread's TCB is set before the creating thread returns
  > - fork1() loses its stack and tidptr parameters
  > Common bits factor out:
  > - struct proc allocation and initialization moves to thread_new()
  > - maxthread handling moves to fork_check_maxthread()
  > - setting the new thread running moves to fork_thread_start()
  > The MD cpu_fork() function swaps its unused stacksize parameter for
  > a tcb parameter.
  > luna88k testing by aoyama@, alpha testing by dlg@
  > ok mpi@ (guenther@)

  ~ identcpu.c                            

  > Set the default TSC quality to -1000 to be less than the i8254
  > This makes sure that TSC is not used if we really don't want to.  The
  > kernel bumps the quality to 2000 for constant invariants TSCs on
  > latest CPUs only.
  > OK mikeb@ (reyk@)

arch/arm/arm

  ~ vm_machdep.c                          

  > Split up fork1():
  > - FORK_THREAD handling is a totally separate function, thread_fork(),
  > that is only used by sys___tfork() and which loses the flags, func,
  > arg, and newprocp parameters and gains tcb parameter to guarantee
  > the new thread's TCB is set before the creating thread returns
  > - fork1() loses its stack and tidptr parameters
  > Common bits factor out:
  > - struct proc allocation and initialization moves to thread_new()
  > - maxthread handling moves to fork_check_maxthread()
  > - setting the new thread running moves to fork_thread_start()
  > The MD cpu_fork() function swaps its unused stacksize parameter for
  > a tcb parameter.
  > luna88k testing by aoyama@, alpha testing by dlg@
  > ok mpi@ (guenther@)

arch/arm/include

  ~ vmparam.h                             

  > Bump MAXTSIZ to 64M on arm.
  > Needed for ports/devel/llvm which builds large executables with a .text
  > section over 32M.  Remove the comment about the +/-32M limitation of
  > branch instructions, which can be lifted using other techniques
  > (eg cc -mlong-calls) and should not be enforced by the kernel.
  > ok guenther@ patrick@ jsg@ kettenis@ (jca@)

arch/arm64/arm64

  ~ vm_machdep.c                          

  > Split up fork1():
  > - FORK_THREAD handling is a totally separate function, thread_fork(),
  > that is only used by sys___tfork() and which loses the flags, func,
  > arg, and newprocp parameters and gains tcb parameter to guarantee
  > the new thread's TCB is set before the creating thread returns
  > - fork1() loses its stack and tidptr parameters
  > Common bits factor out:
  > - struct proc allocation and initialization moves to thread_new()
  > - maxthread handling moves to fork_check_maxthread()
  > - setting the new thread running moves to fork_thread_start()
  > The MD cpu_fork() function swaps its unused stacksize parameter for
  > a tcb parameter.
  > luna88k testing by aoyama@, alpha testing by dlg@
  > ok mpi@ (guenther@)

  ~ copy.S                                ~ copystr.S

  > Implement permission checks in the copy routines.  When they were
  > initially copied from armv7 no parallel instructions to ldrbt and strbt
  > were found, so a different permission model based on the addressing was
  > assumed.  This was incorrect as the AArch64 provides ldtrb and sttrb to
  > do load/store operations with userland permissions.
  > From Dale Rahn. (patrick@)

  ~ copy.S                                ~ copystr.S

  > whitespace fixes (patrick@)

  ~ pmap.c                                

  > Fix inverted PMAP_CANFAIL logic.
  > From Dale Rahn. ok patrick@ (jsg@)

  ~ db_interface.c                        ~ db_trace.c

  > Implement DDB backtrace support.  In addition to the actual tracing,
  > clean up a few address types from int to vaddr_t, implement 8 byte
  > reads and remove the unused db_fetch_reg() function.
  > From Dale Rahn (patrick@)

  ~ bus_dma.c                             

  > Remove a bunch of dead code in bus dma.  This code still needs actual
  > cache flushing implemented, but apparently we have not yet encountered
  > a hardware or controller where this was necessary. (patrick@)

  ~ locore.S                              ~ pmap.c

  > Use a proper memory attribute for write-through instead of reusing
  > the nocache attribute. (patrick@)

  ~ machdep.c                             ~ pmap.c

  > Fix up and use the device memory attribute for device mappings.  Add
  > inner shareable attributes while there. (patrick@)

  ~ bus_dma.c                             

  > Extend and fix bus_dmamap_load_raw() implementation to make xhci(4)
  > work.  Copied from the 32-bit ARM version, with a few minor changes
  > for arm64. (patrick@)

  ~ ast.c                                 ~ exception.S
  ~ genassym.cf                           

  > Fix asynchronous system traps so that they actually work.  Fixes at
  > least one regression test and allows processes to be killed using
  > Ctrl-C.  Discussed with Dale Rahn. (patrick@)

arch/arm64/dev

  ~ arm64_bus_space.c                     

  > Fix up and use the device memory attribute for device mappings.  Add
  > inner shareable attributes while there. (patrick@)

  ~ agtimer.c                             ~ mainbus.c

  > Initialize the generic timer early so that its delay function can be
  > used early, similar to the armv7 implementation. (patrick@)

  ~ agtimer.c                             

  > Bump variables related to arithmetic operations to 64-bit.  Especially
  > the bump of usec and csec is of concern since a timer frequency of around
  > 187MHz overflows in a 32-bit only calculation, as seen on the AMD Seattle
  > SoC.  Since we are running a 64-bit architecture, doing 64-bit arithmetic
  > operations doesn't hurt us as much as on the 32-bit ARMv7 port. (patrick@)

  ~ agtimer.c                             

  > Make sure that the timer control registers are written before any
  > further code is executed.  Additionally, make sure the counter is
  > read only after all previous code has executed. (patrick@)

arch/arm64/include

  ~ pte.h                                 

  > Use a proper memory attribute for write-through instead of reusing
  > the nocache attribute. (patrick@)

arch/hppa/hppa

  ~ vm_machdep.c                          

  > Split up fork1():
  > - FORK_THREAD handling is a totally separate function, thread_fork(),
  > that is only used by sys___tfork() and which loses the flags, func,
  > arg, and newprocp parameters and gains tcb parameter to guarantee
  > the new thread's TCB is set before the creating thread returns
  > - fork1() loses its stack and tidptr parameters
  > Common bits factor out:
  > - struct proc allocation and initialization moves to thread_new()
  > - maxthread handling moves to fork_check_maxthread()
  > - setting the new thread running moves to fork_thread_start()
  > The MD cpu_fork() function swaps its unused stacksize parameter for
  > a tcb parameter.
  > luna88k testing by aoyama@, alpha testing by dlg@
  > ok mpi@ (guenther@)

arch/i386/i386

  ~ vm_machdep.c                          

  > Split up fork1():
  > - FORK_THREAD handling is a totally separate function, thread_fork(),
  > that is only used by sys___tfork() and which loses the flags, func,
  > arg, and newprocp parameters and gains tcb parameter to guarantee
  > the new thread's TCB is set before the creating thread returns
  > - fork1() loses its stack and tidptr parameters
  > Common bits factor out:
  > - struct proc allocation and initialization moves to thread_new()
  > - maxthread handling moves to fork_check_maxthread()
  > - setting the new thread running moves to fork_thread_start()
  > The MD cpu_fork() function swaps its unused stacksize parameter for
  > a tcb parameter.
  > luna88k testing by aoyama@, alpha testing by dlg@
  > ok mpi@ (guenther@)

arch/loongson/dev

  ~ com_leioc.c                           

  > Suppress messages about spurious UART interrupts on MP systems.
  > A similar workaround was added in r1.8 of cn30xxuart.c because
  > of the same root cause. (visa@)

arch/loongson/include

  ~ autoconf.h                            ~ intr.h

  > Add SMP config and IPI control logic for Loongson 3A. (visa@)

arch/loongson/loongson

  ~ generic3a_machdep.c                   

  > Add SMP config and IPI control logic for Loongson 3A. (visa@)

  ~ loongson3_intr.c                      

  > Skip IO interrupt mask update on secondary CPUs when restoring IPL.
  > The mask is node-wide, and only the primary CPU handles IO interrupts.
  > (visa@)

arch/m88k/include

  ~ tcb.h                                 

  > Make this build (and run) with gcc 4. (miod@)

arch/m88k/m88k

  ~ vm_machdep.c                          

  > Split up fork1():
  > - FORK_THREAD handling is a totally separate function, thread_fork(),
  > that is only used by sys___tfork() and which loses the flags, func,
  > arg, and newprocp parameters and gains tcb parameter to guarantee
  > the new thread's TCB is set before the creating thread returns
  > - fork1() loses its stack and tidptr parameters
  > Common bits factor out:
  > - struct proc allocation and initialization moves to thread_new()
  > - maxthread handling moves to fork_check_maxthread()
  > - setting the new thread running moves to fork_thread_start()
  > The MD cpu_fork() function swaps its unused stacksize parameter for
  > a tcb parameter.
  > luna88k testing by aoyama@, alpha testing by dlg@
  > ok mpi@ (guenther@)

  ~ trap.c                                

  > Make this build (and run) with gcc 4. (miod@)

arch/mips64/mips64

  ~ vm_machdep.c                          

  > Split up fork1():
  > - FORK_THREAD handling is a totally separate function, thread_fork(),
  > that is only used by sys___tfork() and which loses the flags, func,
  > arg, and newprocp parameters and gains tcb parameter to guarantee
  > the new thread's TCB is set before the creating thread returns
  > - fork1() loses its stack and tidptr parameters
  > Common bits factor out:
  > - struct proc allocation and initialization moves to thread_new()
  > - maxthread handling moves to fork_check_maxthread()
  > - setting the new thread running moves to fork_thread_start()
  > The MD cpu_fork() function swaps its unused stacksize parameter for
  > a tcb parameter.
  > luna88k testing by aoyama@, alpha testing by dlg@
  > ok mpi@ (guenther@)

  ~ ipifuncs.c                            

  > Add IPI counter. (visa@)

arch/octeon/dev

  ~ octdwctwo.c                           

  > Mark dwc2_intr() as MP-safe on octeon. The driver's internal state
  > is protected by a mutex.
  > OK stsp@ jmatthew@ (visa@)

arch/powerpc/powerpc

  ~ vm_machdep.c                          

  > Split up fork1():
  > - FORK_THREAD handling is a totally separate function, thread_fork(),
  > that is only used by sys___tfork() and which loses the flags, func,
  > arg, and newprocp parameters and gains tcb parameter to guarantee
  > the new thread's TCB is set before the creating thread returns
  > - fork1() loses its stack and tidptr parameters
  > Common bits factor out:
  > - struct proc allocation and initialization moves to thread_new()
  > - maxthread handling moves to fork_check_maxthread()
  > - setting the new thread running moves to fork_thread_start()
  > The MD cpu_fork() function swaps its unused stacksize parameter for
  > a tcb parameter.
  > luna88k testing by aoyama@, alpha testing by dlg@
  > ok mpi@ (guenther@)

arch/sh/sh

  ~ vm_machdep.c                          

  > Split up fork1():
  > - FORK_THREAD handling is a totally separate function, thread_fork(),
  > that is only used by sys___tfork() and which loses the flags, func,
  > arg, and newprocp parameters and gains tcb parameter to guarantee
  > the new thread's TCB is set before the creating thread returns
  > - fork1() loses its stack and tidptr parameters
  > Common bits factor out:
  > - struct proc allocation and initialization moves to thread_new()
  > - maxthread handling moves to fork_check_maxthread()
  > - setting the new thread running moves to fork_thread_start()
  > The MD cpu_fork() function swaps its unused stacksize parameter for
  > a tcb parameter.
  > luna88k testing by aoyama@, alpha testing by dlg@
  > ok mpi@ (guenther@)

arch/sparc64/include

  ~ bus.h                                 

  > whitespace tweak. no functional change. (dlg@)

arch/sparc64/sparc64

  ~ vm_machdep.c                          

  > Split up fork1():
  > - FORK_THREAD handling is a totally separate function, thread_fork(),
  > that is only used by sys___tfork() and which loses the flags, func,
  > arg, and newprocp parameters and gains tcb parameter to guarantee
  > the new thread's TCB is set before the creating thread returns
  > - fork1() loses its stack and tidptr parameters
  > Common bits factor out:
  > - struct proc allocation and initialization moves to thread_new()
  > - maxthread handling moves to fork_check_maxthread()
  > - setting the new thread running moves to fork_thread_start()
  > The MD cpu_fork() function swaps its unused stacksize parameter for
  > a tcb parameter.
  > luna88k testing by aoyama@, alpha testing by dlg@
  > ok mpi@ (guenther@)

dev

  ~ vscsi.c                               

  > Remove dead assignment and now unused variable.
  > Found by LLVM/Clang Static Analyzer.
  > ok dlg@ (chl@)

dev/acpi

  ~ dsdt.c                                

  > On Apple hardware, claim an OSI of Darwin and no other OSes
  > The DSDT on at MacBooks takes many different and beneficial code
  > paths when the OS reports to be Darwin, but due to the way it checks
  > OSI, we can't just add Darwin to the aml_valid_osi array since later
  > checks for Windows variants will supersede the Darwin check.
  > Fixes suspend and keeps Thunderbolt ports powered up after resume.
  > One regression is that the acpibat driver no longer attaches and
  > will require an ACPI Smart Battery driver, which is in the works.
  > Adapted from a similar change in the Linux kernel from 2014.
  > ok deraadt (jcs@)

dev/ic

  ~ rtwn.c                                

  > Fix an uninitialised return value in rtwn_ra_init().  Though nothing
  > currently tests the return value.
  > ok stsp@ (jsg@)

dev/isa

  ~ asmc.c                                

  > asmc: on system resume, restore the keyboard backlight value
  > ok various (jcs@)

dev/pci

  ~ if_bge.c                              

  > properly set BGE_HCC_STATS_ADDR_HI by using BGE_HOSTADDR.
  > this makes it consistent with the rest of the code. (dlg@)

  ~ if_iwm.c                              ~ if_iwn.c

  > Revert "Release the NET_LOCK() before entering per-driver ioctl() routine".
  > This is most likely to be the cause of the deadlock seen by port builders
  > since it's the only changed that happened after a2k17.
  > Instead bring back pirofti@ original hack to release the NET_LOCK() inside
  > iwm(4) and iwn(4).
  > This fixes some splassert reported by bluhm@
  > Deadlock reported by naddy@ and rpe@ and ajacoutot@ confirmed the deadlock
  > has been introduced post a2k17.
  > Tested by and ok tb@ (mpi@)

dev/pv

  ~ xenstore.c                            

  > Remove incorrect if statement
  > Pointed out by jsg@ and Nathanael Rensen, <nathanael at
  > list ! polymorpheus ! com>, thanks! (mikeb@)

dev/usb

  ~ if_smsc.c                             

  > The videocore portion of the raspberry pi which boots the arm cores and
  > runs the mailbox interface knows about a MAC address that appears to be
  > derived from a unique serial number along with the raspberry pi
  > foundation oui.
  > It modifies the device tree when booting to store the MAC address
  > in /axi/usb/hub/ethernet/mac-address so fetch and use this value
  > for the integrated smsc(4) Ethernet.
  > A different smsc adapter plugged into one of the USB ports
  > probes later with a different unit number and skips this path. (jsg@)

  ~ dwc2/dwc2.c                           ~ dwc2/dwc2_coreintr.c
  ~ dwc2/dwc2_hcdintr.c                   ~ dwc2/dwc2var.h

  > Replace dummy mutex asserts with real ones.
  > OK stsp@ (visa@)

  ~ dwc2/dwc2.h                           

  > Align mutex IPL with the interrupt handler's priority.
  > Spotted by stsp@; OK jmatthew@ (visa@)

  ~ dwc2/dwc2.c                           

  > Remove an unnecessary NULL pointer check.
  > OK stsp@ (visa@)

kern

  ~ init_main.c                           ~ kern_fork.c
  ~ kern_kthread.c                        ~ kern_sched.c

  > Split up fork1():
  > - FORK_THREAD handling is a totally separate function, thread_fork(),
  > that is only used by sys___tfork() and which loses the flags, func,
  > arg, and newprocp parameters and gains tcb parameter to guarantee
  > the new thread's TCB is set before the creating thread returns
  > - fork1() loses its stack and tidptr parameters
  > Common bits factor out:
  > - struct proc allocation and initialization moves to thread_new()
  > - maxthread handling moves to fork_check_maxthread()
  > - setting the new thread running moves to fork_thread_start()
  > The MD cpu_fork() function swaps its unused stacksize parameter for
  > a tcb parameter.
  > luna88k testing by aoyama@, alpha testing by dlg@
  > ok mpi@ (guenther@)

  ~ sys_socket.c                          ~ uipc_socket.c
  ~ uipc_socket2.c                        ~ uipc_syscalls.c
  ~ uipc_usrreq.c                         

  > Wrap the NET_LOCK() into a per-socket solock() that does nothing for
  > unix domain sockets.
  > This should prevent the multiple deadlock related to unix domain sockets.
  > Inputs from millert@ and bluhm@, ok bluhm@ (mpi@)

  ~ vfs_bio.c                             ~ kern_ktrace.c
  ~ kern_subr.c                           ~ kern_task.c
  ~ vfs_sync.c                            ~ sched_bsd.c

  > Convert most of the manual checks for CPU hogging to sched_pause().
  > The distinction between preempt() and yield() stays as it is usueful
  > to know if a thread decided to yield by itself or if the kernel told
  > him to go away.
  > ok tedu@, guenther@ (mpi@)

  ~ vfs_syscalls.c                        

  > Threads share filedesc, so we can walk allprocess instead of allproc
  > ok mpi@ millert@ (guenther@)

net

  ~ pfkeyv2.c                             

  > Replace two recursive splsoftnet()/splx() dances with a splsoftassert().
  > ok mikeb@, bluhm@ (mpi@)

  ~ pf_table.c                            

  > Convert most of the manual checks for CPU hogging to sched_pause().
  > The distinction between preempt() and yield() stays as it is usueful
  > to know if a thread decided to yield by itself or if the kernel told
  > him to go away.
  > ok tedu@, guenther@ (mpi@)

  ~ route.c                               

  > Replace manual loops with FOREACH macro.
  > OK mikeb@ (bluhm@)

  ~ if.c                                  ~ if_pflow.c

  > Revert "Release the NET_LOCK() before entering per-driver ioctl() routine".
  > This is most likely to be the cause of the deadlock seen by port builders
  > since it's the only changed that happened after a2k17.
  > Instead bring back pirofti@ original hack to release the NET_LOCK() inside
  > iwm(4) and iwn(4).
  > This fixes some splassert reported by bluhm@
  > Deadlock reported by naddy@ and rpe@ and ajacoutot@ confirmed the deadlock
  > has been introduced post a2k17.
  > Tested by and ok tb@ (mpi@)

netinet

  ~ ip_ipsp.c                             

  > Get rid of recursive splsoftnet()/splx() dances and convert a timeout to
  > the timeout_set_proc(9) variant to take the NET_LOCK().
  > ok mikeb@, bluhm@ (mpi@)

  ~ in.c                                  

  > Revert "Release the NET_LOCK() before entering per-driver ioctl() routine".
  > This is most likely to be the cause of the deadlock seen by port builders
  > since it's the only changed that happened after a2k17.
  > Instead bring back pirofti@ original hack to release the NET_LOCK() inside
  > iwm(4) and iwn(4).
  > This fixes some splassert reported by bluhm@
  > Deadlock reported by naddy@ and rpe@ and ajacoutot@ confirmed the deadlock
  > has been introduced post a2k17.
  > Tested by and ok tb@ (mpi@)

  ~ ip_ipcomp.c                           

  > Using ipcomp(4) with IPv6 transport mode failed with protocol family
  > not supported.  A break in the af switch statement was missing since
  > revision 1.1 from 2001.
  > OK visa@ deraadt@ (bluhm@)

netinet6

  ~ in6.c                                 

  > Revert "Release the NET_LOCK() before entering per-driver ioctl() routine".
  > This is most likely to be the cause of the deadlock seen by port builders
  > since it's the only changed that happened after a2k17.
  > Instead bring back pirofti@ original hack to release the NET_LOCK() inside
  > iwm(4) and iwn(4).
  > This fixes some splassert reported by bluhm@
  > Deadlock reported by naddy@ and rpe@ and ajacoutot@ confirmed the deadlock
  > has been introduced post a2k17.
  > Tested by and ok tb@ (mpi@)

sys

  ~ proc.h                                

  > Split up fork1():
  > - FORK_THREAD handling is a totally separate function, thread_fork(),
  > that is only used by sys___tfork() and which loses the flags, func,
  > arg, and newprocp parameters and gains tcb parameter to guarantee
  > the new thread's TCB is set before the creating thread returns
  > - fork1() loses its stack and tidptr parameters
  > Common bits factor out:
  > - struct proc allocation and initialization moves to thread_new()
  > - maxthread handling moves to fork_check_maxthread()
  > - setting the new thread running moves to fork_thread_start()
  > The MD cpu_fork() function swaps its unused stacksize parameter for
  > a tcb parameter.
  > luna88k testing by aoyama@, alpha testing by dlg@
  > ok mpi@ (guenther@)

  ~ socketvar.h                           ~ systm.h

  > Wrap the NET_LOCK() into a per-socket solock() that does nothing for
  > unix domain sockets.
  > This should prevent the multiple deadlock related to unix domain sockets.
  > Inputs from millert@ and bluhm@, ok bluhm@ (mpi@)

  ~ sched.h                               ~ syscall_mi.h
  ~ proc.h                                

  > Convert most of the manual checks for CPU hogging to sched_pause().
  > The distinction between preempt() and yield() stays as it is usueful
  > to know if a thread decided to yield by itself or if the kernel told
  > him to go away.
  > ok tedu@, guenther@ (mpi@)

  ~ videoio.h                             

  > Avoid __u8, __u16, __u32, __u64, __s32, __s64, and __le32 and use standard
  > types instead. Keep whitespace formatting to ease potential future syncs
  > with
  > corresponding Linux headers.
  > Suggested by deraadt@. (feinerer@)

  ~ exec_elf.h                            

  > Include sys/types.h rather than machine/_types.h.  With this change
  > link.h can be included without first including sys/types.h matching the
  > behaviour on other systems.
  > Suggested by and ok guenther@ (jsg@)

  ~ exec_elf.h                            

  > Add Elf{32,64}_Nhdr structs with the same member names used by libelf
  > and glibc.  As noted by guenther@ this is the same layout as our
  > Elf{32,64}_Note structs and the handful of uses we have in the tree may
  > switch From _Note to _Nhdr in future.
  > Prompted by the development version of Mesa using the Nhdr type.
  > ok guenther@ (jsg@)

uvm

  ~ uvm_extern.h                          

  > Split up fork1():
  > - FORK_THREAD handling is a totally separate function, thread_fork(),
  > that is only used by sys___tfork() and which loses the flags, func,
  > arg, and newprocp parameters and gains tcb parameter to guarantee
  > the new thread's TCB is set before the creating thread returns
  > - fork1() loses its stack and tidptr parameters
  > Common bits factor out:
  > - struct proc allocation and initialization moves to thread_new()
  > - maxthread handling moves to fork_check_maxthread()
  > - setting the new thread running moves to fork_thread_start()
  > The MD cpu_fork() function swaps its unused stacksize parameter for
  > a tcb parameter.
  > luna88k testing by aoyama@, alpha testing by dlg@
  > ok mpi@ (guenther@)

  ~ uvm_glue.c                            ~ uvm_map.c
  ~ uvm_pdaemon.c                         

  > Convert most of the manual checks for CPU hogging to sched_pause().
  > The distinction between preempt() and yield() stays as it is usueful
  > to know if a thread decided to yield by itself or if the kernel told
  > him to go away.
  > ok tedu@, guenther@ (mpi@)

== usr.bin =========================================================== 11/12 ==

  http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/usr.bin

file

  ~ magdir/elf                            

  > Recognise AArch64 binaries and core dumps. (jsg@)

fmt

  ~ fmt.c                                 

  > Do not break the line at U+00A0 NO-BREAK SPACE.
  > Bug pointed out by Eric dot Pruitt at gmail dot com on misc@.
  > OK millert@ bentley@ (schwarze@)

mandoc

  ~ eqn_term.c                            

  > Do not access a NULL pointer if a matrix or square root are empty.
  > Crashes found by tb@ with afl(1). (schwarze@)

  ~ man_term.c                            

  > Fix previous:  I forgot that i had to change the convention how
  > a node is marked as "not a macro" when unifying the parsers.
  > Confirmed to work by Sevan Janiyan. (schwarze@)

  ~ libmdoc.h                             ~ mdoc.c
  ~ mdoc_html.c                           ~ mdoc_macro.c
  ~ mdoc_man.c                            ~ mdoc_term.c
  ~ roff.h                                

  > Remove the ENDBODY_NOSPACE flag, simplifying the code.
  > Comparing to groff output, it appears that all cases where it was used
  > and made a difference actually require the opposite, ENDBODY_SPACE.
  > I have no idea why i added it back in 2010; maybe to compensate for
  > some other bug that has long been fixed. (schwarze@)

  ~ mdoc_macro.c                          

  > Fix block scoping error if an explicit block is broken by two
  > implicit blocks (.Aq Bq Po .Pc) that left the outer breaker open
  > and could in exceptional cases, like between .Bl and .It, cause
  > tree corruption leading to NULL dereference.
  > Found by tb@ with afl(1).
  > While here, do not mark intermediate ENDBODY markers as broken. (schwarze@)

  ~ main.c                                

  > Fix rev. 1.183: -O syntax is different in default apropos(1) output
  > mode and in other output modes, so do not error out prematurely.
  > Also sort local variables in main() while here. (schwarze@)

  ~ mdoc_term.c                           

  > Surprisingly, groff does not support scaling units in .Bl -column
  > column width specifiers, so stop supporting them, too.
  > As a side effect, this fixes an assertion failure that tb@ found
  > with afl(1), triggered by: .Bl -column -4n (schwarze@)

  ~ roff.c                                

  > Fix a read buffer overrun that copied random data from memory into
  > text nodes when a string passed to deroff() ended in a backslash
  > and the byte after the terminating NUL was non-NUL, found by tb@
  > with afl(1).
  > Invalid bytes so copied with the high bit set could later sometimes
  > trigger another out of bounds read access to static memory in
  > roff_strdup(), so add an assertion there to abort safely in case
  > of similar data corruption. (schwarze@)

  ~ chars.c                               

  > Many people have been complaining for a long time that ``...'' looks
  > ugly in -Tascii output.  For that reason, bentley@ submitted patches
  > to render "..." instead to groff in November 2014 (yes, more than
  > two years ago).  Carsten Kunze yesterday merged them for the upcoming
  > groff-1.22.4 release.  Yay!
  > Consequently, do the same in mandoc: Render \(Lq and \(Rq (which
  > are used for .Do, .Dq, .Lb, and .St) as '"' in -Tascii output.
  > All other output modes including -Tutf8 remain unchanged. (schwarze@)

  ~ mdoc_man.c                            ~ mdoc_term.c

  > Use typographic quotes rather than '"' for .Rs %T (no change for -Tascii
  > output, of course).  Patch from bentley@ in November 2014.  This can be
  > committed now because groff merged Anthony's patch yesterday.
  > Simply committing myself because asking Anthony to go search for
  > his two-year-old patch and have him discover that it had accumulated
  > an average of (felt) two or three conflicts per line by now would
  > have been mean, even if hilarious. (schwarze@)

  ~ libmandoc.h                           ~ preconv.c

  > preconv_encode() can take a const input buffer;
  > diff from <christos at NetBSD> (schwarze@)

sndiod

  ~ dev.c                                 

  > Fix the code supposed to abort when attempting to detach a slot that's
  > not on the slot list (the check was a no-op). Found by jsg@, thanks!
  > (ratchov@)

ssh

  ~ sftp.c                                

  > fix division by zero crash in "df" output when server returns zero
  > total filesystem blocks/inodes. Spotted by Guido Vranken; ok dtucker@
  > (djm@)

  ~ match.c                               

  > Fix memory leaks in match_filter_list() error paths.
  > ok dtucker@ markus@ (jsg@)

  ~ ssh.c                                 

  > For ProxyJump/-J, surround host name with brackets to allow
  > literal IPv6 addresses. From Dick Visser; ok dtucker@ (djm@)

  ~ sshkey.c                              

  > ifdef out "rsa1" from the list of supported keytypes when compiled without
  > SSH1 support.  Found by kdunlop at guralp.com, ok djm@ (dtucker@)

  ~ ssh-keygen.c                          

  > Do not show rsa1 key type in usage when compiled without SSH1 support.
  > (dtucker@)

  ~ utf8.c                                

  > Add a common nl_langinfo(CODESET) alias for US-ASCII "ANSI_X3.4-1968"
  > that is used by Linux. Fixes mprintf output truncation for non-UTF-8
  > locales on Linux spotted by dtucker@; ok deraadt@ schwarze@ (djm@)

tmux

  ~ grid.c                                

  > Collected cells may still need to be extended for RGB colours. (nicm@)

  ~ cmd-load-buffer.c                     ~ cmd-save-buffer.c
  ~ cmd-source-file.c                     ~ server-client.c
  ~ tmux.h                                

  > Make source-file look for files relative to the client working directory
  > (like load-buffer and save-buffer), from Chris Pickel. Also break the
  > where-is-this-file code out into its own function for loadb and saveb.
  > (nicm@)

  ~ tmux.1                                

  > "status bar" -> "status line" for consistency, from Benjamin Dopplinger.
  > (nicm@)

  ~ tty.c                                 

  > Do not clear to end of screen unless the pane is at the bottom. (nicm@)

  ~ attributes.c                          ~ cmd-run-shell.c
  ~ cmd-set-option.c                      ~ tmux.c
  ~ window-choose.c                       

  > Style nits. (nicm@)

  - cmd-clear-history.c                   ~ Makefile
  ~ cmd-capture-pane.c                    

  > Merge clear-history into capture-pane. (nicm@)

  ~ grid-view.c                           ~ screen-write.c

  > Handle insert cells when cursor at edge of screen correctly, and do a
  > full flush before insert. (nicm@)

  ~ input.c                               ~ tty.c

  > There are buggy terminals out there that do not move the cursor to 0,0
  > after CSR, so invalidate the cursor position rather than assuming 0,0.
  > (nicm@)

  ~ input.c                               

  > Add SGR 28 to clear hidden flag. (nicm@)

== usr.sbin ========================================================== 12/12 ==

  http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/usr.sbin

bgpctl

  ~ bgpctl.8                              ~ parser.c

  > draft-ietf-idr-shutdown extends to support a message on either of
  > "Administrative Shutdown" or "Administrative Reset"
  > patch submitted by Job Snijders, thanks! (phessler@)

  ~ parser.c                              

  > fix a crash when parsing large community given on the command line
  > found by jsg@, fixed by phessler@ and strsep() by me.
  > fix memory leak jsg@
  > ok jsg@ phessler@ (benno@)

bgpd

  ~ control.c                             ~ session.c

  > draft-ietf-idr-shutdown extends to support a message on either of
  > "Administrative Shutdown" or "Administrative Reset"
  > patch submitted by Job Snijders, thanks! (phessler@)

  ~ bgpd.8                                

  > draft-ietf-idr-large-community has been published as RFC 8092 (phessler@)

dhcpd

  ~ Makefile                              ~ alloc.c
  ~ bootp.c                               ~ bpf.c
  ~ confpars.c                            ~ db.c
  ~ dhcp.c                                ~ dhcpd.c
  ~ dhcpd.h                               ~ dispatch.c
  ~ hash.c                                ~ icmp.c
  ~ memory.c                              ~ options.c
  ~ packet.c                              ~ parse.c
  ~ pfutils.c                             ~ sync.c
  ~ tables.c                              ~ tree.c
  ~ udpsock.c                             + log.c
  + log.h                                 

  > Switch from old errwarn.c logging to shiny new log.[ch].
  > ok benno@ (krw@)

  - errwarn.c                             

  > Banished to the attic. (krw@)

  ~ dispatch.c                            ~ pfutils.c
  ~ sync.c                                ~ udpsock.c

  > Do the strerror() elimination dance with log_warnx() -> log_warn(),
  > fatalx() -> fatal() and even a couple of fprintf(stderr) -> log_warn().
  > (krw@)

  ~ bootp.c                               ~ conflex.c
  ~ confpars.c                            ~ dhcp.c
  ~ dhcpd.c                               ~ dhcpd.h
  ~ dispatch.c                            ~ icmp.c
  ~ memory.c                              ~ options.c
  ~ parse.c                               ~ sync.c
  ~ udpsock.c                             

  > Adjust some long lines. (krw@)

  ~ bpf.c                                 ~ confpars.c
  ~ db.c                                  ~ dhcp.c
  ~ dhcpd.c                               ~ dhcpd.h
  ~ dispatch.c                            ~ icmp.c
  ~ memory.c                              ~ parse.c
  ~ pfutils.c                             ~ sync.c

  > Eliminate pointless'%m' (a.k.a. hand rolled strerror()) by using fatal()
  > and
  > log_warn(). Zap a couple of explicit 'syslog()' calls. (krw@)

  ~ dhcpd.8                               

  > Adopt the common verbiage other log.[ch] daemons use to describe '-d'.
  > Point out that dhcpd(8) -f is an alias for -d. (krw@)

  ~ dhcpd.c                               ~ dhcpd.h
  ~ parse.c                               

  > Bring parse_warn() into the log.[ch] 21st century and adopt the "^"
  > placement logic from dhclient. (krw@)

dhcrelay

  ~ Makefile                              ~ bpf.c
  ~ dhcrelay.c                            ~ dispatch.c
  ~ packet.c                              + log.c
  + log.h                                 

  > Switch from old errwarn.c logging to shiny new log.[ch].
  > ok benno@ (krw@)

  - errwarn.c                             

  > Banished to the attic. (krw@)

  ~ dispatch.c                            

  > Do the strerror() elimination dance with a log_warnx() -> log_warn().
  > (krw@)

  ~ bpf.c                                 ~ dhcrelay.c
  ~ dispatch.c                            

  > Adjust some long lines. (krw@)

  ~ bpf.c                                 ~ dhcrelay.c
  ~ dispatch.c                            

  > Eliminate pointless'%m' (a.k.a. hand rolled strerror()) by using fatal()
  > and
  > log_warn(). Zap a couple of explicit 'syslog()' calls. (krw@)

  ~ dhcrelay.8                            

  > Adopt the common verbiage other log.[ch] daemons use to describe '-d'.
  > Point out that dhcpd(8) -f is an alias for -d. (krw@)

nsd

  ~ axfr.c                                ~ configparser.y
  ~ configure.ac                          ~ dbaccess.c
  ~ dbcreate.c                            ~ difffile.c
  ~ difffile.h                            ~ ipc.c
  ~ mini_event.c                          ~ mini_event.h
  ~ namedb.c                              ~ namedb.h
  ~ nsd-checkconf.c                       ~ nsd-checkzone.c
  ~ nsd-control.c                         ~ nsd-mem.c
  ~ nsd.c                                 ~ nsd.h
  ~ nsec3.c                               ~ options.c
  ~ options.h                             ~ query.c
  ~ radtree.c                             ~ radtree.h
  ~ rbtree.c                              ~ rbtree.h
  ~ remote.c                              ~ server.c
  ~ tsig.c                                ~ udbradtree.c
  ~ udbradtree.h                          ~ udbzone.h
  ~ util.c                                ~ xfrd-disk.c
  ~ xfrd-notify.c                         ~ xfrd-notify.h
  ~ xfrd-tcp.c                            ~ xfrd-tcp.h
  ~ xfrd.c                                ~ xfrd.h

  > Update to 4.1.15.
  > This contains a local patch to query.c (missed _t conversion) that has
  > been submitted upstream.
  > OK sthen (florian@)

  ~ configure                             

  > regen (florian@)

pkg_add

  ~ pkg_add.1                             ~ pkg_check.8
  ~ pkg_delete.1                          ~ pkg_sign.1

  > improve list item formatting;
  > from salvador sabaini (jmc@)

smtpd

  ~ parse.y                               ~ ruleset.c
  ~ smtpd.conf.5                          ~ smtpd.h

  > allow negation of authenticated keyword:
  > accept ! authenticated [...]
  > ok sunil@, jung@ (gilles@)

  ~ parse.y                               

  > fix incoming tls-require regression, introduced with last parse.y cleanup
  > causing the flag not to be propagated down to the listener
  > ok eric@ (gilles@)

  + mail.lmtp.8                           + mail.lmtp.c

  > add new implementation of a standalone LMTP client which will deprecate the
  > builtin delivery_lmtp.c
  > ok sunil@, jung@ (gilles@)

  ~ Makefile                              + mail/Makefile
  + mail/mail.lmtp/Makefile               

  > prepare Makefiles but don't link to the build yet (gilles@)

  ~ mail/Makefile                         + mail.file.8
  + mail.file.c                           + mail/mail.file/Makefile

  > add standalone mda for file delivery which will later obsolete
  > builtin delivery_file + set of makefiles, not linked to build
  > ok sunil@, eric@ (gilles@)

  ~ mail/Makefile                         + mail.maildir.8
  + mail.maildir.c                        + mail/mail.maildir/Makefile

  > add standalone maildir MDA (work in progress) which will soon obsolete the
  > builtin delivery_maildir backend, + makefiles, not linked to build yet
  > ok eric@, sunil@ (gilles@)

  ~ mail.file.8                           

  > fix man page, diff from jmc@ (gilles@)

syspatch

  ~ syspatch.sh                           

  > Reverse output when installing a patch; it's more logical (first get, then
  > install). While here, match the installer output a bit more:
  > Get/Verify ...
  > Installing ...
  > prodded by a mail exchange with "bytevolcano"
  > discussed with robert@ sthen@
  > ok robert@ (ajacoutot@)

unbound

  ~ Makefile.in                           ~ aclocal.m4
  ~ acx_python.m4                         ~ config.h.in
  ~ configure                             ~ configure.ac
  ~ cachedb/cachedb.c                     ~ daemon/acl_list.c
  ~ daemon/acl_list.h                     ~ daemon/cachedump.c
  ~ daemon/daemon.c                       ~ daemon/daemon.h
  ~ daemon/remote.c                       ~ daemon/remote.h
  ~ daemon/stats.c                        ~ daemon/stats.h
  ~ daemon/unbound.c                      ~ daemon/worker.c
  ~ daemon/worker.h                       ~ dns64/dns64.c
  ~ dnstap/dnstap.c                       ~ doc/Changelog
  ~ doc/README                            ~ doc/example.conf.in
  ~ doc/libunbound.3.in                   ~ doc/unbound-anchor.8.in
  ~ doc/unbound-checkconf.8.in            ~ doc/unbound-control.8.in
  ~ doc/unbound-host.1.in                 ~ doc/unbound.8.in
  ~ doc/unbound.conf.5.in                 ~ doc/unbound.doxygen
  ~ iterator/iter_delegpt.c               ~ iterator/iter_delegpt.h
  ~ iterator/iter_donotq.h                ~ iterator/iter_fwd.c
  ~ iterator/iter_fwd.h                   ~ iterator/iter_hints.c
  ~ iterator/iter_hints.h                 ~ iterator/iter_priv.h
  ~ iterator/iter_scrub.c                 ~ iterator/iter_utils.c
  ~ iterator/iterator.c                   ~ iterator/iterator.h
  ~ libunbound/context.c                  ~ libunbound/context.h
  ~ libunbound/libunbound.c               ~ libunbound/libworker.c
  ~ libunbound/libworker.h                ~ libunbound/unbound-event.h
  ~ libunbound/unbound.h                  ~ libunbound/worker.h
  ~ services/listen_dnsport.c             ~ services/listen_dnsport.h
  ~ services/localzone.c                  ~ services/localzone.h
  ~ services/mesh.c                       ~ services/mesh.h
  ~ services/outside_network.c            ~ services/outside_network.h
  ~ services/cache/dns.c                  ~ services/cache/dns.h
  ~ services/cache/infra.c                ~ services/cache/infra.h
  ~ services/cache/rrset.c                ~ services/cache/rrset.h
  ~ sldns/keyraw.c                        ~ sldns/rrdef.h
  ~ sldns/str2wire.c                      ~ sldns/wire2str.c
  ~ sldns/wire2str.h                      ~ smallapp/unbound-anchor.c
  ~ smallapp/unbound-checkconf.c          ~ smallapp/unbound-control.c
  ~ smallapp/unbound-host.c               ~ smallapp/worker_cb.c
  ~ util/alloc.c                          ~ util/alloc.h
  ~ util/config_file.c                    ~ util/config_file.h
  ~ util/configlexer.lex                  ~ util/configparser.y
  ~ util/fptr_wlist.c                     ~ util/fptr_wlist.h
  ~ util/iana_ports.inc                   ~ util/locks.c
  ~ util/locks.h                          ~ util/log.c
  ~ util/mini_event.c                     ~ util/mini_event.h
  ~ util/module.c                         ~ util/module.h
  ~ util/net_help.c                       ~ util/netevent.c
  ~ util/netevent.h                       ~ util/rbtree.c
  ~ util/rbtree.h                         ~ util/tube.c
  ~ util/tube.h                           ~ util/ub_event.c
  ~ util/ub_event.h                       ~ util/ub_event_pluggable.c
  ~ util/winsock_event.c                  ~ util/winsock_event.h
  ~ util/data/dname.c                     ~ util/data/dname.h
  ~ util/data/msgencode.c                 ~ util/data/msgparse.c
  ~ util/data/msgparse.h                  ~ util/data/msgreply.c
  ~ util/data/msgreply.h                  ~ util/data/packed_rrset.c
  ~ util/data/packed_rrset.h              ~ util/storage/dnstree.c
  ~ util/storage/dnstree.h                ~ util/storage/lookup3.c
  ~ util/storage/lruhash.c                ~ util/storage/lruhash.h
  ~ util/storage/slabhash.c               ~ util/storage/slabhash.h
  ~ validator/autotrust.c                 ~ validator/autotrust.h
  ~ validator/val_anchor.c                ~ validator/val_anchor.h
  ~ validator/val_neg.c                   ~ validator/val_neg.h
  ~ validator/val_nsec.c                  ~ validator/val_nsec3.c
  ~ validator/val_nsec3.h                 ~ validator/val_secalgo.c
  ~ validator/val_sigcrypt.c              ~ validator/val_sigcrypt.h
  ~ validator/val_utils.c                 ~ validator/validator.c
  ~ validator/validator.h                 + systemd.m4
  + services/view.c                       + services/view.h

  > Update to unbound-1.6.1rc3 - thanks millert@ and Brad for tests. (sthen@)

vmd

  ~ virtio.c                              

  > Fix powerdown with vmmci(4) VMs using a shutdown and no reset.
  > vmm VMs don't support powerdown - no ACPI or power management - so we
  > use a trick to issue a reboot and just don't reset after the triple
  > fault.  This worked before but was broken with the previous fix to
  > pvbus_shutdown() - move the trick to vmd instead.
  > OK mlarkin@ (reyk@)

ypbind

  ~ ypbind.8                              ~ ypbind.c

  > ypbind(8) is not started automatically at boot time by /etc/rc if
  > domainname
  > is set and the directory var/yp/binding exists.
  > ok deraadt@ (ajacoutot@)

===============================================================================
_______________________________________________
owc mailing list
[email protected]
http://www.squish.net/mailman/listinfo/owc

Reply via email to