OpenBSD src changes summary for 2016-03-20 to 2016-03-27 inclusive
==================================================================

bin/csh                                 bin/ed
bin/ksh                                 bin/stty
distrib/armv7                           distrib/sets
etc/examples/pkg.conf                   etc/mtree/BSD.x11.dist
etc/netstart                            etc/rc.d/rc.subr
games/hunt                              gnu
include/tib.h                           lib/csu
lib/libarch                             lib/libc
lib/libcrypto                           lib/libedit
lib/libevent                            lib/libexpat
lib/libmenu                             lib/librthread
lib/libssl                              libexec/ld.so
libexec/spamd                           regress/bin
regress/lib                             regress/libexec
regress/sbin                            regress/sys
regress/usr.bin                         regress/usr.sbin
share/locale                            share/man
share/zoneinfo                          sys/arch/arm/arm
sys/arch/arm/armv7                      sys/arch/arm/conf
sys/arch/arm/include                    sys/arch/i386/i386
sys/arch/i386/include                   sys/arch/octeon/include
sys/arch/octeon/octeon                  sys/arch/sparc64/dev
sys/conf                                sys/dev
sys/dev/ic                              sys/dev/pci
sys/dev/sdmmc                           sys/dev/usb
sys/isofs/cd9660                        sys/isofs/udf
sys/kern                                sys/lib/libkern
sys/lib/libz                            sys/miscfs/fuse
sys/msdosfs                             sys/net
sys/net80211                            sys/netinet
sys/netinet6                            sys/ntfs
sys/sys                                 sys/ufs/ext2fs
sys/ufs/ffs                             sys/ufs/ufs
sys/uvm                                 usr.bin/calendar
usr.bin/dc                              usr.bin/head
usr.bin/kdump                           usr.bin/less
usr.bin/locale                          usr.bin/mandoc
usr.bin/netstat                         usr.bin/sndiod
usr.bin/tcpbench                        usr.bin/ul
usr.bin/yacc                            usr.sbin/arp
usr.sbin/bgpd                           usr.sbin/iscsid
usr.sbin/ldapd                          usr.sbin/npppd
usr.sbin/ntpd                           usr.sbin/pkg_add
usr.sbin/radiusd                        usr.sbin/rcctl
usr.sbin/smtpd                          usr.sbin/tokenadm
usr.sbin/tokeninit                      usr.sbin/ypbind

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

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

csh

  ~ lex.c                                 

  > Use fcntl(fd, F_SETFL, flags) to clear O_NONBLOCK instead of
  > ioctl(fd, FIONBIO, ...).  OK krw@ (millert@)

ed

  ~ buf.c                                 ~ glbl.c
  ~ io.c                                  ~ main.c
  ~ re.c                                  ~ sub.c
  ~ undo.c                                

  > header cleanup
  > from Edgar Pettijohn, correction from deraadt@ (mmcc@)

  ~ ed.h                                  

  > actually remove unnecessary includes
  > from Edgar Pettijohn, ok and with input from tb@ (mmcc@)

ksh

  ~ io.c                                  ~ misc.c
  ~ shf.c                                 

  > Currently we have about a 50/50 split over fcntl(n, F_GETFL [,0])
  > idioms.
  > Adopt the more concise fcntl(n, F_GETFL) over fcntl(n, F_GETFL, 0)
  > where it is obvious further investigation will not yield and
  > even better way.
  > Obviousness evaluation and ok guenther@ (krw@)

  ~ c_ksh.c                               ~ ksh.1
  ~ sh.1                                  

  > More ksh POSIX compliance fixes by Martijn Dekker:
  > This simple patch makes the 'command' builtin POSIX-compliant and
  > consistent with other current shells. It fixes two things:
  > a) 'command -v' does not find shell reserved words (a.k.a. keywords).
  > For instance, 'command -v select' outputs nothing but should output
  > 'select'.
  > b) 'command -pv' always outputs the path of an external command, even
  > if 'command -p' would execute a builtin. For instance, 'command -p kill'
  > executes the 'kill' builtin, as expected, but 'command -pv kill' outputs
  > '/bin/kill'. The '-v' option is supposed to reflect what would actually
  > be executed, so 'command -pv kill' should output 'kill'. The -p option
  > sets the PATH to a default system value before doing the search, but
  > that has no bearing on the fact that builtins take precedence over
  > external commands.
  > The patch fixes both issues for 'command' without affecting the
  > behaviour of the ksh-specific builtin 'whence', which is handled by the
  > same C function.
  > Regression test added to obsd-regress.t.
  > Issues found and fixed by Martijn Dekker, ok millert@ (tb@)

stty

  ~ cchar.c                               ~ gfmt.c
  ~ key.c                                 ~ modes.c
  ~ print.c                               ~ stty.c
  ~ stty.h                                

  > header cleanup
  > from Edgar Pettijohn, with a correction from deraadt@ (mmcc@)

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

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

armv7

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

  > use MLO not mlo to match the names generated by u-boot builds (jsg@)

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

  > Switch from the solidrun i.mx6 u-boot to mainline u-boot on cubox i.
  > The offset of u-boot.img in the disk image changes to be the same as
  > wandboard. (jsg@)

sets

  ~ lists/base/md.alpha                   ~ lists/base/md.amd64
  ~ lists/base/md.armish                  ~ lists/base/md.armv7
  ~ lists/base/md.hppa                    ~ lists/base/md.hppa64
  ~ lists/base/md.i386                    ~ lists/base/md.landisk
  ~ lists/base/md.loongson                ~ lists/base/md.luna88k
  ~ lists/base/md.macppc                  ~ lists/base/md.octeon
  ~ lists/base/md.sgi                     ~ lists/base/md.socppc
  ~ lists/base/md.sparc                   ~ lists/base/md.sparc64
  ~ lists/base/md.zaurus                  

  > sync (deraadt@)

  ~ lists/base/mi                         

  > sync (deraadt@)

  ~ lists/base/md.alpha                   ~ lists/base/md.amd64
  ~ lists/base/md.armish                  ~ lists/base/md.armv7
  ~ lists/base/md.hppa                    ~ lists/base/md.hppa64
  ~ lists/base/md.i386                    ~ lists/base/md.landisk
  ~ lists/base/md.loongson                ~ lists/base/md.luna88k
  ~ lists/base/md.macppc                  ~ lists/base/md.octeon
  ~ lists/base/md.sgi                     ~ lists/base/md.socppc
  ~ lists/base/md.sparc                   ~ lists/base/md.sparc64
  ~ lists/base/md.zaurus                  

  > sync (deraadt@)

  ~ lists/comp/mi                         

  > sync (deraadt@)

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

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

examples/pkg.conf

  ~ examples/pkg.conf                     

  > sync (sthen@)

mtree/BSD.x11.dist

  ~ mtree/BSD.x11.dist                    

  > add include directories used by recent versions of libdrm (jsg@)

netstart

  ~ netstart                              

  > Don't delete the 224/4 route in netstart, unless it's being done to ensure
  > that
  > a -reject route can be added. Restores the ability to set an interface
  > route
  > before daemons are started, lost during the previous simplification.
  > ok millert mpi (sthen@)

rc.d/rc.subr

  ~ rc.d/rc.subr                          

  > Handle the rc_stop=NO => rc_restart=NO case within _rc_not_supported().
  > (ajacoutot@)

  ~ rc.d/rc.subr                          

  > Make it possible to get usage as a non-root user.
  > ok robert@ (ajacoutot@)

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

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

hunt

  ~ huntd/answer.c                        ~ huntd/driver.c

  > Instead of creating a socket with socket() or accept() and then
  > setting the O_NONBLOCK flag on it with fcntl(F_SETFL) afterwards,
  > just pass SOCK_NONBLOCK to socket() or accept4() and get it right
  > to begin with.
  > ok millert@ krw@ beck@ deraadt@ jca@ (guenther@)

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

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

gnu

  ~ gcc/gcc/config/arm/openbsd.h          

  > Change the default gcc arm arch target from strongarm (armv4) to
  > arm9e (armv5te w/o xscale extensions).  We no longer support anything
  > less than armv5te and this allows some additional instructions.
  > -mthumb-interwork remains off by default.
  > ok patrick@ (jsg@)

== include =========================================================== 06/13 ==

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

tib.h

  ~ tib.h                                 

  > Prepare for future ld.so/libc bump: update <tib.h> with the definitions
  > that will be needed and make libpthread work when ld.so/libc.a provide an
  > initial TIB. (guenther@)

== lib =============================================================== 07/13 ==

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

