Accepting request 236989 from Base:System
NOTE: I submitted perl-Net-SSLeay 1.64 update to devel:languages:perl which fixes its regression. - updated openssl to 1.0.1h (bnc#880891): - CVE-2014-0224: Fix for SSL/TLS MITM flaw. An attacker using a carefully crafted handshake can force the use of weak keying material in OpenSSL SSL/TLS clients and servers. - CVE-2014-0221: Fix DTLS recursion flaw. By sending an invalid DTLS handshake to an OpenSSL DTLS client the code can be made to recurse eventually crashing in a DoS attack. - CVE-2014-0195: Fix DTLS invalid fragment vulnerability. A buffer overrun attack can be triggered by sending invalid DTLS fragments to an OpenSSL DTLS client or server. This is potentially exploitable to run arbitrary code on a vulnerable client or server. - CVE-2014-3470: Fix bug in TLS code where clients enable anonymous ECDH ciphersuites are subject to a denial of service attack. - openssl-buffreelistbug-aka-CVE-2010-5298.patch: removed, upstream - CVE-2014-0198.patch: removed, upstream - 0009-Fix-double-frees.patch: removed, upstream - 0012-Fix-eckey_priv_encode.patch: removed, upstream - 0017-Double-free-in-i2o_ECPublicKey.patch: removed, upstream - 0018-fix-coverity-issues-966593-966596.patch: removed, upstream - 0020-Initialize-num-properly.patch: removed, upstream - 0022-bignum-allow-concurrent-BN_MONT_CTX_set_locked.patch: removed, upstream - 0023-evp-prevent-underflow-in-base64-decoding.patch: removed, upstream - 0024-Fixed-NULL-pointer-dereference-in-PKCS7_dataDecode-r.patch: removed, upstream - 0025-fix-coverity-issue-966597-error-line-is-not-always-i.patch: removed, upstream - 0001-libcrypto-Hide-library-private-symbols.patch: disabled heartbeat testcase - openssl-1.0.1c-ipv6-apps.patch: refreshed - openssl-fix-pod-syntax.diff: some stuff merged upstream, refreshed - Added new SUSE default cipher suite openssl-1.0.1e-add-suse-default-cipher.patch OBS-URL: https://build.opensuse.org/request/show/236989 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/openssl?expand=0&rev=118
This commit is contained in:
parent
6a3418284a
commit
66d6e48709
@ -37,8 +37,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
crypto/x509v3/pcy_int.h | 3 +++
|
crypto/x509v3/pcy_int.h | 3 +++
|
||||||
31 files changed, 85 insertions(+), 17 deletions(-)
|
31 files changed, 85 insertions(+), 17 deletions(-)
|
||||||
|
|
||||||
--- openssl-1.0.1g.orig/apps/Makefile
|
Index: openssl-1.0.1h/apps/Makefile
|
||||||
+++ openssl-1.0.1g/apps/Makefile
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/apps/Makefile
|
||||||
|
+++ openssl-1.0.1h/apps/Makefile
|
||||||
@@ -20,7 +20,7 @@ EXE_EXT=
|
@@ -20,7 +20,7 @@ EXE_EXT=
|
||||||
|
|
||||||
SHLIB_TARGET=
|
SHLIB_TARGET=
|
||||||
@ -48,8 +50,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
|
|
||||||
GENERAL=Makefile makeapps.com install.com
|
GENERAL=Makefile makeapps.com install.com
|
||||||
|
|
||||||
--- openssl-1.0.1g.orig/crypto/asn1/asn1_locl.h
|
Index: openssl-1.0.1h/crypto/asn1/asn1_locl.h
|
||||||
+++ openssl-1.0.1g/crypto/asn1/asn1_locl.h
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/asn1/asn1_locl.h
|
||||||
|
+++ openssl-1.0.1h/crypto/asn1/asn1_locl.h
|
||||||
@@ -58,6 +58,8 @@
|
@@ -58,6 +58,8 @@
|
||||||
|
|
||||||
/* Internal ASN1 structures and functions: not for application use */
|
/* Internal ASN1 structures and functions: not for application use */
|
||||||
@ -65,8 +69,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
};
|
};
|
||||||
+
|
+
|
||||||
+#pragma GCC visibility pop
|
+#pragma GCC visibility pop
|
||||||
--- openssl-1.0.1g.orig/crypto/bn/bn_lcl.h
|
Index: openssl-1.0.1h/crypto/bn/bn_lcl.h
|
||||||
+++ openssl-1.0.1g/crypto/bn/bn_lcl.h
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/bn/bn_lcl.h
|
||||||
|
+++ openssl-1.0.1h/crypto/bn/bn_lcl.h
|
||||||
@@ -483,6 +483,8 @@ extern "C" {
|
@@ -483,6 +483,8 @@ extern "C" {
|
||||||
#undef bn_div_words
|
#undef bn_div_words
|
||||||
#endif
|
#endif
|
||||||
@ -85,8 +91,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
--- openssl-1.0.1g.orig/crypto/camellia/cmll_locl.h
|
Index: openssl-1.0.1h/crypto/camellia/cmll_locl.h
|
||||||
+++ openssl-1.0.1g/crypto/camellia/cmll_locl.h
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/camellia/cmll_locl.h
|
||||||
|
+++ openssl-1.0.1h/crypto/camellia/cmll_locl.h
|
||||||
@@ -68,6 +68,8 @@
|
@@ -68,6 +68,8 @@
|
||||||
#ifndef HEADER_CAMELLIA_LOCL_H
|
#ifndef HEADER_CAMELLIA_LOCL_H
|
||||||
#define HEADER_CAMELLIA_LOCL_H
|
#define HEADER_CAMELLIA_LOCL_H
|
||||||
@ -102,8 +110,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
CAMELLIA_KEY *key);
|
CAMELLIA_KEY *key);
|
||||||
+#pragma GCC visibility pop
|
+#pragma GCC visibility pop
|
||||||
#endif /* #ifndef HEADER_CAMELLIA_LOCL_H */
|
#endif /* #ifndef HEADER_CAMELLIA_LOCL_H */
|
||||||
--- openssl-1.0.1g.orig/crypto/cast/cast_lcl.h
|
Index: openssl-1.0.1h/crypto/cast/cast_lcl.h
|
||||||
+++ openssl-1.0.1g/crypto/cast/cast_lcl.h
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/cast/cast_lcl.h
|
||||||
|
+++ openssl-1.0.1h/crypto/cast/cast_lcl.h
|
||||||
@@ -217,6 +217,7 @@
|
@@ -217,6 +217,7 @@
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
@ -117,8 +127,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
extern const CAST_LONG CAST_S_table6[256];
|
extern const CAST_LONG CAST_S_table6[256];
|
||||||
extern const CAST_LONG CAST_S_table7[256];
|
extern const CAST_LONG CAST_S_table7[256];
|
||||||
+#pragma GCC visibility pop
|
+#pragma GCC visibility pop
|
||||||
--- openssl-1.0.1g.orig/crypto/cms/cms_lcl.h
|
Index: openssl-1.0.1h/crypto/cms/cms_lcl.h
|
||||||
+++ openssl-1.0.1g/crypto/cms/cms_lcl.h
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/cms/cms_lcl.h
|
||||||
|
+++ openssl-1.0.1h/crypto/cms/cms_lcl.h
|
||||||
@@ -426,6 +426,8 @@ DECLARE_ASN1_ALLOC_FUNCTIONS(CMS_IssuerA
|
@@ -426,6 +426,8 @@ DECLARE_ASN1_ALLOC_FUNCTIONS(CMS_IssuerA
|
||||||
#define CMS_RECIPINFO_ISSUER_SERIAL 0
|
#define CMS_RECIPINFO_ISSUER_SERIAL 0
|
||||||
#define CMS_RECIPINFO_KEYIDENTIFIER 1
|
#define CMS_RECIPINFO_KEYIDENTIFIER 1
|
||||||
@ -138,8 +150,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
--- openssl-1.0.1g.orig/crypto/des/des_locl.h
|
Index: openssl-1.0.1h/crypto/des/des_locl.h
|
||||||
+++ openssl-1.0.1g/crypto/des/des_locl.h
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/des/des_locl.h
|
||||||
|
+++ openssl-1.0.1h/crypto/des/des_locl.h
|
||||||
@@ -421,10 +421,12 @@
|
@@ -421,10 +421,12 @@
|
||||||
PERM_OP(l,r,tt, 4,0x0f0f0f0fL); \
|
PERM_OP(l,r,tt, 4,0x0f0f0f0fL); \
|
||||||
}
|
}
|
||||||
@ -153,16 +167,20 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
|
|
||||||
#ifdef OPENSSL_SMALL_FOOTPRINT
|
#ifdef OPENSSL_SMALL_FOOTPRINT
|
||||||
#undef DES_UNROLL
|
#undef DES_UNROLL
|
||||||
--- openssl-1.0.1g.orig/crypto/dsa/dsa_locl.h
|
Index: openssl-1.0.1h/crypto/dsa/dsa_locl.h
|
||||||
+++ openssl-1.0.1g/crypto/dsa/dsa_locl.h
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/dsa/dsa_locl.h
|
||||||
|
+++ openssl-1.0.1h/crypto/dsa/dsa_locl.h
|
||||||
@@ -57,4 +57,4 @@
|
@@ -57,4 +57,4 @@
|
||||||
int dsa_builtin_paramgen(DSA *ret, size_t bits, size_t qbits,
|
int dsa_builtin_paramgen(DSA *ret, size_t bits, size_t qbits,
|
||||||
const EVP_MD *evpmd, const unsigned char *seed_in, size_t seed_len,
|
const EVP_MD *evpmd, const unsigned char *seed_in, size_t seed_len,
|
||||||
unsigned char *seed_out,
|
unsigned char *seed_out,
|
||||||
- int *counter_ret, unsigned long *h_ret, BN_GENCB *cb);
|
- int *counter_ret, unsigned long *h_ret, BN_GENCB *cb);
|
||||||
+ int *counter_ret, unsigned long *h_ret, BN_GENCB *cb) __attribute__ ((visibility ("hidden")));
|
+ int *counter_ret, unsigned long *h_ret, BN_GENCB *cb) __attribute__ ((visibility ("hidden")));
|
||||||
--- openssl-1.0.1g.orig/crypto/ec/ec_lcl.h
|
Index: openssl-1.0.1h/crypto/ec/ec_lcl.h
|
||||||
+++ openssl-1.0.1g/crypto/ec/ec_lcl.h
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/ec/ec_lcl.h
|
||||||
|
+++ openssl-1.0.1h/crypto/ec/ec_lcl.h
|
||||||
@@ -88,6 +88,8 @@
|
@@ -88,6 +88,8 @@
|
||||||
/* Structure details are not part of the exported interface,
|
/* Structure details are not part of the exported interface,
|
||||||
* so all this may change in future versions. */
|
* so all this may change in future versions. */
|
||||||
@ -178,8 +196,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
#endif
|
#endif
|
||||||
+
|
+
|
||||||
+#pragma GCC visibility pop
|
+#pragma GCC visibility pop
|
||||||
--- openssl-1.0.1g.orig/crypto/ecdh/ech_locl.h
|
Index: openssl-1.0.1h/crypto/ecdh/ech_locl.h
|
||||||
+++ openssl-1.0.1g/crypto/ecdh/ech_locl.h
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/ecdh/ech_locl.h
|
||||||
|
+++ openssl-1.0.1h/crypto/ecdh/ech_locl.h
|
||||||
@@ -58,6 +58,8 @@
|
@@ -58,6 +58,8 @@
|
||||||
|
|
||||||
#include <openssl/ecdh.h>
|
#include <openssl/ecdh.h>
|
||||||
@ -196,8 +216,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
-
|
-
|
||||||
+#pragma GCC visibility pop
|
+#pragma GCC visibility pop
|
||||||
#endif /* HEADER_ECH_LOCL_H */
|
#endif /* HEADER_ECH_LOCL_H */
|
||||||
--- openssl-1.0.1g.orig/crypto/ecdsa/ecs_locl.h
|
Index: openssl-1.0.1h/crypto/ecdsa/ecs_locl.h
|
||||||
+++ openssl-1.0.1g/crypto/ecdsa/ecs_locl.h
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/ecdsa/ecs_locl.h
|
||||||
|
+++ openssl-1.0.1h/crypto/ecdsa/ecs_locl.h
|
||||||
@@ -61,6 +61,8 @@
|
@@ -61,6 +61,8 @@
|
||||||
|
|
||||||
#include <openssl/ecdsa.h>
|
#include <openssl/ecdsa.h>
|
||||||
@ -214,8 +236,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
+#pragma GCC visibility pop
|
+#pragma GCC visibility pop
|
||||||
+
|
+
|
||||||
#endif /* HEADER_ECS_LOCL_H */
|
#endif /* HEADER_ECS_LOCL_H */
|
||||||
--- openssl-1.0.1g.orig/crypto/engine/eng_int.h
|
Index: openssl-1.0.1h/crypto/engine/eng_int.h
|
||||||
+++ openssl-1.0.1g/crypto/engine/eng_int.h
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/engine/eng_int.h
|
||||||
|
+++ openssl-1.0.1h/crypto/engine/eng_int.h
|
||||||
@@ -68,6 +68,8 @@
|
@@ -68,6 +68,8 @@
|
||||||
/* Take public definitions from engine.h */
|
/* Take public definitions from engine.h */
|
||||||
#include <openssl/engine.h>
|
#include <openssl/engine.h>
|
||||||
@ -232,8 +256,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
-
|
-
|
||||||
+#pragma GCC visibility pop
|
+#pragma GCC visibility pop
|
||||||
#endif /* HEADER_ENGINE_INT_H */
|
#endif /* HEADER_ENGINE_INT_H */
|
||||||
--- openssl-1.0.1g.orig/crypto/engine/eng_rsax.c
|
Index: openssl-1.0.1h/crypto/engine/eng_rsax.c
|
||||||
+++ openssl-1.0.1g/crypto/engine/eng_rsax.c
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/engine/eng_rsax.c
|
||||||
|
+++ openssl-1.0.1h/crypto/engine/eng_rsax.c
|
||||||
@@ -262,7 +262,7 @@ static int mod_exp_pre_compute_data_512(
|
@@ -262,7 +262,7 @@ static int mod_exp_pre_compute_data_512(
|
||||||
void mod_exp_512(UINT64 *result, /* 512 bits, 8 qwords */
|
void mod_exp_512(UINT64 *result, /* 512 bits, 8 qwords */
|
||||||
UINT64 *g, /* 512 bits, 8 qwords */
|
UINT64 *g, /* 512 bits, 8 qwords */
|
||||||
@ -243,8 +269,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
|
|
||||||
typedef struct st_e_rsax_mod_ctx
|
typedef struct st_e_rsax_mod_ctx
|
||||||
{
|
{
|
||||||
--- openssl-1.0.1g.orig/crypto/evp/e_aes.c
|
Index: openssl-1.0.1h/crypto/evp/e_aes.c
|
||||||
+++ openssl-1.0.1g/crypto/evp/e_aes.c
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/evp/e_aes.c
|
||||||
|
+++ openssl-1.0.1h/crypto/evp/e_aes.c
|
||||||
@@ -108,6 +108,8 @@ typedef struct
|
@@ -108,6 +108,8 @@ typedef struct
|
||||||
|
|
||||||
#define MAXBITCHUNK ((size_t)1<<(sizeof(size_t)*8-4))
|
#define MAXBITCHUNK ((size_t)1<<(sizeof(size_t)*8-4))
|
||||||
@ -290,8 +318,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
static int aesni_init_key(EVP_CIPHER_CTX *ctx, const unsigned char *key,
|
static int aesni_init_key(EVP_CIPHER_CTX *ctx, const unsigned char *key,
|
||||||
const unsigned char *iv, int enc)
|
const unsigned char *iv, int enc)
|
||||||
{
|
{
|
||||||
--- openssl-1.0.1g.orig/crypto/evp/e_aes_cbc_hmac_sha1.c
|
Index: openssl-1.0.1h/crypto/evp/e_aes_cbc_hmac_sha1.c
|
||||||
+++ openssl-1.0.1g/crypto/evp/e_aes_cbc_hmac_sha1.c
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/evp/e_aes_cbc_hmac_sha1.c
|
||||||
|
+++ openssl-1.0.1h/crypto/evp/e_aes_cbc_hmac_sha1.c
|
||||||
@@ -97,6 +97,8 @@ typedef struct
|
@@ -97,6 +97,8 @@ typedef struct
|
||||||
extern unsigned int OPENSSL_ia32cap_P[2];
|
extern unsigned int OPENSSL_ia32cap_P[2];
|
||||||
#define AESNI_CAPABLE (1<<(57-32))
|
#define AESNI_CAPABLE (1<<(57-32))
|
||||||
@ -310,8 +340,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
#define data(ctx) ((EVP_AES_HMAC_SHA1 *)(ctx)->cipher_data)
|
#define data(ctx) ((EVP_AES_HMAC_SHA1 *)(ctx)->cipher_data)
|
||||||
|
|
||||||
static int aesni_cbc_hmac_sha1_init_key(EVP_CIPHER_CTX *ctx,
|
static int aesni_cbc_hmac_sha1_init_key(EVP_CIPHER_CTX *ctx,
|
||||||
--- openssl-1.0.1g.orig/crypto/evp/evp_locl.h
|
Index: openssl-1.0.1h/crypto/evp/evp_locl.h
|
||||||
+++ openssl-1.0.1g/crypto/evp/evp_locl.h
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/evp/evp_locl.h
|
||||||
|
+++ openssl-1.0.1h/crypto/evp/evp_locl.h
|
||||||
@@ -263,6 +263,8 @@ const EVP_CIPHER *EVP_##cname##_ecb(void
|
@@ -263,6 +263,8 @@ const EVP_CIPHER *EVP_##cname##_ecb(void
|
||||||
EVP_CIPHER_get_asn1_iv, \
|
EVP_CIPHER_get_asn1_iv, \
|
||||||
NULL)
|
NULL)
|
||||||
@ -330,8 +362,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
#ifdef OPENSSL_FIPS
|
#ifdef OPENSSL_FIPS
|
||||||
|
|
||||||
#ifdef OPENSSL_DOING_MAKEDEPEND
|
#ifdef OPENSSL_DOING_MAKEDEPEND
|
||||||
--- openssl-1.0.1g.orig/crypto/md4/md4_locl.h
|
Index: openssl-1.0.1h/crypto/md4/md4_locl.h
|
||||||
+++ openssl-1.0.1g/crypto/md4/md4_locl.h
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/md4/md4_locl.h
|
||||||
|
+++ openssl-1.0.1h/crypto/md4/md4_locl.h
|
||||||
@@ -65,7 +65,7 @@
|
@@ -65,7 +65,7 @@
|
||||||
#define MD4_LONG_LOG2 2 /* default to 32 bits */
|
#define MD4_LONG_LOG2 2 /* default to 32 bits */
|
||||||
#endif
|
#endif
|
||||||
@ -341,8 +375,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
|
|
||||||
#define DATA_ORDER_IS_LITTLE_ENDIAN
|
#define DATA_ORDER_IS_LITTLE_ENDIAN
|
||||||
|
|
||||||
--- openssl-1.0.1g.orig/crypto/md5/md5_locl.h
|
Index: openssl-1.0.1h/crypto/md5/md5_locl.h
|
||||||
+++ openssl-1.0.1g/crypto/md5/md5_locl.h
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/md5/md5_locl.h
|
||||||
|
+++ openssl-1.0.1h/crypto/md5/md5_locl.h
|
||||||
@@ -74,7 +74,7 @@
|
@@ -74,7 +74,7 @@
|
||||||
# endif
|
# endif
|
||||||
#endif
|
#endif
|
||||||
@ -352,8 +388,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
|
|
||||||
#define DATA_ORDER_IS_LITTLE_ENDIAN
|
#define DATA_ORDER_IS_LITTLE_ENDIAN
|
||||||
|
|
||||||
--- openssl-1.0.1g.orig/crypto/modes/modes_lcl.h
|
Index: openssl-1.0.1h/crypto/modes/modes_lcl.h
|
||||||
+++ openssl-1.0.1g/crypto/modes/modes_lcl.h
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/modes/modes_lcl.h
|
||||||
|
+++ openssl-1.0.1h/crypto/modes/modes_lcl.h
|
||||||
@@ -83,6 +83,8 @@ typedef unsigned char u8;
|
@@ -83,6 +83,8 @@ typedef unsigned char u8;
|
||||||
#define PUTU32(p,v) ((p)[0]=(u8)((v)>>24),(p)[1]=(u8)((v)>>16),(p)[2]=(u8)((v)>>8),(p)[3]=(u8)(v))
|
#define PUTU32(p,v) ((p)[0]=(u8)((v)>>24),(p)[1]=(u8)((v)>>16),(p)[2]=(u8)((v)>>8),(p)[3]=(u8)(v))
|
||||||
#endif
|
#endif
|
||||||
@ -369,8 +407,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
};
|
};
|
||||||
-
|
-
|
||||||
+#pragma GCC visibility pop
|
+#pragma GCC visibility pop
|
||||||
--- openssl-1.0.1g.orig/crypto/o_str.h
|
Index: openssl-1.0.1h/crypto/o_str.h
|
||||||
+++ openssl-1.0.1g/crypto/o_str.h
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/o_str.h
|
||||||
|
+++ openssl-1.0.1h/crypto/o_str.h
|
||||||
@@ -61,8 +61,12 @@
|
@@ -61,8 +61,12 @@
|
||||||
|
|
||||||
#include <stddef.h> /* to get size_t */
|
#include <stddef.h> /* to get size_t */
|
||||||
@ -384,8 +424,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
+#pragma GCC visibility pop
|
+#pragma GCC visibility pop
|
||||||
+
|
+
|
||||||
#endif
|
#endif
|
||||||
--- openssl-1.0.1g.orig/crypto/o_time.h
|
Index: openssl-1.0.1h/crypto/o_time.h
|
||||||
+++ openssl-1.0.1g/crypto/o_time.h
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/o_time.h
|
||||||
|
+++ openssl-1.0.1h/crypto/o_time.h
|
||||||
@@ -61,7 +61,11 @@
|
@@ -61,7 +61,11 @@
|
||||||
|
|
||||||
#include <time.h>
|
#include <time.h>
|
||||||
@ -398,8 +440,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
+#pragma GCC visibility pop
|
+#pragma GCC visibility pop
|
||||||
+
|
+
|
||||||
#endif
|
#endif
|
||||||
--- openssl-1.0.1g.orig/crypto/ripemd/rmd_locl.h
|
Index: openssl-1.0.1h/crypto/ripemd/rmd_locl.h
|
||||||
+++ openssl-1.0.1g/crypto/ripemd/rmd_locl.h
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/ripemd/rmd_locl.h
|
||||||
|
+++ openssl-1.0.1h/crypto/ripemd/rmd_locl.h
|
||||||
@@ -76,7 +76,7 @@
|
@@ -76,7 +76,7 @@
|
||||||
# endif
|
# endif
|
||||||
#endif
|
#endif
|
||||||
@ -409,16 +453,20 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
|
|
||||||
#define DATA_ORDER_IS_LITTLE_ENDIAN
|
#define DATA_ORDER_IS_LITTLE_ENDIAN
|
||||||
|
|
||||||
--- openssl-1.0.1g.orig/crypto/rsa/rsa_locl.h
|
Index: openssl-1.0.1h/crypto/rsa/rsa_locl.h
|
||||||
+++ openssl-1.0.1g/crypto/rsa/rsa_locl.h
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/rsa/rsa_locl.h
|
||||||
|
+++ openssl-1.0.1h/crypto/rsa/rsa_locl.h
|
||||||
@@ -1,4 +1,4 @@
|
@@ -1,4 +1,4 @@
|
||||||
extern int int_rsa_verify(int dtype, const unsigned char *m, unsigned int m_len,
|
extern int int_rsa_verify(int dtype, const unsigned char *m, unsigned int m_len,
|
||||||
unsigned char *rm, size_t *prm_len,
|
unsigned char *rm, size_t *prm_len,
|
||||||
const unsigned char *sigbuf, size_t siglen,
|
const unsigned char *sigbuf, size_t siglen,
|
||||||
- RSA *rsa);
|
- RSA *rsa);
|
||||||
+ RSA *rsa) __attribute__ ((visibility ("hidden")));
|
+ RSA *rsa) __attribute__ ((visibility ("hidden")));
|
||||||
--- openssl-1.0.1g.orig/crypto/sha/sha256.c
|
Index: openssl-1.0.1h/crypto/sha/sha256.c
|
||||||
+++ openssl-1.0.1g/crypto/sha/sha256.c
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/sha/sha256.c
|
||||||
|
+++ openssl-1.0.1h/crypto/sha/sha256.c
|
||||||
@@ -110,7 +110,7 @@ int SHA224_Final (unsigned char *md, SHA
|
@@ -110,7 +110,7 @@ int SHA224_Final (unsigned char *md, SHA
|
||||||
#ifndef SHA256_ASM
|
#ifndef SHA256_ASM
|
||||||
static
|
static
|
||||||
@ -428,8 +476,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
|
|
||||||
#include "md32_common.h"
|
#include "md32_common.h"
|
||||||
|
|
||||||
--- openssl-1.0.1g.orig/crypto/sha/sha512.c
|
Index: openssl-1.0.1h/crypto/sha/sha512.c
|
||||||
+++ openssl-1.0.1g/crypto/sha/sha512.c
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/sha/sha512.c
|
||||||
|
+++ openssl-1.0.1h/crypto/sha/sha512.c
|
||||||
@@ -94,7 +94,7 @@ fips_md_init(SHA512)
|
@@ -94,7 +94,7 @@ fips_md_init(SHA512)
|
||||||
#ifndef SHA512_ASM
|
#ifndef SHA512_ASM
|
||||||
static
|
static
|
||||||
@ -439,8 +489,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
|
|
||||||
int SHA512_Final (unsigned char *md, SHA512_CTX *c)
|
int SHA512_Final (unsigned char *md, SHA512_CTX *c)
|
||||||
{
|
{
|
||||||
--- openssl-1.0.1g.orig/crypto/sha/sha_locl.h
|
Index: openssl-1.0.1h/crypto/sha/sha_locl.h
|
||||||
+++ openssl-1.0.1g/crypto/sha/sha_locl.h
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/sha/sha_locl.h
|
||||||
|
+++ openssl-1.0.1h/crypto/sha/sha_locl.h
|
||||||
@@ -108,7 +108,7 @@ static void sha_block_data_order (SHA_CT
|
@@ -108,7 +108,7 @@ static void sha_block_data_order (SHA_CT
|
||||||
#ifndef SHA1_ASM
|
#ifndef SHA1_ASM
|
||||||
static
|
static
|
||||||
@ -450,8 +502,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
|
|
||||||
#else
|
#else
|
||||||
# error "Either SHA_0 or SHA_1 must be defined."
|
# error "Either SHA_0 or SHA_1 must be defined."
|
||||||
--- openssl-1.0.1g.orig/crypto/store/str_locl.h
|
Index: openssl-1.0.1h/crypto/store/str_locl.h
|
||||||
+++ openssl-1.0.1g/crypto/store/str_locl.h
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/store/str_locl.h
|
||||||
|
+++ openssl-1.0.1h/crypto/store/str_locl.h
|
||||||
@@ -62,6 +62,8 @@
|
@@ -62,6 +62,8 @@
|
||||||
#include <openssl/crypto.h>
|
#include <openssl/crypto.h>
|
||||||
#include <openssl/store.h>
|
#include <openssl/store.h>
|
||||||
@ -468,8 +522,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
-
|
-
|
||||||
+#pragma GCC visibility pop
|
+#pragma GCC visibility pop
|
||||||
#endif
|
#endif
|
||||||
--- openssl-1.0.1g.orig/crypto/ui/ui_locl.h
|
Index: openssl-1.0.1h/crypto/ui/ui_locl.h
|
||||||
+++ openssl-1.0.1g/crypto/ui/ui_locl.h
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/ui/ui_locl.h
|
||||||
|
+++ openssl-1.0.1h/crypto/ui/ui_locl.h
|
||||||
@@ -66,6 +66,8 @@
|
@@ -66,6 +66,8 @@
|
||||||
#undef _
|
#undef _
|
||||||
#endif
|
#endif
|
||||||
@ -486,15 +542,19 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
-
|
-
|
||||||
+#pragma GCC visibility pop
|
+#pragma GCC visibility pop
|
||||||
#endif
|
#endif
|
||||||
--- openssl-1.0.1g.orig/crypto/whrlpool/wp_locl.h
|
Index: openssl-1.0.1h/crypto/whrlpool/wp_locl.h
|
||||||
+++ openssl-1.0.1g/crypto/whrlpool/wp_locl.h
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/whrlpool/wp_locl.h
|
||||||
|
+++ openssl-1.0.1h/crypto/whrlpool/wp_locl.h
|
||||||
@@ -1,3 +1,3 @@
|
@@ -1,3 +1,3 @@
|
||||||
#include <openssl/whrlpool.h>
|
#include <openssl/whrlpool.h>
|
||||||
|
|
||||||
-void whirlpool_block(WHIRLPOOL_CTX *,const void *,size_t);
|
-void whirlpool_block(WHIRLPOOL_CTX *,const void *,size_t);
|
||||||
+void whirlpool_block(WHIRLPOOL_CTX *,const void *,size_t) __attribute__ ((visibility ("hidden")));
|
+void whirlpool_block(WHIRLPOOL_CTX *,const void *,size_t) __attribute__ ((visibility ("hidden")));
|
||||||
--- openssl-1.0.1g.orig/crypto/x509v3/ext_dat.h
|
Index: openssl-1.0.1h/crypto/x509v3/ext_dat.h
|
||||||
+++ openssl-1.0.1g/crypto/x509v3/ext_dat.h
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/x509v3/ext_dat.h
|
||||||
|
+++ openssl-1.0.1h/crypto/x509v3/ext_dat.h
|
||||||
@@ -57,6 +57,8 @@
|
@@ -57,6 +57,8 @@
|
||||||
*/
|
*/
|
||||||
/* This file contains a table of "standard" extensions */
|
/* This file contains a table of "standard" extensions */
|
||||||
@ -512,8 +572,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
/* Number of standard extensions */
|
/* Number of standard extensions */
|
||||||
|
|
||||||
#define STANDARD_EXTENSION_COUNT (sizeof(standard_exts)/sizeof(X509V3_EXT_METHOD *))
|
#define STANDARD_EXTENSION_COUNT (sizeof(standard_exts)/sizeof(X509V3_EXT_METHOD *))
|
||||||
--- openssl-1.0.1g.orig/crypto/x509v3/pcy_int.h
|
Index: openssl-1.0.1h/crypto/x509v3/pcy_int.h
|
||||||
+++ openssl-1.0.1g/crypto/x509v3/pcy_int.h
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/x509v3/pcy_int.h
|
||||||
|
+++ openssl-1.0.1h/crypto/x509v3/pcy_int.h
|
||||||
@@ -56,6 +56,7 @@
|
@@ -56,6 +56,7 @@
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
@ -528,8 +590,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
const X509_POLICY_CACHE *policy_cache_set(X509 *x);
|
const X509_POLICY_CACHE *policy_cache_set(X509 *x);
|
||||||
+
|
+
|
||||||
+#pragma GCC visibility pop
|
+#pragma GCC visibility pop
|
||||||
--- openssl-1.0.1g.orig/crypto/modes/gcm128.c
|
Index: openssl-1.0.1h/crypto/modes/gcm128.c
|
||||||
+++ openssl-1.0.1g/crypto/modes/gcm128.c
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/modes/gcm128.c
|
||||||
|
+++ openssl-1.0.1h/crypto/modes/gcm128.c
|
||||||
@@ -567,8 +567,8 @@ static void gcm_ghash_4bit(u64 Xi[2],con
|
@@ -567,8 +567,8 @@ static void gcm_ghash_4bit(u64 Xi[2],con
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
@ -554,8 +618,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
|
|
||||||
# if defined(__i386) || defined(__i386__) || defined(_M_IX86)
|
# if defined(__i386) || defined(__i386__) || defined(_M_IX86)
|
||||||
# define GHASH_ASM_X86
|
# define GHASH_ASM_X86
|
||||||
--- openssl-1.0.1g.orig/crypto/evp/e_rc4_hmac_md5.c
|
Index: openssl-1.0.1h/crypto/evp/e_rc4_hmac_md5.c
|
||||||
+++ openssl-1.0.1g/crypto/evp/e_rc4_hmac_md5.c
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/evp/e_rc4_hmac_md5.c
|
||||||
|
+++ openssl-1.0.1h/crypto/evp/e_rc4_hmac_md5.c
|
||||||
@@ -78,7 +78,7 @@ typedef struct
|
@@ -78,7 +78,7 @@ typedef struct
|
||||||
#define NO_PAYLOAD_LENGTH ((size_t)-1)
|
#define NO_PAYLOAD_LENGTH ((size_t)-1)
|
||||||
|
|
||||||
@ -565,8 +631,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
|
|
||||||
#define data(ctx) ((EVP_RC4_HMAC_MD5 *)(ctx)->cipher_data)
|
#define data(ctx) ((EVP_RC4_HMAC_MD5 *)(ctx)->cipher_data)
|
||||||
|
|
||||||
--- openssl-1.0.1g.orig/crypto/cmac/cm_ameth.c
|
Index: openssl-1.0.1h/crypto/cmac/cm_ameth.c
|
||||||
+++ openssl-1.0.1g/crypto/cmac/cm_ameth.c
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/cmac/cm_ameth.c
|
||||||
|
+++ openssl-1.0.1h/crypto/cmac/cm_ameth.c
|
||||||
@@ -73,6 +73,7 @@ static void cmac_key_free(EVP_PKEY *pkey
|
@@ -73,6 +73,7 @@ static void cmac_key_free(EVP_PKEY *pkey
|
||||||
CMAC_CTX_free(cmctx);
|
CMAC_CTX_free(cmctx);
|
||||||
}
|
}
|
||||||
@ -575,8 +643,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
const EVP_PKEY_ASN1_METHOD cmac_asn1_meth =
|
const EVP_PKEY_ASN1_METHOD cmac_asn1_meth =
|
||||||
{
|
{
|
||||||
EVP_PKEY_CMAC,
|
EVP_PKEY_CMAC,
|
||||||
--- openssl-1.0.1g.orig/crypto/evp/pmeth_lib.c
|
Index: openssl-1.0.1h/crypto/evp/pmeth_lib.c
|
||||||
+++ openssl-1.0.1g/crypto/evp/pmeth_lib.c
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/evp/pmeth_lib.c
|
||||||
|
+++ openssl-1.0.1h/crypto/evp/pmeth_lib.c
|
||||||
@@ -70,7 +70,7 @@
|
@@ -70,7 +70,7 @@
|
||||||
typedef int sk_cmp_fn_type(const char * const *a, const char * const *b);
|
typedef int sk_cmp_fn_type(const char * const *a, const char * const *b);
|
||||||
|
|
||||||
@ -586,8 +656,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
|
|
||||||
extern const EVP_PKEY_METHOD rsa_pkey_meth, dh_pkey_meth, dsa_pkey_meth;
|
extern const EVP_PKEY_METHOD rsa_pkey_meth, dh_pkey_meth, dsa_pkey_meth;
|
||||||
extern const EVP_PKEY_METHOD ec_pkey_meth, hmac_pkey_meth, cmac_pkey_meth;
|
extern const EVP_PKEY_METHOD ec_pkey_meth, hmac_pkey_meth, cmac_pkey_meth;
|
||||||
--- openssl-1.0.1g.orig/crypto/cmac/cm_pmeth.c
|
Index: openssl-1.0.1h/crypto/cmac/cm_pmeth.c
|
||||||
+++ openssl-1.0.1g/crypto/cmac/cm_pmeth.c
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/cmac/cm_pmeth.c
|
||||||
|
+++ openssl-1.0.1h/crypto/cmac/cm_pmeth.c
|
||||||
@@ -188,6 +188,7 @@ static int pkey_cmac_ctrl_str(EVP_PKEY_C
|
@@ -188,6 +188,7 @@ static int pkey_cmac_ctrl_str(EVP_PKEY_C
|
||||||
return -2;
|
return -2;
|
||||||
}
|
}
|
||||||
@ -596,8 +668,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
const EVP_PKEY_METHOD cmac_pkey_meth =
|
const EVP_PKEY_METHOD cmac_pkey_meth =
|
||||||
{
|
{
|
||||||
EVP_PKEY_CMAC,
|
EVP_PKEY_CMAC,
|
||||||
--- openssl-1.0.1g.orig/crypto/rand/md_rand.c
|
Index: openssl-1.0.1h/crypto/rand/md_rand.c
|
||||||
+++ openssl-1.0.1g/crypto/rand/md_rand.c
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/rand/md_rand.c
|
||||||
|
+++ openssl-1.0.1h/crypto/rand/md_rand.c
|
||||||
@@ -164,7 +164,7 @@ static int ssleay_rand_nopseudo_bytes(un
|
@@ -164,7 +164,7 @@ static int ssleay_rand_nopseudo_bytes(un
|
||||||
static int ssleay_rand_pseudo_bytes(unsigned char *buf, int num);
|
static int ssleay_rand_pseudo_bytes(unsigned char *buf, int num);
|
||||||
static int ssleay_rand_status(void);
|
static int ssleay_rand_status(void);
|
||||||
@ -607,8 +681,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
ssleay_rand_seed,
|
ssleay_rand_seed,
|
||||||
ssleay_rand_nopseudo_bytes,
|
ssleay_rand_nopseudo_bytes,
|
||||||
ssleay_rand_cleanup,
|
ssleay_rand_cleanup,
|
||||||
--- openssl-1.0.1g.orig/crypto/dh/dh_ameth.c
|
Index: openssl-1.0.1h/crypto/dh/dh_ameth.c
|
||||||
+++ openssl-1.0.1g/crypto/dh/dh_ameth.c
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/dh/dh_ameth.c
|
||||||
|
+++ openssl-1.0.1h/crypto/dh/dh_ameth.c
|
||||||
@@ -466,6 +466,7 @@ int DHparams_print(BIO *bp, const DH *x)
|
@@ -466,6 +466,7 @@ int DHparams_print(BIO *bp, const DH *x)
|
||||||
return do_dh_print(bp, x, 4, NULL, 0);
|
return do_dh_print(bp, x, 4, NULL, 0);
|
||||||
}
|
}
|
||||||
@ -617,8 +693,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
const EVP_PKEY_ASN1_METHOD dh_asn1_meth =
|
const EVP_PKEY_ASN1_METHOD dh_asn1_meth =
|
||||||
{
|
{
|
||||||
EVP_PKEY_DH,
|
EVP_PKEY_DH,
|
||||||
--- openssl-1.0.1g.orig/crypto/dh/dh_pmeth.c
|
Index: openssl-1.0.1h/crypto/dh/dh_pmeth.c
|
||||||
+++ openssl-1.0.1g/crypto/dh/dh_pmeth.c
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/dh/dh_pmeth.c
|
||||||
|
+++ openssl-1.0.1h/crypto/dh/dh_pmeth.c
|
||||||
@@ -217,6 +217,7 @@ static int pkey_dh_derive(EVP_PKEY_CTX *
|
@@ -217,6 +217,7 @@ static int pkey_dh_derive(EVP_PKEY_CTX *
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
@ -627,8 +705,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
const EVP_PKEY_METHOD dh_pkey_meth =
|
const EVP_PKEY_METHOD dh_pkey_meth =
|
||||||
{
|
{
|
||||||
EVP_PKEY_DH,
|
EVP_PKEY_DH,
|
||||||
--- openssl-1.0.1g.orig/crypto/dsa/dsa_ameth.c
|
Index: openssl-1.0.1h/crypto/dsa/dsa_ameth.c
|
||||||
+++ openssl-1.0.1g/crypto/dsa/dsa_ameth.c
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/dsa/dsa_ameth.c
|
||||||
|
+++ openssl-1.0.1h/crypto/dsa/dsa_ameth.c
|
||||||
@@ -639,7 +639,7 @@ static int dsa_pkey_ctrl(EVP_PKEY *pkey,
|
@@ -639,7 +639,7 @@ static int dsa_pkey_ctrl(EVP_PKEY *pkey,
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -638,8 +718,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
const EVP_PKEY_ASN1_METHOD dsa_asn1_meths[] =
|
const EVP_PKEY_ASN1_METHOD dsa_asn1_meths[] =
|
||||||
{
|
{
|
||||||
|
|
||||||
--- openssl-1.0.1g.orig/crypto/dsa/dsa_pmeth.c
|
Index: openssl-1.0.1h/crypto/dsa/dsa_pmeth.c
|
||||||
+++ openssl-1.0.1g/crypto/dsa/dsa_pmeth.c
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/dsa/dsa_pmeth.c
|
||||||
|
+++ openssl-1.0.1h/crypto/dsa/dsa_pmeth.c
|
||||||
@@ -281,6 +281,7 @@ static int pkey_dsa_keygen(EVP_PKEY_CTX
|
@@ -281,6 +281,7 @@ static int pkey_dsa_keygen(EVP_PKEY_CTX
|
||||||
return DSA_generate_key(pkey->pkey.dsa);
|
return DSA_generate_key(pkey->pkey.dsa);
|
||||||
}
|
}
|
||||||
@ -648,9 +730,11 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
const EVP_PKEY_METHOD dsa_pkey_meth =
|
const EVP_PKEY_METHOD dsa_pkey_meth =
|
||||||
{
|
{
|
||||||
EVP_PKEY_DSA,
|
EVP_PKEY_DSA,
|
||||||
--- openssl-1.0.1g.orig/crypto/ec/ec_ameth.c
|
Index: openssl-1.0.1h/crypto/ec/ec_ameth.c
|
||||||
+++ openssl-1.0.1g/crypto/ec/ec_ameth.c
|
===================================================================
|
||||||
@@ -625,6 +625,7 @@ static int ec_pkey_ctrl(EVP_PKEY *pkey,
|
--- openssl-1.0.1h.orig/crypto/ec/ec_ameth.c
|
||||||
|
+++ openssl-1.0.1h/crypto/ec/ec_ameth.c
|
||||||
|
@@ -626,6 +626,7 @@ static int ec_pkey_ctrl(EVP_PKEY *pkey,
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -658,8 +742,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
const EVP_PKEY_ASN1_METHOD eckey_asn1_meth =
|
const EVP_PKEY_ASN1_METHOD eckey_asn1_meth =
|
||||||
{
|
{
|
||||||
EVP_PKEY_EC,
|
EVP_PKEY_EC,
|
||||||
--- openssl-1.0.1g.orig/crypto/ec/ec_pmeth.c
|
Index: openssl-1.0.1h/crypto/ec/ec_pmeth.c
|
||||||
+++ openssl-1.0.1g/crypto/ec/ec_pmeth.c
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/ec/ec_pmeth.c
|
||||||
|
+++ openssl-1.0.1h/crypto/ec/ec_pmeth.c
|
||||||
@@ -304,6 +304,7 @@ static int pkey_ec_keygen(EVP_PKEY_CTX *
|
@@ -304,6 +304,7 @@ static int pkey_ec_keygen(EVP_PKEY_CTX *
|
||||||
return EC_KEY_generate_key(pkey->pkey.ec);
|
return EC_KEY_generate_key(pkey->pkey.ec);
|
||||||
}
|
}
|
||||||
@ -668,8 +754,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
const EVP_PKEY_METHOD ec_pkey_meth =
|
const EVP_PKEY_METHOD ec_pkey_meth =
|
||||||
{
|
{
|
||||||
EVP_PKEY_EC,
|
EVP_PKEY_EC,
|
||||||
--- openssl-1.0.1g.orig/crypto/hmac/hm_ameth.c
|
Index: openssl-1.0.1h/crypto/hmac/hm_ameth.c
|
||||||
+++ openssl-1.0.1g/crypto/hmac/hm_ameth.c
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/hmac/hm_ameth.c
|
||||||
|
+++ openssl-1.0.1h/crypto/hmac/hm_ameth.c
|
||||||
@@ -138,6 +138,7 @@ static int old_hmac_encode(const EVP_PKE
|
@@ -138,6 +138,7 @@ static int old_hmac_encode(const EVP_PKE
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
@ -678,8 +766,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
const EVP_PKEY_ASN1_METHOD hmac_asn1_meth =
|
const EVP_PKEY_ASN1_METHOD hmac_asn1_meth =
|
||||||
{
|
{
|
||||||
EVP_PKEY_HMAC,
|
EVP_PKEY_HMAC,
|
||||||
--- openssl-1.0.1g.orig/crypto/hmac/hm_pmeth.c
|
Index: openssl-1.0.1h/crypto/hmac/hm_pmeth.c
|
||||||
+++ openssl-1.0.1g/crypto/hmac/hm_pmeth.c
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/hmac/hm_pmeth.c
|
||||||
|
+++ openssl-1.0.1h/crypto/hmac/hm_pmeth.c
|
||||||
@@ -235,6 +235,7 @@ static int pkey_hmac_ctrl_str(EVP_PKEY_C
|
@@ -235,6 +235,7 @@ static int pkey_hmac_ctrl_str(EVP_PKEY_C
|
||||||
return -2;
|
return -2;
|
||||||
}
|
}
|
||||||
@ -688,8 +778,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
const EVP_PKEY_METHOD hmac_pkey_meth =
|
const EVP_PKEY_METHOD hmac_pkey_meth =
|
||||||
{
|
{
|
||||||
EVP_PKEY_HMAC,
|
EVP_PKEY_HMAC,
|
||||||
--- openssl-1.0.1g.orig/crypto/rsa/rsa_ameth.c
|
Index: openssl-1.0.1h/crypto/rsa/rsa_ameth.c
|
||||||
+++ openssl-1.0.1g/crypto/rsa/rsa_ameth.c
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/rsa/rsa_ameth.c
|
||||||
|
+++ openssl-1.0.1h/crypto/rsa/rsa_ameth.c
|
||||||
@@ -657,6 +657,7 @@ static int rsa_item_sign(EVP_MD_CTX *ctx
|
@@ -657,6 +657,7 @@ static int rsa_item_sign(EVP_MD_CTX *ctx
|
||||||
return 2;
|
return 2;
|
||||||
}
|
}
|
||||||
@ -698,8 +790,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
const EVP_PKEY_ASN1_METHOD rsa_asn1_meths[] =
|
const EVP_PKEY_ASN1_METHOD rsa_asn1_meths[] =
|
||||||
{
|
{
|
||||||
{
|
{
|
||||||
--- openssl-1.0.1g.orig/crypto/rsa/rsa_pmeth.c
|
Index: openssl-1.0.1h/crypto/rsa/rsa_pmeth.c
|
||||||
+++ openssl-1.0.1g/crypto/rsa/rsa_pmeth.c
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/rsa/rsa_pmeth.c
|
||||||
|
+++ openssl-1.0.1h/crypto/rsa/rsa_pmeth.c
|
||||||
@@ -685,6 +685,7 @@ static int pkey_rsa_keygen(EVP_PKEY_CTX
|
@@ -685,6 +685,7 @@ static int pkey_rsa_keygen(EVP_PKEY_CTX
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
@ -708,8 +802,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
const EVP_PKEY_METHOD rsa_pkey_meth =
|
const EVP_PKEY_METHOD rsa_pkey_meth =
|
||||||
{
|
{
|
||||||
EVP_PKEY_RSA,
|
EVP_PKEY_RSA,
|
||||||
--- openssl-1.0.1g.orig/crypto/objects/obj_xref.c
|
Index: openssl-1.0.1h/crypto/objects/obj_xref.c
|
||||||
+++ openssl-1.0.1g/crypto/objects/obj_xref.c
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/objects/obj_xref.c
|
||||||
|
+++ openssl-1.0.1h/crypto/objects/obj_xref.c
|
||||||
@@ -60,7 +60,7 @@
|
@@ -60,7 +60,7 @@
|
||||||
#include "obj_xref.h"
|
#include "obj_xref.h"
|
||||||
|
|
||||||
@ -719,8 +815,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
|
|
||||||
static int sig_cmp(const nid_triple *a, const nid_triple *b)
|
static int sig_cmp(const nid_triple *a, const nid_triple *b)
|
||||||
{
|
{
|
||||||
--- openssl-1.0.1g.orig/crypto/pem/pem_lib.c
|
Index: openssl-1.0.1h/crypto/pem/pem_lib.c
|
||||||
+++ openssl-1.0.1g/crypto/pem/pem_lib.c
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/pem/pem_lib.c
|
||||||
|
+++ openssl-1.0.1h/crypto/pem/pem_lib.c
|
||||||
@@ -80,7 +80,7 @@ const char PEM_version[]="PEM" OPENSSL_V
|
@@ -80,7 +80,7 @@ const char PEM_version[]="PEM" OPENSSL_V
|
||||||
|
|
||||||
static int load_iv(char **fromp,unsigned char *to, int num);
|
static int load_iv(char **fromp,unsigned char *to, int num);
|
||||||
@ -730,8 +828,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
|
|
||||||
int PEM_def_callback(char *buf, int num, int w, void *key)
|
int PEM_def_callback(char *buf, int num, int w, void *key)
|
||||||
{
|
{
|
||||||
--- openssl-1.0.1g.orig/crypto/asn1/tasn_prn.c
|
Index: openssl-1.0.1h/crypto/asn1/tasn_prn.c
|
||||||
+++ openssl-1.0.1g/crypto/asn1/tasn_prn.c
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/asn1/tasn_prn.c
|
||||||
|
+++ openssl-1.0.1h/crypto/asn1/tasn_prn.c
|
||||||
@@ -72,7 +72,7 @@
|
@@ -72,7 +72,7 @@
|
||||||
|
|
||||||
/* ASN1_PCTX routines */
|
/* ASN1_PCTX routines */
|
||||||
@ -741,8 +841,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
{
|
{
|
||||||
ASN1_PCTX_FLAGS_SHOW_ABSENT, /* flags */
|
ASN1_PCTX_FLAGS_SHOW_ABSENT, /* flags */
|
||||||
0, /* nm_flags */
|
0, /* nm_flags */
|
||||||
--- openssl-1.0.1g.orig/crypto/bn/bn_exp.c
|
Index: openssl-1.0.1h/crypto/bn/bn_exp.c
|
||||||
+++ openssl-1.0.1g/crypto/bn/bn_exp.c
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/bn/bn_exp.c
|
||||||
|
+++ openssl-1.0.1h/crypto/bn/bn_exp.c
|
||||||
@@ -684,11 +684,11 @@ int BN_mod_exp_mont_consttime(BIGNUM *rr
|
@@ -684,11 +684,11 @@ int BN_mod_exp_mont_consttime(BIGNUM *rr
|
||||||
{
|
{
|
||||||
void bn_mul_mont_gather5(BN_ULONG *rp,const BN_ULONG *ap,
|
void bn_mul_mont_gather5(BN_ULONG *rp,const BN_ULONG *ap,
|
||||||
@ -758,8 +860,10 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
|
|
||||||
BN_ULONG *np=mont->N.d, *n0=mont->n0;
|
BN_ULONG *np=mont->N.d, *n0=mont->n0;
|
||||||
|
|
||||||
--- openssl-1.0.1g.orig/crypto/bn/bn_gf2m.c
|
Index: openssl-1.0.1h/crypto/bn/bn_gf2m.c
|
||||||
+++ openssl-1.0.1g/crypto/bn/bn_gf2m.c
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/crypto/bn/bn_gf2m.c
|
||||||
|
+++ openssl-1.0.1h/crypto/bn/bn_gf2m.c
|
||||||
@@ -220,7 +220,7 @@ static void bn_GF2m_mul_2x2(BN_ULONG *r,
|
@@ -220,7 +220,7 @@ static void bn_GF2m_mul_2x2(BN_ULONG *r,
|
||||||
r[1] = r[3] ^ r[2] ^ r[0] ^ m1 ^ m0; /* l1 ^= l0 ^ h0 ^ m0; */
|
r[1] = r[3] ^ r[2] ^ r[0] ^ m1 ^ m0; /* l1 ^= l0 ^ h0 ^ m0; */
|
||||||
}
|
}
|
||||||
@ -769,3 +873,34 @@ Subject: [PATCH] libcrypto: Hide library-private symbols
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* Add polynomials a and b and store result in r; r could be a or b, a and b
|
/* Add polynomials a and b and store result in r; r could be a or b, a and b
|
||||||
|
Index: openssl-1.0.1h/test/Makefile
|
||||||
|
===================================================================
|
||||||
|
--- openssl-1.0.1h.orig/test/Makefile
|
||||||
|
+++ openssl-1.0.1h/test/Makefile
|
||||||
|
@@ -75,7 +75,7 @@ EXE= $(BNTEST)$(EXE_EXT) $(ECTEST)$(EXE_
|
||||||
|
$(RANDTEST)$(EXE_EXT) $(DHTEST)$(EXE_EXT) $(ENGINETEST)$(EXE_EXT) \
|
||||||
|
$(BFTEST)$(EXE_EXT) $(CASTTEST)$(EXE_EXT) $(SSLTEST)$(EXE_EXT) $(EXPTEST)$(EXE_EXT) $(DSATEST)$(EXE_EXT) $(RSATEST)$(EXE_EXT) \
|
||||||
|
$(EVPTEST)$(EXE_EXT) $(IGETEST)$(EXE_EXT) $(JPAKETEST)$(EXE_EXT) $(SRPTEST)$(EXE_EXT) \
|
||||||
|
- $(ASN1TEST)$(EXE_EXT) $(HEARTBEATTEST)$(EXE_EXT)
|
||||||
|
+ $(ASN1TEST)$(EXE_EXT)
|
||||||
|
|
||||||
|
# $(METHTEST)$(EXE_EXT)
|
||||||
|
|
||||||
|
@@ -87,7 +87,7 @@ OBJ= $(BNTEST).o $(ECTEST).o $(ECDSATES
|
||||||
|
$(MDC2TEST).o $(RMDTEST).o \
|
||||||
|
$(RANDTEST).o $(DHTEST).o $(ENGINETEST).o $(CASTTEST).o \
|
||||||
|
$(BFTEST).o $(SSLTEST).o $(DSATEST).o $(EXPTEST).o $(RSATEST).o \
|
||||||
|
- $(EVPTEST).o $(IGETEST).o $(JPAKETEST).o $(ASN1TEST).o $(HEARTBEATTEST).o
|
||||||
|
+ $(EVPTEST).o $(IGETEST).o $(JPAKETEST).o $(ASN1TEST).o
|
||||||
|
|
||||||
|
SRC= $(BNTEST).c $(ECTEST).c $(ECDSATEST).c $(ECDHTEST).c $(IDEATEST).c \
|
||||||
|
$(MD2TEST).c $(MD4TEST).c $(MD5TEST).c \
|
||||||
|
@@ -140,7 +140,7 @@ alltests: \
|
||||||
|
test_enc test_x509 test_rsa test_crl test_sid \
|
||||||
|
test_gen test_req test_pkcs7 test_verify test_dh test_dsa \
|
||||||
|
test_ss test_ca test_engine test_evp test_ssl test_tsa test_ige \
|
||||||
|
- test_jpake test_srp test_cms test_heartbeat
|
||||||
|
+ test_jpake test_srp test_cms
|
||||||
|
|
||||||
|
test_evp:
|
||||||
|
../util/shlib_wrap.sh ./$(EVPTEST) evptests.txt
|
||||||
|
@ -1,51 +0,0 @@
|
|||||||
From 9c8dc84ac16a2f21063ae36809d202d0284ecf82 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Ben Laurie <ben@links.org>
|
|
||||||
Date: Tue, 22 Apr 2014 13:11:56 +0100
|
|
||||||
Subject: [PATCH 09/17] Fix double frees.
|
|
||||||
|
|
||||||
---
|
|
||||||
CHANGES | 3 ++-
|
|
||||||
crypto/pkcs7/pk7_doit.c | 1 +
|
|
||||||
crypto/ts/ts_rsp_verify.c | 1 +
|
|
||||||
ssl/d1_srvr.c | 1 +
|
|
||||||
4 files changed, 5 insertions(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/crypto/pkcs7/pk7_doit.c b/crypto/pkcs7/pk7_doit.c
|
|
||||||
index 77fda3b..4c12a9d 100644
|
|
||||||
--- a/crypto/pkcs7/pk7_doit.c
|
|
||||||
+++ b/crypto/pkcs7/pk7_doit.c
|
|
||||||
@@ -928,6 +928,7 @@ int PKCS7_SIGNER_INFO_sign(PKCS7_SIGNER_INFO *si)
|
|
||||||
if (EVP_DigestSignUpdate(&mctx,abuf,alen) <= 0)
|
|
||||||
goto err;
|
|
||||||
OPENSSL_free(abuf);
|
|
||||||
+ abuf = NULL;
|
|
||||||
if (EVP_DigestSignFinal(&mctx, NULL, &siglen) <= 0)
|
|
||||||
goto err;
|
|
||||||
abuf = OPENSSL_malloc(siglen);
|
|
||||||
diff --git a/crypto/ts/ts_rsp_verify.c b/crypto/ts/ts_rsp_verify.c
|
|
||||||
index afe16af..b7d170a 100644
|
|
||||||
--- a/crypto/ts/ts_rsp_verify.c
|
|
||||||
+++ b/crypto/ts/ts_rsp_verify.c
|
|
||||||
@@ -629,6 +629,7 @@ static int TS_compute_imprint(BIO *data, TS_TST_INFO *tst_info,
|
|
||||||
X509_ALGOR_free(*md_alg);
|
|
||||||
OPENSSL_free(*imprint);
|
|
||||||
*imprint_len = 0;
|
|
||||||
+ *imprint = NULL;
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
diff --git a/ssl/d1_srvr.c b/ssl/d1_srvr.c
|
|
||||||
index 9975e20..1384ab0 100644
|
|
||||||
--- a/ssl/d1_srvr.c
|
|
||||||
+++ b/ssl/d1_srvr.c
|
|
||||||
@@ -1356,6 +1356,7 @@ int dtls1_send_server_key_exchange(SSL *s)
|
|
||||||
(unsigned char *)encodedPoint,
|
|
||||||
encodedlen);
|
|
||||||
OPENSSL_free(encodedPoint);
|
|
||||||
+ encodedPoint = NULL;
|
|
||||||
p += encodedlen;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
--
|
|
||||||
1.8.4.5
|
|
||||||
|
|
@ -1,26 +0,0 @@
|
|||||||
From f0816174d264b11f6f4ccb41c75883640a2416bb Mon Sep 17 00:00:00 2001
|
|
||||||
From: mancha <mancha1@zoho.com>
|
|
||||||
Date: Thu, 24 Apr 2014 19:06:20 +0000
|
|
||||||
Subject: [PATCH 12/17] Fix eckey_priv_encode()
|
|
||||||
|
|
||||||
Fix eckey_priv_encode to return an error on failure of i2d_ECPrivateKey.
|
|
||||||
---
|
|
||||||
CHANGES | 4 ++++
|
|
||||||
crypto/ec/ec_ameth.c | 1 +
|
|
||||||
2 files changed, 5 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/crypto/ec/ec_ameth.c b/crypto/ec/ec_ameth.c
|
|
||||||
index 0ce4524..f715a23 100644
|
|
||||||
--- a/crypto/ec/ec_ameth.c
|
|
||||||
+++ b/crypto/ec/ec_ameth.c
|
|
||||||
@@ -352,6 +352,7 @@ static int eckey_priv_encode(PKCS8_PRIV_KEY_INFO *p8, const EVP_PKEY *pkey)
|
|
||||||
EC_KEY_set_enc_flags(ec_key, old_flags);
|
|
||||||
OPENSSL_free(ep);
|
|
||||||
ECerr(EC_F_ECKEY_PRIV_ENCODE, ERR_R_EC_LIB);
|
|
||||||
+ return 0;
|
|
||||||
}
|
|
||||||
/* restore old encoding flags */
|
|
||||||
EC_KEY_set_enc_flags(ec_key, old_flags);
|
|
||||||
--
|
|
||||||
1.8.4.5
|
|
||||||
|
|
@ -1,31 +0,0 @@
|
|||||||
From 8eb094b9460575a328ba04708147c91fc267b394 Mon Sep 17 00:00:00 2001
|
|
||||||
From: David Ramos <daramos@stanford.edu>
|
|
||||||
Date: Sat, 3 May 2014 12:00:27 +0200
|
|
||||||
Subject: [PATCH 17/17] Double free in i2o_ECPublicKey
|
|
||||||
|
|
||||||
PR: 3338
|
|
||||||
---
|
|
||||||
crypto/ec/ec_asn1.c | 7 +++++--
|
|
||||||
1 file changed, 5 insertions(+), 2 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/crypto/ec/ec_asn1.c b/crypto/ec/ec_asn1.c
|
|
||||||
index 145807b..e94f34e 100644
|
|
||||||
--- a/crypto/ec/ec_asn1.c
|
|
||||||
+++ b/crypto/ec/ec_asn1.c
|
|
||||||
@@ -1435,8 +1435,11 @@ int i2o_ECPublicKey(EC_KEY *a, unsigned char **out)
|
|
||||||
*out, buf_len, NULL))
|
|
||||||
{
|
|
||||||
ECerr(EC_F_I2O_ECPUBLICKEY, ERR_R_EC_LIB);
|
|
||||||
- OPENSSL_free(*out);
|
|
||||||
- *out = NULL;
|
|
||||||
+ if (new_buffer)
|
|
||||||
+ {
|
|
||||||
+ OPENSSL_free(*out);
|
|
||||||
+ *out = NULL;
|
|
||||||
+ }
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
if (!new_buffer)
|
|
||||||
--
|
|
||||||
1.8.4.5
|
|
||||||
|
|
@ -1,26 +0,0 @@
|
|||||||
From 7b7b18c57e899201338d91083bc49cc8c5a915fc Mon Sep 17 00:00:00 2001
|
|
||||||
From: Tim Hudson <tjh@cryptsoft.com>
|
|
||||||
Date: Mon, 5 May 2014 06:41:22 +1000
|
|
||||||
Subject: [PATCH 18/23] - fix coverity issues 966593-966596
|
|
||||||
|
|
||||||
---
|
|
||||||
crypto/srp/srp_vfy.c | 3 +++
|
|
||||||
1 file changed, 3 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/crypto/srp/srp_vfy.c b/crypto/srp/srp_vfy.c
|
|
||||||
index 4a3d13e..fdca19f 100644
|
|
||||||
--- a/crypto/srp/srp_vfy.c
|
|
||||||
+++ b/crypto/srp/srp_vfy.c
|
|
||||||
@@ -93,6 +93,9 @@ static int t_fromb64(unsigned char *a, const char *src)
|
|
||||||
else a[i] = loc - b64table;
|
|
||||||
++i;
|
|
||||||
}
|
|
||||||
+ /* if nothing valid to process we have a zero length response */
|
|
||||||
+ if (i == 0)
|
|
||||||
+ return 0;
|
|
||||||
size = i;
|
|
||||||
i = size - 1;
|
|
||||||
j = size;
|
|
||||||
--
|
|
||||||
1.8.4.5
|
|
||||||
|
|
@ -1,27 +0,0 @@
|
|||||||
From a41d5174e27c99d1caefd76a8e927c814ede509e Mon Sep 17 00:00:00 2001
|
|
||||||
From: "Dr. Stephen Henson" <steve@openssl.org>
|
|
||||||
Date: Tue, 6 May 2014 14:07:37 +0100
|
|
||||||
Subject: [PATCH 20/23] Initialize num properly.
|
|
||||||
|
|
||||||
PR#3289
|
|
||||||
PR#3345
|
|
||||||
(cherry picked from commit 3ba1e406c2309adb427ced9815ebf05f5b58d155)
|
|
||||||
---
|
|
||||||
crypto/evp/bio_b64.c | 1 +
|
|
||||||
1 file changed, 1 insertion(+)
|
|
||||||
|
|
||||||
diff --git a/crypto/evp/bio_b64.c b/crypto/evp/bio_b64.c
|
|
||||||
index ac6d441..16863fe 100644
|
|
||||||
--- a/crypto/evp/bio_b64.c
|
|
||||||
+++ b/crypto/evp/bio_b64.c
|
|
||||||
@@ -226,6 +226,7 @@ static int b64_read(BIO *b, char *out, int outl)
|
|
||||||
else if (ctx->start)
|
|
||||||
{
|
|
||||||
q=p=(unsigned char *)ctx->tmp;
|
|
||||||
+ num = 0;
|
|
||||||
for (j=0; j<i; j++)
|
|
||||||
{
|
|
||||||
if (*(q++) != '\n') continue;
|
|
||||||
--
|
|
||||||
1.8.4.5
|
|
||||||
|
|
@ -1,85 +0,0 @@
|
|||||||
From d8afda60a991791f27cfac79186b1f8a4f4e30a0 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Geoff Thorpe <geoff@openssl.org>
|
|
||||||
Date: Sun, 4 May 2014 16:19:22 -0400
|
|
||||||
Subject: [PATCH 22/23] bignum: allow concurrent BN_MONT_CTX_set_locked()
|
|
||||||
|
|
||||||
The lazy-initialisation of BN_MONT_CTX was serialising all threads, as
|
|
||||||
noted by Daniel Sands and co at Sandia. This was to handle the case that
|
|
||||||
2 or more threads race to lazy-init the same context, but stunted all
|
|
||||||
scalability in the case where 2 or more threads are doing unrelated
|
|
||||||
things! We favour the latter case by punishing the former. The init work
|
|
||||||
gets done by each thread that finds the context to be uninitialised, and
|
|
||||||
we then lock the "set" logic after that work is done - the winning
|
|
||||||
thread's work gets used, the losing threads throw away what they've done.
|
|
||||||
|
|
||||||
Signed-off-by: Geoff Thorpe <geoff@openssl.org>
|
|
||||||
---
|
|
||||||
crypto/bn/bn_mont.c | 46 ++++++++++++++++++++++++++--------------------
|
|
||||||
1 file changed, 26 insertions(+), 20 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/crypto/bn/bn_mont.c b/crypto/bn/bn_mont.c
|
|
||||||
index 427b5cf..ee8532c 100644
|
|
||||||
--- a/crypto/bn/bn_mont.c
|
|
||||||
+++ b/crypto/bn/bn_mont.c
|
|
||||||
@@ -478,32 +478,38 @@ BN_MONT_CTX *BN_MONT_CTX_copy(BN_MONT_CTX *to, BN_MONT_CTX *from)
|
|
||||||
BN_MONT_CTX *BN_MONT_CTX_set_locked(BN_MONT_CTX **pmont, int lock,
|
|
||||||
const BIGNUM *mod, BN_CTX *ctx)
|
|
||||||
{
|
|
||||||
- int got_write_lock = 0;
|
|
||||||
BN_MONT_CTX *ret;
|
|
||||||
|
|
||||||
CRYPTO_r_lock(lock);
|
|
||||||
- if (!*pmont)
|
|
||||||
+ ret = *pmont;
|
|
||||||
+ CRYPTO_r_unlock(lock);
|
|
||||||
+ if (ret)
|
|
||||||
+ return ret;
|
|
||||||
+
|
|
||||||
+ /* We don't want to serialise globally while doing our lazy-init math in
|
|
||||||
+ * BN_MONT_CTX_set. That punishes threads that are doing independent
|
|
||||||
+ * things. Instead, punish the case where more than one thread tries to
|
|
||||||
+ * lazy-init the same 'pmont', by having each do the lazy-init math work
|
|
||||||
+ * independently and only use the one from the thread that wins the race
|
|
||||||
+ * (the losers throw away the work they've done). */
|
|
||||||
+ ret = BN_MONT_CTX_new();
|
|
||||||
+ if (!ret)
|
|
||||||
+ return NULL;
|
|
||||||
+ if (!BN_MONT_CTX_set(ret, mod, ctx))
|
|
||||||
{
|
|
||||||
- CRYPTO_r_unlock(lock);
|
|
||||||
- CRYPTO_w_lock(lock);
|
|
||||||
- got_write_lock = 1;
|
|
||||||
+ BN_MONT_CTX_free(ret);
|
|
||||||
+ return NULL;
|
|
||||||
+ }
|
|
||||||
|
|
||||||
- if (!*pmont)
|
|
||||||
- {
|
|
||||||
- ret = BN_MONT_CTX_new();
|
|
||||||
- if (ret && !BN_MONT_CTX_set(ret, mod, ctx))
|
|
||||||
- BN_MONT_CTX_free(ret);
|
|
||||||
- else
|
|
||||||
- *pmont = ret;
|
|
||||||
- }
|
|
||||||
+ /* The locked compare-and-set, after the local work is done. */
|
|
||||||
+ CRYPTO_w_lock(lock);
|
|
||||||
+ if (*pmont)
|
|
||||||
+ {
|
|
||||||
+ BN_MONT_CTX_free(ret);
|
|
||||||
+ ret = *pmont;
|
|
||||||
}
|
|
||||||
-
|
|
||||||
- ret = *pmont;
|
|
||||||
-
|
|
||||||
- if (got_write_lock)
|
|
||||||
- CRYPTO_w_unlock(lock);
|
|
||||||
else
|
|
||||||
- CRYPTO_r_unlock(lock);
|
|
||||||
-
|
|
||||||
+ *pmont = ret;
|
|
||||||
+ CRYPTO_w_unlock(lock);
|
|
||||||
return ret;
|
|
||||||
}
|
|
||||||
--
|
|
||||||
1.8.4.5
|
|
||||||
|
|
@ -1,30 +0,0 @@
|
|||||||
From d0666f289ac013094bbbf547bfbcd616199b7d2d Mon Sep 17 00:00:00 2001
|
|
||||||
From: Geoff Thorpe <geoff@openssl.org>
|
|
||||||
Date: Sun, 4 May 2014 18:44:14 -0400
|
|
||||||
Subject: [PATCH 23/23] evp: prevent underflow in base64 decoding
|
|
||||||
|
|
||||||
This patch resolves RT ticket #2608.
|
|
||||||
|
|
||||||
Thanks to Robert Dugal for originally spotting this, and to David
|
|
||||||
Ramos for noticing that the ball had been dropped.
|
|
||||||
|
|
||||||
Signed-off-by: Geoff Thorpe <geoff@openssl.org>
|
|
||||||
---
|
|
||||||
crypto/evp/encode.c | 1 +
|
|
||||||
1 file changed, 1 insertion(+)
|
|
||||||
|
|
||||||
diff --git a/crypto/evp/encode.c b/crypto/evp/encode.c
|
|
||||||
index 28546a8..4654bdc 100644
|
|
||||||
--- a/crypto/evp/encode.c
|
|
||||||
+++ b/crypto/evp/encode.c
|
|
||||||
@@ -324,6 +324,7 @@ int EVP_DecodeUpdate(EVP_ENCODE_CTX *ctx, unsigned char *out, int *outl,
|
|
||||||
v=EVP_DecodeBlock(out,d,n);
|
|
||||||
n=0;
|
|
||||||
if (v < 0) { rv=0; goto end; }
|
|
||||||
+ if (eof > v) { rv=-1; goto end; }
|
|
||||||
ret+=(v-eof);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
--
|
|
||||||
1.8.4.5
|
|
||||||
|
|
@ -1,63 +0,0 @@
|
|||||||
From c6a47f988c19093e4716d58dbed92938c18e1640 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Matt Caswell <matt@openssl.org>
|
|
||||||
Date: Wed, 7 May 2014 23:21:02 +0100
|
|
||||||
Subject: [PATCH 24/25] Fixed NULL pointer dereference in PKCS7_dataDecode
|
|
||||||
reported by David Ramos in PR#3339
|
|
||||||
|
|
||||||
---
|
|
||||||
crypto/pkcs7/pk7_doit.c | 5 +++++
|
|
||||||
crypto/pkcs7/pkcs7.h | 1 +
|
|
||||||
crypto/pkcs7/pkcs7err.c | 3 ++-
|
|
||||||
3 files changed, 8 insertions(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/crypto/pkcs7/pk7_doit.c b/crypto/pkcs7/pk7_doit.c
|
|
||||||
index 4c12a9d..d91aa11 100644
|
|
||||||
--- a/crypto/pkcs7/pk7_doit.c
|
|
||||||
+++ b/crypto/pkcs7/pk7_doit.c
|
|
||||||
@@ -440,6 +440,11 @@ BIO *PKCS7_dataDecode(PKCS7 *p7, EVP_PKEY *pkey, BIO *in_bio, X509 *pcert)
|
|
||||||
{
|
|
||||||
case NID_pkcs7_signed:
|
|
||||||
data_body=PKCS7_get_octet_string(p7->d.sign->contents);
|
|
||||||
+ if (!PKCS7_is_detached(p7) && data_body == NULL)
|
|
||||||
+ {
|
|
||||||
+ PKCS7err(PKCS7_F_PKCS7_DATADECODE,PKCS7_R_INVALID_SIGNED_DATA_TYPE);
|
|
||||||
+ goto err;
|
|
||||||
+ }
|
|
||||||
md_sk=p7->d.sign->md_algs;
|
|
||||||
break;
|
|
||||||
case NID_pkcs7_signedAndEnveloped:
|
|
||||||
diff --git a/crypto/pkcs7/pkcs7.h b/crypto/pkcs7/pkcs7.h
|
|
||||||
index e4d4431..04f6037 100644
|
|
||||||
--- a/crypto/pkcs7/pkcs7.h
|
|
||||||
+++ b/crypto/pkcs7/pkcs7.h
|
|
||||||
@@ -453,6 +453,7 @@ void ERR_load_PKCS7_strings(void);
|
|
||||||
#define PKCS7_R_ERROR_SETTING_CIPHER 121
|
|
||||||
#define PKCS7_R_INVALID_MIME_TYPE 131
|
|
||||||
#define PKCS7_R_INVALID_NULL_POINTER 143
|
|
||||||
+#define PKCS7_R_INVALID_SIGNED_DATA_TYPE 155
|
|
||||||
#define PKCS7_R_MIME_NO_CONTENT_TYPE 132
|
|
||||||
#define PKCS7_R_MIME_PARSE_ERROR 133
|
|
||||||
#define PKCS7_R_MIME_SIG_PARSE_ERROR 134
|
|
||||||
diff --git a/crypto/pkcs7/pkcs7err.c b/crypto/pkcs7/pkcs7err.c
|
|
||||||
index d0af32a..f3db08e 100644
|
|
||||||
--- a/crypto/pkcs7/pkcs7err.c
|
|
||||||
+++ b/crypto/pkcs7/pkcs7err.c
|
|
||||||
@@ -1,6 +1,6 @@
|
|
||||||
/* crypto/pkcs7/pkcs7err.c */
|
|
||||||
/* ====================================================================
|
|
||||||
- * Copyright (c) 1999-2007 The OpenSSL Project. All rights reserved.
|
|
||||||
+ * Copyright (c) 1999-2014 The OpenSSL Project. All rights reserved.
|
|
||||||
*
|
|
||||||
* Redistribution and use in source and binary forms, with or without
|
|
||||||
* modification, are permitted provided that the following conditions
|
|
||||||
@@ -130,6 +130,7 @@ static ERR_STRING_DATA PKCS7_str_reasons[]=
|
|
||||||
{ERR_REASON(PKCS7_R_ERROR_SETTING_CIPHER),"error setting cipher"},
|
|
||||||
{ERR_REASON(PKCS7_R_INVALID_MIME_TYPE) ,"invalid mime type"},
|
|
||||||
{ERR_REASON(PKCS7_R_INVALID_NULL_POINTER),"invalid null pointer"},
|
|
||||||
+{ERR_REASON(PKCS7_R_INVALID_SIGNED_DATA_TYPE),"invalid signed data type"},
|
|
||||||
{ERR_REASON(PKCS7_R_MIME_NO_CONTENT_TYPE),"mime no content type"},
|
|
||||||
{ERR_REASON(PKCS7_R_MIME_PARSE_ERROR) ,"mime parse error"},
|
|
||||||
{ERR_REASON(PKCS7_R_MIME_SIG_PARSE_ERROR),"mime sig parse error"},
|
|
||||||
--
|
|
||||||
1.8.4.5
|
|
||||||
|
|
@ -1,49 +0,0 @@
|
|||||||
From 6a60b414318ec4315ee016c3e15777c448603115 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Tim Hudson <tjh@cryptsoft.com>
|
|
||||||
Date: Mon, 5 May 2014 08:22:42 +1000
|
|
||||||
Subject: [PATCH 25/25] fix coverity issue 966597 - error line is not always
|
|
||||||
initialised
|
|
||||||
|
|
||||||
---
|
|
||||||
ssl/ssl_asn1.c | 4 ++++
|
|
||||||
1 file changed, 4 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/ssl/ssl_asn1.c b/ssl/ssl_asn1.c
|
|
||||||
index 38540be..4775003 100644
|
|
||||||
--- a/ssl/ssl_asn1.c
|
|
||||||
+++ b/ssl/ssl_asn1.c
|
|
||||||
@@ -408,6 +408,7 @@ SSL_SESSION *d2i_SSL_SESSION(SSL_SESSION **a, const unsigned char **pp,
|
|
||||||
if (os.length != 3)
|
|
||||||
{
|
|
||||||
c.error=SSL_R_CIPHER_CODE_WRONG_LENGTH;
|
|
||||||
+ c.line=__LINE__;
|
|
||||||
goto err;
|
|
||||||
}
|
|
||||||
id=0x02000000L|
|
|
||||||
@@ -420,6 +421,7 @@ SSL_SESSION *d2i_SSL_SESSION(SSL_SESSION **a, const unsigned char **pp,
|
|
||||||
if (os.length != 2)
|
|
||||||
{
|
|
||||||
c.error=SSL_R_CIPHER_CODE_WRONG_LENGTH;
|
|
||||||
+ c.line=__LINE__;
|
|
||||||
goto err;
|
|
||||||
}
|
|
||||||
id=0x03000000L|
|
|
||||||
@@ -429,6 +431,7 @@ SSL_SESSION *d2i_SSL_SESSION(SSL_SESSION **a, const unsigned char **pp,
|
|
||||||
else
|
|
||||||
{
|
|
||||||
c.error=SSL_R_UNKNOWN_SSL_VERSION;
|
|
||||||
+ c.line=__LINE__;
|
|
||||||
goto err;
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -521,6 +524,7 @@ SSL_SESSION *d2i_SSL_SESSION(SSL_SESSION **a, const unsigned char **pp,
|
|
||||||
if (os.length > SSL_MAX_SID_CTX_LENGTH)
|
|
||||||
{
|
|
||||||
c.error=SSL_R_BAD_LENGTH;
|
|
||||||
+ c.line=__LINE__;
|
|
||||||
goto err;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
--
|
|
||||||
1.8.4.5
|
|
||||||
|
|
@ -1,15 +0,0 @@
|
|||||||
Index: openssl-1.0.1g/ssl/s3_pkt.c
|
|
||||||
===================================================================
|
|
||||||
--- openssl-1.0.1g.orig/ssl/s3_pkt.c
|
|
||||||
+++ openssl-1.0.1g/ssl/s3_pkt.c
|
|
||||||
@@ -657,6 +657,10 @@ static int do_ssl3_write(SSL *s, int typ
|
|
||||||
if (i <= 0)
|
|
||||||
return(i);
|
|
||||||
/* if it went, fall through and send more stuff */
|
|
||||||
+ /* we may have released our buffer, so get it again */
|
|
||||||
+ if (wb->buf == NULL)
|
|
||||||
+ if (!ssl3_setup_write_buffer(s))
|
|
||||||
+ return -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (len == 0 && !create_empty_fragment)
|
|
@ -1,7 +1,7 @@
|
|||||||
Index: openssl-1.0.1g/apps/s_apps.h
|
Index: openssl-1.0.1h/apps/s_apps.h
|
||||||
===================================================================
|
===================================================================
|
||||||
--- openssl-1.0.1g.orig/apps/s_apps.h
|
--- openssl-1.0.1h.orig/apps/s_apps.h
|
||||||
+++ openssl-1.0.1g/apps/s_apps.h
|
+++ openssl-1.0.1h/apps/s_apps.h
|
||||||
@@ -148,7 +148,7 @@ typedef fd_mask fd_set;
|
@@ -148,7 +148,7 @@ typedef fd_mask fd_set;
|
||||||
#define PORT_STR "4433"
|
#define PORT_STR "4433"
|
||||||
#define PROTOCOL "tcp"
|
#define PROTOCOL "tcp"
|
||||||
@ -24,10 +24,10 @@ Index: openssl-1.0.1g/apps/s_apps.h
|
|||||||
|
|
||||||
long MS_CALLBACK bio_dump_callback(BIO *bio, int cmd, const char *argp,
|
long MS_CALLBACK bio_dump_callback(BIO *bio, int cmd, const char *argp,
|
||||||
int argi, long argl, long ret);
|
int argi, long argl, long ret);
|
||||||
Index: openssl-1.0.1g/apps/s_client.c
|
Index: openssl-1.0.1h/apps/s_client.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- openssl-1.0.1g.orig/apps/s_client.c
|
--- openssl-1.0.1h.orig/apps/s_client.c
|
||||||
+++ openssl-1.0.1g/apps/s_client.c
|
+++ openssl-1.0.1h/apps/s_client.c
|
||||||
@@ -567,7 +567,7 @@ int MAIN(int argc, char **argv)
|
@@ -567,7 +567,7 @@ int MAIN(int argc, char **argv)
|
||||||
int cbuf_len,cbuf_off;
|
int cbuf_len,cbuf_off;
|
||||||
int sbuf_len,sbuf_off;
|
int sbuf_len,sbuf_off;
|
||||||
@ -62,10 +62,10 @@ Index: openssl-1.0.1g/apps/s_client.c
|
|||||||
{
|
{
|
||||||
BIO_printf(bio_err,"connect:errno=%d\n",get_last_socket_error());
|
BIO_printf(bio_err,"connect:errno=%d\n",get_last_socket_error());
|
||||||
SHUTDOWN(s);
|
SHUTDOWN(s);
|
||||||
Index: openssl-1.0.1g/apps/s_server.c
|
Index: openssl-1.0.1h/apps/s_server.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- openssl-1.0.1g.orig/apps/s_server.c
|
--- openssl-1.0.1h.orig/apps/s_server.c
|
||||||
+++ openssl-1.0.1g/apps/s_server.c
|
+++ openssl-1.0.1h/apps/s_server.c
|
||||||
@@ -933,7 +933,7 @@ int MAIN(int argc, char *argv[])
|
@@ -933,7 +933,7 @@ int MAIN(int argc, char *argv[])
|
||||||
{
|
{
|
||||||
X509_VERIFY_PARAM *vpm = NULL;
|
X509_VERIFY_PARAM *vpm = NULL;
|
||||||
@ -97,10 +97,10 @@ Index: openssl-1.0.1g/apps/s_server.c
|
|||||||
print_stats(bio_s_out,ctx);
|
print_stats(bio_s_out,ctx);
|
||||||
ret=0;
|
ret=0;
|
||||||
end:
|
end:
|
||||||
Index: openssl-1.0.1g/apps/s_socket.c
|
Index: openssl-1.0.1h/apps/s_socket.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- openssl-1.0.1g.orig/apps/s_socket.c
|
--- openssl-1.0.1h.orig/apps/s_socket.c
|
||||||
+++ openssl-1.0.1g/apps/s_socket.c
|
+++ openssl-1.0.1h/apps/s_socket.c
|
||||||
@@ -102,9 +102,7 @@ static struct hostent *GetHostByName(cha
|
@@ -102,9 +102,7 @@ static struct hostent *GetHostByName(cha
|
||||||
static void ssl_sock_cleanup(void);
|
static void ssl_sock_cleanup(void);
|
||||||
#endif
|
#endif
|
||||||
@ -182,7 +182,7 @@ Index: openssl-1.0.1g/apps/s_socket.c
|
|||||||
{
|
{
|
||||||
- i=0;
|
- i=0;
|
||||||
- i=setsockopt(s,SOL_SOCKET,SO_KEEPALIVE,(char *)&i,sizeof(i));
|
- i=setsockopt(s,SOL_SOCKET,SO_KEEPALIVE,(char *)&i,sizeof(i));
|
||||||
- if (i < 0) { perror("keepalive"); return(0); }
|
- if (i < 0) { closesocket(s); perror("keepalive"); return(0); }
|
||||||
+ int i=0;
|
+ int i=0;
|
||||||
+ i=setsockopt(s,SOL_SOCKET,SO_KEEPALIVE,
|
+ i=setsockopt(s,SOL_SOCKET,SO_KEEPALIVE,
|
||||||
+ (char *)&i,sizeof(i));
|
+ (char *)&i,sizeof(i));
|
||||||
@ -359,7 +359,7 @@ Index: openssl-1.0.1g/apps/s_socket.c
|
|||||||
int len;
|
int len;
|
||||||
/* struct linger ling; */
|
/* struct linger ling; */
|
||||||
|
|
||||||
@@ -431,135 +473,58 @@ redoit:
|
@@ -431,138 +473,59 @@ redoit:
|
||||||
*/
|
*/
|
||||||
|
|
||||||
if (host == NULL) goto end;
|
if (host == NULL) goto end;
|
||||||
@ -388,6 +388,7 @@ Index: openssl-1.0.1g/apps/s_socket.c
|
|||||||
+ if ((*host=(char *)OPENSSL_malloc(strlen(buffer)+1)) == NULL)
|
+ if ((*host=(char *)OPENSSL_malloc(strlen(buffer)+1)) == NULL)
|
||||||
{
|
{
|
||||||
perror("OPENSSL_malloc");
|
perror("OPENSSL_malloc");
|
||||||
|
closesocket(ret);
|
||||||
return(0);
|
return(0);
|
||||||
}
|
}
|
||||||
- BUF_strlcpy(*host,h1->h_name,strlen(h1->h_name)+1);
|
- BUF_strlcpy(*host,h1->h_name,strlen(h1->h_name)+1);
|
||||||
@ -396,11 +397,13 @@ Index: openssl-1.0.1g/apps/s_socket.c
|
|||||||
- if (h2 == NULL)
|
- if (h2 == NULL)
|
||||||
- {
|
- {
|
||||||
- BIO_printf(bio_err,"gethostbyname failure\n");
|
- BIO_printf(bio_err,"gethostbyname failure\n");
|
||||||
|
- closesocket(ret);
|
||||||
- return(0);
|
- return(0);
|
||||||
- }
|
- }
|
||||||
- if (h2->h_addrtype != AF_INET)
|
- if (h2->h_addrtype != AF_INET)
|
||||||
- {
|
- {
|
||||||
- BIO_printf(bio_err,"gethostbyname addr is not AF_INET\n");
|
- BIO_printf(bio_err,"gethostbyname addr is not AF_INET\n");
|
||||||
|
- closesocket(ret);
|
||||||
- return(0);
|
- return(0);
|
||||||
- }
|
- }
|
||||||
+ strcpy(*host, buffer);
|
+ strcpy(*host, buffer);
|
||||||
|
16
openssl-1.0.1e-add-suse-default-cipher-header.patch
Normal file
16
openssl-1.0.1e-add-suse-default-cipher-header.patch
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
Index: openssl-1.0.1g/ssl/ssl.h
|
||||||
|
===================================================================
|
||||||
|
--- openssl-1.0.1g.orig/ssl/ssl.h
|
||||||
|
+++ openssl-1.0.1g/ssl/ssl.h
|
||||||
|
@@ -332,9 +332,11 @@ extern "C" {
|
||||||
|
* It also is substituted when an application-defined cipher list string
|
||||||
|
* starts with 'DEFAULT'. */
|
||||||
|
#define SSL_DEFAULT_CIPHER_LIST "ALL:!aNULL:!eNULL:!SSLv2:!EXPORT:!RC2:!DES"
|
||||||
|
+
|
||||||
|
#define SSL_DEFAULT_SUSE_CIPHER_LIST "ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:"\
|
||||||
|
"DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:DHE-RSA-CAMELLIA256-SHA:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-CAMELLIA128-SHA:"\
|
||||||
|
"AES256-GCM-SHA384:AES256-SHA256:AES256-SHA:CAMELLIA256-SHA:AES128-GCM-SHA256:AES128-SHA256:AES128-SHA:CAMELLIA128-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:DES-CBC3-SHA"
|
||||||
|
+
|
||||||
|
/* As of OpenSSL 1.0.0, ssl_create_cipher_list() in ssl/ssl_ciph.c always
|
||||||
|
* starts with a reasonable order, and all we have to do for DEFAULT is
|
||||||
|
* throwing out anonymous and unencrypted ciphersuites!
|
39
openssl-1.0.1e-add-suse-default-cipher.patch
Normal file
39
openssl-1.0.1e-add-suse-default-cipher.patch
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
Index: openssl-1.0.1g/ssl/ssl_ciph.c
|
||||||
|
===================================================================
|
||||||
|
--- openssl-1.0.1g.orig/ssl/ssl_ciph.c
|
||||||
|
+++ openssl-1.0.1g/ssl/ssl_ciph.c
|
||||||
|
@@ -1470,7 +1470,17 @@ STACK_OF(SSL_CIPHER) *ssl_create_cipher_
|
||||||
|
*/
|
||||||
|
ok = 1;
|
||||||
|
rule_p = rule_str;
|
||||||
|
- if (strncmp(rule_str,"DEFAULT",7) == 0)
|
||||||
|
+
|
||||||
|
+ if (strncmp(rule_str,"DEFAULT_SUSE",12) == 0)
|
||||||
|
+ {
|
||||||
|
+ ok = ssl_cipher_process_rulestr(SSL_DEFAULT_SUSE_CIPHER_LIST,
|
||||||
|
+ &head, &tail, ca_list);
|
||||||
|
+ rule_p += 12;
|
||||||
|
+ if (*rule_p == ':')
|
||||||
|
+ rule_p++;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ else if (strncmp(rule_str,"DEFAULT",7) == 0)
|
||||||
|
{
|
||||||
|
ok = ssl_cipher_process_rulestr(SSL_DEFAULT_CIPHER_LIST,
|
||||||
|
&head, &tail, ca_list);
|
||||||
|
Index: openssl-1.0.1g/ssl/ssl.h
|
||||||
|
===================================================================
|
||||||
|
--- openssl-1.0.1g.orig/ssl/ssl.h
|
||||||
|
+++ openssl-1.0.1g/ssl/ssl.h
|
||||||
|
@@ -331,7 +331,10 @@ extern "C" {
|
||||||
|
/* The following cipher list is used by default.
|
||||||
|
* It also is substituted when an application-defined cipher list string
|
||||||
|
* starts with 'DEFAULT'. */
|
||||||
|
-#define SSL_DEFAULT_CIPHER_LIST "ALL:!aNULL:!eNULL:!SSLv2:!EXPORT:!LOW"
|
||||||
|
+#define SSL_DEFAULT_CIPHER_LIST "ALL:!aNULL:!eNULL:!SSLv2:!EXPORT:!RC2:!DES"
|
||||||
|
+#define SSL_DEFAULT_SUSE_CIPHER_LIST "ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:"\
|
||||||
|
+ "DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:DHE-RSA-CAMELLIA256-SHA:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-CAMELLIA128-SHA:"\
|
||||||
|
+ "AES256-GCM-SHA384:AES256-SHA256:AES256-SHA:CAMELLIA256-SHA:AES128-GCM-SHA256:AES128-SHA256:AES128-SHA:CAMELLIA128-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:DES-CBC3-SHA"
|
||||||
|
/* As of OpenSSL 1.0.0, ssl_create_cipher_list() in ssl/ssl_ciph.c always
|
||||||
|
* starts with a reasonable order, and all we have to do for DEFAULT is
|
||||||
|
* throwing out anonymous and unencrypted ciphersuites!
|
30
openssl-1.0.1e-add-test-suse-default-cipher-suite.patch
Normal file
30
openssl-1.0.1e-add-test-suse-default-cipher-suite.patch
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
Index: openssl-1.0.1f/test/testssl
|
||||||
|
===================================================================
|
||||||
|
--- openssl-1.0.1f.orig/test/testssl
|
||||||
|
+++ openssl-1.0.1f/test/testssl
|
||||||
|
@@ -136,6 +136,25 @@ for protocol in TLSv1.2 SSLv3; do
|
||||||
|
done
|
||||||
|
done
|
||||||
|
|
||||||
|
+echo "Testing default ciphersuites"
|
||||||
|
+
|
||||||
|
+for cipher_suite in DEFAULT_SUSE DEFAULT; do
|
||||||
|
+ ../util/shlib_wrap.sh ../apps/openssl ciphers $cipher_suite
|
||||||
|
+ if [ $? -ne 0 ]; then
|
||||||
|
+ echo "Failed default ciphersuite $cipher_suite"
|
||||||
|
+ exit 1
|
||||||
|
+ fi
|
||||||
|
+done
|
||||||
|
+
|
||||||
|
+echo "Testing if MD5, DES and RC4 are excluded from DEFAULT_SUSE cipher suite"
|
||||||
|
+../util/shlib_wrap.sh ../apps/openssl ciphers DEFAULT_SUSE| grep "MD5\|RC4\|DES-[^CBC3]"
|
||||||
|
+
|
||||||
|
+if [ $? -ne 1 ];then
|
||||||
|
+ echo "weak ciphers are present on DEFAULT_SUSE cipher suite"
|
||||||
|
+ exit 1
|
||||||
|
+fi
|
||||||
|
+
|
||||||
|
+
|
||||||
|
#############################################################################
|
||||||
|
|
||||||
|
if ../util/shlib_wrap.sh ../apps/openssl no-dh; then
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:53cb818c3b90e507a8348f4f5eaedb05d8bfe5358aabb508b7263cc670c3e028
|
|
||||||
size 4509047
|
|
@ -1,17 +0,0 @@
|
|||||||
-----BEGIN PGP SIGNATURE-----
|
|
||||||
Version: GnuPG v1.4.11 (GNU/Linux)
|
|
||||||
|
|
||||||
iQIcBAABCAAGBQJTQtiaAAoJENNXdQf6QOniuAkP/2hFMcb2NEG36by4oleDQQA1
|
|
||||||
xw/qiE5NryMU7+bwwhjvVdGsyeLnnPxN0K5fFVlsWHFIJCArZ/ERsR3xJfldSoZX
|
|
||||||
xz/PgU4JAWT7vkhIR0zW2SInzxdX2hUsonG3dRqVY5JVX3aAMkcIanczpxrv39Cb
|
|
||||||
ZeKwStINV5HOXH++Y7O4SWsFF3w2H4cmijyF2QQngrvyGkkS4C1Wy/PH54rAQrSH
|
|
||||||
phfsDlULL48/4NPul9LiRK6clgf+6DtOa9eY/NF+enjmEw2B73PRt1DmCaaaabWU
|
|
||||||
RwKHyVZUvXGhZYnPnfriz+V09FEq9SMEyyCBg2JeTljESPaPKxPP53ueI7OTo3B8
|
|
||||||
cyXcVMq3nckgq3XI1j/Z/BJVTO6Zp/thTlkGv35O/+AgdY/lWiMictFYLLfbHC1Z
|
|
||||||
9A9gbwuhO7pc1BrQF0vhIR+NlHAq4fVA81xHrClsIWebs8XjaH4zLRoeYBKqK0+m
|
|
||||||
4T2vf78yh+viiSOU2KpQdi4kWOUpCMVBa4CJclyAWdX+jjhnrudWcV5JwCz1KtNK
|
|
||||||
Pdaje0WrJ8gqAKpZC88q2vhVZF8FQt2YGhe16sGM5N9aSeg0/GMd1rAbJPUlpQ41
|
|
||||||
/b64wg+J3/ZQsRDfNvXwIgaGa1Ur8mUv/hmtAr1ecXK+rOcn6wcoouWwDYcOCQj/
|
|
||||||
opNSFe0Slj1X6unB62z2
|
|
||||||
=9S5s
|
|
||||||
-----END PGP SIGNATURE-----
|
|
3
openssl-1.0.1h.tar.gz
Normal file
3
openssl-1.0.1h.tar.gz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:9d1c8a9836aa63e2c6adb684186cbd4371c9e9dcc01d6e3bb447abf2d4d3d093
|
||||||
|
size 4475692
|
17
openssl-1.0.1h.tar.gz.asc
Normal file
17
openssl-1.0.1h.tar.gz.asc
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
-----BEGIN PGP SIGNATURE-----
|
||||||
|
Version: GnuPG v1.4.11 (GNU/Linux)
|
||||||
|
|
||||||
|
iQIcBAABCAAGBQJTkDweAAoJENNXdQf6QOnizlMQAJ/tw6A4s/TMQjiLTapBAJzJ
|
||||||
|
b5W2/nOD87oa0HL2aKvTHb0R7RKuvqGR71kgWaPOPJUwyLEWG1SinTeYR0J+yl0K
|
||||||
|
5y8TE8p4AwnAEp1JcMfbljl3tkyRXOVqS1idkvcBKBawurL68jfyWWkzZ1D2wZtE
|
||||||
|
LEmVm0diQIDSACuisnonE2Q8YvtqV4/imuX4BEZlZ+iNNdL0+NEuLB+xIWSl84lb
|
||||||
|
YqM0cXQ09SIZZL+nvO0t5PBNJcQM/6w9TPKDFReQxvhVkdqoWa/o2FfeSgRLNDIu
|
||||||
|
gGPTe0cEGUpOYyeC/SbLUOppCsRNBbzWjdRotEOV1GO2dMihZaMZZedJDhAhh5q6
|
||||||
|
Z1wctpZGxq/vMIQ669Wayj2OxAtluCjW8GwlaJRi7XfB/fCk1NDFezTL4hhWRhIh
|
||||||
|
mvI4oKO7TC2/OhJ2YvNGqYeqNzsIJbszn7bipvbF5KNf0eNtrUoRWsNPia9nRlca
|
||||||
|
2yzAxCCx2QtR0PV52/c5Xbfm/Ljxta9ZKgQgAjApz5+YMsap9LyQhklc+r7tETij
|
||||||
|
yv3Vf3Xft6n4VtKxHsecebl9VZXsz/hCjHN3PmYI0SLZDZOFBdIYoju2ttspH1pH
|
||||||
|
aBXTitvmBUsDIss2fjJJQLX22TgTpTS3FyPb9zlN+ecE/0HJcGIJUAi80i1gldzH
|
||||||
|
DQhyf3Qf17vW5g28E7Iv
|
||||||
|
=oxkH
|
||||||
|
-----END PGP SIGNATURE-----
|
@ -1,13 +0,0 @@
|
|||||||
--- openssl-1.0.1g.orig/ssl/s3_pkt.c
|
|
||||||
+++ openssl-1.0.1g/ssl/s3_pkt.c
|
|
||||||
@@ -1055,8 +1055,8 @@ start:
|
|
||||||
{
|
|
||||||
s->rstate=SSL_ST_READ_HEADER;
|
|
||||||
rr->off=0;
|
|
||||||
- if (s->mode & SSL_MODE_RELEASE_BUFFERS)
|
|
||||||
- ssl3_release_read_buffer(s);
|
|
||||||
+ if (s->mode & SSL_MODE_RELEASE_BUFFERS && s->s3->rbuf.left == 0)
|
|
||||||
+ ssl3_release_read_buffer(s);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return(n);
|
|
@ -59,88 +59,10 @@ Content-Length: 12835
|
|||||||
doc/ssl/SSL_write.pod | 2 +-
|
doc/ssl/SSL_write.pod | 2 +-
|
||||||
23 files changed, 59 insertions(+), 55 deletions(-)
|
23 files changed, 59 insertions(+), 55 deletions(-)
|
||||||
|
|
||||||
Index: openssl-1.0.1g/doc/apps/cms.pod
|
Index: openssl-1.0.1h/doc/apps/ts.pod
|
||||||
===================================================================
|
===================================================================
|
||||||
--- openssl-1.0.1g.orig/doc/apps/cms.pod
|
--- openssl-1.0.1h.orig/doc/apps/ts.pod
|
||||||
+++ openssl-1.0.1g/doc/apps/cms.pod
|
+++ openssl-1.0.1h/doc/apps/ts.pod
|
||||||
@@ -450,28 +450,28 @@ remains DER.
|
|
||||||
|
|
||||||
=over 4
|
|
||||||
|
|
||||||
-=item 0
|
|
||||||
+=item Z<>0
|
|
||||||
|
|
||||||
the operation was completely successfully.
|
|
||||||
|
|
||||||
-=item 1
|
|
||||||
+=item Z<>1
|
|
||||||
|
|
||||||
an error occurred parsing the command options.
|
|
||||||
|
|
||||||
-=item 2
|
|
||||||
+=item Z<>2
|
|
||||||
|
|
||||||
one of the input files could not be read.
|
|
||||||
|
|
||||||
-=item 3
|
|
||||||
+=item Z<>3
|
|
||||||
|
|
||||||
an error occurred creating the CMS file or when reading the MIME
|
|
||||||
message.
|
|
||||||
|
|
||||||
-=item 4
|
|
||||||
+=item Z<>4
|
|
||||||
|
|
||||||
an error occurred decrypting or verifying the message.
|
|
||||||
|
|
||||||
-=item 5
|
|
||||||
+=item Z<>5
|
|
||||||
|
|
||||||
the message was verified correctly but an error occurred writing out
|
|
||||||
the signers certificates.
|
|
||||||
Index: openssl-1.0.1g/doc/apps/smime.pod
|
|
||||||
===================================================================
|
|
||||||
--- openssl-1.0.1g.orig/doc/apps/smime.pod
|
|
||||||
+++ openssl-1.0.1g/doc/apps/smime.pod
|
|
||||||
@@ -308,28 +308,28 @@ remains DER.
|
|
||||||
|
|
||||||
=over 4
|
|
||||||
|
|
||||||
-=item 0
|
|
||||||
+=item Z<>0
|
|
||||||
|
|
||||||
the operation was completely successfully.
|
|
||||||
|
|
||||||
-=item 1
|
|
||||||
+=item Z<>1
|
|
||||||
|
|
||||||
an error occurred parsing the command options.
|
|
||||||
|
|
||||||
-=item 2
|
|
||||||
+=item Z<>2
|
|
||||||
|
|
||||||
one of the input files could not be read.
|
|
||||||
|
|
||||||
-=item 3
|
|
||||||
+=item Z<>3
|
|
||||||
|
|
||||||
an error occurred creating the PKCS#7 file or when reading the MIME
|
|
||||||
message.
|
|
||||||
|
|
||||||
-=item 4
|
|
||||||
+=item Z<>4
|
|
||||||
|
|
||||||
an error occurred decrypting or verifying the message.
|
|
||||||
|
|
||||||
-=item 5
|
|
||||||
+=item Z<>5
|
|
||||||
|
|
||||||
the message was verified correctly but an error occurred writing out
|
|
||||||
the signers certificates.
|
|
||||||
Index: openssl-1.0.1g/doc/apps/ts.pod
|
|
||||||
===================================================================
|
|
||||||
--- openssl-1.0.1g.orig/doc/apps/ts.pod
|
|
||||||
+++ openssl-1.0.1g/doc/apps/ts.pod
|
|
||||||
@@ -58,19 +58,19 @@ time. Here is a brief description of the
|
@@ -58,19 +58,19 @@ time. Here is a brief description of the
|
||||||
|
|
||||||
=over 4
|
=over 4
|
||||||
@ -164,10 +86,10 @@ Index: openssl-1.0.1g/doc/apps/ts.pod
|
|||||||
|
|
||||||
The TSA client receives the time stamp token and verifies the
|
The TSA client receives the time stamp token and verifies the
|
||||||
signature on it. It also checks if the token contains the same hash
|
signature on it. It also checks if the token contains the same hash
|
||||||
Index: openssl-1.0.1g/doc/crypto/OPENSSL_ia32cap.pod
|
Index: openssl-1.0.1h/doc/crypto/OPENSSL_ia32cap.pod
|
||||||
===================================================================
|
===================================================================
|
||||||
--- openssl-1.0.1g.orig/doc/crypto/OPENSSL_ia32cap.pod
|
--- openssl-1.0.1h.orig/doc/crypto/OPENSSL_ia32cap.pod
|
||||||
+++ openssl-1.0.1g/doc/crypto/OPENSSL_ia32cap.pod
|
+++ openssl-1.0.1h/doc/crypto/OPENSSL_ia32cap.pod
|
||||||
@@ -20,6 +20,8 @@ toolkit initialization, but can be manip
|
@@ -20,6 +20,8 @@ toolkit initialization, but can be manip
|
||||||
crypto library behaviour. For the moment of this writing six bits are
|
crypto library behaviour. For the moment of this writing six bits are
|
||||||
significant, namely:
|
significant, namely:
|
||||||
@ -186,10 +108,10 @@ Index: openssl-1.0.1g/doc/crypto/OPENSSL_ia32cap.pod
|
|||||||
For example, clearing bit #26 at run-time disables high-performance
|
For example, clearing bit #26 at run-time disables high-performance
|
||||||
SSE2 code present in the crypto library. You might have to do this if
|
SSE2 code present in the crypto library. You might have to do this if
|
||||||
target OpenSSL application is executed on SSE2 capable CPU, but under
|
target OpenSSL application is executed on SSE2 capable CPU, but under
|
||||||
Index: openssl-1.0.1g/doc/crypto/rand.pod
|
Index: openssl-1.0.1h/doc/crypto/rand.pod
|
||||||
===================================================================
|
===================================================================
|
||||||
--- openssl-1.0.1g.orig/doc/crypto/rand.pod
|
--- openssl-1.0.1h.orig/doc/crypto/rand.pod
|
||||||
+++ openssl-1.0.1g/doc/crypto/rand.pod
|
+++ openssl-1.0.1h/doc/crypto/rand.pod
|
||||||
@@ -74,16 +74,16 @@ First up I will state the things I belie
|
@@ -74,16 +74,16 @@ First up I will state the things I belie
|
||||||
|
|
||||||
=over 4
|
=over 4
|
||||||
@ -241,318 +163,3 @@ Index: openssl-1.0.1g/doc/crypto/rand.pod
|
|||||||
|
|
||||||
Given the random number output stream, it should not be possible to determine
|
Given the random number output stream, it should not be possible to determine
|
||||||
the RNG state or the next random number.
|
the RNG state or the next random number.
|
||||||
Index: openssl-1.0.1g/doc/ssl/SSL_COMP_add_compression_method.pod
|
|
||||||
===================================================================
|
|
||||||
--- openssl-1.0.1g.orig/doc/ssl/SSL_COMP_add_compression_method.pod
|
|
||||||
+++ openssl-1.0.1g/doc/ssl/SSL_COMP_add_compression_method.pod
|
|
||||||
@@ -53,11 +53,11 @@ SSL_COMP_add_compression_method() may re
|
|
||||||
|
|
||||||
=over 4
|
|
||||||
|
|
||||||
-=item 0
|
|
||||||
+=item Z<>0
|
|
||||||
|
|
||||||
The operation succeeded.
|
|
||||||
|
|
||||||
-=item 1
|
|
||||||
+=item Z<>1
|
|
||||||
|
|
||||||
The operation failed. Check the error queue to find out the reason.
|
|
||||||
|
|
||||||
Index: openssl-1.0.1g/doc/ssl/SSL_CTX_add_session.pod
|
|
||||||
===================================================================
|
|
||||||
--- openssl-1.0.1g.orig/doc/ssl/SSL_CTX_add_session.pod
|
|
||||||
+++ openssl-1.0.1g/doc/ssl/SSL_CTX_add_session.pod
|
|
||||||
@@ -52,13 +52,13 @@ The following values are returned by all
|
|
||||||
|
|
||||||
=over 4
|
|
||||||
|
|
||||||
-=item 0
|
|
||||||
+=item Z<>0
|
|
||||||
|
|
||||||
The operation failed. In case of the add operation, it was tried to add
|
|
||||||
the same (identical) session twice. In case of the remove operation, the
|
|
||||||
session was not found in the cache.
|
|
||||||
|
|
||||||
-=item 1
|
|
||||||
+=item Z<>1
|
|
||||||
|
|
||||||
The operation succeeded.
|
|
||||||
|
|
||||||
Index: openssl-1.0.1g/doc/ssl/SSL_CTX_load_verify_locations.pod
|
|
||||||
===================================================================
|
|
||||||
--- openssl-1.0.1g.orig/doc/ssl/SSL_CTX_load_verify_locations.pod
|
|
||||||
+++ openssl-1.0.1g/doc/ssl/SSL_CTX_load_verify_locations.pod
|
|
||||||
@@ -100,13 +100,13 @@ The following return values can occur:
|
|
||||||
|
|
||||||
=over 4
|
|
||||||
|
|
||||||
-=item 0
|
|
||||||
+=item Z<>0
|
|
||||||
|
|
||||||
The operation failed because B<CAfile> and B<CApath> are NULL or the
|
|
||||||
processing at one of the locations specified failed. Check the error
|
|
||||||
stack to find out the reason.
|
|
||||||
|
|
||||||
-=item 1
|
|
||||||
+=item Z<>1
|
|
||||||
|
|
||||||
The operation succeeded.
|
|
||||||
|
|
||||||
Index: openssl-1.0.1g/doc/ssl/SSL_CTX_set_client_CA_list.pod
|
|
||||||
===================================================================
|
|
||||||
--- openssl-1.0.1g.orig/doc/ssl/SSL_CTX_set_client_CA_list.pod
|
|
||||||
+++ openssl-1.0.1g/doc/ssl/SSL_CTX_set_client_CA_list.pod
|
|
||||||
@@ -66,13 +66,13 @@ values:
|
|
||||||
|
|
||||||
=over 4
|
|
||||||
|
|
||||||
-=item 0
|
|
||||||
+=item Z<>0
|
|
||||||
|
|
||||||
A failure while manipulating the STACK_OF(X509_NAME) object occurred or
|
|
||||||
the X509_NAME could not be extracted from B<cacert>. Check the error stack
|
|
||||||
to find out the reason.
|
|
||||||
|
|
||||||
-=item 1
|
|
||||||
+=item Z<>1
|
|
||||||
|
|
||||||
The operation succeeded.
|
|
||||||
|
|
||||||
Index: openssl-1.0.1g/doc/ssl/SSL_CTX_set_session_id_context.pod
|
|
||||||
===================================================================
|
|
||||||
--- openssl-1.0.1g.orig/doc/ssl/SSL_CTX_set_session_id_context.pod
|
|
||||||
+++ openssl-1.0.1g/doc/ssl/SSL_CTX_set_session_id_context.pod
|
|
||||||
@@ -64,13 +64,13 @@ return the following values:
|
|
||||||
|
|
||||||
=over 4
|
|
||||||
|
|
||||||
-=item 0
|
|
||||||
+=item Z<>0
|
|
||||||
|
|
||||||
The length B<sid_ctx_len> of the session id context B<sid_ctx> exceeded
|
|
||||||
the maximum allowed length of B<SSL_MAX_SSL_SESSION_ID_LENGTH>. The error
|
|
||||||
is logged to the error stack.
|
|
||||||
|
|
||||||
-=item 1
|
|
||||||
+=item Z<>1
|
|
||||||
|
|
||||||
The operation succeeded.
|
|
||||||
|
|
||||||
Index: openssl-1.0.1g/doc/ssl/SSL_CTX_set_ssl_version.pod
|
|
||||||
===================================================================
|
|
||||||
--- openssl-1.0.1g.orig/doc/ssl/SSL_CTX_set_ssl_version.pod
|
|
||||||
+++ openssl-1.0.1g/doc/ssl/SSL_CTX_set_ssl_version.pod
|
|
||||||
@@ -42,11 +42,11 @@ and SSL_set_ssl_method():
|
|
||||||
|
|
||||||
=over 4
|
|
||||||
|
|
||||||
-=item 0
|
|
||||||
+=item Z<>0
|
|
||||||
|
|
||||||
The new choice failed, check the error stack to find out the reason.
|
|
||||||
|
|
||||||
-=item 1
|
|
||||||
+=item Z<>1
|
|
||||||
|
|
||||||
The operation succeeded.
|
|
||||||
|
|
||||||
Index: openssl-1.0.1g/doc/ssl/SSL_CTX_use_psk_identity_hint.pod
|
|
||||||
===================================================================
|
|
||||||
--- openssl-1.0.1g.orig/doc/ssl/SSL_CTX_use_psk_identity_hint.pod
|
|
||||||
+++ openssl-1.0.1g/doc/ssl/SSL_CTX_use_psk_identity_hint.pod
|
|
||||||
@@ -96,7 +96,7 @@ data to B<psk> and return the length of
|
|
||||||
connection will fail with decryption_error before it will be finished
|
|
||||||
completely.
|
|
||||||
|
|
||||||
-=item 0
|
|
||||||
+=item Z<>0
|
|
||||||
|
|
||||||
PSK identity was not found. An "unknown_psk_identity" alert message
|
|
||||||
will be sent and the connection setup fails.
|
|
||||||
Index: openssl-1.0.1g/doc/ssl/SSL_accept.pod
|
|
||||||
===================================================================
|
|
||||||
--- openssl-1.0.1g.orig/doc/ssl/SSL_accept.pod
|
|
||||||
+++ openssl-1.0.1g/doc/ssl/SSL_accept.pod
|
|
||||||
@@ -44,13 +44,13 @@ The following return values can occur:
|
|
||||||
|
|
||||||
=over 4
|
|
||||||
|
|
||||||
-=item 0
|
|
||||||
+=item Z<>0
|
|
||||||
|
|
||||||
The TLS/SSL handshake was not successful but was shut down controlled and
|
|
||||||
by the specifications of the TLS/SSL protocol. Call SSL_get_error() with the
|
|
||||||
return value B<ret> to find out the reason.
|
|
||||||
|
|
||||||
-=item 1
|
|
||||||
+=item Z<>1
|
|
||||||
|
|
||||||
The TLS/SSL handshake was successfully completed, a TLS/SSL connection has been
|
|
||||||
established.
|
|
||||||
Index: openssl-1.0.1g/doc/ssl/SSL_clear.pod
|
|
||||||
===================================================================
|
|
||||||
--- openssl-1.0.1g.orig/doc/ssl/SSL_clear.pod
|
|
||||||
+++ openssl-1.0.1g/doc/ssl/SSL_clear.pod
|
|
||||||
@@ -56,12 +56,12 @@ The following return values can occur:
|
|
||||||
|
|
||||||
=over 4
|
|
||||||
|
|
||||||
-=item 0
|
|
||||||
+=item Z<>0
|
|
||||||
|
|
||||||
The SSL_clear() operation could not be performed. Check the error stack to
|
|
||||||
find out the reason.
|
|
||||||
|
|
||||||
-=item 1
|
|
||||||
+=item Z<>1
|
|
||||||
|
|
||||||
The SSL_clear() operation was successful.
|
|
||||||
|
|
||||||
Index: openssl-1.0.1g/doc/ssl/SSL_connect.pod
|
|
||||||
===================================================================
|
|
||||||
--- openssl-1.0.1g.orig/doc/ssl/SSL_connect.pod
|
|
||||||
+++ openssl-1.0.1g/doc/ssl/SSL_connect.pod
|
|
||||||
@@ -41,13 +41,13 @@ The following return values can occur:
|
|
||||||
|
|
||||||
=over 4
|
|
||||||
|
|
||||||
-=item 0
|
|
||||||
+=item Z<>0
|
|
||||||
|
|
||||||
The TLS/SSL handshake was not successful but was shut down controlled and
|
|
||||||
by the specifications of the TLS/SSL protocol. Call SSL_get_error() with the
|
|
||||||
return value B<ret> to find out the reason.
|
|
||||||
|
|
||||||
-=item 1
|
|
||||||
+=item Z<>1
|
|
||||||
|
|
||||||
The TLS/SSL handshake was successfully completed, a TLS/SSL connection has been
|
|
||||||
established.
|
|
||||||
Index: openssl-1.0.1g/doc/ssl/SSL_do_handshake.pod
|
|
||||||
===================================================================
|
|
||||||
--- openssl-1.0.1g.orig/doc/ssl/SSL_do_handshake.pod
|
|
||||||
+++ openssl-1.0.1g/doc/ssl/SSL_do_handshake.pod
|
|
||||||
@@ -45,13 +45,13 @@ The following return values can occur:
|
|
||||||
|
|
||||||
=over 4
|
|
||||||
|
|
||||||
-=item 0
|
|
||||||
+=item Z<>0
|
|
||||||
|
|
||||||
The TLS/SSL handshake was not successful but was shut down controlled and
|
|
||||||
by the specifications of the TLS/SSL protocol. Call SSL_get_error() with the
|
|
||||||
return value B<ret> to find out the reason.
|
|
||||||
|
|
||||||
-=item 1
|
|
||||||
+=item Z<>1
|
|
||||||
|
|
||||||
The TLS/SSL handshake was successfully completed, a TLS/SSL connection has been
|
|
||||||
established.
|
|
||||||
Index: openssl-1.0.1g/doc/ssl/SSL_read.pod
|
|
||||||
===================================================================
|
|
||||||
--- openssl-1.0.1g.orig/doc/ssl/SSL_read.pod
|
|
||||||
+++ openssl-1.0.1g/doc/ssl/SSL_read.pod
|
|
||||||
@@ -86,7 +86,7 @@ The following return values can occur:
|
|
||||||
The read operation was successful; the return value is the number of
|
|
||||||
bytes actually read from the TLS/SSL connection.
|
|
||||||
|
|
||||||
-=item 0
|
|
||||||
+=item Z<>0
|
|
||||||
|
|
||||||
The read operation was not successful. The reason may either be a clean
|
|
||||||
shutdown due to a "close notify" alert sent by the peer (in which case
|
|
||||||
Index: openssl-1.0.1g/doc/ssl/SSL_session_reused.pod
|
|
||||||
===================================================================
|
|
||||||
--- openssl-1.0.1g.orig/doc/ssl/SSL_session_reused.pod
|
|
||||||
+++ openssl-1.0.1g/doc/ssl/SSL_session_reused.pod
|
|
||||||
@@ -27,11 +27,11 @@ The following return values can occur:
|
|
||||||
|
|
||||||
=over 4
|
|
||||||
|
|
||||||
-=item 0
|
|
||||||
+=item Z<>0
|
|
||||||
|
|
||||||
A new session was negotiated.
|
|
||||||
|
|
||||||
-=item 1
|
|
||||||
+=item Z<>1
|
|
||||||
|
|
||||||
A session was reused.
|
|
||||||
|
|
||||||
Index: openssl-1.0.1g/doc/ssl/SSL_set_fd.pod
|
|
||||||
===================================================================
|
|
||||||
--- openssl-1.0.1g.orig/doc/ssl/SSL_set_fd.pod
|
|
||||||
+++ openssl-1.0.1g/doc/ssl/SSL_set_fd.pod
|
|
||||||
@@ -35,11 +35,11 @@ The following return values can occur:
|
|
||||||
|
|
||||||
=over 4
|
|
||||||
|
|
||||||
-=item 0
|
|
||||||
+=item Z<>0
|
|
||||||
|
|
||||||
The operation failed. Check the error stack to find out why.
|
|
||||||
|
|
||||||
-=item 1
|
|
||||||
+=item Z<>1
|
|
||||||
|
|
||||||
The operation succeeded.
|
|
||||||
|
|
||||||
Index: openssl-1.0.1g/doc/ssl/SSL_set_session.pod
|
|
||||||
===================================================================
|
|
||||||
--- openssl-1.0.1g.orig/doc/ssl/SSL_set_session.pod
|
|
||||||
+++ openssl-1.0.1g/doc/ssl/SSL_set_session.pod
|
|
||||||
@@ -37,11 +37,11 @@ The following return values can occur:
|
|
||||||
|
|
||||||
=over 4
|
|
||||||
|
|
||||||
-=item 0
|
|
||||||
+=item Z<>0
|
|
||||||
|
|
||||||
The operation failed; check the error stack to find out the reason.
|
|
||||||
|
|
||||||
-=item 1
|
|
||||||
+=item Z<>1
|
|
||||||
|
|
||||||
The operation succeeded.
|
|
||||||
|
|
||||||
Index: openssl-1.0.1g/doc/ssl/SSL_shutdown.pod
|
|
||||||
===================================================================
|
|
||||||
--- openssl-1.0.1g.orig/doc/ssl/SSL_shutdown.pod
|
|
||||||
+++ openssl-1.0.1g/doc/ssl/SSL_shutdown.pod
|
|
||||||
@@ -92,19 +92,19 @@ The following return values can occur:
|
|
||||||
|
|
||||||
=over 4
|
|
||||||
|
|
||||||
-=item 0
|
|
||||||
+=item Z<>0
|
|
||||||
|
|
||||||
The shutdown is not yet finished. Call SSL_shutdown() for a second time,
|
|
||||||
if a bidirectional shutdown shall be performed.
|
|
||||||
The output of L<SSL_get_error(3)|SSL_get_error(3)> may be misleading, as an
|
|
||||||
erroneous SSL_ERROR_SYSCALL may be flagged even though no error occurred.
|
|
||||||
|
|
||||||
-=item 1
|
|
||||||
+=item Z<>1
|
|
||||||
|
|
||||||
The shutdown was successfully completed. The "close notify" alert was sent
|
|
||||||
and the peer's "close notify" alert was received.
|
|
||||||
|
|
||||||
-=item -1
|
|
||||||
+=item Z<>-1
|
|
||||||
|
|
||||||
The shutdown was not successful because a fatal error occurred either
|
|
||||||
at the protocol level or a connection failure occurred. It can also occur if
|
|
||||||
Index: openssl-1.0.1g/doc/ssl/SSL_write.pod
|
|
||||||
===================================================================
|
|
||||||
--- openssl-1.0.1g.orig/doc/ssl/SSL_write.pod
|
|
||||||
+++ openssl-1.0.1g/doc/ssl/SSL_write.pod
|
|
||||||
@@ -79,7 +79,7 @@ The following return values can occur:
|
|
||||||
The write operation was successful, the return value is the number of
|
|
||||||
bytes actually written to the TLS/SSL connection.
|
|
||||||
|
|
||||||
-=item 0
|
|
||||||
+=item Z<>0
|
|
||||||
|
|
||||||
The write operation was not successful. Probably the underlying connection
|
|
||||||
was closed. Call SSL_get_error() with the return value B<ret> to find out,
|
|
||||||
|
@ -1,3 +1,43 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Jun 5 14:37:19 UTC 2014 - meissner@suse.com
|
||||||
|
|
||||||
|
- updated openssl to 1.0.1h (bnc#880891):
|
||||||
|
- CVE-2014-0224: Fix for SSL/TLS MITM flaw. An attacker using a carefully crafted
|
||||||
|
handshake can force the use of weak keying material in OpenSSL
|
||||||
|
SSL/TLS clients and servers.
|
||||||
|
- CVE-2014-0221: Fix DTLS recursion flaw. By sending an invalid DTLS handshake to an
|
||||||
|
OpenSSL DTLS client the code can be made to recurse eventually crashing
|
||||||
|
in a DoS attack.
|
||||||
|
- CVE-2014-0195: Fix DTLS invalid fragment vulnerability. A buffer
|
||||||
|
overrun attack can be triggered by sending invalid DTLS fragments to
|
||||||
|
an OpenSSL DTLS client or server. This is potentially exploitable to
|
||||||
|
run arbitrary code on a vulnerable client or server.
|
||||||
|
- CVE-2014-3470: Fix bug in TLS code where clients enable anonymous
|
||||||
|
ECDH ciphersuites are subject to a denial of service attack.
|
||||||
|
- openssl-buffreelistbug-aka-CVE-2010-5298.patch: removed, upstream
|
||||||
|
- CVE-2014-0198.patch: removed, upstream
|
||||||
|
- 0009-Fix-double-frees.patch: removed, upstream
|
||||||
|
- 0012-Fix-eckey_priv_encode.patch: removed, upstream
|
||||||
|
- 0017-Double-free-in-i2o_ECPublicKey.patch: removed, upstream
|
||||||
|
- 0018-fix-coverity-issues-966593-966596.patch: removed, upstream
|
||||||
|
- 0020-Initialize-num-properly.patch: removed, upstream
|
||||||
|
- 0022-bignum-allow-concurrent-BN_MONT_CTX_set_locked.patch: removed, upstream
|
||||||
|
- 0023-evp-prevent-underflow-in-base64-decoding.patch: removed, upstream
|
||||||
|
- 0024-Fixed-NULL-pointer-dereference-in-PKCS7_dataDecode-r.patch: removed, upstream
|
||||||
|
- 0025-fix-coverity-issue-966597-error-line-is-not-always-i.patch: removed, upstream
|
||||||
|
|
||||||
|
- 0001-libcrypto-Hide-library-private-symbols.patch: disabled heartbeat testcase
|
||||||
|
- openssl-1.0.1c-ipv6-apps.patch: refreshed
|
||||||
|
- openssl-fix-pod-syntax.diff: some stuff merged upstream, refreshed
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed May 21 12:19:53 UTC 2014 - vpereira@novell.com
|
||||||
|
|
||||||
|
- Added new SUSE default cipher suite
|
||||||
|
openssl-1.0.1e-add-suse-default-cipher.patch
|
||||||
|
openssl-1.0.1e-add-suse-default-cipher-header.patch
|
||||||
|
openssl-1.0.1e-add-test-suse-default-cipher-suite.patch
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Fri May 9 04:42:46 UTC 2014 - crrodriguez@opensuse.org
|
Fri May 9 04:42:46 UTC 2014 - crrodriguez@opensuse.org
|
||||||
|
|
||||||
|
31
openssl.spec
31
openssl.spec
@ -29,7 +29,7 @@ Provides: ssl
|
|||||||
%ifarch ppc64
|
%ifarch ppc64
|
||||||
Obsoletes: openssl-64bit
|
Obsoletes: openssl-64bit
|
||||||
%endif
|
%endif
|
||||||
Version: 1.0.1g
|
Version: 1.0.1h
|
||||||
Release: 0
|
Release: 0
|
||||||
Summary: Secure Sockets and Transport Layer Security
|
Summary: Secure Sockets and Transport Layer Security
|
||||||
License: OpenSSL
|
License: OpenSSL
|
||||||
@ -65,21 +65,14 @@ Patch16: openssl-1.0.1e-fips-ec.patch
|
|||||||
Patch17: openssl-1.0.1e-fips-ctor.patch
|
Patch17: openssl-1.0.1e-fips-ctor.patch
|
||||||
Patch18: openssl-1.0.1e-new-fips-reqs.patch
|
Patch18: openssl-1.0.1e-new-fips-reqs.patch
|
||||||
Patch19: openssl-gcc-attributes.patch
|
Patch19: openssl-gcc-attributes.patch
|
||||||
Patch20: openssl-buffreelistbug-aka-CVE-2010-5298.patch
|
|
||||||
Patch21: openssl-libssl-noweakciphers.patch
|
Patch21: openssl-libssl-noweakciphers.patch
|
||||||
Patch22: CVE-2014-0198.patch
|
|
||||||
Patch23: 0009-Fix-double-frees.patch
|
|
||||||
Patch24: 0012-Fix-eckey_priv_encode.patch
|
|
||||||
Patch25: 0017-Double-free-in-i2o_ECPublicKey.patch
|
|
||||||
Patch26: 0001-Axe-builtin-printf-implementation-use-glibc-instead.patch
|
Patch26: 0001-Axe-builtin-printf-implementation-use-glibc-instead.patch
|
||||||
Patch27: 0018-fix-coverity-issues-966593-966596.patch
|
|
||||||
Patch28: 0020-Initialize-num-properly.patch
|
|
||||||
Patch29: 0022-bignum-allow-concurrent-BN_MONT_CTX_set_locked.patch
|
|
||||||
Patch30: 0023-evp-prevent-underflow-in-base64-decoding.patch
|
|
||||||
Patch31: 0024-Fixed-NULL-pointer-dereference-in-PKCS7_dataDecode-r.patch
|
|
||||||
Patch32: 0025-fix-coverity-issue-966597-error-line-is-not-always-i.patch
|
|
||||||
Patch33: openssl-no-egd.patch
|
Patch33: openssl-no-egd.patch
|
||||||
Patch34: openssl-fips-hidden.patch
|
Patch34: openssl-fips-hidden.patch
|
||||||
|
Patch35: openssl-1.0.1e-add-suse-default-cipher.patch
|
||||||
|
Patch36: openssl-1.0.1e-add-suse-default-cipher-header.patch
|
||||||
|
Patch37: openssl-1.0.1e-add-test-suse-default-cipher-suite.patch
|
||||||
|
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||||
|
|
||||||
%description
|
%description
|
||||||
@ -186,21 +179,13 @@ this package's base documentation.
|
|||||||
%patch17 -p1
|
%patch17 -p1
|
||||||
%patch18 -p1
|
%patch18 -p1
|
||||||
%patch19 -p1
|
%patch19 -p1
|
||||||
%patch20 -p1
|
|
||||||
%patch21 -p1
|
%patch21 -p1
|
||||||
%patch22 -p1
|
|
||||||
%patch23 -p1
|
|
||||||
%patch24 -p1
|
|
||||||
%patch25 -p1
|
|
||||||
%patch26 -p1
|
%patch26 -p1
|
||||||
%patch27 -p1
|
|
||||||
%patch28 -p1
|
|
||||||
%patch29 -p1
|
|
||||||
%patch30 -p1
|
|
||||||
%patch31 -p1
|
|
||||||
%patch32 -p1
|
|
||||||
%patch33 -p1
|
%patch33 -p1
|
||||||
%patch34 -p1
|
%patch34 -p1
|
||||||
|
%patch35 -p1
|
||||||
|
%patch36 -p1
|
||||||
|
%patch37 -p1
|
||||||
cp -p %{S:10} .
|
cp -p %{S:10} .
|
||||||
cp -p %{S:11} .
|
cp -p %{S:11} .
|
||||||
echo "adding/overwriting some entries in the 'table' hash in Configure"
|
echo "adding/overwriting some entries in the 'table' hash in Configure"
|
||||||
|
Loading…
Reference in New Issue
Block a user