Commit graph

960 commits

Author SHA1 Message Date
Olivier Goffart
3793d725a7 avoid double free 2013-02-06 18:40:02 +01:00
Olivier Goffart
77d77ff056 Compile the header with a C++ compiler
template is a keyword in C++
2013-02-06 18:40:02 +01:00
Olivier Goffart
d88c58deae WIP: rename folders 2013-02-06 18:40:02 +01:00
Olivier Goffart
bdd331ee08 Allow to configure the timeout in the config 2013-02-06 18:38:46 +01:00
Olivier Goffart
53b1edd1dc httpbf: Make sure to use unsigned number as the id
Else, we can have filename like  foo-chunking--1234-4-0 and the double
dash make the serverside regexp fail
2013-01-29 16:23:55 +01:00
Olivier Goffart
e75f11b87a Use httpbf in owncloud 2013-01-29 16:23:28 +01:00
Klaas Freitag
e134c85ae7 Initial checkin of the http-big-file handling. 2013-01-28 21:17:23 +01:00
Klaas Freitag
52f33de902 Set version to 0.70.3 plus ChangeLog 2013-01-24 10:39:42 +01:00
Klaas Freitag
460947a3ac Set version to 0.70.2 for release 2013-01-23 14:05:58 +01:00
Klaas Freitag
96f9c09e35 Fix a crash for the case that csync_init fails. 2013-01-22 16:48:36 +01:00
Klaas Freitag
82a3e49d82 Bump version to 0.70.1 for oCC 1.2.0 beta2 2013-01-16 16:37:09 +01:00
Klaas Freitag
ccc9419a58 Reduce the sqlite_compile errors dramatically. 2013-01-16 16:27:59 +01:00
Klaas Freitag
0752aff55a Handle 405 as EPERM rather than EEXIST 2013-01-16 11:42:13 +01:00
Klaas Freitag
23fe05604b Added new error types for service unavail, quoto and file too big. 2013-01-13 21:39:54 +01:00
Olivier Goffart
3b4b500d4f leak fix 2013-01-10 11:32:42 +01:00
Olivier Goffart
de87ed2d31 Make it a error when the file cannot be created
Mark it a an error when the file cannot be created because the folder
cannot be created.

Should display errors on windows if the file is too long
2013-01-10 11:32:42 +01:00
Olivier Goffart
97e0e75ae2 Missing errno code on mingw 2013-01-10 11:32:42 +01:00
Olivier Goffart
6f1e70aae6 Always use the db even if the mtime change localy.
As long as the md5 is the same, use the db, even if the mtime change
localy.
2013-01-10 11:32:42 +01:00
Olivier Goffart
c8e274110a Don't abort in merge_tree if the file don't exist
Scenario:
We have  A/B/C/file.txt
mv A/B/{C,C2}
start sync, and before sync ends
mv A A2
then as sync start and we try to merge, since it is no longer possible
to stat A/B/ which has been updated as C was moved, then the database
would not be synced
then start sync again and A/B/C2/file.txt is seen as new, and is
duplicated

By saving the database anyhow we work around that problem
2013-01-10 11:32:41 +01:00
Olivier Goffart
5b8917672c Only do the correctId after both the remote and the local have been processed
It is important if there are operations such as delete, which operate on
the remote tree, and thet may also invalidate the id we got on the
localtree (for example, the parent directory of a removed file)
2013-01-10 11:32:27 +01:00
Olivier Goffart
b23d15eb11 csync_tree_walk: let the visitor change the instruction 2013-01-10 11:32:20 +01:00
Olivier Goffart
9998c7cde1 Do not fetch the id in _csync_sync_dir
But rather at then end
2013-01-10 11:28:01 +01:00
Olivier Goffart
0cf1061248 Reduce the number of stat when creating new directory.
Do not do a stat before, it is unlikely that it succeed, and if it does
indeed show there is a file with the same name, the following mkdir ill
fail properly