csu

  ~ crt0.c                                ~ alpha/md_init.h
  ~ amd64/md_init.h                       ~ arm/md_init.h
  ~ hppa/md_init.h                        ~ hppa64/md_init.h
  ~ i386/md_init.h                        ~ m88k/md_init.h
  ~ mips64/md_init.h                      ~ powerpc/md_init.h
  ~ sh/md_init.h                          ~ sparc/md_init.h
  ~ sparc64/md_init.h                     

  > Rearrange C runtime bits: now that ld.so exports environ and __progname,
  > move their definitions and initialization in static links to libc.a
  > Make crt0 always invoke a new func _csu_finish() in libc to process the
  > auxv
  > and to either register the ld.so cleanup function (in dynamic links) or
  > initialize environ and __progname and do MC_DISABLE_KBIND (in static
  > links).
  > In libc, get pagesize from auxv; cache that between getpagesize() and
  > sysconf(_SC_PAGESIZE)
  > ok mpi@ "good time" deraadt@ (guenther@)

  ~ arm/md_init.h                         ~ m88k/md_init.h

  > Unbreak arm and m88k: COPY relocations for weak symbols that are overloaded
  > with strong symbols in ld.so don't do what we need, so put definitions back
  > in crt0 and make ld.so update __progname like it does environ.
  > report and testing patrick@ jsg@ (guenther@)

libarch

  - i386/i386_get_ioperm.2                - i386/i386_get_ioperm.c
  - i386/i386_set_ioperm.c                ~ i386/Makefile

  > Delete i386_{get,set}_ioperm(2) APIs and underlying sysarch(2) bits.
  > They're no longer used by anything and should let us simplify the TSS
  > handling.
  > ok mikeb@ naddy@ (guenther@)

  ~ i386/i386_iopl.2                      

  > no more i386_get_ioperm(2); (jmc@)

libc

  ~ stdio/fdopen.c                        

  > Currently we have about a 50/50 split over fcntl(n, F_GETFL [,0])
  > idioms.
  > Adopt the more concise fcntl(n, F_GETFL) over fcntl(n, F_GETFL, 0)
  > where it is obvious further investigation will not yield and
  > even better way.
  > Obviousness evaluation and ok guenther@ (krw@)

  ~ Symbols.list                          ~ shlib_version
  ~ dlfcn/Makefile.inc                    ~ gen/getpagesize.c
  ~ gen/sysconf.c                         ~ hidden/unistd.h
  + arch/alpha/gdtoa/kbind.h              + arch/amd64/gdtoa/kbind.h
  + arch/arm/gdtoa/kbind.h                + arch/hppa/gdtoa/kbind.h
  + arch/hppa64/gdtoa/kbind.h             + arch/i386/gdtoa/kbind.h
  + arch/m88k/gdtoa/kbind.h               + arch/mips64/gdtoa/kbind.h
  + arch/powerpc/gdtoa/kbind.h            + arch/sh/gdtoa/kbind.h
  + arch/sparc/gdtoa/kbind.h              + arch/sparc64/gdtoa/kbind.h
  + dlfcn/init.c                          

  > Rearrange C runtime bits: now that ld.so exports environ and __progname,
  > move their definitions and initialization in static links to libc.a
  > Make crt0 always invoke a new func _csu_finish() in libc to process the
  > auxv
  > and to either register the ld.so cleanup function (in dynamic links) or
  > initialize environ and __progname and do MC_DISABLE_KBIND (in static
  > links).
  > In libc, get pagesize from auxv; cache that between getpagesize() and
  > sysconf(_SC_PAGESIZE)
  > ok mpi@ "good time" deraadt@ (guenther@)

  ~ dlfcn/init.c                          

  > Add  line (guenther@)

  ~ sys/__get_tcb.2                       

  > It's libpthread, not librthread, and __tfork(2) lets you set the TCB
  > address of the new thread (guenther@)

  ~ sys/__thrsleep.2                      

  > __thrsleep.2 is contained in section 2
  > ok jmc (natano@)

  ~ locale/Makefile.inc                   

  > LOCALE_CHARSETS has been unused for some time now
  > so no need to include share/locale/ctype/Makefile.inc to get it.
  > ok guenther@ stsp@ (who had the same diff) (jca@)

  - arch/alpha/gdtoa/kbind.h              - arch/amd64/gdtoa/kbind.h
  - arch/arm/gdtoa/kbind.h                - arch/hppa/gdtoa/kbind.h
  - arch/hppa64/gdtoa/kbind.h             - arch/i386/gdtoa/kbind.h
  - arch/m88k/gdtoa/kbind.h               - arch/mips64/gdtoa/kbind.h
  - arch/powerpc/gdtoa/kbind.h            - arch/sh/gdtoa/kbind.h
  - arch/sparc/gdtoa/kbind.h              - arch/sparc64/gdtoa/kbind.h
  ~ dlfcn/init.c                          

  > The asm in the MD_DISABLE_KBIND macro was too fragile and broke alpha and
  > hppa.
  > So instead, do the kbind disabling with syscall().
  > debugging and ok deraadt@, ok kettenis@ (guenther@)

  ~ shlib_version                         ~ gen/syslog_r.c
  ~ hidden/syslog.h                       ~ sys/Makefile.inc
  ~ sys/sendsyslog.2                      ~ sys/stack_protector.c

  > Rename the system call sendsyslog2 to sendsyslog.  Keep the old one
  > as osendsyslog for a while.  The three argument variant is the only
  > one that will stay.
  > input kettenis@;  OK deraadt@ (bluhm@)

  ~ sys/sendsyslog.2                      

  > tweak previous; (jmc@)

  ~ sys/sendsyslog.2                      

  > Improve the sendsyslog(2) man page.
  > OK deraadt@ guenther@ jmc@ (bluhm@)

  ~ asr/res_init.c                        

  > Initialize _res_ext.nsaddr_list alongside _res.nsaddr_list.
  > Fallback to initialization with 0 when _res.nsaddr_list is to small to hold
  > an
  > IPv6 address.
  > OK bluhm@ (chrisz@)

  - quad/TESTS/Makefile                   - quad/TESTS/divrem.c
  - quad/TESTS/mul.c                      

  > remove some unused ancient test files from 4.4 BSD
  > ok guenther@, millert@, deraadt@ (mmcc@)

  ~ gen/pwcache.3                         

  > fix the last bunch of NAME sections that were overlooked earlier
  > such that the MLINKS removal can be committed after this;
  > OK jmc@ (schwarze@)

  ~ stdio/fseek.3                         

  > fix typo: "prefer seek()" -> "prefer fseek()"
  > ok deraadt@, stsp@ (tb@)

  ~ sys/execve.2                          

  > Add EISDIR to ERRORS and fix ETXTBSY description; from Piotr Durlej.
  > OK jmc@ (millert@)

  ~ gen/syslog_r.c                        

  > remove unused variable
  > ok millert@ (chl@)

  ~ arch/sparc/sys/syscall.S              

  > Switch to RSYSCALL: no special handling is needed here any more and
  > we do need the hidden _libc_syscall alias.
  > from miod@ (guenther@)

  ~ arch/mips64/sys/syscall.S             

  > Don't need to define SYS_sycall here
  > noted by miod@ (guenther@)

libcrypto

  ~ man/CRYPTO_set_locking_callback.3     

  > fix the last bunch of NAME sections that were overlooked earlier
  > such that the MLINKS removal can be committed after this;
  > OK jmc@ (schwarze@)

