summaryrefslogtreecommitdiffstats
path: root/src/network/ssl
diff options
context:
space:
mode:
authorPeter Hartmann <peter.hartmann@nokia.com>2009-10-05 14:28:27 (GMT)
committerPeter Hartmann <peter.hartmann@nokia.com>2009-10-05 15:44:30 (GMT)
commitb6313e00291a42e1e888a40b0c589ac5be497707 (patch)
tree62c100aab4f007d43656df022a79575df1324de8 /src/network/ssl
parentc62d9f723347e448033bbb66b281b647166e89f4 (diff)
downloadQt-b6313e00291a42e1e888a40b0c589ac5be497707.zip
Qt-b6313e00291a42e1e888a40b0c589ac5be497707.tar.gz
Qt-b6313e00291a42e1e888a40b0c589ac5be497707.tar.bz2
OpenSSL wrapping: compile when configured with -openssl-linked
we were calling sk_pop_free from OpenSSL with a wrong signature. Reviewed-by: Olivier Goffart
Diffstat (limited to 'src/network/ssl')
-rw-r--r--src/network/ssl/qsslcertificate.cpp4
-rw-r--r--src/network/ssl/qsslsocket_openssl_symbols.cpp3
-rw-r--r--src/network/ssl/qsslsocket_openssl_symbols_p.h3
3 files changed, 2 insertions, 8 deletions
diff --git a/src/network/ssl/qsslcertificate.cpp b/src/network/ssl/qsslcertificate.cpp
index 821d7c6..4bd6ff3 100644
--- a/src/network/ssl/qsslcertificate.cpp
+++ b/src/network/ssl/qsslcertificate.cpp
@@ -395,11 +395,7 @@ QMultiMap<QSsl::AlternateNameEntryType, QString> QSslCertificate::alternateSubje
else if (genName->type == GEN_EMAIL)
result.insert(QSsl::EmailEntry, altName);
}
-#if OPENSSL_VERSION_NUMBER >= 0x10000000L
q_sk_pop_free((STACK*)altNames, reinterpret_cast<void(*)(void*)>(q_sk_free));
-#else
- q_sk_pop_free((STACK*)altNames, q_sk_free);
-#endif
}
return result;
diff --git a/src/network/ssl/qsslsocket_openssl_symbols.cpp b/src/network/ssl/qsslsocket_openssl_symbols.cpp
index 0762752..12f41bd 100644
--- a/src/network/ssl/qsslsocket_openssl_symbols.cpp
+++ b/src/network/ssl/qsslsocket_openssl_symbols.cpp
@@ -144,13 +144,12 @@ DEFINEFUNC2(void, RAND_seed, const void *a, a, int b, b, return, DUMMYARG)
DEFINEFUNC(int, RAND_status, void, DUMMYARG, return -1, return)
DEFINEFUNC(void, RSA_free, RSA *a, a, return, DUMMYARG)
DEFINEFUNC(int, sk_num, STACK *a, a, return -1, return)
+DEFINEFUNC2(void, sk_pop_free, STACK *a, a, void (*b)(void*), b, return, DUMMYARG)
#if OPENSSL_VERSION_NUMBER >= 0x10000000L
DEFINEFUNC(void, sk_free, _STACK *a, a, return, DUMMYARG)
-DEFINEFUNC2(void, sk_pop_free, STACK *a, a, void (*b)(void*), b, return, DUMMYARG)
DEFINEFUNC2(void *, sk_value, STACK *a, a, int b, b, return 0, return)
#else
DEFINEFUNC(void, sk_free, STACK *a, a, return, DUMMYARG)
-DEFINEFUNC2(void, sk_pop_free, STACK *a, a, void (*b)(STACK*), b, return, DUMMYARG)
DEFINEFUNC2(char *, sk_value, STACK *a, a, int b, b, return 0, return)
#endif
DEFINEFUNC(int, SSL_accept, SSL *a, a, return -1, return)
diff --git a/src/network/ssl/qsslsocket_openssl_symbols_p.h b/src/network/ssl/qsslsocket_openssl_symbols_p.h
index 8d71caa..ae6618f 100644
--- a/src/network/ssl/qsslsocket_openssl_symbols_p.h
+++ b/src/network/ssl/qsslsocket_openssl_symbols_p.h
@@ -256,13 +256,12 @@ void q_RAND_seed(const void *a, int b);
int q_RAND_status();
void q_RSA_free(RSA *a);
int q_sk_num(STACK *a);
+void q_sk_pop_free(STACK *a, void (*b)(void *));
#if OPENSSL_VERSION_NUMBER >= 0x10000000L
void q_sk_free(_STACK *a);
-void q_sk_pop_free(STACK *a, void (*b)(void *));
void * q_sk_value(STACK *a, int b);
#else
void q_sk_free(STACK *a);
-void q_sk_pop_free(STACK *a, void (*b)(STACK *));
char * q_sk_value(STACK *a, int b);
#endif
int q_SSL_accept(SSL *a);