OpenBSD src changes summary for 2017-06-14 ==========================================
distrib/sets distrib/sgi etc/etc.sgi/disktab etc/rc regress/usr.bin sbin/dhclient share/man sys/arch/amd64/conf sys/arch/armv7/armv7 sys/arch/armv7/conf sys/dev/pci sys/dev/pv sys/kern sys/sys usr.bin/mandoc usr.bin/ssh usr.bin/tmux usr.sbin/mailwrapper usr.sbin/tcpdump == distrib =========================================================== 01/08 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/distrib sets ~ lists/man/mi > sync (deraadt@) sgi ~ iso/Makefile > Grow sgi iso, to account for base containing compile.tgz. > SGI has 8 kernels, so the file is 113MB! (deraadt@) == etc =============================================================== 02/08 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/etc etc.sgi/disktab ~ etc.sgi/disktab > Grow sgi iso, to account for base containing compile.tgz. > SGI has 8 kernels, so the file is 113MB! (deraadt@) rc ~ rc > Add a new function reorder_kernel() that relinks and installs the > new kernel in the background on system startup. It stores the hash > of the new kernel and sends a notification email to the admin or > root user. If it finds /usr/share/compile.tgz, it removes the > existing compile dir and replaces it with the content of (new) > archive. If the hash of /bsd does not match the stored one, no > relinking happens. > Idea from, joint work with and OK deraadt@ > OK tb@ halex@ > unnoticed by many (rpe@) == regress =========================================================== 03/08 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/regress usr.bin ~ mandoc/roff/esc/Makefile + mandoc/roff/esc/p.in + mandoc/roff/esc/p.out_ascii > implement the roff(7) \p (break output line) escape sequence (schwarze@) ~ mandoc/roff/cond/Makefile + mandoc/roff/cond/string.in + mandoc/roff/cond/string.out_ascii > implement the roff(7) d (macro or string defined) conditional (schwarze@) ~ mandoc/man/HP/spacing.in ~ mandoc/man/IP/width.in ~ mandoc/man/RS/width.in ~ mandoc/man/TP/width.in ~ mandoc/mdoc/Bd/offset-neg.in ~ mandoc/mdoc/Bl/offset.in ~ mandoc/mdoc/Bl/offset.out_ascii ~ mandoc/mdoc/Bl/offset.out_markdown ~ mandoc/mdoc/Bl/tag.in ~ mandoc/roff/esc/h.in ~ mandoc/roff/esc/h.out_ascii ~ mandoc/roff/esc/h.out_lint ~ mandoc/roff/ta/basic-man.in ~ mandoc/roff/ta/basic-man.out_ascii ~ mandoc/roff/ti/basic-man.in ~ mandoc/tbl/mod/width.in > improve rounding rules for scaling units > in horizontal orientation in the terminal formatter (schwarze@) ~ mandoc/roff/esc/Makefile + mandoc/roff/esc/l.in + mandoc/roff/esc/l.out_ascii + mandoc/roff/esc/l.out_lint > let \l use the right fill character (schwarze@) ~ mandoc/char/unicode/ascii.in ~ mandoc/char/unicode/ascii.out_ascii ~ mandoc/char/unicode/ascii.out_html ~ mandoc/char/unicode/ascii.out_utf8 > add the \(ru (0.5m baseline ruler) character escape sequence, > abused by mail/nmh; groff_char(7) confirms that this really exists > (schwarze@) ~ mandoc/roff/Makefile + mandoc/roff/po/Makefile + mandoc/roff/po/basic-mdoc.in + mandoc/roff/po/basic-mdoc.out_ascii > Naive implementation of the roff(7) .po (page offset) request. > This clearly works when .po is called on the top level, but might > not be sophisticated enough if people call .po inside indentation-changing > contexts, but i haven't seen that in manual pages (yet :). (schwarze@) ~ mandoc/roff/esc/h.in ~ mandoc/roff/esc/h.out_ascii ~ mandoc/roff/esc/h.out_lint > implement so-called absolute horizontal motion: \h'|...', > used for example by zoem(1) (schwarze@) == sbin ============================================================== 04/08 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/sbin dhclient ~ dhclient.c ~ dhcpd.h > No need for two 'flags' fields. Consolidate into one, fixing > value of IFI_HUP while passing. (krw@) ~ bpf.c ~ dhclient.c ~ dhcpd.h ~ options.c > Start consolidating client_state into interface_info. First > fields to move: recv_packet, sent_packet and sent_packet_length. > No intentional functional change. (krw@) ~ dhclient.c ~ dhcpd.h ~ options.c > Move xid, secs, first_sending, startup_time fields from > client_state to interface_info. > No intentional functional change. (krw@) ~ dhclient.c ~ dhcpd.h > Move state, destination, interval, requested_address from > client_state to interface_info. > No intentional functional change. (krw@) ~ clparse.c ~ dhclient.c ~ dhcpd.h ~ dispatch.c > Move active, new, offered_leases, leases from > client_state to interface_info. > Nuke empty struct client_state. > No intentional functional change. (krw@) ~ dhclient.c ~ dhcpd.h ~ dispatch.c > No need to be coy - call a "struct interface_info *" a > "struct interface_info *" and not a "void *". > No intentional functional change. (krw@) == share ============================================================= 05/08 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/share man ~ man7/roff.7 > implement the roff(7) \p (break output line) escape sequence (schwarze@) + man4/hvs.4 > hvs(4) man page (mikeb@) ~ man4/Makefile > Hook up hvs.4 (mikeb@) ~ man4/pvbus.4 > Mention hvs(4) (mikeb@) ~ man4/pvbus.4 > match the (hvs) description to the man page; ok mikeb (jmc@) ~ man7/roff.7 > implement roff(7) .rj (right justify) request (schwarze@) ~ man7/roff.7 > implement the roff(7) d (macro or string defined) conditional (schwarze@) ~ man7/roff.7 > simple implementation of the roff(7) .als (macro alias) request, > sufficient for pages using po4a(1) (schwarze@) ~ man7/mandoc_char.7 > add the \(ru (0.5m baseline ruler) character escape sequence, > abused by mail/nmh; groff_char(7) confirms that this really exists > (schwarze@) ~ man7/roff.7 > Naive implementation of the roff(7) .po (page offset) request. > This clearly works when .po is called on the top level, but might > not be sophisticated enough if people call .po inside indentation-changing > contexts, but i haven't seen that in manual pages (yet :). (schwarze@) ~ man7/roff.7 > implement so-called absolute horizontal motion: \h'|...', > used for example by zoem(1) (schwarze@) == sys =============================================================== 06/08 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/sys arch/amd64/conf ~ GENERIC ~ RAMDISK_CD > Enable hvs(4), "go for it" from deraadt. (mikeb@) arch/armv7/armv7 ~ armv7_start.S + locore0.S > Split early startup code out of armv7_start.S into locore0.S. Adjust > link run so that this locore0.o is always at the start of the > executable. But randomize the link order of all other .o files in the > kernel, so that their exec/rodata/data/bss segments land all over the > place. Note that this commit does not yet unmap the early bootcode > since this is not as easy as on arm64. > As a result, the internal layout of every newly build bsd kernel is > different from past kernels. Internal relative offsets are not known > to an outside attacker. The only known offsets are in the startup code, > which has been unmapped. > Ramdisk kernels cannot be compiled like this, because they are gzip'd. > When the internal pointer references change, the compression dictionary > bloats and results in poorer compression. > With guidance and ok deraadt@ (patrick@) arch/armv7/conf ~ Makefile.armv7 ~ files.armv7 > Split early startup code out of armv7_start.S into locore0.S. Adjust > link run so that this locore0.o is always at the start of the > executable. But randomize the link order of all other .o files in the > kernel, so that their exec/rodata/data/bss segments land all over the > place. Note that this commit does not yet unmap the early bootcode > since this is not as easy as on arm64. > As a result, the internal layout of every newly build bsd kernel is > different from past kernels. Internal relative offsets are not known > to an outside attacker. The only known offsets are in the startup code, > which has been unmapped. > Ramdisk kernels cannot be compiled like this, because they are gzip'd. > When the internal pointer references change, the compression dictionary > bloats and results in poorer compression. > With guidance and ok deraadt@ (patrick@) dev/pci ~ if_iwm.c ~ if_iwmvar.h > Make iwm(4) wait for the PHY calibration result notification during HW > init. > Code inspection revealed that Linux does this, and so should we. > ok deraadt@ (stsp@) ~ if_iwm.c > Make the iwm(4) ioctl handler wait until the transition to SCAN has > completed > when bringing the interface up. Otherwise we get racy behaviour when > running > ifconfig commands which issue several ioctls in quick succession. > Should fix the occasional "could not initiate scan" errors. > ok deraadt@ (stsp@) ~ if_iwm.c > When a task in iwm(4) obtains an rwlock(9), bail out if the device was > reset while the task was asleep waiting for the lock. > ok deraadt@ (stsp@) ~ if_iwm.c > Currently, iwm(4) uses only one phy context, so stop sending commands to > the > firmware for unused ones. This should be refactored further, but for now > this > change is good enough to reduce the amount of commands we throw at the > firmware. > ok deraadt@ (stsp@) dev/pv ~ hyperv.c ~ hypervvar.h > Add another type of a scatter-gather list operation used by StorVSC > Obtained from FreeBSD. (mikeb@) + hvs.c > Hyper-V storage driver > Based on the FreeBSD driver, attaches only to emulated SCSI controllers. > (mikeb@) ~ files.pv > Hookup hvs(4) (mikeb@) ~ hvs.c > Increase the maximum amount of requests and do some cleanup (mikeb@) ~ hvs.c > Special handling for request 0 clashes with CCB 0 (mikeb@) ~ hvs.c > Borrow some of dlg's smarts to make this look like a real SCSI driver > (mikeb@) kern ~ kern_sysctl.c > tweak sysctl_string and sysctl_tstring to use size_t for lengths, not int > theyre both wrappers around sysctl__string, which is where half the > fix is too. (dlg@) sys ~ sysctl.h > tweak sysctl_string and sysctl_tstring to use size_t for lengths, not int > theyre both wrappers around sysctl__string, which is where half the > fix is too. (dlg@) == usr.bin =========================================================== 07/08 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/usr.bin mandoc ~ html.c ~ mandoc.c ~ mandoc.h ~ mdoc_markdown.c ~ term.c > implement the roff(7) \p (break output line) escape sequence (schwarze@) ~ mdoc_man.c ~ roff.c ~ roff.h ~ roff_html.c ~ roff_term.c ~ roff_validate.c > implement roff(7) .rj (right justify) request (schwarze@) ~ roff.c > implement the roff(7) d (macro or string defined) conditional (schwarze@) ~ term_ascii.c > harmless, but weird typo; found with afterstep_faq(1) (schwarze@) ~ man_term.c ~ mdoc_term.c ~ roff_term.c ~ tbl_term.c ~ term.c ~ term.h ~ term_tab.c > improve rounding rules for scaling units > in horizontal orientation in the terminal formatter (schwarze@) ~ out.c ~ term.c > let \l use the right fill character (schwarze@) ~ roff.c > simple implementation of the roff(7) .als (macro alias) request, > sufficient for pages using po4a(1) (schwarze@) ~ chars.c > add the \(ru (0.5m baseline ruler) character escape sequence, > abused by mail/nmh; groff_char(7) confirms that this really exists > (schwarze@) ~ mdoc_man.c ~ roff.c ~ roff.h ~ roff_html.c ~ roff_term.c ~ roff_validate.c > Naive implementation of the roff(7) .po (page offset) request. > This clearly works when .po is called on the top level, but might > not be sophisticated enough if people call .po inside indentation-changing > contexts, but i haven't seen that in manual pages (yet :). (schwarze@) ~ term.c > implement so-called absolute horizontal motion: \h'|...', > used for example by zoem(1) (schwarze@) ssh ~ sshconnect2.c > Add user@host prefix to client's "Permisison denied" messages, useful in > particular when using "stacked" connections where it's not clear which > host is denying. bz#2720, ok djm@ markus@ (dtucker@) tmux ~ cmd-find.c > Add missing error message when no target, GitHub issue 971. (nicm@) ~ cmd-string.c > Don't overwrite error message when it is available in > cmd_string_parse. Reported by Jimi Damon in GitHub issue 975. (nicm@) == usr.sbin ========================================================== 08/08 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/usr.sbin mailwrapper ~ mailwrapper.c > Remove main() prototype and unused envp argument. > ok deraadt@ martijn@ (anton@) tcpdump ~ print-atalk.c ~ privsep.c ~ privsep.h > Don't support loading appletalk addresses from /etc/appletalk.names. > OK deraadt@ (akfaew@) =============================================================================== _______________________________________________ odc mailing list [email protected] http://www.squish.net/mailman/listinfo/odc