libedit

  ~ readline.c                            

  > Currently we have about a 50/50 split over fcntl(n, F_GETFL [,0])
  > idioms.
  > Adopt the more concise fcntl(n, F_GETFL) over fcntl(n, F_GETFL, 0)
  > where it is obvious further investigation will not yield and
  > even better way.
  > Obviousness evaluation and ok guenther@ (krw@)

  ~ chartype.h                            ~ read.c

  > Fix the CHARSET_IS_UTF8 case in read_char().
  > For now, this mainly help programs explicitly using
  > wide-character functions like el_wgetc(3) and el_wgets(3).
  > 1. After reading an invalid byte sequence, do not throw away additional
  > valid bytes; fix by me using mbrtowc(3), obsoleting utf8_islead().
  > 2. When read(2) returns EOF, return that information to the caller,
  > do not prod on and potentially access garbage data in the buffer;
  > from Linas Vepstas via NetBSD read.c rev. 1.70 2013/05/27.
  > 3. After read__fixio() failure, restore errno to the one set by read();
  > from Steffen Nurpmeso via NetBSD read.c rev. 1.68 2012/09/10.
  > 4. After read__fixio() success, restore errno to the initial state
  > upon function entry; fix by me.
  > OK czarkoff@.  Also committed to NetBSD. (schwarze@)

  ~ read.c                                

  > Fix read_char() for the non-UTF-8 case, in particular for systems
  > supporting other multibyte locales or having an internal representation
  > of wchar_t that doesn't match UCS-4.
  > No functional change on OpenBSD, but it makes the code less confusing.
  > OK czarkoff@. (schwarze@)

  ~ chartype.h                            ~ eln.c

  > Fix the public interface function el_getc(3).
  > On OpenBSD, the effects are to set the return argument to the NUL byte
  > in case of a read failure (for robustness) and to properly set errno
  > when the character is out of range and cannot be stored in a byte.
  > Once we enable UTF-8, this will be needed to avoid returning bogus
  > bytes for valid Unicode characters.
  > On systems where the internal representation of wchar_t doesn't
  > match UCS-4, breakage was potentially even worse.
  > OK czarkoff@. (schwarze@)

  ~ el.h                                  ~ eln.c
  ~ read.c                                

  > Delete the weird IGNORE_EXTCHARS flag, simplifying the code
  > in the generic low-level function read_char().
  > Until we fully enable UTF-8 support, instead filter out non-ASCII
  > characters in the more logical place in the high-level function
  > el_gets(3).
  > OK czarkoff@. (schwarze@)

  ~ chartype.c                            ~ chartype.h
  ~ read.c                                

  > Get rid of "#ifdef WIDECHAR" and one goto in read_char(),
  > making the code more readable.  Instead, provide an mbrtowc(3)
  > replacement function in chartype.[hc], files that encapsulate
  > such system dependencies anyway.  No functional change.
  > OK czarkoff@ (schwarze@)

  ~ chared.c                              ~ chared.h
  ~ chartype.h                            ~ common.c
  ~ emacs.c                               ~ keymacro.c
  ~ makelist                              ~ map.c
  ~ parse.c                               ~ refresh.c
  ~ refresh.h                             ~ search.c
  ~ search.h                              ~ terminal.c
  ~ terminal.h                            ~ tty.c
  ~ vi.c                                  

  > Delete the useless Int datatype and always use the standard wint_t
  > directly.  This is not a problem because <wchar_t> is required all
  > over the place anyway, even when WIDECHAR is not defined.
  > No functional change except that it fixes a few printf(3)
  > format string issues, %c vs. %lc.
  > OK czarkoff@ (schwarze@)

  ~ tokenizer.c                           

  > Fix the same bug again that was already fixed in:
  > OpenBSD tokenizer.c rev. 1.8 2003/08/11 18:21:40 deraadt
  > Don't increase amax on realloc() failure.
  > The original fix got lost in a merge along the way.
  > This fix from Christos Zoulas via NetBSD tokenizer.c rev. 1.23 2016/02/15.
  > OK czarkoff@ (schwarze@)

  ~ sig.c                                 ~ sys.h
  ~ terminal.c                            

  > minor simplifactions, style fixes, and trivial syncs from NetBSD
  > (schwarze@)

  ~ config.h                              ~ el.c
  ~ history.c                             ~ sys.h

  > Use getline(3) rather than fgetln(3) because it is standardized
  > and simpler and safer to use.  Implemented by Christos Zoulas
  > following my suggestion, with a bug fix by me. (schwarze@)

  ~ TEST/Makefile                         

  > support WIDECHAR;
  > OK czarkoff@ (schwarze@)

  ~ chared.c                              ~ chared.h
  ~ common.c                              ~ el.c
  ~ el.h                                  ~ eln.c
  ~ emacs.c                               ~ filecomplete.c
  ~ hist.h                                ~ makelist
  ~ map.c                                 ~ parse.c
  ~ prompt.h                              ~ readline.c
  ~ refresh.h                             ~ search.c
  ~ search.h                              ~ sig.c
  ~ sig.h                                 ~ terminal.h
  ~ tty.c                                 ~ tty.h
  ~ vi.c                                  

  > Cleanup of private header inclusion:
  > 1. Do not include private headers from "chared.h", "hist.h", "prompt.h",
  > "refresh.h", "search.h", "sig.h", "terminal.h", "tty.h".
  > The only private header having to include other private headers is "el.h".
  > 2. Do not include "common.h", "parse.h", "help.h" from "el.h",
  > and do not include "emacs.h" and "vi.h" from "chared.h",
  > include them directly where needed.
  > 3. Do include "fcns.h" from "el.h" because el_func_t is needed for "map.h".
  > 4. Do not include private headers again that are already included by
  > "el.h".
  > 5. Include private headers after standard headers.
  > OK czarkoff@ (schwarze@)

  ~ common.c                              ~ el.h

  > delete useless "typedef int bool_t", use int directly;
  > OK czarkoff@ (schwarze@)

  ~ Makefile                              ~ chared.c
  ~ chared.h                              ~ chartype.c
  ~ chartype.h                            ~ common.c
  ~ el.c                                  ~ el.h
  ~ emacs.c                               ~ filecomplete.c
  ~ hist.c                                ~ hist.h
  ~ histedit.h                            ~ history.c
  ~ keymacro.c                            ~ makelist
  ~ map.c                                 ~ parse.c
  ~ prompt.h                              ~ read.c
  ~ read.h                                ~ readline.c
  ~ refresh.c                             ~ search.c
  ~ sig.c                                 ~ sys.h
  ~ terminal.c                            ~ tokenizer.c
  ~ tty.c                                 ~ vi.c
  ~ TEST/tc1.c                            ~ readline/Makefile
  ~ readline/readline.h                   

  > Cleanup of standard header inclusion:
  > 1. Add the missing <errno.h> to sig.c.
  > 2. Do not include standard headers from private headers "chared.h"
  > and "el.h", include them directly where needed.
  > 3. Delete a few needless inclusions of <ctype.h>.
  > 4. Sort the standard headers.
  > 5. Delete _GNU_SOURCE weirdness from histedit.h, that file doesn't even
  > need the access to wcsdup(3) mentioned in the comment.
  > 6. Delete some trailing blanks and blanks before tabs.
  > OK czarkoff@ (schwarze@)

  ~ read.c                                

  > Merge a few simple fixes from NetBSD:
  > NetBSD rev. 1.68 2012/09/10 christos (bugfixes from Steffen Nurpmeso)
  > * el_wgetc(): set el_errno after read_char() failure
  > * el_wgets(): flag error condition after read_getcmd() failure
  > NetBSD rev. 1.69 2012/09/11 christos (bugfix from Christos Zoulas)
  > * read_getcmd(): return failure after el_wgetc() failure
  > NetBSD rev. 1.75 2016/02/12 christos (cleanup from Christos Zoulas)
  > * read_getcmd(): use a constant rather than a magical number (schwarze@)

  ~ Makefile                              ~ chared.c
  ~ common.c                              ~ eln.c
  ~ keymacro.c                            ~ read.c
  ~ search.c                              

  > Reduce the FUN() macro madness by no longer applying it to el_[w]getc(3).
  > Always use el_wgetc(3) internally.  In the !WIDECHAR case, casting
  > the result to (Char) is safe because the function returns a byte
  > rather than a character in that case.
  > No functional change except for fixing a printf(3) format string issue
  > when compiled with DEBUG_READ and WIDECHAR.
  > OK czarkoff@ (schwarze@)

  ~ chartype.c                            ~ chartype.h
  ~ el.c                                  ~ el.h
  ~ eln.c                                 ~ read.c
  ~ read.h                                ~ readline.c

  > Make the read_char() function always take a wchar_t * argument.
  > On first sight, it might look as if this required a bump because
  > it seems to change the public type el_rfunc_t.  But we only compile
  > with WIDECHAR, and in that case, there is no change in the interface.
  > This also simplifies some logic by getting rid of the NARROW_READ flag
  > which was broken anyway.
  > OK czarkoff@ (schwarze@)

  ~ editline.3                            

  > fix el_{w,}getc documentation;
  > OK czarkoff@ (schwarze@)

  ~ editline.3                            

  > Markup fixes: use .Ev and .Er where appropriate.
  > While here, also use \-1 rather than -1; not sure that's really
  > better, but Thomas is right it should at least be consistent
  > within a page.
  > From Thomas Klausner <wiz @ NetBSD>. (schwarze@)

  ~ chartype.c                            ~ chartype.h
  ~ eln.c                                 

  > Christos Zoulas just rescinded clauses 3 & 4 of his licenses, see
  > NetBSD chartype.c rev. 1.23, chartype.h rev. 1.25, eln.c rev. 1.28.
  > No code change. (schwarze@)

  ~ terminal.c                            

  > Fix an obvious typo in a NUL check;
  > bug reported by David Binderman
  > http://gnats.netbsd.org/cgi-bin/query-pr-single.pl?number=50880
  > fix suggested by me, NetBSD rev. 1.23 and rev. 1.24. (schwarze@)

  ~ eln.c                                 

  > Add NULL check
  > OK schwarze@ (martijn@)

  ~ Makefile                              ~ chartype.h
  ~ common.c                              ~ read.c
  ~ refresh.c                             ~ terminal.c
  ~ vi.c                                  

  > format string fixes in debug code;
  > committing right away because this code is not even compiled by default
  > (schwarze@)

libevent

  ~ evutil.c                              

  > Currently we have about a 50/50 split over fcntl(n, F_GETFL [,0])
  > idioms.
  > Adopt the more concise fcntl(n, F_GETFL) over fcntl(n, F_GETFL, 0)
  > where it is obvious further investigation will not yield and
  > even better way.
  > Obviousness evaluation and ok guenther@ (krw@)

libexpat

  ~ doc/reference.html                    

  > " the the " -> " the ", or in a couple of cases replace the superfluous
  > "the" with the obviously intended word.
  > Started with a "the the" spotted by Mihal Mazurek. (krw@)

libmenu

  ~ mitem_current.3                       ~ mitem_name.3
  ~ mitem_new.3                           ~ mitem_opts.3
  ~ mitem_userptr.3                       ~ mitem_value.3
  ~ mitem_visible.3                       

  > fix the last bunch of NAME sections that were overlooked earlier
  > such that the MLINKS removal can be committed after this;
  > OK jmc@ (schwarze@)

