# HG changeset patch # User Luke Schierer # Date 1191335832 0 # Node ID 9c226e074462b148a43169a4e38faad5470584ff # Parent 61045691aa72b5a26883400cd8e1d169e96d44b6# Parent 17e605dd2de16dd345c96be351e08980681deac4 merge of '4bbc209c8076ef89135700af844ec6bb04602c0a' and 'd2c7c4e1bf264ab31a0d42e7e61e316f2ad2a718' diff -r 61045691aa72 -r 9c226e074462 libpurple/certificate.c --- a/libpurple/certificate.c Tue Oct 02 06:13:27 2007 +0000 +++ b/libpurple/certificate.c Tue Oct 02 14:37:12 2007 +0000 @@ -88,6 +88,19 @@ g_return_if_fail(vrq); + if (st == PURPLE_CERTIFICATE_VALID) { + purple_debug_info("certificate", + "Successfully verified certificate for %s\n", + vrq->subject_name); + } else { + purple_debug_info("certificate", + "Failed to verify certificate for %s\n", + vrq->subject_name); + } + + + + /* Pass the results on to the request's callback */ (vrq->cb)(st, vrq->cb_data); @@ -1372,7 +1385,8 @@ purple_debug_info("certificate/x509/tls_cached", "Checking for a CA with DN=%s\n", ca_id); - if ( !purple_certificate_pool_contains(ca, ca_id) ) { + ca_crt = purple_certificate_pool_retrieve(ca, ca_id); + if ( NULL == ca_crt ) { purple_debug_info("certificate/x509/tls_cached", "Certificate Authority with DN='%s' not " "found. I'll prompt the user, I guess.\n", @@ -1385,16 +1399,7 @@ return; } - ca_crt = purple_certificate_pool_retrieve(ca, ca_id); g_free(ca_id); - if (!ca_crt) { - purple_debug_error("certificate/x509/tls_cached", - "Certificate authority disappeared out " - "underneath me!\n"); - purple_certificate_verify_complete(vrq, - PURPLE_CERTIFICATE_INVALID); - return; - } /* Check the signature */ if ( !purple_certificate_signed_by(end_crt, ca_crt) ) { diff -r 61045691aa72 -r 9c226e074462 share/ca-certs/Makefile.am --- a/share/ca-certs/Makefile.am Tue Oct 02 06:13:27 2007 +0000 +++ b/share/ca-certs/Makefile.am Tue Oct 02 14:37:12 2007 +0000 @@ -2,6 +2,7 @@ cacerts_DATA = \ Equifax_Secure_CA.pem \ GTE_CyberTrust_Global_Root.pem \ + Microsoft_Secure_Server_Authority.pem \ Verisign_RSA_Secure_Server_CA.pem \ Verisign_Class3_Primary_CA.pem diff -r 61045691aa72 -r 9c226e074462 share/ca-certs/Microsoft_Secure_Server_Authority.pem --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/share/ca-certs/Microsoft_Secure_Server_Authority.pem Tue Oct 02 14:37:12 2007 +0000 @@ -0,0 +1,28 @@ +-----BEGIN CERTIFICATE----- +MIIE1TCCA72gAwIBAgIKYSsApAADAAAAFDANBgkqhkiG9w0BAQUFADAnMSUwIwYD +VQQDExxNaWNyb3NvZnQgSW50ZXJuZXQgQXV0aG9yaXR5MB4XDTA2MDQyMTE5MTEw +NFoXDTA5MDQxOTIzNTkwMFowgYsxEzARBgoJkiaJk/IsZAEZFgNjb20xGTAXBgoJ +kiaJk/IsZAEZFgltaWNyb3NvZnQxFDASBgoJkiaJk/IsZAEZFgRjb3JwMRcwFQYK +CZImiZPyLGQBGRYHcmVkbW9uZDEqMCgGA1UEAxMhTWljcm9zb2Z0IFNlY3VyZSBT +ZXJ2ZXIgQXV0aG9yaXR5MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA +syn2tJzCJKsQy98cYrzBT0qMSqTMibRel34u64jqd1GKP9cRMHagyNLZIb1rv8NZ +XPdf2uI8hGc4lxRh4iprbFPOZSiHQIyq9zoqLS7Bh/KnqnRX4CCntCQbWVa/s5c5 +FbGD5XG5AvA8sjn56WPotYLGeWrSZ/k2bcH9YgvQ2Yrt8t1VxPQciSuX82KSn2Kx +xxJKgQtAgZpyekR5QdIUUvQsEAPaCfWRsF/OMQoyc4UeAxAELavr2vlq869ye3Fu +f3fUhVEk8kxtiVPYWYBTAhWts62pEwaKGPteMsGnvbX+BRgIwc55vfs6KWXxnBUL +9Q8BfQQLbT8nQe7hO4XXMQIDAQABo4IBnDCCAZgwEgYDVR0TAQH/BAgwBgEB/wIB +ATAdBgNVHQ4EFgQUp08F+9GOQVM3lcpL4UMfWutNzVAwCwYDVR0PBAQDAgGGMBIG +CSsGAQQBgjcVAQQFAgMDAAMwIwYJKwYBBAGCNxUCBBYEFMnAnEM4ke3T6fpSclUI +g7XN8o57MBkGCSsGAQQBgjcUAgQMHgoAUwB1AGIAQwBBMB8GA1UdIwQYMBaAFDNf +3Q+3nFzO7ofdcHCLX33PIry5MGYGA1UdHwRfMF0wW6BZoFeGNGh0dHA6Ly9jcmwu +bWljcm9zb2Z0LmNvbS9wa2kvbXNjb3JwL2NybC9tc3d3dygzKS5jcmyGH2h0dHA6 +Ly9jb3JwcGtpL2NybC9tc3d3dygzKS5jcmwweQYIKwYBBQUHAQEEbTBrMDwGCCsG +AQUFBzAChjBodHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20vcGtpL21zY29ycC9tc3d3 +dygzKS5jcnQwKwYIKwYBBQUHMAKGH2h0dHA6Ly9jb3JwcGtpL2FpYS9tc3d3dygz +KS5jcnQwDQYJKoZIhvcNAQEFBQADggEBAIJDQpkqhodC3ZmKPB4dTveoFCpuc4C0 +qdXPLggvRiTnQJP/SRdnfQwkaulDS3771zWo3fO1/tTiCmVvtU4LNbISpQmrz41q +AP2QIUl/d4Fjiaz0qchNxmTRlVLGsTrwkMMkOh9MUQEcNyk9RuGepf/1+66qeEnx +eCgK09yIcbgdE9ffk5ueTX7TNfgoNZO9ORnRS1p7nra3b0Wi1kdGqDmbpw7We+M8 +6B8VpPa0QaofgRdl2dzOijd7hGN+cgRNMvdGpRxzkaWUA52rBOrEVyJLu2IUksPV +0Q/0ZZMNZXJh8MmWW/o8ebQZJQshN5p4M7HiUN/cZ2onnrdZSpIwyAU= +-----END CERTIFICATE-----