Home | News | Projects | Releases
Bugs | RFE | Repositories | Help
Altered CardDAV object to accommodate for SSL support for OS X (and other OSes in...
[xestiaab/.git] / source / carddav / carddav-servercontact.cpp
index a5771c2..b4d55e2 100644 (file)
@@ -48,10 +48,12 @@ void CardDAV::GetServerContactData()
        wxString ServerAddressURL;
        wxString ServerAuth;
        wxString ServerAddressSSL;
-       wxString ServerAddressNormal;   
-
+       wxString ServerAddressNormal;
+       
         conn = curl_easy_init();
        
+       SetConnectionObject(conn);
+       
        struct CardDAVCURLPasser {
        
                CardDAV *Data;
@@ -95,6 +97,10 @@ void CardDAV::GetServerContactData()
                curl_easy_setopt(conn, CURLOPT_WRITEHEADER, &PageHeader);
                curl_easy_setopt(conn, CURLOPT_NOSIGNAL, 1);
 
+#if defined(__APPLE__)
+               
+#else
+               
                ServerCertFilename = GetAccountDir(ServerAccount, TRUE);
 
                if (wxFile::Exists(ServerCertFilename) == TRUE){
@@ -105,6 +111,8 @@ void CardDAV::GetServerContactData()
                
                }
 
+#endif
+               
                claconncode = (curl_easy_perform(conn));
 
                // If CURLE_PEER_FAILED_VERIFICATION is returned, retry without
@@ -145,6 +153,10 @@ void CardDAV::GetServerContactData()
                // Check if it fails with a CURLE_SSL_CACERT then compare
                // the certificates as PEM files.
                
+#if defined(__APPLE__)
+               
+#else
+               
                if (claconncode == CURLE_SSL_CACERT && wxFile::Exists(ServerCertFilename) == TRUE){
                
                        CURL *sslerrconn;
@@ -238,6 +250,8 @@ void CardDAV::GetServerContactData()
                
                }
                
+#endif
+               
                // Sort out SSL error.
                
                // When SSL cert error occurs, connect again and fetch certificates.
@@ -271,7 +285,9 @@ void CardDAV::GetServerContactData()
                        curl_easy_setopt(sslerrconn, CURLOPT_NOSIGNAL, 1);
                        curl_easy_setopt(sslerrconn, CURLOPT_SSL_VERIFYPEER, 0);
                        curl_easy_setopt(sslerrconn, CURLOPT_CERTINFO, 1);
-                                       
+                       
+                       SetConnectionObject(sslerrconn);
+                       
                        sslerrconncode = (curl_easy_perform(sslerrconn));
 
                        SSLCertCol = BuildSSLCollection(sslerrconn);
Xestia Software Development
Yn Maystri
© 2006 - 2019 Xestia Software Development
Software

Xestia Address Book
Xestia Calendar
Development

Xestia Gelforn
Everything else

About
News
Privacy Policy