librthread

  ~ rthread.c                             

  > Prepare for future ld.so/libc bump: update <tib.h> with the definitions
  > that will be needed and make libpthread work when ld.so/libc.a provide an
  > initial TIB. (guenther@)

  ~ shlib_version                         

  > Rename the system call sendsyslog2 to sendsyslog.  Keep the old one
  > as osendsyslog for a while.  The three argument variant is the only
  > one that will stay.
  > input kettenis@;  OK deraadt@ (bluhm@)

libssl

  ~ src/crypto/des/asm/des_enc.m4         ~ src/crypto/ec/ec_asn1.c
  ~ src/doc/apps/ca.pod                   ~ src/doc/apps/dgst.pod
  ~ src/doc/apps/x509.pod                 ~ src/ssl/s3_cbc.c

  > " the the " -> " the ", or in a couple of cases replace the superfluous
  > "the" with the obviously intended word.
  > Started with a "the the" spotted by Mihal Mazurek. (krw@)

  ~ src/crypto/x509/x509_att.c            ~ src/crypto/x509/x509_v3.c

  > Return zero from two functions on allocation failure instead of always
  > returning one (indicating success). Each function has only a single
  > usage, and both usages check the return value.
  > Merged from BoringSSL 0ce78a757d815c0dde9ed5884229f3a5b2cb3e9c:
  > https://boringssl.googlesource.com/boringssl/+/0ce78a757d815c0dde9ed5884229
  > f3a5b2cb3e9c%5E!/#F0
  > ok beck@ (mmcc@)

  ~ src/ssl/s3_clnt.c                     

  > Merge a memleak fix from BoringSSL 6b6e0b2:
  > https://boringssl.googlesource.com/boringssl/+/6b6e0b20893e2be0e68af605a60f
  > fa2cbb0ffa64%5E!/#F0
  > ok millert@, beck@ (mmcc@)

== libexec =========================================================== 08/13 ==

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

ld.so

  ~ Symbols.map                           ~ dlfcn.c
  ~ library.c                             ~ library_mquery.c
  ~ loader.c                              ~ resolve.c
  ~ resolve.h                             ~ util.c
  ~ alpha/rtld_machine.c                  ~ m88k/rtld_machine.c
  ~ mips64/rtld_machine.c                 ~ powerpc/rtld_machine.c

  > Export environ and __progname, making the latter a copy of just the
  > filename
  > portion like crt0 does.  This is prep for eliminating _dl_fixup_user_env()
  > Mark almost everything in resolve.h as hidden, to improve code generation.
  > ok kettenis@ mpi@  "good time" deraadt@ (guenther@)

  ~ util.c                                ~ alpha/ldasm.S
  ~ alpha/syscall.h                       ~ amd64/ldasm.S
  ~ amd64/syscall.h                       ~ arm/ldasm.S
  ~ arm/syscall.h                         ~ hppa/ldasm.S
  ~ hppa/syscall.h                        ~ i386/ldasm.S
  ~ i386/syscall.h                        ~ m88k/ldasm.S
  ~ m88k/syscall.h                        ~ mips64/ldasm.S
  ~ mips64/syscall.h                      ~ powerpc/ldasm.S
  ~ powerpc/syscall.h                     ~ sh/ldasm.S
  ~ sh/syscall.h                          ~ sparc/ldasm.S
  ~ sparc/syscall.h                       ~ sparc64/ldasm.S
  ~ sparc64/syscall.h                     

  > Switch ld.so's stack smash handler from sendsyslog to sendsyslog2
  > and pass the LOG_CONS flag like libc's handler.
  > ok deraadt@ bluhm@ (who had a similar diff) (guenther@)

  ~ Symbols.map                           ~ dlfcn.c

  > Provide _dlctl(), an alternate name for dlctl() that's in the reserved
  > namespace, for use by libpthread (guenther@)

  ~ util.c                                ~ alpha/ldasm.S
  ~ alpha/syscall.h                       ~ amd64/ldasm.S
  ~ amd64/syscall.h                       ~ arm/ldasm.S
  ~ arm/syscall.h                         ~ hppa/ldasm.S
  ~ hppa/syscall.h                        ~ i386/ldasm.S
  ~ i386/syscall.h                        ~ m88k/ldasm.S
  ~ m88k/syscall.h                        ~ mips64/ldasm.S
  ~ mips64/syscall.h                      ~ powerpc/ldasm.S
  ~ powerpc/syscall.h                     ~ sh/ldasm.S
  ~ sh/syscall.h                          ~ sparc/ldasm.S
  ~ sparc/syscall.h                       ~ sparc64/ldasm.S
  ~ sparc64/syscall.h                     

  > Rename the system call sendsyslog2 to sendsyslog.  Keep the old one
  > as osendsyslog for a while.  The three argument variant is the only
  > one that will stay.
  > input kettenis@;  OK deraadt@ (bluhm@)

  ~ loader.c                              

  > Unbreak arm and m88k: COPY relocations for weak symbols that are overloaded
  > with strong symbols in ld.so don't do what we need, so put definitions back
  > in crt0 and make ld.so update __progname like it does environ.
  > report and testing patrick@ jsg@ (guenther@)

spamd

  ~ grey.c                                ~ spamd.c

  > - Both checks for pw are not needed since it was already done at the start
  > of
  > the program
  > - Add error message to syslog if privdrop didn't succeed and then exit
  > - Remove lint comments
  > OK beck@ after his suggestion and also looks good to jca@ (mestre@)

== regress =========================================================== 09/13 ==

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

bin

  ~ ksh/obsd-regress.t                    

  > More ksh POSIX compliance fixes by Martijn Dekker:
  > This simple patch makes the 'command' builtin POSIX-compliant and
  > consistent with other current shells. It fixes two things:
  > a) 'command -v' does not find shell reserved words (a.k.a. keywords).
  > For instance, 'command -v select' outputs nothing but should output
  > 'select'.
  > b) 'command -pv' always outputs the path of an external command, even
  > if 'command -p' would execute a builtin. For instance, 'command -p kill'
  > executes the 'kill' builtin, as expected, but 'command -pv kill' outputs
  > '/bin/kill'. The '-v' option is supposed to reflect what would actually
  > be executed, so 'command -pv kill' should output 'kill'. The -p option
  > sets the PATH to a default system value before doing the search, but
  > that has no bearing on the fact that builtins take precedence over
  > external commands.
  > The patch fixes both issues for 'command' without affecting the
  > behaviour of the ksh-specific builtin 'whence', which is handled by the
  > same C function.
  > Regression test added to obsd-regress.t.
  > Issues found and fixed by Martijn Dekker, ok millert@ (tb@)

lib

  ~ libpthread/stdfiles/stdfiles.c        

  > Currently we have about a 50/50 split over fcntl(n, F_GETFL [,0])
  > idioms.
  > Adopt the more concise fcntl(n, F_GETFL) over fcntl(n, F_GETFL, 0)
  > where it is obvious further investigation will not yield and
  > even better way.
  > Obviousness evaluation and ok guenther@ (krw@)

  ~ libedit/read/Makefile                 

  > Fix the CHARSET_IS_UTF8 case in read_char().
  > For now, this mainly help programs explicitly using
  > wide-character functions like el_wgetc(3) and el_wgets(3).
  > 1. After reading an invalid byte sequence, do not throw away additional
  > valid bytes; fix by me using mbrtowc(3), obsoleting utf8_islead().
  > 2. When read(2) returns EOF, return that information to the caller,
  > do not prod on and potentially access garbage data in the buffer;
  > from Linas Vepstas via NetBSD read.c rev. 1.70 2013/05/27.
  > 3. After read__fixio() failure, restore errno to the one set by read();
  > from Steffen Nurpmeso via NetBSD read.c rev. 1.68 2012/09/10.
  > 4. After read__fixio() success, restore errno to the initial state
  > upon function entry; fix by me.
  > OK czarkoff@.  Also committed to NetBSD. (schwarze@)

  ~ libedit/read/test_getcmd.c            

  > initialize el_state.metanext before testing read_getcmd() (schwarze@)

libexec

  ~ ld.so/Makefile                        + ld.so/init-env/Makefile
  + ld.so/init-env/libaa/Makefile         + ld.so/init-env/libaa/aa.C
  + ld.so/init-env/libaa/shlib_version    + ld.so/init-env/prog/Makefile
  + ld.so/init-env/prog/prog.c            

  > Add regress for environ and __progname vs load-time .init functions
  > (guenther@)

sbin

  ~ route/rttest1.ok                      ~ route/rttest19.ok

  > Update regress test outputs to match the order of routes exported by an
  > ART-enabled kernel.
  > The difference is that routes with the same destination are now displayed
  > in natural prefix-length order.  This can even be seen as an improvement:
  > -10.0/16            192.0.2.4
  > -10.0/10            192.0.2.4
  > 10/8               192.0.2.1
  > +10.0/10            192.0.2.4
  > +10.0/16            192.0.2.4
  > The previous order is due to how dup key chains are ordered.
  > Discussed with claudio@ (mpi@)

