dav/scfg.h

changeset 534
9a4857d6444e
parent 522
46f96dcd6eab
child 536
877f7c4a203b
equal deleted inserted replaced
533:5b9f20aa88c2 534:9a4857d6444e
47 #define SYNC_CMD_RESTORE 8 47 #define SYNC_CMD_RESTORE 8
48 48
49 #define DEFAULT_TAG_XATTR "tags" 49 #define DEFAULT_TAG_XATTR "tags"
50 #define MACOS_TAG_XATTR "com.apple.metadata:_kMDItemUserTags" 50 #define MACOS_TAG_XATTR "com.apple.metadata:_kMDItemUserTags"
51 51
52 typedef struct TagConfig TagConfig; 52 typedef struct TagConfig TagConfig;
53 typedef struct Versioning Versioning; 53 typedef struct Versioning Versioning;
54 typedef struct SplitConfig SplitConfig;
54 55
55 typedef struct SyncDirectory { 56 typedef struct SyncDirectory {
56 char *name; 57 char *name;
57 char *path; 58 char *path;
58 char *trash; 59 char *trash;
62 TagConfig *tagconfig; 63 TagConfig *tagconfig;
63 Versioning *versioning; 64 Versioning *versioning;
64 UcxList *include; 65 UcxList *include;
65 UcxList *exclude; 66 UcxList *exclude;
66 UcxList *tagfilter; 67 UcxList *tagfilter;
68 UcxList *splitconfig;
67 uint32_t metadata; 69 uint32_t metadata;
68 int max_retry; 70 int max_retry;
69 int allow_cmd; 71 int allow_cmd;
70 time_t lock_timeout; 72 time_t lock_timeout;
71 bool backuppull; 73 bool backuppull;
72 bool lockpull; 74 bool lockpull;
73 bool lockpush; 75 bool lockpush;
74 uint32_t db_settings; 76 uint32_t db_settings;
75 } SyncDirectory; 77 } SyncDirectory;
76 78
79 struct SplitConfig {
80 /*
81 * path regex pattern or NULL
82 */
83 char *pattern;
84
85 /*
86 * minimum file size for activating file splitting
87 * a value of -1 means no size restriction
88 */
89 int64_t minsize;
90
91 /*
92 * split files into blocks with this size
93 */
94 size_t blocksize;
95 };
77 96
78 enum TagFormat { 97 enum TagFormat {
79 TAG_FORMAT_TEXT = 0, 98 TAG_FORMAT_TEXT = 0,
80 TAG_FORMAT_CSV, 99 TAG_FORMAT_CSV,
81 TAG_FORMAT_XML, 100 TAG_FORMAT_XML,

mercurial