Module: wine Branch: master Commit: d473803765d6813a14f039d2bb576c406b51fccb URL: http://source.winehq.org/git/wine.git/?a=commit;h=d473803765d6813a14f039d2bb...
Author: Jacek Caban jacek@codeweavers.com Date: Wed Apr 3 14:03:24 2013 +0200
wininet: Use schannel in NETCON_GetCipherStrength if OpenSSL is not available.
---
dlls/wininet/netconnection.c | 12 ++++++++++-- 1 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/dlls/wininet/netconnection.c b/dlls/wininet/netconnection.c index e896d84..cc16950 100644 --- a/dlls/wininet/netconnection.c +++ b/dlls/wininet/netconnection.c @@ -1299,8 +1299,16 @@ int NETCON_GetCipherStrength(netconn_t *connection) pSSL_CIPHER_get_bits(cipher, &bits); return bits; #else - FIXME("not supported on this platform\n"); - return 0; + SecPkgContext_ConnectionInfo conn_info; + SECURITY_STATUS res; + + if (!connection->secure) + return 0; + + res = QueryContextAttributesW(&connection->ssl_ctx, SECPKG_ATTR_CONNECTION_INFO, (void*)&conn_info); + if(res != SEC_E_OK) + WARN("QueryContextAttributesW failed: %08x\n", res); + return res == SEC_E_OK ? conn_info.dwCipherStrength : 0; #endif }