Rebased numerous patches
removed aarch64 initial work since it's part of upstream now
Imported a few additional patches from Debian to support the version-script
and blacklist additional bad certificates.

Signed-off-by: Saul Wold <s...@linux.intel.com>
---
 .../openssl/openssl/Makefiles-ptest.patch          |  36 +--
 .../openssl/openssl/debian/c_rehash-compat.patch   |  58 +++-
 .../openssl/openssl/debian/debian-targets.patch    |  25 +-
 .../openssl/openssl/debian/version-script.patch    | 311 ++++++++++-----------
 .../debian1.0.2/block_digicert_malaysia.patch      |  29 ++
 .../openssl/debian1.0.2/block_diginotar.patch      |  67 +++++
 .../openssl/openssl/debian1.0.2/padlock_conf.patch |  31 ++
 .../openssl/engines-install-in-libdir-ssl.patch    |  42 +--
 .../openssl/openssl/fix-cipher-des-ede3-cfb1.patch |  21 +-
 .../openssl/openssl/initial-aarch64-bits.patch     | 120 --------
 ...-pointer-dereference-in-EVP_DigestInit_ex.patch |  22 +-
 ...NULL-pointer-dereference-in-dh_pub_encode.patch |  41 +--
 .../openssl/openssl/openssl_fix_for_x32.patch      |  85 ++----
 .../openssl/openssl/ptest-deps.patch               |  16 +-
 .../openssl/update-version-script-for-1.0.2.patch  |  66 +++++
 .../{openssl_1.0.1k.bb => openssl_1.0.2.bb}        |  19 +-
 16 files changed, 522 insertions(+), 467 deletions(-)
 create mode 100644 
meta/recipes-connectivity/openssl/openssl/debian1.0.2/block_digicert_malaysia.patch
 create mode 100644 
meta/recipes-connectivity/openssl/openssl/debian1.0.2/block_diginotar.patch
 create mode 100644 
meta/recipes-connectivity/openssl/openssl/debian1.0.2/padlock_conf.patch
 delete mode 100644 
meta/recipes-connectivity/openssl/openssl/initial-aarch64-bits.patch
 create mode 100644 
meta/recipes-connectivity/openssl/openssl/update-version-script-for-1.0.2.patch
 rename meta/recipes-connectivity/openssl/{openssl_1.0.1k.bb => 
openssl_1.0.2.bb} (84%)

diff --git a/meta/recipes-connectivity/openssl/openssl/Makefiles-ptest.patch 
b/meta/recipes-connectivity/openssl/openssl/Makefiles-ptest.patch
index ac53a91..249446a 100644
--- a/meta/recipes-connectivity/openssl/openssl/Makefiles-ptest.patch
+++ b/meta/recipes-connectivity/openssl/openssl/Makefiles-ptest.patch
@@ -5,10 +5,11 @@ Signed-off-by: Anders Roxell <anders.rox...@enea.com>
 Signed-off-by: Maxin B. John <maxin.j...@enea.com>
 Upstream-Status: Pending
 ---
-diff -uNr a/Makefile b/Makefile
---- a/Makefile.org     2012-05-10 17:06:02.000000000 +0200
-+++ b/Makefile.org     2012-10-27 00:05:55.359424024 +0200
-@@ -411,8 +411,16 @@
+Index: openssl-1.0.2/Makefile.org
+===================================================================
+--- openssl-1.0.2.orig/Makefile.org
++++ openssl-1.0.2/Makefile.org
+@@ -451,8 +451,16 @@ rehash.time: certs apps
  test:   tests
  
  tests: rehash
@@ -26,11 +27,11 @@ diff -uNr a/Makefile b/Makefile
        OPENSSL_CONF=apps/openssl.cnf util/opensslwrap.sh version -a
  
  report:
-diff --git a/test/Makefile b/test/Makefile
-index 3912f82..1696767 100644
---- a/test/Makefile
-+++ b/test/Makefile
-@@ -128,7 +128,7 @@ tests:     exe apps $(TESTS)
+Index: openssl-1.0.2/test/Makefile
+===================================================================
+--- openssl-1.0.2.orig/test/Makefile
++++ openssl-1.0.2/test/Makefile
+@@ -137,7 +137,7 @@ tests:     exe apps $(TESTS)
  apps:
        @(cd ..; $(MAKE) DIRS=apps all)
  
@@ -39,28 +40,28 @@ index 3912f82..1696767 100644
        test_des test_idea test_sha test_md4 test_md5 test_hmac \
        test_md2 test_mdc2 test_wp \
        test_rmd test_rc2 test_rc4 test_rc5 test_bf test_cast test_aes \
-@@ -138,6 +138,11 @@ alltests: \
-       test_ss test_ca test_engine test_evp test_ssl test_tsa test_ige \
-       test_jpake test_cms
+@@ -148,6 +148,11 @@ alltests: \
+       test_jpake test_srp test_cms test_ocsp test_v3name test_heartbeat \
+       test_constant_time
  
 +alltests:
 +      @(for i in $(all-tests); do \
 +      ( $(MAKE) $$i && echo "PASS: $$i" ) || echo "FAIL: $$i"; \
 +      done)
 +
- test_evp:
+ test_evp: $(EVPTEST)$(EXE_EXT) evptests.txt
        ../util/shlib_wrap.sh ./$(EVPTEST) evptests.txt
  
-@@ -203,7 +208,7 @@ test_x509:
+@@ -213,7 +218,7 @@ test_x509: ../apps/openssl$(EXE_EXT) tx5
        echo test second x509v3 certificate
        sh ./tx509 v3-cert2.pem 2>/dev/null
  
--test_rsa: $(RSATEST)$(EXE_EXT)
-+test_rsa:
+-test_rsa: $(RSATEST)$(EXE_EXT) ../apps/openssl$(EXE_EXT) trsa testrsa.pem
++test_rsa: ../apps/openssl$(EXE_EXT) trsa testrsa.pem
        @sh ./trsa 2>/dev/null
        ../util/shlib_wrap.sh ./$(RSATEST)
  
-@@ -298,11 +303,11 @@ test_tsa:
+@@ -313,11 +318,11 @@ test_tsa: ../apps/openssl$(EXE_EXT) test
          sh ./testtsa; \
        fi
  
@@ -73,3 +74,4 @@ index 3912f82..1696767 100644
 +test_jpake:
        @echo "Test JPAKE"
        ../util/shlib_wrap.sh ./$(JPAKETEST)
+ 
diff --git 
a/meta/recipes-connectivity/openssl/openssl/debian/c_rehash-compat.patch 
b/meta/recipes-connectivity/openssl/openssl/debian/c_rehash-compat.patch
index ac1b19b..3943e2c 100644
--- a/meta/recipes-connectivity/openssl/openssl/debian/c_rehash-compat.patch
+++ b/meta/recipes-connectivity/openssl/openssl/debian/c_rehash-compat.patch
@@ -1,38 +1,58 @@
-Upstream-Status: Backport [debian]
-
 From 83f318d68bbdab1ca898c94576a838cc97df4700 Mon Sep 17 00:00:00 2001
 From: Ludwig Nussel <ludwig.nus...@suse.de>
 Date: Wed, 21 Apr 2010 15:52:10 +0200
 Subject: [PATCH] also create old hash for compatibility
 
+Upstream-Status: Backport [debian]
+
 ---
  tools/c_rehash.in |    8 +++++++-
  1 files changed, 7 insertions(+), 1 deletions(-)
 
-Index: openssl-1.0.0d/tools/c_rehash.in
+Index: openssl-1.0.2~beta3/tools/c_rehash.in
 ===================================================================
