diff -r 99a34860c105 -r d938228c382e src/server/webdav/webdav.h --- a/src/server/webdav/webdav.h Wed Nov 02 19:19:01 2022 +0100 +++ b/src/server/webdav/webdav.h Sun Nov 06 15:53:32 2022 +0100 @@ -31,9 +31,10 @@ #include "../public/webdav.h" -#include -#include -#include +#include +#include +#include +#include #ifdef __cplusplus extern "C" { @@ -47,8 +48,14 @@ typedef struct DefaultWebdavData { WebdavVFSProperties vfsproperties; } DefaultWebdavData; + +typedef struct WebdavPropfindRequestList WebdavPropfindRequestList; +struct WebdavPropfindRequestList { + WebdavPropfindRequest *propfind; + WebdavPropfindRequestList *next; +}; -WebdavType* webdav_get_type(scstr_t dav_class); +WebdavType* webdav_get_type(cxstring dav_class); void* webdav_init_backend(ServerConfiguration *cfg, pool_handle_t *pool, WebdavType *dav_class, WSConfigNode *config, int *error); @@ -62,7 +69,7 @@ * this function sets an http response code in case of an error * or missing request body */ -UcxBuffer* rqbody2buffer(Session *sn, Request *rq); +int rqbody2buffer(Session *sn, Request *rq, CxBuffer *buf); int webdav_options(pblock *pb, Session *sn, Request *rq); @@ -74,7 +81,7 @@ WebdavPropfindRequest *propfind, const char *path, const char *uri, - UcxList **out_req); + WebdavPropfindRequestList **out_req); int webdav_propfind_do( WebdavBackend *dav, @@ -123,7 +130,7 @@ VFSFile *file, WSBool commit); -UcxKey webdav_property_key(const char *ns, const char *name); +CxHashKey webdav_property_key(const char *ns, const char *name); #ifdef __cplusplus }