Commit graph

960 commits

Author SHA1 Message Date
Klaas Freitag
7b7ce3a43c Remove versions table before new creation. 2013-03-22 11:04:04 +01:00
Klaas Freitag
3ce614039a Added c_compare_file function and test - WIP. 2013-03-22 10:23:17 +01:00
Klaas Freitag
19f07f9aea Handle non statable files correctly, read missing info from db. 2013-03-20 21:56:09 +01:00
Klaas Freitag
945be9438c Avoid variable name new to not confuse syntax highlighter. 2013-03-20 21:55:34 +01:00
Daniel Molkentin
abe53a8669 Do not define NDEBUG manually 2013-03-19 17:50:43 +01:00
Klaas Freitag
b82c156c7e Bump version to 0.70.5 2013-03-19 16:23:10 +01:00
Klaas Freitag
d117593fd1 Fix a const char warning. 2013-03-19 16:23:05 +01:00
Klaas Freitag
5a8d90cc25 Fix path handling in update routine. 2013-03-19 16:22:11 +01:00
Klaas Freitag
db70a3b2ae Skip files which are not statable and ignore links and such. 2013-03-19 14:20:38 +01:00
Klaas Freitag
e3a4ec453c Handle non statable files gracefully. 2013-03-19 14:20:03 +01:00
Klaas Freitag
f88e9baf15 Handle renames in read only shares correctly. 2013-03-19 14:18:34 +01:00
Andreas Schneider
df2a04b4ab misc: Include stdio.h for snprintf. 2013-03-19 14:18:12 +01:00
Andreas Schneider
061fa6cc1b misc: Correctly handle getenv().
The returned string of getenv() has an unknown size. You need to store
the result always in a char array with a certain size to make sure we
don't feed tainted data to the next function call.
2013-03-19 14:17:44 +01:00
Klaas Freitag
13c44ad25c Skip files which are not statable and ignore links and such. 2013-03-19 14:02:12 +01:00
Klaas Freitag
d943b2880a Handle non statable files gracefully. 2013-03-19 11:48:46 +01:00
Klaas Freitag
d865905743 Use proper HBF result code. 2013-03-14 13:42:02 +01:00
Klaas Freitag
7630ab5807 Moved variable declaration. 2013-03-14 13:41:27 +01:00
Klaas Freitag
c263532ba3 Merge remote-tracking branch 'ogoffart/davbf' into dav 2013-03-14 13:36:55 +01:00
Klaas Freitag
38946ed025 More detailed error handling if one chunk fails. 2013-03-14 13:15:45 +01:00
Klaas Freitag
0ab1a4aeeb Make chunk default size 10 MB 2013-03-14 13:15:21 +01:00
Klaas Freitag
dd74b12b48 Merge remote-tracking branch 'ogoffart/davbf' into dav 2013-03-13 17:13:42 +01:00
Olivier Goffart
2205c9a339 Resume chunked upload if conneciton is lost 2013-03-12 11:42:17 +01:00
Olivier Goffart
b4ec9f887c Do not fetch folder id after propagation.
Delay that for the next sync.

(cherry picked from commit 1eb534dd53)
2013-03-11 20:38:17 +01:00
Olivier Goffart
b99677f985 Only mark a folder as modified if files within it are modified. 2013-03-11 20:38:17 +01:00
Olivier Goffart
6a5ad6e81e Revert "Do not fetch folder id after propagation."
This reverts commit 1eb534dd53.

