--- a/dav/utils.c Sat Dec 01 16:31:36 2012 +0100 +++ b/dav/utils.c Sat Dec 01 20:34:55 2012 +0100 @@ -111,3 +111,31 @@ return url; } + +char* util_upload_url(char *url, char *filepath) { + int urllen = strlen(url); + int filepathlen = strlen(filepath); + + for(int i=filepathlen-1;i>=0;i--) { + if(filepath[i] == '/') { + filepath = filepath + i + 1; + break; + } + } + + int pathlen = urllen + filepathlen; + char *path = malloc(pathlen + 2); + + int j = urllen; + memcpy(path, url, urllen); + if(url[urllen - 1] != '/') { + path[j] = '/'; + j++; + } + memcpy(path + j, filepath, filepathlen); + j += filepathlen; + path[j] = 0; + + return path; +} +