Integrate OpenSSL commit 9fe4603b8245425a4c46986ed000fca054231253:
Author: David Woodhouse <dwmw2@infradead.org>
Date:   Tue Feb 12 14:55:32 2013 +0000

    Check DTLS_BAD_VER for version number.

    The version check for DTLS1_VERSION was redundant as
    DTLS1_VERSION > TLS1_1_VERSION, however we do need to
    check for DTLS1_BAD_VER for compatibility.

    PR:2984
    (cherry picked from commit d980abb22e22661e98e5cee33d760ab0c7584ecc)

Approved by:	benl
Import vendor fixes:

197e0ea	Fix for TLS record tampering bug.  (CVE-2013-4353).
3462896	For DTLS we might need to retransmit messages from the
	previous session so keep a copy of write context in DTLS
	retransmission buffers instead of replacing it after
	sending CCS.  (CVE-2013-6450).
ca98926 When deciding whether to use TLS 1.2 PRF and record hash
	algorithms use the version number in the corresponding
	SSL_METHOD structure instead of the SSL structure.  The
	SSL structure version is sometimes inaccurate.
	Note: OpenSSL 1.0.2 and later effectively do this already.
	(CVE-2013-6449).
Import OpenSSL 1.0.1f.

Approved by:	so (delphij), benl (silence)
Import OpenSSL 1.0.1g.

Approved by:	benl (maintainer)
Update vt(4) "Terminus BSD Console" font

"Terminus BSD Console" is a derivative of Terminus that is provided
by Mr. Dimitar Zhekov under the 2-clause BSD license for use by the             FreeBSD vt(4) console.

Reviewed by:	jhb
MFC after:	1 week
Sponsored by:	The FreeBSD Foundation
Update reported libusb version to 1.0.13

QEMU libusb host support needs at least libusbx-1.0.13, and our in-tree
libusb supports the required functionality.  Exp-run in PR.

PR:		181035
The code that combines adjacent ranges for BIO_DELETEs to optimize
trims to the device assumes the list is sorted. Don't apply the
optimization of not sorting the queue when we have SSDs to the
delete_queue, since it causes more discard traffic to the drive. While
one could argue that the higher levels should coalesce the trims,
that's not done today, so some optimization at this level is needed.

CR: https://phabric.freebsd.org/D142
vt fontcvt: -w sets the width, not height
Try to fix DWC OTG regression issues with full and low speed devices:
- Remove double buffering interrupt and isochronous traffic via the
transaction translator. It can be avoided because the DWC OTG will
always delay the start split transactions for interrupt and
isochronous traffic, but will not delay the complete split
transactions, if we set the odd frame bit correctly.
- Need to check the transfer cache field in the device done function
to be sure all allocated channels are freed and not the transfer first
one. This seems to resolve the control endpoint transfer type quirk
which is now removed.
- Make sure any received data upon TX is dumped else RX path will
stop.
- Transmit isochronous data before receiving isochronous data as a
means to optimise the TT schedule.
- Implement a simple TT bandwidth scheduler.
- Cleanup use of old "td->error" variable.
- On interrupt IN traffic via the transaction translator we simply
ignore missed transfer opportunities and silently retry the
transaction upon next available time slot.

MFC after:	3 days
Need to check the transfer cache field in the device done function
to be sure all allocated channels are freed and not the transfer first
one.
- Verify that we don't load more data into a FIFO than it is
configured to handle.
- Add code to handle suspend and resume.

MFC after:	3 days
Support "GNU Unifont" format font data

The GNU Unifont .hex format is a text file.  Each line represents one
glyph and consists of a four-digit hex code point, a colon, and pairs of
hex digits representing the bitmap.  By default an 8x16 font is assumed,
with 16x16 double-width glyphs, resulting in either 32 or 64 hex digits
for the bitmap.

Our version of the file format supports comments at the top of the file
to set the height and width:

# Height: <decimal height>
# Width: <decimal width>

Each row of bitmap data is rounded up to byte width - for example, a
10-pixel wide font uses 4 characters per row.

See http://czyborra.com/unifont/ for more background on the original
format.

Sponsored by:	The FreeBSD Foundation
Install VT support files

They can be disabled by setting WITHOUT_VT_SUPPORT=yes in src.conf.

Sponsored by:	The FreeBSD Foundation
Regen after r267124 for WITHOUT_VT_SUPPORT
vt fontcvt: Accept space after BITMAP in .bdf parser

The Unifont BDF generator incorrectly adds a space after BITMAP, and
and that error has been widely propagated.
If HTTP_USER_AGENT is defined but empty, don't send User-Agent at all.

PR:		184507
Submitted by:	jbeich@tormail.org (with modifications)
MFC after:	1 week
whitespace change: remove trailing whitespace
Fix broken SMP startup on Armada XP after r265694

During Armada's platform_mp_start_ap(), mptramp code
is being copied to the specific physical location (0xffff0000).
Before r265694 the address to which the code should be copied
was equal to the address of mpentry routine that followed the
mptramp in locore.S. Now the mptramp end address should be
exported and used as a copy limit.

Reviewed by: gber
Avoid using hard-coded SoC's register address in mptramp code for Armada XP

SoC's registers base address may differ between boards
(0xf1000000 or 0xd0000000). Therefore, in order to use
the proper CPU Boot Address Redirect register during SMP
initialization in mptramp the real, physical address has
to be passed to mptramp based on the value from DT.

Reviewed by: gber
Use NULL instead of 0

Patch by Sascha Wildner <saw@online.de> for Dragonfly

Reviewed by:	des
Obtained from:	Dragonfly
MFC after:	1 week