OpenBSD src changes summary for 2016-05-29 to 2016-06-05 inclusive
==================================================================

bin/ksh                                 bin/pax
bin/rmdir                               distrib/armv7
distrib/notes                           distrib/sets
etc/etc.armv7/Makefile.inc              etc/examples/bgpd.conf
etc/examples/ldpd.conf                  etc/mail/spamd.conf
etc/newsyslog.conf                      etc/rc
gnu                                     gnu/usr.bin/binutils-2.17
include/rpcsvc/yp_prot.h                include/rpcsvc/ypclnt.h
lib/libc                                lib/libedit
lib/libexpat                            lib/libm
lib/librthread                          lib/libssl
libexec/ld.so                           regress/lib
regress/usr.bin                         regress/usr.sbin
sbin/dhclient                           sbin/disklabel
sbin/iked                               sbin/mount
sbin/newfs                              sbin/sysctl
share/man                               sys/arch
sys/arch/alpha/conf                     sys/arch/amd64/amd64
sys/arch/amd64/conf                     sys/arch/amd64/pci
sys/arch/arm/mainbus                    sys/arch/armv7/armv7
sys/arch/armv7/conf                     sys/arch/armv7/exynos
sys/arch/armv7/imx                      sys/arch/armv7/omap
sys/arch/armv7/sunxi                    sys/arch/armv7/vexpress
sys/arch/i386/conf                      sys/arch/i386/isa
sys/arch/loongson/conf                  sys/arch/luna88k/dev
sys/arch/macppc/conf                    sys/arch/macppc/dev
sys/arch/octeon/conf                    sys/arch/octeon/dev
sys/arch/octeon/include                 sys/arch/sgi/conf
sys/arch/sgi/hpc                        sys/arch/sparc64/conf
sys/arch/zaurus/conf                    sys/arch/zaurus/dev
sys/dev                                 sys/dev/adb
sys/dev/hil                             sys/dev/ic
sys/dev/pci                             sys/dev/sun
sys/dev/usb                             sys/dev/wscons
sys/kern                                sys/net
sys/netinet                             sys/netinet6
sys/ntfs                                sys/sys
sys/ufs/ext2fs                          sys/uvm
usr.bin/aucat                           usr.bin/doas
usr.bin/kdump                           usr.bin/mklocale
usr.bin/nc                              usr.bin/netstat
usr.bin/newsyslog                       usr.bin/sed
usr.bin/ssh                             usr.bin/tmux
usr.bin/units                           usr.sbin/bgpctl
usr.sbin/bgpd                           usr.sbin/bind
usr.sbin/eigrpd                         usr.sbin/httpd
usr.sbin/installboot                    usr.sbin/ntpd
usr.sbin/pstat                          usr.sbin/rbootd
usr.sbin/rebound                        usr.sbin/smtpd

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

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

ksh

  ~ alloc.c                               

  > put this in the public domain as well. reminded by theo. we discussed
  > this before previous release, and I plain forgot about it. (espie@)

pax

  ~ ar_io.c                               ~ ftree.c

  > new style overlords say to use continue in empty loops.
  > this is easier to see and self documenting.
  > ok openbsd (tedu@)

rmdir

  ~ rmdir.c                               

  > new style overlords say to use continue in empty loops.
  > this is easier to see and self documenting.
  > ok openbsd (tedu@)

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

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

armv7

  ~ ramdisk/Makefile                      ~ ramdisk/install.md

  > Stop building u-boot kernel and ramdisk images.  The kernel make targets
  > are left for now but umg files are no longer built when building
  > releases. (jsg@)

  ~ ramdisk/install.md                    

  > Decide which u-boot/dtb to use based on the fdt model printed when
  > attaching mainbus not the string we print based on the board id when
  > attaching the soc platform abstraction.
  > Overhaul md_installboot() to make it much more readable based on
  > suggestions from rpe@ (jsg@)

  ~ miniroot/Makefile.inc                 

  > Add back the fdisk command to flag the fat fs as active.
  > The omap boot rom that loads the first u-boot stage requires this. (jsg@)

  ~ ramdisk/install.md                    

  > Tweak previous
  > OK jsg (rpe@)

  ~ ramdisk/install.md                    

  > remove text that discusses putting kernels on msdos fs (jsg@)

  ~ miniroot/am335x/Makefile              ~ miniroot/beagle/Makefile
  ~ miniroot/cubie/Makefile               ~ miniroot/cubox/Makefile
  ~ miniroot/nitrogen/Makefile            ~ miniroot/panda/Makefile
  ~ miniroot/wandboard/Makefile           

  > specify the u-boot target name and dtbs used for each miniroot (jsg@)

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

  > Previously armv7 ramdisk creation would tar up the mdec directory on the
  > build machine and extract it when installing.  Change to using the
  > u-boot and dtb packages when creating ramdisks and miniroots and don't
  > place these files in mdec on install.
  > Installing these packages is now required to run make release on armv7.
  > (jsg@)

  ~ ramdisk/install.md                    

  > silence dd stderr output when writing u-boot files to disk
  > reminded by and ok krw@ (jsg@)

  ~ ramdisk/install.md                    

  > dd the cubieboard u-boot at the raw offset like the miniroot does (jsg@)

