# HG changeset patch # User Olaf Wintermann # Date 1576408276 -3600 # Node ID 165811ea12abeec9ef80bd47f940a57d51baa18d # Parent 1091cb3c6dad364818c00dbd36450efd80224271 add documentation for all new config elements diff -r 1091cb3c6dad -r 165811ea12ab dav/scfg.c --- a/dav/scfg.c Sun Dec 15 10:44:11 2019 +0100 +++ b/dav/scfg.c Sun Dec 15 12:11:16 2019 +0100 @@ -391,7 +391,7 @@ xmlFree(attr_type); } if(attr_always) { - v.always = util_getboolean(attr_always); + v.always = util_getboolean((const char*)attr_always); xmlFree(attr_always); } diff -r 1091cb3c6dad -r 165811ea12ab dav/xattrtool.c --- a/dav/xattrtool.c Sun Dec 15 10:44:11 2019 +0100 +++ b/dav/xattrtool.c Sun Dec 15 12:11:16 2019 +0100 @@ -165,7 +165,7 @@ char *attr = argv[3]; int ret = 0; - size_t valuelen = 0; + ssize_t valuelen = 0; char *value = xattr_get(file, attr, &valuelen); if(value) { if(raw) { diff -r 1091cb3c6dad -r 165811ea12ab docs/src/configuration.md --- a/docs/src/configuration.md Sun Dec 15 10:44:11 2019 +0100 +++ b/docs/src/configuration.md Sun Dec 15 12:11:16 2019 +0100 @@ -41,6 +41,13 @@ Type: base64 string \ Example: `MTIzNDU2Nzg=` +### stored-user + +Credentials id used for authentication. The credentials must be stored in the secret store. + +Type: string \ +Example: `alice` + ### default-key Identifer of the key used by default for encryption. There must be a configured key with this name. diff -r 1091cb3c6dad -r 165811ea12ab docs/src/sync-configuration.md --- a/docs/src/sync-configuration.md Sun Dec 15 10:44:11 2019 +0100 +++ b/docs/src/sync-configuration.md Sun Dec 15 12:11:16 2019 +0100 @@ -11,7 +11,7 @@ This element configures a sync-directory. A sync-directory must have a unique name, a (local) path, repository and a database. Required elements: ``, ``, ``, `` \ -Optional elements: ``, ``, ``, ``, ``, ``, ``, `` +Optional elements: ``, ``, ``, ``, ``, ``, ``, ``, ``, ``, ``, ``, ``, ``, `` ### name @@ -53,6 +53,14 @@ Default: / \ Example: `/myfiles` +### hashing + +Enables file hashing. The hash will be used for checking if files are modified and should be synchronized. + +Type: boolean \ +Default: false \ +Example: `true` + ### trash Path to the trash directory for this sync-directory. Files that should be deleted will be moved to this directory. The value must be an absolute path or relative to the sync-directory path. @@ -60,6 +68,14 @@ Type: string \ Example: `.trash` +### push-strategy + +Controls the strategy *push* uses for deciding which files should be pushed. Possible values are: `metadata` and `hash`. + +Type: pushstrategy enum \ +Default: metadata +Example: `hash` + ### max-retry This integer value controls how many attempts of downloading/uploading a file in case of an error are made. @@ -100,6 +116,54 @@ Default: 0 \ Example: `50` +### metadata + +Controls which file metadata should be synchronized. Possible values are: `mtime`, `mode`, `xattr` and `all`. If this element is not specified, no metadata will be synchronized. + +Type: list of metadata \ +Example: `mtime mode` + +### versioning + +Enables resource versioning for the commands *push* and *archive*. + +Possible attributes: `type`, `always` + +The attribute `type` sets the versioning method type. Possible values are `simple` and `deltav`. With *simple* versioning, resources are moved to a version history collection before the new content is uploaded. With *deltav*, the DeltaV methods *checkout* and *checkin* are used to store versions. The default value of the `type` attribute is `simple`. + +The boolean attribute `always` specifies if new versions should be always created. The default value is `false`. + +Optional elements: `` +Example: `` + +### history + +Specifies the history collection path for *simple* versioning. The path is interpreted relatively to the root of the sync directory. + +Type: string \ +Default: `/.dav-version-history` +Example: + + + /.backup/ + + +### symlink-intern + +Configures the handling of symlinks, which have a target inside the sync directory. Possible values are: `sync`, `follow` and `ignore`. + +Type: symlink enum \ +Default: follow \ +Example: `sync` + +## symlink-extern + +Configures the handling of symlinks, which have a target outside the sync directory. Possible values are: `follow` and `ignore`. Unlike internal symlinks, external symlinks cannot be synced. + +Type: symlink enum \ +Default: follow \ +Example: `ignore` + ### tagconfig Configures the local store for resource tags. If this element is specified, resource tags are stored locally. @@ -140,6 +204,48 @@ Default: no_conflict \ Example: `merge` +### splitconfig + +Parent element for all `` elements. + +### split + +Configures if and how files should be splitted into multiple parts on *push*. + +The blocksize element configures the size of each part. + +The elements filter and minsize specify, in which case the files should be splitted. + +Required elements: `` \ +Optional elements: ``, `` + +Example: + + + + + 10m + + \.vmdk$ + + 100m + + + +### blocksize + +Specifies the size of each file part. + +Type: size \ +Example: `100k` + +### minsize + +Specifies the minimal size a file must have for enabling file splitting. + +Type: size \ +Default: 0 \ +Example: `100m` ### filter