273 void* pg_webdav_init(ServerConfiguration *cfg, pool_handle_t *pool, WSConfigNode *config) { |
273 void* pg_webdav_init(ServerConfiguration *cfg, pool_handle_t *pool, WSConfigNode *config) { |
274 return pg_init_repo(pool, config); |
274 return pg_init_repo(pool, config); |
275 } |
275 } |
276 |
276 |
277 WebdavBackend* pg_webdav_create(Session *sn, Request *rq, pblock *pb, void *initData) { |
277 WebdavBackend* pg_webdav_create(Session *sn, Request *rq, pblock *pb, void *initData) { |
278 // resourcepool is required |
278 PgRepository *repo = initData; |
279 char *resource_pool = pblock_findval("resourcepool", pb); |
279 |
280 if(!resource_pool) { |
280 char *resource_pool; |
281 log_ereport(LOG_MISCONFIG, "pg_webdav_create: missing resourcepool parameter"); |
281 if(repo) { |
282 return NULL; |
282 resource_pool = repo->resourcepool.ptr; |
|
283 } else { |
|
284 // resourcepool is required |
|
285 resource_pool = pblock_findval("resourcepool", pb); |
|
286 if(!resource_pool) { |
|
287 log_ereport(LOG_MISCONFIG, "pg_webdav_create: missing resourcepool parameter"); |
|
288 return NULL; |
|
289 } |
283 } |
290 } |
284 |
291 |
285 // get the resource first (should only fail in case of misconfig) |
292 // get the resource first (should only fail in case of misconfig) |
286 ResourceData *resdata = resourcepool_lookup(sn, rq, resource_pool, 0); |
293 ResourceData *resdata = resourcepool_lookup(sn, rq, resource_pool, 0); |
287 if(!resdata) { |
294 if(!resdata) { |