notes

  ~ armv7/prep                            

  > Remove the section on tftp booting a umg file.  This might come back in
  > a different form when u-boot supports efi networking interfaces. (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.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
  ~ lists/comp/mi                         

  > sync (deraadt@)

  ~ lists/man/mi                          

  > sync (deraadt@)

  ~ lists/man/mi                          

  > sync (deraadt@)

  ~ lists/base/md.armish                  ~ lists/comp/md.armish

  > sync (tobiasu@)

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

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

etc.armv7/Makefile.inc

  ~ etc.armv7/Makefile.inc                

  > Stop building u-boot kernel and ramdisk images.  The kernel make targets
  > are left for now but umg files are no longer built when building
  > releases. (jsg@)

examples/bgpd.conf

  ~ examples/bgpd.conf                    

  > Add operators =, !=, - (range), >< (exclsive range) to the as-path
  > filters (AS, peer-as, source-as, transit-as).
  > Add a use case (block illegal AS numbers) to the bgpd.conf example.
  > feedback from claudio, sthen, florian,
  > ok florian@ phessler@ (benno@)

examples/ldpd.conf

  ~ examples/ldpd.conf                    

  > The ldpd(8) sample config was terribly outdated. Passive interfaces,
  > for example, were removed in 2013 because they don't make sense in ldpd.
  > ok deraadt (renato@)

mail/spamd.conf

  ~ mail/spamd.conf                       

  > Remove dead 2004 link to list of blacklists, from Sevan Janiyan.
  > Point at wikipedia's list of blacklists instead, some are DNS-only but
  > there
  > are a few rsyncable ones in there (including a good commercial one and some
  > free ones). (sthen@)

newsyslog.conf

  ~ newsyslog.conf                        

  > increase permitted sizes for daemon and messages. i overflow them too
  > frequently for my taste, and disk is cheap.
  > ok deraadt millert (tedu@)

rc

  ~ rc                                    

  > Improve error handling in reorder_libs()
  > - run commands in subshell only if mktemp is successful
  > - on error just leave the for-loop but set _error=true
  > - cleanup tmpdirs afterwards
  > - set _error=true if the ro remount fails
  > - print appropriate final message depending on $_error
  > positive feedback from deraadt
  > OK krw (rpe@)

== gnu =============================================================== 04/13 ==

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

gnu

  ~ gcc/gcc/builtins.c                    ~ gcc/gcc/fold-const.c
  ~ gcc/gcc/tree-ssa-ccp.c                ~ gcc/gcc/tree-ssa-propagate.c

  > Fix internal compiler error with long long arithmetic
  > Adapted from a change to mainline gcc while it was still GPLv2.
  > Original diff found by stefan@
  > Adaptation by me
  > ICE caught by ml(at)extensibl(dot)com while he was porting MLton
  > to OpenBSD.
  > Ok stefan@
  > "Go for it" deraadt@ (dcoppa@)

usr.bin/binutils-2.17

  ~ bfd/bfd-in2.h                         ~ bfd/elf-bfd.h
  ~ bfd/elf.c                             ~ bfd/elflink.c
  ~ bfd/libbfd-in.h                       ~ bfd/libbfd.h
  ~ bfd/linker.c                          ~ bfd/targets.c
  ~ include/bfdlink.h                     ~ ld/ld.h
  ~ ld/ldlang.c                           ~ ld/ldmain.c
  ~ ld/lexsup.c                           

  > Port over binutils fix for PR ld/3111.
  > This greatly speeds up up linking of object files that contain
  > lots of dwarf2 symbols by caching symbol tables.
  > Original patch before binutils was switched to GPLv3 from:
  > https://sourceware.org/ml/binutils/2006-08/msg00334.html
  > Aaron Miller made us aware of that diff and adapted it to our
  > in-tree binutils. Many thanks!
  > Ports build testing on amd64 by krw@
  > ok deraadt@ krw@ (stefan@)

  ~ bfd/elflink.c                         

  > Until we get relro working, we need the __{got,plt}_{start,end} symbols
  > to always be exported so ld.so can use them.  This isn't the Right Thing,
  > but pushing strict W^X is usefully turning up issues, so unbreak stuff
  > until we can slog into binutils and do the Right Thing
  > ok kettenis@ (guenther@)

== include =========================================================== 05/13 ==

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

rpcsvc/yp_prot.h

  ~ rpcsvc/yp_prot.h                      

  > Stop publicly declaring _yp_dobind() and struct dom_binding, closing out
  > a rant Theo wrote 24 years ago.  Mark __ypexclude_{add,is,free}() as hidden
  > "get off my lawn!" deraadt@ (guenther@)

rpcsvc/ypclnt.h

  ~ rpcsvc/ypclnt.h                       

  > Stop publicly declaring _yp_dobind() and struct dom_binding, closing out
  > a rant Theo wrote 24 years ago.  Mark __ypexclude_{add,is,free}() as hidden
  > "get off my lawn!" deraadt@ (guenther@)

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

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

libc

  ~ net/getaddrinfo.3                     ~ sys/socketpair.2

  > Prefer AF_* over PF_* and 'address family' over 'protocol family'
  > ok jung@ (guenther@)

  ~ arch/powerpc/gen/setjmp.S             

  > Use .balign instead of .align; only need 8 byte alignment not 2^8
  > (guenther@)

  ~ arch/hppa/gen/setjmp.S                ~ arch/powerpc/gen/setjmp.S

  > Only require 4 byte alignment on ILP32 archs (guenther@)

  ~ gen/sysctl.3                          

  > wxabort bits; ok deraadt (jmc@)

  ~ hidden/db.h                           ~ stdlib/hcreate.c
  ~ db/hash/extern.h                      ~ db/hash/hash_func.c

  > Remove dead support for changing BDB hash algorithm and cache of
  > alternatives
  > ok natano@ millert@ deraadt@ (guenther@)

  + hidden/machine/sysarch.h              

  > Wrap <machine/sysarch.h> to prevent overriding internal calls, for
  > alpha and mips64
  > ok millert@ (guenther@)

  ~ arch/amd64/gen/setjmp.S               ~ arch/amd64/gen/sigsetjmp.S

  > Switch from calling obsolete sig{block,setmask} to directly using the
  > sigprocmask syscall
  > ok kettenis@ (guenther@)

  ~ yp/yp_bind.c                          ~ yp/ypinternal.h

  > _yp_bind(), _ypbindlist, _yp_domain, and _yplib_timeout are no longer
  > exported, so declare them as hidden to avoid pointless GOT relocations
  > ok millert@ deraadt@ (guenther@)

  ~ arch/mips64/gen/_setjmp.S             ~ arch/mips64/gen/setjmp.S

  > Do setjmp cookies for gp, sp, and ra
  > endian testing and ok deraadt@
  > ok visa@ (guenther@)

  ~ arch/i386/gen/_setjmp.S               ~ arch/i386/gen/setjmp.S
  ~ arch/i386/gen/sigsetjmp.S             

  > Do setjmp cookies for eip, esp, and ebp.  For bonus points, mix how
  > the cookies are used in setjmp/_setjmp/sigsetjmp so that mixing
  > calls (e.g., longjmp on a _setjmp buffer) will scramble all three
  > registers and jump you to a random location on a random stack!
  > ok deraadt@ (guenther@)

  ~ hidden/rpcsvc/ypclnt.h                ~ yp/yp_bind.c
  ~ yp/ypexclude.h                        

  > Stop publicly declaring _yp_dobind() and struct dom_binding, closing out
  > a rant Theo wrote 24 years ago.  Mark __ypexclude_{add,is,free}() as hidden
  > "get off my lawn!" deraadt@ (guenther@)

  ~ stdlib/icdb.c                         

  > The icdb magic number doesn't need to be visible to static links
  > ok tedu@ (guenther@)

  ~ arch/arm/Symbols.list                 ~ arch/arm/sys/brk.S
  ~ arch/arm/sys/sbrk.S                   ~ arch/hppa/Symbols.list
  ~ arch/hppa/sys/brk.S                   ~ arch/hppa/sys/sbrk.S
  ~ arch/mips64/Symbols.list              ~ arch/mips64/sys/brk.S
  ~ arch/mips64/sys/sbrk.S                ~ arch/powerpc/Symbols.list
  ~ arch/powerpc/sys/brk.S                ~ arch/powerpc/sys/sbrk.S
  ~ arch/sh/Symbols.list                  ~ arch/sh/sys/brk.S
  ~ arch/sh/sys/sbrk.S                    

  > Consistently reference '_end' instead of 'end' in the brk/sbrk
  > implementation
  > ok deraadt@ (guenther@)

  ~ sys/syscall.2                         

  > We no longer have syscalls with multiple return values.  Whine about
  > long long alignment instead. (guenther@)

  ~ sys/Makefile.inc                      

  > Move __getcwd from ASM to HIDDEN: we don't want the literal __getcwd symbol
  > ok millert@ deraadt@ (guenther@)

  ~ sys/ptrace.2                          

  > correct documentation for PT_WRITE_I. it may be necessary to flush icache.
  > after explanation from kettenis (tedu@)

  ~ gen/sysctl.3                          

  > Kill sysctl net.inet6.ip6.rr_prune
  > We don't support Router Renumbering and there are no plans to change
  > that.  ok mpi@ (jca@)

  ~ sys/rmdir.2                           

  > rmdir(2) should return EINVAL not EBUSY when trying to remove ".".
  > This brings us back in conformance with POSIX rmdir(2) and rmdirat(2).
  > OK kettenis@ (millert@)

  ~ sys/unlink.2                          

  > Document EINVAL when unlinking "." with the AT_REMOVEDIR flag. (millert@)

  ~ stdlib/strtod.3                       

  > Fix typo; the period should be outside the parens.  From Michael McConville
  > (millert@)

libedit

  ~ readline.c                            

  > Fix a crash in stifle_history() that occurred when the history
  > contained more than twice as many entries as the new limit:  The
  > argument of remove_history() only counts existing elements, not
  > those previously deleted.
  > Crash found by bentley@ when exiting sqlite3(1). (schwarze@)

libexpat

  ~ lib/xmlparse.c                        ~ lib/xmltok.c
  ~ lib/xmltok.h                          ~ lib/xmltok_impl.c

  > fix CVE-2016-0718. (rpointel@)

  ~ lib/xmlparse.c                        ~ lib/xmltok.c
  ~ lib/xmltok.h                          ~ lib/xmltok_impl.c

  TAGGED OPENBSD_5_9
  > Backport commit from -current:
  > revision 1.5 date: 2016/05/31 19:47:31;  author: rpointel;  state: Exp; 
  > lines: +85 -30;
  > fix CVE-2016-0718. (jasper@)

  ~ lib/xmlparse.c                        ~ lib/xmltok.c
  ~ lib/xmltok.h                          ~ lib/xmltok_impl.c

  TAGGED OPENBSD_5_8
  > Backport commit from -current:
  > revision 1.5 date: 2016/05/31 19:47:31;  author: rpointel;  state: Exp; 
  > lines: +85 -30;
  > fix CVE-2016-0718. (jasper@)

libm

  ~ man/exp.3                             

  > Use \(mi instead of - for the mathematical minus sign as recommended by
  > mandoc_char(7).  While there, use some spacing around the arithmetic
  > operations to make the more complicated formulas a bit easier to read.
  > looks good to kettenis, no objection from schwarze (tb@)

librthread

  ~ Makefile                              

  > implicit function declaration is the error we really want, not the
  > annoying strict prototypes (tedu@)

libssl

  ~ src/crypto/asn1/a_d2i_fp.c            

  TAGGED OPENBSD_5_8
  > Fix a short-read bug in the previous version of asn1_d2i_read_bio
  > The outer while() loop is missing, so we only read up to chunk_max bytes.
  > ok tedu (bcook@)

  ~ src/crypto/asn1/a_d2i_fp.c            

  TAGGED OPENBSD_5_9
  > Fix a short-read bug in the previous version of asn1_d2i_read_bio
  > The outer while() loop is missing, so we only read up to chunk_max bytes.
  > ok tedu (bcook@)

  ~ src/crypto/opensslv.h                 

  TAGGED OPENBSD_5_8
  > bump to 2.2.8 (bcook@)

  ~ src/crypto/opensslv.h                 

  TAGGED OPENBSD_5_9
  > bump to 2.3.5 (bcook@)

  ~ src/crypto/evp/evp.h                  ~ src/crypto/evp/evp_enc.c
  ~ src/ssl/s3_srvr.c                     ~ src/ssl/t1_lib.c

  TAGGED OPENBSD_5_9
  > deprecate internal use of EVP_[Cipher|Encrypt|Decrypt]_Final.
  > 14 years ago these were changed in OpenSSL to be the same
  > as the _ex functions. We use the _ex functions only internally
  > to ensure it is obvious the ctx must be cleared.
  > ok bcook@ (beck@)

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

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

ld.so

  ~ loader.c                              

  > Avoid W^X violation when setting DT_DEBUG on mips64.
  > ok deraadt@ (kettenis@)

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

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

lib

  ~ libc/Makefile                         

  > We don't have sigreturn anymore (beck@)

  - libc/sigreturn/Makefile               - libc/sigreturn/sigret.c

  > Nuke sigret.c
  > ok deraadt@ kettenis@ (beck@)

  ~ libcrypto/engine/enginetest.c         

  > Gix misleading indent pointed out by GCC 6.1.
  > ok beck@ jsing@ (bcook@)

  ~ libedit/readline/history.c            

  > Style unification and whitespace cleanup, in part suggested by
  > Christian Heckendorf.  No functional change. (schwarze@)

  ~ libedit/readline/history.c            

  > The argument of remove_history() only counts existing entries,
  > not those that were previously deleted. (schwarze@)

  ~ libedit/readline/history.c            

  > Test history_get() return value;
  > from Bastian Maerkisch <bmaerkisch at web dot de>. (schwarze@)

  ~ libedit/readline/history.c            

  > Add detailed error messages and restructure to make the individual
  > test functions shorter and easier to understand.  The total number
  > of lines remains unchanged. (schwarze@)

usr.bin

  ~ ssh/unittests/utf8/tests.c            

  > Fix two rare edge cases:
  > 1. If vasprintf() returns < 0, do not access a NULL pointer in snmprintf(),
  > and do not free() the pointer returned from vasprintf() because on some
  > systems other than OpenBSD, it might be a bogus pointer.
  > 2. If vasprintf() returns == 0, return 0 and "" rather than -1 and NULL.
  > Besides, free(dst) is pointless after failure (not a bug).
  > One half OK martijn@, the other half OK deraadt@;
  > committing quickly before people get hurt. (schwarze@)

  ~ ssh/unittests/utf8/Makefile           

  > stricter malloc.conf(5) options for utf8 tests (schwarze@)

  ~ sed/substitute.sh                     

  > Some tests for \<; will be fixed by martijn@'s upcoming commit to process.c
  > (schwarze@)

  ~ sdiff/Iflag12.out                     ~ sdiff/Iflag21.out
  ~ sdiff/Ilflag12.out                    ~ sdiff/Ilflag21.out
  ~ sdiff/Ilsflag12.out                   ~ sdiff/Ilsflag21.out
  ~ sdiff/Isflag12.out                    ~ sdiff/Isflag21.out
  ~ sdiff/Makefile                        ~ sdiff/file1
  ~ sdiff/file2                           ~ sdiff/lflag.out
  ~ sdiff/same.out                        ~ sdiff/sflag.out
  ~ sdiff/short.out                       ~ sdiff/wflag.out
  + sdiff/short.in                        

  > Replace most of the tests based on systrace output; from Ray. (okan@)

  ~ ssh/cfgparse.sh                       

  > Add 'sshd' to the test ID as I'm about to add a similar set for ssh.
  > (dtucker@)

  ~ ssh/Makefile                          + ssh/sshcfgparse.sh

  > Add a test for ssh(1)'s config file parsing. (dtucker@)

usr.sbin

  ~ syslogd/args-server-tcp-reconnect.pl
  ~ syslogd/args-server-tls-reconnect.pl

  > When connecting to a non existing tcp listen socket on localhost,
  > connect(2) does no longer fail immediately.  It reports EINPROGRESS
  > first, an ECONNREFUSED or EPIPE error follows later.  Allow this
  > changed behavior in syslogd(8) regression tests. (bluhm@)

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

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

dhclient

  ~ clparse.c                             

  > The networks I use are sufficiently fast that a 10 second "reboot" timeout
  > is not necessary, and in fact quite annoying when I swtich networks and
  > want to get back to the init state quickly. Default instead to 1 second.
  > The very few users who encounter problems may edit dhclient.conf.
  > ok benno
  > krw does not object (tedu@)

  ~ dhclient.conf.5                       

  > update default value for reboot (tedu@)

disklabel

  ~ disklabel.c                           

  > Refactor and clean up the logic before pledge a bit and fix pledge
  > fallout related to pledge disklabel (e.g. 'disklabel /dev/tty').
  > - Allow 'disklabel sdN' again for non-root users.
  > - Make sure at least one DIO* ioctl comes before pledge "disklabel"
  > - Fix the op == WRITE logic that broke 'make release' in -r2.217
  > Based on -r2.17 from beck.
  > ok beck (tb@)

  ~ disklabel.c                           

  > Fix automatic disk allocation based on a template which I broke in the
  > previous commit.  readlabel() calls editor_allocspace() which will use
  > the default label unless a template was provided beforehand.  Thus,
  > call parse_autolabel() before redlabel().
  > Problem found and fix provided by Mark Patruck, thanks!
  > Fix asap, deraadt@ (tb@)

iked

  ~ ikev2.c                               

  > ikev2_cp_fixaddr() is called to replace unspecified (e.g. 0.0.0.0)
  > addresses by specified (e.g. 192.0.2.1) ones.  The function should
  > return if the address is already set.  The check was wrong for the
  > IPv6 case, as it returned if it's not set.  This caused the address
  > to never be fixed.
  > ok markus@ mikeb@ (patrick@)

  ~ config.c                              ~ iked.h
  ~ ikev2.c                               ~ policy.c

  > Implement a second address pool specifically for IPv6, so that
  > clients can be given an IPv4 and IPv6 address at the same time,
  > thus enabling dual stack usage.
  > ok markus@ mikeb@ (patrick@)

  ~ ikev2.c                               

  > Use the last 32-bits of the IPv6 address to dynamically assign
  > addresses from the pool, instead of the fourth byte, which usually
  > represents network bits.
  > ok markus@ mikeb@ (patrick@)

mount

  ~ mount.8                               

  > sort mount options, and shorten slightly the wxabort text; (jmc@)

newfs

  ~ newfs.c                               

  > permit wxallowed on mfs
  > discussed with naddy a bit, ok millert (deraadt@)

sysctl

  ~ sysctl.8                              

  > wxabort bits; ok deraadt (jmc@)

  ~ sysctl.8                              

  > Kill sysctl net.inet6.ip6.rr_prune
  > We don't support Router Renumbering and there are no plans to change
  > that.  ok mpi@ (jca@)

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

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

man

  ~ man4/video.4                          

  > Fix sequence for the mmap(2) method.
  > ok jmc (mglocker@)

  ~ man5/spamd.conf.5                     

  > Spews.org is long dead and already removed from the sample config file;
  > remove it from the manual too and replace with nixspam. From Sevan Janiyan.
  > (sthen@)

  - man4/man4.armv7/imxenet.4             ~ man4/man4.armv7/Makefile
  + man4/man4.armv7/fec.4                 

  > rename imxenet to fec
  > ok patrick@ kettenis@ (jsg@)

  ~ man4/man4.armv7/imx.4                 

  > imxenet -> fec; (jmc@)

  ~ man4/Makefile                         + man4/utvfu.4

  > Initial man page for utvfu(4).
  > From Patrick Keshishian (mglocker@)

  ~ man4/utvfu.4                          

  > sort SEE ALSO; (jmc@)

  ~ man4/usb.4                            ~ man4/utvfu.4

  > more accurate Nd; and Xr from usb.4 (deraadt@)

  ~ man4/utvfu.4                          ~ man4/usb.4

  > sort the hardware list (specifically the utvfu entry). i've also lowercased
  > the A/V parts of Audio/Video; (jmc@)

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

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

arch

  ~ armish/Makefile                       ~ armv7/Makefile
  ~ landisk/Makefile                      ~ loongson/Makefile
  ~ luna88k/Makefile                      ~ macppc/Makefile
  ~ octeon/Makefile                       ~ sgi/Makefile
  ~ socppc/Makefile                       ~ zaurus/Makefile

  > fix arch/mach confusion in make tags. from frantisek holop (tedu@)

arch/alpha/conf

  ~ GENERIC                               

  > Enable utvfu(4) everywhere where uvideo(4) is also enabled.
  > suggested by mpi (mglocker@)

arch/amd64/amd64

  ~ autoconf.c                            ~ cpu.c

  > include rdtsc in the rdrand callback. some systems don't have rdrand yet,
  > but rdtsc may provide a few bits. ok deraadt (tedu@)

arch/amd64/conf

  ~ GENERIC                               

  > New USB device driver for Audio/Video capture devices based on the
  > Fushicai USBTV007 chip.
  > The chip specific code has been written by Lubomir Rintel and Federico
  > Simoncelli.  Patrick Keshishian has ported it to OpenBSD and wrote the
  > remaining code based on uvideo(4).
  > Input and help also from mpi@ and ratchov@.
  > ok mpi (mglocker@)

arch/amd64/pci

  ~ pci_machdep.c                         

  > Fix two issues in the MSI-X code.  First, actually read the MSI-X
  > capability
  > register.  Second, correctly decode the table sizefromits contents.
  > First issue pointed out by David Hill (with the help of clang).  Second
  > issue spotted after seeing a diff from Christiano Hasbaert. (kettenis@)

arch/arm/mainbus

  ~ mainbus.c                             

  > use fdt "model" string for hw.product
  > ok kettenis@ (jsg@)

arch/armv7/armv7

  ~ armv7.c                               ~ armv7_machdep.c
  ~ armv7_machdep.h                       ~ armv7var.h
  ~ platform.c                            

  > Remove model specific strings keyed off the board id.
  > We now pull the model string from fdt. (jsg@)

arch/armv7/conf

  ~ GENERIC                               

  > Enable utvfu(4) everywhere where uvideo(4) is also enabled.
  > suggested by mpi (mglocker@)

  ~ GENERIC                               ~ RAMDISK

  > rename imxenet to fec
  > ok patrick@ kettenis@ (jsg@)

arch/armv7/exynos

  ~ exynos.c                              ~ exynos_machdep.c

  > Remove model specific strings keyed off the board id.
  > We now pull the model string from fdt. (jsg@)

arch/armv7/imx

  - imxenet.c                             - imxenet.h
  ~ files.imx                             ~ imx.c
  ~ imx6.c                                + if_fec.c

  > rename imxenet to fec
  > ok patrick@ kettenis@ (jsg@)

  ~ imx.c                                 ~ imx_machdep.c

  > Remove model specific strings keyed off the board id.
  > We now pull the model string from fdt. (jsg@)

arch/armv7/omap

  ~ omap.c                                ~ omap_machdep.c

  > Remove model specific strings keyed off the board id.
  > We now pull the model string from fdt. (jsg@)

  ~ ommmc.c                               

  > Reset the bus width back to 1-bit when resetting the host.
  > Similar changes were made to imxesdhc(4). (jsg@)

arch/armv7/sunxi

  ~ sunxi.c                               ~ sunxi_machdep.c

  > Remove model specific strings keyed off the board id.
  > We now pull the model string from fdt. (jsg@)

arch/armv7/vexpress

  ~ vexpress.c                            ~ vexpress_machdep.c

  > Remove model specific strings keyed off the board id.
  > We now pull the model string from fdt. (jsg@)

arch/i386/conf

  ~ GENERIC                               

  > Enable utvfu(4) everywhere where uvideo(4) is also enabled.
  > suggested by mpi (mglocker@)

arch/i386/isa

  ~ lms.c                                 ~ mms.c

  > Use the new input functions of wsmouse in mouse and touchscreen drivers.
  > ok stsp@ kettenis@ (bru@)

arch/loongson/conf

  ~ GENERIC                               

  > Enable utvfu(4) everywhere where uvideo(4) is also enabled.
  > suggested by mpi (mglocker@)

arch/luna88k/dev

  ~ lunaws.c                              

  > Use the new input functions of wsmouse in mouse and touchscreen drivers.
  > ok stsp@ kettenis@ (bru@)

arch/macppc/conf

  ~ GENERIC                               

  > New USB device driver for Audio/Video capture devices based on the
  > Fushicai USBTV007 chip.
  > The chip specific code has been written by Lubomir Rintel and Federico
  > Simoncelli.  Patrick Keshishian has ported it to OpenBSD and wrote the
  > remaining code based on uvideo(4).
  > Input and help also from mpi@ and ratchov@.
  > ok mpi (mglocker@)

arch/macppc/dev

  ~ smu.c                                 

  > Add support for new smu-firmware fan commands.  This fixes wrong sysctl
  > hw.sensors fan values seen on macppc models with a new smu-firmware.
  > Help and ok kettenis (mglocker@)

arch/octeon/conf

  ~ GENERIC                               

  > Enable utvfu(4) everywhere where uvideo(4) is also enabled.
  > suggested by mpi (mglocker@)

arch/octeon/dev

  ~ cn30xxgmx.c                           

  > The same MAC filter setup code should work with all PHY link types.
  > Remove unnecessary abstraction.
  > ok mpi@ (visa@)

  ~ cn30xxgmx.c                           ~ if_cnmac.c
  ~ if_cnmacvar.h                         

  > Map ASX registers only if link control needs them.
  > ok mpi@ (visa@)

  ~ cn30xxpipreg.h                        ~ if_cnmac.c
  ~ if_cnmacvar.h                         

  > Fill the packet data pool with standard mbuf clusters instead of
  > driver-specific memory blocks. This lets the cnmac(4) RX path run
  > without an mbuf ext_free callback.
  > ok uebayasi@ (visa@)

arch/octeon/include

  ~ octeonvar.h                           

  > Fill the packet data pool with standard mbuf clusters instead of
  > driver-specific memory blocks. This lets the cnmac(4) RX path run
  > without an mbuf ext_free callback.
  > ok uebayasi@ (visa@)

arch/sgi/conf

  ~ GENERIC-IP27                          ~ GENERIC-IP30
  ~ GENERIC-IP32                          

  > I forgot to enable utvfu(4) for the sgi arch.
  > spotted by Miod, thanks! (mglocker@)

arch/sgi/hpc

  ~ z8530ms.c                             

  > Use the new input functions of wsmouse in mouse and touchscreen drivers.
  > ok stsp@ kettenis@ (bru@)

arch/sparc64/conf

  ~ GENERIC                               

  > Enable utvfu(4) everywhere where uvideo(4) is also enabled.
  > suggested by mpi (mglocker@)

arch/zaurus/conf

  ~ GENERIC                               

  > Enable utvfu(4) everywhere where uvideo(4) is also enabled.
  > suggested by mpi (mglocker@)

arch/zaurus/dev

  ~ zts.c                                 

  > Use the new input functions of wsmouse in mouse and touchscreen drivers.
  > ok stsp@ kettenis@ (bru@)

dev

  ~ softraid_crypto.c                     

  > Ensure that softraid crypto is not run on the crypto taskq.
  > When softraid crypto was written, it was intended that all crypto
  > operations would be run by softraid. As such, it called crypto_invoke()
  > directly, rather than crypto_dispatch() which would queue the task for
  > later processing. However, r1.53 of crypto/crypto.c started running
  > completion callbacks as a separate task. This leads to deadlocks with the
  > crypto taskq blocking in biowait, when softraid crypto volumes are stacked
  > (often with vnds).
  > In order to avoid task queueing and ensure that the operations are run
  > within softraid, set the CRYPTO_F_NOQUEUE flag. With r1.62 of
  > crypto/crypto.c crypto_dispatch() also started respecting this flag, hence
  > we can also switch back to calling the standard crypto_dispatch()
  > interface, rather than calling crypto_invoke() directly.
  > Tested by Peter Wens (peter at wenka dot nl) - thanks!
  > ok krw@ mlarkin@ mikeb@ tedu@ (jsing@)

  ~ softraid.c                            ~ softraid_raid5.c
  ~ softraidvar.h                         

  > Provide a function for calculting the rebuild percentage, rather than
  > having five copies of the same code.
  > ok krw@ (jsing@)

  ~ audio.c                               ~ video.c

  > New USB device driver for Audio/Video capture devices based on the
  > Fushicai USBTV007 chip.
  > The chip specific code has been written by Lubomir Rintel and Federico
  > Simoncelli.  Patrick Keshishian has ported it to OpenBSD and wrote the
  > remaining code based on uvideo(4).
  > Input and help also from mpi@ and ratchov@.
  > ok mpi (mglocker@)

dev/adb

  ~ ams.c                                 

  > Use the new input functions of wsmouse in mouse and touchscreen drivers.
  > ok stsp@ kettenis@ (bru@)

dev/hil

  ~ hilms.c                               

  > Use the new input functions of wsmouse in mouse and touchscreen drivers.
  > ok stsp@ kettenis@ (bru@)

dev/ic

  ~ rtwn.c                                ~ rtwnvar.h

  > Continue preparing a future merge of urtwn(4) and rtwn(4).
  > This mostly copies r88e support code to ic/rtwn.c and moves some functions
  > which are not trivial to merge with USB counterparts back to pci/if_rtwn.c.
  > ok mpi@ (stsp@)

dev/pci

  ~ ubsec.c                               

  > replace m_copym2 with m_dup_pkt.
  > ok mpi@ (dlg@)

  ~ pcidevs                               

  > intel use the same device id for multiple nvme parts, so just call
  > it NVMe.
  > samsung do the same.
  > pointed out by Evgeniy Sudyr who has a SSD 750 using the same id as the DC
  > parts. (dlg@)

  ~ pcidevs.h                             ~ pcidevs_data.h

  > regen (dlg@)

  ~ xhci_pci.c                            

  > Fix the loop iterating on extended capabilities.  It turns out that we
  > never did the handoff between the BIOS and the OS correctly.
  > Should make xhci(4) usable on machines with xHCI BIOS support like most
  > of the recent DELL.
  > Tested by Hrvoje Popovski and David Hill.
  > ok kettenis@, mikeb@ (mpi@)

  ~ pcireg.h                              

  > Fix two issues in the MSI-X code.  First, actually read the MSI-X
  > capability
  > register.  Second, correctly decode the table sizefromits contents.
  > First issue pointed out by David Hill (with the help of clang).  Second
  > issue spotted after seeing a diff from Christiano Hasbaert. (kettenis@)

  ~ if_iwm.c                              

  > In iwm(4), fix multicast Rx by updating the MAC context again after
  > sending multicast filter and STA settings during association.
  > Makes ARP and inet6 autoconf work again.
  > ok kettenis@ (stsp@)

  ~ if_iwn.c                              

  > Put iwn_update_htprot() back, with a fixed implementation this time.
  > I hope this will fix problems due to collisions and interference.
  > tested by tb@ and Marcus MERIGHI
  > ok tb@ (stsp@)

  ~ if_rtwn.c                             

  > Continue preparing a future merge of urtwn(4) and rtwn(4).
  > This mostly copies r88e support code to ic/rtwn.c and moves some functions
  > which are not trivial to merge with USB counterparts back to pci/if_rtwn.c.
  > ok mpi@ (stsp@)

dev/sun

  ~ sunms.c                               

  > Use the new input functions of wsmouse in mouse and touchscreen drivers.
  > ok stsp@ kettenis@ (bru@)

dev/usb

  ~ usbdevs                               

  > Netgear/Sierra Aircard 340U (chris@)

  ~ usbdevs.h                             ~ usbdevs_data.h

  > regen (chris@)

  ~ files.usb                             ~ usbdevs
  + utvfu.c                               + utvfu.h

  > New USB device driver for Audio/Video capture devices based on the
  > Fushicai USBTV007 chip.
  > The chip specific code has been written by Lubomir Rintel and Federico
  > Simoncelli.  Patrick Keshishian has ported it to OpenBSD and wrote the
  > remaining code based on uvideo(4).
  > Input and help also from mpi@ and ratchov@.
  > ok mpi (mglocker@)

  ~ usbdevs.h                             ~ usbdevs_data.h

  > regen (mglocker@)

  ~ uvideo.c                              

  > Correctly set the V4L2_BUF_FLAG_QUEUED and V4L2_BUF_FLAG_DONE buffer flags.
  > With this we can get rid of the sc_mmap_cur variable to query the buffer
  > queue for a free slot.
  > Remove resetting of the V4L2_BUF_FLAG_MAPPED buffer flag while here.  It's
  > enough when it gets set initially by uvideo_reqbufs().
  > Initial diff from Patrick Keshishian, thanks!
  > ok mpi (mglocker@)

  ~ umsm.c                                

  > Netgear/Sierra Aircard 340U
  > ok mpi@ (chris@)

  ~ utvfu.c                               

  > Not all architectures implicitly #include <sys/device.h> via earlier
  > includes (yes, that is a bug, but the tree should compile now.
  > In particular: sparc64 (deraadt@)

  ~ utvfu.c                               

  > Fix typo in comment.
  > From Lubomir Rintel via Patrick Keshish (mglocker@)

  ~ utpms.c                               

  > Use the new input functions of wsmouse in mouse and touchscreen drivers.
  > ok stsp@ kettenis@ (bru@)

  ~ uts.c                                 

  > Use the new input functions of wsmouse in mouse and touchscreen drivers.
  > ok stsp@ kettenis@ (bru@)

dev/wscons

  ~ wsmousevar.h                          

  > Do not forward declare an enum, makes gcc3 happy.
  > From miod@, ok bru@ (mpi@)

kern

  ~ kern_descrip.c                        

  > Fix sizes passed to free() in fdfree(). This prevents a panic reported
  > by sthen.
  > ok semarie (natano@)

  ~ exec_elf.c                            ~ kern_exec.c

  >  (deraadt@)

  ~ exec_elf.c                            ~ kern_exec.c

  > backout to insert correct commit message (deraadt@)

  ~ exec_elf.c                            ~ kern_exec.c

  > Identify W^X labelled binaries at execve() time based upon
  > WX_OPENBSD_WXNEEDED
  > flag set by ld -zwxneeded.  Such binaries are allowed to run only on
  > wxallowed
  > mountpoints.  They do not report mmap/mprotect problems.
  > Rate limit mmap/mprotect reports from other binaries.
  > These semantics are chosen to encourage progress in the ports ecosystem,
  > without overwhelming the developers who work in the area.
  > ok sthen kettenis (deraadt@)

  ~ syscalls.master                       

  > sys_o58_kill is no longer needed for compat.
  > ok guenther sthen (deraadt@)

  ~ syscalls.master                       

  > sys_osendsyslog can go away; we have transitioned to the new version with
  > a flags argument
  > ok guenther sthen (deraadt@)

  ~ init_sysent.c                         ~ syscalls.c

  > sync (deraadt@)

  ~ kern_pledge.c                         ~ subr_log.c

  > sys_osendsyslog can go away; we have transitioned to the new version with
  > a flags argument
  > ok guenther sthen (deraadt@)

  ~ kern_pledge.c                         ~ kern_sig.c

  > sys_o58_kill is no longer needed for compat.
  > ok guenther sthen (deraadt@)

  ~ sys_process.c                         

  > Fix ptrace PT_WRITE_D that returned EFAULT.
  > Broken in r.1.33.  After discussion from kettenis@, don't attempt to
  > make PT_WRITE_D and PT_WRITE_I equivalent again.
  > From Mathieu (naabed at poolp dot org) (jca@)

  ~ kern_srp.c                            

  > add support for using SRPs without the garbage collection machinery.
  > the gc machinery may sleep during srp_update, which makes it hard
  > to use from an interrupt context. srp_swap simply swaps the references
  > in an srp and relies ont he caller to schedule work in a process
  > context where it may sleep with srp_finalise until the reference
  > is no longer in use.
  > our network stack currently modifies routing tables in an interrupt
  > context, so this is built to be used to support rtable updates in
  > our current stack while supporting concurrent lookups.
  > ok jmatthew@ mpi@ (dlg@)

  ~ vfs_syscalls.c                        

  > rmdir(2) should return EINVAL not EBUSY when trying to remove ".".
  > This brings us back in conformance with POSIX rmdir(2) and rmdirat(2).
  > OK kettenis@ (millert@)

  ~ kern_sched.c                          

  > Allow pegged process on secondary CPUs to continue to be scheduled when
  > halting a CPU.  Necessary for intr_barrier(9) to work when interrupts are
  > targeted at secondary CPUs.
  > ok mpi@, mikeb@ (a while back) (kettenis@)

net

  ~ if_bridge.c                           

  > Insert a hack to deal with interfaces removing the VLAN header before
  > the packet has been feed to the pseudo-interfaces input handlers.
  > To fix that without introducing a layer violation we should be able to
  > disable HW-vlan on parent when in use with different pseudo-interfaces.
  > In the case of bridge(4) for example it makes no sense to let the interface
  > remove the VLAN header if the kernel has to add it back for every packet.
  > Fix issues reported by sebastia@ and markus@
  > From dlg@, ok claudio@ (mpi@)

  ~ if_spppsubr.c                         ~ if_sppp.h
  ~ if_pppoe.c                            

  > Set pppoe(4) control frames to high (NC, "network control")
  > priority.  This is translated into an 802.1p priority tag when
  > sent over a vlan interface, reducing the risk of them being
  > crowded out by data packets on a busy link.
  > Some users have problems with ISPs that place specific
  > requirements on vlan priority (typically the packet header
  > value must be '0', relating to priority 1).  This diff
  > doesn't fix that yet, but gives a single place to patch
  > to change tags on control packets without affecting
  > normal vlan priority operation on other interfaces.
  > ok mikeb. (sthen@)

  ~ route.c                               

  > Plug a route entry leak triggered under memory pressure.
  > Help to track the leak from Hrvoje Popovski, ok bluhm@ (mpi@)

  ~ pf.c                                  ~ pf_norm.c

  > Do not call nd6_output() without route entry argument.
  > ok sthen@, bluhm@ (mpi@)

  ~ route.c                               

  > Flush dynamic route entries attached to an interface when its link state
  > becomes DOWN.
  > This follows the same reasonning as for L2 (cloned) entries.
  > Hopefully enough to fix tedu@'s stale RTF_DYNAMIC routes when switching
  > WiFi network during suspend/resume.
  > ok sthen@ (mpi@)

  ~ if_ethersubr.c                        

  > Ensure that a valid route entry is passed to ether_output() if L2
  > resolution is required.
  > This will allow us to enforce that no route entry is inserted in
  > the routing table after ether_output().
  > This is now possible because if_output() is no longer called with
  > a NULL route argument.
  > Tested by Hrvoje Popovski, ok visa@, bluhm@ (mpi@)

  ~ rtable.c                              ~ art.c

  > move all the art_node initialisation to art_get in art.c
  > ok mpi@ (dlg@)

  ~ rtable.c                              

  > rtref and rtfree around moving the rt in rtable_mpath_reprio so the list
  > operations cant drop the refcount to 0.
  > ok mpi@ (dlg@)

  ~ route.c                               

  > s/stall/stale/ in a comment about old interfaces.
  > ok mpi@ (dlg@)

  ~ rtable.c                              

  > shuffle the code in rtable_insert so it inserts a populated art_node.
  > this makes the node usable as soon as it is in the tree, rather
  > than after it inserts the rtentry on the node.
  > ok mpi@ (dlg@)

  ~ rtsock.c                              

  > Remove ART-specific hack now that route reference counts is similar
  > to the original BSD routing table.
  > All route(8) and arp(8) tests still pass.
  > Fix a harmless underflow reported by Hrvoje Popovski. (mpi@)

  ~ art.c                                 

  > always clean up the heap in art_table_delete, even for the last at_refcnt
  > in the future a table may also be referenced by a cpu reading it
  > with srp as well as the art rtable, so try and make sure it is
  > always usable.
  > ok mpi@ (dlg@)

  ~ art.c                                 

  > pool_setipl at IPL_SOFTNET for all the art structures. (dlg@)

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

  > set rt_expire times against time_uptime, not time_second.
  > time_second is unix time so it can be affected by clock changes.
  > time_uptime is monotonic so it isnt affected by clock changes. that
  > in turn means route expiries wont jump with clock changes if set
  > against time_uptime.
  > the expiry is translated into unix time for export to userland though.
  > ok mpi@ (dlg@)

  ~ art.c                                 ~ art.h

  > defer the freeing of art tables and nodes to a task.
  > this will allow us to sleep in srp_finalize before freeing the
  > memory.
  > the defer is done by putting the tables and nodes on a list which
  > is serviced by a task. the task removes all the entries from the
  > list and pool_puts them.
  > the art_tables gc code uses at_parent as its list entry, and the
  > art_node gc code uses a union with the an_dst pointer. both at_parent
  > and an_dst are only used when theyre active as part of an art data
  > structure, and are not used in lookups. once the art is done with
  > them we can reuse these pointers safely.
  > ok mpi@ (dlg@)

  ~ route.c                               

  > Remove superfluous parenthesis to shut up clang, from David Hill. (mpi@)

netinet

  ~ ip_carp.c                             

  > Insert a hack to deal with interfaces removing the VLAN header before
  > the packet has been feed to the pseudo-interfaces input handlers.
  > To fix that without introducing a layer violation we should be able to
  > disable HW-vlan on parent when in use with different pseudo-interfaces.
  > In the case of bridge(4) for example it makes no sense to let the interface
  > remove the VLAN header if the kernel has to add it back for every packet.
  > Fix issues reported by sebastia@ and markus@
  > From dlg@, ok claudio@ (mpi@)

  ~ ip_output.c                           

  > Inverse two conditions to not grabe the KERNEL_LOCK for every multicast
  > packet.
  > ok visa@, stsp@, sthen@ (mpi@)

  ~ if_ether.c                            

  > Stop creating and inserting a route entry for ARP and ND automagically.
  > Callers MUST do a route lookup before sending a packet.
  > Tested by Hrvoje Popovski, ok visa@, bluhm@ (mpi@)

  ~ if_ether.c                            

  > set rt_expire times against time_uptime, not time_second.
  > time_second is unix time so it can be affected by clock changes.
  > time_uptime is monotonic so it isnt affected by clock changes. that
  > in turn means route expiries wont jump with clock changes if set
  > against time_uptime.
  > the expiry is translated into unix time for export to userland though.
  > ok mpi@ (dlg@)

netinet6

  ~ nd6.c                                 ~ nd6.h

  > remove code compensating for the "short" range of timeouts.
  > the nd6 code for managing expiries is never asked to handle intervals
  > greater than what timeouts can handle, so we dont need to overcompensate.
  > the code was also incorrect by using a long, which isnt that long
  > on ILP32 machines.
  > ok mpi@ millert@ benno@ (dlg@)

  ~ nd6.c                                 

  > Stop creating and inserting a route entry for ARP and ND automagically.
  > Callers MUST do a route lookup before sending a packet.
  > Tested by Hrvoje Popovski, ok visa@, bluhm@ (mpi@)

  ~ in6.h                                 ~ in6_proto.c
  ~ ip6_var.h                             

  > Kill sysctl net.inet6.ip6.rr_prune
  > We don't support Router Renumbering and there are no plans to change
  > that.  ok mpi@ (jca@)

  ~ nd6.c                                 ~ nd6.h
  ~ nd6_nbr.c                             

  > make nd6_llinfo_settimer take seconds instead of ticks.
  > most callers are working in seconds, internally it uses seconds, and
  > you can call timeout_add_sec as easily as timeout_add.
  > this also fixes an issue with an nd_defrouter expire which was
  > incorrectly scaled with ticks in a comparison.
  > ok mpi@ (dlg@)

  ~ nd6.c                                 

  > measure nd expiry times against time_uptime, not time_second.
  > time_second can be jumped by clock changes, while time_uptime will
  > always progress monotonically.
  > it is still translated to time_seconds for export to userland though.
  > ok mpi@ (dlg@)

ntfs

  ~ ntfs_subr.c                           

  > mkdir() on ntfs should return EROFS, not ENOENT.
  > issue found by landry
  > ok kettenis millert (natano@)

sys

  ~ exec_elf.h                            

  > define PT_OPENBSD_WXNEEDED (deraadt@)

  ~ exec.h                                ~ proc.h

  >  (deraadt@)

  ~ exec.h                                ~ proc.h

  > backout to insert correct commit message (deraadt@)

  ~ exec.h                                ~ proc.h

  > Identify W^X labelled binaries at execve() time based upon
  > WX_OPENBSD_WXNEEDED
  > flag set by ld -zwxneeded.  Such binaries are allowed to run only on
  > wxallowed
  > mountpoints.  They do not report mmap/mprotect problems.
  > Rate limit mmap/mprotect reports from other binaries.
  > These semantics are chosen to encourage progress in the ports ecosystem,
  > without overwhelming the developers who work in the area.
  > ok sthen kettenis (deraadt@)

  ~ syscall.h                             ~ syscallargs.h

  > sync (deraadt@)

  ~ sockio.h                              

  > remove OSIOCGIFCONF. it's dead. ok deraadt guenther mpi (tedu@)

  ~ srp.h                                 

  > add support for using SRPs without the garbage collection machinery.
  > the gc machinery may sleep during srp_update, which makes it hard
  > to use from an interrupt context. srp_swap simply swaps the references
  > in an srp and relies ont he caller to schedule work in a process
  > context where it may sleep with srp_finalise until the reference
  > is no longer in use.
  > our network stack currently modifies routing tables in an interrupt
  > context, so this is built to be used to support rtable updates in
  > our current stack while supporting concurrent lookups.
  > ok jmatthew@ mpi@ (dlg@)

  ~ mman.h                                

  > Delete the kernel compat bits for old mmap() MAP_OLD* flags
  > ok deraadt@ matthew@ jca@ (guenther@)

ufs/ext2fs

  ~ ext2fs_alloc.c                        ~ ext2fs_balloc.c

  > Unsigned integers can't be negative.
  > from David Hill and mmcc@
  > ok stefan (natano@)

uvm

  ~ uvm_mmap.c                            

  >  (deraadt@)

  ~ uvm_mmap.c                            

  > backout to insert correct commit message (deraadt@)

  ~ uvm_mmap.c                            

  > Identify W^X labelled binaries at execve() time based upon
  > WX_OPENBSD_WXNEEDED
  > flag set by ld -zwxneeded.  Such binaries are allowed to run only on
  > wxallowed
  > mountpoints.  They do not report mmap/mprotect problems.
  > Rate limit mmap/mprotect reports from other binaries.
  > These semantics are chosen to encourage progress in the ports ecosystem,
  > without overwhelming the developers who work in the area.
  > ok sthen kettenis (deraadt@)

  ~ uvm_mmap.c                            

  > Delete the kernel compat bits for old mmap() MAP_OLD* flags
  > ok deraadt@ matthew@ jca@ (guenther@)

  ~ uvm_mmap.c                            

  > Prevent vsize_t underflow when checking RLIMIT_DATA, which made the
  > check ineffective when you already had more memory than your limit
  > allowed.
  > I noticed after writing this diff that millert@ already committed a fix
  > for this in rev. 1.74 (2009/06/01), but it got backed out with the giant
  > pmemrange backout two weeks later and was never restored.
  > OK tedu@ ("just fix it" and "go ahead with your version")
  > stefan@ also agrees that a check is needed. (schwarze@)

  ~ uvm_addr.c                            

  > print the size when an unavailable address is returned. it is useful.
  > ok millert stefan (tedu@)

  ~ uvm_map.c                             

  > We should never decrease uvm_maxkaddr.  Currently this may happen if
  > uvm_map_kmem_grow() gets called for submaps of the kernel_map on
  > architectures that don't implement pmap_growkernel().  When that happens
  > we get the infamous "address selector returned unavailable address" panic.
  > ok tedu@, mglocker@, beck@, stefan@ (kettenis@)

  ~ uvm_mmap.c                            

  > If a process trips the W^X violation check, abort it unless it came
  > from a filesystem with the wxallowed flag set.  ok deraadt
  > Current status:
  > Filesystem      Binary          Action
  > ----------      ------          ------
  > wxallowed       normal          violation -> log but don't abort
  > wxallowed       wxneeded        W^X silently allowed
  > normal          normal          violation -> abort
  > normal          wxneeded        process won't run at all
  > See http://www.openbsd.org/faq/current.html#r20160527 (sthen@)

  ~ uvm_extern.h                          ~ uvm_map.c

  > Add uvm_share() to share a memory range between two address spaces
  > Its primary use is to make guest VM memory accessible to the host
  > (e.g. vmd(8)). That will later allow us to remove the readpage and
  > writepage ioctls from vmm(4), and use ordinary loads and stores instead.
  > "looks good to me" kettenis@ (stefan@)

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

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

aucat

  ~ aucat.c                               

  > To store MMC position, use samples (at device rate) as time units
  > instead of 2400-ths of second. No behaviour change. (ratchov@)

  ~ aucat.c                               ~ defs.h

  > Pass hr:min:sec:frame.cent to dev_mmcloc() directly and remove the
  > useless intermediate conversion from and to 2400-th of seconds. (ratchov@)

  ~ aucat.c                               

  > set exit status to 1 if -n is used without -i and -o (ratchov@)

  ~ aucat.c                               

  > remove forgotten debug printfs (ratchov@)

doas

  ~ doas.c                                ~ doas.conf.5
  ~ doas.h                                ~ parse.y

  > add a doas.conf setenv directive that allows setting environment
  > variables explicitly and by copying existing environment variables
  > of a different name. E.g.
  > permit nopass setenv { PS1=$SUDO_PS1 FOO=bar } keepenv :wheel
  > ok tedu@ benno@ (djm@)

  ~ doas.conf.5                           

  > spelling fix; (jmc@)

kdump

  ~ kdump.1                               ~ kdump.c

  > allow printing timestamps relative to beginnging of trace, -RT. ok benno
  > (tedu@)

mklocale

  ~ lex.l                                 ~ mklocale.1

  > Eat all blanks between the VARIABLE keywords and the definition,
  > not just the first one.  Otherwise we end up storing the blanks.
  > Now the file generated by mklocale(1) is the same regardless of
  > whether or not the input is sent through the C preprocessor.
  > OK deraadt@ jca@ schwarze@ (millert@)

nc

  ~ nc.1                                  ~ netcat.c

  > Let netcat support the use of service names instead of port numbers.
  > based on a diff from Andras Farkas <[email protected]>
  > ok deraadt@ (beck@)

netstat

  ~ net80211.c                            

  > In netstat, display correct counter for 'no basic MCS set' error.
  > ok sthen@ tb@ (stsp@)

newsyslog

  ~ Makefile                              ~ newsyslog.c

  > instead of using the makefile to override ancient defaults in the code,
  > change the code to reflect modern reality.
  > ok deraadt millert natano (tedu@)

sed

  ~ process.c                             

  > Make sed use the new REG_STARTEND | REG_NOTBOL combination. This fixes a
  > begin
  > of word mismatch as reported by jsg@.
  > Discussed with otto@ and others early on, earlier version tested in ports
  > build
  > by aja@
  > OK millert@
  > Few readability tweaks and OK schwarze@ (martijn@)

ssh

  ~ utf8.c                                

  > Fix two rare edge cases:
  > 1. If vasprintf() returns < 0, do not access a NULL pointer in snmprintf(),
  > and do not free() the pointer returned from vasprintf() because on some
  > systems other than OpenBSD, it might be a bogus pointer.
  > 2. If vasprintf() returns == 0, return 0 and "" rather than -1 and NULL.
  > Besides, free(dst) is pointless after failure (not a bug).
  > One half OK martijn@, the other half OK deraadt@;
  > committing quickly before people get hurt. (schwarze@)

  ~ utf8.c                                

  > Even when only writing an unescaped character, the dst buffer may need to
  > grow, or it would be overrun; issue found by tb@ with malloc.conf(5) 'C'.
  > While here, reserve an additional byte for the terminating NUL
  > up front such that we don't have to realloc() later just for that.
  > OK tb@ (schwarze@)

  ~ progressmeter.c                       

  > Backout rev. 1.43 for now.
  > The function update_progress_meter() calls refresh_progress_meter()
  > which calls snmprintf() which calls malloc(); but update_progress_meter()
  > acts as the SIGALRM signal handler.
  > "malloc(): error: recursive call" reported by sobrado@. (schwarze@)

  ~ kexgexs.c                             

  > Ensure that the client's proposed DH-GEX max value is at least as big
  > as the minimum the server will accept.  ok djm@ (dtucker@)

  ~ kexgexs.c                             

  > Check min and max sizes sent by the client against what we support before
  > passing them to the monitor.  ok djm@ (dtucker@)

  ~ mux.c                                 ~ readconf.c
  ~ readconf.h                            ~ ssh.c

  > Move the host and port used by ssh -W into the Options struct.
  > This will make future changes a bit easier.  ok djm@ (dtucker@)

  ~ readconf.c                            ~ ssh.1
  ~ ssh.c                                 

  > Allow ExitOnForwardFailure and ClearAllForwardings to be overridden when
  > using ssh -W (but still default to yes in that case).  bz#2577, ok djm@.
  > (dtucker@)

  ~ ssh.1                                 

  > tweak previous; (jmc@)

tmux

  ~ tty.c                                 

  > Send two cub1 instead of using cub for moving the cursor two left. This
  > is normally better because using cub1 will be ^H^H (so two bytes) but
  > cub would be ^[[2D (four). (nicm@)

  ~ screen-write.c                        

  > Do not draw character to screen if it has not changed, and do not save
  > last character if it won't be used. This (and last few commits) prompted
  > by a report from Hubert depesz Lubaczewski. (nicm@)

  ~ cmd-set-option.c                      ~ tmux.h
  ~ tty.c                                 ~ window.c

  > Cache the window styles and do not look up the window-style options
  > unless they have changed. (nicm@)

units

  ~ units.lib                             

  > update currency exchange rates; (jmc@)

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

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

bgpctl

  ~ bgpctl.c                              

  > Add operators =, !=, - (range), >< (exclsive range) to the as-path
  > filters (AS, peer-as, source-as, transit-as).
  > Add a use case (block illegal AS numbers) to the bgpd.conf example.
  > feedback from claudio, sthen, florian,
  > ok florian@ phessler@ (benno@)

bgpd

  ~ bgpd.conf.5                           ~ bgpd.h
  ~ parse.y                               ~ rde.c
  ~ rde_filter.c                          ~ util.c

  > Add operators =, !=, - (range), >< (exclsive range) to the as-path
  > filters (AS, peer-as, source-as, transit-as).
  > Add a use case (block illegal AS numbers) to the bgpd.conf example.
  > feedback from claudio, sthen, florian,
  > ok florian@ phessler@ (benno@)

  ~ bgpd.conf.5                           

  > grammar fix; (jmc@)

bind

  ~ bin/dig/dig.c                         

  > reduce confusion about -p option. parse it, but only permit port 53, and
  > make it an error otherwise instead of a warning that may be overlooked.
  > reported by Peter van Dijk
  > ok deraadt (tedu@)

eigrpd

  ~ eigrpd.c                              ~ eigrpd.h
  ~ eigrpe.c                              ~ eigrpe.h
  ~ parse.y                               ~ rde.c
  ~ rde.h                                 

  > Improve security by calling exec after fork.
  > For each child process (rde and eigrpe), re-exec eigrpd with a special
  > "per-role" getopt flag. This way we have seperate ASLR/cookies per
  > process.
  > Based on a similar patch for bgpd, from claudio@
  > ok deraadt (renato@)

  ~ interface.c                           

  > Reset the interface uptime when it is restarted.
  > The uptime was being set only when the interface was created, which is
  > not what we want. (renato@)

  ~ eigrpe.c                              ~ interface.c

  > Call if_update() only when necessary for IPv6 address changes.
  > For EIGRPv6, an interface only needs an link-local address in order
  > to be enabled in the routing daemon. So adding or removing global
  > unicast addresses, for example, will never trigger a state change in
  > the interface.
  > Additionally, move all address handling code to if_addr_new() and
  > if_addr_del() to improve readability. (renato@)

  ~ eigrpd.c                              

  > Fix potential SIGBUS in startup.
  > The fork+exec diff introduced this problem where we were indirectly
  > calling imsg_event_add() before initializing (event_set) iev_rde and
  > iev_eigrpe. Fix this by moving down both main_imsg_send_ipc_sockets()
  > and main_imsg_send_config(), after iev_rde and iev_eigrpe are
  > initialized.
  > benno@ reported this problem for the initial ospfd fork+exec attempt,
  > now fix eigrpd too.
  > ok deraadt (renato@)

httpd

  ~ config.c                              

  > Unbreak compilation with -DDEBUG.
  > From Fabian Raetz <fabian dot raetz at gmail dot com> (jsing@)

installboot

  ~ Makefile                              ~ i386_installboot.c
  + armv7_installboot.c                   

  > Add support for armv7.  Fix an error message in the i386 support before
  > creating more copies.
  > ok deraadt@, jsing@ (kettenis@)

  ~ armv7_installboot.c                   

  > Rename findmbrlinux() to findmbrfat().  This function was originally
  > searching for a linux partition type, now it looks for a fat type.
  > ok kettenis@ (jsg@)

ntpd

  ~ constraint.c                          

  > ntpd is too aggressive about retrying constraint connections.  This
  > became more visible recently because a log_debug was changed to
  > log_warnx.  Change it back for now.
  > ok jsing (deraadt@)

pstat

  ~ pstat.8                               ~ pstat.c

  > correct synopsis to make -d usage clearer.
  > The shed fell over because 15 layers of paint exceeded engineering margins.
  > (deraadt@)

rbootd

  ~ Makefile                              ~ parseconf.c
  ~ rbootd.c                              ~ utils.c

  > Delete blocking/unblocking of signals, as the handlers now just set flags
  > that are tested by the main loop.
  > ok jca@ deraadt@ (guenther@)

rebound

  ~ rebound.c                             

  > with the kernel perm check fixed, we can do this kevent after setuid,
  > but still needs to be before pledge. also check for failure. (tedu@)

  ~ rebound.c                             

  > previous change (r1.27) converted to using non blocking sockets and
  > spinning on them, trying to preemptively avoid kevent. i've come to
  > conclude this is a poor design. it is exceedingly rare for there to be
  > two requests waiting. instead, we end up burning useless syscalls. (tedu@)

smtpd

  ~ to.c                                  

  > Simplify address parsing code by only using inet_net_pton(3).
  > There's no need to have a separate case for non-CIDR addresses using
  > inet_pton(3) as inet_net_pton(3) handles them as well.
  > This simplification is valid for all our daemons parsing addresses,
  > it is a common patern.
  > ok gilles@, millert@ (mpi@)

  ~ smtpctl.8                             

  > transfer is not a smtpctl command, but mta is
  > ok gilles (jung@)

  ~ delivery_lmtp.c                       

  > delivery_lmtp does not know how to deal with LMTP servers returning
  > continuation lines, fix this.
  > reported and initial diff by parchd-1 @ github, ok sunil@ (gilles@)

  ~ delivery_lmtp.c                       

  > LMTP banner is handled by a getline() call so it cannot handle multiline
  > banners, introduce lmtp_banner() which takes care of this.
  > ok sunil@ (gilles@)

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

Reply via email to