crypt32: Accept either the subject alt name 2 or subject alt name extensions, and prefer the former when both are present.
diff --git a/dlls/crypt32/chain.c b/dlls/crypt32/chain.c
index 547c74c..160bcec 100644
--- a/dlls/crypt32/chain.c
+++ b/dlls/crypt32/chain.c
@@ -618,8 +618,12 @@
{
CERT_EXTENSION *ext;
- if ((ext = CertFindExtension(szOID_SUBJECT_ALT_NAME, cert->cExtension,
- cert->rgExtension)))
+ ext = CertFindExtension(szOID_SUBJECT_ALT_NAME2, cert->cExtension,
+ cert->rgExtension);
+ if (!ext)
+ ext = CertFindExtension(szOID_SUBJECT_ALT_NAME, cert->cExtension,
+ cert->rgExtension);
+ if (ext)
{
CERT_ALT_NAME_INFO *subjectName;
DWORD size;
@@ -1088,6 +1092,8 @@
ret = TRUE;
else if (!strcmp(oid, szOID_SUBJECT_ALT_NAME))
ret = TRUE;
+ else if (!strcmp(oid, szOID_SUBJECT_ALT_NAME2))
+ ret = TRUE;
else
{
FIXME("unsupported critical extension %s\n",