summaryrefslogtreecommitdiffstats
path: root/recipes-connectivity/openssl/openssl-1.0.0a
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-connectivity/openssl/openssl-1.0.0a')
-rw-r--r--recipes-connectivity/openssl/openssl-1.0.0a/configure-targets.patch25
-rw-r--r--recipes-connectivity/openssl/openssl-1.0.0a/debian.patch515
-rw-r--r--recipes-connectivity/openssl/openssl-1.0.0a/engines-install-in-libdir-ssl.patch53
-rw-r--r--recipes-connectivity/openssl/openssl-1.0.0a/libdeps-first.patch27
-rw-r--r--recipes-connectivity/openssl/openssl-1.0.0a/oe-ldflags.patch22
-rw-r--r--recipes-connectivity/openssl/openssl-1.0.0a/openssl-fix-ssl3_get_key_exchange-double-free.patch12
-rw-r--r--recipes-connectivity/openssl/openssl-1.0.0a/shared-libs.patch48
7 files changed, 702 insertions, 0 deletions
diff --git a/recipes-connectivity/openssl/openssl-1.0.0a/configure-targets.patch b/recipes-connectivity/openssl/openssl-1.0.0a/configure-targets.patch
new file mode 100644
index 0000000000..112732b3fd
--- /dev/null
+++ b/recipes-connectivity/openssl/openssl-1.0.0a/configure-targets.patch
@@ -0,0 +1,25 @@
1
2The number of colons are important :)
3
4
5Index: openssl-1.0.0/Configure
6===================================================================
7--- openssl-1.0.0.orig/Configure 2010-01-19 13:40:54.000000000 -0800
8+++ openssl-1.0.0/Configure 2010-05-26 22:58:01.238104854 -0700
9@@ -380,6 +380,16 @@ my %table=(
10 "linux-alpha-ccc","ccc:-fast -readonly_strings -DL_ENDIAN -DTERMIO::-D_REENTRANT:::SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL:${alpha_asm}",
11 "linux-alpha+bwx-ccc","ccc:-fast -readonly_strings -DL_ENDIAN -DTERMIO::-D_REENTRANT:::SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL:${alpha_asm}",
12
13+ # Linux on ARM
14+"linux-elf-arm","$ENV{'CC'}:-DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
15+"linux-elf-armeb","$ENV{'CC'}:-DB_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
16+"linux-gnueabi-arm","$ENV{'CC'}:-DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
17+"linux-gnueabi-armeb","$ENV{'CC'}:-DB_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
18+"linux-uclibceabi-arm","$ENV{'CC'}:-DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
19+"linux-uclibceabi-armeb","$ENV{'CC'}:-DB_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
20+
21+"linux-avr32","$ENV{'CC'}:-DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).",
22+
23 #### *BSD [do see comment about ${BSDthreads} above!]
24 "BSD-generic32","gcc:-DTERMIOS -O3 -fomit-frame-pointer -Wall::${BSDthreads}:::BN_LLONG RC2_CHAR RC4_INDEX DES_INT DES_UNROLL:${no_asm}:dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
25 "BSD-x86", "gcc:-DL_ENDIAN -DTERMIOS -O3 -fomit-frame-pointer -Wall::${BSDthreads}:::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_asm}:a.out:dlfcn:bsd-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
diff --git a/recipes-connectivity/openssl/openssl-1.0.0a/debian.patch b/recipes-connectivity/openssl/openssl-1.0.0a/debian.patch
new file mode 100644
index 0000000000..1cd6e11966
--- /dev/null
+++ b/recipes-connectivity/openssl/openssl-1.0.0a/debian.patch
@@ -0,0 +1,515 @@
1Index: openssl-1.0.0/Makefile
2===================================================================
3--- openssl-1.0.0.orig/Makefile
4+++ openssl-1.0.0/Makefile
5@@ -26,10 +26,10 @@ HERE=.
6 # for, say, /usr/ and yet have everything installed to /tmp/somedir/usr/.
7 # Normally it is left empty.
8 INSTALL_PREFIX=
9-INSTALLTOP=/usr/local/ssl
10+INSTALLTOP=/usr
11
12 # Do not edit this manually. Use Configure --openssldir=DIR do change this!
13-OPENSSLDIR=/usr/local/ssl
14+OPENSSLDIR=/usr/lib/ssl
15
16 # NO_IDEA - Define to build without the IDEA algorithm
17 # NO_RC4 - Define to build without the RC4 algorithm
18@@ -133,12 +133,13 @@ TESTS = alltests
19
20 MAKEFILE= Makefile
21
22-MANDIR=$(OPENSSLDIR)/man
23+MANDIR=/usr/share/man
24 MAN1=1
25 MAN3=3
26-MANSUFFIX=
27+MANSUFFIX=ssl
28+MANSECTION=SSL
29 HTMLSUFFIX=html
30-HTMLDIR=$(OPENSSLDIR)/html
31+HTMLDIR=/usr/share/doc/openssl/html
32 SHELL=/bin/sh
33
34 TOP= .
35@@ -149,8 +150,8 @@ LIBS= libcrypto.a libssl.a
36 SHARED_CRYPTO=libcrypto$(SHLIB_EXT)
37 SHARED_SSL=libssl$(SHLIB_EXT)
38 SHARED_LIBS=
39-SHARED_LIBS_LINK_EXTS=
40-SHARED_LDFLAGS=
41+SHARED_LIBS_LINK_EXTS=.so
42+SHARED_LDFLAGS=-m64 -Wl,--version-script=openssl.ld
43
44 GENERAL= Makefile
45 BASENAME= openssl
46@@ -324,7 +325,8 @@ libcrypto.pc: Makefile
47 echo 'Description: OpenSSL cryptography library'; \
48 echo 'Version: '$(VERSION); \
49 echo 'Requires: '; \
50- echo 'Libs: -L$${libdir} -lcrypto $(EX_LIBS)'; \
51+ echo 'Libs: -L$${libdir} -lcrypto'; \
52+ echo 'Libs.private: $(EX_LIBS)'; \
53 echo 'Cflags: -I$${includedir} $(KRB5_INCLUDES)' ) > libcrypto.pc
54
55 libssl.pc: Makefile
56@@ -337,7 +339,8 @@ libssl.pc: Makefile
57 echo 'Description: Secure Sockets Layer and cryptography libraries'; \
58 echo 'Version: '$(VERSION); \
59 echo 'Requires: '; \
60- echo 'Libs: -L$${libdir} -lssl -lcrypto $(EX_LIBS)'; \
61+ echo 'Libs: -L$${libdir} -lssl'; \
62+ echo 'Libs.private: -lcrypto $(EX_LIBS)'; \
63 echo 'Cflags: -I$${includedir} $(KRB5_INCLUDES)' ) > libssl.pc
64
65 openssl.pc: Makefile
66@@ -350,7 +353,8 @@ openssl.pc: Makefile
67 echo 'Description: Secure Sockets Layer and cryptography libraries and tools'; \
68 echo 'Version: '$(VERSION); \
69 echo 'Requires: '; \
70- echo 'Libs: -L$${libdir} -lssl -lcrypto $(EX_LIBS)'; \
71+ echo 'Libs: -L$${libdir} -lssl -lcrypto'; \
72+ echo 'Libs.private: $(EX_LIBS)'; \
73 echo 'Cflags: -I$${includedir} $(KRB5_INCLUDES)' ) > openssl.pc
74
75 Makefile: Makefile.org Configure config
76@@ -499,7 +503,7 @@ install: all install_docs install_sw
77 install_sw:
78 @$(PERL) $(TOP)/util/mkdir-p.pl $(INSTALL_PREFIX)$(INSTALLTOP)/bin \
79 $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR) \
80- $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines \
81+ $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines \
82 $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/pkgconfig \
83 $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl \
84 $(INSTALL_PREFIX)$(OPENSSLDIR)/misc \
85@@ -608,7 +612,7 @@ install_docs:
86 echo "installing man$$sec/$$fn.$${sec}$(MANSUFFIX)"; \
87 (cd `$(PERL) util/dirname.pl $$i`; \
88 sh -c "$$pod2man \
89- --section=$$sec --center=OpenSSL \
90+ --section=$${sec}$(MANSECTION) --center=OpenSSL \
91 --release=$(VERSION) `basename $$i`") \
92 > $(INSTALL_PREFIX)$(MANDIR)/man$$sec/$$fn.$${sec}$(MANSUFFIX); \
93 $(PERL) util/extract-names.pl < $$i | \
94@@ -625,7 +629,7 @@ install_docs:
95 echo "installing man$$sec/$$fn.$${sec}$(MANSUFFIX)"; \
96 (cd `$(PERL) util/dirname.pl $$i`; \
97 sh -c "$$pod2man \
98- --section=$$sec --center=OpenSSL \
99+ --section=$${sec}$(MANSECTION) --center=OpenSSL \
100 --release=$(VERSION) `basename $$i`") \
101 > $(INSTALL_PREFIX)$(MANDIR)/man$$sec/$$fn.$${sec}$(MANSUFFIX); \
102 $(PERL) util/extract-names.pl < $$i | \
103Index: openssl-1.0.0/Configure
104===================================================================
105--- openssl-1.0.0.orig/Configure
106+++ openssl-1.0.0/Configure
107@@ -1,4 +1,4 @@
108-:
109+#!/usr/local/bin/perl
110 eval 'exec perl -S $0 ${1+"$@"}'
111 if $running_under_some_shell;
112 ##
113@@ -331,6 +331,44 @@ my %table=(
114 "osf1-alpha-cc", "cc:-std1 -tune host -O4 -readonly_strings::(unknown):::SIXTY_FOUR_BIT_LONG RC4_CHUNK:${alpha_asm}:dlfcn:alpha-osf1-shared:::.so",
115 "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",
116
117+# Debian GNU/* (various architectures)
118+"debian-alpha","gcc:-DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_RISC1 DES_UNROLL:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
119+"debian-alpha-ev4","gcc:-DTERMIO -O3 -Wa,--noexecstack -mcpu=ev4 -g -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_RISC1 DES_UNROLL:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
120+"debian-alpha-ev5","gcc:-DTERMIO -O3 -Wa,--noexecstack -mcpu=ev5 -g -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_RISC1 DES_UNROLL:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
121+"debian-arm","gcc:-DL_ENDIAN -DTERMIO -O2 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1:::::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
122+"debian-armeb","gcc:-DB_ENDIAN -DTERMIO -O2 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1:::::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
123+"debian-armel","gcc:-DL_ENDIAN -DTERMIO -O2 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1:::::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
124+"debian-amd64", "gcc:-m64 -DL_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall -DMD32_REG_T=int::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK RC4_CHAR BF_PTR2 DES_INT DES_UNROLL:${x86_64_asm}:dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
125+"debian-kfreebsd-amd64","gcc:-m64 -DL_ENDIAN -DTERMIOS -O3 -Wa,--noexecstack -Wall -DMD32_REG_T=int::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK BF_PTR2 DES_INT DES_UNROLL:${x86_64_asm}:dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
126+"debian-kfreebsd-i386","gcc:-DL_ENDIAN -DTERMIOS -O3 -Wa,--noexecstack -g -m486 -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
127+"debian-hppa","gcc:-DB_ENDIAN -DTERMIO -O2 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG MD2_CHAR RC4_INDEX:::::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
128+"debian-hurd-i386","gcc:-DL_ENDIAN -DTERMIOS -O3 -Wa,--noexecstack -g -m486 -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
129+"debian-ia64","gcc:-DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK RC4_CHAR:${ia64_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
130+"debian-i386","gcc:-DL_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:::::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
131+"debian-i386-i486","gcc:-DL_ENDIAN -DTERMIO -fexpensive-optimizations -frename-registers -fomit-frame-pointer -O2 -ggdb3 -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
132+"debian-i386-i586","gcc:-DL_ENDIAN -DTERMIO -O3 -march=i586 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
133+"debian-i386-i686/cmov","gcc:-DL_ENDIAN -DTERMIO -O3 -march=i686 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
134+"debian-m68k","gcc:-DB_ENDIAN -DTERMIO -O2 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG MD2_CHAR RC4_INDEX:::::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
135+"debian-mips", "gcc:-DB_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG RC2_CHAR RC4_INDEX DES_INT DES_UNROLL DES_RISC2:::::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
136+"debian-mipsel", "gcc:-DL_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG RC2_CHAR RC4_INDEX DES_INT DES_UNROLL DES_RISC2:::::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
137+"debian-netbsd-i386", "gcc:-DL_ENDIAN -DTERMIOS -O3 -Wa,--noexecstack -g -m486 -Wall::(unknown):::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:::::::::::::::dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
138+"debian-netbsd-m68k", "gcc:-DB_ENDIAN -DTERMIOS -O3 -Wa,--noexecstack -g -Wall::(unknown):::BN_LLONG MD2_CHAR RC4_INDEX DES_UNROLL:::::::::::::::dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
139+"debian-netbsd-sparc", "gcc:-DB_ENDIAN -DTERMIOS -O3 -Wa,--noexecstack -g -mv8 -Wall::(unknown):::BN_LLONG MD2_CHAR RC4_INDEX DES_UNROLL:::::::::::::::dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
140+"debian-openbsd-alpha","gcc:-DTERMIOS -O3 -Wa,--noexecstack -g::(unknown):::SIXTY_FOUR_BIT_LONG DES_INT DES_PTR DES_RISC2:::::::::::::::dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
141+"debian-openbsd-i386", "gcc:-DL_ENDIAN -DTERMIOS -O3 -Wa,--noexecstack -g -m486::(unknown):::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}::::dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
142+"debian-openbsd-mips","gcc:-O2 -Wa,--noexecstack -g -DL_ENDIAN::(unknown)::BN_LLONG MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC2 DES_PTR BF_PTR::::::::::::::::dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
143+"debian-powerpc","gcc:-DB_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_UNROLL DES_RISC2 DES_PTR MD2_CHAR RC4_INDEX::linux_ppc32.o:::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
144+"debian-ppc64","gcc:-m64 -DB_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_RISC1 DES_UNROLL::linux_ppc64.o:::::::::::::dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
145+"debian-s390","gcc:-DB_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG:::::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
146+"debian-sh3", "gcc:-DL_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG:::::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
147+"debian-sh4", "gcc:-DL_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG:::::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
148+"debian-sh3eb", "gcc:-DB_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG:::::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
149+"debian-sh4eb", "gcc:-DB_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG:::::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
150+"debian-m32r","gcc:-DB_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG:::::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
151+"debian-sparc","gcc:-DB_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:::::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
152+"debian-sparc-v8","gcc:-DB_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -mcpu=v8 -g -Wall -DBN_DIV2W::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR::sparcv8.o:des_enc-sparc.o fcrypt_b.o::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
153+"debian-sparc-v9","gcc:-DB_ENDIAN -DTERMIO -O3 -mcpu=v9 -Wa,--noexecstack -Wa,-Av8plus -g -Wall -DULTRASPARC -DBN_DIV2W::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR::sparcv8plus.o:des_enc-sparc.o fcrypt_b.o:::md5-sparcv8plus.o:::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
154+
155 ####
156 #### Variety of LINUX:-)
157 ####
158@@ -529,7 +567,7 @@ my %table=(
159 # Cygwin
160 "Cygwin-pre1.3", "gcc:-DTERMIOS -DL_ENDIAN -fomit-frame-pointer -O3 -m486 -Wall::(unknown):CYGWIN32::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${no_asm}:win32",
161 "Cygwin", "gcc:-DTERMIOS -DL_ENDIAN -fomit-frame-pointer -O3 -march=i486 -Wall:::CYGWIN32::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_asm}:coff:dlfcn:cygwin-shared:-D_WINDLL:-shared:.dll.a",
162-"debug-Cygwin", "gcc:-DTERMIOS -DL_ENDIAN -march=i486 -Wall -DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DOPENSSL_NO_ASM -g -Wformat -Wshadow -Wmissing-prototypes -Wmissing-declarations -Werror:::CYGWIN32:::${no_asm}:dlfcn:cygwin-shared:-D_WINDLL:-shared:.dll.a",
163+-"debug-Cygwin", "gcc:-DTERMIOS -DL_ENDIAN -march=i486 -Wall -DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DOPENSSL_NO_ASM -g -Wformat -Wshadow -Wmissing-prototypes -Wmissing-declarations -Werror:::CYGWIN32:::${no_asm}:dlfcn:cygwin-shared:-D_WINDLL:-shared:.dll.a",
164
165 # NetWare from David Ward (dsward@novell.com)
166 # requires either MetroWerks NLM development tools, or gcc / nlmconv
167@@ -1465,6 +1503,8 @@ if ($strict_warnings)
168 }
169 }
170
171+$shared_ldflag .= " -Wl,--version-script=openssl.ld";
172+
173 open(IN,'<Makefile.org') || die "unable to read Makefile.org:$!\n";
174 unlink("$Makefile.new") || die "unable to remove old $Makefile.new:$!\n" if -e "$Makefile.new";
175 open(OUT,">$Makefile.new") || die "unable to create $Makefile.new:$!\n";
176@@ -1555,7 +1595,8 @@ while (<IN>)
177 elsif ($shared_extension ne "" && $shared_extension =~ /^\.s([ol])\.[^\.]*\.[^\.]*$/)
178 {
179 my $sotmp = $1;
180- s/^SHARED_LIBS_LINK_EXTS=.*/SHARED_LIBS_LINK_EXTS=.s$sotmp.\$(SHLIB_MAJOR) .s$sotmp/;
181+# s/^SHARED_LIBS_LINK_EXTS=.*/SHARED_LIBS_LINK_EXTS=.s$sotmp.\$(SHLIB_MAJOR) .s$sotmp/;
182+ s/^SHARED_LIBS_LINK_EXTS=.*/SHARED_LIBS_LINK_EXTS=.s$sotmp/;
183 }
184 elsif ($shared_extension ne "" && $shared_extension =~ /^\.[^\.]*\.[^\.]*\.dylib$/)
185 {
186@@ -1683,7 +1724,7 @@ while (<IN>)
187 }
188 elsif (/^#define\s+ENGINESDIR/)
189 {
190- my $foo = "$prefix/$libdir/engines";
191+ my $foo = "$prefix/lib/ssl/engines";
192 $foo =~ s/\\/\\\\/g;
193 print OUT "#define ENGINESDIR \"$foo\"\n";
194 }
195Index: openssl-1.0.0/config
196===================================================================
197--- openssl-1.0.0.orig/config
198+++ openssl-1.0.0/config
199@@ -170,8 +170,8 @@ case "${SYSTEM}:${RELEASE}:${VERSION}:${
200 echo "${MACHINE}-whatever-linux1"; exit 0
201 ;;
202
203- GNU*)
204- echo "hurd-x86"; exit 0;
205+ GNU:*|GNU/*:*)
206+ echo "${MACHINE}-gnuish"; exit 0;
207 ;;
208
209 LynxOS:*)
210Index: openssl-1.0.0/Makefile.org
211===================================================================
212--- openssl-1.0.0.orig/Makefile.org
213+++ openssl-1.0.0/Makefile.org
214@@ -131,12 +131,13 @@ TESTS = alltests
215
216 MAKEFILE= Makefile
217
218-MANDIR=$(OPENSSLDIR)/man
219+MANDIR=/usr/share/man
220 MAN1=1
221 MAN3=3
222-MANSUFFIX=
223+MANSUFFIX=ssl
224+MANSECTION=SSL
225 HTMLSUFFIX=html
226-HTMLDIR=$(OPENSSLDIR)/html
227+HTMLDIR=/usr/share/doc/openssl/html
228 SHELL=/bin/sh
229
230 TOP= .
231@@ -322,7 +323,8 @@ libcrypto.pc: Makefile
232 echo 'Description: OpenSSL cryptography library'; \
233 echo 'Version: '$(VERSION); \
234 echo 'Requires: '; \
235- echo 'Libs: -L$${libdir} -lcrypto $(EX_LIBS)'; \
236+ echo 'Libs: -L$${libdir} -lcrypto'; \
237+ echo 'Libs.private: $(EX_LIBS)'; \
238 echo 'Cflags: -I$${includedir} $(KRB5_INCLUDES)' ) > libcrypto.pc
239
240 libssl.pc: Makefile
241@@ -335,7 +337,8 @@ libssl.pc: Makefile
242 echo 'Description: Secure Sockets Layer and cryptography libraries'; \
243 echo 'Version: '$(VERSION); \
244 echo 'Requires: '; \
245- echo 'Libs: -L$${libdir} -lssl -lcrypto $(EX_LIBS)'; \
246+ echo 'Libs: -L$${libdir} -lssl'; \
247+ echo 'Libs.private: -lcrypto $(EX_LIBS)'; \
248 echo 'Cflags: -I$${includedir} $(KRB5_INCLUDES)' ) > libssl.pc
249
250 openssl.pc: Makefile
251@@ -348,7 +351,8 @@ openssl.pc: Makefile
252 echo 'Description: Secure Sockets Layer and cryptography libraries and tools'; \
253 echo 'Version: '$(VERSION); \
254 echo 'Requires: '; \
255- echo 'Libs: -L$${libdir} -lssl -lcrypto $(EX_LIBS)'; \
256+ echo 'Libs: -L$${libdir} -lssl -lcrypto'; \
257+ echo 'Libs.private: $(EX_LIBS)'; \
258 echo 'Cflags: -I$${includedir} $(KRB5_INCLUDES)' ) > openssl.pc
259
260 Makefile: Makefile.org Configure config
261@@ -497,7 +501,7 @@ install: all install_docs install_sw
262 install_sw:
263 @$(PERL) $(TOP)/util/mkdir-p.pl $(INSTALL_PREFIX)$(INSTALLTOP)/bin \
264 $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR) \
265- $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines \
266+ $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines \
267 $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/pkgconfig \
268 $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl \
269 $(INSTALL_PREFIX)$(OPENSSLDIR)/misc \
270@@ -606,7 +610,7 @@ install_docs:
271 echo "installing man$$sec/$$fn.$${sec}$(MANSUFFIX)"; \
272 (cd `$(PERL) util/dirname.pl $$i`; \
273 sh -c "$$pod2man \
274- --section=$$sec --center=OpenSSL \
275+ --section=$${sec}$(MANSECTION) --center=OpenSSL \
276 --release=$(VERSION) `basename $$i`") \
277 > $(INSTALL_PREFIX)$(MANDIR)/man$$sec/$$fn.$${sec}$(MANSUFFIX); \
278 $(PERL) util/extract-names.pl < $$i | \
279@@ -623,7 +627,7 @@ install_docs:
280 echo "installing man$$sec/$$fn.$${sec}$(MANSUFFIX)"; \
281 (cd `$(PERL) util/dirname.pl $$i`; \
282 sh -c "$$pod2man \
283- --section=$$sec --center=OpenSSL \
284+ --section=$${sec}$(MANSECTION) --center=OpenSSL \
285 --release=$(VERSION) `basename $$i`") \
286 > $(INSTALL_PREFIX)$(MANDIR)/man$$sec/$$fn.$${sec}$(MANSUFFIX); \
287 $(PERL) util/extract-names.pl < $$i | \
288Index: openssl-1.0.0/openssl.ld
289===================================================================
290--- /dev/null
291+++ openssl-1.0.0/openssl.ld
292@@ -0,0 +1,5 @@
293+OPENSSL_0.9.8 {
294+ global:
295+ *;
296+};
297+
298Index: openssl-1.0.0/engines/openssl.ld
299===================================================================
300--- /dev/null
301+++ openssl-1.0.0/engines/openssl.ld
302@@ -0,0 +1,5 @@
303+OPENSSL_0.9.8 {
304+ global:
305+ *;
306+};
307+
308Index: openssl-1.0.0/doc/Makefile
309===================================================================
310--- /dev/null
311+++ openssl-1.0.0/doc/Makefile
312@@ -0,0 +1,40 @@
313+VERSION =
314+
315+#PODS = $(wildcard *.pod)
316+#MANS = $(addsuffix .man, $(basename $(PODS)))
317+
318+MANS = openssl.1 ssl.3 crypto.3
319+
320+P2M = pod2man --center='OpenSSL Documentation' --release="OpenSSL $(VERSION)"
321+
322+all: manpages
323+
324+.PHONY: manpages
325+
326+manpages: openssl.1 crypto.3 ssl.3
327+
328+openssl.1:
329+ $(P2M) --section=1 openssl.pod > openssl.1
330+
331+crypto.3:
332+ $(P2M) --section=3 crypto.pod > crypto.3
333+
334+ssl.3:
335+ $(P2M) --section=3 ssl.pod > ssl.3
336+
337+.PHONY: install
338+install:
339+ mkdir -p $(INSTALL_PREFIX)$(INSTALLTOP)/share/man/man1
340+ mkdir -p $(INSTALL_PREFIX)$(INSTALLTOP)/share/man/man3
341+ install -m 644 -p openssl.1 $(INSTALL_PREFIX)$(INSTALLTOP)/share/man/man1
342+ install -m 644 -p crypto.3 $(INSTALL_PREFIX)$(INSTALLTOP)/share/man/man3
343+ install -m 644 -p ssl.3 $(INSTALL_PREFIX)$(INSTALLTOP)/share/man/man3
344+ rm -f $(MANS)
345+
346+.PHONY: clean
347+clean:
348+ rm -f $(MANS)
349+
350+.PHONY: realclean
351+realclean:
352+ -$(MAKE) clean
353Index: openssl-1.0.0/doc/apps/c_rehash.pod
354===================================================================
355--- /dev/null
356+++ openssl-1.0.0/doc/apps/c_rehash.pod
357@@ -0,0 +1,55 @@
358+
359+=pod
360+
361+=head1 NAME
362+
363+c_rehash - Create symbolic links to files named by the hash values
364+
365+=head1 SYNOPSIS
366+
367+B<c_rehash>
368+[directory] ...
369+
370+=head1 DESCRIPTION
371+
372+c_rehash scans directories and takes a hash value of each .pem and .crt file in the directory. It then creates symbolic links for each of the files named by the hash value. This is useful as many programs require directories to be set up like this in order to find the certificates they require.
373+
374+If any directories are named on the command line then these directories are processed in turn. If not then and the environment variable SSL_CERT_DIR is defined then that is consulted. This variable should be a colon (:) separated list of directories, all of which will be processed. If neither of these conditions are true then /usr/lib/ssl/certs is processed.
375+
376+For each directory that is to be processed he user must have write permissions on the directory, if they do not then nothing will be printed for that directory.
377+
378+Note that this program deletes all the symbolic links that look like ones that it creates before processing a directory. Beware that if you run the program on a directory that contains symbolic links for other purposes that are named in the same format as those created by this program they will be lost.
379+
380+The hashes for certificate files are of the form <hash>.<n> where n is an integer. If the hash value already exists then n will be incremented, unless the file is a duplicate. Duplicates are detected using the fingerprint of the certificate. A warning will be printed if a duplicate is detected. The hashes for CRL files are of the form <hash>.r<n> and have the same behavior.
381+
382+The program will also warn if there are files with extension .pem which are not certificate or CRL files.
383+
384+The program uses the openssl program to compute the hashes and fingerprints. It expects the executable to be named openssl and be on the PATH, or in the /usr/lib/ssl/bin directory. If the OPENSSL environment variable is defined then this is used instead as the executable that provides the hashes and fingerprints. When called as $OPENSSL x509 -hash -fingerprint -noout -in $file it must output the hash of $file on the first line followed by the fingerprint on the second line, optionally prefixed with some text and an equals sign (=).
385+
386+=head1 OPTIONS
387+
388+None
389+
390+=head1 ENVIRONMENT
391+
392+=over 4
393+
394+=item B<OPENSSL>
395+
396+The name (and path) of an executable to use to generate hashes and fingerprints (see above).
397+
398+=item B<SSL_CERT_DIR>
399+
400+Colon separated list of directories to operate on. Ignored if directories are listed on the command line.
401+
402+=head1 SEE ALSO
403+
404+L<openssl(1)|openssl(1)>, L<x509(1)|x509(1)>
405+
406+=back
407+
408+=head1 BUGS
409+
410+No known bugs
411+
412+=cut
413Index: openssl-1.0.0/crypto/opensslconf.h
414===================================================================
415--- openssl-1.0.0.orig/crypto/opensslconf.h
416+++ openssl-1.0.0/crypto/opensslconf.h
417@@ -11,6 +11,9 @@
418 #ifndef OPENSSL_NO_JPAKE
419 # define OPENSSL_NO_JPAKE
420 #endif
421+#ifndef OPENSSL_NO_IDEA
422+# define OPENSSL_NO_IDEA
423+#endif
424 #ifndef OPENSSL_NO_KRB5
425 # define OPENSSL_NO_KRB5
426 #endif
427@@ -44,6 +47,9 @@
428 # if defined(OPENSSL_NO_JPAKE) && !defined(NO_JPAKE)
429 # define NO_JPAKE
430 # endif
431+# if defined(OPENSSL_NO_IDEA) && !defined(NO_IDEA)
432+# define NO_IDEA
433+# endif
434 # if defined(OPENSSL_NO_KRB5) && !defined(NO_KRB5)
435 # define NO_KRB5
436 # endif
437@@ -68,8 +74,8 @@
438
439 #if !(defined(VMS) || defined(__VMS)) /* VMS uses logical names instead */
440 #if defined(HEADER_CRYPTLIB_H) && !defined(OPENSSLDIR)
441-#define ENGINESDIR "/usr/local/ssl/lib/engines"
442-#define OPENSSLDIR "/usr/local/ssl"
443+#define ENGINESDIR "/usr/lib/ssl/engines"
444+#define OPENSSLDIR "/usr/lib/ssl"
445 #endif
446 #endif
447
448@@ -100,14 +106,14 @@
449 * - Intel P6 because partial register stalls are very expensive;
450 * - elder Alpha because it lacks byte load/store instructions;
451 */
452-#define RC4_INT unsigned int
453+#define RC4_INT unsigned char
454 #endif
455 #if !defined(RC4_CHUNK)
456 /*
457 * This enables code handling data aligned at natural CPU word
458 * boundary. See crypto/rc4/rc4_enc.c for further details.
459 */
460-#undef RC4_CHUNK
461+#define RC4_CHUNK unsigned long
462 #endif
463 #endif
464
465@@ -115,7 +121,7 @@
466 /* If this is set to 'unsigned int' on a DEC Alpha, this gives about a
467 * %20 speed up (longs are 8 bytes, int's are 4). */
468 #ifndef DES_LONG
469-#define DES_LONG unsigned long
470+#define DES_LONG unsigned int
471 #endif
472 #endif
473
474@@ -126,9 +132,9 @@
475 /* Should we define BN_DIV2W here? */
476
477 /* Only one for the following should be defined */
478-#undef SIXTY_FOUR_BIT_LONG
479+#define SIXTY_FOUR_BIT_LONG
480 #undef SIXTY_FOUR_BIT
481-#define THIRTY_TWO_BIT
482+#undef THIRTY_TWO_BIT
483 #endif
484
485 #if defined(HEADER_RC4_LOCL_H) && !defined(CONFIG_HEADER_RC4_LOCL_H)
486@@ -140,7 +146,7 @@
487
488 #if defined(HEADER_BF_LOCL_H) && !defined(CONFIG_HEADER_BF_LOCL_H)
489 #define CONFIG_HEADER_BF_LOCL_H
490-#undef BF_PTR
491+#define BF_PTR2
492 #endif /* HEADER_BF_LOCL_H */
493
494 #if defined(HEADER_DES_LOCL_H) && !defined(CONFIG_HEADER_DES_LOCL_H)
495@@ -170,7 +176,7 @@ YOU SHOULD NOT HAVE BOTH DES_RISC1 AND D
496 /* Unroll the inner loop, this sometimes helps, sometimes hinders.
497 * Very mucy CPU dependant */
498 #ifndef DES_UNROLL
499-#undef DES_UNROLL
500+#define DES_UNROLL
501 #endif
502
503 /* These default values were supplied by
504Index: openssl-1.0.0/crypto/sha/sha.h
505===================================================================
506--- openssl-1.0.0.orig/crypto/sha/sha.h
507+++ openssl-1.0.0/crypto/sha/sha.h
508@@ -59,6 +59,7 @@
509 #ifndef HEADER_SHA_H
510 #define HEADER_SHA_H
511
512+#include <stddef.h>
513 #include <openssl/e_os2.h>
514 #include <stddef.h>
515
diff --git a/recipes-connectivity/openssl/openssl-1.0.0a/engines-install-in-libdir-ssl.patch b/recipes-connectivity/openssl/openssl-1.0.0a/engines-install-in-libdir-ssl.patch
new file mode 100644
index 0000000000..949d6ad8c4
--- /dev/null
+++ b/recipes-connectivity/openssl/openssl-1.0.0a/engines-install-in-libdir-ssl.patch
@@ -0,0 +1,53 @@
1Index: openssl-1.0.0/engines/Makefile
2===================================================================
3--- openssl-1.0.0.orig/engines/Makefile
4+++ openssl-1.0.0/engines/Makefile
5@@ -107,7 +107,7 @@
6 @[ -n "$(INSTALLTOP)" ] # should be set by top Makefile...
7 @if [ -n "$(SHARED_LIBS)" ]; then \
8 set -e; \
9- $(PERL) $(TOP)/util/mkdir-p.pl $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines; \
10+ $(PERL) $(TOP)/util/mkdir-p.pl $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines; \
11 for l in $(LIBNAMES); do \
12 ( echo installing $$l; \
13 pfx=lib; \
14@@ -119,13 +119,13 @@
15 *DSO_WIN32*) sfx="eay32.dll"; pfx=;; \
16 *) sfx=".bad";; \
17 esac; \
18- cp $$pfx$$l$$sfx $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$$pfx$$l$$sfx.new; \
19+ cp $$pfx$$l$$sfx $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines/$$pfx$$l$$sfx.new; \
20 else \
21 sfx=".so"; \
22- cp cyg$$l.dll $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$$pfx$$l$$sfx.new; \
23+ cp cyg$$l.dll $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines/$$pfx$$l$$sfx.new; \
24 fi; \
25- chmod 555 $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$$pfx$$l$$sfx.new; \
26- mv -f $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$$pfx$$l$$sfx.new $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$$pfx$$l$$sfx ); \
27+ chmod 555 $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines/$$pfx$$l$$sfx.new; \
28+ mv -f $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines/$$pfx$$l$$sfx.new $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines/$$pfx$$l$$sfx ); \
29 done; \
30 fi
31 @target=install; $(RECURSIVE_MAKE)
32Index: openssl-1.0.0/engines/ccgost/Makefile
33===================================================================
34--- openssl-1.0.0.orig/engines/ccgost/Makefile
35+++ openssl-1.0.0/engines/ccgost/Makefile
36@@ -53,13 +53,13 @@
37 *DSO_WIN32*) sfx="eay32.dll"; pfx=;; \
38 *) sfx=".bad";; \
39 esac; \
40- cp $${pfx}$(LIBNAME)$$sfx $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$${pfx}$(LIBNAME)$$sfx.new; \
41+ cp $${pfx}$(LIBNAME)$$sfx $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines/$${pfx}$(LIBNAME)$$sfx.new; \
42 else \
43 sfx=".so"; \
44- cp cyg$(LIBNAME).dll $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$${pfx}$(LIBNAME)$$sfx.new; \
45+ cp cyg$(LIBNAME).dll $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines/$${pfx}$(LIBNAME)$$sfx.new; \
46 fi; \
47- chmod 555 $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$${pfx}$(LIBNAME)$$sfx.new; \
48- mv -f $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$${pfx}$(LIBNAME)$$sfx.new $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$${pfx}$(LIBNAME)$$sfx; \
49+ chmod 555 $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines/$${pfx}$(LIBNAME)$$sfx.new; \
50+ mv -f $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines/$${pfx}$(LIBNAME)$$sfx.new $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines/$${pfx}$(LIBNAME)$$sfx; \
51 fi
52
53 links:
diff --git a/recipes-connectivity/openssl/openssl-1.0.0a/libdeps-first.patch b/recipes-connectivity/openssl/openssl-1.0.0a/libdeps-first.patch
new file mode 100644
index 0000000000..1fda69ba93
--- /dev/null
+++ b/recipes-connectivity/openssl/openssl-1.0.0a/libdeps-first.patch
@@ -0,0 +1,27 @@
1Links to previously staged 0.9.8* easily otherwise
2
3Index: openssl-1.0.0/Makefile.shared
4===================================================================
5--- openssl-1.0.0.orig/Makefile.shared
6+++ openssl-1.0.0/Makefile.shared
7@@ -96,7 +96,7 @@
8 LIBPATH=`for x in $$LIBDEPS; do echo $$x; done | sed -e 's/^ *-L//;t' -e d | uniq`; \
9 LIBPATH=`echo $$LIBPATH | sed -e 's/ /:/g'`; \
10 LD_LIBRARY_PATH=$$LIBPATH:$$LD_LIBRARY_PATH \
11- $${LDCMD} $${LDFLAGS} -o $${APPNAME:=$(APPNAME)} $(OBJECTS) $${LIBDEPS} )
12+ $${LDCMD} $${LIBDEPS} $${LDFLAGS} -o $${APPNAME:=$(APPNAME)} $(OBJECTS) )
13
14 LINK_SO= \
15 ( $(SET_X); \
16@@ -106,9 +106,9 @@
17 LIBPATH=`for x in $$LIBDEPS; do echo $$x; done | sed -e 's/^ *-L//;t' -e d | uniq`; \
18 LIBPATH=`echo $$LIBPATH | sed -e 's/ /:/g'`; \
19 LD_LIBRARY_PATH=$$LIBPATH:$$LD_LIBRARY_PATH \
20- $${SHAREDCMD} $${SHAREDFLAGS} \
21+ $${SHAREDCMD} $$LIBDEPS $${SHAREDFLAGS} \
22 -o $$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX \
23- $$ALLSYMSFLAGS $$SHOBJECTS $$NOALLSYMSFLAGS $$LIBDEPS \
24+ $$ALLSYMSFLAGS $$SHOBJECTS $$NOALLSYMSFLAGS \
25 ) && $(SYMLINK_SO)
26
27 SYMLINK_SO= \
diff --git a/recipes-connectivity/openssl/openssl-1.0.0a/oe-ldflags.patch b/recipes-connectivity/openssl/openssl-1.0.0a/oe-ldflags.patch
new file mode 100644
index 0000000000..3dd3bedab0
--- /dev/null
+++ b/recipes-connectivity/openssl/openssl-1.0.0a/oe-ldflags.patch
@@ -0,0 +1,22 @@
1Index: openssl-1.0.0/Makefile.shared
2===================================================================
3--- openssl-1.0.0.orig/Makefile.shared
4+++ openssl-1.0.0/Makefile.shared
5@@ -92,7 +92,7 @@
6 LINK_APP= \
7 ( $(SET_X); \
8 LIBDEPS="$${LIBDEPS:-$(LIBDEPS)}"; \
9- LDCMD="$${LDCMD:-$(CC)}"; LDFLAGS="$${LDFLAGS:-$(CFLAGS)}"; \
10+ LDCMD="$${LDCMD:-$(CC)}"; LDFLAGS="$(OE_LDFLAGS) $${LDFLAGS:-$(CFLAGS)}"; \
11 LIBPATH=`for x in $$LIBDEPS; do echo $$x; done | sed -e 's/^ *-L//;t' -e d | uniq`; \
12 LIBPATH=`echo $$LIBPATH | sed -e 's/ /:/g'`; \
13 LD_LIBRARY_PATH=$$LIBPATH:$$LD_LIBRARY_PATH \
14@@ -102,7 +102,7 @@
15 ( $(SET_X); \
16 LIBDEPS="$${LIBDEPS:-$(LIBDEPS)}"; \
17 SHAREDCMD="$${SHAREDCMD:-$(CC)}"; \
18- SHAREDFLAGS="$${SHAREDFLAGS:-$(CFLAGS) $(SHARED_LDFLAGS)}"; \
19+ SHAREDFLAGS="$(OE_LDFLAGS) $${SHAREDFLAGS:-$(CFLAGS) $(SHARED_LDFLAGS)}"; \
20 LIBPATH=`for x in $$LIBDEPS; do echo $$x; done | sed -e 's/^ *-L//;t' -e d | uniq`; \
21 LIBPATH=`echo $$LIBPATH | sed -e 's/ /:/g'`; \
22 LD_LIBRARY_PATH=$$LIBPATH:$$LD_LIBRARY_PATH \
diff --git a/recipes-connectivity/openssl/openssl-1.0.0a/openssl-fix-ssl3_get_key_exchange-double-free.patch b/recipes-connectivity/openssl/openssl-1.0.0a/openssl-fix-ssl3_get_key_exchange-double-free.patch
new file mode 100644
index 0000000000..4e988498a3
--- /dev/null
+++ b/recipes-connectivity/openssl/openssl-1.0.0a/openssl-fix-ssl3_get_key_exchange-double-free.patch
@@ -0,0 +1,12 @@
1Index: openssl-1.0.0a/ssl/s3_clnt.c
2===================================================================
3--- openssl-1.0.0a.orig/ssl/s3_clnt.c 2010-09-13 18:38:01.000000000 +0400
4+++ openssl-1.0.0a/ssl/s3_clnt.c 2010-09-13 18:38:35.000000000 +0400
5@@ -1508,6 +1508,7 @@
6 s->session->sess_cert->peer_ecdh_tmp=ecdh;
7 ecdh=NULL;
8 BN_CTX_free(bn_ctx);
9+ bn_ctx = NULL;
10 EC_POINT_free(srvr_ecpoint);
11 srvr_ecpoint = NULL;
12 }
diff --git a/recipes-connectivity/openssl/openssl-1.0.0a/shared-libs.patch b/recipes-connectivity/openssl/openssl-1.0.0a/shared-libs.patch
new file mode 100644
index 0000000000..7cd70d8fdc
--- /dev/null
+++ b/recipes-connectivity/openssl/openssl-1.0.0a/shared-libs.patch
@@ -0,0 +1,48 @@
1Index: openssl-1.0.0/crypto/Makefile
2===================================================================
3--- openssl-1.0.0.orig/crypto/Makefile
4+++ openssl-1.0.0/crypto/Makefile
5@@ -104,7 +104,7 @@
6
7 shared: buildinf.h lib subdirs
8 if [ -n "$(SHARED_LIBS)" ]; then \
9- (cd ..; $(MAKE) $(SHARED_LIB)); \
10+ (cd ..; $(MAKE) -e $(SHARED_LIB)); \
11 fi
12
13 libs:
14Index: openssl-1.0.0/Makefile.org
15===================================================================
16--- openssl-1.0.0.orig/Makefile.org
17+++ openssl-1.0.0/Makefile.org
18@@ -260,7 +260,7 @@
19
20 libcrypto$(SHLIB_EXT): libcrypto.a
21 @if [ "$(SHLIB_TARGET)" != "" ]; then \
22- $(MAKE) SHLIBDIRS=crypto build-shared; \
23+ $(MAKE) -e SHLIBDIRS=crypto build-shared; \
24 else \
25 echo "There's no support for shared libraries on this platform" >&2; \
26 exit 1; \
27@@ -268,7 +268,7 @@
28
29 libssl$(SHLIB_EXT): libcrypto$(SHLIB_EXT) libssl.a
30 @if [ "$(SHLIB_TARGET)" != "" ]; then \
31- $(MAKE) SHLIBDIRS=ssl SHLIBDEPS='-lcrypto' build-shared; \
32+ $(MAKE) -e SHLIBDIRS=ssl SHLIBDEPS='-lcrypto' build-shared; \
33 else \
34 echo "There's no support for shared libraries on this platform" >&2; \
35 exit 1; \
36Index: openssl-1.0.0/ssl/Makefile
37===================================================================
38--- openssl-1.0.0.orig/ssl/Makefile
39+++ openssl-1.0.0/ssl/Makefile
40@@ -62,7 +62,7 @@
41
42 shared: lib
43 if [ -n "$(SHARED_LIBS)" ]; then \
44- (cd ..; $(MAKE) $(SHARED_LIB)); \
45+ (cd ..; $(MAKE) -e $(SHARED_LIB)); \
46 fi
47
48 files: