X-Git-Url: http://Server1/repobrowser/?a=blobdiff_plain;f=source%2Fcarddav%2Fcarddav-contactlist.cpp;h=6990876d2131a9167ce16492223524a56a963b88;hb=51508462484a87e7c2e448ec3aff643784381a09;hp=2b69d6e4986441f1d3283cd65beb23ae871f0b8d;hpb=2344778b4a379739cba5e52a47129e57d774817b;p=xestiaab%2F.git diff --git a/source/carddav/carddav-contactlist.cpp b/source/carddav/carddav-contactlist.cpp index 2b69d6e..6990876 100644 --- a/source/carddav/carddav-contactlist.cpp +++ b/source/carddav/carddav-contactlist.cpp @@ -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("\n")); SyncData.Append(wxT("")); - //SyncData.Trim(); - //SyncData.Append(wxT("data:,00378c55-1f44-44a2-a255-84f6560b5cac_580")); SyncData.Append(SyncTokenInc); - //SyncData.Trim(); SyncData.Append(wxT("\n")); SyncData.Append(wxT("1\n")); SyncData.Append(wxT("\n")); @@ -115,18 +118,7 @@ ContactListData CardDAV::GetContactList(wxString SyncTokenInc){ SyncDataBuffer = SyncData.ToUTF8(); } - - //static const char* query = SyncData.mb_str(); - - /*char *query = "\n\ - \n\ - data:,00378c55-1f44-44a2-a255-84f6560b5cac_580\n\ - 1\n\ - \n\ - \n\ - \n\ - \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);