OpenBSD src changes summary for 2017-06-18 to 2017-06-25 inclusive
==================================================================

bin/csh                                 bin/ksh
distrib/miniroot                        distrib/sets
distrib/syspatch                        etc/Makefile
etc/moduli                              etc/rc
games/adventure                         games/hack
games/tetris                            gnu
gnu/lib/libiberty                       gnu/usr.bin/binutils-2.17
gnu/usr.bin/cc                          lib/libc
lib/libcrypto                           lib/libtls
libexec/ld.so                           regress/bin
regress/sys                             regress/usr.bin
regress/usr.sbin                        sbin/dhclient
sbin/ifconfig                           share/man
share/mk                                sys/arch/alpha/conf
sys/arch/amd64/amd64                    sys/arch/amd64/conf
sys/arch/amd64/include                  sys/arch/amd64/stand/boot
sys/arch/amd64/stand/efiboot            sys/arch/amd64/stand/libsa
sys/arch/arm/include                    sys/arch/arm64/conf
sys/arch/arm64/include                  sys/arch/armv7/conf
sys/arch/armv7/imx                      sys/arch/hppa/conf
sys/arch/hppa/include                   sys/arch/i386/conf
sys/arch/i386/i386                      sys/arch/i386/include
sys/arch/i386/stand/boot                sys/arch/i386/stand/libsa
sys/arch/landisk/conf                   sys/arch/loongson/conf
sys/arch/m88k/m88k                      sys/arch/macppc/conf
sys/arch/macppc/dev                     sys/arch/mips64/mips64
sys/arch/octeon/conf                    sys/arch/octeon/dev
sys/arch/octeon/include                 sys/arch/octeon/octeon
sys/arch/powerpc/include                sys/arch/sgi/conf
sys/arch/sh/dev                         sys/arch/sh/include
sys/arch/sparc64/conf                   sys/arch/sparc64/include
sys/conf                                sys/dev/fdt
sys/dev/ic                              sys/dev/pci
sys/dev/pckbc                           sys/dev/pv
sys/dev/usb                             sys/dev/wscons
sys/kern                                sys/net
sys/net80211                            sys/netinet
sys/netinet6                            sys/nfs
sys/stand                               sys/sys
usr.bin/locate                          usr.bin/make
usr.bin/mandoc                          usr.bin/ssh
usr.bin/systat                          usr.bin/tmux
usr.bin/vi                              usr.bin/who
usr.sbin/config                         usr.sbin/ifstated
usr.sbin/ospf6ctl                       usr.sbin/ospf6d
usr.sbin/pkg_add                        usr.sbin/procmap
usr.sbin/smtpd                          usr.sbin/vmd
usr.sbin/wsfontload                     

== bin =============================================================== 01/13 ==

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

csh

  ~ misc.c                                

  > Don't try to close every single file descriptor up to _SC_OPEN_MAX in csh.
  > Instead, close the fds that reside in between the gaps of used fds and once
  > the
  > largest used fd is reached call closefrom().
  > ok deraadt@ (anton@)

  ~ file.c                                

  > Replace usage of TIOCSTI in csh using a more common IO-loop where ICANON is
  > disabled and a single char of input is read at a time. This requires the
  > line
  > editing capabilities provided when ICANON is enabled to be implemented.
  > With help and feedback from deraadt@ (anton@)

  ~ file.c                                

  > Minor style(9) corrections and whitespace cleanup to csh.
  > ok deraadt@ tb@ (anton@)

  ~ file.c                                

  > Make sure to abort loops when pressing ^C in csh.
  > Regression found by deraadt@ (anton@)

ksh

  ~ emacs.c                               ~ ksh.1

  > '^T' is documented to be bounded to transpose-chars while in emacs
  > mode, not "stuff". While here, remove the poorly described "stuff"
  > and "stuff" bind functions as well..
  > In the unlikely event anyone has those in .kshrc, they'll need to
  > be removed.
  > ok anton@ (brynet@)

  ~ emacs.c                               

  > Don't output partial UTF-8 characters in ksh emacs mode. Instead, try to
  > read a
  > complete UTF-8 character first. Fixes an issue while running ksh in tmux
  > where
  > UTF-8 characters inserted in columns other than the last one are discarded.
  > With help from nicm@ and schwarze@ who also wrote the UTF-8 validation,
  > thanks!
  > ok schwarze@ (anton@)

  ~ emacs.c                               

  > No need to NUL-terminate the line buffer since it's handled by x_e_getu8()
  > by
  > now.
  > ok schwarze@ (anton@)

== distrib =========================================================== 02/13 ==

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

miniroot

  ~ install.sub                           

  > /var/db/kernel.SHA256 contains the hash of the /bsd kernel.  Upon
  > install or upgrade, set it correctly.
  > diff from rpe, also thanks tb for comments and review (deraadt@)

sets

  ~ lists/base/mi                         

  > sync (deraadt@)

  ~ lists/comp/mi                         

  > sync (jsg@)

  ~ lists/base/mi                         

  > sync (deraadt@)

syspatch

  ~ bsd.syspatch.mk                       

  > Set SRCDIR according to build type and s/X11SRC/XSRCDIR
  > ok robert@ (ajacoutot@)

== etc =============================================================== 03/13 ==

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

Makefile

  ~ Makefile                              

  > When building a snapshot, install the compile.tgz file to builder's
  > /usr/share/ so that next boot will find it and perhaps use it.
  > ok tb rpe (deraadt@)

  ~ Makefile                              

  > compile.tgz no longer needs to contain machine/ subdir, instead it needs
  > makegap.sh
  > ok tb (deraadt@)

moduli

  ~ moduli                                

  > Import regenerated moduli. (dtucker@)

rc

  ~ rc                                    

  > As early as possible, create a link /bsd.booted to the /bsd kernel we
  > presume we booted from.  If you boot from another kernel, we cannot help
  > you later with hibernate, sorry -- The kernel does not get a useable
  > filename from the bootblocks.
  > In the bootblocks, detect a live hibernate signature and boot from
  > /bsd.booted instead.
  > with yasuoka, lots of discussion with mlarkin, ok tom (deraadt@)

  ~ rc                                    

  > Adjust relink procedure to use new targets.  Better use semantics for
  > users and developers.
  > diff from rpe, ok tb (deraadt@)

== games ============================================================= 04/13 ==

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

adventure

  ~ extern.h                              ~ io.c
  ~ wizard.c                              

  > Remove unused confirm() and datime() functions.
  > Those functions are unused and have been compiled out since 1998,
  > it's time to let them go.
  > OK sthen@, tom@, mestre@ (fcambus@)

hack

  - hack.sh                               ~ Makequest
  ~ READ_ME                               

  > Fix a path in Makequest and remove hack.sh (it never worked).
  > OK tb@ (akfaew@)

tetris

  ~ tetris.6                              

  > No need for a conditional to choose between nroff and troff.
  > ok jmc@ (bentley@)

== gnu =============================================================== 05/13 ==

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

gnu

  ~ llvm/lib/MC/MCAsmInfoELF.cpp          

  > For a decade or more, we've patched gcc to make -fno-ident the default.
  > clang doesn't seem to have a command line option for the feature,
  > so just hard wire it off. We don't need advertisements in our binaries.
  > ok deraadt (tedu@)

lib/libiberty

  ~ src/testsuite/test-demangle.c         ~ src/testsuite/test-expandargv.c
  ~ src/testsuite/test-pexecute.c         

  > Make libiberty test programs compile and run without segfault. (bluhm@)

usr.bin/binutils-2.17

  ~ gas/config/tc-i386.c                  

  > Large nopsleds make it easier for ROP machinery to sloppily reach targets.
  > Convert these to "trapsleds' instead.  Since these can occur inside
  > fall-through blocks of code (and gcc sure isn't helping us by identifying
  > those), convert most to "short jump over" followed a sequence of int3.
  > This works for sled sizes 3-15, for i386 and amd64.   Work by Todd Mortimer
  > ok mlarkin (deraadt@)

  ~ ld/emulparams/elf_i386_obsd.sh        ~ ld/emulparams/elf_x86_64_obsd.sh

  > Intra-segment traps instead of nops.  Similar to kernel change, further
  > reduction in nopsleds in code and data segments (if those data segments
  > ever become X, that is)
  > ok mlarkin (deraadt@)

  ~ bfd/elf64-x86-64.c                    

  > elf64_x86_64_plt0_entry had a hardcoded nop-sled, before the subsequent
  > plt entry.  Since previous effective instruction is a a jmp, this can be
  > a sequence of traps.
  > ok mlarkin (deraadt@)

  ~ ld/emulparams/elf_i386_obsd.sh        

  > i386 uses a intentional fallthrough between appended code blocks in .init,
  > which we cannot TRAPSLED FILL.  This needs to be done a different way.
  > diagnosis with kettenis (deraadt@)

usr.bin/cc

  ~ cc_tools/Makefile                     

  > DEPENDSFILE comes from FreeBSD, we don't have it. replace it with its
  > value .depend, so that the conditional is really used.
  > okay guenther@ (espie@)

  ~ cc_tools/Makefile                     

  > Always include Makefile.dep, conditionally including it based on the
  > existence of a .depend file can lead to various problems.
  > The logic before rev 1.15 resulted in Makefile.dep always being
  > included as DEPENDSFILE was never set so this returns to the old
  > behaviour.
  > ok espie@ (jsg@)

== lib =============================================================== 06/13 ==

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

libc

  ~ Symbols.list                          ~ shlib_version
  ~ gen/Makefile.inc                      ~ stdlib/malloc.c
  + gen/tree.c                            + hidden/sys/tree.h

  > port the RBT code to userland by making it part of libc.
  > src/lib/libc/gen/tree.c is a copy of src/sys/kern/subr_tree.c, but with
  > annotations for symbol visibility. changes to one should be reflected
  > in the other.
  > the malloc debug code that uses RB code is ported to RBT.
  > because libc provides the RBT code, procmap doesn't have to reach into
  > the kernel and build subr_tree.c itself now.
  > mild enthusiasm from many
  > ok guenther@ (dlg@)

libcrypto

  ~ x509v3/v3_purp.c                      ~ x509v3/x509v3.h

  > Distinguish between self-issued certificates and self-signed certificates.
  > The certificate verification code has special cases for self-signed
  > certificates and without this change, self-issued certificates (which it
  > seems are common place with openvpn/easyrsa) were also being included in
  > this category.
  > Based on BoringSSL.
  > Thanks to Dale Ghent <daleg at elemental dot org> for assisting in
  > identifying the issue and testing this fix.
  > ok inoguchi@ (jsing@)

