OpenBSD src changes summary for 2017-07-30 to 2017-08-06 inclusive
==================================================================

bin/ksh                                 distrib/common
distrib/sets                            distrib/special
etc/mtree/BSD.x11.dist                  gnu
gnu/usr.bin/perl                        lib/libc
lib/libcompiler_rt                      lib/libcrypto
lib/libevent                            lib/libexpat
lib/librthread                          lib/libssl
lib/libtls                              lib/libunwind
regress/lib                             regress/libexec
regress/usr.sbin                        sbin/dhclient
sbin/ifconfig                           sbin/isakmpd
sbin/pfctl                              sbin/slaacd
sbin/wsconsctl                          share/man
share/misc                              sys/arch/amd64/amd64
sys/arch/amd64/include                  sys/arch/amd64/stand/efiboot
sys/arch/arm/include                    sys/arch/arm64/arm64
sys/arch/arm64/include                  sys/arch/arm64/stand/efiboot
sys/arch/armv7/stand/efiboot            sys/arch/i386/conf
sys/arch/loongson/include               sys/arch/mips64/include
sys/arch/octeon/conf                    sys/arch/octeon/dev
sys/arch/octeon/include                 sys/arch/octeon/octeon
sys/arch/sgi/include                    sys/conf
sys/dev                                 sys/dev/fdt
sys/dev/pci                             sys/dev/usb
sys/dev/wscons                          sys/kern
sys/net                                 sys/net80211
sys/netinet                             sys/netinet6
sys/sys                                 usr.bin/ftp
usr.bin/less                            usr.bin/make
usr.bin/mandoc                          usr.bin/mg
usr.bin/sed                             usr.bin/systat
usr.bin/tmux                            usr.bin/units
usr.bin/vi                              usr.sbin/bgpd
usr.sbin/dhcpd                          usr.sbin/httpd
usr.sbin/ifstated                       usr.sbin/pkg_add
usr.sbin/relayd                         usr.sbin/smtpd
usr.sbin/switchctl                      usr.sbin/switchd
usr.sbin/syspatch                       usr.sbin/traceroute
usr.sbin/vmd                            

== bin =============================================================== 01/11 ==

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

ksh

  ~ Makefile                              ~ config.h
  ~ history.c                             

  > Disable ksh VI-editing mode on the install media.  We need the space
  > savings. (deraadt@)

== distrib =========================================================== 02/11 ==

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

common

  ~ elfrd_size.c                          ~ elfrdsetroot.c

  > Style fix and unused var/label cleanup. From Matthew Martin.
  > ok deraadt@ (mortimer@)

sets

  ~ lists/man/mi                          

  > sync (visa@)

  ~ lists/man/mi                          

  > sync (visa@)

  ~ lists/man/mi                          

  > sync (jsg@)

special

  ~ ksh/Makefile                          

  > Disable ksh VI-editing mode on the install media.  We need the space
  > savings. (deraadt@)

== etc =============================================================== 03/11 ==

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

mtree/BSD.x11.dist

  ~ mtree/BSD.x11.dist                    

  > add /usr/X11R6/share/libdrm for recent libdrm versions (jsg@)

== gnu =============================================================== 04/11 ==

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

gnu

  ~ llvm/include/llvm/CodeGen/AsmPrinter.h
  ~ llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
  ~ llvm/lib/Target/X86/X86AsmPrinter.h   
  ~ llvm/lib/Target/X86/X86MCInstLower.cpp

  > Use int3 trap padding between functions instead of trapsleds with a leading
  > jump.
  > ok deraadt@ (mortimer@)

  - llvm/.gitignore                       

  > remove llvm's .gitignore file; upstream have separate repos for clang, lld,
  > etc but as they're directly in our main tree, so the ignore file causes
  > problems for people using cvs->git conversions. kettenis suggested removing
  > the file rather than just commenting-out the relevant repos, patrick
  > agrees. (sthen@)

  ~ llvm/tools/clang/include/clang/Basic/Builtins.def

  > Backport https://reviews.llvm.org/D29778.  Fixes a bug where clang was
  > optimizing code around an lgamma(3) call a bit too much.  Fixes the
  > lib/libm/lgamma regress test.
  > ok patrick@, millert@ (kettenis@)

usr.bin/perl

  ~ Configure                             

  > Zero out excess bytes in perl long doubles
  > From upstream commits by Niko Tyni <ntyni AT debian.org>
  > * dd6885360b15e763e0706dc28555eea328de432d
  > * 6b2c7479d6d33249c2385d8a36d8ee9e61e1a519
  > ok aja@ (afresh1@)

== lib =============================================================== 05/11 ==

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

libc

  ~ gen/signal.3                          ~ stdlib/labs.3
  ~ stdlib/lldiv.3                        

  > add missing and correct misspelled names, most in NAME sections;
  > found with regress/usr.bin/mandoc/db/dbm_dump;
  > OK jmc@ (schwarze@)

  ~ compat-43/sigblock.3                  ~ compat-43/sigsetmask.3

  > delete sigmask(3) from sigsetmask(3) SYNOPSIS and use .Xr rather
  > than .Fn for it, it is documented sigblock(3) as noticed by jmc@;
  > some minor typo and punctuation cleanup while here;
  > OK jmc@ (schwarze@)

  ~ locale/rune_local.h                   ~ locale/runeglue.c
  ~ locale/setlocale.c                    

  > We only support ASCII and UTF-8, so we never need to
  > change _ctype_, _tolower_tab_, and _toupper_tab_.
  > No functional change.
  > Suggested by and OK kettenis@ (schwarze@)

libcompiler_rt

  ~ Makefile                              

  > Enable atomic support functions.
  > ok mlarkin@ (kettenis@)

libcrypto

  ~ man/BIO_ctrl.3                        ~ man/d2i_ASN1_OCTET_STRING.3
  ~ man/d2i_ECPKParameters.3              ~ man/EVP_PKEY_keygen.3
  ~ man/HMAC.3                            ~ man/RSA_get_ex_new_index.3

  > add missing and correct misspelled names, most in NAME sections;
  > found with regress/usr.bin/mandoc/db/dbm_dump;
  > OK jmc@ (schwarze@)

