libidav/resource.c

changeset 525
26a1d5b9d9d2
parent 518
cca3e7aa30ed
child 542
060a8cda7f62
equal deleted inserted replaced
524:d53fd1006485 525:26a1d5b9d9d2
905 long status = 0; 905 long status = 0;
906 curl_easy_getinfo (handle, CURLINFO_RESPONSE_CODE, &status); 906 curl_easy_getinfo (handle, CURLINFO_RESPONSE_CODE, &status);
907 int r = 0; 907 int r = 0;
908 if(ret == CURLE_OK && (status >= 200 && status < 300)) { 908 if(ret == CURLE_OK && (status >= 200 && status < 300)) {
909 res->session->error = DAV_OK; 909 res->session->error = DAV_OK;
910 res->exists = 0;
910 911
911 // TODO: parse response 912 // TODO: parse response
912 // TODO: free res 913 // TODO: free res
913 } else { 914 } else {
914 dav_session_set_error(res->session, ret, status); 915 dav_session_set_error(res->session, ret, status);
1010 1011
1011 int dav_create(DavResource *res) { 1012 int dav_create(DavResource *res) {
1012 int status; 1013 int status;
1013 if(!create_resource(res, &status)) { 1014 if(!create_resource(res, &status)) {
1014 // resource successfully created 1015 // resource successfully created
1016 res->exists = 1;
1015 return 0; 1017 return 0;
1016 } 1018 }
1017 1019
1018 if(status == 403 || status == 409 || status == 404) { 1020 if(status == 403 || status == 409 || status == 404) {
1019 // create intermediate collections 1021 // create intermediate collections
1034 1036
1035 CURLcode ret = do_head_request(sn); 1037 CURLcode ret = do_head_request(sn);
1036 long status = 0; 1038 long status = 0;
1037 curl_easy_getinfo (handle, CURLINFO_RESPONSE_CODE, &status); 1039 curl_easy_getinfo (handle, CURLINFO_RESPONSE_CODE, &status);
1038 if(ret == CURLE_OK && (status >= 200 && status < 300)) { 1040 if(ret == CURLE_OK && (status >= 200 && status < 300)) {
1041 res->exists = 1;
1039 return 1; 1042 return 1;
1040 } else { 1043 } else {
1041 dav_session_set_error(sn, ret, status); 1044 dav_session_set_error(sn, ret, status);
1045 if(status == 404) {
1046 res->exists = 0;
1047 }
1042 return 0; 1048 return 0;
1043 } 1049 }
1044 } 1050 }
1045 1051
1046 static int dav_cp_mv_url(DavResource *res, char *desturl, _Bool copy, _Bool override) { 1052 static int dav_cp_mv_url(DavResource *res, char *desturl, _Bool copy, _Bool override) {

mercurial