libidav/methods.c

changeset 225
a297c2e28fa1
parent 223
cbbdf207e67e
child 227
bf485439222a
--- a/libidav/methods.c	Sat Mar 19 18:49:36 2016 +0100
+++ b/libidav/methods.c	Sun Mar 20 11:27:31 2016 +0100
@@ -458,7 +458,7 @@
     char *url = NULL;
     curl_easy_getinfo(sn->handle, CURLINFO_EFFECTIVE_URL, &url);
     if(!root) {
-        printf("method.c: TODO: remove\n");
+        printf("methods.c: TODO: remove\n");
         root = dav_resource_new_href(sn, util_url_path(url)); // TODO: remove
     }
     
@@ -491,14 +491,14 @@
     DavKey *key = NULL;
     if(DAV_DECRYPT_NAME(sn) && response->crypto_name && (key = dav_context_get_key(sn->context, response->crypto_key))) {
         if(!response->crypto_key) {
-            // TODO: error
-            fprintf(stderr, "encrypted resource without key\n");
+            sn->error = DAV_ERROR;
+            dav_session_set_errstr(sn, "Missing crypto-key property");
             return NULL;
         }
         name = util_decrypt_str_k(sn, response->crypto_name, key);
         if(!name) {
-            // TODO: error
-            fprintf(stderr, "decrypted name is null\n");
+            sn->error = DAV_ERROR;
+            dav_session_set_errstr(sn, "Cannot decrypt resource name");
             return NULL;
         }
     } else {
@@ -640,13 +640,15 @@
         char *name = NULL;
         if(DAV_DECRYPT_NAME(sn) && crypto_name) {
             if(!crypto_key) {
-                // TODO: error
-                fprintf(stderr, "encrypted resource without key\n");
+                sn->error = DAV_ERROR;
+                dav_session_set_errstr(sn, "Missing crypto-key property");
+                return -1;
             }
             name = util_decrypt_str(sn, crypto_name, crypto_key);
             if(!name) {
-                // TODO: error
-                fprintf(stderr, "decrypted name is null\n");
+                sn->error = DAV_ERROR;
+                dav_session_set_errstr(sn, "Cannot decrypt resource name");
+                return -1;
             }
         } else {
             sstr_t resname = sstr(util_resource_name(href));

mercurial