sys

  ~ net/rtable/util.c                     

  > Assert that the mask to prefix length conversion is correct when
  > removing an entry.
  > While here print the corresponding error string when available if
  > rtable_* function fail. (mpi@)

  ~ net/rtable/util.c                     

  > Remove #ifdef from code shared with the kernel, IPv6 is always enabled
  > in the tests. (mpi@)

  ~ netinet/arp/Makefile                  ~ netinet/arp/README

  > Make sure that two ARP entries can be created for the same IP when
  > doing proxy ARP.
  > ok millert@, bluhm@ (mpi@)

usr.bin

  ~ ul/ul.sh                              

  > regression tests for underlined and bold underscores;
  > currently broken, but natano@ will soon commit the fix to ul.c (schwarze@)

usr.sbin

  - syslogd/args-sendsyslog-syscall2.pl   ~ syslogd/args-sendsyslog-console.pl
  ~ syslogd/args-sendsyslog-dropped.pl    ~ syslogd/args-sendsyslog-native.pl
  ~ syslogd/args-sendsyslog-syscall.pl    ~ syslogd/args-tls-cafile-fake.pl
  ~ syslogd/funcs.pl                      + syslogd/args-sendsyslog-flags.pl

  > System call sendsyslog2 is gone, adapt tests. (bluhm@)

  ~ Makefile                              + arp/Makefile
  + arp/arptest1.ok                       + arp/arptest2.ok
  + arp/arptest3.ok                       + arp/arptest4.ok
  + arp/arptest5.ok                       

  > arp(8) regression tests, some of which are currently failing with ART.
  > (mpi@)

  ~ arp/Makefile                          + arp/arptest6.ok

  > Check that only one published entry can be added. (mpi@)

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

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

locale

  - ctype/Makefile.inc                    ~ ctype/Makefile

  > Kill LOCALECHARSETS machinery, we only support ASCII and UTF-8 LC_CTYPE
  > Remove Makefile.inc and inline rules to produce LC_CTYPE for UTF-8.
  > ok guenther@ stsp@ (jca@)

  - ctype/bg_BG.CP1251.src                - ctype/el_GR.ISO8859-7.src
  - ctype/en_US.ASCII.src                 - ctype/en_US.DIS_8859-15.src
  - ctype/en_US.ISO_8859-1.src            - ctype/en_US.ISO_8859-2.src
  - ctype/en_US.ISO_8859-4.src            - ctype/hy_AM.ARMSCII-8.src
  - ctype/ja_JP.CTEXT.src                 - ctype/ja_JP.ISO-2022-JP-2.src
  - ctype/ja_JP.ISO-2022-JP.src           - ctype/ja_JP.SJIS.src
  - ctype/ja_JP.eucJP.src                 - ctype/ko_KR.eucKR.src
  - ctype/lt_LT.ISO8859-13.src            - ctype/ru_RU.CP866.src
  - ctype/ru_RU.ISO_8859-5.src            - ctype/ru_RU.KOI8-R.src
  - ctype/tr_TR.ISO8859-9.src             - ctype/uk_UA.KOI8-U.src
  - ctype/zh_CN.GB18030.src               - ctype/zh_CN.eucCN.src
  - ctype/zh_TW.BIG5.src                  - ctype/zh_TW.eucTW.src
  - ctype/charset/ASCII                   - ctype/charset/GB2312
  - ctype/charset/JISX0201-left           - ctype/charset/JISX0201-right
  - ctype/charset/JISX0208-1978           - ctype/charset/JISX0208-1983
  - ctype/charset/Latin-1                 - ctype/charset/Latin-2
  - ctype/charset/Latin-3                 - ctype/charset/Latin-4
  - ctype/charset/Latin-5                 - ctype/charset/Latin-6
  - ctype/charset/Latin-6+                - ctype/charset/Latin-Cyrillic
  - ctype/charset/Latin-Greek             - ctype/charset/Latin-Hebrew

  > Remove non-UTF-8 ctype source files. (jca@)

man

  ~ man9/pmap.9                           

  > s/the pmap_init_module/the pmap module/
  > In r1.15 some occurrences of 'pmap' have been replaced with 'pmap_init'
  > by accident, due to unrelated refactoring.
  > ok jmc (natano@)

  ~ man5/bsd.port.arch.mk.5               ~ man5/bsd.port.mk.5
  ~ man5/port-modules.5                   ~ man5/ruby-module.5

  > The scaffolding to support architectures without shared libraries
  > has been removed from the ports infrastructure.  Gone are:
  > * variables CONFIGURE_SHARED, NO_SHARED_LIBS, NO_SHARED_ARCHS, SHARED_ONLY
  > * PROPERTIES value "no_shared"
  > * PFRAG.shared and PFRAG.no-shared files
  > Also drop mention of the long gone PROPERTIES value "elf".
  > ok sthen@, ok & tweaks jmc@ (naddy@)

  ~ man4/route.4                          

  > add missing RTF_CONNECTED, remove ESIS (End System to Intermediate
  > System Protocol) add NDP instead, add information about RTF_FMASK.
  > phessler@ millert@ (benno@)

  ~ man3/intro.3                          

  > no more i386_get_ioperm(2); (jmc@)

  ~ man5/port-modules.5                   

  > Add devel/qmake and x11/qt5 modules documentation. (zhuk@)

zoneinfo

  ~ datfiles/asia                         ~ datfiles/europe
  ~ datfiles/southamerica                 ~ datfiles/zone.tab
  ~ datfiles/zone1970.tab                 

  > Update to tzdata2016c from ftp.iana.org. (millert@)

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

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

arch/arm/arm

  ~ cpu.c                                 ~ cpufunc.c

  > Remove support for ARM9E.  This is another step in the plan to remove
  > all unused and unmaintained ARM processors from the past.
  > ok bmercer@ jsg@ (patrick@)

  - cpufunc_asm_arm10.S                   - cpufunc_asm_armv5.S
  - cpufunc_asm_armv5_ec.S                ~ cpu.c
  ~ cpufunc.c                             ~ pmap.c

  > Remove support for ARM10.
  > ok jsg@ (patrick@)

  ~ bus_space_asm_generic.S               ~ cpu.c
  ~ cpufunc.c                             ~ pmap.c

  > Remove support for ARM11.  This was the last unused and unmaintained
  > processor in our code.  Now we're left with only armv7 and XScale for
  > armish and zaurus.
  > ok jsg@ (patrick@)

  ~ cpufunc.c                             

  > Cleanup SCTLR mask to only include bits that are actually defined on
  > most ARMv7 and ARMv8 processors.
  > Add TODO to set the ACTLR.SMP bit so we can make use of the atomic
  > instructions available since ARMv6.
  > Remove unused comment and code while there.
  > ok jsg@ (patrick@)

  ~ genassym.cf                           

  > Kill commented out & unused CI_CURPRIORITY. (mpi@)

arch/arm/armv7

  ~ bus_space_asm_armv7.S                 

  > Remove support for ARM11.  This was the last unused and unmaintained
  > processor in our code.  Now we're left with only armv7 and XScale for
  > armish and zaurus.
  > ok jsg@ (patrick@)

arch/arm/conf

  ~ files.arm                             

  > Remove support for ARM9E.  This is another step in the plan to remove
  > all unused and unmaintained ARM processors from the past.
  > ok bmercer@ jsg@ (patrick@)

  ~ files.arm                             

  > Remove support for ARM10.
  > ok jsg@ (patrick@)

arch/arm/include

  ~ armreg.h                              

  > Remove defines for unsupported chips, add V5TEJ and remove incorrect
  > ARCH_V7 define.  The number ARM Ltd armv7 chips set here is 0xf,
  > documented as 'Defined by CPUID scheme'.
  > ok patrick@ bmercer@ (jsg@)

  ~ armreg.h                              ~ cpuconf.h
  ~ cpufunc.h                             

  > Remove support for ARM9E.  This is another step in the plan to remove
  > all unused and unmaintained ARM processors from the past.
  > ok bmercer@ jsg@ (patrick@)

  ~ armreg.h                              ~ cpuconf.h
  ~ cpufunc.h                             ~ pmap.h

  > Remove support for ARM10.
  > ok jsg@ (patrick@)

  ~ armreg.h                              ~ cpuconf.h
  ~ cpufunc.h                             ~ pmap.h

  > Remove support for ARM11.  This was the last unused and unmaintained
  > processor in our code.  Now we're left with only armv7 and XScale for
  > armish and zaurus.
  > ok jsg@ (patrick@)

arch/i386/i386

  ~ machdep.c                             ~ sys_machdep.c

  > Delete i386_{get,set}_ioperm(2) APIs and underlying sysarch(2) bits.
  > They're no longer used by anything and should let us simplify the TSS
  > handling.
  > ok mikeb@ naddy@ (guenther@)

arch/i386/include

  ~ pcb.h                                 ~ sysarch.h

  > Delete i386_{get,set}_ioperm(2) APIs and underlying sysarch(2) bits.
  > They're no longer used by anything and should let us simplify the TSS
  > handling.
  > ok mikeb@ naddy@ (guenther@)

