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.
For changes in other releases, click below:
Changes made between OpenBSD 4.0 and 4.1
- Fix page fault trap in bcw(4) radio init code.
- spamd(8) config files moved to /etc/mail, -g goes away - greylisting is the default. -b renamed to -l.
- Make spamdb(8) error out if the -t or -T options are specified without -a or -d.
- Fix for mbuf cluster allocations.
- Handle requests with chunked transfer-encoding in hoststated(8).
- Make hoststated(8) re-use the retry value from table host entries for inbound relay connections.
- Do not enforce RLIMIT_FSIZE on vnd(4) I/O operations.
- Fix memory leak in dhclient(8).
- Add cas(4) to sparc64 GENERIC and RAMDISK kernels.
- Add code to cas(4) to make receiving packets to work also.
- Make systat(1) use the 1 line load from 'systat vm' on all other displays, giving them more room.
- Make firmware upload work on BCM4318 bcw(4) devices.
- Make bcw(4) count the number of cores better.
- Work around a transmit hang problem in cdce(4) and make it count dropped packets as input errors.
- Initial import of a Sun Cassini gigabit ethernet driver, cas(4).
- Make hoststated(8) SSL proxy default to HIGH encryption, disable SSLv2 and disable anonymous DH.
- Add support in hoststated(8) to specify the allowed cipher suites and SSL protocols, as well as some other smaller improvements to the SSL and networking code.
- Change spamd(8) to include the HELO/EHLO identification string in the tuple key when greylisting.
- More endian fixes for acx(4) on big endian systems.
- Add a display for hardware sensors to systat(1).
- Make pf(4) default to 200k max table entries if the machine has more than 100MB physical memory.
- Some greytrapping improvements for spamd(8).
- Add support for "Auto-Submitted: no" to vacation(1).
- Add support for Winbond W83627EHF chips to the lm78 lm(4) sensor.
- Fixes for multihead support in XF4 on radeon cards.
- Make gif(4) altq(9)-aware, simplifies traffic shaping on gif(4) tunnels.
- In pf(4), make urpf-failed work with multipath routes.
- Make sure bgpd(8) does not try to set IP_TTL on non-INET listening sockets.
- For amd64, enable ACPI interrupts in APIC mode.
- Add Layer-7 functionality to hoststated(8), used for L7 load balancing, SSL acceleration, general TCP relaying and transparent proxying.
- Make disklabel(8) always write the label to disk when asked, even if it appears unchanged.
- In diff(1), defer printing of per-file diff header until after the regexp "ignore" processing has finished.
- Make ACPI-enabled GENERIC.MP kernels work on systems that only supports PIC mode.
- Fix to prevent syslogd(8) SIGPIPE race on restarts.
- Make acx(4) firmware loading work on big endian systems too.
- Boot console now only echoes certain characters and ignore the rest.
- Make sshd(8) clear SIGARLM before restarting sshd(8) on SIGHUP, other the new process will get SIGARLM before the handler is set up and terminate.
- Add GlobeTrotter 3G+ to the list of supported ubsa(4) devices.
- Prevent the sd(4) scsi driver from unconditionally spin up SDEV_UMASS devices.
- ACPI fix for hpet, makes bnx(4) work on amd64 machines.
- Revert PAE pmap for now, stops freezes commonly seen on amd64 machines running in i386 mode.
- BPF hook fix for etherip_input(), fixes tcpdump on bridged gif(4) interfaces.
- Make sure sensors do not leak kernel pointers when sysctl(8) is copying out to userland.
- Add PCI-based ral(4) to amd64 install RAMDISK kernel.
- Implement code to allow syslogd(8) to log into another program's stdin.
- In ssh(1), set the maximum packet and windows sizes the same for multiplexed connections as for normal connections.
- Various bits to support pthreads on SH-based machines.
- Fixes for rum(4), ral(4) and uath(4) to help them work on macppc.
- Add support for building X11 on the landisk platform.
- Initial import of atascsi code, a scsi to ata translation layer.
- Add handling in pf(4) on skip steps for urpf-failed addresses.
- Add support for ESP+NULL encryption for ipsec. Useful for traversing NAT where AH can't be used.
- Make rcs(1) keep correct permissions when locking/unlocking file with ci/co.
- Another fix for macppc shutdown code to prevent it from booting again after shutdown.
- Add functions for getting EDID information from monitors to the vesa framebuffer driver. Currently unused.
- Add support for ShanTou ST268 in the udav(4) driver.
- Make sure vax read the disklabel sector before rewriting it, to preserve non-disklabel contents.
- Add ACPI to amd64 and i386 install images.
- In DDB, fix buf printing for 64 bit daddr_t.
- Same checks for the i386 platform.
- Add code on the amd64 platform to check for the AMD amd64 errata, and correct them where possible.
- Add some axe(4) and uslcom(4) id's to the list of supported devices.
- Enable malo(4) on macppc GENERIC kernels.
- Restrict which flags ppp(8) can change when running over a tun(4) interface.
- Fix to allow mv(1) to move files starting with a dash across file system boundaries.
- Fixes for fsck_ffs(8) calculation of alternate superblocks based on the disklabel.
- Fixes for multicast on PCI-Express re(4) devices.
- For bridges using Spanning Tree Protocol, make sure topology change is propagated on all ports except the caller.
- Workaround for cdce(4) USB host scanning if attached but not up. Will not send any packets until a packet has been received.
- Added a small program to return sysctl hw.disknames so install scripts do not have a dependency on a clean dmesg to scan for disks and cds.
- Add SIOCADDMULTI and SIOCDELMULTI ioctl handlers to pgt(4) and malo(4), without them IPv6 does not work.
- GNU RCS removed from source tree, OpenRCS has replaced it.
- Fix for grep(1) when using empty files as search patterns.
- Fix 64 bit compiles for httpd(8).
- More work on the cdce(4) driver for ARM platforms.
- Fix a problem in mg(1) with wrapped incremental searches.
- Make fsck_ffs(8) do some extra validation of the superblock, otherwise a corrupt superblock might lead to crashes.
- Smarter _INI code to acpi(4), helps with some disappearing devices.
- On i386, check the xPTR result of the CPUID test.
- Check for some CPUID flags found on newer Intel processors in the amd64 platform code.
- Avoid unnecessary resets on fiber based 88E8021/22 msk(4) devices.
- Fixes for macppc power management to enable wake on AC loss.
- Provide a libc internal interface to get random numbers for malloc without calling getpid().
- Fix the hw.vendor/product sysctl(8)s on sparc64, handle the case where banner-name begins with "SUNW," and copy the platform_type buffer before chopping it up.
- Fix for sparc64 __fpu_ftox() code.
- In bgpd(8), switch address and AS fields in the mrt dump messages so source and destination match the actual traffic flow.
- Various fixes in fsck(8).
- Enable AES on AMD Geode LX CPUs. Used by OpenSSL, but not IPSec.
- Fix a crash in ospfd(8) when redistributed routes were removed shortly after startup.
- Move to 4.1-beta.
- Add HP Proliant NC360T PCI Express Dual Port Gigabit NIC to the list of supported em(4) devices.
- Make sure uvm code compiles with "option DEBUG".
- Make mount(8) rely on the filesystem information provided by disklabel, and when there is only one usable partition on the selected disk, just mount it without asking.
- Add support for fiber on the 88E1112 PHY.
- Various fixes for I/O mapping and cache routines on the m88k platforms.
- Add Dlink DGE-550T B1 to the list of supported msk(4) devices.
- Add preliminary support for Marvell Yukon-II Extreme chips in the msk(4) driver.
- Small improvement in i386 interrupt register load/dump.
- Fix off-by-one in spamd(8) blacklist memory allocation.
- Make readdir buffers depend on file system block size, rounded up to page size in libc and ld.so(1).
- Improvements in the luna88k LCD device driver.
- Allow pf(4) counters to be reset with DIOCGETRULES, so atomic read and reset counters is possible.
- Add more hardware to the list of supported zyd(4) devices.
- Plug memory leaks in fsck(8) which can occur when checking multiple file systems in a row.
- Prevent vnconfig(8) from asking for a key when unconfiguring or listing devices.
- Fixes for ipsec in IPv6.
- In pf(4), compute IPv6 pseudo header checksum based on final destination as ip6_dst.
- Fix for fsck(8) where a corrupt inode might lead to invalid dir sizes.
- Add support for the Quantis USB random number generator.
- Add more hardware to the list of supported rum(4) devices.
- Fixes for nm(1) memory allocation and deallocation in elf_symload().
- Add new "log (updates|all)" configuration option to hoststated(8).
- Add -D option to hoststated(8) to define macros on the command line.
- Fix for nm(1) so checks for st_name validity also check for overflow.
- On macppc, enable arc(4) on GENERIC and RAMDISK kernels.
- Add bio(4) to macppc platforms.
- Define trap 0x81 for cache range flush on SH CPUs, needed for gcc(1) trampoline code and ld.so(1).
- Make landisk get memory size from SH-IPL+g instead of hardcoded size of 64M.
- Timezone code updated to tzcode2007a, adds support for 64 bit time_t if needed in the future.
- Use new mutex for manipulating p_siglist in struct proc, solves problem with lost signals on MP kernels.
- New mutex implementation for atomic operations.
- Change behaviour of tun(4) on close. If auto-created, destroy on close, otherwise only mark as not running.
- Make hoststated(8) inform hoststatectl(8) of ruleset changes and table syncs.
- PCI space map fixes for kauaiata(4) on macppc.
- Add zyd(4) to amd64 and i386 CD ramdisk images.
- Make top(1) complain if user enters negative time specification for delay between updates.
- Timezone data updated to tzdata2007a.
- Introduced '+' interactive command in top(1) to reset all filters.
- Two fixes for libevent.
- Clean up unix domain socket on exit from Xorg(1) -configure.
- Update sendmail to 8.14.0.
- Stop OpenCVS from trying to parse empty lines as dates, saves lots of time.
- Make bc(1) save and restore not only scale, but ibase as well.
- Fix for spurious "i" partitions on newer iPod Shuffle devices with a FAT32 but without an MBR.
- Enable all of the cache on 7751 landisk machines.
- Plug memory leak in ftp(1).
- Fix for gcc(1) on sh where it would clobber registers when __udivsi3 was issued through the PLT.
- Add a new "accounting" variable to rc(8) to enable accounting, creating /var/account/acct if it does not already exist.
- In vnconfig(8), make -c, -l and -u mutually exclusive.
- On amd64, make sure signals to processes on other CPUs are delivered as soon as possible.
- Add a monitor mode to hoststatectl(8) to continuously report changes in hoststated(8).
- Make sure OpenCVS expands keywords before checking if a checked-out copy is the same as what is in the repo.
- Initial version of reload support in ospfd(8).
- In ospfd(8), send out an empty OSPF hello packet when an interface is going down, so that other routers will drop the session immediately.
- Add support for [-k mode] in OpenCVS.
- Do not throttle and serialize I/O operations on vnd(4) devices.
- Fix for disappearing EST/Powernow when booting kernels with ACPI enabled.
- In bgpd(8), do not check that the aspath is loopfree for the peer when sending updates. Fails when using AS 23456 as a placeholder for 4-byte ASNs.
- Bump default openfiles-cur limit to 128 so firefox has enough file descriptors for most uses.
- Workaround for the SD card reader where it stops responding after a card is ejected.
- hoststated(8) linked to builds.
- Make link state in trunk(4) report full duplex if it has at least two ports.
- Make apachectl(8) pick up httpd_flags so restart and graceful does not try to start another instance of httpd(8).
- Rework AGP memory allocation, so it does not try to allocate big chunks of contiguous memory in a loop.
- Fixes for pckbd(4), allows oqo model 01/01+ to work.
- Plugged small memleak in hoststated(8).
- Allow the bnx(4) driver to make use of all available hardware multicast hash slots.
- Add SSL support to hoststated(8).
- Initial import of LCD device driver for luna88k.
- Bump the fixed part of the stackgap to 2048 bytes, allows two full paths to be stored, needed by systrace.
- Various fixes for vesabios code.
- Make libpthread return ESRCH instead of segfaulting when a thread ID could not be found.
- Make sure hexdump(1) does not access uninitialized variables and make it accept a leading 0x for the -n length parameter.
- Add merging support to OpenCVS, both local and remote sides.
- Enable transmit TCP/UDP checksum offload for bnx(4) devices.
- Add an -S option to vnconfig(8) for specifying the salt file for -K.
- Make OpenCVS add command support the -k mode.
- Massive rework of the control imsg flow in bgpd(8), resulting in dramatic decrease of memory consumption op operations like "bgpctl show rib".
- Workaround for em(4) interfaces on Lenovo X60/T60 laptops where the interface will fail to initialize if the link is down during boot.
- Reduced memory usage in OpenCVS in server mode by immediately removing the temporary copy of a recently checked out file.
- Add sensor to acpidock(4) to see if we are docked or not.
- Update BIND to 9.3.4.
- Plug a memory leak in OpenCVS remote code.
- Make fsck(8) create lost+found directories with the same owner as the root directory, not the user running fsck(8).
- Crash fixes in bgpd(8) by locking the nexthop while parsing an update.
- Make ripd(8) and dvmrpd(8) and hoststated(8) ignore SIGPIPE in parent and RDE, needed to correctly report crashes.
- Better handling of escaped CR-LF in hoststated(8) configuration file.
- Fix "Device Busy" error in OpenCVS.
- Introduced -Q option to pkg_info(1), shows all packages in $PKG_PATH which match the given query.
- Prevent OpenCVS from doing a fatal exit when unexpected files are encountered in the working directory.
- Initial version of acpidock(4), a driver for ACPI docking stations.
- Improvements for cache handling and flushing on MicroSPARC-1 based CPUs.
- Make scp(1) decide if progress meter should be shown by testing if stdout is a tty, not stderr.
- Make sftp(1) report error when uploading write fails due to full device.
- Make cdce(4) iterate over endpoints looking for appropriate interface descriptors to use. Makes certain adsl modems work.
- In the NFS vnops code, do not assume our directory vnode will be flushed out, fixes crash when unmounting nfs volumes.
- Add support in OpenCVS admin mode for the -A flag.
- Add -Wstack-larger-than-X support to alpha gcc(1).
- Make the st(4) SCSI Tape midlayer return values when receiving a MTIOCGET ioctl, allows things like Bacula to work much faster.
- Prevent sparc64 schizo(4) panics on non-fatal iommu errors.
- Move interrupt establishment in bnx(4) till after everything in the softc is set up and allocated. Prevents problems when the bnx(4) device is sharing interrupts with other devices.
- Fix for OpenCVS when having CVSROOT on AFS or NFS.
- Workaround for DMA HW errata on bge(4) PCI Express chips.
- Make sure compress(1) only uses gzip when called with names like "gzip, gunzip, gzcat" and so on.
- In pfctl(8), implement "-T expire", so you can expire all entries in a given table that are older than a certain number of seconds.
- Allow kernels with TCP_SIGNATURE but without IPSEC to compile.
- Add support for remote import in OpenCVS client and server.
- Make ciss(4) handle situations where it cannot map physical drives into volumes.
- Do not reinitialize sk(4) devices at every media change.
- Add support for AX88772 based axe(4) devices.
- Added support for remote checkout in both OpenCVS client and server.
- Fix potential integer overflow in libc printf(3), when passing in very large values for the field width.
- Fix for uvm, which should stop crashes in X11 startup seen after activities that exercise memory a lot.
- Make the scsi layer report SDEV_UMASS devices as non-scsi when asked via SCIOCIDENTIFY. Fixes cdparanoia on USB CD devices.
- Make em(4) drivers report flow control status.
- Initial import of a power(4) driver for the Landisk platform.
- Fix infinite loop in case nip6 and nicmp6 are not on the same mbuf.
- Fix for chpass(1) -a handling when given an entry with an already existing user.
- Shrink memory requirements in OpenCVS when dealing with very large trees.
- Make OpenCVS reset sticky tags when using -A.
- Fixes for ntpd(8) when using sensor time sources.
- Add Philips SNU5600 to the list of supported zyd(4) devices.
- Various fixes for option handling in dhclient(8) BOOTP and DHCP.
- Match some additional devices in the zyd(4) driver.
- Make sparc64 vgafb code not attach to Expert3D and Expert3D-Lite cards, these will require a different driver.
- Do not keep entire file in memory in OpenCVS when sending or receiving it, fix memory leaks and remote update.
- Major rework of the RCS api in OpenCVS, resulting in huge speedups and reduced memory usage.
- Turn secondary CMMUs data cache on for luna88k to not hog the bus while they spin.
- Move kernel virtual address space on sparc64 to make sure it doesn't overlap with physical memory on US3 and US3+ based machines.
- Complete binary support for OpenCVS. Adding/importing binary files now works too.
- Fix altq(9) support for mc(4) on mac68k
- Add a few more video cards to mac68k.
- Make user(8) compare against the username, so listing groups when given a numeric user id to userinfo works.
- Add support for sti(4) on pci to be used as hppa console.
- Add callbacks to enable and disable sti(4) rom. Allows dual-sti@pci setups work.
- Make acpi assume the first cpu in the table is the boot processor, instead of the cpu with apic id 0.
- Merge icmp4 and icmp6 in hoststated(8), and use real asynchronous events for checks.
- Rework OpenCVS so it can deal with binary files.
- Make FFS correctly deallocate dependencies when growing into an indirect block and failing to acquire a data block.
- Make OpenCVS validate all options before connecting to the remote server.
- Make dhclient(8) reject all packets with an option claiming to extend past the end of an option buffer.
- Add flow control support to bge(4) and brgphy(4).
- Upgraded BIND to 9.3.3.
- Moved bnx(4) microcode to network byte order.
- In ipsecctl(8), allow rule if there is at least one matching address family combination.
- kue(4) microcode moved to network byte order.
- hostated renamed to hoststated(8). Do not forget to update the passwd file.
- When printing bootp option numbers, use unsigned chars in tcpdump(8).
- Moved hostated(8) regexp interface to shell globbing rules instead.
- Add Gigabyte GN-WI05GS adapters to the list of supported rum(4) devices.
- Add support for HW TCP/IP checksum offloading on the nfe(4) adapters that support it.
- Allow hostated(8) to use service names in addition to numberical port numbers.
- Allow sasyncd(8) to use shared key specification in hex.
- Add a generic send/expect check using regexps in hostated(8).
- Add support for Leadtek Winfast TV 2000 XP in the bktr(4) driver.
- Fix for gdb(1) to allow unwinding through sparc64 kernel trap frames.
- Rework wscons VT100 emulation code to run in degraded mode if some of the non-vital dynamically allocated elements aren't available.
- OpenCVS now accepts log messages from external editors.
- Stop FFS from printing messages when switching between optimizations for space/time.
- Preliminary support for the hp300 single ISA slot found in 4xx "t" models.
- Updated bcw(4) for the new network byte order firmware file.
- Fix for microcode loading so it becomes byte order independent. Will require that people update the microcode files.
- Fix two memleaks in hostated.
- Make bcw(4) understand combined firmware files, so we can have one instead of 15 files.
- Make bgpd(8) not run rde_shutdown() unless bgpd(8) is started with -d.
- Add support for OpenCVS "remove" in a remote setup.
- Fix for OpenCVS client logging.
- Add a 'g' command to top(1) to only show processes having a certain string in their command name.
- Do not leak mbuf tag memory in the an(4), ath(4), atw(4), rtw(4), ipw(4), iwi(4) and wpi(4) drivers either.
- Fixes for group handling in adduser(8).
- Added support to syslogd(8) for continuous reading of syslog memory buffers.
- Initial code for bcw(4) firmware upload.
- Added better support for IPv6 hostname/numeric representation in the ipsecctl(8) parser.
- Fix support for checking out binary files in rcs(1).
- Fix keyboard problem for Intel Macs, where only first keypress is seen by boot.
- Prevent mbuf tag memory leak on atu(4), ral(4) uath(4) and zyd(4) too, just like rum(4).
- When creating an X11/Xorg config, do not force a Mouse section if none was found.
- Make acpiec(4) be the first device to attach to acpi(4). Some systems require this.
- Add support for -s state to OpenCVS.
- Make rndc(8) create output files in /var/named/tmp, which is writeable by the 'named' user.
- Make malo_init() check for firmware loading errors, and reset the card in case of an error, so later malo_init() can work.
- Fix for mbuf handling on rum(4), fixes mtag memory leaks on armish platform. Same fix applied to acx(4), malo(4) and pgt(4).
- Enable jumbo frames on msk(4), except for Yukon-2 FE devices.
- Rewrite of eephy(4) code, allows auto MDI/MDI-X on various chipsets.
- Add flow control to re(4) devices.
- Fix for 802.11 WEP key buffer size when using non-standard wep keys >= 104 bits.
- Added support for the Meinberg PCI511 and GPS170PCI-based mbg(4) devices.
- Remove warnings about illegal prefixlength when a default inet6 route is present in route(8) and netstat(1).
- Fix another problem with sparc64 US3 D-cache flushing, fixes problems with svnd(4) on such machines.
- Add support for ST16C654 com(4) devices.
- Add MC8755 to the list of supported umsm(4) devices.
- A few more D-cache fixes for US3-based sparc64 machines.
- Add code to change video mode on the fly for pnozz(4) on the sparc platform.
- Switch ARM platforms to new syscall ABI. This is a flag day for binaries from before the middle of November.
- Add "C" as command line argument to top(1).
- Fixes for exception handling in gcc(1) for alpha.
- Add support for ADT7475 in the adt(4) driver.
- Make sure fxp(4) devices do not re-initialize the card every time the IP address changes.
- Fix for inline x86/x86_64 asm in libstdc++.
- Make sysctl(8) show more digits in timedelta sensors as the timedelta sensors become increasingly more precise.
- Make tcpdump(8) print icmpv6 inside security header (AH/ESP).
- Make non-autonegotiated 10BaseT and 100BaseTX work on msk(4).
- For bnx(4), use the correct size when loading the RX/TX descriptor bus DMA maps.
- Fix for mg(1) where inserting a file resulted in an incorrect line-number count.
- Add column-number indication to the mg(1) status line.
- Added a two-level sysctl sensor API.
- For Ultrasparc-III machines, patch some crucial D-cache flush instructions and enable the cache.
- Make sure the kernel only add sensors for NMEA devices if there was no error in nmeaopen().
- Add special handling in URPF code to handle urpf-failed on carp interfaces.
- Fix for Core 2 Duo X6800 setperf code where it would report invalid setperf MSR leading to a divide by zero.
- Let hme(4) use the arpcom copy of the ethernet address so that updates to lladdr can work.
- Add Avlab PCI 2S to the list of supported puc(4) devices.
- Eliminate BSMAP #ifdef in mg(1), exposing bsmap-mode which swaps ^H and DEL.
- In ospfd(8), unbreak "redistribute default" and make it possible to specify a metric for the default route as well.
- Plug memory leaks in OpenCVS and OpenRCS code.
- Fix a potential panic in pf_route().
- In mg(1), enable auto-complete for the Execute: prompt when using auto-execute.
- Enable recursive interrupts on the armish platform.
- ACPI code added to various amd64 and i386 install images, though disabled.
- Add rum(4) to amd64 and i386 RAMDISK_CD kernels.
- Hook up acpicpu to the hw.setperf sysctl(8) mechanism, allowing people running ACPI kernels to scale processor and frequency voltage.
- Make IPv6 input code reject packets from outside with interface-local multicast address in ip6_dst.
- Sync KerberosV code with heimdal.
- Add support for pci-based sti(4) devices on hppa.
- Enable mbg(4) on macppc and sparc64 GENERIC kernels too.
- For sensorsd(8), provide dampening on negative events for sensors that flip due to bugs or erroneous readings, and increase polling frequency accordingly to provide same rate of reporting.
- Activate mbg(4) on i386 GENERIC kernels.
- For landisk pciide(4), force speed down to PIO mode 4 until some DMA issues are sorted out.
- wscons fixes for accented keys.
- Import of mbg(4), a driver for Meinberg FunkUhren time signal station receivers. Currently, DCF77 PCI32 receiver card is supported.
- Fix index of ERP information element in beacons for rt2560 and rt2661-based devices.
- Fix for dual port msk(4) cards, now second port is enabled again.
- On hppa platforms, make hil(4) aware of shared interrupts, hil_intr() gets invoked when serial ports interrupt too.
- Update the xenocara XOrg code to X.Org7.2RC3.
- Import of hostated(8) to monitor remote hosts and dynamically alter pf(4) tables and redirection rules.
- Added acpi code to amd64 and i386 RAMDISK_CD kernels.
- Generic fixes for MII code to allow correct duplex reporting for ethernet drivers.
- Fix for msk(4) when processing status descriptors. Makes Yukon-2 XL Rev A3 devices work.
- Add HP NC373i PCIe Gigcards to the list of supported bnx(4) devices.
- OpenCVS now can handle Sticky bits on client and server side.
- Removed GEMDOSFS from MS-DOS filesystem code.
- Add esp(4) driver to macppc, supports NCR53c94 SCSI controller found on old world macs.
- Fix for man(1), make sure it closes fp before returning.
- Fix a minor bug in the TX data queue setup for ath(4) devices.
- Fix for MS-DOS filesystem code where the fs claims to have more clusters than can be represented in the FAT.
- Enable nested interrupts on the Zaurus platform, so interrupts are counted correctly.
- Partial fix for acx(4) regarding broken beacon frames when running in AP mode.
- For ssh(1), make PermitOpen work with multiple values.
- Added IPv6 passive OS fingerprinting in pf(4) and tcpdump(8).
- Make the bgplg(8) produce valid XHTML1.1 code.
- Add a workaround for hardware ip4csum-tx on re(4) chips, it would be mangled on IP packets less than 28 bytes.
- Make malo(4) work on macppc by adding lots of endian fixes.
- Make ftp-proxy(8) handle SIGPIPE, fixes a race where ftp-proxy(8) would silently exit.
- In the SCSI layer, add the ability to requeue I/O rejected by a driver using the new NO_CCB result.
- Imported a looking glass for bgpd(8) to be used for CGI web interfaces and so on. See bgplg(8) for usage.
- In the TCP input code, allow RST with th_seq incremented.
- Change sig_atomic_t on alpha from long to int.
- In the ppp(8) code, if the remote peer rejects our MRU request, but our request is smaller than what the peer accepts, set the MRU anyway.
- Make OpenCVS permit readonly checkouts using -R or the CVSREADONLYFS env. variable.
- Make "flags 0" disable si(4) and sw(4) DMA on sparc.
- In udcf(4), handle unexpected minute gaps better and restart collecting bits immediately after a parity error.
- In ip6_output(), make sure ia is initialized before use.
- Add USR5423 to the list of supported zyd(4) devices.
- Sparc and sparc64 wscons rework, and vt100 emulation removal. Saves 16KB on kernels.
- Make spamd(8) take multiple add/delete arguments, thus making it much easier to do bulk add/deletes without opening and locking the database for each one.
- Enable udcf(4) on Zaurus GENERIC kernels.
- Initial code for a coming ahci(4) driver.
- Switch IPv6 API from RFC2292 to RFC3542. Kernel still handles RFC2292 set/getsockopts so old binaries still work.
- Better check for powernow on AMD K8 and AMD64 cpus.
- In ospfd(8), fix a crash seen on busy area border routers.
- Fix some channel tweaks in pgt(4).
- Make it possible to set the metric and LSA type for redistributed routes in ospfd(8).
- Cleanups and fixes for axe(4).
- Fixes for TX DMA on sk(4) and msk(4) devices.
- Add sf(4) to amd64 GENERIC kernels too.
- Enable mesh(4) and mc(4) in macppc GENERIC and RAMDISK kernels.
- Replace Adaptec AIC-6915 sf(4) driver with fully bus_dma(9)-able driver from NetBSD.
- Fix NULL dereference in NFS code, and make sure current buffer is big enough before caching current entry.
- Added ZyXEL ZyAIR G-100 to list of supported pgt(4) devices.
- Add dutch keymap to hppa map listings.
- Implement correct fix for PCI scanning routines for old world macs.
- Imported fixcoff for macppc and made some changes to ofwboot makes it possible to boot OpenBSD on Power Macintosh 9500 and 9600.
- Fix memory leak in isakmpd(8).
- Make sure isakmpd(8) does not leak message structures when unsupported payloads appear or when payload allocation fails.
- Implement TTL security hack in bgpd(8).
- For tcp input code, make the syncache code inherit the TTL from the listening socket when sending the SYN/ACK response.
- Do not install pmtu routes for transport mode SAs.
- Add Sweex LW053 to the list of supported rum(4) devices.
- Make axe(4) devices avoid unnecessary memcpy() operations in the TX path.
- Report half/full duplex state on bge(4), em(4), ixgb(4) and vge(4) devices.
- For pppoe(4), wrap authname and authkey in quotes to prevent problems when using special chars.
- Added rde_check_route to dvmrpd(8), still not complete.
- Fix for sparc colormaps when using cgtwo graphics.
- Fixes for uath(4) regarding detach and firmware RX.
- Make the virtual vmware vic(4) always assume full duplex when up.
- Added Rapid Spanning Tree Protocol support to bridge(4).
- First shot at endian fixing malo(4), still needs work.
- Fix for sparc64 machines using a frame buffer whose endianness differs from the host CPU.
- pthread fixes for pipes left in non-blocking mode after being closed.
- Two fixes for compress(1), one for using stdin and destdir not writeable, and the other for having a file called '-'.
- Make ipsecctl(8) handle multiple SAs with same src/dst but different port.
- Added some more ZD1211B variants to the list of supported zyd(4) devices.
- In malo(4), enable short slots, should stabilize and increase throughput.
- Add support in XF4 for vesafb to the wsfb driver. Allows unaccelerated and unprivileged X server on i386, with allowaperture=0.
- Remaining bits for ZD1211B support in zyd(4).
- Endian fix in ips(4) firmware handling code.
- Fix for block address calculation in specfs code for devices with blocksize other than 512.
- Enable monitor mode on malo(4) devices.
- Make kernel stack non-swappable.
- Make sure amd64 and i386 only enable acpi if ACPI_ENABLE is defined in the kernel config.
- Move the isakmpd(8) autogenerated public key into /etc/isakmpd, making it readable for unprivileged uses too.
- Let nmea(4) use tty timestamps if enabled, increases precision and lessens jitter.
- Code added to allow bgpd(8) to work on alternate routing tables.
- Make sure apm code handles the case when acpi steals power management functionality.
- Enable usbf(4) and cdcef(4) on Zaurus RAMDISK kernels so it can be used during install.
- On i386, make sure Enhanced Speedstep and other non-acpi setperf mechanisms are used only if acpi is not attached.
- Make the kernel malloc() print out a warning when returning NULL due to M_CANFAIL.
- Fixes for DMA TX handling on the ixgb(4) devices.
- Make spamd(8) error out for a greylisted session only after the DATA command, not after the RCPT command. Helps out with sender verification schemes.
- Change the way dhclient sends to a unicast destination IP address.
- Added support for different video modes on cfxga(4) devices. 8-bit modes disabled for now, and default still 640x480x16.
- Added acpi support to i386 and amd64 GENERIC kernels, though disabled.
- Initial import of vesabios for i386.
- Enable kvm86 in the i386 GENERIC kernels.
- Initial import of ips(4), a driver for the IBM ServeRAID controllers.
- Only use the ichpcib speedstep feature if we're running in a (Mobile) Pentium 4, since celerons do not support it.
- Add portugese LK-201 keyboard layout to vax machines.
- First attempt at making kvm86 multiprocessor safe.
- Prevent panics when booting GENERIC.MP with a vesabios kernel.
- Initial bits for ZD1211B support in zyd(4). Untested.
- Enable WEP on malo(4) devices.
- Speed up cfxga(4) by not storing complete bitmaps as a backing store for multiple screens, but remember character cells instead.
- Separate solid fills ops from regurlar raster ops in cfxga(4), brings us accelerated copyrows and copycols.
- Enable uberry(4) on i386 and amd64 GENERIC kernels.
- Make use of the multiple routing tables in the IPv4 and IPv6 input and forward handling code.
- Initial import of uberry(4), for battery charging and powering of the USB Blackberry device.
- For cfxga(4), always update cfxga_scr emulops field when creating a new screen, in case the card was removed and reinserted.
- Fixes for malo(4) reset handling, so ifconfig up/down works on amd64 too.
- Fix the blitter functions on pcmcia based cfxga(4) graphics, providing an accelerated putchar and fix synchronization points.
- Enable mpi(4) on sparc64 GENERIC kernels.
- Reworked the raster ops code for pcmcia based cfxga(4) graphics when monitoring cpu-to-display operation. Much faster that before.
- Enable malo(4) on amd64 GENERIC kernels.
- Silence some dmesg noise on Sun x4100 virtual consoles.
- Activate pwdog(4) on i386 and macppc GENERIC kernels.
- Added support in the scsi midlayer to handle detached targets better.
- Fix malloc() panic in msdos_mountfs().
- Remove dpt(4) from alhpa, amd64 and i386 kernels.
- Enable new devices (flash, usbf, cdcef) on Zaurus GENERIC.
- Initial USB device controller (UDC) and USB CDC Ethernet function support for PXA27x/Zaurus.
- Add code to detect if the pwdog(4) card is jumpered to work I/O or memory mapped.
- Enable malo(4) on i386 GENERIC kernels.
- Add support for the Quancom PWDOG1, watchdog timer card.
- Sync the amd64 acpi code to i386, also fix interrupt routing for multi-ioapic systems.
- Fix for acpiec handler code, fixes deadlocks.
- Initial import of X.org 7.2 called xenocara. Not hooked in the build tree yet.
- Initial NAND flash support for Zaurus platform, not enabled yet.
- Also enable malo(4) devices to have fixed rates set.
- Fix for double free panic when detaching interfaces.
- Enable automatic rate adaptation on malo(4) devices.
- Complete rewrite of the reset routine on bcw(4) devices, clears up the random attach warning on warm boots.
- Make sure we zero out the fsid field when copying out a statfs struct to userland in the VFS code.
- Add support in pf(4) to tag ipsec traffic belonging to specific IKE-initiated phase 2 traffic. Allows policy-based filtering of encrypted and unencrypted ipsec traffic.
- Fix for the STP bridging code, allows to use bridge STP with USB ethernet devices.
- On arm platforms, use correct define to detect soft cpu.
- Remove 802.11a stuff from malo(4).
- For now, do not attach the second port on dual port msk(4) cards. Makes the first port work.
- Add 88W8310 chipsets to the list of malo(4) devices.
- Add BCM4312 to the list of bcw(4) devices.
- Fix an int overflow in banner(1).
- Make sure the kernel malloc() return NULL on too large sizes when caller has set M_CANFAIL instead of panic()ing.
- Attach to cardbus bcw(4) cards.
- Redo line parsing in ypserv(8), fixes out of bounds array access for short strings.
- Make wi_get_txpower() fail on USB wi(4), so we do not CSR_READ on them.
- In malo(4), free allocated mbufs at TX done. Also reset some TX descriptor values. Fixes "mclpool" warnings.
- In ipsecctl(8), do not delete sections that might be shared with other connections. This workaround might leak isakmpd(8) entries, but is ok for now.
- Added sysctl net.inet6.ip6.multicast_mtudisc for multicast routers.
- Fixes for external editor launch in lynx(1).
- Remove watchdog handler workaround in em(4), not necessary anymore.
- Reenable hardware vlan tagging on ti(4) devices.
- Fix a 32 bit overflow on 32 bit platforms for ksh(1) ulimit.
- Make bnx(4) only do hardware checksum offload on UDP and TCP.
- Fix vlan support in bnx(4) when transmitting frames.
- Enable support for audio on landisk platforms.
- Add support in pfctl(8) for -K, to kill source tracking nodes explicitly, behaves like -k for killing states.
- Re-enable Intel i31244 support in pciide(4).
- Add support in tcpdump(8) for displaying Rapid Spanning Tree Protocol frames.
- Fixes for bnx(4) transmit code which would drop sent packets at mediom/high load.
- Add PCI hookup code to malo(4) devices.
- Fixes for mg(1) regarding isearch.
- Fix line number bugs regarding marks while opening same file several times and one concerning pgup/pgdown in mg(1).
- On amd64, decide whether we need to attach the primary cpu by checking the CPUF_PRESENT, like we do on i386.
- Initial import of bcw(4), a driver for IEEE 802.11 Broadcom BCM43xx chipset based devices. Not usable yet.
- Add support for multiple networks on one interface for ospfd(8).
- In pax(1), fix extracting and setting permissions for tar archives when multiple -C options are present and/or multiple file selection args are used.
- Make getpeereid() work on both sides of the connection. The client can now get the euid/egid of the server it connects to.
- Make sure we copy the IV back into the session structure instead of the softc for VIA cpu-based crypto.
- Fix a segfault in mg(1) when using isearch.
- Add a lower TX treshold value in em(4) and use this when checking the number of available TX descriptors, in the case that em_encap() has tried to reclaim descriptors.
- In grep(1), reset the number of lines of tail context before processing each file, to avoid printing lines from the previous file.
- Changed the semantics of ff01::/16 to local interface multicast in the IPv6 stack.
- In md5(1), add support for -r and -q options.
- Add support for four new radios in zyd(4), AL2210, CGT, Maxim New and Maxim New2. Untested.
- All network interface code create empty groups, so the rc scripts can do carp demotion early in the boot process.
- Various IPv6 utilities transitioned from RFC2292 to RFC3542 behaviour.
- Hook up acpi apic interrupt routing support to generic acpi code.
- Fix for infinite loop in malo_tx_intr() for malo(4) devices and enable data packet transmission.
- Fix integer promotion on 64 bit arches in udcf(4) code.
- Fix for vge(4) when vge_encap fails, would leave an mbuf in the if_snd queue otherwise.
- Add rlog and rannotate commands to OpenCVS.
- Rework em(3) transmit register handling, required for future chipsets.
- Make ipsecctl(8) handle rules with addresses from mismatched address families correctly.
- Remove a delay() in malo(4) by actually waiting for the command to finish.
- For i386, get rid of magic ISA and EISA bus numbers in mpbios code, paves way for alternative sources for interrupt information.
- Fix memory leak in fsck_msdos(8).
- Add support for the 3Com 3CRWE154G72 pgt(4) device.
- Add support for Sun 1000baseSX cards in gem(4).
- Make mopd(8) check the correct bits in the control byte.
- Fix DMA firmware command interface in malo(4), now can associate successfully with an AP.
- Have em(4) pre-allocate TX DMA maps instead of creating and destroying a DMA map per packet sent.
- In the nfe(4) driver, defer setting the valid bit in the first TX descriptor until all descriptors have been set up, otherwise hardware may start processing descriptors faster than us.
- In ifconfig(8) for wlan settings, allow -nwid to clear the prefered nwid, just like -nwkey clears the key.
- Make m88k-base platforms fetch syscall arguments beyond r9 with copyin() from the userland stack, instead of having the userland code put the first three arguments in r10-r12.
- Fix set_rpc_maxgrouplist, so mount_nfs(8) -g works again.
- Have md5(1) accept both upper case and lower case letters.
- Make ipsecctl(8) check both source and destination when grouping SAs.
- Fix grouping for SAs in ipsecctl(8), now all combinations of SAs are possible, not only ESP+AH.
- Make sure ipsecctl(8) does not count sa, ike and tcpmd5 rules twice.
- Introduce reference count in dvmrpd(8) for route_report so it can be shared and freed correctly.
- Make ripd(8) clear lists before deleting neighbor.
- Fix an mbuf leak in tun(4) error path.
- bpf(4) fixes for the acx(4) driver.
- Lots of USB devices added to the landisk GENERIC and RAMDISK kernels.
- Initial support for OpenBSD/sh support in gdb(1).
- Add multicast filter to vic(4) instead of using ALLMULTI all the time.
- Make sure diff3(1) respects TMPDIR.
- More fixes in malo(4) for the firmware commands.
- Make isakmpd(8) support public keys without SubjectPublicKeyInfo.
- OpenCVS now can do remote tag command.
- On landisk platforms, force TS_CARR_ON for the serial console, since they have no DCD line.
- Make ospfd(8) and ripd(8) properly indicate the state of "fib-update".
- Add a -y flag to fdisk(8) for non-interactive use.
- Make sk(4) XMAC work on big-endian systems too.
- Add support for Decision Computer multiport serial cards in puc(4).
- Fix sigmask handling bug for landisk platform that caused SIGCHLD to be almost always masked.
- Various fixes for em(4).
- Add xmphy(4) to macppc GENERIC and RAMDISK kernels.
- Fix dd(1) so checks for seekability is done using isatty() instead.
- Various fixes for the landisk platform.
- Fixes for softdep mkdir syncing during pagedep flush.
- Correctly check for bad signature in the ssh(1) monitor, otherwise the monitor and unprivieged process can get out of sync.
- Add timecounters to the adm64 platform.
- In dd(1), fix skipping then reading from a tty.
- Add support in ne(4) for AX88790 chipsets, and fix AX88796 waiting after sending a packet, since it seems to lack "remote DMA complete" bit in ISR.
- Fix in pfctl(8) to unbreak authpf(8) by handling non-inline anchors separately.
- When stopping malo(4) devices, also reset the TX ring.
- Correction in trek(6) where signed char fixes prevents infinite loops.
- For vax, do not let memset() behave as bzero() for lengths over 64KB.
- In ssh(1), add missing checks for OpenSSL return codes.
- Fixes for HPPA savecore.
- Initial import of MFM controller code for Vax VS2000 and some VS3100, enabled in GENERIC and RAMDISK kernels.
- For tip(1), replace -### with -s### for the speed string.
- Enable malo(4) to transmit management frames. Fix/add firmware commands.
- Landisk/SuperH platform switched back to softfloat code generation for now.
- bgpd(8) would announce restart capabilities when announcing refresh capabilities. Fixed.
- Force a new sensor task to be run as soon as possible in order to collect early values instead of waiting for the first timeout.
- Make USB wi(4) adapters not advertise themselves as supported hostap devices.
- In vic(4), set the RX filters after setting the shared data address. Fixes a crash of the VMWare host when running an OpenBSD guest.
- Add MCP67 SMBus controller to list of supported nviic(4) devices.
- Sync em(4) to Intels 6.2.9 version. Adds support for a few newer Intel PCIe boards and a few bug fixes.
- Add gem(4) and gentbi(4) to amd64 and i386 GENERIC kernels.
- Endian fix in httpd(8) for mod_proxy code.
- Add MCP67 PATA and SATA to the list of supported pciide(4) devices.
- Add NVidia MCP67 LAN to the list of supported nfe(4) devices.
- Add power state table for 1GHz VIA Eden 90nm 'Esther' CPUs.
- Do not enable hardware cursor on vax in the Brooktree DAC on the 8 bpp model.
- Wait two seconds after reset before probing for devices on vax, lets RX23 devices get detected again.
- Handle hil(4) loop reconfiguration in a kernel thread instead of doing it from interrupt context.
- Do not let pfctl(8) open a transaction for a ruleset unless it is a brace expansion that contain rules.
- Fix a potential memory leak in libevent.
- Make arc(4) query the firmware for the number of devices, and then iterate through them to get the right names for sensor creation.
- Fix a bug in awk(1) when converting a variable from numeric type to string.
- Fix in X11 for video playback in the Radeon driver for Mobility M6 based machines.
- Add AL7230B to list of supported zyd(4) devices. Untested for now.
- In ripd(8), if the nexthop is not reachable through outgoing interface, set it to INADDR_ANY.
- If the hardware does not say it can do scatter gather lists for tx on vic(4) devices, limit it to only one dma segment.
- Enable vic(4) on i386 GENERIC and RAMDISK kernels.
- Make raidctl(8) error out when passed an empty string as device name.
- Make the vic(4) driver set a tick up to check the link state every second.
- Add active cooling support to acpi.
- Fix vic(4) initialization so ifconfig up and down now work.
- Add German LK-01 keyboard layout for vax platform.
- Have zyd(4) abort bulk-in and bulk-out pipes before freeing the RX/TX transfer lists.
- Fix firmware fatal errors on re-associations in wpi(4).
- In vic(4), fix the TX path so it can use more than one scatter gather entry when sending the packet.
- Fix range checking in the argument parser for dd(1).
- Make vic(4) handle slightly short frames, such as those coming from VMWare.
- Add support in ipsecctl(8) for aggressive mode.
- Make pfctl(8) allow a user to recursively print anchors, including those without reserved names if a trailing * is specified in the anchor name.
- Make ssh(1) check DH_compute_key() for -1 even though it should be valid due to earlier checks.
- In the TCP code, do not regenerate the timestamp modulation offset for SYN-ACK retransmits.
- Initial code for adding sensors to arc(4) devices.
- Make pfsync devices to be cloned, but prevent more than one instance for now.
- In pf.conf(5) allow pfctl(8) ruleset optimizer to be controlled from within the ruleset, or optionally on the command-line.
- Fix infinite loop in gcc(1) for i386 code when passing objects with 3+ base classes by value.
- Major work on the vic(4) driver. Closer to working now, but the TX code path still needs work.
- Added a timecounter based implementation of adjfreq(2).
- Fix dynamic tuning of the radio sensitivity on rt2661 based devices.
- On luna88k, have the primary CPU start the CMMU for secondary CPUs because secondary CPUs will run endless loops without cache otherwise.
- Change CMMU probing method on luna88k machines.
- Fix in output of "show vnode" in ddb(4).
- Plug a memory leak in talk(1).
- Let ospfd(8) allow braces to fit on a single line if only one or no argument is used.
- In libc, make __dtoa() and strtod() thread safe.
- Fix in isakmpd(8) TAILQ usage, preventing crashes.
- On amd64 and i386 platforms, make sure swap defaults to partition "b" on the same disk as root, not partition "b" on unit 0.
- Make landisk booting more reliable by disabling cache before jumping into the kernel.
- In the NFS socket code, make sure nm_srtt and nm_sdrtt arrays are not initialized out of bounds.
- In ld.so(1), only mprotect(2) pages during relocation if the library is marked TEXTREL.
- In pf.conf(5), add support for anchors loaded inline., enclosed in a brace-delimited block.
- On macppc, have gcc(1) make stack executable when doing trampoline code.
- On vax, hide hardware cursor on 4 bpp gpx displays.
- For sparc machines, blank then screen immediately if the lid is closed during boot.
- In ntpd(8), use clock_gettime(CLOCK_MONOTONIC,..) to get a monotonically increasing time, and make ntpd(8) use that to send the next query to an ntp peer.
- Make udcf(4) degrade the sensor status to WARNING on first error condition and to CRITICAL if valid time information comes within 15 minutes.
- Partially revert some of the macppc PCI range calculations, since it broke some newer machines.
- Fix fxp(4) so it will reset the link when you change speed.
- Have bgpd(8) store copies of everything needed to remove SAs and flows later. Allows for migration from tcp md5sig to ipsec esp ike with just bgpctl reload on both sides and bgpctl neighbor $foo clear on one side.
- Make sure bgpd(8) store SPIs for tcpmd5 outside the conf struct so it can clear old SAs when the session is restarted after a config reload.
- Add support for AMD Geode LX security block. Currently only RNG, AES to be added later.
- Initial driver for MosChip MCS7703 based USB serial devices. No hardware flow control yet.
- Allow pflogd to listen on alternate pflog interfaces.
- On sparc64 USIII-based machines, make sure we flush the I-TLB from the primary context and not the secondary.
- Allow spamlogd to use an alternate pflog interface.
- Fix localhost DoS when using oversized values with crypto devices.
- Fix for segfaults in pthreads code in _thread_kern_poll when descriptor is in closing state.
- Add code to allow up to 16 pflog interfaces, and add support in pf.conf(5) to specify which interface to log certain lines to.
- Make a RAMDISK kernel image for the landisk platform.
- Fix RX DMA handling in malo(4) and make sure we reset the RX descriptor ring on ifconfig down/up.
- Add new trace function to ddb(4), "machine acpi trace" so users can send useful traces without enabling acpi debug.
- Improvements in ntpd(8) when updating from timedelta sensors.
- Fix a crash in as(1) when using --statistics.
- Build rthreads by default for easy testing.
- Reworked malloc(3) to keep pginfo and pgfree structs away from application memory by using special allocators for those instead of imalloc. For chunks, return randomly from a short list of recently freed chunk.
- Make the pflog interface cloneable.
- Add Sundance TC9021 to list of supported stge(4) devices.
- Fixes for PCI configuration on old-world macppc machines with non-contiguous PCI memory spaces.
- Make bge(4) recognize BCM5715 A3-based devices.
- Fix colormap in 4bpp mode on vax gpx displays.
- Make zyd(4) devices blink the LED on transmit.
- "Bogus xmit rate" panic fixed for rum(4) too.
- Replace rate control code in ral(4), should also fix "bogus xmit rate" panics in HostAP mode.
- Make zyd(4) handle per-node rate control.
- Add Edimax EW-7318USG to the list of supported rum(4) devices.
- Fixes for rate handling in iwi(4).
- Fix RX handling in malo(4) devices, now can receive management frames.
- Make sure bnx(4) keeps at least 16 TX descriptors unused, and handle TX loads problems better.
- Enable zyd(4) on i386 and amd64 GENERIC kernels.
- Major rework on zyd(4) to bring it into a working state. Should work with ZD1211 chipsets, though IBSS and HostAP modes does not work yet.
- Fixes for the client part of OpenNTPD.
- Add ASIX 88190 to the list of supported ne(4) devices.
- More fixes for VFS softdep code.
- Boot fixes for the landisk platform, now supports "boot -c".
- Reworked the TX path of bnx(4) devices.
- Another fix for the wscons jump scrolling code which can occur if autowrapping is on and certain control characters are encountered.
- In the VFS layer, promote certain bdwrite calls to bawrite for some cases so they wont get deferred due to pending softdeps.
- Make pciide(4) match the CS5536 IDE controller in AMD Geode LX-800-based system.
- Replace ACPI ioctls with APM ioctls, now apmd(8) can be forced to use /dev/acpi.
- Various acpi fixes.
- In sort(1), remove code that could cause a SEGV if a buffer is realloc()ed, instead allocate two buffers early.
- FPU detection fixes for AMD Geode LX-800-based machines.
- For the SGI platform, enable ipv6 on the RAMDISK image.
- Do not enable Geode watchdog if building small kernels.
- On gcc(1) for alpha, do not force -msmall-data for -fpic and -mlarge-data for -fPIC. Makes -fpic and -fPIC equivalent, as was the case with gcc 2.x.
- Initial import of ripd(8), a routing daemon for the RIP protocol.
- Return ECONNABORTED when a non-blocking socket has been shutdown() for receives instead of returning EWOULDBLOCK, since that misleads applications to think accept() may eventually succeed. Corrects a pthreads deadlock.
- Change the way wd(4) calculates the number of cylinders on non-CPU_BIOS architectures.
- Disable firmware fastboot feature in bge(4) for 5752/5755 and 5787 ASICS, eliminates firmware timeouts.
- Reset fixes for non-SC100 Geode cpus.
- Deadlock fixes in libpthread regarding _FD_LOCK.
- Make sure i386 and amd64 uses partition 'b' for swap, not just the first partition after root.
- Increase max pf(4) tag name size from 16 to 64 characters.
- Make sure pf(4) doesn't set 'flags S/SA' on stateless rules.
- In re(4), fix for watchdog timeouts experienced with some RealTek adapters.
- In ps(1), make the session field 8 chars for 32-bit cpus and 16 chars for 64-bit cpus since it is a pointer. Also, left-justify the state field name to match the state data.
- Use 64 bit daddr_t for logical blocks in the file system layer too.
- Initial import of malo(4) code, a new driver for the Marvell Libertas chips.
- Remove a potential race in ftp-proxy(8) by closing file descriptors before cleaning up events.
- For gem(4), get MAC address from VPD, like we do for hme(4).
- Add BCM5787 A2 to the list of supported bge(4) devices.
- Enable bce(4) on amd64 GENERIC and RAMDISK kernels.
- Also add cross-compiling hints to crunchgen to allow for a different obj/ directory.
- Fixes to allow cross-compiling of less(1).
- New checks in ACPI code for Embedded Controllers, should be detected correctly now.
- Fix for ath(4) reset procedure of single-chip variants. Should make AR5424 PCIe chipsets work.
- Fix kernel page fault in pgt(4) when the device gets detached after the firmware failed to load.
- In lynx(1), add checks for mkdtemp() failure, prevents segfaults when TMP or TMPDIR environment variables are set to non-existent directories.
- Massive ACPI changes.
- Make file(1) recognize OpenBSD/sh binaries too.
- Fix a potential null dereference, and a memory leak in the pgt(4) error path.
- Make sure ssh(1) exits instead of doing a blocking tcp send if we detect a client/server timeout, since the tcp sendqueue might be full of alive requests.
- Fixes for SIGCONT, may be sent to any process with the same session ID as the caller, not to any process that is a descendant of the current process.
- Add udcf(4) to amd64 GENERIC.
- Implemented the IP_MINTTL tcp socket option.
- Implemented the IP_RECVTTL socket option for raw or udp sockets.
- In pf.conf(5), allow the 'quick' keyword on an anchor.
- Various fixes for xge(4).
- Revert firmware synchronization change in bge(4), since breaks dual-port cards.
- Make ssh(1) sleep before retrying, not after, since sleeping affects errno.
- Stop spoofing NetBSD/FreeBSD MBR partitions as the 'a' partition in a disklabel when no OpenBSD partition is found.
- Fixes in the delay routines for dp8390-based devices on fast machines.
- Add powerhooks to the pgt(4) driver.
- Fix glitch in jump scroll code for wscons vt100 emulation.
- SuperH additions to ld(1) and as(1) in binutils.
- Fixes for linux emulation regarding linux_sys_waitpid() calls.
- Add PCI Express Fibre Channel FC949E to the list of supported mpi(4) devices.
- Fix for macppc mc(4) by using the "Enforce in-order Execution" to stop it from crashing under heavy load.
- Make cd-roms retry forever while the device indicates that it is becoming ready, in the same way it was done for tapes in st.c.
- Enable pgt(4) on cardbus for the i386 and amd64 GENERIC kernels.
- Fix cardbus support for pgt(4).
- Initial import of the SuperH-based landisk platform.
- Various binutils and gcc(1) additions to handle 32-bit SuperH cpus.
- In pf.conf(5), make 'flags S/SA keep state' the implicit default for filter rules.
- SECURITY FIX: Integer overflow in systrace(4)'s STRIOCREPLACE support. This could be exploited for DoS, limited kmem reads or local privilege escalation.
A source code patch is available.
[Applied to stable]
- Update OpenSSH to 4.4.
- Always allow read-only opens on (s)vnd devices, despite the type of the first open (svnd vs vnd).
- Add mc(4) driver for AMD AM79C940 (MACE) ethernet chip to macppc.
- Make sure bufcache calculation on i386 does not take memory above 4g into account since it wont be used anyhow.
- Fix for write(1) to handle cases where the utmp file is missing.
- Fixes for pci(4) where unit numbers do not match PCI Bus number.
- SECURITY FIX: Several problems have been found in OpenSSL. While parsing certain invalid ASN.1 structures an error condition is mishandled, possibly resulting in an infinite loop. A buffer overflow exists in the SSL_get_shared_ciphers function. A NULL pointer may be dereferenced in the SSL version 2 client code. In addition, many applications using OpenSSL do not perform any validation of the lengths of public keys being used.
A source code patch is available.
[Applied to stable]
- Use 64 bit daddr type for physical block numbers in the filesystem code.
- Enable altq on acx(4) devices.
- Altq fixes for pgt(4), vge(4) and axe(4) based devices.
- Fixes for libpthread regarding dup2() and _thread_fd_table_init() return values.
- Add ServerWorks PCIe bridge ids to pcidevs.
- OpenBSD/cats platform now discontinued.
- Switch i386 fpu control too, i386 also has proper "long double" support now.
- Initial code for 88E3082 Fast Ethernet PHY. Untested at the moment.
- Switch amd64 fpu control word to hardware default, makes us use 64-bit precision instead of 53-bit, giving us proper support for "long double".
- Make sure SAF/TE and SES free their sensors on detach.
- Small fixes for running nm(1) on ELF binaries.
- Improved CPU signature detection in the powernow K7 code.
- Various small fixes in the re(4).
- Make sure rtl81x9 code discards packets in the receive handler if they are too short or too large.
- Small fix for powerpc pthread stack allocation code.
- Add support for HenTong WK-668 to list of supported udav(4) devices.
- Make sure rtl81x9 code free the mbuf chain on certain failures.
- Tree search speedup in hostapd(8) via inlined compare function.
- Fix hostapd(8) parser for event rules and handling of multiple matches of the "not" grammar rule.
- Add cardbus support for pgt(4).
- Add uath(4) to sparc64 GENERIC. Almost works.
- Add an(4), atw(4), auth(4) and wi(4) to alpha GENERIC.
- Add ifstated(8) to rc startup bits.
- Enable uath(4) on amd64.
- Fix in ospfd(8) to better detect on which interface incoming OSPF packets arrived.
- Add uow(4) 1-Wire support to all USB-capable arches.
- Add pgt(4) and acx(4) to sparc64 GENERIC too.
- Plug memory leak in OpenRCS diff code.
- Add acx(4) to alpha GENERIC kernels.
- Switch alpha to gcc3.
- Initial support for HostAP mode on pgt(4).
- Make sure port number 664 isn't used since packets might get stolen by IPMI/asf.
- Reduce number of unsafe signal operations in the X server logging functions.
- In grep(1), allow zero-length patterns with -x.
- Make pthreads allocate stack using mmap instead of malloc.
- More of the fd race and deadlock corrections in pthread code.
- Make sure bge(4) does not allocate jumbo buffers and also does not allow reception of large frames until mtu is set to higher value.
- On acx(4), make HostAP mode work, and fix IBSS tweaks.
- Add ELECOM LD-USB20 to list of supported aue(4) devices.
- Endian fix for ISO chksum in dvmrpd(8).
- Fix races in FFS code which may violate softdep processing and create inconsistant on-disk ffs state and absuse kmem aswell.
- Fix in httpd(8) for error response to unsupported Expect: header.
- Fix for the shutdown hooks on arc(4) so it syncs correctly.
- Make nc(1) also accept "HTTP/1.1 200" as a success response.
- In ld.so, fill in the list of loaded segments for the main executable so we can unprotect them if needed for binaries that have TEXTREL set.
- Add pgt(4) to alpha GENERIC kernels.
- Add TRENDnet TEW-429UB A to list of supported zyd(4) devices.
- Make sure sparc64 can dump memory above 4GB.
- Fixes for file descriptor races and deadlocks in the pthread code.
- Add support for Marvell Yukon 88E8056 to msk(4).
- Add support for hot plugging mpi(4) SAS devices, but disabled for now.
- In OpenRCS, add support for all other diff flags that are pertinent to files, and do not conflict with rcsdiff-specific flags.
- Make libXpm more robust when parsing XPM files with unterminated comments in them.
- Make the wsfb driver inform the X server that is does not require direct access to the hardware.
- Make sure the SCSI midlayer frees the scsi_link struct on detach now that hotplugging of controllers is possible.
- Fix the way delays between retransmissions are calculated in NFS when receiving NFSERR_TRYLATER from the server.
- Fix memory leak in top(1).
- Implement zero-copy RX data path for uath(4) devices.
- Corrected SpeedStep table for Pentium M 770.
- Make vnd(4) work on read-only file systems.
- Enable pgt(4) on amd64 GENERIC kernels.
- Enable AR2413, 5413 and 5424 based devices.
- In tcpdump(8), enable ESP and AH dissectors over IPv6.
- Disable 802.11g mode on AR5211 and 5212 based devices for now.
- Fixes for re(4) on cardbus, for kernel faults on halt/reboot.
- The macppc platform extended .text and .data segments to 64MB, allowing programs with large .text segments to run.
- Re-add Dell PHY LED setup workaround and Jumbo capability flag on bge(4).
- Various fixes in the RX path for em(4) devices regarding mbuf cluster allocations, updating status bits in RX descriptors and DMA map unloading on errors.
- Re-add re(4) link state check, as a workaround for a link state issue found on 8139C+ chips.
- Alignment fixes for em(4) when doing VLAN and jumbo frames together.
- Fixes for bge_reset() in bge(4), eliminates firmware timeouts for the BCM5752.
- Make rdate(8) ignore ntp responses with ALARM status.
- Defer the establishment of interrupts on bge(4) until later during attach. Fixes panic on some systems running non-MP kernels.