MidnightBSD Release Notes

Late breaking information:

0.6 changed the output of uname. Historically, we followed the FreeBSD approach of 0.5-RELEASE, 0.6-CURRENT, etc. Now, we only use version numbers. Most scripts don't know how to parse 0.6-RELEASE properly from uname.

Previous Release Notes

(04/26/2015) MidnightBSD 0.6-RELEASE

This release is primarily a security fix and mport package tool release.


OpenSSL: The receipt of a specifically crafted DTLS handshake message may cause OpenSSL to consume large amounts of memory. [CVE-2014-3506]

The receipt of a specifically crafted DTLS packet could cause OpenSSL to leak memory. [CVE-2014-3507]

A flaw in OBJ_obj2txt may cause pretty printing functions such as X509_name_oneline, X509_name_print_ex et al. to leak some information from the stack. [CVE-2014-3508]

OpenSSL DTLS clients enabling anonymous (EC)DH ciphersuites are subject to a denial of service attack. [CVE-2014-3510]

TCP SYN: When a segment with the SYN flag for an already existing connection arrives, the TCP stack tears down the connection, bypassing a check that the sequence number in the segment is in the expected window.

Fix several security vulnerabilities in routed, rtsold, and namei with respect to Capsicum sandboxes looking up nonexistent path names and leaking memory.

The input path in routed(8) will accept queries from any source and attempt to answer them. However, the output path assumes that the destination address for the response is on a directly connected network.

Due to a missing length check in the code that handles DNS parameters, a malformed router advertisement message can result in a stack buffer overflow in rtsold(8).

tnftp 20141031 fixes a security vulnerability with tnftp, CVE-2014-8517.

Fix a security issue with file and libmagic that can allow an attacker to create a denial of service attack on any program that uses libmagic.

BIND servers which are configured to perform DNSSEC validation and which are using managed keys (which occurs implicitly when using "dnssec-validation auto;" or "dnssec-lookaside auto;") may exhibit unpredictable behavior due to the use of an improperly initialized variable.

CVE-2015-1349 An integer overflow in computing the size of IGMPv3 data buffer can result in a buffer which is too small for the requested operation. This can result in a DOS attack.

IPv6: The Neighbor Discover Protocol allows a local router to advertise a suggested Current Hop Limit value of a link, which will replace Current Hop Limit on an interface connected to the link on the MidnightBSD system.

sqlite 3.8.9 - Fix a potential 32-bit integer overflow problem in the sqlite3_blob_read() and sqlite3_blob_write() interfaces.


Fix building perl during buildworld when the GDBM port is installed.

Fixed a bug with our clearenv(3) implementation that caused segfaults with some programs including Dovecot.

Update USB quirks to support K70 Corsair keyboard, and several other devices.

Removed Features


New Software Versions

mports & package tools

libmport now supports plist commands @dir, @owner, @group, @mode and @sample. This allows pkg-plist files to set permissions and handle creation and removal of directories. Previously, @dirrm only allowed the removal of directory on uninstall. This required some plists to contain mkdir commands built in. The new process is cleaner and faster.

This also means that ports that have been updated are not compatible with MidnightBSD 0.5 and lower mport tools any longer.

libmport attempts to detect an interactive tty is in use and will silence certain status messages when run in a non-interactive session.

There are several new asset types in plists including ASSET_DIR and ASSET_SAMPLE. Clients consuming libmport may need changes if they were altering behavior with handling plist files.

The database version for mport packages was updated (package version) and new columns for CPE were added to the database. This information is also exposed via the mport info command and many mports now provide this information. You can use mport cpe to list a summary for installed packages.

Regarding packages, the current selection is not great. There are currently 1500 packages for i386 and 1400 for amd64. This is due to major refactoring to the mports system in progress. Available package count has doubled since January and we expect more to be available soon. Some items will need to be built manually using mports rather than binary package. This is unfortunately true for xorg-server currently. We are working on getting X11 packages available for binary installation as a top priority.

If you are updating an existing system, after installing 0.6, you can use mport upgrade to update packages with 0.6 versions. It is recommended that you delete /usr/mports/Packages and run mport clean to remove old package remnants.

You may use svnlite (part of the base system) to checkout mports or src, if you do not wish to install the svn package.

cd /usr/ && svnlite co http://svn.midnightbsd.org/svn/mports/trunk mports