OpenBSD src changes summary for 2017-04-02 to 2017-04-09 inclusive ==================================================================
distrib/miniroot distrib/notes distrib/sets etc/etc.alpha/Makefile.inc etc/etc.amd64/Makefile.inc etc/etc.arm64/Makefile.inc etc/etc.armv7/Makefile.inc etc/etc.hppa/Makefile.inc etc/etc.i386/Makefile.inc etc/etc.landisk/Makefile.inc etc/etc.loongson/Makefile.inc etc/etc.luna88k/Makefile.inc etc/etc.macppc/Makefile.inc etc/etc.sgi/Makefile.inc etc/etc.socppc/Makefile.inc etc/etc.sparc64/Makefile.inc etc/netstart games/hack games/hunt gnu/usr.bin/binutils gnu/usr.bin/binutils-2.17 lib/libc lib/libcompiler_rt lib/libcrypto lib/libcxxabi lib/libtls libexec/comsat libexec/spamd regress/lib regress/usr.sbin sbin/bioctl sbin/dhclient sbin/ifconfig sbin/isakmpd sbin/shutdown sbin/wsconsctl share/man sys/arch/amd64/amd64 sys/arch/arm64/arm64 sys/arch/arm64/dev sys/arch/i386/i386 sys/arch/loongson/loongson sys/arch/mips64/include sys/arch/mips64/mips64 sys/arch/octeon/dev sys/arch/octeon/include sys/arch/octeon/octeon sys/arch/sgi/sgi sys/arch/sparc64/sparc64 sys/conf sys/dev/acpi sys/dev/i2c sys/dev/ic sys/dev/onewire sys/dev/pci sys/dev/sdmmc sys/dev/usb sys/dev/wscons sys/kern sys/net sys/net80211 sys/netinet sys/netinet6 sys/ntfs sys/sys sys/uvm usr.bin/doas usr.bin/grep usr.bin/less usr.bin/nc usr.bin/ssh usr.bin/systat usr.bin/tmux usr.bin/unifdef usr.bin/units usr.sbin/dhcrelay usr.sbin/httpd usr.sbin/iscsid usr.sbin/ldapd usr.sbin/makefs usr.sbin/pkg_add usr.sbin/rebound usr.sbin/relayd usr.sbin/rtadvd usr.sbin/sasyncd usr.sbin/smtpd usr.sbin/snmpd usr.sbin/syslogd usr.sbin/syspatch usr.sbin/vmctl usr.sbin/vmd usr.sbin/wsfontload == distrib =========================================================== 01/12 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/distrib miniroot ~ install.sub > Ensure, that during upgrades, the default for the "Location of sets" > question is set to http if /etc/installurl exists and override the > install method information from the cgi server. > 'makes sense' deraadt@ (rpe@) ~ install.sub > Extend the information shown by diskinfo() to help to identify > disks. Extract the disk information enclosed in <> and the NAA > from the last matching dmesg line. Useful if there are multiple > identically sized disk of the same type. > Suggested by jirib at devio dot us > Discussed with deraadt@ (rpe@) ~ install.sub > Align comments of stripcom() function in netstart and install.sub. (rpe@) ~ install.sub > Sync variable names with netstart version of stripcom(). > Use $_file variable instead of $1 with the wile-loop. (rpe@) ~ install.sub > Align comments of ifstart() function in netstart and install.sub. (rpe@) ~ install.sub > Minimize differences in ifstart() function between netstart and > install.sub which makes it easier to spot changes in the future. > - comments and formatting > - quotes on assignments are not needed (netstart) > - remove stray space in test (netstart) > - use $file variable with while-loop (netstart) > - although valid, instead of i use $i in arithmetic test (install.sub) > OK krw@, tb@ > Looks good deraadt@ (rpe@) notes ~ arm64/hardware > add overdrive 1000 (jsg@) sets ~ lists/base/mi > sync (deraadt@) == etc =============================================================== 02/12 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/etc etc.alpha/Makefile.inc ~ etc.alpha/Makefile.inc > cp -p the bootblocks to RELEASEDIR; ok tb (deraadt@) etc.amd64/Makefile.inc ~ etc.amd64/Makefile.inc > cp -p the bootblocks to RELEASEDIR; ok tb (deraadt@) etc.arm64/Makefile.inc ~ etc.arm64/Makefile.inc > cp -p the bootblocks to RELEASEDIR; ok tb (deraadt@) etc.armv7/Makefile.inc ~ etc.armv7/Makefile.inc > cp -p the bootblocks to RELEASEDIR; ok tb (deraadt@) etc.hppa/Makefile.inc ~ etc.hppa/Makefile.inc > cp -p the bootblocks to RELEASEDIR; ok tb (deraadt@) etc.i386/Makefile.inc ~ etc.i386/Makefile.inc > cp -p the bootblocks to RELEASEDIR; ok tb (deraadt@) etc.landisk/Makefile.inc ~ etc.landisk/Makefile.inc > cp -p the bootblocks to RELEASEDIR; ok tb (deraadt@) etc.loongson/Makefile.inc ~ etc.loongson/Makefile.inc > cp -p the bootblocks to RELEASEDIR; ok tb (deraadt@) etc.luna88k/Makefile.inc ~ etc.luna88k/Makefile.inc > cp -p the bootblocks to RELEASEDIR; ok tb (deraadt@) etc.macppc/Makefile.inc ~ etc.macppc/Makefile.inc > cp -p the bootblocks to RELEASEDIR; ok tb (deraadt@) etc.sgi/Makefile.inc ~ etc.sgi/Makefile.inc > cp -p the bootblocks to RELEASEDIR; ok tb (deraadt@) etc.socppc/Makefile.inc ~ etc.socppc/Makefile.inc > cp -p the bootblocks to RELEASEDIR; ok tb (deraadt@) etc.sparc64/Makefile.inc ~ etc.sparc64/Makefile.inc > cp -p the bootblocks to RELEASEDIR; ok tb (deraadt@) netstart ~ netstart > Align comments of stripcom() function in netstart and install.sub. (rpe@) ~ netstart > Align comments of ifstart() function in netstart and install.sub. (rpe@) ~ netstart > Minimize differences in ifstart() function between netstart and > install.sub which makes it easier to spot changes in the future. > - comments and formatting > - quotes on assignments are not needed (netstart) > - remove stray space in test (netstart) > - use $file variable with while-loop (netstart) > - although valid, instead of i use $i in arithmetic test (install.sub) > OK krw@, tb@ > Looks good deraadt@ (rpe@) ~ netstart > - localize the if, file and stat variables which also ensures that > variables are not named like commands. > - change test from [] to [[]] > OK tb@ halex@ (rpe@) == games ============================================================= 03/12 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/games hack ~ hack.end.c > snprintf() format string should be literal > avoid compiler silly warnings > sure deraadt@ (gsoares@) hunt ~ hunt/hunt.c > format string is better be literal > OK deraadt (gsoares@) == gnu =============================================================== 04/12 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/gnu usr.bin/binutils ~ gdb/amd64obsd-tdep.c ~ gdb/i386obsd-tdep.c > Sync symbol lists for trap/interrupt frame detection with what ddb(4) uses > ok deraadt@ (guenther@) usr.bin/binutils-2.17 ~ bfd/archive64.c > Fix an out-of-bounds memory access with 64-bit armaps. > OK kettenis@ (visa@) == lib =============================================================== 05/12 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/lib libc ~ sys/recv.2 > Add caveat telling it's better to always read a data byte when passing > control messages. > Problem noted by Luke Small; ok deraadt@ (otto@) ~ sys/recv.2 > tweak previous; (jmc@) ~ sys/mmap.2 > Not all devices support mmap, document EINVAL in this case too. > OK deraadt@ (millert@) ~ stdlib/malloc.c > first print size in meta-data then supplied arg size when an inconsistency > is > detected wrt recallocarray() (otto@) ~ stdlib/malloc.3 > Consistentcy between nmembers and size order. From Christopher Hettrick; > ok deraadt@ (otto@) libcompiler_rt ~ Makefile > Add a few missing quad-precision support functions on arm64 and reorder the > list to match what's in CMakeLists.txt. > ok sthen@ (kettenis@) libcrypto ~ asn1/t_x509.c > Fix silly code that printfs NULL when there are no fractional seconds > on a GENREALIZEDTIME (which there should really never be for anything > remotely standards compliant) > ok jsing@ (beck@) ~ opensslv.h TAGGED OPENBSD_6_1 > bump version for stable release (bcook@) ~ opensslv.h TAGGED OPENBSD_6_1 > bump version for new development branch (bcook@) ~ bio/bio.h TAGGED OPENBSD_6_1 > trailing ; on end of macro definition is wrong; ok guenther (deraadt@) ~ buffer/buf_str.c TAGGED OPENBSD_6_1 > Explicitly test for NULL. > ok beck@ (jsing@) ~ buffer/buffer.c TAGGED OPENBSD_6_1 > With recallocarray() BUF_MEM_grow() is essentially the same as > BUF_MEM_grow_clean() (the only difference is clearing on internal down > sizing), so make it a wrapper. > ok beck@ deraadt@ (jsing@) ~ buffer/buffer.c TAGGED OPENBSD_6_1 > Simplify/clean up BUF_MEM_grow_clean(). > ok beck@ (jsing@) libcxxabi ~ Makefile > Compile C code with -funwind-tables. Fixes exception handling on > architectures > that don't generate .eh_frame info by default such as arm64. > ok jsg@ (kettenis@) libtls ~ Symbols.list ~ tls.c ~ tls_config.c ~ tls_conninfo.c ~ tls_internal.h > Internal changes to allow for relayd engine privsep. sends the hash of the > public key as an identifier to RSA, and adds an function for relayd to > use to disable private key checking when doing engine privsep. > ok jsing@ (beck@) ~ Symbols.list ~ shlib_version ~ tls.c ~ tls.h ~ tls_conninfo.c ~ tls_internal.h ~ tls_peer.c > Add tls_peer_cert_chain_pem - To retreive the peer certificate and chain > as PEM format. This allows for it to be used or examined with tools > external to libtls > bump minor > ok jsing@ (beck@) ~ tls_internal.h > Use uint8_t instead of u_int8_t - for consistency and to make things easier > for portable. > From Raphael Hittich. (jsing@) == libexec =========================================================== 06/12 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/libexec comsat ~ comsat.c > Prefer pread() over lseek()+read() > open() only needs the mode argument if O_CREAT is present > ok beck@ deraadt@ (guenther@) ~ comsat.c > use recallocarray() because the array contains data that can be observed > (deraadt@) ~ comsat.c > check return from pread, don't divide -1 for count (tedu@) spamd ~ spamd.8 > note that some hosts never generate tuples and are ignored; > ok beck (jmc@) ~ spamd.c > fix missing \ on \n, spotted by Edgar Pettijohn (beck@) == regress =========================================================== 07/12 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/regress lib ~ libtls/gotls/tls.go > In ssl.h TLS 1.0 is called TLSv1. Adapt name in test to make it pass. > OK jsing@ (bluhm@) ~ libtls/gotls/tls.go > Improve unknown protocol version handling. (jsing@) usr.sbin ~ syslogd/args-client-tcp-close.pl ~ syslogd/args-client-tcp-error.pl ~ syslogd/args-client-tcp.pl ~ syslogd/args-client-tls-close.pl ~ syslogd/args-client-tls-error.pl ~ syslogd/args-client-tls-fake.pl ~ syslogd/args-client-tls-tcp.pl ~ syslogd/args-client-tls.pl ~ syslogd/args-dropped-sighup-tcp.pl ~ syslogd/args-dropped-sighup-tls.pl ~ syslogd/args-dropped-sigterm-tcp.pl ~ syslogd/args-dropped-sigterm-tls.pl ~ syslogd/args-dropped-tcp.pl ~ syslogd/args-dropped-tls.pl ~ syslogd/args-error.pl ~ syslogd/args-fdexhaustion-tcp.pl ~ syslogd/args-maxhostlen.pl ~ syslogd/args-maxloghostlen.pl ~ syslogd/args-maxportlen.pl ~ syslogd/args-proto-invalid.pl ~ syslogd/args-proto-udp4-host6.pl ~ syslogd/args-proto-udp4-only6.pl ~ syslogd/args-proto-udp6-host4.pl ~ syslogd/args-proto-udp6-only4.pl ~ syslogd/args-rsyslog-client-tcp.pl ~ syslogd/args-rsyslog-client-tls.pl ~ syslogd/args-server-tcp-close.pl ~ syslogd/args-server-tcp-error.pl ~ syslogd/args-server-tcp-reconnect.pl ~ syslogd/args-server-tls-client-fake.pl ~ syslogd/args-server-tls-close.pl ~ syslogd/args-server-tls-error.pl ~ syslogd/args-server-tls-reconnect.pl ~ syslogd/args-server-tls-tcp.pl ~ syslogd/args-sigterm.pl ~ syslogd/args-sync-tcp.pl ~ syslogd/args-tls-cafile-default.pl ~ syslogd/args-tls-cafile-empty.pl ~ syslogd/args-tls-cafile-fake.pl ~ syslogd/args-tls-cafile-noexist.pl ~ syslogd/args-tls-cafile-toobig.pl ~ syslogd/args-tls-cert-empty.pl ~ syslogd/args-tls-cert-noexist.pl ~ syslogd/args-tls-cipher-null.pl ~ syslogd/args-tls-host-bad.pl ~ syslogd/args-tls-key-empty.pl ~ syslogd/args-tls-key-noexist.pl > Syslogd's debug and error messages have changed a bit, adapt test. (bluhm@) ~ syslogd/args-selector.pl ~ syslogd/funcs.pl + syslogd/args-selector-syslog.pl > Check that local syslog messages have the the expected priority. (bluhm@) ~ syslogd/args-selector-syslog.pl ~ syslogd/args-sighup-config.pl ~ syslogd/args-sighup.pl ~ syslogd/funcs.pl > Adapt test to new syslogd's local message priority. (bluhm@) == sbin ============================================================== 08/12 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/sbin bioctl ~ bioctl.8 > less chatty EXAMPLES; from anton lindqvist (jmc@) dhclient ~ parse.c > Change parse_string() warning from "filename must be a string" to > "expecting a string". Things other than filenames are parsed here. (krw@) ~ clparse.c ~ parse.c > Tweak 'expecting' parse_warn() messages to be more consistent. (krw@) ~ clparse.c ~ parse.c > Tweak parse_string() to not consume the ';'. Simplifies/shortens > some logic. (krw@) ~ conflex.c ~ parse.c > Simplify read_string() to just read the characters between the '"'s. > Push the un-vising up to parse_string(). This allows both the actual > string and the un-vised version to be available as desired. Use > memcpy() instead of strdup() to copy un-vised string since it may > legitimately contain NUL. (krw@) ~ clparse.c ~ dhcpd.h ~ parse.c > Change parse_string() to take an optional integer pointer that can > be used to return the final size of the parsed (i.e. un-vis'ed) > string. Use same, plus memcpy() to ensure entire final string is > copied to intended destination even if there are embedded NULs. (krw@) ~ clparse.c ~ dhclient.c ~ dhcpd.h > Treat SSID's like the 0 to 32 bytes of uint8_t data that they really > are. Track and use the actual lengths and use memcpy()/memcmp() > instead of strcmp()/strdup(). (krw@) ~ dhclient.c ~ dhcpd.h ~ dispatch.c > Send a RTM_PROPOSAL to clear out other dhclient instances on startup. > Replaces forcing interface link state down and up to generate > RTM_IFINFO messages. (krw@) ~ dhcpd.h ~ dispatch.c ~ kroute.c > Shuffle sendhup() into dispatch.c, the only place it is used. (krw@) ~ Makefile > Inspired by recent dhcrelay(8) changes add some stricter CFLAGS. No code > changes needed (yet). (krw@) ~ dhclient.c ~ dhcpd.h ~ options.c > Simply decoding of domain search option. No intentional functional > change. (krw@) ~ dhclient.c ~ dhcpd.h ~ options.c > Replace a mess of snprintf() dances with easier to read code using > strlcat(). Shorter, clearer, fewer signed vs unsigned questions. > Shrink static buffer for the string version of an option value from > 32K to 8K. Since the string version of the entire lease is constructed > in a 8K buffer, bigger option values are pointless. > Use 8K of the saved space for a static buffer for pretty_print_string() > and use it rather scribbling intermediate values into the final > destination. > No intentional functional change. (krw@) ~ dhcpd.h ~ options.c > Replace another snprintf() dance with easier to read code using > strlcat(). Shorter, clearer, fewer signed vs unsigned questions. > Use an 8K static buffer for pretty_print_classless() and use it > rather scribbling intermediate values into the final destination. > No intentional functional change. (krw@) ~ clparse.c ~ conflex.c ~ dhclient.c ~ dhcpd.h ~ kroute.c ~ options.c ~ packet.c ~ parse.c > Reduce the overburden of signed vs unsigned comparisons by sprinkling > 'int' -> 'unsigned int' (and visa versa) where obvious. > Steal a couple of 'unsigned' -> u_int32_t from reyk@'s dhcrelay > tweaks. > No intentional functional change. (krw@) ~ Makefile ~ conflex.c ~ dhclient.c ~ kroute.c ~ options.c ~ parse.c > Seven casts, a couple of tweaks and CFLAGS+=-Wsign-compare for the > win. > No intentional functional change. (krw@) ifconfig ~ ifconfig.8 > various improvements, from klemens nanni; > i've omitted hunk 3 of his diff, as what's there now is correct; > ok mikeb (jmc@) isakmpd ~ field.c > Check return value of asprintf(), and don't use 0 as a char * > Started by, and ok, deraadt@ (tom@) shutdown ~ shutdown.c > warn format string should be literal. > OK deraadt@, millert@ (fcambus@) wsconsctl ~ wsconsctl.8 ~ wsconsctl.c > document -=; while here, simplify things so that we don;t add a separate > usage every time we think of a new way to use this; > -= bits from anton lindqvist > ok tb tom (jmc@) == share ============================================================= 09/12 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/share man ~ man3/CMSG_DATA.3 > Send and receive 1 byte of data in addition to the control message. This is > needed to make the code work in more cases. > Sending actually is not really needed, but do it anyway, to avoid confusing > mismatch between producer and consumer. > Problem noted by Luke Small; ok deraadt@ (otto@) ~ man4/inet6.4 > shuffle for a saner read; help/ok bluhm (jmc@) ~ man5/port-modules.5 > Document the devel/meson MODULE. (ajacoutot@) == sys =============================================================== 10/12 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/sys arch/amd64/amd64 ~ vmm.c > Filter out RDTSCP, needed to handle solaris guests. We set the VMX control > to enable RDTSCP to 0, so when solaris attempted to use the instruction > (since it wasn't filtered out of CPUID information), the CPU issued an > #UD exception. (mlarkin@) arch/arm64/arm64 ~ pmap.c > On ARMv8, the translation table walk is fully coherent so there is no > reason to explicitly flush the cache before invalidating the TLB. The > barrier that is included in out TLB flushing code should be enough to > guarantee that the TLB walking hardware sees the updated page table > contents, so the explicit barriers can go as well. Sanitize the code > immediately surrounding the removed bits while I'm there. > Tested by jsg@, ok drahn@, visa@ (kettenis@) ~ pmap.c > Cleanup the code further. Get rid of the remaining C++-style comments, > remove some debug printfs, get rid of STATIC and __inline defines and > remove a bit more unused code. > ok drahn@, visa@ (kettenis@) arch/arm64/dev ~ ampintc.c > Bring over the changes I made to the armv7 version of this driver such that > interrupts are correctly routed to the boot cpu if that isn't the one > connected to CPU interface zero on the interrupt controller. > ok patrick@ (kettenis@) ~ pciecam.c > For legacy interrupt use the tag of the topmost bridge to establish the > interrupt. We already correctly swizzle the pin. > ok patrick@ (kettenis@) arch/i386/i386 ~ trap.c > Remove some #if 0 code that dates back to r1.1 > Pointed out by Michael W. Bombardieri (mlarkin@) arch/loongson/loongson ~ machdep.c > printf format strings should be literals. Reminded by clang. (visa@) arch/mips64/include ~ cpu.h > Add prid for CN72xx/CN73xx. (visa@) arch/mips64/mips64 ~ context.S > Bring back the wait instruction into the idle loop, but only on octeon. > This lets an idle SoC run a bit cooler. > Tested on CN5020, CN6120 and CN7130. (visa@) ~ cpu.c > Add prid for CN72xx/CN73xx. (visa@) arch/octeon/dev ~ if_cnmac.c > Drop address conversion cruft. (visa@) ~ octeon_intr.c > Extend the fdt interrupt API a little. (visa@) ~ octmmc.c > Use the correct interrupt disestablish routine. (visa@) ~ cn30xxgmx.c ~ cn30xxgmxreg.h > Make network ports work on Shasta. (visa@) arch/octeon/include ~ intr.h > Extend the fdt interrupt API a little. (visa@) ~ autoconf.h > Make SoC version available in a simple form. (visa@) ~ octeon_model.h > Add prid for CN72xx/CN73xx. (visa@) arch/octeon/octeon ~ machdep.c > printf format strings should be literals. Reminded by clang. (visa@) ~ locore.S > Compute address for ll/sc only once. (visa@) ~ machdep.c > Make SoC version available in a simple form. (visa@) ~ machdep.c > Add prid for CN72xx/CN73xx. (visa@) arch/sgi/sgi ~ machdep.c > printf format strings should be literals. Reminded by clang. (visa@) arch/sparc64/sparc64 ~ lock_machdep.c > Issue memory barrier before lock release, not after. This ensures > the release write becomes globally visible only after any writes > of the critical section are globally visible. In practice, the > reordering has not happened because the kernel runs in the total > store order mode. > Tested by and OK kettenis@ (visa@) conf ~ newvers.sh > unlock tree, we are now hacking on 6.1-current (deraadt@) ~ GENERIC > re-enable POOL_DEBUG after the release; ok deraadt@ (naddy@) dev/acpi ~ acpitz.c > normalize order of arguments to if () (deraadt@) ~ acpicpu.c > Simplify the size calculation for memset() > From Anton Lindqvist (anton.lindqvist(at)gmail.com) (guenther@) ~ acpi.c ~ acpivar.h ~ dsdt.c > Two prototypes for acpi_maptable; merge to one place (deraadt@) ~ acpi.c > Sensors are run as callbacks inside tasks. During suspend a sensor > could be running inside a driver that will be force-detached, or due > to tsleep end up disrupting the softstate/hardstate contract. At > suspend time, quisce all these callbacks by waiting for completion. > This issue has never been observed for real, but may be implicated in > suspend/resume failures. > ok kettenis guenther mlarkin (deraadt@) dev/i2c ~ ihidev.c > A pile of sizes to free(9). In test for a few days in snapshots. > Errors will result in nice clean panic messages so we know what's wrong. > Reviewed by dhill visa natano jsg. (deraadt@) dev/ic ~ malo.c > add a free() size near microcode loading (deraadt@) ~ aac.c ~ ami.c ~ i82365.c ~ nvme.c ~ rtw.c > A pile of sizes to free(9). In test for a few days in snapshots. > Errors will result in nice clean panic messages so we know what's wrong. > Reviewed by dhill visa natano jsg. (deraadt@) ~ aac.c ~ adw.c ~ ath.c > Convert some malloc(9) to mallocarray(9) > ok deraadt@ (dhill@) dev/onewire ~ onewire.c > provide size to free(9) (deraadt@) dev/pci ~ if_iwm.c ~ if_iwmreg.h > Add 8265 and 3168 support. Both cards need new firmware files which > currently > need to be installed by hand until the iwm-firmware package has been > updated. > This includes handling (by ignoring) of IWM_UCODE_TLV_FW_MEM_SEG and > IWM_DEBUG_LOG_MSG firmware commands. Mostly stolen from dragonflybsd. > With this in the X270 has working ethernet and wifi. > Commit! deraadt@ (claudio@) ~ if_nxe.c ~ if_wpi.c ~ if_wpivar.h ~ mfii.c ~ mpii.c > A pile of sizes to free(9). In test for a few days in snapshots. > Errors will result in nice clean panic messages so we know what's wrong. > Reviewed by dhill visa natano jsg. (deraadt@) ~ if_msk.c ~ if_skreg.h > Use ADDR64 opcodes to specify 64bit DMA addresses for all buffers. This > consumes two ring entries per segment, halving the effective size of the > rings, but keeps things simple. This is required for the onboard nic > on the Overdrive 1000 to work. > ok kettenis@, tested on i386 by jsg@ (jmatthew@) ~ azalia.c ~ if_dc_pci.c ~ if_nep.c > Convert some malloc(9) to mallocarray(9) > ok deraadt@ (dhill@) ~ if_nep.c > malloc -> mallocarray; a typo (deraadt@) dev/sdmmc ~ sdhc.c ~ sdmmc.c ~ sdmmc_mem.c ~ sdmmc_scsi.c > add sizes to free() calls > ok dhill (deraadt@) ~ sdmmc.c > remove stray character in previous that broke the build (jsg@) ~ sdmmc_io.c ~ sdmmc_scsi.c > Sizes for the remaining free() calls, and use mallocarray() > ok visa (deraadt@) dev/usb ~ uaudio.c ~ usb_subr.c > 3 more mallocarray() uses (deraadt@) ~ uchcom.c ~ ucycom.c ~ uslhcom.c > Unify a few attach-time patterns between usb *com drivers, and remove > extra zero'ing of variables not needed because softc is pre-zero'd. > ok jsg (deraadt@) ~ ehci.c ~ if_athn_usb.c ~ if_athn_usb.h ~ if_kue.c ~ if_kuereg.h ~ if_otus.c ~ if_otusreg.h ~ if_urndis.c ~ if_zyd.c ~ if_zydreg.h ~ uaudio.c ~ ubcmtp.c ~ ubsa.c ~ uchcom.c ~ ucycom.c ~ udl.c ~ udl.h ~ ugen.c ~ uhid.c ~ uhidev.c ~ uhub.c ~ umct.c ~ umidi.c ~ umsm.c ~ uoaklux.c ~ uoakrh.c ~ uoakv.c ~ upd.c ~ uplcom.c ~ usb.c ~ usb_mem.c ~ usb_subr.c ~ usbdi.c ~ usbdivar.h ~ uslhcom.c ~ usps.c ~ uticom.c ~ utrh.c ~ uts.c ~ utwitch.c ~ uvideo.c ~ uvscom.c > A pile of sizes to free(9). In test for a few days in snapshots. > Errors will result in nice clean panic messages so we know what's wrong. > Reviewed by dhill visa natano jsg. (deraadt@) ~ dwc2/dwc2_hcd.c ~ dwc2/dwc2_hcdddma.c > Convert some malloc(9) to mallocarray(9) > ok deraadt@ (dhill@) dev/wscons ~ wsemul_vt100.c ~ wsevent.c > Convert some malloc(9) to mallocarray(9) > ok deraadt@ (dhill@) kern ~ uipc_socket.c > Less convoluted code in soshutdown() > ok guenther (deraadt@) ~ vfs_subr.c > struct vfsconf is tightly packed, but let's M_ZERO it in case that ever > changes to avoid exposing userland memory. (deraadt@) ~ kern_clock.c > clear structure on the stack before copying out for sysctl. At present > it has no pads, but a future ABI change could add something and leak > kernel memory. (deraadt@) ~ kern_sysctl.c > Here at OpenBSD we change ABIs at the fling of a hat. Just in case a > future disk info sysctl has pads in the structures, use M_ZERO when > allocating the storage to avoid leaking kernel memory. (deraadt@) ~ kern_sysctl.c > timeval has trailing padding on powerpc and m88k, so memset it before > copyout to avoid leaking kernel stack > ok deraadt@ (guenther@) ~ kern_sensors.c > Sensors are run as callbacks inside tasks. During suspend a sensor > could be running inside a driver that will be force-detached, or due > to tsleep end up disrupting the softstate/hardstate contract. At > suspend time, quisce all these callbacks by waiting for completion. > This issue has never been observed for real, but may be implicated in > suspend/resume failures. > ok kettenis guenther mlarkin (deraadt@) ~ kern_sensors.c > Correct wakeup() dance in sensor_task_work() > Problem noticed by krw (deraadt@) net ~ if_pfsync.c ~ rtsock.c > When building counter memory in preparation to copy to userland, always > zero the buffers first. All the current objects appear to be safe, > however future changes might introduce structure pads. > Discussed with guenther, ok bluhm (deraadt@) ~ if_pfsync.c ~ if_vxlan.c > Use mallocarray to allocate multicast group memberships. > ok deraadt@ (dhill@) net80211 ~ ieee80211_input.c > Convert a malloc(9) to mallocarray(9) > ok deraadt@ (dhill@) netinet ~ tcp_usrreq.c > Fix tcp stats reporting > Return the sum of per-cpu counters instead of the current cpu's > counters. Brainfart on my side. Analysis and fix by Andrei-Marius Radu. > (jca@) ~ igmp.c ~ ip_carp.c ~ ip_divert.c ~ ip_icmp.c ~ ip_input.c ~ ip_ipip.c ~ tcp_usrreq.c ~ udp_usrreq.c > When building counter memory in preparation to copy to userland, always > zero the buffers first. All the current objects appear to be safe, > however future changes might introduce structure pads. > Discussed with guenther, ok bluhm (deraadt@) ~ ip_ipcomp.c > Replace 2 bcopy()'s with a simple assignment as both variables are > properly aligned malloc(9)d data and sockaddr_union fields. While here, > convert the remaining bcopy() to memmove(). > with and ok @bluhm (dhill@) ~ ip_spd.c ~ ipsec_input.c ~ ipsec_output.c > Replace bcopy with a simple assignment where both variables are > properly aligned and sockaddr_union fields, or with memcpy when > the memory doesn't overlap. > OK bluhm@ (dhill@) ~ ip_esp.c ~ ip_mroute.c > Convert bcopy to memcpy where the memory does not overlap, otherwise, > use memmove. While here, change some previous conversions to a simple > assignment. > ok deraadt@ (dhill@) ~ ip_carp.c ~ ip_output.c > Use mallocarray to allocate multicast group memberships. > ok deraadt@ (dhill@) netinet6 ~ icmp6.c > When building counter memory in preparation to copy to userland, always > zero the buffers first. All the current objects appear to be safe, > however future changes might introduce structure pads. > Discussed with guenther, ok bluhm (deraadt@) ~ ip6_input.c ~ mld6.c > Convert bcopy to memcpy as the memory does not overlap. > ok deraadt@ (dhill@) ntfs ~ ntfs_subr.c > Convert a malloc(9) to mallocarray(9) > ok deraadt@ (dhill@) sys ~ siginfo.h > si_addr should be of type void *, not char * > From Andrew Aldridge (i80and(at)foxquill.com) > ok millert@ mpi@ (guenther@) ~ sensors.h > Sensors are run as callbacks inside tasks. During suspend a sensor > could be running inside a driver that will be force-detached, or due > to tsleep end up disrupting the softstate/hardstate contract. At > suspend time, quisce all these callbacks by waiting for completion. > This issue has never been observed for real, but may be implicated in > suspend/resume failures. > ok kettenis guenther mlarkin (deraadt@) uvm ~ uvm_swap.c > Convert a malloc(9) to mallocarray(9) > ok deraadt@ (dhill@) == usr.bin =========================================================== 11/12 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/usr.bin doas ~ doas.h ~ env.c > prepenv can take a const rule (tedu@) ~ doas.c > a little const here and there to prevent rules from changing (tedu@) grep ~ util.c > initialize regmatch_t always, fixes grep -o "" > from Michael Santos (tedu@) less ~ line.c > The character buffer should be resized using recallocarray() > ok millert and nicm a while ago (deraadt@) nc ~ nc.1 ~ netcat.c > Allow nc to save the peer certificate and chain in a pem file specified > with -Z > ok jsing@ (beck@) ~ nc.1 ~ netcat.c > - -Z before -z in options list > - add -Z to help and usage() (jmc@) ssh ~ sftp-server.c > disallow creation (of empty files) in read-only mode; reported by > Michal Zalewski, feedback & ok deraadt@ (djm@) systat ~ iostat.c > Make dma range buffer cache pages visible in systat io > ok deraadt@ (beck@) ~ engine.c > an annoying whitespace glitch (deraadt@) ~ engine.c > Clamp size to length if snprintf ever indicates overflow > w/ millert (deraadt@) tmux ~ tty.c > Change tty_repeat_space to write large sets of spaces together instead > of writing them individually. (nicm@) ~ cfg.c > cfg_file can be static. (nicm@) ~ cmd-choose-client.c ~ cmd-find.c ~ cmd-list-clients.c ~ format.c ~ screen-redraw.c ~ server-client.c ~ tmux.1 ~ tmux.h ~ tty.c > Give each client a name. This defaults to the tty name as before but > falls back to an alternative if the tty name is not available. This is > clearer than overloading the client ttyname member and allows us to > remove the path stored in the tty struct, it should always be the same > as the client. (nicm@) ~ cmd-find.c > Try again to resolve problems with mistaking sessions for windows: now > do not look up windows as sessions (and panes as windows) when they are > qualified with a ':' or a '.'. So 'foo' as a window target will look for > windows and sessions called 'foo', but ':foo' will only look for > windows, and 'foo:' only for sessions. This means the common case of > using an unadorned session as a window target (send -tfoo) should > continue to work, but an explicit window will not get confused with a > session (send -t:foo). (nicm@) ~ key-bindings.c > Add Home and End for copy mode. (nicm@) unifdef ~ unifdef.c > Replace snprintf(NULL, malloc, snprintf.... with the much better asprintf. > ok millert (deraadt@) units ~ units.lib > update currency exchange rates; (jmc@) == usr.sbin ========================================================== 12/12 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/usr.sbin dhcrelay ~ dhcpd.h ~ dhcrelay.c > constify pc_remote and pc_circuit > OK rzalamena@ (reyk@) ~ dispatch.c > The unsigned result cannot be -1, turn it into a signed variable. > OK rzalamena@ (reyk@) ~ bpf.c ~ dhcpd.h ~ packet.c > Rework the packet.c code for decoding and assembling DHCP messages. > This code suffered from many years of incremental improvements, fix it to: > - verify available buffer space in all cases and don't just trust the > caller > - have an API where you always pass the full buffer length and absolute > offset > - use consistent types for lengths and buffer offsets (int vs. size_t, > ssize_t) > - don't just ignore errors, return and fail when something is wrong > OK rzalamena@ (reyk@) ~ Makefile > We can enable many -W compiler warnings now. > OK rzalamena@ (reyk@) httpd ~ httpd.c > Do not purge the CONFIG_SERVERS config in the parent. The ticket code uses > the servers config for its rekeying handling. Without this no rekeying > happens > and httpd stops working. Learned the hard way by me and beck@ > OK reyk@ (claudio@) ~ httpd.conf.5 > image/svg+xml is a default inbuilt media type. > Pointed out by Anton Lindqvist (anton.lindqvist AT gmail), thanks! > (florian@) iscsid ~ log.c > fix format string found by clang -Wformat-security > OK deraadt millert (gsoares@) ldapd ~ parse.y > use memset() instead of bzero() > OK jmatthew (gsoares@) makefs ~ cd9660.c ~ cd9660.h ~ cd9660/cd9660_write.c > Remove the CD9660MAXPATH define. It was used to construct the path for > opening the file, so PATH_MAX makes more sense here. While there change > the code to do two less allocations per file. > ok deraadt (natano@) ~ cd9660.h > Remove unused #define's and struct. (natano@) pkg_add ~ OpenBSD/Delete.pm > For a non-interactive attempt to pkg_delete a firmware package, print a > message advising use of "fw_update -d" rather than saying "ok" and doing > nothing. (pkg_delete intentionally makes it hard to uninstall firmware > to prevent surprises when cleaning a machine). > aja and I were surprised by the "ok" leaving the fw package installed. > suggestion from espie to mention fw_update -d in the message. (sthen@) rebound ~ rebound.c > replace some long if/else chains with a switch (tedu@) relayd ~ ca.c > fix format string found by clang -Wformat-security > OK deraadt millert (gsoares@) rtadvd ~ dump.c > Always use return value of asprintf to determine success/failure, > don't rely upon *ret becoming NULL > ok millert, tom (deraadt@) ~ dump.c > Don't rely on asprintf setting pointer to NULL on failure. > ok millert@ deraadt@ tom@ (jca@) ~ rtadvd.c > sendmsg returns a signed value, fix error check > ok millert@ deraadt@ (jca@) ~ rtadvd.c > Unify variables used for recvmsg/sendmsg > ok millert@ deraadt@ (jca@) sasyncd ~ sasyncd.c > Add missing newline in fprintf error message. > OK jsg@ (reyk@) ~ sasyncd.8 ~ sasyncd.c > add a config test flag to sasyncd > ok reyk@ deraadt@ jmc@ (jsg@) ~ conf.y > Fix multiple cases of reading past the end of a buffer in the sasyncd(8) > config parser found with afl. > feedback and ok millert@ ok deraadt@ (jsg@) smtpd ~ table.5 > document comments in table files; help/ok gilles (jmc@) snmpd ~ snmpd.c > Rewrite tohexstr() to use the common idiom of converting a byte > string to hex nybble by nybble. This avoids using the return value > of snprintf() unchecked. OK deraadt@ (millert@) syslogd ~ syslogd.c > Do not print a warning if closing the control socket fails. It > cannot happen and there is nothing that could be done about it. > OK deraadt@ (bluhm@) ~ log.c ~ log.h ~ privsep.c ~ syslogd.c ~ syslogd.h ~ ttymsg.c > Replace logdebug() with generic log_debug() from log.c. Implement > log_debugadd() to construct debug message incrementally. > OK deraadt@ (bluhm@) ~ syslogd.c > Replace all combinations of logerror() and die() with log.c fatal(). > Internally syslogd's fatal() calls die() to do cleanup if necessary. > Also replace all err(3) after log_init() with fatal(). > OK millert@ (bluhm@) ~ syslogd.c > Replace logerror() functions with generic log_warn() from log.c. > Make messages a bit more consistent. Note that the new function > supports format strings. Replace some log_debug() with log_warn(). > OK millert@ (bluhm@) ~ syslogd.c > The function logmsg() was used to generate local messages and to > process incoming messages. Split this functionality into log_info() > and logline(). Sort the parameters like they appear in the syslog > line. > OK millert@ (bluhm@) ~ syslogd.c ~ syslogd.h ~ ttymsg.c > As we did not have nice log functions before, ttymsg() had to return > the error string. Log the message when the error happens and make > the function void. > OK millert@ (bluhm@) ~ syslogd.c ~ syslogd.h > The global variable Startup is not used anymore and can be deleted. > The functionality has moved into log_setdebug(). > OK millert@ (bluhm@) ~ log.c > Add the LOG_SYSLOG facility to local messages. > OK millert@ (bluhm@) ~ syslogd.c > Incoming TCP connections from clients fill the files of a log server. > A log client reconnects at every SIGHUP. Write these accept and > close messages with debug priority, then they can be turned on in > syslog.conf. Default is off. > While there, move a debug message and set the priority of the exit > message explicitly to error. > OK mpf@ millert@ (bluhm@) syspatch ~ syspatch.sh > Also remove non syspatch hidden files/dirs. (ajacoutot@) ~ syspatch.8 > use .Em for emphasis, not .Pa (schwarze@) vmctl ~ main.c ~ vmctl.c ~ vmctl.h > Do not expose vmm(4) VM IDs to the user, use vmd(8)'s IDs instead. > Each VM has two IDs: one from the kernel (vmm) and a different one > from userland (vmd). The vmm ID is not consistent and incremented on > every boot during runtimg of the host system. The vmd ID remains the > same during the lifetime of a configured VM, even after reboots. > Configured VMs will even get and keep their IDs when the configuration > is loaded. This is more what users expect. > Pointed out and tested by otto@ > OK deraadt@ (reyk@) vmd ~ vmd.c ~ vmd.h ~ vmm.c > Do not expose vmm(4) VM IDs to the user, use vmd(8)'s IDs instead. > Each VM has two IDs: one from the kernel (vmm) and a different one > from userland (vmd). The vmm ID is not consistent and incremented on > every boot during runtimg of the host system. The vmd ID remains the > same during the lifetime of a configured VM, even after reboots. > Configured VMs will even get and keep their IDs when the configuration > is loaded. This is more what users expect. > Pointed out and tested by otto@ > OK deraadt@ (reyk@) ~ parse.y > "kernel" got renamed to "boot" in vm.conf but I didn't commit the parse.y > bits. > Found by Pontus Lundkvist > OK deraadt (reyk@) ~ i8253.c ~ i8253.h > implement channels 1 and 2 of the legacy PIT. > ok otto, deraadt (mlarkin@) ~ i8259.c > implement nonspecific EOI mode for the legacy PIC > ok deraadt (mlarkin@) ~ virtio.c > change a log message from "warn" to "debug" level, as the condition it is > reporting is not actually a warning. (mlarkin@) wsfontload ~ wsfontload.8 > WSDISPLAY_MAXFONTCOUNT macro was introduced in sys/dev/wscons/wsconsio.h > (revision 1.75) to limit the number of fonts that can be loaded. > Reflect that in the man page as well. > OK jcs@ (fcambus@) =============================================================================== _______________________________________________ owc mailing list [email protected] http://www.squish.net/mailman/listinfo/owc