libevent

  ~ evbuffer_new.3                        

  > add missing and correct misspelled names, most in NAME sections;
  > found with regress/usr.bin/mandoc/db/dbm_dump;
  > OK jmc@ (schwarze@)

libexpat

  - README                                ~ Changes
  ~ expat_config.h                        ~ lib/expat.h
  ~ lib/siphash.h                         ~ lib/xmlparse.c
  ~ lib/xmlrole.c                         ~ lib/xmltok.c
  ~ lib/xmltok_impl.c                     ~ tests/chardata.c
  ~ tests/chardata.h                      ~ tests/minicheck.c
  ~ tests/runtests.c                      + README.md

  > Update libexpat to 2.2.3.  Only few changes affect OpenBSD.
  > OK deraadt@ (bluhm@)

librthread

  ~ rthread_fork.c                        

  > disable post fork checks for now, too much turbulence in the air (tedu@)

  ~ rthread.h                             

  > Use "volatile unsigned int" instead of _atomic_lock_t.  The _atomic_lock_t
  > isn't the same size on all our architectures and should only be used for
  > spin locks.
  > ok visa@, mpi@ (kettenis@)

libssl

  ~ man/SSL_CTX_set_default_passwd_cb.3   
  ~ man/SSL_CTX_set_generate_session_id.3

  > add missing and correct misspelled names, most in NAME sections;
  > found with regress/usr.bin/mandoc/db/dbm_dump;
  > OK jmc@ (schwarze@)

libtls

  ~ man/tls_load_file.3                   

  > correct function name;
  > from carlos cardenas (jmc@)

libunwind

  ~ include/libunwind.h                   

  > Fix register numbering for OpenBSD/i386.  Make exception handling work with
  > clang on that platform.
  > ok millert@ (kettenis@)

== regress =========================================================== 06/11 ==

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

lib

  ~ libm/exp/exp.c                        

  > use %Lf for printing long double; silences clang warning
  > ok kettenis@ (robert@)

libexec

  ~ ld.so/randomdata/libaa/aa.c           ~ ld.so/randomdata/prog/prog.c

  > A fix is coming in the future, but in the meantime we should never declare
  > a section(".openbsd.randomdata") variable as static or const, because the
  > compiler optimizes out access. (deraadt@)

  ~ ld.so/dlclose/test1/libbb/Makefile    ~ ld.so/dlclose/test1/libbb/bb.c
  + ld.so/dlclose/test1/libbb/bbb.c       

  > Split up source code to keep clang from optimizing this into failure.
  > ok millert@ (kettenis@)

  ~ ld.so/constructor/libaa/aa.C          ~ ld.so/constructor/libab/Makefile

  > Use volatile to keep clang from optimizing things too much.  Force linking
  > with the c++ command instead of cc by setting CC=${CXX}.  This is a hack
  > and a better solution is under development.  Linking with c++ is necessary
  > to make the shared libraries depend up libc++.so such that  the iostream
  > objects are constructed before we use them.
  > ok bluhm@ (kettenis@)

  ~ ld.so/init-env/libaa/Makefile         

  > Use ${CC}=${CXX} here as well.
  > ok bluhm@ (kettenis@)

  ~ ld.so/initfirst/test2/libaa/aa.C      ~ ld.so/initfirst/test2/libab/ab.C
  ~ ld.so/initfirst/test2/libac/ac.C      ~ ld.so/initfirst/test2/libad/ad.C
  ~ ld.so/initfirst/test2/libae/ae.C      

  > Use C stdio instead of C++ iostream as we cannot use the latter in
  > constructors for an "initfirst" object as the iostream objects have
  > not been constructed yet.
  > ok bluhm@ (kettenis@)

usr.sbin

  ~ ifstated/ifstated                     ~ ifstated/statemachine

  > Add shebang (jca@)

  ~ ifstated/statemachine                 

  > Fix whitespace, ok jca@ (rob@)

  ~ ifstated/ifstated                     

  > Tweak demoted state test, ok jca@ (rob@)

== sbin ============================================================== 07/11 ==

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

dhclient

  ~ dhclient.c                            ~ dhcpd.h
  ~ kroute.c                              

  > Use effective_proposal data to set mtu and address. (krw@)

  ~ dhclient.c                            ~ kroute.c
  ~ privsep.h                             

  > Use effective_proposal data to build resolv.conf contents.
  > Fix a missing != NULL, and add a comment on why no search
  > path and no dns servers means resolv.conf.tail is ignored. (krw@)

  ~ dhclient.conf.5                       

  > Shorten description and remove details regarding the parser implementation.
  > ok jmc@ krw@ (anton@)

  ~ kroute.c                              

  > Delete duplicated switch {} case: block. (krw@)

  ~ kroute.c                              

  > Flush static (RTF_STATIC) routes and not just
  > gateway (RTF_GATEWAY) routes. Thus catching and
  > flushing direct routes that could have been
  > added by dhclient. (krw@)

  ~ kroute.c                              

  > Whitespace. (krw@)

  ~ kroute.c                              

  > Do not attempt to parse zero'd input buffer after
  > read() on routing socket fails. Just bail. (krw@)

  ~ kroute.c                              

  > Don't delete the address/netmask that is about to be
  > added. Just skip both the delete and the add. (krw@)

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

  > Bring route creation into line with what route(8) does. In
  > particular stop providing RFA_IFA, and instead supply the
  > relevant interface index in the RTM_ADD message.
  > Various code simplifications as a result. (krw@)

  ~ kroute.c                              

  > Factor out get_routes() to do the sysctl() dance
  > needed to get a set of routes. (krw@)

  ~ kroute.c                              ~ privsep.c

  > Simplify logic seeking/checking the interface over
  > which the current default route exits.
  > If the dhclient instance owns that interface it
  > owns resolv.conf and will overwrite it no matter
  > who created the default route.
  > Feedback & suggestions claudio@ (krw@)

