185 |
185 |
186 WebdavBackend *dav = rq->davCollection ? |
186 WebdavBackend *dav = rq->davCollection ? |
187 rq->davCollection : &default_backend; |
187 rq->davCollection : &default_backend; |
188 |
188 |
189 |
189 |
190 // requested uri path |
190 // requested uri and path |
191 char *path = pblock_findkeyval(pb_key_path, rq->vars); |
191 char *path = pblock_findkeyval(pb_key_path, rq->vars); |
|
192 char *uri = pblock_findkeyval(pb_key_uri, rq->reqpb); |
192 |
193 |
193 // VFS settings are only taken from the first backend |
194 // VFS settings are only taken from the first backend |
194 uint32_t settings = dav->settings; |
195 uint32_t settings = dav->settings; |
195 |
196 |
196 // list of individual WebdavPropfindRequest objects for each Backend |
197 // list of individual WebdavPropfindRequest objects for each Backend |
252 // the webdav backend has not disabled vfs usage |
253 // the webdav backend has not disabled vfs usage |
253 // the file is a directory |
254 // the file is a directory |
254 // depth is not 0 |
255 // depth is not 0 |
255 // in this case we need to execute propfind_do for all children |
256 // in this case we need to execute propfind_do for all children |
256 if(usevfs) { |
257 if(usevfs) { |
257 if(!webdav_op_propfind_children(op, vfs, path)) { |
258 if(!webdav_op_propfind_children(op, vfs, uri, path)) { |
258 ret = REQ_ABORTED; |
259 ret = REQ_ABORTED; |
259 } |
260 } |
260 } |
261 } |
261 } |
262 } |
262 |
263 |