Π“Ρ€Π°Ρ„ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ²

427 ΠšΠΎΠΌΠΌΠΈΡ‚ΠΎΠ²

Автор SHA1 Π‘ΠΎΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅ Π”Π°Ρ‚Π°
Klaas Freitag 2cce8065ab CMocka Testing: Install the cmocka library 2015-07-08 18:13:39 +02:00
Klaas Freitag 8183c37dfe long win pathes: Some minor refinements and documentations 2015-07-08 18:13:39 +02:00
Klaas Freitag f98af43d31 Add cross platform definition for chdir and getcwd. 2015-07-08 18:13:39 +02:00
Klaas Freitag b9b5e1cf33 Long win pathes: Make makeLongWinPath function return the num of alloc bytes.
This enables the calling function to free these accordingly. That is needed
because the makeLongWinPath for efficiency reasons does not always realloc
the original string.
2015-07-08 18:13:39 +02:00
Klaas Freitag 2b391396c6 vio local: Use win32 native functions to traverse the file tree.
Native functions to replace the not native readdir and opendir functions.
This works with long filenames now.
2015-07-08 18:13:39 +02:00
Klaas Freitag 5caff8cc93 Add a FIXME comment. 2015-07-08 18:13:39 +02:00
Klaas Freitag 599ee90500 Remove definition of TDIR, its not longer in use.
The directory traverse handle struct is platform dependant now.
2015-07-08 18:13:39 +02:00
Klaas Freitag 2f0a404116 Unit test for the long filename conversion on win32 2015-07-08 18:13:38 +02:00
Klaas Freitag 472eed7f20 Added function to change the filename to be longer than MAX_PATH 2015-07-08 18:13:38 +02:00
Klaas Freitag 7d2bb261dc Removed the setFileHidden function for now 2015-07-08 18:13:38 +02:00
Christian Kamm e88ce41f4f test: Fix compile of check_csync_update. 2015-07-02 10:04:20 +02:00
Olivier Goffart 575ca50aac csync: Do not ignore hard links anymore
There is no reason to ignore them. Downloading a file that is hardlinked
will break the link.

Will solve syncing NTFS directories #3241
2015-07-01 13:05:08 +02:00
Olivier Goffart 84fdc8c6c0 Merge remote-tracking branch 'origin/1.8' 2015-06-26 17:54:35 +02:00
Olivier Goffart 516509b4ed csync_statedb: fix leak
Spotted by coverity (CID 98061)
2015-06-26 17:01:43 +02:00
Olivier Goffart 29fecb029e Merge remote-tracking branch 'origin/1.8'
Conflicts:
	VERSION.cmake
        src/gui/accountsettings.cpp
	src/gui/accountsettings.h
2015-06-25 12:30:52 +02:00
Christian Kamm f130a2716e Update: Check exclusion when reading from db. #3172 2015-06-19 14:58:47 +02:00
Christian Kamm 5f44218727 Reconcile: Update db entry for new dirs. #2761
Previously a EVAL_RENAME that was changed to NEW could end up
being propagated but not added to the database.
2015-06-17 11:53:38 +02:00
Klaas Freitag 758a820b0c csync: only define S_ defines if they are undefined. 2015-06-15 14:55:02 +02:00
Olivier Goffart 16786eed54 Merge pull request #3281 from owncloud/confirm
Confirm feature (sync engine part only)
2015-06-10 13:39:52 +02:00
Olivier Goffart e135d4cccf Merge remote-tracking branch 'origin/1.8' 2015-06-10 13:42:02 +02:00
Olivier Goffart 5dcb276376 csync: fix a few possible leak in error cases 2015-06-08 15:31:14 +02:00
Christian Kamm e04882cc7c Discovery: Ignore folders with any 503. #3113 2015-06-04 09:24:53 +02:00
Olivier Goffart 7bb2834d8b Confirm feature (The sync engine part) 2015-05-26 12:34:07 +02:00
Olivier Goffart 289800c1ba Recall: make it work even if it is not in the root directory 2015-05-21 16:06:53 +02:00
Olivier Goffart 49fb37fefc t_recall.pl: add a test for the recall feature 2015-05-21 16:06:53 +02:00
Olivier Goffart 6a7f2089e8 tests: Make them more verbose in case of failures 2015-05-20 14:34:11 +02:00
Markus Goetz 6b16e18eb8 tx.pl: Use HTTP Keep-Alive 2015-05-12 17:11:21 +02:00
Olivier Goffart 505dba5b23 csync walk tree: Try to find the 'other_node' in the source directory in case of renames
This fixes t2.pl
2015-05-12 16:32:00 +02:00
Markus Goetz 625e61516f Propagator: Limit length of temporary file name #2789 (fixup)
Fix 22c35c4d15
2015-05-11 15:42:35 +02:00
Hefee 23b6426dfa Compile with GCC 5
this fixes the error and makes complete oCC compile with GCC 5.
error: ISO C does not support '__FUNCTION__' predefined identifier
[-Wpedantic]

