[openssl-commits] [openssl] master update
Matt Caswell
matt at openssl.org
Mon Feb 29 10:31:47 UTC 2016
The branch master has been updated
via b32166b4fabd2a3aeec382521b0173b24a5d7c02 (commit)
from 0421c00e56cad9bdce5c1df4d406b7fc799bf6ad (commit)
- Log -----------------------------------------------------------------
commit b32166b4fabd2a3aeec382521b0173b24a5d7c02
Author: Matt Caswell <matt at openssl.org>
Date: Tue Feb 23 15:27:05 2016 +0000
Workaround for VisualStudio 2015 bug
VisualStudio 2015 has a bug where an internal compiler error was occurring.
By reordering the DEFINE_STACK_OF declarations for SSL_CIPHER and SSL_COMP
until after the ssl3.h include everything seems ok again.
Reviewed-by: Viktor Dukhovni <viktor at openssl.org>
-----------------------------------------------------------------------
Summary of changes:
include/openssl/ssl.h | 11 +++++++++--
util/mkdef.pl | 3 ++-
2 files changed, 11 insertions(+), 3 deletions(-)
diff --git a/include/openssl/ssl.h b/include/openssl/ssl.h
index daa58e8..8489e74 100644
--- a/include/openssl/ssl.h
+++ b/include/openssl/ssl.h
@@ -326,8 +326,8 @@ typedef struct tls_sigalgs_st TLS_SIGALGS;
typedef struct ssl_conf_ctx_st SSL_CONF_CTX;
typedef struct ssl_comp_st SSL_COMP;
-DEFINE_STACK_OF_CONST(SSL_CIPHER)
-DEFINE_STACK_OF(SSL_COMP)
+STACK_OF(SSL_CIPHER);
+STACK_OF(SSL_COMP);
/* SRTP protection profiles for use with the use_srtp extension (RFC 5764)*/
typedef struct srtp_protection_profile_st {
@@ -907,6 +907,13 @@ __owur int SSL_extension_supported(unsigned int ext_type);
extern "C" {
#endif
+/*
+ * These need to be after the above set of includes due to a compiler bug
+ * in VisualStudio 2015
+ */
+DEFINE_STACK_OF_CONST(SSL_CIPHER)
+DEFINE_STACK_OF(SSL_COMP)
+
/* compatibility */
# define SSL_set_app_data(s,arg) (SSL_set_ex_data(s,0,(char *)arg))
# define SSL_get_app_data(s) (SSL_get_ex_data(s,0))
diff --git a/util/mkdef.pl b/util/mkdef.pl
index a11b008..c716003 100755
--- a/util/mkdef.pl
+++ b/util/mkdef.pl
@@ -641,7 +641,8 @@ sub do_defs
next;
}
if ($tag{'TRUE'} != -1) {
- if (/^\s*DECLARE_STACK_OF\s*\(\s*(\w*)\s*\)/) {
+ if (/^\s*DEFINE_STACK_OF\s*\(\s*(\w*)\s*\)/
+ || /^\s*DEFINE_STACK_OF_CONST\s*\(\s*(\w*)\s*\)/) {
next;
} elsif (/^\s*DECLARE_ASN1_ENCODE_FUNCTIONS\s*\(\s*(\w*)\s*,\s*(\w*)\s*,\s*(\w*)\s*\)/) {
$def .= "int d2i_$3(void);";
More information about the openssl-commits
mailing list