OpenBSD src changes summary for 2015-12-02 ==========================================
bin/ksh distrib/amd64 distrib/armish distrib/armv7 distrib/i386 distrib/landisk distrib/loongson distrib/macppc distrib/octeon distrib/socppc distrib/special distrib/zaurus etc/rc games/backgammon games/canfield games/snake libexec/spamd regress/misc regress/sbin regress/sys regress/usr.bin sbin/iked sbin/ipsecctl share/man sys/arch/amd64/stand/efi sys/arch/amd64/stand/efiboot sys/arch/octeon/octeon sys/dev/ic sys/dev/pci sys/dev/usb sys/net sys/netinet sys/netinet6 sys/netmpls sys/uvm usr.bin/cut usr.bin/ssh usr.bin/tmux usr.sbin/httpd usr.sbin/iscsid usr.sbin/npppd usr.sbin/rebound usr.sbin/relayd usr.sbin/smtpd usr.sbin/vmd usr.sbin/vmmctl == bin =============================================================== 01/11 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/bin ksh ~ tty.c > comment typo (mmcc@) == distrib =========================================================== 02/11 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/distrib amd64 ~ common/install.md > Make GPT an option equivalent to MBR when installing. Warn that the > result may not be bootable if GPT is used on a machine that did not > boot via EFI. But allow the user to proceed if the user insists. > Sometimes you just want to create an EFI bootable image on a non-EFI > machine. > Enforce the presence of both an OpenBSD partition and an EFI Sys > partition if GPT partitioning is used. > Prompted by complaints and observations from kettenis@. > Verbiage tweak from doug@. Tested & ok rpe@. (krw@) ~ common/install.md > If (O)penBSD is not offered as a partitioning option, do not accept > 'O*|o*' as a valid response. Ignore it as we do other invalid input. > armv7 is special case to be handled separately. > Noticed by kettenis@. > ok deraadt@ rpe@ (krw@) armish ~ ramdisk/install.md > If (O)penBSD is not offered as a partitioning option, do not accept > 'O*|o*' as a valid response. Ignore it as we do other invalid input. > armv7 is special case to be handled separately. > Noticed by kettenis@. > ok deraadt@ rpe@ (krw@) armv7 ~ ramdisk/install.md > The '_q'/'(O)penBSD' logic is not used in armv7 at the moment so remove it > until it is needed. > Spotted & ok rpe@ (krw@) i386 ~ common/install.md > If (O)penBSD is not offered as a partitioning option, do not accept > 'O*|o*' as a valid response. Ignore it as we do other invalid input. > armv7 is special case to be handled separately. > Noticed by kettenis@. > ok deraadt@ rpe@ (krw@) landisk ~ ramdisk/install.md > If (O)penBSD is not offered as a partitioning option, do not accept > 'O*|o*' as a valid response. Ignore it as we do other invalid input. > armv7 is special case to be handled separately. > Noticed by kettenis@. > ok deraadt@ rpe@ (krw@) loongson ~ ramdisk/install.md > If (O)penBSD is not offered as a partitioning option, do not accept > 'O*|o*' as a valid response. Ignore it as we do other invalid input. > armv7 is special case to be handled separately. > Noticed by kettenis@. > ok deraadt@ rpe@ (krw@) macppc ~ ramdisk/install.md > If (O)penBSD is not offered as a partitioning option, do not accept > 'O*|o*' as a valid response. Ignore it as we do other invalid input. > armv7 is special case to be handled separately. > Noticed by kettenis@. > ok deraadt@ rpe@ (krw@) octeon ~ ramdisk/install.md > If (O)penBSD is not offered as a partitioning option, do not accept > 'O*|o*' as a valid response. Ignore it as we do other invalid input. > armv7 is special case to be handled separately. > Noticed by kettenis@. > ok deraadt@ rpe@ (krw@) socppc ~ ramdisk/install.md > If (O)penBSD is not offered as a partitioning option, do not accept > 'O*|o*' as a valid response. Ignore it as we do other invalid input. > armv7 is special case to be handled separately. > Noticed by kettenis@. > ok deraadt@ rpe@ (krw@) special ~ ls/Makefile > and another utf8.c (deraadt@) zaurus ~ ramdisk/install.md > If (O)penBSD is not offered as a partitioning option, do not accept > 'O*|o*' as a valid response. Ignore it as we do other invalid input. > armv7 is special case to be handled separately. > Noticed by kettenis@. > ok deraadt@ rpe@ (krw@) == etc =============================================================== 03/11 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/etc rc ~ rc > Since version 1.467 of /etc/rc, it was no longer possible to add > shlib_dirs using /etc/rc.conf.local. > Fix from Jan Johansson, thanks. > OK krw@, halex@ (rpe@) == games ============================================================= 04/11 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/games backgammon ~ backgammon/backgammon.6 ~ backgammon/main.c ~ common_source/back.h ~ common_source/init.c ~ common_source/subs.c ~ teachgammon/teach.c > Drop the argument passing between backgammon and teachgammon. > It's broken. Instead, make -d imply -n. You're supposed to > know the rules before you start tweaking them. > Issue reported by and ok pjanzen@ > Patient help with the manual jmc@ (tb@) canfield ~ canfield/canfield.c ~ cfscores/cfscores.c > add const and remove unused variable. > from mestre. (tb@) snake ~ snake.c > treat getenv("HOME") safely also when LOGGING is defined. from mestre. > plus fix some ghastly whitespace. (tb@) ~ snake.c > KNF: I forgot to join two lines. (tb@) == libexec =========================================================== 05/11 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/libexec spamd ~ spamd.c > fix error messages to say tls_write after tls_write and not tls_read... > with bluhm (henning@) ~ spamd.c > I misread the standard when adding TLS; clients are supposed to start over > and issue a new EHLO after STARTTLS. The misunderstaning seems to be > common, > so we'll still grok MAIL FROM right after the STARTTLS dance, as well as > accepting a second EHLO. ok phessler beck millert (henning@) ~ spamd.c > in response to EHLO, don't offer STARTTLS if we already completed the > STARTTLS dance. ok millert (henning@) == regress =========================================================== 06/11 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/regress misc + utf8/t1.exp + utf8/t1.sh > add a tiny utf8 test (for tr, failing) > more to come? (tedu@) + utf8/t2.exp + utf8/t2.sh > quicky test for cut (tedu@) sbin ~ route/Makefile + route/rttest21.ok > Check that routes to the same destination but with a different priority > are inserted in the right order. > Currently failing with ART. (mpi@) sys ~ netinet/broadcast_bind/Makefile ~ netinet/broadcast_bind/broadcast_bind.c > KNF and use ${SUDO} when needed. > ok vgross@ (mpi@) usr.bin ~ mandoc/char/unicode/input.out_utf8 > Fix the mandoc test suite after afresh1@ changed wcwidth(3) in libc > for the private use area starting at U+E000. > Sometimes, even i'm surprised how much stuff these tests keep track of. > Originally, they were only intended to catch regressions in mandoc... > Issue noticed by daniel@, thanks! (schwarze@) == sbin ============================================================== 07/11 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/sbin iked ~ pfkey.c > remove unimplemented PF_KEY algorithms; ok sthen@ mpi@ mikeb@ (naddy@) ipsecctl ~ pfkdump.c > remove unimplemented PF_KEY algorithms; ok sthen@ mpi@ mikeb@ (naddy@) == share ============================================================= 08/11 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/share man - man9/VOP_GETATTR.9 ~ man9/Makefile ~ man9/VOP_LOOKUP.9 > merge important bits of GETATTR into VOP_LOOKUP. > provoked by jmc (and reminded that i failed to commit by ingo) (tedu@) ~ man4/gif.4 > Remove setting "link2" to the bridge in the EXAMPLE section. When the > section is describing a way to protect encapsulated packets by IPsec, > "link2" was misleading since it is unrelated to that purpose. > ok markus (yasuoka@) ~ man9/VOP_LOOKUP.9 > add VOP_{GET,SET}ATTR to NAME too; (jmc@) ~ man9/VOP_LOOKUP.9 > Tweak previous: Move struct vattr out of the function table, it's used > by more than two functions, and use .Vt for the struct name. > OK jmc@ tedu@ (schwarze@) ~ man9/rtalloc.9 > RT_REPORT is no more. (claudio@) ~ man9/rtalloc.9 > tweak previous; (jmc@) == sys =============================================================== 09/11 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/sys arch/amd64/stand/efi ~ include/efidef.h > Add a padding in EFI_MEMORY_DESCRIPTOR to align fields properly on ia32. > (yasuoka@) arch/amd64/stand/efiboot - start.S ~ bootia32/Makefile ~ bootx64/Makefile + start_amd64.S + start_i386.S > Add missing start_i386.S for ia32. Also start.S is renamed to > start_amd64.S. (yasuoka@) arch/octeon/octeon ~ machdep.c > Clean up octeon memory region setup. > Diff by miod@ during c2k15 > Tested by jbg@, jasper@, pirofti@ > OK jasper@, pirofti@ (visa@) ~ machdep.c > Enable the DR1 region even with 32-bit page table entries. Those have > enough bits for addressing the region. (visa@) dev/ic ~ fxp.c > Simplify fxp tx dma handling by using m_defrag instead of rolling our own > version. Based on a very old diff from brad@, tested by me and David Hill > OK kettenis@ (claudio@) dev/pci ~ azalia_codec.c > Add an unmute quirk for IDT 92HD75B3/4 codecs with HP subids. > This is required to get speaker audio on the HP Elitebook 2540p. > Reported and fix tested by Mike Cond. (jsg@) dev/usb ~ xhci.c > Do not change the status of a transfer before giving it back to the > stack. > Unbreak polling mode when the host Babbles because a reset of the ring > is necessary and xhci_waitintr() stops polling as soon as the xfer > status changed. > Problem reported by and ok krw@ (mpi@) ~ ohci.c > Add missing parentheses. Fix from NetBSD. > ok mpi (yasuoka@) net ~ if_var.h > Remove forward declarations that are no longer needed, times and APIs are > changing. (mpi@) ~ bridgectl.c ~ if_bridge.c > Include cleanup. (mpi@) ~ if.c ~ if_ethersubr.c > Rework the MPLS handling. Remove the lookup loops since nothing is using > them and they make everything so much harder with no gain. Remove the > ifp argument from mpls_input since it is not needed. On the input side > the lookup side is modified a bit when it comes to BOS handling. > Tested in a L3VPN setup with ldpd and bgpd. Commiting now so we can move > on with cleaning up rt_ifp usage. If this breaks L2VPN I will fix it once > reported. OK mpi@ (claudio@) ~ route.c ~ route.h ~ rtable.c ~ rtable.h > Move multipath Hash-Threshold selection mechanism inside rtable_match(). > This will helps for unlocking the routing table and will prevent further > mistake by keeping the multipath logic inside the rtable_* API. > ok dlg@, claudio@ (mpi@) ~ route.c > allocate route labels as M_RTABLE instead of M_TEMP > ok claudio@, mpi@ (blambert@) ~ rtable.c > Respect priorities when inserting routes to the same destination in ART. > (mpi@) ~ pfkeyv2.h > remove unimplemented PF_KEY algorithms; ok sthen@ mpi@ mikeb@ (naddy@) ~ if_mpe.c ~ if_mpw.c ~ pf.c ~ route.c ~ route.h > Kill the RT_REPORT flag to rtalloc() and stop sending RTM_MISS messages > for failed route lookups. This is something that was maybe useful in the > 90is but in this modern times it is just annoying and nothing expect it > anyway. OK mpi@, sthen@ (claudio@) ~ pf.c ~ pfvar.h > - hide PF internals to pf_unlink_divert_state() from in_pcb.c > OK mpi@, bluhm@ (sashan@) ~ if.c ~ route.c ~ route.h > When destroying an interface, we have to wait until all references > are not used anymore. This has to be done before any interface > fields become invalid. > As the route delete request cannot call if_get() anymore, pass down > the interface. Split rtrequest_delete() into a separate function > that may take an existing inteface. > OK mpi@ (bluhm@) ~ route.c ~ rtable.c ~ rtable.h > rtable_delete() does not use its prio parameter, so delete it. > OK mpi@ (bluhm@) netinet ~ ip_ether.c ~ ip_gre.c > Rework the MPLS handling. Remove the lookup loops since nothing is using > them and they make everything so much harder with no gain. Remove the > ifp argument from mpls_input since it is not needed. On the input side > the lookup side is modified a bit when it comes to BOS handling. > Tested in a L3VPN setup with ldpd and bgpd. Commiting now so we can move > on with cleaning up rt_ifp usage. If this breaks L2VPN I will fix it once > reported. OK mpi@ (claudio@) ~ if_ether.c > Do not delete a conflicting & cloned route entry in the hot path. > Deleting a RTF_CLONED entry without deleting its corresponding RTF_CLONING > entry wont help as it will be cloned the next time arplookup() is executed. > ok claudio@ (mpi@) ~ if_ether.c ~ ip_icmp.c ~ ip_input.c ~ ip_output.c > Kill the RT_REPORT flag to rtalloc() and stop sending RTM_MISS messages > for failed route lookups. This is something that was maybe useful in the > 90is but in this modern times it is just annoying and nothing expect it > anyway. OK mpi@, sthen@ (claudio@) ~ in_pcb.c > - hide PF internals to pf_unlink_divert_state() from in_pcb.c > OK mpi@, bluhm@ (sashan@) ~ if_ether.c ~ ip_icmp.c > When destroying an interface, we have to wait until all references > are not used anymore. This has to be done before any interface > fields become invalid. > As the route delete request cannot call if_get() anymore, pass down > the interface. Split rtrequest_delete() into a separate function > that may take an existing inteface. > OK mpi@ (bluhm@) ~ if_ether.c > There is no reason for this carp magic in arpresolve. rt->rt_ifp has to > be the same as ifp or something is very broken. So remove this including > one more rt_ifp. OK mpi@ (claudio@) ~ ip_output.c > factor out ip_output_ipsec_{lookup,send}(); with & ok claudio@ (markus@) ~ if_ether.c > More rt_ifp killing. There checks in in_arpinput() to verify that the > arp packet was recieved on the interface we expected. This is because > multicast and broadcast packets are sometimes forwarded on multiple > local interfaces. So simplify the checks and make them more generic > at the same time (in the SIN_PROXY case). For SIN_PROXY only the > interface holding the proxy arp route will answer to the requests. > OK mpi@ (claudio@) ~ if_ether.c > Since we want to print the interface names in the log messages it is > required to do the if_get/if_put dance around the log() calls. These > were the last users of rt_ifp. > OK mpi@ bluhm@ (claudio@) ~ in_pcb.c ~ in_pcb.h > Move port picking away from in_pcbbind() > ok sthen@ (vgross@) netinet6 ~ icmp6.c ~ in6_src.c ~ ip6_output.c ~ nd6.c > Kill the RT_REPORT flag to rtalloc() and stop sending RTM_MISS messages > for failed route lookups. This is something that was maybe useful in the > 90is but in this modern times it is just annoying and nothing expect it > anyway. OK mpi@, sthen@ (claudio@) ~ icmp6.c ~ in6_ifattach.c ~ nd6.c > When destroying an interface, we have to wait until all references > are not used anymore. This has to be done before any interface > fields become invalid. > As the route delete request cannot call if_get() anymore, pass down > the interface. Split rtrequest_delete() into a separate function > that may take an existing inteface. > OK mpi@ (bluhm@) ~ in6_pcb.c ~ udp6_output.c > Move port picking away from in_pcbbind() > ok sthen@ (vgross@) netmpls ~ mpls.h ~ mpls_input.c ~ mpls_output.c > Rework the MPLS handling. Remove the lookup loops since nothing is using > them and they make everything so much harder with no gain. Remove the > ifp argument from mpls_input since it is not needed. On the input side > the lookup side is modified a bit when it comes to BOS handling. > Tested in a L3VPN setup with ldpd and bgpd. Commiting now so we can move > on with cleaning up rt_ifp usage. If this breaks L2VPN I will fix it once > reported. OK mpi@ (claudio@) ~ mpls_input.c > Oups, forgot in the tedu of RT_REPORT commit (claudio@) uvm ~ uvm_extern.h > remove declaration for nonexistant function > ok tedu@ (blambert@) == usr.bin =========================================================== 10/11 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/usr.bin cut ~ cut.1 ~ cut.c > UTF-8 support: Implement -c and -n > and let -d accept a multibyte delimiter character. > While here, simplify the code by switching from fgetln(3) to getline(3) > and from hand-crafted string parsing to strstr(3) and strchr(3). > OK tedu@ czarkoff@ zhuk@. (schwarze@) ssh ~ ssh-agent.c > ssh-agent pledge needs proc for askpass; spotted by todd@ (djm@) ~ ssh-agent.c > Add "cpath" to the ssh-agent pledge so the cleanup handler can unlink(). > ok djm@ (doug@) tmux ~ cmd-break-pane.c ~ window.c > Mark new active pane changed after pane lost in window, and after > break-pane. Reported by tim@. (nicm@) == usr.sbin ========================================================== 11/11 == http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/usr.sbin httpd ~ config.c ~ httpd.c ~ httpd.h ~ logger.c ~ proc.c ~ server.c > sync with relayd, use proc_compose() (reyk@) iscsid ~ vscsi.c > typo in log entry (mmcc@) npppd ~ npppd/lcp.c > comment typo (mmcc@) rebound ~ rebound.8 > tell readers about config reloads. > ok tedu (benno@) relayd ~ ca.c ~ check_script.c ~ config.c ~ control.c ~ hce.c ~ pfe.c ~ pfe_route.c ~ proc.c ~ relay.c ~ relay_udp.c ~ relayd.c ~ relayd.h ~ snmp.c > In most cases we don't need all arguments of proc_compose*_imsg(), > so add a shortcut proc_compose*() that skips all of them. Only use the > full argument list if needed. The functions with full argument lists can > eventually be replaced with a nicer transaction-based approach later. > OK benno@ (reyk@) ~ relay.c ~ relayd.h > relayd (when running relays) can distribute client sessions over hosts > with a hash generated from different data and calculate modulo > rlt->rlt_nhosts to find the host the session should go to. If this > host is down, the current algorithm simply selects the next host that > is up, obviously not ideal, because this puts heavier load on this > next host. > this changes the algorithm: if the chosen host is not available, the > hash value is recalculated and and retried until a host that is usable > is found or a maximum of retires is reached (in that case the old > method is used). > ok and nice input on my original idea bluhm@ (benno@) smtpd ~ parse.y > whitespaces (gilles@) vmd ~ Makefile ~ vmd.c ~ vmd.h + control.c + proc.c + proc.h + vmm.c > Start tweaking vmd's privsep and daemon model by splitting the main > process into multiple parts and adopting the "proc.c"-style from other > daemons. This allows to further reduce the privileges, to give better > pledge(2), and to add some upcoming changes. > "please do" mlarkin@, deraadt@ (reyk@) ~ proc.c ~ proc.h ~ vmm.c > Add back the "peerid" to the proc_compose*() functions: in relayd, I > initially left it out because I didn't have a need for it. But it is > actually quite useful to carry a reference to the imsg data context > across processes. (reyk@) ~ proc.c ~ proc.h ~ vmm.c > Sync with relayd, fix previous use of proc_compose*_imsg() (reyk@) ~ Makefile ~ control.c ~ proc.h ~ vmd.c ~ vmd.h ~ vmm.c + config.c > Split the fully privileged parent into two processes "parent" and > "vmm" with reduced privileges: > - the "parent" opens fds (disks, ifs, etc.) but runs as root but pledged as > "stdio rpath wpath proc tty sendfd". > - the "vmm" process handles the creation and supervision of vm processes, > and the primary communication with the vmm(4) subsystem. It runs as _vmd > in the chroot but does not use pledge, as the vmm ioctls are not allowed > by any pledge model yet. > With this change, vmd starts to track the configuration state of VMs > in vmd and will allow other things later (like terminating a vm by > name, moving the configuration parser to vmd, ...). More incremental > changes will follow. (reyk@) ~ vmd.c ~ vmd.h > send the tty name to vmmctl and print it as a result. (reyk@) vmmctl ~ main.c > Start tweaking vmd's privsep and daemon model by splitting the main > process into multiple parts and adopting the "proc.c"-style from other > daemons. This allows to further reduce the privileges, to give better > pledge(2), and to add some upcoming changes. > "please do" mlarkin@, deraadt@ (reyk@) ~ parse.y > The earlier "nifs" change broke the configuration file; unbreak it by > adding a missing bit. (reyk@) ~ vmmctl.c > send the tty name to vmmctl and print it as a result. (reyk@) =============================================================================== _______________________________________________ odc mailing list [email protected] http://www.squish.net/mailman/listinfo/odc
