OpenBSD 4.7 released (May 19)
This is a partial list of the major machine-independent changes
(i.e., these are the changes people ask about most often). Machine
specific changes have also been made, and are sometimes mentioned
in the pages for the specific platforms.
Note: Problems for which patches exist are marked in red.
Changes made between OpenBSD 4.6 and 4.7
- Fix for blind prefix injection in libssl.
- Added support in smtpd(8) for userpart+something@domain receipient addresses.
- Updated time zone data to tzdata2009r.
- Added vether(4), a virtual ethernet device.
- Added code on sgi to send L1 commands and parse command results. Used to get the ethernet address on IP35 systems with IOC3 onboard ethernet.
- Updated xenocara xcompmgr to 1.1.5.
- Added IPv6 support for divert sockets in pf(4).
- Make it possible to add an interface with brconfig(8) even if it was already added.
- Moved tmux(1) over to use event(3).
- Added support in tcpdump(8) to decode the GPRS Tunneling Protocol.
- Allow any program using aucat(1) to act as a MMC slave and MTC master.
- Added support in smtpd(8) for multiple aliases maps.
- In run(4) and otus(4), defer WEP key setting until the interface is brought up.
- Applied a fix in perl(1) which could cause it to crash on certain invalid UTF-8 codes.
- Fix pf(4) rtable and rdomain handling.
- Make dhclient(8) pick up the routing domain from the specified interface and use that rdomain for relaying the packets to the server.
- Implemented "log verbose" and "log brief" in bgpctl(8), dvmrpctl(8), lpdctl(8), ripctl(8), ospfctl(8) and ospf6ctl(8).
- Added M-Audio Revolution 5.1 to the list of supported envy(4) devices.
- Added kqueue(2) support for midi(4).
- Added iec(4), a driver for the sgi IOC3 onboard ethernet interface.
- Added ATI hudson2 to the list of supported ahci(4) chips.
- Two minor fixes in the YP allocation code error paths.
- Establish a shutdown hook on the sparc64 LOM code to prevent watchdog triggers after the kernel has halted.
- Updated xenocara libXt to 1.0.7, libXv to 1.0.5, libXvcMC to 1.0.5, libfontenc to 1.0.5 and xtrans to 1.2.5.
- Updated xenocara libXfontcache to 1.0.5, libXft to 2.1.14, libXmu to 1.0.5, libXpm to 3.5.8 and libXrender to 0.9.5.
- Updated xenocara libXdamage to 1.1.2, libXdmcp to 1.0.3, libXfixes to 4.0.4 and libXfont to 1.4.1.
- Updated xenocara libICE to 1.0.6, libXRes to 1.0.4, libXau to 1.0.5, libXcomposite to 0.4.1 and libXcursor to 1.1.10.
- Updated xenocara xserver to 1.6.5 and xterm to 250.
- Added support to boot up sgi IP30 secondary CPUs.
- Added isp(4) to the hppa GENERIC kernels.
- Added iha(4) to the amd64 RAMDISK_CD kernels.
- Added code to unwedge the sparc64 LOMlite.
- Better input validation in stty(1).
- Updated terminfo to the 20091003 version from upstream.
- Unbreak route-to in pf(4) by using a dedicated pf pool for route options.
- Fix a NULL pointer store in the ip_output code path. Exploitable on older (4.3) OpenBSD versions.
- Make it possible to set the rdomain in ssh(1)/sftp(1)/scp(1)/sshd(8)
- Make sure ldattach(8) reinitializes the poll events after each call to poll.
- Removed EISA support from i386 RAMDISK kernels.
- Synced mandoc to 1.9.11.
- Fixed a null dereference in the scsi sleeping code.
- Initial mpii(4) driver for MPI2 SAS HBAs, disabled for now.
- Added support for power(4) to sgi Octane machines.
- Updated the time zone data to tzdata2009p.
- Better error handling in bgpd(8) when doing mrt dumps.
- Fix aliases resolution in smtpd(8), could accidentally skip recipients sometimes.
- For sudo(8), add DISTDIR to list of variables to preserve by default.
- Fix in iwn(4) for >=5000 series devices.
- Updated xenocara xvinfo to 1.1.0, xwd to 1.0.3, xwininfo to 1.0.5, xwud to 1.0.2 and xbitmaps to 1.1.0.
- Updated xenocara xpr to 1.0.3, xprop to 1.1.0, xrdb to 1.0.6, xrefresh to 1.0.3 and xsetroot 1.0.3.
- Updated xenocara xkbutils to 1.0.2, xkill to 1.0.2, xlsatoms to 1.0.2, xlsclients to 1.0.2, and xman to 1.1.0.
- Updated xenocara xdpyinfo to 1.1.0, xdriinfo to 1.0.3, xev to 1.0.4, xgamma to 1.0.3, xhost to 1.0.3 and xinput to 1.5.0.
- Added -a option to tmux(1) to kill all except current pane.
- Added M-audio Audiophile 2496 to the list of supported envy(4) devices.
- Updated xenocara x11perf to 1.5.1, xclipboard to 1.1.0 and xcmsdb to 1.0.2.
- Updated xenocara iceauth to 1.0.3, mkfontscale to 1.0.7, mkfontdir to 1.0.5 and smproxy to 1.0.3.
- Enabled event handling on the mpi(4) driver, makes SAS hotplug work.
- Reworked interrupt handling on the sgi platform.
- Added an xbpci(4) device for mips machines, between xbridge and PCI.
- On mips64, prevent mapping of the zero page.
- Added Option GT HSUPA 380E to the list of supported umsm(4) devices.
- Added support for a passphrase file to bioctl(8).
- Fix 2TB issue in sd(4).
- Synced mandoc to 1.9.9.
- Added handle locking in stdio for threaded applications.
- Prevent deadlocks in popen(3) on FILE locking when threaded applications fork(2).
- Reworked UTF-8 handling in tmux(1).
- On sgi, added dri2 to the list of pre-loaded Xorg modules.
- Updated time zone data to tzdata2009o.
- Sync mandoc to 1.9.6.
- Make interfaces able to accept gratuitous ARP requests where the link route points over the carp interface.
- Make sure the kernel cancels the timeout when disabling the profiling/virtual timer.
- On sgi machines, get serial console speed from the PROM.
- Added detach support to various network drivers.
- Imported gcc 4.2.1, the last release with GPLv2 license.
- Disable interrupt coalescing on mpi(4).
- Make IP30 and IP35 sgi systems report exact model for the hw.product sysctl.
- Fix buffer cache backoff in the page daemon.
- Added support in m4(1) for the -P option to prefix builtins with m4_.
- Make sgi iof(4) pass its bus speed to attached children to allow com(4) work if the PCI bus degrades.
- Connect pcppi bell to ukbd so x86 systems with an USB console keyboard can cause beeps.
- Moved the WRKOBJDIR default location for ports(7), since the obj dir would confuse mirror-maker and other apps.
- Fix in libevent when handling a malloc failure.
- Added SB600 to the list of supported auixp(4) devices.
- Imported perl 5.10.1.
- Fix em(4) support for 82543GC-based devices.
- Added a fuzzy addition mode to pkg_add(1).
- In smtpd(8), implemented proper virtual domains.
- Enable kbd(8) on the landisk and socppc platforms.
- Added support in bge(4) for the Broadcom BCM5717 ASIC and the BCM 5717/8 chipsets.
- Updated xf865-video-geode to 2.11.6.
- In em(4), add support for the ICH9 M V chipset.
- Fix mbuf leak in the route rtinit() function when detaching an interface.
- Updated xf86-video-nv to 2.1.15.
- Added a "grouped sessions" option (-t) to tmux(1) and an option to allow the mouse to select the current pane.
- Updated xenocara xmodmap to 1.0.4 and xfs to 1.1.0, xbacklight to 1.1.1 and setxkbmap to 1.1.0.
- Let udl(4) select the maximum resolution using the EDID parsing from videomode.
- em(4) now has a working detach function.
- In tmux(1), be less aggressive about turning the cursor off.
- Fix in azalia(4) for NVidia hda controllers.
- Added support for the temperature sensor of VIA Nano and C7-M CPUs.
- Redid the route lookup in the pf(4) output (and IPv6 forwarding) path if the destination was changed by pf(4).
- Added support in bgpd.conf(5) to enable/disable individual BGP capabilities per neighbor, and enable all capabilities by default from now on.
- Added minimalistic detach/unmap bits for pciide(4).
- When processes exit, move the dropping of the big lock from the end of exit1() to the middle of sched_exit(). May prevent reaper panics.
- Added some Intel 10GbE cards to the list of supported ixgbe(4) devices.
- Merged detach logic from msk(4) to sk(4) so this driver can detach as well.
- Readded support for divert(4) sockets in pf(4).
- Fix ipsecctl(8) when operating IKE in dynamic mode and no srcid is given.
- Avoid i386 panics when handling XMM exceptions.
- Avoid NULL dereference in smtpd(8) when the final RCPT TO is refused.
- Added support for DS15/DS25/ES45 alpha models.
- Move alpha kernel link address higher to accomodate SRM with larger footprint than the usual 2MB.
- OpenSSH 5.3 released.
- Added support for generic soft interrupts on macppc.
- In ospfd(8), announce a stub network LSA for backup carp interfaces.
- Added Phison PS5000 to the list of supported pciide(4) devices.
- Added -S and -L options to pfctl(8) to store and load pf state table from a file.
- On amd64 and i386, make sure the video buffer area and BIOS areas are unavailable for PCI resource allocations if the BIOS memory map did not reserve them.
- Updated time zone data to tzdata2009n.
- Added IRIX-compatible cacheflush() routine to mips ports, needed for gcc -ftrampoline operations.
- Added preliminary rdomain support to ripd(8).
- In xenocara, update xmag to 1.0.3 and xrandr to 1.3.2.
- Removed rstart from xenocara.
- In xenocara, update util-macros to 1.3.0, appres to 1.0.2, bdftopcf to 1.0.2, bitmap to 1.0.4, xauth to 1.0.4 and xclock to 1.0.4.
- Enabled axe(4) and aue(4) on palm RAMDISK kernels.
- Fix cwm(1) to hide borders of maximized windows when Xinerama is enabled.
- Fix potential double free in the 802.11 crypto code.
- Make tmux(1) support -c like sh(1) to execute a command, useful when tmux(1) is a login shell.
- Initial Xorg driver to support udl(4) devices.
- Update capability code in bgpd(8) to follow RFC 5492.
- Allow multiple prefix keys to be defined for tmux(1).
- Add support for the watchdog in the sparc64 lom(4).
- Synced mandoc to 1.9.5.
- Fix for bpf descriptor reference counts when using kqueue.
- Implemented a detach function for wpi(4) and iwn(4).
- Added support for VIA Nano CPU core temperature sensors.
- Added support in axe(4) for AX88772A-based devices.
- Initial version of a driver for LOMlite2 found on Sun Fire V100, V120 and Netra X1.
- Added bits for X11 support over the wsdisplay framework on udl(4).
- Updated xterm(1) to version 248.
- Fix libpcap IPv6 mask issue.
- Synced mandoc to 1.9.2.
- Make lock(1) back off password guesses like login(1).
- In find(1), allow -maxdepth 0.
- Added support for TP-LINK TL-WN821N to the list of supported otus(4) devices.
- Added Huawei E160E and E156G to the list of supported umsm(4) devices.
- Rework of the scsi midlayer code in order to help mpath(4) development.
- Make udl(4) handle if the command buffer runs full. Allows for higher resolutions without bumping the command buffer or xfer buffer memory.
- For socppc machines, added a 'machine fdt' command to the boot environment to dump the device tree if present.
- Make tmux(1) able to configure option such as status-bg using the entire 256 colour palette.
- Reduced the memory usage of spamd-setup(8) when handling large lists.
- Added support in udl(4) for font sizes up to 16 pixels wide.
- Added support for divert sockets to pf(4).
- Updated Time Zone data to tzdata2009m.
- Make the tcpdump(8) BGP OPEN capability parser RFC 5492 compliant.
- Update bgpctl(8) irrfilter to support IPv6 and 4-byte AS numbers.
- Bring support in socppc for the RB600 machine.
- Implemented pf(4) binat-to as a macro-like rule using a nat-to and rdr-to combination.
- For socppc machines, attach devices to obio(4) based on the flattened device tree.
- Updated xserver to 1.6.4rc1.
- Make udl(4) displays use new wsdisplay EAGAIN-like ability if the usb command queue is full. Also makes udl(4) work on MP kernels.
- Updated libxcb to 1.4, xcb-util for 0.3.6, and xterm to 247.
- Fix stackgap_alloc() issues in the compat code.
- Initial code for a palm platform.
- Bring back ICH10 support in em(4).
- Endian fix for vge(4) on big-endian platforms.
- Better sparc64 ELF load address checks in the boot blocks.
- Added support in dhcrelay(8) for RFC3046 "DHCP-over-ipsec".
- Defer hardware crypto network operations to splsoftnet in order to not create issues with ipsec.
- Make socppc attach devices to mainbus(4) based on information from the flattened device tree.
- Make getaddrinfo(3) accept numeric servname when ai_socktype is not specified.
- In smtpd(8), show mbox write errors in "show stats".
- In bgpd(8), implement the RFC4486 BGP Cease Notification Message subcodes.
- Initial support for ISP2000 SBus FC cards.
- Enabled SBus ti(4) on sparc64 GENERIC and RAMDISK kernels.
- Make pf.conf(5) no-df clear the IP_DF bit when enabled, like it was intended.
- Glue for sbus version of the ti(4) Sun Vector Gigabit Ethernet card.
- Fix a race in ssh-agent(1).
- Large rewrite of all NAT code in pf(4) turning nat and rdr into actions on regular rules.
- Make relayctl(8) exit with a non-zero value if relayd returned an error.
- In dhcpd(8), echo back the Relay Agent Information option if present, and add support for the ipsec-tunnel hardware type.
- Make the rtinit() routing code cope when there is a more specific route available than the one planned to remove.
- Added a "display-panes" command to tmux(1).
- Prevent ppp(8) from ending up in an infinite loop during NAT.
- Added support for sparc isp(4) ISP220 SBus FC cards.
- Make tcpbench(1) use poll(2) instead of forking lots of children.
- Fix cap_mkdb and curses to better reformat terminfo entries into the capabilities database format.
- Allow sftp-server(8) setting an explicit umask on the command line.
- Reduced polling of the keyboard controller in the pckbc code.
- Don't stop libc fts(3) from traversing a directory if we reach SHRT_MAX.
- Make relayd.conf(5) allow interface names as addresses.
- Speed up softraid(4) RAID6 writes by precalculating XOR lookups.
- Avoid renaming on destination files in ftp(1) when following a redirection URL.
- Added OGG media types from RFC 5334 to the httpd(8) mime.types database.
- Added ! support to ProxyPass in httpd(8) to exclude directories from being proxied.
- Added Novatel EU870D to the list of supported umsm(4) devices.
- Enabled compression in udl(4).
- Make amd64 and i386 machines without PS/2 keyboards not attach pckbd0, so a USB keyboard can become the console.
- Added support in udl(4) for a 16bit huffman table to allow for pixel difference compression.
- Updated xf86-video-ati to 6.12.2.
- Removed the strip(4) device.
- Added iha(4) to amd64 GENERIC kernels.
- Moved NFS request from a global tailq to a per nfsmount queue.
- Added parser on socppc for Flattened Device Tree.
- Don't set up multicast on fxp(4) when in promiscuous mode.
- Fix order of arguments to memcpy() in pf(4), partial fix for interfaces with >64 aliases.
- Added keybinding in cwm(1) to allow horizontal maximization of a window.
- Improved CF slot handling on socppc machines.
- Fix nnpfs mmap vs read sync issue.
- Updated libFS to 1.0.2, libSM to 1.1.1, libXt to 1.0.6 in the xenocara tree.
- Synced mandoc to 1.8.5.
- Fix in bgpd(8) for peers with a 4-byte AS number when connecting to a template neighbor.
- Corrected c++ reference counts on hppa/hppa64.
- Rework asynchronous I/O in NFS using separate buf queues for each mount.
- Fix for ld.so(1) regarding the library minor numbers.
- Added support for iof(4) serial using the sgi IOC4 chip.
- Added support in sftp(1) for recursive transfer support.
- Removed the sysmerge(8) -a switch, that is default now.
- Updated time zone data to tzdata2009l.
- Added a ddb(4) command to show all buffers.
- Make relayctl(8) report routers.
- In sshd.config(5), allow PubkeyAuthentication to the list allowed in a Match block.
- Make it possible to specify a port in resolv.conf(5).
- Added UDF 2.5/2.6 support, allowing read-only access to HDDVD and Blu-ray disks.
- Added ddb(4) function to show all nfs nodes.
- Enabled lisa(4) on amd64 and i386 GENERIC kernels.
- Use a lock to prevent the nfs_nodetree from a race condition when vnode recycling could pull a vnode out under our feet.
- Avoid double release of vnodes in the NFS server code.
- Added packet rate counters on the vmstat screen in systat(1).
- Added rwlock(9) assertion functions, disabled for now.
- Add wake support for pckbd(4).
- Added option KVA_GUARDPAGES to config(8), to enable guard pages for kernel allocations and slow recycling of kva.
- Rewrite the promisc mode/multicast handling code for the sparc hme(4) driver.
- Added vscsi(4) to GENERIC kernels.
- Allow tcpbench(1) to bind to a different rdomain.
- Added a "router" functionality in relayd(8) to add or remove routes.
- Added a command in ddb(4) to show all vnodes.
- Changed amd64 kernel linking to use a linker script, Helps if we want to use larger pages for text/etc, and stop saving the .eh frames.
- Made the i386 APIC code closer to amd64.
- Add wake support to acpihpet(4).
- Optimized raid6 in the softraid(4) code. 30% speedup on write.
- Changed the way the hppa pmap code marks non-equivalent writeable aliases in pages and whack all other mappings on that page.
- Redone the filesystem namecache from a large single hash table to a global LRU of entries, and a redblack tree in each vnode.
- Make sure backing store for EGA and VGA virtual consoles are done using the correct geometry.
- Rework the if_start routine for interfaces to better handle overload situations where it would otherwise call the softint too seldom.
- New lisa(4) driver for the ST LIS331DL accelerometer.
- Make MCLGETI handle situations when we get low on clusters for RX rings during interrupts and make the driver free up clusters for later allocation.
- Added support for the "Slots Power" sensor on the PowerMac9,1.
- Added support in sysctl(1) for SENSOR_WATTS.
- Make sftp(1) handle most of scp(1)s command line arguments.
- Add support for more sensors in smu(4) on macppc.
- Enabled bwi(4) on armish GENERIC and RAMDISK kernels.
- Fixed a few bugs in the NFS rename error recovery code.
- Use splhigh instead of splclock for amd64 and i386 IPIs, fixes stability problems on some SMP machines.
- Added gpio(4) support for amd64.
- Changed the way shutdown for interfaces are done to prevent active interfaces to continue do DMA during and after a reboot.
- Moved the filehandle/node lookup hash tables to red-black trees.
- Removed the old NFSv2 write-gather code, didn't actually improve performance.
- Initial version of the DDB_STRUCT kernel option, to add symbolic information about kernel structs and ddb(4) commands to display them. Not enabled by default.
- Scale both receive and send buffer on the raw socket in ospfd(8), makes it work on networks with large MTUs.
- Synced mandoc to 1.8.4.
- Added mpath(4), a driver that steals paths to scsi devices if they could be available via multiple paths and then made available via mpath(4).
- Reworked the SysV message queue code to not allocate a static amount of memory for messages.
- Fix multicast handling in ale(4).
- Added support in ipgphy(4) for the IC Plus IP1001 GigE PHY.
- Fix livelock in the buffer cache code for low-memory situations.
- Enabled alc(4) on amd64 and i386 RAMDISK kernels.
- Added alc(4), a driver for Atheros AR8131/AR8132-based ethernet devices.
- Added Digitus DN-7001G to the list of supported acx(4) devices.
- Added -E flag to sed(1) to enable extended POSIX regular expressions.
- Initial code for Loongsoon2E/F processor support.
- Make sure we do not read 1000BaseT specific registers on a 10/100M ale(4) device.
- Enabled XCB on the shared libs architectures.
- Specify ID-type of IPV4_ADDR or IPV6_ADDR in ipsec.conf(5) if the srcid or dstid is given as an IPv4 or IPv6 address, rather than as a FQDN.
- Fix crash in wall(1) when sending to a large group.
- Recommitted the dynamic buffer cache support.
- Fix hangs on hppa due to races when accessing the list of interrupt handlers.
- Added support for VSC8211, CS8244 and VSC8601 PHYs in the ciphy(4) driver.
- Added support for BCM5761 in the brgphy(4) driver.
- Added Linksys WUSB54GC v3 to the list of supported run(4) devices.
- Fixed named(8) DNS update DoS.
- Plug a memory leak when calling rtable_add() multiple times.
- Change configure test of pixman to make it use MMX code if possible.
- Added Alfa AWUS036H to the list of supported urtw(4) devices.
- Added gem(4) and gentbi(4) on sparc RAMDISK kernels.
- Enabled ti(4) on hppa GENERIC kernels.
- Added flow control support to age(4) and ale(4).
- Added Digital EtherWORKS to the list of supported ti(4) cards.
- Added bus speed recognition on Nehalem based CPUs. Makes Enhanced SpeedStep work.
- Added a PCIOCGETROM ioctl(2) to read PCI ROMs.
- Fix flow control on stge(4) devices.
- Synced mandoc to version 1.8.1.
- Alignment fix in bwi(4) on armish machines.
- Added midi data sending capabilities to aucat(1) using midicat(1).
- Switch re(4) over to the MCLGETI buffer allocator.
- Retune sleep time on VIA VT6202 based machines, especially armish ones.
- Added softraid(4) framework for RAID6, disabled for now.
- New aibs(4) driver for ASUSTeK AI Booster hardware monitoring.
- Added big-endian support to the sis(4) driver.
- Fix ddb(4) traceback disassembly on sparc64 when the fault is on the first instruction of a routine.
- Added PCI-Cardbus bridge support on sgi for both O2 and Octane/Origin class systems.
- Allow systat(1) to resolve names by adding the -N flag.
- gcc 2.95 fixes for xcb-util.
- Updated the time zone data to tzdata2009k.
- Make sure the xf86-video-sunffb disable the hardware cursor before exit.
- Added "text" (executable) to the fstat(1) and fuser output.
- Synced mandoc to 1.8.0.
- Fix potential mbuf leaks in the NFSv2 rpc code.
- Added bus_space_[read,write]_raw_[248] functions for sgi. Makes wi(4) devices work.
- Updated the bus_dma(9) on sgi machines to be closer to the other platforms. Adds a working bus_dmamap_load_uio() which in turn makes crypto(4) devices work.
- More careful format string parsing in printf(1).
- Added Edimax EW-7711UTn to the list of supported run(4) devices.
- Back out the one-slot queue length commits for trunk(4) and vlan(4).
- Enabled ppb(4) on sgi O2 kernels.
- Make PCI-PCI bridge initialization code on sgi bus-independent.
- Added round, roundf, trunc and truncf for hppa libm.
- Unbreak the moko builds, move SOFTSERIAL to SOFTTTY and a pmap change for moko.
- Added gem(4) on sbus(4) for sparc GENERIC and SUN4M kernels.
- Added a bus_dma(9) interface for sparc sun4m machines.
- Added rdomain checks in the sppp(4) case.
- Make the vlan send queue one slot long, to force packets off the virtual interface queue down to the physical interface immediately.
- Synced mandoc to 1.7.23.
- Make fstat(1) accept numeric UIDs as well as usernames.
- Enabled gem(4) at sbus for sparc64 GENERIC and RAMDISK kernels.
- Enabled hotspare rebuilds for softraid(4) RAID1.
- Added support for global hotspares to softraid(4)
- When rebooting sgi machines, pass a request to the PROM to skip diagnostics and memory initializations. Shortens reboot times.
- Delayed creation of tun(4) devices in the netstart(8) script.
- Fixed link state handling in the ix(4) driver.
- Added support for the onsemi cat34ts02 and cat6095 sensors in sdtemp(4).
- Reverted the MCLGETI allocator for sk(4).
- Added POSIX-compliant fuser mode to fstat(1).
- Better invoking of login shells in tmux(1).
- Made ripd(8) aware of MPLS routes.
- Synced mandoc to 1.7.22.
- Rewritten PCI resource allocator for sgi machines. Makes bge(4) work.
This list mentions mostly platform-independent changes. For a list of changes
made in a particular platform, please check the page for that platform. If you
find them not listed there, the changes are either (1) not being documented or
(2) are documented here.
www@openbsd.org
$OpenBSD: plus47.html,v 1.2 2010/06/03 16:49:08 deraadt Exp $