ifconfig

  ~ brconfig.c                            

  > The handling of 'add' used by bridge and switch in ifconfig does not
  > error out if the ioctl returns EEXIST.  Do the same for the switch
  > specific 'addlocal' and 'portno' ioctls so netstart won't error out
  > when rerun with the same settings in hostname.switchN.
  > ok reyk@ (jsg@)

  ~ ifconfig.c                            

  > use AI_NUMERICHOST for getaddrinfo(), we can only configure ip
  > adresses on pflow(4) interfaces, so don't try to resolve hostnames.
  > Report and fix from pjp -AT- centroid.eu
  > ok florian@ (benno@)

isakmpd

  ~ connection.c                          ~ pf_key_v2.c

  > Prevent a use-after-free by always passing dynamically allocated
  > arguments to f_key_v2_connection_check().
  > The race can be triggered by sending SIGHUP to the daemon.  Note that
  > this change do not fix the memory leak if exchange_establish() fails.
  > Reported by Michał Koc.
  > ok hshoexer@, markus@, henning@ (mpi@)

pfctl

  ~ pfctl_parser.c                        

  > Since nearly 20 years the correct spelling of
  > ICMP6_DST_UNREACH_NOTNEIGHBOR is ICMP6_DST_UNREACH_BEYONDSCOPE (RFC
  > 1885 was obsoleted).
  > sthen grepped the ports sources to make sure nothing uses it.
  > OK millert, jca (florian@)

slaacd

  ~ slaacd.h                              

  > leftovers from newd (florian@)

  ~ engine.c                              

  > When free(3)'ing an address_proposal we need to stop the libevent
  > timer.
  > Resulting use-after-free found the hard way by me.
  > Introduce free_address_proposal() to make sure we always do this.
  > While here also stop the interface timer when deleting an interface.
  > (florian@)

  ~ engine.c                              

  > No need for LIST_FOREACH_SAFE, we want to remove exactly one interface
  > and then stop the iteration. get_slaacd_iface_by_id() is perfectly
  > fine for this; we also gain one level of indentation.
  > While here LIST_REMOVE the currently deleted dfr_proposal. (florian@)

  ~ engine.c                              

  > move common debug code to sin6_to_str() (florian@)

wsconsctl

  ~ mouse.c                               

  > Handle the flags of mousecfg fields correctly. (bru@)

== share ============================================================= 08/11 ==

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

man

  ~ man4/man4.octeon/Makefile             + man4/man4.octeon/octcit.4

  > man octcit(4) (visa@)

  ~ man4/man4.octeon/Makefile             + man4/man4.octeon/octxctl.4

  > man octxctl(4) (visa@)

  ~ man4/run.4                            

  > List D-Link DWA-130 rev F1 as a supported run(4) device.
  > Patch by Jacqueline Jolicoeur
  > ok deraadt (stsp@)

  ~ man4/icmp6.4                          

  > Since nearly 20 years the correct spelling of
  > ICMP6_DST_UNREACH_NOTNEIGHBOR is ICMP6_DST_UNREACH_BEYONDSCOPE (RFC
  > 1885 was obsoleted).
  > sthen grepped the ports sources to make sure nothing uses it.
  > OK millert, jca (florian@)

  ~ man4/Makefile                         ~ man4/dwge.4
  + man4/dwmmc.4                          

  > Add dwmmc(4) and update dwge(4). (kettenis@)

  ~ man4/man4.octeon/octcib.4             ~ man4/man4.octeon/octcit.4
  ~ man4/man4.octeon/octciu.4             

  > Xr octeon interrupt controller drivers. (visa@)

  ~ man4/puc.4                            

  > add ASIX AX99100 description
  > ok by jmc@ (uaa@)

misc

  ~ airport                               

  > Add Warsaw Modlin airport (WMI), did a couple of round trips from there
  > during Fall and Winter. (fcambus@)

== sys =============================================================== 09/11 ==

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

arch/amd64/amd64

  ~ vmm.c                                 

  > vmm: support more than 3855MB guest memory
  > guest VMs can now use MAXDSIZ ram.
  > ok deraadt@, stefan@, pd@ (mlarkin@)

arch/amd64/include

  ~ vmmvar.h                              

  > vmm: support more than 3855MB guest memory
  > guest VMs can now use MAXDSIZ ram.
  > ok deraadt@, stefan@, pd@ (mlarkin@)

arch/amd64/stand/efiboot

  ~ conf.c                                ~ efiboot.c

  > Back out previous commit but handle the case where the device path consists
  > of a single MEDIA_DEVICE_PATH component specially to cater for U-Boot's
  > somewhat broken device path handling.  Add comments to prevent confusion
  > in the future.  Bump the version number once again.
  > ok brynet@ (kettenis@)

arch/arm/include

  ~ atomic.h                              

  > Use unsigned long instead of uint32_t, which is the appropriate integer
  > type for storing pointers in our universe.  Avoids an implicit dependence
  > on <sys/types.h>.
  > ok tom@ (kettenis@)

arch/arm64/arm64

  ~ exception.S                           

  > Do not enable fpu until after AST state is checked and processed.
  > ok kettenis@ (drahn@)

  ~ locore0.S                             

  > Fix TCR definitions to avoid integer overflow.  Rename TCR_ASID_16 to
  > TCR_AS
  > to match the official ARM docs.
  > ok patrick@, tom@ (kettenis@)

arch/arm64/include

  ~ armreg.h                              

  > Fix TCR definitions to avoid integer overflow.  Rename TCR_ASID_16 to
  > TCR_AS
  > to match the official ARM docs.
  > ok patrick@, tom@ (kettenis@)

arch/arm64/stand/efiboot

  ~ conf.c                                ~ efiboot.c

  > Back out previous commit but handle the case where the device path consists
  > of a single MEDIA_DEVICE_PATH component specially to cater for U-Boot's
  > somewhat broken device path handling.  Add comments to prevent confusion
  > in the future.  Bump the version number once again.
  > ok brynet@ (kettenis@)

