libidav/session.h

changeset 208
1fb26aca5093
parent 185
cd42cccee550
child 225
a297c2e28fa1
equal deleted inserted replaced
207:de23f8881e9f 208:1fb26aca5093
63 typedef struct DavPathCacheElement { 63 typedef struct DavPathCacheElement {
64 char *name; 64 char *name;
65 char *encrypted_name; 65 char *encrypted_name;
66 int exists; 66 int exists;
67 } DavPathCacheElement; 67 } DavPathCacheElement;
68 //*/ 68 */
69
70 typedef struct DavLock {
71 char *path;
72 char *token;
73
74 } DavLock;
75
76 typedef struct DavLockManager {
77 UcxMap *resource_locks;
78 UcxList *collection_locks;
79 } DavLockManager;
69 80
70 void dav_session_set_error(DavSession *sn, CURLcode c, int status); 81 void dav_session_set_error(DavSession *sn, CURLcode c, int status);
71 82
72 char* dav_session_create_plain_href(DavSession *sn, char *path); 83 char* dav_session_create_plain_href(DavSession *sn, char *path);
73 84
75 86
76 DavResource* dav_find_child(DavSession *sn, DavResource *res, UcxBuffer *rqbuf, char *name); 87 DavResource* dav_find_child(DavSession *sn, DavResource *res, UcxBuffer *rqbuf, char *name);
77 88
78 void dav_session_cache_path(DavSession *sn, sstr_t path, sstr_t href); 89 void dav_session_cache_path(DavSession *sn, sstr_t path, sstr_t href);
79 90
91
92 DavLock* dav_create_lock(DavSession *sn, char *token, char *timeout);
93 void dav_destroy_lock(DavSession *sn, DavLock *lock);
94
95 int dav_add_resource_lock(DavSession *sn, char *path, DavLock *lock);
96 int dav_add_collection_lock(DavSession *sn, char *path, DavLock *lock);
97
98 DavLock* dav_get_lock(DavSession *sn, char *path);
99 void dav_remove_lock(DavSession *sn, char *path, DavLock *lock);
100
80 #ifdef __cplusplus 101 #ifdef __cplusplus
81 } 102 }
82 #endif 103 #endif
83 104
84 #endif /* DAV_SESSION_H */ 105 #endif /* DAV_SESSION_H */

mercurial