libtls

  ~ tls_server.c                          

  > Use the standard `rv' idiom in tls_keypair_load_cert(), rather than
  > duplicating clean up code. (jsing@)

  ~ tls.c                                 

  > Remove dead code that has remained hiding since ressl.c r1.14! (jsing@)

  ~ tls.c                                 

  > Plug a memory leak in tls_keypair_cert_hash(), introduced in r1.60.
  > (jsing@)

  ~ tls.c                                 

  > Fix incorrect indentation. (jsing@)

  ~ tls.c                                 ~ tls_internal.h
  ~ tls_server.c                          ~ tls_util.c

  > Use the tls_password_cb() callback with all PEM_read_bio_*() calls, so that
  > we can prevent libcrypto from going behind our back and trying to read
  > passwords from standard input (which we may not be permitted to do).
  > Found by jsg@ with httpd and password protected keys. (jsing@)

== libexec =========================================================== 07/13 ==

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

ld.so

  ~ path.c                                

  > Do not interpret an empty path as current working directory "." when
  > parsing LD_LIBRARY_PATH, and in DT_RPATH and DT_RUNPATH attributes and
  > in ld.so.hints.
  > ok deraadt@ (benno@)

== regress =========================================================== 08/13 ==

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

bin

  ~ ksh/edit/edit.c                       

  > Don't write input if ICANON is enabled. Also, write one byte at a time.
  > (anton@)

  ~ ksh/edit/vi.sh                        

  > Fix EOL tests for ksh vi mode. (anton@)

  ~ Makefile                              + csh/Makefile
  + csh/filec.sh                          

  > Add regression tests for the filec feature in csh. (anton@)

  ~ csh/filec.sh                          

  > Make sure to abort loops when pressing ^C in csh.
  > Regression found by deraadt@ (anton@)

  ~ ksh/edit/edit.c                       

  > Capture SIGINT and print out all received output so far. Useful when
  > debugging
  > broken tests. (anton@)

sys

  ~ crypto/aesctr/Makefile                ~ crypto/enc/Makefile

  > Pick rijndael.c lost after backout; requested by bluhm@ (mikeb@)

  ~ crypto/Makefile                       ~ crypto/aes/Makefile
  ~ crypto/aesctr/Makefile                ~ crypto/aesxts/Makefile
  ~ crypto/chachapoly/Makefile            ~ crypto/cmac/Makefile
  ~ crypto/enc/Makefile                   ~ crypto/gmac/Makefile
  ~ crypto/hmac/Makefile                  ~ crypto/key_wrap/Makefile

  > Do not skip any crypto tests.  Remove useless make code, use defaults
  > where appropriate.
  > OK mikeb@ (bluhm@)

usr.bin

  ~ mandoc/roff/Makefile                  ~ mandoc/roff/cond/string.in
  ~ mandoc/roff/cond/string.out_ascii     ~ mandoc/roff/de/append.in
  ~ mandoc/roff/de/append.out_ascii       ~ mandoc/roff/string/Makefile
  + mandoc/roff/rn/Makefile               + mandoc/roff/rn/append.in
  + mandoc/roff/rn/append.out_ascii       + mandoc/roff/string/std.in
  + mandoc/roff/string/std.out_ascii      + mandoc/roff/string/std.out_lint

  > Implement appending to standard man(7) and mdoc(7) macros with .am.
  > With roff_getstrn(), provide finer control which definitions
  > can be used for what:
  > * All definitions can be used for .if d tests and .am appending.
  > * User-defined for \* expansion, .dei expansion, and macro calling.
  > * Predefined for \* expansion.
  > * Standard macros, original or renamed, for macro calling.
  > Several related improvements while here:
  > * Do not return string table entries that have explicitly been removed.
  > * Do not create a rentab entry when trying to rename a non-existent macro.
  > * Clear an existing rentab entry when the external interface
  > roff_setstr() is called with its name.
  > * Avoid trailing blanks in macro lines generated from renamed
  > and from aliased macros.
  > * Delete the duplicate __m*_reserved[] tables, just use roff_name[].
  > (schwarze@)

  - gzip/t1.sh                            - gzip/t2.sh
  ~ gzip/Makefile                         

  > Convert shell script tests to regress make rules.  Having only one
  > tool and more verbosity allows better debugging.  Additional tests
  > check that gzip and gunzip preserve file permissions and ownership.
  > (bluhm@)

  ~ mdoclint/mdoclint                     ~ mdoclint/mdoclint.1

  > delete -r, RCS id checks are now covered by mandoc,
  > and garbage collect the unused "inliteral" state variable;
  > ok jmc@ (schwarze@)

  ~ mdoclint/mdoclint                     ~ mdoclint/mdoclint.1

  > delete warning about missing whitespace before trailing punctuation;
  > mandoc handles this now, not in exactly the same way, but catching
  > all the important cases, and with less false positives;
  > no objection from jmc@ (schwarze@)

  ~ mdoclint/mdoclint                     

  > delete unused "lastline" state variable and some commented out lines;
  > no functional change (schwarze@)

  ~ ssh/Makefile                          + ssh/authinfo.sh

  > regress test for ExposeAuthInfo (djm@)

  ~ mdoclint/mdoclint                     ~ mdoclint/mdoclint.1

  > obvious removal of -o, now covered by mandoc (schwarze@)

  ~ mandoc/db/Makefile                    

  > add some empty targets that were missing (schwarze@)

  ~ mandoc/char/space/esct-man.out_lint   
  ~ mandoc/char/space/esct-mdoc.out_lint
  ~ mandoc/char/space/tab-man.out_lint    ~ mandoc/char/space/tab.out_lint
  ~ mandoc/char/space/trailing-mdoc.out_lint
  ~ mandoc/char/unicode/input.out_lint    
  ~ mandoc/char/unicode/invalid.out_lint
  ~ mandoc/eqn/define/infinite.out_lint   ~ mandoc/eqn/define/invalid.out_lint
  ~ mandoc/eqn/over/noarg.out_lint        ~ mandoc/man/B/args.out_lint
  ~ mandoc/man/B/blank.out_lint           ~ mandoc/man/IP/empty.out_lint
  ~ mandoc/man/OP/args.out_lint           ~ mandoc/man/PD/args.out_lint
  ~ mandoc/man/PP/args.out_lint           ~ mandoc/man/PP/empty.out_lint
  ~ mandoc/man/RS/REarg.out_lint          ~ mandoc/man/RS/empty.out_lint
  ~ mandoc/man/RS/lonelyRE.out_lint       ~ mandoc/man/RS/noRE.out_lint
  ~ mandoc/man/SH/broken.out_lint         ~ mandoc/man/SH/broken_eline.out_lint
  ~ mandoc/man/SH/empty_before.out_lint   ~ mandoc/man/SH/noarg.out_lint
  ~ mandoc/man/SS/broken.out_lint         ~ mandoc/man/SS/broken_eline.out_lint
  ~ mandoc/man/SS/noarg.out_lint          ~ mandoc/man/TH/case.out_lint
  ~ mandoc/man/TH/nobody.out_lint         ~ mandoc/man/TH/sixargs.out_lint
  ~ mandoc/man/TP/broken.out_lint         ~ mandoc/man/TP/double.out_lint
  ~ mandoc/man/TP/eof.out_lint            ~ mandoc/man/TS/break.out_lint
  ~ mandoc/man/UR/args.out_lint           ~ mandoc/man/UR/noUE.out_lint
  ~ mandoc/man/blank/afterSH.out_lint     ~ mandoc/man/blank/afterSS.out_lint
  ~ mandoc/man/blank/line.out_lint        ~ mandoc/man/nf/args.out_lint
  ~ mandoc/man/nf/dupe.out_lint           ~ mandoc/mdoc/Ad/noarg.out_lint
  ~ mandoc/mdoc/An/break.out_lint         ~ mandoc/mdoc/Aq/empty.out_lint
  ~ mandoc/mdoc/Ar/punct.out_lint         ~ mandoc/mdoc/At/invalid.out_lint
  ~ mandoc/mdoc/Bd/badargs.out_lint       ~ mandoc/mdoc/Bd/beforeNAME.out_lint
  ~ mandoc/mdoc/Bd/blank.out_lint         ~ mandoc/mdoc/Bd/break.out_lint
  ~ mandoc/mdoc/Bd/broken.out_lint        ~ mandoc/mdoc/Bd/nested.out_lint
  ~ mandoc/mdoc/Bd/unclosed.out_lint      ~ mandoc/mdoc/Bf/badargs.out_lint
  ~ mandoc/mdoc/Bf/break.out_lint         ~ mandoc/mdoc/Bf/broken.out_lint
  ~ mandoc/mdoc/Bf/multiargs.out_lint     ~ mandoc/mdoc/Bk/badarg.out_lint
  ~ mandoc/mdoc/Bk/broken.out_lint        ~ mandoc/mdoc/Bl/badargs.out_lint
  ~ mandoc/mdoc/Bl/bareIt.out_lint        ~ mandoc/mdoc/Bl/bareTa.out_lint
  ~ mandoc/mdoc/Bl/break.out_lint         ~ mandoc/mdoc/Bl/breakingIt.out_lint
  ~ mandoc/mdoc/Bl/broken.out_lint        ~ mandoc/mdoc/Bl/column.out_lint
  ~ mandoc/mdoc/Bl/empty.out_lint         ~ mandoc/mdoc/Bl/emptyhead.out_lint
  ~ mandoc/mdoc/Bl/emptyitem.out_lint     ~ mandoc/mdoc/Bl/emptytag.out_lint
  ~ mandoc/mdoc/Bl/noIt.out_lint          ~ mandoc/mdoc/Bl/notype.out_lint
  ~ mandoc/mdoc/Bl/tag.out_lint           ~ mandoc/mdoc/Brq/empty.out_lint
  ~ mandoc/mdoc/Bx/args.out_lint          ~ mandoc/mdoc/Cd/noarg.out_lint
  ~ mandoc/mdoc/Cm/noarg.out_lint         ~ mandoc/mdoc/D1/spacing.out_lint
  ~ mandoc/mdoc/Db/args.out_lint          ~ mandoc/mdoc/Dd/badarg.out_lint
  ~ mandoc/mdoc/Dd/dupe.out_lint          ~ mandoc/mdoc/Dd/late.out_lint
  ~ mandoc/mdoc/Dd/long.out_lint          ~ mandoc/mdoc/Dd/manarg.out_lint
  ~ mandoc/mdoc/Dd/noarg.out_lint         ~ mandoc/mdoc/Dd/order.out_lint
  ~ mandoc/mdoc/Dl/spacing.out_lint       ~ mandoc/mdoc/Dq/empty.out_lint
  ~ mandoc/mdoc/Dt/badsec.out_lint        ~ mandoc/mdoc/Dt/case.out_lint
  ~ mandoc/mdoc/Dt/dupe.out_lint          ~ mandoc/mdoc/Dt/fourargs.out_lint
  ~ mandoc/mdoc/Dt/late.out_lint          ~ mandoc/mdoc/Dt/missing.out_lint
  ~ mandoc/mdoc/Dt/noarg.out_lint         ~ mandoc/mdoc/Dt/nobody.out_lint
  ~ mandoc/mdoc/Dt/nosec.out_lint         ~ mandoc/mdoc/Dt/order.out_lint
  ~ mandoc/mdoc/Dv/noarg.out_lint         ~ mandoc/mdoc/Em/noarg.out_lint
  ~ mandoc/mdoc/Em/punct.out_lint         ~ mandoc/mdoc/Eo/break.out_lint
  ~ mandoc/mdoc/Eo/obsolete.out_lint      ~ mandoc/mdoc/Eo/unclosed.out_lint
  ~ mandoc/mdoc/Er/noarg.out_lint         ~ mandoc/mdoc/Ev/noarg.out_lint
  ~ mandoc/mdoc/Ex/noname.out_lint        ~ mandoc/mdoc/Ex/nostd.out_lint
  ~ mandoc/mdoc/Fd/empty.out_lint         ~ mandoc/mdoc/Fl/punct.out_lint
  ~ mandoc/mdoc/Fo/noarg.out_lint         ~ mandoc/mdoc/Fo/nohead.out_lint
  ~ mandoc/mdoc/Fo/obsolete.out_lint      ~ mandoc/mdoc/Fo/punct.out_lint
  ~ mandoc/mdoc/Fo/warn.out_lint          ~ mandoc/mdoc/Ic/noarg.out_lint
  ~ mandoc/mdoc/In/noarg.out_lint         ~ mandoc/mdoc/Lb/badargs.out_lint
  ~ mandoc/mdoc/Li/punct.out_lint         ~ mandoc/mdoc/Lk/noarg.out_lint
  ~ mandoc/mdoc/Ms/noarg.out_lint         ~ mandoc/mdoc/Mt/simple.out_lint
  ~ mandoc/mdoc/Nd/broken.out_lint        ~ mandoc/mdoc/Nd/noarg.out_lint
  ~ mandoc/mdoc/Nm/badNAME.out_lint       ~ mandoc/mdoc/Nm/badNAMEuse.out_lint
  ~ mandoc/mdoc/Nm/break.out_lint         ~ mandoc/mdoc/Nm/broken.out_lint
  ~ mandoc/mdoc/Nm/punct.out_lint         ~ mandoc/mdoc/No/punct.out_lint
  ~ mandoc/mdoc/Ns/position.out_lint      ~ mandoc/mdoc/Oo/punct.out_lint
  ~ mandoc/mdoc/Op/break.out_lint         ~ mandoc/mdoc/Op/broken.out_lint
  ~ mandoc/mdoc/Op/punct.out_lint         ~ mandoc/mdoc/Os/dupe.out_lint
  ~ mandoc/mdoc/Os/late.out_lint          ~ mandoc/mdoc/Pa/punct.out_lint
  ~ mandoc/mdoc/Pf/spacing.out_lint       ~ mandoc/mdoc/Pp/arg.out_lint
  ~ mandoc/mdoc/Qq/empty.out_lint         ~ mandoc/mdoc/Rs/allch.out_lint
  ~ mandoc/mdoc/Rs/args.out_lint          ~ mandoc/mdoc/Rs/empty.out_lint
  ~ mandoc/mdoc/Rv/noname.out_lint        ~ mandoc/mdoc/Rv/nostd.out_lint
  ~ mandoc/mdoc/Sh/badNAME.out_lint       ~ mandoc/mdoc/Sh/before.out_lint
  ~ mandoc/mdoc/Sh/empty.out_lint         ~ mandoc/mdoc/Sh/emptyNAME.out_lint
  ~ mandoc/mdoc/Sh/first.out_lint         ~ mandoc/mdoc/Sh/nohead.out_lint
  ~ mandoc/mdoc/Sh/order.out_lint         ~ mandoc/mdoc/Sh/orderNAME.out_lint
  ~ mandoc/mdoc/Sh/parbefore.out_lint     ~ mandoc/mdoc/Sh/parborder.out_lint
  ~ mandoc/mdoc/Sh/punctNAME.out_lint     ~ mandoc/mdoc/Sh/subbefore.out_lint
  ~ mandoc/mdoc/Sm/badarg.out_lint        ~ mandoc/mdoc/Sm/twoarg.out_lint
  ~ mandoc/mdoc/Sq/empty.out_lint         ~ mandoc/mdoc/St/badargs.out_lint
  ~ mandoc/mdoc/St/call.out_lint          ~ mandoc/mdoc/Sx/noarg.out_lint
  ~ mandoc/mdoc/Sy/noarg.out_lint         ~ mandoc/mdoc/Sy/punct.out_lint
  ~ mandoc/mdoc/Tn/noarg.out_lint         ~ mandoc/mdoc/Ud/arg.out_lint
  ~ mandoc/mdoc/Ux/punct.out_lint         ~ mandoc/mdoc/Va/noarg.out_lint
  ~ mandoc/mdoc/Vt/noarg.out_lint         ~ mandoc/mdoc/Xr/args.out_lint
  ~ mandoc/mdoc/blank/comment.out_lint    ~ mandoc/mdoc/blank/line.out_lint
  ~ mandoc/mdoc/blank/list.out_lint       
  ~ mandoc/mdoc/break/brokenbreaker.out_lint
  ~ mandoc/mdoc/break/notopen.out_lint    ~ mandoc/mdoc/break/tail.out_lint
  ~ mandoc/mdoc/break/twice.out_lint      ~ mandoc/mdoc/break/two.out_lint
  ~ mandoc/roff/args/man.out_lint         ~ mandoc/roff/args/mdoc.out_lint
  ~ mandoc/roff/args/roff.out_lint        ~ mandoc/roff/br/args.out_lint
  ~ mandoc/roff/cc/basic.out_lint         ~ mandoc/roff/cond/close.out_lint
  ~ mandoc/roff/cond/if.out_lint          ~ mandoc/roff/de/escname.out_lint
  ~ mandoc/roff/de/indir.out_lint         ~ mandoc/roff/de/infinite.out_lint
  ~ mandoc/roff/esc/B.out_lint            ~ mandoc/roff/esc/h.out_lint
  ~ mandoc/roff/esc/ignore.out_lint       ~ mandoc/roff/esc/l.out_lint
  ~ mandoc/roff/esc/w.out_lint            
  ~ mandoc/roff/ft/badargs-mdoc.out_lint
  ~ mandoc/roff/ft/badargs.out_lint       ~ mandoc/roff/ig/basic.out_lint
  ~ mandoc/roff/it/badarg.out_lint        ~ mandoc/roff/nr/divzero.out_lint
  ~ mandoc/roff/nr/escname.out_lint       ~ mandoc/roff/sp/badargs-man.out_lint
  ~ mandoc/roff/string/name.out_lint      ~ mandoc/roff/string/std.out_lint
  ~ mandoc/roff/tr/args.out_lint          
  ~ mandoc/tbl/data/block_unclosed.out_lint
  ~ mandoc/tbl/data/empty.out_lint        ~ mandoc/tbl/layout/complex.out_lint
  ~ mandoc/tbl/layout/empty.out_lint      ~ mandoc/tbl/macro/man.out_lint
  ~ mandoc/tbl/macro/nested.out_lint      ~ mandoc/tbl/mod/badfont.out_lint
  ~ mandoc/tbl/mod/font.out_lint          ~ mandoc/tbl/opt/invalid.out_lint

  > cope with changes in BASE messages (schwarze@)

  ~ mandoc/man/Makefile                   + mandoc/man/MT/Makefile
  + mandoc/man/MT/args.in                 + mandoc/man/MT/args.out_ascii
  + mandoc/man/MT/args.out_lint           + mandoc/man/MT/noME.in
  + mandoc/man/MT/noME.out_ascii          + mandoc/man/MT/noME.out_lint

  > test new MT macro (schwarze@)

usr.sbin

  ~ switchd/run.pl                        + switchd/Proc.pm
  + switchd/Switchd.pm                    

  > Get the framework from relayd regress to start switchd on demand.
  > This allows to run the test without manual setup. (bluhm@)

  ~ switchd/OFP.pm                        ~ switchd/run.pl

  > Perl on 32 bit architectures does not support pack('Q'), replace
  > it with 'NN'. (bluhm@)

  - acme-client/create-httpd-env.sh       ~ acme-client/Makefile
  + acme-client/acme-client.conf          + acme-client/httpd.conf

  > Convert the acme-client test to use a config file acme-client.conf.
  > Restructure the Makefile, put httpd.conf in separate config file.
  > Skip test if domain name for letsencrypt.org is not set.
  > discussed with benno@ (bluhm@)

  ~ switchd/Makefile                      

  > Clean all files created during switchd regress. (bluhm@)

  ~ ldapd/Makefile                        

  > Do not run .END cleanup during clean, cleandir, obj in ldapd regress.
  > (bluhm@)

  ~ Makefile                              

  > Link acme-client, ldapd, switchd regress to build. (bluhm@)

== sbin ============================================================== 09/13 ==

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

dhclient

  ~ dhcpd.h                               

  > Nuke unused pointer to non-existant struct. (krw@)

  ~ dhclient.c                            

  > Make 'DEBUG' compile again. (krw@)

  ~ dhclient.c                            

  > Nuke stray and misleading comment. (krw@)

  ~ dhclient.c                            

  > Drop (int) casts of (time_t - time_t) calculations that
  > are assigned to an int variable. (krw@)

  ~ dispatch.c                            ~ dhcpd.h
  ~ dhclient.c                            

  > Convert last set_timeout() use to set_timeout_interval() and
  > then remove set_timeout() and rename set_timeout_interval() to
  > set_timeout(). (krw@)

  ~ dhclient.c                            ~ dhcpd.h
  ~ dispatch.c                            

  > Move the timeout information into struct interface_info with
  > the rest of the dhcp state. One less struct (dhcp_timeout) to
  > worry about, one less field (ifi) to keep track of. (krw@)

  ~ dhclient.c                            

  > Erroneous host names in various options should be ignored
  > and not cause the lease to be declined. Restore inadvertantly
  > changed behaviour. Tweak logic to also ignore invalid
  > host names in domain-search.
  > Reported by Christer Solskogen via misc@ (krw@)

  ~ bpf.c                                 ~ dhclient.c
  ~ dispatch.c                            ~ parse.c

  > Various KNF nits. (krw@)

  ~ dhclient.c                            

  > Allow familiar idiom free_client_lease(NULL). (krw@)

  ~ dhclient.c                            ~ dhcpd.h
  ~ dispatch.c                            

  > Consistently use time(&var) idiom rather than tossing in a few
  > var = time(NULL). Flip "struct interface *" to be the first
  > parameter in set_timeout(), as in other functions taking the
  > state info. (krw@)

  ~ dhclient.c                            

  > No need to manually check validity of ifi->active when
  > REBOOT'ing. It will be pointing to a recorded lease if
  > anything. So rely on get_recorded_lease() to return the
  > next valid candidate lease, which might be the lease
  > ifi->active was pointing at. (krw@)

  ~ dhclient.c                            

  > Teach get_recorded_lease() that static leases do not
  > expire. (krw@)

  ~ dhcpd.h                               ~ parse.c

  > Drop support for old (>4yr) timestamp formats in leases
  > files.
  > ok tb@ millert@ (krw@)

  ~ dhcpd.h                               ~ kroute.c
  ~ privsep.c                             ~ privsep.h

  > Take reyk's imsg resolv.conf improvements of a while ago to their
  > logical conclusion.
  > Nuke _PATH_RESOLV_CONF since the value is only meant to be
  > known inside priv_write_resolv_conf(). Just use a local const char *.
  > Bring priv_write_resolv_conf() into line with other priv_ functions
  > invoked from the dispatch loop. i.e. don't pass it the imsg, just pass
  > a pointer to the data and a size after ensuring there is data to pass.
  > (krw@)

  ~ dhclient.c                            

  > Use a const char * for "/etc/resolv.conf.tail" instead of repeating the
  > text in various forms in different error messages. Also makes the error
  > messages consistent by always displaying the full path name. (krw@)

  ~ privsep.c                             

  > Oops. Remove extraneous 'return' and some braces from
  > priv_write_resolv_conf() code that was moved into the
  > dispatch loop. (krw@)

  ~ dhclient.c                            ~ dhcpd.h

  > Once you have forked into two processes, setting a global flag
  > in one process does not mean the other process can see the
  > change. Nuke the pointless IFI_NEW_LLADDR. (krw@)

  ~ dhclient.c                            ~ dhcpd.h
  ~ privsep.c                             ~ privsep.h

  > Use a local variable rather than a global flag to record
  > the reception of a IMSG_HUP message and trigger the
  > desired restart.
  > Nuke the now pointless IFI_HUP. (krw@)

  ~ dhclient.c                            ~ dhcpd.h
  ~ dispatch.c                            ~ kroute.c
  ~ privsep.c                             ~ privsep.h

  > Tweak handling of HUP and new LLADDR. Just use expose and use sighup()
  > function. Don't exit dispatch() loop on SIGHUP, wait for privileged
  > child to execvp() dhclient. Eliminate struct imsg_hup since its
  > contents were not being used except in priv_cleanup(). And
  > 'active_addr' works just as well there.
  > Cleaner and eliminates some extraneous log entries. (krw@)

  ~ dhclient.c                            

  > Oops. Revert unintentional/premature functional change. Deleting the
  > address configured by dhclient should cause exit, not restart. There
  > is no need to invoke sendhup(). Just exit and let the privileged child
  > follow. (krw@)

  ~ kroute.c                              

  > priv_add_address() is no longer invoked to signal the deletion of the
  > active address. So no need to check for the magic INADDR_ANY address.
  > (krw@)

ifconfig

  ~ ifconfig.c                            

  > Make ifconfig(8) default to prefixlen 128 when setting an IPv6 destination
  > address on a point-to-point interface. Makes it easier to configure IPv6 on
  > interfaces such as gif(4). Specifying 'prefixlen 128' is no longer
  > required.
  > This is consistent with IPv4 where a netmask is not required either.
  > ok mpi@ bluhm@ benno@ (stsp@)

== share ============================================================= 10/13 ==

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

man

  ~ man9/mbuf.9                           

  > When dealing with mbuf pointers passed down as function parameters,
  > bugs could easily result in use-after-free or double free.  Introduce
  > m_freemp() which automatically resets the pointer before freeing
  > it.  So we have less dangling pointers in the kernel.
  > OK krw@ mpi@ claudio@ (bluhm@)

  ~ man9/mbuf.9                           

  > missing letter in previous; (jmc@)

  ~ man9/Makefile                         + man9/pool_cache_init.9

  > talk about the per cpu caches in pools by documenting pool_cache_init()
  > this describes what the per cpu caches do, and has some bonus doco about
  > what the sysctls provide thanks to a suggestion from mikeb@
  > some tweaks are coming, but this is mostly right.
  > ok jmc@ schwarze@ (dlg@)

  ~ man9/pool_cache_init.9                

  > s/can be from process context/can be called from process context/
  > from schwarze@ (dlg@)

  ~ man9/pool_cache_init.9                

  > s/pool_set_hardlimit/pool_sethardlimit/
  > from schwarze@ (dlg@)

  ~ man9/pool_cache_init.9                

  > s/a active/an active/ (dlg@)

  ~ man9/pool_cache_init.9                

  > fix some nits
  > ok dlg@ (jmatthew@)

  ~ man8/afterboot.8                      

  > doas won't be configured after the first boot, so stop recommending
  > use of it to change root's password. remove a leftover sentence and
  > apply minor grammar tweaks while here.
  > ok deraadt (tj@)

  ~ man4/viocon.4                         

  > List all five devices, not just the first two.
  > OK jmc@ sf@ (akfaew@)

  ~ man9/pool_cache_init.9                

  > items get returns to pools with pool_put, not pool_get. (dlg@)

  ~ man8/starttls.8                       

  > typo; from jack burton (jmc@)

  ~ man9/pool_cache_init.9                

  > change the semantic for calculating when to grow the size of a cache list.
  > previously it would figure out if there's enough items overall for
  > all the cpus to have full active an inactive free lists. this
  > included currently allocated items, which pools wont actually hold
  > on a free list and cannot predict when they will come back.
  > instead, see if there's enough items in the idle lists in the depot
  > that could instead go on all the free lists on the cpus. if there's
  > enough idle items, then we can grow.
  > tested by hrvoje popovski and amit kulkarni
  > ok visa@ (dlg@)

  ~ man1/clang-local.1                    

  > i didn't know we had clang-local until reminded by jsg.
  > mention the disabling of ident strings. (tedu@)

  ~ man7/mdoc.7                           

  > Delete .St -p1003.1-2013.
  > It is an OpenBSD addition that did not get used a single time in
  > three years, and groff did not pick it up either, so removing it
  > does not affect any existing manuals anywhere.
  > Cleanup suggested by jmc@, OK bentley@. (schwarze@)

  ~ man7/man.7                            

  > Add support for the MT and ME mailto macros, used for example in wg(8).
  > feedback and ok schwarze@ (bentley@)

mk

  ~ bsd.own.mk                            

  > g/c ASPICFLAG.
  > This used to be necessary a long time ago in the... gcc 2.95 days.
  > from miod@ (mpi@)

== sys =============================================================== 11/13 ==

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

arch/alpha/conf

  ~ Makefile.alpha                        

  > Generate a gap.link script, and use that to generate gap.o.  On multi-ABI
  > architectures we must also link against a gapdummy.o to repair the ABI
  > of the resulting .o file.  Woe is me.
  > Also repair install: target to update the linkkit & hash when a kernel
  > is installed.
  > ok rpe tb mlarkin and tested by others also (deraadt@)

  ~ Makefile.alpha                        

  > dull dependency for copying makegap.sh to obj, so that installs
  > without src and comp work.  That is what we've designed for, but since
  > we always have src and comp on our systems it is so easy to slide...
  > problem first noted by rpe. (deraadt@)

arch/amd64/amd64

  ~ identcpu.c                            ~ vmm.c

  > SVM: better cleanbits handling. Fixes an issue on Bulldozer CPUs causing
  > #TF exceptions during guest VM boot
  > ok brynet (mlarkin@)

  ~ vmm.c                                 

  > remove some magic numbers in the flush-by-asid code and check if the CPU
  > supports that feature before we try to use it.
  > discussed with deraadt (mlarkin@)

  ~ autoconf.c                            

  > use [] instead of * for reaching regions to unmap, making this more
  > similar to smashing versions written by visa (deraadt@)

  ~ cpu.c                                 

  > Add a hypervisor-specific function pointer in pvbus(4) that gets called
  > during
  > cpu_hatch() on each cpu, allowing initialization of per-cpu features on
  > each
  > cpu as it starts up.
  > input from reyk@ and mikeb@
  > ok mikeb@ (jmatthew@)

arch/amd64/conf

  ~ ld.script                             

  > Fill space between sections with traps, rather than nops. (deraadt@)

  ~ Makefile.amd64                        

  > Generate a gap.link script, and use that to generate gap.o.  On multi-ABI
  > architectures we must also link against a gapdummy.o to repair the ABI
  > of the resulting .o file.  Woe is me.
  > Also repair install: target to update the linkkit & hash when a kernel
  > is installed.
  > ok rpe tb mlarkin and tested by others also (deraadt@)

  ~ Makefile.amd64                        

  > dull dependency for copying makegap.sh to obj, so that installs
  > without src and comp work.  That is what we've designed for, but since
  > we always have src and comp on our systems it is so easy to slide...
  > problem first noted by rpe. (deraadt@)

arch/amd64/include

  ~ biosvar.h                             

  > As early as possible, create a link /bsd.booted to the /bsd kernel we
  > presume we booted from.  If you boot from another kernel, we cannot help
  > you later with hibernate, sorry -- The kernel does not get a useable
  > filename from the bootblocks.
  > In the bootblocks, detect a live hibernate signature and boot from
  > /bsd.booted instead.
  > with yasuoka, lots of discussion with mlarkin, ok tom (deraadt@)

  ~ cpu.h                                 ~ specialreg.h

  > SVM: better cleanbits handling. Fixes an issue on Bulldozer CPUs causing
  > #TF exceptions during guest VM boot
  > ok brynet (mlarkin@)

  ~ specialreg.h                          

  > remove some magic numbers in the flush-by-asid code and check if the CPU
  > supports that feature before we try to use it.
  > discussed with deraadt (mlarkin@)

  ~ biosvar.h                             

  > Fix a couple of comment typos in amd64 and i386 biosvar.h (tom@)

  ~ asm.h                                 

  > Unbreak profiling assembly functions in userland by defining the
  > correct prologue if compiled with -DPROF.
  > ok deraadt@ (mpi@)

arch/amd64/stand/boot

  ~ Makefile                              

  > As early as possible, create a link /bsd.booted to the /bsd kernel we
  > presume we booted from.  If you boot from another kernel, we cannot help
  > you later with hibernate, sorry -- The kernel does not get a useable
  > filename from the bootblocks.
  > In the bootblocks, detect a live hibernate signature and boot from
  > /bsd.booted instead.
  > with yasuoka, lots of discussion with mlarkin, ok tom (deraadt@)

arch/amd64/stand/efiboot

  ~ Makefile.common                       

  > As early as possible, create a link /bsd.booted to the /bsd kernel we
  > presume we booted from.  If you boot from another kernel, we cannot help
  > you later with hibernate, sorry -- The kernel does not get a useable
  > filename from the bootblocks.
  > In the bootblocks, detect a live hibernate signature and boot from
  > /bsd.booted instead.
  > with yasuoka, lots of discussion with mlarkin, ok tom (deraadt@)

arch/amd64/stand/libsa

  ~ diskprobe.c                           

  > As early as possible, create a link /bsd.booted to the /bsd kernel we
  > presume we booted from.  If you boot from another kernel, we cannot help
  > you later with hibernate, sorry -- The kernel does not get a useable
  > filename from the bootblocks.
  > In the bootblocks, detect a live hibernate signature and boot from
  > /bsd.booted instead.
  > with yasuoka, lots of discussion with mlarkin, ok tom (deraadt@)

  ~ diskprobe.c                           

  > Only print the magic '&' letter on a disk if the hibernate partition is
  > valid.  This is an undocumented little debugging diagnostic, much like
  > the '*'. (deraadt@)

arch/arm/include

  ~ asm.h                                 

  > Unbreak profiling assembly functions in userland by defining the
  > correct prologue if compiled with -DPROF.
  > ok deraadt@ (mpi@)

arch/arm64/conf

  ~ Makefile.arm64                        

  > Generate a gap.link script, and use that to generate gap.o.  On multi-ABI
  > architectures we must also link against a gapdummy.o to repair the ABI
  > of the resulting .o file.  Woe is me.
  > Also repair install: target to update the linkkit & hash when a kernel
  > is installed.
  > ok rpe tb mlarkin and tested by others also (deraadt@)

  ~ Makefile.arm64                        

  > dull dependency for copying makegap.sh to obj, so that installs
  > without src and comp work.  That is what we've designed for, but since
  > we always have src and comp on our systems it is so easy to slide...
  > problem first noted by rpe. (deraadt@)

arch/arm64/include

  ~ asm.h                                 

  > Unbreak profiling assembly functions in userland by defining the
  > correct prologue if compiled with -DPROF.
  > ok deraadt@ (mpi@)

arch/armv7/conf

  ~ Makefile.armv7                        

  > Generate a gap.link script, and use that to generate gap.o.  On multi-ABI
  > architectures we must also link against a gapdummy.o to repair the ABI
  > of the resulting .o file.  Woe is me.
  > Also repair install: target to update the linkkit & hash when a kernel
  > is installed.
  > ok rpe tb mlarkin and tested by others also (deraadt@)

  ~ Makefile.armv7                        

  > dull dependency for copying makegap.sh to obj, so that installs
  > without src and comp work.  That is what we've designed for, but since
  > we always have src and comp on our systems it is so easy to slide...
  > problem first noted by rpe. (deraadt@)

arch/armv7/imx

  ~ imxgpio.c                             

  > Fix the remaining ';;'s in sys/ (tom@)

arch/hppa/conf

  ~ ld.script                             

  > Better off padding with 0x0.  0x0 = "break 0,0".
  > (BTW, the binutils disasm cannot handle that instruction with those
  > parameters, because the decoder logic is wrong..) (deraadt@)

  ~ Makefile.hppa                         

  > Generate a gap.link script, and use that to generate gap.o.  On multi-ABI
  > architectures we must also link against a gapdummy.o to repair the ABI
  > of the resulting .o file.  Woe is me.
  > Also repair install: target to update the linkkit & hash when a kernel
  > is installed.
  > ok rpe tb mlarkin and tested by others also (deraadt@)

  ~ Makefile.hppa                         

  > dull dependency for copying makegap.sh to obj, so that installs
  > without src and comp work.  That is what we've designed for, but since
  > we always have src and comp on our systems it is so easy to slide...
  > problem first noted by rpe. (deraadt@)

arch/hppa/include

  ~ asm.h                                 

  > Unbreak profiling assembly functions in userland by defining the
  > correct prologue if compiled with -DPROF.
  > ok deraadt@ (mpi@)

arch/i386/conf

  ~ ld.script                             

  > Fill space between sections with traps, rather than nops. (deraadt@)

  ~ Makefile.i386                         

  > Generate a gap.link script, and use that to generate gap.o.  On multi-ABI
  > architectures we must also link against a gapdummy.o to repair the ABI
  > of the resulting .o file.  Woe is me.
  > Also repair install: target to update the linkkit & hash when a kernel
  > is installed.
  > ok rpe tb mlarkin and tested by others also (deraadt@)

  ~ Makefile.i386                         

  > dull dependency for copying makegap.sh to obj, so that installs
  > without src and comp work.  That is what we've designed for, but since
  > we always have src and comp on our systems it is so easy to slide...
  > problem first noted by rpe. (deraadt@)

arch/i386/i386

  ~ autoconf.c                            

  > use [] instead of * for reaching regions to unmap, making this more
  > similar to smashing versions written by visa (deraadt@)

  ~ cpu.c                                 

  > Add a hypervisor-specific function pointer in pvbus(4) that gets called
  > during
  > cpu_hatch() on each cpu, allowing initialization of per-cpu features on
  > each
  > cpu as it starts up.
  > input from reyk@ and mikeb@
  > ok mikeb@ (jmatthew@)

arch/i386/include

  ~ biosvar.h                             

  > As early as possible, create a link /bsd.booted to the /bsd kernel we
  > presume we booted from.  If you boot from another kernel, we cannot help
  > you later with hibernate, sorry -- The kernel does not get a useable
  > filename from the bootblocks.
  > In the bootblocks, detect a live hibernate signature and boot from
  > /bsd.booted instead.
  > with yasuoka, lots of discussion with mlarkin, ok tom (deraadt@)

  ~ biosvar.h                             

  > Fix a couple of comment typos in amd64 and i386 biosvar.h (tom@)

arch/i386/stand/boot

  ~ Makefile                              

  > As early as possible, create a link /bsd.booted to the /bsd kernel we
  > presume we booted from.  If you boot from another kernel, we cannot help
  > you later with hibernate, sorry -- The kernel does not get a useable
  > filename from the bootblocks.
  > In the bootblocks, detect a live hibernate signature and boot from
  > /bsd.booted instead.
  > with yasuoka, lots of discussion with mlarkin, ok tom (deraadt@)

arch/i386/stand/libsa

  ~ diskprobe.c                           

  > As early as possible, create a link /bsd.booted to the /bsd kernel we
  > presume we booted from.  If you boot from another kernel, we cannot help
  > you later with hibernate, sorry -- The kernel does not get a useable
  > filename from the bootblocks.
  > In the bootblocks, detect a live hibernate signature and boot from
  > /bsd.booted instead.
  > with yasuoka, lots of discussion with mlarkin, ok tom (deraadt@)

  ~ diskprobe.c                           

  > Only print the magic '&' letter on a disk if the hibernate partition is
  > valid.  This is an undocumented little debugging diagnostic, much like
  > the '*'. (deraadt@)

arch/landisk/conf

  ~ Makefile.landisk                      

  > Generate a gap.link script, and use that to generate gap.o.  On multi-ABI
  > architectures we must also link against a gapdummy.o to repair the ABI
  > of the resulting .o file.  Woe is me.
  > Also repair install: target to update the linkkit & hash when a kernel
  > is installed.
  > ok rpe tb mlarkin and tested by others also (deraadt@)

  ~ Makefile.landisk                      

  > dull dependency for copying makegap.sh to obj, so that installs
  > without src and comp work.  That is what we've designed for, but since
  > we always have src and comp on our systems it is so easy to slide...
  > problem first noted by rpe. (deraadt@)

arch/loongson/conf

  ~ Makefile.loongson                     

  > Generate a gap.link script, and use that to generate gap.o.  On multi-ABI
  > architectures we must also link against a gapdummy.o to repair the ABI
  > of the resulting .o file.  Woe is me.
  > Also repair install: target to update the linkkit & hash when a kernel
  > is installed.
  > ok rpe tb mlarkin and tested by others also (deraadt@)

  ~ Makefile.loongson                     

  > dull dependency for copying makegap.sh to obj, so that installs
  > without src and comp work.  That is what we've designed for, but since
  > we always have src and comp on our systems it is so easy to slide...
  > problem first noted by rpe. (deraadt@)

arch/m88k/m88k

  ~ eh_common.S                           

  > Tidy up comment about double load opcodes in m88k/eh_common.S (and fix ;;
  > -> ||)
  > ok miod@ (tom@)

arch/macppc/conf

  ~ Makefile.macppc                       

  > Generate a gap.link script, and use that to generate gap.o.  On multi-ABI
  > architectures we must also link against a gapdummy.o to repair the ABI
  > of the resulting .o file.  Woe is me.
  > Also repair install: target to update the linkkit & hash when a kernel
  > is installed.
  > ok rpe tb mlarkin and tested by others also (deraadt@)

  ~ Makefile.macppc                       

  > dull dependency for copying makegap.sh to obj, so that installs
  > without src and comp work.  That is what we've designed for, but since
  > we always have src and comp on our systems it is so easy to slide...
  > problem first noted by rpe. (deraadt@)

arch/macppc/dev

  ~ mesh.c                                

  > Fix the remaining ';;'s in sys/ (tom@)

arch/mips64/mips64

  ~ cache_tfp.c                           

  > Improve the coalescing of instruction cache flushes on R8000 in order
  > not to perform redundant work. There is no direct way to flush the
  > cache; rather, the kernel evicts unwanted bits from the cache by
  > executing a block of instructions, which is expensive.
  > With this diff, make build time decreases about 0.4%.
  > Diff from miod@ (visa@)

arch/octeon/conf

  ~ GENERIC                               ~ RAMDISK
  ~ files.octeon                          

  > Split octeon interrupt code into a glue layer and a CIU driver.
  > This makes possible to add drivers for other interrupt controllers
  > on the platform.
  > The glue layer has been derived from arm64/armv7. (visa@)

  ~ Makefile.octeon                       

  > Generate a gap.link script, and use that to generate gap.o.  On multi-ABI
  > architectures we must also link against a gapdummy.o to repair the ABI
  > of the resulting .o file.  Woe is me.
  > Also repair install: target to update the linkkit & hash when a kernel
  > is installed.
  > ok rpe tb mlarkin and tested by others also (deraadt@)

  ~ Makefile.octeon                       

  > dull dependency for copying makegap.sh to obj, so that installs
  > without src and comp work.  That is what we've designed for, but since
  > we always have src and comp on our systems it is so easy to slide...
  > problem first noted by rpe. (deraadt@)

arch/octeon/dev

  ~ octeon_intr.c                         

  > Move IPI control entry points into octeon_intr.c.
  > Needed by upcoming driver changes. (visa@)

  ~ octeon_intr.c                         ~ octeon_iobus.c
  + octciu.c                              

  > Split octeon interrupt code into a glue layer and a CIU driver.
  > This makes possible to add drivers for other interrupt controllers
  > on the platform.
  > The glue layer has been derived from arm64/armv7. (visa@)

  ~ octciu.c                              

  > Use a consistent naming for fdt attach arguments. (visa@)

  ~ octrtc.c                              

  > There is no RTC on the E1000 board. (visa@)

arch/octeon/include

  ~ intr.h                                

  > Drop unnecessary call to octeon_setintrmask(). The function gets called
  > by the splx() handler. (visa@)

  ~ intr.h                                

  > Split octeon interrupt code into a glue layer and a CIU driver.
  > This makes possible to add drivers for other interrupt controllers
  > on the platform.
  > The glue layer has been derived from arm64/armv7. (visa@)

  ~ octeonvar.h                           

  > There is no RTC on the E1000 board. (visa@)

  ~ octeonreg.h                           

  > Fix the timecounter register on CN72xx/CN73xx. (visa@)

arch/octeon/octeon

  ~ machdep.c                             

  > Drop unnecessary call to octeon_setintrmask(). The function gets called
  > by the splx() handler. (visa@)

  ~ machdep.c                             

  > Move IPI control entry points into octeon_intr.c.
  > Needed by upcoming driver changes. (visa@)

  ~ machdep.c                             

  > Use type register_t instead of __register_t. Drop unneeded __unused.
  > (visa@)

  ~ machdep.c                             

  > Use octeon_model_family() for SoC identification as in the rest
  > of the code. (visa@)

  ~ machdep.c                             

  > Fix the timecounter register on CN72xx/CN73xx. (visa@)

arch/powerpc/include

  ~ asm.h                                 

  > Unbreak profiling assembly functions in userland by defining the
  > correct prologue if compiled with -DPROF.
  > ok deraadt@ (mpi@)

arch/sgi/conf

  ~ Makefile.sgi                          

  > Generate a gap.link script, and use that to generate gap.o.  On multi-ABI
  > architectures we must also link against a gapdummy.o to repair the ABI
  > of the resulting .o file.  Woe is me.
  > Also repair install: target to update the linkkit & hash when a kernel
  > is installed.
  > ok rpe tb mlarkin and tested by others also (deraadt@)

  ~ Makefile.sgi                          

  > dull dependency for copying makegap.sh to obj, so that installs
  > without src and comp work.  That is what we've designed for, but since
  > we always have src and comp on our systems it is so easy to slide...
  > problem first noted by rpe. (deraadt@)

arch/sh/dev

  ~ shpcic.c                              

  > Fix the remaining ';;'s in sys/ (tom@)

arch/sh/include

  ~ asm.h                                 

  > Unbreak profiling assembly functions in userland by defining the
  > correct prologue if compiled with -DPROF.
  > ok deraadt@ (mpi@)

arch/sparc64/conf

  ~ Makefile.sparc64                      

  > Generate a gap.link script, and use that to generate gap.o.  On multi-ABI
  > architectures we must also link against a gapdummy.o to repair the ABI
  > of the resulting .o file.  Woe is me.
  > Also repair install: target to update the linkkit & hash when a kernel
  > is installed.
  > ok rpe tb mlarkin and tested by others also (deraadt@)

  ~ Makefile.sparc64                      

  > dull dependency for copying makegap.sh to obj, so that installs
  > without src and comp work.  That is what we've designed for, but since
  > we always have src and comp on our systems it is so easy to slide...
  > problem first noted by rpe. (deraadt@)

arch/sparc64/include

  ~ asm.h                                 

  > Unbreak profiling assembly functions in userland by defining the
  > correct prologue if compiled with -DPROF.
  > ok deraadt@ (mpi@)

conf

  ~ makegap.sh                            

  > Generate a gap.link script, and use that to generate gap.o.  On multi-ABI
  > architectures we must also link against a gapdummy.o to repair the ABI
  > of the resulting .o file.  Woe is me.
  > Also repair install: target to update the linkkit & hash when a kernel
  > is installed.
  > ok rpe tb mlarkin and tested by others also (deraadt@)

  ~ makegap.sh                            

  > ldd is more strict wrt semicolons, they can only appear after an
  > expression line. Removing the extra semicolons makes both ld and
  > ldd accept the link script generated, although ldd produces a wrong
  > object file on arm64; ok kettenis@ deraadt@ (otto@)

  ~ makegap.sh                            

  > lld's linker-script parser has to be fixed to accept ; after LONG()
  > directives.  binutils requires it, and binutils is the authoritative
  > parser in this regard.  This means arm64 +lld remains broken (but all
  > the other architectures work) (deraadt@)

dev/fdt

  ~ sximmc.c                              

  > double ;;.  xhci one found by geoffhill (deraadt@)

dev/ic

  ~ re.c                                  

  > Do not call txeof nor rxeof in the watchdog routine.
  > They cannot be serialized with the interrupt routine and are
  > useless because the driver is reinitialized right after.
  > Pointed by and ok mikeb@ (mpi@)

  ~ rtwn.c                                

  > - Fix Tx queues to USB endpoints mapping and merge urtwn_r92c_dma_init()
  > and urtwn_r88e_dma_init() into one; from FreeBSD r291902.
  > - Change the way the number of pages for public queue is calculated;
  > Based on the vendor driver's _InitQueueReservedPage(), the formula for
  > calculation of the number of pages for public priority queue is as follows:
  > if the device has 3 endpoints:
  > PUBQ = total number of Tx pages - HQ - LQ - NQ
  > if the device has 2 endpoints (i.e. has high and normal priority queues):
  > PUBQ = total number of Tx pages - HQ - NQ
  > - Don't write MCS8..MCS15 Tx power if the WNIC is a 1-stream Tx;
  > - Set R88E_TX_PAGE_COUNT to a correct value;
  > - Minimal enhancement in urtwn_open_pipes() for upcoming rtl8192eu chipset
  > support;
  > Tested with USB-N10 Nano (rtl8188cu), DWA-131 rev B (rtl8192cu), and
  > TL-WN725N v2 (rtl8188eu) on amd64.
  > ok stsp@ (kevlo@)

dev/pci

  ~ drm/i915/i915_drv.c                   

  > Add a handler for the WSDISPLAYIO_GINFO ioctl in inteldrm, allowing
  > to retrieve basic information about a framebuffer display.
  > OK visa@, tedu@ (fcambus@)

  ~ drm/radeon/radeon_kms.c               

  > Add a handler for the WSDISPLAYIO_GINFO ioctl in radeondrm, allowing
  > to retrieve basic information about a framebuffer display.
  > OK visa@, deraadt@ (fcambus@)

  ~ if_iwm.c                              ~ if_iwmvar.h

  > Remove the IWM_FLAG_HW_INITED flag from iwm(4). This flag was redundant.
  > The IFF_RUNNING flag in struct ifnet serves the same purpose.
  > ok mpi@ kettenis@ deraadt@ (stsp@)

  ~ if_ix.c                               

  > double ;;.  xhci one found by geoffhill (deraadt@)

  ~ drm/drmP.h                            

  > Fix another ;; in sys/dev (tom@)

dev/pckbc

  ~ pms.c                                 

  > pms/alps: configure compat mode (bru@)

dev/pv

  ~ hvs.c                                 

  > Include the request id in the I/O debug output (mikeb@)

  ~ if_hvn.c                              

  > Return early from NVS command submission if no response is required
  > (mikeb@)

  ~ hvs.c                                 

  > Don't confuse SCSI command status and transfer error code.
  > While here, make SCSI command completion routine more robust. (mikeb@)

  ~ pvbus.c                               ~ pvvar.h

  > Add a hypervisor-specific function pointer in pvbus(4) that gets called
  > during
  > cpu_hatch() on each cpu, allowing initialization of per-cpu features on
  > each
  > cpu as it starts up.
  > input from reyk@ and mikeb@
  > ok mikeb@ (jmatthew@)

  ~ if_hvn.c                              

  > Finish up minor changes in the output and clear the BATCHED channel flag
  > (mikeb@)

  ~ hyperv.c                              

  > s/membar_sync/virtio_membar_sync/ (mikeb@)

  ~ hyperv.c                              ~ hypervvar.h

  > Introduce deferred interrupt processing capability
  > Hyper-V interrupts seem to be sometimes delivered before the message
  > becomes available on the channel ring.  This is reproducible on hvs(4)
  > under load.  This change is modelled on the workaround found in the
  > Linux driver. (mikeb@)

  ~ hvs.c                                 

  > Request deferred interrupt processing (mikeb@)

  ~ hyperv.c                              

  > Event interrupt handler should call hv_channel_schedule now (mikeb@)

dev/usb

  ~ dwc2/dwc2_hcdintr.c                   

  > Check the validity of the `qtd' pointer after each interrupt case
  > and bail out if the pointer has become invalid. This prevents
  > use-after-free memory accesses that corrupted the dwc2qtd pool.
  > This fix improves stability on the Raspberry Pi 3.
  > From Linux commit dc8730846948e517169f630826cd2c97615f5ee8
  > OK kettenis@ (visa@)

  ~ if_ure.c                              ~ xhci.c

  > double ;;.  xhci one found by geoffhill (deraadt@)

  ~ if_urtwn.c                            

  > - Fix Tx queues to USB endpoints mapping and merge urtwn_r92c_dma_init()
  > and urtwn_r88e_dma_init() into one; from FreeBSD r291902.
  > - Change the way the number of pages for public queue is calculated;
  > Based on the vendor driver's _InitQueueReservedPage(), the formula for
  > calculation of the number of pages for public priority queue is as follows:
  > if the device has 3 endpoints:
  > PUBQ = total number of Tx pages - HQ - LQ - NQ
  > if the device has 2 endpoints (i.e. has high and normal priority queues):
  > PUBQ = total number of Tx pages - HQ - NQ
  > - Don't write MCS8..MCS15 Tx power if the WNIC is a 1-stream Tx;
  > - Set R88E_TX_PAGE_COUNT to a correct value;
  > - Minimal enhancement in urtwn_open_pipes() for upcoming rtl8192eu chipset
  > support;
  > Tested with USB-N10 Nano (rtl8188cu), DWA-131 rev B (rtl8192cu), and
  > TL-WN725N v2 (rtl8188eu) on amd64.
  > ok stsp@ (kevlo@)