---- openssl-1.0.0d.orig/tools/c_rehash.in      2011-04-13 20:41:28.000000000 
+0000
-+++ openssl-1.0.0d/tools/c_rehash.in   2011-04-13 20:41:28.000000000 +0000
-@@ -86,6 +86,7 @@
-                       }
+--- openssl-1.0.2~beta3.orig/tools/c_rehash.in
++++ openssl-1.0.2~beta3/tools/c_rehash.in
+@@ -8,8 +8,6 @@ my $prefix;
+ 
+ my $openssl = $ENV{OPENSSL} || "openssl";
+ my $pwd;
+-my $x509hash = "-subject_hash";
+-my $crlhash = "-hash";
+ my $verbose = 0;
+ my $symlink_exists=eval {symlink("",""); 1};
+ my $removelinks = 1;
+@@ -18,10 +16,7 @@ my $removelinks = 1;
+ while ( $ARGV[0] =~ '-.*' ) {
+     my $flag = shift @ARGV;
+     last if ( $flag eq '--');
+-    if ( $flag =~ /-old/) {
+-          $x509hash = "-subject_hash_old";
+-          $crlhash = "-hash_old";
+-    } elsif ( $flag =~ /-h/) {
++    if ( $flag =~ /-h/) {
+           help();
+     } elsif ( $flag eq '-n' ) {
+           $removelinks = 0;
+@@ -113,7 +108,9 @@ sub hash_dir {
+                       next;
                }
                link_hash_cert($fname) if($cert);
 +              link_hash_cert_old($fname) if($cert);
                link_hash_crl($fname) if($crl);
++              link_hash_crl_old($fname) if($crl);
        }
  }
-@@ -119,8 +120,9 @@
+ 
+@@ -146,6 +143,7 @@ sub check_file {
  
  sub link_hash_cert {
                my $fname = $_[0];
-+              my $hashopt = $_[1] || '-subject_hash';
++              my $x509hash = $_[1] || '-subject_hash';
                $fname =~ s/'/'\\''/g;
--              my ($hash, $fprint) = `"$openssl" x509 -hash -fingerprint 
-noout -in "$fname"`;
-+              my ($hash, $fprint) = `"$openssl" x509 $hashopt -fingerprint 
-noout -in "$fname"`;
+               my ($hash, $fprint) = `"$openssl" x509 $x509hash -fingerprint 
-noout -in "$fname"`;
                chomp $hash;
-               chomp $fprint;
-               $fprint =~ s/^.*=//;
-@@ -150,6 +152,10 @@
+@@ -177,10 +175,20 @@ sub link_hash_cert {
                $hashlist{$hash} = $fprint;
  }
  
@@ -40,6 +60,16 @@ Index: openssl-1.0.0d/tools/c_rehash.in
 +              link_hash_cert($_[0], '-subject_hash_old');
 +}
 +
++sub link_hash_crl_old {
++              link_hash_crl($_[0], '-hash_old');
++}
++
++
  # Same as above except for a CRL. CRL links are of the form <hash>.r<n>
  
  sub link_hash_crl {
+               my $fname = $_[0];
++              my $crlhash = $_[1] || "-hash";
+               $fname =~ s/'/'\\''/g;
+               my ($hash, $fprint) = `"$openssl" crl $crlhash -fingerprint 
-noout -in '$fname'`;
+               chomp $hash;
diff --git 
a/meta/recipes-connectivity/openssl/openssl/debian/debian-targets.patch 
b/meta/recipes-connectivity/openssl/openssl/debian/debian-targets.patch
index 8101edf..39d4328 100644
--- a/meta/recipes-connectivity/openssl/openssl/debian/debian-targets.patch
+++ b/meta/recipes-connectivity/openssl/openssl/debian/debian-targets.patch
@@ -1,12 +1,12 @@
 Upstream-Status: Backport [debian]
 
-Index: openssl-1.0.1/Configure
+Index: openssl-1.0.2/Configure
 ===================================================================
---- openssl-1.0.1.orig/Configure       2012-03-17 15:37:54.000000000 +0000
-+++ openssl-1.0.1/Configure    2012-03-17 16:13:49.000000000 +0000
-@@ -105,6 +105,10 @@
+--- openssl-1.0.2.orig/Configure
++++ openssl-1.0.2/Configure
+@@ -107,6 +107,10 @@ my $gcc_devteam_warn = "-Wall -pedantic
  
- my $gcc_devteam_warn = "-Wall -pedantic -DPEDANTIC -Wno-long-long 
-Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Werror 
-DCRYPTO_MDEBUG_ALL -DCRYPTO_MDEBUG_ABORT -DREF_CHECK -DOPENSSL_NO_DEPRECATED";
+ my $clang_disabled_warnings = "-Wno-language-extension-token 
-Wno-extended-offsetof -Wno-padded -Wno-shorten-64-to-32 -Wno-format-nonliteral 
-Wno-missing-noreturn -Wno-unused-parameter -Wno-sign-conversion 
-Wno-unreachable-code -Wno-conversion -Wno-documentation 
-Wno-missing-variable-declarations -Wno-cast-align 
-Wno-incompatible-pointer-types-discards-qualifiers 
-Wno-missing-variable-declarations -Wno-missing-field-initializers 
-Wno-unused-macros -Wno-disabled-macro-expansion -Wno-conditional-uninitialized 
-Wno-switch-enum";
  
 +# There are no separate CFLAGS/CPPFLAGS/LDFLAGS, set everything in CFLAGS
 +my $debian_cflags = `dpkg-buildflags --get CFLAGS` . `dpkg-buildflags --get 
CPPFLAGS` . `dpkg-buildflags --get LDFLAGS` . "-Wa,--noexecstack -Wall";
@@ -15,7 +15,7 @@ Index: openssl-1.0.1/Configure
  my $strict_warnings = 0;
  
  my $x86_gcc_des="DES_PTR DES_RISC1 DES_UNROLL";
-@@ -338,6 +342,48 @@
+@@ -343,6 +347,55 @@ my %table=(
  "osf1-alpha-cc",  "cc:-std1 -tune host -O4 
-readonly_strings::(unknown):::SIXTY_FOUR_BIT_LONG 
RC4_CHUNK:${alpha_asm}:dlfcn:alpha-osf1-shared:::.so",
  "tru64-alpha-cc", "cc:-std1 -tune host -fast 
-readonly_strings::-pthread:::SIXTY_FOUR_BIT_LONG 
RC4_CHUNK:${alpha_asm}:dlfcn:alpha-osf1-shared::-msym:.so",
  
@@ -23,9 +23,9 @@ Index: openssl-1.0.1/Configure
 +"debian-alpha","gcc:-DTERMIO 
${debian_cflags}::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_RISC1 
DES_UNROLL:${alpha_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 +"debian-alpha-ev4","gcc:-DTERMIO ${debian_cflags} 
-mcpu=ev4::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_RISC1 
DES_UNROLL:${alpha_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 +"debian-alpha-ev5","gcc:-DTERMIO ${debian_cflags} 
-mcpu=ev5::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_RISC1 
DES_UNROLL:${alpha_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-armeb","gcc:-DB_ENDIAN -DTERMIO 
${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_INT 
DES_UNROLL 
BF_PTR:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-armel","gcc:-DL_ENDIAN -DTERMIO 
${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_INT 
DES_UNROLL 
BF_PTR:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-armhf","gcc:-DL_ENDIAN -DTERMIO 
${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_INT 
DES_UNROLL 
BF_PTR:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
++"debian-arm64","gcc:-DL_ENDIAN -DTERMIO 
${debian_cflags}::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK 
DES_INT DES_UNROLL 
BF_PTR:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
++"debian-armel","gcc:-DL_ENDIAN -DTERMIO 
${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_INT 
DES_UNROLL 
BF_PTR:${armv4_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
++"debian-armhf","gcc:-DL_ENDIAN -DTERMIO 
${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_INT 
DES_UNROLL 
BF_PTR:${armv4_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 +"debian-amd64", "gcc:-m64 -DL_ENDIAN -DTERMIO ${debian_cflags} 
-DMD32_REG_T=int::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT 
DES_UNROLL:${x86_64_asm}:elf:dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):::",
 +"debian-avr32", "gcc:-DB_ENDIAN -DTERMIO ${debian_cflags} 
-fomit-frame-pointer::-D_REENTRANT::-ldl:BN_LLONG_BF_PTR:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 +"debian-kfreebsd-amd64","gcc:-m64 -DL_ENDIAN -DTERMIOS ${debian_cflags} 
-DMD32_REG_T=int::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT 
DES_UNROLL:${x86_64_asm}:elf:dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
@@ -40,15 +40,21 @@ Index: openssl-1.0.1/Configure
 +"debian-m68k","gcc:-DB_ENDIAN -DTERMIO 
${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG MD2_CHAR 
RC4_INDEX:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 +"debian-mips",   "gcc:-DB_ENDIAN -DTERMIO 
${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG RC2_CHAR RC4_INDEX DES_INT 
DES_UNROLL 
DES_RISC2:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 +"debian-mipsel",   "gcc:-DL_ENDIAN -DTERMIO 
${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG RC2_CHAR RC4_INDEX DES_INT 
DES_UNROLL 
DES_RISC2:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
++"debian-mipsn32",   "mips64-linux-gnuabin32-gcc:-DB_ENDIAN -DTERMIO 
${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG RC2_CHAR RC4_INDEX DES_INT 
DES_UNROLL 
DES_RISC2:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
++"debian-mipsn32el",   "mips64el-linux-gnuabin32-gcc:-DL_ENDIAN -DTERMIO 
${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG RC2_CHAR RC4_INDEX DES_INT 
DES_UNROLL 
DES_RISC2:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
++"debian-mips64",   "mips64-linux-gnuabi64-gcc:-DB_ENDIAN -DTERMIO 
${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG RC2_CHAR RC4_INDEX DES_INT 
DES_UNROLL 
DES_RISC2:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
++"debian-mips64el",   "mips64el-linux-gnuabi64-gcc:-DL_ENDIAN -DTERMIO 
${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG RC2_CHAR RC4_INDEX DES_INT 
DES_UNROLL 
DES_RISC2:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 +"debian-netbsd-i386", "gcc:-DL_ENDIAN -DTERMIOS ${debian_cflags} 
-m486::(unknown):::BN_LLONG ${x86_gcc_des} 
${x86_gcc_opts}:${no_asm}:dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 +"debian-netbsd-m68k", "gcc:-DB_ENDIAN -DTERMIOS 
${debian_cflags}::(unknown):::BN_LLONG MD2_CHAR RC4_INDEX 
DES_UNROLL:${no_asm}:dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 +"debian-netbsd-sparc",        "gcc:-DB_ENDIAN -DTERMIOS ${debian_cflags} 
-mv8::(unknown):::BN_LLONG MD2_CHAR RC4_INDEX 
DES_UNROLL:${no_asm}:dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 +"debian-openbsd-alpha","gcc:-DTERMIOS 
${debian_cflags}::(unknown):::SIXTY_FOUR_BIT_LONG DES_INT DES_PTR 
DES_RISC2:${no_asm}:dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 +"debian-openbsd-i386",  "gcc:-DL_ENDIAN -DTERMIOS ${debian_cflags} 
-m486::(unknown):::BN_LLONG ${x86_gcc_des} 
${x86_gcc_opts}:${x86_asm}:a.out:dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 +"debian-openbsd-mips","gcc:-DL_ENDIAN ${debian_cflags}::(unknown)::BN_LLONG 
MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC2 DES_PTR 
BF_PTR:${no_asm}:dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
++"debian-or1k", "gcc:-DB_ENDIAN -DTERMIO 
${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG 
DES_RISC1:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 +"debian-powerpc","gcc:-DB_ENDIAN -DTERMIO 
${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_RISC1 
DES_UNROLL:${ppc32_asm}:linux32:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 +"debian-powerpcspe","gcc:-DB_ENDIAN -DTERMIO 
${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_RISC1 
DES_UNROLL:${ppc32_asm}:linux32:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 +"debian-ppc64","gcc:-m64 -DB_ENDIAN -DTERMIO 
${debian_cflags}::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK 
DES_RISC1 
DES_UNROLL:${ppc64_asm}:linux64:dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
++"debian-ppc64el","gcc:-m64 -DL_ENDIAN -DTERMIO 
${debian_cflags}::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK 
DES_RISC1 
DES_UNROLL:${ppc64_asm}:linux64le:dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 +"debian-s390","gcc:-DB_ENDIAN -DTERMIO 
${debian_cflags}::-D_REENTRANT::-ldl:RC4_CHAR RC4_CHUNK DES_INT 
DES_UNROLL:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 
 +"debian-s390x","gcc:-DB_ENDIAN -DTERMIO 
${debian_cflags}::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK 
DES_INT 
DES_UNROLL:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 +"debian-sh3",   "gcc:-DL_ENDIAN -DTERMIO 
${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
@@ -60,6 +66,7 @@ Index: openssl-1.0.1/Configure
 +"debian-sparc-v8","gcc:-DB_ENDIAN -DTERMIO ${debian_cflags} -mcpu=v8 
-DBN_DIV2W::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL 
BF_PTR:${sparcv8_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 +"debian-sparc-v9","gcc:-DB_ENDIAN -DTERMIO ${debian_cflags} -mcpu=v9 
-Wa,-Av8plus -DULTRASPARC -DBN_DIV2W::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR 
RC4_CHUNK DES_UNROLL 
BF_PTR:${sparcv9_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 +"debian-sparc64","gcc:-m64 -DB_ENDIAN -DTERMIO ${debian_cflags} -DULTRASPARC 
-DBN_DIV2W::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_INT DES_PTR 
DES_RISC1 DES_UNROLL 
BF_PTR:${sparcv9_asm}:dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
++"debian-x32","gcc:-mx32 -DL_ENDIAN -DTERMIO ${debian_cflags} 
-DMD32_REG_T=int::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT RC4_CHUNK DES_INT 
DES_UNROLL:${x86_64_asm}:elf:dlfcn:linux-shared:-fPIC:-mx32:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):::x32",
 +
  ####
  #### Variety of LINUX:-)
diff --git 
a/meta/recipes-connectivity/openssl/openssl/debian/version-script.patch 
b/meta/recipes-connectivity/openssl/openssl/debian/version-script.patch
index ece8b9b..a249180 100644
--- a/meta/recipes-connectivity/openssl/openssl/debian/version-script.patch
+++ b/meta/recipes-connectivity/openssl/openssl/debian/version-script.patch
@@ -1,10 +1,8 @@
-Upstream-Status: Backport [debian]
-
-Index: openssl-1.0.1d/Configure
+Index: openssl-1.0.2~beta1.obsolete.0.0498436515490575/Configure
 ===================================================================
---- openssl-1.0.1d.orig/Configure      2013-02-06 19:41:43.000000000 +0100
-+++ openssl-1.0.1d/Configure   2013-02-06 19:41:43.000000000 +0100
-@@ -1621,6 +1621,8 @@
+--- openssl-1.0.2~beta1.obsolete.0.0498436515490575.orig/Configure     
2014-02-24 21:02:30.000000000 +0100
++++ openssl-1.0.2~beta1.obsolete.0.0498436515490575/Configure  2014-02-24 
21:02:30.000000000 +0100
+@@ -1651,6 +1651,8 @@
                }
        }
  
@@ -13,11 +11,11 @@ Index: openssl-1.0.1d/Configure
  open(IN,'<Makefile.org') || die "unable to read Makefile.org:$!\n";
  unlink("$Makefile.new") || die "unable to remove old $Makefile.new:$!\n" if 
-e "$Makefile.new";
  open(OUT,">$Makefile.new") || die "unable to create $Makefile.new:$!\n";
-Index: openssl-1.0.1d/openssl.ld
+Index: openssl-1.0.2~beta1.obsolete.0.0498436515490575/openssl.ld
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ openssl-1.0.1d/openssl.ld  2013-02-06 19:44:25.000000000 +0100
-@@ -0,0 +1,4620 @@
++++ openssl-1.0.2~beta1.obsolete.0.0498436515490575/openssl.ld 2014-02-24 
22:19:08.601827266 +0100
+@@ -0,0 +1,4615 @@
 +OPENSSL_1.0.0 {
 +      global:
 +              BIO_f_ssl;
@@ -2229,20 +2227,16 @@ Index: openssl-1.0.1d/openssl.ld
 +              ERR_load_COMP_strings;
 +              PKCS12_item_decrypt_d2i;
 +              ASN1_UTF8STRING_it;
-+              ASN1_UTF8STRING_it;
 +              ENGINE_unregister_ciphers;
 +              ENGINE_get_ciphers;
 +              d2i_OCSP_BASICRESP;
 +              KRB5_CHECKSUM_it;
-+              KRB5_CHECKSUM_it;
 +              EC_POINT_add;
 +              ASN1_item_ex_i2d;
 +              OCSP_CERTID_it;
-+              OCSP_CERTID_it;
 +              d2i_OCSP_RESPBYTES;
 +              X509V3_add1_i2d;
 +              PKCS7_ENVELOPE_it;
-+              PKCS7_ENVELOPE_it;
 +              UI_add_input_boolean;
 +              ENGINE_unregister_RSA;
 +              X509V3_EXT_nconf;
@@ -2254,19 +2248,15 @@ Index: openssl-1.0.1d/openssl.ld
 +              ENGINE_register_all_RAND;
 +              ENGINE_load_dynamic;
 +              PBKDF2PARAM_it;
-+              PBKDF2PARAM_it;
 +              EXTENDED_KEY_USAGE_new;
 +              EC_GROUP_clear_free;
 +              OCSP_sendreq_bio;
 +              ASN1_item_digest;
 +              OCSP_BASICRESP_delete_ext;
 +              OCSP_SIGNATURE_it;
-+              OCSP_SIGNATURE_it;
-+              X509_CRL_it;
 +              X509_CRL_it;
 +              OCSP_BASICRESP_add_ext;
 +              KRB5_ENCKEY_it;
-+              KRB5_ENCKEY_it;
 +              UI_method_set_closer;
 +              X509_STORE_set_purpose;
 +              i2d_ASN1_GENERALSTRING;
@@ -2277,7 +2267,6 @@ Index: openssl-1.0.1d/openssl.ld
 +              OCSP_REQUEST_get_ext_by_OBJ;
 +              _ossl_old_des_random_key;
 +              ASN1_T61STRING_it;
-+              ASN1_T61STRING_it;
 +              EC_GROUP_method_of;
 +              i2d_KRB5_APREQ;
 +              _ossl_old_des_encrypt;
@@ -2293,7 +2282,6 @@ Index: openssl-1.0.1d/openssl.ld
 +              OCSP_SINGLERESP_get_ext_count;
 +              UI_ctrl;
 +              _shadow_DES_rw_mode;
-+              _shadow_DES_rw_mode;
 +              asn1_do_adb;
 +              ASN1_template_i2d;
 +              ENGINE_register_DH;
@@ -2307,8 +2295,6 @@ Index: openssl-1.0.1d/openssl.ld
 +              KRB5_ENCKEY_free;
 +              OCSP_resp_get0;
 +              GENERAL_NAME_it;
-+              GENERAL_NAME_it;
-+              ASN1_GENERALIZEDTIME_it;
 +              ASN1_GENERALIZEDTIME_it;
 +              X509_STORE_set_flags;
 +              EC_POINT_set_compressed_coordinates_GFp;
@@ -2330,21 +2316,18 @@ Index: openssl-1.0.1d/openssl.ld
 +              EC_POINT_set_affine_coords_GFp;
 +              _ossl_old_des_options;
 +              SXNET_it;
-+              SXNET_it;
 +              UI_dup_input_boolean;
 +              PKCS12_add_CSPName_asc;
 +              EC_POINT_is_at_infinity;
 +              ENGINE_load_cryptodev;
 +              DSO_convert_filename;
 +              POLICYQUALINFO_it;
-+              POLICYQUALINFO_it;
 +              ENGINE_register_ciphers;
 +              BN_mod_lshift_quick;
 +              DSO_set_filename;
 +              ASN1_item_free;
 +              KRB5_TKTBODY_free;
 +              AUTHORITY_KEYID_it;
-+              AUTHORITY_KEYID_it;
 +              KRB5_APREQBODY_new;
 +              X509V3_EXT_REQ_add_nconf;
 +              ENGINE_ctrl_cmd_string;
@@ -2352,19 +2335,15 @@ Index: openssl-1.0.1d/openssl.ld
 +              EVP_MD_CTX_init;
 +              EXTENDED_KEY_USAGE_free;
 +              PKCS7_ATTR_SIGN_it;
-+              PKCS7_ATTR_SIGN_it;
 +              UI_add_error_string;
 +              KRB5_CHECKSUM_free;
 +              OCSP_REQUEST_get_ext;
 +              ENGINE_load_ubsec;
 +              ENGINE_register_all_digests;
 +              PKEY_USAGE_PERIOD_it;
-+              PKEY_USAGE_PERIOD_it;
 +              PKCS12_unpack_authsafes;
 +              ASN1_item_unpack;
 +              NETSCAPE_SPKAC_it;
-+              NETSCAPE_SPKAC_it;
-+              X509_REVOKED_it;
 +              X509_REVOKED_it;
 +              ASN1_STRING_encode;
 +              EVP_aes_128_ecb;
@@ -2376,7 +2355,6 @@ Index: openssl-1.0.1d/openssl.ld
 +              UI_dup_info_string;
 +              _ossl_old_des_xwhite_in2out;
 +              PKCS12_it;
-+              PKCS12_it;
 +              OCSP_SINGLERESP_get_ext_by_critical;
 +              OCSP_SINGLERESP_get_ext_by_crit;
 +              OCSP_CERTSTATUS_free;
@@ -2395,10 +2373,8 @@ Index: openssl-1.0.1d/openssl.ld
 +              ENGINE_unregister_DSA;
 +              _ossl_old_des_key_sched;
 +              X509_EXTENSION_it;
-+              X509_EXTENSION_it;
 +              i2d_KRB5_AUTHENT;
 +              SXNETID_it;
-+              SXNETID_it;
 +              d2i_OCSP_SINGLERESP;
 +              EDIPARTYNAME_new;
 +              PKCS12_certbag2x509;
@@ -2409,10 +2385,8 @@ Index: openssl-1.0.1d/openssl.ld
 +              d2i_KRB5_APREQBODY;
 +              UI_method_get_flusher;
 +              X509_PUBKEY_it;
-+              X509_PUBKEY_it;
 +              _ossl_old_des_enc_read;
 +              PKCS7_ENCRYPT_it;
-+              PKCS7_ENCRYPT_it;
 +              i2d_OCSP_RESPONSE;
 +              EC_GROUP_get_cofactor;
 +              PKCS12_unpack_p7data;
@@ -2430,10 +2404,8 @@ Index: openssl-1.0.1d/openssl.ld
 +              PKCS12_item_i2d_encrypt;
 +              X509_add1_ext_i2d;
 +              PKCS7_SIGNER_INFO_it;
-+              PKCS7_SIGNER_INFO_it;
 +              KRB5_PRINCNAME_new;
 +              PKCS12_SAFEBAG_it;
-+              PKCS12_SAFEBAG_it;
 +              EC_GROUP_get_order;
 +              d2i_OCSP_RESPID;
 +              OCSP_request_verify;
@@ -2448,42 +2420,32 @@ Index: openssl-1.0.1d/openssl.ld
 +              EVP_MD_CTX_create;
 +              OCSP_resp_find_status;
 +              X509_ALGOR_it;
-+              X509_ALGOR_it;
-+              ASN1_TIME_it;
 +              ASN1_TIME_it;
 +              OCSP_request_set1_name;
 +              OCSP_ONEREQ_get_ext_count;
 +              UI_get0_result;
 +              PKCS12_AUTHSAFES_it;
-+              PKCS12_AUTHSAFES_it;
 +              EVP_aes_256_ecb;
 +              PKCS12_pack_authsafes;
 +              ASN1_IA5STRING_it;
-+              ASN1_IA5STRING_it;
 +              UI_get_input_flags;
 +              EC_GROUP_set_generator;
 +              _ossl_old_des_string_to_2keys;
 +              OCSP_CERTID_free;
 +              X509_CERT_AUX_it;
-+              X509_CERT_AUX_it;
-+              CERTIFICATEPOLICIES_it;
 +              CERTIFICATEPOLICIES_it;
 +              _ossl_old_des_ede3_cbc_encrypt;
 +              RAND_set_rand_engine;
 +              DSO_get_loaded_filename;
 +              X509_ATTRIBUTE_it;
-+              X509_ATTRIBUTE_it;
 +              OCSP_ONEREQ_get_ext_by_NID;
 +              PKCS12_decrypt_skey;
 +              KRB5_AUTHENT_it;
-+              KRB5_AUTHENT_it;
 +              UI_dup_error_string;
 +              RSAPublicKey_it;
-+              RSAPublicKey_it;
 +              i2d_OCSP_REQUEST;
 +              PKCS12_x509crl2certbag;
 +              OCSP_SERVICELOC_it;
-+              OCSP_SERVICELOC_it;
 +              ASN1_item_sign;
 +              X509_CRL_set_issuer_name;
 +              OBJ_NAME_do_all_sorted;
@@ -2494,30 +2456,23 @@ Index: openssl-1.0.1d/openssl.ld
 +              ENGINE_get_digest;
 +              OCSP_RESPONSE_print;
 +              KRB5_TKTBODY_it;
-+              KRB5_TKTBODY_it;
 +              ACCESS_DESCRIPTION_it;
-+              ACCESS_DESCRIPTION_it;
-+              PKCS7_ISSUER_AND_SERIAL_it;
 +              PKCS7_ISSUER_AND_SERIAL_it;
 +              PBE2PARAM_it;
-+              PBE2PARAM_it;
 +              PKCS12_certbag2x509crl;
 +              PKCS7_SIGNED_it;
-+              PKCS7_SIGNED_it;
 +              ENGINE_get_cipher;
 +              i2d_OCSP_CRLID;
 +              OCSP_SINGLERESP_new;
 +              ENGINE_cmd_is_executable;
 +              RSA_up_ref;
 +              ASN1_GENERALSTRING_it;
-+              ASN1_GENERALSTRING_it;
 +              ENGINE_register_DSA;
 +              X509V3_EXT_add_nconf_sk;
 +              ENGINE_set_load_pubkey_function;
 +              PKCS8_decrypt;
 +              PEM_bytes_read_bio;
 +              DIRECTORYSTRING_it;
-+              DIRECTORYSTRING_it;
 +              d2i_OCSP_CRLID;
 +              EC_POINT_is_on_curve;
 +              CRYPTO_set_locked_mem_ex_functions;
@@ -2525,7 +2480,6 @@ Index: openssl-1.0.1d/openssl.ld
 +              d2i_KRB5_CHECKSUM;
 +              ASN1_item_dup;
 +              X509_it;
-+              X509_it;
 +              BN_mod_add;
 +              KRB5_AUTHDATA_free;
 +              _ossl_old_des_cbc_cksum;
@@ -2534,7 +2488,6 @@ Index: openssl-1.0.1d/openssl.ld
 +              EC_POINT_get_Jprojective_coordinates_GFp;
 +              EC_POINT_get_Jproj_coords_GFp;
 +              ZLONG_it;
-+              ZLONG_it;
 +              CRYPTO_get_locked_mem_ex_functions;
 +              CRYPTO_get_locked_mem_ex_funcs;
 +              ASN1_TIME_check;
@@ -2544,41 +2497,30 @@ Index: openssl-1.0.1d/openssl.ld
 +              _ossl_old_des_ede3_cfb64_encrypt;
 +              _ossl_odes_ede3_cfb64_encrypt;
 +              ASN1_BMPSTRING_it;
-+              ASN1_BMPSTRING_it;
 +              ASN1_tag2bit;
 +              UI_method_set_flusher;
 +              X509_ocspid_print;
 +              KRB5_ENCDATA_it;
-+              KRB5_ENCDATA_it;
 +              ENGINE_get_load_pubkey_function;
 +              UI_add_user_data;
 +              OCSP_REQUEST_delete_ext;
 +              UI_get_method;
 +              OCSP_ONEREQ_free;
 +              ASN1_PRINTABLESTRING_it;
-+              ASN1_PRINTABLESTRING_it;
 +              X509_CRL_set_nextUpdate;
 +              OCSP_REQUEST_it;
-+              OCSP_REQUEST_it;
-+              OCSP_BASICRESP_it;
 +              OCSP_BASICRESP_it;
 +              AES_ecb_encrypt;
 +              BN_mod_sqr;
 +              NETSCAPE_CERT_SEQUENCE_it;
-+              NETSCAPE_CERT_SEQUENCE_it;
-+              GENERAL_NAMES_it;
 +              GENERAL_NAMES_it;
 +              AUTHORITY_INFO_ACCESS_it;
-+              AUTHORITY_INFO_ACCESS_it;
-+              ASN1_FBOOLEAN_it;
 +              ASN1_FBOOLEAN_it;
 +              UI_set_ex_data;
 +              _ossl_old_des_string_to_key;
 +              ENGINE_register_all_RSA;
 +              d2i_KRB5_PRINCNAME;
 +              OCSP_RESPBYTES_it;
-+              OCSP_RESPBYTES_it;
-+              X509_CINF_it;
 +              X509_CINF_it;
 +              ENGINE_unregister_digests;
 +              d2i_EDIPARTYNAME;
@@ -2588,7 +2530,6 @@ Index: openssl-1.0.1d/openssl.ld
 +              OCSP_RESPDATA_free;
 +              d2i_KRB5_TICKET;
 +              OTHERNAME_it;
-+              OTHERNAME_it;
 +              EVP_MD_CTX_cleanup;
 +              d2i_ASN1_GENERALSTRING;
 +              X509_CRL_set_version;
@@ -2598,7 +2539,6 @@ Index: openssl-1.0.1d/openssl.ld
 +              OCSP_REQUEST_free;
 +              OCSP_REQUEST_add1_ext_i2d;
 +              X509_VAL_it;
-+              X509_VAL_it;
 +              EC_POINTs_make_affine;
 +              EC_POINT_mul;
 +              X509V3_EXT_add_nconf;
@@ -2606,7 +2546,6 @@ Index: openssl-1.0.1d/openssl.ld
 +              X509_CRL_add1_ext_i2d;
 +              _ossl_old_des_fcrypt;
 +              DISPLAYTEXT_it;
-+              DISPLAYTEXT_it;
 +              X509_CRL_set_lastUpdate;
 +              OCSP_BASICRESP_free;
 +              OCSP_BASICRESP_add1_ext_i2d;
@@ -2619,7 +2558,6 @@ Index: openssl-1.0.1d/openssl.ld
 +              UI_get0_result_string;
 +              ASN1_GENERALSTRING_new;
 +              X509_SIG_it;
-+              X509_SIG_it;
 +              ERR_set_implementation;
 +              ERR_load_EC_strings;
 +              UI_get0_action_string;
@@ -2634,35 +2572,27 @@ Index: openssl-1.0.1d/openssl.ld
 +              OCSP_ONEREQ_get_ext_by_OBJ;
 +              ASN1_primitive_new;
 +              ASN1_PRINTABLE_it;
-+              ASN1_PRINTABLE_it;
 +              EVP_aes_192_ecb;
 +              OCSP_SIGNATURE_new;
 +              LONG_it;
-+              LONG_it;
-+              ASN1_VISIBLESTRING_it;
 +              ASN1_VISIBLESTRING_it;
 +              OCSP_SINGLERESP_add1_ext_i2d;
 +              d2i_OCSP_CERTID;
 +              ASN1_item_d2i_fp;
 +              CRL_DIST_POINTS_it;
-+              CRL_DIST_POINTS_it;
 +              GENERAL_NAME_print;
 +              OCSP_SINGLERESP_delete_ext;
 +              PKCS12_SAFEBAGS_it;
-+              PKCS12_SAFEBAGS_it;
 +              d2i_OCSP_SIGNATURE;
 +              OCSP_request_add1_nonce;
 +              ENGINE_set_cmd_defns;
 +              OCSP_SERVICELOC_free;
 +              EC_GROUP_free;
 +              ASN1_BIT_STRING_it;
-+              ASN1_BIT_STRING_it;
-+              X509_REQ_it;
 +              X509_REQ_it;
 +              _ossl_old_des_cbc_encrypt;
 +              ERR_unload_strings;
 +              PKCS7_SIGN_ENVELOPE_it;
-+              PKCS7_SIGN_ENVELOPE_it;
 +              EDIPARTYNAME_free;
 +              OCSP_REQINFO_free;
 +              EC_GROUP_new_curve_GFp;
@@ -2687,7 +2617,6 @@ Index: openssl-1.0.1d/openssl.ld
 +              OCSP_CRLID_free;
 +              OCSP_BASICRESP_get1_ext_d2i;
 +              RSAPrivateKey_it;
-+              RSAPrivateKey_it;
 +              ENGINE_register_all_DH;
 +              i2d_EDIPARTYNAME;
 +              EC_POINT_get_affine_coordinates_GFp;
@@ -2695,10 +2624,8 @@ Index: openssl-1.0.1d/openssl.ld
 +              OCSP_CRLID_new;
 +              ENGINE_get_flags;
 +              OCSP_ONEREQ_it;
-+              OCSP_ONEREQ_it;
 +              UI_process;
 +              ASN1_INTEGER_it;
-+              ASN1_INTEGER_it;
 +              EVP_CipherInit_ex;
 +              UI_get_string_type;
 +              ENGINE_unregister_DH;
@@ -2707,7 +2634,6 @@ Index: openssl-1.0.1d/openssl.ld
 +              bn_dup_expand;
 +              OCSP_cert_id_new;
 +              BASIC_CONSTRAINTS_it;
-+              BASIC_CONSTRAINTS_it;
 +              BN_mod_add_quick;
 +              EC_POINT_new;
 +              EVP_MD_CTX_destroy;
@@ -2717,7 +2643,6 @@ Index: openssl-1.0.1d/openssl.ld
 +              EC_POINT_free;
 +              DH_up_ref;
 +              X509_NAME_ENTRY_it;
-+              X509_NAME_ENTRY_it;
 +              UI_get_ex_new_index;
 +              BN_mod_sub_quick;
 +              OCSP_ONEREQ_add_ext;
@@ -2730,7 +2655,6 @@ Index: openssl-1.0.1d/openssl.ld
 +              ENGINE_register_complete;
 +              X509V3_EXT_nconf_nid;
 +              ASN1_SEQUENCE_it;
-+              ASN1_SEQUENCE_it;
 +              UI_set_default_method;
 +              RAND_query_egd_bytes;
 +              UI_method_get_writer;
@@ -2738,8 +2662,6 @@ Index: openssl-1.0.1d/openssl.ld
 +              PEM_def_callback;
 +              ENGINE_cleanup;
 +              DIST_POINT_it;
-+              DIST_POINT_it;
-+              OCSP_SINGLERESP_it;
 +              OCSP_SINGLERESP_it;
 +              d2i_KRB5_TKTBODY;
 +              EC_POINT_cmp;
@@ -2758,24 +2680,20 @@ Index: openssl-1.0.1d/openssl.ld
 +              OCSP_cert_to_id;
 +              OCSP_RESPID_new;
 +              OCSP_RESPDATA_it;
-+              OCSP_RESPDATA_it;
 +              d2i_OCSP_RESPDATA;
 +              ENGINE_register_all_complete;
 +              OCSP_check_validity;
 +              PKCS12_BAGS_it;
-+              PKCS12_BAGS_it;
 +              OCSP_url_svcloc_new;
 +              ASN1_template_free;
 +              OCSP_SINGLERESP_add_ext;
 +              KRB5_AUTHENTBODY_it;
-+              KRB5_AUTHENTBODY_it;
 +              X509_supported_extension;
 +              i2d_KRB5_AUTHDATA;
 +              UI_method_get_opener;
 +              ENGINE_set_ex_data;
 +              OCSP_REQUEST_print;
 +              CBIGNUM_it;
-+              CBIGNUM_it;
 +              KRB5_TICKET_new;
 +              KRB5_APREQ_new;
 +              EC_GROUP_get_curve_GFp;
@@ -2785,27 +2703,20 @@ Index: openssl-1.0.1d/openssl.ld
 +              OCSP_single_get0_status;
 +              BN_swap;
 +              POLICYINFO_it;
-+              POLICYINFO_it;
 +              ENGINE_set_destroy_function;
 +              asn1_enc_free;
 +              OCSP_RESPID_it;
-+              OCSP_RESPID_it;
 +              EC_GROUP_new;
 +              EVP_aes_256_cbc;
 +              i2d_KRB5_PRINCNAME;
 +              _ossl_old_des_encrypt2;
 +              _ossl_old_des_encrypt3;
 +              PKCS8_PRIV_KEY_INFO_it;
-+              PKCS8_PRIV_KEY_INFO_it;
-+              OCSP_REQINFO_it;
 +              OCSP_REQINFO_it;
 +              PBEPARAM_it;
-+              PBEPARAM_it;
 +              KRB5_AUTHENTBODY_new;
 +              X509_CRL_add0_revoked;
 +              EDIPARTYNAME_it;
-+              EDIPARTYNAME_it;
-+              NETSCAPE_SPKI_it;
 +              NETSCAPE_SPKI_it;
 +              UI_get0_test_string;
 +              ENGINE_get_cipher_engine;
@@ -2817,14 +2728,12 @@ Index: openssl-1.0.1d/openssl.ld
 +              UI_method_get_reader;
 +              OCSP_BASICRESP_get_ext_count;
 +              ASN1_ENUMERATED_it;
-+              ASN1_ENUMERATED_it;
 +              UI_set_result;
 +              i2d_KRB5_TICKET;
 +              X509_print_ex_fp;
 +              EVP_CIPHER_CTX_set_padding;
 +              d2i_OCSP_RESPONSE;
 +              ASN1_UTCTIME_it;
-+              ASN1_UTCTIME_it;
 +              _ossl_old_des_enc_write;
 +              OCSP_RESPONSE_new;
 +              AES_set_encrypt_key;
@@ -2834,14 +2743,11 @@ Index: openssl-1.0.1d/openssl.ld
 +              OCSP_onereq_get0_id;
 +              ENGINE_set_default_ciphers;
 +              NOTICEREF_it;
-+              NOTICEREF_it;
 +              X509V3_EXT_CRL_add_nconf;
 +              OCSP_REVOKEDINFO_it;
-+              OCSP_REVOKEDINFO_it;
 +              AES_encrypt;
 +              OCSP_REQUEST_new;
 +              ASN1_ANY_it;
-+              ASN1_ANY_it;
 +              CRYPTO_ex_data_new_class;
 +              _ossl_old_des_ncbc_encrypt;
 +              i2d_KRB5_TKTBODY;
@@ -2864,19 +2770,15 @@ Index: openssl-1.0.1d/openssl.ld
 +              ENGINE_load_nuron;
 +              _ossl_old_des_pcbc_encrypt;
 +              PKCS12_MAC_DATA_it;
-+              PKCS12_MAC_DATA_it;
 +              OCSP_accept_responses_new;
 +              asn1_do_lock;
 +              PKCS7_ATTR_VERIFY_it;
-+              PKCS7_ATTR_VERIFY_it;
-+              KRB5_APREQBODY_it;
 +              KRB5_APREQBODY_it;
 +              i2d_OCSP_SINGLERESP;
 +              ASN1_item_ex_new;
 +              UI_add_verify_string;
 +              _ossl_old_des_set_key;
 +              KRB5_PRINCNAME_it;
-+              KRB5_PRINCNAME_it;
 +              EVP_DecryptInit_ex;
 +              i2d_OCSP_CERTID;
 +              ASN1_item_d2i_bio;
@@ -2890,20 +2792,17 @@ Index: openssl-1.0.1d/openssl.ld
 +              OCSP_BASICRESP_new;
 +              OCSP_REQUEST_get_ext_by_NID;
 +              KRB5_APREQ_it;
-+              KRB5_APREQ_it;
 +              ENGINE_get_destroy_function;
 +              CONF_set_nconf;
 +              ASN1_PRINTABLE_free;
 +              OCSP_BASICRESP_get_ext_by_NID;
 +              DIST_POINT_NAME_it;
-+              DIST_POINT_NAME_it;
 +              X509V3_extensions_print;
 +              _ossl_old_des_cfb64_encrypt;
 +              X509_REVOKED_add1_ext_i2d;
 +              _ossl_old_des_ofb_encrypt;
 +              KRB5_TKTBODY_new;
 +              ASN1_OCTET_STRING_it;
-+              ASN1_OCTET_STRING_it;
 +              ERR_load_UI_strings;
 +              i2d_KRB5_ENCKEY;
 +              ASN1_template_new;
@@ -2911,8 +2810,6 @@ Index: openssl-1.0.1d/openssl.ld
 +              ASN1_item_i2d_fp;
 +              KRB5_PRINCNAME_free;
 +              PKCS7_RECIP_INFO_it;
-+              PKCS7_RECIP_INFO_it;
-+              EXTENDED_KEY_USAGE_it;
 +              EXTENDED_KEY_USAGE_it;
 +              EC_GFp_simple_method;
 +              EC_GROUP_precompute_mult;
@@ -2920,42 +2817,33 @@ Index: openssl-1.0.1d/openssl.ld
 +              UI_method_set_writer;
 +              KRB5_AUTHENT_new;
 +              X509_CRL_INFO_it;
-+              X509_CRL_INFO_it;
 +              DSO_set_name_converter;
 +              AES_set_decrypt_key;
 +              PKCS7_DIGEST_it;
-+              PKCS7_DIGEST_it;
 +              PKCS12_x5092certbag;
 +              EVP_DigestInit_ex;
 +              i2a_ACCESS_DESCRIPTION;
 +              OCSP_RESPONSE_it;
-+              OCSP_RESPONSE_it;
-+              PKCS7_ENC_CONTENT_it;
 +              PKCS7_ENC_CONTENT_it;
 +              OCSP_request_add0_id;
 +              EC_POINT_make_affine;
 +              DSO_get_filename;
 +              OCSP_CERTSTATUS_it;
-+              OCSP_CERTSTATUS_it;
 +              OCSP_request_add1_cert;
 +              UI_get0_output_string;
 +              UI_dup_verify_string;
 +              BN_mod_lshift;
 +              KRB5_AUTHDATA_it;
-+              KRB5_AUTHDATA_it;
 +              asn1_set_choice_selector;
 +              OCSP_basic_add1_status;
 +              OCSP_RESPID_free;
 +              asn1_get_field_ptr;
 +              UI_add_input_string;
 +              OCSP_CRLID_it;
-+              OCSP_CRLID_it;
 +              i2d_KRB5_AUTHENTBODY;
 +              OCSP_REQUEST_get_ext_count;
 +              ENGINE_load_atalla;
 +              X509_NAME_it;
-+              X509_NAME_it;
-+              USERNOTICE_it;
 +              USERNOTICE_it;
 +              OCSP_REQINFO_new;
 +              OCSP_BASICRESP_get_ext;
@@ -2965,33 +2853,27 @@ Index: openssl-1.0.1d/openssl.ld
 +              i2d_KRB5_ENCDATA;
 +              X509_PURPOSE_set;
 +              X509_REQ_INFO_it;
-+              X509_REQ_INFO_it;
 +              UI_method_set_opener;
 +              ASN1_item_ex_free;
 +              ASN1_BOOLEAN_it;
-+              ASN1_BOOLEAN_it;
 +              ENGINE_get_table_flags;
 +              UI_create_method;
 +              OCSP_ONEREQ_add1_ext_i2d;
 +              _shadow_DES_check_key;
-+              _shadow_DES_check_key;
 +              d2i_OCSP_REQINFO;
 +              UI_add_info_string;
 +              UI_get_result_minsize;
 +              ASN1_NULL_it;
-+              ASN1_NULL_it;
 +              BN_mod_lshift1;
 +              d2i_OCSP_ONEREQ;
 +              OCSP_ONEREQ_new;
 +              KRB5_TICKET_it;
-+              KRB5_TICKET_it;
 +              EVP_aes_192_cbc;
 +              KRB5_TICKET_free;
 +              UI_new;
 +              OCSP_response_create;
 +              _ossl_old_des_xcbc_encrypt;
 +              PKCS7_it;
-+              PKCS7_it;
 +              OCSP_REQUEST_get_ext_by_critical;
 +              OCSP_REQUEST_get_ext_by_crit;
 +              ENGINE_set_flags;
@@ -3000,11 +2882,9 @@ Index: openssl-1.0.1d/openssl.ld
 +              EVP_Digest;
 +              OCSP_ONEREQ_delete_ext;
 +              ASN1_TBOOLEAN_it;
-+              ASN1_TBOOLEAN_it;
 +              ASN1_item_new;
 +              ASN1_TIME_to_generalizedtime;
 +              BIGNUM_it;
-+              BIGNUM_it;
 +              AES_cbc_encrypt;
 +              ENGINE_get_load_privkey_function;
 +              ENGINE_get_load_privkey_fn;
@@ -3016,7 +2896,6 @@ Index: openssl-1.0.1d/openssl.ld
 +              EC_POINT_point2oct;
 +              KRB5_APREQ_free;
 +              ASN1_OBJECT_it;
-+              ASN1_OBJECT_it;
 +              OCSP_crlID_new;
 +              OCSP_crlID2_new;
 +              CONF_modules_load_file;
@@ -3074,7 +2953,6 @@ Index: openssl-1.0.1d/openssl.ld
 +              i2d_ASN1_UNIVERSALSTRING;
 +              ASN1_UNIVERSALSTRING_free;
 +              ASN1_UNIVERSALSTRING_it;
-+              ASN1_UNIVERSALSTRING_it;
 +              d2i_ASN1_UNIVERSALSTRING;
 +              EVP_des_ede3_ecb;
 +              X509_REQ_print_ex;
@@ -3130,14 +3008,12 @@ Index: openssl-1.0.1d/openssl.ld
 +              HMAC_CTX_set_flags;
 +              d2i_PROXY_CERT_INFO_EXTENSION;
 +              PROXY_POLICY_it;
-+              PROXY_POLICY_it;
 +              i2d_PROXY_POLICY;
 +              i2d_PROXY_CERT_INFO_EXTENSION;
 +              d2i_PROXY_POLICY;
 +              PROXY_CERT_INFO_EXTENSION_new;
 +              PROXY_CERT_INFO_EXTENSION_free;
 +              PROXY_CERT_INFO_EXTENSION_it;
-+              PROXY_CERT_INFO_EXTENSION_it;
 +              PROXY_POLICY_free;
 +              PROXY_POLICY_new;
 +              BN_MONT_CTX_set_locked;
@@ -3174,7 +3050,6 @@ Index: openssl-1.0.1d/openssl.ld
 +              BN_BLINDING_get_thread_id;
 +              X509_STORE_CTX_set0_param;
 +              POLICY_MAPPING_it;
-+              POLICY_MAPPING_it;
 +              STORE_parse_attrs_start;
 +              POLICY_CONSTRAINTS_free;
 +              EVP_PKEY_add1_attr_by_NID;
@@ -3183,7 +3058,6 @@ Index: openssl-1.0.1d/openssl.ld
 +              STORE_set_method;
 +              GENERAL_SUBTREE_free;
 +              NAME_CONSTRAINTS_it;
-+              NAME_CONSTRAINTS_it;
 +              ECDH_get_default_method;
 +              PKCS12_add_safe;
 +              EC_KEY_new_by_curve_name;
@@ -3226,7 +3100,6 @@ Index: openssl-1.0.1d/openssl.ld
 +              ENGINE_get_default_ECDH;
 +              EC_KEY_get_conv_form;
 +              ASN1_OCTET_STRING_NDEF_it;
-+              ASN1_OCTET_STRING_NDEF_it;
 +              STORE_delete_public_key;
 +              STORE_get_public_key;
 +              STORE_modify_arbitrary;
@@ -3383,7 +3256,6 @@ Index: openssl-1.0.1d/openssl.ld
 +              ENGINE_load_padlock;
 +              EC_GROUP_set_curve_name;
 +              X509_CERT_PAIR_it;
-+              X509_CERT_PAIR_it;
 +              STORE_meth_get_revoke_fn;
 +              STORE_method_get_revoke_function;
 +              STORE_method_set_get_function;
@@ -3510,7 +3382,6 @@ Index: openssl-1.0.1d/openssl.ld
 +              pqueue_pop;
 +              STORE_ATTR_INFO_get0_cstr;
 +              POLICY_CONSTRAINTS_it;
-+              POLICY_CONSTRAINTS_it;
 +              STORE_get_ex_new_index;
 +              EVP_PKEY_get_attr_by_OBJ;
 +              X509_VERIFY_PARAM_add0_policy;
@@ -3558,8 +3429,6 @@ Index: openssl-1.0.1d/openssl.ld
 +              STORE_modify_crl;
 +              STORE_list_private_key_start;
 +              POLICY_MAPPINGS_it;
-+              POLICY_MAPPINGS_it;
-+              GENERAL_SUBTREE_it;
 +              GENERAL_SUBTREE_it;
 +              EC_GROUP_get_curve_name;
 +              PEM_write_X509_CERT_PAIR;
@@ -3692,15 +3561,12 @@ Index: openssl-1.0.1d/openssl.ld
 +              BIO_set_callback_arg;
 +              v3_addr_add_prefix;
 +              IPAddressOrRange_it;
-+              IPAddressOrRange_it;
 +              BIO_set_flags;
 +              ASIdentifiers_it;
-+              ASIdentifiers_it;
 +              v3_addr_get_range;
 +              BIO_method_type;
 +              v3_addr_inherits;
 +              IPAddressChoice_it;
-+              IPAddressChoice_it;
 +              AES_ige_encrypt;
 +              v3_addr_add_range;
 +              EVP_CIPHER_CTX_nid;
@@ -3721,7 +3587,6 @@ Index: openssl-1.0.1d/openssl.ld
 +              BIO_clear_flags;
 +              i2d_ASRange;
 +              IPAddressRange_it;
-+              IPAddressRange_it;
 +              IPAddressChoice_new;
 +              ASIdentifierChoice_new;
 +              ASRange_free;
@@ -3742,7 +3607,6 @@ Index: openssl-1.0.1d/openssl.ld
 +              BIO_test_flags;
 +              i2d_ASIdentifierChoice;
 +              ASRange_it;
-+              ASRange_it;
 +              d2i_ASIdentifiers;
 +              ASRange_new;
 +              d2i_IPAddressChoice;
@@ -3751,7 +3615,6 @@ Index: openssl-1.0.1d/openssl.ld
 +              EVP_Cipher;
 +              i2d_IPAddressOrRange;
 +              ASIdOrRange_it;
-+              ASIdOrRange_it;
 +              EVP_CIPHER_nid;
 +              i2d_IPAddressChoice;
 +              EVP_CIPHER_CTX_block_size;
@@ -3762,7 +3625,6 @@ Index: openssl-1.0.1d/openssl.ld
 +              v3_addr_is_canonical;
 +              i2d_IPAddressRange;
 +              IPAddressFamily_it;
-+              IPAddressFamily_it;
 +              v3_asid_inherits;
 +              EVP_CIPHER_CTX_cipher;
 +              EVP_CIPHER_CTX_get_app_data;
@@ -3772,7 +3634,6 @@ Index: openssl-1.0.1d/openssl.ld
 +              d2i_IPAddressOrRange;
 +              v3_addr_canonize;
 +              ASIdentifierChoice_it;
-+              ASIdentifierChoice_it;
 +              EVP_MD_CTX_md;
 +              d2i_ASIdentifierChoice;
 +              BIO_method_name;
@@ -3795,7 +3656,6 @@ Index: openssl-1.0.1d/openssl.ld
 +              SEED_set_key;
 +              EVP_seed_cfb128;
 +              X509_EXTENSIONS_it;
-+              X509_EXTENSIONS_it;
 +              X509_get1_ocsp;
 +              OCSP_REQ_CTX_free;
 +              i2d_X509_EXTENSIONS;
@@ -3803,7 +3663,6 @@ Index: openssl-1.0.1d/openssl.ld
 +              OCSP_sendreq_new;
 +              d2i_X509_EXTENSIONS;
 +              X509_ALGORS_it;
-+              X509_ALGORS_it;
 +              X509_ALGOR_get0;
 +              X509_ALGOR_set0;
 +              AES_unwrap_key;
@@ -3848,7 +3707,6 @@ Index: openssl-1.0.1d/openssl.ld
 +              CMS_SignerInfo_verify;
 +              CMS_data;
 +              CMS_ContentInfo_it;
-+              CMS_ContentInfo_it;
 +              d2i_CMS_ReceiptRequest;
 +              CMS_compress;
 +              CMS_digest_create;
@@ -3893,7 +3751,6 @@ Index: openssl-1.0.1d/openssl.ld
 +              CMS_RecipientInfo_kekri_get0_id;
 +              CMS_verify_receipt;
 +              CMS_ReceiptRequest_it;
-+              CMS_ReceiptRequest_it;
 +              PEM_read_bio_CMS;
 +              CMS_get1_crls;
 +              CMS_add0_recipient_key;
@@ -4032,7 +3889,6 @@ Index: openssl-1.0.1d/openssl.ld
 +              TS_REQ_dup;
 +              GENERAL_NAME_dup;
 +              ASN1_SEQUENCE_ANY_it;
-+              ASN1_SEQUENCE_ANY_it;
 +              WHIRLPOOL;
 +              X509_STORE_get1_crls;
 +              ENGINE_get_pkey_asn1_meth;
@@ -4103,7 +3959,6 @@ Index: openssl-1.0.1d/openssl.ld
 +              DIST_POINT_set_dpname;
 +              i2d_ISSUING_DIST_POINT;
 +              ASN1_SET_ANY_it;
-+              ASN1_SET_ANY_it;
 +              EVP_PKEY_CTX_get_data;
 +              TS_STATUS_INFO_print_bio;
 +              EVP_PKEY_derive_init;
@@ -4263,7 +4118,6 @@ Index: openssl-1.0.1d/openssl.ld
 +              EVP_DigestSignFinal;
 +              TS_RESP_CTX_set_def_policy;
 +              NETSCAPE_X509_it;
-+              NETSCAPE_X509_it;
 +              TS_RESP_create_response;
 +              PKCS7_SIGNER_INFO_get0_algs;
 +              TS_TST_INFO_get_nonce;
@@ -4322,7 +4176,6 @@ Index: openssl-1.0.1d/openssl.ld
 +              EVP_CIPHER_do_all_sorted;
 +              EVP_PKEY_CTX_free;
 +              ISSUING_DIST_POINT_it;
-+              ISSUING_DIST_POINT_it;
 +              d2i_TS_MSG_IMPRINT_fp;
 +              X509_STORE_get1_certs;
 +              EVP_PKEY_CTX_get_operation;
@@ -4615,7 +4468,6 @@ Index: openssl-1.0.1d/openssl.ld
 +              X509_signature_dump;
 +              d2i_RSA_PSS_PARAMS;
 +              RSA_PSS_PARAMS_it;
-+              RSA_PSS_PARAMS_it;
 +              RSA_PSS_PARAMS_free;
 +              X509_sign_ctx;
 +              i2d_RSA_PSS_PARAMS;
@@ -4638,10 +4490,151 @@ Index: openssl-1.0.1d/openssl.ld
 +              CRYPTO_memcmp;
 +} OPENSSL_1.0.1;
 +
-Index: openssl-1.0.1d/engines/openssl.ld
++OPENSSL_1.0.2 {
++      global:
++              SSL_CTX_set_alpn_protos;
++              SSL_set_alpn_protos;
++              SSL_CTX_set_alpn_select_cb;
++              SSL_get0_alpn_selected;
++              SSL_CTX_set_custom_cli_ext;
++              SSL_CTX_set_custom_srv_ext;
++              SSL_CTX_set_srv_supp_data;
++              SSL_CTX_set_cli_supp_data;
++              SSL_set_cert_cb;
++              SSL_CTX_use_serverinfo;
++              SSL_CTX_use_serverinfo_file;
++              SSL_CTX_set_cert_cb;
++              SSL_CTX_get0_param;
++              SSL_get0_param;
++              SSL_certs_clear;
++              DTLSv1_2_method;
++              DTLSv1_2_server_method;
++              DTLSv1_2_client_method;
++              DTLS_method;
++              DTLS_server_method;
++              DTLS_client_method;
++              SSL_CTX_get_ssl_method;
++              SSL_CTX_get0_certificate;
++              SSL_CTX_get0_privatekey;
++              SSL_COMP_set0_compression_methods;
++              SSL_COMP_free_compression_methods;
++              SSL_CIPHER_find;
++              SSL_is_server;
++              SSL_CONF_CTX_new;
++              SSL_CONF_CTX_finish;
++              SSL_CONF_CTX_free;
++              SSL_CONF_CTX_set_flags;
++              SSL_CONF_CTX_clear_flags;
++              SSL_CONF_CTX_set1_prefix;
++              SSL_CONF_CTX_set_ssl;
++              SSL_CONF_CTX_set_ssl_ctx;
++              SSL_CONF_cmd;
++              SSL_CONF_cmd_argv;
++              SSL_CONF_cmd_value_type;
++              SSL_trace;
++              SSL_CIPHER_standard_name;
++              SSL_get_tlsa_record_byname;
++              ASN1_TIME_diff;
++              BIO_hex_string;
++              CMS_RecipientInfo_get0_pkey_ctx;
++              CMS_RecipientInfo_encrypt;
++              CMS_SignerInfo_get0_pkey_ctx;
++              CMS_SignerInfo_get0_md_ctx;
++              CMS_SignerInfo_get0_signature;
++              CMS_RecipientInfo_kari_get0_alg;
++              CMS_RecipientInfo_kari_get0_reks;
++              CMS_RecipientInfo_kari_get0_orig_id;
++              CMS_RecipientInfo_kari_orig_id_cmp;
++              CMS_RecipientEncryptedKey_get0_id;
++              CMS_RecipientEncryptedKey_cert_cmp;
++              CMS_RecipientInfo_kari_set0_pkey;
++              CMS_RecipientInfo_kari_get0_ctx;
++              CMS_RecipientInfo_kari_decrypt;
++              CMS_SharedInfo_encode;
++              DH_compute_key_padded;
++              d2i_DHxparams;
++              i2d_DHxparams;
++              DH_get_1024_160;
++              DH_get_2048_224;
++              DH_get_2048_256;
++              DH_KDF_X9_42;
++              ECDH_KDF_X9_62;
++              ECDSA_METHOD_new;
++              ECDSA_METHOD_free;
++              ECDSA_METHOD_set_app_data;
++              ECDSA_METHOD_get_app_data;
++              ECDSA_METHOD_set_sign;
++              ECDSA_METHOD_set_sign_setup;
++              ECDSA_METHOD_set_verify;
++              ECDSA_METHOD_set_flags;
++              ECDSA_METHOD_set_name;
++              EVP_des_ede3_wrap;
++              EVP_aes_128_wrap;
++              EVP_aes_192_wrap;
++              EVP_aes_256_wrap;
++              EVP_aes_128_cbc_hmac_sha256;
++              EVP_aes_256_cbc_hmac_sha256;
++              CRYPTO_128_wrap;
++              CRYPTO_128_unwrap;
++              OCSP_REQ_CTX_nbio;
++              OCSP_REQ_CTX_new;
++              OCSP_set_max_response_length;
++              OCSP_REQ_CTX_i2d;
++              OCSP_REQ_CTX_nbio_d2i;
++              OCSP_REQ_CTX_get0_mem_bio;
++              OCSP_REQ_CTX_http;
++              RSA_padding_add_PKCS1_OAEP_mgf1;
++              RSA_padding_check_PKCS1_OAEP_mgf1;
++              RSA_OAEP_PARAMS_free;
++              RSA_OAEP_PARAMS_it;
++              RSA_OAEP_PARAMS_new;
++              SSL_get_sigalgs;
++              SSL_get_shared_sigalgs;
++              SSL_check_chain;
++              X509_chain_up_ref;
++              X509_http_nbio;
++              X509_CRL_http_nbio;
++              X509_REVOKED_dup;
++              i2d_re_X509_tbs;
++              X509_get0_signature;
++              X509_get_signature_nid;
++              X509_CRL_diff;
++              X509_chain_check_suiteb;
++              X509_CRL_check_suiteb;
++              X509_check_host;
++              X509_check_email;
++              X509_check_ip;
++              X509_check_ip_asc;
++              X509_STORE_set_lookup_crls_cb;
++              X509_STORE_CTX_get0_store;
++              X509_VERIFY_PARAM_set1_host;
++              X509_VERIFY_PARAM_add1_host;
++              X509_VERIFY_PARAM_set_hostflags;
++              X509_VERIFY_PARAM_get0_peername;
++              X509_VERIFY_PARAM_set1_email;
++              X509_VERIFY_PARAM_set1_ip;
++              X509_VERIFY_PARAM_set1_ip_asc;
++              X509_VERIFY_PARAM_get0_name;
++              X509_VERIFY_PARAM_get_count;
++              X509_VERIFY_PARAM_get0;
++              X509V3_EXT_free;
++              EC_GROUP_get_mont_data;
++              EC_curve_nid2nist;
++              EC_curve_nist2nid;
++              PEM_write_bio_DHxparams;
++              PEM_write_DHxparams;
++              SSL_CTX_add_client_custom_ext;
++              SSL_CTX_add_server_custom_ext;
++              SSL_extension_supported;
++              BUF_strnlen;
++              sk_deep_copy;
++              SSL_test_functions;
++} OPENSSL_1.0.1d;
++
+Index: openssl-1.0.2~beta1.obsolete.0.0498436515490575/engines/openssl.ld
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ openssl-1.0.1d/engines/openssl.ld  2013-02-06 19:41:43.000000000 +0100
++++ openssl-1.0.2~beta1.obsolete.0.0498436515490575/engines/openssl.ld 
2014-02-24 21:02:30.000000000 +0100
 @@ -0,0 +1,10 @@
 +OPENSSL_1.0.0 {
 +      global:
@@ -4653,10 +4646,10 @@ Index: openssl-1.0.1d/engines/openssl.ld
 +              *;
 +};
 +
-Index: openssl-1.0.1d/engines/ccgost/openssl.ld
+Index: 
openssl-1.0.2~beta1.obsolete.0.0498436515490575/engines/ccgost/openssl.ld
 ===================================================================
 --- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ openssl-1.0.1d/engines/ccgost/openssl.ld   2013-02-06 19:41:43.000000000 
+0100
++++ openssl-1.0.2~beta1.obsolete.0.0498436515490575/engines/ccgost/openssl.ld  
2014-02-24 21:02:30.000000000 +0100
 @@ -0,0 +1,10 @@
 +OPENSSL_1.0.0 {
 +      global:
diff --git 
a/meta/recipes-connectivity/openssl/openssl/debian1.0.2/block_digicert_malaysia.patch
 
b/meta/recipes-connectivity/openssl/openssl/debian1.0.2/block_digicert_malaysia.patch
new file mode 100644
index 0000000..c43bcd1
--- /dev/null
+++ 
b/meta/recipes-connectivity/openssl/openssl/debian1.0.2/block_digicert_malaysia.patch
@@ -0,0 +1,29 @@
+From: Raphael Geissert <geiss...@debian.org>
+Description: make X509_verify_cert indicate that any certificate whose
+ name contains "Digicert Sdn. Bhd." (from Malaysia) is revoked.
+Forwarded: not-needed
+Origin: vendor
+Last-Update: 2011-11-05
+
+Upstream-Status: Backport [debian]
+
+
+Index: openssl-1.0.2~beta1/crypto/x509/x509_vfy.c
+===================================================================
+--- openssl-1.0.2~beta1.orig/crypto/x509/x509_vfy.c    2014-02-25 
00:16:12.488028844 +0100
++++ openssl-1.0.2~beta1/crypto/x509/x509_vfy.c 2014-02-25 00:16:12.484028929 
+0100
+@@ -964,10 +964,11 @@
+       for (i = sk_X509_num(ctx->chain) - 1; i >= 0; i--)
+               {
+               x = sk_X509_value(ctx->chain, i);
+-              /* Mark DigiNotar certificates as revoked, no matter
+-               * where in the chain they are.
++              /* Mark certificates containing the following names as
++               * revoked, no matter where in the chain they are.
+                */
+-              if (x->name && strstr(x->name, "DigiNotar"))
++              if (x->name && (strstr(x->name, "DigiNotar") ||
++                      strstr(x->name, "Digicert Sdn. Bhd.")))
+                       {
+                       ctx->error = X509_V_ERR_CERT_REVOKED;
+                       ctx->error_depth = i;
diff --git 
a/meta/recipes-connectivity/openssl/openssl/debian1.0.2/block_diginotar.patch 
b/meta/recipes-connectivity/openssl/openssl/debian1.0.2/block_diginotar.patch
new file mode 100644
index 0000000..0c1a0b6
--- /dev/null
+++ 
b/meta/recipes-connectivity/openssl/openssl/debian1.0.2/block_diginotar.patch
@@ -0,0 +1,67 @@
+From: Raphael Geissert <geiss...@debian.org>
+Description: make X509_verify_cert indicate that any certificate whose
+ name contains "DigiNotar" is revoked.
+Forwarded: not-needed
+Origin: vendor
+Last-Update: 2011-09-08
+Bug: http://bugs.debian.org/639744
+Reviewed-by: Kurt Roeckx <k...@roeckx.be>
+Reviewed-by: Dr Stephen N Henson <shen...@drh-consultancy.co.uk>
+
+This is not meant as final patch.  
+ 
+Upstream-Status: Backport [debian]
+
+
+Index: openssl-1.0.2/crypto/x509/x509_vfy.c
+===================================================================
+--- openssl-1.0.2.orig/crypto/x509/x509_vfy.c
++++ openssl-1.0.2/crypto/x509/x509_vfy.c
+@@ -119,6 +119,7 @@ static int check_trust(X509_STORE_CTX *c
+ static int check_revocation(X509_STORE_CTX *ctx);
+ static int check_cert(X509_STORE_CTX *ctx);
+ static int check_policy(X509_STORE_CTX *ctx);
++static int check_ca_blacklist(X509_STORE_CTX *ctx);
+ 
+ static int get_crl_score(X509_STORE_CTX *ctx, X509 **pissuer,
+                          unsigned int *preasons, X509_CRL *crl, X509 *x);
+@@ -438,6 +439,9 @@ int X509_verify_cert(X509_STORE_CTX *ctx
+     if (!ok)
+         goto end;
+ 
++      ok = check_ca_blacklist(ctx);
++      if(!ok) goto end;
++
+ #ifndef OPENSSL_NO_RFC3779
+     /* RFC 3779 path validation, now that CRL check has been done */
+     ok = v3_asid_validate_path(ctx);
+@@ -938,6 +942,29 @@ static int check_crl_time(X509_STORE_CTX
+     return 1;
+ }
+ 
++static int check_ca_blacklist(X509_STORE_CTX *ctx)
++      {
++      X509 *x;
++      int i;
++      /* Check all certificates against the blacklist */
++      for (i = sk_X509_num(ctx->chain) - 1; i >= 0; i--)
++              {
++              x = sk_X509_value(ctx->chain, i);
++              /* Mark DigiNotar certificates as revoked, no matter
++               * where in the chain they are.
++               */
++              if (x->name && strstr(x->name, "DigiNotar"))
++                      {
++                      ctx->error = X509_V_ERR_CERT_REVOKED;
++                      ctx->error_depth = i;
++                      ctx->current_cert = x;
++                      if (!ctx->verify_cb(0,ctx))
++                              return 0;
++                      }
++              }
++      return 1;
++      }
++
+ static int get_crl_sk(X509_STORE_CTX *ctx, X509_CRL **pcrl, X509_CRL **pdcrl,
+                       X509 **pissuer, int *pscore, unsigned int *preasons,
+                       STACK_OF(X509_CRL) *crls)
diff --git 
a/meta/recipes-connectivity/openssl/openssl/debian1.0.2/padlock_conf.patch 
b/meta/recipes-connectivity/openssl/openssl/debian1.0.2/padlock_conf.patch
new file mode 100644
index 0000000..61dcf45
--- /dev/null
+++ b/meta/recipes-connectivity/openssl/openssl/debian1.0.2/padlock_conf.patch
@@ -0,0 +1,31 @@
+ 
+Upstream-Status: Backport [debian]
+
+--- openssl/apps/openssl.cnf.orig      2012-06-06 00:45:56.000000000 +0200
++++ openssl/apps/openssl.cnf   2012-06-06 00:46:46.000000000 +0200
+@@ -19,6 +19,8 @@
+ # (Alternatively, use a configuration file that has only
+ # X.509v3 extensions in its main [= default] section.)
+ 
++openssl_conf = openssl_def
++
+ [ new_oids ]
+ 
+ # We can add new OIDs in here for use by 'ca', 'req' and 'ts'.
+@@ -348,3 +350,16 @@
+                               # (optional, default: no)
+ ess_cert_id_chain     = no    # Must the ESS cert id chain be included?
+                               # (optional, default: no)
++
++[openssl_def]
++engines = engine_section
++
++[engine_section]
++padlock = padlock_section
++
++[padlock_section]
++soft_load=1
++init=1
++default_algorithms = ALL
++dynamic_path=padlock
++
diff --git 
a/meta/recipes-connectivity/openssl/openssl/engines-install-in-libdir-ssl.patch 
b/meta/recipes-connectivity/openssl/openssl/engines-install-in-libdir-ssl.patch
index d8a6f1a..a574648 100644
--- 
a/meta/recipes-connectivity/openssl/openssl/engines-install-in-libdir-ssl.patch
+++ 
b/meta/recipes-connectivity/openssl/openssl/engines-install-in-libdir-ssl.patch
@@ -1,11 +1,11 @@
 Upstream-Status: Inappropriate [configuration]
 
 
-Index: openssl-1.0.0/engines/Makefile
+Index: openssl-1.0.2/engines/Makefile
 ===================================================================
---- openssl-1.0.0.orig/engines/Makefile
-+++ openssl-1.0.0/engines/Makefile
-@@ -107,7 +107,7 @@
+--- openssl-1.0.2.orig/engines/Makefile
++++ openssl-1.0.2/engines/Makefile
+@@ -107,13 +107,13 @@ install:
        @[ -n "$(INSTALLTOP)" ] # should be set by top Makefile...
        @if [ -n "$(SHARED_LIBS)" ]; then \
                set -e; \
@@ -14,16 +14,19 @@ Index: openssl-1.0.0/engines/Makefile
                for l in $(LIBNAMES); do \
                        ( echo installing $$l; \
                          pfx=lib; \
-@@ -119,13 +119,13 @@
+                         if expr "$(PLATFORM)" : "Cygwin" >/dev/null; then \
+                               sfx=".so"; \
+-                              cp cyg$$l.dll 
$(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$$pfx$$l$$sfx.new; \
++                              cp cyg$$l.dll 
$(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines/$$pfx$$l$$sfx.new; \
+                         else \
+                               case "$(CFLAGS)" in \
+                               *DSO_BEOS*)     sfx=".so";;     \
+@@ -122,10 +122,10 @@ install:
                                *DSO_WIN32*)    sfx="eay32.dll"; pfx=;; \
                                *)              sfx=".bad";;    \
                                esac; \
 -                              cp $$pfx$$l$$sfx 
$(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$$pfx$$l$$sfx.new; \
 +                              cp $$pfx$$l$$sfx 
$(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines/$$pfx$$l$$sfx.new; \
-                         else \
-                               sfx=".so"; \
--                              cp cyg$$l.dll 
$(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$$pfx$$l$$sfx.new; \
-+                              cp cyg$$l.dll 
$(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines/$$pfx$$l$$sfx.new; \
                          fi; \
 -                        chmod 555 
$(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$$pfx$$l$$sfx.new; \
 -                        mv -f 
$(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$$pfx$$l$$sfx.new 
$(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$$pfx$$l$$sfx ); \
@@ -32,20 +35,25 @@ Index: openssl-1.0.0/engines/Makefile
                done; \
        fi
        @target=install; $(RECURSIVE_MAKE)
-Index: openssl-1.0.0/engines/ccgost/Makefile
+Index: openssl-1.0.2/engines/ccgost/Makefile
 ===================================================================
---- openssl-1.0.0.orig/engines/ccgost/Makefile
-+++ openssl-1.0.0/engines/ccgost/Makefile
-@@ -53,13 +53,13 @@
+--- openssl-1.0.2.orig/engines/ccgost/Makefile
++++ openssl-1.0.2/engines/ccgost/Makefile
+@@ -47,7 +47,7 @@ install:
+               pfx=lib; \
+               if expr "$(PLATFORM)" : "Cygwin" >/dev/null; then \
+                       sfx=".so"; \
+-                      cp cyg$(LIBNAME).dll 
$(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$${pfx}$(LIBNAME)$$sfx.new; \
++                      cp cyg$(LIBNAME).dll 
$(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines/$${pfx}$(LIBNAME)$$sfx.new;
 \
+               else \
+                       case "$(CFLAGS)" in \
+                       *DSO_BEOS*) sfx=".so";; \
+@@ -56,10 +56,10 @@ install:
                        *DSO_WIN32*) sfx="eay32.dll"; pfx=;; \
                        *) sfx=".bad";; \
                        esac; \
 -                      cp $${pfx}$(LIBNAME)$$sfx 
$(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$${pfx}$(LIBNAME)$$sfx.new; \
 +                      cp $${pfx}$(LIBNAME)$$sfx 
$(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines/$${pfx}$(LIBNAME)$$sfx.new;
 \
-               else \
-                       sfx=".so"; \
--                      cp cyg$(LIBNAME).dll 
$(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$${pfx}$(LIBNAME)$$sfx.new; \
-+                      cp cyg$(LIBNAME).dll 
$(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines/$${pfx}$(LIBNAME)$$sfx.new;
 \
                fi; \
 -              chmod 555 
$(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$${pfx}$(LIBNAME)$$sfx.new; \
 -              mv -f 
$(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$${pfx}$(LIBNAME)$$sfx.new 
$(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$${pfx}$(LIBNAME)$$sfx; \
diff --git 
a/meta/recipes-connectivity/openssl/openssl/fix-cipher-des-ede3-cfb1.patch 
b/meta/recipes-connectivity/openssl/openssl/fix-cipher-des-ede3-cfb1.patch
index f0e1778..06d1ea6 100644
--- a/meta/recipes-connectivity/openssl/openssl/fix-cipher-des-ede3-cfb1.patch
+++ b/meta/recipes-connectivity/openssl/openssl/fix-cipher-des-ede3-cfb1.patch
@@ -6,17 +6,16 @@ http://rt.openssl.org/Ticket/Display.html?id=2867
 
 Signed-Off-By: Muhammad Shakeel <muhammad_shak...@mentor.com>
 
-diff --git a/crypto/evp/e_des3.c b/crypto/evp/e_des3.c
-index 3232cfe..df84922 100644
+Index: openssl-1.0.2/crypto/evp/e_des3.c
 ===================================================================
---- a/crypto/evp/e_des3.c
-+++ b/crypto/evp/e_des3.c
-@@ -173,7 +173,7 @@ static int des_ede3_cfb1_cipher(EVP_CIPHER_CTX *ctx, 
unsigned char *out,
+--- openssl-1.0.2.orig/crypto/evp/e_des3.c
++++ openssl-1.0.2/crypto/evp/e_des3.c
+@@ -211,7 +211,7 @@ static int des_ede3_cfb1_cipher(EVP_CIPH
      size_t n;
-     unsigned char c[1],d[1];
+     unsigned char c[1], d[1];
  
--    for(n=0 ; n < inl ; ++n)
-+    for(n=0 ; n < inl*8 ; ++n)
-       {
-       c[0]=(in[n/8]&(1 << (7-n%8))) ? 0x80 : 0;
-       DES_ede3_cfb_encrypt(c,d,1,1,
+-    for (n = 0; n < inl; ++n) {
++    for (n = 0; n * 8 < inl; ++n) {
+         c[0] = (in[n / 8] & (1 << (7 - n % 8))) ? 0x80 : 0;
+         DES_ede3_cfb_encrypt(c, d, 1, 1,
+                              &data(ctx)->ks1, &data(ctx)->ks2,
diff --git 
a/meta/recipes-connectivity/openssl/openssl/initial-aarch64-bits.patch 
b/meta/recipes-connectivity/openssl/openssl/initial-aarch64-bits.patch
deleted file mode 100644
index 770097d..0000000
--- a/meta/recipes-connectivity/openssl/openssl/initial-aarch64-bits.patch
+++ /dev/null
@@ -1,120 +0,0 @@
-From: Andy Polyakov <ap...@openssl.org>
-Date: Sun, 13 Oct 2013 17:15:15 +0000 (+0200)
-Subject: Initial aarch64 bits.
-X-Git-Url: 
http://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff_plain;h=039081b80977e2a5de84e1f88f8b4d025b559956
-
-Initial aarch64 bits.
-Upstream-Status: backport (will be included in 1.0.2)
----
- crypto/bn/bn_lcl.h       |    9 +++++++++
- crypto/md32_common.h     |   18 ++++++++++++++++++
- crypto/modes/modes_lcl.h |    8 ++++++++
- crypto/sha/sha512.c      |   13 +++++++++++++
- 4 files changed, 48 insertions(+)
-
-Index: openssl-1.0.1f/crypto/bn/bn_lcl.h
-===================================================================
---- openssl-1.0.1f.orig/crypto/bn/bn_lcl.h     2014-01-06 15:47:42.000000000 
+0200
-+++ openssl-1.0.1f/crypto/bn/bn_lcl.h  2014-02-28 10:37:55.495979037 +0200
-@@ -300,6 +300,15 @@
-            : "r"(a), "r"(b));
- #    endif
- #  endif
-+# elif defined(__aarch64__) && defined(SIXTY_FOUR_BIT_LONG)
-+#  if defined(__GNUC__) && __GNUC__>=2
-+#   define BN_UMULT_HIGH(a,b)  ({  \
-+   register BN_ULONG ret;      \
-+   asm ("umulh %0,%1,%2"   \
-+        : "=r"(ret)        \
-+        : "r"(a), "r"(b));     \
-+   ret;            })
-+#  endif
- # endif               /* cpu */
- #endif                /* OPENSSL_NO_ASM */
- 
-Index: openssl-1.0.1f/crypto/md32_common.h
-===================================================================
---- openssl-1.0.1f.orig/crypto/md32_common.h   2014-01-06 15:47:42.000000000 
+0200
-+++ openssl-1.0.1f/crypto/md32_common.h        2014-02-28 10:39:21.751979107 
+0200
-@@ -213,6 +213,24 @@
-                                  asm ("bswapl %0":"=r"(r):"0"(r));    \
-                                  *((unsigned int *)(c))=r; (c)+=4; r; })
- #   endif
-+#  elif defined(__aarch64__)
-+#   if defined(__BYTE_ORDER__)
-+#    if defined(__ORDER_LITTLE_ENDIAN__) && 
__BYTE_ORDER__==__ORDER_LITTLE_ENDIAN__
-+#     define HOST_c2l(c,l) ({ unsigned int r;      \
-+                  asm ("rev    %w0,%w1"    \
-+                   :"=r"(r)        \
-+                   :"r"(*((const unsigned int *)(c))));\
-+                  (c)+=4; (l)=r;       })
-+#     define HOST_l2c(l,c) ({ unsigned int r;      \
-+                  asm ("rev    %w0,%w1"    \
-+                   :"=r"(r)        \
-+                   :"r"((unsigned int)(l)));\
-+                  *((unsigned int *)(c))=r; (c)+=4; r; })
-+#    elif defined(__ORDER_BIG_ENDIAN__) && 
__BYTE_ORDER__==__ORDER_BIG_ENDIAN__
-+#     define HOST_c2l(c,l) ((l)=*((const unsigned int *)(c)), (c)+=4, (l))
-+#     define HOST_l2c(l,c) (*((unsigned int *)(c))=(l), (c)+=4, (l))
-+#    endif
-+#   endif
- #  endif
- # endif
- #endif
-Index: openssl-1.0.1f/crypto/modes/modes_lcl.h
-===================================================================
---- openssl-1.0.1f.orig/crypto/modes/modes_lcl.h       2014-02-28 
10:47:48.731979011 +0200
-+++ openssl-1.0.1f/crypto/modes/modes_lcl.h    2014-02-28 10:48:49.707978919 
+0200
-@@ -29,6 +29,7 @@
- #if defined(__i386)   || defined(__i386__)    || \
-     defined(__x86_64) || defined(__x86_64__)  || \
-     defined(_M_IX86)  || defined(_M_AMD64)    || defined(_M_X64) || \
-+    defined(__aarch64__)           || \
-     defined(__s390__) || defined(__s390x__)
- # undef STRICT_ALIGNMENT
- #endif
-@@ -50,6 +51,13 @@
- #  define BSWAP4(x) ({        u32 ret=(x);                    \
-                       asm ("bswapl %0"                \
-                       : "+r"(ret));   ret;            })
-+# elif defined(__aarch64__)
-+#  define BSWAP8(x) ({ u64 ret;            \
-+           asm ("rev %0,%1"        \
-+           : "=r"(ret) : "r"(x)); ret; })
-+#  define BSWAP4(x) ({ u32 ret;            \
-+           asm ("rev %w0,%w1"      \
-+           : "=r"(ret) : "r"(x)); ret; })
- # elif (defined(__arm__) || defined(__arm)) && !defined(STRICT_ALIGNMENT)
- #  define BSWAP8(x) ({        u32 lo=(u64)(x)>>32,hi=(x);     \
-                       asm ("rev %0,%0; rev %1,%1"     \
-Index: openssl-1.0.1f/crypto/sha/sha512.c
-===================================================================
---- openssl-1.0.1f.orig/crypto/sha/sha512.c    2014-01-06 15:47:42.000000000 
+0200
-+++ openssl-1.0.1f/crypto/sha/sha512.c 2014-02-28 10:52:14.579978981 +0200
-@@ -55,6 +55,7 @@
- #if defined(__i386) || defined(__i386__) || defined(_M_IX86) || \
-     defined(__x86_64) || defined(_M_AMD64) || defined(_M_X64) || \
-     defined(__s390__) || defined(__s390x__) || \
-+    defined(__aarch64__) || \
-     defined(SHA512_ASM)
- #define SHA512_BLOCK_CAN_MANAGE_UNALIGNED_DATA
- #endif
-@@ -347,6 +348,18 @@
-                               asm ("rotrdi %0,%1,%2"  \
-                               : "=r"(ret)             \
-                               : "r"(a),"K"(n)); ret;  })
-+#  elif defined(__aarch64__)
-+#   define ROTR(a,n)   ({ SHA_LONG64 ret;      \
-+               asm ("ror %0,%1,%2" \
-+               : "=r"(ret)     \
-+               : "r"(a),"I"(n)); ret;  })
-+#   if  defined(__BYTE_ORDER__) && defined(__ORDER_LITTLE_ENDIAN__) && \
-+   __BYTE_ORDER__==__ORDER_LITTLE_ENDIAN__
-+#    define PULL64(x)  ({ SHA_LONG64 ret;          \
-+               asm ("rev   %0,%1"      \
-+               : "=r"(ret)         \
-+               : "r"(*((const SHA_LONG64 *)(&(x))))); ret;     })
-+#   endif
- #  endif
- # elif defined(_MSC_VER)
- #  if defined(_WIN64) /* applies to both IA-64 and AMD64 */
diff --git 
a/meta/recipes-connectivity/openssl/openssl/openssl-avoid-NULL-pointer-dereference-in-EVP_DigestInit_ex.patch
 
b/meta/recipes-connectivity/openssl/openssl/openssl-avoid-NULL-pointer-dereference-in-EVP_DigestInit_ex.patch
index c161e62..cebc8cf 100644
--- 
a/meta/recipes-connectivity/openssl/openssl/openssl-avoid-NULL-pointer-dereference-in-EVP_DigestInit_ex.patch
+++ 
b/meta/recipes-connectivity/openssl/openssl/openssl-avoid-NULL-pointer-dereference-in-EVP_DigestInit_ex.patch
@@ -8,14 +8,16 @@ 
http://www.mail-archive.com/openssl-dev@openssl.org/msg32860.html
 
 Signed-off-by: Xufeng Zhang <xufeng.zh...@windriver.com>
 ---
---- a/crypto/evp/digest.c
-+++ b/crypto/evp/digest.c
-@@ -199,7 +199,7 @@
-               return 0;
-               }
+Index: openssl-1.0.2/crypto/evp/digest.c
+===================================================================
+--- openssl-1.0.2.orig/crypto/evp/digest.c
++++ openssl-1.0.2/crypto/evp/digest.c
+@@ -208,7 +208,7 @@ int EVP_DigestInit_ex(EVP_MD_CTX *ctx, c
+         return 0;
+     }
  #endif
--      if (ctx->digest != type)
-+      if (type && (ctx->digest != type))
-               {
-               if (ctx->digest && ctx->digest->ctx_size)
-                       OPENSSL_free(ctx->md_data);
+-    if (ctx->digest != type) {
++    if (type && (ctx->digest != type)) {
+         if (ctx->digest && ctx->digest->ctx_size)
+             OPENSSL_free(ctx->md_data);
+         ctx->digest = type;
diff --git 
a/meta/recipes-connectivity/openssl/openssl/openssl-avoid-NULL-pointer-dereference-in-dh_pub_encode.patch
 
b/meta/recipes-connectivity/openssl/openssl/openssl-avoid-NULL-pointer-dereference-in-dh_pub_encode.patch
index 3e93fe4..d7047bb 100644
--- 
a/meta/recipes-connectivity/openssl/openssl/openssl-avoid-NULL-pointer-dereference-in-dh_pub_encode.patch
+++ 
b/meta/recipes-connectivity/openssl/openssl/openssl-avoid-NULL-pointer-dereference-in-dh_pub_encode.patch
@@ -8,32 +8,19 @@ 
http://www.mail-archive.com/openssl-dev@openssl.org/msg32859.html
 
 Signed-off-by: Xufeng Zhang <xufeng.zh...@windriver.com>
 ---
---- a/crypto/dh/dh_ameth.c
-+++ b/crypto/dh/dh_ameth.c
-@@ -139,6 +139,12 @@
-       dh=pkey->pkey.dh;
+Index: openssl-1.0.2/crypto/dh/dh_ameth.c
+===================================================================
+--- openssl-1.0.2.orig/crypto/dh/dh_ameth.c
++++ openssl-1.0.2/crypto/dh/dh_ameth.c
+@@ -161,6 +161,11 @@ static int dh_pub_encode(X509_PUBKEY *pk
+     dh = pkey->pkey.dh;
  
-       str = ASN1_STRING_new();
-+      if (!str)
-+              {
-+              DHerr(DH_F_DH_PUB_ENCODE, ERR_R_MALLOC_FAILURE);
-+              goto err;
-+              }
+     str = ASN1_STRING_new();
++    if (!str) {
++        DHerr(DH_F_DH_PUB_ENCODE, ERR_R_MALLOC_FAILURE);
++        goto err;
++    }
 +
-       str->length = i2d_DHparams(dh, &str->data);
-       if (str->length <= 0)
-               {
---- a/crypto/dsa/dsa_ameth.c
-+++ b/crypto/dsa/dsa_ameth.c
-@@ -148,6 +148,11 @@
-               {
-               ASN1_STRING *str;
-               str = ASN1_STRING_new();
-+              if (!str)
-+                      {
-+                      DSAerr(DSA_F_DSA_PUB_ENCODE, ERR_R_MALLOC_FAILURE);
-+                      goto err;
-+                      }
-               str->length = i2d_DSAparams(dsa, &str->data);
-               if (str->length <= 0)
-                       {
+     str->length = i2d_dhp(pkey, dh, &str->data);
+     if (str->length <= 0) {
+         DHerr(DH_F_DH_PUB_ENCODE, ERR_R_MALLOC_FAILURE);
diff --git 
a/meta/recipes-connectivity/openssl/openssl/openssl_fix_for_x32.patch 
b/meta/recipes-connectivity/openssl/openssl/openssl_fix_for_x32.patch
index 93ce034..cbce32c 100644
--- a/meta/recipes-connectivity/openssl/openssl/openssl_fix_for_x32.patch
+++ b/meta/recipes-connectivity/openssl/openssl/openssl_fix_for_x32.patch
@@ -6,64 +6,13 @@ Signed-Off-By: Nitin A Kamble <nitin.a.kam...@intel.com> 
2011/07/13
 
 ported the patch to the 1.0.0e version
 Signed-Off-By: Nitin A Kamble <nitin.a.kam...@intel.com> 2011/12/01
-Index: openssl-1.0.1e/Configure
+Index: openssl-1.0.2/crypto/bn/bn.h
 ===================================================================
---- openssl-1.0.1e.orig/Configure
-+++ openssl-1.0.1e/Configure
-@@ -402,6 +402,7 @@ my %table=(
- "linux-ia64-ecc","ecc:-DL_ENDIAN -DTERMIO -O2 -Wall 
-no_cpprt::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK 
DES_INT:${ia64_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
- "linux-ia64-icc","icc:-DL_ENDIAN -DTERMIO -O2 -Wall 
-no_cpprt::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_RISC1 
DES_INT:${ia64_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
- "linux-x86_64",       "gcc:-m64 -DL_ENDIAN -DTERMIO -O3 
-Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT 
DES_UNROLL:${x86_64_asm}:elf:dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):::64",
-+"linux-x32", "gcc:-mx32 -DL_ENDIAN -DTERMIO -O3 -Wall 
-DMD32_REG_T=int::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT RC4_CHUNK DES_INT 
DES_UNROLL:${x86_64_asm}:elf:dlfcn:linux-shared:-fPIC:-mx32:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):::x32",
- "linux64-s390x",      "gcc:-m64 -DB_ENDIAN -DTERMIO -O3 
-Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT 
DES_UNROLL:${s390x_asm}:64:dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):::64",
- #### So called "highgprs" target for z/Architecture CPUs
- # "Highgprs" is kernel feature first implemented in Linux 2.6.32, see
-Index: openssl-1.0.1e/crypto/bn/asm/x86_64-gcc.c
-===================================================================
---- openssl-1.0.1e.orig/crypto/bn/asm/x86_64-gcc.c
-+++ openssl-1.0.1e/crypto/bn/asm/x86_64-gcc.c
-@@ -55,7 +55,7 @@
-  *    machine.
-  */
- 
--#ifdef _WIN64
-+#if defined _WIN64 || !defined __LP64__
- #define BN_ULONG unsigned long long
- #else
- #define BN_ULONG unsigned long
-@@ -192,9 +192,9 @@ BN_ULONG bn_add_words (BN_ULONG *rp, con
-       asm (
-       "       subq    %2,%2           \n"
-       ".p2align 4                     \n"
--      "1:     movq    (%4,%2,8),%0    \n"
--      "       adcq    (%5,%2,8),%0    \n"
--      "       movq    %0,(%3,%2,8)    \n"
-+      "1:     movq    (%q4,%2,8),%0   \n"
-+      "       adcq    (%q5,%2,8),%0   \n"
-+      "       movq    %0,(%q3,%2,8)   \n"
-       "       leaq    1(%2),%2        \n"
-       "       loop    1b              \n"
-       "       sbbq    %0,%0           \n"
-@@ -215,9 +215,9 @@ BN_ULONG bn_sub_words (BN_ULONG *rp, con
-       asm (
-       "       subq    %2,%2           \n"
-       ".p2align 4                     \n"
--      "1:     movq    (%4,%2,8),%0    \n"
--      "       sbbq    (%5,%2,8),%0    \n"
--      "       movq    %0,(%3,%2,8)    \n"
-+      "1:     movq    (%q4,%2,8),%0   \n"
-+      "       sbbq    (%q5,%2,8),%0   \n"
-+      "       movq    %0,(%q3,%2,8)   \n"
-       "       leaq    1(%2),%2        \n"
-       "       loop    1b              \n"
-       "       sbbq    %0,%0           \n"
-Index: openssl-1.0.1e/crypto/bn/bn.h
-===================================================================
---- openssl-1.0.1e.orig/crypto/bn/bn.h
-+++ openssl-1.0.1e/crypto/bn/bn.h
-@@ -172,6 +172,13 @@ extern "C" {
+--- openssl-1.0.2.orig/crypto/bn/bn.h
++++ openssl-1.0.2/crypto/bn/bn.h
+@@ -173,6 +173,13 @@ extern "C" {
+ #  endif
  # endif
- #endif
  
 +/* Address type.  */
 +#ifdef _WIN64
@@ -72,19 +21,19 @@ Index: openssl-1.0.1e/crypto/bn/bn.h
 +#define BN_ADDR unsigned long
 +#endif
 +
- /* assuming long is 64bit - this is the DEC Alpha
-  * unsigned long long is only 64 bits :-(, don't define
-  * BN_LLONG for the DEC Alpha */
-Index: openssl-1.0.1e/crypto/bn/bn_exp.c
+ /*
+  * assuming long is 64bit - this is the DEC Alpha unsigned long long is only
+  * 64 bits :-(, don't define BN_LLONG for the DEC Alpha
+Index: openssl-1.0.2/crypto/bn/bn_exp.c
 ===================================================================
---- openssl-1.0.1e.orig/crypto/bn/bn_exp.c
-+++ openssl-1.0.1e/crypto/bn/bn_exp.c
-@@ -567,7 +567,7 @@ static int MOD_EXP_CTIME_COPY_FROM_PREBU
- 
- /* Given a pointer value, compute the next address that is a cache line 
multiple. */
+--- openssl-1.0.2.orig/crypto/bn/bn_exp.c
++++ openssl-1.0.2/crypto/bn/bn_exp.c
+@@ -638,7 +638,7 @@ static int MOD_EXP_CTIME_COPY_FROM_PREBU
+  * multiple.
+  */
  #define MOD_EXP_CTIME_ALIGN(x_) \
--      ((unsigned char*)(x_) + (MOD_EXP_CTIME_MIN_CACHE_LINE_WIDTH - 
(((size_t)(x_)) & (MOD_EXP_CTIME_MIN_CACHE_LINE_MASK))))
+-        ((unsigned char*)(x_) + (MOD_EXP_CTIME_MIN_CACHE_LINE_WIDTH - 
(((size_t)(x_)) & (MOD_EXP_CTIME_MIN_CACHE_LINE_MASK))))
 +      ((unsigned char*)(x_) + (MOD_EXP_CTIME_MIN_CACHE_LINE_WIDTH - 
(((BN_ADDR)(x_)) & (MOD_EXP_CTIME_MIN_CACHE_LINE_MASK))))
  
- /* This variant of BN_mod_exp_mont() uses fixed windows and the special
-  * precomputation memory layout to limit data-dependency to a minimum
+ /*
+  * This variant of BN_mod_exp_mont() uses fixed windows and the special
diff --git a/meta/recipes-connectivity/openssl/openssl/ptest-deps.patch 
b/meta/recipes-connectivity/openssl/openssl/ptest-deps.patch
index 527e10c..ef6d179 100644
--- a/meta/recipes-connectivity/openssl/openssl/ptest-deps.patch
+++ b/meta/recipes-connectivity/openssl/openssl/ptest-deps.patch
@@ -10,11 +10,11 @@ Upstream-Status: Inappropriate [config]
 
 Signed-off-by: Paul Eggleton <paul.eggle...@linux.intel.com>
 
-diff --git a/test/Makefile b/test/Makefile
-index e6fcfb4..5ae043b 100644
---- a/test/Makefile
-+++ b/test/Makefile
-@@ -322,11 +322,11 @@ test_cms:
+Index: openssl-1.0.2/test/Makefile
+===================================================================
+--- openssl-1.0.2.orig/test/Makefile
++++ openssl-1.0.2/test/Makefile
+@@ -330,7 +330,7 @@ test_cms: ../apps/openssl$(EXE_EXT) cms-
        @echo "CMS consistency test"
        $(PERL) cms-test.pl
  
@@ -23,8 +23,12 @@ index e6fcfb4..5ae043b 100644
        @echo "Test SRP"
        ../util/shlib_wrap.sh ./srptest
  
+@@ -342,7 +342,7 @@ test_v3name: $(V3NAMETEST)$(EXE_EXT)
+       @echo "Test X509v3_check_*"
+       ../util/shlib_wrap.sh ./$(V3NAMETEST)
+ 
 -test_heartbeat: $(HEARTBEATTEST)$(EXE_EXT)
 +test_heartbeat:
        ../util/shlib_wrap.sh ./$(HEARTBEATTEST)
  
- lint:
+ test_constant_time: $(CONSTTIMETEST)$(EXE_EXT)
diff --git 
a/meta/recipes-connectivity/openssl/openssl/update-version-script-for-1.0.2.patch
 
b/meta/recipes-connectivity/openssl/openssl/update-version-script-for-1.0.2.patch
new file mode 100644
index 0000000..fcfccfa
--- /dev/null
+++ 
b/meta/recipes-connectivity/openssl/openssl/update-version-script-for-1.0.2.patch
@@ -0,0 +1,66 @@
+Index: openssl-1.0.2/openssl.ld
+===================================================================
+--- openssl-1.0.2.orig/openssl.ld
++++ openssl-1.0.2/openssl.ld
+@@ -4618,3 +4618,61 @@ OPENSSL_1.0.1d {
+               CRYPTO_memcmp;
+ } OPENSSL_1.0.1;
+ 
++OPENSSL_1.0.2 {
++      global:
++              ASN1_TIME_diff;
++              CMS_RecipientInfo_get0_pkey_ctx;
++              CMS_RecipientInfo_kari_get0_ctx;
++              CMS_SignerInfo_get0_pkey_ctx;
++              DH_get_1024_160;
++              DH_get_2048_224;
++              DH_get_2048_256;
++              DTLS_client_method;
++              DTLS_server_method;
++              DTLSv1_2_client_method;
++              DTLSv1_2_server_method;
++              EC_curve_nid2nist;
++              EC_curve_nist2nid;
++              EVP_aes_128_cbc_hmac_sha256;
++              EVP_aes_128_wrap;
++              EVP_aes_192_wrap;
++              EVP_aes_256_cbc_hmac_sha256;
++              EVP_aes_256_wrap;
++              EVP_des_ede3_wrap;
++              OCSP_REQ_CTX_http;
++              OCSP_REQ_CTX_new;
++              PEM_write_bio_DHxparams;
++              SSL_CIPHER_find;
++              SSL_CONF_CTX_finish;
++              SSL_CONF_CTX_free;
++              SSL_CONF_CTX_new;
++              SSL_CONF_CTX_set_flags;
++              SSL_CONF_CTX_set_ssl_ctx;
++              SSL_CONF_cmd;
++              SSL_CONF_cmd_argv;
++              SSL_CTX_add_client_custom_ext;
++              SSL_CTX_add_server_custom_ext;
++              SSL_CTX_set_alpn_protos;
++              SSL_CTX_set_alpn_select_cb;
++              SSL_CTX_set_cert_cb;
++              SSL_CTX_use_serverinfo_file;
++              SSL_certs_clear;
++              SSL_check_chain;
++              SSL_get0_alpn_selected;
++              SSL_get_shared_sigalgs;
++              SSL_get_sigalgs;
++              SSL_is_server;
++              X509_CRL_diff;
++              X509_CRL_http_nbio;
++              X509_STORE_set_lookup_crls_cb;
++              X509_VERIFY_PARAM_set1_email;
++              X509_VERIFY_PARAM_set1_host;
++              X509_VERIFY_PARAM_set1_ip_asc;
++              X509_chain_check_suiteb;
++              X509_chain_up_ref;
++              X509_check_email;
++              X509_check_host;
++              X509_check_ip_asc;
++              X509_get_signature_nid;
++              X509_http_nbio;
++} OPENSSL_1.0.1d;
diff --git a/meta/recipes-connectivity/openssl/openssl_1.0.1k.bb 
b/meta/recipes-connectivity/openssl/openssl_1.0.2.bb
similarity index 84%
rename from meta/recipes-connectivity/openssl/openssl_1.0.1k.bb
rename to meta/recipes-connectivity/openssl/openssl_1.0.2.bb
index 16ffc58..79537f9 100644
--- a/meta/recipes-connectivity/openssl/openssl_1.0.1k.bb
+++ b/meta/recipes-connectivity/openssl/openssl_1.0.2.bb
@@ -16,21 +16,22 @@ SRC_URI += "file://configure-targets.patch \
             file://oe-ldflags.patch \
             file://engines-install-in-libdir-ssl.patch \
             file://openssl-fix-link.patch \
-            file://debian/version-script.patch \
-            file://debian/pic.patch \
-            file://debian/c_rehash-compat.patch \
+            file://debian1.0.2/block_diginotar.patch \
+            file://debian1.0.2/block_digicert_malaysia.patch \
+            file://debian1.0.2/padlock_conf.patch \
             file://debian/ca.patch \
-            file://debian/make-targets.patch \
-            file://debian/no-rpath.patch \
+            file://debian/c_rehash-compat.patch \
+            file://debian/debian-targets.patch \
             file://debian/man-dir.patch \
             file://debian/man-section.patch \
+            file://debian/no-rpath.patch \
             file://debian/no-symbolic.patch \
-            file://debian/debian-targets.patch \
+            file://debian/pic.patch \
+            file://debian/version-script.patch \
             file://openssl_fix_for_x32.patch \
             file://fix-cipher-des-ede3-cfb1.patch \
             
file://openssl-avoid-NULL-pointer-dereference-in-EVP_DigestInit_ex.patch \
             
file://openssl-avoid-NULL-pointer-dereference-in-dh_pub_encode.patch \
-            file://initial-aarch64-bits.patch \
             file://find.pl \
             file://openssl-fix-des.pod-error.patch \
             file://Makefiles-ptest.patch \
@@ -38,8 +39,8 @@ SRC_URI += "file://configure-targets.patch \
             file://run-ptest \
            "
 
-SRC_URI[md5sum] = "d4f002bd22a56881340105028842ae1f"
-SRC_URI[sha256sum] = 
"8f9faeaebad088e772f4ef5e38252d472be4d878c6b3a2718c10a4fcebe7a41c"
+SRC_URI[md5sum] = "38373013fc85c790aabf8837969c5eba"
+SRC_URI[sha256sum] = 
"8c48baf3babe0d505d16cfc0cf272589c66d3624264098213db0fb00034728e9"
 
 PACKAGES =+ " \
        ${PN}-engines \
-- 
2.1.0

-- 
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Reply via email to