58 lines
2.1 KiB
Diff
58 lines
2.1 KiB
Diff
|
From abd9d530776e8bb6d8f05312fc3ae3044796139c Mon Sep 17 00:00:00 2001
|
||
|
From: Oliver Winker <oliver@oli1170.net>
|
||
|
Date: Tue, 12 Aug 2014 19:08:05 +0200
|
||
|
Subject: [PATCH] Fix for openssl 1.0.1i
|
||
|
|
||
|
Fixes following application error
|
||
|
---
|
||
|
Errors
|
||
|
error:0D0C40D8:asn1 encoding routines:c2i_ASN1_OBJECT:invalid object encoding error:0D08303A:asn1 encoding routines:ASN1_TEMPLATE_NOEXP_D2I:nested asn1 error error:0D0C40D8:asn1 encoding routines:c2i_ASN1_OBJECT:invalid object encoding error:0D08303A:asn1 encoding routines:ASN1_TEMPLATE_NOEXP_D2I:nested asn1 error error:0D0C40D8:asn1 encoding routines:c2i_ASN1_OBJECT:invalid object encoding error:0D08303A:asn1 encoding routines:ASN1_TEMPLATE_NOEXP_D2I:nested asn1 error error:0D0C40D8:asn1 encoding routines:c2i_ASN1_OBJECT:invalid object encoding error:0D08303A:asn1 encoding routines:ASN1_TEMPLATE_NOEXP_D2I:nested asn1 error error:0D0C40D8:asn1 encoding routines:c2i_ASN1_OBJECT:invalid object encoding error:0D08303A:asn1 encoding routines:ASN1_TEMPLATE_NOEXP_D2I:nested asn1 error
|
||
|
---
|
||
|
|
||
|
Due to openssl 1.0.1i change:
|
||
|
---
|
||
|
commit 03b04ddac162c7b7fa3c57eadccc5a583a00d291
|
||
|
Author: Emilia Kasper <emilia@openssl.org>
|
||
|
Date: Wed Jul 2 19:02:33 2014 +0200
|
||
|
|
||
|
Fix OID handling:
|
||
|
|
||
|
- Upon parsing, reject OIDs with invalid base-128 encoding.
|
||
|
- Always NUL-terminate the destination buffer in OBJ_obj2txt printing function.
|
||
|
|
||
|
CVE-2014-3508
|
||
|
|
||
|
Reviewed-by: Dr. Stephen Henson <steve@openssl.org>
|
||
|
Reviewed-by: Kurt Roeckx <kurt@openssl.org>
|
||
|
Reviewed-by: Tim Hudson <tjh@openssl.org>
|
||
|
---
|
||
|
---
|
||
|
lib/x509v3ext.cpp | 4 +++-
|
||
|
1 file changed, 3 insertions(+), 1 deletion(-)
|
||
|
|
||
|
diff --git a/lib/x509v3ext.cpp b/lib/x509v3ext.cpp
|
||
|
index cf74c32..d94cbda 100644
|
||
|
--- a/lib/x509v3ext.cpp
|
||
|
+++ b/lib/x509v3ext.cpp
|
||
|
@@ -27,6 +27,8 @@ x509v3ext::x509v3ext(const X509_EXTENSION *n)
|
||
|
x509v3ext::x509v3ext(const x509v3ext &n)
|
||
|
{
|
||
|
ext = NULL;
|
||
|
+ if (!n.isValid())
|
||
|
+ return;
|
||
|
set(n.ext);
|
||
|
}
|
||
|
|
||
|
@@ -743,7 +745,7 @@ X509_EXTENSION *x509v3ext::get() const
|
||
|
|
||
|
bool x509v3ext::isValid() const
|
||
|
{
|
||
|
- return ext->value->length > 0 &&
|
||
|
+ return ext && ext->value && ext->value->length > 0 &&
|
||
|
OBJ_obj2nid(ext->object) != NID_undef;
|
||
|
}
|
||
|
|
||
|
--
|
||
|
2.0.1
|
||
|
|