dev/wscons

  ~ wsmousevar.h                          ~ wstpad.c

  > Remove remnants of old versions. (bru@)

kern

  ~ kern_pledge.c                         

  > Terminate pledge log(9) with newline.  This fixes dmesg(8) output.
  > found by regress/sys/kern/pledge/generic; OK deraadt@ (bluhm@)

  ~ subr_pool.c                           

  > dynamically scale the size of the per cpu cache lists.
  > if the lock around the global depot of extra cache lists is contented
  > a lot in between the gc task runs, consider growing the number of
  > entries a free list can hold.
  > the size of the list is bounded by the number of pool items the
  > current set of pages can represent to avoid having cpus starve each
  > other. im not sure this semantic is right (or the least worst) but
  > we're putting it in now to see what happens.
  > this also means reality matches the documentation i just committed
  > in pool_cache_init.9.
  > tested by hrvoje popovski and amit kulkarni
  > ok visa@ (dlg@)

  ~ uipc_socket.c                         

  > Convert sodidle() to timeout_set_proc(9), it needs a process context
  > to grab the rwlock.
  > Problem reported by Rivo Nurges.
  > ok bluhm@ (mpi@)

  ~ kern_sysctl.c                         

  > Do not touch file pointers for which FILE_IS_USABLE() is false.
  > They're might not be fully constructed.
  > ok mpi@ deraadt@ bluhm@ (gerhard@)

  ~ uipc_socket.c                         

  > In ddb print socket bit field so_state in hex to match SS_ defines.
  > (bluhm@)

  ~ kern_pledge.c                         

  > Permit TIOCSTAT on a tty. (deraadt@)

  ~ subr_hibernate.c                      

  > calculate a "sum" based upon pointers to functions all over the kernel,
  > so that an unhibernate kernel can detect if it is running with the
  > kernel it booted.
  > ok mlarkin (deraadt@)

  ~ subr_pool.c                           

  > change the semantic for calculating when to grow the size of a cache list.
  > previously it would figure out if there's enough items overall for
  > all the cpus to have full active an inactive free lists. this
  > included currently allocated items, which pools wont actually hold
  > on a free list and cannot predict when they will come back.
  > instead, see if there's enough items in the idle lists in the depot
  > that could instead go on all the free lists on the cpus. if there's
  > enough idle items, then we can grow.
  > tested by hrvoje popovski and amit kulkarni
  > ok visa@ (dlg@)

  ~ subr_pool.c                           

  > set the alignment of the per cpu cache structures to CACHELINESIZE.
  > hardcoding 64 is too optimistic. (dlg@)

