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 |