arch/armv7/stand/efiboot

  ~ conf.c                                ~ efiboot.c

  > Back out previous commit but handle the case where the device path consists
  > of a single MEDIA_DEVICE_PATH component specially to cater for U-Boot's
  > somewhat broken device path handling.  Add comments to prevent confusion
  > in the future.  Bump the version number once again.
  > ok brynet@ (kettenis@)

arch/i386/conf

  ~ RAMDISK                               

  > Comment out non-crucial device drivers (xhci(4), wdc@pcmcia, and cd(4)
  > support.  fd+xhci without ehci compat probably doesn't exist, and in
  > the other cases alternatve install methods exist.  This makes i386
  > floppies fit again after routing table changes. (deraadt@)

  ~ files.i386                            

  > Remove duplicated commented out "dev/rasops/files.rasops" include.
  > OK deraadt@ (fcambus@)

arch/loongson/include

  ~ cpu.h                                 

  > Define MAXCPUS per mips64 port. (visa@)

arch/mips64/include

  ~ cpu.h                                 

  > Define MAXCPUS per mips64 port. (visa@)

arch/octeon/conf

  ~ GENERIC                               ~ RAMDISK
  ~ files.octeon                          

  > Add a driver for CIU3. Not quite finished yet, but good enough for now.
  > (visa@)

  ~ GENERIC                               ~ RAMDISK
  ~ files.octeon                          

  > Add a driver for the OCTEON USB3 controller bridge.
  > OK kettenis@, jmatthew@ (visa@)

arch/octeon/dev

  + octcit.c                              

  > Add a driver for CIU3. Not quite finished yet, but good enough for now.
  > (visa@)

  ~ octcib.c                              

  > Assume edge triggering by default for robustness, as is done
  > in octcit(4). (visa@)

  ~ mainbus.c                             

  > Replace OCTEON_MAXCPUS with MAXCPUS to avoid redundancy. (visa@)

  + octxctl.c                             + octxctlreg.h

  > Add a driver for the OCTEON USB3 controller bridge.
  > OK kettenis@, jmatthew@ (visa@)

arch/octeon/include

  ~ cpu.h                                 

  > Define MAXCPUS per mips64 port. (visa@)

  ~ cpu.h                                 ~ octeonvar.h

  > Bump MAXCPUS on octeon. (visa@)

  ~ vmparam.h                             

  > Bump VM_PHYSSEG_MAX. (visa@)

  ~ octeonvar.h                           

  > Replace OCTEON_MAXCPUS with MAXCPUS to avoid redundancy. (visa@)

arch/octeon/octeon

  ~ machdep.c                             

  > Replace OCTEON_MAXCPUS with MAXCPUS to avoid redundancy. (visa@)

arch/sgi/include

  ~ cpu.h                                 

  > Define MAXCPUS per mips64 port. (visa@)

conf

  ~ GENERIC                               ~ files

  > Switch installer to Allotment Routing Table (ART).
  > Prompted by a bugreport by naddy that IPv6 autoconfiguration is broken
  > in the installer.
  > OK mpi, "go for it" deraadt (florian@)

  ~ files                                 

  > Give back some space to the ramdisk by compiling net/radix.c only
  > if we compile pf, ipsec, pipex or nfsserver.
  > Suggested by mpi some time ago.
  > Tweak & OK bluhm
  > deraadt assumes it's fair (florian@)

dev

  ~ rnd.c                                 

  > clang (and newer gcc at high -O) are unaware that objects placed in strange
  > sections, such as __attribute__((section(".openbsd.randomdata"))), may be
  > non-zero.  In combination with "const" or "static" the compiler becomes
  > even
  > more sure nothing can influence the object and assumes the value will be 0.
  > A few optimizations later, a security requirement has been removed.
  > Until a better annotation arrives in compilers, be warned:  Do not mix
  > const or static with these random objects, you won't get what you want.
  > Spotted in a regression test by bluhm, long discussion with kettenis.
  > (deraadt@)

  ~ midi.c                                

  TAGGED OPENBSD_6_1
  > Remove SIGIO support.  The audio(4) driver doesn't implement it either and
  > the preferred method to access MIDI hardware is through sndiod(8) which
  > doesn't use it.
  > Fixes a potential issue with a stale struct proc pointer found by Ilja van
  > Sprundel.
  > errata 015 (bluhm@)

  ~ midi.c                                

  TAGGED OPENBSD_6_0
  > Remove SIGIO support.  The audio(4) driver doesn't implement it either and
  > the preferred method to access MIDI hardware is through sndiod(8) which
  > doesn't use it.
  > Fixes a potential issue with a stale struct proc pointer found by Ilja van
  > Sprundel.
  > errata 015 (deraadt@)

dev/fdt

  ~ xhci_fdt.c                            

  > Add a driver for the OCTEON USB3 controller bridge.
  > OK kettenis@, jmatthew@ (visa@)

  ~ dwmmc.c                               

  > Remove some debug printfs. (kettenis@)

  ~ dwmmc.c                               

  > Fix defenition of reset bits. (kettenis@)

dev/pci

  ~ if_myx.c                              

  > defer init of the myxmcl pool to mountroot, and enable pool cpu caches.
  > pool_cache_init cannot be called during autoconf because we cant
  > be confident about the number of cpus in the machine until the first
  > run of attaches.
  > mountroot is after autoconf, and myx already has code that runs
  > there for the firmware loading.
  > discussed with deraadt@ (dlg@)

  ~ pcidevs                               

  > add ASIX AX99100 device ID
  > ok by deraadt@ (uaa@)

  ~ pcidevs.h                             ~ pcidevs_data.h

  > regen (uaa@)

  ~ pucdata.c                             

  > add ASIX AX99100 support
  > ok by deraadt@ (uaa@)

dev/usb

  ~ xhci.c                                

  > Use memcpy instead of casts to copy 8 bytes of data to avoid unaligned
  > access.
  > ok visa@, mpi@, deraadt@ (kettenis@)

  ~ uhid.c                                

  TAGGED OPENBSD_6_1
  > Remove SIGIO support.  Base tools do not implement it and ports relying
  > on libusbhid, generally via SDL, shouldn't do it either since it's not
  > portable.
  > Suggested by deraadt@ after Ilja van Sprundel reported an issue with a
  > stale struct proc pointer in similar code.
  > errata 015 (bluhm@)

  ~ uhid.c                                

  TAGGED OPENBSD_6_0
  > Remove SIGIO support.  Base tools do not implement it and ports relying
  > on libusbhid, generally via SDL, shouldn't do it either since it's not
  > portable.
  > Suggested by deraadt@ after Ilja van Sprundel reported an issue with a
  > stale struct proc pointer in similar code.
  > errata 029 (deraadt@)

  ~ uhid.c                                

  TAGGED OPENBSD_6_0
  > Remove SIGIO support.  Base tools do not implement it and ports relying
  > on libusbhid, generally via SDL, shouldn't do it either since it's not
  > portable.
  > Suggested by deraadt@ after Ilja van Sprundel reported an issue with a
  > stale struct proc pointer in similar code.
  > errata 029
  > (missed a piece) (deraadt@)

  ~ usbdevs                               

  TAGGED OPENBSD_6_0
  > Add device ID for D-Link DWA-130 rev F.
  > Patch by Jacqueline Jolicoeur
  > ok deraadt (stsp@)

  ~ usbdevs.h                             ~ usbdevs_data.h

  TAGGED OPENBSD_6_0
  > regen (stsp@)

  ~ if_run.c                              

  TAGGED OPENBSD_6_0
  > Match D-Link DWA-130 rev F1 devices. These work with run(4).
  > Patch by Jacqueline Jolicoeur
  > ok deraadt (stsp@)

dev/wscons

  ~ wsdisplay.c                           

  TAGGED OPENBSD_6_1
  > Prevent integer overflow in WSDISPLAYIO_LDFONT ioctl.
  > Issue found by Ilja van Sprundel.
  > errata 024 (bluhm@)

  ~ wsdisplay.c                           

  TAGGED OPENBSD_6_0
  > Prevent integer overflow in WSDISPLAYIO_LDFONT ioctl.
  > Issue found by Ilja van Sprundel.
  > errata 37 (deraadt@)

kern

  ~ vfs_subr.c                            

  > Give back some space to the ramdisk by compiling net/radix.c only
  > if we compile pf, ipsec, pipex or nfsserver.
  > Suggested by mpi some time ago.
  > Tweak & OK bluhm
  > deraadt assumes it's fair (florian@)

  ~ subr_log.c                            

  TAGGED OPENBSD_6_1
  > Both syslog(3) and syslogd(8) truncate the message at 8192 bytes.
  > Do the same in sendsyslog(2).
  > reported by Ilja Van Sprundel
  > errata 016 (bluhm@)

  ~ vfs_getcwd.c                          

  TAGGED OPENBSD_6_1
  > Add some sanity length checks in VFS directory scan.  This protects
  > us from bogus input from file systems like fuse.
  > bug report Ilja Van Sprundel
  > errata 017 (bluhm@)

  ~ uipc_syscalls.c                       

  TAGGED OPENBSD_6_1
  > Move KTRPOINT call up. The lenght variable i is getting aligned and so
  > uninitialised data can be dumped into the ktrace message.
  > Found by Ilja Van Sprundel
  > errata 018 (bluhm@)

  ~ uipc_syscalls.c                       

  TAGGED OPENBSD_6_1
  > When receiving a struct sockaddr from userland, enforce that memory
  > for sa_len and sa_family is provided.  This will make handling of
  > socket name mbufs within the kernel safer.
  > issue reported by Ilja Van Sprundel
  > errata 020 (bluhm@)

  ~ sys_process.c                         

  TAGGED OPENBSD_6_1
  > Uninitialized variable can leak kernel memory.
  > Found by Ilja Van Sprundel
  > errata 021 (bluhm@)

  ~ kern_descrip.c                        

  TAGGED OPENBSD_6_1
  > Initialize a local variable to not leak kernel stack info to userland
  > if TIOCGPGRP fail.
  > Issue found by Ilja van Sprundel.
  > errata 022 (bluhm@)

  ~ uipc_socket.c                         

  TAGGED OPENBSD_6_1
  > If pool_get() sleeps while allocating additional memory for socket
  > splicing, another process may allocate it in the meantime.  Then
  > one of the splicing structures leaked in sosplice().  Recheck that
  > no struct sosplice exists after a protential sleep.
  > reported by Ilja Van Sprundel
  > errata 025 (bluhm@)

  ~ subr_log.c                            

  TAGGED OPENBSD_6_0
  > Both syslog(3) and syslogd(8) truncate the message at 8192 bytes.
  > Do the same in sendsyslog(2).
  > reported by Ilja Van Sprundel
  > errata 30 (deraadt@)

  ~ kern_descrip.c                        

  TAGGED OPENBSD_6_0
  > Initialize a local variable to not leak kernel stack info to userland
  > if TIOCGPGRP fail.
  > Issue found by Ilja van Sprundel.
  > errata 36 (deraadt@)

  ~ sys_process.c                         

  TAGGED OPENBSD_6_0
  > Uninitialized variable can leak kernel memory.
  > Found by Ilja Van Sprundel
  > errata 35 (deraadt@)

  ~ vfs_getcwd.c                          

  TAGGED OPENBSD_6_0
  > Add some sanity length checks in VFS directory scan.  This protects
  > us from bogus input from file systems like fuse.
  > bug report Ilja Van Sprundel
  > errata 031 (deraadt@)

  ~ uipc_socket.c                         

  TAGGED OPENBSD_6_0
  > If pool_get() sleeps while allocating additional memory for socket
  > splicing, another process may allocate it in the meantime.  Then
  > one of the splicing structures leaked in sosplice().  Recheck that
  > no struct sosplice exists after a protential sleep.
  > reported by Ilja Van Sprundel
  > errata 038 (bluhm@)

  ~ uipc_syscalls.c                       

  TAGGED OPENBSD_6_0
  > Move KTRPOINT call up. The lenght variable i is getting aligned and so
  > uninitialised data can be dumped into the ktrace message.
  > Found by Ilja Van Sprundel
  > errata 032 (bluhm@)

  ~ uipc_syscalls.c                       

  TAGGED OPENBSD_6_0
  > When receiving a struct sockaddr from userland, enforce that memory
  > for sa_len and sa_family is provided.  This will make handling of
  > socket name mbufs within the kernel safer.
  > issue reported by Ilja Van Sprundel
  > errata 034 (bluhm@)

  ~ subr_disk.c                           

  TAGGED OPENBSD_6_0
  > Use %hhx instead of %hx to print u_char.  Silences clang warning.
  > ok jca@, florian@ (kettenis@)

net

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

  > Switch installer to Allotment Routing Table (ART).
  > Prompted by a bugreport by naddy that IPv6 autoconfiguration is broken
  > in the installer.
  > OK mpi, "go for it" deraadt (florian@)

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

  > Enable mpath support in the Allotment Routing Table (ART) on the ramdisk.
  > OK mpi (florian@)

  ~ if_spppsubr.c                         

  > Add missing splx().
  > I introduced this bug in 2015 but the splsoftnet()/splx() dance in the
  > upper layer masked it.  Pseudo drivers generally don't need any splnet()
  > protection.
  > Found by Mark Patruck and Andrei-Marius Radu since the NET_LOCK() no longer
  > raise any IPL.
  > Strangely jsg@ confirmed that cppcheck nor coccinelle found the missing
  > splx().
  > ok kettenis@, sthen@, deraadt@ (mpi@)

  ~ if.c                                  

  > rt_if_track() is needed even on ramdisk kernels, because of MPATH
  > ok mpi (deraadt@)

  ~ route.c                               ~ rtsock.c

  > Move a sanity check that only makes sense for userland where it belongs.
  > ok bluhm@, florian@ (mpi@)

  ~ route.h                               ~ rtable.h

  > Fix rtable regression tests. (mpi@)

  ~ if.c                                  

  > When we disable INET6 on an interface that also removes the autoconf6
  > flag.  Notify userland about this via the route socket, otherwise
  > slaacd gets confused about the state the interface is in.
  > OK on a previous version sthen
  > input & OK bluhm (florian@)

  ~ pf.c                                  ~ pf_ioctl.c
  ~ pfvar.h                               ~ pfvar_priv.h

  > Reduce contention on the NET_LOCK() by moving the logic of the pfpurge
  > thread to a task running on the `softnettq`.
  > Tested and inputs from Hrvoje Popovski.
  > ok visa@, sashan@ (mpi@)

net80211

  ~ ieee80211_pae_input.c                 

  TAGGED OPENBSD_6_1
  > Fix length checks in EAPOL key frame parsing.
  > Problem reported by Ilja Van Sprundel.
  > errata 023 (bluhm@)

  ~ ieee80211_ioctl.c                     

  TAGGED OPENBSD_6_1
  > Plug an information leak in ieee80211_node2req().
  > Problem reported by Ilja Van Sprundel.
  > errata 023 (bluhm@)

  ~ ieee80211_pae_input.c                 

  TAGGED OPENBSD_6_0
  > Fix length checks in EAPOL key frame parsing.
  > Problem reported by Ilja Van Sprundel.
  > errata 39 (deraadt@)

  ~ ieee80211_ioctl.c                     

  TAGGED OPENBSD_6_0
  > Plug an information leak in ieee80211_node2req().
  > Problem reported by Ilja Van Sprundel.
  > errata 039 (bluhm@)

  ~ ieee80211_proto.c                     

  TAGGED OPENBSD_6_0
  > Show net80211 state transitions in desmg if 'ifconfig debug' was used.
  > This information is needed in bug reports.
  > Convert the invalid state transitions from panic() to a printf() which is
  > also guarded by ifconfig debug. There are many races exposed by these
  > panics
  > which should all be fixed. But that will surely take some time, and the
  > panics have now served their purpose. Thanks to everyone who reported
  > these panics being triggered, your help is appreciated. (stsp@)

  ~ ieee80211_input.c                     

  TAGGED OPENBSD_6_0
  > Remove ieee80211_input_print() which printed information about received
  > frames to dmesg, if debug mode was enabled with ifconfig.
  > This debug output was much too verbose and not actually useful for
  > debugging.
  > tcpdump -y IEEE802_11_RADIO will show the same information.
  > ok sthen@ (stsp@)

  ~ ieee80211_node.c                      

  TAGGED OPENBSD_6_0
  > Compile a debug printf in ieee80211_match_bss() by default, previously
  > guarded by the IEEE80211_DEBUG preprocessor flag. This shows one line
  > per detected AP after a scan, and indicates which APs are considered
  > candidates for association.
  > Shorten the output a bit to fit into 80 columns more likely.
  > ok sthen@ (stsp@)

netinet

  ~ if_ether.c                            

  > Switch installer to Allotment Routing Table (ART).
  > Prompted by a bugreport by naddy that IPv6 autoconfiguration is broken
  > in the installer.
  > OK mpi, "go for it" deraadt (florian@)

  ~ tcp_usrreq.c                          

  TAGGED OPENBSD_6_1
  > With an invalid address family in the connect address, tcp_usrreq()
  > may take an unintended code path.  Return error EAFNOSUPPORT instead.
  > Found by Ilja Van Sprundel
  > errata 019 (bluhm@)

  ~ tcp_usrreq.c                          

  TAGGED OPENBSD_6_0
  > With an invalid address family in the connect address, tcp_usrreq()
  > may take an unintended code path.  Return error EAFNOSUPPORT instead.
  > Found by Ilja Van Sprundel
  > errata 033 (bluhm@)

  ~ icmp6.h                               

  TAGGED OPENBSD_6_0
  > Since nearly 20 years the correct spelling of
  > ICMP6_DST_UNREACH_NOTNEIGHBOR is ICMP6_DST_UNREACH_BEYONDSCOPE (RFC
  > 1885 was obsoleted).
  > sthen grepped the ports sources to make sure nothing uses it.
  > OK millert, jca (florian@)

  ~ ip_input.c                            

  TAGGED OPENBSD_6_0
  > We do have SO_TIMESTAMP since some time and there is other code in the
  > kernel that uses it without the #ifdef guard.
  > OK bluhm (florian@)

  ~ in_pcb.c                              

  TAGGED OPENBSD_6_0
  > The in_pcbhashlookup() in in_pcbconnect() enforces that the 4 tupel
  > of src/dst ip/port is unique for TCP.  But if the socket is not
  > bound, the automatic bind by connect happens after the check.  If
  > the socket has the SO_REUSEADDR flag, in_pcbbind() may select an
  > existing local port.  Then we had two colliding TCP PCBs.  This
  > resulted in a packet storm of ACK packets on loopback.  The softnet
  > task was constantly holding the netlock and has a high priority,
  > so the system hung.
  > Do the in_pcbhashlookup() again after in_pcbbind().  This creates
  > sporadic "connect: Address already in use" errors instead of a hang.
  > bug report and testing Olivier Antoine; OK mpi@ (bluhm@)

netinet6

  ~ icmp6.c                               

  > RFC 1885 was obsoleted nearly 20 years ago by RFC 2463 which was obsoleted
  > over 10 years ago by RFC 4443. We are probably not going back.
  > OK deraadt, jca (florian@)

  ~ ip6_input.c                           

  > We do have SO_TIMESTAMP since some time and there is other code in the
  > kernel that uses it without the #ifdef guard.
  > OK bluhm (florian@)

  ~ in6_pcb.c                             

  > The in_pcbhashlookup() in in_pcbconnect() enforces that the 4 tupel
  > of src/dst ip/port is unique for TCP.  But if the socket is not
  > bound, the automatic bind by connect happens after the check.  If
  > the socket has the SO_REUSEADDR flag, in_pcbbind() may select an
  > existing local port.  Then we had two colliding TCP PCBs.  This
  > resulted in a packet storm of ACK packets on loopback.  The softnet
  > task was constantly holding the netlock and has a high priority,
  > so the system hung.
  > Do the in_pcbhashlookup() again after in_pcbbind().  This creates
  > sporadic "connect: Address already in use" errors instead of a hang.
  > bug report and testing Olivier Antoine; OK mpi@ (bluhm@)

  ~ nd6.c                                 

  > Since we have TAILQ_FOREACH_SAFE in nd6_purge() it is not necessary
  > that nd6_free() advances the next pointer itself.  Make nd6_free()
  > a void function and remove unused parameter gc.
  > OK florian@ millert@ (bluhm@)

  ~ in6.c                                 ~ in6_var.h

  > in6_leavegroup can't fail; OK phessler (florian@)

  ~ nd6.c                                 

  > Reduce contention on the NET_LOCK() by moving the nd6 address expiration
  > task to the `softnettq`.
  > While here update comments and names to reflect reality after the removal
  > of router and prefix lists.
  > ok florian@, bluhm@ (mpi@)

sys

  ~ tree.h                                

  > mark __inline functions which are not neccessarily used, with __unused.
  > ok espie florian kettenis (deraadt@)

== usr.bin =========================================================== 10/11 ==

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

ftp

  ~ complete.c                            

  > Remove self assignment.
  > ok deraadt@ (anton@)

less

  ~ pattern.c                             ~ search.c

  > When performing an inverted search in less, make sure to invalidate the
  > match
  > bounds prior calling regexec(). In this inverted scenario a match is found
  > when
  > regexec() returns false causing the bounds to not be updated. This is
  > problematic since the bounds will then refer to a previous match and future
  > pointer arithmetic will eventually be off which is manifested in a SIGSEGV.
  > Issue reported by Larry Hynes on tech@
  > ok martijn@ tb@ (anton@)

make

  ~ make.1                                

  > Remove outdated count of the number of available assignment operators.
  > While here, add a missing paragraph.
  > ok jmc@ (anton@)

mandoc

  ~ man_term.c                            ~ mdoc_validate.c

  > Fix an out of bounds read access to a constant array that caused
  > segfaults on certain hardened versions of glibc.  Triggered by .sp
  > or blank lines right before .SS or .SH, or before the first .Sh.
  > Found the hard way by Dr. Markus Waldner on Debian
  > and by Leah Neukirchen on Void Linux. (schwarze@)

  ~ tbl_html.c                            ~ tbl_term.c

  > Ignore explicitly specified negative column widths rather than
  > wrapping around to huge numbers and risking memory exhaustion;
  > fixes Debian ps(1).  Bug reported by Dr. Markus Waldeck. (schwarze@)

  ~ mansearch.c                           ~ mdoc_validate.c

  > No longer use names that only occur in the SYNOPSIS section as names
  > for man(1) lookup.  For OpenBSD base and Xenocara, that functionality
  > was never intended to be required, and i just fixed the last handful
  > of offenders using it - not counting the horribly ill-designed
  > interfaces engine(3) and lh_new(3) which are impossible to properly
  > document in the first place.
  > Of course, apropos(1) and whatis(1) continue to use SYNOPSIS .Nm,
  > .Fn, and .Fo macros, so "man -k ENGINE_get_load_privkey_function"
  > still works.
  > This change also gets rid of a few bogus warnings "cross reference
  > to self" which actually are *not* to self, like in yp(8).
  > This former functionality was intended to help third-party software
  > in the ports tree and on non-OpenBSD systems containing manual pages
  > with incomplete or corrupt NAME sections.  But it turned out it did
  > more harm than good, and caused more confusion than relief,
  > specifically for third party manuals and for maintainers of
  > mandoc-portable on other operating systems.  So kill it.
  > Problems reported, among others, by Yuri Pankov (illumos).
  > OK jmc@ (schwarze@)

mg

  ~ buffer.c                              ~ re_search.c
  ~ search.c                              ~ tags.c

  > Present the default choice before the colon in prompts. Matches GNU Emacs
  > behavior.
  > From Scott Cheloha <scottchel...@gmail.com>
  > ok florian@ (bcallah@)

sed

  ~ compile.c                             ~ extern.h
  ~ main.c                                

  > Apply stricter pledge rules if possible. These are based on the usage of
  > the 'w' and 'r' functions and the 'w' flag to the 's' function.
  > If non of the above is used and input is being read from stdin, we drop
  > all the way down to stdio!
  > Original inspiration by benno@.
  > OK millert@ (martijn@)

systat

  ~ pool.c                                

  > print the number of GCs with print_fld_size instead of print_fld_uint.
  > this makes a large number of GCs appear as something like "26K"
  > instead of "*". (dlg@)

tmux

  ~ format.c                              ~ tmux.1
  ~ tmux.h                                ~ window-copy.c

  > Add selection_present format so commands in copy mode can use it, GitHub
  > issue 1028. (nicm@)

units

  ~ units.lib                             

  > update currency exchange rates; (jmc@)

vi

  ~ common/options.c                      

  > Silence some warnings generated by clang.
  > Original diff by espie@ with some minor tweaks by myself.
  > OK espie@ and florian@ (martijn@)

== usr.sbin ========================================================== 11/11 ==

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

bgpd

  ~ bgpd.h                                

  > add a zeroed out element at the end of the iana_ext_comms array, so
  > that the iteration over it actually stops.
  > ok and feedback from florian@ phessler@ and claudio@ (benno@)

  ~ bgpd.h                                

  > Remove comma from last element since that is the terminator. (claudio@)

dhcpd

  ~ dhcpd.h                               

  > Removed unused struct, also noticed by Edgar Pettijohn. ok jca@, krw@
  > (rob@)

  ~ dhcpd.h                               

  > Remove unused structs and defines, from Edgar Pettijohn. ok jca@ (rob@)

httpd

  ~ server_fcgi.c                         

  > Don't set HTTP date header if already set.
  > Thanks Nick Owens
  > OK florian@ (ians@)

ifstated

  ~ ifstated.c                            

  > Improve error checking during processing of routing messages. Handling of
  > RTM_DESYNC encouraged by deraadt. ok jca@ benno@ (rob@)

pkg_add

  ~ OpenBSD/PkgInfo.pm                    

  > Make -Q work play nice with other flags. This makes things like:
  > "pkg_info -Q quake -d" function as expected.
  > OK landry@ (abieber@)

  ~ OpenBSD/PackageRepository.pm          ~ OpenBSD/PackageRepository/HTTP.pm

  > Adjust the html index-parsing regex to cope with anchor tags that aren't
  > just '<a href="foo">'; several mirrors now include a title attribute which
  > pkg_add can't cope with.
  > Diff from Taylor Stearns to handle attributes following the href; tweaked
  > by me to also handle attribute before the href.
  > ok zhuk@ (sthen@)

  ~ OpenBSD/PkgInfo.pm                    

  > Only call find_pkg when we are using other options with -Q.
  > This resolves the speed issues Michael Reed <mich...@michaelreed.io>
  > reported that were introduced by my changes in 1.45.
  > OK landry@ (abieber@)

relayd

  ~ relay.c                               

  > Fix a double free of the TLS config in the error path.
  > OK claudio@ (bluhm@)

smtpd

  ~ parser.c                              

  > cmd_dump() is unused
  > spotted by deraadt (gilles@)

  ~ mda.c                                 

  > handle empty output correctly in mda_getlastline()
  > diff from Casper Ti. Vector, ok eric@ (gilles@)

  ~ smtpd.h                               

  > the PURGE_EVERYTHING flag used to purge config bits was inaccurate
  > ok eric@ (gilles@)

  ~ envelope.c                            

  > a long time ago, we made a change to the format of envelopes and introduced
  > a function to upgrade from v1 to v2 on the fly. this was meant to stay just
  > for the transition in one release. 3 years and 8 months later, it's finally
  > time we remove it ;-)
  > ok eric@, sunil@ (gilles@)

