Home | News | Projects | Releases
Bugs | RFE | Repositories | Help
Renamed Fail to InvalidSSL.
[xestiacalendar/.git] / source / objects / CalDAV / CalDAV.cpp
index f0f8dc8..c781e94 100644 (file)
 // with Xestia Calendar. If not, see <http://www.gnu.org/licenses/>
 
 #include "CalDAV.h"
-#include <iostream>
 
 using namespace std;
 
+size_t CalDAVOutput(char *ReceivedBuffer, size_t Size, size_t NewMemoryBytes, string *StringPointer)
+{
+       
+       string ReceivedBufferString = "";
+       ReceivedBufferString.append(ReceivedBuffer, NewMemoryBytes);
+       
+       StringPointer->append(ReceivedBufferString);
+       
+       return Size * NewMemoryBytes;
+       
+}
+
 CalDAV::CalDAV(){
 
        // Setup the objects within the CalDAV connection 
@@ -77,6 +88,8 @@ CalDAVServerResult CalDAV::Connect(){
 
        string ServerAddress = "";
        string ServerUserPass = "";
+       string ServerData = "";
+       string ServerHeader = "";
 
        // Setup the server address.
        
@@ -108,11 +121,14 @@ CalDAVServerResult CalDAV::Connect(){
        curl_easy_setopt(ConnectionHandle, CURLOPT_USERPWD, ServerUserPass.c_str());
        curl_easy_setopt(ConnectionHandle, CURLOPT_HTTPAUTH, CURLAUTH_DIGEST);
        curl_easy_setopt(ConnectionHandle, CURLOPT_FAILONERROR, 1L);
-
+       curl_easy_setopt(ConnectionHandle, CURLOPT_WRITEFUNCTION, CalDAVOutput);
+       curl_easy_setopt(ConnectionHandle, CURLOPT_WRITEDATA, &ServerData);
+       curl_easy_setopt(ConnectionHandle, CURLOPT_WRITEHEADER, &ServerHeader);
+       
        // Connect to the CalDAV server.
        
        ServerResult.Code = curl_easy_perform(ConnectionHandle);
-       
+
        // Process the result received from the server.
        
        if (ServerResult.Code != CURLE_OK){
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