aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorTobias Brunner <tobias@strongswan.org>2013-07-29 23:45:38 +0200
committerAndreas Steffen <andreas.steffen@strongswan.org>2013-07-31 22:16:58 +0200
commitb3393c88c1d1f68540a3084fda0a80377ef3c1fc (patch)
tree6f6c204afe9ba24d0e3dc8409c4a149d5e631179 /src
parentcc5bedbb98f97a0adf18482d230f7ddc15d098b3 (diff)
downloadstrongswan-b3393c88c1d1f68540a3084fda0a80377ef3c1fc.tar.bz2
strongswan-b3393c88c1d1f68540a3084fda0a80377ef3c1fc.tar.xz
asn1: Fix handling of invalid ASN.1 length in is_asn1()
Diffstat (limited to 'src')
-rw-r--r--src/libstrongswan/asn1/asn1.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/libstrongswan/asn1/asn1.c b/src/libstrongswan/asn1/asn1.c
index 68f37f471..d860ad9a2 100644
--- a/src/libstrongswan/asn1/asn1.c
+++ b/src/libstrongswan/asn1/asn1.c
@@ -642,6 +642,11 @@ bool is_asn1(chunk_t blob)
len = asn1_length(&blob);
+ if (len == ASN1_INVALID_LENGTH)
+ {
+ return FALSE;
+ }
+
/* exact match */
if (len == blob.len)
{