arch/octeon/include

  ~ octeonvar.h                           

  > On Octeon systems, U-Boot provides a list of usable memory regions. Use
  > the list instead of hardcoded regions in memory setup. Works on
  > EdgeRouter Lite, EdgeRouter Pro, Lanner MR326b and Movidis 16x.
  > Tested by jj@
  > Tested by and ok jmatthew@ (visa@)

arch/octeon/octeon

  ~ machdep.c                             

  > On Octeon systems, U-Boot provides a list of usable memory regions. Use
  > the list instead of hardcoded regions in memory setup. Works on
  > EdgeRouter Lite, EdgeRouter Pro, Lanner MR326b and Movidis 16x.
  > Tested by jj@
  > Tested by and ok jmatthew@ (visa@)

arch/sparc64/dev

  ~ vnet.c                                

  > Plug a memory leak in vnet(4) ioctl code path.
  > ok kettenis@ (stsp@)

conf

  ~ newvers.sh                            

  TAGGED OPENBSD_5_9
  > 5.9-stable (jsg@)

  ~ GENERIC                               

  TAGGED OPENBSD_5_9
  > Enable ART.
  > Leave the define for the moment, this will be changed as soon as we're
  > confident enough.
  > "it must be a 3-line diff" krw@
  > ok bluhm@, mikeb@, dlg@, reyk@, deraadt@ (mpi@)

  ~ files                                 

  TAGGED OPENBSD_5_9
  > Free some more space in kernel - for network code, of course - by removal
  > of three unused FS-related functions.
  > okay mpi@ and beck@ (zhuk@)

dev

  ~ ipmi.c                                

  > Always sleep at same priority.
  > ok uebayasi@ (mpi@)

dev/ic

  ~ rtwn.c                                ~ rtwnvar.h

  > The common part of rtwn(4) needs help from attachment drivers to determine
  > the chip type. Require chip type as a parameter to rtwn_attach().
  > ok mpi@ (stsp@)

  ~ rt2860.c                              ~ rt2860var.h

  > Fix watchdog timeouts and dropped frames under load with RT2860 ral(4).
  > On full tx ring, ring->cur wraps to an active tx descriptor. Passing
  > that wrapped value to the card was observed to cause general flakiness.
  > Fix prevents the wrap at the cost of reducing usable tx descriptors by one.
  > Patch by Richard Procter via bugs@
  > Tested by Richard on RT2860 and by me on RT3090 and RT2700.
  > ok mpi@ dlg@ (stsp@)

  ~ rt2860.c                              ~ rt2860var.h

  > In ral(4) RT2860 code, replace custom defrag with m_defrag().
  > This fixes an error in the existing code: the "hopeless case" guard
  > equivales 'ring now full', so oactive is never set: the code drops any mbuf
  > that would fill the ring. This occurs often in practice.
  > The new code avoids some hoop-jumping. Currently, one tx dma-map can fill
  > the tx ring. Therefore an mbuf that fits a dma-map may yet not fit into the
  > tx
  > ring's remaining space.  To be sure it can, we must in general count the
  > mbuf's fragments and, if necessary, defrag it and reload the dmamap.
  > Patch by Richard Procter via bugs@
  > Tested by Richard on RT2860 and by me on RT3090 and RT2700.
  > ok mpi@ dlg@ (stsp@)

  ~ aac.c                                 

  > Kill async code commented out for more than 10 years. (mpi@)

dev/pci

  ~ if_rtwn.c                             

  > The common part of rtwn(4) needs help from attachment drivers to determine
  > the chip type. Require chip type as a parameter to rtwn_attach().
  > ok mpi@ (stsp@)

dev/sdmmc

  ~ sdhc.c                                ~ sdhcvar.h

  > Make it possible to override the standard card detect mechanism.  The SD
  > controller on Intel's Bay Trail SoC tends to be used in a way where a
  > separate gpio is used that signals the presence of a card in a slot.  This
  > change allows us to support that mode.
  > ok stsp@ (kettenis@)

dev/usb

  ~ if_axen.c                             

  > Update the axen driver to initialize the hardware on reset. Change was
  > suggested by Takahiro Hayashi. Also lock the mii before performing the
  > write, based on changes in NetBSD. While in there, remove the decaying
  > eeprom code that has been commented out. This allows my adapter to attach
  > reliably, pass traffic, and has not panic'd my machine when I unplug it.
  > Test feedback and OK stsp@, and OK mpi@ (bmercer@)

  ~ if_urtwn.c                            

  > Replace magic number in urtwn(4) with corresponding macro from
  > ic/r92creg.h. (stsp@)

isofs/cd9660

  ~ cd9660_vfsops.c                       

  > When pulling and unmounting an umass USB stick, the file system
  > could end up in an inconsistent state.  The fstype dependent
  > mp->mnt_data was NULL, but the general mp was still listed as a
  > valid mount point.  Next access to the file system would crash with
  > a NULL pointer dereference.
  > If closing the device fails, the mount point must go away anyway.
  > There is nothing we can do about it.  Remove the workaround for the
  > EIO error in the general unmount code, but do not generate any error
  > in the file system specific unmount functions.
  > OK natano@ beck@ (bluhm@)

isofs/udf

  ~ udf_vfsops.c                          

  > When pulling and unmounting an umass USB stick, the file system
  > could end up in an inconsistent state.  The fstype dependent
  > mp->mnt_data was NULL, but the general mp was still listed as a
  > valid mount point.  Next access to the file system would crash with
  > a NULL pointer dereference.
  > If closing the device fails, the mount point must go away anyway.
  > There is nothing we can do about it.  Remove the workaround for the
  > EIO error in the general unmount code, but do not generate any error
  > in the file system specific unmount functions.
  > OK natano@ beck@ (bluhm@)

kern

  ~ kern_clock.c                          ~ kern_timeout.c

  > Update ticks in hardclock().
  > OK mikeb@ (uebayasi@)

  ~ init_sysent.c                         ~ kern_pledge.c
  ~ subr_log.c                            ~ syscalls.c
  ~ syscalls.master                       

  > Rename the system call sendsyslog2 to sendsyslog.  Keep the old one
  > as osendsyslog for a while.  The three argument variant is the only
  > one that will stay.
  > input kettenis@;  OK deraadt@ (bluhm@)

  ~ kern_pledge.c                         

  > allow fpathconf() in stdio mode, since it is an innocuous query
  > system call.  discussed with semarie and everyone else during
  > the 5.9 lock. (deraadt@)

  ~ uipc_mbuf.c                           

  > dont mix up the len and flats argument to MCLGETI in m_dup_pkt (dlg@)

  ~ kern_clock.c                          

  > set ticks 15 seconds before its value wraps.
  > this helps us identify issues around ticks wrap in 15 minutes instead
  > of 240ish days. the change is inspired by something freebsd did as
  > a result of a ticks change they made that went horribly wrong.
  > lots of people said they wanted this (dlg@)

  ~ kern_pledge.c                         

  > Silences compiler warnings, about used uninitialized variables. These
  > lengths
  > are passed uninitialized to free(9) only when pointers are NULL.
  > found by jsg@
  > ok deraadt@ (semarie@)

  - vfs_cluster.c                         

  > Free some more space in kernel - for network code, of course - by removal
  > of three unused FS-related functions.
  > okay mpi@ and beck@ (zhuk@)

  ~ kern_sig.c                            

  > add newline on the end of the failure message
  > ok deraadt@ (beck@)

  ~ vfs_syscalls.c                        

  > When pulling and unmounting an umass USB stick, the file system
  > could end up in an inconsistent state.  The fstype dependent
  > mp->mnt_data was NULL, but the general mp was still listed as a
  > valid mount point.  Next access to the file system would crash with
  > a NULL pointer dereference.
  > If closing the device fails, the mount point must go away anyway.
  > There is nothing we can do about it.  Remove the workaround for the
  > EIO error in the general unmount code, but do not generate any error
  > in the file system specific unmount functions.
  > OK natano@ beck@ (bluhm@)

lib/libkern

  ~ arch/amd64/strlen.S                   

  > " the the " -> " the ", or in a couple of cases replace the superfluous
  > "the" with the obviously intended word.
  > Started with a "the the" spotted by Mihal Mazurek. (krw@)

lib/libz

  ~ inflate.c                             

  > remove vax handling
  > ok millert (natano@)

miscfs/fuse

  ~ fuse_vfsops.c                         

  > When pulling and unmounting an umass USB stick, the file system
  > could end up in an inconsistent state.  The fstype dependent
  > mp->mnt_data was NULL, but the general mp was still listed as a
  > valid mount point.  Next access to the file system would crash with
  > a NULL pointer dereference.
  > If closing the device fails, the mount point must go away anyway.
  > There is nothing we can do about it.  Remove the workaround for the
  > EIO error in the general unmount code, but do not generate any error
  > in the file system specific unmount functions.
  > OK natano@ beck@ (bluhm@)

