413 } |
413 } |
414 |
414 |
415 DavResource* response2resource(DavSession *sn, ResponseTag *response, char *parent_path) { |
415 DavResource* response2resource(DavSession *sn, ResponseTag *response, char *parent_path) { |
416 // create resource |
416 // create resource |
417 char *name = NULL; |
417 char *name = NULL; |
418 if(DAV_DECRYPT_NAME(sn) && response->crypto_name) { |
418 DavKey *key = NULL; |
|
419 if(DAV_DECRYPT_NAME(sn) && response->crypto_name && (key = dav_context_get_key(sn->context, response->crypto_key))) { |
419 if(!response->crypto_key) { |
420 if(!response->crypto_key) { |
420 // TODO: error |
421 // TODO: error |
421 fprintf(stderr, "encrypted resource without key\n"); |
422 fprintf(stderr, "encrypted resource without key\n"); |
422 return NULL; |
423 return NULL; |
423 } |
424 } |
424 name = util_decrypt_str(sn, response->crypto_name, response->crypto_key); |
425 name = util_decrypt_str_k(sn, response->crypto_name, key); |
425 if(!name) { |
426 if(!name) { |
426 // TODO: error |
427 // TODO: error |
427 fprintf(stderr, "decrypted name is null\n"); |
428 fprintf(stderr, "decrypted name is null\n"); |
428 return NULL; |
429 return NULL; |
429 } |
430 } |