src/server/public/webdav.h

branch
webdav
changeset 366
47bc686fafe4
parent 331
ab26980faad6
child 376
61d481d3c2e4
equal deleted inserted replaced
361:570026d3a685 366:47bc686fafe4
90 * Use the vfs to open a file for proppatch 90 * Use the vfs to open a file for proppatch
91 */ 91 */
92 #define WS_WEBDAV_PROPPATCH_USE_VFS 0x02 92 #define WS_WEBDAV_PROPPATCH_USE_VFS 0x02
93 93
94 94
95 typedef WebdavBackend*(*webdav_create_func)(Session *sn, Request *rq, pblock *pb); 95 typedef void*(*webdav_init_func)(ServerConfiguration *cfg, pool_handle_t *pool, WSConfigNode *config);
96 typedef WebdavBackend*(*webdav_create_func)(Session *sn, Request *rq, pblock *pb, void *initData);
96 97
97 enum WebdavValueType { 98 enum WebdavValueType {
98 WS_VALUE_NO_TYPE = 0, 99 WS_VALUE_NO_TYPE = 0,
99 WS_VALUE_XML_NODE, 100 WS_VALUE_XML_NODE,
100 WS_VALUE_XML_DATA, 101 WS_VALUE_XML_DATA,
390 }; 391 };
391 392
392 /* 393 /*
393 * register a webdav backend 394 * register a webdav backend
394 */ 395 */
395 int webdav_register_backend(const char *name, webdav_create_func vfsCreate); 396 int webdav_register_backend(const char *name, webdav_init_func webdavInit, webdav_create_func webdavCreate);
396 397
397 WebdavBackend* webdav_create(Session *sn, Request *rq, const char *dav_class, pblock *pb); 398 WebdavBackend* webdav_create(Session *sn, Request *rq, const char *dav_class, pblock *pb, void *initData);
398 399
399 /* 400 /*
400 * gets the requested depth 401 * gets the requested depth
401 * 402 *
402 * in case of infinity, -1 is returned 403 * in case of infinity, -1 is returned

mercurial