Because folder re-appears in some cases
(IL issue #143)
2013-03-08 17:47:39 +01:00
Olivier Goffart
e05b44b06d Fix blacklist with renamed files
When renaming blacklisted files, we still need to find the other node to
mark the error
2013-03-07 11:07:38 +01:00
Klaas Freitag
47b1e64059 Handle renames in read only shares correctly. 2013-03-06 16:00:28 +01:00
Olivier Goffart
1eb534dd53 Do not fetch folder id after propagation.
Delay that for the next sync.
2013-03-05 20:33:18 +01:00
Andreas Schneider
8d43a743a1 misc: Include stdio.h for snprintf. 2013-03-05 10:49:08 +01:00
Andreas Schneider
3041e73b0a misc: Correctly handle getenv().
The returned string of getenv() has an unknown size. You need to store
the result always in a char array with a certain size to make sure we
don't feed tainted data to the next function call.
2013-03-05 10:43:28 +01:00
Olivier Goffart
d6a6fb0d67 Keep the tmp file and resume from it 2013-03-02 15:02:27 +01:00
Olivier Goffart
53ad4a910f Progress database:
Remember about errors, and don't retry if there is more than 3 errors

Conflicts:
	src/csync_propagate.c
2013-03-02 15:01:40 +01:00
Olivier Goffart
0906312c02 Merge remote-tracking branch 'freitag/dav' into davbf 2013-03-02 13:43:59 +01:00
Olivier Goffart
259b6050bf Progress database:
Remember about errors, and don't retry if there is more than 3 errors
2013-03-01 12:31:20 +01:00
Olivier Goffart
355a807775 Fix removing of folder when the folder is locked on windows.
When the folder is locked on windows, rmdir fails and the folmder is not
removed.  But on the next sync, one should try to remove that folder again, and
not upload it to the server as we did before.

There was two problems:

1- The removed folder is still in the DB, so when csync_update read from
DB, for the remote, it still finds it.  Fix that by storing an empty MD5
for directories that should have been deleted.

2- The folder is likely to be modified since its contents are gone.
Which means next sync will try to sync it back to the server.
Fix that by refreshing the mtime in the tree
2013-02-25 11:32:32 +01:00
Klaas Freitag
b216b9f546 Push version to 0.70.4 2013-02-20 17:39:16 +01:00
Klaas Freitag
3d4b426137 Removed some useless logging. 2013-02-19 09:40:14 +01:00
Olivier Goffart
ca34c4fd5f Fix removing of folder when the folder is locked on windows.
When the folder is locked on windows, rmdir fails and the folmder is not
removed.  But on the next sync, one should try to remove that folder again, and
not upload it to the server as we did before.

There was two problems:

1- The removed folder is still in the DB, so when csync_update read from
DB, for the remote, it still finds it.  Fix that by storing an empty MD5
for directories that should have been deleted.

2- The folder is likely to be modified since its contents are gone.
Which means next sync will try to sync it back to the server.
Fix that by refreshing the mtime in the tree
2013-02-13 19:20:26 +01:00
Olivier Goffart
b6a37064e9 Allow to configure the timeout in the config 2013-02-13 18:25:28 +01:00
Klaas Freitag
7d1d880a9b Return a proper error code in case the file is locked on win32. 2013-02-13 12:38:50 +02:00
Olivier Goffart
b028c64325 In case of error dirring a rename, mark the source as updated
That way, the file will be saved in the DB again, and the next try, it
will retry to rename
2013-02-12 15:11:15 +01:00
Olivier Goffart
8646246e75 Also report the error for the other node in case of error 2013-02-08 21:51:03 +01:00
Klaas Freitag
a79c380707 Remove strange _tcslen define and fixed some potential leaks. 2013-02-07 14:45:12 +02:00
Olivier Goffart
2615205adc Fix renaming folder when a file was modified by another client 2013-02-06 18:40:03 +01:00
Olivier Goffart
170e5389b3 Do not issue a rename when the file was modified localy 2013-02-06 18:40:03 +01:00
Olivier Goffart
71caa3356c Automatically creates the destination folder if it does not exist 2013-02-06 18:40:02 +01:00
Olivier Goffart
0cf770017d Do not abort when move fail 2013-02-06 18:40:02 +01:00
Olivier Goffart
77a25eafbb remove wrong comments 2013-02-06 18:40:02 +01:00
Olivier Goffart
fe756799d2 Make it work when renaming a directory and a subdirectory at the same
time
2013-02-06 18:40:02 +01:00
Olivier Goffart
0c874f0c3c fix some issues while moving. Now it works in simple cases 2013-02-06 18:40:02 +01:00
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