dav/finfo.h

changeset 526
e3c0440bd599
parent 522
46f96dcd6eab
child 608
3e4c0285a868
--- a/dav/finfo.h	Sun Mar 17 15:00:48 2019 +0100
+++ b/dav/finfo.h	Sun Mar 17 18:11:31 2019 +0100
@@ -49,15 +49,31 @@
     char   *hash;
 } XAttributes;
 
-uint32_t parse_finfo(const char *str, char **unknown);
+typedef struct FileInfo {
+    time_t  last_modified;
+    mode_t  mode;
+    uid_t   uid;
+    gid_t   gid;
+    DavBool date_set;
+    DavBool mode_set;
+    DavBool uid_set;
+    DavBool gid_set;
+} FileInfo;
+
+uint32_t parse_finfo_settings(const char *str, char **unknown);
     
 int resource_set_finfo(const char *path, DavResource *res, uint32_t finfo);
 int resource_set_finfo_s(struct stat *s, DavResource *res, uint32_t finfo);
 
+XAttributes* xml_get_attributes(DavXmlNode *xml);
 XAttributes* file_get_attributes(const char *path);
 int resource_set_xattr(DavResource *res, XAttributes *xattr);
 void xattributes_free(XAttributes *xattr);
 
+char* get_xattr_hash(DavXmlNode *finfo);
+
+void finfo_get_values(DavXmlNode *xml, FileInfo *outval);
+
 #ifdef __cplusplus
 }
 #endif

mercurial