Home | News | Projects | Releases
Bugs | RFE | Repositories | Help
Fixed cleaning of old object files
[xestiaab/.git] / source / carddav / carddav-contactlist.cpp
index 2b69d6e..6990876 100644 (file)
@@ -49,6 +49,12 @@ ContactListData CardDAV::GetContactList(wxString SyncTokenInc){
        wxString ServerAddressNormal;
 
        conn = curl_easy_init();
+
+#if defined(__APPLE__)
+       
+       SetConnectionObject(conn);
+       
+#endif
        
        struct CardDAVCURLPasser {
        
@@ -66,7 +72,7 @@ ContactListData CardDAV::GetContactList(wxString SyncTokenInc){
        wxString Data1;
        wxString Data2;
        
-       ServerAddressURL = ServerAddress + wxT(":") + wxString::Format(wxT("%i"), ServerPort) + wxT("/") + ServerPrefix + wxT("/");
+       ServerAddressURL = ServerAddress + wxT(":") + wxString::Format(wxT("%i"), ServerPort) + ServerPrefix;
        ServerAddressSSL = wxT("https://") + ServerAddressURL;
        ServerAddressNormal = wxT("http://") + ServerAddressURL;
        
@@ -87,10 +93,7 @@ ContactListData CardDAV::GetContactList(wxString SyncTokenInc){
                SyncData.Append(wxT("<D:sync-collection xmlns:D=\"DAV:\"\n"));
                SyncData.Append(wxT(" xmlns:C=\"urn:ietf:params:xml:ns:carddav\">\n"));
                SyncData.Append(wxT("<D:sync-token>"));
-               //SyncData.Trim();
-               //SyncData.Append(wxT("data:,00378c55-1f44-44a2-a255-84f6560b5cac_580"));
                SyncData.Append(SyncTokenInc);
-               //SyncData.Trim();
                SyncData.Append(wxT("</D:sync-token>\n"));
                SyncData.Append(wxT("<D:sync-level>1</D:sync-level>\n"));
                SyncData.Append(wxT("<D:prop>\n"));
@@ -115,18 +118,7 @@ ContactListData CardDAV::GetContactList(wxString SyncTokenInc){
                SyncDataBuffer = SyncData.ToUTF8();
 
        }
-       
-       //static const char* query = SyncData.mb_str();
-       
-       /*char *query = "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n\
-               <D:sync-collection xmlns:D=\"DAV:\"\n\
-                xmlns:C=\"urn:ietf:params:xml:ns:carddav\">\n\
-               <D:sync-token>data:,00378c55-1f44-44a2-a255-84f6560b5cac_580</D:sync-token>\n\
-               <D:sync-level>1</D:sync-level>\n\
-               <D:prop>\n\
-                       <D:getetag/>\n\
-               </D:prop>\n\
-       </D:sync-collection>\n";*/
+
        const char* query = SyncDataBuffer.data();
        
        // Try SSL first.
@@ -162,6 +154,10 @@ ContactListData CardDAV::GetContactList(wxString SyncTokenInc){
                curl_easy_setopt(conn, CURLOPT_HTTPHEADER, slist);
                curl_easy_setopt(conn, CURLOPT_CERTINFO, 1);
 
+#if defined(__APPLE__) || defined(__WIN32__)
+               
+#else
+               
                ServerCertFilename = GetAccountDir(ServerAccount, TRUE);
 
                if (wxFile::Exists(ServerCertFilename) == TRUE){
@@ -172,13 +168,8 @@ ContactListData CardDAV::GetContactList(wxString SyncTokenInc){
                
                }
 
-               //UploadData.readptr = &CardDAVDataQuery;
-               //UploadData.sizeleft = CardDAVDataQuery.Len();
-               //curl_easy_setopt(conn, CURLOPT_UPLOAD, 1);
-               //curl_easy_setopt(conn, CURLOPT_READDATA, &UploadData);
-               //curl_easy_setopt(conn, CURLOPT_READFUNCTION, UploadReadFunc);
+#endif
                
-               //curl_easy_setopt(conn, CURLOPT_WRITEFUNCTION, writefunc);
                curl_easy_setopt(conn, CURLOPT_POSTFIELDS, query);
                curl_easy_setopt(conn, CURLOPT_POSTFIELDSIZE, strlen(query));
 
@@ -229,17 +220,16 @@ ContactListData CardDAV::GetContactList(wxString SyncTokenInc){
                // Check if it fails with a CURLE_SSL_CACERT then compare
                // the certificates as PEM files.
                
-               if (claconncode == CURLE_SSL_CACERT && wxFile::Exists(ServerCertFilename) == TRUE){
+#if defined(__APPLE__)
+
+#else
                
-                       //curl_easy_cleanup(conn);
-                       //conn = curl_easy_init();
+               if (claconncode == CURLE_SSL_CACERT && wxFile::Exists(ServerCertFilename) == TRUE){
 
                        CURL *sslerrconn;
                        sslerrconn = curl_easy_init();
                        CURLcode sslerrconncode;
-
-                       //claconncode = (curl_easy_perform(conn));
-
+                       
                        wxString ServerAddressOnly = wxT("https://") + ServerAddress + wxT(":") + wxString::Format(wxT("%i"), ServerPort) + wxT("/");
 
                        curl_easy_setopt(sslerrconn, CURLOPT_URL, (const char*)ServerAddressOnly.mb_str(wxConvUTF8));
@@ -336,6 +326,8 @@ ContactListData CardDAV::GetContactList(wxString SyncTokenInc){
                        curl_easy_cleanup(sslerrconn);
                
                }
+               
+#endif
 
                // Sort out SSL error.
                
@@ -371,6 +363,12 @@ ContactListData CardDAV::GetContactList(wxString SyncTokenInc){
                        curl_easy_setopt(sslerrconn, CURLOPT_SSL_VERIFYPEER, 0);
                        curl_easy_setopt(sslerrconn, CURLOPT_CERTINFO, 1);
                
+#if defined(__APPLE__)
+                       
+                       SetConnectionObject(sslerrconn);
+                       
+#endif
+                       
                        sslerrconncode = (curl_easy_perform(sslerrconn));
 
                        SSLCertCol = BuildSSLCollection(sslerrconn);
@@ -423,14 +421,6 @@ ContactListData CardDAV::GetContactList(wxString SyncTokenInc){
                curl_easy_setopt(conn, CURLOPT_CUSTOMREQUEST, "REPORT");
                curl_easy_setopt(conn, CURLOPT_NOSIGNAL, 1);
                curl_easy_setopt(conn, CURLOPT_HTTPHEADER, slist);
-
-               //UploadData.readptr = &CardDAVDataQuery;
-               //UploadData.sizeleft = CardDAVDataQuery.Len();
-               //curl_easy_setopt(conn, CURLOPT_UPLOAD, 1);
-               //curl_easy_setopt(conn, CURLOPT_READDATA, &UploadData);
-               //curl_easy_setopt(conn, CURLOPT_READFUNCTION, UploadReadFunc);
-               
-               //curl_easy_setopt(conn, CURLOPT_WRITEFUNCTION, writefunc);
                curl_easy_setopt(conn, CURLOPT_POSTFIELDS, query);
                curl_easy_setopt(conn, CURLOPT_POSTFIELDSIZE, strlen(query));           
                
@@ -930,13 +920,6 @@ ContactListData CardDAV::GetContactList(wxString SyncTokenInc){
 
        SleepFor(2000000000);
 
-       /*timespec n1, n2;
-                                               
-       n1.tv_sec = 0;
-       n1.tv_nsec = 2000000000L;
-               
-       nanosleep(&n1, &n2);*/
-
        xmlFreeDoc(xmlCardDAVDoc);
        curl_easy_cleanup(conn);
 
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