msdosfs

  ~ msdosfs_vfsops.c                      

  > When pulling and unmounting an umass USB stick, the file system
  > could end up in an inconsistent state.  The fstype dependent
  > mp->mnt_data was NULL, but the general mp was still listed as a
  > valid mount point.  Next access to the file system would crash with
  > a NULL pointer dereference.
  > If closing the device fails, the mount point must go away anyway.
  > There is nothing we can do about it.  Remove the workaround for the
  > EIO error in the general unmount code, but do not generate any error
  > in the file system specific unmount functions.
  > OK natano@ beck@ (bluhm@)

net

  ~ pfkey.c                               

  > slight knf (dlg@)

  ~ pipex.c                               

  > replace m_copym2 with m_dup_pkt
  > this gives us preallocated space at the start of the packet for
  > headers so later calls to M_PREPEND are far less likely to fail.
  > ok yasuoka@ (dlg@)

  ~ pipex.c                               

  > dont leak an mbuf when copying the packet in pipex_mppe_output fails
  > ok yasuoka@ (dlg@)

  ~ route.c                               

  > Do not populate RTAX_NETMASK when sending a routing message for RTF_HOST
  > entries.
  > This is a noop with the radix routing table because rt_mask() is always
  > NULL for RTF_HOST entries, but it preserves the old behavior with ART.
  > With the ART routing table host entry always have a prefix length equals
  > to the length of the address.
  > Fix a regression reported by semarie@.
  > ok semarie@, bluhm@ (mpi@)

  ~ route.c                               ~ route.h
  ~ rtsock.c                              

  > Always include the route priority in routing messages.
  > From Florian Riehm, ok bluhm@ (mpi@)

net80211

  ~ ieee80211_input.c                     

  > replace ieee80211_align_mbuf with m_dup_pkt
  > ok stsp@ (dlg@)

netinet

  ~ tcp_input.c                           ~ tcp_var.h

  > Add a tcps_sc_seedrandom counter in TCP SYN cache and netstat -s.
  > This shows how often the hash function is reseeded and the random
  > bucket distribution changes.
  > OK mpi@ claudio@ (bluhm@)

  ~ in_pcb.h                              

  > Extract in6_pcbaddrisavail() from in6_pcbbind(), and use it when
  > checking for source availability in udp6_output(); This time with
  > all the files.
  > Ok jca@ bluhm@ (vgross@)

  ~ in_pcb.c                              ~ in_pcb.h

  > Extract in_pcbaddrisavail() from in_pcbbind().
  > ok jca@ (vgross@)

  ~ in_pcb.c                              ~ in_pcb.h
  ~ tcp_usrreq.c                          ~ udp_usrreq.c

  > Merge in_pcbbind() and in6_pcbbind(), and change every call to
  > in6_pcbbind() into in_pcbbind().
  > Ok jca@ mpi@ (vgross@)

  ~ if_ether.c                            

  > Ensure that a found proxy ARP entry has the correct flag.
  > ok bluhm@ (mpi@)

  ~ in_pcb.c                              

  > Always include the route priority in routing messages.
  > From Florian Riehm, ok bluhm@ (mpi@)

  ~ tcp_input.c                           ~ tcp_var.h

  > To prevent attacks on the hash buckets of the syn cache, our TCP
  > stack reseeds the hash function every time the cache is empty.
  > Unfortunatly the attacker can prevent the reseeding by sending
  > unanswered SYN packes periodically.
  > Fix this by having an active syn cache that gets new entries and a
  > passive one that is idling out.  When the passive one is empty and
  > the active one has been used 100000 times, they switch roles and
  > the hash function is reseeded with new random.
  > tedu@ agrees; OK mpi@ (bluhm@)

netinet6

  ~ in6_pcb.c                             ~ udp6_output.c

  > Revert, missing decl for in6_pcbaddrisavail() breaks kernel build.
  > Spotted by deraadt@ (jca@)

  ~ in6_pcb.c                             ~ udp6_output.c

  > Extract in6_pcbaddrisavail() from in6_pcbbind(), and use it when
  > checking for source availability in udp6_output(); This time with
  > all the files.
  > Ok jca@ bluhm@ (vgross@)

  ~ in6_pcb.c                             ~ ip6_divert.c
  ~ udp6_output.c                         

  > Merge in_pcbbind() and in6_pcbbind(), and change every call to
  > in6_pcbbind() into in_pcbbind().
  > Ok jca@ mpi@ (vgross@)

  ~ in6_pcb.c                             ~ udp6_output.c

  TAGGED OPENBSD_5_9
  > OpenBSD 5.9 errata 2, Mar 16, 2016:
  > Insufficient checks in IPv6 socket binding and UDP IPv6 option
  > processing allow a local user to send UDP packets with a source
  > (IPv6 address + port) already reserved by another user. (jsg@)

ntfs

  ~ ntfs_vfsops.c                         

  > When pulling and unmounting an umass USB stick, the file system
  > could end up in an inconsistent state.  The fstype dependent
  > mp->mnt_data was NULL, but the general mp was still listed as a
  > valid mount point.  Next access to the file system would crash with
  > a NULL pointer dereference.
  > If closing the device fails, the mount point must go away anyway.
  > There is nothing we can do about it.  Remove the workaround for the
  > EIO error in the general unmount code, but do not generate any error
  > in the file system specific unmount functions.
  > OK natano@ beck@ (bluhm@)

sys

  ~ syscall.h                             ~ syscallargs.h

  > Rename the system call sendsyslog2 to sendsyslog.  Keep the old one
  > as osendsyslog for a while.  The three argument variant is the only
  > one that will stay.
  > input kettenis@;  OK deraadt@ (bluhm@)

  ~ exec_elf.h                            

  > fix comment (guenther@)

  ~ systm.h                               

  > Remove unused ``curpriority'' define.
  > Its description might be confusing, it was the pre-SMP parent of what
  > is now ``spc_curpriority'' which reflects the ``p_usrpri'' of curproc.
  > (mpi@)

ufs/ext2fs

  ~ ext2fs_vfsops.c                       

  > When pulling and unmounting an umass USB stick, the file system
  > could end up in an inconsistent state.  The fstype dependent
  > mp->mnt_data was NULL, but the general mp was still listed as a
  > valid mount point.  Next access to the file system would crash with
  > a NULL pointer dereference.
  > If closing the device fails, the mount point must go away anyway.
  > There is nothing we can do about it.  Remove the workaround for the
  > EIO error in the general unmount code, but do not generate any error
  > in the file system specific unmount functions.
  > OK natano@ beck@ (bluhm@)

ufs/ffs

  ~ ffs_vfsops.c                          

  > When pulling and unmounting an umass USB stick, the file system
  > could end up in an inconsistent state.  The fstype dependent
  > mp->mnt_data was NULL, but the general mp was still listed as a
  > valid mount point.  Next access to the file system would crash with
  > a NULL pointer dereference.
  > If closing the device fails, the mount point must go away anyway.
  > There is nothing we can do about it.  Remove the workaround for the
  > EIO error in the general unmount code, but do not generate any error
  > in the file system specific unmount functions.
  > OK natano@ beck@ (bluhm@)

ufs/ufs

  ~ ufs_dirhash.c                         

  > remove vax handling
  > ok millert (natano@)

uvm

  ~ uvm_amap.c                            ~ uvm_amap.h
  ~ uvm_map.c                             

  > amap_extend is never called, remove it.
  > In the code, this function is called when vm_map_entries are merged.
  > However, only kernel map entries are merged, and these do not use amaps.
  > Therefore amap_extend() is never called at runtime.
  > ok millert@, KASSERT suggestion and ok mpi@ (stefan@)

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

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

calendar

  ~ calendars/calendar.music              
  ~ calendars/de_DE.UTF-8/calendar.musik

  > Fix spelling of "Beverly Hills". From Carson Chittom. (tim@)

dc

  ~ bcode.c                               ~ stack.c

  > some style(9) and redundant tests for NULL, from Michael W. Bombardieri
  > (otto@)

head

  ~ head.c                                

  > whitespace: remove a space before a tab and a trailing tab. (tb@)

kdump

  ~ kdump.c                               

  > Handle kbind()'s third argument correctly (guenther@)

  ~ kdump.c                               ~ kdump_subr.h
  ~ mksubr                                

  > Format the flags argument to sendsyslog()
  > ok deraadt@ bluhm@ (guenther@)

  ~ kdump.c                               ~ kdump.h
  ~ ktrstruct.c                           

  > Display NAMI records and AF_UNIX socket paths with vis, using
  > VIS_CSTYLE | VIS_DQ | VIS_TAB | VIS_NL; add the latter three flags
  > to the existing vis encoding of exec argv/environ and pledge
  > requests/paths.
  > Delete local variables left unused when showbuf() and showbufc() were split
  > ok otto@ millert@ (guenther@)

less

  ~ less.h                                ~ line.c

  > Improve handling of ambiguous overstrike sequences. A sequence of _\b_
  > can either mean an underlined underscore or a bold underscore. This
  > ambiguity can be 'resolved' by takeing the state of the surrounding text
  > into account. If surrounded by bold text, the result should probably be
  > bold and likewise for underlined. less(1) previously only looked at the
  > preceding text and ul(1) didn't examine the context at all.
  > tweaks and ok schwarze
  > ok tb (on a previous version of the diff) (natano@)

