src/server/webdav/operation.h

branch
webdav
changeset 241
4adad7faf452
parent 239
d5031c30022c
child 245
a193c42fc809
equal deleted inserted replaced
240:cd74667f6c85 241:4adad7faf452
40 struct WebdavOperation { 40 struct WebdavOperation {
41 WebdavBackend *dav; 41 WebdavBackend *dav;
42 Request *rq; 42 Request *rq;
43 Session *sn; 43 Session *sn;
44 44
45 WebdavProppatchRequest *request; /* proppatch request or NULL */ 45 WebdavProppatchRequest *proppatch; /* proppatch request or NULL */
46 WebdavPList *reqprops; /* requested properties */ 46 WebdavPList *reqprops; /* requested properties */
47 UcxList *requests; /* backend specific request objects */ 47 UcxList *requests; /* backend specific request objects */
48 48
49 WebdavResponse *response; 49 WebdavResponse *response;
50 50
51 response_close_func response_close; 51 response_close_func response_close;
52 52
53 VFS_DIR parent; /* current directory */ 53 VFS_DIR parent; /* current directory */
54 struct stat *stat; /* current stat object */ 54 struct stat *stat; /* current stat object */
55 }; 55 };
56
57 /*
58 * counts the number of backends
59 */
60 size_t webdav_num_backends(WebdavBackend *dav);
56 61
57 WebdavOperation* webdav_create_propfind_operation( 62 WebdavOperation* webdav_create_propfind_operation(
58 Session *sn, 63 Session *sn,
59 Request *rq, 64 Request *rq,
60 WebdavBackend *dav, 65 WebdavBackend *dav,
85 Request *rq, 90 Request *rq,
86 WebdavBackend *dav, 91 WebdavBackend *dav,
87 WebdavProppatchRequest *proppatch, 92 WebdavProppatchRequest *proppatch,
88 WebdavResponse *response); 93 WebdavResponse *response);
89 94
95 int webdav_op_proppatch(
96 WebdavOperation *op,
97 const char *href,
98 const char *path);
99
90 int webdav_op_proppatch_close_resource( 100 int webdav_op_proppatch_close_resource(
91 WebdavOperation *op, 101 WebdavOperation *op,
92 WebdavResource *resource); 102 WebdavResource *resource);
93 103
94 #ifdef __cplusplus 104 #ifdef __cplusplus

mercurial