295 return sstrdup_a(sn->mp->allocator, sstr((char*)str)).ptr; |
295 return sstrdup_a(sn->mp->allocator, sstr((char*)str)).ptr; |
296 } |
296 } |
297 |
297 |
298 |
298 |
299 char* dav_session_create_plain_href(DavSession *sn, char *path) { |
299 char* dav_session_create_plain_href(DavSession *sn, char *path) { |
300 if(!DAV_ENCRYPT_NAME(sn)) { |
300 if(!DAV_ENCRYPT_NAME(sn) && !DAV_DECRYPT_NAME(sn)) { |
301 // non encrypted file names |
301 // non encrypted file names |
302 char *url = util_path_to_url(sn, path); |
302 char *url = util_path_to_url(sn, path); |
303 char *href = dav_session_strdup(sn, util_url_path(url)); |
303 char *href = dav_session_strdup(sn, util_url_path(url)); |
304 free(url); |
304 free(url); |
305 return href; |
305 return href; |
307 return NULL; |
307 return NULL; |
308 } |
308 } |
309 } |
309 } |
310 |
310 |
311 char* dav_session_get_href(DavSession *sn, char *path) { |
311 char* dav_session_get_href(DavSession *sn, char *path) { |
312 if(DAV_ENCRYPT_NAME(sn)) { |
312 if(DAV_DECRYPT_NAME(sn) || DAV_ENCRYPT_NAME(sn)) { |
313 sstr_t p = sstr(path); |
313 sstr_t p = sstr(path); |
314 UcxBuffer *href = ucx_buffer_new(NULL, 256, UCX_BUFFER_AUTOEXTEND); |
314 UcxBuffer *href = ucx_buffer_new(NULL, 256, UCX_BUFFER_AUTOEXTEND); |
315 UcxBuffer *pbuf = ucx_buffer_new(NULL, 256, UCX_BUFFER_AUTOEXTEND); |
315 UcxBuffer *pbuf = ucx_buffer_new(NULL, 256, UCX_BUFFER_AUTOEXTEND); |
316 int start = 0; |
316 int start = 0; |
317 int begin = 0; |
317 int begin = 0; |