libimcv: Add generic constructor for PA-TNC attributes
android: Fix PA-TNC construction based on data passed via JNI
tls: Check all bytes of the padding if they equal the padding length
tls: Fix a memory leak if AEAD encryption fails
tls: Fix an invalid free on CBC encryption failure
Request IF-M segmentation contract for TCG/PTS subtype
Exempt TCG/SEG attributes from unsupported case statement
Process TCG/PTS File Measurement attribute incrementally
Remove unneeded get_count() method
Version bump to 5.2.1
Enabled IKEv2 fragmentation in ipv6/net2net-ikev2 scenario
Increased fragment size to 1400 in ipv6/net2net-ikev1 scenario
ip-packet: Fix length in IPv6 header of generated packets
updown: Explicitly pass caller PATH to updown script

When invoking /bin/sh, its default PATH is used. On some systems, that does
not include the PATH where the ipsec script is installed, as charon is invoked
with a custom PATH. Explicitly setting the PATH of charon should fix this
case, properly invoking the (default) updown script.

Fixes #745.
chunk: Fix internet checksum calculation on big-endian systems

ntohs() might be defined as noop (#define ntohs(x) (x)) so we have
to manually shorten the negated value (gets promoted to an int).

Fixes #747.
unit-tests: Fix internet checksum tests on big-endian systems

We actually need to do a byte-swap, which ntohs() only does on
little-endian systems.

Fixes #747.
cert-cache: Prevent that a cached issuer is freed too early

Previously we got no reference to the cached issuer certificate
before releasing the lock of the cache line, this allowed other
threads, or even the same thread if it replaces a cache line, to
destroy that issuer certificate in cache() (or flush()) before
get_ref() for the issuer certificate is finally called.
unit-tests: Re-align identification_create_from_string() unit test table data
identification: Support prefixes in string constructors for an explicit type
identification: Support custom types in string constructor prefixes