According to the porting guide:
The fix is either to use the standard predefined identifier __func__
(since C99), or to use the __extension__ keyword.
2015-05-07 01:15:55 +02:00
Daniel Molkentin d8275cd4e1 Use identical User Agents for csync and the Qt parts
Also, use the mirall version for ocsync.

Currently, the csync engine part and the Qt part have different UAs,
and this makes debugging (i.e. reading access logs) difficult. On
top, we haven't increased the ocsync version number in ages. So
as a consequence, I think it would be the best to have ocsync
and the rest share the same version number, and make them identify
with the same user agent.

To ease debugging for our side, we'll still append "(csyncoC)"
for calls made by csync.
2015-04-16 20:58:51 +02:00
Markus Goetz fa80a006b8 CSync: Log if file_id is too long 2015-04-13 14:58:25 +02:00
Olivier Goffart c917251e9e Reconcile: Fix clang warning
csync_reconcile.c:159:26: warning: address of array 'tmp->path' will always evaluate to 'true' [-Wpointer-bool-conversion]
                if( tmp->path ) {
                ~~  ~~~~~^~~~

csync_file_stat_s::path is an array so it is never null
What was meant here is to check if the string was not empty
2015-04-09 15:06:48 +02:00
Christian Kamm adcf40afc3 Discovery: Speed up initial run. #2796 2015-04-08 15:43:49 +02:00
Jocelyn Turcotte d475628c70 SyncEngine: Fix a crash in csync_vio_file_stat_copy #3051
In some cryptic cases where the getetag property wasn't returned by
the server, we might be trying to c_strdup a null pointer in
csync_vio_file_stat_copy.

At least avoid crashing in this case by looking for
CSYNC_VIO_FILE_STAT_FIELDS_ETAG, like csync_vio_file_stat_destroy
does.
2015-04-08 09:35:43 +02:00
Daniel Molkentin 14e0e4a072 Win32: More reserved file names to ignore, including Recycle Bin
Addresses #2955
2015-03-12 16:25:32 +01:00
Markus Goetz fe574dbbf9 Discovery: Free some memory before propagate (#2902) 2015-03-02 15:08:21 +01:00
Christian Kamm b03209ccef Inform user about ignored long files. #2882 2015-02-27 12:12:39 +01:00
Klaas Freitag 4f7c062f3f csync_exclude: Ignore files where the filename length is > 254 chars.
This is for example HFS+ and others. It fixes #2882
2015-02-26 17:09:49 +01:00
Christian Kamm 76ac628153 Discovery: Distinguish 503 Storage not available. #2884 2015-02-25 12:02:10 +01:00
Klaas Freitag 3af936c8a1 Some minor cleanups. 2015-02-24 22:02:29 +01:00
Klaas Freitag d297580d26 Tests: Fix compile if NEON is absent. 2015-02-13 10:04:28 +01:00
Olivier Goffart 2a88f5083c t6.pl: Add a test that re-upload a chunked file with lot of chunks 2015-02-06 10:23:20 +01:00
Olivier Goffart 5ec793e045 propagateupload: Save the mtime given by the server in the reply to GET
There could be a race condition if the file was updated on the server
between the discovery and the propagate phase. By taking the mtime from
the server, we make sure that we do not have a race.

This is tested by t6.pl with BIG3.file because the script was modifying
the file between the two phases
2015-02-06 10:23:20 +01:00
Daniel Molkentin 59bdda6226 Require OpenSSL > 1.0.0, remove obsolete dep from csync 2015-02-05 13:08:28 +01:00
Jocelyn Turcotte 1ac523ec01 Output libocsync and libowncloudsync in the bin directory
Windows finds DLLs using PATH or the directory of the process'
executable. By outputing those dependend DLLs together with
owncloud.exe, the developer only need to have OpenSSL's bin
and the qtkeychain build directory in his PATH to let the
dynamic linker find them.

As the documentation of RUNTIME_OUTPUT_DIRECTORY points out,
this only affects windows as other platforms don't consider
libraries as runtime targets.
2015-02-04 15:00:22 +01:00
Jocelyn Turcotte 43a51c1bef Fix the MinGW build
- qtkeychain isn't necessarily in a qt5keychain subdirectory.
- Explicitly add OpenSSL to the include directories
- Make sure that the USE_OUR_OWN_SQLITE3 code is initialized
  for csync by calling find_package.
2015-02-04 14:50:38 +01:00
Olivier Goffart 52d330d8e5 csync: add neon include directories 2015-02-03 16:00:55 +01:00
Christian Kamm 43d6dbb0f2 SQL: Add debugging options. #2693
OWNCLOUD_SQLITE_JOURNAL_MODE: To use something else than WAL
OWNCLOUD_SQLITE_TEMP_STORE: To test with storing temporaries in memory.
2015-01-29 11:02:01 +01:00
Olivier Goffart 22d3a4a48f csync_owncloud: don't deref null pointer 2015-01-28 14:16:33 +01:00
Olivier Goffart d70e146c1f Merge remote-tracking branch 'origin/ssl_client_cert'
Conflicts:
	CMakeLists.txt
	csync/src/CMakeLists.txt
	csync/src/csync_owncloud.c
2015-01-28 14:13:40 +01:00
Daniel Molkentin 989005d616 Clientcert support: Explictly link libsync against openssl 2015-01-28 13:31:17 +01:00
Joachim Schiele 9abc3e1333 fixes required by upstream 2015-01-23 19:22:56 +00:00
Olivier Goffart 502e7081cf Make it compile with neon 2015-01-23 17:59:07 +01:00
Olivier Goffart dcba129a98 Make it compile without neon 2015-01-23 17:56:46 +01:00
Olivier Goffart b856266e91 Remove neon link flag when not required 2015-01-23 17:35:17 +01:00
Markus Goetz 7f1f62e14a CSync: Clean some more 2015-01-23 17:26:30 +01:00
Olivier Goffart fe51ada1e8 Don't require NEON with Qt 5.4 2015-01-23 17:11:34 +01:00
Markus Goetz 6708c959d9 CSync: Remove c_list 2015-01-23 17:09:13 +01:00
Markus Goetz af9daaeff7 CSync: Remove memory checks
We will get OOMed before this fails.
2015-01-23 16:59:51 +01:00
Markus Goetz c9f9d55658 Merge branch 'qnam_csync_update'
Conflicts:
	src/libsync/networkjobs.cpp
2015-01-22 14:34:36 +01:00
Nourredine ba8b1bbe06 adds 'SSL client certificate' support from n.octeau with qknight changes as:
* removed broken QSsl::SslV3 default
* rewrote slotHandleErrors(): no longer claim errors which are none.
* hack reverted: lib64 was not the cause for NixOS issues related to libraries.
* refactored csync/src/csync_owncloud.c and discovered+fixed why the dav_connect was never getting the certPath+certPassoword
* cleanup of code but seems this crushed the ssl client certificate support
* fixes the https://github.com/owncloud/client/issues/69#issuecomment-69358377 issue
* lots of cleanup
* From TODO list : translate all french comments into english
* changed _pemCertificate type from QString to QByteArray
2015-01-21 23:55:11 +00:00
Olivier Goffart 08043bed21 csync_update: Leave a margin of 1sec when comparing the time for the timezone changes
Because FAT has a bad resolution, when the timezone is changed, there may be
one second of difference.

Issue #2438
2015-01-20 18:34:24 +01:00
Markus Goetz 906779c4b1 SyncEngine: Use QNAM for csync_update
This is for #2507
2015-01-20 18:27:25 +01:00
Olivier Goffart 264471af43 csync: cleanup some unused error code 2015-01-15 12:19:06 +01:00
Olivier Goffart e31514f769 csync propfind: Rename the directDownload property
The owncloud server has a different name because if it was named the same
it would break the 1.7 client

Issue #2614
2015-01-15 11:52:55 +01:00
Olivier Goffart 08d3ae9f02 csync_statedb: Have more granular error reporting when the loaddb fails
In order to distiguish error from sqlite_open or from the integrity check

Issue #2673
2015-01-15 11:36:24 +01:00
Christian Kamm 9b7e6cc5c1 Fix warnings.
* remove Unused variable
* zorder for spacers makes no sense
2015-01-14 11:28:53 +01:00
Olivier Goffart a2803e4f5f csync_update: do not force writing on the db for directory with a changed date
Fixes #2584
2014-12-16 13:02:32 +01:00
Christian Kamm 53d5de685c Merge remote-tracking branch 'origin/1.7'
Conflicts:
	src/gui/folder.cpp
	src/gui/folder.h
	src/libsync/networkjobs.cpp
	src/libsync/owncloudpropagator.h
	src/libsync/propagatedownload.cpp
2014-12-10 13:01:36 +01:00
Klaas Freitag 133a8ec225 Added a fixme for an edge case detected by QuickCheck. 2014-12-09 17:02:51 +01:00
Daniel Molkentin 3016844dd7 Merge branch 'master' into rename_client
Conflicts:
	README.md
	src/gui/folderman.cpp
	src/gui/settingsdialog.cpp
	src/libsync/accessmanager.cpp
	src/libsync/propagateupload.h
2014-12-02 13:37:22 +01:00
Olivier Goffart 512492bf30 Merge remote-tracking branch 'origin/1.7'
Conflicts:
	src/libsync/propagatedownload.cpp
2014-12-01 14:37:47 +01:00
Olivier Goffart 2477c3914e csync_update: Ignore a difference of time of exactly one hour
Issue #2438
2014-12-01 13:53:30 +01:00
Klaas Freitag 3e34d000f2 Propagator: Add the chunk size to PUT requests. 2014-11-25 10:21:33 +01:00
Daniel Molkentin 058d868edd Merge remote-tracking branch 'origin/1.7' 2014-11-12 00:09:00 +01:00
Daniel Molkentin 281c0e1553 Merge branch 'master' into rename_client
Conflicts:
	CMakeLists.txt
	src/gui/main.cpp
	src/libsync/accessmanager.cpp
	src/libsync/accessmanager.h
	src/libsync/owncloudpropagator_p.h
2014-11-12 00:07:59 +01:00
Olivier Goffart b04cb23ed5 t8.pl: fix the test for me
On localhost, the other file (the bigger one) was downloaded first
2014-11-11 16:38:20 +01:00
Olivier Goffart 7b4be209aa MOVE: fix moving with special character.
The Destination header need to be %-encoded
2014-11-11 16:27:06 +01:00
Daniel Molkentin b54c079766 Adjust issue urls 2014-11-09 23:38:07 +01:00
Olivier Goffart de11f602d5 Merge remote-tracking branch 'origin/il'
Conflicts:
	csync/src/csync_private.h
	src/CMakeLists.txt
	src/gui/folder.cpp
	src/libsync/owncloudpropagator.cpp
	src/libsync/owncloudpropagator.h
	src/libsync/propagator_qnam.cpp
	src/libsync/propagator_qnam.h
	src/libsync/syncengine.cpp
	src/libsync/syncengine.h
	src/mirall/syncjournaldb.cpp
2014-11-08 10:48:36 +01:00
Daniel Molkentin f25d175b5d Merge remote-tracking branch 'origin/1.7' 2014-11-06 19:54:20 +01:00
Christian Kamm eed91ddf46 Legacy propagator: Don't use mtime retrieved via _fstat64.
May be the cause of #2431
2014-11-06 12:16:55 +01:00
Christian Kamm 45eeb5065f Download: Avoid overwriting file with case conflict. #1914 2014-10-30 09:06:53 +01:00
Klaas Freitag 1029f9521c tests: exit t5.pl if running against ownCloud 6
t5.pl checks the environment variable SERVER_VERSION and if that equals
"owncloud6" it bails out after a check of the sharing ocs api.
2014-10-29 14:24:36 +01:00
Klaas Freitag 825eca078d tests: make t1.pl work on jenkins, for that disable a size compare. 2014-10-29 14:01:58 +01:00
Christian Kamm 4e20a02fe5 SyncJournalDB: Add filesize column to metadata.
* Alter table to include column.
* Make get/set in SyncJournalDB store and load it.
* Make csync recover the stat_t's size member from it.
2014-10-29 09:53:36 +01:00
Klaas Freitag 0692fea9d8 discovery: handle 503 reply code from server for directories
503 for directories means that the dir is a mounted directory from an
external mount which currently is not available. The directory is
ignored and not traversed into during discovery phase.
2014-10-27 19:21:12 +01:00
Daniel Molkentin d76192cce1 Ignore reserved words on Windows
Fixes #2385 and #2386
2014-10-24 13:18:57 -04:00
Klaas Freitag 114c38c1ff csync tests: add some debug code to get behind the jenkins fails. 2014-10-23 17:33:47 +02:00
Olivier Goffart dab01e3f3f csync_update: add the perms in the log 2014-10-22 17:25:38 +02:00
Klaas Freitag 9f6d7eb587 tests: use the ocs_url in the same semantics as the 1.6 branch. 2014-10-22 16:06:39 +02:00
Markus Goetz 47ad4e3fe8 CSync: Close/Reopen DB between update and reconcile
update and reconcile happen in different threads. This code is safer.
(Even though depending on sqlite3 version it should work anyway)
2014-10-22 15:42:13 +02:00
Olivier Goffart 3be5600caf t6.pl: fix missing space in curl command 2014-10-22 15:16:22 +02:00
Olivier Goffart dd45b448d9 t6.pl: pass the --insecure flag to curl so it works on the test machine 2014-10-22 13:57:22 +02:00
Christian Kamm d77fcea365 Csync tests: Don't use sqlite3_close_v2. 2014-10-22 12:44:33 +02:00
Christian Kamm ba86988101 Csync tests: Fix broken tests.
It is no longer ok to call csync_statedb_load() on a non-existant
database since it opens readonly only.
2014-10-22 12:22:13 +02:00
Christian Kamm de48e65091 Csync tests: Fix compile. 2014-10-22 11:45:48 +02:00
Markus Goetz 61e72ef50b CSync: statedb sanity check changes 2014-10-21 18:09:23 +02:00
Markus Goetz 24d4840c93 SyncJournalDB: Set WAL files to hidden 2014-10-21 15:58:56 +02:00