net

  ~ radix.c                               ~ radix.h

  > Make rn_match() and rn_lookup() safe to be used in parrallel, when
  > different trees are manipulated:
  > - Stop writting to global variables
  > - Use a buffer on the stack
  > - Anotate read/only arrays as such
  > While here introduce a SALEN() macro and assert that the KERNEL_LOCK()
  > is held when a tree is modified.
  > ok bluhm@ (mpi@)

  ~ bsd-comp.c                            ~ if_gif.c
  ~ pf_norm.c                             ~ ppp-deflate.c

  > When dealing with mbuf pointers passed down as function parameters,
  > bugs could easily result in use-after-free or double free.  Introduce
  > m_freemp() which automatically resets the pointer before freeing
  > it.  So we have less dangling pointers in the kernel.
  > OK krw@ mpi@ claudio@ (bluhm@)

  ~ radix.c                               

  > Remove KERNEL_LOCK() asserts.
  > pf table code iterates on a radix tree and currently relies on the
  > NET_LOCK() to do the serialization.
  > Found the hardway by jasper@ (mpi@)

  ~ if_gif.c                              

  > Do not use the interface pointer after if_put().  Rename ipip_input_gif()
  > to ipip_input_if() and always pass the ifp.  Only dump the packet
  > to bpf if we are called with a gif(4) interface.
  > OK mpi@ (bluhm@)

  ~ pf.c                                  

  > Fix kernel diagnostic assertion "(sk->inp == NULL) || (sk->inp->inp_pf_sk
  > == NULL)".  The problem was that setting the inp pointer in the
  > statekey to NULL was delayed until the statekey refcounter reached
  > 0.  So the inp could get linked to another statekey while an mbuf
  > in the socket buffer was keeping the refcounter at 1.  Set the
  > statekey inp pointer to NULL in pf_state_key_detach() immediately,
  > then the kassert can be even stricter.
  > OK sashan@ (bluhm@)

  ~ if_vlan.c                             

  > Fix the remaining ';;'s in sys/ (tom@)

  ~ if.c                                  

  > Resetting the mbuf header in if_input_local() was stripping off the
  > M_LOOP flag.  This broke IPv6 multicast.  Always set M_LOOP when
  > going through if_input_local() and adjust the flag's comment.
  > report rzalamena@; OK mpi@ (bluhm@)

  ~ pf_norm.c                             

  > To avoid packet loss due to reuse of the 16 bit IPv4 fragment id,
  > we need suitable data structures.  Organize the pf fragments with
  > two red-black trees.  One is holding the address and protocol
  > information and the other has only the fragment id.  This will allow
  > to drop fragemts for specific connections more aggressively.  `
  > from markus@; OK sashan@ (bluhm@)

net80211

  ~ ieee80211.c                           

  > Initialize the link state of a wireless interface to DOWN when the
  > interface is attached to the net80211 layer. Prevents confusion
  > in cases where drivers forget to initialize the link state.
  > ok mpi@ kettenis@ (stsp@)

netinet

  ~ ip_input.c                            ~ ip_mroute.c

  > The IP multicast forward functions return an errno, call the variable
  > error.  Make the ip_mforward() return value consistent.  Simplify
  > the caller logic in ipv6_input() like in IPv4.
  > OK mpi@ (bluhm@)

  ~ igmp.c                                ~ ip_carp.c
  ~ ip_ether.c                            ~ ip_icmp.c
  ~ ip_input.c                            ~ ip_ipip.c
  ~ ipsec_input.c                         

  > When dealing with mbuf pointers passed down as function parameters,
  > bugs could easily result in use-after-free or double free.  Introduce
  > m_freemp() which automatically resets the pointer before freeing
  > it.  So we have less dangling pointers in the kernel.
  > OK krw@ mpi@ claudio@ (bluhm@)

  ~ ip_ipip.c                             ~ ip_ipip.h

  > Do not use the interface pointer after if_put().  Rename ipip_input_gif()
  > to ipip_input_if() and always pass the ifp.  Only dump the packet
  > to bpf if we are called with a gif(4) interface.
  > OK mpi@ (bluhm@)

  ~ ip_carp.c                             

  > Fix the remaining ';;'s in sys/ (tom@)

netinet6

  ~ ip6_input.c                           

  > The IP multicast forward functions return an errno, call the variable
  > error.  Make the ip_mforward() return value consistent.  Simplify
  > the caller logic in ipv6_input() like in IPv4.
  > OK mpi@ (bluhm@)

  ~ ip6_input.c                           

  > When dealing with mbuf pointers passed down as function parameters,
  > bugs could easily result in use-after-free or double free.  Introduce
  > m_freemp() which automatically resets the pointer before freeing
  > it.  So we have less dangling pointers in the kernel.
  > OK krw@ mpi@ claudio@ (bluhm@)

nfs

  ~ nfs_socket.c                          

  > When dealing with mbuf pointers passed down as function parameters,
  > bugs could easily result in use-after-free or double free.  Introduce
  > m_freemp() which automatically resets the pointer before freeing
  > it.  So we have less dangling pointers in the kernel.
  > OK krw@ mpi@ claudio@ (bluhm@)

stand

  ~ boot/boot.c                           

  > As early as possible, create a link /bsd.booted to the /bsd kernel we
  > presume we booted from.  If you boot from another kernel, we cannot help
  > you later with hibernate, sorry -- The kernel does not get a useable
  > filename from the bootblocks.
  > In the bootblocks, detect a live hibernate signature and boot from
  > /bsd.booted instead.
  > with yasuoka, lots of discussion with mlarkin, ok tom (deraadt@)

sys

  ~ tree.h                                

  > port the RBT code to userland by making it part of libc.
  > src/lib/libc/gen/tree.c is a copy of src/sys/kern/subr_tree.c, but with
  > annotations for symbol visibility. changes to one should be reflected
  > in the other.
  > the malloc debug code that uses RB code is ported to RBT.
  > because libc provides the RBT code, procmap doesn't have to reach into
  > the kernel and build subr_tree.c itself now.
  > mild enthusiasm from many
  > ok guenther@ (dlg@)

  ~ mbuf.h                                

  > When dealing with mbuf pointers passed down as function parameters,
  > bugs could easily result in use-after-free or double free.  Introduce
  > m_freemp() which automatically resets the pointer before freeing
  > it.  So we have less dangling pointers in the kernel.
  > OK krw@ mpi@ claudio@ (bluhm@)

  ~ pool.h                                

  > dynamically scale the size of the per cpu cache lists.
  > if the lock around the global depot of extra cache lists is contented
  > a lot in between the gc task runs, consider growing the number of
  > entries a free list can hold.
  > the size of the list is bounded by the number of pool items the
  > current set of pages can represent to avoid having cpus starve each
  > other. im not sure this semantic is right (or the least worst) but
  > we're putting it in now to see what happens.
  > this also means reality matches the documentation i just committed
  > in pool_cache_init.9.
  > tested by hrvoje popovski and amit kulkarni
  > ok visa@ (dlg@)

  ~ hibernate.h                           

  > calculate a "sum" based upon pointers to functions all over the kernel,
  > so that an unhibernate kernel can detect if it is running with the
  > kernel it booted.
  > ok mlarkin (deraadt@)

  ~ pool.h                                

  > change the semantic for calculating when to grow the size of a cache list.
  > previously it would figure out if there's enough items overall for
  > all the cpus to have full active an inactive free lists. this
  > included currently allocated items, which pools wont actually hold
  > on a free list and cannot predict when they will come back.
  > instead, see if there's enough items in the idle lists in the depot
  > that could instead go on all the free lists on the cpus. if there's
  > enough idle items, then we can grow.
  > tested by hrvoje popovski and amit kulkarni
  > ok visa@ (dlg@)

  ~ mbuf.h                                

  > Resetting the mbuf header in if_input_local() was stripping off the
  > M_LOOP flag.  This broke IPv6 multicast.  Always set M_LOOP when
  > going through if_input_local() and adjust the flag's comment.
  > report rzalamena@; OK mpi@ (bluhm@)

== usr.bin =========================================================== 12/13 ==

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

locate

  - locate/concatdb.sh                    ~ locate/Makefile

  > Remove locate.concatdb, it never worked.
  > OK millert@ (akfaew@)

make

  ~ cond.c                                

  > error out if an exists condition tests an empty path, because that makes
  > zero sense.
  > this would have caught DEPENDSFILE in gnu/cc/cc_tools
  > okay guenther@,  also tested by krw@ (espie@)

  ~ gnode.h                               ~ make.c
  ~ targ.c                                

  > better display of cycles in -j mode.
  > lots of tests by krw@
  > review and comments by pirofti@, more tweaks to come (espie@)

  ~ make.c                                

  > zap trailing spaces from the previous commits and also other trailing
  > spaces (espie@)

mandoc

  ~ roff.c                                

  > Implement appending to standard man(7) and mdoc(7) macros with .am.
  > With roff_getstrn(), provide finer control which definitions
  > can be used for what:
  > * All definitions can be used for .if d tests and .am appending.
  > * User-defined for \* expansion, .dei expansion, and macro calling.
  > * Predefined for \* expansion.
  > * Standard macros, original or renamed, for macro calling.
  > Several related improvements while here:
  > * Do not return string table entries that have explicitly been removed.
  > * Do not create a rentab entry when trying to rename a non-existent macro.
  > * Clear an existing rentab entry when the external interface
  > roff_setstr() is called with its name.
  > * Avoid trailing blanks in macro lines generated from renamed
  > and from aliased macros.
  > * Delete the duplicate __m*_reserved[] tables, just use roff_name[].
  > (schwarze@)

  ~ mdoc_html.c                           

  > Fix a regression in the previous revision:
  > When there is no link description, reuse the URI.
  > Reported by tj@ and tb@. (schwarze@)

  ~ cgi.c                                 ~ eqn.c
  ~ eqn_html.c                            

  > KNF: remove parentheses from switch case labels; no binary change
  > (schwarze@)

  ~ eqn.c                                 

  > Recognize well-known functions names (the same that Heirloom recognizes,
  > which includes those recognized by groff) and wrap them in a roman box
  > unless they already are in roman context.
  > Missing feature reported by bentley@. (schwarze@)

  ~ eqn.c                                 

  > quoted words are not parsed for defined keys (schwarze@)

  ~ eqn.c                                 

  > Outside explicit font context, give every letter its own box.
  > The formatters need this to correctly select fonts.
  > Missing feature reported by bentley@. (schwarze@)

  ~ eqn.c                                 

  > Fix font selection for text boxes in the terminal formatter.
  > Issue reported by bentley@.
  > The AST data structure is powerful enough that all required
  > information can easily be provided in the parser, and no change
  > of the formatting code is needed. (schwarze@)

  ~ eqn.c                                 

  > Simplify font handling:
  > 1. Inherit the font attribute from the parent box, such that iteration
  > is no longer required to find the current font.
  > 2. For well-known function name tokens, do not insert an EQN_LISTONE
  > box into the AST; simply set the font attribute of the text box
  > itself that contains the name.
  > Also improve word splitting of unquoted strings in default font mode:
  > 3. Split between numbers and punctuation because both will soon get
  > different HTML markup.
  > 4. Do not split between letters.  With the newly ubiquitious font
  > attributes, all formatters will be able to figure out what to do
  > without putting each letter into a separate box. (schwarze@)

  ~ eqn_html.c                            ~ html.c
  ~ html.h                                

  > Write text boxes as <mi>, <mn>, or <mo> as appropriate,
  > and write fontstyle or fontweight attributes where required.
  > Missing features reported by bentley@. (schwarze@)

  ~ eqn.c                                 

  > splitting a text box sometimes requires wrapping it in a list (schwarze@)

  ~ eqn_html.c                            

  > Consistently treat character escape sequences as operators,
  > not as letters, even if their names contain letters.
  > This is certainly not perfect, but code to recognize that \(*a is
  > not an operator but a letter would need a huge table, or Unicode
  > character property support, which won't happen at this time. (schwarze@)

  ~ st.in                                 

  > Delete .St -p1003.1-2013.
  > It is an OpenBSD addition that did not get used a single time in
  > three years, and groff did not pick it up either, so removing it
  > does not affect any existing manuals anywhere.
  > Cleanup suggested by jmc@, OK bentley@. (schwarze@)

  ~ att.c                                 ~ cgi.c
  ~ main.c                                ~ man_html.c
  ~ man_validate.c                        ~ mandoc.1
  ~ mandoc.h                              ~ mandocdb.c
  ~ mdoc_html.c                           ~ mdoc_validate.c
  ~ read.c                                ~ roff.c
  ~ roff.h                                ~ roff_html.c
  ~ roff_term.c                           ~ st.c

  > Split -Wstyle into -Wstyle and the even lower -Wbase, and add
  > -Wopenbsd and -Wnetbsd to check conventions for the base system of
  > a specific operating system.  Mark operating system specific messages
  > with "(OpenBSD)" at the end.
  > Please use just "-Tlint" to check base system manuals (defaulting
  > to -Wall, which is now -Wbase), but prefer "-Tlint -Wstyle" for the
  > manuals of portable software projects you maintain that are not
  > part of OpenBSD base, to avoid bogus recommendations about base
  > system conventions that do not apply.
  > Issue originally reported by semarie@, solution using
  > an idea from tedu@, discussed with jmc@ and jca@. (schwarze@)

  ~ mandoc.h                              ~ mdoc_validate.c
  ~ read.c                                ~ mandoc.1

  > in the base system, suggest leaving .Os blank; inspired by mdoclint
  > (schwarze@)

  ~ msec.in                               

  > delete old, undocumented, obsolete section names that nobody uses
  > (schwarze@)

  ~ mandoc.h                              ~ mdoc_validate.c
  ~ read.c                                

  > operating system dependent message about unknown architecture;
  > inspired by mdoclint (schwarze@)

  ~ mandoc.1                              

  > document message "unknown architecture" (schwarze@)

  ~ mandoc.1                              

  > delete useless .Ns macro that jmc@ found with mdoclint(1) (schwarze@)

  ~ man_html.c                            ~ man_macro.c
  ~ man_term.c                            ~ man_validate.c
  ~ mandoc.1                              ~ roff.c
  ~ roff.h                                

  > Add support for the MT and ME mailto macros, used for example in wg(8).
  > feedback and ok schwarze@ (bentley@)

  ~ mandoc.1                              ~ mandoc.h
  ~ mdoc_validate.c                       ~ read.c

  > Catch typos in .Sh names; suggested by jmc@.
  > I'm using a very simple, linear time / zero space fuzzy string
  > matching heuristic rather than a full Levenshtein metric, to keep
  > the code both simple and fast. (schwarze@)

ssh

  ~ moduli-gen/moduli-gen.sh              

  > Run the screen twice so we end up with more candidate groups.  ok djm@
  > (dtucker@)

  ~ moduli-gen/moduli.2048                ~ moduli-gen/moduli.3072
  ~ moduli-gen/moduli.4096                ~ moduli-gen/moduli.6144
  ~ moduli-gen/moduli.7680                ~ moduli-gen/moduli.8192

  > Import regenerated moduli. (dtucker@)

  ~ clientloop.c                          

  > When using the escape sequence &~ the code path is client_loop() ->
  > client_simple_escape_filter() -> process_escapes() -> fork() and the pledge
  > for
  > this path lacks the proc promise and therefore aborts the process.
  > The solution is to just add proc the promise to this specific pledge.
  > Reported by Gregoire Jadi gjadi ! omecha.info
  > Insight with tb@, OK jca@ (mestre@)

  ~ session.c                             

  > no need to call log_init to reinitialise logged PID in child sessions,
  > since we haven't called openlog() in log_init() since 1999; ok markus@
  > (djm@)

  ~ ssh_config.5                          ~ sshconnect.c
  ~ sshd.8                                

  > use HostKeyAlias if specified instead of hostname for matching host
  > certificate principal names; bz#2728; ok dtucker@ (djm@)

  ~ sshconnect.c                          

  > switch sshconnect.c from (slightly abused) select() to poll();
  > ok deraadt@ a while back (djm@)

  ~ sshd.8                                

  > word fix; (jmc@)

  ~ auth.c                                ~ auth.h
  ~ auth2-gss.c                           ~ auth2-hostbased.c
  ~ auth2-pubkey.c                        ~ auth2.c
  ~ gss-serv.c                            ~ monitor.c
  ~ servconf.c                            ~ servconf.h
  ~ session.c                             ~ ssh-gss.h
  ~ sshd_config.5                         

  > refactor authentication logging
  > optionally record successful auth methods and public credentials
  > used in a file accessible to user sessions
  > feedback and ok markus@ (djm@)

  ~ packet.c                              

  > don't pass pointer to struct sshcipher between privsep processes,
  > just redo the lookup in each using the already-passed cipher name.
  > bz#2704 based on patch from Brooks Davis; ok markus dtucker (djm@)

  ~ sshd_config.5                         

  > spelling; (jmc@)

  ~ sshd_config.5                         

  > correct env var name (djm@)

systat

  ~ pool.c                                

  > change the semantic for calculating when to grow the size of a cache list.
  > previously it would figure out if there's enough items overall for
  > all the cpus to have full active an inactive free lists. this
  > included currently allocated items, which pools wont actually hold
  > on a free list and cannot predict when they will come back.
  > instead, see if there's enough items in the idle lists in the depot
  > that could instead go on all the free lists on the cpus. if there's
  > enough idle items, then we can grow.
  > tested by hrvoje popovski and amit kulkarni
  > ok visa@ (dlg@)

tmux

  ~ cmd-set-option.c                      ~ key-string.c
  ~ options-table.c                       ~ tmux.1
  ~ tmux.h                                ~ tty-keys.c

  > Add user-keys option to allow user-defined keys to be set, from Dan
  > Aloni. (nicm@)

vi

  ~ docs/USD.doc/vi.man/vi.1              

  > Better document the :s ex command and its variants.
  > ok jmc@ (bentley@)

  ~ common/mem.h                          

  > Fix a check in ADD_SPACE_{GOTO,RET} that potentially allowed for a
  > NULL-dereference.
  > OK tom@ (martijn@)

who

  ~ who.1                                 

  > Mark up "am i" as Cm, not Ar.
  > While here, remove a leftover Tn macro.
  > ok jmc@ (bentley@)

== usr.sbin ========================================================== 13/13 ==

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

config

  ~ main.c                                

  > delete accidental blank line (deraadt@)

  ~ config.h                              ~ main.c
  ~ mkmakefile.c                          

  > Generate the newbsd: and install-update: targets here, rather than
  > in the source Makefile.* files.
  > ok tb rpe mlarkin (deraadt@)

ifstated

  ~ ifstated.c                            ~ ifstated.h
  ~ log.c                                 ~ parse.y
  + log.h                                 

  > update log.c in ifstated to the same used in bgpd etc.
  > Done by Rob Pierce <rob AT 2keys DOT ca>, thanks (benno@)

ospf6ctl

  ~ ospf6ctl.c                            

  > Import route priority support from ospfd to ospf6d.
  > Also remove the RTF_UP flag from hdr.rtm_flags in send_rtmsg() since
  > ospfd and bgpd don't set the flag.
  > OK bluhm@ claudio@ (friehm@)

ospf6d

  ~ kroute.c                              ~ ospf6d.h
  ~ rde.c                                 

  > Import route priority support from ospfd to ospf6d.
  > Also remove the RTF_UP flag from hdr.rtm_flags in send_rtmsg() since
  > ospfd and bgpd don't set the flag.
  > OK bluhm@ claudio@ (friehm@)

pkg_add

  ~ OpenBSD/PackageRepository.pm          

  > trim more error messages
  > - if we can't retrieve the package, of course signify will say it's
  > truncated
  > so that's redundant.
  > - if you give a full package name, can_be_empty should make directories
  > vanish.
  > (landry just discovered 6.1/packages-stable by accident, make it vanish
  > again so he can't find it back... :D ) (espie@)

procmap

  ~ Makefile                              

  > port the RBT code to userland by making it part of libc.
  > src/lib/libc/gen/tree.c is a copy of src/sys/kern/subr_tree.c, but with
  > annotations for symbol visibility. changes to one should be reflected
  > in the other.
  > the malloc debug code that uses RB code is ported to RBT.
  > because libc provides the RBT code, procmap doesn't have to reach into
  > the kernel and build subr_tree.c itself now.
  > mild enthusiasm from many
  > ok guenther@ (dlg@)

smtpd

  ~ smtp_session.c                        

  > fix descriptor leak in the smtp congestion mechanism
  > diff from Henri Kemppainen; ok gilles@ eric@ (gilles@)

vmd

  ~ virtio.h                              

  > Revert a previous commit that increased the virtio queue size since it
  > appears to be causing some instability. (mlarkin@)

wsfontload

  ~ wsfontload.c                          

  > Close file descriptor on an exit path.
  > OK gsoares@ (fcambus@)

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

Reply via email to