Module: wine Branch: master Commit: 302dd345fed576b70ba4d0b49fa6f6773fd682bb URL: http://source.winehq.org/git/wine.git/?a=commit;h=302dd345fed576b70ba4d0b49f...
Author: Juan Lang juan.lang@gmail.com Date: Wed Sep 29 09:34:04 2010 -0700
winhttp: Return signature algorithm name in WINHTTP_CERTIFICATE_INFO.
---
dlls/winhttp/session.c | 9 ++++++++- 1 files changed, 8 insertions(+), 1 deletions(-)
diff --git a/dlls/winhttp/session.c b/dlls/winhttp/session.c index bed19a1..7f6350f 100644 --- a/dlls/winhttp/session.c +++ b/dlls/winhttp/session.c @@ -615,6 +615,7 @@ static BOOL request_query_option( object_header_t *hdr, DWORD option, LPVOID buf case WINHTTP_OPTION_SECURITY_CERTIFICATE_STRUCT: { const CERT_CONTEXT *cert; + const CRYPT_OID_INFO *oidInfo; WINHTTP_CERTIFICATE_INFO *ci = buffer;
FIXME("partial stub\n"); @@ -632,7 +633,13 @@ static BOOL request_query_option( object_header_t *hdr, DWORD option, LPVOID buf ci->lpszSubjectInfo = blob_to_str( cert->dwCertEncodingType, &cert->pCertInfo->Subject ); ci->lpszIssuerInfo = blob_to_str( cert->dwCertEncodingType, &cert->pCertInfo->Issuer ); ci->lpszProtocolName = NULL; - ci->lpszSignatureAlgName = NULL; + oidInfo = CryptFindOIDInfo( CRYPT_OID_INFO_OID_KEY, + cert->pCertInfo->SignatureAlgorithm.pszObjId, + 0 ); + if (oidInfo) + ci->lpszSignatureAlgName = (LPWSTR)oidInfo->pwszName; + else + ci->lpszSignatureAlgName = NULL; ci->lpszEncryptionAlgName = NULL; ci->dwKeySize = 128;