OpenBSD -current changelog
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.8 and -current
- Prevent usb(4) usbd_{bulk,intr}_transfer from catching signals if a timeout is set.
- Fixed simple passwords with SHA in ldapd(8).
- Avoid pointer arithmetic on void * in malloc(3).
- Fixed length of the array containing VIA ciphers in crypto(9) and crypto(3).
- RELIABILITY FIX: Bring CBC oracle attack countermeasures to hardware crypto accelerator land. This fixes aes-ni, via xcrypt and various drivers: glxsb(4), hifn(4), safe(4) and ubsec(4).
A source code patch is available.
[Applied to stable]
- SECURITY FIX: Insufficent initialization of the pf rule structure in the ioctl handler may allow userland to modify kernel memory. By default root privileges are needed to add or modify pf rules.
A source code patch is available.
[Applied to stable]
- Fixed bug in dhcpd(8).
- Prevent uticom(4) from panicking when being attached. Enable it in i386 and amd64.
- Added security fix in OpenSSL for CVE-2010-4180.
- Prevent delays in usb(4) if the device dying.
- Make cron(8) treat a missing spool dir like an empty one.
- Disabled access to crypto(4) from userland.
- Implemented fast path TLB miss handling on the landisk platform. Improves speed by 44-50%.
- Make voyager(4/LOONGSON) use the dying flag in struct usbd_usb instead of a private dying flag.
- Make ohci(4), uhci(4), ehci(4) use the dying flag in struct usbd_usb instead of a private dying flag.
- Make math(3) HUGE_VAL, HUGE_VALF, HUGE_VALL, INFINITY, NAN expand to the constant expressions with the help of GCC version posterior to 3.3.
- Fixed bug in cwm(1).
- Make tmux(1) read ${X} environment variables in strings and $HOME from the global environment rather than getenv, this allows them to be updated during the configuration file.
- Fixed a race condition in ldconfig(8).
- Simulate a full login with su(8) in rc.subr.
- Make su(1) call setusercontext() with the LOGIN_SETENV flag for su -l to pick up environment variables specified in login.conf.
- Prevent ospfd(8) and ospfd6(8) from using a carp address as ospf router.
- Improved pkg_delete(1).
- Prevent smtpd(8) resolver from reading past the end of a buffer.
- Make sure GCC configuration file for sparc OpenBSD is consistent with <sys/types.h>.
- Fixed segmentation faults with GCC4 by allocating a full C compiler-style stack frame that includes space for 6 extended word arguments slots required by the sparc ABI in sparc ld.so(1).
- Make rsu(4) match the Planex GW-USNano.
- Added support for the ZTE MF112 from MERIGHI Marcus to umsm(4).
- Make urtwn(4) drop Rx'd frames larger than MCLBYTES.
- Added rsu(4), a driver for Realtex RTL8188SU, RTL8191SU and RTL8192SU 802.11n USB devices. Enabled it in i386 and amd64 GENERIC kernels.
- Allow tmux(1) to track the last session for a client and add a flag to switch-client a key binding (L) to move a client back to its last session.
- Fixed tmux(1) rectangle copy to behave like Emacs.
- Make tmux(1) prompt history global for all clients.
- Make mandoc(1) SYNOPSIS sections and code having .nr nS enabled behave as if the whole code were wrapped in .Bk/.Ek.
- Fixed bug in urtwn(4).
- Allow the rc.d system to mark an rc action as unsupported by setting the corresponding variable to NO.
- Prevent the rc.d system from overwriting settings in the rc scripts.
- Added support for setting _user _class and _shell for a specific daemon launched with rc.d, and use su(1) to start the daemons.
- Fixed bug in su(1).
- Fixed a file descriptor leak in rcs(1).
- Make mandoc(1) abort endless loops during roff macro and string expansion.
- Allow mandoc(1) quote macros (`Op', `Aq', `Bq', `Dq', `Pq', `Ql', `Qq', `Sq', and `Brq') to have zero arguments without warning.
- Added support for -s login-shell to su(1).
- Fixed an infinite loop in bgpd(8).
- Prevent isakmpd(8) from deleting SAs from the same IP on an INITIAL-CONTACT message. Fixes PR5562.
- Added a -3 option to scp(1) to transfer copy between two remote paths through the local host.
- Make xinput use ASCII art when the environment is not UTF-8 capable.
- Distribute the panes more evenly in tmux(1) built-in layouts and set the default value of main-pane-width to 80 rather than 81.
- Fixed bug in amd64 {rdmsr,wrmsr}_locked functions.
- Updated xf86-video-geode to 2.11.10.
- Improved i386 and amd64 checksumming of disks that need to be matched to BIOS disks. Prevent a wrong disk from being attached as boot disk.
- Make mandoc(1) ignore .ft when used with -Thtml.
- Prevent mandoc(1) from reporting the same problem more than one time.
- Added an option in tmux(1) for silence (lack of activity) in a window.
- Prevent mandoc(1) from printing .P, .PP and .LP header content.
- Prevent mandoc(1) from following .D1 and .Dl inside .Bd with a blank line.
- Avoid calling xf86DPMSInit() twice in xf86-video-sunffb. Fixes X server crashes that appeared with the xserver 1.9.2 import.
- Allow better compiler optimization of PMAP_PREFER on arm, hppa, hppa64, m68k, mips64, solbourne, sparc and sparc64.
- Updated CGI(3p) to version 3.50 (includes a fix for SA42443).
- Added a -D flag to specify the display to start xtsscale(1) on.
- Make ehci(4), ohci(4), uhci(4) set the dying flag when having an unrecoverable error. Check the dying flag in timeout and interrupt handlers.
- Make uhci(4) delete the interrupt timeout in the detach routine as in ehci(4) and ohci(4).
- Make use of usbd_deactivate and usbd_is_dying instead of own dying routines in atu(4), aue(4), axe(4), cue(4), mos(4), ral(4), rum(4), uath(4), udav(4), upgt(4), url(4), urtw(4), zyd(4), udcf(4), ueagle(4), umbg(4).
- Make usb(4) call config_deactivate() before config_detach() when detaching devices.
- Make usb(4) use usbd_is_dying() instead of directly checking the device's bus dying flag.
- Make usb(4) check that the root hub has been configured before trying to free it's resources.
- Added dying flag to usb(4) struct usbd_device. Added usbd_deactivate() to set it. Added usbd_is_dying() to check if the flag has been set and use it before issuing transfers or requests.
- Improved xf86-video-glint for sparc64. Make mplayer play video without weird colors.
- Upgraded xorg-xserver to version 1.9.2, xf86-video-savage to 2.3.2.
- Make pyro(4/sparc64) and vpci(4/sparc64) return the appropriate size for the extended PCIe configuration space.
- Make sure nfsrv_descrpt_pl pool is initialised only once in nfs_syscalls to prevent infinite loops.
- Make pkg_add(1) framework easier to reuse.
- Make pci(4) check the register offset against the device's configuration space size in PCIOCREAD and PCIOCWRITE ioctls.
- Introduced a new pci routine, pci_conf_size(), in all platforms machine-dependent code. It returns the size of a given pcitag_t configuration address space.
- Added a simple bus_space_barrier implementation in octeon.
- Fixed a file descriptor leak in ssh(1).
- Fixed iockbc(4/sgi) compilation.
- Updated amd64 locore.S for handling the new size of pm_cpus, member of pmap(9).
- Added support for DUIDs in swapctl(2).
- Added a protocol extension to sftp(1) to support a hard link operation.
- Make ssh(1) key authentication check for revoked keys earlier.
- Fixed a file descriptor leak in smtpd(8).
- Make mandoc(1) properly initialize the manual section to a default when .Dt is missing. Prevent it from dying on an assertion.
- Added quirks to usb(4) to prevent it from attaching the hid interface of the Texas Instrument MSP430.
- Prevent savecore(8) from reading lapic area by not linking vers.o last.
- Make the hotplug(4) queue dynamic. Allow it to increase size without waste.
- Introduced a -N option in tar(1) to make it use only the numeric UID and GID values when creating or extracting an archive.
- Prevent umodem(4) from matching, attaching devices without a data endpoint since umodem(4) can't use them.
- Prevent mandoc(1) from assuming autodetected file format are all the same.
- Disable default maintainer mode in makedepend(1). Suppress extra attempts to re-run autoheader that fails.
- Added a -s option in bioctl(8) to allow passphrase read from stdin.
- Prevent find(1) from throwing an error if it can't opendir() while -empty is used.
- Make perl(1) work with THREADED_PERL=true, though not enabled by default.
- Increase the maximum number of monitored hosts and concurrent health checks in relayd(8). Fixes issues when having around 100 hosts or more.
- Replaced a large stack buffer with a malloc call in localtime(3).
- Avoid ssh(1) hostkey warnings when connecting to servers with new ECDSA keys that are preferred by default.
- Improved iked(8) and isakmpd key exchange speed.
- Updated xterm to 267, xf86-video-apm to 1.2.3.
- Make tmux(1) configure mode-keys and status-keys to vi if $VISUAL or $EDITOR are set to "vi".
- Let ifmedia(4) ifa_print_rb() build on kernels not implementing inet6. Fixes some RAMDISK builds.
- Make ssh(1) correctly load comment for encrypted rsa1 keys.
- Make fsck -p respect fs_passno > 2 as implied by fsck(8) manual.
- Make bgpd(8) deny prefixes that have F_ATTR_PARSE_ERR set by default. Prevent them from leaking into the Loc-RIB or other RIBs but act as withdraws.
- Introduced a new asynchronous resolver in smtpd(8).
- Added rss mime type to httpd(8).
- Removed .Sp, .Vb, and .Ve workarounds from mandoc(1) now it has a proper .de support.
- Implemented the roof .ft (change font) request for man(7).
- Bumped the number of supported CPUs from 32 to 64 on i386 and amd64.
- Fixed hangs seen with MCLGETI and put it back in re(4).
- Removed machdep.root_device sysctl(3) in alpha platform.
- Added boot descriptor support to octeon.
- Removed machdep.debug, machdep.booted_device and machedep.booted_kernel sysctl(3) in arm, armish, beagle, gumstix, palm and zaurus architecture.
- Enabled __HAVE_PMAP_DIRECT on mips64, unless the kernel is configured to run on R5000 family processors.
- Fixed a carp(4) panic.
- Improved mandoc(1) handling of error message when parsing unimplemented macros.
- Make mandoc(1) parse and ignore .ad, .hy, .nh and .ne roff requests to reduce ERROR messages from mandoc -Tlint.
- Prevent mandoc(1) from printing bogus ERROR messages about undefined macros.
- Improved the way saved registers are displayed in arm backtraces.
- Removed the global pmap list and related debug code in arm machine-dependent code.
- Removed the vm_map field of ddb(4) breakpoints and watchpoints, and do not pretend these could work on userland addresses.
- Removed ddb(4) single-step load and store counters.
- Updated xf86-input-keyboard to 1.5.0.
- Make sure i386 and amd64 kernels don't attach more CPUs they can handle and allow OpenBSD to boot on machines with more than 32 CPUs/cores.
- Make pkg_add(1) keeps track of all manpages directories.
- Increase uvideo(4) UVIDEO_MAX_FRAME to 32 to support 28 possible frame types.
- Improved gfxp(4/sparc64).
- Disabled uscanner(4) by default on all kernels which configure it.
- Fixed ldapd(8) re-indexing by checking if an index entry already exists.
- Make rc.shutdown(8) print the daemon name before rc_stop.
- Remove sunmouse protocol decoder from Xenocara.
- Make scp(1) pass through ssh command-line flags and options when doing remote-remote transfers.
- Make mandoc(1) support quoting of arguments passed to user-defined macros and make .del a synonym for .de.
- Implement the .de (define macro) roff instruction in mandoc(1).
- Updated xcalc to 1.0.4, xeyes to 1.1.1, xf86-video-ast to 0.91.10.
- Updated xlsatoms to 1.1.0, xlsclients to 1.1.0, xwininfo to 1.1.1, all rewritten to use XCB.
- Added floating-point emulation code for systems mips64 systems lacking proper FPU like octeon.
- Allow machine-dependent code to setup machine-dependent specific mappings in sys_execve(), if machine-dependent defines __HAVE_EXEC_MD_MAP.
- Improved ptrace(2) usage on mips64.
- Implemented a real pmap_proc_iflush() in mips64 chipsets.
- Fixed uvideo(4) controls that use two-bytes signed data on sparc64.
- Make sure that hw.disknames gets updated whenever a disklabel is set.
- Make relayd(8) set the number of hosts that are up to zero when disabling and enabling tables.
- Fixed bug in smtpd(8) aliases.
- Avoid NULL dereference in ssh(1) when receiving a channel request on an unknown or invalid channel.
- Improved octeon interrupt handling.
- Prevent RAMDISK sysctl(8) from printing terminating null character after strings.
- Make mii(4) recognize the Marvell PHYG65G Gigabit PHY.
- Removed WINDOW_HIDDEN flag from tmux(1).
- Make zs(4/macppc) use cons_decl() to get console routine prototypes.
- Make installation script create devices for fstab entries that are using disklabel(8) UID.
- Improved cd(4).
- Removed timer randomness in random(4) ioctl.
- In Xenocara, updated xf86-input-mouse to version 1.6.0.
- Refactor ssh(1) internals of private key loading and saving to work on memory buffers rather than directly on files.
- Make uhci(4) handle uhci_alloc_sqh() properly when it fails to allocate memory in uhci_device_setintr().
- Make ssh-agent(1) use "$TMPDIR/ssh-XXXXXXXXXXXX/agent." instead of hardcoded "/tmp/ssh-XXXXXXXXXXXX/agent." for its socket.
- Added wsdisplay_rawkbdinput() for raw mode input in wskbd(4).
- Start work to get rid of avail_start and avail_end in the kernel.
- Prevent mac68k machine-dependent code to overrun memory ranges array.
- Fixes panic on bridge(4) destroy.
- Added urio(4), uscanner(4) and pseudo-device hotplug(4) to sgi GENERIC-IP27, GENERIC-IP30, GENERIC-IP32 kernels.
- Added urio(4) and uscanner(4) to loongson GENERIC kernel.
- Added pseudo-devices hotplug(4) and wsmux(4) to hp300, landisk and sparc GENERIC kernels.
- Make install/upgrade drop dhcp group from interfaces which did not go UP and got an IP address.
- Do not allow malloc() to wait in uhci(4) uhci_device_setintr(), instead check for failure and return USBD_NOMEM: callers will do the right thing.
- Make KERN_CPTIME return an average number of ticks across all CPUs in sysctl(3).
- Prevent installboot(8/sparc64) from crashing if the bootblock is zero-sized. Apply similar fixes to installboot(8/mvme68k), installboot(8/mvme88k) and installboot(8/sparc).
- Prevent dhcpd(8) from trying to listen on interfaces that don't have a valid broadcast.
- Fixed lynx(1) SSL error when going to sites using wildcards certificates.
- Prevent MAKEDEV from running for a UID in install.
- Make sure NTFS and ext2 readdir cookies are actually allocated with the correct size.
- Added NVIDIA MCP89 SATA controllers in the PCI IDE controller driver.
- Make bgpd(8) log notification messages.
- Make bgpd(8) accept but ignore updates with AS_CONFED_* path segments, treating them as withdraw.
- Added ifa_print_rb() to ifmedia(4) to allow dump of the ifaddrs red-black tree to the console in ddb(4).
- Make ifmedia(4) maintain a red-black tree of ifaddrs structures and make ifa_ifwithaddr use it for lookups.
- Applied security fix for OpenSSL CVE-2010-3864.
- Introduced ifa_update_broadaddr in ifmedia(4) to update an ifaddrs broadcast address,
- Allow iked(8) -D command line flag to actually define macros.
- Make mount_msdos(8) handle disklabel(8) UID.
- Make fsck(4) try to determine file system type using readlabelfs(3) when given a disklabel UID.
- Added support for Marvell 88E8059 in msk(4).
- Fixed a null pointer dereference in route(4) that was causing kernel crashes.
- Make urtwn(4) attach FeiXun products.
- Fixed error message when ld.so(1) ends up loading a different than expected library, but other library needs the one loaded.
- Periodically measure temperature in urtwn(4) and redo LC calibration if temperature changes significantly since last LC calibration.
- Added support in relayd(8) for enable/disable table when using relays instead of redirects.
- Fixed a pointer bug in cardbus(4) com(4).
- Make ipw(4) and iwi(4) ${if}_stop reset ic_scan_lock as in wpi(4) and iwn(4)
- Added urtwn(4) to armish, landisk, macppc, socppc and loongson GENERIC kernel.
- Make readlabelfs(3) handle disklabel(8) UID.
- Make isduid(3) easily usable.
- Prevent smtpd(8) from exiting if smtpctl schedule is run with a valid but non-existent message ID.
- Improved amd64 AESNI driver.
- Prevent who(1) from producing lines longer than 80 columns.
- Make tmux(1) show more window and pane flags in list-* output, and put layout on the same line.
- Improved aucat(1) midi.
- In Xenocara, updated Pixmap to version 0.20.0.
- Prevent tmux(1) last and active window from becoming the same.
- Allow ssh and sshd to set arbitrary TOS/DSCP/QoS values instead of hardcoding lowdelay/throughput.
- Removed bdwrite to bawrite conversion in vfs(9).
- Switched from TSS-per-process to TSS-per-CPU in amd64.
- Reverted MCLGETI for re(4) as it is causing hangs.
- Push all potential system MI .h files not utilized by the bootblocks into the ctags run as well to bring #define's and structs and such into scope.
- Make pfctl(8) and tcpdump(8) show the rdomain correctly.
- Make the installer properly quote the wireless config into hostname.if(5).
- Added XAUTHORITY to tmux(1) update-environment.
- Added a -a flag to tmux(1) unbind-key to flush all key bindings.
- Make tcasic(4/alpha) and esp(4/mac68k) compute synchronous transfer periods (involving the bus clock) with a better accuracy.
- In Xenocara, updated libXdmcp to version 1.1.0, libXext to 1.4.0, libXft to 2.2.0, xtrans to 1.2.6, libXi 1.4.0, bh-ttf to 1.0.3, mkfontdir 1.0.6, xdriinfo 1.0.4, xgamma to 1.0.4, xinput to 1.5.3, xkill to 1.0.3, xrdb to 1.0.7, xrefresh 1.0.7, xset 1.2.1, xwd 1.0.4, xwud 1.0.3.
- Prevent acpibat(4) from recursing infinitely on the notify function.
- Updated athn(4) AR9380: added the different ROM templates for the different chips, fixed AR_PHY_65NM_CH0_TOP_XPABIASLVL definition, applied attenuation settings from the ROM.
- Pass aesni_ctr_enc an initial counter block instead of an initialization vector in amd64 aesni.
- Enable low latency interrupt modulation on ix(4) and set the LL interval to the maximum value to reduce the number of low latency interrupts hitting the card when the ring is getting full.
- Fixed an issue in bgpd(8) where the RDE would start up as route-collector because uninitialized memory made the RDE switch to that mode.
- Make ldapd(8) -dvv flags produce debug traces of decoded BER messages on stderr. Also shows a hexdump of the input buffer if BER decoding fails.
- Make ldapd(8) prefix debug logging on stderr with time and pid, like syslog.
- Use only libcrypto APIs that are retained with OPENSSL_NO_DEPRECATED in ssh(1).
- Set rdomain maximum route-id to RT_TABLEID_MAX in ifconfig(8), as it is for the kernel.
- Improved drm(4).
- Prevent rc(8) from printing 'Null message body; hope that's ok' in the rc output if the call to rc.firstime doesn't output anything to mail(1).
- Added %F, %g, %G, %u, %z (extended) and %Z conversion specifications to strptime(3) format string.
- Use scandir(3) instead of getdirentries(2) in diff(1). Call to getdirentries(2) should be avoided outside of libc.
- Clear ERL register on octeon locore.S.
- Added sched_get_priority_{min,max} to libpthread.
- Moved softraid(4) raid1 and crypto to a workq.
- Make sio_onvol(3) return a integer exposing whether a volume knob is available for the stream.
- Added a temporary workaround for imake(1) buff with variable substitutions.
- Prevent revision 0xc4 and earlier of the Acer Labs M5229 UDMA IDE from doing DMA for LBA48 commands. It makes large disks slower but working properly.
- Make ATA wdc(4) work around some bugs in certain pciide(4) controllers.
- Added security fix for the TrueType FX font variation loader of FreeType in Xenacara (CVE-2010-3855).
- Added a security fix for the TrueType bytecode interpreter of FreeType in Xenocara (CVE-2010-3814).
- Added urtwn(4) to sparc64 GENERIC kernel.
- Added urtwn(4), a driver for Realtex RTL8188CU/RTL8192CU 802.11n USB devices.
- Added experimental support for full dynamic range of 24-bit hardware use for i386, amd64 and sparc64 only. It is disabled by default since most hardware and audio programs use 16-bit precision.
- Added moscom(4), ucom(4), uts(4), uhts(4), uberry(4), uath(4), otus(4), upgt(4), urtw(4), urtwn(4), utrh(4) to macppc GENERIC kernel.
- Implement ddb(4) command "show mbuf addr".
- In Xenocara update xf86-video-geode to 2.11.9.
- Fixed a possible use of uninitialized variable in mrouted(8) IGMP.
- Make systat(1) print relative number of mbuf(9) livelock that happened between two systat updates instead of showing absolute figures.
- Make ldapd(8) return earlier when the base DN in a search request doesn't exist.
- Make ldapd(8) truncate additional incomplete requests when the input buffer already get two complete requests. Fixes the number of bytes consumed from the input buffer.
- Make bridge(4) filter out reserved destination MAC addresses (01:80:C2:00:00:0x) as per the 802.1D-2004 spec.
- Synchronized tcpdump(8) with tcpdump.org to fix multicast DNS support.
- Make ldapd(8) publish matching rules in the cn=schema subentry as the matchingRules attribute as required by RFC4517.
- Make ldpd(8) rewrite all packet parsers to be more careful about alignment.
- Make ldpd(8) only consider paths with highest priority when replying to label requests.
- Make sure sysmerge won't end up using /usr/src/etc when the correct option isn't passed.
- Fixed a bug in pkg_add(1) when used with: -nz bsr.
- Make ntpd(8) use all the IPs written during install by default in ntpd.conf(5).
- Make sftp-server(8) parse umask as octal.
- Make ctags(1) -t flag do nothing for backward compatibility as tags creation for typedefs, structs, unions and enums are the default by POSIX.
- Make pool_sethardlimit(9) not imply pool_sethiwat(9).
- Make ldapd(8) recognize all matching rules from RFC4517 except the optional wordMatch and keywordMatch.
- Use caseExactMatch instead of caseExactIA5Match in ldapd(8) core.schema.
- Make ldapd(8) evaluate filters according to the three-valued logic of X.511, as required by RFC4511.
- Make vmt(4) attach only if mainbus(4) is specifically asking for it after vmt_probe succeeds. Prevents mainbus(4) from hanging.
- Make trm(4) reduce useless retry of commands getting sense errors.
- Make make -q exit with 1 and not -1. Fixes PR6494.
- Make <sys/ressource.h> usable on its own by including <sys/time.h> as required by POSIX.
- Make the network livelock counter available from sysctl(8) and systat(1).
- Make sysctl(3) export the network livelock counter.
- Replaced a boot(RB_HALT) to a panic in amd64 machine-dependent trap.c to make it in line with the other architectures.
- In Xenocara updated xf86dga to version 1.0.3, xinit to 1.3.0,
- Added support for hex keys in the ifconfig(8) wpakey code (full length only).
- Fixed OpenCVS init command.
- In Xenocara, updated bigreqsproto to version 1.1.1, compositeproto to 0.4.2, damageproto to 1.2.1, fixesproto to 4.1.2, fontsproto to 2.1.1, randrproto to 1.3.2, recordproto to 1.14.1, scrnsaverproto to 1.2.1, xcmiscproto to 1.2.1, libFS to 1.0.3, libXres to 1.0.5, libXScrnSaver to 1.2.1, libXaw to 1.0.8, libXcomposite to 0.4.3, libXcursor to 1.1.11, libXfont 1.4.3, libXinerama to 1.1.1, libXmu to 1.1.0, libXpm to 3.5.9, libXrandr to 1.3.1, libXt to 1.0.9, libXtst to 1.2.0, libXv to 1.0.6, libXxf86dga to 1.1.2, libXxf86vm to 1.1.1, libdmx to 1.1.1, libfontenc to 1.1.0, libxkbfile to 1.0.7, imake to 1.0.4, makedepend to 1.0.3, xorg-macros to 1.11.0, bdftopcf to 1.0.3, beforelight to 1.0.4, bitmap to 1.0.5, editres to 1.0.5, fslsfonts to 1.0.3, fstobdf to 1.0.4, iceauth to 1.0.4, ico to 1.0.3, mkfontscale to 1.0.8, rgb to 1.0.4, showfont to 1.0.3, smproxy to 1.0.4, twm to 1.0.5, viewres to 1.0.3, xconsole to 1.0.4, appres to 1.0.3, xdpyinfo to 1.2.0, xedit to 1.2.0, xev to 1.1.0, xfd to 1.1.0, xfs to 1.1.1, xfsinfo to 1.0.3, xgc to 1.0.3, xhost to 1.0.4, xkbevd to 1.1.1, xkbutils to 1.0.3, xlogo to 1.0.3, xmag to 1.0.4, xman to 1.1.1, xmodmap to 1.0.5, xprop to 1.2.0, xrandr to 1.3.4, xsertroot to 1.1.0, xsm to 1.0.2, font-util to 1.2.0, encodings to 1.0.4 and all fonts packages to latest X.Org versions.
- Make the return of rfork(2) consistent with gethrid(). Fixes an rthread breakage.
- Make netstat(1) print socket structure internals when netstat -P pcbaddr is called with -v.
- Make the installer create a matching group for the user upon user creation.
- Fixed high frequencies being removed on envy(4).
- Fixed a 10 year old bug in the ld.so(1) memory allocator, which affected only sparc.
- Improved run(4) and otus(4).
- Fixed mandoc(1) command list parsing.
- Removed colcrt(1), checknr(1), soelim(1) from base.
- Removed "secrets" map from smtpd(8) and allow creation of user defined maps holding credentials.
- Make stat(1) include the octet of the mode that contains the setuid/setgid/sticky bits in the output format used for the -x option.
- Set bpf(4) alignment to 32 bits instead of sizeof(long).
- Added preliminary support for PCI and SATA to octeon.
- Allow some rules to have longer expiry delay than the default in smtpd(8).
- Fixed a 'bstp still active' panic that happens if a stp enabled interface is destroyed while in the bridge(4).
- Prevent route(4) from sending route messages to userland processes if those messages are rejected by the kernel because of bad encoding.
- Make sure the mbuf data is properly aligned when function is reinjecting packets from low level output functions into high level output functions in Ethernet-inside-IP processing.
- Added m_print() a function to print mbuf(9) headers. Can be called from ddb(4) with an mbuf pointer as argument to see the contents of it.
- Removed libdes, src/ports users have been switched to libcrypto.
- Replaced getdirentries by a new one, renaming the first to ogetdirentries().
- Fixed memory leak in OpenCVS.
- Fixed a possible NULL deref on loading a corrupt ECDH key in ssh(1).
- Prevent mandoc(1) font alternating blocks like .RB from breaking the line between children in literate mode.
- Removed skipjack and cast from libc.
- Added _SC_HOST_NAME_MAX in sysconf(3).
- Make alpha trap report proper pc address in siginfo.
- Fixed a few logic errors in misp64 comparison instruction emulation: make sure the less than relation is correctly computed, and check for both operands being signalizing NaNs, instead of only the first NaN found, to decide whether to raise an invalid exception or not.
- Fixed an off-by-one in a mandoc(1) assertion, crashing the renderer on ".Os \&".
- Prevent various usb network devices from freeing network related resources if they were not allocated.
- Added preliminary support for rc scripts in pkg_add(1).
- Prevent mandoc(1) from throwing errors when .HP .IP .RS .TP have no arguments, as they are optional.
- Merged -k and expand @@ parsing code between OpenCVS and OpenRCS, resulting in a performance gain in OpenCVS in some "cvs update" scenarios.
- Downgraded nearly 20 mandoc(1) ERRORS to WARNINGS.
- Added support for so (low-level roff "switch source file"), needed for Xenocara and various ports.
- Added a simple 'rc' system to base (/etc/rc.subr) in order to start/stop/restart/reload services installed by the ports system.
- Moved the MSIZE, MCLSHIFT, MCLBYTES and the MCLOFSET mbuf constants from hppa machine-dependent param.h to machine-independent param.h.
- Added optional "match" keyword in relayd.conf(5) to allow simpler rdr-to filter rules.
- Implemented the optional label request message ID TLV in ldpd(8).
- As required by the RFC, make sure that a wildcard FEC is the one and only FEC of that message for label release and withdraw messages in ldpd(8).
- Improved ldpd(8) struct mapping_entry.
- Make ldpd(8) lde_check_request(), lde_check_mapping(), lde_send_labelmapping(), lde_send_labelrequest() and lde_nbr_do_mappings() follow the algorithms defined in appendix A of RFC 5036.
- Allow the ldapd(8) userPassword attribute to specify a login class when using simple binds with BSD Authentication, using '#' as the delimiter.
- Enabled vmt(4) in amd64 and i386 GENERIC kernels.
- Make vmt(4) log suspend and resume.
- Big update to vmt(4), vmware tools functionality: initiate shutdown by signalling init with SIGUSR2 when requested by the host; initiate a reboot by signalling init with SIGINT when requested by the host; report the guests hostname, first non-loopback IP address and uptime to the host; update the guests timedelta sensor using the 64bit rpc.
- Added a new CF driver for octeon.
- Added a fullwidth option to pkg.conf(5).
- Make ld.so(1) search loaded libs first and add support for SONAME matching.
- Make a workaround for PR6500 in route(8) before real fix is made in the kernel.
- Improved md5(1) performance.
- Fixed a rare race-based kernel crash by statically initializing TAILQ ifnet/ifg_head in ifmedia(4).
- Make sdmmc(4) use iopool.
- Prevent mandoc(1) from throwing FATAL when there is no need to (nested displays: .Bd containing .Bd, .D1, .D1 or a forgotten block end macro or an unstarted ending block or a failed uname(3)).
- Make OpenBSD::PackingElement(3p) redirection more efficient.
- Improved OpenBSD::State(3p).
- Let .Bsx print just "BSD/OS" in mandoc(1) like in modern groff.
- Make TCP follow SUSv4 namespace rules in includes by hiding everything but the TCP_* options unless __BSD_VISIBLE is defined. Fixes PR 6192.
- Make sftp(1) escape '[' in filename tab-completion.
- Updated xterm to version 264, freetype to 2.4.3.
- Prevent a file descriptor leak in libedit.
- Make OpenCVS use CVSROOT for cvs import and ignore CVS/Root files. Fixes PR6497.
- Make usb(4) check that a timeout(9) has been initialized before deleting it.
- With mandoc(1) .Sm no longer produces a line break when used in .Bd and also avoid an extra space after the opening bracket in .Op in -Thtml
- Fixed boot hangs that are showing up because the kernel use usb tasks to attach/detach usb(4) devices.
- Make dhclient(8) verify that the interface is registered before using it.
- Fixed the bugs that prevented the RT30XX ral(4) devices from working.
- Added a last-pane command in tmux(1).
- Prevent tmux(1) from changing the active pane when removing a pane unless the active pane is actually the one being removed.
- Fixed a crash when mixing fold(1) legacy width option (e.g. fold -70) with getopt()-style options, such as "fold -b70". Mixing the legacy width with another option is no longer permitted.
- Fixed PR6492 in hexdump(1).
- Prevent aucat(1) from running a destroyed stream.
- Start implementing the missing label mapping messages in ldpd(8) LDE.
- Make malloc(3) print the pointer value that caused the error (if available).
- Make ehci(4), ohci(4) and uhci(4) disestablish interrupts if attachment fails.
- Allow X to be build by disabling __thread for alpha on OpenBSD.
- Merged OpenCVS rcs_deltatext_set into OpenRCS, fixing a memory leak.
- Prevent ldpd(8) from printing "route vanished before delete" on shutdown.
- Prevent a null pointer dereference in rcs(1) and OpenCVS if rcsparse_deltatexts is called with a revision not specified as delta in an RCS file.
- Put mandoc(1) by default in man.conf(5).
- Fixed a OpenBSD::PackingElement(3p) split() which was causing problems with the mbox.5 man page in Mutt.
- Add a few more tcpcb and sockbuffer variables that tcpbench(1) can inspect.
- Fixed a segmentation fault in ldapd(8).
- Fixed ldapd(8) rejection of messages when there are multiple requests queued in the input buffer.
- Make access control work for SASL and BSDAUTH binds as it does for simple binds in ldapd(8).
- Make use of OpenSSL cast.h in isakmpd(8) crypto.
- Improved OpenBSD::PackingElement(3p) groff(1) handling. Fixes tcl and the few ports with non-standard man locations that can't rely on mtree fake.
- Improved uvideo(4).
- Allow configuration of 802.11 interfaces in the OpenBSD installer.
- Improved isakmpd(8) interoperability with Fortigates devices.
- Removed sup(1).
- Removed vgrind(1).
- Fixed a memory leak in ncurses(3).
- Removed groff(1) from base, now totally replaced by mandoc(1).
- Make the athn(4) driver more efficient on AR5008 and AR9003 chipsets for architecture with strong alignment constraints like sparc64.
- Added MPLS and mpe(4) in GENERIC kernels.
- Removed miscXX.tar.gz sets.
- Added wpakey/-wpakey options to ifconfig(8).
- Make the shadow password database smaller on install media kernels.
- Removed various usd/psd/ssm files and references in manuals.
- Added Compact Flash support to octeon.
- Make udl(4) attach again.
- Reverted latest smtpd(8) queue code optimizations to facilitate further improvements.
- Make trm(4) work again.
- In uvideo(4): added a structure that represents USB descriptor with variable sized member as in uaudio(4) and reenabled control support for devices where bControlSize is different from 2 in the processing unit descriptor.
- Fixed tcpdump(8) printing of pflog(4).
- Fixed filtering with new pflog(4) headers.
- Fixed glob(3) using programs (notably ftp(1)) to be triggered to hit resource limits.
- Fixed crash with uvideo(4) and Kodak S100 webcam.
- Fixed envy(4) on big endian architectures.
- Allow the ikectl(8) CA to be used with all kinds of other VPN tools in addition to iked(8) and isakmpd(8).
- Improved cmpci(4).
- Allow optional path for ikectl(8) install commands, assume they are relative to /etc if relative paths are specified.
- Make ikectl(8) show certificate details.
- Replaced old acpi(4) suspend/resume gpewalk function by separate functions for enabling wake and runtime GPEs.
- Allow ikectl(8) to specify the export password on the command line.
- Prevent ldpd(8) from adding MPL routes with a incoming MPLS_LABEL_IMPLNULL label.
- Handle IMPLNULL labels directly in the kernel.
- In ikectl(8): added a -q (quiet) command line option that will be use by ike CA to set openssl batch mode, allow to specify the initial CA password on the command line, allow to create certificate for clientAuth or serverAuth only.
- Set saner permissions on ikectl(8) CA directory export, so there is no need to change perms of /etc/iked when extracting.
- Make ikectl(8) create an empty but valid CRL list when a new CA is created.
- Improved envy(4) physical address check.
- Fixed some pms(4) versus wsmoused(8/I386) issues.
- Added OpenSSL fixes: updated local engines for the EVP API change, use hw_cryptodev.c instead of eng_cryptodev.c, make x86_64-xlate.pl always write to the output file and not stdout.
- Removed Skipjack from crypto(9).
- Fixed physical address issue in none i386 envy(4).
- Prevent from waking up at IPL_NONE instead of IPL_HIGH in i386 machine-dependent acpi code.
- Fixed x_wakeup_vector condition in i386 and amd64 machine-dependent acpi code.
- Zero out crypto(9) soft auth hash context before freeing it.
- Prevent spamd(8) from passing GREY entries to pf(4) spamd-white table if already TRAPPED. Fixes PR6467.
- Make ssh(1) kill proxy command on fatal().
- Updated xterm(1) to version 262, libX11 to 1.3.6, oclock(1) to 1.0.2, setxkbmap(1) to 1.2.0, x11perf(1) to 1.5.2, xauth(1) to 1.0.5, xclock(1) to 1.0.5, xcmsdb(1) to 1.0.3.
- Make tmux(1) skip NULL entries in the sessions list when choosing the next session.
- Added acpi_disable_allgpes function to clear acpi(4) GPE status.
- Improved rcs(1) invalid characters check.
- Implicitly protect mbuf(9) m_cldrop() with splnet(9).
- Added support for midi(4) to envy(4) in i386 and amd64.
- Make os fingerprinting work on little endian systems. Updating pf.os(5) is mandatory if using os fingerprinting options, otherwise, the system will be blocked.
- Updated pf.os(5) to match against OpenBSD -current systems. The automatic send and recv buffer scaling changed the OS fingerprint.
- Added iopool to adw(4) and iha(4).
- In Xenocara updated pthreads(3) aliases to version 0.3, pixman to 0.18.4.
- Prevent the Dream Link USB LED Message Board from being attached as an HID device so it can be used in userland.
- Synchronized octeon FPU handling with latest mips64 changes.
- Make openssl(1) DES_LONG be an u_int like all platforms instead of an u_long on i386.
- Turn off lidsuspend if halt -p is in progress.
- Removed support for srandom and urandom.
- Fix for some pms(4) pckbc handling.
- Make macppc install scripts try update the boot blocks.
- Updated OpenSSL to 1.0.0a.
- Added nsd(8) startup logic to the rc(8) scripts.
- Implemented a combus to support the com(4) devices on Octeon without modifying dev/ic/com.
- Added -R option to pfctl(8) to show only a specified rule by numeric ID in combination with "-s rules" or "-s labels".
- Make sure iked(8) gets transforms in the proposal before trying to parse it.
- Prevent bad free() in ssh(1) when overriding AuthorizedKeys in a Match block.
- In iked(8), fix padding issues and warnings from openssl.
- Added ehci(4) DMA sync operations, fixes issues with macppc.
- Added support in OpenCVS for update -C.
- Make sure the TCP will not recalculate the rscale factor after the initial SYN is sent.
- Make sure OpenRCS and OpenCVS parse all deltas before expecting "desc" keyword.
- Do not delay ACKs on connections using loopback interfaces.
- Implemented a per-cpu held mutex counter for all non-x86 platforms to help debugging.
- Added pregenerated unicode files for perl.
- Make -k work in tcpbench(1) client mode.
- Added support for gamma and sharpness/acutance controls in video(1).
- Added support for variable sized processing unit bmControls and for more processing unit controls in uvideo(4).
- Make sftp(1) call ioctl(TIOCWINSZ) to get the window width only once instead of per-filename when performing an "ls" in columned mode.
- Prevent glob(3) from freeing array before freeing members.
- Removed pms(4) and ums(4) from installation media.
- Unified some pool(9) and malloc(9) flag values.
- Added two new options to tmux(1) : server option "exit-unattached", makes the server exit when no clients are attached, even if sessions are present; session option "destroy-unattached" that destroys a session once no clients are attached to it. These are useful for preventing tmux remaining in the background where it is undesirable and when using tmux as a login shell to keep a limit on new sessions.
- Merged pmsi(4) into pms(4).
- Make mandoc(1) report an ERROR if an explicit scope is still open at the end of an input file: it can still render the page by just closing the open scope, but it is likely that information will be missing or document structure mangled.
- Modified tmux(1) server permissions on the socket when adding or removing +x to show attached sessions, rather than replacing them.
- In mandoc(1), make no punctuation after .%* outside .Rs in .Rs, mark full stops after .%* as end of a sentence.
- Make uvm(9) page daemon and uvm(9) swap configuration and io manager appear in ddb(4).
- Allow mod_headers to handle RequestHeader directives known from apache2 in httpd(8).
- Fixed L2TP length field in PIPEX.
- Prevent cwm(1) from warping to clients marked 'ignore'.
- Fixed bug in cwm(1).
- Make ppb(4) respect pci_dopm, like pci(4) does and make it not try to poweroff the bridge if pci_dopm=0. Fixes Gateway LT3103u and Lenovo Thinkpad 100e netbooks, allowing them to suspend again.
- Added gcc4 cross compilation support under OpenBSD.
- Use snprintf(3) not sprintf(3) in a2p(1).
- Make ospfctl(8) print the checksum as a simple fingerprint of the LSDB.
- Make ospfd(8) build the sum of the ls_checksums when counting the lsa. It permits to quickly verify if two LSDBs are in sync.
- Updated Compress::Raw::Bzip2(3p) to version 2.031.
- Make use of new glob(3) GLOB_KEEPSTAT extension in sftp(1) to save extra server round trips to fetch per-file stat(2) information.
- Make video(1) compile on static archs, and enabled it in the build for all archs.
- Deactivate all vscsi(4) childs when it's closed so they don't retry the commands still on the queue when killed.
- Avoid potential infinite loop in bridge(4).
- Added L2TP support to PIPEX in TCP/IP stack and npppd.
- Updated Perl to version 5.12.2 with local patches and fix for CVE-2010-0405.
- Prevent IPv6 from trying to add new addresses by making use of sleeping pools.
- Switched mips-based ports to gcc4.
- Bumped libc major version to 57.
- In fts(3), bumped fts_level from short to int and added a spare short.
- Provide IRIX-compatible get_fpc_csr(3/MIPS64) and set_fpc_csr(3/MIPS64) for mips. This will allow userland to flip the ``flush denormalized to zero'' setting, which is being relied upon by tcl.
- Make it possible to use "dhclient egress" to refresh a lease without remembering which interface dhclient(8) was actually active on.
- Added timingsafe_bcmp(3) to libc and removed it from OpenSSH. timingsafe_bcmp is also in kern(9).
- Added to glob(3) a GLOB_KEEPSTAT option that retains a copy of the struct stat information that is looked up while matching globs.
- Implemented if_freenameindex() in TCP/IP stack as a real function as required by POSIX.
- Added stricter asserts to DIAGNOSTIC kernels to help catch mutex and rwlock issues: i386 and amd64 now count the number of active mutexes so that assertwaitok() can detect attempts to sleep while holding a mutex, i386 and amd64 check that we actually hold mutexes when passed to mtx_leave(), calls to rw_exit*() now call rw_assert_{rd,wr}lock() as appropriate.
- Linked iscsid(8) and iscsictl(8) to the build.
- Added vscsi(4) to GENERIC Kernel build.
- Fixed bus spacing bugs in glxpcib(4/i386) and glxpcib(4/loongson).
- Added iscsictl(8), the control tool for iscsid(8).
- Added iscsid(8), an iSCSI Initiator daemon using vscsi(4). Currently implements the absolute minimum of the protocol to make it work against targets.
- In pfctl(8) , removed the check that enforced rdr-to only inbound and nat-to only outbound.
- Remove dying flags in various usb(4) devices. The flag will be set in activate()/deactivate().
- Fixed before-boot umass hangs on units without media in disk(9) subroutines.
- Added TCP send and recv buffer scaling. It increases download speed.
- Fixed npppd to setup a PIPEX if MPPE is not required by config and CCP failed to be opened because peer doesn't support MPPE.
- Prevent usb(4) from accidentally waking up.
- Fixed overflow in nsd(8).
- Improved mandoc(1) column alignment and handling of .Nm block wider than the column it is in.
- Remove tn3270(1).
- Fixed VOP_LOOKUP(9) calls with a struct proc pointer as it should have been in softraid(4), raid(4), disk(9) subroutines, NNPFS, EXT2FS, UFS.
- Added cvs_mkdir() in OpenCVS for recursive directory creation on import. Fixes PR6398.
- Fixed memory leak in rcs(1).
- Renamed uyurex(4) to utwitch(4) and enabled it by default in all GENERIC kernels.
- Make pf(4) rule counter update consistent between IPv4 and IPv6.
- Make loongson mainbus(4) attach mfokclock(4/loongson) later for cpu scaling.
- Correctly identify mount points when they are specified in fstab(5) using a disklabel UID. Fixes PR6471.
- Included the disklabel UID in sysctl hw.disknames.
- Make disk(9) subroutines provide the kernel with the disklabel which include the disklabel UID.
- automatic reading of disklabel on attach. Applied it in fd(4) and cd(4).
- Introduced a DKF_NOLABELREAD flag in disk(9), which is used by a device to prevent
- Added aes-gcm support in iked(8).
- Improved mclgeti algorithm under load in TCP/IP stack, systat(1), snmpd(8).
- Prevent the usb task thread from going to sleep forever in ehci(4).
- Added usb_rem_wait_task() to usb(4), a wrapper for usb_rem_task() that waits for the task to complete if the task is already running.
- Added two members to usb(4) struct usb_task: ``usbd_device_handle dev'', the device responsible for the task (use this to not run the task if the device's hub is dying) and ``int running'', a flag to be set when the task is running.
- Improved check of dying usb(4) bus.
- Save a little time on boot thanks to a usb(4) improvement.
- Reduced race during normal usb(4) device detach by making detach happen in the same process.
- Added a new IP level socket option IP_PIPEX. This option is used for L2TP support by pipex.
- Added an option per-read/write callback to atomicio, and added a bandwidth limit option to sftp(1).
- In clct(4), use audio(4) quiesce/resume for data i/o, and ac97_resume() for mixer suspend/resume support.
- Added autoconf activate, suspend/resume support in eap(4).
- Added AES-GCM-16 (as aes-gcm) and ENCR_NULL_AUTH_AES_GMAC (as aes-gmac) encryption transformations support in ipsec.conf(5).
- Added Support for AES-GCM-16 and ENCR_NULL_AUTH_AES_GMAC in IPSec ESP as per RFC4106 and 4543.
- Added a new interface: pppx(4), the ppp multiplexer to be used with npppd and pipex. pppx(4) creates an interface whenever a session is created so that altq and pf can work on these.
- Removed msgs(1) from tree.
- Added AES-GCM Transform Identifiers as specified by IANA in RFC4106 and 4543 to PF_KEYv2.
- Added support for the Galois/Counter Mode (GCM) for AES as described in FIPS SP 800-38D to crypto(9).
- Unified npppd(8) MS-CHAP implementation to iked(8).
- Make iked(8) work as an initiator with strongswan/charon without any specific phase 1 configuration.
- Add DIOCGPDINFO to presto(4/sparc), xd(4/sparc), xy(4/sparc), hp(4/vax), vax RA disk device and RX MSCP floppy disk device driver.
- Added new log option "matches" to pfctl(8).
- Added a new pf(4) log option PF_LOG_MATCHES that forces logging on all subsequent matching rules.
- Make disk(9) garbage collect struct disk field dk_label.
- Added a KexAlgorithms knob to ssh_config(5) and sshd_config(5) to allow selection of which key exchange methods are used by ssh(1) and sshd(8)
- Fixed a locking bug in accept(2).
- Make vscsi(4) call config_deactivate() on SCSI links in vsciclose().
- Avoid race with autoconf(9) in vscsi(4).
- Removed physio(9) buf pointer argument.
- Make npppdctl arguments match the format string in usage.
- Fixed a QUIESCE crash on inteldrm(4).
- Fixed null pointer dereference for protocols without port numbers in pflog(4).
- Improved mandoc(1) vertical alignment.
- Make inteldrm(4) always unconditionally set the C3_LP_WRITE_ENABLE bit in ARB_STATE on gen3 hardware. Prevent some 945 chipset from hanging.
- Enable error interrupts on inteldrm(4) ironlake, as we do on all other chips.
- Prevent mips64 based machine from panicking in MipsEmulateBranch() if the instruction is an unspecified OP_BCOND sub function.
- Improved inteldrm(4).
- Replace the mips64 old floating point completion code with a C interface to the machine-independent softfloat code, implementing all MIPS IV specified floating point operations.
- Improved eso(4) suspend/resume.
- Changed audio(4) quiescing to make it not call the audio_hw_if halt method in interrupt context, because drivers like eso(4) or envy(4) might want to sleep with their own halt method.
- Avoid USBD_IOERROR in uhub(4) by determining the size of the buffer for USB hub interrupt pipe with bNbrPorts in hup descriptor.
- Added a real DIOCGPDINFO to cd(4) and sd(4), allowing access to the physical information about the device rather than the contents of whichever disklabel was read.
- Added watchdog suspend/resume logic to glxpcib(4/LOONGSON) and make glxpcib(4/LOONGSON) save and restore it's configuration on suspend/resume.
- Added '-label' option to route(8) to specify you only want to see routes having the given label.
- Make tcpdump(8) show the original addresses/port too when a packet had his addresses and/or ports rewritten.
- Make pflog(4) put the original (before rewriting) addresses into the already existing address fields in the pflog header, same for ports, and add a "rewritten" indicator.
- Make pf(4) apply actions from the last matching pass or block rule and not the last matching rule after ruleset eval is done. Fixed PR6401.
- Make ldapd(8) print a warning if schema file can't be opened.
- Improved axe(4) PHY probing.
- Cleaned memory shortage in PIPEX code.
- In pf(4), make the "match log" rules log on the fly.
- Make the mpi(4) SAS IO unit to use 32 openings when talking to SATA disks if the firmware has it configured lower.
- Make aac(4) compile with gcc4.
- Avoid double unlocking the drm(4) lock in drmclose().
- Adapted tcpdump(8) and pflogd(8) to new pflog(4) longer header.
- Made a pflog(4) overhaul to fix wrong logging of nat/rdr addresses. The pflog header is now longer.
- Removed physio(9) in wdc(4) ioctl(2) handler.
- Added gpio(4) at glxpcib(4/loongson) to loongson GENERIC kernel.
- Added an iopool to umass(4) to prevent the kernel from panicking when multiple commands are issued when umass(4) has multiple LUNs.
- Use audio(4) DVACT_{QUIESCE,RESUME} and ac97(4) ac97_resume() for suspend/resume in auacer(4) and autri(4).
- Added autoconf(9) activate function to auixp(4).
- In auglx(4), use audio(4) DVACT_{QUIESCE,RESUME} to handle I/O stopping/restarting for suspend/resume, and ac97(4) ac97_resume() to reset and restore the codec at resume.
- Added support for newer asus boards that use a different method to poll and enumerate the sensors in aibs(4).
- Added assertwaitok() to declare code paths that assume they can sleep. Updated malloc(9) and pool(9) to use it as appropriate.
- Added mclgeti() support for xl(4).
- Make machine-dependent splassert(IPL_NONE) work on amd64 the same as it does on i386.
- Make ix(4) recompute the list_offset and data_offset when attaching a unknown SFP+ module on the 82598 controller.
- Make mips64 md_printins() get the printf-like function as an extra parameter, and make it visible so that machine-dependents parts of the kernel can use it for debug messages.
- Make mandoc(1) format multiple authors (.%A) in the same way as groff: two authors with "and", but without a comma; three or more with commata, and an "and" before the last one.
- Prevent mandoc(1) from doing fatal errors when .Pp and .br have arguments.
- Fixed length of an eap identity message payload in iked(8).
- Implemented support for ldapd(8) bsdauth authentication via simple binds, not only SASL.
- Added cache operations for the octeon platform.
- Make smtpd(8) use the same buffer for local deliveries to files and commands.
- Make snmpd(8) return error on GET requests without an instance identifier, both for tables and scalar values. Fixes PR6468 by not calling table get functions with an unexpectedly short OID. Also fixes PR6071. Scalar variables without an instance specified now returns a noSuchInstance error. GetNext requests correctly returns the .0 instance but it must be specified explitely: $ snmpget -v2c -c public localhost SNMPv2-MIB::sysDescr.0
- Allow output of null values with a context class. This is used in SNMPv2 to return an error exception value for a varbind result ("noSuchObject[0] IMPLICIT NULL" in RFC1905).
- Fixed a variety of structure packing and byte order bugs in ixgb(4) to try to get BE support working.
- Removed xx_shutdown() hooks in network drivers where possible, since they are taken down already via their xx_stop() routine. Done in bge(4), bnx(4), cas(4), de(4), fpa(4), lmc(4), msk(4), nge(4), pcn(4), sk(4), txp(4), pgt(4), ti(4), DEBNA/DEBNT/DEBNK ethernet cards, fta(4), fea(4).
- Allow the ssh(1) session multiplexing to determine that the server socket is either ready or stale without races. Stale server sockets are now automatically removed.
- Moved getpeereid(2) function declaration in kernel COMPAT_47. In 4.8 and onwards getpeereid(3) is library code using socket options.
- Simplified evcount(9) by removing counters in a tree hierarchy.
- Added octeon platform.
- Fixed security problem in the disabled and unfinished ssh(1) handling of J-PAKE protocol.
- Added a SIGHLD handler to reap ssh(1) expired child process.
- Added firmware some missing firmware to install media: ral(4) RT2860 for i386, amd64 and sparc64; run(4) RT2870 and RT3071 for landisk, macppc, socppc and sparc64.
- Fixed a null pointer dereference in ciss(4).
- Fixed an uninitialized variable access in uhci(4) suspend/resume.
- Prevent cd(4) and st(4) from calling bufq_drain in deactivate.
- Added the start of an activate function in glxsb(4/i386).
- Added an activate function to get sub-devices in glxpcib(4/i386).
- Added DVCAT_QUIESCE to glxpcib(4/LOONGSON).
- Fixed bug in atw(4).
- Initial support for the Octeon platform.
- Added SIGCHLD handler to reap expired children in ssh(1).
- Fixed null pointer dereference in ciss(4).
- Increased rate buffer in atw(4) to prevent overflows.
- Make ddb(4) recognize all MIPS IV instructions, as well as some mips64r2.
- Corrected NCQ depth calculation for atapiscsi(4) devices and controllers.
- Added support for 82583V devices in the em(4) driver.
- Fix for em(4) initialization on ET quad 82575 cards.
- Improved X11 lib handling in the ports(7)-supplied libtool.
- Fixed local DoS when core-dumping elf binaries.
- FPU and ddb(4) updates for mips64 CPUs.
- Fixed crash in iked(8).
- Various scsi detach issues fixed.
- Fixed endless loop when handling punctuations in mandoc(1).
- Make traceroute work through MPLS tunnels, including RFC4950 extension headers.
- Fix PMTU over sppp(4) links.
- Fix leaking scsi_xfers or bufs when hot-unplugging mpi(4) devices.
- Fix mpi(4) event handling to ack more than one outstanding event at a time.
- Fixed a bug in OpenSMTPD "Lookup agent" code.
- Added DVACT_{QUIESCE,RESUME} to cleanly suspend/resume audio(4) and use it in auvia(4), auich(4), clcs(4), cmpci(4), emu(4), azalia(4).
- Make tmux(1) use UTF-8 line drawing characters on UTF-8 terminals.
- Make tmux(1) ignore terminal overrides settings without a value.
- Fix lazy binding issue on mips64 run-time link-editor. Fixes an nm(1) crash that happen when passed multiple object files on the command line.
- Provided a bus_dmamap_sync() implementation for the amd64 IOMMU. It fixes bigmem.
- Added infrastructure to build gcc4 on mips64.
- Prevent azalia(4) from unmuting the speaker muted by plugged headphones when the master volume control in unmuted.
- Allowed hotplug of Fiber Channel devices.
- Prevent sd(4) io handler from being run on a gone device.
- Make gcc4 build on landisk.
- Many improvements in iked(8): allowed ESP proposals without integrity and AH proposals without encryption; added additional nonce length field, use that for the ciphers that require additional keying material; setup right flow direction depending on the mode: fixes up iked(8) working as an initiator against charon.
- Added an ECDH/ECDSA compliance fix to ssh(1).
- Cleaned up i386 apm(4) resume/suspend code.
- In tmux(1), added -n and -p flags to switch-client to move to the next and previous session.
- Prevent tmux(1) from crashing if the screen size is too small for the indicator in copy mode.
- Activated NTFS in i386 and amd64 GENERIC kernels.
- In disk(9), introduced a disk_lookup() function which calls device_lookup(), before verifying that the resulting device is present on the disklist. This avoids a race whereby the disk driver can be accessed as soon as the softc has been allocated, but before the disk has completed initialization and has called disk_attach().
- Improved crypto(4).
- Added support for sender expansion in smtpd.conf: %U for sender localpart, %D for sender domainpart.
- Make smtpd(8) queue and reschedule message when failing to fork a DNS process.
- Make scsi(4) detach everything on the whole bus on request, rather than just a target/lun.
- In the TCP/IP stack, allowed ip_forward() to know the difference between blocked packets (EACCESS) and those that can't be forwarded (EHOSTUNREACH).
- Switch the MPLS blocks for RTM_CHANGE in the routine socket interface.
- Permitted traceroute(8) to work over MPLS.
- Make tcpdump(8) of pflog(4) interfaces work with 'net ' expression.
- Enabled aesni for amd64. While running ipsec on amd64 with 'aes' cpu flag, it provides aes accelerated encryption in cbc and ctr modes for all three key sizes: 128, 192 and 256.
- Removed the powerhook code and use the ca_activate tree traversal code everywhere to suspend/resume devices.
- Fixed a potential race between cd(4) resume and detach.
- Replaced all PWR_{SUSPEND,RESUME} by DVACT_{SUSPEND,RESUME}.
- Prevent compiler unwanted optimization in i386 and amd64 machine-dependent bus_dmamap_sync().
- Make the PCI-CardBus bridges driver save and restore pci config space registers on suspend/resume.
- Fixed freezes occurring by removing CardBus cards with Ralink Technology RT2560, RT2561, RT2561S and RT2661 chipset.
- Improved amd64 pmap(9).
- Enabled wide character support in ncurses(3), lynx(1).
- Switched to using ca_activate calls instead on powerhooks on apm(4/I386).
- Fixed suspend/resume on intel agp(4).
- Improved handle of PCI BAR.
- Prevented ldpd(8) from crashing sometimes when calling nbr_act_session_establish() on slave systems.
- Fixed an off by one in mandoc(1).
- Added an ioctl to figure out the non-sticky bits in pci(4) BARs used for determining the size of those BARs. Make pcidump(8) use this new ioctl to print the size of PCI BARs.
- Make the sparc tree more GCC4 friendly.
- Make the v3 demangler support code compile in libiberty.
- Added support to pcmcia(4) indirect Card Information Structure data. Improved and fixed a bug in pcmcia(4) CIS parts.
- Added support for SiS191 in se(4), fixed bugs, and improved it too.
- Removed macppc default xorg.conf(5).
- In Xenocara, updated glproto to version 1.4.12, renderproto to 0.11.1, videoproto to 2.3.1. Added xextproto 1.7.2. Updated libxcb 1.7, libXi 1.3.2, libX11 1.3.5, libXfont 1.4.2.
- Prevent vr(4) from seeing stale contents because of insane compiler or hardware optimizations.
- Fixed athn(4) Ubiquiti SR71-12 and Winstron DMNA92 adapters.
- Added an EXIT STATUS section to some /sbin, /usr/sbin and /usr/libexec man pages.
- Make ldapd(8) resolve matching rules from superior attribute types at schema load time instead of when each attribute is validated.
- Added an EXIT STATUS section to most /bin and /usr/bin man pages.
- Implemented attribute syntax from RFC4517 in ldapd(8).
- Switched ssh(1) ECDSA default key size to 256 bits, which according to RFC5656 should still be better than our current RSA-2048 default.
- Fixed ControlPersist=yes for ControlMaster=yes in ssh(1).
- Permitted -b 256, 384 or 521 as key size for ECDSA in ssh-keygen.
- Fixed enqueue routing messages on sockets marked SS_CANTRCVMORE.
- Fixed a memory leak in rcs(1) and OpenCVS.
- Fixed bug in st(4).
- Fixed a spurious line insertion in wscons(4).
- Make tmux(1) reset running jobs when the status line is enabled or disabled.
- Updated freetype to version 2.4.2.
- Prevent ldapd(8) from finding syntax error when parsing schema from the subschema.
- Disabled use of SIGIO by default in xserver, it breaks multi-card configuration.
- Improved the consistency of the flexible buffer queue by making struct bufq a member of the softc for devices that use it.
- Removed SIGIO handler from Xenocara DRI.
- Added DVACT_QUIESCE (warn the device about suspend) support to ahci(4), auich(4), azalia(4), alc(4), ale(4), bge(4), em(4), lii(4), msk(4), nfe(4), sis(4), pci(4), pciide(4), ppb(4), sili(4), vga(4), pchb(4), acpi(4), dc(4), fxp(4), xl(4), pcmcia(4), wdc(4), sdhc(4), ehci(4) and pckbc(4).
- Make cd(4), pccbb powerhook code call an activate function.
- Cleaned up activate/deactivate functions in various drivers: pchb(4), ubt(4), sdhc(4), sis(4), nfe(4), bge(4), fxp(4), xl(4), pckbc(4), sd(4), uvisor(4), uhidev(4), usb(4), ohci(4), wd(4).
- In ssh(1), implemented Elliptic Curve Cryptography modes for key exchange (ECDH) and host/user keys (ECDSA) as specified by RFC5656.
- Started work to add suspend/resume for Loongson Lemote.
- In ssh(1), added buffer_get_cstring() and related functions that verify that the string extracted from the buffer contains no embedded \0 characters*. It prevents random (possibly malicious) crap from being appended to strings.
- Make ohci(4), pxaudc(4/ZAURUS), zaudio(4/ZAURUS), zkbd(4/ZAURUS), zssp(4/ZAURUS), zts(4/ZAURUS), lcd(4/ZAURUS), apm(4/ZAURUS), arm mainbus(4) powerhook code call an activate function.
- Prevent processes from entering wi(4) ioctl when another process is tsleep'ing in it.
- Disabled SVR4 compat by default in sparc GENERIC kernel.
- Converted pcmcia(4) powerhook to an activate function for an(4), cnw(4), ep(4), malo(4), ne(4), ray(4), sm(4), wi(4), xe(4), wdc(4).
- Avoided a race in softraid(4).
- Added ddbcpu for sgi.
- Fixed a race that could lead to hanging processes in libevent.
- Avoided possible aliasing-related compiler issues in cd(4), ch(4), ses(4), st(4).
- Makes X autoconfiguration more intuitive on machines with multiple SBus or UPA framebuffers, where wsdisplay0 isn't the console.
- Make atw(4) and rtw(4) powerhook code call an activate function.
- Make sure local arrays of chars are word-aligned on strict alignment architectures with gcc(1), just like what is done for global ones. Though not explicitly allowed by the C standard it have been historically handle correctly by most C compilers.
- Fixed kernel compiling with disabled IPSEC and enabled GIF/MPLS.
- Make 2nd resume work on arm and zaurus.
- Correctly compute loongson memory size if less than 256MB.
- Fixed an uninitialized value leading to bogus KASSERT in uvm_pmr_use_inc().
- Started implementation of activate function in acpiasus(4) to replace powerhooks functions.
- Fixed autoconfiguration for accelerated drivers on sparc/sparc64, currently limited to sunffb(4).
- Provided a way to get < and > symbols on pckbc(4) pc101-key slovenian layouts.
- Make PCI Power Management optional, and only enable it when acpi(4) attaches.
- Make apm(4) runs powerhook with interrupts blocked.
- Big powerhooks clean up to improve suspend/resume: make powerhook code call an activate function in various devices: sdhc(4), wi(4), neo(4), auacer(4), auglx(4), auich(4), autri(4), esa(4), eso(4), yds(4), maestro(4), ath(4), bge(4), dc(4), nfe(4), pgt(4), ipw(4), iwn(4), rl(4).
- Improved sdhc(4) sdhc_activate().
- Added screen blanking code in smfb(4/LOONGSON) for SM502.
- Removed PWR_STANDBY from various drivers: acpiasus(4), ath(4), atw(4), pgt(4), rtw(4), esa(4), sdhc(4), ehci(4), ohci(4), uhci(4), auixp(4), ray(4).
- Added screen burner support for SM712 flavour on loongson Lemote Yeeloong.
- Allowed multiple interfaces to be specified instead of all or one in rarpd(8).
- Fixed a memory leak in ldpd(8).
- Fixed mounting of cdXX.iso and installXX.iso on hppa.
- Make CardBus ral(4) suspend and resume properly on machines that keep the CardBus bridge powered up during suspend.
- Prevent ftp(1) from freeing proxyurl and cookie twice in the location code.
- Make tmux(1) reset any mode before freeing the buffer event when destroying a pane.
- Enabled the pixman library for m68k, fixed it for hp300 and mvme68k.
- Added scsi_iopool_destroy() and scsi_link_shutdown() to scsi(4).
- Use lockmgr(9) instead of rwlock(9) in sdmmc(4).
- Fixed a file descriptor leaks in ccdconfig(8).
- Updated libc time functions to zcode2010k from elsie.nci.nih.gov.
- Check for duplicate variables in the environment when setting a value via setenv(3) and putenv(3).
- Fixed tip(1) .tiprc parsing.
- Implemented bus_space_barrier(9) in sgi.
- Avoided disable bridge interrupts on sgi platform when trying to access an unimplemented ioc3 register.
- Improved azalia(4).
- Worked around a rare race condition that can happen if daily(8) zaps old files from /var/tmp while pkg_add(1) is installing or updating a package and doesn't yet have moved nor even read some of the files in /var/tmp/pkginfo.* (typically +DESCR).
- Fixed two problems in the kernel work queues.
- Added support for the LSISAS2004 chips in mpii(4).
- Improved ospf6d(8).
- Prevent Cisco's OSPF 6 from ignoring ospf6d(8) network-LSAs.
- Enabled nsd(8) to the build.
- Fixed a 16 year old bug in the radix tree sorting routine for non-contiguous netmasks. It can have a huge impact on IPsec performance.
- Make tmux(1) client stop calling fatal() on exit.
- In Xenocara, updated libXvMC to version 1.0.6, xf86-input-vmmouse to 12.6.10, xf86-video-vmware to 11.0.2, xf86-video-mga to 1.4.13, xf86-video-nv to 2.1.18, xterm to 261.
- Updated nsd(8) to version 3.2.6.
- Added a flag to vis(3): VIS_ALL - encode all characters, not just invisible ones, it can be called from vis(1) withe the `-a' option.
- Added Huawei E1820 to umsm(4).
- Added a quirk for the apple clear orb USB speakers.
- Fixed bugs in xf86-video-openchrome.
- In Xenocara, updated xbproto to version 1.0.5, x11proto to 7.0.18, libXau to 1.0.6, xset 1.2.0, utils-macro to 1.10.0.
- Make sysmerge display usage information as well as the error when a path to src/*.tgz isn't specified.
- Fixed an mbuf leak in ATA over Ethernet driver.
- Improved mandoc(1) column padding calculation.
- Changed the UFS DIP macros to be aware of the FFS2 kernel option by not bothering to check the mount type when FFS2 support is omitted.
- Changed hzto(9) and tvtohz(9) arguments to const pointers.
- Implemented user interface for error handling in mandoc(1): -Wlevel selects warning you care about (error or fatal); -Wstop stops after parsing a file with the selected warning level; provide consistent exit status code for the selected warning level; always finish parsing each file unless fatal errors prevent it; removed the -f option and -Werror.
- Prevent wsconsctl(8) from ignoring errors silently if the device could not be open.
- Prevent gcc(1) from optimizing i386/amd64 lidt() function that provide access to i386/amd64 LIDT instruction. It fixes instant reboots with bsd.rd on Pentiums with F00F bug.
- Introduced a machine-independent kern.consdev sysctl(8) that will replace the machine-dependent machdep.console_device.
- Fixed a leak in tmux(1).
- Make tcpdump correctly decode and print GPRS Tunnelling Protocol access point names.
- Updated zoneinfo database to tzdata2010l from elsie.nci.nih.gov.
- Fixed a NULL pointer dereferencement in midicat(1) option parsing when `-' is used as filename.
- Improved uaudio(4).
- Fixed xserver autoconfiguration on sparc and sparc64.
- Removed Linux compatibility code in hppa and hppa64 GENERIC kernel and locore.S.
- Fixed a bug in the Atheros AR9003 family driver.
- Fixed a division by zero in athn(4) AR9003 family chipset.
- Make athn(4) stop receiving beacons from other BSS when associated in STA mode.
- Removed the standard pod2man \*(C+ pre-predefined string ("C++") in mandoc(1).
- Make sure mandoc(1) correctly print .Lk arguments in -Tascii.
- Make sure mandoc(1) throw away non-ASCII characters.
- Added several fixes in pr(1).
- On sparc, make sure fast trap handlers correctly invoke soft interrupts by marking them explicitly pending before triggering the softintr.
- Added missing files (floppies and/or install.iso and/or miniroot...) in the build time SHA256 file for alpha, amd64, hppa, hppa64, landisk, macppc, mvme68k, mvme88k, sgi, socppc, sparc, sparc64, vax.
- Added power management for PCI devices, currently it just put everything in the D3 (deepest sleep) state upon suspend, and restore power upon resume.
- Added support for larger sparc kernels when booting from tape, and avoided stomping on PROM data below 4MB on sun4c.
- Adjusted disktab(5) miniroot disklabel to changes caused by fdisk partition alignment changes.
- Removed support for loading 64bits kernels from cdboot(8/HPPA).
- Fixed a gcc4 mis-alignment in rdate(8).
- Improved IP stack fragmented packets handling.
- Prevented tools that fork and run a captive ssh(1) for communication from failing to exit.
- Enabled periodic (every 4 minutes) power amplifier calibration on athn(4) AR9285 and AR9287.
- Fixed athn(4) AR9280/AR9281 chips in open-loop power control mode.
- Make fsck(8) print the real device name followed by the disklabel UID in parenthesis when it is run against a disklabel UID.
- Fix a one character typo on inteldrm(4) i915 that broke interrupt handling on ironlake.
- Fixed xl(4) memory corruption after resume.
- Corrected a format string in ccdconfig(8).
- Fixed a off by one bug in NTFS.
- Disabled the RTC periodic interrupt on i386 and amd64 to fix problem like Dell Inspirion 4150 waking up immediately.
- Plug several resource leaks in gzsig(1).
- Make the number of vnode(9)s correspond to the number of buffers in buffer cache.
- Fixed a logic problem which could in theory cause pfctl(8) to recursively print anchors with wildcards when not requested via the command line but in practice only applied to automatically generated inline anchors (which don't have wildcards) or when recursion was requested.
- Forbade duplicate tmux(1) session names to be created.
- Added support for terabytes units with disklabel(8) editor 'T' command.
- Make tmux(1) list panes command show which pane is active.
- Fixed two problems in gdt(4), introduced in 4.7: eliminate a use-after-free of xs for xs->flags, avoid calling scsi_done() twice when synchronizing disks during shut down.
- Remove extra `.' from less(1) -m prompt string.
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: plus.html,v 1.1189 2011/01/13 19:44:22 jj Exp $