(The only difference will be that EEXIST will be returned instead of
ENOTDIR
2013-01-10 11:27:52 +01:00
Olivier Goffart
9261f66fd8 Do not fetch the id of new directory in _csync_new_dir
Delay the id update to after when we do all the directory. When we
create ne directory it is likely that there will be something inside.
2013-01-10 11:21:12 +01:00
Olivier Goffart
00ee9f4960 leak fix 2013-01-10 11:18:54 +01:00
Klaas Freitag
96eb138410 Make big file support working for win32. 2013-01-09 15:06:03 +01:00
Klaas Freitag
5e4c0acc6b Use wide char variable to remove directory. 2013-01-09 15:02:07 +01:00
Klaas Freitag
c2844b0545 Added csync_get_error_string function to provide backend errors. 2012-12-20 20:47:10 +01:00
Klaas Freitag
70e89720d5 Some code cleanups, removed not needed stuff. 2012-12-20 17:10:03 +01:00
Klaas Freitag
d6287fb5e3 fix win32 build, ifdefed non existing errnos. 2012-12-19 20:20:26 +01:00
Klaas Freitag
3343601179 Remove temp files if GET fails, fixes owncloud/mirall#194 2012-12-19 12:41:16 +01:00
Klaas Freitag
e5b95540e7 drop not longer needed case statement. 2012-12-19 12:31:56 +01:00
Klaas Freitag
fe048f69cd Set version to upcoming version 0.70.0 2012-12-18 13:50:56 +01:00
Klaas Freitag
bbf4e07579 Proper errno to csync error conversion, more errno fixes in oC module. 2012-12-17 17:22:24 +01:00
Klaas Freitag
ecf09c4077 Added error_string handling with modules 2012-12-14 16:49:03 +01:00
Klaas Freitag
e3ef10765b Avoid a compile warning. 2012-12-14 16:49:03 +01:00
Olivier Goffart
5bc95e1667 Fix memory leak 2012-12-14 11:19:14 +01:00
Olivier Goffart
c09461a9e4 After a move, we also need to refresh the id of the destination folders
Else, the id are not good, and if we move folders like this:
 mv folderA folderB
 csync
 mv folderB folderC
 csync
we want that the first sync refresh correctly the folderB id so that the
second sync do not re-create folderB

When working on the renamed path, we are on the remote tree, but the new
folder is only on the local tree.  hence the 'tree' passed to the helper
function is not the same.
2012-12-14 00:14:44 +01:00
Olivier Goffart
10965eaa98 Fix renaming if the other file already exist on the server.
In that case, we have a conflict.  Handle it the same ways as for new
files.
2012-12-12 14:20:48 +01:00
Olivier Goffart
4e8ff9ae05 Fix end of file.
csync_util.c:347:1: error: no newline at end of file [-Werror,-pedantic,-Wnewline-eof]
2012-12-12 14:20:48 +01:00
Klaas Freitag
654e87a9d5 Fix temp name creation: Place dot correctly for hidden files. 2012-12-12 14:18:30 +01:00
Markus Goetz
316fd7b036 Exclude: Tell which file we load 2012-12-11 17:28:37 +01:00
Markus Goetz
fded216fb6 Propagate: Fix file name pattern
Starting with dot on Windows is a bad idea
2012-12-11 17:26:46 +01:00
Daniel Molkentin
1507ca2eaf Split download state 2012-12-11 12:09:33 +01:00
Klaas Freitag
8ed89bca86 Hide temp files for download to local. 2012-12-11 11:35:38 +01:00
Klaas Freitag
1705a309b2 Merge remote-tracking branch 'ogoffart/dav' into dav 2012-12-10 21:16:05 +01:00
Klaas Freitag
faa1b83e9e Fixed rename function to use TCHAR. 2012-12-10 21:15:31 +01:00
Klaas Freitag
64683332c7 Remove wrong comment. 2012-12-10 20:49:08 +01:00
Markus Goetz
42b090ec0d Propagate: Change temp file name
.. to something already in the exclude list
2012-12-10 19:15:16 +01:00
Markus Goetz
885e073b8a Win32: Hide file while downloading 2012-12-10 19:15:16 +01:00
Olivier Goffart
bac1311486 Don't include "config.h" in the public header.
That file is not installed.  So it makes compiler error when trying to
include csync.h from an external project
2012-12-10 17:03:36 +01:00
Olivier Goffart
01d2586f1e Owncloud: Report the error in the progress callback 2012-12-10 16:51:13 +01:00
Olivier Goffart
8e3331ad1d Suppress a warning
The csync_set_module_property shows a warning if init is not finished
2012-12-10 16:15:26 +01:00
Olivier Goffart
7759eb4b6d Say which function it is in the error messages 2012-12-10 16:15:26 +01:00
Daniel Molkentin
131e52b370 Unbreak win32 2012-12-09 02:44:34 +03:00
Klaas Freitag
9b1dcb23f8 Avoid crash in iconv destroy. 2012-12-08 11:06:29 +01:00
Olivier Goffart
58aaf98369 Only request the id for REMOTE_REPLICA after mkdir 2012-12-08 11:06:29 +01:00
Olivier Goffart
410eadf2f5 print a warning when calling set_module_property at the wrong time 2012-12-08 11:06:28 +01:00
Daniel Molkentin
49d2fd685b iconv support
This allows for files on mac to automatically be converted to UNC
2012-12-07 13:03:01 +01:00
Olivier Goffart
5bdaf83c67 Don't remove trailing slash
There is no trailing slashes in the path
2012-12-06 16:42:22 +01:00
Olivier Goffart
0eb1855345 Revert "Only refresh the folder id for remote replica"
This reverts commit ce94beb068.

This broke because the tree are not merged yet.
If a file was added on the remote, it is not yet in the remote tree, and
still we need to query the ETag
2012-12-06 16:36:13 +01:00
Olivier Goffart
b989518af3 Only request file id for remote replica 2012-12-06 16:28:37 +01:00
Olivier Goffart
7b4e4f349e No need to query the id again after syncing the dir
If there was a change, then a file would be changed, and we would do that anyway,
If there was no change, it is a waste to do it
2012-12-06 14:59:26 +01:00
Daniel Molkentin
f461903a1a Reduce compiler warnings 2012-12-06 11:49:25 +01:00
Klaas Freitag
6d9bd79ccb Cleanup and fix == error. 2012-12-06 11:39:53 +01:00
Klaas Freitag
e997af227c Merge remote-tracking branch 'ogoffart/dav' into dav 2012-12-06 11:35:10 +01:00
Klaas Freitag
588df3124c Shorten log line a bit by removing the year part of the date. 2012-12-06 11:34:26 +01:00
Olivier Goffart
ce94beb068 Only refresh the folder id for remote replica
Also don't remove trailing slash, there is no trailing slashes in the
path
2012-12-05 18:18:45 +01:00
Olivier Goffart
c4dc285ff0 Move the errno codes to another header
We can't include csync_private.h from the modules
2012-12-05 14:43:37 +01:00
Klaas Freitag
41c4e05b93 Fix error reporting from sendfile method. 2012-12-05 14:19:22 +01:00
Klaas Freitag
79d5e19a65 Remove left over WIP code. 2012-12-05 12:38:57 +01:00
Klaas Freitag
aaa8fe6e34 Commented loggings as currently logging is broken. 2012-12-04 18:41:20 +01:00
Olivier Goffart
f18f58ace0 Add progress callback 2012-12-04 17:26:23 +01:00
Olivier Goffart
0f35b92d75 Add an API to be able to pass information to the vio module 2012-12-04 17:22:11 +01:00
Klaas Freitag
ca30b99cea More accurate setting of errno with custom values. 2012-12-04 17:03:00 +01:00
Klaas Freitag
0d4c824fbf Add sendfile method including a module capability. 2012-12-04 15:03:49 +01:00
Klaas Freitag
13f51c85ab Make definition of fhandle_t more visible. 2012-12-04 15:02:13 +01:00
Klaas Freitag
13354b6e8b Removed old log callback code. 2012-12-03 19:41:44 +01:00
Olivier Goffart
cab1324d18 Remove references to ocsync_log.conf 2012-12-03 17:56:47 +01:00
Olivier Goffart
04ebe966d2 Fix compilation after merge.
Log in owncloud module is temporarly disabled because it does not
compile as upstream added the context in the log.
2012-12-03 17:45:40 +01:00
Olivier Goffart
95edd6a9de Merge remote-tracking branch 'origin/master' into dav
Conflicts:
	config/ocsync_log.conf
	src/csync.c
	src/csync.h
	src/csync_config.c
	src/csync_log.h
	src/csync_private.h
	src/csync_statedb.c
	tests/csync_tests/check_csync_config.c
2012-12-03 17:32:08 +01:00
Klaas Freitag
9c1893fa6d Fix for #123: Move declaration to top of function to escape goto. 2012-11-29 13:38:28 +01:00
Klaas Freitag
01ba8d4a9b Wide char fixes for exclude, lock and statedb. 2012-11-27 15:39:06 +01:00
Klaas Freitag
24e137ca19 Detect loop in mkdir function to prevent looping in readonly Shared. 2012-11-21 14:53:54 +01:00
Klaas Freitag
7bce6696d4 Discover DST time error and correct. 2012-11-20 17:33:25 +01:00
Klaas Freitag
3265e2c6a2 Handle PUT fail correctly. 2012-11-16 12:31:09 +01:00
Klaas Freitag
a577bf8faa Add a version table to csyncs database with the current version no. 2012-11-14 17:24:13 +01:00
Klaas Freitag
094554366b Fix casting to signed data types. 2012-11-14 15:10:44 +01:00
Klaas Freitag
385b48da5c Commented database copy. Rather let it recreate. 2012-11-14 15:09:16 +01:00
Klaas Freitag
905e97f2ab Use _tclosedir rather than closedir. 2012-11-13 11:45:12 +01:00
Klaas Freitag
a0fcd35183 win32: Ported two other occurences of win32 api to wide char support. 2012-11-12 10:44:24 +01:00
Klaas Freitag
161d7c18ff Push version to next release 0.60.2 2012-11-09 17:15:46 +01:00
Klaas Freitag
eb640aae00 Fix parsing of GMT times and handle time difference more tolerant. 2012-11-08 14:52:14 +01:00
Klaas Freitag
bede1acbce Win32: Fix CreateFile call for directories. 2012-11-08 14:49:15 +01:00
Olivier Goffart
6e6e18c030 Exclude lists: Works with \r\n line terminator 2012-11-07 17:46:13 +01:00
Olivier Goffart
62897e6d37 Win: Load the exclude lists in the config 2012-11-07 17:46:13 +01:00
Olivier Goffart
f55f687a63 Win: Don't rely on the name of the program to be owncloud.exe
Loosely based on the logic in csync_vio_init
2012-11-07 17:46:13 +01:00
Olivier Goffart
a4db29c277 c_copy: return error code on windows if there is an error
This fixes a compiler warning about not returning a value
2012-11-07 17:46:13 +01:00
Markus Goetz
80d53ff4bd Enable compilation with static iniparser and sqlite 2012-11-07 17:46:13 +01:00
Olivier Goffart
be13ef120d Fix another crash if the md5 are not computed 2012-11-07 16:50:20 +01:00
Klaas Freitag
67373dcb0d commented work in progress treewalk stuff. 2012-11-07 12:33:39 +01:00
Olivier Goffart
1a093b0ae3 Fix crash if md5 is null
Also make sure to copy destpath, to avoid double free.
2012-11-06 14:05:52 +01:00
Olivier Goffart
7071a455c5 Use signed hash in SQL request
sqlite only handle signed integer,  in case of overflow, we numbers are
transformed to floating point, resulting in wierd errors.
2012-11-06 14:05:52 +01:00
Klaas Freitag
898d51f92d WIP: Try to catch a cleared remote path 2012-10-31 21:38:57 +01:00
Klaas Freitag
e183854b58 Added experimental function to check if a file is known locally. 2012-10-31 21:33:17 +01:00
Klaas Freitag
af11613fba Some cleanup of platform specific code. 2012-10-31 21:09:33 +01:00
Klaas Freitag
2fa07b1dd9 set pointer void to avoid warning on linux compile. 2012-10-31 21:08:40 +01:00
Klaas Freitag
abb3829197 Use win32 function GetFileTime to fix DTS problems on windows. 2012-10-31 20:56:24 +01:00
Klaas Freitag
4104737533 Hide the journal database under windows using win32 API. 2012-10-31 20:56:06 +01:00
Andreas Schneider
0a6d7435b5 cmake: Get rid of log4c. 2012-10-30 11:27:21 +01:00
Andreas Schneider
0179c2249d statedb: Log an error if we can't open the database. 2012-10-30 11:27:21 +01:00
Andreas Schneider
8a0b4319d3 csync: Add a new logging system. 2012-10-30 11:27:21 +01:00
Andreas Schneider
95b367dd23 csync: Add option to set and get log verbosity. 2012-10-30 11:27:20 +01:00
Andreas Schneider
890df87d00 csync: Add support for a log callback. 2012-10-30 11:27:20 +01:00
Klaas Freitag
8afe182e0c Fix merge: Initialise data before accessing them. 2012-10-28 11:31:25 +01:00
Klaas Freitag
2bb52ef6f9 Merge branch 'master' into dav - get cmocka tests and database move.
Conflicts:
	CMakeLists.txt
	cmake/Modules/FindCMocka.cmake
	src/csync.c
	src/csync_exclude.c
	src/csync_reconcile.c
	src/csync_statedb.c
	src/csync_update.c
	src/csync_util.c
	src/vio/csync_vio.c
	tests/CMakeLists.txt
	tests/csync_tests/check_csync_exclude.c
	tests/csync_tests/check_csync_statedb_load.c
	tests/csync_tests/check_csync_statedb_query.c
	tests/csync_tests/check_csync_update.c
	tests/std_tests/check_std_c_path.c
2012-10-27 19:27:14 +02:00
Andreas Schneider
805621540a csync: Move auth callback to a common struct. 2012-10-27 15:29:00 +02:00
Klaas Freitag
557b4bbe25 Use LIKE instead of GLOB to find files in dirs in database.
This fixes Github issue mirall#25
2012-10-27 12:03:39 +02:00
Klaas Freitag
0db9427377 Add name of rename target to treewalk data structure. 2012-10-26 20:01:25 +02:00
Klaas Freitag
8bdf0694ca Another rename issue to ocsync instead of csync. 2012-10-26 19:59:45 +02:00
Klaas Freitag
d82850f145 Fix more csync->ocsync renaming issues. 2012-10-26 16:11:34 +02:00
Andreas Schneider
14f03e0ebb exclude: Simplify the csync_excluded() loop.
Thanks to Klaas Freitag.
2012-10-22 15:32:28 +02:00
Andreas Schneider
51ce3bea37 exclude: Reduce memory allocations of csync_excluded(). 2012-10-22 15:13:02 +02:00
Andreas Schneider
9b11339a9e util: Remove obsolete csync_create_statedb_hash(). 2012-10-22 14:55:26 +02:00
Andreas Schneider
f92b8f1db7 exclude: Make sure we don't sync the csync_journal.db. 2012-10-22 14:55:26 +02:00
Andreas Schneider
76e6fbb72f csync: Move the statedb (journal) to the local directory. 2012-10-22 14:53:59 +02:00
Andreas Schneider
42421cb4cc exclude: Rework csync_excluded() to not leak memory on error. 2012-10-22 14:53:27 +02:00
Andreas Schneider
d507358c95 exclude: Fix build warning. 2012-10-22 14:39:03 +02:00
Klaas Freitag
01a25db3fb exclude: Fix checking the exclude pattern for subdirs.
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
2012-10-22 12:26:35 +02:00
Andreas Schneider
31382d909e vio: Fix a build warning. 2012-10-22 11:21:34 +02:00
Andreas Schneider
68abef8626 util: Improve statedb hashing function to avoid possible data loss.
The statedb hash function only hashes the remote side and not the local
path. So if a user changes to a new empty directory to sync it with the
remote counter part, csync will delete all files.

This will result in a new full sync for all sync setups, but we will not
loose any data.
2012-10-22 11:00:51 +02:00
Andreas Schneider
12d5d012f3 lock: Use a secure umask for mkstemp(). 2012-10-19 20:37:13 +02:00
Andreas Schneider
5844b203e6 file: Use a smaller buffer value for c_copy(). 2012-10-19 20:37:13 +02:00
Andreas Schneider
6dbdbf0997 dir: Don't leak resources on error in c_rmdirs().
Found by Coverity.
2012-10-19 20:37:13 +02:00
Andreas Schneider
6ae00fe3b2 csync: Don't leak memory on error in csync_create().
Found by Coverity.
2012-10-19 20:37:13 +02:00
Andreas Schneider
6023db367b update: Fix a memory leak in _csync_detect_update().
Found by Coverity.
2012-10-19 20:37:13 +02:00
Andreas Schneider
47f1560d87 update: Don't leak dh on error.
Found by Coverity.
2012-10-19 20:37:13 +02:00
Andreas Schneider
b4464bd92f statedb: Don't leak the file descriptior on error.
Found by Coverity.
2012-10-19 20:37:13 +02:00
Andreas Schneider
1d8378e307 statedb: Ensure we don't leak memory in csync_statedb_query().
Found by Coverity.
2012-10-19 20:37:13 +02:00
Andreas Schneider
b330df73a1 vio: Fix a possible resource leak in csync_vio_local_creat().
Found by Coverity.
2012-10-19 20:37:13 +02:00
Andreas Schneider
2e01dc8d88 vio: Fix a possible resource leak in csync_vio_local_open().
Found by Coverity.
2012-10-19 20:37:13 +02:00
Andreas Schneider
4010096cdf exclude: Rework _csync_exclude_add() to check for no memory.
Found by Coverity.
2012-10-19 20:37:13 +02:00
Andreas Schneider
ade066a6c1 lock: Ensure we don't call close() on negative numbers on error.
Found by Coverity.
2012-10-19 19:46:34 +02:00
Andreas Schneider
6456cc36a5 file: Ensure we don't call close() on negative numbers on error.
Found by Coverity.
2012-10-19 19:42:04 +02:00
Andreas Schneider
f124810059 lock: Make sure we have pid value in the correct range.
Found by Coverity.
2012-10-19 19:38:05 +02:00
Andreas Schneider
3f02bf7990 csync: Rework _csync_treewalk_visitor().
This fixes some possible null pointer defererences.

Found by Coverity.
2012-10-19 19:24:07 +02:00
Andreas Schneider
81a0dc8cb0 rbtree: Fix finding the node with a NIL child.
Found by Coverity.
2012-10-19 19:14:54 +02:00
Andreas Schneider
06cb39e1e1 propagate: Fix a possible null pointer deference.
Found by Coverity.
2012-10-19 19:07:15 +02:00
Benjamin Legrand
cb8a501241 Fix a typeo and rename REPLCIA to REPLICA.
BUG #8

Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
2012-10-19 15:59:51 +02:00
Klaas Freitag
aad8e5320a Some more memory cleanups after valgrinding. 2012-10-18 13:26:44 +02:00
Klaas Freitag
cc28d22c96 Removed overwhelming logging. 2012-10-18 13:26:44 +02:00
Klaas Freitag
9d126bc45a Set version to next tag 0.60.1 2012-10-16 15:48:13 +02:00
Klaas Freitag
5c780e99be Remove sqlite specific code here and use csync_statedb_get_below.
This also fixes an escaping problem with path names with
apostrophes, reported in bug genie #oc-1997.
2012-10-16 13:14:45 +02:00
Klaas Freitag
4682afc2bc Added function csync_statedb_get_below_path. 2012-10-16 13:14:04 +02:00
Klaas Freitag
687efaaaf6 Some more memory free - after valgrind analyze. 2012-10-16 11:52:50 +02:00
Klaas Freitag
7c20897036 Also reset read_from_db flag in context in error case. 2012-10-16 11:52:11 +02:00
Klaas Freitag
e89c6dc256 Free md5 memory when destroying. 2012-10-16 09:47:07 +02:00
Andreas Schneider
2ddccf6c16 propagate: Fix build on systems without atime support.
This fixes bug #6.
2012-10-15 21:27:17 +02:00
Klaas Freitag
48eec357d7 Push version to 0.60.0 - final release for owncloud client 1.1.0 2012-10-10 12:10:07 +02:00
Klaas Freitag
a9e544fd7d renamed config files and dirs to ocsync. 2012-10-05 14:38:33 +02:00
Klaas Freitag
b039b5642f Copy csync.conf from ~/.csync/ if existing. 2012-10-04 13:56:30 +02:00
Klaas Freitag
fbb88abe85 Clear memory and fix zero return type for _get_stat_by_hash 2012-10-04 13:03:42 +02:00
Klaas Freitag
2ec0b63f98 Migrate existing database from $HOME/.csync if non exists at config dir. 2012-10-04 13:02:38 +02:00
Klaas Freitag
207c8d9786 Set version to 0.50.11 - for ownCloud 1.1.0 beta3 2012-10-04 12:59:38 +02:00
Klaas Freitag
404073fe7f Rename csync to ocsync to not collide with upstream csync. 2012-10-01 12:39:05 +02:00
Daniel Molkentin
6c33462842 Remove redundant code block 2012-09-27 10:05:06 +02:00
Daniel Molkentin
4bae545c90 vio plugin loading: cut of filename regardless of length. 2012-09-27 10:05:01 +02:00
Klaas Freitag
2af0d6f1a4 Be careful with memory, some fixes for that. 2012-09-26 15:32:38 +02:00
Klaas Freitag
004f5ccce6 Fix state change for deleted or not longer existing directories. 2012-09-26 12:46:59 +02:00
Klaas Freitag
7b16fcf2a4 Avoid useless warnings. 2012-09-26 12:45:24 +02:00
Klaas Freitag
b976ac914d Also check the files basename against the exclude pattern. 2012-09-25 15:41:55 +03:00
Klaas Freitag
34249e9f64 Use destination path in case of file rename. 2012-09-24 15:57:32 +03:00
Klaas Freitag
2354b9c52f Fix detection of local file renames. 2012-09-24 15:56:42 +03:00
Klaas Freitag
77e79ea767 For rename, retrieve the new id and set in local tree. 2012-09-24 15:55:18 +03:00
Klaas Freitag
128926cac7 Check path for len exactly 1 when comparing on '.'. 2012-09-24 15:54:17 +03:00
Klaas Freitag
7a70a6fa69 Update version to 0.50.10 2012-09-20 17:57:58 +03:00
Klaas Freitag
44a6cf9bfc Remove wrong free. 2012-09-20 17:54:23 +03:00
Klaas Freitag
fc6cd714c7 win32: Fix random file name generation, init random generator once.
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
2012-09-04 12:19:12 +02:00
Klaas Freitag
50f698673c Update version number to 0.50.9 2012-08-30 18:45:36 +03:00
Klaas Freitag
08f7fbbd71 Fix printf argument for win32 platform. 2012-08-30 17:01:52 +03:00
Klaas Freitag
caa1945daa Added another check on file length. 2012-08-30 15:45:45 +03:00
Klaas Freitag
6fbc510aeb Free memory of id_list lists. 2012-08-30 13:05:24 +03:00
Klaas Freitag
ffc5e6f0cc Memory cleanups for id syncing, removed unused code. 2012-08-30 13:04:48 +03:00
Klaas Freitag
7600eb4a09 Memory cleanups for id syncing. 2012-08-30 13:04:14 +03:00
Klaas Freitag
d756c45c50 Free memory used by the id in csync_file_stat. 2012-08-30 13:01:21 +03:00
Klaas Freitag
99691059bf Removed all usage of openSSL. 2012-08-29 15:37:31 +03:00
Klaas Freitag
ae94ce7430 Check if the file id method exists in the vio plugin. 2012-08-29 13:34:21 +03:00
Klaas Freitag
3950b18dc7 Fix memory leaks in new id sync code. 2012-08-28 17:53:26 +03:00
Klaas Freitag
4750380565 Fix flag setting detection of the fields. 2012-08-28 17:52:28 +03:00
Klaas Freitag
c491e8bb68 Check for valid result count after query. 2012-08-28 14:09:54 +03:00
Klaas Freitag
78c43e542c Handle zero result list correctly. 2012-08-28 14:09:29 +03:00
Klaas Freitag
3b369c8b03 More robust query result access if columns are missing. 2012-08-26 20:07:36 +02:00
Klaas Freitag
ef64756334 Merge branch 'md5' of ssh://milliways.cryptomilk.org/users/freitag/csync into fastsync
Conflicts:
	modules/csync_owncloud.c
	src/csync_private.h
	src/csync_propagate.c
	src/csync_reconcile.c
	src/csync_statedb.c
2012-08-23 18:04:32 +03:00
Klaas Freitag
2420eeffd1 Read remote file tree from db if id has not changed. 2012-08-23 17:55:39 +03:00
Klaas Freitag
5b5fe29eb5 Make sqlite_query function able to deal with multiple row queries. 2012-08-23 17:54:36 +03:00
Klaas Freitag
cf8f31914a Added a file type column to the database. 2012-08-23 17:53:53 +03:00
Klaas Freitag
1dc50eea5d Decide if the file tree is read from db or stat'ed 2012-08-23 17:50:30 +03:00
Klaas Freitag
1e41c469f0 Add the dbtree function module. 2012-08-23 17:49:47 +03:00
Klaas Freitag
e349df9f4c Added flag to indicate to read the remote filetree from db. 2012-08-23 17:49:18 +03:00
Klaas Freitag
8876658810 Added functions to read the file tree from database. 2012-08-23 17:48:24 +03:00
Klaas Freitag
e9cf546818 Free the memory for the MD5 string. 2012-08-23 17:44:07 +03:00
Klaas Freitag
97a7e46595 Set to INSTRUCTION_UPDATED only for NONE instructions. 2012-08-23 17:44:07 +03:00
Klaas Freitag
7f7c2b977c Avoid a null pointer dereference. 2012-08-23 17:44:07 +03:00
Klaas Freitag
337c56da66 Fix: If no database entry exists, the status is set to NEW. 2012-08-23 17:44:07 +03:00
Klaas Freitag
a0353249f1 Remove a database column comment that just blows the log file. 2012-08-23 17:44:07 +03:00
Klaas Freitag
868a07c322 Update the md5 also if the instruction is not UPDATE. 2012-08-23 17:44:07 +03:00
Klaas Freitag
f4c9ced446 Handle ID change propagation to the top directory. 2012-08-23 17:43:51 +03:00
Klaas Freitag
1c6da9c0bb Update the md5 sum of files in merge. 2012-08-23 17:43:51 +03:00
Klaas Freitag
e3638ced2c Add csync_get_file_id function for modules. 2012-08-23 17:43:51 +03:00
Klaas Freitag
62b49e8bcc Query ids from database for local files, remove bogus code. 2012-08-23 17:43:51 +03:00
Klaas Freitag
9bd9949d68 Fixed merge conflict, only one md5 needed. 2012-08-23 17:43:21 +03:00
Klaas Freitag
ede710843b Added csync_vio_file_id function and removed unused previous code. 2012-08-23 17:42:51 +03:00
Klaas Freitag
20f4ee16cc removed unneeded initialisations. 2012-08-23 17:42:33 +03:00
Klaas Freitag
3fb3f78446 Add a visible log entry at program start, easier to read log output. 2012-08-23 17:41:53 +03:00
Klaas Freitag
d8967a2bd1 try to propagate EVAL status up by detecting changes in underlying
directories. That does not work as the reconciler runs through the
directoires in the wrong order, ie. the outermost first.
2012-08-23 17:41:53 +03:00
Klaas Freitag
c2e2f8de00 more md5 calculations 2012-08-23 17:41:53 +03:00
Klaas Freitag
f2d603108a more logging, ids added. 2012-08-23 17:41:53 +03:00
Klaas Freitag
ae1b8a5682 Query new id for local repository because of utimes changes. 2012-08-23 17:41:53 +03:00
Klaas Freitag
0618eb956d Merge conflicts solved. 2012-08-23 17:40:36 +03:00
Klaas Freitag
ae5394ad75 UniqID based syncing, first WIP state. 2012-08-23 17:38:44 +03:00
Klaas Freitag
d2ba37a419 Resolved merge conflict. 2012-08-23 17:38:25 +03:00
Klaas Freitag
8e401e662f MD5 Support WIP 2012-08-23 17:34:19 +03:00
Klaas Freitag
943e960bc0 Fixed merge conflict. 2012-08-23 17:34:02 +03:00
Klaas Freitag
2a40106e70 Fixed merge conflict. 2012-08-23 17:33:41 +03:00
Klaas Freitag
faf1970e3a Avoid a null pointer dereference. 2012-08-20 19:11:46 +03:00
Klaas Freitag
ec63ab4e16 Fix: If no database entry exists, the status is set to NEW. 2012-08-20 19:11:18 +03:00
Klaas Freitag
4a6b0e7241 Remove a database column comment that just blows the log file. 2012-08-20 19:10:29 +03:00
Klaas Freitag
bc1e59a048 Update the md5 also if the instruction is not UPDATE. 2012-08-20 19:10:03 +03:00
Klaas Freitag
d9267f7928 Handle ID change propagation to the top directory. 2012-08-17 16:48:56 +03:00
Klaas Freitag
972412e436 Update the md5 sum of files in merge. 2012-08-17 16:48:15 +03:00
Klaas Freitag
38cf0f2704 Add csync_get_file_id function for modules. 2012-08-17 16:46:50 +03:00
Klaas Freitag
0443764308 Query ids from database for local files, remove bogus code. 2012-08-17 16:46:07 +03:00
Klaas Freitag
7dcb9ffdeb Added id lists to context type and removed change counter. 2012-08-17 16:45:12 +03:00
Klaas Freitag
fcba1cefce Added csync_vio_file_id function and removed unused previous code. 2012-08-17 16:44:38 +03:00
Klaas Freitag
bac0002eeb Add a visible log entry at program start, easier to read log output. 2012-08-17 16:42:23 +03:00
Klaas Freitag
0147063090 try to propagate EVAL status up by detecting changes in underlying
directories. That does not work as the reconciler runs through the
directoires in the wrong order, ie. the outermost first.
2012-08-15 16:32:10 +03:00
Klaas Freitag
19f52313a8 more md5 calculations 2012-08-15 12:46:36 +03:00
Klaas Freitag
142ef140f0 more logging, ids added. 2012-08-14 16:32:23 +03:00
Klaas Freitag
eb019905e4 Query new id for local repository because of utimes changes. 2012-08-14 16:31:52 +03:00
Klaas Freitag
b37096354f Fix url to calculate hash 2012-08-14 16:31:01 +03:00
Klaas Freitag
cf24513879 Merge branch 'dav' of ssh://milliways.cryptomilk.org/users/freitag/csync into md5
Conflicts:
	modules/csync_owncloud.c
	src/csync_private.h
	src/csync_reconcile.c
	src/vio/csync_vio.c
2012-08-13 15:24:15 +03:00
Klaas Freitag
2bc171e520 Set version to 0.50.8 2012-08-09 17:07:44 +03:00
Klaas Freitag
76b09b3c14 Fix rename: Exclude directories and set mtimes accordingly. 2012-08-09 16:59:08 +03:00
Klaas Freitag
452babe593 Improved error report on proxy- and connection problems. 2012-08-09 15:12:22 +03:00
Klaas Freitag
cbb09aeb0a Sync based on uniqIDs WIP 2012-08-06 09:22:21 +02:00
Klaas Freitag
3ae996c688 Fixed rename support for Win32. Need to use unit64 instead of ino_t. 2012-08-03 18:48:44 +03:00
Klaas Freitag
253605758e Use remote rename if local rename is detected. 2012-08-02 16:58:54 +03:00
Klaas Freitag
5b38e2cb5a Improved logging in error case (minor fix). 2012-07-31 17:58:49 +03:00
Klaas Freitag
abef7eb3d2 UniqID based syncing, first WIP state. 2012-07-31 11:40:46 +03:00
Thomas Mueller
d4e808d45a use custom FindOpenSSL only for cross compilation in any other cases it is used from the local system 2012-07-30 13:27:59 +03:00