adds support for xml properties in set-property command

pushing tags should work now

adds tag conflict detection for dav-sync push

adds more tag config options

adds dav-sync config for autodetecting tag changes

adds technical foundation to just push tag updates

fixes misuse of vaarg on all platforms

updates copyright date

adds support for macos file tags

merge

adds xattr lib and tag support

fixes bsd config

davql: allow ANYWHERE keyword in SELECT statements

davql SET statements are now fully implemented

implements parser for Assignments (previously called SetExpressions) + improves davql debugger regarding DavQLField

davql debugger now reacts on repetitive calls of 'f' and 'o' commands

adds primitive progress indicator

moves auth prompt functionality to libidav

fixes infinite loop when trying to overwrite a collection with a regular file

fixes a segfault when full encryption is requested during a put without specifying the key

fixes some warnings

fixes wrong output path in dav get

ports openssl code to commoncrypto (macos)

davqlexec handles xml properties now (not really, but it doesn't destroy everything)

adds config option to disable certain commands for specific syncdirs and fixes authmethod config parser

fixes missing string terminator when printing simplified xml (dav get-property)

Added tag v1.1.1 for changeset 7954fdacdb5c

removes openssl dependencies for base64

fixes infinite loop when trying to overwrite a collection with a regular file v1.1

fixes a segfault when full encryption is requested during a put without specifying the key v1.1

enable va_list fix only on mingw (this is the real release, as usual) v1.1 v1.1.1

dav 1.1.1 release v1.1

fixes wrong use of va_list v1.1

dav get-property supports xml property output

replaces RAND_pseudo_bytes with RAND_bytes

some small fixes in tar.c

updates ucx to version 1.0

adds tar import/export

refactores cmd_get

dav prints command usage info if argument count is wrong

adds initial support for xml properties in libidav

adds dav get option to keep existing files

adds error message to dav, when an invalid date format is specified for the -u option

fixes tags

this is the real v1.1.0 release v1.1 v1.1.0

Added tag v1.0.1 for changeset bebe0b436c84

Added tag v1.1.0 for changeset dd2df44bc58b

dav 1.1.0 release v1.1

adds changelog file

fixes makefiles

adds namespace config element to XSD + fixes error message for duplicate namespace prefixes

adds documentation for new features

disables automatic creation of .dav directory in dav

dav-sync bugfix: files that are not in the db but on the server should not be pushed

adds namespace config element

adds dav-sync lock timeout config element

adds lock timeout

updates ucx version (most importantly this adds the new sstrstr implementation)

fixes possible UAF for locktocken paths, if file could not be opened

dav 1.0.1 update v1.0 v1.0.1

fixes wrong example in configuration.md v1.0

fixes syntax error in configuration.md v1.0

adds option to dav get for downloading only the directory structure

adds test for crypto streams

fixes wrong example in configuration.md

fixes syntax error in configuration.md

adds tests for crypto util functions

adds dav remove-property command

fixes crash when dav-sync push can't delete a resource on the server v1.0

adds SIGINT handler to dav-sync

bug fix: file size > 2gb not loaded correctly from database v1.0

bug fix: file size > 2gb not loaded correctly from database

adds dav-sync archive command

dav get-property shouldn't send an allprop propfind request

adds option to sort dav list by lastmodified date

dav-sync writes the locktoken to a file now

adds TLSv1.3 config

fixes dav startup without .dav dir

Added tag v1.0.0 for changeset 02d3e4b1245f

fixes wrong int type that results in a crash on some platforms

fixes memory leak in davqlparser

adds clean handling in case the stack of dav_exec_expr() runs out of memory

fixes local hiding of result variable with uninitialized data in dav_statement_execv

fixes memory leaks detected by cppcheck (or annotates them at least)

adds cppcheck make target

fixes missing default-key in example config

adds some small fixes for 1.0 release v1.0.0

removes debug compiler option

adds dav-sync introduction and sync.xml documentation

more minor improvements to the documentation

some more minor doc improvements

fixes dav_resource_new_full

refines copy.md

refines commands.md

adds more documentation details the three check commands

adds more details to add-directory.md

adds more details to add-directory.md

dav-sync command documentation complete

more documentation

fixes unnecessary mkcol in dav-sync

fixes dav put output

fixes dav list -R output

fixes crash when using invalid namespace prefix

adds resource name validation

some mingw fixes

more documentation

adds documentation for most dav commands

fixes error detection loop in dav lock/unlock/get-property/set-property

token parser checks if token of class DAVQL_TOKEN_NUMBER consists of digits only

adds bsd config

fixes build with ancient openssl

fixes build with openssl 1.1

fixes make install

adds auth prompt to dav get-property, set-property, lock, unlock and info

fixes conflict detection in push command

implements check-repositories command for dav-sync

updates UCX to version 0.11

implements xmlErrorFunc for dav sync + adds line numbers to error reporting in both config checkers

There has never been deliberately fucked up error handling for missing sync.xml.

improves config error reporting and adds check (check-config) command + dav-sync no longer aborts on missing sync.xml

adds first libidav tests

fixes false positive error when creating a sync db

implemented string functionality for some davql operators

refactored load_db function

adds XSD for dav config XML and removes comma as authmethod delimiter

merge sync config parser changes

adds XSD for dav-sync config

changed max-retry meaning and filter configuration in sync.xml

fixed SyncDatabase initialization

fixed install target and a missing return statement in libidav

improved dav put output

added README, INSTALL and LICENSE files

added install target

added support for error codes 407,413,414 and 511

fixed crash when encrypted streams are empty

copy/move with lock tokens works now

fixed dav get with -u option

added support for compiling with gcc on Solaris

improved dav-sync error handling on startup

disabled locking in dav-sync by default

fixed lazy propfind parser

fixed memory leaks in lock and unlock commands

fixed dav_context_get_key

removed password keys

fixed locking in dav-sync push

added support for paths with environment variables in sync.xml

improved error handling in libidav

added more cleanup code

fixed some bugs in dav_create() and dav-sync push

fixed some memory leaks in dav-sync pull

using locks in dav-sync

added conflict detection to dav-sync push

added resolve-conflicts and delete-conflicts to help text and fixed crash with unknown cmd options

automatically remove deleted conflict files from the db

added resolve-conflicts and delete-conflicts commands

dav-sync push ignores conflict files

dav-sync add-directory shows list of repositories

fixed version output

added options for extended list flags and changed version output

added noinput option to dav

dav list indicates locks

added lock support to some dav commands

added lock and unlock commands to dav

added API for webdav locking

fixed hash verification and head requests

changed libidav property namespace and version number

fixed some warnings and wrong usage of curl_easy_getinfo

added trash-info and empty-trash commands

fixed add-directory command

fixed dav-sync crash when sync.xml is missing

auth input for dav get, put, mkdir and remove commands

added add-directory command to dav-sync

enabled cert verification

added list-repositories and list-directories commands

added cleanup code in cmd_add_repository

fixed fix

fixed add-repository function name

added add-repository command to dav

version++

dav-sync prints a small report after successful sync

more specific error messages in dav-sync

dav-sync can create and delete empty directories now

fixed Solaris 11 build

added version info

added missing repo authmethods initialization

improved copy/move

updated copyright notice

fixed FreeBSD build

fixed Solaris build

added override option for copy/move

implemented webdav copy and move method

fixed large file support

enable sharepoint put fix

using content-length header in dav put

better and better and better iso8601 parser

improved util_capture_header when deactivating the capturing

merge

updated ucx and used new sstrlower in util_header_callback

improved util_header_callback by using sstr_t

cleanup curl header options in do_propfind_request

simplified do_propfind_request

added depth header workaround for Microsoft IIS (tested with sharepoint)

more updates to ucx

use ucx_map_clear in dav_propfind

updated UcxMap implementation

fixed incorrect response buffer reset in manual redirection handling in do_propfind_request

fixed zero-length format string in ls_size_str

fixed href comparison in parse_response_tag

reimplemented redirects for propfind requests

using Depth: 0 for non collection resources

don't allow signs for date strings (always expect full years)

added parser for iso8601 dates

definition: lastmodified and creationdate shall be zero on parse error

added fallback for util_parse_lastmodified, because some servers incorrectly use ISO-8601 dates for lastmodified - TODO: implement the ISO-8601 parsing

changed name of a local variable to avoid a later name collision

fixed href bug

fixed some cases of incompatible types in crypto functions

added possibility to configure authentication methods via coma separated list in config.xml

implemented hidden password input for windows by using conio

fixed windows build

fixed some memory leaks, content verification and dav info

added checksums for encrypted resources

implemented password key support for Solaris 10

fixed many davql exec memory leaks

added password based keys and fixed crash when keys are missing

hidden password input

improved dav-sync data-loss prevention

dav-sync detects broken uploads

fixed get command and davql exec

startup doesn't override broken config.xml anymore

fixed href comparison bug

fixed order by

implemented davql order by

-a option wasn't working correctly in recursive mode

fixed horrible bugs, davql hopefully just works now (without order by yet)

empty field results will no longer be added

replaced old davql (still buggy)

implemented execution of field list expressions

implemented some davql integer operations

secured ucx_list_append calls against OOM

(0) -240 +240 tip

mercurial