switchctl

  ~ parser.c                              

  > #if 0 unused chunk for now (deraadt@)

switchd

  ~ packet.c                              ~ parse.y

  > packet.c and parse.y no longer require err.h. ok jca@ florian@ (rob@)

syspatch

  ~ syspatch.sh                           

  > `-R' requires root privileges. (ajacoutot@)

  ~ syspatch.sh                           

  > If syspatch is updating itself, exit after installing the new syspatch to
  > stop installing further patches and warn the user he needs to run it again
  > (so that it'll run with the new code). (ajacoutot@)

  ~ syspatch.sh                           

  > For the kernel binpatches, only deal with /bsd. On MP machines we do have
  > /bsd.sp by default for now but it maybe de-selected during the installation
  > and
  > the opposite is true for SP machines (MP is *not* installed but may end up
  > being selected for installation). Having to deal with this is too error
  > prone.
  > This makes things much simpler and less confusing.
  > If you have a machine that goes from MP to SP or vice-versa, just
  > `syspatch -R && syspatch' so the proper kernel is updated. (ajacoutot@)

  ~ syspatch.sh                           

  > Only run mtree if we install a patch. (ajacoutot@)

traceroute

  ~ worker.c                              

  > Since nearly 20 years the correct spelling of
  > ICMP6_DST_UNREACH_NOTNEIGHBOR is ICMP6_DST_UNREACH_BEYONDSCOPE (RFC
  > 1885 was obsoleted).
  > sthen grepped the ports sources to make sure nothing uses it.
  > OK millert, jca (florian@)

vmd

  ~ virtio.c                              

  > vmd: report queue size of 0 when invalid queues are requested by the guest
  > Diff supplied by Nick Owens, who was kind enough to also point out the
  > virtio spec section numbers that defined this behaviour. (mlarkin@)

===============================================================================
_______________________________________________
owc mailing list
owc@squish.net
http://www.squish.net/mailman/listinfo/owc

Reply via email to