libidav/webdav.h

branch
v1.2
changeset 481
ff477f1f7765
parent 373
dcc03142eb5f
equal deleted inserted replaced
480:7bb47ddc1b5e 481:ff477f1f7765
60 typedef struct DavKey DavKey; 60 typedef struct DavKey DavKey;
61 typedef struct DavXmlNode DavXmlNode; 61 typedef struct DavXmlNode DavXmlNode;
62 62
63 typedef size_t(*dav_read_func)(void*, size_t, size_t, void*); 63 typedef size_t(*dav_read_func)(void*, size_t, size_t, void*);
64 typedef size_t(*dav_write_func)(const void*, size_t, size_t, void*); 64 typedef size_t(*dav_write_func)(const void*, size_t, size_t, void*);
65 typedef int(*dav_seek_func)(const void *, long, int);
65 66
66 typedef int(*dav_auth_func)(DavSession *, void *); 67 typedef int(*dav_auth_func)(DavSession *, void *);
67 typedef void(*dav_progress_func)(DavResource *, int64_t, int64_t, void *); 68 typedef void(*dav_progress_func)(DavResource *, int64_t, int64_t, void *);
68 69
69 enum DavError { 70 enum DavError {
237 void* dav_session_calloc(DavSession *sn, size_t nelm, size_t size); 238 void* dav_session_calloc(DavSession *sn, size_t nelm, size_t size);
238 void* dav_session_realloc(DavSession *sn, void *ptr, size_t size); 239 void* dav_session_realloc(DavSession *sn, void *ptr, size_t size);
239 void dav_session_free(DavSession *sn, void *ptr); 240 void dav_session_free(DavSession *sn, void *ptr);
240 char* dav_session_strdup(DavSession *sn, const char *str); 241 char* dav_session_strdup(DavSession *sn, const char *str);
241 242
242 243 void dav_set_effective_href(DavSession *sn, DavResource *resource);
243 DavResource* dav_get(DavSession *sn, char *path, char *properties); 244 DavResource* dav_get(DavSession *sn, char *path, char *properties);
244 245
245 UcxList* parse_properties_string(DavContext *context, sstr_t str); 246 UcxList* parse_properties_string(DavContext *context, sstr_t str);
246 247
247 DavResource* dav_query(DavSession *sn, char *query, ...); 248 DavResource* dav_query(DavSession *sn, char *query, ...);
295 void dav_remove_property(DavResource *res, char *name); 296 void dav_remove_property(DavResource *res, char *name);
296 void dav_remove_property_ns(DavResource *res, char *ns, char *name); 297 void dav_remove_property_ns(DavResource *res, char *ns, char *name);
297 298
298 DavPropName* dav_get_property_names(DavResource *res, size_t *count); 299 DavPropName* dav_get_property_names(DavResource *res, size_t *count);
299 300
300 void dav_set_content(DavResource *res, void *stream, dav_read_func read_func); 301 void dav_set_content(DavResource *res, void *stream, dav_read_func read_func, dav_seek_func seek_func);
301 void dav_set_content_data(DavResource *res, char *content, size_t length); 302 void dav_set_content_data(DavResource *res, char *content, size_t length);
302 void dav_set_content_length(DavResource *res, size_t length); 303 void dav_set_content_length(DavResource *res, size_t length);
303 304
304 int dav_load(DavResource *res); 305 int dav_load(DavResource *res);
305 int dav_load_prop(DavResource *res, DavPropName *properties, size_t numprop); 306 int dav_load_prop(DavResource *res, DavPropName *properties, size_t numprop);

mercurial