Changes made between OpenBSD 3.9 and OpenBSD-current
This is a partial list of the major machine-independent changes
(i.e., these are the changes people ask about most often). Port
specific changes have also been made, and are sometimes mentioned
in the pages for the specific platforms.
There is a separate list of Changes to the ports collection.
Note: Problems for which patches exist are marked in red.
We are working on OpenBSD-current.
- Add a new SHOW imsg to send optional attributes in bgpd(8) - used to show communities in bgpctl output.
- Rework signal handling in ftp-proxy(8).
- Add a helper pci_find_device() function to pci(4) to enumerate the PCI bus.
- Plug a memory leak and fix a possible crash in usbhid(3).
- In the /etc/security script, deal with the fact that some shell scripts may contain binary characters.
- In pkg_add(1), fix an infinite loop in case of an error in the archive header.
- Implement the Michael MIC as defined in IEEE 802.11i for TKIP. This generates a weak 64-bit digest protected by an additional key - required for future IEEE 802.11i/WPA support.
- Better error checking in ifconfig(8).
- Make ural(4) read and show real MAC/BBP rev as determined, instead of the hardcoded RT2570.
- Fix panic on iMac G5 (iSight) in smu(4) due to a missing kernel unlock.
- Fix an out-of-bounds memory access in ksh(1).
- In m4(1), add limited support for format builtin in gnu-m4 mode. This is used by some autoconf scripts.
- Allow the wscons(4) wsfb X server to run without the need for xf86(4) aperture to be set.
- In the X server, use /dev/pci to access the PCI configuration space on i386 and amd64, instead of directly accessing the addresses from userland.
- A large amount of memory leak plugging in various system utilities inspired by Coverity reports, as well as ruling out of hypothetical NULL dereferences.
- Many changes in ssh(1) to be more careful with types.
- In isakmpd(8), make sure the command fifo is ready before returning - fixes a startup race when interacting with ipsecctl(8).
- Improve lint(1) to reduce more false positives and thus make the output more useful.
- Fix some memory leaks in ssh's gssapi(3) code.
- Change powerpc's BLKDEV_IOSIZE down to 2KB like on all other platforms.
- Recognize more Intel pci(4) devices as found on the Acer Travelmate 3012WTMi laptop.
- Plug memory leak and potential NULL dereference in hash(3).
- Make asa(1) use getopt(3).
- In init(8), plug potential memory leaks in error path.
- Teach pcn(4) to recognize Am79c976 and Am79c978.
- On sparc64, use OFW nodes to enumerate the PCI bus. This makes detection of devices hiding behind bridges more reliable.
- Extend PCI bus enumeration to allow architecture-specific hooks.
- Plug potential memory and descriptor leaks in ssh(1) and sftp(1).
- Provide new amd64-specific implementation of exp(3).
- Plug memory leak in revnetgroup(8).
- Teach it(4) to probe IT8712F-a and SiS950 devices.
- Rework tty handling in bc(1) so that things get cleaned up reliably on abort.
- Place reasonable bounds on memory usage of bufferevents in libevent.
- Provide implementations of the C99 math functions trunc(3) and truncf(3).
- Plug memory leaks and a possible NULL dereference in systrace(1).
- Make isadma happier on alpha by honoring the 'high' parameter in _bus_dmamem_alloc_range.
- Change implementation of delay(9) on alpha to use rpcc instruction.
- Plug memory leak in usbhid(3).
- Clean up fts(3) leak in cp(1).
- Clean up file descriptor leak in authpf(8).
- Make ptrace(2) single-stepping work on alpha.
- Fix an off-by-one error in csh(1) error handling.
- Simplify descriptor cleanup in ksh(1), helping us to avoid any descriptor leaks that may have existed.
- Fix an off-by-one error in ping6(8).
- Drastically simplify handling of SCSI vs. AMI commands in the ami(4) driver. This is the first step to supporting more RAID features.
- Correctly deal with -I (interactive) option in rcs(1) co command.
- Improve clarity of messages in SGI installer.
- Fix some off-by-one errors in talkd(8).
- Delint various size_t/ssize_t/int mismatches in cvs(1) and rcs(1).
- In rcs(1), set exit code when checking out a specific revisions fails.
- Fix value of hw.cpuspeed sysctl on certain Pentium III models (early stepping 1 Coppermines). (PR 4966).
- Turn EXTENT_ALIGN into an inline function, shaves 100 bytes from RISC kernels.
- Remove unused code from siop(4), shaves half a KB from kernel.
- Fix mincore(2) to pass byte count to UVM functions, rather than page count.
- In lmc(4) driver, consolidate error message array to shrink kernel by about 1KB.
- Clean up and ANSIfy tip(1) code and fix some latent bugs.
- Make rcs(1) co command honor the -q option.
- In scp(1), display error messages even when remote stdout is not initialized.
- Optimize tun(4) by using mbuf clusters instead of mbuf chains for large packets.
- Fix some "reload" bugs in ifstated(8).
- Make AMD PowerNow speed control stuff print nice dmesg lines.
- Fix a quirk of ^C in vi(1).
- Add sysctl_int_lower() API, consequence of which is that root can now lower the machdep.allowaperture variable without rebooting.
- Some i386 laptops need more physmem segments (consequence of the kernel moving up by 1MB).
- A few small fixes to bgpd(8).
- If poll(2) is interrupted, remember to clear the pollfds array.
- The zaurus no longer needs to use the xf86(4) aperture.
- Fix %A printing in spamd(8).
- Move parsing of wsconctl.conf(5) to earlier in the /etc/rc sequence, so that people can use their remapped control key earlier.
- Install apm(4) utilities on amd64 so that the hw.setperf sysctl for CPU speed can be conveniently manipulated through them.
- Fix BN_is_prime(3) to realize that 2 is prime. It took the OpenSSL people what... 8 years to fix this?
- Fix amd64's exp(3) implementation which was broken in certain cases by switching to the C version.
- Repair anonymous logins without passwords in ftpd(8).
- Some churn in ami(4), heading towards improvements...
- In pf(4), implement Unicast Reverse Path Forwarding (uRPF) which optionally verifies that a packet is received on the interface that holds the route back to the packet's source address. This makes it an automatic ingress filter, but only when routing is fully symmetric.
- Add support for Sony CLIE PEG-T625 (and other new) devices in uvisor(4).
- Move the i386 kernel up 1MB in virtual address space to provide more space for isadma(4).
- Fix pkg_add(1) to work with stdin input (pkg_add -).
- On alpha, protect sgmap extents with splvm().
- On i386, use pause instructions during IPI lock spinning.
- Slightly improve the situation with multi-function pcmcia(4) cards.
- Make compress(1)/gzip(1) work without /dev/stdin and /dev/stdout.
- In ssh(1), allow configuration directives to contain spaces, if wrapped in double quotes.
- In ssh(1), set TCP_NODELAY flag for all connections not just interactive ones - fixes poor network performance and protocol stalls under some network conditions.
- On the i386, fix userldt handling (consequence of recent i386 W^X changes) which causes a crash if a LDT-using process does an execve().
- In mount(8), add -s flag which skips a mount if the file system is already mounted, handy for MFS partitions.
- Switch from using PCI le(4) driver to pcn(4).
- Handle emc6d100 and emc6w201 in the i2c adt(4) driver.
- Fix local arbitrary command execution vulnerability on local/local and remote/remote copies in rcp(1).
- Change the install script question 'Do you expect to run the X Window System?' to have 'no' as a default answer, to prevent people accidentially hitting return on the prompt on machines that don't need it.
- Fix a few subtle bugs in vi(1).
- Support IAPP pre-standard port 2313 in hostapd(8).
- A output formatting bug (missing space in command line printing) was recently introduced into ps(1).
- Grok %z in the format string warning code for the older gcc we have in the tree.
- Foil potential timing attacks in login by using bcrypt(3) on non-existent users as well, instead of DES.
- On amd64, properly route ISA interrupts through ioapics.
- Some obscure fixes to ospfd(8).
- Support the iic(4) controller found in the amdpm(4).
- Now AMD PowerNow K8 support works on i386 and amd64, so that hw.setperf can adjust the processor speed.
- Serial port support on the Zaurus was busted by the recent clock changes because of an interrupt mask mistake.
- Improve the iic(4) scanning for ADM1030 and ADM1031 devices (supported by admtemp(4)).
- In grep(1) do proper handling for patterns which include newlines.
- Using pcibios(4) information, properly initialize the VIA VT8233, and support SiS 962.
- Fix the long delay probe for adb(4) on some machines (in particular, the powerpc Mac Mini).
- In bgpd(8), group block parameters were reset to default (duh, that is wrong).
- Repair a really stupid (and old) bug in spanning-tree bridge(4) support.
- Make pkg_add(1) work with scp (see PKG_PATH).
- In ssh(1), implement diffie-hellman-group-exchange-sha256 key exchange method (which is now default when client/server support it).
- In the com(4) driver, add support for the cardbus(4) Sony Ericsson GC89 UMTS/GPRS/GSM modem.
- For all you Road Warriors in need of more dynamic IPSEC, in ipsecctl(8), add dynamic option ("ike dynamic esp") which uses the system hostname as source identifier instead of the IP address. See ipsec.conf(5).
- Repair UDMA for the Via VT8237 in the pciide(4) driver.
- Fix a mmap(2) related panic.
- Fit mt(1) and eject(1) onto all the install media.
- Add some acpi(4) debugging support to ddb(4).
- Move remaining bits of the network stack to use splnet instead of splimp, see spl(9).
- OpenCVS development continues with new energy.
- Stop trying to allocate rotationally optimal blocks in FFS, since modern disks don't care.
- Repair stdin handling in sdiff(1).
- tun(4) is not a point-to-point interface, but a tunnel.
- Fix a buffer cache race in vnd(4).
- Fix a memory leak in cap_mkdb(1).
- Fix a bug in tar(1) that cut short our filename lengths by one miserable character.
- Initial 1-Wire onewire(4) bus support, including drivers for gpioow(4), owid(4), owtemp(4).
- More churn in pkg_add(1).
- In X11, support 10-bit color DAC video cards on Alpha TGA2 cards.
- Do underlining in the zx(4) sparc/sparc64 video driver.
- Fix an old bug on ARM-based machines, that would very rarely and very randomly deliver a SIGBUS that was not expected or wanted by anyone.
- Display cpu states right away (not delayed) in top(1).
- art(4) now works on sparc64 as well.
- In ami(4), support a few more re-licensed parts by ACER, FSC, Intel and NEC.
- Support Compaq Flash Socket CF 10/100 card in ne(4).
- Support National Semiconductor DP83847 DsPHYTER PHY in nsphyter(4).
- Some repair to vic(4) so that it might soon work for VMWARE.
- Handle National Semicondutor lm96000 in the i2c adt(4) driver.
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.1007 2006/04/18 15:28:54 ian Exp $