locale

  ~ Makefile                              

  > LOCALE_CHARSETS has been unused for some time now
  > so no need to include share/locale/ctype/Makefile.inc to get it.
  > ok guenther@ stsp@ (who had the same diff) (jca@)

mandoc

  ~ term.c                                

  > " the the " -> " the ", or in a couple of cases replace the superfluous
  > "the" with the obviously intended word.
  > Started with a "the the" spotted by Mihal Mazurek. (krw@)

netstat

  ~ inet.c                                

  > Add a tcps_sc_seedrandom counter in TCP SYN cache and netstat -s.
  > This shows how often the hash function is reseeded and the random
  > bucket distribution changes.
  > OK mpi@ claudio@ (bluhm@)

sndiod

  ~ abuf.h                                

  > Align comments. From David CARLIER <devnexen at gmail.com>. Thanks.
  > (ratchov@)

  ~ dev.c                                 ~ dev.h
  ~ sndiod.c                              ~ sock.c

  > Remove unused arguments of dev_adjpar(), getbasepath() and all
  > slotops->onvol() implementations. From David CARLIER <devnexen at
  > gmail.com>. Thanks. (ratchov@)

tcpbench

  ~ tcpbench.c                            

  > Instead of creating a socket with socket() or accept() and then
  > setting the O_NONBLOCK flag on it with fcntl(F_SETFL) afterwards,
  > just pass SOCK_NONBLOCK to socket() or accept4() and get it right
  > to begin with.
  > ok millert@ krw@ beck@ deraadt@ jca@ (guenther@)

ul

  ~ ul.c                                  

  > Improve handling of ambiguous overstrike sequences. A sequence of _\b_
  > can either mean an underlined underscore or a bold underscore. This
  > ambiguity can be 'resolved' by takeing the state of the surrounding text
  > into account. If surrounded by bold text, the result should probably be
  > bold and likewise for underlined. less(1) previously only looked at the
  > preceding text and ul(1) didn't examine the context at all.
  > tweaks and ok schwarze
  > ok tb (on a previous version of the diff) (natano@)

yacc

  ~ reader.c                              

  > merge three obviously redundant adjacent if statements
  > from Michael W. Bombardieri (mmcc@)

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

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

arp

  ~ arp.8                                 ~ arp.c

  > Remove code to print the never set SIN_PROXY bit.  This flag is only used
  > to set the 33rd bit of a 32bit address in the routing table.
  > ok millert@ (mpi@)

  ~ arp.c                                 

  > Rename 'rtn' to 'error' for coherency. (mpi@)

  ~ arp.c                                 

  > Kill undocumented "pro" command.  It's a no-op since the 90s! (mpi@)

  ~ arp.8                                 

  > tweak previous; (jmc@)

bgpd

  ~ kroute.c                              

  > Connected routes are no longer identified by a AF_LINK gateway so adjust
  > dispatch_rtmsg_addr() similar to the way fetchtable() was fixed long ago.
  > This should fix various issues with bad gateways being picked up by bgpd.
  > Problem identified and initial fix provided by phessler@ but commiting
  > my version which is more conservative. OK phessler@ (claudio@)

  ~ kroute.c                              

  TAGGED OPENBSD_5_9
  > MFC
  > revision 1.208
  > Connected routes are no longer identified by a AF_LINK gateway so adjust
  > dispatch_rtmsg_addr() similar to the way fetchtable() was fixed long ago.
  > This should fix various issues with bad gateways being picked up by bgpd.
  > Problem identified and initial fix provided by phessler@ but commiting
  > my version which is more conservative. OK phessler@ (phessler@)

  ~ kroute.c                              

  TAGGED OPENBSD_5_8
  > MFC
  > revision 1.208 by claudio@
  > Connected routes are no longer identified by a AF_LINK gateway so adjust
  > dispatch_rtmsg_addr() similar to the way fetchtable() was fixed long ago.
  > This should fix various issues with bad gateways being picked up by bgpd.
  > Problem identified and initial fix provided by phessler@ but commiting
  > my version which is more conservative. OK phessler@ (phessler@)

iscsid

  ~ util.c                                

  > Currently we have about a 50/50 split over fcntl(n, F_GETFL [,0])
  > idioms.
  > Adopt the more concise fcntl(n, F_GETFL) over fcntl(n, F_GETFL, 0)
  > where it is obvious further investigation will not yield and
  > even better way.
  > Obviousness evaluation and ok guenther@ (krw@)

ldapd

  ~ btree.c                               

  > Currently we have about a 50/50 split over fcntl(n, F_GETFL [,0])
  > idioms.
  > Adopt the more concise fcntl(n, F_GETFL) over fcntl(n, F_GETFL, 0)
  > where it is obvious further investigation will not yield and
  > even better way.
  > Obviousness evaluation and ok guenther@ (krw@)

npppd

  ~ l2tp/l2tpd.c                          ~ pptp/pptpd.c

  > Instead of creating a socket with socket() or accept() and then
  > setting the O_NONBLOCK flag on it with fcntl(F_SETFL) afterwards,
  > just pass SOCK_NONBLOCK to socket() or accept4() and get it right
  > to begin with.
  > ok millert@ krw@ beck@ deraadt@ jca@ (guenther@)

  ~ npppd/control.c                       

  > Use SOCK_NONBLOCK in socket() and accept4() instead of a separate fcntl()
  > dance.
  > Inspired by guenther@
  > ok millert@ yasuoka@ (krw@)

  ~ npppd/control.c                       

  > Cleanup control sockets in control_cleanup().
  > Diff from Yuuichi Someya. (yasuoka@)

  ~ npppd/chap.c                          ~ npppd/pap.c

  > Log the reply message from RADIUS server when the authenticaion fails.
  > Diff from Yuuichi Someya (yasuoka@)

ntpd

  ~ control.c                             ~ ntpd.h

  > Rename session_socket_blockmode() to session_socket_nonblockmode(),
  > removing its second parameter and the enum() that provided the
  > values for said parameter.
  > The function was only called with the second parameter set to one
  > value (BM_NONBLOCKING) from the enum(). So just do the right thing.
  > Similar to changes made in smtpd.
  > While here remove the pointless third parameter from the fcntl(F_GETFL)
  > call.
  > No functional change.
  > ok guenther@ bcook@ deraadt@ (krw@)

pkg_add

  ~ OpenBSD/PackageRepository.pm          

  > fix error message, based on a suggestion from doug@, ok espie (sthen@)

radiusd

  ~ radiusd.c                             ~ radiusd_radius.c

  > Instead of creating a socket with socket() or accept() and then
  > setting the O_NONBLOCK flag on it with fcntl(F_SETFL) afterwards,
  > just pass SOCK_NONBLOCK to socket() or accept4() and get it right
  > to begin with.
  > ok millert@ krw@ beck@ deraadt@ jca@ (guenther@)

rcctl

  ~ rcctl.sh                              

  > Make usage() a bit more user friendly wrt "action" and "lsarg".
  > prodded by espie@ (ajacoutot@)

  ~ rcctl.sh                              

  > Compute "action" from the _rc_actions variable. (ajacoutot@)

smtpd

  ~ config.c                              ~ control.c
  ~ filter.c                              ~ ioev.c
  ~ ioev.h                                ~ mda.c
  ~ mproc.c                               ~ smtp.c
  ~ smtp_session.c                        ~ smtpd.h
  ~ util.c                                

  > Nuke session_socket_blockmode() and session_socket_linger(). Use
  > the identical io_set_blocking() and io_set_linger().
  > Since both are always called to turn off blocking or lingering,
  > nuke the parameter and associated enum in favour of "just doing the
  > right thing".
  > While passing remove the unneeded last parameter to the remaining
  > fcntl(F_GETFL).
  > Finally, rename the functions to io_set_nonblocking() and
  > io_set_nolinger() for clarity.
  > No functional change.
  > Started with a sweep of fcntl() usage inspired by guenther@.
  > ok gilles@ (krw@)

tokenadm

  ~ tokenadm.c                            

  > tokenadm(8) is already pledged, do the same for tokeninit(8).
  > - bring comment in both programms in line
  > - tokeninit(8) needs "tty" for readpassphrase(3)
  > - call token_init() after pledge(2)
  > - fix whitespace
  > OK millert@ (bluhm@)

tokeninit

  ~ tokeninit.c                           

  > tokenadm(8) is already pledged, do the same for tokeninit(8).
  > - bring comment in both programms in line
  > - tokeninit(8) needs "tty" for readpassphrase(3)
  > - call token_init() after pledge(2)
  > - fix whitespace
  > OK millert@ (bluhm@)

ypbind

  ~ ypbind.c                              

  > Instead of creating a socket with socket() or accept() and then
  > setting the O_NONBLOCK flag on it with fcntl(F_SETFL) afterwards,
  > just pass SOCK_NONBLOCK to socket() or accept4() and get it right
  > to begin with.
  > ok millert@ krw@ beck@ deraadt@ jca@ (guenther@)

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

Reply via email to