Sun, 17 Dec 2023 15:33:50 +0100
fix faulty string to int conversion utilities
Probably it was expected that errno is set to EINVAL when illegal characters are encountered. But this is not standard and does not happen on every system, allowing illegal strings to be parsed as valid integers.
% DAV(1) Version 1.3 | DavUtils User Manuals % Olaf Wintermann % December 15, 2019 # NAME **dav** - command line WebDAV client # SYNOPSIS **dav** *command* [*options*] *arguments*... # DESCRIPTION TODO # COMMANDS list [**-altdepcR**] [**-u** *date*] *url* : Lists the files at *url*. get [**-pcRK**] [**-o** *file*] [**-u** *date*] [**-V** *version*] *url* : Downloads a resource from *url*. put [**-pcR**] [**-k** *key*] [**-L** *lock*] *url* *file* : Uploads a resource to *url*. edit [**-pc**] [**-k** *key*] [**-V** *version*] [**-L** *lock*] *url* : Downloads or creates a resource and opens the editor. The editor can be specified via the EDITOR environment variable. Default editor is vi. mkdir [**-pc**] [**-k** *key*] [**-L** *lock*] *url* : Creates a new collection at *url*. remove [**-pc**] [**-L** *lock*] *url* : Deletes a resource or collection at *url* copy [**-pcO**] [**-L** *lock*] *srcurl* *desturl* : Copies a resource or collection from *srcurl* to *desturl*. move [**-pcO**] [**-L** *lock*] *srcurl* *desturl* : Moves a resource or collection from *srcurl* to *desturl*. rename [**-pcO**] [**-L** *lock*] *srcurl* *name* : Changes the name of a resource or collection at *srcurl* to *name*. export [**-pc**] [**-o** *file*] [**-u** *date*] *url* : Exports a resource or collection to a **tar(5)** archive. By default the data is written to *stdout*, but you may specify a *file* with the **-o** option. import [**-pc**] [**-k** *key*] [**-L** *lock*] *url* *file* : Uploads and extracts the contents of the **tar(5)** archive *file* to *url*. get-property [**-pcx**] [**-n** *uri*] *url* *property* : Gets a specific resource property. Every WebDAV property has a name and an XML namespace. A namespace can be specified with the **-n** option or with a prefixed name. The prefix and property name are separated by a colon *:* as usual. If the **-x** option is specified, a valid XML document containing the value is printed on *stdout*. If the property contains XML data and the **-x** option is not specified, the value is printed on *stderr* in an XML-like format. set-property [**-pcx**] [**-L** *lock*] [**-n** *uri*] *url* *property* [*value*] : Sets a resource property to the specified value. See **get-property** for details. If no *value* is specified, it is read from *stdin*. remove-property [**-pc**] [**-n** *uri*] *url* *property* : Removes a resource property. lock [**-pc**] [**-T** *timeout*] *url* : Creates a lock on the resource at *url*. The lock is an exclusive write lock with infinite depth. If the resource is sucessfully locked, a lock token for this resource is printed to *stdout*. This lock token should be saved to unlock the resource eventually. unlock [**-pc**] [**-L** *lock*] *url* : Unlocks the resource at *url* with a lock token. If *lock* is not specified, the token is read from *stdin*. info [**-pc**] *url* : Prints some information and lists al properties for the resource at *url*. date [*url*] : Gets the time from the server providing the resource denoted by *url*. If *url* is not specified, this command prints the local time. This command is useful, if the server clock and the local clock are not in sync. versioncontrol [**-pc**] *url* : Puts the resource, specified by url, under version control. This is required in order to use other versioning commands with this resource. list-versions [**-pc**] *url* : Lists all versions of a version-controlled resource. checkout [**-pc**] *url* : Changes the state of a resource to checked-out to allow modifications to the content and properties. checkin [**-pc**] *url* : Changes the state of a resource to checked-in. This will create a new version of the resource. In the checked-in state the resource cannot be modified. uncheckout [**-pc**] *url* : Cancels all modification of the resource and sets the state to checked-in without creating a new version. # CONFIGURATION COMMANDS add-repository : This command runs an interactive assistant that creates a repository configuration. remove-repository *name* : Removes the repository with the specified *name* from the configuration. list-repositories : Lists all currently configured repositories. check-config : Validates the **$HOME/.dav/config.xml** configuration file. repository-url [**-p**] *repository* : Prints the repository url. add-user : Adds a user to the secret store. remove-user : Removes a user from the secret store. edit-user : Interactive command for modifying users stored in the secret store. list-users : Lists all users stored in the secret store. # GENERAL OPTIONS The following options can be used with all commands. -i : Disable cert verification. -N : Disable authentication prompt. -v : Verbose output. # COMMAND OPTIONS -a : Show all files. -c : Enable full encryption. -d : Order by last modified date. -e : Show extended flags. -K : Keep already present files. -k *key* : Key to use for encryption. -l : Print resources in long list format. -L *lock* : Specificy lock token. -n *uri* : Specify namespace *uri*. There are two namespaces configured by default. 1. *D* for the *DAV:* namespace 2. *idav* for the *http://davutils.org/* namespace -o *file* : Write output to *file*. Use '-' for stdout. -O : Override resources. -p : Don't encrypt or decrypt files. -R : Recursively do the operation for all children. -t : Print content type. -T *sec* : Timeout in seconds. -u *date* : Get resources which are modified since the specified *date*. -V *version* : downloads a specific version of the resource. Available versions can be listed with the list-versions command -x : XML property content. # SEE ALSO `dav-sync` (1). DavUtils full documentation: <https://davutils.sourceforge.io/>.