This selection is intended to include all important
and all user-visible changes.
For a complete record of all changes, please see the "source-changes"
mailing list, called "OpenBSD CVS"
in the archives,
or use CVS.
Note: Problems for which patches exist are marked in red.
Show in dmesg(8) when an attached sd(4) is readonly, makes it clearer why write operations fail.
Introduced the qle(4) driver for QLogic ISP24xx fibre channel HBAs.
Made iked(8) set the msg_responded flag on the original message.
New dd(1) operands "status=noxfer" and "status=none", to suppress status lines printed to stderr.
Support for Intel Centrino Wireless-N 2200/105/135 added to iwn(4).
Stopped systat(1)'s pftop leaking memory at every queue refresh.
Build isp2xxx firmware into separate object files, to only include one when both isp(4) and qla(4) are enabled.
On sgi, block all interrupts that can grab the kernel lock.
Intel Centrino Wireless-N 2230 support added to iwn(4).
Fixed tmux(1) xterm-keys change where some keys (e.g. \033OA) were wrongly treated as partial matches.
Run the serving and privileged ntpd(8) processes at high priority, to lower latency.
Fixed MAC address format to let ospf work on myx(4) even without PROMISC enabled on a network interface.
Fixed drm(4) ttm: to handle in-memory region copies; ttm_bo_move_memcpy; memory type compatibility checks.
arc4random_uniform(3) returns a value strictly less than its argument; fixed arithmetic so that PID_MAX can be reached when the kernel is forking.
Many drm(4) on radeon(4) fixes, including: dac handling improvements; endian bugs; LCD record parsing; handling of variable sized arrays for router objects; panel scaling with eDP and LVDS bridges.
Added support in binutils for i386 XSAVE family of instructions: xgetbv, xsetbv, xsave, xrstor, and xsaveopt.
Fixed pmap(9) on vax when processes are using more than 512KB of stack.
Fixed failure of dhclient(8) to write resolv.conf(5) when -L is used; made add_address() and add_route() also wait until imsg is in pipe.
Stopped pkg_add(1) taking crypto sigs into account for "always-update" comparisons (the sig will always differ).
Stopped malformed IMSG_HUP messages causing the privileged dhclient(8) process to exit.
Fixed memory leak introduced in r1.96 of sys/dev/usb/usb_subr.c.
Fixed system hang issue when using radeon(4) KMS with older cards; fixed drm(4) card_posted check for newer asics; fixed endian issues with DP (v3) handling.
Rectified lock order reversal problem to stop panics seen in multi-threaded programs when using gdb(1).
When running sysmerge(8), only create DBDIR if it does not exist.
Stop disabling/enabling interrupts in the interrupt handler for "chip type D" (Marvell 9580).
Copy the correct number of channels in sndiod(8) join/expand.
Use the proper integer width when sndiod(8) calls AMSG_ISSET().
Macppc G5 systems with >2GB RAM now report correct amount of memory (kernel still only uses the lower 2GB).
Changed pkg_add(1) default to requiring signed packages.
Limit the number of currently opened pkg_add(1) packages, to limit memory usage.
Fixed booting of socppc n1200 with a usb disk plugged in.
Allow 64-bit page table entries on mips64 and sgi, making physical memory beyond 16GB addressable by pmap(9).
Stopped attempting to initialise the time from an uninitialised variable on socppc.
In the installer, make sure a free bpf(4) exists before dhclient(8) is run.
Fixed remote printing by lpd(8) which was broken in r1.50 of printjob.c.
Made carp(4) send IPv6 neighbour advertisements with the "router" flag when acting as router. Stops clients losing default routes during carp(4) failover.
Allow use of "*************" as password in the installer response file for accounts with password logins disabled but login (e.g. with ssh-keys) still possible.
Simplified how "kept" packages are handled by pkg_add(1).
Rearrange interrupt register processing for 2200s. Makes onboard FC controllers in Sun systems work better.
Improved cut(1) POSIX compliance: continue to process the remaining file operands even after not finding an input file.
On alpha, manage a per-cpu pmap(9) free entries queue, in addition to the in-use queue to avoid corrupting memory; simplified try_lock(), to avoid one forward branch in the common case.
Take bwidth into account for the cwm(1) menu's position and size.
Fixed pkg_add(1) kept packages bug (they have to be completed somewhere).
When pkg_add(1) is stopped by ^C^C, try to exit only when the database is in a safe state.
drm(4) i915 now invalidates TLBs for the rings after a reset.
On amd64, removed some of the excessive cache and TLB flushing going on during hibernate unpack.
Allow the cwm(1) config parser continue parsing even after encountering an error.
Replaced most usages of bzero(3) with explicit_bzero in ssh(1) and lib/libutil/bcrypt_pbkdf.c and pkcs5_pbkdf2.c.
Fixed partial matches in tmux(4) with xterm-keys on.
Fixes/workarounds for bge(4) BCM5719/BCM5720/BCM57765/BCM57766 chipsets; added support for the new BCM5762 ASIC (BCM5725/BCM5727/BCM57767); added all of the newer PCI ids.
Replaced ssl(3) HMAC and MD5 with implementations based on native sshd(8) ssh_digest_*.
Removed the no-op flags -L and -V from compress(1); removed -g flag from gzip(1) (non-standard, only makes sense in compress(1)).
Enhance sysmerge(8) errors output and display what is going on.
Attempt to make user changes of keyboard layout configs more "sticky" on wsmux(4).
Work in progress code added for SMP on the alpha architecture.
Installer fixes to: extend logic for finding a location to place prefetched sets; complain loudly on errors and give users a chance to react; improve detection of ftp(1) fails while fetching sets; be more cautious while removing temporary directories.
tcpdump(8) now correctly shows that checksums of zero are invalid when listening to UDP over IPv6 traffic.
Stopped ufs_setattr() assuming atime/mtime/ctime flag bits needing to be updated weren't already set.
Stopped pkg_add(1) allowing file permissions to be adjusted without an explicit @mode annotation.
Changed the default pf.conf(5) block policy to "block return".
Reverted counter size changes in netinet, as it broke netstat(1).
Added a special case to ssh(1) for the DH group size for 3des-cbc, which has an effective strength much lower than the key size.
Corrected parsing of dhclient.conf(5) statements "fixed-address" and "next-server".
Ditched kernel high and low water marks for vfs(9) pages and replaced with a single target, to minimise use of biglock.
Disable lapic when halting CPUs on i386, for improved suspend.
Do not clean the multicast records of an interface when it is destroyed (as pcb multicast options might keep a pointer to them).
Disabled lapic when halting amd64 CPUs. Fixes suspend on some machines.
Enabled signature checking by default to sysmerge(8), with new option -S to skip.
Allow dhclient.conf(5) to specify "fixed-address", "next-serve", "filename" and "server-name".
When creating the effective lease, dhclient.conf(5) can now override anything in an offer or saved lease.
Fixed softraid(4) RAID5 write functionality: changed parity calculation algorithm to avoid volume scrubs; allow writes to function correctly even when a chunk is lost.
Allow pf(4) to match "any" interface (excluding loopback).
Added sdmmc(4) support to i386/amd64 install media.
Remove the RAID 4 discipline from softraid(4). RAID 5 should be used instead.
Updated the radeon(4) drm headers based on libdrm 2.4.51; updated libdrm to 2.4.51.
Added installboot(8) "-r", to allows the mount point of the root filesystem to be specified.
Stopped dhclient(8) following symlinks for -l and -L arguments.
Made dhclient(8) parse_X return -1 when it encounters a parsing error. Enables recognition of zero length value vs parsing error.
Fixed off-by-one on specially crafted /etc/shells file.
Optimisations to mandocdb: db build time goes down by 10% (now 1.9x of makewhatis(8)); db size goes down by 4% (now 11x of makewhatis(8)); db build time with -Q goes down by 15% (now at 0.28x of makewhatis(8)); db size with -Q goes down by 3% (now 3.35x of makewhatis(8)).
Avoid size_t overflows while dhclient(8) is reading /etc/resolv.conf.tail, and in file(1) apprentice_map.
Added support for mknod(8) in fuse(4); removed an infinite loop in fuse_device_cleanup().
Incorrect cast to size_t removed from sftp(1), which broke resume of large downloads.
Added more luna88k-specific initialisation in xf86-video-wsfb.
Re-open the default pipe with updated values when attaching a new ohci(4) or ehci(4) device, so the device will be recognised.
Corrected sigpending(2) argument handling, to stop it writing to the wrong memory on hppa and hppa64.
When md5(1) is using a checklist, print MISSING for non-existent files.
Fixed ping6(8) bug where binary built with stack-protector-strong would fail to set the routing table id.
Made ddb(4) "show mbuf" print all mbuf(9) fields in a consistent way.
Don't let ssh(1) or sshd(8) connect to clients/servers that suffer from SSH_BUG_DERIVEKEY. These are too vulnerable to KEX attacks.
Option "-e" for embedded signatures added to signify(1).
Allow tmux(1) "attach-session -t" to accept a window and pane to select them on attach; made "switch-client -t" accept a window and pane.
tmux(1) changes: check for truncation when copying path; don't use a temporary buffer in screen_set_title; include strerror in output when connecting to server fails.
Fixed the radeon(4) burner method, ensuring cookie is a pointer to rasops_info. Fixes hangs on shutdown.
When sftp(1) is formating the time, show dates in the future with the year; fixed incorrect date calculations.
Updated pax(1) -v format to match ls(1) -l: display the year for dates in the future; eliminate bogus handling of LC_TIME environment variable.
Per POSIX, times in the future are now reported by ls(1) with the year.
Updated to libXfont 1.4.7 (includes fix for CVE-2013-6462).
5.3 and 5.4 SECURITY FIX: CVE-2013-6462: unlimited "sscanf" can overflow the Xserver(1) libXfont stack buffer. A source code patch is available for 5.3 and 5.4.
Restrict what characters can be in a pkg_add(1) signer, to make certain it's not possible to go ../ from /etc/signify.
Propagate an rdomain number to the icmp6(4) nd6_lookup independently from the ifp pointer. Prevents a crash.
Follow-up fixes for IFID collision handling in IPv6CP; properly change the link-local address.
Made pkg_add(1) verify all checksums, including special files (e.g. prevents people from tampering with DESC).
Implemented SYNOPSIS .Fn indentation for mandoc(1) -Tman.
Stopped mandoc(1) outputting line breaks after block macros spanning more than one input line when encountering a ".Bk".
Added ftp(1) support for SSL/TLS server certificate validation (enabled by default); allow setting preferred ciphers.
Fixed mg(1) bugs: dotline off by one when adding newline at EOF; align and sync dotlines when displaying the same buffer in two windows.
Allow pkg_add(1) to cope with the change in ftp(1) warning messages.
The xbase set requires the comp set. When installing, include comp automatically if xbase is selected.
Fixed IPv6 functionality in tftp-proxy(8); implemented "-a" option to make it work on a NAT gateway; generate pass rules instead of erroring out when no address for the current AF was specified.
Revert previous acpi(4) commit, which made resume hang on some GENERIC.MP systems.
Made ld.so(1) pass its cleanup handler, stopped it calling atexit(4) directly on i386, sparc64, alpha, powerpc, amd64 and hppa.
In mandoc(1), implemented hanging indentation for .Fn in SYNOPSIS mode.
radeon(4) now tries to keep the framebuffer console layout set up by the firmware on sparc64.
On alpha, set the primary CPU's PAL revision correctly, to properly spin up secondary processors.
Implemented mandoc(1) end-of-sentence spacing at the end of man(7) macro lines.
Fixed dhclient(8) "string constant too long" errors when reading back a lease with filename or servername attributes containing escaped characters.
Save and restore acpihpet(4) configuration on suspend/resume.
Fixed locking in the drm(4) i915 page fault handler.
Allow kdump(1) to recognise itimer and ktrace facility names to {get,set}itimer() and ktrace().
Reworked smtpd(8) mda and scheduler to limit the number of pending deliveries to the same user.
Delay closure of sshd(8) in/out fds until after "Bad protocol version identification..." message, as get_remote_ipaddr/get_remote_port require them open.
Added the autoinstall configuration to the list of files stirring the random(4) pool at install.
Moved the GTT management into the intel(4) drm driver.
Backed out intel(4) DRM_IOCTL_I915_GEM_WAIT commit (which left X(7) unusable on resume on some machines).
In install.sub, try to fetch a host-specific responsefile, fallback to a generic one otherwise.
Allow "*" in the user part of mail addresses in smtpd.conf(5).
Impose a limit on the number of inflight envelopes on smtpd(8).
Made athn(4) tick calculation work as intended. Should fix excessive timeouts and "Michael mic" errors.
Cope with the EAGAIN API change for msgbuf_write(3) in various daemons.
Improvements for sppp(4) address assignment and related issues in IPv6CP; deal with IFID collisions instead of ignoring them; use arc4random(3) during IFID generation; assign destination address to /128 point-to-point links.
Fixed isakmpd(8) parameter types for X.509 routines.
5.3 and 5.4 RELIABILITY FIX: avoid crash occurring on pflow(4) interface destruction. A source code patch is available for 5.3 and 5.4.
Correctly redraw the top two lines in tmux(1) copy mode when they are selected.
Made sure vlan(4) detach hooks are executed in reverse order they were added.
5.3 and 5.4 SECURITY FIX: fixed memory corruption vulnerability in the post-authentication sshd(8) process with aes128-gcm@openssh.com or aes256-gcm@openssh.com keys. A source code patch is available for 5.3 and 5.4.
Fixed regression in r1.101 of sys/dev/usb/uhci.c to avoid dereferencing an uninitialised variable when a uhci(4) transfer times out.
Made ssh(1) output the effective values of Ciphers, MACs and KexAlgorithms when the default has not been overridden.
Do not leak the detach hook when the parent interface of a vlan(4) is destroyed/removed.
Stopped autoconf(9) processing transfers when a uhci(4) controller is deactivated.
Backport remainder of the use_loginclass fix from sudo(8) version 1.7.9.
Search the userland buffer of dirent structures before falling back to getdents(2), for considerable speedup.
Fixed ssh(1) crash caused by previous commit which occurs when using ProxyCommand.
Fixed/re-enable re(4) RX checksum offload for 8168C/8168CP. Flag was accidently removed with rev 1.140 of sys/dev/ic/re.c.
Let smtpd(8) local enqueuer cope with the output of a long running program; use sendmail(8)-like exit status.
Allocate smtpd(8) key storage dynamically, instead of using a fixed size buffer.
Made sure cwm(1) client_delete does not try to destroy clients that are already gone (and generate spurious errors).
Don't let smtpd(8) ignore "remove" requests for an envelope which is inflight.
Improve reporting in smtpctl(8): when sending a request to the scheduler, wait for the success/failure report; report the total number of affected envelopes for schedule, pause, resume and remove envelope operations.
Stopped falsely assuming that the icmp(4) checksum field is always in the first mbuf(9) of an mbuf chain.
X11 clients added to the aviion architecture.
Fixed off-by-one when mpii(4) is calculating the length of an sgl segment.
Fixed regression that made the pandaboard panic when it tried to enable PRCM_MMC0 on the omap4.
Added support for xbox 360 controller as a uhid(4).
Added support for the hardware random number generator on octeons, octrng(4).
Understand node contexts when smtpd(8) is building the expansion tree (e.g. same delivery for different users, or as a different destination address).
Fixed USERINFO and CREDENTIALS lookups in the (experimental) smtpd(8) sqlite backend.
Eliminate global limit on the number of fonts able to be loaded by wsdisplay(4).
In hibernate for i386/amd64, temporarily reverted "Realmode park" mode.
Do not run any command from the client which starts the tmux(1) server until after the configuration file completes loading.
Let wsfontload(8) report i/o errors on stdin as occurring on "stdin" not "(null)".
Added i386/amd64 boot(9) support for keydisk-based softraid crypto volumes.
If a font is not a file, wsfontload(8) now computes the numbers of characters it contains from its size, instead of assuming 256; default to 12x22 glyph instead of 8x16 if the display is a raster frame buffer.
Updated to xf86-video-dummy 0.3.7 and xf86-video-vesa 2.3.3.
WSDISPLAYIO_GTYPE ioctl support added to radeon(4) and intel(4) KMS drivers.
Fixed resume time stream corruption seen on x230 with large (16GB) unhibernation.
Allow hibernate to work on Ivy Bridge and later CPUs.
Don't turn on ModifyOtherKeys by default, as when tmux(1) is killed and it's left stuck on.
slowcgi(8) now properly reserves file descriptors for incoming connections.
Moved creation of "restricted" communication sockets into snmpd.conf(5); added ability to specify an alternate "control" socket location; allow for the creation of multiple "restricted" sockets.
Alter how tmux(1) handles the working directory: -c flag to new, neww, splitw allows the working directory to be overridden; -c flag to attach let's the session working directory be changed; default-path option has been removed.
Make tilde expansion in tmux(1) command strings work even if it isn't terminated by /.
Instead of fixed size buffers for some tmux(1) messages, send only the string length; similarly for MSG_COMMAND - allow full imsg limit (not arbitrary 2048).
When mouse button is pressed within a tmux(1) pane, no longer resize the pane if edge of the border is later hit.
Fixed Powerbooks regression, where one of the two kiic(4/macppc) would timeout when trying to configure the audio chip.
Made syslogd(8) trim leading white space from the message before trying to extract the program name.
Include the "state of health" field in the mfi(4) "bbu ok" (battery capacity) sensor value.
Stopped pf(4) leaking ruleitems from match rules when hitting a per-rule max state limit.
Allow bgpctl(8) to bulk add/delete routes with the same attributes. Really useful for distributing IP lists.
Fixed dixfonts from upstream for CVE-2013-4396 (use after free in Xserver handling of ImageText requests).
When available, use monitor/mwait to idle on i386/amd64.
Early stages of a working disk bootloader for OpenBSD/aviion. Currently limited to oosiop(4) controllers
Increased the size of the Diffie-Hellman groups requested for a each ssh(1) symmetric key. New values taken from NIST 800-57, upper limit from RFC4419.
Added vmwpvs(4), a driver for VMware Paravirtual SCSI in vmware guests.
Use CLOCK_UPTIME, so that vmstat(8) uptime averages/rates are over the actual time-running-not-suspended.
Fixed a segfault in ndp(8) -A to properly free the buffer when not in repeat mode.
Show number of sectors, not the number of 512-byte blocks, when newfs(8) is saying "n sectors of m bytes".
Allow snmpctl(8) to specify the "oid" option multiple times (e.g. "snmpctl walk 127.0.0.1 oid system oid ifName").
Added axen(4) device driver, for ASIX AX88178a and AX88179 Ethernet interfaces.
poll(2) on a socket now sets POLLHUP on EOF, so socketpair(2) matches pipe(2) behaviour when the other end is closed.
Refined gio(4/sgi) frame buffer probe, to correctly detect a newport frame buffer on Indy if a HPC SCSI board is attached.
Correctly probe for the Ethernet chip on hpc(4/sgi) v1.5 expansion boards. Gets rid of "sq not configured" in dmesg(8).
In boot(9), do not iterate over alldevs if it is empty (e.g. halting from ddb(4) with ddb entered early with boot -d).
With even number of offsets, choose middle offset with lowest delay. Resolves uncertainty in the ntpd(8) REFID assignment.
Stopped the message that uthum(4)'s calibration offset is incorrect, when the offset is less than 1 degree C.
Stopped wd(4) incrementing the address the next i/o will start at by an incorrect amount.
IPv6 atomic fragments must not go into the pf(4) reassembly queue, but be processed immediately.
Use the cpuid vendor string (not model string) when enabling VIA specific amd64 code so the code works with Eden X2 processors.
Take into account that the iked(8) ike message header might no longer point to the same memory after buffer manipulations.
Make sure drm(4) vblank_time_lock blocks interrupts; made most atomic operations really atomic; removed all 64-bit atomic operations on 32-bit architectures. Potentially fixes some races/panics.
Stop traffic for a given usb(4) endpoint when a transfer reports an I/O error. Fixes ehci(4) looping with "ehci_idone:" messages.
Try to release the console if pckbc(4) fails to send the initial command byte, giving USB keyboards a better chance of attaching.
On hp300: Removed SLOWSCSI; increased scsi(4) target selection timeout. Booting kernel from disk now much faster.
Keep sudo(8) default env_keep to minimum required for pkg_add(1); env_keep for building src and ports moved to "wsrc" group.
Report each m88k cmmu on its own line in dmesg(8); fixed multiprocessor writeback logic.
Fixed luna88k installer, to add bsd.mp to the default sets if > 1 processor.
Stopped merging the per-thread and per-process flags when reporting them via sysctl(8) KERN_PROC.
Updated to: util-macros 1.17.1 and videoproto 2.3.2.
Merge unbound 1.4.21 and ldns 1.6.16.
Fixed tmpfs' uio_offset, to stop it skipping one entry for each block.
Fix an ino_t inconsistency to unbreak the build of fuse(4)'s libfuse.
Made aviion understand ELF files well enough to netboot kernels on AV530.
Switch to machine independent dart(4) driver on aviion.
Set top(1) a higher MAX_COLS, more reasonable for modern widescreen displays.
Fixed occasional SIGSEGV in privsep'd binaries (eg syslogd(8) and pflogd(8)) on sparc/sparc64 running on sun4/4c/4e.
Added support for root on NFSv3.
Configure pms(4) absolute mode for elantech v2. Synaptics driver now attaches to elantech v2 touchpads. Print the firmware version at attach time for reference in future bug reports.
Fixed panic in pipex(4) seen if pipex deleted a session via idle-timer when npppd(8) was frozen, causing use-after-free.
Don't assume the length of npppd(8) chap challenges.
Added length check for Proxy LCP and Authentication AVPs in npppd(8); also in 5.2, 5.3 and 5.4 stable branches.
Do no try to clear the uhidev(4) endpoint (as it if has stalled) if the USB transfer reported an I/O error.
Made ssh(1) BindAddress work with UsePrivilegedPort=yes (bz#1211).
Tell the client when their preferred ssh(1) listen address has been overridden by the server's GatewayPorts (bz#1297).
Store the initial file offset so the progress meter doesn't freak out when resuming sftp(1) transfers (bz#2137).
Get ethernet working on the edgerouter lite; added atphy(4) to RAMDISK and GENERIC.
Increased default number of ugen(4) device files: two are too few for modern standards.
When slowcgi(8) is dumping FastCGI protocol headers during debug, also dump the "request begin" and "request end" protocol entries.
Made slowcgi(8) use the correct buffer size for memory allocation and reads.
Added ugold(4), a driver for PCsensor's USB gold TEMPer temperature measurement device.
Merged mesa version 9.2.0 into xenocara.
Set relayd(8) "toread" to 0 if we don't expect a body. Fixes handling of HTTP requests with a body (e.g. POST).
Add a proper suspend ksh(1) builtin that saves/restores the tty and pgrp as needed instead of using an alias (login shells may be suspended if they are not running in an orphan process group).
The beagle architecture has been replaced by the more generic armv7.
time_t and other random fixes from upstream merged into base nsd(8).
Added libtxc_dxtn 1.0.1, a DXTn/S3 texture compression library.
When a partition is changing to UNUSED, save kernel-set values on all partitions, not just open ones and keep the new partition type. Allows changing the RAW_PART partition (a.k.a. "c") to UNUSED.
Rewritten ARMv7 cpu cache discovery code (to remove false assumptions); fixed log2(3) on arm.
After resume, make the pms(4) driver wait longer when /dev/wsmouse is opened. Allows mouse to work after resume on x130e.
Update line buffer allocation on radeon(4). Fixes blank screen problems on dce4.1, dce5 and dce6 asics (see https://bugs.freedesktop.org/show_bug.cgi?id=64850).
Updated GLU to version 9.0.0. GLU was previously part of Mesa but is now separate.
Made sftp(1) "^w" delete the previous word, instead of the entire line. Matches ksh(1) behaviour.
Lock the audio mutex before invoking the audio(4) call-back. Fixes panics on zaurus.
Fixed minor discrepancies with ix(4) link state handling.
Stopped oce(4) and ix(4) calling if_link_state_change if link state is not changed.
Fix memory initialisation for octeons that have less than 256MB.
Stir PRNG after sshd(8) runs post-accept fork. The child gets a different PRNG state anyway via rexec and explicit privsep reseeds, but it's good to be sure.
Do not let netstart(8) create a route to alias addresses via 127.0.0.1 (the stack is able to tell if the address is local or not).
Correct format string mismatches in various code turned up by gcc(1) -Wformat=2.
Added acpi(4) indicator sensor to acpibtnX, to reflect lid status when available. Useful for people not using machdep.lidsuspend.
With wsdisplay(4), use the console locator to make sure wsdisplay0 is always the glass console on i386/amd64.
Use int64_t in the spamdb(8) greylist db file, with backwards compatibility for records with 32-bit times.
Added ssh_config(5) ProxyUseFDPass option, to establish a connection and then pass file descriptor back to ssh(1).
Make pf(4) "match quick" abort ruleset evaluation with the current block/pass state, rather than continuing on.
Fixed kernel profiling on powerpc architectures (broken since the buffers were made per-cpu).
Fixed prototypes of do_load_half() and do_load_byte() on m88k to stop obscure bugs in awk(1) and elsewhere.
Disable appleagp(4). It doesn't really work yet, and hurts certain iBook G3 models (PowerMac4,3).
Fixed xf86-video-ati shadowfb on big-endian machines.
Updated to: xload 1.1.2, xprop 1.2.2, xset 1.2.3, libXfont 1.4.6 and xwd 1.0.6.
Stop dhclient(8) creating a route to the bound address via 127.0.0.1, as the stack should be able to correctly short-circuit packet routing to local addresses without this.
Make the vgafb(4) console correctly restore when exiting X(7).
Stopped macppc pretending to support non-console devices, because vgafb(4) only matches the framebuffer device setup by the firmware.
Use %lld and cast to long long when passwd(1) is printing time_t values, and atoll(3) when parsing them.
Updated to xf86-video-ati 7.2.0. Fixes endianess problem with kms.
Avoid integer overflow in sector calculation reading UDF DVDs, which broke reads past 2GB.
On luna88k, check number of planes (1, 4, or 8bpp) in framebuffer by ourselves (PROM gives false values). Lets monochrome X(7) server work correctly with a 4bpp framebuffer.
Align stack yp(8) buffers to 64-bit boundaries now, for they might contain a struct passwd(5).
Blast uhts(4), as the code was merged into ums(4) last week.
Stop defining SIOC{S,G}ETVLAN as SIOC{S,G}IFGENERIC. Lets vlan(4) handle pppoe(4)-specific ioctls and vice versa without smashing the stack of the caller.
Make sure "drm.h" gets generated on all architectures that support pci(4), making alpha and loongson compile again.
Set bgpd.conf(5) to filter the IPv6 Discard-Only prefix, because it should not be globally routable (see RFC6666).
Rewrite the internals of the bgpd(8) RDE reload logic. First step to make reload non-blocking. Speeds up the reload time, should also fix a few edge cases on reloads.
Enforce that the ls_id and the adv_rtr field in a type 1 router LSA are the same. This will drop updates trying to attack the ospfd(8) LSDB.
Only skip dhclient(8) address deleting/adding and route deleting/adding on identical lease when we are in state S_RENEWING. Makes sure we end up with an IP address on the interface.
Don't depend on a list of archs to determine endianess, unbreaks X(7) gallium build on sparc64.
When handling puts from a client, tftpd(8) will now close the file once downloaded, instead of waiting until after we clean up the client .
Remove bogus refcounting of usb(4) pipes, to avoid memory leaks and potentially aborting a pipe when requests are still pending.
Made the tree compile again on architectures without drm(4).
Switch time_t, ino_t, clock_t, and struct kevent's ident and data members to 64bit types; build perl(1) with -DBIG_TIME.
Add the tcp(4) socket option TCP_NOPUSH to delay sending the stream. Useful to aggregate data in the kernel from multiple sources, avoids sending small packets.
ps(1) flags are split between thread and process but it is useful for ddb(4) to show both. Show both in ps overview, list them explicitly for the specific thread.
Match macppc framebuffer device against its OpenFirmware node, to enable sharing of console detection logic with sparc64 in radeondrm(4).
Build mesa radeon(4) drivers on sparc64; switch to gallium drivers for r300 and r600.
Added TTM and radeon(4) DRM code. Includes kernel modesetting, framebuffer console and support for newer hardware.
Fixes for as(1) on mvme88k: provide 88110 syntactic sugar for the control register names; correctly handle -m options; allow the register prefix to correctly be recognised in front of the condition codes.
Cancel timeouts on pflow(4) interface destruction.
Plugged file descriptor and memory leak in fuse(4)'s fuse_open() error path.
Fixed a potential race on luna88k, where a secondary cpu incorrectly resets variables on the primary cpu.