1
0
mirror of https://github.com/chylex/Nextcloud-Desktop.git synced 2026-04-03 09:11:33 +02:00

Compare commits

...

3695 Commits

Author SHA1 Message Date
Klaas Freitag
40d765c73a Remove version suffix, final release 1.6.1 2014-06-26 16:09:21 +02:00
Daniel Molkentin
23e0af5cc1 Documentation update from Mark. 2014-06-25 22:04:33 +02:00
Olivier Goffart
9adc30ab9f Shibboleth: keep the cookie from the wizard to the ShibolethCredentials
Otherwise the user is asked twice for autentication on first sync.

Fixes https://github.com/owncloud/enterprise/issues/193
2014-06-24 11:44:52 +02:00
Klaas Freitag
a7d251f8fc Update changelog for 1.6.1 2014-06-23 11:06:39 +02:00
Daniel Molkentin
7a8a3855b8 Mac: Make <ESC> close the settings dialog again 2014-06-20 16:37:07 +02:00
Daniel Molkentin
603a238eb9 Disable minimize button for Preferences on Mac 2014-06-20 16:31:17 +02:00
Olivier Goffart
b7b6cf4b3f Shibboleth: Always ask for the password if we are going to open the log window
If we don't have the cookie in the keychain (e.g. the keychain is
unavailable) but there is still session cookie in the cookie jar,
showing the browser won't ask for authentication.
2014-06-20 16:25:35 +02:00
Daniel Molkentin
c855b783d9 NSIS: Remove duplicated entry 2014-06-20 15:53:10 +02:00
Daniel Molkentin
f593fc8e4d NSIS: Bump required libpng version to 16 2014-06-20 15:50:42 +02:00
Klaas Freitag
ae5cbb8451 Version: Bumped to rc1 2014-06-20 15:37:50 +02:00
Klaas Freitag
041066a252 Exclude: Add a missing free in case of empty lines.
This fixes Coverity CLT 12893
2014-06-20 15:15:35 +02:00
Daniel Molkentin
9ca82ba14d NSIS: add libwinpthread dependency 2014-06-20 14:58:05 +02:00
Olivier Goffart
b29a757b18 Revert "csync file util: Remove compare file function, not needed anymore."
This break the test.
And the function is aleady gone in master anyway

This reverts commit 407b3bebfe.
2014-06-20 14:29:43 +02:00
Daniel Molkentin
485a6926c5 FancyLineEdit: initialize all members
This fixes Coverity CID 12912
2014-06-20 13:46:57 +02:00
Daniel Molkentin
f3de6f46db Folder: Removed unused member _pathWatcher
This fixes Coverity CID 12914
2014-06-20 13:42:26 +02:00
Daniel Molkentin
1309dc27d9 Remove previously unused member
This fixes Coverity CID 12915
2014-06-20 13:40:55 +02:00
Daniel Molkentin
31469d6a3e Folderwizard: Properly initialize all members
This fixes coverity CID 12916
2014-06-20 13:38:36 +02:00
Daniel Molkentin
88776770f7 Legacy Propagator: Properly initialize members
This fixes coverity CID 12919
2014-06-20 13:36:15 +02:00
Daniel Molkentin
bbf8b9f8dd syncengine: properly initialize all members in ctor
This fixes Coverity CID 12922
2014-06-20 13:28:52 +02:00
Daniel Molkentin
6ff38d8005 Cleanup member initialization in Theme
This fixes coverity issue 12925
2014-06-20 13:28:52 +02:00
Daniel Molkentin
6d13b5cc43 wizard setuppage: Clean up and properly initialize members
This fixes Coverity CID 12926
2014-06-20 13:28:52 +02:00
Daniel Molkentin
73ab2804c4 owncloudwizard: properly initialize _account memember
This fixes Coverity CID 12927
2014-06-20 13:28:52 +02:00
Klaas Freitag
db3d2eed5f csync core: Remove logically dead code: Can never be reached.
This fixes Coverity CID 12881
2014-06-20 13:08:03 +02:00
Klaas Freitag
d995d1190f SyncFileItem: Some more proper member initializations.
This fixes a Coverity CID
2014-06-20 12:54:46 +02:00
Klaas Freitag
3217e42a0f SyncJournalDB: Initialize size member properly with 0
This fixes Coverity CID 12924
2014-06-20 12:37:49 +02:00
Klaas Freitag
1dd58a537e owncloudcmd: Fix structurally dead code.
This fixes Coverity CID 12928
2014-06-20 12:34:15 +02:00
Olivier Goffart
b34afa1afc reconcile: use the proper enum type
thankfully the value hapenned to be the same, but the type
is of CSYNC_FTW_..  and not CSYNC_VIO_FILE_TYPE
Detected by coverity (CID 12887)
2014-06-20 11:51:07 +02:00
Olivier Goffart
b7c9fa6d5f csync_owncloud: silent CID 12883 2014-06-20 11:51:07 +02:00
Olivier Goffart
61ad376bf4 accountsettings: silent coverity warning 12884
We use f anyway, so if we are going to test if it's null we can as
well return
2014-06-20 11:51:07 +02:00
Klaas Freitag
407b3bebfe csync file util: Remove compare file function, not needed anymore.
This also fixes Coverity CID 12890 and CID 12898
2014-06-20 11:39:28 +02:00
Olivier Goffart
f04c80dd0e httpbf: silent coverity issue 12905 2014-06-20 11:33:29 +02:00
Olivier Goffart
1e788d3d60 folderwizard: fix possible use of null pointer
Coverity issue 12907
2014-06-20 11:29:28 +02:00
Olivier Goffart
83171bf025 accountsettings: remove unused function
It was moved into owncloudgui before
And it was broken (bad use of QUrl and use of null pointer
2014-06-20 11:27:37 +02:00
Olivier Goffart
2e51721851 owncloudgui: Fix compilation 2014-06-20 11:26:41 +02:00
Olivier Goffart
4d4a0148e4 owncloudgui: use QUrl::fromLocalFile 2014-06-20 11:21:36 +02:00
Klaas Freitag
b144a5bbf9 csync_exclude: Add a missing free of path components.
This fixes Coverity CID 12895
2014-06-20 11:14:50 +02:00
Olivier Goffart
5225fe07e0 csync_owncloud_recursive_propfind: "fix" possible memory leak
This was only leaking memory if ne_path_parent returns 0, which
should never happen

This fixes coverity issue 12897
2014-06-20 11:12:45 +02:00
Klaas Freitag
85cdbd1f1d stateDB: Close the file descriptor even if stat failed.
This fixes Coverity CID 12897
2014-06-20 11:05:40 +02:00
Klaas Freitag
e4f8a136f1 StateDB: Free locale string also if attribs are invalid.
This fixes Coverity CID 12898
2014-06-20 11:05:40 +02:00
Daniel Molkentin
c263c38cdf statedb.c: fix potential memory leak on win32
This fixes coverity issue 12898
2014-06-20 10:58:03 +02:00
Daniel Molkentin
df8553e878 httpbf.c: Fix resource leak
This fixes Coverity CID 12902
2014-06-20 10:58:03 +02:00
Daniel Molkentin
bec66c85d4 Fix potential memory leak
This fixes Coverity CID 12893
2014-06-20 10:58:03 +02:00
Daniel Molkentin
f9710cc1d5 c_time: Fix resource leak in error case
This fixes Coverity CID 12903
2014-06-20 10:58:03 +02:00
Daniel Molkentin
6b041b0846 Fix use-after-free in QNAM propagator
This fixes Coverity CID 12929
2014-06-20 10:58:03 +02:00
Klaas Freitag
d0c992c991 Updater: Free tmp variable that might point to temp malloced memory
This fixes Coverity CID 12900
2014-06-20 10:41:01 +02:00
Klaas Freitag
9ee86cf06b Fix resource leak in win32 code path, added free of locale filename.
This fixes Coverity CID 12901
2014-06-20 10:25:00 +02:00
Olivier Goffart
646eafb05d Legacy propagator jobs: Do not limit bandwidth when aborting
When aborting, we want the last job to be as fast as possible
as it blocks the UI.  So don't limit the bandwidth in that case
2014-06-18 15:09:19 +02:00
Olivier Goffart
0880444e37 Syncengine: Wait for the neon thead to be finished before destroying the Propagator and calling csync_commit
The legacy job might still need the neon session and the propagator.
We need to make sure the thread exits before.

This fixes crash when pausing a sync made with the legacy jobs
(for example when there is network limitation)
This should fix https://github.com/owncloud/enterprise/issues/200
2014-06-18 15:08:23 +02:00
Olivier Goffart
0a953b91f9 csync_vio_local: fix memory leak on windows 2014-06-17 16:40:38 +02:00
Klaas Freitag
b71881d300 SyncEngine: Use QSet for the seenFiles rather than QHash.
We can save some memory here as the seenFiles list can be long.
2014-06-17 16:30:11 +02:00
Daniel Molkentin
b91967f4d9 Fix regression over 1.5: Fix non-fba auth for Shib IdPs 2014-06-17 14:53:23 +02:00
Klaas Freitag
2d234cd96f Propagator: Handle file open error properly and log error message. 2014-06-16 13:35:50 +02:00
Klaas Freitag
1230e87330 Propagator: Give a more specific error message on file remove.
If the file is removed during it is synced up, there is now a correct
error message saying that, rather than "the file has changed during
upload."
2014-06-16 13:34:59 +02:00
Daniel Molkentin
b2966fecc7 Shib: remove slotLoadFinished() from webview dtor
This is a relict from when the webview was reused.
It is now pointless, since it's now destruct-on-close.
2014-06-14 03:00:18 +02:00
Daniel Molkentin
4abe00ff6c Shib: Ensure browser view gets closed before QNAM
Otherwise, QWebPage tries to delete its QNetworkReplies, which have
already been deleted by the QNAM destruction, who is their parent.

Fixes #1840
2014-06-14 03:00:18 +02:00
Klaas Freitag
e1db834ec9 Add missing cmakedefine for HAVE_ASPRINTF and minor cleanup.
Fixes windows build.
2014-06-13 13:30:59 +02:00
Klaas Freitag
c72c72a106 FolderWizard: Get folder map from FolderMan rather than store locally.
If the Folder::Map object is kept locally in the wizard, changes to
the map are not reflected there, as they happen when signing out.
This fixes bug #1875
2014-06-12 23:17:13 +02:00
Daniel Molkentin
4a5ef8f173 Fix a possible crash caused by a dangling pointer 2014-06-12 10:29:17 +02:00
Klaas Freitag
ed26bcb3e7 Theme: Show the stringified app version rather than the major version.
This was a regression, we changed that by accident in 1.6.0.

(cherry picked from commit 760ecd71fc)
2014-06-10 17:05:15 +02:00
Daniel Molkentin
b814b45e50 Add version and product information to installer properties 2014-06-05 11:51:12 +02:00
Daniel Molkentin
ded8914df2 [Janitor] Bump version to 1.6.1pre 2014-06-05 11:51:12 +02:00
Olivier Goffart
7a7b0e8939 propagator: Ignore new directory inside removed directory.
This fixes te bug if one create a tree of folders and subfolders
and delete them while they are uploading. Some folder would
reappears
2014-06-04 16:37:46 +02:00
Olivier Goffart
a4f6370774 propagator: do not update perent directory etag before sub directories are removed
Direcotries are removed at the end, and we don't want to update
parent directory etag before the delete is performed, or the next
sync may read from db and think the files are not removed.

Issue #1845
2014-06-04 12:31:30 +02:00
Olivier Goffart
6605a89990 csync_statedb: Fix wrong % code in debug output
%ld is for long, but int64_t is larger than long on windows
2014-06-03 18:28:31 +02:00
Olivier Goffart
6e10b8c5c4 Propagator: Recover from 'precondition failed' error
When we detect a precondition failed, it is possible that it is
because the etag in the database is wrong.  We must therefore not
read from the database on the next sync.  In order to avoid that, we
reset the etag of parent directories to invalid values

Fixes #1767
2014-06-03 17:22:40 +02:00
Olivier Goffart
24616bead4 Fix syncing a folder with '#' in the name
Or an url with '#'

Fixes #1838

The problem is a bug fixed in Qt5 now breaks.
In Qt4, QUrl::setPath() did not properly handle path with '#' in them
and QUrl::toString would restitute the '#'.

But csync will blindly do  "uri + path" before passing the path to
VIO.  because csync_update has no idea that the VIO plugin need special
encoding, the encoding cannot be done there.  But csync_owncloud then
encodes the full path.  So if the uri contains '#', it must not be already
encoded or there will be two encoding.
2014-06-03 15:45:10 +02:00
Olivier Goffart
13f9970257 Fix some possible "Precondition Failed" bug
The problem was if there was a false conflict: the file has been touched
both on the server and the client.
 - etag has changed on the server
 - mtime has changed on the server and the client and is the same
 - and file size is the same on both the server and the client

This may also happen if the file is uploaded on the server, but the client
looses connection (or crashes) before it get notified of the etag.

In both tree, the instruction is EVAL, but we reduce it to a NONE because
we detected that the conflict is 'false'.  Still, we need to update the db
with the new etag.  (_should_update_db)
The problem was that we would set the flag on the wrong tree.
This was not a problem when the file was NEW on both side since  we checked
for null etag and used the other one then.
2014-06-03 12:23:30 +02:00
Daniel Molkentin
746c15b4aa Remove debug layout 2014-06-02 19:38:04 +02:00
Daniel Molkentin
7e65c9741e [Shib] Ensure only one fetch job can open the browser 2014-06-02 17:41:49 +02:00
Jenkins for ownCloud
a50e7c1b48 [tx-robot] updated from transifex 2014-06-02 01:25:23 -04:00
Jenkins for ownCloud
0ae82e2041 [tx-robot] updated from transifex 2014-06-01 02:06:11 -04:00
Jenkins for ownCloud
22af756fe3 [tx-robot] updated from transifex 2014-06-01 01:25:21 -04:00
Jenkins for ownCloud
2f1bec28dd [tx-robot] updated from transifex 2014-05-31 01:25:23 -04:00
Markus Goetz
022a3fcd92 OS X: Fix localFileNameClash
We need to compare the other way round and compare only the file name
because our sync directory might be symlinked and then resolve to
another canonical path (but we were only interested in the filename part
anyway)
2014-05-30 15:47:53 +02:00
Daniel Molkentin
064dcdb25a 1.6.0 final 2014-05-30 12:38:44 +02:00
Jenkins for ownCloud
938dce7fa6 [tx-robot] updated from transifex 2014-05-30 01:25:21 -04:00
Olivier Goffart
0151682a53 Make sure that OwncloudPropgator::finished is only emit once
When we abort, each job currently running may result in a call to finished().
It used to cause a crash because we would unlock the _syncMutex twice

Fixes #1793
2014-05-29 12:15:13 +02:00
Olivier Goffart
864f2cdc7d remove the _syncMutex and replace it by a simple bool 2014-05-29 11:35:13 +02:00
Jenkins for ownCloud
77ddedc859 [tx-robot] updated from transifex 2014-05-29 01:25:27 -04:00
Daniel Molkentin
0c1ab533e6 Do not trim serial numbers
This broke in a refactoring. The 'true' was interpreted as length of 1.

Fixes part of #1436
2014-05-28 21:16:00 +02:00
Olivier Goffart
1dd7f736d0 Fix another crash at exit
Fixes #1794
2014-05-28 19:59:35 +02:00
Olivier Goffart
571c199db8 remove broken connection
Fixes #1822
2014-05-28 18:11:39 +02:00
Daniel Molkentin
40715cbc77 Update ChangeLog 2014-05-28 16:33:01 +02:00
Daniel Molkentin
3d2a2df86f Allow to set a smaller timeout value in the config file
Added to debug #1724
2014-05-28 16:28:22 +02:00
Daniel Molkentin
86a48b52e9 Shib: Show a notification whenever the shib session times out
This is designed as a passive popup notification so that it will
not surprise or annoy the users.

Fixes Enterprise issue #179
2014-05-28 15:25:43 +02:00
Olivier Goffart
ebe1f986f1 Only remove session cookies
This should disconnect without loosing long lived cookie
2014-05-28 15:24:14 +02:00
Olivier Goffart
dd1152dd4f Clear all cookies when loging out 2014-05-28 11:41:06 +02:00
Olivier Goffart
ce9bfd319a Fix the sib window re-appearing.
When the windows is accepted, do not emit fetched which means the process is finished
one must first check the username is valid
2014-05-28 10:18:57 +02:00
Daniel Molkentin
f591ac6549 CookieJar: Reduce debug noise 2014-05-28 10:05:32 +02:00
Daniel Molkentin
4fd368c992 ShibCredentials: Ensure that _stillValid is not reset while the browser window is open
This will cause the browser window to open again after it has been told to close
if a network job has run in the background while the browser window was visible.

Fixes #1814
2014-05-28 10:05:32 +02:00
Jenkins for ownCloud
93f453057b [tx-robot] updated from transifex 2014-05-28 01:25:21 -04:00
Klaas Freitag
5a069d274b Pushed version suffix to rc3 2014-05-27 11:41:01 +02:00
Klaas Freitag
e275ad3866 Emit the sync finished signal a bit delayed.
This allows folder watcher events comnig in before the sync is marked
finished. This avoids "endless syncing" as described in bug #1808
2014-05-27 11:35:07 +02:00
Olivier Goffart
5813f63df8 Do not runs the check connection timer when there is no configured account
in order to avoid popup of the wizzard every 32 seconds

Fixes #1812
2014-05-27 11:05:09 +02:00
Jenkins for ownCloud
9a1f8ccf7b [tx-robot] updated from transifex 2014-05-27 01:25:28 -04:00
Klaas Freitag
449c00f019 No need to check for case preserving filesystem here.
That is done in the utility function instead.
2014-05-26 18:28:52 +02:00
Klaas Freitag
6017eb7ca6 Case clash check for local remove plus native separators. 2014-05-26 18:28:25 +02:00
Klaas Freitag
f1b2417967 Add check for case clash for legacy propagator download. 2014-05-26 18:28:25 +02:00
Klaas Freitag
181383e5f1 Check for case preserving file system in localCaseClash 2014-05-26 18:28:25 +02:00
Markus Goetz
c1b9d5c653 Propagator: Implement localFileNameClash for OS X 2014-05-26 17:36:52 +02:00
Klaas Freitag
964c3ac7bf Check for local file name clash before local renaming.
Return a proper error message in case.
2014-05-26 17:00:40 +02:00
Daniel Molkentin
6d8afabf41 Find export macro 2014-05-26 16:33:04 +02:00
Daniel Molkentin
0a7dbeb778 Export CookieJar 2014-05-26 16:29:26 +02:00
Olivier Goffart
3228fde4af Only set should_update_etag for directories in the update case
If there is an error during the local rename for a file, we don't
want to write the entry for the destination before because there might be
an error
2014-05-26 16:11:05 +02:00
Daniel Molkentin
0582abe8dd Shib: Wizard: Return to IdP selection when returning to creds page 2014-05-26 15:57:01 +02:00
Olivier Goffart
81f410970f ammend previous change 2014-05-26 15:01:26 +02:00
Olivier Goffart
e75c5236f2 Properly report errors when renaming a file
That is especially usefull when renaming to an existing file with a different case
2014-05-26 14:51:53 +02:00
Olivier Goffart
8a671c40d1 Make FolderMan a member of the application
The goal here is that it is going to be destroyed with the application
It need to be destoyed so the folder are destroyed, which is required
for properly finishing the sync while exiting.

It must not be destroyed after the application because the QSQLite plugin
may be already destroyed in that case.

Since the constructor of FolderMan is called earlier, we can't call the
config file too early

 fixes 1793
2014-05-26 14:37:15 +02:00
Olivier Goffart
50ce0f9681 Fix crash at exit when there is a log after the Logger has been destroyed
Use a proper static Logger instead of allocating one,  and cleanup
the QTMessageLogger when it is destroyed
2014-05-26 14:37:14 +02:00
Daniel Molkentin
a60902b33d Make sure the settings window is brought up when minimized
Fixes #1804
2014-05-26 14:32:08 +02:00
Olivier Goffart
5220786cf2 do not blacklist fatal error 2014-05-26 12:27:16 +02:00
Olivier Goffart
99cead68f5 Fix crash when aborting
When aborting, the slotFinished will destroy all the Jobs, but they need
one more even loop to finish cleanups

Fixes #1793
2014-05-26 12:23:25 +02:00
Olivier Goffart
7a209ba376 leak fix 2014-05-26 12:07:00 +02:00
Olivier Goffart
f9263da3de Fix crash when the account config is gone and there are still folder
In rare case (due to a bug in QSettings) the account config may disapear
We should not crash in that case
2014-05-26 11:08:32 +02:00
Daniel Molkentin
3f724e1c6a Fix Pref window for good
This was forgotten in 18677dbc3f
2014-05-26 09:37:43 +02:00
Jenkins for ownCloud
c9d3f7a0eb [tx-robot] updated from transifex 2014-05-26 01:25:25 -04:00
Jenkins for ownCloud
072af16f3b [tx-robot] updated from transifex 2014-05-25 02:06:12 -04:00
Jenkins for ownCloud
d2b6c626b5 [tx-robot] updated from transifex 2014-05-25 01:25:28 -04:00
Daniel Molkentin
115276408a Merge pull request #1805 from wakeup/master
Fix some typos
2014-05-24 15:26:06 +02:00
Volkan Gezer
9abffdb1a6 fix typo 2014-05-24 15:04:42 +02:00
Volkan Gezer
5b0307446a fix spacing 2014-05-24 15:03:45 +02:00
Jenkins for ownCloud
0f20a4f546 [tx-robot] updated from transifex 2014-05-24 01:25:29 -04:00
Klaas Freitag
1b2875c20a Use the moved implementation of the name clash detection method. 2014-05-23 18:58:21 +02:00
Klaas Freitag
bbdf7bf955 Check for case clash on downloads. 2014-05-23 18:58:21 +02:00
Klaas Freitag
57359968ed Added method localFileNameClash
Also reordered the implementations a bit.
2014-05-23 18:58:08 +02:00
Klaas Freitag
ea9f302b7a Read the blacklist entries case insensitive in case the file
system is only case preserving.
2014-05-23 16:13:35 +02:00
Klaas Freitag
ef0a3c212e Add a utility function fsCasePreserving.
Returns true if the underlying file system is case preserving instead
of case sensitive. That is true for Mac and Windows currently. Only
Linux has a case sensitive file system usually.
2014-05-23 16:13:35 +02:00
Daniel Molkentin
18677dbc3f Fix on-top/below-others window problem
- Don't give the settings window an always-on-top hint, or else
  sub dialogs will pop-under. Also, people seem to (ab-)use it
  as a status monitor... well

- raiseWidget() can only really do one thing: remove the dialog status
  from dialogs without a parent due to a bug in Qt. The previous
  implementation never really worked. Tested on Mac and Gnome 3 so far.

Fixes #1795
Fixes parts of #1775
2014-05-23 16:00:50 +02:00
Klaas Freitag
7e8b403116 More progress on the CI problem detection. 2014-05-22 17:12:59 +02:00
Klaas Freitag
1303379c9e Remove useless global varialbe for auth callback. 2014-05-22 12:54:14 +02:00
Daniel Molkentin
b995cd318c Fix/cleanup PropagateLocalMkDir::start() 2014-05-22 10:16:33 +02:00
Daniel Molkentin
ed19107161 Remove useless check. QFile::exists() is CI on CI filesystems
Tested on OS X and Windows
2014-05-22 10:06:10 +02:00
Jenkins for ownCloud
1b67f253dc [tx-robot] updated from transifex 2014-05-22 01:25:23 -04:00
Markus Goetz
667c835c49 Revert "remove auth callback setting in the csync module."
This commit broke syncing.
We need the callback to supply the password.

This reverts commit 8738128504.
2014-05-21 20:02:22 +02:00
Daniel Molkentin
5b298abba1 Revert "Set an "active" role for the menubar icon on Mac"
Apart from a small mistake in this commit, there seems to be
something else wrong.

This reverts commit 97362cff32.
2014-05-21 13:00:20 +02:00
Daniel Molkentin
4edbeece49 Fix connection following the update of the QtSingleApplication classes 2014-05-21 12:31:44 +02:00
Daniel Molkentin
97362cff32 Set an "active" role for the menubar icon on Mac
Fixes #1730
2014-05-21 11:19:38 +02:00
Daniel Molkentin
3db3c7b876 Update QtSingleApplication and QtLockedFile
Fixes stale temp file issues, and is needed for blocking support.
2014-05-21 11:19:38 +02:00
Klaas Freitag
8738128504 remove auth callback setting in the csync module. 2014-05-21 11:09:02 +02:00
Klaas Freitag
069eaf9170 Clear the authentication callbacks set before. 2014-05-21 11:09:02 +02:00
Klaas Freitag
d0b9b002e4 Show the sync icon in case the status is not yet defined.
This fixes the problem that on the first sync, no proper status icon is
shown on a potential long update phase.
2014-05-21 11:09:01 +02:00
Olivier Goffart
bdba56f60b Always wait on the thread before emiting finished
This ensure that there would be no way to have two thread running

Refactor all the location where finished is called in a single function
2014-05-20 12:32:06 +02:00
Jenkins for ownCloud
7087dbc445 [tx-robot] updated from transifex 2014-05-20 01:25:31 -04:00
Daniel Molkentin
7ade4bb6e6 AccountSettings: Handle button states more correctly
Fixes #1779
2014-05-19 15:46:23 +02:00
Daniel Molkentin
86117aed0d autostart unix impl: use mkpath instead of mkdir
Fixes TestUtility::testLaunchOnStartup(), if .config/ does not exist.
2014-05-19 12:42:04 +02:00
Jenkins for ownCloud
ed3d9a7479 [tx-robot] updated from transifex 2014-05-19 01:25:29 -04:00
Jenkins for ownCloud
3746a2efff [tx-robot] updated from transifex 2014-05-18 01:25:29 -04:00
Jenkins for ownCloud
9b53cc66e7 [tx-robot] updated from transifex 2014-05-17 01:25:38 -04:00
Klaas Freitag
43fe7b0d55 Detect directory case sensitivity clash on windows 2014-05-16 15:24:01 +02:00
Daniel Molkentin
5aa6f81ef3 1.6.0rc2 2014-05-16 09:50:50 +02:00
Jenkins for ownCloud
f838f28185 [tx-robot] updated from transifex 2014-05-16 01:25:29 -04:00
Olivier Goffart
e1f8eb5aa5 Another way to force a sync when choosing 'Keep files' 2014-05-15 19:36:01 +02:00
Olivier Goffart
f40a054cb7 Revert "Re-sync immediatly after "Keep files" when all files were removed"
This causes infinite sync loops

This reverts commit 8b469d3992.
2014-05-15 19:29:40 +02:00
Daniel Molkentin
adfb163593 1.6.0rc1 2014-05-15 17:22:01 +02:00
Daniel Molkentin
81c768099e Folder: Correctly reflect paused state after restart 2014-05-15 15:04:48 +02:00
Daniel Molkentin
4bcaebb322 Decrease debug noise 2014-05-15 15:04:48 +02:00
Olivier Goffart
8b469d3992 Re-sync immediatly after "Keep files" when all files were removed
Fixes #1710
2014-05-15 11:48:01 +02:00
Olivier Goffart
bb929db7e6 fix warning 2014-05-15 11:29:23 +02:00
Olivier Goffart
90ee274744 We need to call csync_commit in every error cases
Else there will still be outdated tree in the memory and the further sync
will be confused

Relates to #1710
2014-05-15 11:18:06 +02:00
Daniel Molkentin
9f6e9f8e1b Fix crash: if the credentials cannot be cast, don't deref, assume change 2014-05-15 11:12:18 +02:00
Klaas Freitag
943f9f60e3 Documented core dump catching 2014-05-15 11:11:13 +02:00
Klaas Freitag
f89bfce068 Enable core dumping if the env variable OWNCLOUD_CORE_DUMP is defined
Set OWNCLOUD_CORE_DUMP to anything to get a core dump in case of
crashing.
2014-05-15 11:01:21 +02:00
Klaas Freitag
ef44a59bed Better debugability. 2014-05-15 09:45:50 +02:00
Klaas Freitag
d96139f698 Commented verbose logging. 2014-05-15 09:45:50 +02:00
Daniel Molkentin
de970eb0a5 Fix wizard flow with shibboleth 2014-05-15 09:43:26 +02:00
Jenkins for ownCloud
7a28b44128 [tx-robot] updated from transifex 2014-05-15 01:25:29 -04:00
Daniel Molkentin
17a2e224c4 Fix memleak 2014-05-14 12:53:12 +02:00
Klaas Freitag
87386ce001 Fix testcase.
It failed because the directory where change happened triggered a
notification within the second before, so the event was skipped.
2014-05-14 12:49:11 +02:00
Daniel Molkentin
5ed4710d64 Merge pull request #1726 from owncloud/debian_bsd
Make Debian GNU/kFreeBSD compile
2014-05-14 12:20:17 +02:00
Klaas Freitag
5493c22584 Do not dispatch invalid progress information to avoid "unknown" messages 2014-05-14 11:52:22 +02:00
Klaas Freitag
64f4d1b387 Removed block parameter from terminateSync.
Do not pretend to immediately terminate the sync but let csync
finish planfully and free the mutex.
2014-05-14 11:52:22 +02:00
Daniel Molkentin
cdd8c8165b Add missing header to fix Qt5 compilation 2014-05-14 11:22:56 +02:00
Daniel Molkentin
16ffd7fbe4 Merge pull request #1765 from owncloud/shibcookies
CookieJar refactoring required to overcome issues in Shibboleth support
2014-05-14 11:14:42 +02:00
Daniel Molkentin
ba959f7cf9 CookieJar refactoring required to overcome issues in Shibboleth support
The shibboleth implementation no longer maintains its own QNAM.

Instead, MirallAccessManager now holds a custom QNAM implementation
which saves cookies to a file on disk.

This patch also reduces some complexity wrt the browser window,
which used to be deleted via a roundtrip to its callee, which
is not longer required.

Fixes #1764 and Enterprise bug #165

Going forward, AbstractCredentials::getQNAM() could maybe removed entirely.
2014-05-14 11:11:45 +02:00
Jenkins for ownCloud
cf145feed8 [tx-robot] updated from transifex 2014-05-14 01:25:29 -04:00
hefee
07f57b1982 make Debian GNU/kFreeBSD compile 2014-05-13 16:51:42 +02:00
Klaas Freitag
e62eb62a01 Merge pull request #1179 from tomswartz07/master
Add exclusion for OSX ._<filename> files
2014-05-13 15:35:50 +02:00
Olivier Goffart
574e030caf Use a different key than "user" to store the shib user
There is a HACK from commit fa0a2764a4
Which save the http user as a user for all credidentials, but that
cannot work with shibboleth

Fixes https://github.com/owncloud/enterprise/issues/175
2014-05-13 11:54:36 +02:00
Klaas Freitag
3705a42375 Remove misleading error message of "unknown error" for custom errnos. 2014-05-13 10:39:37 +02:00
Jenkins for ownCloud
a9ffd1d0cf [tx-robot] updated from transifex 2014-05-13 01:26:28 -04:00
Klaas Freitag
f86dd1cbbf Merge pull request #1747 from owncloud/doc_optional
install doc targets in any case. Thanks for the patch!
2014-05-12 11:35:59 +02:00
Jenkins for ownCloud
af066cc733 [tx-robot] updated from transifex 2014-05-12 01:26:26 -04:00
hefee
822650719b RemoveADir test should realy test, if it is notified 2014-05-11 17:08:30 +02:00
Jenkins for ownCloud
95747fbaea [tx-robot] updated from transifex 2014-05-10 01:26:26 -04:00
Jenkins for ownCloud
321058ef74 [tx-robot] updated from transifex 2014-05-09 01:26:28 -04:00
hefee
71c11373d8 install doc targets in any case.
If a user only builds some parts of the documentation and afterwards
wants to install owncloud-client afterwards via "make install", the
built parts should be installed in any case.
2014-05-08 13:44:35 +02:00
Jenkins for ownCloud
d5ba288dd5 [tx-robot] updated from transifex 2014-05-08 01:26:27 -04:00
Olivier Goffart
091e9bbd52 Fix crash when _engine is not available
Fixes #1671 and #1675
2014-05-07 16:17:08 +02:00
Olivier Goffart
ce09e11011 Revert "Do not dereference the _engine member variable without check."
bubbleUpSyncResult is only called from slotSyncFinished, so if _engine
is invalid there, it is also invalid in slotSyncFinished

This reverts commit aee7515d42.
2014-05-07 16:13:43 +02:00
Olivier Goffart
d7a226e0e6 Silent warning:
warning: no previous prototype for ‘set_csync_file_locked_or_open_ext’ [-Wmissing-prototypes]
2014-05-07 12:38:57 +02:00
Olivier Goffart
f034bcb9ae only increment the progressbar for files when the file has been fully transfered 2014-05-07 12:35:02 +02:00
Jenkins for ownCloud
4c77a04514 [tx-robot] updated from transifex 2014-05-07 01:26:27 -04:00
Klaas Freitag
a50c39cd0c Maintain the original inode value for renamed files.
In case two renames are done on the same file/folder very quickly we
lost the information that the second operation was also a rename. That
was because we tried to get the inode value from a stat on the file once
the first rename was finished. But at that point, the file was already
gone because of the second rename.

Now the original inode is kept and written to db in case the file can
not be stat'ed.

This fixes bug #1737
2014-05-06 12:55:54 +02:00
Klaas Freitag
370dd99e47 Super useful source comment. 2014-05-06 09:30:50 +02:00
Jenkins for ownCloud
f97fbe868f [tx-robot] updated from transifex 2014-05-05 01:26:30 -04:00
Jenkins for ownCloud
2ce6560b6e [tx-robot] updated from transifex 2014-05-04 01:26:32 -04:00
Jenkins for ownCloud
2b4e14c4fc [tx-robot] updated from transifex 2014-05-03 01:26:31 -04:00
Olivier Goffart
1631cfdaf1 Fix not blacklisting error 5xx 2014-05-02 17:26:28 +02:00
Olivier Goffart
2e76fe87c2 Fix reporting the right error in a GET
We always reported the lack of e-tag instead of the real error
2014-05-02 17:26:28 +02:00
Markus Goetz
6c44f53645 Set network timeout to 300 sec
As per previously used values (see source and changelog)
2014-05-02 15:35:40 +02:00
Olivier Goffart
988c162d2f Have only one place where we read the timeout 2014-05-02 13:04:53 +02:00
Olivier Goffart
3d8d4fecd7 delete dead code 2014-05-02 11:50:20 +02:00
Jenkins for ownCloud
f8525fa5a0 [tx-robot] updated from transifex 2014-05-02 01:27:04 -04:00
Jenkins for ownCloud
6e48eb9397 [tx-robot] updated from transifex 2014-05-01 01:26:48 -04:00
Olivier Goffart
88cb047197 Add a timeout when using the QNAM propagation 2014-04-30 18:17:49 +02:00
Klaas Freitag
7f7154ed40 Auto generate the Export header.
This should fix oem builds.
2014-04-30 13:55:40 +02:00
Klaas Freitag
a8c1ffc2f4 Add a header file for owncloudcmd.cpp to avoid (auto)moc problems. 2014-04-30 13:55:40 +02:00
Klaas Freitag
df8b5b1ea6 Removed unused Q_OBJECT 2014-04-30 13:55:40 +02:00
Olivier Goffart
ce50cdecf1 Add one byte per files in the computation of the progress bar
So it feels like the progress bar is moving when operating of file
that are empty or when deleting or renaming files
2014-04-30 13:20:20 +02:00
Olivier Goffart
77c7439329 Don't include the directory size in the overall progress
We don't include them in the total amout of files so it should
not be included in the progress either.

Also, for some reasons directories seems to be 16kB on windows
2014-04-30 12:57:30 +02:00
Olivier Goffart
752112dbaa Initialize the size properly on windows 2014-04-30 12:06:55 +02:00
Markus Goetz
925c6485e6 Propagator: Dont show silly string for non-error 2014-04-30 11:36:57 +02:00
Olivier Goffart
d62deabf9b Fix updating mtime
Fixup commit 9193286fc1
Use the right URL for the PROPPATCH and HEAD, do not let other
jobs start when we wait for the UpdateMTimeAndETagJob
Update the etag and the fileid of the real item.
2014-04-30 10:24:17 +02:00
Jenkins for ownCloud
47c23dae30 [tx-robot] updated from transifex 2014-04-30 01:26:47 -04:00
Markus Goetz
3bf15541c6 Add set_csync_file_locked_or_open_ext
Without using function, there were problems with DLL import/export
2014-04-29 18:37:34 +02:00
Markus Goetz
876de8fd69 Networkjobs: Remove stray include 2014-04-29 17:55:26 +02:00
Olivier Goffart
983f9c5dde The job restore job need to be run with QMetaObject::invoke
Because the job might be in a different thread.
2014-04-29 16:58:24 +02:00
Olivier Goffart
9193286fc1 Support old server which do not have the x-oc-mtime support
Owncloud 4.5
Or owncloud 5 with chunking

Fixes https://github.com/owncloud/core/issues/8392
2014-04-29 16:58:24 +02:00
Olivier Goffart
1b8d11182b Add missing include
This was required so the compiler sees the declaration of
CredentialsFactory::create which should be exported
2014-04-29 16:04:24 +02:00
Olivier Goffart
dcc5c105eb fix forward declaration of CredentialsFactory::create 2014-04-29 15:50:19 +02:00
Klaas Freitag
64b42333b0 Fix typo. 2014-04-29 15:36:13 +02:00
Olivier Goffart
3ee729bc4a Add export macro to all classes that need to be exported 2014-04-29 15:31:14 +02:00
Daniel Molkentin
a268b03990 Try to not have windows stay-on-top 2014-04-29 15:31:03 +02:00
Klaas Freitag
6471a45a8a Added changelog beta1 -> beta2 2014-04-29 14:46:17 +02:00
Klaas Freitag
7c27638f36 Set release suffix to beta2 2014-04-29 14:09:43 +02:00
Olivier Goffart
0bffdfb256 Fix compiler warnings, and be less spammy in the log 2014-04-29 12:30:13 +02:00
Olivier Goffart
9f0848ba15 Merge remote-tracking branch 'origin/libowncloudsync_noqtgui' 2014-04-29 12:23:15 +02:00
Olivier Goffart
f159b028b4 Add a compile option to not blacklist error code 5xx 2014-04-29 11:39:46 +02:00
Olivier Goffart
7e702778a1 Add missing line break 2014-04-29 11:27:31 +02:00
Markus Goetz
4489a56c65 Csync: Set error at correct place 2014-04-28 17:25:18 +02:00
Markus Goetz
7f752c7e93 Csync: Plug code for csync_file_locked_or_open 2014-04-28 16:57:56 +02:00
Markus Goetz
b39359c929 Csync: Add hook for checking if a file is in use already 2014-04-28 14:18:58 +02:00
Klaas Freitag
b42d3ced15 Another fix for make install on MacOSX 2014-04-28 11:19:25 +02:00
Klaas Freitag
1c73a8d4ad Fix installation for MacOSX 2014-04-28 10:24:12 +02:00
Daniel Molkentin
2d3ea59755 Limit the mac workaround to the Mac OS X platform 2014-04-28 10:13:53 +02:00
Jenkins for ownCloud
b8b064836c [tx-robot] updated from transifex 2014-04-28 02:07:38 -04:00
Jenkins for ownCloud
3ab1330f63 [tx-robot] updated from transifex 2014-04-28 01:26:40 -04:00
Jenkins for ownCloud
ab711ddc36 [tx-robot] updated from transifex 2014-04-27 02:06:35 -04:00
Jenkins for ownCloud
2a1e67e587 [tx-robot] updated from transifex 2014-04-27 01:25:42 -04:00
Jenkins for ownCloud
1d3febe053 [tx-robot] updated from transifex 2014-04-26 01:25:42 -04:00
Olivier Goffart
165e35c750 t1.pl: change assertLocalAndRemoteDir so we actually test something 2014-04-25 14:35:20 +02:00
Olivier Goffart
9da261acd8 Do not read from the database when upgrading from 1.5
We need to make sure that the file id are updated (if the user
had upgraded from owncloud 5 to owncloud 6 while using owncloud 1.5)
2014-04-25 13:31:44 +02:00
Jenkins for ownCloud
7544f4d367 [tx-robot] updated from transifex 2014-04-25 02:06:36 -04:00
Jenkins for ownCloud
a29a56bce8 [tx-robot] updated from transifex 2014-04-25 01:25:42 -04:00
Olivier Goffart
642c16b09b Missing EXPORT 2014-04-24 23:57:42 +02:00
Olivier Goffart
5c92c190f0 Add EXPORT macro to owncloudsync library
Not all the class are exported currently, only the one that seems to be used
by the command line tools
2014-04-24 23:45:20 +02:00
Olivier Goffart
cc7826e087 Add a compile option to disable renaming when the extension changes
This is only used for a very specific server that do not support
changing the extension of files without re-uploading the file.

Since the change is small and self contained, it is guarded by a #ifdef

(Removed old BLACKLIST_ON_ERROR option that is no longer in use)
2014-04-24 11:51:48 +02:00
Jenkins for ownCloud
a154656311 [tx-robot] updated from transifex 2014-04-24 01:25:45 -04:00
hefee
9b7a3d00ee Using QFile::decodeName instead of QLatin1String 2014-04-23 18:59:40 +02:00
Sandro Knauß
1d862b77af merged 1.5 into master 2014-04-23 18:54:49 +02:00
Klaas Freitag
888843e655 Removed another file for Jenkins. 2014-04-23 13:22:06 +02:00
Klaas Freitag
28970393f6 Removed a test file as jenkins fails on it. 2014-04-23 13:18:28 +02:00
Klaas Freitag
1af7dc952c Update to latest GNUInstallDirs cmake module
This version correctly detects debians multiarch lib handling and
lets us remove the manually set CMAKE_LIB_INSTALL_DIRS from the rules
file.
2014-04-23 13:04:16 +02:00
Jenkins for ownCloud
62dcfe85e4 [tx-robot] updated from transifex 2014-04-23 01:25:49 -04:00
Markus Goetz
f6711b2842 CMake: Find libraries also on Win host compile 2014-04-22 21:02:08 +02:00
Olivier Goffart
f2519e9d87 Fix function signature: pass argument by const reference 2014-04-22 19:52:09 +02:00
Markus Goetz
94f380c1f0 Updater: Ignore files matching with CSYNC_CONFLICT_FILE_USERNAME 2014-04-22 17:05:59 +02:00
Markus Goetz
197d180cb9 Propagator: Add support for CSYNC_CONFLICT_FILE_USERNAME 2014-04-22 16:17:49 +02:00
Markus Goetz
4be20db670 Propagator: Add makeConflictFileName function 2014-04-22 16:07:18 +02:00
Olivier Goffart
46d6191bc2 Also list folder for which the alias starts with '.'
Fixes #1695
2014-04-22 14:26:08 +02:00
Olivier Goffart
ee22f377af Start the folder watcher when new folder are added
Before, we would only set up a file system watcher when we read the
config at startup.  But we also need to do it in the other case when
the user configure new folder to watch
2014-04-22 14:15:43 +02:00
Olivier Goffart
44a04227f1 Update dynamically the error message in the account settings
This let the error be shown when the conneciton is missing at startup

And also remove the red background when there is no longer an error
2014-04-22 14:08:37 +02:00
Olivier Goffart
707c6fcc5d An abort on the reply is not usually a password error.
Copy the code from HTTPCredidentials
2014-04-22 12:52:13 +02:00
Olivier Goffart
edb1f61241 Fix compilation without the BUILD_ONLY_LIBRARIES mode 2014-04-22 12:44:01 +02:00
Olivier Goffart
3fac5f91c8 In case of error, report the right error instead of missing etag
also, missing etag is not a fatal error
2014-04-22 12:43:38 +02:00
Olivier Goffart
1338c08622 Fix compilation on linux with BUILD_LIBRARIES_ONLY 2014-04-22 11:33:38 +02:00
Olivier Goffart
0cf8091705 Merge pull request #1700 from wakeup/master
Fix non-closed p tag
2014-04-22 10:08:29 +02:00
Klaas Freitag
521373f075 More specific log output. 2014-04-22 09:33:07 +02:00
Klaas Freitag
c24732f641 More debugable code. 2014-04-22 09:33:07 +02:00
Jenkins for ownCloud
655188d7b3 [tx-robot] updated from transifex 2014-04-22 01:25:41 -04:00
Markus Goetz
77ac092975 WiP: Attempt to compile without UI 2014-04-21 19:57:15 +02:00
Volkan Gezer
78e5e4ab66 Fix non-closed p tag 2014-04-21 15:29:42 +02:00
Jenkins for ownCloud
934eda128b [tx-robot] updated from transifex 2014-04-21 01:27:00 -04:00
Daniel Molkentin
ece41921ff Merge pull request #1697 from wakeup/master
Space fix
2014-04-20 15:44:03 +02:00
Volkan Gezer
9b71643c1c Space fix 2014-04-20 14:54:40 +02:00
Jenkins for ownCloud
ed48b4bbf2 [tx-robot] updated from transifex 2014-04-20 01:26:54 -04:00
Olivier Goffart
b08284e4cc Fix the background check job for the connection
We can't use the quota job for that as it needs the credidentials and therefore
may re-enter the credidential code when we are currently trying to fetch the credentials.

The quotainfo.cpp part of this patch is basically a revert of d836b80153
2014-04-19 09:49:52 +02:00
Jenkins for ownCloud
4731b506e5 [tx-robot] updated from transifex 2014-04-19 01:27:02 -04:00
Olivier Goffart
7d3b0fe0c5 Fix memory leak: Don't need to call strdup here
The other_node outlive the trav structure, so we can just use the same pointer
2014-04-18 19:16:10 +02:00
Olivier Goffart
fa38bf7029 Make sure the fileid are saved to the database when upgrading from owncloud5 to owncloud6
We fetch the id from the server, but don't save them in the database.

I Could have used INSTRUCTION_UPDATED for that, but then i would need to update the
reconcile algorithm to take in account the fact that UPDATED is possible there.

Instead, use should_update_etag  which means the db is going to be written again

Remove reference to old instruction _UPDATED and _DELETED which does not make sens with
the new propagator

Improve the test to test this case,  and that etags are properly writen to the DB
when there is a fake conflict
2014-04-18 18:27:27 +02:00
Olivier Goffart
bfdf638334 Add the files required by the tests.
Somehow they got removed with all the moving and merging.
Especially kernelcrash.txt is required for t1.pl
2014-04-18 17:20:42 +02:00
Jenkins for ownCloud
e6664c7790 [tx-robot] updated from transifex 2014-04-17 15:03:55 -04:00
Mr. Jenkins
a90779910a [tx-robot] updated from transifex 2014-04-17 01:26:53 -04:00
Mr. Jenkins
edc7a9596a [tx-robot] updated from transifex 2014-04-16 01:26:58 -04:00
Volkan Gezer
a7a19fad71 Fix note template label 2014-04-16 03:53:37 +02:00
Klaas Freitag
d143044f4a Add missing cases to avoid "unknown action" under some circumstances.
Most of the translations are not used because they translate pre
propagation states.

Fixes #1674
2014-04-15 16:54:49 +02:00
Klaas Freitag
aee7515d42 Do not dereference the _engine member variable without check.
This can cause the crash because the _engine member is deleted in the
sync finished slot. The solution is to store the stopWatch object
before the engine is destroyed.

Fixes bug #1675
2014-04-15 16:28:18 +02:00
Klaas Freitag
82ab5fdcb9 Fix condition if network limit change is logged or not. 2014-04-15 16:28:18 +02:00
Klaas Freitag
4c6e6f6302 Add initialisations for member variables.
Avoids some valgrind warnings.
2014-04-15 16:28:18 +02:00
Klaas Freitag
0a2791270a Add a reset method. 2014-04-15 16:28:18 +02:00
Klaas Freitag
c920f81562 Add braces. 2014-04-15 16:28:18 +02:00
Mr. Jenkins
9dcbafc307 [tx-robot] updated from transifex 2014-04-15 01:26:01 -04:00
Daniel Molkentin
d836b80153 Fix reconnect after server disconnect
Fixes #1679
Fixes #1568
Fixes #1659
2014-04-14 17:51:57 +02:00
Daniel Molkentin
efc4ff4d88 Fix redirects in CheckServerJob 2014-04-14 15:12:38 +02:00
Daniel Molkentin
dc043b5765 Try scheme://host/owncloud if scheme://host/ did not work
Fixes #1680
2014-04-14 15:10:08 +02:00
Daniel Molkentin
ef9a318cd9 AbstractNetworkJob Allow finished() to defer Job deletion
This allows to reuse the Job
2014-04-14 15:08:43 +02:00
Mr. Jenkins
9f4ffd44d6 [tx-robot] updated from transifex 2014-04-14 01:25:55 -04:00
Mr. Jenkins
598bfe6d1a [tx-robot] updated from transifex 2014-04-13 01:25:56 -04:00
Mr. Jenkins
5f37c7b1b8 [tx-robot] updated from transifex 2014-04-12 01:26:00 -04:00
Volkan Gezer
8250fb81b3 Fix typo. 2014-04-11 15:10:47 +02:00
Klaas Freitag
30a14b9f45 Install ocsync library to private lib directory, use rpath to find it. 2014-04-11 13:28:11 +02:00
Mr. Jenkins
b0734f2791 [tx-robot] updated from transifex 2014-04-11 01:25:58 -04:00
Mr. Jenkins
d66b0910c6 [tx-robot] updated from transifex 2014-04-10 01:26:05 -04:00
Klaas Freitag
09e05392bf Ignore all sync log files in the sync dir. 2014-04-09 22:02:28 +02:00
Daniel Molkentin
d3d202de68 Fix dataLocation on Linux/BSD
From the Qt 5 documentation:

  Note: when porting QDesktopServices::DataLocation(obsolete)
        to QStandardPaths::DataLocation, a different path will
        be returned.

        QDesktopServices::DataLocation was GenericDataLocation
        + "/data/organization/application", while
        QStandardPaths::DataLocation is GenericDataLocation
        + "/organization/application".

We'll resort to the deprecated version, since we'll need to fix
data locations to be XDG compliant sooner than later anyway
(currently scheduled for 1.8)
2014-04-09 14:59:08 +02:00
Daniel Molkentin
87010fbe1a SSL Button: Fix issues around printing Hash sums
- Use SHA 265 instead of obsolete MD5 where possible (Qt5)
- Remove <tt> formatting: that simply looked ugly
- Wrap SHA 265 hash
- Use spaces as separators

As usual, the default needs to remain ':' separation, because
it's needed to pass valid hashes to csync.
2014-04-09 14:30:51 +02:00
Jenkins for ownCloud
f302da81b1 [tx-robot] updated from transifex 2014-04-09 02:07:10 -04:00
Mr. Jenkins
3af53f5984 [tx-robot] updated from transifex 2014-04-09 01:26:26 -04:00
Klaas Freitag
7c40dc1a9a Ignore changes on .owncloudsync.log in the linux filewatcher.
Also remove some verbose and unused logging.
2014-04-08 13:06:34 +02:00
Daniel Molkentin
af3af94a01 Allow tests to run against SSL-self-signed servers 2014-04-08 12:39:46 +02:00
Klaas Freitag
7d79d3d30d Fix Search for Qt5 version Qt4 2014-04-08 12:08:01 +02:00
Klaas Freitag
990e2f0beb Ignore the new sync log file in the sync dir.
It is required to have all ownCloud system files in the ignore list
that have to be ignored, because the ignore list is fed into the
folderwatcher, which needs to ignore changes to both the journal and
the logfile.
2014-04-08 11:55:31 +02:00
Daniel Molkentin
b34b4e37aa Add Qt Keychain also when building with Qt5 2014-04-08 10:56:07 +02:00
Mr. Jenkins
02697a7c4d [tx-robot] updated from transifex 2014-04-08 01:27:22 -04:00
Daniel Molkentin
4ff39d8114 Cleanups, build if Qt5 is not on system 2014-04-07 18:08:28 +02:00
Daniel Molkentin
69bdccfd2f Include correct QtKeychain headers
..depending on Qt version
2014-04-07 17:46:06 +02:00
Daniel Molkentin
9f8d867ce2 About correctly when Qt5Keychain isn't found 2014-04-07 17:41:33 +02:00
Daniel Molkentin
d416c97eac Fix Qt5 detection 2014-04-07 17:38:30 +02:00
Daniel Molkentin
1d70426bb7 Build with BOTH Qt4 and 5 2014-04-07 17:25:25 +02:00
Daniel Molkentin
6a2fe6be67 Build fix: QAtomicInt has no implicit integer conversion in Qt5 2014-04-07 16:49:01 +02:00
Klaas Freitag
8ed0fdcfa5 Fix info print in test script. 2014-04-07 16:36:35 +02:00
Klaas Freitag
ebf3c78237 More fine granular chunking test - improved t6.pl 2014-04-07 16:30:02 +02:00
Klaas Freitag
3d67d203fe Fix content-length calculation for sizes multiple of the chunk size. 2014-04-07 16:29:06 +02:00
Klaas Freitag
fc06945b26 use the lowercase app name for icon in the desktop file.
fixes #1642
2014-04-07 15:14:58 +02:00
Klaas Freitag
9cdcc925c1 Do not log useless stuff. 2014-04-07 15:10:55 +02:00
Klaas Freitag
fc2923aa9b Unlink the compare file after the remote cleanup. 2014-04-07 15:10:55 +02:00
Jenkins for ownCloud
6d325e6557 [tx-robot] updated from transifex 2014-04-07 02:07:45 -04:00
Daniel Molkentin
7d7d03071a Add Copyright.txt for cmake modules
Fixes #1438
2014-04-07 01:27:59 +02:00
Mr. Jenkins
657f7613a1 [tx-robot] updated from transifex 2014-04-06 01:26:58 -04:00
Markus Goetz
d35c0f3ade Propagator: Fix chunking for real
The reset() (using seek()) didn't work.
2014-04-05 14:26:24 +02:00
Mr. Jenkins
069e9526a8 [tx-robot] updated from transifex 2014-04-05 01:27:01 -04:00
Klaas Freitag
5aeee6d1f2 Use curl to get the file back, fix the LWP based download later. 2014-04-04 17:00:20 +02:00
Klaas Freitag
a759c93fb6 Add a new test script to check for big file chunking. 2014-04-04 16:33:57 +02:00
Daniel Molkentin
57c59850e1 Fix installation paths 2014-04-04 15:52:41 +02:00
Markus Goetz
0f7d448058 Propagator: Fix chunking 2014-04-04 15:41:35 +02:00
Klaas Freitag
ab8868eacd Changelog updated. 2014-04-04 12:21:18 +02:00
Daniel Molkentin
00cd5875c0 Bump to beta1 2014-04-04 11:22:30 +02:00
Klaas Freitag
435e7e3eec HACK to avoid continuation: See task #1448
We do not know the _modtime from the server, at this point, so just set
the current one.  (rather than the one locally)
2014-04-04 10:56:33 +02:00
Klaas Freitag
08dd9796d1 HACK to avoid continuation: See task #1448
We do not know the _modtime from the server, at this point, so just set
the current one.  (rather than the one locally)
2014-04-04 10:50:40 +02:00
Daniel Molkentin
4bcd620c29 Avoid build attempts with Qt4 on Windows and Linux 2014-04-04 09:29:01 +02:00
Mr. Jenkins
5f60c97f59 [tx-robot] updated from transifex 2014-04-04 01:26:59 -04:00
Olivier Goffart
20e850501d Make sure we do not remove files that are replaced by a symlink
As we ignore symlink, we should not remove on the server the files that
are ignored.

Change tested in t4.pl

Relates to #1299
2014-04-03 17:47:49 +02:00
Olivier Goffart
462ba7d942 Don't dead lock when all the files are removed
SyncEngine is on the main thread, no need of the legacy BlockingConnection
2014-04-03 17:47:49 +02:00
Klaas Freitag
cf87fdff7f Keep the updater data in the log struct for the synclog.
Also, shorten the timestamp and add the sync direction.
2014-04-03 16:56:50 +02:00
Markus Goetz
565bb540d6 Propagator: Add debug message regarding legacy vs QNAM 2014-04-03 16:37:40 +02:00
Klaas Freitag
062a0907db Remove HTTP::DAV fragment and hardcode required version in Test.pm 2014-04-03 10:16:09 +02:00
Thomas Müller
95726eeab1 properly adding Turkish language support 2014-04-03 08:59:31 +02:00
Jenkins for ownCloud
6c2d286f10 [tx-robot] updated from transifex 2014-04-03 02:07:48 -04:00
Mr. Jenkins
6af3e9afc7 [tx-robot] updated from transifex 2014-04-03 01:26:59 -04:00
Klaas Freitag
ead935e0a6 Add an open to open the dav connection. 2014-04-02 16:45:31 +02:00
Olivier Goffart
eaf5681f61 Put the sync log in the actual folder 2014-04-02 16:36:32 +02:00
Olivier Goffart
03ef2aadde Remove undeeded includes
And don't use 'using namespace' in headers
2014-04-02 16:23:57 +02:00
Olivier Goffart
f09076180d don't add the list of field on the log for every sync 2014-04-02 16:21:07 +02:00
Olivier Goffart
d5d3c1a23a Fix compilation with Qt5
We don't need QtWidgets,  and we don't need Uility::escape
2014-04-02 16:21:06 +02:00
Markus Goetz
b18f1ad386 SyncEngine: Removed unused signal 2014-04-02 12:47:15 +02:00
Mr. Jenkins
fc553a8c04 [tx-robot] updated from transifex 2014-04-02 01:27:06 -04:00
Klaas Freitag
cba160706a Minor cleanup 2014-04-01 16:14:24 +02:00
Klaas Freitag
fa453296c9 Enable SSL for testing. 2014-04-01 16:14:24 +02:00
Klaas Freitag
58aaad3fed Add options to createRemoteDir 2014-04-01 16:14:24 +02:00
Klaas Freitag
8625ec250b Add a trust ssl certificate switch 2014-04-01 16:14:24 +02:00
Klaas Freitag
d731f4718d Add an simple SSL error handler for owncloudcmd. 2014-04-01 16:14:24 +02:00
Olivier Goffart
607e48a68b let configure the default count of the blacklist 2014-04-01 13:54:47 +02:00
Olivier Goffart
bfe6a50b19 Fix some error cases in the SyncEngine
Always cleanup properly when we bail out.

Also fix thread safety of the SyncJournalDB
2014-04-01 13:41:47 +02:00
Mr. Jenkins
ded21c5826 [tx-robot] updated from transifex 2014-04-01 01:26:57 -04:00
Mr. Jenkins
9bd6019905 [tx-robot] updated from transifex 2014-03-30 01:26:33 -04:00
Mr. Jenkins
dcac2796dd [tx-robot] updated from transifex 2014-03-29 01:26:34 -04:00
Klaas Freitag
ab439f8f0f Proper cleanup of the shared directory. 2014-03-28 16:15:59 +01:00
Daniel Molkentin
9822002480 Spell APPLICATION_SHORTNAME correctly
Fixes #1547
2014-03-28 15:56:35 +01:00
Klaas Freitag
384a8d0d72 Added t5.pl which does basic testing with a Shared directory. 2014-03-28 15:04:14 +01:00
Daniel Molkentin
70eb688e86 fix frameworks during signing 2014-03-28 14:46:08 +01:00
Daniel Molkentin
4e0b6179f9 Libocsync is a library, not a plugin
This is needed to deploy the library correct in OS X.
2014-03-28 14:46:08 +01:00
Olivier Goffart
3acdfc0004 Make configurable the maximum amount of job in parallel
Bia the environement variable OWNCLOUD_MAX_PARALLEL
2014-03-28 11:20:07 +01:00
Olivier Goffart
a1fc7f0a25 Make the chunk size configurable via an environement variable
OWNCLOUD_CHUNK_SIZE
2014-03-28 11:11:02 +01:00
Olivier Goffart
5bceb6f787 fix test compilation 2014-03-28 11:02:18 +01:00
Olivier Goffart
8de9bec122 Remove progress info from csync
csync doesn't do no propagation no more
2014-03-28 10:50:15 +01:00
Olivier Goffart
5204a992b2 Remove HBF stuff from csync_owncloud
csync doesn't do no propagation no more
2014-03-28 10:41:48 +01:00
Olivier Goffart
765a18b74a Fix compilation with Qt4 2014-03-28 10:26:42 +01:00
Olivier Goffart
350283fe06 Remove obsolete code that removed the sync journal when the sync directory is deleted
Since the journal is now in the same directory, we don't need this
security anymore

When the directory is removed, the sync will error out saying that the
journal cannot be loaded or created
2014-03-28 10:23:09 +01:00
Olivier Goffart
2ba62b79b4 Make the size of the log maximum 1MiB 2014-03-28 10:13:35 +01:00
Olivier Goffart
e0b6395d18 Use sane datastructure in Utility::StopWatch
We don't want to logging to be O(N^2)

Also avoid usage of macro when possible
2014-03-28 09:50:13 +01:00
Olivier Goffart
ba896b0550 Avoid copies of the StopWatch 2014-03-28 09:39:50 +01:00
Olivier Goffart
36a2c861c2 Only build the static library when BUILD_LIBRARIES_ONLY is defined 2014-03-28 09:34:21 +01:00
Olivier Goffart
7f975e0b2f Avoid macro when it can easily be done with a local variable 2014-03-28 09:27:05 +01:00
Jenkins for ownCloud
359dd2b986 [tx-robot] updated from transifex 2014-03-28 02:07:21 -04:00
Mr. Jenkins
a636fd7801 [tx-robot] updated from transifex 2014-03-28 01:26:40 -04:00
Olivier Goffart
69fcbd3b0d Fix Qt4 compilation
And a typo
2014-03-27 18:19:56 +01:00
Olivier Goffart
d6525a979d Do not let user change it's login while using shibbolet
Fixes #915
2014-03-27 17:59:50 +01:00
Markus Goetz
67f4d0c85b CSync: Debug message if no exclude file defined 2014-03-27 17:11:19 +01:00
Markus Goetz
54313338cd SyncEngine: new aboutToPropagate signal 2014-03-27 17:04:31 +01:00
Markus Goetz
09e6207ce9 SyncEngine: Fix typo 2014-03-27 15:19:02 +01:00
Denis Dzyubenko
000e0bb600 Fast forwarded qtmacgoodies 2014-03-27 10:39:56 +01:00
Olivier Goffart
353f21e856 Add a FAQ item for the .eml problem
Fixes #1403
2014-03-27 09:55:25 +01:00
Mr. Jenkins
51e961e694 [tx-robot] updated from transifex 2014-03-27 01:26:35 -04:00
Olivier Goffart
de2335c1db Show the folders when in the accountsettings in the first start 2014-03-26 19:31:37 +01:00
Olivier Goffart
332c6cf726 Fix invalid signal connection 2014-03-26 19:31:37 +01:00
Klaas Freitag
5481215813 Remove unused variable. 2014-03-26 18:18:20 +01:00
Klaas Freitag
086dd07d69 Log the processed items to a logfile. 2014-03-26 18:16:27 +01:00
Klaas Freitag
dd6b71bad6 Use a stopwatch to meassure the time consumed. 2014-03-26 18:16:27 +01:00
Klaas Freitag
9af2339596 Store the request duration and timestamp to final item 2014-03-26 18:16:27 +01:00
Klaas Freitag
0fcef5f604 Add data to store interesting info from the sync run (other tree) 2014-03-26 18:16:27 +01:00
Klaas Freitag
c41935d49d Add a class to write a machine readable sync log file. 2014-03-26 18:16:27 +01:00
Klaas Freitag
7b84defd56 Add a stopwatch utility class with lap times.
Allows to meassure the duration of something that started at a
point of time, with some small convenience methods.
2014-03-26 18:16:27 +01:00
Klaas Freitag
505429b582 Add a duration and the repsonse timestamp to the jobs. 2014-03-26 18:16:27 +01:00
Klaas Freitag
033fee6f53 Fix include path 2014-03-26 18:16:27 +01:00
Klaas Freitag
67ae541e2a Safe use of c_strdup 2014-03-26 18:16:27 +01:00
Klaas Freitag
11bbad79e2 Use QTimer as object member rather than pointer based.
Avoid crashes if timer is zero.
2014-03-26 18:16:27 +01:00
Klaas Freitag
6e6f647c63 Change data type for fileId to QByteArray. 2014-03-26 18:12:22 +01:00
Klaas Freitag
c5100a789b Collect data from the "other" tree for the treewalk functions.
This enables us to log all relevant information that were used
to decide on sync activity.
2014-03-26 18:12:22 +01:00
Olivier Goffart
2ad7b0aae0 Fix crash on first run when no account are configured 2014-03-26 17:42:05 +01:00
Olivier Goffart
588633a0f2 Fix leak: don't leak the settings 2014-03-26 17:42:05 +01:00
Markus Goetz
d5659442b2 SyncEngine: Sanity bail out if DB does not exist suddenly
The update/reconcile worked for me, but the Propagate step had an invalid DB
path but still went on (and then messed things up)
2014-03-26 16:57:50 +01:00
Markus Goetz
c6e5f39f7f SyncJournalDb: Verbose log on load failure 2014-03-26 16:40:00 +01:00
Markus Goetz
7bef166d6c CSync: Debug file_id on walk 2014-03-26 15:32:45 +01:00
Olivier Goffart
38344589c4 Exxtract the exception message from reply to PUT
Might be usefull to debug Internal Server Error

Fixes #1366
2014-03-26 12:02:22 +01:00
Olivier Goffart
98d7ff5116 Don't create .ctmp of sync journal
Fixes #1559
2014-03-26 10:25:50 +01:00
Denis Dzyubenko
6c28151e0f Fast forwarded qtmacgoodies submodule 2014-03-26 10:15:35 +01:00
Daniel Molkentin
411cffd3d5 NSIS: libcrypto-10 dependency got lost somehow 2014-03-26 09:10:01 +01:00
Daniel Molkentin
1c4af687ea Compile on Mac again 2014-03-26 07:20:24 +01:00
Mr. Jenkins
2de83b95e3 [tx-robot] updated from transifex 2014-03-26 01:26:42 -04:00
Daniel Molkentin
c3d37efa6c Fix OS X compilation 2014-03-25 23:33:46 +01:00
Daniel Molkentin
7c7fad78f7 Qt5: QtLocation is not needed 2014-03-25 22:52:28 +01:00
Daniel Molkentin
3ac1849963 Don't moc twice 2014-03-25 20:55:04 +01:00
Olivier Goffart
b4f992b944 Merge pull request #1446 from owncloud/remove-tooltip
remove superfluous tooltip from server address input field
2014-03-25 20:16:26 +01:00
Daniel Molkentin
1c8e5ef4ee Fix typo 2014-03-25 20:05:06 +01:00
Daniel Molkentin
45ec489f71 Merge branch 'master' of github.com:shadone/mirall into shadone-master
Conflicts:
	cmake/modules/QtVersionAbstraction.cmake
	src/CMakeLists.txt
	src/mirall/owncloudgui.cpp
2014-03-25 19:56:45 +01:00
Daniel Molkentin
1b5e14fbc5 Update owncloudcmd docs
Fixes #1587
2014-03-25 19:04:05 +01:00
Daniel Molkentin
dddec8b250 -fPIC is implied on Windows 2014-03-25 19:04:05 +01:00
Daniel Molkentin
06082b585a Add translations when using Qt5 as well 2014-03-25 19:04:05 +01:00
Daniel Molkentin
4bf0a2b188 NSIS: depend on Qt5-based installations 2014-03-25 19:04:05 +01:00
Daniel Molkentin
e2fe4972d9 Don't show ocsync version, it's part of mirall now 2014-03-25 19:04:05 +01:00
dragotin
efee9c689c Merge pull request #1611 from Absolight/freebsd-port
Freebsd port - Thanks a lot!
2014-03-25 17:28:06 +01:00
Mathieu Arnold
84b4872938 And make it runnable on FreeBSD too.
Patch by:	Tobias Berner
2014-03-25 17:23:11 +01:00
Mathieu Arnold
3f9bd1d72a Fix build on FreeBSD.
We use libinotify, so the linux folderwatcher works.

Based on a patch by:	Tobias Berner
2014-03-25 17:22:54 +01:00
Mr. Jenkins
1898e32b6a [tx-robot] updated from transifex 2014-03-24 01:26:24 -04:00
Mr. Jenkins
9addd9bc27 [tx-robot] updated from transifex 2014-03-23 01:26:21 -04:00
Markus Goetz
91f416ffc7 Fix compile after changing Account::davPath() 2014-03-22 09:41:32 +01:00
Mr. Jenkins
28559ab657 [tx-robot] updated from transifex 2014-03-22 01:26:24 -04:00
Sandro Knauß
47274f1075 Merge remote-tracking branch 'respect-XDG_CONFIG_HOME' into 1.5 2014-03-21 17:20:15 +01:00
Markus Goetz
384eef4d6d csync_owncloud: Add a debug message 2014-03-21 17:19:07 +01:00
Markus Goetz
ff95cbd04b Account: Don't hardcode WebDAV path 2014-03-21 17:14:04 +01:00
Markus Goetz
cc5fabdab0 Engine: Introduce jobCompleted() signal 2014-03-21 17:13:02 +01:00
Markus Goetz
ff95e233bc Token Credentials: Support actual tokens 2014-03-21 17:12:26 +01:00
Markus Goetz
f72e1cc837 Log: Don't override level for csync
The level shall be set from Folder or owncloudCmd only.
2014-03-21 13:52:35 +01:00
Olivier Goffart
8e6674e784 Merge branch '1.5'
Conflicts:
	src/owncloudcmd/owncloudcmd.cpp
2014-03-21 10:06:45 +01:00
Olivier Goffart
8aace3284f owncloudcmd: Fix an error during update phase would not terminate
the QApplication::quit()  would be run before the exec() and would
be a noop,   and then exec would just wait forever.
2014-03-21 10:03:11 +01:00
Olivier Goffart
922e004fc6 Make it an error instead of a crash when dav_connect fails.
Fixes #1591
2014-03-21 09:54:26 +01:00
Mr. Jenkins
2fc61479f7 [tx-robot] updated from transifex 2014-03-21 01:26:37 -04:00
Olivier Goffart
bb9d6b34c7 Remove FIXME and TODO
They are outdated
2014-03-20 16:42:43 +01:00
Olivier Goffart
07025c7432 Remove a FIXME
The commit message say that this line should be necessary to show
the information when the setting dialog is open,  but this is working
now via the signals
2014-03-20 16:42:43 +01:00
Olivier Goffart
b65601aaa4 Remove FIXME
This has been refactored since the comment was added and is no longer a hack
2014-03-20 16:42:43 +01:00
Olivier Goffart
756e1c4a12 Prefer the use of _isDirectory over item._type == SyncFileItem::Directory 2014-03-20 16:42:42 +01:00
Olivier Goffart
c5f8a2555d Rename _dir to _direction
(to avoid confusion with directory)
2014-03-20 16:42:42 +01:00
Olivier Goffart
a1ab9c84c7 Remove FIXME in syncengine 2014-03-20 16:42:42 +01:00
Klaas Freitag
e4966ec9d1 Added documentation about owncloudcmd. 2014-03-20 16:35:43 +01:00
Olivier Goffart
23f3a6b319 restore the last change menu
It was not yet implemented after the progress refactoring
2014-03-20 14:43:10 +01:00
Olivier Goffart
ebeb668a62 QNAM jobs: Make sure there is an etag is proper and not changed when one resume
Those tests are existing on the legacy jobs.

We check there is an etag so we make sure a proxy is not in between.
(We have seen user complaining because their proxy is replacing the
pages with one that says they need to enter their login and password)

Also it is important to check that the etag has not changed if we resume
(this may happen if the file is changed on the server between the update
phase and the propagate phase,  and that we resume this file)
2014-03-20 13:31:42 +01:00
Klaas Freitag
d2e1923694 Fix compile warning. 2014-03-20 12:57:57 +01:00
Klaas Freitag
a5ede054d6 Fix statedb tests. 2014-03-20 12:35:16 +01:00
Klaas Freitag
ba2ff4ec46 Copy test database into the build tree. 2014-03-20 12:35:16 +01:00
Klaas Freitag
ca536f467a Proper initialization to avoid build warnings. 2014-03-20 12:35:16 +01:00
Olivier Goffart
05d3273591 Detect the error that may happen when downloading a file 2014-03-20 11:35:30 +01:00
Klaas Freitag
39924d79cb Add new test to test the csync database code. 2014-03-20 11:15:28 +01:00
Klaas Freitag
f7866aabde Add C++ extern "C" 2014-03-20 11:15:28 +01:00
Klaas Freitag
eb59f98ec9 Fix quoting of query by text. 2014-03-20 11:15:28 +01:00
Klaas Freitag
c3cee3426e Improved database access code for csync.
- Use precompiled database statements
- Store them in the csync context struct
- Hand whole context as parameter to db access functions
2014-03-20 11:15:28 +01:00
Klaas Freitag
f21dd05c2d Streamline logging. 2014-03-20 11:15:28 +01:00
Klaas Freitag
6005b9c16e Remove some superflous logging. 2014-03-20 11:15:28 +01:00
Mr. Jenkins
77bf37c6f6 [tx-robot] updated from transifex 2014-03-20 01:26:23 -04:00
Mr. Jenkins
8e133dc8ea [tx-robot] updated from transifex 2014-03-19 01:26:24 -04:00
Daniel Molkentin
d10aec6055 NSIS: Install owncloudcmd on Windows 2014-03-18 23:56:50 +01:00
Klaas Freitag
9d1208baa4 Also allow http and https protocols. 2014-03-18 17:10:03 +01:00
Klaas Freitag
8e914deb99 Revert "Do not rely on the url scheme owncloud(s) any more."
This reverts commit 34dd3b207e.
It can be implemented simpler.
2014-03-18 16:57:01 +01:00
Klaas Freitag
34dd3b207e Do not rely on the url scheme owncloud(s) any more.
If it is not owncloud or ownclouds, rely on the scheme
that was given by the user.
2014-03-18 14:16:50 +01:00
Klaas Freitag
68e8d659fb Remove unused code. 2014-03-18 14:16:06 +01:00
Mr. Jenkins
f79765a536 [tx-robot] updated from transifex 2014-03-18 01:26:28 -04:00
Daniel Molkentin
eef57032f8 OCUpdater: Compare to the current version
Fixes #1548
2014-03-18 00:28:26 +01:00
Olivier Goffart
6377dca4b0 Add the file and line number of the debug in the debug view 2014-03-17 12:15:45 +01:00
Olivier Goffart
f05320c32c Clean the debug a bit 2014-03-17 12:15:16 +01:00
Olivier Goffart
b0f8a24c20 CSyncThread was renamed, give proper names in Folder
take in account that the object live in the same thread
2014-03-17 11:47:23 +01:00
Olivier Goffart
c841b9c0c4 Remove unused libsync_HEADERS
This was unused and is redudent with owncloudsync_HEADERS
2014-03-17 11:36:53 +01:00
Olivier Goffart
7b482c0e96 Rename CSyncThread to SyncEngine
CSyncThread has not been a thread for a long time now
2014-03-17 11:34:51 +01:00
Olivier Goffart
bf5091d862 Merge branch '1.5' 2014-03-17 11:26:28 +01:00
Olivier Goffart
5c45ede4a5 Read the quota as double
The server is sending floating point number when the amount of storage
is set to a custom number (say 1.2GB)

This should fix #1374
2014-03-17 10:37:06 +01:00
Olivier Goffart
cabcdd890e Only run the CheckQuota job if the account is connected
We use another job to check the connection.
And this may cause wrong password failure as we are still in the wizzard

Fixes #1567
2014-03-17 10:35:43 +01:00
Olivier Goffart
0a5e691ba3 Remove debug output that might cause a crash
The account may not be finilized when this is called while the
wizzard is still running on first connection
2014-03-17 10:22:14 +01:00
Olivier Goffart
ba300c2fc1 Fix memory leak: Don't use raw pointers 2014-03-17 10:04:42 +01:00
Mr. Jenkins
c74e7550af [tx-robot] updated from transifex 2014-03-17 01:26:59 -04:00
Jenkins for ownCloud
0f385db314 [tx-robot] updated from transifex 2014-03-16 03:17:49 -04:00
Mr. Jenkins
2396831846 [tx-robot] updated from transifex 2014-03-16 02:19:35 -04:00
Mr. Jenkins
adb868a63b [tx-robot] updated from transifex 2014-03-15 01:26:42 -04:00
Olivier Goffart
62e95e540b Remove Progress::Kind
It's not really used,  one need to  look at the instruction of the items
being processed to see what happens
2014-03-14 18:43:23 +01:00
Olivier Goffart
d744b5e481 Fix the file count in the progress
And clear the ignored files between syncs
2014-03-14 18:29:23 +01:00
Olivier Goffart
f9b82d852c Do not destroy the settings dialog when it is hidden.
That way the protocol widget stay filled.
And the state is kept
2014-03-14 17:39:20 +01:00
Olivier Goffart
33289bde29 Merge remote-tracking branch 'origin/1.5'
Conflicts:
	CMakeLists.txt
	VERSION.cmake
	src/CMakeLists.txt
2014-03-14 17:27:50 +01:00
Olivier Goffart
9053662fe8 remove Progress::SyncProblem and the problem slots
They are merged into normal progress
2014-03-14 17:18:26 +01:00
Markus Goetz
07904e078a CSyncThread: Emit a signal for each file before propagate
This can be used to display info before the sync is happening
2014-03-14 14:08:32 +01:00
Olivier Goffart
aacc278583 Refactor the progress
Consider that there might be several files processed at the same time
2014-03-14 13:32:32 +01:00
Klaas Freitag
57aa86910c Add dependency on mingw32-sqlite, needed for make package 2014-03-13 14:02:48 +01:00
Mr. Jenkins
7071c895df [tx-robot] updated from transifex 2014-03-13 01:26:36 -04:00
Daniel Molkentin
87f3755b1f Deploy with Qt5 2014-03-13 00:52:01 +01:00
Daniel Molkentin
3f4bcbbd62 Find Qt5 version of QtKeychain when built with Qt5 2014-03-12 18:38:59 +01:00
Daniel Molkentin
955b932806 Qt5: QtLocation is not required 2014-03-12 18:23:45 +01:00
Daniel Molkentin
e7b6560c39 cmake: Remove debug 2014-03-12 18:20:45 +01:00
Daniel Molkentin
80e583c337 Error out if a Qt module is missing
Fixes #1487
2014-03-12 18:18:02 +01:00
Daniel Molkentin
bc3d298491 Find QtKeychain on multiarch Debian/Ubuntu 2014-03-12 18:17:43 +01:00
Daniel Molkentin
28cf9ce1a4 Properly abort if QtKeychain is not found
Fixes #1486
2014-03-12 17:55:30 +01:00
Markus Goetz
d5fd6309ed CMake: Fix target_link_libraries parameters 2014-03-12 15:03:11 +01:00
Markus Goetz
a2467b5dea CMake: Do options one directory above
This fixes linking when keychain was not desired.
2014-03-12 14:20:38 +01:00
Mr. Jenkins
f723d11d90 [tx-robot] updated from transifex 2014-03-12 01:25:59 -04:00
Denis Dzyubenko
aee4c06b8d Renamed a member variable to have underscore prefix for consistency 2014-03-11 20:34:00 +01:00
Denis Dzyubenko
89a4833cae Fixed a memory leak in FSEvents folderwatcher backend 2014-03-11 20:34:00 +01:00
Denis Dzyubenko
255d255217 Fixed ignored paths matching on OS X.
We now listen to changes to files and when an event is received we first match
the file name to the "ignored paths list" and only if the the file that was
changed didn't match figure out which directory needs to be synced.
2014-03-11 20:34:00 +01:00
Denis Dzyubenko
902de2dc93 Fixed a memory leak in FSEvents file system watcher 2014-03-11 20:34:00 +01:00
Denis Dzyubenko
f7c075099b Removed bogus commented out line 2014-03-11 20:34:00 +01:00
Markus Goetz
0bbcee7354 CMake: Fix else 2014-03-11 17:56:29 +01:00
Markus Goetz
8a18cf811e CMake: Fix warning 2014-03-11 17:33:45 +01:00
Markus Goetz
4e7e25c569 Improve libowncloudsync
* Introduce TokenCredentials
* Introduce static compiling
* Have compile flags for smaller compile
2014-03-11 17:05:44 +01:00
Markus Goetz
c24c97703a CMake: Ignore failure when working as submodule 2014-03-11 17:05:44 +01:00
Mr. Jenkins
de84e8012e [tx-robot] updated from transifex 2014-03-11 06:50:19 -04:00
Thomas Müller
f6ff20ca17 Switching to transifex.com 2014-03-11 11:46:50 +01:00
Thomas Müller
b7a85525cd Switching to transifex.com 2014-03-11 11:45:16 +01:00
Klaas Freitag
bc41e6bc99 Allow proper translation for sync activity through GuiLog.
This fixes bug #1550
2014-03-11 10:55:20 +01:00
Klaas Freitag
aa4e90acfc Put ocsync to a private library - WIP 2014-03-11 10:18:07 +01:00
Klaas Freitag
c8a8eb35fa Disable the folder if it is going to be removed. 2014-03-10 12:22:06 +01:00
Daniel Molkentin
2656cc70d1 1.5.3 final 2014-03-10 10:15:50 +01:00
Jenkins for ownCloud
4018338725 [tx-robot] updated from transifex 2014-03-10 02:06:43 -04:00
Mr. Jenkins
e33c1b2b75 [tx-robot] updated from transifex 2014-03-10 01:25:57 -04:00
Mr. Jenkins
75d6c26e2e [tx-robot] updated from transifex 2014-03-09 01:25:59 -05:00
Mr. Jenkins
7f2deaf722 [tx-robot] updated from transifex 2014-03-08 01:26:02 -05:00
Klaas Freitag
8bf2c54b56 Install include dirs app name aware. 2014-03-07 13:05:17 +01:00
Klaas Freitag
0c85100c93 Updated build instructions.
Conflicts:
	doc/building.rst
2014-03-07 10:02:51 +01:00
Jenkins for ownCloud
d617c40ee7 [tx-robot] updated from transifex 2014-03-07 02:07:26 -05:00
Mr. Jenkins
8aebbefb28 [tx-robot] updated from transifex 2014-03-07 01:26:50 -05:00
Olivier Goffart
7cab77e879 Call the start method assyncroniously
That was my intention, which is why i did not do a direct call to start.

This should fix issue #1536
2014-03-06 21:01:08 +01:00
Olivier Goffart
feb49b2768 Saner defaults 2014-03-06 20:34:11 +01:00
Olivier Goffart
4e25595520 Better error classification 2014-03-06 20:33:17 +01:00
Olivier Goffart
4aaa256b11 Do not beleive that the credidential are wrong when the job is cancelled
Otherwise, aborting the sync will make the client beleive the credidentials
are wrong.
2014-03-06 20:31:48 +01:00
Markus Goetz
630f61142a Proxy: Try to fix issue
See eb7074e9f0 for discussion
2014-03-06 17:48:18 +01:00
Olivier Goffart
ac393c6374 Do not sent more chunk and cancel the upload when the file change while uploading chunks 2014-03-06 16:04:32 +01:00
Olivier Goffart
114c8de814 Remove the check_csync_treewalk
because it runs csync_update which need to browse the owncloud directory
And there is no server
2014-03-06 15:30:36 +01:00
Olivier Goffart
5e012366ab Keep string translatable
(In french, one may want to add a space before the colon.
Other languages may want to change the order)

Also use the two argument version of arg() to avoid issues if the first
string contains a '%1' sign
2014-03-06 15:01:34 +01:00
Olivier Goffart
ed1294d668 Avoid double delete 2014-03-06 14:28:58 +01:00
Olivier Goffart
7f07385fd7 Remove check_csync_treewalk_remote
Since we removed the vio abstraction, we cannot use the file system anymore
as a remote.  and because we unfortunately can't use a real server,
just disable that test.
2014-03-06 14:24:53 +01:00
Olivier Goffart
ed2316a53f Add missing line break
(silent warning)
2014-03-06 14:10:42 +01:00
Olivier Goffart
e5a8cd4521 Merge branch '1.5'
Conflicts:
	VERSION.cmake
2014-03-06 14:10:08 +01:00
Olivier Goffart
3f3577d0b1 Merge pull request #1534 from owncloud/clarify-space-usage
Clarify space usage
2014-03-06 14:07:25 +01:00
Mr. Jenkins
950ffc6418 [tx-robot] updated from transifex 2014-03-06 01:26:40 -05:00
Klaas Freitag
f348499bbe For Windows, add the __USE_MINGW_ANSI_STDIO=1 switch 2014-03-05 15:39:49 +01:00
Jan-Christoph Borchardt
5ce4763868 move percent indicator of space usage to correct location 2014-03-05 12:55:32 +01:00
Jan-Christoph Borchardt
bafc90cfd8 clarify which space is used, fix #1517 2014-03-05 12:54:47 +01:00
Klaas Freitag
7a3abac833 Bump version to 1.5.3rc1 2014-03-05 10:49:58 +01:00
Mr. Jenkins
b5349b66c6 [tx-robot] updated from transifex 2014-03-05 01:26:40 -05:00
Markus Goetz
eb7074e9f0 csync: Don't free proxy settings on commit
Should fix #1502 and #1524
and #1459 and #1521
2014-03-04 18:44:52 +01:00
Klaas Freitag
66b152ac69 Remove left over member variables. 2014-03-03 18:12:12 +01:00
Olivier Goffart
6df00ad08c Only removes the password from the credidentials if it has been fetched before
Also only run the propfind job if the credidentials are readon, and fetch them
otherwise
2014-03-03 17:55:15 +01:00
Olivier Goffart
76b24ff00d Revert "Do not wipe the credentials from config for reconnect."
This reverts commit 9eb3452a71.

We need that or wrong password can never be changed
2014-03-03 17:21:20 +01:00
Olivier Goffart
60a1d50ec9 Keep the rentrency flag when asking the user for the password 2014-03-03 17:16:57 +01:00
Klaas Freitag
9eb3452a71 Do not wipe the credentials from config for reconnect.
This should fix bug #1491
2014-03-03 16:39:38 +01:00
Klaas Freitag
228de7eede Make the CheckServerJob ignoring credential fails. 2014-03-03 16:37:29 +01:00
Klaas Freitag
2164f5d9b7 Remove a superflous MessageBox. User is asked for Password instead. 2014-03-03 16:36:59 +01:00
Klaas Freitag
4240010046 Add method clearCookieJar which wipes QNAMs cookies. 2014-03-03 16:36:30 +01:00
Klaas Freitag
1eb0875518 Use the mirall config file for all Keychain jobs.
Also set the job as parent to get proper deletion of the
settings object.
2014-03-03 16:35:57 +01:00
Klaas Freitag
b8e52304bd Do proper initialization of _fetchJobInProgress.
That confused win32, since this flag was true very often.
2014-03-03 16:33:59 +01:00
Mr. Jenkins
8d2c43a9f0 [tx-robot] updated from transifex 2014-03-01 01:26:14 -05:00
Markus Goetz
6906b8d30c csync: Remove outdated tests 2014-02-28 16:43:15 +01:00
Olivier Goffart
0658802048 Fix layout of the network tab
Fixes #1491
2014-02-28 13:17:04 +01:00
Olivier Goffart
eeb68919bf Do not erase the username and password from the config if we never connected
If we never fetched the credidentials, the _user and _password will be empty,
we should therefore not try to save them because it would just erase them.

Version 1.5.2 always try to fetch the creds at startup.  But now we only
do it if we detect an internet connection
2014-02-28 12:51:06 +01:00
Olivier Goffart
9a60732542 Do not erase the full account config if an old version of the client stored the password 2014-02-28 12:51:06 +01:00
Daniel Molkentin
f8d996258e OS X: Make script more even robust 2014-02-28 11:16:25 +01:00
Daniel Molkentin
c8714be1d2 mac os sign script: quote all params 2014-02-28 10:23:02 +01:00
Markus Goetz
1c8f279214 csync: Remove more vio abstraction 2014-02-28 09:13:40 +01:00
Mr. Jenkins
0cc0eed8a8 [tx-robot] updated from transifex 2014-02-28 01:26:23 -05:00
Daniel Molkentin
36cd9d9ced Shibboleth: Move browser window to the offset of the setup wizard 2014-02-27 17:07:59 +01:00
Daniel Molkentin
9c70ee68d2 Mask password lineedit 2014-02-27 17:07:59 +01:00
Olivier Goffart
e809a59049 Remove spurious error message.
Sometimes 'success' is false without apparent reason.
Just remove the message
2014-02-27 17:03:42 +01:00
Olivier Goffart
96c535d712 Make the parrallel uploaded also check for problem in Shared 2014-02-27 14:13:22 +01:00
Markus Goetz
5d58a8164c csync: Remove get_etag 2014-02-27 14:03:17 +01:00
Markus Goetz
71cc74a0d6 csync: Remove csync_get_local_username 2014-02-27 13:55:34 +01:00
Markus Goetz
77d9256e03 csync: Remove more unneeded code 2014-02-27 13:52:30 +01:00
Markus Goetz
e7fb84a491 csync: Remove capabilities 2014-02-27 13:42:20 +01:00
Markus Goetz
a652fec5a0 csync: Remove more unused stuff 2014-02-27 13:33:22 +01:00
Markus Goetz
0d34a2bca5 csync: Remove unused vio stuff 2014-02-27 13:25:31 +01:00
Markus Goetz
a2e8bfd962 csync: Remove unix_extensions 2014-02-27 13:23:35 +01:00
Daniel Molkentin
33ae2eb19f Try to handle auth requests by a Shibboleth IdP 2014-02-27 13:18:53 +01:00
Markus Goetz
eff2427a03 csync: Remove time_sync_required 2014-02-27 13:12:21 +01:00
Olivier Goffart
d4fa955950 Don't fetch credidentials from application.cpp
They will be fetched by the connection validator after doing
the status.php check
2014-02-27 13:06:29 +01:00
Olivier Goffart
869793592d Merge branch '1.5'
Conflicts:
	VERSION.cmake
	src/mirall/owncloudpropagator.cpp
	src/mirall/owncloudpropagator.h
2014-02-27 11:40:34 +01:00
Mr. Jenkins
417dbcc9ac [tx-robot] updated from transifex 2014-02-27 01:26:23 -05:00
Daniel Molkentin
02bfb4f005 Amend ChangeLog 2014-02-26 15:08:12 +01:00
Daniel Molkentin
d4dd5afbe7 Revert "Make "Sign Out" forget the cookies"
This reverts commit 8607300195.

This approach is too dangerous for 1.5.2.
2014-02-26 15:05:15 +01:00
Olivier Goffart
8607300195 Make "Sign Out" forget the cookies
If we keep the cookies, next time we sign in, the entered password
does not matter as the server still think our session is logged in.
2014-02-26 13:23:52 +01:00
Olivier Goffart
e468ea2d68 Avoid re-entrency in HTTPCredidential::fetch
It is likely to re-enter if there is two jobs that asks for a password.

Example:
 1. log out
 2. restart the application
 3. enter a wrong password
 4. enter a wrong password again a few times
 5. enter the correct password
 6. it should must not prompt for the password again.

Because of the re-entrency, it was still prompting for the password several
times after the right password had been entered
2014-02-26 13:10:11 +01:00
Daniel Molkentin
05a1f7b1bb Another fix for the reconnect-logic 2014-02-26 11:26:50 +01:00
Daniel Molkentin
b8a4a2d2f7 Add ChangeLog 2014-02-25 18:11:04 +01:00
Markus Goetz
c7e70533a0 Shibboleth: Detect also QNAM redirects
If a QNAM job (e.g. Quota or ETag job) gets redirected,
we'll invalidate and then prompt to re-fetch the credentials
from the user.
(The keychain credentials will be wrong so they get deleted)
2014-02-25 14:22:55 +01:00
Daniel Molkentin
d4fa06c4e1 Fix potential crash in c_iconv on Mac OS X 2014-02-25 12:48:40 +01:00
Markus Goetz
065690c2ce Shibboleth: Have proper invalidation if timeout during sync 2014-02-25 09:33:28 +01:00
Jenkins for ownCloud
3cb6fc82dd [tx-robot] updated from transifex 2014-02-25 02:07:10 -05:00
Mr. Jenkins
7d398b20f2 [tx-robot] updated from transifex 2014-02-25 01:26:24 -05:00
Olivier Goffart
75cff87316 add missing copyright header 2014-02-24 19:32:41 +01:00
Markus Goetz
b56843ead2 Account: Fix Metatype registratition 2014-02-24 15:31:11 +01:00
Markus Goetz
51b5f3c9b2 Propfind Job: Print redirect URL in log 2014-02-24 15:20:49 +01:00
Daniel Molkentin
7f508c0718 Account needs qRegisterMetaType 2014-02-24 14:56:57 +01:00
Daniel Molkentin
45a7d4ff4c Fix Wizard when returning from later steps
We need to reset the credential type when
returning to the first page from later steps.
Otherwise, unfinished credential instances
and their NAM will try to fetch data, which
will fail with weird symptoms.
2014-02-24 14:56:57 +01:00
Daniel Molkentin
995e8938ad SSLButton: Fix certificate display 2014-02-24 14:56:56 +01:00
Olivier Goffart
1e43d1fa49 Add missing license headers in tests
LGPL for csync tests,  GPL for mirall tests
2014-02-24 11:08:58 +01:00
Mr. Jenkins
b03e49f492 [tx-robot] updated from transifex 2014-02-23 01:26:46 -05:00
Mr. Jenkins
3ed5f43e90 [tx-robot] updated from transifex 2014-02-22 01:26:39 -05:00
Daniel Molkentin
5c1d612761 Account settings: Set correct state icon right away 2014-02-21 21:02:35 +01:00
Olivier Goffart
f92cf3dee3 ammand last commit
We should not close the directory twice in the normal case
2014-02-21 19:09:38 +01:00
Olivier Goffart
a71cb1d3ef Fix potential crash in case of abort while update:
We need to reset ctx->remote.read_from_db  BEFORE caling vio_closedir
Otherwise, it may interpret the handle as a 'bdtree' handle instead of
a owncloud handle.

Should fix #1442
2014-02-21 16:57:24 +01:00
Markus Goetz
4630244b51 Windows: Special case csync_vio_local_stat
By not calling tstat _and_ GetFileInformationByHandle, but only
GetFileInformationByHandle, we can save some precious msec in the local
update phase.
2014-02-21 14:15:34 +01:00
Olivier Goffart
cd13144415 Fix adding a file in a Shared readonly directory
It should not create a conflict in that case.

Also when editing a file, create a conflict using the normal way,
after downloading the file and checking it is not the same
2014-02-21 10:53:09 +01:00
Daniel Molkentin
67c07c4daa bump to 1.5.2 2014-02-21 09:56:04 +01:00
Mr. Jenkins
7ec534067e [tx-robot] updated from transifex 2014-02-21 01:26:44 -05:00
Daniel Molkentin
8e7290b450 Fix online state handling
Before this commit, parts of mirall were aware of the state, but not all.
Also, the state was not set back to Connected again in all cases. This
commit introduces the following changes:

- Make QuotaInfo a member of Account
- QuotaInfo and Folder (EtagJob) can put the client in disconnected mode
- FolderMan now disables etag-polling when offline

Fixes #1459
Fixes #1441
2014-02-20 23:24:03 +01:00
Daniel Molkentin
b51a722347 Fix German translation for branch 2014-02-20 23:23:46 +01:00
Daniel Molkentin
30d0e2fee8 Remove stray debug 2014-02-20 23:23:46 +01:00
dragotin
c38c3ce6e2 Merge pull request #1450 from owncloud/remove-file-string
remove 'File' word from notification
2014-02-20 17:31:57 +01:00
Klaas Freitag
04647b0d61 Handle empty passwords returning from the keychain read procedure.
This is needed if the keychain does not have the an QSettings based
fallback any more.
2014-02-20 16:53:38 +01:00
Klaas Freitag
e991bcd112 Do not store the password in the config file. Erase it if it is there.
This fixes bug #1458
2014-02-20 14:35:02 +01:00
Mr. Jenkins
aa02ce2481 [tx-robot] updated from transifex 2014-02-20 03:17:59 -05:00
Markus Goetz
6a55324261 OwncloudCmd: Struct needs to be zeroed
Else the --silent was always true on Windows where memory did not get
zeroed.
2014-02-19 17:50:15 +01:00
Markus Goetz
f1fa1f125d Fix previous commit 2014-02-19 17:39:11 +01:00
Klaas Freitag
82afb3b613 If a file in a read only share was edited, restore and create conflict.
This fixes bug #1448
2014-02-19 17:21:43 +01:00
Markus Goetz
141f005c34 Ignore conflict files all the time
The OwncloudCmd currently does not load the exclude files.
It is safer to just always ignore conflict files.
2014-02-19 17:16:10 +01:00
Mr. Jenkins
e32ca49c31 [tx-robot] updated from transifex 2014-02-19 09:42:10 -05:00
Olivier Goffart
f5e16540a1 Merge branch '1.5'
Conflicts:
	src/mirall/owncloudpropagator.cpp
2014-02-19 15:38:03 +01:00
Daniel Molkentin
726b41b0c7 Shib: Close browser window after login 2014-02-19 15:34:43 +01:00
Olivier Goffart
e74f0f2854 Better support when user remove or rename the Shared directory 2014-02-19 15:23:36 +01:00
Markus Goetz
65ffe53c20 Register metatype at better place 2014-02-19 14:53:31 +01:00
Markus Goetz
06f2989ac8 Fix build on Qt4
Unfortunately I had to remove the 'static'
2014-02-19 13:29:00 +01:00
Olivier Goffart
a51f050a08 More fix for moving shared directories
Abort a directory job if the first job fails

Also make sure the jobs are in the directory job of their destination paths
2014-02-19 13:08:35 +01:00
Markus Goetz
399b08ad40 OwncloudCmd: Register a meta type 2014-02-19 12:00:38 +01:00
Olivier Goffart
5b561e4462 Use AUTOMOC
This should also fix the compilation of owncloudcmd.cpp
Since we have a Q_OBJECT in a .cpp file and qt_wrap_cpp would not generate
the moc file.
2014-02-19 11:55:08 +01:00
Olivier Goffart
1be322579c Merge remote-tracking branch 'origin/master'
Conflicts:
	src/owncloudcmd/owncloudcmd.cpp
2014-02-19 11:19:56 +01:00
Markus Goetz
b7c7c9f3eb Accountsettings: Fix warning 2014-02-19 10:59:57 +01:00
Markus Goetz
9237293cc0 OwncloudCmd: Fixup URL
Allow users to specify owncloud(s) or http(s)
2014-02-19 10:57:29 +01:00
Markus Goetz
63083a558b OwncloudCmd: Print update phase duration values 2014-02-19 10:51:04 +01:00
Olivier Goffart
d4bd327fef Merge branch 'parallel_upload'
Conflicts:
	src/mirall/csyncthread.cpp
2014-02-19 10:24:34 +01:00
Olivier Goffart
2de288c5f3 Merge remote-tracking branch 'origin/1.5'
Conflicts:
	VERSION.cmake
2014-02-19 10:21:23 +01:00
Markus Goetz
fcc0e89044 Update phase: Allow benchmarking / progress update 2014-02-18 21:41:20 +01:00
Jan-Christoph Borchardt
8267b9e590 remove 'File' word from notification 2014-02-18 18:42:49 +01:00
Jan-Christoph Borchardt
5a68e5f58d remove superfluous tooltip from server address input field 2014-02-18 17:21:25 +01:00
Klaas Freitag
e4965ab06b Mac FS watcher: ignore events from the same process 2014-02-18 16:28:25 +01:00
Olivier Goffart
496d900fee Refactor the renameReplace in its own function
Share a bit more code between legacy and qnam download job
2014-02-18 14:05:52 +01:00
Olivier Goffart
58bda69f8b PropagateRemoteRename is not a legacy job
move it back to propagatorjobs.cpp
2014-02-18 13:52:40 +01:00
Olivier Goffart
89b5ddec56 Fix the logs in the update phase
Since csync use a thread local variable for the logs, we need
to reset it when we enter the update thread
2014-02-18 13:48:13 +01:00
Olivier Goffart
f7419094f3 move the file system helpers in their own file 2014-02-18 12:54:40 +01:00
Olivier Goffart
432f377750 Use the legacy jobs when using bandwidth limiting
Or if a environement variable is set
2014-02-18 12:24:35 +01:00
Olivier Goffart
c32beb957d Move the jobs around between files
Renamed owncloudpropagator_qnam  to propagator_qnam
Move the jobs in propagatorjobs.cpp
Move the neon jobs that have a qnam equivalent into propagator_legacy.cpp and
rename the jobs accordingly
2014-02-18 12:21:05 +01:00
Jenkins for ownCloud
ee7c8d3c94 [tx-robot] updated from transifex 2014-02-18 06:14:46 -05:00
Mr. Jenkins
3a15502a62 [tx-robot] updated from transifex 2014-02-18 04:23:22 -05:00
Denis Dzyubenko
a51cb0982b Added Mac-specific settings dialog that looks more native 2014-02-18 02:22:16 +01:00
hefee
1b03dc759b fixing typo
GNU Public License->  GNU General Public License
2014-02-17 22:42:51 +01:00
Olivier Goffart
a39caa1cda Make owncloudcmd work with the parallel upload/download
Also make it work when there syncing a remote subfolder
2014-02-17 17:31:03 +01:00
Olivier Goffart
a4ee8d6f6f Remove unused function 2014-02-17 15:25:47 +01:00
Olivier Goffart
b35e38f80f Parallel download 2014-02-17 13:48:56 +01:00
Jenkins for ownCloud
e34122ad54 [tx-robot] updated from transifex 2014-02-15 07:19:10 -05:00
Mr. Jenkins
03824baba4 [tx-robot] updated from transifex 2014-02-15 06:22:15 -05:00
Mr. Jenkins
34b86cb0db [tx-robot] updated from transifex 2014-02-14 05:08:22 -05:00
Daniel Molkentin
d56c913fe4 v1.5.1 ChangeLog 2014-02-13 18:02:52 +01:00
Daniel Molkentin
3234e48cd0 final version 2014-02-13 17:37:49 +01:00
Klaas Freitag
e134ae22ac Disable explorer.exe integration on WinXP 2014-02-13 17:21:30 +01:00
Klaas Freitag
86e90451fa Removed not expected whitespace. 2014-02-13 17:21:30 +01:00
Daniel Molkentin
e66757335b Theme: Update general disclaimer. 2014-02-13 17:04:52 +01:00
Daniel Molkentin
393ac82c6a Update documentation for 1.5.1 2014-02-13 17:04:51 +01:00
Markus Goetz
372f8b3426 OS X: Document how to disable the auto updater 2014-02-13 14:11:04 +01:00
Olivier Goffart
7b6269b4bf Fix chunking
- Do not start them in parallel, start them in sequence instead, as they are quite
  and there are already other jobs running in parallel normaly
- Do not load the fill into memory
- Support resuming
2014-02-13 14:02:05 +01:00
Markus Goetz
8b9cd432b5 OS X: Read system-wide plist in /Library
Needed for http://doc.owncloud.org/desktop/1.5/autoupdate.html#preventing-auto-updates
2014-02-13 12:52:57 +01:00
Jenkins for ownCloud
842c6c0e9e [tx-robot] updated from transifex 2014-02-13 03:19:10 -05:00
Mr. Jenkins
a81d7823a9 [tx-robot] updated from transifex 2014-02-13 03:09:11 -05:00
Daniel Molkentin
aa26fc1e80 Bump version 2014-02-12 21:20:54 +01:00
Daniel Molkentin
beb9752f09 Merge remote-tracking branch 'origin/1.5' 2014-02-12 21:17:06 +01:00
Daniel Molkentin
1eb6e163de Add documentation on auto update feature 2014-02-12 21:08:28 +01:00
Daniel Molkentin
1875a93a48 RC2 2014-02-12 18:17:57 +01:00
Daniel Molkentin
fd40a25030 Use the appName (which is the short name) instead of the full length name
The full length name is allowed to change (or should be)
2014-02-12 18:06:01 +01:00
Daniel Molkentin
05ae467cd5 Remove debug 2014-02-12 18:05:28 +01:00
Daniel Molkentin
4db7b5f2a7 NSIS: accept /noautoupdate 2014-02-12 17:57:50 +01:00
Daniel Molkentin
958253bb2b Respect skipUpdate policy from global config files and windows policy. 2014-02-12 17:55:05 +01:00
Daniel Molkentin
bcf73cfc40 SSLButton: Omit arrow on Windows which can't display it 2014-02-12 17:55:05 +01:00
Daniel Molkentin
f79ecfe001 more verbose ssl error logging 2014-02-12 17:54:45 +01:00
Olivier Goffart
a4442ebb40 Merge branch 'master' into parallel_upload
Conflicts:
	src/mirall/owncloudpropagator.cpp
	src/mirall/owncloudpropagator.h
2014-02-12 16:50:45 +01:00
Olivier Goffart
93f31fa9d7 Merge branch '1.5' 2014-02-12 16:44:24 +01:00
Olivier Goffart
f35b1f8a2b Only starts 6 jobs in parallel 2014-02-12 16:33:55 +01:00
Olivier Goffart
6db8daabf7 Make abort work even when there are parallel uploads 2014-02-12 16:33:55 +01:00
Olivier Goffart
a677f97b7f Fix removing and renaming directories from the Shared directory 2014-02-12 13:44:55 +01:00
Olivier Goffart
1a9a14bdec Fix problems if a file is moved, and another file is created with the same name 2014-02-12 13:44:32 +01:00
Olivier Goffart
7ae40e13ec Update the docs now that csync is included 2014-02-12 11:32:19 +01:00
Olivier Goffart
a5379ef2aa make BUILD_WITH_QT4 off by default
Rationale:
When Qt5 is not found, the script will automatically use Qt4.
However, without this change, when Qt4 is not found, it will not
try to find Qt5 because BUILD_WITH_QT4 is ON by default forbidding the
use of Qt5 even if it is installed.

Also, other packages default to Qt5 including qtkeychain

See also issue #1418
2014-02-12 11:25:08 +01:00
Olivier Goffart
01c0a3c099 use Utility::sleep 2014-02-12 11:16:27 +01:00
Markus Goetz
153aa31da2 OS X: Workaround Qt5 QNAM bug
This made the sign out/sign in handling not work.

(cherry picked from commit 104cf680a6)
2014-02-12 11:14:43 +01:00
Jenkins for ownCloud
9815ccb760 [tx-robot] updated from transifex 2014-02-12 02:14:56 -05:00
Mr. Jenkins
814f40c1c7 [tx-robot] updated from transifex 2014-02-12 02:05:48 -05:00
Markus Goetz
19c128ba12 Update building.rst 2014-02-11 11:45:00 +01:00
Thomas Müller
0322a44be5 Adding quotes - necessary for themes containing spaces in APPLICATION_NAME 2014-02-11 11:24:10 +01:00
Thomas Müller
60ca442728 Adding quotes - necessary for themes containing spaces in APPLICATION_NAME 2014-02-11 11:23:34 +01:00
Jenkins for ownCloud
3ffd7034c9 [tx-robot] updated from transifex 2014-02-11 02:07:14 -05:00
Mr. Jenkins
95469a9886 [tx-robot] updated from transifex 2014-02-11 01:26:45 -05:00
Markus Goetz
8c9a65635f Propagator: Fix compilation
It is still protected on Qt4
2014-02-10 15:46:09 +01:00
Markus Goetz
104cf680a6 OS X: Workaround Qt5 QNAM bug
This made the sign out/sign in handling not work.
2014-02-10 15:42:46 +01:00
Klaas Freitag
b84253054a Read configuration from /etc/ownCloud/t1.cfg 2014-02-10 15:08:40 +01:00
Markus Goetz
43345dc236 Icon: Make png2ico / windres failure non-fatal 2014-02-10 14:36:32 +01:00
Markus Goetz
79d14f0760 Propagator: Use cross platform sleep function 2014-02-10 14:34:48 +01:00
Klaas Freitag
6387777c18 Added chunking for the new uploading. 2014-02-10 13:00:22 +01:00
Mr. Jenkins
1e9c508c92 [tx-robot] updated from transifex 2014-02-10 06:17:19 -05:00
Jenkins for ownCloud
88e9014dad [tx-robot] updated from transifex 2014-02-09 04:30:28 -05:00
Mr. Jenkins
313ad56d11 [tx-robot] updated from transifex 2014-02-09 04:20:08 -05:00
Jenkins for ownCloud
8152b7ebcf [tx-robot] updated from transifex 2014-02-08 02:21:31 -05:00
Mr. Jenkins
e36d314218 [tx-robot] updated from transifex 2014-02-08 01:26:49 -05:00
Klaas Freitag
593d528b6a Removed unused function. 2014-02-07 11:57:10 +01:00
Klaas Freitag
3649869650 Optimize restoring of the remote tree from database.
If the etag of a directory hasn't changed, the content for the csync
tree can be restored from database. The code doing that is now optimized
so that this does not take so long any more.
2014-02-07 11:53:58 +01:00
Klaas Freitag
41a4f1fc37 Only wait half a second before the next folder sync is started. 2014-02-07 11:53:58 +01:00
Daniel Molkentin
5a6a8b504c Mac OS: Build fix 2014-02-06 22:32:17 +01:00
Daniel Molkentin
97345447ab Updater: Unify Sparkle&non-Sparkle URLs
...now that we have the support on the server-side.
2014-02-06 18:56:33 +01:00
Olivier Goffart
bb378902ae Also force an update of the etag in case of renames
Imagine we have a file:
  foo/bar/moo
if we do     mv 'foo' 'foo2' and that we issue a MOVE on the server
and will update the entry 'foo' in the database with the new etag
If we write the etag of foo but not the etag of the sub item, when
we read from db on the next sync, we will miss them and beleive they
have been removed on the server
2014-02-06 17:56:27 +01:00
Olivier Goffart
8f1494f8f2 Report an error if fetching the etag fails
Very important in case of renames, else, if the server did not perform
the rename, we may end up deleting the files
2014-02-06 17:56:27 +01:00
Daniel Molkentin
4ae66b8b20 ShibbolethCredetials: Try to avoid re-auth
...by storing the shib cookie in key chain
2014-02-06 13:02:01 +01:00
Daniel Molkentin
ccb45bfea6 Move code from HTTPCredentials to more generic locations
This is a preparation to make them usable from the Shibboleth
credentials class.
2014-02-06 13:02:01 +01:00
Daniel Molkentin
bee5940c42 Credentials: Remove unused fetchFromUser methods 2014-02-06 13:02:01 +01:00
Olivier Goffart
f67d2e6418 Start all the jobs in parallel 2014-02-06 12:11:45 +01:00
Olivier Goffart
9a6275a5e3 use QNAM for the PUT
Not yet supported:
 - chunking
 - if the file changes while uploading
 - aborting
 - owncloudcmd  (because of the dependency to the account and the credidentials)
2014-02-06 11:50:16 +01:00
Olivier Goffart
2d9c0b6c31 Move CSyncThread in the main thread, and just do the neon jobs in a thread
It is important because then we can do assynchronious job that needs
QNAM in the main thread
2014-02-05 20:18:03 +01:00
Olivier Goffart
ee3df45fd8 remove csync_lock
It is not used anymore for a long time
2014-02-05 17:31:34 +01:00
Olivier Goffart
49562ca3b6 Remove unused members 2014-02-05 16:40:56 +01:00
Daniel Molkentin
33ab854922 SslErrorDialog: Ensure to run into a timeout while showing the dialog 2014-02-05 14:18:31 +01:00
Thomas Müller
fdf73fe539 - Replace undeclared variables:
- PageReinstall_OLD_MUI_HEADER_TEXT_SUBTITLE
  - PageReinstall_OLD_Field_2
  - PageReinstall_OLD_Field_3
  - REVISION
- README.md updated - calling bin/l10n.sh was missing

This commit includes updated translations from transifex.
2014-02-05 12:01:36 +01:00
Jenkins for ownCloud
3480cb4432 [tx-robot] updated from transifex 2014-02-05 02:07:17 -05:00
Mr. Jenkins
25ee44dd69 [tx-robot] updated from transifex 2014-02-05 01:57:23 -05:00
Markus Goetz
1471e15674 Sparkle: Add more delegate methods 2014-02-04 18:43:49 +01:00
Markus Goetz
034c3ae017 Sparkle: Sample RSS
The real thing will be stored on owncloud.com somewhere.
2014-02-04 17:37:01 +01:00
Markus Goetz
e001e70816 Sparkle: Get it working 2014-02-04 17:37:01 +01:00
Olivier Goffart
4ade023b96 Find another way to ignore the csync journal from the file watcher 2014-02-04 16:46:14 +01:00
Klaas Freitag
8711cf07af Set mirall version to 1.5.1rc1 2014-02-04 16:23:44 +01:00
Klaas Freitag
8e7e2dded8 Bump csync version. 2014-02-04 16:23:44 +01:00
Olivier Goffart
ec266054be Don't use QFileInfo to get the last modified time.
We can use the _modtime, since normaly we just set the the modtime
of the file to this time.

The problem is that Qt does follow symlinks (FILE_FLAG_OPEN_REPARSE_POINT)
And therefore was causing problem with symbolic links.

 Fixes #1307
2014-02-04 16:17:58 +01:00
Olivier Goffart
324214d072 fix the 'Sign In' menu entry 2014-02-04 15:06:17 +01:00
Klaas Freitag
ae5c9a29f6 Detect renames and removes in read only Shared directory, restore files.
This fixes bug #1386
2014-02-04 15:03:06 +01:00
Klaas Freitag
72a6b00919 Add some usage hints. 2014-02-04 15:03:06 +01:00
Olivier Goffart
e06cfe06fe FolderWatcher: ignore the csync journal 2014-02-04 14:57:25 +01:00
Daniel Molkentin
086694f284 Fix Qt5: Tests require Xml Module 2014-02-04 13:12:13 +01:00
Olivier Goffart
d2a41342e1 Better error message when the write permission are missing in the local directory
Fixes #1394
2014-02-04 11:10:22 +01:00
Markus Goetz
6f960d406e Qt5: Use same path for config as Qt4 2014-02-04 10:02:28 +01:00
Daniel Molkentin
c19978bdc4 Fix Qt5 jenkins build failure 2014-02-04 08:50:45 +01:00
Daniel Molkentin
924e7d4e39 Mac OS: Make icns generation work when building with Qt 5 2014-02-04 08:50:45 +01:00
Markus Goetz
0c0b3f8580 Update building.rst 2014-02-04 08:40:28 +01:00
Mr. Jenkins
fa7a1b606c [tx-robot] updated from transifex 2014-02-04 01:25:54 -05:00
Markus Goetz
325360c011 REAMDE: Use 1.5 doc, not 1.2 2014-02-03 20:18:04 +01:00
Markus Goetz
aab621523b Update building.rst 2014-02-03 20:12:36 +01:00
Markus Goetz
fdc8050e3d Folder Wizard: Re-evaluate after local folder changed 2014-02-03 18:19:25 +01:00
Markus Goetz
62f5b0ebac Folder Wizard: Make it more clear that we mean a remote folder 2014-02-03 17:27:54 +01:00
Markus Goetz
11c368f0bc Sparkle: Fix compilation if not found 2014-02-03 16:31:24 +01:00
Daniel Molkentin
19e7c4f66f NSISUpdater: Fix logic to invoke updater on non-explicit start 2014-02-03 13:46:20 +01:00
Jenkins for ownCloud
cf7b77e2bf [tx-robot] updated from transifex 2014-02-03 02:20:25 -05:00
Mr. Jenkins
7fc3c9a7db [tx-robot] updated from transifex 2014-02-03 01:26:59 -05:00
Daniel Molkentin
44e09892f4 Remove cmake warning 2014-02-02 22:59:08 +01:00
Klaas Freitag
971caca5e8 Implement change of the network throttling during a running sync run. 2014-02-02 12:51:19 +01:00
Klaas Freitag
08d08e1f29 SAFE_FREE added as result to valgrind check. 2014-02-02 12:51:19 +01:00
Jenkins for ownCloud
35f5c1f3a7 [tx-robot] updated from transifex 2014-02-02 02:07:45 -05:00
Mr. Jenkins
7b858d0d45 [tx-robot] updated from transifex 2014-02-02 01:27:00 -05:00
Daniel Molkentin
c2f3cfa4b5 Amendment to last commit 2014-01-31 14:53:20 +01:00
Daniel Molkentin
52971c27cf Updater: More refinements 2014-01-31 14:49:10 +01:00
Daniel Molkentin
b3683976ca Updater: Fix corner cases related to failed auto-updates
- Don't re-download updates whom's auto-install has clearly failed before
- Don't signal newly available auto-upgrade if it has failed once
- Remove downloaded update after (un)successful auto-update
- Remove as many temporary keys after an (un)successful auto-update
2014-01-31 12:42:00 +01:00
Daniel Molkentin
4c6e0b5c07 SSL Button fixes
- Use OU as display name if CN is empty (often true for CA/interm. certs)
- Handle trust anchors in intermediate chain gracefully
2014-01-31 10:35:35 +01:00
Daniel Molkentin
4e0cf7c822 Fix win32 build 2014-01-31 09:35:43 +01:00
Daniel Molkentin
93db6ca6ab Properly install cmake in OS X app bundle 2014-01-30 22:09:37 +01:00
Daniel Molkentin
528d434c1f Amendment to last commit 2014-01-30 13:07:32 +01:00
Daniel Molkentin
cfdc6395d8 Find sparkle the first time around 2014-01-30 12:57:33 +01:00
Daniel Molkentin
2f81999d6c Fix OS X build 2014-01-30 12:16:09 +01:00
Klaas Freitag
225123951d Make compile under MacOSX 2014-01-30 11:17:14 +01:00
Daniel Molkentin
dfa1dfaa7d AutoRaise SSLButton 2014-01-30 09:53:00 +01:00
Daniel Molkentin
74db151427 SSLButton: remove superflous extra argument 2014-01-30 09:53:00 +01:00
Jenkins for ownCloud
e38e1be3a7 [tx-robot] updated from transifex 2014-01-30 02:07:17 -05:00
Mr. Jenkins
7ada84f201 [tx-robot] updated from transifex 2014-01-30 01:26:33 -05:00
Daniel Molkentin
cb8131c382 Remove cmake message 2014-01-29 12:16:21 +01:00
Daniel Molkentin
ff569603f5 Updater: More tests 2014-01-29 12:01:35 +01:00
Olivier Goffart
6540f54512 Don't use QDateTime::toTime_t or QDateTime::fromTime_t
They only take an uint, and time_t is 64bit.
This breaks when date are before 1970

Fixes #1380
2014-01-29 11:47:13 +01:00
Daniel Molkentin
1aa050bea9 Add Tests, make Updater classes into a static lib 2014-01-29 10:43:21 +01:00
Daniel Molkentin
ca5f96e1bb Updater: More refactoring towards testability 2014-01-29 10:43:21 +01:00
Jenkins for ownCloud
53554075fa [tx-robot] updated from transifex 2014-01-29 02:07:21 -05:00
Mr. Jenkins
182d1ac4b0 [tx-robot] updated from transifex 2014-01-29 01:26:41 -05:00
Daniel Molkentin
d361bda922 Fix wording 2014-01-28 16:23:39 +01:00
Daniel Molkentin
62f4e813ee Settings: Allow opening links in updater label 2014-01-28 16:23:24 +01:00
Daniel Molkentin
505e0e9632 Fix build on Win32
regression introduced by ec9efd78
2014-01-28 15:49:19 +01:00
Daniel Molkentin
fa960b522d Make Updater URL overridable 2014-01-28 15:44:40 +01:00
Olivier Goffart
50aa31d192 winEventFilter does not exist on Qt5 2014-01-28 15:30:58 +01:00
Daniel Molkentin
c8006f1163 Compile fix 2014-01-28 13:42:09 +01:00
Daniel Molkentin
637565cca1 Updater: Don't overwrite unannouned (newer) versions 2014-01-28 13:36:16 +01:00
Daniel Molkentin
a22884d164 Show message if the updater times out 2014-01-28 13:36:16 +01:00
Daniel Molkentin
58fd57fdcd Make update URL a compile time option 2014-01-28 13:36:16 +01:00
Daniel Molkentin
2bee51c101 Updater: Logic fix 2014-01-28 13:36:16 +01:00
Olivier Goffart
2ed5dd178a Fix fetching the user name in the wizzard 2014-01-28 13:18:21 +01:00
Olivier Goffart
803cb5d015 fix signal slot connection 2014-01-28 12:45:41 +01:00
Olivier Goffart
e31000d759 Handle the fact that the user might cancel the password dialog
Add a new state of the account in which the credidentials are invalid,
but we are still trying to get the user enter his password.

Make sure that fetched() is ALWAYS emitted after we call fetch on the
credidentials, so we can know that the user pressed cancel. In that
case, go in the SignedOut state.

Fixes #1353
2014-01-28 11:49:09 +01:00
Daniel Molkentin
f408593d27 more build fixes 2014-01-28 11:01:05 +01:00
Daniel Molkentin
6d21058ca1 build fixes 2014-01-28 10:34:56 +01:00
Daniel Molkentin
1da94e5e2b Updater: More refactoring
- Renamed GenericUpdater -> OCUpdater
- Make more API Private
- Split up in classes to reduce complexity:
  - PassiveUpdateNotifier subclass for Linux
  - NSISUpdater for Windows
2014-01-28 10:01:23 +01:00
Jenkins for ownCloud
618833140c [tx-robot] updated from transifex 2014-01-28 02:28:26 -05:00
Mr. Jenkins
ef574c2134 [tx-robot] updated from transifex 2014-01-28 02:20:47 -05:00
Olivier Goffart
397763ba61 Fix HttpCredentials::invalidateToken to invalidate the password in the config file 2014-01-27 16:57:10 +01:00
Daniel Molkentin
72ae44b8b1 Updater: relaunch Client after update 2014-01-27 13:04:27 +01:00
Daniel Molkentin
a700605c41 NSIS: Make string changes from 77610eb184 persistent 2014-01-27 13:04:27 +01:00
Daniel Molkentin
e2a77f8e73 NSIS: persist e774bbacde 2014-01-27 13:04:27 +01:00
Olivier Goffart
e6be6fc695 Remove dead code 2014-01-27 12:44:46 +01:00
Olivier Goffart
18966bf061 Add missing include 2014-01-27 12:36:52 +01:00
Olivier Goffart
bf95509dbe Do not include "private" header from "public" header 2014-01-27 12:31:54 +01:00
Olivier Goffart
50b9a7b191 remove unused include from header file 2014-01-27 11:58:50 +01:00
Daniel Molkentin
9b09a2ee32 Merge pull request #1375 from owncloud/l10n-installer-readme
L10n installer readme
2014-01-27 02:03:47 -08:00
Thomas Müller
e2c64e4513 Update README.md 2014-01-27 10:59:39 +01:00
Thomas Müller
8f26706466 Readme added on how to work with translations in windows installer. 2014-01-27 10:57:33 +01:00
Jenkins for ownCloud
c327ffe8d8 [tx-robot] updated from transifex 2014-01-27 03:16:58 -05:00
Mr. Jenkins
a90512c825 [tx-robot] updated from transifex 2014-01-27 02:20:52 -05:00
Olivier Goffart
94190b73ff fix test compilation 2014-01-26 19:05:43 +01:00
Olivier Goffart
2eb9962f4c Adapt the test to the changes in the exclude list
The exclude list was removed from csync in commit
f32d901653
Adapt the test.
2014-01-26 18:58:56 +01:00
Olivier Goffart
5119d5d366 Remove csync_config
commit c585c73044 removed the use of it.
So remove this code completely as it is no longer used
2014-01-26 18:39:47 +01:00
Mr. Jenkins
da93038a78 [tx-robot] updated from transifex 2014-01-26 02:14:59 -05:00
Mr. Jenkins
ea5a0ab1bc [tx-robot] updated from transifex 2014-01-25 01:27:09 -05:00
Olivier Goffart
08c03d19b9 Only one quote should be enough
Should fix #1295
2014-01-24 20:28:17 +01:00
Daniel Molkentin
7762e80c60 Bump to 1.5.1 2014-01-24 14:24:54 +01:00
Klaas Freitag
f2fc866cc4 Set the library and bin install path to cmake standard path. 2014-01-24 13:43:05 +01:00
Klaas Freitag
f32d901653 Remove ocsyncs config which is unused in the owncloud client. 2014-01-24 13:43:05 +01:00
Klaas Freitag
c585c73044 Do not load the config file and csync exclude list. 2014-01-24 13:43:05 +01:00
Klaas Freitag
0b680ef90e Removed the csync documentation as it is not longer used here. 2014-01-24 13:43:05 +01:00
Daniel Molkentin
03b449e081 CPack: revert part of previous commit 2014-01-24 12:27:08 +01:00
Daniel Molkentin
8fd881a176 Remove obsolete CPack Options 2014-01-24 12:03:31 +01:00
Daniel Molkentin
42f5aa072d Link against Sparkle if available 2014-01-24 11:58:11 +01:00
Daniel Molkentin
86eb68df7f csync_rename.cc: Remove superflous semicolon 2014-01-24 10:50:33 +01:00
Mr. Jenkins
b8d13e985f [tx-robot] updated from transifex 2014-01-24 01:27:07 -05:00
Daniel Molkentin
815efb69d7 NSIS: implement /launch for updater 2014-01-23 17:17:13 +01:00
Daniel Molkentin
1d32fb74f9 NSIS: Don't try to log 2014-01-23 16:15:46 +01:00
Klaas Freitag
9c300b83bd Add FindINotify cmake module. 2014-01-23 16:15:29 +01:00
Klaas Freitag
688d394576 Check for INotify if compiling for Linuxe and friends 2014-01-23 16:05:35 +01:00
Klaas Freitag
04d8c82dbd Make NEON_WITH_LFS conditional to avoid build warnings. 2014-01-23 16:05:35 +01:00
Daniel Molkentin
f98db9ac9d NSIS: find DLL from csync copy within cmake 2014-01-23 15:55:55 +01:00
Klaas Freitag
d868df3b9b Fix windows compilation after having merged in csync. 2014-01-23 15:19:27 +01:00
Klaas Freitag
3d6718315c Fix Include dirs and add tests. 2014-01-23 13:23:27 +01:00
Klaas Freitag
5841cf4020 Add and remove watches for folders independent from sync dir.
Before it was just in case of download.
2014-01-23 13:23:27 +01:00
Klaas Freitag
e9e132c06c Make use of the new linux folder watcher. 2014-01-23 13:23:27 +01:00
Klaas Freitag
e3723fcfc2 Add a new folder watcher implementation for Linux. 2014-01-23 13:23:27 +01:00
Jenkins for ownCloud
a664dc5f1d [tx-robot] updated from transifex 2014-01-23 02:07:01 -05:00
Mr. Jenkins
cdc24eb437 [tx-robot] updated from transifex 2014-01-23 01:26:22 -05:00
Daniel Molkentin
484ad28cd6 Merge pull request #1357 from owncloud/nsis_fixes
NSIS preparations for upgrade mode
2014-01-22 07:20:53 -08:00
Daniel Molkentin
8485a7fd30 Fix typo 2014-01-22 16:09:22 +01:00
Mr. Jenkins
93a28e7a95 [tx-robot] updated from transifex 2014-01-22 01:26:24 -05:00
Daniel Molkentin
83e628b9f7 Revert "fix test"
This reverts commit f35e2efd4e.
2014-01-22 00:00:34 +01:00
Daniel Molkentin
129aef5beb Revert "Formatting hashes with : seems to be out of fashion"
This reverts commit c52e3a0732.
2014-01-22 00:00:34 +01:00
Daniel Molkentin
f35e2efd4e fix test 2014-01-21 16:34:52 +01:00
Daniel Molkentin
54c0c4057b Improve SSL detail display 2014-01-21 15:54:06 +01:00
Daniel Molkentin
c52e3a0732 Formatting hashes with : seems to be out of fashion 2014-01-21 15:25:51 +01:00
Klaas Freitag
699f6a62f8 Do not set sync-state to Prepare in setSyncEnabled().
This method is also called if the sync was disabled due to
network problems and such, ie. from the ETag change check.
In that case, we do not want to go to the Prepare state as
we not neccessarily want to have the folder synced now.

This fixes the problem that the folders were resynced way
to often which we had in master for a couple of days now.
2014-01-21 15:25:05 +01:00
Olivier Goffart
61f3b839ab Fix compilation in Qt5
Some Qt SSL function used to return QString now return a QStringList.

By having  QStringList(...).join(':')   the code will compile both
if the ... is a QString or a QStringList. So the code will still
compile in Qt4.
2014-01-21 15:09:12 +01:00
Olivier Goffart
29590fa00b Revert "Commented opening of files from the activity view as it does not work."
This reverts commit c50b0a995b.

This was only broken on windows and probabyl fixed by commit 23f52bcd
2014-01-21 13:01:05 +01:00
Olivier Goffart
0c33fc6e8a Do not block while launching the explorer on linux
Fixes #1338
2014-01-21 13:01:05 +01:00
Daniel Molkentin
c4c36d641b Remove garbage include 2014-01-21 12:34:51 +01:00
Klaas Freitag
a1d6cf7d4d Fix typo in documentation 2014-01-21 12:20:23 +01:00
Klaas Freitag
4d8e65cfd0 Hide useless logging that indicates an error. 2014-01-21 12:10:49 +01:00
Daniel Molkentin
8303c8f909 Mac OS Bundle file: bump copyright year 2014-01-21 11:23:46 +01:00
Daniel Molkentin
2370060ac5 Implement Certificate Information Widget
Currently used in status window. Before, there was no way to know
about the current certificate situation.

Fixes #44
2014-01-21 09:21:33 +01:00
Mr. Jenkins
77e09e786e [tx-robot] updated from transifex 2014-01-21 01:26:23 -05:00
Daniel Molkentin
d4bb0e44cd Wizard: Gracefully fall back to HTTP if HTTPS connection fails
If the connection fails, the user is now being asked if he does
agree to a new attempt via an unencrypted connection. If he complies,
the connection will be reattempted using plain HTTP.

Fixes #1356
2014-01-20 19:46:09 +01:00
Daniel Molkentin
9b9b62d4e3 Wizard: Prepend 'https://' if no scheme is set
First part of fix for #1356
2014-01-20 17:53:46 +01:00
Daniel Molkentin
2780dae569 Setup Wizard: Fix http(s) label size 2014-01-20 17:41:57 +01:00
Daniel Molkentin
562513d5a5 Propagator: Don't pass arbitrary strings as formating string
Not a security issue since this code was never in any release.
2014-01-20 17:22:29 +01:00
Daniel Molkentin
a2e9353296 Fix copy & paste problem in Ignore List Editor
Fixes #1355
2014-01-20 17:08:30 +01:00
Olivier Goffart
7f76fcff5e Do not account the size of deleted or renamed file in the progress
Fixes #1360
2014-01-20 17:00:28 +01:00
Olivier Goffart
0afbb264e0 cleanup mutex usage in CSyncThread
The only method which is used from another thread is abort().
So the only thing that needs protection is that function, and the
function which may race with.  Which are csync_request_abort which
should not race with csync_resume
2014-01-20 17:00:28 +01:00
Klaas Freitag
05b81bc7d8 rename csync/doc to csync/csync_doc to satisfy cmake.
CMake throws a warning if there are two subdirs with the same name.
2014-01-20 16:19:30 +01:00
Klaas Freitag
7bb7b1d73b Remove wipeAllJournals after rebase mistake. 2014-01-20 16:19:30 +01:00
Klaas Freitag
0eebc0e5be Add folder to schedule queue in setupFolders method.
This fixes bug #1352
2014-01-20 16:19:30 +01:00
Klaas Freitag
a6b0ccfa12 Remove explicit logging. 2014-01-20 16:19:30 +01:00
Klaas Freitag
ce077f97c6 Checks if the folder from map is still defined.
I saw a crash were a folder which was deleted was dereferenced later
in the Quota check slot. There the folder pointer returned from folder
map was zero.
2014-01-20 16:19:29 +01:00
Klaas Freitag
c705a6360d Rather removeFolder than addFolder to watcher (typo fix). 2014-01-20 16:19:29 +01:00
Olivier Goffart
19a19978b7 fix csync BINARYDIR and SOURCEDIR 2014-01-20 16:16:29 +01:00
Olivier Goffart
e7e319e3f5 Fix compilation of the owncloudpropagator test
This test does nothing, remove problematic line"
2014-01-20 15:44:43 +01:00
Olivier Goffart
be874e36da remove unused variable and functions 2014-01-20 15:10:53 +01:00
Olivier Goffart
3a9c485515 Fix crashwhile removing a folder
in a QMap, Accessing an entry that does not exists create the null entry
We should not use operator[] if we are not sure the folder indeed exists
2014-01-20 14:59:35 +01:00
Olivier Goffart
4df1d7d893 Remove unused variables 2014-01-20 14:59:23 +01:00
Olivier Goffart
bbf3a64c02 Fix crash.
toUtf8() returns a temporary QByteArray wuich is only valid until the
end of the statement (the next ';').  QByteArray::data() returns a
pointer to the QByteArray's data which is only valid if the QByteArray
is valid.
Keeping the char* is therefore wrong.
2014-01-20 14:24:20 +01:00
Olivier Goffart
b93efbaefe EIO is not necessarily a proxy error.
Should change error message such as
   "CSync failed to connect through a proxy. 500 Internal Server Error"
To:
   "CSync processing step update failed. 500 Internal Server Error"
2014-01-20 13:58:54 +01:00
Olivier Goffart
316aade340 Merge branch 'csync_merge'
Conflicts:
	src/CMakeLists.txt
2014-01-20 13:27:33 +01:00
Mr. Jenkins
309908687f [tx-robot] updated from transifex 2014-01-19 01:26:16 -05:00
Jenkins for ownCloud
3f1199fcf3 [tx-robot] updated from transifex 2014-01-18 02:07:00 -05:00
Mr. Jenkins
6f488e1988 [tx-robot] updated from transifex 2014-01-18 01:26:14 -05:00
Daniel Molkentin
28c4cd9caa NSIS: Cleanup: Use MEMENTO defines where possible 2014-01-18 00:06:58 +01:00
Daniel Molkentin
2a0f28208c NSIS: Don't install link to Desktop of a link by the same name already exists
Unfortunately, we cannot determine the target path for the .lnk file
without pulling in closed source plugins (or write our own), a length
I am not willing to go in the light of MSI.

Fixes #356
2014-01-18 00:01:44 +01:00
Daniel Molkentin
77610eb184 NSIS: Only remove sections that we actually installed
We can query the NSIS Memento extension for that.
2014-01-17 23:51:52 +01:00
Daniel Molkentin
4c7ddb769a NSIS: INSTALL_PATH has never been used
Remove it to avoid confusion
2014-01-17 12:11:19 +01:00
Daniel Molkentin
91345d9e25 NSIS: Fix transations in uninstaller
Before, we could not show custom strings at all
2014-01-17 12:11:19 +01:00
Jenkins for ownCloud
45ed37025a [tx-robot] updated from transifex 2014-01-17 02:07:01 -05:00
Mr. Jenkins
cfa2c3acdf [tx-robot] updated from transifex 2014-01-17 01:26:23 -05:00
Klaas Freitag
45c75f722c Show an indicator if the url is encrypted or not in connection wizard.
Fixes bug #1350
2014-01-16 17:40:46 +01:00
Olivier Goffart
6257ed6605 Make sure that the jobs have the Q_OBJECT macro.
so tr()  works there
2014-01-16 14:06:17 +01:00
Klaas Freitag
0455d96462 Fix untranslated error messages. 2014-01-16 13:04:57 +01:00
Klaas Freitag
d2e8043a4a Use ClientProxy that reads the client config in commandline client.
Fixes mirall#1347
2014-01-16 12:52:11 +01:00
Klaas Freitag
98689d48f1 Check if configuration actually exists.
If not, set System Proxy as default.
2014-01-16 12:52:11 +01:00
Klaas Freitag
ec9efd7894 Make use of the new Proxy handling class. 2014-01-16 12:52:11 +01:00
Klaas Freitag
671100ce5c Add a class ClientProxy that handles proxy setting for Qt and csync. 2014-01-16 12:52:11 +01:00
Jenkins for ownCloud
843ea13553 [tx-robot] updated from transifex 2014-01-16 02:08:15 -05:00
Mr. Jenkins
8c37e7742a [tx-robot] updated from transifex 2014-01-16 01:27:36 -05:00
Daniel Molkentin
96633307c0 Move owncloudcmd into Bundle on OS X
Fixes #1300
2014-01-15 18:14:37 +01:00
Daniel Molkentin
2009fbc886 Deploy all of Sparkle manually 2014-01-15 17:52:19 +01:00
Daniel Molkentin
4caa038de6 More sparkle fixes 2014-01-15 16:01:35 +01:00
Daniel Molkentin
f5dc2b3127 Compile on OS X 2014-01-15 12:45:43 +01:00
Olivier Goffart
c7227297af Make it compile with the merge of csync mirall 2014-01-15 12:20:03 +01:00
Daniel Molkentin
a9d2079bc4 Use only global variables in translation 2014-01-15 11:50:54 +01:00
Jenkins for ownCloud
954ebcca2e [tx-robot] updated from transifex 2014-01-15 05:25:51 -05:00
Daniel Molkentin
dc9f145a24 New Updater for Windows, passive notification on Linux, Sparkle on Mac 2014-01-15 11:09:31 +01:00
Mr. Jenkins
93239cbdca [tx-robot] updated from transifex 2014-01-15 01:58:37 -05:00
Klaas Freitag
55da857e59 A bit of refactoring, add useful names and set the alias properly.
The alias field is now set from the last component of the picked
local dir. Also some tooltips were added.
2014-01-14 17:40:42 +01:00
Klaas Freitag
aba1252e60 Remove inotify from cmake files. 2014-01-14 15:06:06 +01:00
Mr. Jenkins
890c0eb885 [tx-robot] updated from transifex 2014-01-14 01:56:32 -05:00
Klaas Freitag
561f32cede License header cleanups. 2014-01-13 16:16:19 +01:00
Klaas Freitag
e0d8d93b50 Removed obsolete inotify class of folderwatcher. 2014-01-13 16:07:52 +01:00
Klaas Freitag
3d8505d7f4 Adopt mac folderwatcher to the new folderwatcher. 2014-01-13 16:00:41 +01:00
Klaas Freitag
18171862ac Unify folderwatcher private constructor. 2014-01-13 15:29:05 +01:00
Klaas Freitag
0e5858b1aa Add a pathIsIgnored method to the folderwatcher. 2014-01-13 15:29:05 +01:00
Klaas Freitag
5482ad1fd3 Remove event buffering from watcher, other refactoring. 2014-01-13 15:28:56 +01:00
Olivier Goffart
924e0e3242 Merge csync inside the mirall repository 2014-01-13 14:43:14 +01:00
Olivier Goffart
bf7ca60bec Move csync in order to merge it with mirall 2014-01-13 14:39:50 +01:00
Klaas Freitag
f9080c59ab Remove FolderWatcher from Folder and move to FolderMan. 2014-01-13 11:30:27 +01:00
Klaas Freitag
a12288ff21 Use folderwatcher based on Qt for Linux. 2014-01-13 11:30:27 +01:00
Jenkins for ownCloud
dcc5a8b02b [tx-robot] updated from transifex 2014-01-13 02:06:59 -05:00
Jenkins for ownCloud
db87f9926a [tx-robot] updated from transifex 2014-01-11 02:06:59 -05:00
Mr. Jenkins
dc076890a7 [tx-robot] updated from transifex 2014-01-11 01:26:12 -05:00
Klaas Freitag
d5b8d24f91 Add NoSymLink tag to the filter specification.
Should finally fix bug #1331
2014-01-10 09:09:22 +01:00
Klaas Freitag
9da06f10f6 Removed unused event interval getter/setter. 2014-01-10 09:09:22 +01:00
Jenkins for ownCloud
3923911368 [tx-robot] updated from transifex 2014-01-10 02:07:01 -05:00
Mr. Jenkins
b24691b0e4 [tx-robot] updated from transifex 2014-01-10 01:26:14 -05:00
Olivier Goffart
ebee52ea8a Merge branch '1.5' 2014-01-09 12:32:08 +01:00
Jenkins for ownCloud
78b1d3c347 [tx-robot] updated from transifex 2014-01-09 02:06:59 -05:00
Mr. Jenkins
bf4f6d78b8 [tx-robot] updated from transifex 2014-01-09 01:26:14 -05:00
Klaas Freitag
e5804b5d12 Use a more Qt'ish folder recursing method, remove unused class.
Added unit test.
2014-01-08 14:36:42 +01:00
Klaas Freitag
e5d43c2b9c Add a utility function to write a random file. 2014-01-08 14:36:42 +01:00
Klaas Freitag
a522cebf0c Add missing switch case. 2014-01-08 14:36:42 +01:00
Olivier Goffart
1bc4089d95 Fix hiding temporary files on windows
tmpFileName is a relative path, and we need an absolute path to
pass to the function that hides the files
2014-01-08 13:33:16 +01:00
Olivier Goffart
d931e0bcc2 Test that permissions are kept
(issue #820)
2014-01-08 13:19:28 +01:00
Olivier Goffart
b7b06a8795 Preserve the permission of the file we download
Related to issue #820
2014-01-08 13:17:35 +01:00
Olivier Goffart
b8090a134d Add test for issue 1329 2014-01-08 12:55:58 +01:00
Olivier Goffart
4006e490f3 Do not write the removed folder on the DB
Should fix #1329
2014-01-08 12:51:42 +01:00
Daniel Molkentin
f37f5ccf69 Display version in Mac OS Bundle again 2014-01-08 11:15:28 +01:00
Jenkins for ownCloud
4e2b2274a4 [tx-robot] updated from transifex 2014-01-08 02:07:00 -05:00
Mr. Jenkins
1d6d915bd2 [tx-robot] updated from transifex 2014-01-08 01:26:12 -05:00
Klaas Freitag
273463daf4 Fix progress for the case that the source file changes during upload.
If the source file changes, the overall transmission size is not longer
correct. Fixed that by pushing the change over the previously calculated
size to csyncthread. Also set the mtime and size in the item object in
propagator to avoid doublicate uploading.
2014-01-07 15:42:21 +01:00
Klaas Freitag
7da84dbe44 Check on timer member is zero. 2014-01-07 10:30:41 +01:00
Jenkins for ownCloud
24644164ca [tx-robot] updated from transifex 2014-01-07 02:07:16 -05:00
Mr. Jenkins
474c63fb8f [tx-robot] updated from transifex 2014-01-07 01:26:31 -05:00
Jenkins for ownCloud
3a1a3f7282 [tx-robot] updated from transifex 2014-01-06 02:07:16 -05:00
Mr. Jenkins
a80ed93e76 [tx-robot] updated from transifex 2014-01-06 01:26:44 -05:00
Mr. Jenkins
91ecbb25f2 [tx-robot] updated from transifex 2014-01-04 01:26:32 -05:00
Mr. Jenkins
4e9198ddc6 [tx-robot] updated from transifex 2014-01-02 01:26:56 -05:00
Olivier Goffart
b022209356 Merge pull request #1323 from scop/master
Don't discard user CXXFLAGS, append to them instead.
2013-12-31 06:47:19 -08:00
Mr. Jenkins
2cc3cbe522 [tx-robot] updated from transifex 2013-12-31 01:26:15 -05:00
hefee
4e0496f74d respect XDG_CONFIG_HOME for getting user config dir.
Under linux the XDG Base Directory Specification define different
enviroment variables where to store what.
2013-12-31 02:10:44 +01:00
Jenkins for ownCloud
c3ecc5b224 [tx-robot] updated from transifex 2013-12-30 02:06:58 -05:00
Ville Skyttä
1c9a4784c7 Don't discard user CXXFLAGS, append to them instead. 2013-12-30 00:30:48 +02:00
Jenkins for ownCloud
9f1d89e330 [tx-robot] updated from transifex 2013-12-29 02:06:59 -05:00
Mr. Jenkins
b7ce760b65 [tx-robot] updated from transifex 2013-12-29 01:26:15 -05:00
Jenkins for ownCloud
27ce6cc6fe [tx-robot] updated from transifex 2013-12-28 02:07:01 -05:00
Mr. Jenkins
134a34183f [tx-robot] updated from transifex 2013-12-28 01:26:13 -05:00
Mr. Jenkins
b0ded64de6 [tx-robot] updated from transifex 2013-12-27 01:26:13 -05:00
Jenkins for ownCloud
9745248c81 [tx-robot] updated from transifex 2013-12-26 02:06:59 -05:00
Mr. Jenkins
fcbfd7fdc4 [tx-robot] updated from transifex 2013-12-26 01:26:14 -05:00
Jenkins for ownCloud
02461f7ff7 [tx-robot] updated from transifex 2013-12-25 02:06:58 -05:00
Jenkins for ownCloud
26c8dbf14c [tx-robot] updated from transifex 2013-12-24 02:06:58 -05:00
Mr. Jenkins
1f6e355b4b [tx-robot] updated from transifex 2013-12-24 01:26:12 -05:00
Mr. Jenkins
c6e0a18a5c [tx-robot] updated from transifex 2013-12-22 01:26:47 -05:00
Daniel Molkentin
c9c56ee55a Merge pull request #1313 from csware/close-button
Close dialog if button was clicked not just pressed
2013-12-21 00:09:11 -08:00
Jenkins for ownCloud
22bcda65ce [tx-robot] updated from transifex 2013-12-21 02:07:31 -05:00
Mr. Jenkins
b896f6a434 [tx-robot] updated from transifex 2013-12-21 01:26:54 -05:00
Sven Strickroth
8743be6f11 Close dialog if button was clicked not just pressed
Signed-off-by: Sven Strickroth <email@cs-ware.de>
2013-12-21 03:36:43 +01:00
Klaas Freitag
38cc564aed Show proper sync status in tray, incl. Pause status. 2013-12-20 15:16:52 +01:00
dragotin
8b9a8ebeaf Merge pull request #1308 from owncloud/fix-installer-fallbacl-en-1.5
fixes #1305 - thanks very much @deepdiver1975
2013-12-20 03:11:22 -08:00
Thomas Müller
900397c05e fixes #1305
Installer will fallback to English in case there are no translations available for the current system language
2013-12-20 10:02:30 +01:00
Mr. Jenkins
cd9e3d27c3 [tx-robot] updated from transifex 2013-12-20 01:26:39 -05:00
Klaas Freitag
72b479c1e0 Added proxy support to owncloudcmd. 2013-12-19 16:48:10 +01:00
Klaas Freitag
d17be6f1ff Do the neon ssl initialization.
This fixes bug #1298 and also probably #1297. More tests needed.
2013-12-19 13:33:31 +01:00
Jenkins for ownCloud
1df295cb32 [tx-robot] updated from transifex 2013-12-19 02:07:19 -05:00
Mr. Jenkins
d3dba72ef9 [tx-robot] updated from transifex 2013-12-19 01:26:30 -05:00
Mr. Jenkins
042044f7c6 [tx-robot] updated from transifex 2013-12-17 16:41:13 -05:00
Daniel Molkentin
a7eddb2985 Merge pull request #1296 from owncloud/add-turkish
Adding Turkish translations
2013-12-17 06:34:11 -08:00
Klaas Freitag
c50b0a995b Commented opening of files from the activity view as it does not work.
See https://github.com/owncloud/mirall/issues/1295
2013-12-17 14:16:25 +01:00
Jenkins for ownCloud
45710b7e6f [tx-robot] updated from transifex 2013-12-17 07:39:56 -05:00
Klaas Freitag
66c0a3b448 Read password from old settings if exist. 2013-12-17 12:56:01 +01:00
Mr. Jenkins
e7651c0a90 [tx-robot] updated from transifex 2013-12-17 05:47:55 -05:00
Klaas Freitag
23f52bcd56 Fix open the explorer code. 2013-12-17 10:16:25 +01:00
Thomas Müller
0fc8a8de18 Adding Turkish translations
fixes #1271
2013-12-16 11:13:38 +01:00
Klaas Freitag
68c70ab5b6 Handle return value of asprintf to satisfy picky compiler. 2013-12-16 09:49:44 +01:00
Olivier Goffart
291811e321 Merge pull request #1292 from Pro/master
Corrected typo and fixed parent folder detection
2013-12-16 00:35:39 -08:00
Stefan Profanter
a93b9ee33a Fixed parent folder detection if sibling directory starts with same name
Since `cleanPath` removes all the trailing slashes (84bfbd4cb0:src/corelib/io/qdir.cpp#L2118) the check at line 138 wrongly assumed that

`D:\Test` is a parent folder of `D:\TestFoo`.
2013-12-15 16:22:53 +01:00
Stefan Profanter
b1ba05dda8 Update mirall_de.ts
Typo
2013-12-15 15:51:38 +01:00
Jenkins for ownCloud
c311083d7b [tx-robot] updated from transifex 2013-12-13 15:39:01 -05:00
Daniel Molkentin
bef180a7bc Remove UTF-8 BOM, confuses old GCCs 2013-12-13 20:27:08 +01:00
Mr. Jenkins
b892a18eef [tx-robot] updated from transifex 2013-12-13 13:42:47 -05:00
Daniel Molkentin
58035a2f4a Final version 2013-12-12 18:20:45 +01:00
Daniel Molkentin
99a4de6741 Add ChangeLog 2013-12-12 18:01:03 +01:00
Klaas Freitag
612b099b77 Added changelog, bumped version to 0.91.4 2013-12-12 17:43:10 +01:00
Daniel Molkentin
9010e1015e Better fix for override urls 2013-12-12 17:17:07 +01:00
Klaas Freitag
9bf15178f9 Fix button states in account widget 2013-12-12 16:38:45 +01:00
Daniel Molkentin
5b2c734fe5 Respect the override URL properly 2013-12-12 16:20:01 +01:00
Klaas Freitag
bc5f7d899a Save and restore activity view state.
Fixes bug #1256
2013-12-12 15:16:43 +01:00
Klaas Freitag
ec77ecfd0f Show error reason for blacklisted files in sync activity. 2013-12-12 12:21:24 +01:00
Klaas Freitag
09745c7f75 Fix: Allow to retry sync also for fatal err conditions.
Otherwise there would not  have been a chance to resync for example data
that was Forbidden because of a read only share.

Also removed some commented code.
2013-12-12 11:39:05 +01:00
Daniel Molkentin
9ffb33293c QuotaInfo: Keep polling quota if a previous request fails 2013-12-12 10:53:51 +01:00
Daniel Molkentin
93d75932ac NSIS: fix c&p error. 2013-12-12 10:46:37 +01:00
Daniel Molkentin
8491d95ca4 NSIS: English must be enumerated, too
Fixes empty strings in installer.
2013-12-12 10:46:13 +01:00
Daniel Molkentin
e774bbacde NSIS: Can only use global variables in translation strings
fixes #1273
2013-12-12 10:44:05 +01:00
Klaas Freitag
131945b14b Doc fixes about ignore files. 2013-12-11 22:08:24 +01:00
Klaas Freitag
93d250c49b Add NE_LFS define to config.h.in 2013-12-11 20:52:17 +01:00
Olivier Goffart
f5c46d481c Tru to get NE_LFS properly
The csync and mirall build system are slightly different so this might help
2013-12-11 20:44:46 +01:00
Jenkins for ownCloud
81773e53b1 [tx-robot] updated from transifex 2013-12-11 13:40:28 -05:00
Klaas Freitag
4f7fe64309 Bump version to rc1 2013-12-11 19:01:53 +01:00
Klaas Freitag
b8e7c7f271 Bump version to 0.91.3 2013-12-11 19:00:39 +01:00
Klaas Freitag
4153c0de08 LGPL License header for perl test module. 2013-12-11 18:41:23 +01:00
hefee
7e2dec5228 fixing typo 2013-12-11 18:31:31 +01:00
hefee
2cbdb35aac Get rid of PATH_MAX, that is not available under FreeBSD. 2013-12-11 18:31:11 +01:00
Mr. Jenkins
342937ccd1 [tx-robot] updated from transifex 2013-12-11 12:30:51 -05:00
hefee
b578558866 compile ocsync for FreeBSD. 2013-12-11 18:30:08 +01:00
Klaas Freitag
aa213eeafb Do not check for the ETag in case the HTTP request connected. 2013-12-11 13:51:38 +01:00
Daniel Molkentin
76a60e889c Start timer only after the last quota request was answered 2013-12-11 13:48:31 +01:00
Olivier Goffart
fa195eb1e8 Logger: Initialize all variables
To avoid valgrind warnings in owncloudcmd
2013-12-11 13:23:42 +01:00
Klaas Freitag
b68e721f05 Do not error out on ETag if the status klass is != 2. 2013-12-11 12:59:11 +01:00
Klaas Freitag
bbfb2f2a60 Do not force resync if status is SyncResult::Problem. 2013-12-11 12:59:11 +01:00
Olivier Goffart
ba8fa9a403 Do not 'normalize' etag when we read from db
Normalize removes the quote and the -gzip.
We assume that the normalized etag is in the DB
This is how it worked in mirall 1.4

We added normalization in case there is a -gzip saved to the database.
But since this was broken in 1.4 anyway, it will just force a
re-download if -gzip was added. (1.4 anyway is broken with such
server and always do redownload all the time)
2013-12-11 12:50:45 +01:00
Olivier Goffart
bf309f83f4 Don't keep the temporary file if the transfer fails because of a wrong etag
The downloaded file is corrupted, remove it.
2013-12-11 12:48:11 +01:00
Olivier Goffart
1b4e2becb3 Use csync_normalize_etag everywhere.
Technically, we don't need to strip '-gzip' from the etag comming from
the propfind, but it is better to be consistant.
2013-12-11 11:35:55 +01:00
Thomas Müller
f05e998430 Translation SectionGroup Shortcuts 2013-12-10 18:08:07 +01:00
Daniel Molkentin
80d202c630 Fix build on Win32 2013-12-10 17:19:36 +01:00
Olivier Goffart
47308cdc01 define NE_LFS from cmake 2013-12-10 16:20:49 +01:00
Daniel Molkentin
03e9a06c7d Fix build 2013-12-10 16:07:49 +01:00
Thomas Müller
370cf45357 fixing add button behavior in single folder mode 2013-12-10 15:59:59 +01:00
Thomas Müller
638b62a3ae prevent crash on 'add folder' 2013-12-10 15:59:59 +01:00
Klaas Freitag
6707e93f31 Add NE_LFS define for correct size of ne_off_t 2013-12-10 15:28:02 +01:00
Olivier Goffart
0360babe02 usleep is not working on windows, use QThread::usleep
Shoud fix #1082
2013-12-10 14:03:01 +01:00
Klaas Freitag
a743f804f5 Ignore another sqlite journal tmp name that shows up on win32. 2013-12-10 13:19:57 +01:00
Klaas Freitag
4b42743a2a Better documentation of file ignore patterns. 2013-12-10 13:19:49 +01:00
Olivier Goffart
b6e4575dea Do not initialize all the application if another instance is running
This fixes a crash becasue we were constructing the systemtray and then
destroying it too early before the systemtray could initilize itself.
(This work around a bug in QSystemTray which crashes if it is destroyed
before it is registered to the X11 server)
2013-12-10 12:48:59 +01:00
Daniel Molkentin
ebfe2c793e Remove leftover file 2013-12-10 12:20:43 +01:00
Daniel Molkentin
f9ba3bc22d Merge pull request #1264 from owncloud/l10n-installer-2
Multi-lingual installer
2013-12-10 03:10:56 -08:00
Klaas Freitag
bdf36f58a8 Set errno and error message if neon errors in fetch_resource_list.
This at least shows proper error messages to the user, as described
in mirall#451
2013-12-10 11:58:55 +01:00
Thomas Müller
13f5d29c3c No language selection dialog - use Windows GUI langaage, which is default as of today with NSIS 2013-12-10 11:10:48 +01:00
Klaas Freitag
07889528c4 Added changelog for csnyc 0.91.0 .. 0.91.2 2013-12-10 10:47:41 +01:00
Jenkins for ownCloud
082a60e067 [tx-robot] updated from transifex 2013-12-10 04:00:10 -05:00
Thomas Müller
d82a9423d6 adding Turkish translation to installer 2013-12-10 09:59:23 +01:00
Klaas Freitag
ffd09757cb Remove ignoring pattern for progressdatabase. 2013-12-10 09:25:27 +01:00
Thomas Müller
b41feebcdd Multi-lingual installer 2013-12-10 00:43:58 +01:00
Daniel Molkentin
9b2f9e3188 Push version to 0.91.2 for oCC 1.5.0 beta4 2013-12-09 21:44:28 +01:00
Daniel Molkentin
2cf7ba91c1 Don't install headers on OS X 2013-12-09 20:39:55 +01:00
hefee
f8478ac27b Fixing typos 2013-12-09 20:17:56 +01:00
hefee
b092a8cee3 Add deleted Changelog entry for 1.4.2 2013-12-09 20:15:29 +01:00
Olivier Goffart
bb2f221edf Fix broken slot connection
The slot was renamed.
2013-12-09 19:19:49 +01:00
Daniel Molkentin
dd323bc296 Don't invariably set variables that could be also set externally
We can't use cached variables here, since at least the suffix
may change at any  time, and it needs to take precedence over
any cached content, which cmake doesn't seem to allow for.
2013-12-09 19:03:22 +01:00
Daniel Molkentin
31989d23a6 Adjust Windows and Mac binaries package names 2013-12-09 17:41:41 +01:00
Daniel Molkentin
1291ffaf02 Small adjustments to the last commit 2013-12-09 17:16:42 +01:00
Olivier Goffart
89d1e2d924 When reconfiguring, we need to clear the _currentSyncFolder
Else, if we reconfigure when the folder is syncing, it may be impossible to
sync again.
This happens for example when changing the password when the folder is
syncing
2013-12-09 17:16:04 +01:00
Klaas Freitag
857ef33056 Use proper email in license header. 2013-12-09 17:02:17 +01:00
Daniel Molkentin
f5e8efd435 Add build number into versioning scheme
This is an enabler to improve update experience
2013-12-09 16:39:13 +01:00
Olivier Goffart
e5edb8e2c7 Fix opening the explorer with a selected file on windows.
Should Fix #1249
2013-12-09 16:13:48 +01:00
Klaas Freitag
22608f13ca Symlink detection for Win32.
This fixes https://github.com/owncloud/mirall/issues/1259
2013-12-09 15:19:50 +01:00
Klaas Freitag
f6f513cf45 Better check if the path variable is defined. 2013-12-09 14:08:28 +01:00
Mr. Jenkins
93ac78fd75 [tx-robot] updated from transifex 2013-12-09 06:41:11 -05:00
Olivier Goffart
7300f10f87 Do not recurse into ignored directory
Fix mirall issue 1260
2013-12-09 10:34:20 +01:00
Klaas Freitag
5f31d13236 Install headers for owncloudsync 2013-12-08 08:55:18 +01:00
Mr. Jenkins
ae69a24f5c [tx-robot] updated from transifex 2013-12-07 21:27:41 -05:00
Klaas Freitag
fc986b0ab8 If item is a directory, remove its contents from the database as well.
Fixes bug #1257
2013-12-06 16:38:43 +01:00
Klaas Freitag
c5e435f9bd Let recursive removal also remove the top dir. 2013-12-06 16:37:30 +01:00
Klaas Freitag
599451d250 Unchanged files still count as files. 2013-12-06 16:37:01 +01:00
Klaas Freitag
af78f1996c Set action string as tooltip 2013-12-06 15:50:14 +01:00
Klaas Freitag
41d5445980 Display rename-target in sync protocol action column. 2013-12-06 15:07:25 +01:00
Klaas Freitag
e5afd8b901 Maintain the file type correctly. 2013-12-06 14:11:51 +01:00
Klaas Freitag
d99f5c5ddb Set the symlink error message only for links. 2013-12-06 14:06:38 +01:00
Klaas Freitag
6fad20d5fc Show local MOVE operations only for top level directory instead for all
files.

This fixes bug mirall#1240
2013-12-06 12:32:26 +01:00
Mr. Jenkins
7662a60111 [tx-robot] updated from transifex 2013-12-05 21:24:22 -05:00
Daniel Molkentin
dff17ec08e A different user constitutes a different account
Fixes #1231
2013-12-05 19:03:40 +01:00
Daniel Molkentin
df5a72eb38 Resize wizard if advanced options are required
Fixes #1130
2013-12-05 17:43:57 +01:00
Olivier Goffart
fa9d9c9909 Maybe we need to destroy the decompress context before the request.
Possibly fix the issue #1229
2013-12-05 16:51:39 +01:00
Daniel Molkentin
a0d1dc8807 Avoid horizontal scrollbar
...by intproducing more tooltips and set eliding to center elide
You can still force a scrollbar, but it's not there by default
and the center eliding makes pathes more meaningful

Fixes #1213
2013-12-05 16:42:07 +01:00
Klaas Freitag
9e2f6c0258 Close the sync journal if a folder gets removed.
This fixes bug #1252
2013-12-05 16:06:46 +01:00
Daniel Molkentin
ee2efbb071 Fix for c3dc84c58f.
This resulted in the wizard not coming up the second time around
because it wasn't destructed properly.

Also fix a comment.
2013-12-05 16:00:32 +01:00
Olivier Goffart
000f7d320e Add test that directories are properly moved
Even when they just had been modified or added
2013-12-05 15:34:39 +01:00
Klaas Freitag
8fd921f796 Rather use unit64_t than ino_t which causes trouble on win32.
This fixes https://github.com/owncloud/mirall/issues/1239
2013-12-05 12:49:01 +01:00
Mr. Jenkins
8bc532705f [tx-robot] updated from transifex 2013-12-04 17:05:31 -05:00
Daniel Molkentin
c3dc84c58f Don't close setup wizard when the initial sync run is started
Fixes regression over 1.4.2
2013-12-04 20:26:18 +01:00
Daniel Molkentin
72b0f4e573 Add man page for owncloudcmd
Fixes #1234
2013-12-04 20:07:05 +01:00
Klaas Freitag
861de89e9c Add translatable error messages for individual file errors.
The error messages coming out of the csync updater and were
string based before which could not be translated.
2013-12-04 12:19:38 +01:00
Klaas Freitag
553c8d6658 Remove error string from file_status struct and replace by CSYNC_STATUS
That way we can translate the error states through miralls i18n
mechanisms.
2013-12-04 12:18:09 +01:00
Klaas Freitag
a6dfc0a83e Refactoring, pick proper method name. 2013-12-04 11:36:24 +01:00
Klaas Freitag
859f776440 Set proper enable state of blacklist button after the dialog was opened.
Also set proper tooltips.
2013-12-04 11:32:46 +01:00
Klaas Freitag
4b7f75059a Fixed check for SQL command successs. 2013-12-04 10:31:05 +01:00
Klaas Freitag
b3620e320b Avoid a comparison warning on win32 2013-12-03 17:09:57 +01:00
Klaas Freitag
883576cb95 Fix Win32 move file operation. 2013-12-03 17:07:42 +01:00
Daniel Molkentin
62ec7aa9c5 Add file forgotten in last commit 2013-12-03 16:24:17 +01:00
Daniel Molkentin
99fc570267 Replace Q_OS_WIN32 by Q_OS_WIN
Fixes #1238
2013-12-03 16:23:49 +01:00
Olivier Goffart
1f5c4bde14 Fix windows rename of temporary files 2013-12-03 16:10:44 +01:00
Klaas Freitag
138fec678c Push version to 0.91.1 for oCC 1.5.0 beta2 2013-12-03 14:53:47 +01:00
Klaas Freitag
046d180d2f Rather count the blacklist items in the database.
Use database functions to count the entries rather than trying to
compute it from the progress items the widget got.
2013-12-03 14:48:49 +01:00
Klaas Freitag
278e76b774 Add blackListEntryCount method. 2013-12-03 14:48:49 +01:00
Olivier Goffart
09d850bfaa When the temporary file is the same size as the file we would download, just keep it
Don't download the file if the temporary file is complete.

else, we get error from server: Requested Range not satisfiable
2013-12-03 14:44:04 +01:00
Olivier Goffart
3590db47ac Reset the db to 0 after closing it.
This avoids closing it again and possibly crashing

Maybe the cause of the crash described in
https://github.com/owncloud/mirall/issues/1229
2013-12-03 14:08:18 +01:00
Klaas Freitag
f0a6047ecf Add a button to acitivity view to clean the blacklist. 2013-12-03 14:04:01 +01:00
Klaas Freitag
e8ffb17b3b Add a slot to wipe the folder's blacklist. 2013-12-03 14:04:01 +01:00
Klaas Freitag
09d4fa2127 Fixed wording, do not expose the term blacklist to users. 2013-12-03 14:04:01 +01:00
Daniel Molkentin
f521301c51 Add plugins in install_qt4_executable to ensure the lib paths get fixed up
Fixes #1228
2013-12-03 13:33:50 +01:00
Olivier Goffart
de5161137f remove unneeded file 2013-12-03 13:11:41 +01:00
Olivier Goffart
60636cdbd5 inode 0 is invalid: don't try to match it from a DB
Otherwise, a new file with an invalid inode is considered like a rename
of another file with an invalid inode
2013-12-03 12:51:18 +01:00
Klaas Freitag
1abfd4ba44 Fixed wording, removed the term "problem". 2013-12-03 12:31:28 +01:00
Klaas Freitag
ecf45856e1 Add missing call to CloseHandle on the win32 platform.
This fixes bug mirall#1236 and also mirall#1237
Also some minor cleanups.
2013-12-03 10:08:17 +01:00
Mr. Jenkins
148b22f53d [tx-robot] updated from transifex 2013-12-02 17:13:40 -05:00
Klaas Freitag
243279aa3f Use lstat rather than link following stat.
This fixes https://github.com/owncloud/core/issues/6146
2013-12-02 16:45:28 +01:00
Thomas Müller
ec075a6d2a removing libiniparder.dll and libdl.dll from NSNIS installer 2013-12-02 13:20:10 +01:00
Thomas Müller
6923f26597 Adding missing \ on zypper install command 2013-12-02 11:37:06 +01:00
Mr. Jenkins
206c62a171 [tx-robot] updated from transifex 2013-11-29 13:11:24 -05:00
Klaas Freitag
c03b2bbc87 Make unblacklisting depending on Up or Download
Compare modtime in case of uploading and ETag in case of downloading
as they are the correct indicators.
2013-11-29 16:16:04 +01:00
Klaas Freitag
2f708c0877 Move checkAccountExists out of gui class. 2013-11-29 16:16:04 +01:00
Olivier Goffart
58eb000163 Make the "details" manu entry work
Fix #1214
2013-11-29 11:18:59 +01:00
Olivier Goffart
f5f56e45c0 Fix pausing one of the folder pauses all foder after it while restarting. 2013-11-29 10:57:34 +01:00
Klaas Freitag
4c859d6513 Zero resource struct to avoid crash on win32 2013-11-28 14:48:47 +01:00
Klaas Freitag
a63e9c82a2 Push version to 0.91.0 - beta1 of oCC v. 1.5.0 2013-11-28 11:21:52 +01:00
Klaas Freitag
951ac79a68 Destinguish between rename and move in wording. 2013-11-28 10:58:04 +01:00
Klaas Freitag
ce47adb482 push version to 1.5.0beta1 2013-11-28 10:58:04 +01:00
Olivier Goffart
ef8fe11f5a Do not write the directory etag in the database in case of soft error
Else we won't retry next time as we think nothing has changed.
2013-11-28 10:01:30 +01:00
Olivier Goffart
30db533cea Stop iterating files when aborting. 2013-11-28 10:01:30 +01:00
Olivier Goffart
99eeaa0db5 no need to set twice the error string
done() is already taking care of that
2013-11-28 10:01:30 +01:00
Klaas Freitag
80a01ecff3 Use the activity icon in settings dialog. 2013-11-28 09:47:49 +01:00
Klaas Freitag
5f3ce25ccf Push version to 1.4.90 2013-11-28 09:44:09 +01:00
Klaas Freitag
0d85810c23 Change tab name in settingsdialog to Activity rather than Status. 2013-11-28 09:44:09 +01:00
Mr. Jenkins
4626ef1ffb [tx-robot] updated from transifex 2013-11-27 11:20:43 -05:00
Klaas Freitag
23007613a9 Fix progress bar in new propagator. 2013-11-27 16:48:16 +01:00
Daniel Molkentin
0fc51704f5 Enable accessibility on OS X
Fixes #736
2013-11-27 15:43:47 +01:00
Daniel Molkentin
46a403eb02 Report connection errors explicitly on explicit sign in attempts
Implicit connection attempts fail silently. This is roughly what
users expect from e.g. mail clients.

Fixes #1205.
2013-11-27 14:15:56 +01:00
Daniel Molkentin
e719e80409 ConnectionValidator: Account::setState no longer takes a bool
This makes the client come up with the correct state when the
initial connect fails.
2013-11-27 14:12:30 +01:00
Daniel Molkentin
310278f580 Account: Swap connected and disconnected state
Also, avoid full integer enumeration
2013-11-27 14:11:10 +01:00
Klaas Freitag
c22758201f Don't miss to read the fileid from database. 2013-11-27 13:21:48 +01:00
Klaas Freitag
75aad2b42c Removed unused variable to fix warning. 2013-11-27 09:32:18 +01:00
Klaas Freitag
b1df4b04fa Fix type confusion for file type member of stat struct 2013-11-27 09:31:20 +01:00
Klaas Freitag
59072a81f1 Put detailed sync status widget into ButtonGroup for common style. 2013-11-26 14:27:32 +01:00
Klaas Freitag
d55bffb319 Removed not longer needed Info button.
The detailed sync status is now in the same dialog in another tab.
2013-11-26 14:15:37 +01:00
Klaas Freitag
232cbc45b5 Simplify progress and error signals again.
Now handle everything through the progress signal and let the errors
be progressed in the done slot.

Remove unused code, fix sorting of the list, more efficiency.

This fixes #916
2013-11-26 14:02:11 +01:00
Klaas Freitag
a88d45bff4 Comment some unused code. 2013-11-26 14:02:11 +01:00
Klaas Freitag
090e474d70 Add a couple of missing progress signals. 2013-11-26 14:02:11 +01:00
Klaas Freitag
4f7546768b Do not blacklist Softerrors. 2013-11-26 14:02:11 +01:00
Klaas Freitag
7a3c086be2 Display a proper error message for missing sync directory on server.
this fixes bug mirall#1149
2013-11-26 14:02:11 +01:00
Olivier Goffart
5c8b6ed902 Fix Remove -gzip from etag
Remove it from both "foo"-gzip  and "foo-gzip"

See issue #1195
2013-11-26 12:10:52 +01:00
Olivier Goffart
87792b59e6 Fix -gzip removal from etag
Removes when the etag is both "foo-gzip" or "foo"-gzip

Add to patch for
https://github.com/owncloud/mirall/issues/1195
2013-11-26 11:55:47 +01:00
dragotin
cb6918f3d5 Merge pull request #1203 from pascalBokBok/patch-1
Remove spammy "sync starting" notification on every program start.

Thanks!
2013-11-26 02:39:08 -08:00
pascalBokBok
489cc8aa29 Remove spammy "sync starting" notification on every program start. 2013-11-26 10:01:36 +01:00
Mr. Jenkins
d8a8d5da63 [tx-robot] updated from transifex 2013-11-26 03:05:08 -05:00
Daniel Molkentin
0d85dcdd9e Toggle Settings window when clicking on the icon
This restores the old behavior for every DE but OS X and Ubuntu Unity
(which respond to all clicks by opening the menu).

Discussed in #896
2013-11-26 03:15:03 +01:00
Daniel Molkentin
7eddff39e7 Wizard: Allow /index.php or /remote.php/webdav in URLs.
We will strip those. Also works on paste.

Fixes #349
2013-11-26 02:32:04 +01:00
Daniel Molkentin
81e47b0896 Folder wizard: sanitize error detection
* Wrap text properly
* Format multiple warnings as bullet points
* Use 'Folder' instead of 'Directory' everywhere
* Fix false positives when checking if one directory contains another
* Fix logic errors in target folder warning detection

Fixes #1201
2013-11-26 02:03:00 +01:00
Daniel Molkentin
ef0c7348ad Account Settings: Fix label 2013-11-26 00:04:50 +01:00
Daniel Molkentin
050bb55f1e Wizard: Do not start from scratch if the initial folder is non-default
Before, the folder was initialized to "ownCloud" in any case,
which lead the wizard to conclude it had to sync everything anew,
because the location moved -- even if the folder location was manually
corrected.

Fixes parts of #1172
2013-11-26 00:04:33 +01:00
Tom Swartz
738f026c41 Merge pull request #1 from owncloud/master
Merge with owncloud:master
2013-11-25 12:29:22 -08:00
Markus Goetz
fa715ce135 Propagator: Open download file as Unbuffered 2013-11-25 19:25:19 +01:00
Markus Goetz
911e0bdd6e Propagator: Check write errors when downloading 2013-11-25 19:25:19 +01:00
Olivier Goffart
fa0f773fcb Separate the case of file changing durng upload in the chunk or non chunk case.
If the file is changed between chunk, it is easy and we can just retry as the
file has not been changed on the server.
But if the file is changed after it has been updated on the server, we must still
update the database with the etag. (and possibly delete the partial file)

Relates to issue #1002
2013-11-25 19:16:54 +01:00
Olivier Goffart
8ed02302ca Don't check if the file has changed after the upload is complete.
After the upload is complete, the file has been changed in the server and the etag
need to be updated in the db if we don't want to have desatrous conflicts later.

Let mirall know the real status, and expose the function to check weather the file
has changed so mirall can do thing properly
2013-11-25 19:11:19 +01:00
Markus Goetz
ac8296fb94 Propagator: Check E-Tag when resuming
Should fix #756
2013-11-25 19:01:04 +01:00
Klaas Freitag
13d755fc4d Fixed compiler warning. 2013-11-25 18:27:37 +01:00
Klaas Freitag
ada30ae56b Set file name in error_string if ENOENT error 2013-11-25 18:24:37 +01:00
Daniel Molkentin
f47ce2fea6 Account Settings: Set initial button state correctly
Fixes #1185
2013-11-25 17:56:09 +01:00
Klaas Freitag
33ff6b3934 Even if problems occured show the Ok-Icon in the setup dialog.
Fixes bug #942.
2013-11-25 17:49:59 +01:00
Olivier Goffart
ca3d8ab193 Add one case of missing -gzip removal 2013-11-25 17:48:57 +01:00
Daniel Molkentin
d85009a2e9 Account Settings: fix connect error
Fixes #1198
2013-11-25 17:34:40 +01:00
Markus Goetz
72d2ac09e3 Propagator: Don't ignore error if no HTTP error code 2013-11-25 16:37:48 +01:00
Olivier Goffart
6b7da798b8 Remove -gzip from Etag
Fix #1195
2013-11-25 16:30:13 +01:00
Olivier Goffart
e146de9ea2 Remove -gzip from the etag
Both from what comes from the server (https://github.com/owncloud/mirall/issues/1195)
Or what was in the db if upgrading from old database
2013-11-25 16:19:59 +01:00
Klaas Freitag
2e4043b498 Show proper error message and icon according to error class. 2013-11-25 16:18:07 +01:00
Klaas Freitag
dc29046d61 Add new progressProblem signal and slots.
Now the sync problems are handled differently than the sync progress
to ease error message handling and stuff.
2013-11-25 16:18:07 +01:00
Klaas Freitag
0c6dca25c4 Register meta type for SyncProblem 2013-11-25 16:18:07 +01:00
Klaas Freitag
1a3f246c46 Add new Error Types to progress: Soft, Normal, Fatal. 2013-11-25 16:18:07 +01:00
Daniel Molkentin
ad6c42b031 Wizard: let us handle/ignore credential failures 2013-11-25 15:50:19 +01:00
Daniel Molkentin
9ddedf81ac Cleanup: "Use QMutexLocker" 2013-11-25 15:34:17 +01:00
Daniel Molkentin
685c13dead Distiguish "Signed out" from "Disconnected" 2013-11-25 15:34:17 +01:00
Daniel Molkentin
c25c7daca7 docs: Add infos about installing the sql plugin and module
Fixes #1184
2013-11-25 15:34:17 +01:00
Daniel Molkentin
2a17a2a102 Remove credential-exposing debug output 2013-11-25 15:34:16 +01:00
Daniel Molkentin
4e22fff427 Introduce online/offline state, accessible via GUI 2013-11-25 15:34:16 +01:00
Daniel Molkentin
6165c38289 Fix indentation 2013-11-25 15:34:16 +01:00
Daniel Molkentin
f554cca3d6 Fix initial state of quota info class. 2013-11-25 15:34:16 +01:00
Daniel Molkentin
67132326d2 Prefix tooltips with app name 2013-11-25 15:34:16 +01:00
Daniel Molkentin
ea2b5fb29c Query credentials when needed. Put the account offline if user aborts.
This is only implemented for HTTP auth. Shibboleth still does its own thing.
2013-11-25 15:34:16 +01:00
Daniel Molkentin
0a2861a731 Disable quota polling when default account does not exist or is offline 2013-11-25 15:34:16 +01:00
Olivier Goffart
6f17131e3c Fix mutex usage in the journal
All public function must lock the mutex. And therefore none of the journal
function may call public function because the mutex is already locked.

So have a public commit that lock the mutex,  and a private  commitInternal
that assume the mutex is locked
2013-11-25 15:11:37 +01:00
Olivier Goffart
ca3885de2a Fix some SQL error and warning
Such as:
 Error opening the db:  "Driver not loaded Driver not loaded"
or
 QSqlDatabasePrivate::removeDatabase: connection '...' is still in use, all queries will cease to wor

We need to clear the QSqlDatabase _db handle before calling removeDatabase.
And we also need to give a different name to different folder database, just to be sure
2013-11-25 15:07:58 +01:00
Daniel Molkentin
5d6700c68d Merge pull request #1165 from csware/startmenu-according-to-ms-guidelines
Startmenu according to ms guidelines
2013-11-25 04:27:43 -08:00
Daniel Molkentin
37d6f6eeab Build on OS X 2013-11-25 10:54:18 +01:00
Klaas Freitag
fd1552f7a0 Handle SoftError and show blacklisted files. 2013-11-24 22:27:11 +01:00
Klaas Freitag
055a8d7e74 Do not display error messages if user aborts the sync run. 2013-11-24 22:26:50 +01:00
Klaas Freitag
1964e60eb0 Do not show an error message if user aborted. Also CSYNC_STATUS fixes. 2013-11-24 22:21:29 +01:00
Klaas Freitag
11acfde55a Refresh the Protocol widget when the dialog is raised. 2013-11-24 22:20:43 +01:00
Klaas Freitag
b6eae58a2c Only set the error code to a generic one if it is still ok. 2013-11-24 22:18:08 +01:00
Klaas Freitag
cc6c5e0db5 Let function csync_get_status return the CSYNC_STATUS
In original csync, csync_get_status() returned the status variable from
the context, which indicated in which state the sync run currently is,
which is never used.
What we expected in our mirall code however is the CSYNC_STATUS as
detailed result of a certain operation. Changed the function to reflect
that, even if that is an evil API change.
2013-11-24 22:17:36 +01:00
Mr. Jenkins
3a1c6429ab [tx-robot] updated from transifex 2013-11-23 23:14:03 -05:00
Klaas Freitag
ecb2444923 Handle changing source file in upload correctly.
Delete the file on the server if the source file is new, but
the source did not arrive completely within a timespan.
2013-11-22 19:45:26 +01:00
Klaas Freitag
65bd4be16e Make sure all queries are initialized on our database object.
Since we use a database with the non default name, we need to do that,
otherwise the query is initialized on the default db which is not open
in our case.
2013-11-22 15:37:35 +01:00
Mr. Jenkins
39e48d3d01 [tx-robot] updated from transifex 2013-11-21 20:06:22 -05:00
Klaas Freitag
0327461c25 Remove unneeded dlfcn header. 2013-11-21 14:13:35 +01:00
Mr. Jenkins
c0b3672f32 [tx-robot] updated from transifex 2013-11-21 08:09:18 -05:00
Klaas Freitag
8d2950f66c Enable the overall file count in progress again. 2013-11-21 11:37:47 +01:00
Klaas Freitag
55e82ee4c1 Made transaction management a bit more transparent. Some fixes. 2013-11-21 11:13:58 +01:00
Klaas Freitag
aa17be40cc Some database code cleanups. 2013-11-20 18:19:14 +01:00
Tom Swartz
32e205f6ce Add exclusion for OSX ._<filename> files
Exclude older OSX metadata ._<filename> files from sync, improving
cross-platform sync experience.

Tested-on: arcturus <20 Nov 2013>
2013-11-20 10:26:36 -05:00
Klaas Freitag
97c661c909 Cleanups 2013-11-20 14:59:58 +01:00
Klaas Freitag
2767e7084a Minor cleanups. 2013-11-20 14:27:44 +01:00
Klaas Freitag
5900b1ad25 Add blacklisting for files with error conditions. 2013-11-20 14:27:44 +01:00
Klaas Freitag
20b9ae757d Add a http status code varialbe to the sync item object. 2013-11-20 14:27:44 +01:00
Klaas Freitag
aff2dd9f44 The IGNORE statement is handled further down the code. 2013-11-20 14:27:44 +01:00
Klaas Freitag
e30c484a7a Ignore the SIGPIPE signal as that disturbs debugging with Qt Creator.
It is questionable why this happens and if this patch really helps,
or if it might have side effects. Input appreciated :)
2013-11-20 14:27:44 +01:00
Klaas Freitag
0f6dd8748f Fixed some header wording. 2013-11-20 14:27:44 +01:00
Klaas Freitag
a342f63fdf Changed wording: Replaced Protocol against Status. 2013-11-20 14:27:44 +01:00
Daniel Molkentin
5c4d240c66 Build on mac with Qt 5
I still had this patch on disk.
2013-11-19 14:41:40 +01:00
Markus Goetz
e551e92e13 Downloads: Ignore file if no ETag was sent
Fixes part of #970
2013-11-19 12:44:25 +01:00
Markus Goetz
b98d97a96d SyncJournalDb: Fix warnings
I got those warnings for the latter sync runs:
11-19 10:58:15:997 QSqlDatabasePrivate::removeDatabase: connection 'qt_sql_default_connection' is still in use, all queries will cease to work.
11-19 10:58:15:997 QSqlDatabasePrivate::addDatabase: duplicate connection name 'qt_sql_default_connection', old connection removed.
2013-11-19 11:28:08 +01:00
Klaas Freitag
f30ac49264 Cached more queries, used safe QSqlQuery pattern 2013-11-18 13:02:09 +01:00
Klaas Freitag
49ba252fff Database initialize code cleanup.
If the QSqlQuery class is called with a query in the constructor, the query
is executed immediately. In fact, we executed each query twice before.
Later on we might want to implement a wrapper clas around the query.
2013-11-18 10:02:33 +01:00
Klaas Freitag
69269f8f75 Use transactions to speed up database access. 2013-11-18 10:02:32 +01:00
Klaas Freitag
e73730cb94 Close database after retrieval of file record count.
As the csync updater opens the database itself, it is cleaner to close
the db before and open it again after csync has finished.
Added a close method to the journal class.
2013-11-18 10:02:32 +01:00
Klaas Freitag
098e04c13f Set PRAGMA synchronous to NORMAL 2013-11-18 10:02:32 +01:00
Klaas Freitag
b0f6628584 Moved implementation of start() to cpp file. 2013-11-18 10:02:32 +01:00
Klaas Freitag
42f6867329 Add some useful logging. 2013-11-18 10:02:32 +01:00
Daniel Molkentin
0a9a3d8f04 Cleanup in folderman 2013-11-18 09:37:09 +01:00
Daniel Molkentin
ec850e83b9 Folders need to be setup before initializing the GUI
This fixes the incomplete context menu
2013-11-18 09:37:09 +01:00
Markus Goetz
08665d6ac2 Settings: Don't specify encoding
QSettings automatically does escaping. When UTF-8 was set, I
got all kind of problems with the QByteArray for the geometry
and the umlaut in my name for the proxy user.
2013-11-18 09:30:42 +01:00
Klaas Freitag
61f08cdd97 Removed some unneeded code. 2013-11-15 16:22:41 +01:00
Klaas Freitag
a1286cc684 Add Content-Type header to http PUT request.
This hopefully fixes bug #1124 as it satisfies the mod_security
settings.
2013-11-15 16:15:26 +01:00
Markus Goetz
4194a078d5 Revert "set utf8 for the central settings file"
This reverts commit 6758c89130.
2013-11-15 15:45:21 +01:00
Daniel Molkentin
6758c89130 set utf8 for the central settings file 2013-11-15 14:43:48 +01:00
Olivier Goffart
c15a1eedd1 Only update the db for ETAG if the etag has changed for directories 2013-11-15 13:53:18 +01:00
Olivier Goffart
79bf778a42 Forward the should_update_etag to the tree visitor 2013-11-15 13:52:41 +01:00
Olivier Goffart
0c689c4cca Make sure that if two items have the same inodes, they are on the same type.
We don't want to rename a file to a directory
2013-11-15 12:32:05 +01:00
Olivier Goffart
dd24950881 Allow t3.pl to pass with owncloud5
Which do not have fileid
2013-11-15 12:23:05 +01:00
Klaas Freitag
bf6e1f10ce Prepare the queries after the database was migrated. 2013-11-15 11:21:27 +01:00
Klaas Freitag
c22f8a47f1 Initialise values properly, avoid warning. 2013-11-15 10:32:13 +01:00
Klaas Freitag
858facb5e0 Use precompiled database statements. 2013-11-15 10:32:13 +01:00
Olivier Goffart
b610dd2754 Revert "Partial revert of "CMake: Remove cmake module""
That patch reverted the oposite of what it should have reverted :-)

This reverts commit b22ef9f8fa.
2013-11-15 10:20:12 +01:00
Olivier Goffart
b3972a5ba8 Do not fetch the file id in the propagator with a HEAD
Normally, the fileid comes with the PUT or the GET.
If it did not comes with the PUT, it means the server do not support
fileid,  we should not query it with a useless HEAD.

Also, in case the fileid changes (which it should not)  update anyway
to the new fileid in the db
2013-11-15 10:18:19 +01:00
Klaas Freitag
0993289180 Check the remote file Id of files in moved directories. 2013-11-15 09:36:33 +01:00
Klaas Freitag
32533a18af Added function to retrieve file ID from remote. 2013-11-15 09:36:33 +01:00
Daniel Molkentin
36e8273da0 fix mac builds 2013-11-14 20:53:56 +01:00
Daniel Molkentin
2f4de3cc48 Build fix 2013-11-14 20:41:23 +01:00
Daniel Molkentin
b22ef9f8fa Partial revert of "CMake: Remove cmake module"
This reverts commit 63188667bb.
2013-11-14 19:34:12 +01:00
Daniel Molkentin
e20f39f040 Another cleanup 2013-11-14 19:31:38 +01:00
Daniel Molkentin
63188667bb CMake: Remove cmake module 2013-11-14 19:26:09 +01:00
Daniel Molkentin
c2eaf5e627 owncloud is no longer a dl'opened module, but linked into csync 2013-11-14 19:22:22 +01:00
Daniel Molkentin
7ba8983f0a Change all Network Jobs to use start() 2013-11-14 19:20:19 +01:00
Markus Goetz
088aa6ebdd Wizard: Default button to Next 2013-11-14 19:13:59 +01:00
Olivier Goffart
8a3e617630 Don't put csync_owncloud in a plugin.
It is now statically linked
2013-11-14 18:58:28 +01:00
Olivier Goffart
7e7853f170 Fix t1.pl
Previous commit had the wrong regexp
2013-11-14 18:58:28 +01:00
Olivier Goffart
e0fdad93f4 t4.pl' 2013-11-14 18:20:57 +01:00
Olivier Goffart
415b51b2b5 Some more checks in t1.pl
Notably that the conflict file actually exists.  (There was not even a
conflict before because the filename of the touch was wrong)
2013-11-14 18:03:50 +01:00
Markus Goetz
767ec4ed59 Wizard: Support redirects again 2013-11-14 17:54:38 +01:00
Markus Goetz
b12b8c981d Wizard: Also reset timeout on forwards 2013-11-14 17:23:56 +01:00
Markus Goetz
b499a62593 Wizard: Timeout handling for CheckServerJob 2013-11-14 17:23:56 +01:00
Markus Goetz
fa0a2764a4 Fix changing URL in wizard 2013-11-14 17:23:56 +01:00
Markus Goetz
a537a98f03 Tray menu: Populate at start 2013-11-14 17:23:56 +01:00
Olivier Goffart
4eb19000a4 Differentiate the RENAME and EVAL_RENAME
EVAL_RENAME is set at the update phase and means that this is the destination of
a file that has been renamed.
RENAME is set for the file that need to be renamed.

Before, we knew the difference because of which remote the instruction was
but now we need to make the distinction explicit
2013-11-14 17:08:42 +01:00
Klaas Freitag
bef7c3c48e Fixes to t3.pl, added some assertions. 2013-11-14 17:06:53 +01:00
Klaas Freitag
e40370f67a Use printInfo method in t3.pl 2013-11-14 16:10:41 +01:00
Sven Strickroth
ed5b0973dd Do not create folder for single link
Signed-off-by: Sven Strickroth <email@cs-ware.de>
2013-11-14 15:45:14 +01:00
Olivier Goffart
e8e27b61f6 Revert the changes that fetch the file id in the propagator.
We don't want to fetch the file id in the propagator.

Revert "Put item member variable to base class."
This reverts commit f7aa2aa348.

Revert "Add isValidFileId and getFileIdPropget methods."
This reverts commit ccd254abba.
2013-11-14 14:59:03 +01:00
Olivier Goffart
11a131fa90 csync_statedb_query: Allow null fields in the database
The fileid defaults to null for old database.
Since commit 4b8f2a287f,  we query
 the file id to get the etag.
c_strlist_add cannot append null entries, so it would just discard
the md5 instead
2013-11-14 14:41:36 +01:00
Sven Strickroth
336e22233d Do not create uninstall shortcut in start menu
According to Microsoft Design guidelines (http://msdn.microsoft.com/en-us/library/windows/desktop/aa511447.aspx) no icons for uninstallers should be created.

Signed-off-by: Sven Strickroth <email@cs-ware.de>
2013-11-14 14:40:21 +01:00
Daniel Molkentin
578431c791 Fix building owncloudcmd in case of theming 2013-11-14 14:20:09 +01:00
Olivier Goffart
4d146e87d1 Remove INVALID_FILE_ID and consider empty file id as invalid 2013-11-14 13:43:26 +01:00
Olivier Goffart
b518adc203 Don't read from the db if the file id has changed.
File id may change when upgrading to owncloud 6 or when upgrading to mirall 1.5

This also changes the location where we check if we need to read from
the DB.   Instead of doing it from csync_ftw,  we do it from
_csync_detect_update. In that function we know the etag and the file id.
Which mean we change the flag before the recursive call to csync_ftw instead
of in the begin of the function.  Therefore, we need to restore the flag
after calling the function to the previously saved state.
2013-11-14 13:43:26 +01:00
Klaas Freitag
6b0b7d1b90 make t1.pl work again. 2013-11-14 13:07:55 +01:00
Daniel Molkentin
ead0f8d029 Update build docs 2013-11-14 12:36:09 +01:00
Klaas Freitag
f7aa2aa348 Put item member variable to base class. 2013-11-14 11:37:32 +01:00
Klaas Freitag
ccd254abba Add isValidFileId and getFileIdPropget methods. 2013-11-14 11:37:08 +01:00
Klaas Freitag
4b8f2a287f Retrieve file_id together with etag from db if read from db. 2013-11-14 11:32:03 +01:00
Klaas Freitag
3cc2593f62 Handle invalid file_id correctly. 2013-11-14 11:31:30 +01:00
Klaas Freitag
c3e154b2e6 Do not overwrite with an invalid file_id. 2013-11-14 11:30:51 +01:00
Daniel Molkentin
56de183155 Merge pull request #1160 from csware/exclude-office-tempfiles
Add another Office lock/temporary file pattern
2013-11-13 15:52:37 -08:00
Daniel Molkentin
c8256eea0e Merge pull request #1162 from csware/startmenu-according-to-ms-guidelines
Startmenu according to ms guidelines
2013-11-13 15:52:05 -08:00
Sven Strickroth
b026bb308d Do not create folder for single link
Signed-off-by: Sven Strickroth <email@cs-ware.de>
2013-11-14 00:45:18 +01:00
Sven Strickroth
6bd4d367d4 Do not create uninstall shortcut in start menu
According to Microsoft Design guidelines (http://msdn.microsoft.com/en-us/library/windows/desktop/aa511447.aspx) no icons for uninstallers should be created.

Signed-off-by: Sven Strickroth <email@cs-ware.de>
2013-11-14 00:43:11 +01:00
Sven Strickroth
d401a62fd9 Add another Office lock/temporary file pattern
Experienced with Microsoft Office 2010.

Signed-off-by: Sven Strickroth <email@cs-ware.de>
2013-11-14 00:33:11 +01:00
Daniel Molkentin
8f61cc4041 Hint the OS to not show [?] in Wizards and Dialogs
Fixes #1156
2013-11-13 20:12:56 +01:00
Daniel Molkentin
21c9fc2d35 Cleanup 2013-11-13 19:11:46 +01:00
Daniel Molkentin
171572e400 Remember paused state throughout application restarts
Fixes #823
2013-11-13 18:58:35 +01:00
Klaas Freitag
e9920bd760 Consider an empty fileid as invalid. 2013-11-13 14:57:34 +01:00
Daniel Molkentin
475a4f2676 Windows: ship QtSql lib 2013-11-13 14:32:09 +01:00
Olivier Goffart
908888a44e Rename 'md5' to 'etag'
'md5' always has been the etag. The name md5 for it is misleading.
It is still called "md5" in the database to keep compatibility
2013-11-13 14:29:31 +01:00
Olivier Goffart
52e01b39d6 Adapt to csync 'md5'->'etag' change 2013-11-13 14:28:41 +01:00
Daniel Molkentin
af1dcfd179 Compile fix 2013-11-13 14:24:02 +01:00
Daniel Molkentin
233a6908dd Partial revert "Compile with Qt5"
This reverts commit 878ae56a71.
2013-11-13 14:19:01 +01:00
Daniel Molkentin
ae83c12f05 Fix compiler warning 2013-11-13 14:19:01 +01:00
Olivier Goffart
3a1b868348 Directory with different etags should still be moved. 2013-11-13 14:04:51 +01:00
Daniel Molkentin
878ae56a71 Compile with Qt5 2013-11-13 14:00:12 +01:00
Daniel Molkentin
2ff4ebc72f Make user() available throught AbsctractCredentials 2013-11-13 13:59:35 +01:00
Daniel Molkentin
ca79d3b437 Merge remote-tracking branch 'origin/master' into account_refactoring 2013-11-13 13:55:58 +01:00
Klaas Freitag
a65c5b6f38 Install Headers of libhttpbf 2013-11-13 09:47:39 +01:00
Klaas Freitag
3714bb02f7 Put files with special char names to tarball and removed them.
Jenkins on rotor.o.o is for some reason not able currently to
work with these file names.
2013-11-11 20:44:31 +01:00
Klaas Freitag
14081a197b Call ne_sock_init and ne_sock_exit to initialize neons SSL stack.
See https://github.com/owncloud/mirall/issues/1115 for more details on
why that is done here now.
2013-11-11 17:47:24 +01:00
Klaas Freitag
9323658b01 Remove ne_sock_init and ne_sock_exit from owncloud module.
This change, together with a change in mirall calling the two functions
in folderman, should fix https://github.com/owncloud/mirall/issues/1115

This needs to be verified and maybe reverted!
2013-11-11 17:45:19 +01:00
Daniel Molkentin
9fe2549938 Add user info if the auth backends provides it 2013-11-11 16:57:15 +01:00
Klaas Freitag
e0a50d4bb9 PostSyncCleanup added: Remove superfluous entries from database after
sync.
2013-11-11 16:45:40 +01:00
Klaas Freitag
7f10b09a96 Set moved files which are changed to instruction EVAL. 2013-11-11 16:44:21 +01:00
Daniel Molkentin
ad1c1f4130 Remove legacy code 2013-11-11 15:36:49 +01:00
Daniel Molkentin
121b18bf70 QtKeychain is not a hard dependency 2013-11-11 15:36:29 +01:00
Daniel Molkentin
22ed29a30b Remove obsolete credentialstore class 2013-11-11 15:24:07 +01:00
Daniel Molkentin
64b59f8679 Don't use integration directory 2013-11-11 15:22:51 +01:00
Daniel Molkentin
406ed5a0c0 Make new folder wizard work again 2013-11-11 15:20:07 +01:00
Daniel Molkentin
d5081f4328 Fix logic 2013-11-11 14:02:54 +01:00
Daniel Molkentin
95d7afb0d0 cleanups 2013-11-11 10:57:33 +01:00
Klaas Freitag
2b2987d962 Make sure to rebuild the recent changes menu. 2013-11-11 10:06:14 +01:00
Klaas Freitag
2eb77445be Add rename actions to progress dispatching.
With that fix rename operations are shown as such in the progress
window and in bubble help etc.
2013-11-08 16:21:59 +01:00
Daniel Molkentin
12b1b38351 Fix connect 2013-11-08 14:02:13 +01:00
Daniel Molkentin
b0abb6362a Don't set the content header length
This breaks POSTS and is not needed in QNAM, since QNAM
does this itself internally.
2013-11-08 14:01:56 +01:00
Klaas Freitag
a458ffd472 Add missing return in error case. 2013-11-08 12:56:54 +01:00
Klaas Freitag
2875d08c16 Record the rename path also for remote renaming. 2013-11-08 11:17:43 +01:00
Klaas Freitag
4ebed84d33 New test: Move a dir remotely, but remove the local one. 2013-11-08 10:18:30 +01:00
Klaas Freitag
586cfa2aac Detect a NEW in the other tree, generate conflict condition. 2013-11-08 10:09:43 +01:00
Daniel Molkentin
60b6f520e7 Make Shibboleth browser aware of Accounts
Needed for SSL error handling. It's also more consistent.
2013-11-07 18:47:38 +01:00
Daniel Molkentin
8d0d5b4077 Make redirects work 2013-11-07 18:46:57 +01:00
Daniel Molkentin
5c9a6afb82 Fix crash when opening settings without a valid account 2013-11-07 18:46:28 +01:00
Klaas Freitag
40e2e5891f Added more tests and info printing. 2013-11-07 16:57:51 +01:00
Klaas Freitag
07e8681181 Added printInfo convenience method. 2013-11-07 16:57:06 +01:00
Klaas Freitag
162acc1cc2 Fix conflict file handling, create a proper conflict file name.
Before this fix, the conflict file name was set in the file name
variable which lead to the problem that the subsequent rename of
the temp file to the final final filename was moving the temp file on
the conflict file. No final file was there.
2013-11-07 16:53:22 +01:00
Daniel Molkentin
64ef43d918 Fix the key used for storing the password 2013-11-07 15:59:58 +01:00
Daniel Molkentin
33c3d2a7d0 Wizard: Initialize account credentials.
Required to be able to readily retrieve the user name later on
2013-11-07 15:24:49 +01:00
Daniel Molkentin
1238ab4f69 fix broken connect() statement 2013-11-07 12:50:55 +01:00
Daniel Molkentin
a42ff5a07c Show floating point prec. in account settings, too 2013-11-07 12:50:39 +01:00
Daniel Molkentin
aa4b6bd4ea Readd "online" notion as a state in account.
This gets updated by the ConnectionValidator. Not sure if that's
the best choice, but it mimmicks the old behavior the closest.
2013-11-07 12:22:17 +01:00
Daniel Molkentin
478ba9c5ef Fix approved SSL certificates being forgotten 2013-11-07 12:04:45 +01:00
Klaas Freitag
c58e9d17a8 Again minor doc changes. 2013-11-07 10:29:27 +01:00
Klaas Freitag
41ccbc0334 Minor docu change. 2013-11-07 10:28:14 +01:00
Daniel Molkentin
bd46ad56fc Add new quotainfo class 2013-11-07 10:14:38 +01:00
Daniel Molkentin
bde5e86c50 Reformatting fixes 2013-11-07 10:14:25 +01:00
Daniel Molkentin
ec0f01fd7c Ensure an SSL Error Handler is always available 2013-11-07 10:14:12 +01:00
Klaas Freitag
a6c4a9ac74 Test added: move a directory with a changed file in it. 2013-11-06 16:15:31 +01:00
Klaas Freitag
cac7595afd make createLocalFile to work with absolute path. 2013-11-06 16:14:21 +01:00
Klaas Freitag
97f5bd840e Add a function to calculate the MD5 sum of a file. 2013-11-06 16:13:39 +01:00
Klaas Freitag
fe4c1cc35a Remove straycat code from mirall. 2013-11-06 14:20:44 +01:00
Klaas Freitag
cd823524b6 Enable dummy backend again to satisfy tests. 2013-11-06 14:12:31 +01:00
Klaas Freitag
84fa340085 Honor NDEBUG define in test. 2013-11-06 13:42:25 +01:00
Klaas Freitag
d080f7f7a7 Remove stray cat handling. 2013-11-06 13:28:38 +01:00
Klaas Freitag
ee69176a6b Revert "Add straycat handling functions."
This reverts commit 171669c3a4.
This needs to be implemented in a different way.
2013-11-06 13:21:45 +01:00
Klaas Freitag
fc33b5a8ab Fix treewalk test, clean test condition. 2013-11-06 13:13:44 +01:00
Klaas Freitag
bae3d2fc1b Fixed assertLocalAndRemoteDir arguments. 2013-11-06 11:31:51 +01:00
Klaas Freitag
eb33879906 Fix some requirement mentions in the INSTALL file. 2013-11-06 11:29:57 +01:00
Klaas Freitag
63069e4739 New test script for remote renames. 2013-11-06 11:29:57 +01:00
Klaas Freitag
862fffae39 Add more test data. 2013-11-06 11:29:57 +01:00
Klaas Freitag
60c56644ef Changes for more convenient test environment. 2013-11-06 11:29:57 +01:00
Klaas Freitag
95cc4c310b Read all data incl. file_id in get_stat_by_inode. 2013-11-06 11:29:56 +01:00
Klaas Freitag
171669c3a4 Add straycat handling functions. 2013-11-06 11:29:56 +01:00
Klaas Freitag
3fb7429f60 Cleanup renaming and record straycats to remove them from journal. 2013-11-06 11:29:56 +01:00
Klaas Freitag
de3963ac75 Set file_id correctly for renamed files. 2013-11-06 11:29:56 +01:00
Klaas Freitag
b6152c19d6 Adjust generic build documentation to the current state. 2013-11-06 11:13:55 +01:00
Daniel Molkentin
800abbf8b7 Make http credentials work 2013-11-05 18:16:00 +01:00
Daniel Molkentin
3af622d535 Make quota display work 2013-11-05 18:15:47 +01:00
Klaas Freitag
ee4cbf52dc Remove straycats collected in the reconcile phase from journal. 2013-11-05 17:53:01 +01:00
Klaas Freitag
5cd2be058d Fix local rename. 2013-11-05 17:50:09 +01:00
Klaas Freitag
3a21edca2b Keep originalFile member as QString rather than C string.
This avoids encoding problems with interesting file names.
2013-11-05 17:48:51 +01:00
Klaas Freitag
c6a926842a Fix recursivley flag misinterpretation. 2013-11-05 17:47:51 +01:00
Daniel Molkentin
440b5164ad Build fix 2013-11-04 16:41:59 +01:00
Daniel Molkentin
cc5f17a7d2 Merge remote-tracking branch 'origin/master' into account_refactoring
Conflicts:
	src/mirall/accountsettings.cpp
	src/mirall/folder.cpp
2013-11-04 16:38:55 +01:00
Daniel Molkentin
85d5b82811 - Make saving/restoring accounts work.
- Prepare for fetching quota
2013-11-04 16:36:23 +01:00
Klaas Freitag
7b99d02875 Change order of the local assert of directories. 2013-11-04 14:55:17 +01:00
Olivier Goffart
f0a1ac4346 Fix syncing folder with nothing in it
Do the start after connecting, as the finish may be imediate if there
is nothing to do.
2013-10-31 12:11:56 +01:00
Olivier Goffart
bdc39f9cc2 Allow folder that are prefix of another 2013-10-31 11:41:56 +01:00
Olivier Goffart
d3ae2f42a7 Reset the proxy module property at every sync
This is required for the fix for #713
Since the module properties are shared in global variables shared by
every folders, removing another folder may clean the proxy settings.
So we need to restore them at every sync
2013-10-31 11:39:43 +01:00
Olivier Goffart
1a6a6758d3 We need to restore the read_from_db flag AFTER closedir
Else, we might dispatch to the wrong close call (the one from owncloud
instead of the one from the db,  resulting in a memory leak
2013-10-31 11:38:00 +01:00
Olivier Goffart
f5391def6b Don't cleanup in owncloud's vio_module_shutdown
All the cleanup is done in owncloud_commit which should
necessarily be called.

Should fix https://github.com/owncloud/mirall/issues/713
The problem was that csync_destroy was called on another csync
instance in another thread, resulting in a crash

Yes, there is still a problem with the proxy settings.
2013-10-31 11:38:00 +01:00
Olivier Goffart
0a99aa5fc7 Don't forget to close the database.
The code was removed when the code to write the database was removed.
But we still need to close the database
2013-10-31 11:14:21 +01:00
Olivier Goffart
df39ab0b2f Don't leak the system tray 2013-10-31 10:52:19 +01:00
Olivier Goffart
28833ee5ac Fix crash when removing folder while syncing.
We need to set _thread to 0 after destoying it
2013-10-31 10:51:45 +01:00
Olivier Goffart
c9cfa16929 Fix memory leak by properly cleaning memory in csync_commit
Restore two lines that were losts in the big merge from csync master
(b5ed352aa3)
2013-10-31 10:05:15 +01:00
Olivier Goffart
8c4ecb4fba Only use etag to know if we should use the db or not
Null file id might just mean the server don't support file id.
So use the database even if fileid is null
2013-10-31 10:02:20 +01:00
Klaas Freitag
c66a1d1895 Removed unused code from LocalRename 2013-10-30 18:14:33 +01:00
Klaas Freitag
cdee0dc1cf Added a PropagateLocalRename job to do local renames. 2013-10-30 17:37:34 +01:00
Klaas Freitag
a43c5fcfe8 Fix header name according to changes on server master. 2013-10-30 17:37:34 +01:00
Klaas Freitag
0b5f1e6dd2 Make tests compile without propagate code. 2013-10-30 17:35:25 +01:00
Klaas Freitag
17d5e67d96 Handle remote renames better. 2013-10-30 17:34:40 +01:00
Klaas Freitag
4412ec38e4 Properly check if the file type has changed. 2013-10-30 17:34:40 +01:00
Klaas Freitag
70b6a5a8b1 Adjust header name to latest server implementation. 2013-10-30 17:34:40 +01:00
Olivier Goffart
5c67f39476 Ignore error 404 on DELETE
This may happen if we have stale entries in the database
2013-10-30 17:33:06 +01:00
Olivier Goffart
fb47657b1f Make F6 in the account config sync the selected folder, for debugging purposes
Issue #409
2013-10-30 16:58:08 +01:00
Olivier Goffart
76d46af4b7 Revert "Implement a sync now button"
Actually, after discussion with the team, we decided this button is a bad idea

This reverts commit b56fcd8ebd.
2013-10-30 16:48:28 +01:00
Daniel Molkentin
86af2848dd Merge remote-tracking branch 'origin/master' into account_refactoring
Conflicts:
	src/mirall/accountsettings.cpp
2013-10-30 16:37:49 +01:00
Daniel Molkentin
4ca310b63b Remove ownCloudInfo for good 2013-10-30 16:33:15 +01:00
Daniel Molkentin
59bc1d8966 Credential Store is no longer static
It now belongs to HttpCredentials
2013-10-30 16:32:34 +01:00
Daniel Molkentin
14c2ff44f3 More porting to Account class
- Finish port of owncloud setup wizard to Account
- Deprive MirallConfigFile of the customHandle
2013-10-30 16:31:47 +01:00
Olivier Goffart
b56fcd8ebd Implement a sync now button
The button is in the account config, next to the "pause/resume" button

Fixes #409
2013-10-30 16:27:00 +01:00
Olivier Goffart
e38d6d974b Replace _Button* with _button
Identifiers starting with underscore and uppercase are reserved in C++.
2013-10-30 15:52:30 +01:00
Olivier Goffart
9500c5ffab Do not change the instruction anymore when we finish an item
The status is in the status.  Keep the original instruction so the
UI knows what to display for eath item
2013-10-30 10:46:05 +01:00
Olivier Goffart
b079cedbf5 Use the status instead of the instruction for finished items 2013-10-30 10:44:41 +01:00
Olivier Goffart
a70e51f690 Fix t1.pl since the argument of owncloudcmd have changed 2013-10-29 13:47:08 +01:00
Olivier Goffart
f707dc1a8b remove propagate function from csync_owncloud 2013-10-29 13:47:08 +01:00
Olivier Goffart
ae2b2c8cf8 Remove the other modules than owncloud
Only owncloud is supported now
2013-10-29 13:23:28 +01:00
Olivier Goffart
176daa7d96 Remove the propagate step.
Since the writing of the database has been removed, the propagate
step might as well be removed as it is performed by mirall.
2013-10-29 13:17:44 +01:00
Olivier Goffart
6e088e28f5 Adjust the mtime in case of fake conflicts
"Fake conflicts" happen when the etag changes on the server, and the
mtime changes on the client,  but the actual file is still exactly
the same.  We correctly detect them as false conflict and we do not
generate the conflict file for them.
But we should also update the local mtime to the server mtime so future
sync don't get confused.
2013-10-29 12:23:51 +01:00
Olivier Goffart
a11ecad41a Mark false conflict as UPDATED so we save their entry in the database 2013-10-29 12:14:51 +01:00
Olivier Goffart
01e2743bae Always download the conflicted files.
Conflicts have a direction==NONE. And they need to be downloaded, not uploaded
2013-10-29 12:13:30 +01:00
Olivier Goffart
75ffa787a6 emit the EndDownload progress at the right place.
It was put in rename instead of download
2013-10-29 12:13:30 +01:00
Olivier Goffart
4ad9f34807 Save the UPDATED files in the database
Those are files that were detected as "resolved conflict".
They should have been a conflict because they both were new, or both
had their local mtime or remote etag modified, but the size and mtime
is the same on the server.  This typically happen when the database is removed.
Nothing will be done for those file, but we still need to update the database.
2013-10-29 12:13:30 +01:00
Daniel Molkentin
a91799a11c Make the setup wizard compile again
- introduces more jobs
- needs more cleaning up
2013-10-28 20:01:59 +01:00
Daniel Molkentin
44fd03c058 Merge pull request #1125 from iAndre89/patch-1
Update mingw32-cross-nsis-plugin-processes and mingw32-cross-nsis-plugin...
2013-10-28 09:20:09 -07:00
Andrea Sosso
083e75998f Update mingw32-cross-nsis-plugin-processes and mingw32-cross-nsis-plugin-uac 2013-10-28 17:17:10 +01:00
Olivier Goffart
adc47948a5 Add a comment explaining OwncloudPropagator::start 2013-10-28 17:00:27 +01:00
Olivier Goffart
6e886e28e9 Merge branch 'propagator-job'
Conflicts:
	src/mirall/owncloudpropagator.cpp
2013-10-28 16:26:25 +01:00
Klaas Freitag
e63fc184a5 Options parsing added. 2013-10-28 16:07:13 +01:00
Olivier Goffart
84a40dcb59 Refactor the new propagator in jobs
This makes the code (IMHO) more easy to understand, and will allow
even more easy parallelism
2013-10-28 15:58:35 +01:00
Olivier Goffart
8e90782107 Make owncloudcmd display the debug output 2013-10-28 15:45:37 +01:00
Klaas Freitag
68ba99b7f0 Fixed fileID parsing and improved logging. 2013-10-28 15:28:34 +01:00
Klaas Freitag
b305c60e11 Make the logging a bit easier to read and more useful. 2013-10-28 14:35:31 +01:00
Klaas Freitag
f196fb582a Check for empty file Id before querying. 2013-10-28 14:34:30 +01:00
Klaas Freitag
554e35b8e5 Disabled tests to make them succeed again. Needs rework. 2013-10-25 14:43:04 +02:00
Klaas Freitag
2fefc428a8 Write file Id to journal table.
Since this requires a change of existing sync journals, database migration
code was added.
2013-10-25 13:31:00 +02:00
Klaas Freitag
17220f2604 Query file Id from server if unknown. 2013-10-25 13:31:00 +02:00
Klaas Freitag
7a68961b25 Add handling for the file_id data to the sync items. 2013-10-25 13:31:00 +02:00
Klaas Freitag
84b07b3798 First attempt to implement server side move. 2013-10-25 13:25:07 +02:00
Klaas Freitag
352f513109 Read the file Id from the HTTP reply on PUTs. 2013-10-25 13:17:37 +02:00
Klaas Freitag
578a41f766 In case the file id is not in the db, do not get data from db.
If the file_id is not yet in the database it is not ok to read the file
tree data from the db.
2013-10-25 13:16:34 +02:00
Klaas Freitag
8b4b89ecad Copy the file id. 2013-10-25 13:15:25 +02:00
Klaas Freitag
7e9490545b Add a function to query the journal by the file_id. 2013-10-25 13:14:25 +02:00
Klaas Freitag
b0509fe368 Add the file ID to the TREEWALK struct. 2013-10-25 13:13:39 +02:00
Klaas Freitag
4440acdb1d Add fileId data support to csync.
That stores a life time lasting unique Id for every file which
is maintained by the server. It is used on the client to detect
server side moves.
2013-10-25 13:12:59 +02:00
Daniel Molkentin
aa2baa45fb Cleanups, ownership for ssl error handler 2013-10-24 12:55:26 +02:00
Daniel Molkentin
eda5feb82c Bring back proper ssl handling 2013-10-24 00:29:08 +02:00
Klaas Freitag
5a26221a6b Make test cases compile, still to fix. 2013-10-23 17:51:56 +02:00
Klaas Freitag
a52fd99a95 Removed database writing code.
All this is now done in the Qt based propagator class.
2013-10-23 17:51:16 +02:00
Klaas Freitag
0bba93e8b5 Rename vio function get_file_id to get_etag.
Since we introduce a file id now that has another semantics than the etag
the name would be very misleading.
2013-10-23 15:02:13 +02:00
Klaas Freitag
e01bc20898 Remove not so useful DAV_STRTOL define. 2013-10-23 14:50:41 +02:00
Daniel Molkentin
d2b445c80c Basic port, misses wizard 2013-10-23 14:48:53 +02:00
Klaas Freitag
e7b94e437e Merge remote-tracking branch 'freitag/dav' into ocsync 2013-10-23 14:37:12 +02:00
hefee
b4621e22e6 Merge pull request #1114 from owncloud/freebsd-inotify
Need inotify on FreeBSD for libsync
2013-10-23 02:36:12 -07:00
hefee
38679f79b5 Need inotify on FreeBSD for libsync 2013-10-23 01:24:27 +02:00
hefee
a927caf2b0 Fixing Utility::platform for all platforms 2013-10-23 00:59:29 +02:00
Klaas Freitag
74c6426075 Fix call to atoll, just pass the buffer 2013-10-22 17:58:18 +02:00
Klaas Freitag
e16560249c Use atoll to convert inode from db query results. 2013-10-22 17:49:49 +02:00
Daniel Molkentin
29c846a764 WIP: Dissolve owncloudinfo class 2013-10-21 21:42:52 +02:00
Jenkins for ownCloud
804c9fbd6f [tx-robot] updated from transifex 2013-10-21 12:01:30 -04:00
Jenkins for ownCloud
2edebdef08 [tx-robot] updated from transifex 2013-10-20 06:49:52 -04:00
Klaas Freitag
0f6ca35e95 Updated changelog for 0.90.4. 2013-10-18 15:11:09 +02:00
Klaas Freitag
a1699bbbce Set version to 0.90.4 2013-10-18 14:57:11 +02:00
Daniel Molkentin
a91ba0fd48 WIP: Move network tasks from ownCloudInfo into Job classes. 2013-10-18 12:24:29 +02:00
Daniel Molkentin
a25d55a265 Add QtJson to 3rdparty, use it in ownCloudInfo 2013-10-18 02:00:19 +02:00
Jenkins for ownCloud
c99f75b247 [tx-robot] updated from transifex 2013-10-17 12:48:20 -04:00
Klaas Freitag
0e61036fa5 Build with HBF debug all time. 2013-10-17 16:40:04 +02:00
Olivier Goffart
566a6f761b Make debug info in reconcile a bit more informative 2013-10-17 13:09:04 +02:00
Olivier Goffart
0efbfb10aa Fix MOVE of directory.
Remove the right entry from the database (i.e: the original file name)
Fetch the etags of the sub entries
2013-10-17 13:06:39 +02:00
Olivier Goffart
cb8006b89f Fix comments of the propagation step.
Also, don't mark item as removed if the instruction is not REMOVE
2013-10-17 12:09:44 +02:00
Klaas Freitag
660469cbf5 Do not propagate a move of the Shared folder. 2013-10-17 10:48:31 +02:00
Daniel Molkentin
a06e551469 Merge pull request #1103 from Absolight/freebsd-port
Patches for FreeBSD
2013-10-16 08:52:46 -07:00
Olivier Goffart
746b86a1dd Save the progress db once a chunk has been upload
Allow to resume when we cancel the sync
2013-10-16 16:47:24 +02:00
Olivier Goffart
e69ecd3a80 hbf: add a callback when the chunk upload is finished
Also add an user_data to other callbacks
2013-10-16 16:46:50 +02:00
Mathieu Arnold
1c594b6a8d FreeBSD doesn't have statvfs64, like MacOS X. 2013-10-16 15:57:59 +02:00
Mathieu Arnold
2b652422b9 Don't call make directly, it can have another name. 2013-10-16 15:57:05 +02:00
Olivier Goffart
313832de8d Put the progress database within the journal 2013-10-16 12:01:14 +02:00
Klaas Freitag
738d868d38 Bump version to 0.90.3 2013-10-16 09:29:24 +02:00
Jenkins for ownCloud
250f281189 [tx-robot] updated from transifex 2013-10-15 23:26:29 -04:00
Olivier Goffart
2c63f7a24d Merge branch '1.4'
Conflicts:
	VERSION.cmake
	src/mirall/application.cpp
	src/mirall/application.h
	src/mirall/csyncthread.cpp
	src/mirall/folder.cpp
	src/mirall/folder.h
	src/mirall/folderman.cpp
2013-10-15 17:00:53 +02:00
Olivier Goffart
f9ce534687 Merge branch 'dav' into ocsync
Conflicts:
	src/csync.c
2013-10-15 16:55:22 +02:00
Olivier Goffart
6601395a6e Do not overwrite the neon error string with the HTTP error
When the errno is ERRNO_ERROR_STRING it means the error string is a
valid string with the error, and it should not be overwritten with
the HTTP reason_phrase

Fixes https://github.com/owncloud/mirall/issues/1088
2013-10-15 14:02:17 +02:00
Olivier Goffart
2479cda8ea Merge remote-tracking branch 'freitag/dav' into dav 2013-10-15 14:00:40 +02:00
Klaas Freitag
a3927c5c2c Avoid quick flickering up of the ok-icon for the sync prepare state.
For the SyncPrepare phase now the icon that was displayed before is
kept. If the folder was disabled before, the sync icon is displayed.
2013-10-14 12:59:08 +02:00
Klaas Freitag
89cfa387cd Remove bogus html formatting tag. 2013-10-14 11:46:02 +02:00
Klaas Freitag
fc10400fd5 Also count deleted and renamed files to overall count 2013-10-14 11:42:57 +02:00
Klaas Freitag
3421f1871f Disable inode check for all platforms. (core #4953) 2013-10-14 11:42:43 +02:00
Klaas Freitag
958d712199 Also count deleted and renamed files to overall count 2013-10-14 11:15:44 +02:00
Jenkins for ownCloud
d2301c811e [tx-robot] updated from transifex 2013-10-13 19:29:34 -04:00
Klaas Freitag
df3020ee91 Remove resetting of the internal csync error state.
Resetting this in trivial helper functions leads to the fact that
error conditions happening in functions calling these helpers get
lost which should not happen.
2013-10-11 10:27:04 +02:00
Klaas Freitag
f3755bb708 Remove resetting of the internal csync error state.
Resetting this in trivial helper functions leads to the fact that
error conditions happening in functions calling these helpers get
lost which should not happen.
2013-10-11 10:21:59 +02:00
Jenkins for ownCloud
006be43c73 [tx-robot] updated from transifex 2013-10-10 22:18:01 -04:00
Klaas Freitag
c34b861332 Disable inode check for all platforms. (core #4953) 2013-10-10 12:22:59 +02:00
Daniel Molkentin
2240039442 Fix literal occurances of "ownCloud" in GUI 2013-10-10 11:34:45 +02:00
Klaas Freitag
3c95d342ee Handle sync enable flag correctly in folder scheduling.
This fixes bug #1083.
2013-10-09 14:27:28 +02:00
Klaas Freitag
53ac5427a8 Integrate progress dialog into settings dialog. 2013-10-09 14:27:28 +02:00
Klaas Freitag
1ed8afba09 Minor changes. 2013-10-09 14:27:28 +02:00
Klaas Freitag
ef81a8a2ad Use qint64 rather than int64_t. 2013-10-08 15:41:15 +02:00
Klaas Freitag
fa9d1614e7 Add some progress meassuring logging. 2013-10-08 14:07:46 +02:00
Jenkins for ownCloud
fe46b588af [tx-robot] updated from transifex 2013-10-07 11:14:31 -04:00
Klaas Freitag
a7d298a441 Fix c99 warning. 2013-10-07 12:59:35 +02:00
Jenkins for ownCloud
290de7c430 [tx-robot] updated from transifex 2013-10-05 10:12:16 -04:00
Olivier Goffart
05fbfb520f Protect the sync database by a mutex since it is used by the thread 2013-10-04 21:05:46 +02:00
Daniel Molkentin
805e1330ad Compile with MinGW 2013-10-04 20:29:42 +02:00
Olivier Goffart
7c6fcf688c Fix the fact that some success was reported as error 2013-10-04 15:55:59 +02:00
Olivier Goffart
127055dd70 Refactor a bit the error reporting from the propagator
Add different classes of error failures.
Fatal error means the sync should be stopped.
SoftErrors are not to be displayed to the user.

We still need to make a classification of the errors.
2013-10-04 15:55:59 +02:00
Markus Goetz
f4929e849e CsyncThread: Activate recursive PROPFIND 2013-10-04 15:42:40 +02:00
Markus Goetz
617949f2e1 Recursive PROPFIND: Change and improve
It is disabled by default, but can be enabled by the library
user on demand. We suggest to enable it for the first sync
and when the local DB is small enough.
It only gets used for the first PROPFIND. In case the server
supports the Depth 'infinity', we keep the cache. In case
the server does not support it (= reports only 1 level)
we will still use the result by converting it to the legacy
PROPFIND cache.
2013-10-04 13:23:10 +02:00
Mackie Messer
ba9ac03b0b Put plugins in PlugIns, not Plugins on Mac
Requires 770539f0a5 on csync
2013-10-04 13:01:46 +02:00
Mackie Messer
0257f7e169 Add sqlite plugin for OS X 2013-10-04 13:01:46 +02:00
Daniel Molkentin
763cb43e46 Add qsqlite plugin on Windows 2013-10-04 12:45:17 +02:00
Daniel Molkentin
770539f0a5 Look in PlugIns, not Plugins on Mac (consistent with Qt) 2013-10-04 12:42:08 +02:00
Olivier Goffart
8ed2588cdf Fix build with Qt5 2013-10-03 23:14:10 +02:00
Olivier Goffart
d8d2d36638 Fix SQL Query 2013-10-03 23:00:47 +02:00
Olivier Goffart
afc13e70b9 fix Qt5 test compilation 2013-10-03 22:51:40 +02:00
Olivier Goffart
baa9ba089c Save the database after each operation. 2013-10-03 22:41:12 +02:00
Olivier Goffart
3495b822a5 TMP 2013-10-03 20:01:07 +02:00
Daniel Molkentin
be88d425fc Fix connecting to the mysql db 2013-10-03 19:52:09 +02:00
Klaas Freitag
94a06cec5b WIP on the journal database. 2013-10-03 18:52:02 +02:00
Olivier Goffart
9b31ef0ca8 Do not write to the db if we did not do csync_propagate 2013-10-03 18:37:13 +02:00
Klaas Freitag
4008f6b309 Fix file status enum names. 2013-10-03 17:55:32 +02:00
Klaas Freitag
daac6886a0 Added method setFileRecord to update sync journal 2013-10-03 17:48:14 +02:00
Daniel Molkentin
e304dfd5b9 Add socketapi
Slightly amended by: Daniel Molkentin <danimo@owncloud.com>
2013-10-03 17:05:01 +02:00
Dominik Schmidt
d0af48c417 Add KDE tmp files to .gitignore 2013-10-03 17:05:00 +02:00
Klaas Freitag
2e3aabf99b Read header without prefix path now that it's in 3rdparty. 2013-10-03 16:47:48 +02:00
Klaas Freitag
59bf8740a0 Add c_jhash.h header from csync to 3rdparty. 2013-10-03 16:41:23 +02:00
Olivier Goffart
21cd57228e Fix build with Qt5
Missing SQL module
2013-10-03 16:29:47 +02:00
Klaas Freitag
4501c64e61 Do not include whole header of csync_exclude. 2013-10-03 16:22:31 +02:00
Klaas Freitag
273105e78b Handle new case SyncAbortRequested. 2013-10-03 16:21:54 +02:00
Klaas Freitag
2707116350 Minor fixes for file_status 2013-10-03 16:12:50 +02:00
Klaas Freitag
c7d30bae98 Handle new sync result enum. 2013-10-03 15:32:44 +02:00
Klaas Freitag
be328581a7 Implemented sync status function for overlay icons. 2013-10-03 15:29:10 +02:00
Klaas Freitag
c32bc27b3e Add sync journal database class that opens the csync db to read from it. 2013-10-03 15:29:10 +02:00
Klaas Freitag
0fef88a9b9 Some comments added. 2013-10-03 15:29:10 +02:00
Klaas Freitag
3e0fc56495 Dont show the [i] icon in the tray, see bug #942 2013-10-03 15:29:10 +02:00
Olivier Goffart
7ea3fc1533 Fix compilation of the test 2013-10-03 14:45:00 +02:00
Olivier Goffart
396ec4f888 Fix race condition in the logger.
Logs can come from multiple thread, we need to keep the _logstream
protected by a mutex
2013-10-03 14:37:13 +02:00
Olivier Goffart
79ea7c3eed Abort the sync asynchroniously
Don't block the GUI when clicking on pause

Mirall issue #968
2013-10-03 14:36:32 +02:00
Olivier Goffart
b18810f381 Implement abort with the new propagator
abort was implemented in csync after the new propagator was written,
so it was not working with the new propagator
2013-10-03 14:35:56 +02:00
Jenkins for ownCloud
51d9cf099c [tx-robot] updated from transifex 2013-10-03 08:09:15 -04:00
Olivier Goffart
be6e208328 Merge branch 'dav' into ocsync
Conflicts:
	src/csync_update.c
2013-10-03 12:08:51 +02:00
Daniel Molkentin
339ed20abc Utility::showInFileManager(): Substitute valid desktop file parameters 2013-10-03 12:05:00 +02:00
Olivier Goffart
b24f894a32 Set the start_id while aborting. This allow to resume from this block 2013-10-03 11:58:28 +02:00
Klaas Freitag
44ed577992 List results for all folders, not only one. 2013-10-03 11:36:18 +02:00
Klaas Freitag
f6685accc3 Use subdirs for more xdg dirs to go through 2013-10-02 19:23:06 +02:00
Klaas Freitag
2c2e79c13d Consider the folder of items to delete from info window. 2013-10-02 19:23:06 +02:00
Daniel Molkentin
81961068a2 Utility: Move OS specific implementations into separate files 2013-10-02 19:15:56 +02:00
Daniel Molkentin
4e91a6450c Change the recent changes menu and file item dialog behavior
Recent Changes:
- "No items synced recently"
- Add separator to the details section
- Make items clickable (will open file location in file manager)
- If a file was deleted, disable it

File Item Dialog:
- Make items clickable (will open file location in file manager)

This is implemented via a new method Utility::showInFileManager(QString),
which goes through great lengths to use use the right file manager on all
OSes/WMs/DEs, and make sure it selects the file in question if possible.
This needs good testing, though.

Fixes #1044
2013-10-02 18:17:48 +02:00
Daniel Molkentin
3dc2547bb5 WIP 2013-10-02 18:16:32 +02:00
Olivier Goffart
fb54cc8597 Fix the test.
conflictcopy is no longer in the default config file
2013-10-02 16:05:24 +02:00
Olivier Goffart
47f299f0ee Send the last known etag to the server in a If-Match header
That way we avoid race conditions in case the file changed between the
update and the reconcile
2013-10-02 15:57:49 +02:00
Olivier Goffart
d135aab86c clear the etag in every cases, not only when we upload files 2013-10-02 15:57:49 +02:00
Olivier Goffart
e2a2b882bb Remove the unused errorDetails
It was not displayed to the user. Only use errorString instead.

Also report neon error to the user
2013-10-02 15:57:49 +02:00
Klaas Freitag
d8309a64cb Even more cleanup. 2013-10-02 15:55:15 +02:00
Olivier Goffart
77b3780ab2 Do not put the conflict_copies in the ocsync config file.
Because owncloud sets it too true programmaticaly, and we don't
want to overwrite it with the config
2013-10-02 15:33:48 +02:00
Olivier Goffart
b29a31d36a httpbf: add a 'previous_etag' entry in that is sent in If-Match header 2013-10-02 15:33:48 +02:00
Klaas Freitag
55722099fa More refactoring: Logger and Logbrowser out of application class. 2013-10-02 15:29:24 +02:00
Jenkins for ownCloud
48abe62151 [tx-robot] updated from transifex 2013-10-02 09:08:33 -04:00
Klaas Freitag
fb582d8b3d Fix macos test cases. 2013-10-02 12:33:10 +02:00
Klaas Freitag
dbe63727a3 Quote regexp to hopefully not confuse cmake 2.6 2013-10-02 09:15:17 +02:00
Klaas Freitag
3e27afadd5 Use a cross platform capable mkdir mask 2013-10-02 08:51:11 +02:00
Klaas Freitag
e7c72fc60c Keep an out pointer on the beginning of the buffer.
For some reason the iconv function changes the pointer to the buffer but
for the return one ptr has to be kept at the start of the buf.
2013-10-02 08:48:58 +02:00
Klaas Freitag
da1245bcd8 Check if there really is a file to delete before doing unlink.
The (not succeeding) call to unlink might change errno which disturbs
the test code.
2013-10-02 08:47:55 +02:00
Klaas Freitag
2149814428 Fix/enhance user information about problems on startup.
Pass the error conditions to the gui class.
2013-10-01 18:25:43 +02:00
Klaas Freitag
6a73fd984c Added missing cmake modules for cmake 2.6 2013-10-01 16:09:59 +02:00
Klaas Freitag
ea1c951006 Refactoring: Moved all GUI related computing out of application class.
Created ownCloudGui class to contain all gui related stuff.
2013-10-01 13:58:01 +02:00
Klaas Freitag
4a96f9a5c9 Add Mirall namespace. 2013-10-01 13:58:01 +02:00
Klaas Freitag
fcc4151810 Fix sequence of directories in help text. 2013-10-01 13:58:01 +02:00
Klaas Freitag
82cd79c004 Add unify defines to header. 2013-10-01 13:58:00 +02:00
Klaas Freitag
74983af3b4 Make evaluateSync public, review pls. 2013-10-01 13:58:00 +02:00
Klaas Freitag
f5bcb11fe9 Add connected server to error message. 2013-10-01 13:58:00 +02:00
Klaas Freitag
f6f1c638a5 Allow Constructor to be public, for synclibrary 2013-10-01 13:58:00 +02:00
Klaas Freitag
ef9f0edd61 Ignore all csync journal files right at beginning. 2013-10-01 13:18:36 +02:00
Klaas Freitag
0c2f9177d1 For silently ignored files return immediately. 2013-10-01 13:18:06 +02:00
Daniel Molkentin
e250672e4a CMake: libhttplib -> httplib 2013-09-30 23:16:04 +02:00
Jenkins for ownCloud
13093f5de3 [tx-robot] updated from transifex 2013-09-30 09:04:25 -04:00
Daniel Molkentin
df36ebf308 Merge branch '1.4'
Conflicts:
	VERSION.cmake
2013-09-30 13:34:10 +02:00
Jenkins for ownCloud
0d0c6a15fb [tx-robot] updated from transifex 2013-09-28 23:02:52 -04:00
Jenkins for ownCloud
b4911cc5ce [tx-robot] updated from transifex 2013-09-26 23:55:07 -04:00
Klaas Freitag
bae3838513 Nicer name for HTTP header for mtime. 2013-09-26 15:07:06 +02:00
Klaas Freitag
f3acf2447c Remove duplicated code from merge. 2013-09-26 15:03:35 +02:00
Klaas Freitag
8f1e318cde Set version to 0.90.2 2013-09-26 10:30:36 +02:00
Klaas Freitag
532bc450fb Added changelog entry. 2013-09-26 10:30:03 +02:00
Klaas Freitag
de9dcbd231 Transmit the new mtime of the file with the PUT request.
If the server supports it already, we can save another request by
sending the mtime as a header value in the PUT request and check the
servers reply for a acknoledge header.
2013-09-25 14:26:13 +02:00
Klaas Freitag
8d14286bd3 Merge dav and transmit the mtime with the PUT request 2013-09-25 14:23:04 +02:00
Klaas Freitag
f1b4a7a0ae Disable comparison of local inode values for the win32 platform.
Bug owncloud/mirall#779 reports about continous upload of files
even though nothing has changed. Logfiles show the fact that the
inode on windows is not reliable for this. Disabled as a result
to fix bug #779.
2013-09-25 11:39:06 +02:00
Klaas Freitag
33d55c0757 Remove unused commented code. 2013-09-25 11:34:50 +02:00
Jenkins for ownCloud
00fff7f793 [tx-robot] updated from transifex 2013-09-24 11:58:13 -04:00
Klaas Freitag
5cf13dfa32 Make logging work again. 2013-09-24 15:56:03 +02:00
Klaas Freitag
27b9a5aed9 Merge branch '1.4', brings in the changes we did for 1.4.1 2013-09-24 14:18:25 +02:00
Klaas Freitag
740f0091f2 Updated version to 0.90.1 2013-09-23 16:37:31 +02:00
Klaas Freitag
ed636ffc9c Added Changelog entries. 2013-09-23 16:37:18 +02:00
Jenkins for ownCloud
4de99d2540 [tx-robot] updated from transifex 2013-09-22 11:52:39 -04:00
Jenkins for ownCloud
5b60522e5e [tx-robot] updated from transifex 2013-09-20 09:44:46 -04:00
Klaas Freitag
0e17b00675 Added a new error code HBF_TRANSFER_NOT_ACKED.
If the server does not acknowledge the transfer with sending back an
ETag after the last missing chunk was uploaded, this is an error
which is now reported by this new error type.
2013-09-19 12:52:54 +02:00
Klaas Freitag
740a275836 Cleaned and added some debugging output. 2013-09-19 12:52:11 +02:00
Klaas Freitag
125a63bf8d More descriptive error message. 2013-09-19 12:50:44 +02:00
Klaas Freitag
b4f14e086d Added a new error code HBF_TRANSFER_NOT_ACKED.
If the server does not acknowledge the transfer with sending back an
ETag after the last missing chunk was uploaded, this is an error
which is now reported by this new error type.
2013-09-19 12:40:17 +02:00
Klaas Freitag
6d8cef3bb6 Cleaned and added some debugging output. 2013-09-19 12:38:20 +02:00
Jenkins for ownCloud
b334c82fdd [tx-robot] updated from transifex 2013-09-18 10:45:45 -04:00
Daniel Molkentin
d657a679ba Fix for previous commit 2013-09-18 16:28:01 +02:00
Klaas Freitag
219ce5fc4c Make compile on win32 without fnmatch 2013-09-18 16:17:58 +02:00
Klaas Freitag
2ec1bcfc29 Make compile on win32 without fnmatch. 2013-09-18 16:15:08 +02:00
Klaas Freitag
373746c296 Fix crash in case of NE_TIMEOUT happened.
Fixes https://github.com/owncloud/mirall/issues/1010

In case of NE_TIMEOUT the request is repeated for three times. In this
case, the hooks weren't correctly unhooked which caused a crash.
2013-09-18 12:58:17 +02:00
Klaas Freitag
525278450a Fix crash in case of NE_TIMEOUT happened.
Fixes https://github.com/owncloud/mirall/issues/1010

In case of NE_TIMEOUT the request is repeated for three times. In this
case, the hooks weren't correctly unhooked which caused a crash.
2013-09-18 12:57:15 +02:00
Daniel Molkentin
91e527dc2a Fix csync_version.h creation for cmake 2.6 2013-09-17 22:38:19 +02:00
Daniel Molkentin
82d31095f2 Fix csync_version.h creation for cmake 2.6 2013-09-17 22:37:59 +02:00
Jenkins for ownCloud
9ed4aa4111 [tx-robot] updated from transifex 2013-09-16 10:34:17 -04:00
Klaas Freitag
de074804eb Detect empty etags coming from server side. 2013-09-16 16:15:15 +02:00
Klaas Freitag
c54a3ab7cc Added missing parenthesis. 2013-09-16 14:16:14 +02:00
Jenkins for ownCloud
41b1b53c76 [tx-robot] updated from transifex 2013-09-13 20:47:28 -04:00
Thomas Müller
60ef5535c6 fixing testOctetsToString
(cherry picked from commit 78c8f13645)
2013-09-13 20:14:53 +02:00
Thomas Müller
e38d0807c9 moving back to 1024 as divider for kB, MB, GB & TB
(cherry picked from commit c87c456ae0)
2013-09-13 20:14:47 +02:00
Daniel Molkentin
7045a6c239 Merge pull request #996 from owncloud/dont-ship-doc_scripts
Don't ship doc/scripts/README.rst via sphinx
2013-09-12 17:25:39 -07:00
hefee
2b1602872c Don't ship doc/scripts/README.rst via sphinx 2013-09-13 01:26:02 +02:00
Klaas Freitag
e09cb0c068 Move the check on the progressdb to the correct place, no crash anymore. 2013-09-12 15:37:10 +02:00
Klaas Freitag
62f4d118ea Use new interface to csync_excluded. 2013-09-12 15:30:47 +02:00
Klaas Freitag
302f81b1d2 Adjusted tests for csync_excluded. 2013-09-12 15:30:13 +02:00
Klaas Freitag
1c87314b88 Fix a typo. 2013-09-12 15:30:04 +02:00
Klaas Freitag
ba1184f5ab Make csync_excluded function work gitignore like. 2013-09-12 15:29:52 +02:00
Daniel Molkentin
30d8290d1c Replace every occurrence of csync with ocsync in the documentation.
Patch by Sandro Knauß <buggs@sandroknauss.de>

Fixes Mirall issue #991

Conflicts:
	doc/ocsync.1.txt
2013-09-12 15:29:37 +02:00
Daniel Molkentin
d4da443b12 Fixing spelling error 'transferred'
Lintian complains about the wrong spelling for transferred

Patch by Sandro Knauß <bugs@sandroknauss.de>

Fixes Mirall issue #990
2013-09-12 15:28:41 +02:00
Klaas Freitag
1f8aee8a4f Adjusted tests for csync_excluded. 2013-09-12 14:47:17 +02:00
Klaas Freitag
526d23583a Use new interface to csync_excluded. 2013-09-12 14:47:17 +02:00
Klaas Freitag
20821e6ffd Fix a typo. 2013-09-12 14:47:17 +02:00
Klaas Freitag
d31f11fe88 Make csync_excluded function work gitignore like. 2013-09-12 14:47:17 +02:00
Daniel Molkentin
dbad6d641e Replace every occurrence of csync with ocsync in the documentation.
Patch by Sandro Knauß <buggs@sandroknauss.de>

Fixes Mirall issue #991
2013-09-12 13:32:17 +02:00
Daniel Molkentin
c33e21a8c6 Fixing spelling error 'transferred'
Lintian complains about the wrong spelling for transferred

Patch by Sandro Knauß <bugs@sandroknauss.de>

Fixes Mirall issue #990
2013-09-12 13:32:14 +02:00
Daniel Molkentin
b488ad12c2 Do not build org and com theming when building from tar ball
Fixes #989
2013-09-12 12:56:24 +02:00
Daniel Molkentin
574e029254 Setting thread priority is only possible after calling start() 2013-09-11 15:51:06 +02:00
Jenkins for ownCloud
91759c4a27 [tx-robot] updated from transifex 2013-09-11 06:40:51 -04:00
Klaas Freitag
ce5934461e Do not en- or disable the watcher in setSyncEnabled.
The watcher is handled through the start and stop sync hooks in the
folder class. Even if the the folder is disabled and the watcher
fires, the folder does not schedule because it checks first if the
folder is enabled.
2013-09-11 12:33:07 +02:00
Klaas Freitag
d22dc6e6af Exclude the progress database. 2013-09-11 10:43:05 +02:00
Klaas Freitag
6f637e40d8 Enable and disable syncing also in the folder objects. 2013-09-11 10:32:09 +02:00
Klaas Freitag
ec06663dee Handle startup network errors correctly. 2013-09-11 10:32:09 +02:00
Klaas Freitag
3c5c432e1d Minor code cleanups- 2013-09-11 10:32:09 +02:00
Olivier Goffart
927f7549d4 Revert "Compile (find httpbf)"
This reverts commit 2d2e843804.

Turns out i had an old build of csync
2013-09-11 09:00:27 +02:00
Olivier Goffart
177114f8d9 Initialize the size of the SyncItem 2013-09-11 08:49:09 +02:00
Olivier Goffart
6bfdfd1af0 Fix progress with new propagator 2013-09-11 08:42:29 +02:00
Olivier Goffart
2d2e843804 Compile (find httpbf) 2013-09-11 08:11:03 +02:00
Daniel Molkentin
55f2fcb4c6 Folder Wizard: More sanity checks
Check if a server folder or its parent
is already part of a sync and refuse
to create a sync in this case.

Avoids "recursive syncing"

Fixes #962
2013-09-10 23:37:52 +02:00
Daniel Molkentin
59425741b6 Send basic auth in utf8.
Implies circumventing QAuthenticator and handling
authentication manually again.

Fixes #941
2013-09-10 23:03:52 +02:00
Daniel Molkentin
3577ba2981 Fix httpbf/neon linkage 2013-09-10 19:50:44 +02:00
Daniel Molkentin
93fdbcd371 reversed decision: httpbf stays statically linked 2013-09-10 19:47:18 +02:00
Jenkins for ownCloud
d4477b0d65 [tx-robot] updated from transifex 2013-09-10 09:42:18 -04:00
Daniel Molkentin
48b4c57d92 Use shared version of libhttpbf, package it on win 2013-09-10 14:45:08 +02:00
Daniel Molkentin
6a2631631c Make httpbf a shared lib
remove the lib suffix along the way
2013-09-10 14:41:42 +02:00
Klaas Freitag
9cb3af801a Fixes for win32 after upstream merge. 2013-09-10 12:59:29 +02:00
Daniel Molkentin
00d09763af Fix compile error 2013-09-10 11:37:52 +02:00
Daniel Molkentin
5639572ef3 Wait up to 30 secs before complaining about missing systray 2013-09-10 11:37:52 +02:00
Daniel Molkentin
1e7716abb4 Merge pull request #964 from morriswinkler/patch-1
Update building.rst
2013-09-10 02:28:03 -07:00
morriswinkler
751181d14f Update building.rst
eider fix it or add the note here
2013-09-09 19:09:08 +02:00
Olivier Goffart
013b87f9c5 ignore the progress database 2013-09-09 15:18:28 +02:00
Olivier Goffart
6da2f6bbaa Qt5: QSettings is no longer case insensitive 2013-09-09 14:00:13 +02:00
Olivier Goffart
198cb43ad6 Qt5: Q_WS_* macro were deprecated, replace by QT_OS_*
in particular, QT_WS_X11 is no longer defined
2013-09-09 13:31:39 +02:00
Jenkins for ownCloud
db648a0268 [tx-robot] updated from transifex 2013-09-08 20:37:37 -04:00
Jenkins for ownCloud
7cea2225de [tx-robot] updated from transifex 2013-09-07 04:38:12 -04:00
Daniel Molkentin
51a7cbeb55 kill warning 2013-09-05 20:15:55 +02:00
Daniel Molkentin
171a9e1575 fix Qt 5 build on Mac/Win 2013-09-05 19:53:39 +02:00
Daniel Molkentin
1a10663c2b csync_vio: fix defines 2013-09-05 19:50:20 +02:00
Klaas Freitag
76deabe4df Use List to handle errors and display multiline. 2013-09-05 19:28:23 +02:00
Daniel Molkentin
9c1a4fa68e gcc/clang OS X does not know about __thread
This needs a proper implementation
2013-09-05 19:03:14 +02:00
Daniel Molkentin
6b9950a9a0 Qt5: DBUS is only needed for FDO 2013-09-05 18:41:49 +02:00
Daniel Molkentin
c6ed7dc586 Tests: Find test lib in Qt5 2013-09-05 18:06:00 +02:00
Daniel Molkentin
35ac6610c7 Compile with Qt5 on Linux 2013-09-05 17:13:31 +02:00
Jenkins for ownCloud
121efd8ff1 [tx-robot] updated from transifex 2013-09-05 07:30:27 -04:00
Daniel Molkentin
23d8f01012 Fix locating translations on linux 2013-09-05 11:08:00 +02:00
Daniel Molkentin
573aaec9fd Fix propagator test 2013-09-04 17:29:19 +02:00
Klaas Freitag
8fe102662d Merge branch 'propagator-ng': Fixes to work with new LGPL ocsync.
Conflicts:
	src/mirall/csyncthread.cpp
2013-09-04 16:33:06 +02:00
Olivier Goffart
83cdece0b4 Merge remote-tracking branch 'owncloud/ocsync' into ocsync 2013-09-04 15:53:47 +02:00
Klaas Freitag
4cc1ef3624 Merge remote-tracking branch 'freitag/dav' into ocsync
Conflicts:
	src/csync_propagate.c
	src/csync_statedb.c
2013-09-04 15:51:38 +02:00
Klaas Freitag
b676ffe208 Some more info about the exclude matching. 2013-09-04 15:17:43 +02:00
Daniel Molkentin
625b21152e Merge branch 'qt5' 2013-09-04 15:01:21 +02:00
Daniel Molkentin
385759f3c9 bump version 2013-09-04 15:00:53 +02:00
Daniel Molkentin
12b9b87c61 Update 0.90.0 changelog 2013-09-04 11:15:42 +02:00
Daniel Molkentin
0e1858ef2f 0.90.0 for final release with mirall 1.4 2013-09-03 16:44:46 +02:00
Klaas Freitag
d65b9aa404 Fixed exclude test. 2013-09-03 15:15:14 +02:00
Klaas Freitag
8b224e2c0a Don't warn about a finished sqlite3 query. 2013-09-03 11:47:19 +02:00
Klaas Freitag
ce554eb44a Let csync exclude report the exclude reason. 2013-09-02 17:23:17 +02:00
Olivier Goffart
bf6d0a521c Compile with Qt5 2013-08-28 20:58:22 +02:00
Olivier Goffart
336bbb2403 Compile with Qt4 2013-08-28 20:14:40 +02:00
Daniel Molkentin
73da086964 Initial changes to also build on Qt5, doesn't compile yet 2013-08-28 17:03:31 +02:00
Daniel Molkentin
58f4f3623f Startup: Unity has no proper Systray implementation
...so it can't respond to isSysTrayAvailable()
2013-08-28 15:51:00 +02:00
Daniel Molkentin
bff9b3843f 0.83.0 2013-08-23 14:35:45 +02:00
Olivier Goffart
ef1a47a5a2 Save the database with the new propagator 2013-08-21 15:42:03 +02:00
Olivier Goffart
3c2bb1e2bc Compile after the merge 2013-08-21 15:29:04 +02:00
Olivier Goffart
3a57eb1b54 Add the size in the TREE_WALK_FILE structur 2013-08-21 13:24:49 +02:00
Olivier Goffart
79c1514a2b Chenge the headers to LGPL for the file that were added in the dav branch
The LGPL changes was not merged for the new files
2013-08-21 13:23:52 +02:00
Olivier Goffart
24af9f38f4 Merge branch 'csync_lgpl' into propagator-ng
Conflicts:
	src/mirall/csyncthread.cpp
	src/mirall/csyncthread.h
	src/mirall/folder.cpp
	src/mirall/progressdispatcher.h
	src/mirall/syncfileitem.h
2013-08-21 13:19:02 +02:00
Olivier Goffart
9527b9f4d2 Compile fix
That file was removed
2013-08-21 12:59:22 +02:00
Klaas Freitag
98efab83a1 Compile against ocsync based on csync 0.50 2013-08-20 13:26:03 +02:00
Klaas Freitag
6d259f80e0 Remove file. 2013-08-19 17:01:33 +02:00
Klaas Freitag
0afbbeb8dc Log the new module capabilities. 2013-08-19 17:01:21 +02:00
Klaas Freitag
4dbee1015f Some minor compile fixes. 2013-08-19 17:00:56 +02:00
Olivier Goffart
835813a86f Fix the tests after merge 2013-08-18 20:13:27 +02:00
Olivier Goffart
b4efcf1627 Compile the tests after merge
(Still not passing)
2013-08-18 19:11:36 +02:00
Olivier Goffart
56d5359f5b Fix compilation after merge
Still untetested
2013-08-18 18:55:32 +02:00
Klaas Freitag
e0d121d370 More minor cleanups. 2013-08-18 18:18:05 +02:00
Klaas Freitag
a5de9994ec Set a proper error message on in-between-changes. 2013-08-18 18:18:05 +02:00
Olivier Goffart
d098a12321 leak fix 2013-08-18 18:18:05 +02:00
Daniel Molkentin
6cda2f0c24 Do not report removable ignored files 2013-08-18 17:52:45 +02:00
Olivier Goffart
4e04a2ccb0 Addapt to new error codes 2013-08-18 17:29:23 +02:00
Markus Goetz
b923554935 Revert "DB: Don't use metadata_tmp table"
Let's not do this in the release branch

This reverts commit 79f72a1211.
2013-08-18 17:13:19 +02:00
Markus Goetz
6474780d80 Revert "DB: More easy IO mode"
This reverts commit ea6caed5a3.
2013-08-18 17:12:59 +02:00
Markus Goetz
79f72a1211 DB: Don't use metadata_tmp table
Not sure why this was ever needed
2013-08-18 17:05:04 +02:00
Olivier Goffart
ec8adf2bd7 Fix compilation of src/std after merge 2013-08-18 16:51:02 +02:00
Olivier Goffart
2afdc9d095 Adapt to new multybyte api after merge
(Search and replace)
2013-08-18 16:43:46 +02:00
Olivier Goffart
9f5388544a Fix cmake after merge
iniparser dependency is gone.
2013-08-18 16:29:35 +02:00
Olivier Goffart
b5ed352aa3 Merge remote-tracking branch 'origin/master' into ocsync
Only confluct resolution, do not compile or works

Conflicts:
	CMakeLists.txt
	CPackConfig.cmake
	ConfigureChecks.cmake
	client/csync_client.c
	cmake/Modules/DefineCompilerFlags.cmake
	cmake/Modules/DefineInstallationPaths.cmake
	cmake/Modules/FindIconv.cmake
	cmake/Modules/FindIniparser.cmake
	cmake/Modules/FindNeon.cmake
	config.h.cmake
	config/CMakeLists.txt
	config/ocsync.conf
	doc/CMakeLists.txt
	modules/csync_owncloud.c
	modules/csync_sftp2.c
	src/CMakeLists.txt
	src/csync.c
	src/csync.h
	src/csync_config.c
	src/csync_exclude.c
	src/csync_lock.c
	src/csync_macros.h
	src/csync_misc.c
	src/csync_misc.h
	src/csync_private.h
	src/csync_propagate.c
	src/csync_statedb.c
	src/csync_statedb.h
	src/csync_update.c
	src/csync_util.c
	src/csync_util.h
	src/std/c_dir.c
	src/std/c_file.c
	src/std/c_private.h
	src/std/c_string.c
	src/std/c_string.h
	src/std/c_time.c
	src/vio/csync_vio.c
	src/vio/csync_vio.h
	src/vio/csync_vio_file_stat.h
	src/vio/csync_vio_local.c
	src/vio/csync_vio_method.h
	tests/CMakeLists.txt
	tests/csync_tests/check_csync_statedb_load.c
	tests/csync_tests/check_csync_statedb_query.c
	tests/csync_tests/check_csync_treewalk.c
	tests/csync_tests/check_csync_update.c
	tests/ownCloud/HTTP/DAV.pm
	tests/ownCloud/ownCloud/Test.pm
	tests/std_tests/check_std_c_str.c
	tests/vio_tests/check_vio.c
2013-08-18 16:21:18 +02:00
Markus Goetz
ea6caed5a3 DB: More easy IO mode
We move the DB anyway at the end, no need to be so harsh
2013-08-18 16:10:30 +02:00
Olivier Goffart
868f8029a2 Close the database file in all cases.
If the database was empty, we forgot to close the file descriptor,
making it impssible to remove the database and replace it with the real
one
2013-08-16 12:23:26 +02:00
Olivier Goffart
14219a1ea5 Log error of sqlite3_close 2013-08-15 18:39:26 +02:00
Daniel Molkentin
1663c84db7 Return an error if rename fails on win32.
Amends 9ea39dbaa9.
2013-08-15 18:06:27 +02:00
Klaas Freitag
9ea39dbaa9 win32: Retry renaming in case of access denied. 2013-08-15 17:40:30 +02:00
Klaas Freitag
d3ec897fee Bump version to 0.82.0 2013-08-15 17:39:00 +02:00
Olivier Goffart
38a5ff42e0 show the errno in the debug when renaming the db fails 2013-08-15 13:51:57 +02:00
Olivier Goffart
e4128cd5d8 progress with new propagator 2013-08-14 19:59:16 +02:00
Klaas Freitag
274da3ad0b std: Fix uninitialized rc that polutes return value. 2013-08-14 19:03:36 +02:00
Olivier Goffart
f8e6326880 Default to not cancel
So that the owncloudcmd client is not blocked
2013-08-14 15:44:30 +02:00
Olivier Goffart
67c5f513aa Fix compilation after merge 2013-08-14 15:36:34 +02:00
Olivier Goffart
0589bfc51b Merge branch 'master' into propagator-ng
This just fix the conflict.
Do not compile or work yet

Conflicts:
	src/CMakeLists.txt
	src/mirall/csyncthread.cpp
	src/mirall/csyncthread.h
	src/mirall/owncloudfolder.cpp
	src/mirall/syncfileitem.h
	test/CMakeLists.txt
2013-08-14 15:19:21 +02:00
Olivier Goffart
04f32bd397 Revert "TMP threaded"
This reverts commit 5bb4c3be43.
2013-08-14 14:59:32 +02:00
Daniel Molkentin
f054ca3f72 Disable Werror by default, set CSYNC_STRICT=ON to disable 2013-08-08 16:19:44 +02:00
Klaas Freitag
74b7d441c8 Bump version to 0.81.0 2013-08-08 16:00:20 +02:00
Klaas Freitag
1df602be26 Updated changelog for 0.81.0 2013-08-08 15:51:30 +02:00
Daniel Molkentin
d75f807c01 Send OC-Total-Length
As per https://github.com/owncloud/core/issues/4343
2013-08-08 00:48:48 +02:00
Klaas Freitag
2d3272182b Add correct cast to 64 bit type. 2013-08-07 16:58:46 +02:00
Daniel Molkentin
444946ae79 Fix update test 2013-08-07 16:58:29 +02:00
Daniel Molkentin
6a6bfd1c89 Use proper compiler switch 2013-08-07 16:58:09 +02:00
Klaas Freitag
26c0bbd0eb open test db in test correctly. 2013-08-07 15:39:30 +02:00
Klaas Freitag
0191fa43e0 Fix tests after statedb_open had moved. 2013-08-07 12:43:32 +02:00
Klaas Freitag
76ee4cb3ba Add symlinks to the file tree with instruction IGNORE 2013-08-07 12:14:29 +02:00
Klaas Freitag
7b22972630 Add excluded files to the tree with IGNORE instruction 2013-08-06 18:01:34 +02:00
Klaas Freitag
d88a5e1b11 Rename progress init function to reasonable name. 2013-08-06 15:42:02 +02:00
Klaas Freitag
d585742609 Log if the Etag in the journal is empty. 2013-08-06 12:12:53 +02:00
Klaas Freitag
d910a3af8b Notify sync start and end always. 2013-08-06 12:12:52 +02:00
Olivier Goffart
6ad2920809 Load the statedb in csync_update rather than in csync_init.
This also allow to reduce duplicate code in csync_commit, and ease the
error reporting of csync_commit

csync_commit is supposed to be done after the previous sync, it is
better to open the statedb before the sync
2013-08-06 12:12:52 +02:00
Klaas Freitag
a42d942a35 Finalize progress before error handling. 2013-08-06 12:12:52 +02:00
Klaas Freitag
721443feea deliver file size with the progress callback in propagate. 2013-08-06 12:12:52 +02:00
Klaas Freitag
ba73405613 Defines for progress start- and end delete. 2013-08-06 12:12:52 +02:00
Klaas Freitag
c89a55984b Emit start- and end delete progress. 2013-08-06 12:12:52 +02:00
Daniel Molkentin
045a3f17ba _USE_GNU -> _GNU_SOURCE 2013-08-05 21:11:14 +02:00
Krzesimir Nowak
3979d002bd Add an owncloud-specific redirect callback. 2013-08-05 19:21:38 +02:00
Daniel Molkentin
575874bcbe asprintf is GNU specific
Unless we have a replacement, use _USE_GNU
2013-08-02 15:20:03 +02:00
Daniel Molkentin
8c9799cede Ignore false-positive compiler warnings 2013-08-02 15:19:41 +02:00
Daniel Molkentin
54b8f4d89b transfer parameter is unused, mute 2013-08-02 11:35:03 +02:00
Andreas Schneider
4a87a1ee35 tests: Package testfiles as xz archive. 2013-08-01 17:08:19 +02:00
Andreas Schneider
de1df9a6d9 Update ChangeLog. 2013-08-01 17:04:09 +02:00
Klaas Freitag
c321c3dea0 MacOSX: Add a mac specific header to avoid a build warning.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-08-01 16:48:58 +02:00
Klaas Freitag
ed4877c27c Use strerror_r outside of log functions to avoid warnings.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-08-01 16:48:44 +02:00
Klaas Freitag
702e987505 vio: Fix compile error if WITH_UNIT_TESTING is not defined.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-08-01 16:48:19 +02:00
Klaas Freitag
fafc9bc11a tests: Moved all ownCloud testfiles into tarball.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-08-01 16:47:56 +02:00
Klaas Freitag
f103e4203d Set csync version to 0.50.0
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-08-01 16:46:59 +02:00
Olivier Goffart
6766f41bf5 Add a hook in httpbf to do the logging 2013-08-01 13:13:05 +02:00
Olivier Goffart
3cc41db0bd Fix warning with clang
/usr/include/features.h:330:4: error: _FORTIFY_SOURCE requires compiling
with optimization (-O) [-Werror,-W#warnings]
 #  warning _FORTIFY_SOURCE requires compiling with optimization (-O)
2013-08-01 13:13:05 +02:00
Andreas Schneider
354ef5e771 client: Fix strtol error check. 2013-08-01 10:37:02 +02:00
Klaas Freitag
38403f3343 Fix compile warning. 2013-08-01 09:59:48 +02:00
Klaas Freitag
59a133fe03 Fix logging for cross platform. 2013-08-01 09:41:17 +02:00
Klaas Freitag
0524613a57 Removed end up- and download notification, done in propagate. 2013-08-01 09:30:13 +02:00
Klaas Freitag
344ea661c9 Add more logging to chunking routines. 2013-07-31 16:26:28 +02:00
Daniel Molkentin
d9b34121ae Fix OS X build with -Werror 2013-07-31 14:50:44 +02:00
Daniel Molkentin
8d99364d63 Eliminate all warnings
- use proper casts
- use aproproate types
- offer to build with -Werror
- make printf attribute hinting gnu format style
- remove unused helper methods
- begin to use inttyes.h macros where suitable
- move var declarations to the beginning of the method
- properly use _FILE_OFFSET_BITS
- silence variables unused depending on the define
2013-07-31 13:12:10 +02:00
Daniel Molkentin
228641763b Fix compilation on w32 2013-07-30 18:17:50 +02:00
Olivier Goffart
4f5bfbdb78 Use int64_t instead of off_t
off_t is 64 or 32 bit depending on the architecture and the defines for
large file support.  It is better to always use int64_t which is always
64 bits
2013-07-30 16:33:19 +02:00
Andreas Schneider
7247eed4ac exclude: Try another fix for NULL termination.
Hopefully Coverity understand this better.

CID: #996807
2013-07-30 10:42:15 +02:00
Andreas Schneider
b3bf209ca0 std: Fix stat timing problems.
CID: #1032801
2013-07-30 10:38:32 +02:00
Andreas Schneider
5e0cd2276c owncloud: Fix #ifdef mess. 2013-07-30 09:50:14 +02:00
Andreas Schneider
4ad8826f8a config: Fix a memory leak. 2013-07-30 09:42:14 +02:00
Klaas Freitag
c86e2ed2cf Added some points to the Changelog. 2013-07-30 09:32:10 +02:00
Klaas Freitag
fed0eefde3 client: Add better implementation of atoi for numeric arguments.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-30 09:31:14 +02:00
Klaas Freitag
6ef2b25bff owncloud: Fix compile warnings if NDEBUG is not defined.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-30 09:23:22 +02:00
Klaas Freitag
2fcfe883eb Proper error reporting for HBF PUT fails. 2013-07-30 08:56:53 +02:00
Klaas Freitag
d53a3f2f98 Only log when really something was transmitted. 2013-07-29 15:27:22 +02:00
Olivier Goffart
acc0b53916 Added a comment in the exclude list config file 2013-07-29 15:04:00 +02:00
Olivier Goffart
af7e36422e Add ignore files that need cleanup
Add the possibility to ignore files but specify they should be deleted
if the directory is deleted.
2013-07-29 15:03:25 +02:00
Olivier Goffart
45c98bad19 fix crash 2013-07-29 15:03:05 +02:00
Klaas Freitag
1e1df5d94d ownCloud: Add a log entry when chunk is uploaded. 2013-07-29 14:27:01 +02:00
Andreas Schneider
d80da2a088 LICENSE: Change license of libcsync from GPL to LGPL.
All contributors have agreed to change the license of libcsync to LGPL.
2013-07-29 14:04:37 +02:00
Andreas Schneider
b6f9fdb96e cmake: Remove iniparser dependency.
BUG: https://open.cryptomilk.org/issues/5
2013-07-29 09:56:38 +02:00
Andreas Schneider
314664a1fd csync: Use new config parser. 2013-07-29 09:56:19 +02:00
Andreas Schneider
acf3dc6aff config: Implement a new config parser. 2013-07-28 23:16:04 +02:00
Klaas Freitag
2cc5bbe187 ownCloud: Some fixes to promote the correct progress. 2013-07-26 13:43:02 +02:00
Klaas Freitag
6aa7a62ee0 client: Check if optarg is different from NULL before dereferencing.
CID 968159
2013-07-25 17:46:55 +02:00
Klaas Freitag
35461db4e9 std: Do size compare based on fstat after opening the files.
CID: #996804

Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-25 17:46:46 +02:00
Andreas Schneider
5d34417e76 exclude: Make sure the buffer is null terminated.
CID: #996807
2013-07-25 15:47:16 +02:00
Klaas Freitag
0a15f0e7ad New progress API: Consolidate to one progress Callback having all info.
Before there were two callbacks, one for the individual file and one for
for the overall progress. Now its more easy and clean.
2013-07-25 15:36:46 +02:00
Olivier Goffart
f06fead44f fix test 2013-07-25 10:55:57 +02:00
Andreas Schneider
45cfcfc383 cmake: Pass _FORTIFY_SOURCE only to the precompiler. 2013-07-25 10:00:41 +02:00
Andreas Schneider
29a0c4ac35 tests: Update valgrind suppressions file. 2013-07-25 09:53:24 +02:00
Andreas Schneider
b3ae26c6d2 tests: Load the sftp module for vio testing.
This has no memory leaks unlike smbclient.
2013-07-25 09:52:58 +02:00
Andreas Schneider
d454a261ce owncloud: Fix a build warning. 2013-07-25 08:39:46 +02:00
Andreas Schneider
dbd242442f update: Make sure ulen is initialized. 2013-07-25 08:36:23 +02:00
Olivier Goffart
3d1994747a Also allow to specify a % of bandwidth for the limit 2013-07-24 18:17:59 +02:00
Olivier Goffart
6109b22aa6 Implement bandwidth limitation 2013-07-24 18:17:54 +02:00
Klaas Freitag
452b0e96ec vio: Fix compile warning if compiled without testing.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-24 16:35:43 +02:00
Klaas Freitag
03685bd15b owncloud: Fix compile warnings if NDEBUG is not defined.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-24 16:34:51 +02:00
Klaas Freitag
9c09c1f1cb owncloud: Removed malicious logging.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-24 16:33:19 +02:00
Klaas Freitag
570566d1de tests: Use correct setup method for ftw check.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-24 16:07:12 +02:00
Andreas Schneider
c00e401306 update: Make sure we don't have an invalid path pointer. 2013-07-24 16:01:00 +02:00
Andreas Schneider
7d1a61d68d cmake: Set nightly start time to UTC. 2013-07-24 16:01:00 +02:00
Olivier Goffart
09e30509d1 Propertly report the error from the server while uploading 2013-07-23 17:40:44 +02:00
Olivier Goffart
75682f981d Add a threshold to httpbf before splitting the files 2013-07-23 17:31:31 +02:00
Klaas Freitag
8e1c8a3ea8 client: Fix a build warning of used userdata parameter.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-23 17:31:11 +02:00
Olivier Goffart
7a8b07443f Fix cases where the file has been replaced by another with the same mtime
IL issue 169
2013-07-23 16:03:50 +02:00
Klaas Freitag
f47e8c4506 cmake: Disable cmake iconv check on win32.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-23 07:59:29 +02:00
Klaas Freitag
ab6ac22582 std: Cleanup utf8_from and to_locale function, added mem checks.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-23 07:57:37 +02:00
Klaas Freitag
fe706dc8f9 cmake: Check for existing header file in neon cmake module.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-23 07:52:49 +02:00
Klaas Freitag
db6b5131cc propagate: Base overall progress data on both trees rather than one.
The overall sum of files to transmit has to be calculated over both
trees. Therefore a utility function was written which is called from
the csync_propagate_files main function.

Moreover, the current file number counter in overall progress now ranges
from 1..n rather than 0..n-1.

Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-23 07:52:27 +02:00
Klaas Freitag
05a62bb41f csync: Add userdata parameter to the overall progress callback.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-23 07:45:17 +02:00
Klaas Freitag
0c3becfdb6 cmake: Fix make install on win32 platform.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-23 07:41:41 +02:00
Klaas Freitag
ba2963b388 tests: Use multibyte safe function.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-23 07:40:09 +02:00
Klaas Freitag
4f45381920 owncloud: Also pass user from commandline.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-23 07:39:14 +02:00
Klaas Freitag
939b262766 smb: Handle username given on command line correctly.
Only ask for password if username is specified.

BUG: https://open.cryptomilk.org/issues/13

Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-23 07:36:43 +02:00
Klaas Freitag
a390444666 tests: Removed unused test file.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-23 07:34:47 +02:00
Klaas Freitag
7417d6a830 tests: Modularize ownCloud's integration test script.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-23 07:33:32 +02:00
Klaas Freitag
2143959f03 vio: Do not dereference again, it's already the method_handle.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-23 07:33:09 +02:00
Klaas Freitag
9d1e020970 owncloud: Use correct namespace for fixing modification times.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-23 07:32:22 +02:00
Klaas Freitag
af3beca746 tests: Added test data for the owncloud integration test script.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-23 07:32:01 +02:00
Klaas Freitag
35ebf70ad1 owncloud: Clear the stat cache on close to force a new stat call.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-23 07:31:40 +02:00
Klaas Freitag
9f9209bba0 lock: Use wide char types for lock functions.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-23 07:31:16 +02:00
Klaas Freitag
70495d3ede client: Don't call strdup on NULL.
CID: #968159

Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-22 15:54:02 +02:00
Klaas Freitag
78605ac6cc exclude: Fix a double close().
CID: #996802

Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-22 15:53:10 +02:00
Klaas Freitag
def897ca67 exclude: Use mbchar to open exclude file.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-22 15:51:26 +02:00
Klaas Freitag
cd0b85dec5 exclude: Preinitialize memory with zero.
CID: #996807

Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-22 15:48:20 +02:00
Klaas Freitag
40d1498fc3 owncloud: Fix possible NULL pointer dereferences.
CID: #996808

Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-22 15:46:54 +02:00
Klaas Freitag
722a556a90 std: Fix a memory on error in c_compare_file().
CID: #996811

Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-22 15:39:23 +02:00
Klaas Freitag
f552637ffd owncloud: Fix a possible null pointer dereference.
CID: #996827

Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-22 15:38:55 +02:00
Klaas Freitag
4be88b68cc csync: Fix possible null pointer dereferences in tree walkers.
CID: 1032801
CID: 1032804

Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-22 15:38:55 +02:00
Klaas Freitag
0876c18ec9 std: Fix a memleak on error in c_iconv().
CID: #1032806

Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-22 15:38:39 +02:00
Klaas Freitag
7c4c7f1b04 std: Fix memleak on error in c_rename().
CID: #1032807

Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-22 15:11:57 +02:00
Klaas Freitag
047cf69f1e std: Fix file descriptor checks.
CID: #1032809
CID: #1032808

Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-22 15:11:51 +02:00
Klaas Freitag
917cc7faab Base overall progress data on both trees not just one 2013-07-22 12:55:24 +02:00
Klaas Freitag
a12782dccf Add callback parameter and call overall progress bar for initialization. 2013-07-19 17:04:31 +02:00
Klaas Freitag
59ed14698c Fix header 2013-07-19 17:04:13 +02:00
Klaas Freitag
45cdcb7502 Add a progress callback for overall and individual file up and download
progress.
2013-07-19 12:26:48 +02:00
Olivier Goffart
fdd1f885a1 Fixup previous commit.
We should not overwrite the error
2013-07-16 13:34:59 +02:00
Olivier Goffart
db7e8560cf Mark parent directory as error if a file fails to download
The result is that we do not save the parent directory in the db
(recursively) so on the next sync, we don't read this directory from the
db as there might be missing entries since download error are not saved
in the db.
2013-07-16 13:34:47 +02:00
Olivier Goffart
6beb96293f Do not save for resume if there is an error from the server
errors (such as 500) may mean the the server do not suport
resuming
2013-07-16 13:34:22 +02:00
Markus Goetz
1263ca990d Fix download resuming on OS X 2013-07-16 13:33:55 +02:00
Klaas Freitag
e12adbcc7e Rather use _fstat64 on win32 for proper size types. 2013-07-16 13:32:40 +02:00
Klaas Freitag
32559175c9 Use correct stat struct on all platforms. 2013-07-16 12:22:52 +02:00
Daniel Molkentin
6882880ba7 Add csync_clear_exclude_list
This requires the introduction of c_strlist_clear(),
which does not destroy, but only clear a string list.
2013-07-15 14:37:18 +02:00
Andreas Schneider
866af5bf24 std: Add missing includes for memset and uintptr_t. 2013-07-15 08:05:19 +02:00
Andreas Schneider
73fa5f2224 std: Fix const handling on Linux and BSD. 2013-07-14 16:01:51 +02:00
Andreas Schneider
7c9de0230f cmake: Fix names of the include dirs. 2013-07-14 15:57:30 +02:00
Andreas Schneider
341e0e8967 cmake: Fix iconv detection on FreeBSD. 2013-07-14 15:51:09 +02:00
Andreas Schneider
bdb3772e8f cmake: Fix argument order of get_filename_component(). 2013-07-14 15:39:40 +02:00
Andreas Schneider
5599573e2f cmake: Fix getting filename components. 2013-07-14 15:38:10 +02:00
Andreas Schneider
6b189316ab cmake: Require at least version 3.3.9 for sqlite3_prepare_v2(). 2013-07-13 09:17:40 +02:00
Andreas Schneider
1bae4f4dd4 Revert "CID 1033194: Fix resource leak in stateedb test."
This reverts commit c40a3844e0.

There is no leak and we expect it to be NULL. Since we fork here, it
doesn't matter if we leak memory in this case.
2013-07-13 08:57:56 +02:00
Klaas Freitag
207ee9955f Dealloc the query cache in statedb_close 2013-07-12 16:37:33 +02:00
Klaas Freitag
365fb2a5fe Optimize the get_stat_by_hash function. 2013-07-12 16:22:58 +02:00
Klaas Freitag
9046df8985 CID 1032811: Fix resource leaks on error.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-12 12:09:49 +02:00
Klaas Freitag
4c1106066a CID 1032813: Add missing break statement.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-12 12:09:01 +02:00
Klaas Freitag
38f19a6ada CID 1032814: Don't deref a NULL pointer in _csync_walk_tree().
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-12 12:08:03 +02:00
Klaas Freitag
be58f3a64e CID 1032816: Leave the ownership of the buffer to the calling function.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-12 12:06:30 +02:00
Klaas Freitag
5d731f7530 CID 1033193: Fix resource leaks in statedb test.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-12 12:05:38 +02:00
Klaas Freitag
c40a3844e0 CID 1033194: Fix resource leak in stateedb test.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-12 12:03:51 +02:00
Andreas Schneider
9382a047ae cmake: Update FindNeon and add support for version checking. 2013-07-12 11:57:07 +02:00
Klaas Freitag
4aa0c58bb0 Remove duplicate close, coverity found. 2013-07-12 11:41:51 +02:00
Klaas Freitag
c082a3f763 Preinitialize buf with zero, coverity found. 2013-07-12 11:41:51 +02:00
Klaas Freitag
ebc98f07c3 Cleaned code a bit, covertiy found. 2013-07-12 11:41:51 +02:00
Klaas Freitag
90873a9ae8 Release memory properly in error case, Coverity found. 2013-07-12 11:41:51 +02:00
Klaas Freitag
566f5ce614 Close fd even if its zero. Coverity Found. 2013-07-12 11:41:50 +02:00
Andreas Schneider
c1e02db882 BUG 16: Correctly include iconv headers. 2013-07-12 11:32:15 +02:00
Andreas Schneider
81df0406eb cmake: Rewrite FindIconv from scratch.
This version supports BSD correctly.
2013-07-12 11:31:46 +02:00
Klaas Freitag
d0edcd1fba Better do not use the var name abort as it confuses syntax highlighter. 2013-07-11 17:01:49 +02:00
Olivier Goffart
52c7ff415e Fix the test
After commit a25fbb6160, we re compute the
hash before insterint into the db.  Which means that the test need to
have different paths in order to succeed
2013-07-10 12:15:53 +02:00
Olivier Goffart
c20a2bf16b Add a way to configure the block size for httpbf 2013-07-10 12:15:11 +02:00
Daniel Molkentin
d22eb0ceef win32: Read inode values even though file is open
According to MSDN, CreateFile can be passed 0 if only
stat-like info is required.

This allows to upload locked files.
2013-07-10 11:19:07 +02:00
Klaas Freitag
4489eb6cc0 Allow newly created database in test. 2013-07-09 17:31:06 +02:00
Klaas Freitag
b7d549e5a0 Check for zero size database file. 2013-07-09 17:30:40 +02:00
Olivier Goffart
a25fbb6160 Save the right filename in the DB when there are new files on a renamed folder 2013-07-09 16:30:09 +02:00
Olivier Goffart
68a427d7e4 Make sure the directory after a rename has a md5
If not when we do a read from db later, the updater will beleive the
directory is no longer on the server
2013-07-09 16:29:21 +02:00
Olivier Goffart
73ef2c1b6f Do RENAMES before any PUT
In order to fix mirall issue #731
where one rename a file then re-create the original
2013-07-09 16:29:03 +02:00
Klaas Freitag
5f0f49b5bd Use new c_rename function. 2013-07-09 11:13:58 +02:00
Klaas Freitag
3a51c9ce8b Added rename function to csync library. 2013-07-09 11:11:49 +02:00
Andreas Schneider
98ea781550 std: Define ENODATA if not present.
Fix for FreeBSD.
2013-07-08 18:28:37 +02:00
Klaas Freitag
0682dfbc38 c_parse_uri: Handle out of memory condition with ENOMEM.
Fixes https://open.cryptomilk.org/issues/13

Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-08 15:51:48 +02:00
Klaas Freitag
bf6a0ea68e Use unsuspicous var name to not confuse syntax highlighter.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-08 15:51:41 +02:00
Klaas Freitag
c1a73564f5 Fix for coverity CID 1029795 2013-07-08 12:26:44 +02:00
Klaas Freitag
2befdf50da Fix coverity CID 1029796 2013-07-08 12:26:44 +02:00
Klaas Freitag
6898d96a5c Do not store userdata but retrieve dynamically through csync API. 2013-07-05 18:43:29 +02:00
Klaas Freitag
82569559cc Added function to retrieve the progress callback. 2013-07-05 18:41:41 +02:00
Klaas Freitag
5f9913570a std: Handle NULL pointer argument in c_dir() correctly. 2013-07-04 15:13:39 +02:00
Klaas Freitag
e5089943ba std: Check c_dir() not just with NULL. 2013-07-04 15:13:03 +02:00
Andreas Schneider
bd6608a33d tests: Refactor treewalk test. 2013-07-04 15:11:26 +02:00
Andreas Schneider
8f7900ee8f statedb: Make sure we call sqlite3_close on a valid pointer. 2013-07-04 12:26:22 +02:00
Andreas Schneider
47b436c279 vio: Add missing internal prototype. 2013-07-04 12:17:02 +02:00
Andreas Schneider
bfdd73a0bc statedb: Fix a build error. 2013-07-04 12:16:47 +02:00
Andreas Schneider
cd23f8d2d1 CID 1033195: Fix resource leak. 2013-07-04 11:57:31 +02:00
Andreas Schneider
bd6a66d51e tests: Fix a resource leak. 2013-07-04 11:55:55 +02:00
Klaas Freitag
cb65273ef9 statedb: Check db integrity and only overwrite the old on success. 2013-07-04 11:40:23 +02:00
Klaas Freitag
64925efe18 std: Fix resource leak and return code of win32 copy function. 2013-07-04 11:36:10 +02:00
Klaas Freitag
f8e31b95b1 tests: Remove the db before db_none test to meet the test condition. 2013-07-04 11:34:43 +02:00
Klaas Freitag
fb48813f15 owncloud: Use the new get/put methods of file up- and download. 2013-07-04 11:30:54 +02:00
Andreas Schneider
a1628c8111 vio: Make csync_vio_getfd() useable by the module. 2013-07-04 11:30:54 +02:00
Klaas Freitag
12bca2789a propagate: Use get/put methods for file up- and download. 2013-07-04 11:30:54 +02:00
Klaas Freitag
fbfa3426e2 tests: Fix multibyte stat(). 2013-07-04 11:30:54 +02:00
Klaas Freitag
ec6f40c84e vio: Add new function csync_vio_put and csync_vio_put.
With that, modules can implement get and put functions to up- and
download files from or to a given file descriptor. That is just an
alternative way of the usual read/write way that is still there
of course.

If a module wants to implement get and put, it has to set its
capabilities to true.
2013-07-04 11:30:48 +02:00
Klaas Freitag
527da08d3b src: Add function csync_vio_local_getfd(). 2013-07-04 10:48:03 +02:00
Klaas Freitag
123472e286 src: Add function csync_vio_convert_file_stat(). 2013-07-04 10:39:59 +02:00
Klaas Freitag
0a29be89ca cmake: Check for __mingw_asprintf for asprintf replacement.
This is required since mingw32 4.8.
2013-07-04 10:35:47 +02:00
Klaas Freitag
8da59de17b std: Define O_NOATIME if not already defined. 2013-07-04 10:35:06 +02:00
Andreas Schneider
d43b382089 tests: Fix testing the vio plugins. 2013-07-04 10:29:48 +02:00
Andreas Schneider
cccbb6699a cmake: Find SMBClient correctly. 2013-07-04 10:29:48 +02:00
Andreas Schneider
8953ed544c statedb: Remove context where it isn't needed. 2013-07-04 10:29:48 +02:00
Andreas Schneider
d05b077851 statedb: Always pass down the db pointer. 2013-07-04 10:29:19 +02:00
Klaas Freitag
ce6cf57a29 Make test work again by not writing the db. 2013-07-04 10:28:55 +02:00
Klaas Freitag
7eb3f901a6 Experimental: Fix the mv and recreate case as described in mirall#731.
Please note that this needs review and test and probably does not fully
fix it. It just makes sure that renames are handled before PUTs.
2013-07-03 22:38:45 +02:00
Klaas Freitag
7ef620f58d Merge remote-tracking branch 'ogoffart/dav' into dav 2013-07-03 16:36:28 +02:00
Klaas Freitag
44a52ad951 Removed useless logging. 2013-07-03 16:32:33 +02:00
Olivier Goffart
f8fdff885e Make sure to write the errors in the DB as well.
If a file can't be uploaded, we still need to write it into the DB if it
was in the DB before, with the old timestamp.
2013-07-02 23:07:37 +02:00
Olivier Goffart
1c9fa48d60 Create a function to free a csync_file_stat 2013-07-02 18:25:17 +02:00
Olivier Goffart
270e06a99b Fix a possible leak 2013-07-02 17:42:47 +02:00
Daniel Molkentin
1a25644d60 Fix version number 2013-06-25 09:52:44 +02:00
Daniel Molkentin
8a8d98d401 Changelog 2013-06-25 09:47:47 +02:00
Daniel Molkentin
16d99b8ff8 0.80 for ownCloud 1.3 2013-06-25 09:25:34 +02:00
Andreas Schneider
22477b23a6 statedb: Never overwrite data set by the user!
Only a user of csync is allowed to call csync_set_userdata(). Never call
this inside of csync cause you will overwrite the data pointer and
information is lost!
2013-06-23 14:50:49 +02:00
Stefan Agner
33eaf7e7b0 statedb: use ctx when opening database for integrity check
Signed-off-by: Stefan Agner <stefan@agner.ch>
2013-06-23 14:03:27 +02:00
Daniel Molkentin
77653747ac 0.70.93 2013-06-20 19:45:18 +02:00
Olivier Goffart
0dbecb129e Log the fact that csync was aborted 2013-06-19 18:41:30 +02:00
Olivier Goffart
3d2c3b321c Disable the blacklist by default
The blacklist might hide errors and reduce the ability to do proper
diagnostics.

Note that in _csync_push_file, we kept csync_statedb_get_progressinfo
because it is also used for the resume feature

Also added output when a file has been blacklisted.
2013-06-18 19:19:28 +02:00
Andreas Schneider
3043b97815 cmake: Use pkg-config for libsmbclient. 2013-06-16 21:37:03 +02:00
Olivier Goffart
ed76e5f1f2 Fix conflict file appearing when a file cannot be stated
We still need to fetch the md5 from the database to be able to store it
back.
2013-06-13 15:06:35 +02:00
Daniel Molkentin
92b9bf59a7 0.70.92 2013-06-12 11:10:34 +02:00
Olivier Goffart
015eeb1e05 Clean the progress database on csync_commit
It was cleaned twice in csync_destroy because of the conflict resolution

https://github.com/owncloud/mirall/issues/667
2013-06-11 10:24:34 +02:00
Klaas Freitag
32818283a5 Remove default console log of httpbf 2013-06-11 08:53:19 +02:00
Klaas Freitag
4a04b3e184 Use a proper cast in inode query. 2013-06-11 08:47:32 +02:00
Andreas Schneider
d19a652993 cmake: Fix -D_FORTIFY_SOURCE detection. 2013-06-10 16:17:43 +02:00
Andreas Schneider
d864899ff1 src: Fix a build warning. 2013-06-10 16:17:33 +02:00
Andreas Schneider
85a858b7ed src: Fix creating the inode system on 32bit system. 2013-06-10 16:08:14 +02:00
Klaas Freitag
bf8188e9e8 Create metadata table if not existing. 2013-06-10 11:48:38 +02:00
Klaas Freitag
72cc0f5d7c Fixed testcase. 2013-06-10 11:48:38 +02:00
Olivier Goffart
f71d4dcc79 Add a log output when the replica is invalid in csync_vio
https://github.com/owncloud/mirall/issues/669
2013-06-10 10:19:46 +02:00
Olivier Goffart
78937b09b8 Clean the rename datastructure in csync_commit
Fixes the crash in mirall issue 670
https://github.com/owncloud/mirall/issues/670
2013-06-10 10:11:13 +02:00
Olivier Goffart
882e027e40 Remove dead condition
rc==123 was a magic value set to mean not to save the error. But after
some refactoring, it is not done like that anymore
2013-06-07 16:43:48 +02:00
Klaas Freitag
161e2fbadc Avoid build failure if NDEBUG is unset. 2013-06-07 16:19:22 +02:00
Klaas Freitag
ae5847138c Fix test cases for the new database code. 2013-06-07 16:09:22 +02:00
Klaas Freitag
5852a2dd06 Create an empty metadata table if non exists. 2013-06-07 16:09:07 +02:00
Klaas Freitag
fbfba8bfbb Add another database integrity check on startup to avoid corrupt dbs. 2013-06-07 16:08:45 +02:00
Daniel Molkentin
5a2d7e9c9f Do not corrupt ctx->replica value if push_file fails 2013-06-07 14:58:38 +02:00
Klaas Freitag
d9ef991448 Removed unused progress info allocation. 2013-06-07 09:18:27 +02:00
Olivier Goffart
bb03664bfd Let csync_update report the right error.
The problem is that the call to csync_memstat_check will try to open a
file, that will fail on windows and override the errno
2013-06-06 10:44:52 +02:00
Klaas Freitag
e4e30e2cdd Use multibyte version of open in database version check. 2013-06-05 17:59:34 +02:00
Klaas Freitag
f320f9c701 void an unused variable. 2013-06-05 16:39:06 +02:00
Klaas Freitag
e92dd4c1da Removed some logs that are not needed. 2013-06-05 16:35:48 +02:00
Klaas Freitag
cab00ea668 Added missing CloseHandle, detected by Coverty. 2013-06-05 16:34:58 +02:00
Daniel Molkentin
e92a422d3d Send OC-Chunked instead of OC_CHUNKED.
Will still be understood by the server, as PHP mangles the header
to read HTTP_OC_CHUNKED in both cases.
2013-06-03 22:51:28 +02:00
Klaas Freitag
9001dbb082 Use variable verb and avoid warnings. 2013-06-03 17:23:39 +02:00
Olivier Goffart
22a07634b6 Fix upload of big files when proxy remove the OC_CHUNKED header
In that case, the first chun would be uploaded as a chunk.
Take that case into account and if we get a success after only one
chunk, we try to delete the chunk, and it it worked, it means chunking
was not supported.
2013-06-03 17:23:39 +02:00
Olivier Goffart
5bb4c3be43 TMP threaded 2013-06-03 10:43:21 +02:00
Daniel Molkentin
a06078f89f bump version 2013-05-31 16:26:54 +02:00
Klaas Freitag
fe6fdb5e88 Enable NE_LFS, important for Win32 platform. 2013-05-31 13:23:21 +02:00
Daniel Molkentin
c53ad974ee Make socks proxies work. 2013-05-29 14:17:30 +02:00
Daniel Molkentin
4d663f6cfa More cheating on proxies: Add OS to User-Agent 2013-05-28 19:35:54 +02:00
Daniel Molkentin
95c532c46a Set User-Agent to contain Mozilla/5.0 string
A blatant lie for a blatant abuse of Firewall filters.
2013-05-28 15:46:03 +02:00
Klaas Freitag
20969cf6bb Removed an extra space. 2013-05-24 15:43:42 +02:00
Klaas Freitag
e4b9f21f81 Fix statedb load test case. 2013-05-22 16:51:09 +02:00
Klaas Freitag
f2669ae886 Fix statedb-query test. 2013-05-22 16:43:31 +02:00
Daniel Molkentin
39cfe91da6 fix httpbf test case 2013-05-22 16:32:08 +02:00
Daniel Molkentin
45e5578b52 init to false in case of doubt 2013-05-22 16:15:26 +02:00
Klaas Freitag
92b0af4b0a Compare the correct type. 2013-05-22 16:13:27 +02:00
Klaas Freitag
126559b2be For new databases, skip the is-empty check. 2013-05-22 16:10:43 +02:00
Klaas Freitag
0764ef1620 For directories, do not consider the size as its invalid on remote. 2013-05-22 16:10:43 +02:00
Daniel Molkentin
10437db2f9 Bump version 2013-05-22 15:33:42 +02:00
Klaas Freitag
8115f71096 Avoid memory allocation screwup. 2013-05-22 12:33:09 +02:00
Klaas Freitag
4a58cae0b0 Finialize insert statement. 2013-05-22 12:33:09 +02:00
Klaas Freitag
bcdd8b95bf Allow empty MD5 sum on save, happens with directoires. 2013-05-22 12:33:09 +02:00
Klaas Freitag
69d251630f Code cleanups, move closedb out of if statements. 2013-05-22 12:33:09 +02:00
Klaas Freitag
02f93ec4d5 Free allocted memory of local and remote list. 2013-05-22 12:33:09 +02:00
Klaas Freitag
dd8ceacf75 Avoid compile warning due to non-top variable declaration. 2013-05-22 12:33:09 +02:00
Klaas Freitag
673ca36db8 More efficient database writing, do integrity check on db. 2013-05-22 12:33:09 +02:00
Klaas Freitag
68e0dbb18f Use wide character unlink. 2013-05-22 12:32:25 +02:00
Klaas Freitag
23912a7214 Reworked database writing code. Speed improvement > 50%. 2013-05-20 12:24:55 +02:00
Klaas Freitag
4ad01b35ce Switch on full synchronous mode for sqlite. 2013-05-20 11:10:27 +02:00
Klaas Freitag
053a9b7da0 Add neon includes to httpbf build 2013-05-17 12:45:39 +02:00
Klaas Freitag
61335b6a70 Do not set the error_code from errno 2013-05-17 12:25:17 +02:00
Klaas Freitag
4f47aba1e2 Allow user aborting in chunked uploads 2013-05-16 17:37:30 +02:00
Klaas Freitag
2385bbcf55 Add an abort callback. 2013-05-16 17:37:00 +02:00
Klaas Freitag
ad7aac4152 Rather use eq and ne for string comparison. 2013-05-16 16:12:27 +02:00
Daniel Molkentin
b9c7980433 Work on non-mac again 2013-05-16 15:00:52 +02:00
Olivier Goffart
07ce6cfa79 don't use member variable of the propagator 2013-05-16 14:50:36 +02:00
Olivier Goffart
9ce47c9675 make the propagator asynchronous 2013-05-16 13:54:22 +02:00
Daniel Molkentin
ecff867e46 Get further on mac 2013-05-16 13:02:51 +02:00
Klaas Freitag
4af8f470e8 Check the stat result. 2013-05-16 12:46:06 +02:00
Olivier Goffart
5c79d8bdef t3.pl: test renaming folder
Add a test to test that renaming folder and doing complex stuff in them
works
2013-05-15 17:59:13 +02:00
Olivier Goffart
d8d4f118d7 Fix possible leak 2013-05-15 17:59:13 +02:00
Daniel Molkentin
6b4501fd4b Try to make t1 utf-8-mac safe 2013-05-15 17:57:19 +02:00
Olivier Goffart
40255d643c propagator-ng: adapt to the merge of rename_folders branch 2013-05-15 15:22:20 +02:00
Daniel Molkentin
ccb8fcc614 ignore t1.cfg 2013-05-15 14:39:23 +02:00
Klaas Freitag
551d457c7c Pulled Test.pm out of t1.pl for reuse. Simplified t1.pl. 2013-05-15 11:15:50 +02:00
Klaas Freitag
eb2997e609 Normalized UTF-8 and createLocalFile added. 2013-05-14 17:46:35 +02:00
Klaas Freitag
ae1541a95f Dependency info added. 2013-05-14 16:32:36 +02:00
Klaas Freitag
f56a075f36 Create directories vio mkcol and do not compare dir sizes. 2013-05-14 16:01:57 +02:00
Olivier Goffart
00d27d0e9c Fix HTTPBF again
it really needs to be %u because if it is signed, then we have -- in the
URL which the server can't understand
2013-05-14 15:30:56 +02:00
Olivier Goffart
3e795a84c2 Fix memory leak.
csync_destroy do not call vio_commit.  Maybe it should?
2013-05-14 15:30:56 +02:00
Olivier Goffart
6735b82326 Fix leak 2013-05-14 15:30:56 +02:00
Klaas Freitag
1a648a612e Merge remote-tracking branch 'ogoffart/rename_folders_merged' into dav 2013-05-13 16:28:31 +02:00
Klaas Freitag
8f6562f737 Disabled lock test for owncloud. 2013-05-13 15:30:10 +02:00
Klaas Freitag
f2f12a5629 Use %d for int variables in sprintf. 2013-05-13 15:30:01 +02:00
Klaas Freitag
885eaad729 Removed goto from code. 2013-05-13 15:29:29 +02:00
Klaas Freitag
cb0e06e7f8 Merge remote-tracking branch 'ogoffart/dav' into dav 2013-05-13 15:10:29 +02:00
Klaas Freitag
7b060a7af6 Do not create lock for ownCloud Client any more. 2013-05-13 14:03:33 +02:00
Olivier Goffart
28942e3051 Recreates the statedb if it was corrupted
Fixes: https://github.com/owncloud/mirall/issues/595

Some corruptions do not happen when the database is opened, but only on
some querries.
In that case, recreates the database if querries such as DROP or
CREATE fails.
2013-05-13 11:57:25 +02:00
Olivier Goffart
b31200a6f2 propagator-ng: fix setting the mtime 2013-05-10 13:20:21 +02:00
Olivier Goffart
8f3e260ede fix typo
This broke the new propagator
2013-05-10 13:13:02 +02:00
Olivier Goffart
41a56b19b7 t1.pl: let configure csync command 2013-05-10 12:45:51 +02:00
Olivier Goffart
98cbb599b8 Fix handling of conflicting directories
We can safely ignore them in the propagator
2013-05-10 12:35:10 +02:00
Klaas Freitag
b7c03e92da Temporary disable cached propfind. 2013-05-10 09:55:44 +02:00
Klaas Freitag
276ccd3fb6 Fix setting of csync error code in updater. 2013-05-09 14:12:26 +02:00
Klaas Freitag
9d84c19b69 Reworked integration test: File assert traversal fixed. 2013-05-09 13:26:28 +02:00
Klaas Freitag
b1f62b51bf Add owncloud module files to build. 2013-05-09 13:26:28 +02:00
Daniel Molkentin
a75376e6a7 Rename csync_abort -> async_request_abort. Add csync_resume. 2013-05-08 17:33:50 +02:00
Daniel Molkentin
ee5aaf76c5 Introduce csync_abort()
If called, it will set a bool in the context,
which will be respected by all expensive visitors.
2013-05-08 16:57:12 +02:00
Olivier Goffart
ecd314cef5 Give the tmp file a proper hidden and excluded name 2013-05-08 14:31:52 +02:00
Markus Goetz
952290890c Merge remote-tracking branch 'origin/dav' into dav_recursive_update_squashed
Conflicts:
	modules/csync_owncloud.c
2013-05-08 14:31:24 +02:00
Markus Goetz
9b4eb40216 Remove timedelta stuff 2013-05-08 14:27:59 +02:00
Markus Goetz
639f1127b7 Move stuff to _util.c 2013-05-08 13:59:07 +02:00
Olivier Goffart
0b1ecd0ac6 propagator-ng: Abort on fatal error 2013-05-08 13:30:30 +02:00
Markus Goetz
9c2f223093 Add module property to disable recursive PROPFIND 2013-05-08 13:26:59 +02:00
Markus Goetz
927ccf5d08 Use C-style comments instead of modern // 2013-05-08 13:20:42 +02:00
Markus Goetz
52e2775292 Make PROPFIND cache external unit
and introduce a csync_owncloud.h
2013-05-08 13:12:01 +02:00
Olivier Goffart
852e30ef07 owncloudcmd: don't abort on unknown argument 2013-05-08 12:11:23 +02:00
Markus Goetz
980c176073 Recursive PROPFIND cache for ownCloud module 2013-05-08 11:58:17 +02:00
Olivier Goffart
2193da0ab5 Fix a few FIXME 2013-05-07 17:47:29 +02:00
Olivier Goffart
7cd12e7dc5 remove some FIXME 2013-05-07 17:16:11 +02:00
Olivier Goffart
3c87cd71d7 Merge branch 'rename_folders' into dav
Conflicts:
	modules/csync_owncloud.c
	src/csync.c
	src/csync.h
	src/csync_propagate.c
	src/csync_propagate.h
	src/csync_statedb.c
	src/csync_statedb.h
	src/csync_util.c
	src/std/c_path.h
2013-05-07 15:24:12 +02:00
Klaas Freitag
52d9a9fb0a Merge remote-tracking branch 'ogoffart/dav' into dav 2013-05-07 12:28:35 +02:00
Klaas Freitag
c8fdf1d4fb Minor reformatting. 2013-05-07 12:27:40 +02:00
Olivier Goffart
247f4d948c don't ajust the time anymore with the difference from client to server 2013-05-07 11:45:02 +02:00
Olivier Goffart
79818924b3 Fix httpbf when resuming uploads 2013-05-07 11:45:02 +02:00
Olivier Goffart
b1ac67ce8b Always consider that the conflict should happen on the locale
Don't take in account which file is newer, the conflict file will always
be on the locale side.

This patch also consider that INSTRUCTION_NEW and INSTRUCTION_EVAL means
the same.
2013-05-07 10:48:44 +02:00
Olivier Goffart
685bf395be propagator-ng: resume uploads
Currently i think it corrupt the files
2013-05-06 18:41:56 +02:00
Klaas Freitag
b0fbabc1bf Show progress in csync client with commandline switch -v 2013-05-06 17:27:20 +02:00
Klaas Freitag
12b57124a4 Add a progress callback for overall and individual file up and download
progress.
2013-05-06 17:14:17 +02:00
Olivier Goffart
0636ae6f28 propagator-ng: be able to resume download 2013-05-06 16:59:11 +02:00
Klaas Freitag
599e435443 Use the new logging framework for ownCloud module. 2013-05-06 16:58:14 +02:00
Klaas Freitag
36ec7aa5b6 Added set_property method for the ownCloud module. 2013-05-06 16:56:45 +02:00
Klaas Freitag
25948ef708 Add the file level progress callback. 2013-05-06 16:52:08 +02:00
Klaas Freitag
4ce67e38d1 Fix printf operator to interpret phash correctly for sqlite3. 2013-05-06 16:27:11 +02:00
Olivier Goffart
698edcc1c0 Revert "Fix httpbf test."
This reverts commit 460c5b067d.

We need to use %u for unsigned in otder to avoid the '-' to many to
appear in the transferid
2013-05-06 16:13:58 +02:00
Olivier Goffart
7f8eba3700 propagator-ng: set the modtime on downloaded files 2013-05-06 12:09:21 +02:00
Olivier Goffart
02957aba45 propagator-ng: Emit the fileReceived signal 2013-05-05 12:46:40 +02:00
Klaas Freitag
946258ca59 Created a test file for ownCloudPropagator. Not much in yet. 2013-05-05 12:36:42 +02:00
Klaas Freitag
2e53e2e4e0 Really return true in case of error. 2013-05-05 12:34:38 +02:00
Klaas Freitag
721a8f79ab Improve error handling, add error string to each individual file item. 2013-05-05 11:47:19 +02:00
Olivier Goffart
ecaf66db5d style: use _ in front of member variable 2013-05-05 11:32:12 +02:00
Olivier Goffart
0c775aba6d propagator-ng: get the etag also in the GET request 2013-05-05 11:32:12 +02:00
Olivier Goffart
71b238031f Fix compilation after previous rebase 2013-05-05 11:32:12 +02:00
Olivier Goffart
662bd4e5fe propagator-ng: handle conflict
Always download the file from the server.
And if they are equals, ignore the conflict
2013-05-05 11:17:42 +02:00
Olivier Goffart
5118054fa3 Enable the backup of conflicts files in owncloudcmd 2013-05-05 11:17:07 +02:00
Klaas Freitag
c956d11183 More error handling of propagator, some cleanups. 2013-05-04 17:14:47 +02:00
Klaas Freitag
7df23a1b19 Proper error reporting of propagator - WIP 2013-05-04 17:14:47 +02:00
Klaas Freitag
72580d7213 move command line client into bin dir 2013-05-04 17:14:47 +02:00
Olivier Goffart
264cc73806 Implement renaming on windows
(Not actually tested)
2013-05-04 16:18:13 +02:00
Klaas Freitag
c61035f767 Put the lock file into the sync dir. 2013-05-04 16:10:11 +02:00
Klaas Freitag
54ed522bbe Check for null argument. 2013-05-04 16:08:49 +02:00
Olivier Goffart
c041076c95 Handle renames 2013-05-04 15:32:11 +02:00
Olivier Goffart
f6ff189f35 Add owncloudcmd
A simple commandline client like ocsync.
The goal is to be used bu the t1.pl test
2013-05-04 13:52:35 +02:00
Klaas Freitag
84a28fa8f7 Merge remote-tracking branch 'ogoffart/dav' into dav 2013-05-04 13:24:21 +02:00
Klaas Freitag
cca965e288 get etag header out of PUT reply. 2013-05-04 13:23:05 +02:00
Klaas Freitag
8a80a55aec Remove unused varialbe. 2013-05-04 12:17:22 +02:00
Klaas Freitag
1561032973 Handle http error code correctly, even if neon reports success. 2013-05-04 12:16:35 +02:00
Olivier Goffart
e1e8842548 New owncloud propagator that skip the vio abstraction layer
The vio abstraction layer within csync is inneficient for the owncloud
use case because not all calls maps well to the POSIX interface. We can
be much more efficient by doing exactly what we need.

Also, this will allow us to scedule better the calls and possibly to use
threads.
2013-05-04 11:02:30 +02:00
Olivier Goffart
8c0dbb03e1 Install httpbf and make it possible to include the header in C++ code 2013-05-03 19:23:26 +02:00
Olivier Goffart
10443fc1e3 in walk tree, we can now change the md5
Also also in commit always assume that the propagate is done. it might
have been done by someone else
2013-05-03 19:23:26 +02:00
Olivier Goffart
546fdeed6c Add a way for mirall to access the dav session 2013-05-03 19:23:25 +02:00
Olivier Goffart
b1fc9b2a64 Don't reset the md5 if the mtime change locally.
Consider this case when one creates a file with an invalid filename (for
the server) in a directory in the local side.
say: foo/bar/%invalid%.txt

The following would happen:
- in the update for the local parent folder  foo/bar/, the md5 is 0
  because the mtime has changed
- During the reconcile, we try to send %invalid%, but there will be an
  error and nothing will be changed on the server, the etags stay the
  same
- We do not do any PROPFIND at the end so we do not fetch the etag
  anymore.  The md5 is still 0 and will be saved like that in the DB
- Next run, since the etags have  not changed on the server, we read
  from the DB.  But a md5 of 0 in the DB means the folder was removed on
  the server.  That would remove the local folder (BAD!)

So we load the md5 from the db even if the local mtime change.
That means we need to compare the mtime in the local case rather than
the md5 to see if something has changed.
2013-05-03 19:21:21 +02:00
Olivier Goffart
b49aaaabfc Fix too many PROPFIND when starting a sync
csync would not update the etag (md5) for directoru in the database if
the etag has changed, but none of the files within that directory
actually changed
2013-05-03 19:21:21 +02:00
Olivier Goffart
cf23799e78 Only mark a folder as modified if files within it are modified. 2013-05-03 19:21:21 +02:00
Olivier Goffart
0b648dc669 Do not fetch folder id after propagation.
Delay that for the next sync.
2013-05-03 19:21:21 +02:00
Klaas Freitag
4f396c4562 Testfile added. 2013-04-26 17:41:55 +02:00
Klaas Freitag
8ac8701c10 Fix httpbf upload of zero size files, incl. test for that case. 2013-04-26 17:40:24 +02:00
Klaas Freitag
ab17e2aa8b Revert "Don't include csync_version.h from csync.h"
This reverts commit 5cda5d523c.
2013-04-26 10:45:14 +02:00
Klaas Freitag
5cda5d523c Don't include csync_version.h from csync.h 2013-04-26 10:37:45 +02:00
Klaas Freitag
a1271a1db2 Rather store a ptr to the ptr to st for propagation_cleanup 2013-04-26 10:31:41 +02:00
Daniel Molkentin
776d5dfe37 Generate csync version from CMake variables 2013-04-25 12:32:01 +02:00
Olivier Goffart
959c987749 Fix storing the error of renames 2013-04-24 14:53:31 +02:00
Olivier Goffart
844c2bbafa Avoid double free 2013-04-24 14:53:31 +02:00
Andreas Schneider
9409d1c96e If there is no vio commit function don't fail. 2013-04-24 14:35:19 +02:00
Klaas Freitag
b09093a496 Make csync_commit and csync_destroy more readable. 2013-04-24 14:22:54 +02:00
Klaas Freitag
3b6d1cab91 Test for csync_commit 2013-04-24 14:21:51 +02:00
Klaas Freitag
fef18208d6 Add module method for csync_commit. 2013-04-24 14:21:51 +02:00
Klaas Freitag
98e6d3818f Allow windows to load user exclude list. 2013-04-24 14:21:51 +02:00
Klaas Freitag
8b65e8fbf3 Added csync_commit to be able to reuse the csync context. 2013-04-24 14:21:51 +02:00
Olivier Goffart
eb38f5beb1 Don't reset the md5 if the mtime change locally.
Consider this case when one creates a file with an invalid filename (for
the server) in a directory in the local side.
say: foo/bar/%invalid%.txt

The following would happen:
- in the update for the local parent folder  foo/bar/, the md5 is 0
  because the mtime has changed
- During the reconcile, we try to send %invalid%, but there will be an
  error and nothing will be changed on the server, the etags stay the
  same
- We do not do any PROPFIND at the end so we do not fetch the etag
  anymore.  The md5 is still 0 and will be saved like that in the DB
- Next run, since the etags have  not changed on the server, we read
  from the DB.  But a md5 of 0 in the DB means the folder was removed on
  the server.  That would remove the local folder (BAD!)

So we load the md5 from the db even if the local mtime change.
That means we need to compare the mtime in the local case rather than
the md5 to see if something has changed.
2013-04-24 14:09:20 +02:00
Klaas Freitag
460c5b067d Fix httpbf test. 2013-04-23 17:17:31 +02:00
Daniel Molkentin
52a289d550 Bump version to distinguish nightlies 2013-04-23 16:51:29 +02:00
Klaas Freitag
374d9b0a8c Merge from feature branch csync_commit. 2013-04-22 15:39:43 +02:00
Klaas Freitag
b91b96922e Remove frees from module destroy which happend in commit before 2013-04-22 15:17:45 +02:00
Klaas Freitag
2f6441afb0 Do not use asprintf any more, added missing header. 2013-04-22 14:30:57 +02:00
Klaas Freitag
c46371b469 Push WIN32 preprocessor derectives to csync_lock.c. 2013-04-22 14:30:12 +02:00
Klaas Freitag
072edefc7b Use __mingw_asprintf if asprintf is not available. 2013-04-22 13:51:53 +02:00
Klaas Freitag
4bdabb7f46 Added a module commit function. 2013-04-22 13:51:44 +02:00
Klaas Freitag
19f6b919af Use __mingw_asprintf if asprintf is not available. 2013-04-22 13:50:59 +02:00
Klaas Freitag
64927899af Use pointer to stat struct for id_list. 2013-04-22 10:22:20 +02:00
Klaas Freitag
a496bb0e13 Fix memleak with id_list - WIP 2013-04-20 13:06:59 +03:00
Klaas Freitag
275c18df82 Added csync_commit to be able to reuse the csync context. 2013-04-20 12:11:16 +03:00
Klaas Freitag
0d238ae1fe Allow to set progress- and log-callback any time. 2013-04-20 12:10:45 +03:00
Klaas Freitag
66d8f8b0db Added csync_commit to be able to reuse the csync context. 2013-04-20 11:51:27 +03:00
Klaas Freitag
0c5cdc2105 Allow to set progress- and log-callback any time. 2013-04-20 11:50:13 +03:00
Klaas Freitag
84f425a326 Remove WIN32 preprocessor directive from csync.c. 2013-04-20 11:38:25 +03:00
Olivier Goffart
112285c9aa Fix too many PROPFIND when starting a sync
csync would not update the etag (md5) for directoru in the database if
the etag has changed, but none of the files within that directory
actually changed
2013-04-17 16:25:52 +02:00
Klaas Freitag
2b971a09f3 Make httpbf tests functional. 2013-04-17 15:21:38 +02:00
Klaas Freitag
35aaddda87 Added check on changes on the source file when uploading. 2013-04-16 16:27:40 +02:00
Klaas Freitag
24a562da49 More meaningful logging of read db fails. 2013-04-15 17:50:40 +02:00
Klaas Freitag
847c223408 More meaningful logging of read db fails. 2013-04-15 17:47:50 +02:00
Klaas Freitag
84febf4b77 Merge branch 'dav_0.70.5' into dav 2013-04-15 15:37:17 +02:00
Klaas Freitag
da52acbec6 Add FindPackage to httpbf module. 2013-04-15 15:32:21 +02:00
Klaas Freitag
8b52387c1a Fix temp file name generation for Win32. 2013-04-15 13:24:46 +02:00
Daniel Molkentin
da5169bd55 Add ChangeLog for 0.70.6 2013-04-11 10:56:43 +04:00
Klaas Freitag
7171da53e8 Check that file is unchanged before copying in propagator. 2013-04-09 16:43:21 +02:00
Klaas Freitag
2a5c403d63 Default timeout to 300 seconds. 2013-04-09 15:18:26 +02:00
Klaas Freitag
c38514934c A good word. 2013-04-09 14:41:36 +02:00
Klaas Freitag
90c4f52b34 Handle IGNORE status correctly. 2013-04-09 11:12:17 +02:00
Klaas Freitag
e93bf9fa0a Fix for Coverity CID #996823 2013-04-09 09:42:38 +02:00
Daniel Molkentin
aa390dd17e Set path and phash for ignored files 2013-04-08 14:21:00 +02:00
Klaas Freitag
6cee3f49bc More robust error handling in utimes function 2013-04-08 12:27:27 +02:00
Klaas Freitag
1585cab673 Compare to explicit NULL for clearer code. 2013-04-08 09:11:25 +02:00
Klaas Freitag
a1ebf8556a Fix for Coverity CID #996827 2013-04-08 09:07:19 +02:00
Andreas Schneider
85b565fcbe csync: Use macros for CSYNC_STATUS checking. 2013-04-06 18:48:16 +02:00
Andreas Schneider
7934cde2db csync: Pass the errno to csync_errno_to_status().
This is needed to be sure we are thread-safe. See also the manpage of
strerror_r(3).
2013-04-06 18:48:16 +02:00
Andreas Schneider
b701bf3d9b csync: Rename UNSPEC_ERROR to UNSUCCESSFUL. 2013-04-06 18:48:16 +02:00
Klaas Freitag
4e6d54194f Check for file equalness after having created a conflict file.
If the files are equal and the conflict was created because the
timestamps were screwed the conflict is removed again. This only
works on the local repository so far.

Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-04-06 18:48:11 +02:00
Klaas Freitag
9f7de96a73 Added c_compare_file function plus a test function.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-04-06 18:11:18 +02:00
Klaas Freitag
b8cf6f7f5c Make VIO_METHOD_HAS_FUNC macro more robust.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-04-06 18:11:18 +02:00
Klaas Freitag
4280adc60a More optimized database handling for csync journal build up.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-04-06 18:11:15 +02:00
Olivier Goffart
68fdf56db7 Add an API to be able to pass information to the vio module.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-04-05 17:40:22 +02:00
Klaas Freitag
bec2c4a2ea Added get_status_string function.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-04-05 17:40:22 +02:00
Klaas Freitag
3de8a78e1c Added error_string handling, improved error handling.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-04-05 17:40:22 +02:00
Klaas Freitag
2204c94770 Introduce csync status codes
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-04-05 17:40:22 +02:00
Klaas Freitag
7c138efd0e Rename csync_errno_to_csync_error to csync_errno_to_csync_status.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-04-05 17:40:21 +02:00
Klaas Freitag
f4ee205fe9 Minor code cleanups, warning avoidings and indentation.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-04-05 17:40:21 +02:00
Klaas Freitag
aada909836 Use multibyte character in file system functions.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-04-05 17:40:21 +02:00
Klaas Freitag
33d57eec3c Remove parenthesis to make Win32 compile and happy.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-04-05 17:40:21 +02:00
Klaas Freitag
f5c9458079 Define iconv conversions as thread safe varialbe instead of static.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-04-05 17:40:21 +02:00
Klaas Freitag
72dddfd7f5 Introduce csync status codes for a more detailed error reporting.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-04-05 17:40:21 +02:00
Klaas Freitag
10863cd32d Add CSYNC_STATUS_CODE, a general csync status code.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-04-05 17:40:21 +02:00
Klaas Freitag
f8f82a9af2 Added custom errnos for use with csync in addition to the system errnos.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-04-05 17:40:21 +02:00
Klaas Freitag
5de0173804 Fix for Coverity CID #996824 2013-04-05 15:08:28 +02:00
Klaas Freitag
5d5ee328b0 Fix for Coverity CID #996825 2013-04-05 15:05:44 +02:00
Andreas Schneider
e1edda17db getpass: Don't fail if stdin is not a tty.
We don't need to manipulate the tty state (such as turning off echo)
when prompting for passwords if we're not reading from a tty.
2013-04-05 14:12:05 +02:00
Daniel Molkentin
28aa1448c1 Remove superfluous frees. 2013-04-04 18:31:01 +02:00
Klaas Freitag
ec51a6933a Improve c_tmpname function to generate tmp name properly. 2013-04-04 12:59:39 +02:00
Klaas Freitag
093b166319 Rename pi to progress_info. 2013-04-04 12:58:29 +02:00
Klaas Freitag
815f652f08 Move tmpname generation to utility function c_tmpname for cleander code. 2013-04-04 12:57:44 +02:00
Klaas Freitag
08d439129c Fix some documentation in the code 2013-04-03 16:39:04 +02:00
Klaas Freitag
0bea2ea8f9 Push len computing to the right place. 2013-04-03 16:38:35 +02:00
Klaas Freitag
c745bf4291 Use correct printf qualifiers. 2013-04-03 16:37:55 +02:00
Olivier Goffart
9939e325cf Fix crash when setting a NULL error 2013-04-03 10:53:20 +02:00
Klaas Freitag
34668e42b3 Merge branch 'dav_0.70.5' into dav - WIP
Conflicts:
	CMakeLists.txt
	CPackConfig.cmake
	src/csync.h
	src/csync_update.c
	tests/ownCloud/t1.pl
2013-04-02 14:44:01 +02:00
Klaas Freitag
867595e1ef Fix release date. 2013-04-02 10:01:28 +02:00
Olivier Goffart
296011436a Store the error string in the database when blacklisting 2013-03-28 13:54:01 +01:00
Olivier Goffart
6659ee6d76 store the error string for files in the tree 2013-03-28 13:54:01 +01:00
Klaas Freitag
4b98ee0644 Pushed version to 0.70.6 2013-03-28 09:57:49 +01:00
Klaas Freitag
6de7ddf294 Use httpbf for all transfers. 2013-03-27 18:06:54 +01:00
Klaas Freitag
6f3168e88a Added function to retrieve http error code and fix return value check. 2013-03-27 18:05:50 +01:00
Klaas Freitag
d1efcb7dd4 Changelog for 0.70.5 2013-03-27 15:29:27 +01:00
Klaas Freitag
2010c4ad21 Fix a typo. 2013-03-26 15:07:41 +01:00
Klaas Freitag
b826d59925 Make VIO_METHOD_HAS_FUNC macro more robust. 2013-03-26 12:39:52 +01:00
Klaas Freitag
5e0e42baaf Make VIO_METHOD_HAS_FUNC macro more robust. 2013-03-26 12:35:35 +01:00
Klaas Freitag
5951039894 Improved C style and added more tests. 2013-03-26 12:01:48 +01:00
Klaas Freitag
a84332c910 Improved C style and added more tests. 2013-03-26 12:00:57 +01:00
Klaas Freitag
79c51540da Check for file equalness after having created a conflict file.
If the files are equal and the conflict was created because the
timestamps were screwed the conflict is removed again. This only
works on the local repository so far.

Conflicts:
	src/csync_propagate.c
2013-03-26 11:57:32 +01:00
Klaas Freitag
0baa80c235 Test added for c_compare_file. 2013-03-26 11:53:14 +01:00
Klaas Freitag
a71aef1731 Added c_compare_file function and test - WIP. 2013-03-26 11:52:46 +01:00
Klaas Freitag
466faba761 Fix test script. 2013-03-26 10:06:00 +01:00
Klaas Freitag
6aec7f4211 Push context to module to make logging of the module work. 2013-03-26 10:05:15 +01:00
Klaas Freitag
ef7c5c261d Fix memory allocation for path. 2013-03-22 21:48:01 +01:00
Klaas Freitag
43fa6e4418 Check for file equalness after having created a conflict file.
If the files are equal and the conflict was created because the
timestamps were screwed the conflict is removed again. This only
works on the local repository so far.
2013-03-22 21:04:09 +01:00
Klaas Freitag
5657ff3d34 Fix: set path correctly. 2013-03-22 16:29:04 +01:00
Klaas Freitag
a3f29967f7 Test added for c_compare_file. 2013-03-22 13:54:46 +01:00
Klaas Freitag
d43779671f Added missing changelog 0.70.4. 2013-03-22 11:09:24 +01:00
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
8b229f6413 Minor fixups. 2013-03-22 10:22:50 +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
20816f346d Fix a apple only warning. 2013-03-19 16:21:36 +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
Andreas Schneider
ab70947755 propagate: Fix renaming in the propagation. 2013-03-19 13:56:20 +01:00
Andreas Schneider
7d580916a8 modules: Add capabilities to smb module. 2013-03-19 13:46:06 +01:00
Andreas Schneider
029cdd4980 modules: Add capabilities to sftp module. 2013-03-19 13:45:50 +01:00
Klaas Freitag
d943b2880a Handle non statable files gracefully. 2013-03-19 11:48:46 +01:00
Klaas Freitag
089d919be2 Fix mkdir tests, as they use relative pathes the cwd should be defined. 2013-03-14 14:29:31 +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
Andreas Schneider
480c97c487 cmake: Update compiler flags. 2013-03-14 10:10:41 +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
Andreas Schneider
2ef1c72726 std: Refactor c_rename(). 2013-03-11 11:23:05 +01:00
Andreas Schneider
4c83526676 std: Implement error checks for c_iconv(). 2013-03-11 11:13:21 +01:00
Andreas Schneider
862f83988f tests: Update valgrind suppressions. 2013-03-08 18:50:26 +01:00
Andreas Schneider
0b5a83fc7f tests: Fix memleaks in encoding test. 2013-03-08 18:50:26 +01:00
Andreas Schneider
13901b23f0 tests: Fix memleaks in vio test. 2013-03-08 18:50:22 +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
Klaas Freitag
2cc291c520 tests: Add treewalk test.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-03-08 15:55:03 +01:00
Klaas Freitag
87c313485b tests: Treewalk function unit tests added.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-03-08 15:55:03 +01:00
Klaas Freitag
cf75a71b8b Make use of push_to_tmp_first function.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-03-08 15:55:03 +01:00
Klaas Freitag
d7a4a574ab Add a vio capabilites function to let a module define its capabilities.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-03-08 15:54:55 +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
Klaas Freitag
f211ee8bf1 Add a command line option to set a http proxy (owncloud only) 2013-03-05 15:33:14 +01:00
Andreas Schneider
8d43a743a1 misc: Include stdio.h for snprintf. 2013-03-05 10:49:08 +01:00
Andreas Schneider
fc16af05a5 misc: Include stdio.h for snprintf. 2013-03-05 10:45:33 +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
Andreas Schneider
fdb2fe3ef9 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:24:34 +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
2e73ce5605 owncloud: Properly report the error when the connection drop 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
ca20703370 httpbf: Fix leak 2013-03-02 13:42:36 +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
Andreas Schneider
457086c63e tests: Apply changes to the logging system. 2013-03-01 10:06:06 +01:00
Andreas Schneider
91d92bfa16 log: Add functions to set userdata for the logging callback. 2013-03-01 09:59:55 +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
fed597c840 Only try the PROPFIND again if the error is ERRNO_WRONG_CONTENT. 2013-02-20 17:38:09 +01:00
Klaas Freitag
3d4b426137 Removed some useless logging. 2013-02-19 09:40:14 +01:00
Andreas Schneider
2d6514b509 owncloud: Fix some problems in the owncloud module.
Thanks to Patrick Buergi.
2013-02-19 08:36:46 +01:00
Andreas Schneider
11b539088e client: Fix connection to a remote with password in it.
The password needs to be cleaned after we processed the uri.

Thanks to Patrick Buergi.
2013-02-19 08:35:20 +01:00
Andreas Schneider
fc2b860022 client: Fix setting the debug level.
Thanks to Patrick Buergi.
2013-02-19 08:34:44 +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
1be65be68e Fix crash in owncloud_mkdir
ne_simple_request destroy the request, we cannot access the error code
after it.
2013-02-13 18:25:28 +01:00
Olivier Goffart
b6a37064e9 Allow to configure the timeout in the config 2013-02-13 18:25:28 +01:00
Olivier Goffart
2e945c07af owncloud: fix session cookie again.
Some load balancers may add more cookies, and we would pick the wrong
one.  So keep all the cookies.
If we already read a session cookie, don't parse more cookie as they are
not session cookie.
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
79bbbe75d7 Report error to the callback in mkdir and rename 2013-02-12 13:36:17 +01:00
Klaas Freitag
75cc77b947 Fixed build on win. 2013-02-10 16:43:38 +01:00
Klaas Freitag
c98f2dfba9 Do PROPFIND with multiple attempts to fix owncloud/mirall #285
temporarily.
2013-02-09 17:13:57 +01:00
Klaas Freitag
0410771d1b Log the response buffer if the propfind response is not XML.
This will help to debug the problem described in bug owncloud/mirall
2013-02-09 17:13:56 +01:00
Klaas Freitag
b92a5f55b8 Fixed a typo lintian brought up. 2013-02-09 17:13:56 +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
Olivier Goffart
5a262d7588 Fix crash in owncloud_mkdir
ne_simple_request destroy the request, we cannot access the error code
after it.
2013-02-08 21:06:25 +01:00
Daniel Molkentin
2b8925c210 FindNeon: Work on non-xbuilds as well 2013-02-08 16:08:29 +03:00
Daniel Molkentin
79159ae32c Remove debug line 2013-02-08 15:56:26 +03:00
Olivier Goffart
7edc31048a owncloud: Retry when a download fails because of a timeout 2013-02-08 13:46:53 +01:00
Daniel Molkentin
a6f63aea94 Safely detect neon-config in cross builds 2013-02-08 15:46:42 +03:00
Klaas Freitag
a79c380707 Remove strange _tcslen define and fixed some potential leaks. 2013-02-07 14:45:12 +02:00
Klaas Freitag
b167b6e2d8 Fix a leak and simplify code.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-02-07 12:59:41 +01:00
Klaas Freitag
c2757cd7be Make _tmkdir define argument aware to simplify the usage even more.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-02-07 12:59:38 +01:00
Klaas Freitag
56afb2dc04 Fixed mem leaks in c_dir functions.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-02-07 12:59:36 +01:00
Klaas Freitag
41021d58d5 tests: Ported more tests to be cross platform capable.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-02-07 12:59:33 +01:00
Klaas Freitag
c7e60b5231 Renamed filename encoding functions.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-02-07 12:59:31 +01:00
Andreas Schneider
87aee96b98 update: Fix a memleak in the file tree walker.
Reviewed-by: Klaas Freitag <freitag@owncloud.com>
2013-02-07 12:56:03 +01: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
Andreas Schneider
7cb8763e13 cmake: Don't copy and install deprecated csync_log.conf. 2013-02-06 18:20:39 +01:00
Andreas Schneider
5baf362af0 Revert "WIP"
This reverts commit acd7080329.

Oops :)
2013-02-06 18:18:04 +01:00
Andreas Schneider
acd7080329 WIP 2013-02-06 17:48:19 +01:00
Klaas Freitag
1e61a03f32 Fix const warnings after revert of wrong SAFE_FREE patch.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-02-06 15:11:41 +01:00
Klaas Freitag
877bf0c90f Remove definition of _tcslen to avoid confusion.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-02-06 15:11:41 +01:00
Klaas Freitag
5b6d971055 No more platform specific code in csync_vio_local.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-02-06 15:11:41 +01:00
Klaas Freitag
5d9306c841 Deprecate blksize and blkcount of the stat struct. Not needed in csync.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-02-06 15:11:41 +01:00
Klaas Freitag
0bc0181f91 Added c_rename function to do platform specific renaming.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-02-06 15:11:41 +01:00
Klaas Freitag
390a307840 tests: Cleaned up some encoding tests.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-02-06 15:11:41 +01:00
Klaas Freitag
c45ca25c28 Avoid crash in iconv destroy.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-02-06 15:11:41 +01:00
Klaas Freitag
874a820426 Use correct variable type to make test build on win32.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-02-06 15:11:41 +01:00
Klaas Freitag
4d3a30c21f Fixed typo in variable name.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-02-06 15:11:41 +01:00
Daniel Molkentin
9c0c693081 Add iconv support to convert charsets to different platforms. 2013-02-06 15:11:40 +01:00
Olivier Goffart
13bb5ca2c3 Fix memory leaks and some more multibyte conversoins.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-02-06 14:44:40 +01:00
Klaas Freitag
6b3ac8c685 Use _tclosedir rather than closedir.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-02-06 14:44:14 +01:00
Klaas Freitag
f2b9bc6d0d Use wide char variable to remove directory.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-02-06 14:43:49 +01:00
Klaas Freitag
7d0acf9ba3 Encoding test and make all tests work cross platform.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-02-06 14:42:17 +01:00
Klaas Freitag
d2e5fc66fa ownCloud: Added missing brackets.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-02-06 14:39:58 +01:00
Klaas Freitag
e40a810187 Make client compile with picky compiler.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-02-06 14:39:21 +01:00
Klaas Freitag
1d703ee6c4 Rename _TCHAR type to mbchar_t.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-02-06 14:38:58 +01:00
Klaas Freitag
ce080d5ee1 Fix definition of tmp file name.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-02-06 14:38:25 +01:00
Klaas Freitag
0e804ca685 Added wide character to utf8 and vice versa conversion functions.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-02-06 14:37:51 +01:00
Klaas Freitag
201d0ec97c Define abstractions for cross platform file operations with wide char.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-02-06 14:37:11 +01:00
Klaas Freitag
b152b39e67 ownCloud: Use wide char aware file system functions.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-02-06 14:36:29 +01:00
Klaas Freitag
9120098811 Use wide character abstraction functions for file operations.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-02-06 14:27:53 +01:00
Klaas Freitag
922254ba94 Defined abstractions for basic file operations to use with wide char.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-02-06 14:23:55 +01:00
Klaas Freitag
bd4c9b3a7f Added wide character to utf8 and vice versa conversion functions.
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-02-06 14:23:14 +01:00
Olivier Goffart
50dac60bc9 owncloud: fix session cookie again.
Some load balancers may add more cookies, and we would pick the wrong
one.  So keep all the cookies.
If we already read a session cookie, don't parse more cookie as they are
not session cookie.
2013-02-06 12:32:48 +01:00
Klaas Freitag
b7a740d0b3 Switch off unix extensions like the server, see mirall bug #204. 2013-02-05 12:38:40 +01:00
Andreas Schneider
8b7cab119b std: Add discard_const macros. 2013-01-30 16:09:51 +01:00
Olivier Goffart
624c99de8f Make progress works correctly when files are chunked 2013-01-30 12:29:56 +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
Olivier Goffart
c716fbb96e Refactoring: create the neon request in sendfile
... instead of open.
That way we can do something else for the big files
2013-01-29 16:22:46 +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
4ca84c80c6 Do not limit Cookie detection to PHPSESSID only (mirall#260) 2013-01-24 10:06:42 +01:00
Klaas Freitag
0d6b32ed0a Updated Changelog 2013-01-23 16:03:34 +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
1db825a733 Set path shortcuts for win32 as well. 2013-01-21 13:38:33 +01:00
Olivier Goffart
b7cbd311ba Fix connection with NTLM proxy (should go to dav branch) 2013-01-18 16:28:42 +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
21379de9c3 Fixed comment and initialized errno for stat. 2013-01-16 16:25:51 +01:00
Klaas Freitag
5b1a9d8ed8 Handle 405 status code in mkdir correct as EEXIST. 2013-01-16 13:48:52 +01:00
Klaas Freitag
e83cc82f0d remove a duplicate void'ing. 2013-01-16 13:47:41 +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
3d4ba6c29b Write config files after all directories were traversed. 2013-01-09 15:04:17 +01:00
Klaas Freitag
ba21a9b3a2 Check if neon was built with LFS support. 2013-01-09 15:03:20 +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
a880949836 Display all SSL certificates from the chain to the user to approve. 2012-12-19 18:06:36 +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
Andreas Schneider
c795010988 log: Use a thread local variable for logging callback. 2012-12-18 14:25:35 +01:00
Andreas Schneider
490d3016e6 priv: Remove log_verbosity variable. 2012-12-18 14:16:50 +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
Andreas Schneider
9a539526f1 log: Use a thread local variable for the log level. 2012-12-17 09:40:17 +01:00
Andreas Schneider
28c6c9a6df std: Add missing copyright header for c_dir.c. 2012-12-15 12:37:47 +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
89241013c3 Owncloud: Do not use PATH_MAX
We should not limit the size of the buffers to arbitrary values.

Should fix https://github.com/owncloud/mirall/issues/174
2012-12-14 00:14:45 +01:00
Olivier Goffart
1c8dde3b61 owncloud: install the compression hook in sendfile
In some cases (if the local file can't be opened) close will be called
without calling sendfile. That would result in the hook leaking, and
causing crash because it is only unhooked in sendfile.
2012-12-14 00:14:44 +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
Klaas Freitag
5772021a53 Merge remote-tracking branch 'ogoffart/dav' into dav 2012-12-12 13:37:10 +01:00
Klaas Freitag
ab595a4c8f Add another useful logging line. 2012-12-12 13:36:58 +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
Klaas Freitag
246e10c403 Up- and download errors are soft errors. 2012-12-11 15:27:00 +01:00
Markus Goetz
bd71ddf0aa Iconv: Also search in /usr on OS X 2012-12-11 14:25:56 +01:00
Daniel Molkentin
fc8ec72371 Fix c&p error 2012-12-11 12:09:51 +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
70a273eafd Do not compile lock test for win32. 2012-12-10 21:15:45 +01:00
Klaas Freitag
faa1b83e9e Fixed rename function to use TCHAR. 2012-12-10 21:15:31 +01:00
Klaas Freitag
128c69676f Added some useful logging for GET 2012-12-10 21:15:08 +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
Markus Goetz
568a71daa0 Only send gzip Accept-Encoding
.. because later we only support gzip (and not deflate) anyway
2012-12-08 11:06:29 +01:00
Markus Goetz
7ee75f5499 Unify compress_reader and uncompress_reader
They are the same code anyway
2012-12-08 11:06:29 +01:00
Olivier Goffart
d3585db4ba Owncloud: Add the fingerprint in the ssl warning mesage
Then the client can compare ssl certificate fingerprint
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
fa0c458bb3 Owncloud: Fix getting id from id cache.
We need to remove the quotes around the ETag
2012-12-08 11:06:29 +01:00
Olivier Goffart
415a86edeb owncloud: Fix GET requests
the download via the get function DOES NOT require a full uri
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
3f24ab599c Do not compile with iconv on windows 2012-12-07 23:12:37 +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
Klaas Freitag
82acccf333 Some more cleanpus. 2012-12-07 09:02:42 +01:00
Klaas Freitag
c4b88129db Adopt module logging to new logging API. 2012-12-07 09:02:25 +01:00
Olivier Goffart
30548b26e3 Remove some superfluous call to the progress callback 2012-12-06 16:49:08 +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
5ff6baaf85 Owncloud: cache the ETAG: while doing a GET
Makes downloading of lots of big files twice as fast
2012-12-06 14:59:26 +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
Klaas Freitag
0b951ab6b1 Fixed more compile warnings. 2012-12-06 13:18:54 +01:00
Klaas Freitag
e6ad2140eb Fixing more errno handling. 2012-12-06 13:15:25 +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
Klaas Freitag
40206e0eab Fix case statement for error code generation. 2012-12-06 11:34:03 +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
Markus Goetz
69a979c16b ownCloud: Allow HTTP timeout to be settable 2012-12-05 18:15:56 +01:00
Klaas Freitag
5c44eb563f Removed wrong csync_vio_file_stat_destroy calls. 2012-12-05 15:58:14 +01:00
Olivier Goffart
f946dd4287 Owncloud: cache the last PROPFIND call.
So we do not need to have two calls (stat+opendir)
2012-12-05 14:49:50 +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
Olivier Goffart
0169b034f3 Use the full URL in the callback instead of just the path 2012-12-05 14:43:36 +01:00
Klaas Freitag
41c4e05b93 Fix error reporting from sendfile method. 2012-12-05 14:19:22 +01:00
Klaas Freitag
fb3662127c Better error checking on get_file_id. 2012-12-05 12:55:05 +01:00
Klaas Freitag
d3378a7991 Some cleanups to avoid compile warnings. 2012-12-05 12:54:50 +01:00
Klaas Freitag
79d5e19a65 Remove left over WIP code. 2012-12-05 12:38:57 +01:00
Klaas Freitag
823706caac Use cross platform stat type and free mem of lastDir. 2012-12-05 12:38:29 +01:00
Klaas Freitag
aaa8fe6e34 Commented loggings as currently logging is broken. 2012-12-04 18:41:20 +01:00
Klaas Freitag
b428b46ff8 Fix return code from sendfile. 2012-12-04 18:13:28 +01:00
Klaas Freitag
3e8c5e92cc Removed leftover variables. 2012-12-04 18:12:42 +01:00
Olivier Goffart
f18f58ace0 Add progress callback 2012-12-04 17:26:23 +01:00
Olivier Goffart
f2f1672ba6 Owncloud: don't use userdata for proxy parameter
Use set_module_propery instead
2012-12-04 17:22:11 +01:00
Olivier Goffart
36715f54ef owncloud: get session cookie from a module property 2012-12-04 17:22:11 +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
d2730f6133 Clean read and write functions in owncloud_module. 2012-12-04 17:02:39 +01:00
Klaas Freitag
9e3dd6e5c8 Simplify up- and download through sendfile method in owncloud module. 2012-12-04 15:04:22 +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
Andreas Schneider
7fefdc1800 modules: Fix csync_dummy modules license header. 2012-12-04 13:51:11 +01:00
Andreas Schneider
0a9cca8441 modules: Fix csync_owncloud module license header. 2012-12-04 13:50:14 +01:00
Andreas Schneider
c4f46608dc modules: Fix csync_smb module license header. 2012-12-04 13:49:40 +01:00
Andreas Schneider
9ca550f93a modules: Remove csync_sftp2 module. 2012-12-04 13:48:31 +01:00
Andreas Schneider
c2ced426ef modules: Fix csync_sftp module license header. 2012-12-04 13:48:13 +01:00
Klaas Freitag
13354b6e8b Removed old log callback code. 2012-12-03 19:41:44 +01:00
Klaas Freitag
924a19b8ea Push variable declaration where its needed. 2012-12-03 19:40:06 +01:00
Klaas Freitag
41adbbdea7 Remove LOG_TO_CALLBACK cmake option. 2012-12-03 19:39:39 +01:00
Olivier Goffart
b8fd96fc62 Merge remote-tracking branch 'ogoffart/dav' into dav 2012-12-03 18:23:25 +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
Daniel Molkentin
9c853594e8 owncloud: Clean up resources allocated by neon
Fixes crashes that result from owncloud running out of FDs,
like oc-920.
2012-11-28 12:57:22 +01:00
Klaas Freitag
01ba8d4a9b Wide char fixes for exclude, lock and statedb. 2012-11-27 15:39:06 +01:00
Klaas Freitag
f90550775c Fixed tests to also run on debian host 2012-11-23 12:51:01 +01:00
Klaas Freitag
3fcc56ebbc Add removal of a test dir 2012-11-23 11:43:39 +01:00
Klaas Freitag
1147e77d67 Fix delete in csync_config 2012-11-23 11:26:24 +01:00
Markus Goetz
d74c81feee Owncloud: Add support for sending a cookie 2012-11-22 21:54:34 +01:00
Daniel Molkentin
ea14dc1a75 Bump version for cpack as well 2012-11-22 16:55:41 +01:00
Klaas Freitag
9eda137c77 Commented too verbose logging. 2012-11-22 15:25:27 +01:00
Klaas Freitag
a180b1c400 Changelog for 0.60.2 2012-11-21 16:12:37 +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
6e29ec7a7c :x 2012-11-20 17:26:05 +01:00
Klaas Freitag
eae3b863d0 Log the http result code of the propfind 2012-11-19 13:11:26 +02:00
Klaas Freitag
917eeea48c ownCloud: Added a stricter check on HTTP PROPFINDs.
Now check on both the result code and the content type of the
reply. If the content-type is not applicaton/xml do not accept the
answer even if the status code is good.
This fixes https://github.com/owncloud/mirall/issues/92
2012-11-17 21:15:59 +01:00
Klaas Freitag
3265e2c6a2 Handle PUT fail correctly. 2012-11-16 12:31:09 +01:00
Klaas Freitag
ca7fceaa2c Remove left over declaration. 2012-11-16 12:30:29 +01:00
Daniel Molkentin
d9b14670ab owncloud: remove unused member from transfer context 2012-11-15 12:48:02 +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
146ba66b50 Initialize struct to zero to avoid free on uninitialized value. 2012-11-14 14:08:47 +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
d5a32543ef Fix update test. 2012-11-09 17:24:17 +01:00
Klaas Freitag
7aeeeae037 Fix test, avoid double free. 2012-11-09 17:16:27 +01:00
Klaas Freitag
161d7c18ff Push version to next release 0.60.2 2012-11-09 17:15:46 +01:00
Klaas Freitag
940ff6eeaa Proper cross platform initialization. 2012-11-09 17:14:52 +01:00
Klaas Freitag
b748fab6e9 Set version to next release 0.60.2 2012-11-09 17:14:24 +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
6d126f3956 Check for timegm and set a config variable accordingly. 2012-11-08 14:50:08 +01:00
Klaas Freitag
bede1acbce Win32: Fix CreateFile call for directories. 2012-11-08 14:49:15 +01:00
Klaas Freitag
d19a0c9c46 ownCloud: log the mtime in stat. 2012-11-08 11:22:49 +01:00
Klaas Freitag
295de77a7d Added .directory to ignore. 2012-11-08 11:21:53 +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
Olivier Goffart
e2a8e9dce2 win: Link against all the required libraries 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
Klaas Freitag
f65be04415 Added Windows tmp file pattern to exclude list. 2012-11-06 14:05:52 +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
2206c4a4d1 Fix printf operators for time delta values. 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
803b3fb542 Fix compile with mingw32 for win32, removed int decl in for loop. 2012-10-31 21:08:08 +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
2752a9e9c0 tests: Remove the right directory in the teardown function. 2012-10-30 14:49:18 +01:00
Andreas Schneider
e3e00b4b32 tests: Add a csync_log test. 2012-10-30 11:39:51 +01:00
Andreas Schneider
dd60412a50 doc: Remove all references to log4c. 2012-10-30 11:27:21 +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
b43f6690d5 client: Add setting the debug level. 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
9e4c873b16 Fixed csync testcases. 2012-10-26 21:33:13 +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
Klaas Freitag
0cea891a98 Fix name of config file in log test case. 2012-10-26 11:53:29 +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
e43466d09d tests: Add exclude test for journal db names. 2012-10-22 15:13:52 +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
304371eecb build: Add an option for clang. 2012-10-22 11:21:18 +02:00
Andreas Schneider
cea0c9e85f cmake: Fix compile option on UNIX with Clang. 2012-10-22 11:20:30 +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
351c6089fc modules: Return in dummy_stat() if we have no memory. 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
Andreas Schneider
c24a18cbfd cmake: Cleanup testing and enable test target. 2012-10-19 19:07:15 +02:00
Andreas Schneider
ac5855940a tests: Remove the check_vio_local test.
It is tested by check_vio anyway.
2012-10-19 18:26:19 +02:00
Andreas Schneider
fafa632b65 tests: Migrate check_vio_handle to cmocka. 2012-10-19 18:21:37 +02:00
Andreas Schneider
7aa63e23aa tests: Migrate check_vio_file_stat to cmocka. 2012-10-19 18:16:36 +02:00
Andreas Schneider
8d737287fb tests: Migrate check_vio to cmocka. 2012-10-19 18:14:28 +02:00
Andreas Schneider
ecd944a162 tests: Migrate check_csync_update to cmocka. 2012-10-19 17:25:41 +02:00
Andreas Schneider
7c59ea2999 tests: Migrate check_csync_util to cmocka. 2012-10-19 16:10:30 +02:00
Andreas Schneider
b58bcb510d tests: Migrate check_csync_time to cmocka. 2012-10-19 16:06:47 +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
Andreas Schneider
792be0f053 tests: Migrate check_csync_statedb_query to cmocka. 2012-10-19 15:53:22 +02:00
Andreas Schneider
aa227aa10b tests: Migrate check_csync_statedb_load to cmocka. 2012-10-19 14:43:25 +02:00
Andreas Schneider
3b7104f514 tests: Migrate check_csync_lock to cmocka. 2012-10-19 14:29:10 +02:00
Andreas Schneider
eded4915e9 tests: Migrate check_csync_init to cmocka. 2012-10-19 10:57:40 +02:00
Andreas Schneider
3a179c8822 tests: Migrate check_csync_exclude to cmocka. 2012-10-18 15:17:24 +02:00
Andreas Schneider
ab5f38a680 cmake: Add check for asprintf(). 2012-10-18 15:07:17 +02:00
Daniel Molkentin
996193f41a Add git metadata files 2012-10-18 13:44:28 +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
6770e91d31 Fix deletion of straying tmp files. 2012-10-18 13:26:44 +02:00
Daniel Molkentin
f8e56cc099 Update ChangeLog for 0.60.1 2012-10-18 13:11:16 +04:00
Klaas Freitag
3006f14c8d Remove tmp files after GET request. 2012-10-18 10:04:11 +02:00
Andreas Schneider
13df0426af tests: Migrate check_csync_create to cmocka. 2012-10-17 17:46:45 +02:00
Andreas Schneider
b4eee0383d tests: Migrate check_csync_config to cmocka. 2012-10-17 17:03:22 +02:00
Andreas Schneider
6dcb50d8ba tests: Disable log test. 2012-10-16 17:23:07 +02:00
Andreas Schneider
1582067200 tests: Migrate check_std_c_tim to cmocka. 2012-10-16 17:06:46 +02:00
Andreas Schneider
f4b1ce9350 tests: Migrate check_std_c_str to cmocka. 2012-10-16 17:01:25 +02:00
Andreas Schneider
3395ed2b95 tests: Migrate check_std_c_rbtree to cmocka. 2012-10-16 16:37:38 +02:00
Andreas Schneider
17e0da1e65 tests: Migrate check_std_c_path to cmocka. 2012-10-16 15:49:06 +02:00
Klaas Freitag
9d126bc45a Set version to next tag 0.60.1 2012-10-16 15:48:13 +02:00
Andreas Schneider
4db3194e84 tests: Migrate check_std_c_list to cmocka. 2012-10-16 15:32:33 +02:00
Andreas Schneider
4529928edc tests: Migrate check_std_c_jhash to cmocka. 2012-10-16 14:54:59 +02:00
Andreas Schneider
7155528bb5 tests: Migrate check_std_c_file to cmocka. 2012-10-16 14:31:21 +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
8633d7751a Fix test script to work with ocsync. 2012-10-16 11:53:20 +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
Andreas Schneider
24f066ef0b tests: Migrate check_std_c_dir to cmocka. 2012-10-16 11:04:13 +02:00
Andreas Schneider
b1b0c2c510 tests: Start to use cmocka for the tests. 2012-10-16 10:37:40 +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
Eric Seigne
a371546038 Fix bug #4: Hide password from command line.
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
2012-10-15 20:57:16 +02:00
Klaas Freitag
684c5a88c7 Updated changelog for 0.60.0 2012-10-10 12:23:07 +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
9b72504b30 Added more specific values to the ignore values. 2012-10-10 12:10:06 +02:00
Daniel Molkentin
e0f02c41b1 owncloud: rely entirely on caller for proxy detection 2012-10-08 21:26:12 +02:00
Andreas Schneider
e603d1c6d0 doc: Fix typos in userguide.
Thanks to Thomas Renninger <trenn@suse.de>
2012-10-07 12:22:16 +02:00
Klaas Freitag
e7837c0716 Fixed rename to ocsync in doc subdir. 2012-10-05 14:54:13 +02:00
Klaas Freitag
b27899ecc4 Rename of the config files. 2012-10-05 14:45:04 +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
4bf72957bb Added test for std function c_tmpname. 2012-10-01 17:24:02 +02:00
Klaas Freitag
404073fe7f Rename csync to ocsync to not collide with upstream csync. 2012-10-01 12:39:05 +02:00
Klaas Freitag
b25d77caee Merge branch 'fastsync' into dav 2012-10-01 10:35:28 +02:00
Klaas Freitag
29e4e506e6 Switch back to PROPSET lastmodified as getlastmodified is readonly. 2012-09-28 17:36:04 +02:00
Klaas Freitag
c4db7d1acf use correct DAV property for lastmodified. 2012-09-28 14:11:20 +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
f031e93618 Do not try a head request as PROPFIND is more efficient on ownCloud. 2012-09-26 12:44:17 +02:00
Andreas Schneider
cd662432f9 cmake: Update ctest config. 2012-09-25 14:51:29 +02:00
Klaas Freitag
b976ac914d Also check the files basename against the exclude pattern. 2012-09-25 15:41:55 +03:00
Klaas Freitag
4eb1ae7853 Fix test: Status must be INSTRUCTION_EVAL.
This test runs on an empty database. That also means that there is no
ID in the database which is needed to detect the update. An empty
ID means that the status must be evaluated.
2012-09-24 16:47:43 +03:00
Klaas Freitag
407b87c17b Fix statedb test: Added new columns. 2012-09-24 16:28:43 +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
0dfa61650d ownCloud: clear the cache variables before ID query. 2012-09-24 15:45:11 +03:00
Klaas Freitag
403fec1454 ownCloud: Removed unused stat variable. 2012-09-24 15:44:19 +03:00
Daniel Molkentin
7bed8e184f Remove redundant code block 2012-09-23 11:02:18 +02:00
Daniel Molkentin
f86481d73e vio plugin loading: cut of filename regardless of length. 2012-09-23 11:01:59 +02: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
e4c0fb90dd ownCloud: some log cleanups. 2012-09-20 11:28:54 +03:00
Klaas Freitag
ee228cfff4 Make use of the Session cookie sent from the server. 2012-09-19 18:46:40 +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
8571394847 Fix time correction between client and server. 2012-08-30 18:45:10 +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
ecd6a86fd3 Remove wrong free command. 2012-08-30 14:30:30 +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
9f4f0e8106 ownCloud: more memory cleanups, use widechar unlink for tmp files,
adjust the modtime by the time difference between client adn server.
2012-08-30 12:59:52 +03:00
Klaas Freitag
99691059bf Removed all usage of openSSL. 2012-08-29 15:37:31 +03:00
Klaas Freitag
4e4fca54c2 added test data as well as a test config template. 2012-08-29 15:26:31 +03:00
Klaas Freitag
52e0f06692 use a more speaking name for config file. 2012-08-29 15:26:15 +03:00
Klaas Freitag
0416107951 Fix testcase. 2012-08-29 13:34:42 +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
3e95056975 ownCloud: Use stat cache more structured. 2012-08-28 15:59:33 +03:00
Klaas Freitag
636ec65c60 ownCloud: removed unused statcache code. 2012-08-28 14:24:42 +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
bba1396770 ownCloud: Use correct path to push into owncloud_stat. 2012-08-28 14:06:55 +03:00
Klaas Freitag
b6edf82d4e Fixed license of tests, added dir check test. 2012-08-26 20:08:28 +02:00
Klaas Freitag
3b369c8b03 More robust query result access if columns are missing. 2012-08-26 20:07:36 +02:00
Klaas Freitag
9897335006 ownCloud: Test on null pointer before access for md5 sum. 2012-08-26 20:06:53 +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
4169c4be05 More blackbox testing of csync ownCloud - enhanced test script. 2012-08-23 17:57:04 +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
dba2c1d105 Added get_file_id function. 2012-08-23 17:43:51 +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
3e85218be9 Do not do post copy stat for ownCloud. 2012-08-23 17:35:16 +03:00
Klaas Freitag
64660df84b removed obsolete FindOpenSSL. 2012-08-23 17:34:19 +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
Dominik Schmidt
21d3ec4d2d Add patched FindOpenSSL to fix cross-compilation for windows 2012-08-23 17:24:23 +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
30d1c9ed9d ownCloud: Some code cleanup, added documentation. 2012-08-20 19:09:24 +03:00
Klaas Freitag
82d22d1494 Added get_file_id function. 2012-08-17 16:50:31 +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
ebfeda7304 Updated Changelog for 0.50.8. 2012-08-10 12:37:22 +03:00
Klaas Freitag
f26b91f509 ownCloud: Still require time sync between the two repos. 2012-08-10 12:36:55 +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
d16dd57d85 ownCloud: More return value checking in fetch_resource_list. 2012-08-09 14:11:54 +03:00
Klaas Freitag
8ec3ea04da more logging... 2012-08-08 19:00:11 +03:00
Klaas Freitag
3f2d5b380d Fixed some strncpy flaws that might caused problems on win32 (mkdir) 2012-08-08 16:45:00 +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
60d61634e5 Updated version numbers to 0.50.8 ownCloud release. 2012-08-03 18:47:49 +03:00
Klaas Freitag
253605758e Use remote rename if local rename is detected. 2012-08-02 16:58:54 +03:00
Klaas Freitag
28d28ecac6 ownCloud: Proxy support when working in mirall. 2012-07-31 17:59:15 +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
Klaas Freitag
6ba5bf45d8 removed obsolete FindOpenSSL. 2012-07-30 15:59:55 +03:00
Klaas Freitag
c753525085 removed obsolete FindOpenSSL. 2012-07-30 13:57:57 +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
Thomas Mueller
9134955899 use custom FindOpenSSL only for cross compilation in any other cases it is used from the local system 2012-07-26 14:57:15 +03:00
Klaas Freitag
1352f6bc39 MD5 Support WIP 2012-07-24 09:36:06 +02:00
Dominik Schmidt
9626f65b6b Add patched FindOpenSSL to fix cross-compilation for windows 2012-07-23 10:58:13 +02:00
Dominik Schmidt
293b0cecaf Add patched FindOpenSSL to fix cross-compilation for windows 2012-07-23 10:57:18 +02:00
Klaas Freitag
244d23ac0c Updated Changelog file. 2012-07-23 09:13:44 +02:00
Klaas Freitag
718c25d449 Added missing config_test.h input file. 2012-07-20 10:52:30 +02:00
Klaas Freitag
785b7aad60 Use a proper namespace for lastmodified property. 2012-07-20 10:51:39 +02:00
Klaas Freitag
85993d2650 Don't override error code set by timedif in vio init 2012-07-19 21:21:33 +02:00
Klaas Freitag
1104619a52 No atime on apple platform. 2012-07-19 21:11:35 +02:00
Klaas Freitag
b57f33353d fixed copy and paste errors in error output. 2012-07-19 21:06:18 +02:00
Klaas Freitag
459f25b0ef owncloud test: Save the downloaded file in /tmp. 2012-07-19 21:04:15 +02:00
Klaas Freitag
cad3da10db Merge branch 'timedelta' into dav 2012-07-19 15:53:12 +02:00
Klaas Freitag
8402b5b6fa ownCloud: removed config file access again, correct handling of
timediff.
2012-07-19 15:39:53 +02:00
Klaas Freitag
b47ac922ad ownCloud: handle time delta and access the config file. 2012-07-19 10:50:18 +02:00
Klaas Freitag
2b4261f15a Added functions to generate MD5-Sums based on openssl with tests. 2012-07-18 17:00:46 +02:00
Klaas Freitag
5f93c490a5 Make ownCloud cmocka test build on the win32 platform. 2012-07-11 18:01:08 +02:00
Klaas Freitag
b74fc47e3f More unit testing of the ownCloud module with mocka. 2012-07-11 16:50:25 +02:00
Klaas Freitag
1866956984 use lstat instead of stat to stat files. Avoids problems with links. 2012-07-11 16:48:38 +02:00
Klaas Freitag
e90b4a13b3 Added logging of the time values. 2012-07-11 16:05:40 +02:00
Klaas Freitag
59202fffe4 fixed spaces and logging if timesync is needed for the module. 2012-07-11 16:03:31 +02:00
Klaas Freitag
81e77afaec cleaner logging of time delta. 2012-07-11 16:02:43 +02:00
Klaas Freitag
0ed8c57cad make proper logging of the module capabilities. 2012-07-09 16:46:14 +02:00
Klaas Freitag
bcb31b6998 Merge branch 'dav' of ssh://milliways.cryptomilk.org/users/freitag/csync into dav
Conflicts:
	src/csync.c
	src/csync_propagate.c
	src/std/c_private.h
	src/vio/csync_vio.c
2012-07-09 16:39:11 +02:00
Klaas Freitag
7fb929a82d use lstat instead of stat for local files, fix oCB #713. 2012-07-09 16:15:27 +02:00
Klaas Freitag
7b261077a2 Avoid compile warning and use an unsigned variable. 2012-07-09 14:45:25 +02:00
Klaas Freitag
43685f69a3 do the capabilities after the module was initialized. 2012-07-09 14:45:05 +02:00
Klaas Freitag
9e81fd38e1 Added CMocka find module for cmake. 2012-07-09 14:29:17 +02:00
Klaas Freitag
5b79f1feca Added mocka tests for the ownCloud module. 2012-07-09 14:16:20 +02:00
Klaas Freitag
9eae6d88fd Add ownCloud directory in tests. 2012-07-09 14:10:04 +02:00
Klaas Freitag
b9329f2991 undef malloc only if not doing UNIT_TESTING. 2012-07-09 14:09:34 +02:00
Klaas Freitag
c0f1f36f59 Fix condition on when atomar push is allowed, never for local files. 2012-07-09 13:26:20 +02:00
Dominik Schmidt
77d71eb080 Load plugins on MacOSX. 2012-07-09 13:26:20 +02:00
Klaas Freitag
64f8e5031b owncloud: remove the win32 c_tmpname use. 2012-07-09 13:26:20 +02:00
Klaas Freitag
d50f39c8b8 owncloud: Win32 use c_tmpname and set _fmode to O_BINARY. 2012-07-09 13:26:20 +02:00
Klaas Freitag
26221653ee Updated Changelog 2012-07-09 13:26:20 +02:00
Klaas Freitag
065529642e Ability to push to remote without using a tempfile to copy to.
Modules such as ownCloud make sure anyway that the upload to a
remote resource happens atomar. This patch allows to switch off
the default behaviour of first copying to a temp file in the
same directory. Use csync_set_remote_push_atomar function to
switch off.
2012-07-09 13:26:20 +02:00
Klaas Freitag
c32e50462e Remove wrong cast 2012-07-09 13:26:20 +02:00
Klaas Freitag
3cbc0e5d7e ownCloud: Fix mem leaks to bring valgrind down to zero loss. 2012-07-09 13:26:20 +02:00
Klaas Freitag
36b1e21c45 ownCloud: Use wide char aware file system functions. 2012-07-09 13:26:20 +02:00
Klaas Freitag
c084fa05af Added test for std function c_tmpname. 2012-07-09 13:26:20 +02:00
Klaas Freitag
037532d73b win32: Fix random file name generation, init random generator once. 2012-07-09 13:26:20 +02:00
Klaas Freitag
d532031e3c Fixed release date of 1.0.2 2012-07-09 13:26:20 +02:00
Klaas Freitag
08621aa74d Updated changelog for 0.50.6. 2012-07-09 13:26:00 +02:00
Klaas Freitag
09b82ea7cd do not log on stderr on MacOSX because that spams system log 2012-07-09 13:26:00 +02:00
Klaas Freitag
f802b54f6f set version to 0.50.7 2012-07-09 13:26:00 +02:00
Klaas Freitag
62acdc3b8c win32: use wide char variant of CopyFile for file copy. 2012-07-09 13:26:00 +02:00
Klaas Freitag
d7deaf3448 win32: Use wide character variant of GetSpecialFolderPath to get home. 2012-07-09 13:26:00 +02:00
Klaas Freitag
52dbc10315 ownCloud: commented extensive log line. 2012-07-09 13:25:59 +02:00
Klaas Freitag
188584e832 logging in SSL callback, important to debug. 2012-07-09 13:25:59 +02:00
Klaas Freitag
9f900266f4 Added a newline in case the logging callback is zero. 2012-07-09 13:25:59 +02:00
Klaas Freitag
f2439d83f0 Fix wide character support for the mkdir definition. 2012-07-09 13:25:59 +02:00
Klaas Freitag
5734a31b60 Add ability to log to a callback for the csync library. 2012-07-09 13:25:59 +02:00
Klaas Freitag
dfacc611d5 ownCloud: Adopt logging to csync standard log instead of printf. 2012-07-09 13:25:59 +02:00
Klaas Freitag
dc3055e429 Add a switch LOG_TO_CALLBACK for cmake to enable callback logging. 2012-07-09 13:25:59 +02:00
Klaas Freitag
5ac721920c ownCloud: Proper initializations with NULL avoid a crash. 2012-07-09 13:25:59 +02:00
Klaas Freitag
03476b3a11 Set the correct define to the new released version 0.50.6. 2012-07-09 13:25:59 +02:00
Klaas Freitag
a47ddb59ae Win32: Chdir to app path before searching module relative. 2012-07-09 13:25:59 +02:00
Klaas Freitag
1d55691e75 Do not log on Apple by default as that goes to ASL 2012-07-09 13:25:59 +02:00
Klaas Freitag
5672638a5b Update Changelog 2012-07-09 13:25:59 +02:00
Klaas Freitag
02c2fe1aeb ownCloud: Added redirect ability. 2012-07-09 13:25:59 +02:00
Klaas Freitag
0db820fc98 Added changes for 0.50.6. 2012-07-09 13:25:59 +02:00
Klaas Freitag
86fc6d2262 Set version to 0.50.6 for next oC version. 2012-07-09 13:25:59 +02:00
Klaas Freitag
43263d8e9d ownCloud: Fix bug #613: Encode strange url correctly.
see http://bugs.owncloud.org/thebuggenie/owncloud/issues/oc-613
2012-07-09 13:25:59 +02:00
Klaas Freitag
b261ecb705 Do proper handling of Win32 special characters.
Introduced a tchar based handling of wide character encoding that
is happening on Windows platforms.
2012-07-09 13:25:59 +02:00
Klaas Freitag
82074cfc53 tests: Added treewalk test. 2012-07-09 13:25:59 +02:00
Klaas Freitag
124d996154 tests: Treewalk function unit tests added. 2012-07-09 13:25:59 +02:00
Klaas Freitag
1fe093b6b6 Fixed local treewalk function filter comment. 2012-07-09 13:25:59 +02:00
Klaas Freitag
26847b9fac Fixed tests script that broke because of HTTP::DAV module 2012-07-09 13:25:59 +02:00
Klaas Freitag
3d2a43f512 ownCloud: Fixed var initialization to avoid crash after thread
terminated.
2012-07-09 13:25:59 +02:00
Klaas Freitag
1059c008e5 ownCloud: Add neon include dir variable to the compile include dirs. 2012-07-09 13:25:59 +02:00
Klaas Freitag
5703bb61ac ownCloud: better debug output for file GET. 2012-07-09 13:25:59 +02:00
Klaas Freitag
992f0d6b87 ownCloud: set correct module load error code. 2012-07-09 13:25:59 +02:00
Klaas Freitag
a433ef3dfe Changelog entries added for 0.50.5. 2012-07-09 13:25:46 +02:00
Klaas Freitag
014fc60fc7 Added GNUInstallDirs.cmake to lower the required cmake version. 2012-07-09 13:25:46 +02:00
Klaas Freitag
1939ea93f5 Moved error_code to context for thread savety. 2012-07-09 13:25:46 +02:00
Klaas Freitag
c1c36a15c4 Pushed version to 0.50.5 and lib version 0.1.5 for next oC release. 2012-07-09 13:25:46 +02:00
Klaas Freitag
ecb409bc06 Added errnos to the timediff function to allow specific error reports. 2012-07-09 13:25:46 +02:00
Dominik Schmidt
d5de27f289 Apple: Fix loading plugins inside bundles. 2012-07-09 13:25:33 +02:00
Dominik Schmidt
53d32a7485 ownCloud: set correct variable to fix warning condition. 2012-07-09 13:25:11 +02:00
Dominik Schmidt
a216790c28 do plugins on apple 2012-07-09 13:25:11 +02:00
Dominik Schmidt
8d5af96f46 Compile cstdlib with -fPIC 2012-07-09 13:25:11 +02:00
Dominik Schmidt
23d56249ca Fix owncloud linkage against neon 2012-07-09 13:25:11 +02:00
Klaas Freitag
b75066e299 owncloud: remove not needed win32 code. 2012-07-09 13:24:50 +02:00
Klaas Freitag
b6d908e16f owncloud: win32 use c_tmpname and set _fmode variable for binary mode. 2012-07-09 13:24:15 +02:00
Dominik Schmidt
fcb3aa6208 Define O_NOATIME to 0 if it's not there 2012-07-09 13:24:15 +02:00
Dominik Schmidt
e9e7b0c685 Simplify FindNeon.cmake 2012-07-09 13:24:14 +02:00
Dominik Schmidt
3d59926d8d fix building without log4c 2012-07-09 13:24:14 +02:00
Dominik Schmidt
2b15df7af3 Set search hint for Libiniparser. 2012-07-09 13:23:49 +02:00
Klaas Freitag
8be6ebb1de Push csync release to next internal beta 0.50.4. 2012-07-09 13:23:49 +02:00
Klaas Freitag
221de3c866 Added a csync_errno function to provide more info for clients. 2012-07-09 13:23:49 +02:00
Klaas Freitag
dc2148aa15 Removed a stat call that is just for a file size check. 2012-07-09 13:23:48 +02:00
Klaas Freitag
e28c530d13 Version to 0.50.3 for a next beta 2012-07-09 13:23:48 +02:00
Klaas Freitag
67a6d9b60d Create another beta version 0.50.2 2012-07-09 12:34:05 +02:00
Klaas Freitag
d0d8477b9f Pushed version to 0.50.1. 2012-07-09 12:34:05 +02:00
Klaas Freitag
de209ecdb9 ownCloud: Don't require time sync between server and client. 2012-07-04 16:32:17 +02:00
Klaas Freitag
6eb4e707d9 Add module capability about if a post copy size check is required. 2012-07-04 15:03:15 +02:00
Klaas Freitag
8ba2f483bf Add a vio capabilites function to let a module define its capabilities. 2012-07-04 13:56:24 +02:00
Klaas Freitag
c263a39334 Compute server time from http header and adjust mtimes. 2012-07-03 14:38:43 +02:00
Klaas Freitag
98bc5098c9 Merge branch 'dav' of ssh://milliways.cryptomilk.org/users/freitag/csync into dav
Conflicts:
	src/csync_propagate.c
2012-07-01 15:27:41 +02:00
Klaas Freitag
3fad8b5a4b Added lost var declaration. 2012-06-26 18:30:50 +02:00
Klaas Freitag
f31c74743c Fix condition on when atomar push is allowed, never for local files. 2012-06-26 18:30:50 +02:00
Klaas Freitag
b5e40f0fa8 Updated Changelog 2012-06-26 18:30:50 +02:00
Klaas Freitag
8034da83cc Ability to push to remote without using a tempfile to copy to.
Modules such as ownCloud make sure anyway that the upload to a
remote resource happens atomar. This patch allows to switch off
the default behaviour of first copying to a temp file in the
same directory. Use csync_set_remote_push_atomar function to
switch off.
2012-06-26 18:30:50 +02:00
Klaas Freitag
9380869d01 Remove wrong cast 2012-06-26 18:30:50 +02:00
Klaas Freitag
1accd936f3 ownCloud: Fix mem leaks to bring valgrind down to zero loss. 2012-06-26 18:30:50 +02:00
Klaas Freitag
00d43e76de ownCloud: Use wide char aware file system functions. 2012-06-26 18:30:50 +02:00
Klaas Freitag
9c15351828 Added test for std function c_tmpname. 2012-06-26 18:30:50 +02:00
Klaas Freitag
92ec13d886 win32: Fix random file name generation, init random generator once. 2012-06-26 18:30:50 +02:00
Klaas Freitag
dd2e9ba747 Changelog updated for csync version 0.50.6. 2012-06-26 18:30:19 +02:00
Klaas Freitag
e129d02024 do not log on stderr on MacOSX because that spams system log 2012-06-26 18:28:38 +02:00
Klaas Freitag
d3d3454aaa Set csync version to 0.50.7. 2012-06-26 18:28:18 +02:00
Klaas Freitag
cd7aec1636 Do not log "module not found" messages if there is a second try. 2012-06-26 18:28:18 +02:00
Klaas Freitag
6fc93f64a4 win32: use wide char variant of CopyFile for file copy. 2012-06-26 18:28:18 +02:00
Klaas Freitag
4253194fa0 win32: Use wide character variant of GetSpecialFolderPath to get home. 2012-06-26 18:28:18 +02:00
Klaas Freitag
88dce3022d ownCloud: commented extensive log line. 2012-06-26 18:28:18 +02:00
Klaas Freitag
40eda1c004 logging in SSL callback, important to debug. 2012-06-26 18:28:18 +02:00
Klaas Freitag
1fe6db6b2b Fix wide character support for the mkdir definition. 2012-06-26 18:28:18 +02:00
Klaas Freitag
8b90e31ba9 ownCloud: Adopt logging to csync standard log instead of printf. 2012-06-26 18:28:18 +02:00
Klaas Freitag
5e040d47d6 Add ability to log to a callback for the csync library. 2012-06-26 18:28:07 +02:00
Klaas Freitag
4ec3f8ecea ownCloud: Proper initializations with NULL avoid a crash. 2012-06-26 18:28:07 +02:00
Klaas Freitag
84bf91b711 Win32: Chdir to app path before searching module relative. 2012-06-26 18:28:07 +02:00
Klaas Freitag
7ec663a0c6 Do not log on Apple by default as that goes to ASL 2012-06-26 18:28:07 +02:00
Klaas Freitag
2ef3931c32 ownCloud: Added redirect ability. 2012-06-26 18:28:07 +02:00
Klaas Freitag
f6b2b09911 Added changes for 0.50.6. 2012-06-26 18:27:57 +02:00
Klaas Freitag
36cf074337 Set version to 0.50.6 for next oC version. 2012-06-26 18:27:47 +02:00
Klaas Freitag
506d3759c2 ownCloud: Fix bug #613: Encode strange url correctly.
see http://bugs.owncloud.org/thebuggenie/owncloud/issues/oc-613
2012-06-26 18:27:47 +02:00
Klaas Freitag
a0fe623ab6 Do proper handling of Win32 special characters.
Introduced a tchar based handling of wide character encoding that
is happening on Windows platforms.
2012-06-26 18:27:47 +02:00
Klaas Freitag
09cdbfcd5e tests: exported csync treewalk function unit tests added. 2012-06-26 18:27:26 +02:00
Klaas Freitag
2fb8672d3e Fixed local treewalk function filter comment. 2012-06-26 18:27:26 +02:00
Klaas Freitag
893bba6548 tests: Fixed ownCloud script that broke because HTTP::DAV module. 2012-06-26 18:26:41 +02:00
Klaas Freitag
863faa0169 ownCloud: Fixed var initialization to avoid crash after thread
terminated.
2012-06-26 18:26:07 +02:00
Klaas Freitag
69e3f47b95 ownCloud: Add neon include dir variable to the compile include dirs. 2012-06-26 18:26:07 +02:00
Klaas Freitag
dbe623339c Changelog entries added for version 0.50.5. 2012-06-26 18:24:55 +02:00
Klaas Freitag
095f01302b Added GNUInstallDirs.cmake to lower the required cmake version. 2012-06-26 18:24:55 +02:00
Dominik Schmidt
b9edff2179 ownCloud: Fix warning condition in reader code. 2012-06-26 18:24:55 +02:00
Dominik Schmidt
02b617b536 Load plugins on MacOSX. 2012-06-26 18:24:39 +02:00
Dominik Schmidt
4c6a1356a1 Compile cstdlib with -fPIC. 2012-06-26 18:24:39 +02:00
Dominik Schmidt
19f460a9ea CMake: Fix owncloud linkage against neon. 2012-06-26 18:24:39 +02:00
Klaas Freitag
798dbb408f Pushed version to 0.50.5 and lib version 0.1.5 for next oC release. 2012-06-26 18:24:39 +02:00
Dominik Schmidt
56e6b900db Define O_NOATIME to 0 if it's not there 2012-06-26 18:24:39 +02:00
Dominik Schmidt
68b6fbeefe fix building without log4c 2012-06-26 18:24:39 +02:00
Dominik Schmidt
68526da12f cmake: Added Iniparser path hints. 2012-06-26 18:24:39 +02:00
Klaas Freitag
531c09f5b3 Push csync release to next internal beta 0.50.4. 2012-06-26 18:24:39 +02:00
Klaas Freitag
b0f6602681 Added a csync_errno function to provide more info for clients. 2012-06-26 18:24:08 +02:00
Klaas Freitag
55c3b0862c Zero'ed a stat call that is just for a file size check. 2012-06-26 18:20:16 +02:00
Klaas Freitag
9286647262 Version to 0.50.3 for a next beta 2012-06-26 18:20:16 +02:00
Klaas Freitag
e8f8615d93 owncloud: remove the win32 c_tmpname use. 2012-06-26 18:19:29 +02:00
Klaas Freitag
07b04d6c9a Create another beta version 0.50.2 2012-06-26 18:19:29 +02:00
Klaas Freitag
600b7591ab Pushed version to 0.50.1. 2012-06-26 18:19:29 +02:00
Klaas Freitag
4c8fe93412 owncloud: Win32 use c_tmpname and set _fmode to O_BINARY. 2012-06-26 18:18:40 +02:00
Dominik Schmidt
4f8c6729ff Simplify FindNeon.cmake 2012-06-26 17:17:10 +02:00
Klaas Freitag
1d1c28d5ad Updated Changelog 2012-06-22 16:13:24 +02:00
Klaas Freitag
357b5cd5f3 Ability to push to remote without using a tempfile to copy to.
Modules such as ownCloud make sure anyway that the upload to a
remote resource happens atomar. This patch allows to switch off
the default behaviour of first copying to a temp file in the
same directory. Use csync_set_remote_push_atomar function to
switch off.
2012-06-22 15:32:04 +02:00
Klaas Freitag
adda008122 Remove wrong cast 2012-06-20 15:19:05 +02:00
Klaas Freitag
27dbdb29fc ownCloud: Fix mem leaks to bring valgrind down to zero loss. 2012-06-20 15:01:54 +02:00
Klaas Freitag
6354c32d3b ownCloud: Use wide char aware file system functions. 2012-06-20 12:08:06 +02:00
Klaas Freitag
939acdd9ca Added test for std function c_tmpname. 2012-06-20 10:55:30 +02:00
Klaas Freitag
9836ec864a win32: Fix random file name generation, init random generator once. 2012-06-20 10:40:40 +02:00
Klaas Freitag
26aff2d744 Bumped version to 0.50.7 2012-06-18 17:25:32 +02:00
Klaas Freitag
a018a8ab38 Fixed release date of 1.0.2 2012-06-18 17:25:09 +02:00
Klaas Freitag
06ffeee786 Updated changelog 2012-06-18 17:18:58 +02:00
Andreas Schneider
28e4963647 time: Make the timediff a hidden file. 2012-06-18 16:20:28 +02:00
Klaas Freitag
370e2e451f do not log on stderr on MacOSX because that spams system log 2012-06-18 13:02:06 +02:00
Klaas Freitag
e0eda77c6d set version to 0.50.7 2012-06-18 10:48:13 +02:00
Klaas Freitag
c1953d61c7 Do not log "module not found" messages if there is a second try. 2012-06-18 10:43:07 +02:00
Klaas Freitag
9b64825c69 win32: use wide char variant of CopyFile for file copy. 2012-06-13 17:32:13 +02:00
Klaas Freitag
26191448e7 win32: Use wide character variant of GetSpecialFolderPath to get home. 2012-06-13 17:30:50 +02:00
Klaas Freitag
f33cdb0de9 ownCloud: commented extensive log line. 2012-06-13 17:28:26 +02:00
Klaas Freitag
3e4e4eeee8 logging in SSL callback, important to debug. 2012-06-13 11:26:37 +02:00
Klaas Freitag
d1ae05166d Added a newline in case the logging callback is zero. 2012-06-08 12:52:48 +02:00
Klaas Freitag
13847b9249 Fix wide character support for the mkdir definition. 2012-06-08 12:52:06 +02:00
Klaas Freitag
39534fb5de Add ability to log to a callback for the csync library. 2012-06-05 17:11:33 +02:00
Klaas Freitag
c0182c373a ownCloud: Adopt logging to csync standard log instead of printf. 2012-06-05 17:10:50 +02:00
Klaas Freitag
024fb244ef Add a switch LOG_TO_CALLBACK for cmake to enable callback logging. 2012-06-05 17:09:42 +02:00
Klaas Freitag
648fc78d95 ownCloud: Proper initializations with NULL avoid a crash. 2012-05-21 09:44:23 +02:00
Klaas Freitag
17450f1f4b Set the correct define to the new released version 0.50.6. 2012-05-21 09:43:42 +02:00
Klaas Freitag
7f9003bc83 Win32: Chdir to app path before searching module relative. 2012-05-18 12:56:03 +02:00
Klaas Freitag
6e7169c72b Another Changelog update 2012-05-16 12:49:47 +02:00
Klaas Freitag
6f60ec571b Updated Changelog 2012-05-16 12:48:48 +02:00
Klaas Freitag
a9ac5bf752 Do not log on Apple by default as that goes to ASL 2012-05-16 12:42:00 +02:00
Klaas Freitag
3d5f533a69 Update Changelog 2012-05-16 12:09:55 +02:00
Klaas Freitag
33d1825551 Merge branch 'dav' of http://git.csync.org/users/freitag/csync into dav
Conflicts:
	src/csync.c
2012-05-15 16:17:51 +02:00
Klaas Freitag
d228436aba ownCloud: better debug output for file GET. 2012-05-15 16:16:04 +02:00
Klaas Freitag
a198f36bf5 ownCloud: set correct module load error code. 2012-05-15 16:15:27 +02:00
Klaas Freitag
2d34a1c993 ownCloud: Added redirect ability. 2012-05-14 17:19:50 +02:00
Klaas Freitag
7177fd3298 Added changes for 0.50.6. 2012-05-14 17:19:05 +02:00
Klaas Freitag
6eb0dd15b4 Set version to 0.50.6 for next oC version. 2012-05-11 09:29:20 +02:00
Klaas Freitag
eff0319e40 ownCloud: Fix bug #613: Encode strange url correctly.
see http://bugs.owncloud.org/thebuggenie/owncloud/issues/oc-613
2012-05-10 17:55:57 +02:00
Klaas Freitag
9ec8d70822 Do proper handling of Win32 special characters.
Introduced a tchar based handling of wide character encoding that
is happening on Windows platforms.
2012-05-09 16:55:56 +02:00
Klaas Freitag
694a34db9a tests: Added treewalk test. 2012-05-07 17:19:06 +02:00
Klaas Freitag
2e3a92df4c tests: Treewalk function unit tests added. 2012-05-07 15:48:34 +02:00
Klaas Freitag
81a6b49c07 Fixed local treewalk function filter comment. 2012-05-07 15:47:57 +02:00
Klaas Freitag
37c538ed9b Fixed tests script that broke because of HTTP::DAV module 2012-05-04 16:27:15 +02:00
Klaas Freitag
d9ae749dcf Merge branch 'dav' of ssh://milliways.cryptomilk.org/users/freitag/csync into dav
Conflicts:
	modules/csync_owncloud.c
	src/csync.h
2012-05-04 14:25:01 +02:00
Klaas Freitag
9871989806 ownCloud: Fixed var initialization to avoid crash after thread
terminated.
2012-05-04 12:07:20 +02:00
Klaas Freitag
cbf259b482 ownCloud: Add neon include dir variable to the compile include dirs. 2012-05-04 12:07:20 +02:00
Klaas Freitag
522a6e27a2 Set module load error code after csync_vio_init failed. 2012-05-04 12:07:20 +02:00
Klaas Freitag
b6696f00df Changelog entries added. 2012-05-04 12:07:20 +02:00
Klaas Freitag
2fa265007a Added GNUInstallDirs.cmake to lower the required cmake version. 2012-05-04 12:07:20 +02:00
Klaas Freitag
2b5d31b29e Moved error_code to context for thread savety. 2012-05-04 12:07:20 +02:00
Klaas Freitag
73bcdb73a7 Added errnos to the timediff function to allow specific error reports. 2012-05-04 12:05:45 +02:00
Dominik Schmidt
c4667c893b Fix loading plugins inside MacOSX bundles. 2012-05-04 12:05:22 +02:00
Dominik Schmidt
0160be06f5 ownCloud: Fix warning condition in reader code. 2012-05-04 12:04:58 +02:00
Dominik Schmidt
4c98f6bcd8 Load plugins on apple. 2012-05-04 12:04:36 +02:00
Dominik Schmidt
a8c10780f2 Compile cstdlib with -fPIC. 2012-05-04 12:04:30 +02:00
Dominik Schmidt
ac6e5ff4b9 CMake: Fix owncloud linkage against neon. 2012-05-04 12:04:13 +02:00
Dominik Schmidt
5ac2f676d7 Define O_NOATIME to 0 if it's not there. 2012-05-04 12:03:53 +02:00
Dominik Schmidt
628151e997 CMake Modules: Simplify FindNeon.cmake. 2012-05-04 12:03:36 +02:00
Dominik Schmidt
668d7be259 CMake: Fix building without Log4C. 2012-05-04 12:02:35 +02:00
Dominik Schmidt
79c4b58c63 CMake modules: Search libiniparser in correct lib dirs. 2012-05-04 12:01:51 +02:00
Klaas Freitag
e4fae59bcf Added a csync_errno function to provide more info for clients. 2012-05-04 12:00:46 +02:00
Klaas Freitag
0d71347508 Removed a stat call that is just for a file size check. 2012-05-04 12:00:46 +02:00
Klaas Freitag
b6c86bcacd ownCloud: Fixed var initialization to avoid crash after thread
terminated.
2012-04-27 16:33:31 +02:00
Klaas Freitag
90a9f162d4 ownCloud: Add neon include dir variable to the compile include dirs. 2012-04-27 16:27:44 +02:00
Klaas Freitag
cc5d2866b1 Set module load error code after csync_vio_init failed. 2012-04-19 16:12:05 +02:00
Klaas Freitag
e5c0503797 Changelog entries added. 2012-04-18 21:33:07 +02:00
Klaas Freitag
5ceebe1d3c Added GNUInstallDirs.cmake to lower the required cmake version. 2012-04-18 21:32:18 +02:00
Klaas Freitag
6f51876b45 Moved error_code to context for thread savety. 2012-04-17 12:31:27 +02:00
Andreas Schneider
8212553cbe owncloud: Fix some build warnings. 2012-04-17 11:23:20 +02:00
Dominik Schmidt
13f05db934 cmake: Make Log4C optional.
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
2012-04-17 11:21:03 +02:00
Klaas Freitag
4693f313cd cmake: Removed obsolete FindArgp module.
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
2012-04-17 11:19:44 +02:00
Dominik Schmidt
9eb9116df3 Simplify FindLibIniparser.cmake
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
2012-04-17 11:16:32 +02:00
Klaas Freitag
010305eab2 ownCloud: catch some compiler warnings when very pedantic.
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
2012-04-17 11:16:09 +02:00
Klaas Freitag
f40ab9c6e1 ownCloud: Debug output only if NDEBUG is undefined.
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
2012-04-17 11:15:46 +02:00
Klaas Freitag
d8bac80f51 tests: Added another test to the ownCloud module test.
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
2012-04-17 11:15:34 +02:00
Klaas Freitag
b8100868a3 ownCloud: added memory buffered put requests with fallback on file.
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
2012-04-17 11:13:18 +02:00
Klaas Freitag
4acb4eef63 ownCloud: Added a flag for the existance of the current directory.
That saves a lot of stat calls because the for each PUT a stat has
to be done if the parent dir exists.

Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
2012-04-17 10:50:10 +02:00
Klaas Freitag
44a078b991 Win32: Add win32 rename function that overwrites existing targets.
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
2012-04-17 10:49:51 +02:00
Klaas Freitag
0bedd5d9a3 Win32: Disabled Query per inode, always returning NULL.
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
2012-04-17 10:49:29 +02:00
Klaas Freitag
99c0405a26 ownCloud: Disabled useless debugging output.
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
2012-04-17 10:48:59 +02:00
Klaas Freitag
45ad55d894 ownCloud: Added http compression support for GET requests.
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
2012-04-17 10:48:28 +02:00
Klaas Freitag
dec1e6a3cf tests: Use correct value from perl stat call to get the file mtime.
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
2012-04-17 10:48:12 +02:00
Klaas Freitag
ec921a1e51 Win32: Added some specific headers to c_private.h to fix build.
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
2012-04-17 10:47:56 +02:00
Andreas Schneider
fdc1a71050 csync: Use uint32_t for uid and gid. 2012-04-17 10:46:58 +02:00
Klaas Freitag
d2ae109cc3 Win32: substitute uid_t and gui_t and removed a not needed include.
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
2012-04-17 10:46:04 +02:00
Klaas Freitag
2ac172f4fe update: Add new exported file tree traverse functions.
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
2012-04-17 10:45:04 +02:00
Klaas Freitag
f0d2943e5f Do not bail out if the config can't be read, use default values.
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
2012-04-17 10:42:36 +02:00
Klaas Freitag
5e7d5c983a win32: Copy the default conf file from the application dir.
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
2012-04-17 10:42:01 +02:00
Klaas Freitag
f292c01eac Read $HOME variable first before checking the password file entry.
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
2012-04-17 10:40:35 +02:00
Klaas Freitag
8e64584c12 tests: Added test script to test the ownCloud module of csync.
The script t1.pl is a perl based check script for the ownCloud
module of csync. It requires a running ownCloud server and does
a couple of blackbox tests with it.

See README for more information how to operate.

Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
2012-04-17 10:40:21 +02:00
Klaas Freitag
871dde4911 Added ability to limit the csync run to the local tree only.
That gives apps the chance to use the efficient treewalk of csync
to get information on the tree.

Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
2012-04-17 10:40:21 +02:00
Klaas Freitag
53263a2685 owncloud: set _fmode variable to set file ops to binary mode.
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
2012-04-17 10:40:21 +02:00
Klaas Freitag
db614ecf34 Pushed version to 0.50.5 and lib version 0.1.5 for next oC release. 2012-04-17 10:36:52 +02:00
Klaas Freitag
e32d02c984 Added errnos to the timediff function to allow specific error reports. 2012-04-16 09:33:40 +02:00
Dominik Schmidt
f355bef266 Fix loading plugins inside bundles 2012-04-15 14:36:11 +02:00
Dominik Schmidt
87bc7ca4cc Fix warning condition 2012-04-15 14:35:38 +02:00
Dominik Schmidt
8312e4430c do plugins on apple 2012-04-15 14:13:07 +02:00
Dominik Schmidt
d768ad7f0f Compile cstdlib with -fPIC 2012-04-14 14:54:14 +02:00
Dominik Schmidt
c3703023dd Merge branch 'dav' 2012-04-14 03:30:50 +02:00
Dominik Schmidt
7b2d1da3b7 Define O_NOATIME to 0 if it's not there 2012-04-14 03:13:28 +02:00
Dominik Schmidt
e5a9d64353 Simplify FindNeon.cmake 2012-04-14 03:13:28 +02:00
Dominik Schmidt
0b7f273df3 fix building without log4c 2012-04-14 03:13:28 +02:00
Dominik Schmidt
9d8383c0fe Libiniparser narf 2012-04-14 03:13:28 +02:00
Klaas Freitag
341c48197e removed argp lib check. 2012-04-14 03:13:28 +02:00
Klaas Freitag
8a528d3abc ownCloud: catch some compiler warnings when very pedantic. 2012-04-14 03:13:28 +02:00
Klaas Freitag
6620d68c5e Push csync release to next internal beta 0.50.4. 2012-04-14 03:13:28 +02:00
Klaas Freitag
33b045270b ownCloud: Debug output only if NDEBUG is undefined. 2012-04-14 03:13:28 +02:00
Klaas Freitag
b433b7d2ac tests: Added another test to the ownCloud module test. 2012-04-14 03:13:27 +02:00
Klaas Freitag
285baa6fb7 Added a csync_errno function to provide more info for clients. 2012-04-14 03:13:27 +02:00
Klaas Freitag
9a2c83b94c ownCloud: added memory buffered put requests with fallback on file. 2012-04-14 03:13:27 +02:00
Klaas Freitag
10c11cc5e8 Removed a stat call that is just for a file size check. 2012-04-14 03:13:27 +02:00
Klaas Freitag
ece98b55a4 ownCloud: Added a flag for the existance of the current directory.
That saves a lot of stat calls because the for each PUT a stat has
to be done if the parent dir exists.
2012-04-14 03:13:27 +02:00
Klaas Freitag
a64ce22997 Win32: Add win32 rename function that overwrites existing targets. 2012-04-14 03:13:27 +02:00
Klaas Freitag
270a4262b4 Win32: Disabled Query per inode, always returning NULL. 2012-04-14 03:13:27 +02:00
Klaas Freitag
b815e169f1 ownCloud: Disabled useless debugging output. 2012-04-14 03:13:27 +02:00
Klaas Freitag
a40df40b4c ownCloud: Added http compression support for GET requests. 2012-04-14 03:13:27 +02:00
Klaas Freitag
a85ed3862b tests: Use correct value from perl stat call to get the file mtime. 2012-04-14 03:13:27 +02:00
Klaas Freitag
3979492914 Version to 0.50.3 for a next beta 2012-04-14 03:13:27 +02:00
Klaas Freitag
a4865cfdf4 Win32: Added some specific headers to c_private.h to fix build. 2012-04-14 03:13:27 +02:00
Klaas Freitag
4730d80738 Win32: substitute uid_t and gui_t and removed a not needed include. 2012-04-14 03:13:27 +02:00
Klaas Freitag
254045780a Add new exported file tree traverse functions. 2012-04-14 03:13:27 +02:00
Klaas Freitag
4a0713370e Do not bail out if the config can't be read, use default values. 2012-04-14 03:13:27 +02:00
Klaas Freitag
1634a8bdf4 Win32: copy the default conf file from the application dir. 2012-04-14 03:13:27 +02:00
Klaas Freitag
48579fe73f Disable config file copy for Win32 platform. 2012-04-14 03:13:27 +02:00
Klaas Freitag
becb03ad97 Read $HOME variable first before checking the password file entry. 2012-04-14 03:13:27 +02:00
Klaas Freitag
d0e308a81d owncloud: memclear a buf and remove not needed win32 code. 2012-04-14 03:13:27 +02:00
Klaas Freitag
dfb774714e Create another beta version 0.50.2 2012-04-14 03:13:27 +02:00
Klaas Freitag
1380902ede Pushed version to 0.50.1. 2012-04-14 03:13:26 +02:00
Klaas Freitag
da32a9facf owncloud test: Make use of a little cfg file to configure credentials. 2012-04-14 03:13:26 +02:00
Klaas Freitag
9916abc072 tests: Added test script to test the ownCloud module of csync.
The script t1.pl is a perl based check script for the ownCloud
module of csync. It requires a running ownCloud server and does
a couple of blackbox tests with it.

See README for more information how to operate.
2012-04-14 03:13:26 +02:00
Klaas Freitag
1a329539ec Added ability to limit the csync run to the local tree only.
That gives apps the chance to use the efficient treewalk of csync
to get information on the tree.
2012-04-14 03:13:26 +02:00
Klaas Freitag
b6ad8635d6 owncloud: set _fmode variable to set file ops to binary mode. 2012-04-14 03:13:26 +02:00
Klaas Freitag
f7c8e9f26c std: Renamed struct_stat to csync_stat_t and use c_private.h again.
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
2012-04-14 03:13:26 +02:00
Dominik Schmidt
9d73d7705d Make LOG4C optional 2012-04-14 00:05:52 +02:00
Dominik Schmidt
8e64cebe57 Simplify FindLibIniparser.cmake 2012-04-13 23:20:34 +02:00
Dominik Schmidt
da0c0b3bbe Fix owncloud linkage against neon 2012-04-13 22:54:03 +02:00
Dominik Schmidt
979f4f7f20 Define O_NOATIME to 0 if it's not there 2012-04-13 22:36:16 +02:00
Dominik Schmidt
99ee323a58 Simplify FindNeon.cmake 2012-04-14 00:35:16 +02:00
Dominik Schmidt
249cb8ecf4 fix building without log4c 2012-04-14 00:16:28 +02:00
Dominik Schmidt
dc0de28a77 Libiniparser narf 2012-04-14 00:11:11 +02:00
Dominik Schmidt
7067836c68 Make LOG4C optional 2012-04-14 00:06:46 +02:00
Klaas Freitag
acccd5445f removed argp lib check. 2012-04-13 21:49:40 +02:00
Dominik Schmidt
0927bae5d4 Simplify FindLibIniparser.cmake 2012-04-13 21:45:56 +02:00
Klaas Freitag
a6c16c063e ownCloud: catch some compiler warnings when very pedantic. 2012-04-10 11:49:16 +02:00
Klaas Freitag
7204b9bdd8 Push csync release to next internal beta 0.50.4. 2012-04-10 11:49:16 +02:00
Klaas Freitag
07b2371740 ownCloud: Debug output only if NDEBUG is undefined. 2012-04-10 11:49:16 +02:00
Klaas Freitag
6d8e79bbe2 tests: Added another test to the ownCloud module test. 2012-04-10 11:49:16 +02:00
Klaas Freitag
cc87c0629a Added a csync_errno function to provide more info for clients. 2012-04-10 11:49:16 +02:00
Klaas Freitag
bf53697664 ownCloud: added memory buffered put requests with fallback on file. 2012-04-10 11:49:16 +02:00
Klaas Freitag
cea1d4fd47 Removed a stat call that is just for a file size check. 2012-04-10 11:49:16 +02:00
Klaas Freitag
3fd80bb0e2 ownCloud: Added a flag for the existance of the current directory.
That saves a lot of stat calls because the for each PUT a stat has
to be done if the parent dir exists.
2012-04-10 11:49:16 +02:00
Klaas Freitag
24796539ff Win32: Add win32 rename function that overwrites existing targets. 2012-04-10 11:49:16 +02:00
Klaas Freitag
5543d20441 Win32: Disabled Query per inode, always returning NULL. 2012-04-10 11:49:16 +02:00
Klaas Freitag
74f0b57ed7 ownCloud: Disabled useless debugging output. 2012-04-10 11:48:40 +02:00
Klaas Freitag
86549e142f ownCloud: Added http compression support for GET requests. 2012-04-10 11:48:33 +02:00
Klaas Freitag
cef5d2ade1 tests: Use correct value from perl stat call to get the file mtime. 2012-04-10 11:48:23 +02:00
Klaas Freitag
6ff95a1b93 Version to 0.50.3 for a next beta 2012-04-10 11:48:23 +02:00
Klaas Freitag
980bd6cbd6 Win32: Added some specific headers to c_private.h to fix build. 2012-04-10 11:47:42 +02:00
Klaas Freitag
cce1502bfc Win32: substitute uid_t and gui_t and removed a not needed include. 2012-04-10 11:47:42 +02:00
Klaas Freitag
1a7ca763e9 Add new exported file tree traverse functions. 2012-04-10 11:47:41 +02:00
Klaas Freitag
d354e443c4 Do not bail out if the config can't be read, use default values. 2012-04-10 11:47:41 +02:00
Klaas Freitag
8555be060b Win32: copy the default conf file from the application dir. 2012-04-10 11:47:41 +02:00
Klaas Freitag
c2a296ae98 Disable config file copy for Win32 platform. 2012-04-10 11:46:23 +02:00
Klaas Freitag
1ee41f9f97 Read $HOME variable first before checking the password file entry. 2012-04-10 11:46:23 +02:00
Klaas Freitag
fd9a380fc9 owncloud: memclear a buf and remove not needed win32 code. 2012-04-10 11:45:19 +02:00
Klaas Freitag
ad453115b4 Create another beta version 0.50.2 2012-04-10 11:45:19 +02:00
Klaas Freitag
8dfde01d86 Pushed version to 0.50.1. 2012-04-10 11:45:19 +02:00
Klaas Freitag
fb0a0ae81c owncloud test: Make use of a little cfg file to configure credentials. 2012-04-10 11:45:19 +02:00
Klaas Freitag
807981fe87 tests: Added test script to test the ownCloud module of csync.
The script t1.pl is a perl based check script for the ownCloud
module of csync. It requires a running ownCloud server and does
a couple of blackbox tests with it.

See README for more information how to operate.
2012-04-10 11:44:57 +02:00
Klaas Freitag
a75591d0d4 Added ability to limit the csync run to the local tree only.
That gives apps the chance to use the efficient treewalk of csync
to get information on the tree.
2012-04-10 11:44:57 +02:00
Klaas Freitag
3676ca623a owncloud: set _fmode variable to set file ops to binary mode. 2012-04-10 11:43:56 +02:00
Klaas Freitag
3ae453cc36 std: Renamed struct_stat to csync_stat_t and use c_private.h again.
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
2012-03-21 13:48:41 +01:00
Klaas Freitag
dbc9576876 Fix use of strerror_r on non GNU platforms. 2012-03-19 12:40:43 +01:00
Klaas Freitag
6300e78816 Fix use of strerror_r on non GNU platforms. 2012-03-19 12:40:43 +01:00
Klaas Freitag
8b9c10246e Fix use of strerror_r on non GNU platforms. 2012-03-19 12:40:43 +01:00
Klaas Freitag
f0a84bb5da Fix use of strerror_r on non GNU platforms. 2012-03-19 12:40:43 +01:00
Klaas Freitag
a0e0caa5b8 Fix use of strerror_r on non GNU platforms. 2012-03-19 12:40:43 +01:00
Klaas Freitag
ffd2e0e767 Fixed file copy for Win32 platform by using API function FileCopy. 2012-03-19 12:40:30 +01:00
Klaas Freitag
ea89ac46ac Use getopt functions instead of GNU libc specific argp functions.
For command line option parsing, better use the getopt functions
instead of the GNU libc specific argp functions if we want to be
portable. argp usage does not compile on MacOS, thus it was now
removed from csync.
2012-03-15 15:15:35 +01:00
Klaas Freitag
e264ac347d owncloud: use decoded file name to search in stat result list. 2012-03-15 14:11:14 +01:00
Klaas Freitag
5ad5d176f9 ownCloud: Use win32 API to get the standard user temp path.
Conflicts:

	modules/csync_owncloud.c
2012-03-15 14:11:14 +01:00
Klaas Freitag
14791534ca owncloud: cleaned some comment signs from C++ to C type. 2012-03-15 14:11:14 +01:00
Klaas Freitag
bc138efa4e owncloud: set _fmode variable to set file ops to binary mode. 2012-03-07 16:18:08 +01:00
Klaas Freitag
87d3a56221 owncloud: More robust programming, some additional logs. 2012-03-07 16:18:08 +01:00
Klaas Freitag
bb1ccadebc ownCloud: Fix translation of mkcol 405 errcode to ernno. 2012-03-07 16:18:08 +01:00
Klaas Freitag
9b8e75e4fc ownCloud: append a trailing slash in mkdir as neon requests. 2012-03-07 16:18:08 +01:00
Klaas Freitag
a454156dc2 ownCloud: remove wired function to generate errno from neon error.
The errno is now either generated from the session values of neon
or individually in each function.
2012-03-07 16:18:08 +01:00
Klaas Freitag
edb073a290 ownCloud: removed the test on webdav.php. It is not needed.
The server handles it correctly itself to return the correct
type for the toplevel dir webdav.php
2012-03-07 16:18:08 +01:00
Klaas Freitag
9f67accf14 owncloud: Fix stat function for WebDAV root.
If a propcall happens to webdav.php the webdav server returns the
result list for all entries. In stat only the webdav.php entry is
interesting and must be searched within the result list.
2012-03-07 16:18:08 +01:00
Andreas Schneider
e409d0fae9 time: Use correct abs() function for long long. 2012-03-07 16:17:43 +01:00
Andreas Schneider
f0cf678c0e Fix config checks. 2012-03-02 17:04:02 +01:00
Dominik Schmidt
3ed887f152 windows: don't use malloc directly in csync_get_[user_home_dir||local_username] 2012-03-02 17:04:02 +01:00
Dominik Schmidt
4c22c84bd1 windows: fix loading plugins 2012-03-02 17:04:02 +01:00
Dominik Schmidt
00c47f62c4 windows: install libcsync.dll to bin/ 2012-03-02 17:04:02 +01:00
Dominik Schmidt
94006d0171 windows: don't refer to SYSCONFDIR 2012-03-02 17:04:02 +01:00
Dominik Schmidt
4df3aee5c2 Replace csync_auth with ssh_gets implementation from libssh 2012-03-02 17:04:02 +01:00
Dominik Schmidt
f08d145c39 Link against libargp on non-linux platforms 2012-03-02 17:04:02 +01:00
Dominik Schmidt
593cd4514a windows: disable locks 2012-03-02 17:04:02 +01:00
Dominik Schmidt
1fbba4f158 mingw: resolve name clashes in dummy module and link it against libcsync 2012-03-02 17:04:02 +01:00
Dominik Schmidt
6e4ce19a85 Add csync_fnmatch 2012-03-02 17:04:02 +01:00
Dominik Schmidt
d1ea29f4aa Don't check for links on non-unix platforms 2012-03-02 17:04:02 +01:00
Dominik Schmidt
6272a2b485 Use stat if lstat is not available 2012-03-02 17:04:02 +01:00
Dominik Schmidt
da286857e0 windows: add utimes implementation 2012-03-02 17:04:02 +01:00
Dominik Schmidt
dd9b73f383 mingw: enable asprintf 2012-03-02 17:04:02 +01:00
Dominik Schmidt
674aa7cd64 windows: add strerror_r implementation 2012-03-02 17:04:02 +01:00
Dominik Schmidt
31389975e7 Add missing break statement 2012-03-02 17:04:02 +01:00
Dominik Schmidt
ee6c631f28 windows: add missing status codes, types and return-values 2012-03-02 17:04:02 +01:00
Dominik Schmidt
29f45a4ee5 windows: minor adjustments 2012-03-02 17:04:02 +01:00
Dominik Schmidt
11c515f869 mingw: resolve name clashes in sftp module 2012-03-02 17:04:02 +01:00
Dominik Schmidt
f064dbcde4 Make libsmbclient optional 2012-03-02 17:02:59 +01:00
Andreas Schneider
1d9b4f0640 std: Make it possible to use the macros alone. 2012-03-02 17:02:59 +01:00
Andreas Schneider
9d6001d39d std: Add missing include. 2012-03-02 17:02:59 +01:00
Andreas Schneider
29839d42a8 misc: Add missing header file guard and update copyright. 2012-03-02 13:47:45 +01:00
Andreas Schneider
9c86b3adcd csync: Use csync_get_user_home_dir(). 2012-03-02 13:40:10 +01:00
Andreas Schneider
3952c4be62 misc: Add csync_get_user_home_dir() and csync_get_local_username(). 2012-03-02 13:40:05 +01:00
Andreas Schneider
7cff62945f Update ChangeLog. 2012-02-22 18:28:38 +01:00
Andreas Schneider
ebdc44cae5 Update AUTHORS. 2012-02-22 18:27:16 +01:00
Andreas Schneider
cd2c75e602 Increase version numbers for beta release. 2012-02-22 18:27:09 +01:00
Klaas Freitag
ded226911e owncloud: Removed unused file attribute contenttype from PROPFIND. 2012-02-22 18:23:18 +01:00
Klaas Freitag
56c583615d owncloud: Remove more unused logging. 2012-02-22 18:23:18 +01:00
Klaas Freitag
3025ada5dc owncloud: Use c_parse_uri instead of neon equivalent, minor cleanups. 2012-02-22 18:23:18 +01:00
Klaas Freitag
5c97b6f81d owncloud: Call the neon ssl functions only if SSL is active.
Especially ne_ssl_trust_default_ca seems to crash in case no SSL is
used actually. Added a flag to determine between SSL and no SSL.
Moved a debug message to the right place.
2012-02-22 18:23:18 +01:00
Klaas Freitag
bc1174cb8a owncloud: Add ne_ssl_trust_default_ca to trust default certificates. 2012-02-22 18:23:18 +01:00
Klaas Freitag
784fc60ec1 Fix off-by-one error in url rewrite for SSL. 2012-02-22 18:23:18 +01:00
Klaas Freitag
d7e13276e5 owncloud: Remove the sorting of the dirlist results. 2012-02-22 18:23:18 +01:00
Klaas Freitag
5ba71bbf79 Change module link statement to link against LIBCSYNC.
For windows building, the whole csync lib instead of the C standards
only is needed. Not a big difference, so changed for all platforms.
2012-02-22 18:23:18 +01:00
Klaas Freitag
45ec3c0248 owncloud: Removed unused _stat function. 2012-02-22 18:23:18 +01:00
Klaas Freitag
71e110364e owncloud: added cleanPath and moved _stat_perms. 2012-02-22 18:23:18 +01:00
Klaas Freitag
f56103dc0d owncloud: Removed unused cleanUrl function. 2012-02-22 18:23:18 +01:00
Klaas Freitag
664f1cb17d owncloud: some code cleanups. 2012-02-22 18:23:18 +01:00
Klaas Freitag
e320ccf7f8 owncloud: Renames of the vio functions by appending owncloud.
That avoids name clashes with MinGW. Patch provided by Dominik Schmidt.
2012-02-22 18:23:18 +01:00
Klaas Freitag
425f4b1cec owncloud: Some code fixes and more errno corrections. 2012-02-22 18:23:18 +01:00
Klaas Freitag
545115bfae owncloud: Set proper useragent, fixed some comments and warnings. 2012-02-22 18:23:18 +01:00
Klaas Freitag
936a32295f owncloud: Added SSL support. 2012-02-22 18:23:18 +01:00
Klaas Freitag
19a485944a owncloud: added missing close. 2012-02-22 18:23:18 +01:00
Klaas Freitag
7c3544611b owncloud: Adopted to new owncloud scheme. 2012-02-22 18:23:18 +01:00
Klaas Freitag
07b4fbcf4f owncloud: Module renamed to owncloud. 2012-02-22 18:23:18 +01:00
Klaas Freitag
e4259719ad owncloud: Convert webdav -> http in init function. 2012-02-22 18:23:18 +01:00
Klaas Freitag
931a2823f8 owncloud: Fixes in setting errno correctly in stat. 2012-02-22 18:23:18 +01:00
Klaas Freitag
a25c59be94 owncloud: Use the correct property name for lastmodification time. 2012-02-22 18:23:18 +01:00
Klaas Freitag
56d36ae63e owncloud: Code rearranges and stat call added to stat.
Rearranged function sequence and added stat call to parent dir to
function open if file is written to. That allows a proper ENOENT
return value if directory is not yet existing. Fixed more escaping
glitches.
2012-02-22 18:23:18 +01:00
Klaas Freitag
ac01d3a404 owncloud: More memory management fixes and debug output. 2012-02-22 18:23:18 +01:00
Klaas Freitag
1c0275bfee owncloud: Fixed escaping for url paths, improved error handling.
Fixed escaping for url paths, improved error handling and mem
management
2012-02-22 18:23:17 +01:00
Klaas Freitag
17d0b504fa owncloud: Fixed uri parsing, added escaping, more mem cleanups. 2012-02-22 18:23:17 +01:00
Klaas Freitag
0aed3f57b4 owncloud: Implemented proper auth callback handling. Fixed move request 2012-02-22 18:23:17 +01:00
Klaas Freitag
1c7a286dec owncloud: Renamed local var for consistency. 2012-02-22 18:23:17 +01:00
Klaas Freitag
fd189b3946 owncloud: Code cleanups.
Removed unused variables, fixed some comments, added some memory frees,
removed compile warnings
2012-02-22 18:23:17 +01:00
Klaas Freitag
709d4d560d owncloud: Reworked read and write to operate on local copies.
This creates local temporary files and uses them to transfer the data
(GET and PUT requests).
2012-02-22 18:23:17 +01:00
Klaas Freitag
f4978ad6eb owncloud: Fix rename: use target path only instead of complete uri. 2012-02-22 18:23:17 +01:00
Klaas Freitag
fc808fa80a owncloud: Implementation of utimes. 2012-02-22 18:23:17 +01:00
Klaas Freitag
e0deecfa82 owncloud: Set permissions in stat data block correctly. 2012-02-22 18:23:17 +01:00
Klaas Freitag
5f040f4063 owncloud: Simplify code useing c_basename to get filename from path. 2012-02-22 18:23:17 +01:00
Klaas Freitag
7f26533f8e owncloud: Improve error handling and set errno. 2012-02-22 18:23:17 +01:00
Andreas Schneider
3821e6e472 owncloud: Fix the size field in stat data structure. 2012-02-22 18:23:17 +01:00
Andreas Schneider
7c5e30be99 owncloud: Implement the _stat call correctly. 2012-02-22 18:23:17 +01:00
Andreas Schneider
2f90d5ac6f owncloud: Fix the _creat function. 2012-02-22 18:23:17 +01:00
Andreas Schneider
d5145e1e0a owncloud: Add debug messages for _open. 2012-02-22 18:23:17 +01:00
Andreas Schneider
2b15a7b663 owncloud: Implement write function. 2012-02-22 18:23:17 +01:00
Klaas Freitag
8691ce2c7e module: Start implementing functions using libneon.
Implement opendir, readdir, closedir and stat and various minor fixes.
2012-02-22 18:23:17 +01:00
Andreas Schneider
141a095d45 module: Start with some webdav code based on libneon. 2012-02-22 18:23:17 +01:00
Andreas Schneider
f0f36120ad module: Build the webdav module. 2012-02-22 18:23:17 +01:00
Andreas Schneider
f1647b3338 module: Add a webdav module skeleton. 2012-02-22 18:23:17 +01:00
Andreas Schneider
2b05dc33b7 client: Disable conflict copies by default. 2012-02-22 17:52:19 +01:00
Andreas Schneider
f753a3db0a util: Rename temp file of the unix extension test. 2012-02-22 16:18:07 +01:00
Andreas Schneider
9a12d219d3 vio: Add support for SSL scheme names.
If the scheme is https try to load the module without the s at the end
if there is no module.
2012-02-13 14:33:23 +01:00
Andreas Schneider
f4f22373ed Remove TODO. 2012-02-04 14:27:48 +01:00
Andreas Schneider
63565b0f26 time: Fix clock_gettime(). 2012-02-04 14:24:22 +01:00
Andreas Schneider
aa6bef0d77 config: Add missing config values. 2012-02-04 14:11:37 +01:00
Andreas Schneider
ca52cb0545 Update ChangeLog. 2012-02-04 13:57:55 +01:00
Andreas Schneider
c2bad8004d smb: Require newer samba version. 2012-02-04 13:47:00 +01:00
Andreas Schneider
59d1432c4a Update README. 2012-02-04 13:41:17 +01:00
Andreas Schneider
2ec6c98101 tests: Fix the csync util test. 2012-02-04 13:30:10 +01:00
Andreas Schneider
e8b0b34fe5 tests: Fix time test. 2012-02-04 13:24:56 +01:00
Andreas Schneider
19abbc04ff csync: Use csync_gettime(). 2012-02-04 13:24:53 +01:00
Andreas Schneider
1d609e5985 time: Add csync_gettime() function. 2012-02-04 13:09:07 +01:00
Andreas Schneider
331783baef propagate: Remove dead and wrong assignments. 2012-02-04 12:54:15 +01:00
Andreas Schneider
8e89bfec2b propagate: Fix dead assignment. 2012-02-04 12:47:39 +01:00
Andreas Schneider
82c2017a04 path: Fix dead assignment. 2012-02-04 12:44:15 +01:00
Andreas Schneider
eb2b3438ba lock: Fix unlink in error path. 2012-02-04 12:41:55 +01:00
Andreas Schneider
9f802a83f3 propagate: Fix some blank lines. 2012-02-04 12:37:33 +01:00
Andreas Schneider
b99fd213b6 vio: Fix build errors. 2012-02-04 12:34:46 +01:00
Andreas Schneider
de2cb55f0e propagate: Remove unused variables. 2012-02-04 12:28:51 +01:00
Andreas Schneider
6dca82a4a1 reconcile: Fix return value. 2012-02-04 12:26:27 +01:00
Andreas Schneider
4e5b29257e include: Fix packed attribute for file structure. 2012-02-04 12:23:54 +01:00
Andreas Schneider
5a28200e8b cmake: Increase minimun requried cmake version. 2012-02-04 12:23:30 +01:00
Andreas Schneider
1c52b90fa4 Pack the csync_file_stat structure. 2012-02-04 12:15:48 +01:00
Andreas Schneider
d0888ffba8 cmake: Fix build on OSX. 2012-01-20 15:23:18 +01:00
Christian Jann
ffd7d5b247 better idea to align the INSTRUCTIONs printf(%-20s,...) 2011-04-12 19:42:08 +02:00
Christian Jann
9c40ecafc4 csync.reconciler: show the correct type: "file" or "dir" 2011-04-12 17:59:25 +02:00
Christian Jann
deb620b5be align everything correctly (easier to read)
prefix "CSYNC_": no extra information -> removed
we could even remove "INSTRUCTION_" or change it to "INST_"
2011-04-12 17:09:39 +02:00
Christian Jann
a8071bfd14 csync.propagator/csync.reconciler first print instruction type,
than print the path and align everything correctly (easier to read)
2011-04-12 17:06:18 +02:00
Christian Jann
f65612ff2e hide instruction NONE messages when log level is set to debug,
only show these messages on log level trace
2011-04-12 13:20:50 +02:00
Christian Jann
aad3e146fc set instruction after conflict backup for the statedb merger to NONE 2011-04-12 10:09:41 +02:00
Christian Jann
1fbe6b6c96 Better way to fix bug "Found a bug but no bugtracker" 2011-04-06 17:09:05 +02:00
Christian Jann
92dc16a59e Increase version numbers. 2011-04-06 17:08:52 +02:00
Christian Jann
c848d8ffd7 added conflict-copy option to csync client 2011-04-06 17:08:30 +02:00
Christian Jann
2627275da5 updated .gitignore 2011-04-06 17:08:14 +02:00
Christian Jann
9864baa0c8 fixed small error:
csync/first/a~
was renamed to:
csync/first/~a_conflict-20110326-190457~
but it should be:
csync/first/a_conflict-20110326-190457~
2011-04-06 17:08:01 +02:00
Christian Jann
d842119065 improved logging 2011-04-06 17:07:20 +02:00
Christian Jann
e4d8e793f6 added new conflict resolution to libcsync
- use the latest version of the two files under its original filename
  in both destinations (same as currently implemented)
- additionally, create a copy of the older file under a different name
  using the same file extension with appended marker (e.g. "conflict")
  and timestamp in both destinations
  (e.g. textfile.odt -> textfile_conflict-20100222-105000.odt)
- At the Moment 'textfile_conflict-20100222-105000.odt' is only created
  on the side where the conflict has occurred and gets synced to the other side
  on the second sync.
2011-04-06 16:57:24 +02:00
Christian Jann
29616c0b2e ignore kdevelop project files 2011-04-06 16:56:27 +02:00
Christian Jann
09980fcf5a fix hundreds of these warnings:
csync.c:272:75: warning: ISO C99 requires rest arguments to be used
2011-04-06 16:56:05 +02:00
Christian Jann
f76d9fbcc3 added kate's suffix for backupfiles to .gitignore 2011-04-06 16:55:14 +02:00
Andreas Schneider
d9da6b6e91 Updated ChangeLog. 2010-02-15 12:31:15 +01:00
Andreas Schneider
f46817b2c1 Improved the interactive keyboard auth function. 2010-02-15 12:30:38 +01:00
Andreas Schneider
94b7fdc8ca Improved the ssh auth functions. 2010-02-15 12:20:57 +01:00
Andreas Schneider
84c77a2d5a Improve the server is known messages. 2010-02-15 12:10:17 +01:00
Andreas Schneider
3a9bfdb489 Increase version numbers. 2010-02-15 11:56:35 +01:00
Andreas Schneider
3df0eb527f Require at least libssh 0.4.0. 2010-02-15 11:55:48 +01:00
Andreas Schneider
7394c19ea1 Update FindLibSSH module to the lastest version. 2010-02-15 11:55:15 +01:00
Andreas Schneider
fdd8236aeb Migrated sftp module to libssh 0.4. 2010-02-05 12:28:12 +01:00
Andreas Schneider
511635c119 wurst 2010-01-30 00:05:01 +01:00
Andreas Schneider
3ff5ad5f7a Added more cache entries to the default config. 2010-01-17 08:32:55 +01:00
Andreas Schneider
96822d7f99 Fixed generate_findpackage_file. 2010-01-12 15:43:45 +01:00
Andreas Schneider
a46d5101d7 Fixed build warning. 2009-09-12 14:21:44 +02:00
Andreas Schneider
6c2c86aa50 Fixed build warning. 2009-09-12 12:27:03 +02:00
Andreas Schneider
3a265152d8 Set compiler to c99. 2009-09-12 12:26:09 +02:00
Andreas Schneider
16c76166bd Improve detection of system libraries. 2009-09-01 12:25:10 +02:00
Andreas Schneider
93acacfa62 Improve FindCheck module. 2009-09-01 12:16:51 +02:00
Andreas Schneider
f33a01216a Fix FindLog4C.cmake. 2009-09-01 12:16:31 +02:00
Andreas Schneider
14c1366c86 Fix generate_findpackage_file. 2009-09-01 12:16:10 +02:00
Andreas Schneider
b608f782c3 Improve the Log4C module. 2009-09-01 12:08:52 +02:00
Andreas Schneider
6ca27cd6c1 Improve generate_findpackage_file. 2009-09-01 12:01:04 +02:00
Andreas Schneider
d082c8479e Require at least version 0.3.3 of libssh. 2009-08-25 10:53:58 +02:00
Andreas Schneider
5e282c1fc3 Add an improved FindLibSSH module. 2009-08-25 10:53:33 +02:00
Andreas Schneider
44e9f4fea8 Fix name conflicts with newer libssh versions. 2009-08-25 10:47:12 +02:00
Andreas Schneider
c0671371ce Don't leak memory using sftp attributes. 2009-08-25 10:44:34 +02:00
Andreas Schneider
200e3e7123 Add missing requirements. 2009-07-09 09:50:37 +02:00
Andreas Schneider
fbf2491406 Ignore all cscope files. 2009-07-09 09:44:50 +02:00
Andreas Schneider
312c40d16f Improve c_list_find functions. 2009-06-05 11:22:06 +02:00
Andreas Schneider
f98265b30e Some code cleanups. 2009-06-05 10:51:22 +02:00
Andreas Schneider
92abcf243b Update to version 0.43.0. 2009-05-25 18:20:06 +02:00
Andreas Schneider
460aa67dca Document the propagation functions. 2009-05-25 12:58:34 +02:00
Andreas Schneider
778640f1e1 Fix the documentation of the reconciliation. 2009-05-25 12:58:00 +02:00
Andreas Schneider
62b33fbf2d Fix textwidth. 2009-05-25 11:59:30 +02:00
Andreas Schneider
7c88ed8454 Document Reconcilation. 2009-05-25 11:58:51 +02:00
Andreas Schneider
022731b241 Add a group for update detection functions. 2009-05-25 11:58:31 +02:00
Andreas Schneider
7ab802a3b2 Document update detection functions. 2009-05-25 11:42:46 +02:00
Andreas Schneider
3c05e000f8 Reformat some code in update detection functions. 2009-05-25 11:33:18 +02:00
Andreas Schneider
f57576f08a Cleanup c_list_insert_sorted(). 2009-05-23 11:57:15 +02:00
Andreas Schneider
5dda8fdfa5 Some code reformating. 2009-05-22 20:23:54 +02:00
Andreas Schneider
1d7ce7d5fe Improve the documentation of csync_excluded(). 2009-05-22 20:21:20 +02:00
Andreas Schneider
dd3c9cd99e Document csync_config_load(). 2009-05-22 20:19:06 +02:00
Andreas Schneider
6e893ab31c Document the return value of c_list_remove(). 2009-05-21 11:53:07 +02:00
Andreas Schneider
44b5fd650e Fix Windows installation paths. 2009-05-14 19:40:33 +02:00
Andreas Schneider
4e462e9762 Fix indent. 2009-05-14 19:38:40 +02:00
Andreas Schneider
32ee0d9610 Add c_rmdirs() check. 2009-05-14 17:27:54 +02:00
Andreas Schneider
f79b291646 Add a c_rmdirs() function. 2009-05-14 17:22:42 +02:00
Andreas Schneider
338370514e Don't force the build type or we can't overwrite it. 2009-05-14 11:22:38 +02:00
Andreas Schneider
fdea54edc5 Fix the vim modlines. 2009-05-13 10:12:07 +02:00
Andreas Schneider
80de674a84 Improve SQLite3 module. 2009-05-07 17:04:48 +02:00
Andreas Schneider
9586291bd0 Rename FindLog4C. 2009-05-07 17:03:24 +02:00
Andreas Schneider
050b806dc8 Rename FindLibSSH. 2009-05-07 17:00:25 +02:00
Andreas Schneider
df5a8d6662 Add a macro to get the size of an array. 2009-05-06 19:35:21 +02:00
Andreas Schneider
73548e8a16 Merge branch 'master' of git://git.csync.org/projects/csync/csync 2009-04-29 10:08:34 +02:00
Andreas Schneider
e7a495dc50 Fix a segfault in c_uppercase and c_lowercase. 2009-04-29 09:55:32 +02:00
Andreas Schneider
3114e02833 Add tests for c_lowercase and c_uppercase. 2009-04-29 09:55:13 +02:00
Andreas Schneider
9de1f977b5 Cleanup some code of the doubly-linked list. 2009-04-25 10:57:46 +02:00
Andreas Schneider
867a8cb246 Reformat some code. 2009-04-22 13:41:46 +02:00
Andreas Schneider
e7a09af755 Add a function to uppercase and to lowercase a string. 2009-04-21 09:05:40 +02:00
Andreas Schneider
1cb6ae6fca Fix compilation with latest libssh trunk. 2009-04-12 23:58:29 +02:00
Andreas Schneider
b54e952efe Add some comments and move log4c config to the end. 2009-04-12 11:33:50 +02:00
Andreas Schneider
9650bccc2f Add a rolling file appender to the config file. 2009-04-12 11:25:58 +02:00
Andreas Schneider
42014c9a14 Add support for asking the user to add the server to known_hosts. 2009-03-30 15:06:12 +02:00
Andreas Schneider
7d0393338c Fix possible precedence problems. 2009-03-27 00:00:49 +01:00
Andreas Schneider
5d84518f00 Fix comment typos ;) 2009-03-26 18:23:43 +01:00
Andreas Schneider
fdadbbebab Rename a variable. 2009-03-26 11:41:10 +01:00
Andreas Schneider
e948cf6880 Document all public functions. 2009-03-26 11:24:34 +01:00
Andreas Schneider
6863ff0255 Switch to libssh 0.3 and add userdata support. 2009-03-26 11:10:37 +01:00
Andreas Schneider
3c618a3d7d Add possibility to pass userdata to the auth function. 2009-03-26 11:09:46 +01:00
Andreas Schneider
c826f021d6 Improve the version function. 2009-03-26 10:40:16 +01:00
Andreas Schneider
20048b238d Cosmetic change for a define. 2009-03-26 10:27:04 +01:00
Andreas Schneider
25f83f1764 Cleanup dirname and basename code. 2009-03-18 20:19:37 +01:00
Andreas Schneider
0634e0fdea Don't require a C++ compiler. 2009-03-18 10:55:14 +01:00
Jim McDonough
7ad9628a24 Fix build with cmake >= 2.6.3. -D does not overwrite FORCE.
Signed-off-by: Andreas Schneider <mail@cynapses.org>
2009-03-18 10:15:04 +01:00
Andreas Schneider
d88cffe607 Make the LIB_FOUND variable accessible in CMake. 2009-03-14 11:11:44 +01:00
Andreas Schneider
ff0341855e Set version for CPack. 2009-02-10 12:54:41 +01:00
Andreas Schneider
467c082368 Set version to 0.42.0. 2009-02-10 12:50:26 +01:00
Andreas Schneider
adb520a3eb Some bugfixed to the findpackage script. 2009-02-04 14:26:08 +01:00
Andreas Schneider
add8f35bef Small text improvements. 2009-02-02 10:42:32 +01:00
Andreas Schneider
a18202744d Change versions to 0.42.0 rc3 and add changelog entries. 2009-01-23 14:44:54 +01:00
Andreas Schneider
dd23c4ecbf Add some comments. 2009-01-23 14:10:08 +01:00
Andreas Schneider
e69976bc88 Fix a bug where the wrong function for deletion was executed.
Thanks to David Wooldridge for all the testing.
2009-01-23 14:07:34 +01:00
Andreas Schneider
cc9a185bba Use the right variables for config.h. 2009-01-22 15:21:29 +01:00
Andreas Schneider
2331568f08 Fix a segfault if we use a local path. 2009-01-22 15:21:06 +01:00
Andreas Schneider
ecca37d2a1 Normalize the path to <host>/<path> for the statedb filename.
This should fix problem if a user uses pam_csync and csync with different
urls (#27).
2009-01-22 14:44:06 +01:00
Andreas Schneider
228a19abf4 Add min and max macros. 2009-01-22 14:43:37 +01:00
Andreas Schneider
eca50e32a6 Add more documentation to the userguide. 2009-01-20 18:06:42 +01:00
Andreas Schneider
38807d09c5 Change client option to be more descriptive (#25). 2009-01-20 16:57:27 +01:00
Andreas Schneider
9bab1d5951 Add some text to the README. 2009-01-20 16:52:16 +01:00
Andreas Schneider
c5104e8da3 Rename variable to unix_extensions. 2009-01-19 11:32:58 +01:00
Andreas Schneider
2ffe986dc1 Don't exclude paths. 2009-01-15 23:14:46 +01:00
Andreas Schneider
e0807cba1b Add a check if we are operating remote on a unix filesystem.
This extends the exclude function. Maybe we should do this for the local
too.
2009-01-13 15:50:44 +01:00
Andreas Schneider
e86225db0e Fix url to sqlite homepage, thanks maxxer. 2009-01-13 15:44:40 +01:00
Andreas Schneider
f95b6c0b6f Add some comments to the logging config file. 2009-01-08 16:26:11 +01:00
Andreas Schneider
5ae1aaadb7 Fix loading of plugins.
The wrong directory was used.
2009-01-08 16:03:31 +01:00
Andreas Schneider
f6a956e248 Set the version numbers for 0.42.0 rc2/gmc. 2009-01-07 13:10:28 +01:00
Andreas Schneider
2d3412b0fa More improvements to the user guide.
Thanks to Jim McDonough <jmcd@samba.org> for this.
2008-12-23 16:48:33 +01:00
Andreas Schneider
a9150e9e2a Initialize some variables. 2008-12-23 13:54:57 +01:00
Andreas Schneider
69bb51d7af Some improvement and corrections.
Thanks to Joe Brockmeier <zonker@opensuse.org> for proofreading.
2008-12-23 10:26:21 +01:00
Andreas Schneider
0f6a55bb23 Add more test to the userguide. 2008-12-17 18:23:32 +01:00
Andreas Schneider
2a9ac9a91a Update the manpage to make clear which are debugging options. 2008-12-17 16:53:48 +01:00
Andreas Schneider
6d20c8b4fc Install the modules to a version directory.
The directory version number is the soversion of the library.
2008-12-16 15:03:57 +01:00
Andreas Schneider
9152e25f8f Fix the format for the inode number in the mprintf. 2008-12-14 18:27:24 +01:00
Andreas Schneider
1047431e4c Fix a typo. 2008-12-13 23:29:16 +01:00
Andreas Schneider
1c04bb9cb7 Update ChangeLog. 2008-12-05 14:56:20 +01:00
Andreas Schneider
600b8657de Prepare for 0.42.0 rc1. 2008-12-05 14:51:01 +01:00
Andreas Schneider
cd2b94e20b Some more documentation. 2008-12-05 14:44:33 +01:00
Andreas Schneider
3b51103a60 Implement own function to create a random filename.
This removes an uneeded syscall to lstat by mktemp at this point.
2008-11-13 15:11:02 +01:00
Andreas Schneider
0681db0efe Reduce system calls of getuid and geteuid. 2008-11-13 14:08:26 +01:00
Andreas Schneider
1e70c74037 Set the replica to destination only once. 2008-11-13 14:06:22 +01:00
Andreas Schneider
d177c57cfe Check return value of mkdir in the mkdirs functions. 2008-11-13 10:53:24 +01:00
Andreas Schneider
17b39a78c1 Fix open and use the flags variable. 2008-11-12 21:14:35 +01:00
Andreas Schneider
4a2677a539 Add more debug output. 2008-11-05 15:51:18 +01:00
Andreas Schneider
dd52ac837e Fix libssh connect bug cause of uninitialized port variable. 2008-11-05 15:50:09 +01:00
Andreas Schneider
db9049d198 Add missing line breaks. 2008-11-05 11:12:03 +01:00
Andreas Schneider
50929d6457 Add error message to csync_sftp module. 2008-11-05 10:46:02 +01:00
Andreas Schneider
a825dd3e14 Fix libsmbclient 3.0.x code. 2008-10-29 13:50:04 +01:00
Andreas Schneider
0cb00f266d Remove unused variable. 2008-09-25 00:56:24 +02:00
Andreas Schneider
646de1261d Fix a memory leak in the rbtree testcase. 2008-09-22 22:22:45 +02:00
Andreas Schneider
1b4e340565 Fix compiler warnings. 2008-09-11 14:16:04 +02:00
Andreas Schneider
674d062c21 Update the changelog 2008-09-10 11:26:42 +02:00
Andreas Schneider
7f53e66be4 Enable doxygen for developer documentation again. 2008-09-10 10:50:49 +02:00
Andreas Schneider
36d164a338 Fix the installation path of the user guide. 2008-09-10 10:39:43 +02:00
Andreas Schneider
2a532f7f24 Set version to 0.42.0 beta1. 2008-09-09 17:38:59 +02:00
Andreas Schneider
1387904c21 Add NULL check for the auth_cb function. 2008-09-09 15:09:16 +02:00
Andreas Schneider
8b3b57734e Fix segfault in the modules if running in a pam module.
If csync is running in a pam module and the module isn't linked
against the cstdlib, the module segfaults.
2008-09-09 15:07:37 +02:00
Andreas Schneider
0ddd5d9e82 More work on the userguide. 2008-09-05 16:54:48 +02:00
Andreas Schneider
e25422ba3f Fix the formating not be be longer than 80 chars. 2008-09-05 13:28:30 +02:00
Andreas Schneider
959911fa32 Only build the sftp module if libssh is found. 2008-09-04 16:08:50 +02:00
Andreas Schneider
1b8935a857 Install the userguide. 2008-09-04 10:26:53 +02:00
Andreas Schneider
2bbd66d82c Add a new line after pkg-config stuff. 2008-09-04 10:26:27 +02:00
Andreas Schneider
1119e84d96 Add user guide. 2008-09-03 13:38:45 +02:00
Andreas Schneider
cd2ab8353d Add some documentation for the merge algorithm. 2008-09-03 09:49:12 +02:00
Andreas Schneider
f400f1852f Improve the update detection.
Document and fix a problem in getting the phash value.
2008-09-03 09:48:19 +02:00
Andreas Schneider
971e3301e3 Add some comments. 2008-09-02 11:43:29 +02:00
Andreas Schneider
6d3a7d84c1 Fix flags for the statedb tree merger. 2008-09-02 11:42:34 +02:00
Andreas Schneider
8753352e5e Set errno for expand function of the string list. 2008-09-02 11:23:38 +02:00
Andreas Schneider
b629730fb0 Created a better function to create the file stat. 2008-09-01 14:53:26 +02:00
Andreas Schneider
55c17b6832 Fix build warning. 2008-08-22 15:28:09 +02:00
Andreas Schneider
33681552c7 Remove useless error message. 2008-08-22 15:27:27 +02:00
Andreas Schneider
ebfbcf18a5 Handle no space left on device. 2008-08-22 15:26:02 +02:00
Andreas Schneider
f607dfbefa Add a basic implemntation for a second sftp module with libssh2. 2008-08-20 18:58:46 +02:00
Andreas Schneider
f059286e48 Update doxygen generation. 2008-08-20 18:58:17 +02:00
Andreas Schneider
56a26d8cd0 Revert "Rename the libssh sftp module to have a backup."
This reverts commit 12d8ba2c97.
2008-08-20 18:48:16 +02:00
Andreas Schneider
c0f7b4546f Add parse_uri tests. 2008-08-18 09:46:14 +02:00
Andreas Schneider
12d8ba2c97 Rename the libssh sftp module to have a backup. 2008-08-18 09:45:36 +02:00
Andreas Schneider
f984f78198 Use the uri parser of the stdlib. 2008-08-12 15:43:42 +02:00
Andreas Schneider
538d03f94e Cleanup and reformating of the dirname and basename function. 2008-08-12 15:43:02 +02:00
Andreas Schneider
04d022f2ae Add a function to parse an uri in stdlib. 2008-08-12 15:37:02 +02:00
Andreas Schneider
b5da50b035 Use the auth callback for ssh kbd interaction. 2008-08-12 15:36:14 +02:00
Andreas Schneider
27800adce5 Fix some visual flaws in the auth callback of the client. 2008-08-12 11:18:24 +02:00
Andreas Schneider
95f4db7c4f Create a more generic authentication callback. 2008-08-11 13:21:15 +02:00
Andreas Schneider
ae304565af Added password only flag or auth callback. 2008-08-08 17:28:33 +02:00
Andreas Schneider
4b03d4ff78 Linking against the stdlib isn't needed. 2008-08-08 15:58:18 +02:00
Andreas Schneider
e4fc52188d Finalize the functions for sftp.
The authentication with username/password still doesn't work.
2008-08-08 15:57:19 +02:00
Andreas Schneider
d875c8a6fa More work on the sftp module.
The module doesn't really work, cause the sftp functions don't
set any errno.
2008-08-07 14:24:27 +02:00
Andreas Schneider
ecf1027a54 This is a start for a sftp module. 2008-08-06 18:16:54 +02:00
Andreas Schneider
05253be461 Simplify _readdir function of the smb module. 2008-08-06 18:16:08 +02:00
Andreas Schneider
de86c0ba6b Add more tests for the virtual io system. 2008-08-06 18:14:34 +02:00
Andreas Schneider
d9432bee61 Add no memory tests to the rbtree testcases. 2008-08-05 11:31:37 +02:00
Andreas Schneider
1315b1197f Fix a memory leak in the rename test. 2008-08-04 17:21:32 +02:00
Andreas Schneider
fc85165f48 Mark the include dir as advanced too.
Thanks to Bernhard Walle.
2008-08-04 10:17:37 +02:00
Andreas Schneider
5853d67855 Use readline. Patch by Bernhard Walle. 2008-08-04 10:13:10 +02:00
Andreas Schneider
1572841ec5 Add a testcase for the update detection. 2008-08-01 15:58:28 +02:00
Andreas Schneider
9722fd0bad Test if we have a correct path. 2008-08-01 15:57:19 +02:00
Andreas Schneider
ce6896453c Fix check for CSYNC_NOMEMORY env variable. 2008-07-29 15:43:18 +02:00
Andreas Schneider
7143f20f95 Add memory NULL tests. 2008-07-28 11:49:56 +02:00
Andreas Schneider
bccadc7d67 Fix segfault in str(n)dup function. 2008-07-28 11:49:37 +02:00
Andreas Schneider
33aa3abd96 Add some error log messages. 2008-07-21 14:31:34 +02:00
Andreas Schneider
08eab05c29 Use the GNU version of strerror_r. 2008-07-19 12:03:48 +02:00
Andreas Schneider
8451d29d12 Replace strerror with thread safe version. 2008-07-18 11:35:02 +02:00
Andreas Schneider
7ef568d815 Mark each library as advanced. 2008-07-15 14:06:21 +02:00
Andreas Schneider
e84527ccc8 Add a valgrind suppression file to get rid of 3rdparty errors. 2008-07-10 19:08:24 +02:00
Andreas Schneider
5a7008ae53 Set the right license header in csync.{c,h}. 2008-07-10 10:25:12 +02:00
Andreas Schneider
e5286c7c8a Rename journal functions to statedb. 2008-07-09 10:10:00 +02:00
Andreas Schneider
88690312d7 Rename the csync_journal files to csync_statedb. 2008-07-09 09:57:19 +02:00
Andreas Schneider
879680cc0c Add some examples and more documentation to the exclude file. 2008-07-09 09:48:00 +02:00
Andreas Schneider
177bcce3ae Use -Wextra compiler flag by default. 2008-07-09 09:47:24 +02:00
Andreas Schneider
dc964a4c9a Only run chmod if we are root. 2008-07-03 11:34:34 +02:00
Andreas Schneider
36ae0468f6 Don't autogenerate manpages for now. 2008-07-03 11:10:12 +02:00
Andreas Schneider
bd36d85aae Copy the file to the cmake for manpage generation. 2008-07-02 21:00:59 +02:00
Andreas Schneider
1cd21855f2 Improve the manpage, add description and example section. 2008-07-02 20:37:21 +02:00
Andreas Schneider
ea950dc870 Always compile with -fPIC if supported by the compiler. 2008-07-02 20:20:50 +02:00
Andreas Schneider
e1753fbba2 Update changelog. 2008-07-02 19:03:10 +02:00
Andreas Schneider
67efe90536 Add a manpage for the csync commandline client. 2008-07-02 19:02:27 +02:00
Andreas Schneider
f54b36fe7a Change version to 0.42.0 alpha4 and update ChangeLog. 2008-07-02 10:59:37 +02:00
Andreas Schneider
9a96239e7c Change the exclude list to match the directories exactly. 2008-06-28 20:46:25 +02:00
Andreas Schneider
262348c7ef Check if a path is excluded directly in the file tree walker.
This improves the performace of the update detection cause it doesn't have
to walk directories which are excluded.
2008-06-28 20:44:54 +02:00
Andreas Schneider
e1b1eaa6d5 Set dirent to NULL do avoid double free corruption. 2008-06-28 19:49:37 +02:00
Andreas Schneider
70ca880a05 Set the right instruction during propagation for the journal. 2008-06-28 17:18:10 +02:00
Andreas Schneider
274c73a929 Add missing instructions. 2008-06-28 17:17:34 +02:00
Andreas Schneider
880530c079 Set instruction by default to NONE. 2008-06-28 17:14:20 +02:00
Andreas Schneider
c79c7bddc8 Implement a safe write on local file system.
This means that we try again if we got interrupted.
2008-06-28 15:36:30 +02:00
Andreas Schneider
259319f4f9 Stop synchronization if quota exceeded. 2008-06-28 15:33:52 +02:00
Andreas Schneider
96a933a058 More printf fixes.
Add debug output to insert_metadata_visitor to get printf attribute
checking.
2008-06-27 19:24:24 +02:00
Andreas Schneider
5d35a46d07 More printf fixes. 2008-06-27 19:05:54 +02:00
Andreas Schneider
bd8034170a Fix printf attributes. 2008-06-27 18:52:09 +02:00
Andreas Schneider
d968e6f48d Add printf attribute checking for gcc. 2008-06-27 18:51:44 +02:00
Andreas Schneider
0a4d1e41e1 Forgotten %llu fix for PPC. 2008-06-27 18:25:34 +02:00
Andreas Schneider
076c7fb819 More code cleanup for PPC. 2008-06-27 18:01:19 +02:00
Andreas Schneider
cde1a6b9cc Fix segfault on PPC.
The phash (uint64_t) needs to be represented as %llu on PPC or it
segfaults.
2008-06-27 18:01:12 +02:00
Andreas Schneider
e9cfa4e610 Remove accidently commited debug message. 2008-06-27 16:12:26 +02:00
Andreas Schneider
f52114e043 Fix typo. 2008-06-25 14:46:01 +02:00
Andreas Schneider
867b8252ad Update changelog and files for 0.42.0 alpha3. 2008-06-25 13:55:03 +02:00
Andreas Schneider
9934a2842c Fix disabling the journal in the commandline client. 2008-06-25 13:44:11 +02:00
Andreas Schneider
bcbf4f02f5 Fix debug output and add more output. 2008-06-25 13:43:47 +02:00
Andreas Schneider
e795539137 Create files and directories with a default mode again and run chmod.
The chmod function is only called if the file we synchronize has a
different mode set.
2008-06-24 18:02:00 +02:00
Andreas Schneider
75c22fce6c Improve debug and error messages. 2008-06-24 18:01:43 +02:00
Andreas Schneider
d7d397ab63 Change options of the client. 2008-06-24 17:39:46 +02:00
Andreas Schneider
8aed1cef83 Disable journal completely instead of writing and removing it. 2008-06-24 13:36:47 +02:00
Andreas Schneider
d7309c4ff9 Rename the callback function. 2008-06-24 13:36:27 +02:00
Andreas Schneider
aee15d55ee Improve debug message. 2008-06-24 13:34:27 +02:00
Andreas Schneider
c4f87bf519 Add missing NULL check. 2008-06-24 11:13:56 +02:00
Andreas Schneider
d9821b9780 Add getter and setter for the journal exists check. 2008-06-24 11:13:17 +02:00
Andreas Schneider
5496d868ca Restructure code and add some comments. 2008-06-24 10:20:13 +02:00
Andreas Schneider
b73684cc80 Use a static variable for krb5. 2008-06-24 10:19:53 +02:00
Andreas Schneider
4c345d5a80 Allocate memory directly in the module.
This fixes a segfault in pam_csync.
2008-06-20 14:39:58 +02:00
Andreas Schneider
cdda179203 Fix kerberos support.
libsmbclient calls always the authentication function. So what we have to
do is to try to authenticat with the current credentials.
2008-06-20 14:06:36 +02:00
Andreas Schneider
8f52348315 Improve the authentication calls.
Enter will use the old username so you don't have to type it.
2008-06-20 10:10:38 +02:00
Andreas Schneider
4ef93cdf17 Add more debug output. 2008-06-20 10:10:19 +02:00
Andreas Schneider
35284ff09e Set all smbc options before we call smbc_init. 2008-06-19 16:08:53 +02:00
Andreas Schneider
a6b2a4b47d Add more debug messages. 2008-06-19 15:36:02 +02:00
Andreas Schneider
0f5541ba9a Initialize global variables in csync_smb module. 2008-06-19 15:35:41 +02:00
Andreas Schneider
ef6633a130 libsmbclient doesn't provide a chown function so disable it.
It would be possible to use smbc_setxattr.
2008-06-19 10:32:59 +02:00
Andreas Schneider
902b588d60 Close the files after copy. 2008-06-18 16:30:00 +02:00
Andreas Schneider
8fa73bb8dd Temporary fix for Samba cause smbc_chown is missing. 2008-06-18 16:29:14 +02:00
Andreas Schneider
9d6706493e Add a sysconfdir option to the build script. 2008-06-18 14:14:32 +02:00
Andreas Schneider
183f16c386 Add a function to merge the trees.
This is needed to be able to write a complete journal.
2008-06-18 13:16:45 +02:00
Andreas Schneider
5a05f17187 Fix update detection. Don't sync special files. 2008-06-18 11:52:57 +02:00
Andreas Schneider
8f427a8ccb Set instruction to UPDATED for newly created files.
This is needed that csync knows which file stats need to be updated. We
need the new inode number for the journal.
2008-06-18 10:44:40 +02:00
Andreas Schneider
51728fdd25 Rename visitor function to _insert_metadata_visitor. 2008-06-18 10:43:57 +02:00
Andreas Schneider
5824c4ba1e Add some comments. 2008-06-18 10:43:28 +02:00
Andreas Schneider
7935d63098 Don't add deleted files to the journal. 2008-06-18 09:56:08 +02:00
Andreas Schneider
4246190524 Set O_NOATIME if we are the owner of the file or a superuser. 2008-06-16 17:49:45 +02:00
Andreas Schneider
8a9a4b18fb Improve debug output if open fails. 2008-06-16 16:42:46 +02:00
Andreas Schneider
0eb0842e0a Fix return code of open which was always 1. 2008-06-16 16:41:19 +02:00
Andreas Schneider
9c9faebd0e Fix open on the original file in propagation.
O_NOATIME can only be set by the owner of the file or root.
2008-06-16 16:40:25 +02:00
Andreas Schneider
8682bab7f2 Set version string for alpha2. 2008-06-16 14:05:47 +02:00
Andreas Schneider
8b3deb105e Add a ChangeLog. 2008-06-16 12:27:43 +02:00
Andreas Schneider
262a179c68 Add a strreplace function to stdlib. 2008-06-16 12:12:06 +02:00
Andreas Schneider
72174b6c82 Fix journal query test case.
The remote directory must exist for testing.
2008-06-16 11:53:59 +02:00
Andreas Schneider
c24411e5e5 Don't create the remote directory if it doesn't exist. 2008-06-13 18:44:15 +02:00
Andreas Schneider
afa3bd7b80 Fix the exclude list test. 2008-06-13 09:39:17 +02:00
Andreas Schneider
1608edb5cb Add beagle dir to default exclude list. 2008-06-12 10:15:13 +02:00
Andreas Schneider
3ec18e0746 Load the right exclude file in the user directory. 2008-06-12 09:31:50 +02:00
Andreas Schneider
35d32c045a Add .snapshot dir to default exclude list. 2008-06-11 18:16:20 +02:00
Andreas Schneider
c1b9dffd12 Remove unused CMake module. 2008-06-09 18:16:46 +02:00
Andreas Schneider
9606865383 Add CPack support for source tarball generation. 2008-06-09 18:14:25 +02:00
Andreas Schneider
914f0e5628 Define _GNU_SOURCE only if not defined. 2008-06-09 17:19:12 +02:00
Andreas Schneider
bac6f7d7b6 Set the right owner and group if possible. 2008-06-09 17:16:44 +02:00
Andreas Schneider
971e85871a Move count var to the function stack and add O_NOCTTY to open(). 2008-06-09 16:44:49 +02:00
Andreas Schneider
7f003c1277 Make sure that we can't run in an infinite loop. 2008-06-06 13:23:42 +02:00
Andreas Schneider
4adb536048 Create the missing directory only in the error case. 2008-06-06 10:28:53 +02:00
Andreas Schneider
212defd763 Create a new temporary file name if the file already exists. 2008-06-06 10:28:44 +02:00
Andreas Schneider
e756830696 Use open and fail if the file already exists. 2008-06-06 10:17:58 +02:00
Andreas Schneider
0e499d0b30 Remove the temporary file if an error occurs. 2008-06-06 10:17:37 +02:00
Andreas Schneider
aec3f4440c Use a random generated temporary file name. 2008-06-06 10:15:58 +02:00
Andreas Schneider
1255c46668 Add some FIXME's. 2008-06-05 14:44:14 +02:00
Andreas Schneider
ed3073ba13 Move the chmod command before we call utimes. 2008-06-05 14:43:28 +02:00
Andreas Schneider
13f82f25ff Set the right mode during open.
This gives us a speedup about 60 seconds copying the linux kernel sources.
2008-06-05 13:32:23 +02:00
Andreas Schneider
34e59bae46 We shouldn't follow symlinks and don't change the access time.
This gives a small speedup of the read command.
2008-06-05 13:31:23 +02:00
Andreas Schneider
e5180d19d4 Only create paths when needed. 2008-06-05 12:02:37 +02:00
Andreas Schneider
364a9015d3 Improve the speed of the push_file function.
The stat() calls in mkdirs() slows down the execution of this
function. Now we spend the most time for asprintf().
2008-06-04 18:19:14 +02:00
Andreas Schneider
dddfe5ac79 Disable check for C++ compiler. 2008-06-03 11:00:50 +02:00
Andreas Schneider
4eb9965046 Revert "Improve the check for if we have the same hash really found."
This reverts commit 247aaeaacb.

Conflicts:

	src/csync_update.c
2008-06-02 18:07:25 +02:00
Andreas Schneider
24d76f3e20 Revert "Improve the check for the inode."
This reverts commit 92bf414e4c.
2008-06-02 18:06:17 +02:00
Andreas Schneider
b8aeec4428 Revert "Sync on mtime and ctime changes if possible."
This reverts commit 575ca39e8b.

Conflicts:

	src/csync_update.c
2008-06-02 18:03:24 +02:00
Andreas Schneider
b5334402b9 Fix the remove-journal paramater and add new functions for it. 2008-06-02 17:02:22 +02:00
Andreas Schneider
057f72471f Remove non-working function. 2008-06-02 17:01:48 +02:00
Andreas Schneider
5168e3ee70 Change name of the buffersize so that they can't conflict. 2008-06-02 16:05:40 +02:00
Andreas Schneider
e2b049c935 Static functions should all start with an underscore.
For better readablity...
2008-06-02 15:11:45 +02:00
Andreas Schneider
2ccbaa05b6 Change version number for alpha1 release. 2008-06-02 12:55:59 +02:00
Andreas Schneider
247aaeaacb Improve the check for if we have the same hash really found. 2008-05-29 19:05:24 +02:00
Andreas Schneider
92bf414e4c Improve the check for the inode. 2008-05-29 18:55:49 +02:00
Andreas Schneider
356da661d7 Cleanup after tests. 2008-05-27 15:47:56 +02:00
Andreas Schneider
bbbf5ed13e Fix the csync_remove_config_dir() function to remove the journal. 2008-05-27 15:46:15 +02:00
Andreas Schneider
64b35453ec Improve the csync test, use other config dir and delete it. 2008-05-27 14:40:27 +02:00
Andreas Schneider
575ca39e8b Sync on mtime and ctime changes if possible. 2008-05-27 14:31:57 +02:00
Andreas Schneider
cce81bc154 Use a better name for the status defines. 2008-05-27 14:15:44 +02:00
Andreas Schneider
64a8a911d3 Remove the backup mode bug add a mode to remove the journal. 2008-05-27 14:11:46 +02:00
Andreas Schneider
7921b88467 Don't output on error if we remove a dir and errno is ENOTEMPTY. 2008-05-27 13:51:58 +02:00
Andreas Schneider
158ff9eba5 Create the journal depending on the name of the remote replica. 2008-05-27 13:48:07 +02:00
Andreas Schneider
d5aced82ca Disable sync of symlinks cause they need a lot of work. 2008-05-26 17:09:42 +02:00
Andreas Schneider
66fd0e2de0 Add basic support for symbolic links.
A test to ensure that it is working is still needed.
2008-05-26 15:58:40 +02:00
Andreas Schneider
c16abe8a7b Add error message in csync_vio_mkdir. 2008-05-21 16:43:08 +02:00
Andreas Schneider
0da1133bdb Return an error if basename fails on uri in stat command. 2008-05-21 16:06:45 +02:00
Andreas Schneider
3137967714 Add basename and dirname test with a uri. 2008-05-21 16:05:45 +02:00
Andreas Schneider
49e10b7e6a Add debug message if mkdirs fails. 2008-05-21 15:50:27 +02:00
Andreas Schneider
a46a39ce0e Fix typo in config and config parser. 2008-05-21 15:22:45 +02:00
Andreas Schneider
2ee63f24aa Better description for backup mode. 2008-05-21 15:11:26 +02:00
Andreas Schneider
0304353e2e Merge branch 'master' of git://git.csync.org/csync 2008-05-21 14:47:28 +02:00
Andreas Schneider
d720975617 Fix backup mode. 2008-05-21 14:46:42 +02:00
Andreas Schneider
3da8b33143 Rename the sqlite3 module. 2008-05-20 21:55:57 +02:00
Andreas Schneider
0a6cf13caf Fix typo. 2008-05-20 19:16:47 +02:00
Andreas Schneider
b1c0cc7f58 Fix variables in sqlite find module. 2008-05-20 19:07:15 +02:00
Andreas Schneider
abba4b5e84 Merge branch 'master' of git://git.csync.org/csync 2008-05-20 19:06:38 +02:00
Andreas Schneider
b7a0983c75 Add backup mode to the client. 2008-05-20 16:33:34 +02:00
Andreas Schneider
465d9f07bc Add function to remove config dir and improve other getter and setter. 2008-05-20 16:33:03 +02:00
Andreas Schneider
bf9fdfeac0 Check for NULL values. 2008-05-20 16:31:10 +02:00
Andreas Schneider
b68aad2b70 Improve testcase for journal close function. 2008-05-20 16:29:45 +02:00
Andreas Schneider
6601a2e49e Always remove the temporary journal. 2008-05-20 16:14:14 +02:00
Andreas Schneider
dddb81c5cd Add the possibility to load an additional exclude file. 2008-05-20 15:50:02 +02:00
Andreas Schneider
891827a48a Add test with 3 and 5 seconds. 2008-05-20 14:26:37 +02:00
Andreas Schneider
5a77997d55 Rename static functions to start with an underscore. 2008-05-20 14:01:04 +02:00
Andreas Schneider
235b817de0 Add a directory cleanup function to the propagator. 2008-05-20 13:56:43 +02:00
Andreas Schneider
8fe1cb54b5 Add c_list to standard lib header file. 2008-05-20 13:56:19 +02:00
Andreas Schneider
7837076f84 Include the right header file. 2008-05-20 12:08:22 +02:00
Andreas Schneider
8dd91e1e56 Add test for c_list functions. 2008-05-20 12:05:53 +02:00
Andreas Schneider
49c4ad76e1 Add missing NULL test. 2008-05-20 12:05:27 +02:00
Andreas Schneider
b54cb0fd66 Rename c_list_previous to c_list_prev. 2008-05-20 11:24:09 +02:00
Andreas Schneider
679927b5a9 Fix c_list_length() function. 2008-05-20 11:14:16 +02:00
Andreas Schneider
287a37d447 Initialize variables in c_list functions. 2008-05-20 10:19:53 +02:00
Andreas Schneider
6ef53dd1a4 Improve the c_list functions. 2008-05-20 10:08:59 +02:00
Andreas Schneider
9968e364d4 Add doubly-linked list. 2008-05-19 18:09:39 +02:00
Andreas Schneider
4831dd9cd9 Use new function names in csync.c. 2008-05-19 18:07:39 +02:00
Andreas Schneider
55467248a8 Add tests for c_time functions. 2008-05-19 17:31:59 +02:00
Andreas Schneider
c6b2b46710 Move the functions to diff the time to the stdlib. 2008-05-19 17:30:17 +02:00
Andreas Schneider
476fd5d00e Add a test for csync_vio_mkdirs(). 2008-05-19 17:05:39 +02:00
Andreas Schneider
1712447252 Check return values and errno of functions. 2008-05-19 16:29:01 +02:00
Andreas Schneider
05c938b0ae Fix typo in the build script. 2008-05-19 16:28:34 +02:00
Andreas Schneider
c01d75d026 Split up the propagation visitor in file and dir propagator. 2008-05-19 11:39:11 +02:00
Andreas Schneider
d3f8e4aa7d Add more functions to the propagation visitor. 2008-05-19 11:30:41 +02:00
Andreas Schneider
c325f7d5e1 Add new file to propagator. 2008-05-19 11:21:44 +02:00
Andreas Schneider
702265920f Fix csync_push_file. 2008-05-19 11:20:46 +02:00
Andreas Schneider
432c87b335 Fix typo use mkdirs. 2008-05-19 11:20:08 +02:00
Andreas Schneider
e2bc2031cd Improve error messages. 2008-05-19 11:19:31 +02:00
Andreas Schneider
d68ac512e0 Fix warning and initialize the replica values. 2008-05-19 11:16:51 +02:00
Andreas Schneider
0be9a1e02b Add reconciler.
Currently only new directories are created. Other functions are prepared
bug not tested yet.
2008-05-16 17:30:57 +02:00
Andreas Schneider
84bb336e8e Add the file size to the file info struct. 2008-05-16 17:30:22 +02:00
Andreas Schneider
cfd587a260 Move the ftw type flags to the csync private header. 2008-05-16 14:12:00 +02:00
Andreas Schneider
43aaa78a18 Add a vio mkdirs function. 2008-05-16 14:11:17 +02:00
Andreas Schneider
08e6be673b Fixed bug where we remove file which is newer on other replica. 2008-05-15 20:15:17 +02:00
Andreas Schneider
fce3fd8d46 Move debug message to the right position. 2008-05-15 20:09:07 +02:00
Andreas Schneider
6c177c6cff Fix modtime comparsion should check for smaller modtime. 2008-05-15 20:04:12 +02:00
Andreas Schneider
e85647f2bc Fix typo. 2008-05-15 20:01:30 +02:00
Andreas Schneider
cf545797a3 Get a more equalent debug output or trace. 2008-05-15 20:00:01 +02:00
Andreas Schneider
0081e44647 Remove accidently commited printf. 2008-05-15 19:51:53 +02:00
Andreas Schneider
f2b1d0d85e Add some blank lines for readability. 2008-05-15 19:42:03 +02:00
Andreas Schneider
f8ca5c30fd Fix typo. 2008-05-15 19:41:06 +02:00
Andreas Schneider
1dcb48ad8f Don't sync equal files. 2008-05-15 19:20:01 +02:00
Andreas Schneider
83fdb412ad Add more accurate time measurement. 2008-05-15 19:18:41 +02:00
Andreas Schneider
977f5562e4 Improve the debug output a bit. 2008-05-15 17:57:14 +02:00
Andreas Schneider
b08c361527 Use the right mkdir function. 2008-05-15 17:56:51 +02:00
Andreas Schneider
f89333c3c8 Fix unlink of the temporary file to determine the timediff. 2008-05-15 17:26:26 +02:00
Andreas Schneider
db839ef5d3 Try to create remote directory if it doesn't exists or throw an error. 2008-05-15 17:17:48 +02:00
Andreas Schneider
4489fbfa2b Implement the reconciler. 2008-05-15 13:50:34 +02:00
Andreas Schneider
49543390e2 Fix synchronizer instruction on update detection for changed files. 2008-05-15 12:04:09 +02:00
Andreas Schneider
320f07f631 Show stats on error during update detection too. 2008-05-15 12:03:05 +02:00
Andreas Schneider
92396e614c Fix testsetup for journal query test. 2008-05-14 13:46:01 +02:00
Andreas Schneider
1cc7c7541d Fix testsetup for journal query test. 2008-05-14 00:59:43 +02:00
Andreas Schneider
63e823778b Print error if opendir fails. 2008-05-13 16:06:11 +02:00
Andreas Schneider
4f81a8adc2 Fix typo. Wrong uri was used for remote replica. 2008-05-13 16:05:11 +02:00
Andreas Schneider
1d61cb9a51 Add error if callback ist set after init. 2008-05-13 16:04:29 +02:00
Andreas Schneider
ac8243c445 Fix status check. 2008-05-13 16:04:00 +02:00
Andreas Schneider
711f8ff78d Fix abort, don't free dirent. 2008-05-13 16:02:59 +02:00
Andreas Schneider
7284461931 Don't segfault if the callback is NULL. 2008-05-13 16:02:24 +02:00
Andreas Schneider
349d924126 Remove unnessesary newlines. 2008-05-13 16:00:57 +02:00
Andreas Schneider
2c8f1fb667 Merge branch 'master' of git://git.csync.org/csync 2008-05-13 13:40:42 +02:00
Andreas Schneider
b13fba29da Add a text based callback function to the client. 2008-05-13 13:40:06 +02:00
Andreas Schneider
4e6a65ab9d Use the auth callback in the modules. 2008-05-13 13:39:34 +02:00
Andreas Schneider
e76495a5cc Add a module auth callback function.
This allows the client to create an authentication callback function and
let the module call it. This makes it independent from gui or commandline.
2008-05-13 13:38:03 +02:00
Andreas Schneider
988591491a Install needed header files. 2008-05-13 13:36:50 +02:00
Andreas Schneider
c5c01998c5 Cleanup comments. 2008-05-09 13:34:46 +02:00
Andreas Schneider
3401972613 Fix build script. 2008-05-09 11:31:03 +02:00
Andreas Schneider
87a2805a91 Fix a build warning. 2008-05-09 11:30:53 +02:00
Andreas Schneider
7f3cba1517 Add missing tests for journal functions. 2008-05-09 11:25:21 +02:00
Andreas Schneider
738bd55231 Add test for c_rbtree_dup(). 2008-05-09 11:10:00 +02:00
Andreas Schneider
1b223a355c Fix build warnings. 2008-05-09 10:57:40 +02:00
Andreas Schneider
917f369e67 Use the dummy module to test csync_init() with module loading. 2008-05-09 10:57:08 +02:00
Andreas Schneider
e6f4a4cf4b Add a module dummy for testing. 2008-05-09 10:56:38 +02:00
Andreas Schneider
029a6679da Add journal load and query tests. 2008-05-09 10:00:10 +02:00
Andreas Schneider
364b8038e6 Split up journal tests in test which needs init and just create. 2008-05-09 09:59:26 +02:00
Andreas Schneider
9c245073c0 Split csync tests into two tests. 2008-05-09 09:54:08 +02:00
Andreas Schneider
16ae13d095 Remove standard csync test. 2008-05-09 09:53:48 +02:00
Andreas Schneider
9f887635b2 Add tests for the csync_util functions. 2008-05-09 09:26:12 +02:00
Andreas Schneider
be57b79d6c Add test for csync_difftime(). 2008-05-09 09:25:50 +02:00
Andreas Schneider
9a440d4501 Respect return values in tests. 2008-05-08 17:28:12 +02:00
Andreas Schneider
804e5adee6 Add more warnings. 2008-05-08 16:17:17 +02:00
Andreas Schneider
8fc9e93ee0 Respect return value of fscanf. 2008-05-08 16:16:55 +02:00
Andreas Schneider
393c3ce9db Initialize variables. 2008-05-08 16:07:15 +02:00
Andreas Schneider
46bedd6285 Remove obsolete definition. 2008-05-08 15:07:32 +02:00
Andreas Schneider
e76c2db9f6 Fix directories for exclude tests. 2008-05-08 10:56:08 +02:00
Andreas Schneider
9dbd938791 Set the default buildtype to RelWithDebInfo. 2008-05-07 15:38:04 +02:00
Andreas Schneider
d0a6e9221b Fix tests and remove developer mode.
This allows to run all tests without the need for a special developer
mode.
2008-05-07 15:33:55 +02:00
Andreas Schneider
c7b77fab5b Add stackprotector flag and check for fourtify source. 2008-05-07 11:42:45 +02:00
Andreas Schneider
b1f8ab38c9 Fix null termination. 2008-05-07 11:29:48 +02:00
Andreas Schneider
e41e8e1610 Add commandline parsing to all tests. 2008-05-07 11:09:56 +02:00
Andreas Schneider
7b6be113ea Add commandline options support for testcases.
This adds a simple possibility to run the test not in the fork mode.
2008-05-07 10:56:36 +02:00
Andreas Schneider
97c951e531 Use c99 syntax for structs. 2008-05-07 10:55:08 +02:00
Andreas Schneider
c9745ab851 Add csync.time logging category. 2008-05-06 17:48:26 +02:00
Andreas Schneider
014346f2bb Fix typo. 2008-05-06 15:41:52 +02:00
Andreas Schneider
6af37010cd Fix a stack smash. 2008-05-06 14:31:36 +02:00
Andreas Schneider
de0a689b12 Fix build script.
/bin/bash must be the first line.
2008-05-06 11:18:56 +02:00
Andreas Schneider
1f48d22f24 Add cmake 2.6 compatible FindCheck module. 2008-05-06 11:18:20 +02:00
Andreas Schneider
93df0adc08 Fix bug in generate_findpackage_file script. 2008-05-06 11:17:53 +02:00
Andreas Schneider
a1116b0e00 Add a module to find libdl.so. 2008-05-06 10:54:15 +02:00
Andreas Schneider
fc6a5ce222 Add CMake 2.6 compatible FindSqlite3 module. 2008-05-06 10:53:42 +02:00
Andreas Schneider
7e9cf16825 Fix CMake 2.6 warnings. 2008-05-06 10:51:12 +02:00
Andreas Schneider
c9b34b8aae Add cmake 2.6 support for generate_findpackage_file. 2008-05-06 10:50:25 +02:00
Andreas Schneider
a472014d8b Install the client binary. 2008-05-05 17:52:19 +02:00
Andreas Schneider
c08ec25f5b Add a new version for the sqlite3 find module. 2008-05-05 17:32:11 +02:00
Andreas Schneider
dce6278a1d Change set right version. 2008-05-05 13:53:07 +02:00
Andreas Schneider
4fb4ff84a8 Add a journal testing mode to the client. 2008-05-05 11:09:16 +02:00
Andreas Schneider
ad67b21062 Use always the same path for testing. 2008-05-05 10:55:05 +02:00
Andreas Schneider
cfe0888771 Initialize the variables and create remote uri. 2008-05-05 10:48:34 +02:00
Andreas Schneider
c318daed7f Add time difference check to the init function. 2008-05-05 10:48:05 +02:00
Andreas Schneider
20da2351cf Add function to calculate the time difference between the replicas. 2008-05-05 10:35:38 +02:00
Andreas Schneider
94fbdc1d04 Remove in source iniparser library and require system lib. 2008-05-01 10:01:34 +02:00
Andreas Schneider
5a2fa7f563 Fix a segfault if we don't find an exlcude list. 2008-04-30 16:36:54 +02:00
Andreas Schneider
25e300c462 Implement detection of updates. 2008-04-30 16:24:50 +02:00
Andreas Schneider
b9c3009445 Add function to get file info by hash or inode. 2008-04-30 16:23:42 +02:00
Andreas Schneider
648c93ba7d Add a function to get a string from an instruction code.
This needed for human readable debugging messages.
2008-04-30 16:22:48 +02:00
Andreas Schneider
12764c6778 Call the shutdown function of the plugin before closing. 2008-04-30 13:10:18 +02:00
Andreas Schneider
2fe557af62 Change the debug message. 2008-04-30 13:09:44 +02:00
Andreas Schneider
f1078daa08 Create indexes. 2008-04-30 12:45:03 +02:00
Andreas Schneider
8ffce13e0e Check return value of result and free it. 2008-04-30 12:44:40 +02:00
Andreas Schneider
f2145a0e92 Fix testcase for insert metadata. 2008-04-30 12:33:18 +02:00
Andreas Schneider
d57b2fed12 Always close the db, sqlite3_close() has to free memory. 2008-04-30 12:32:35 +02:00
Andreas Schneider
ea9819da6c Add missing log categories. 2008-04-30 10:42:36 +02:00
Andreas Schneider
6ba2a31f04 Add missing tests for journal. 2008-04-30 10:39:23 +02:00
Andreas Schneider
dc5b9853a7 Add missing return value check. 2008-04-30 10:39:08 +02:00
Andreas Schneider
8503dcbb1d Adapt exclude list for updated csync_exclude.conf. 2008-04-29 15:54:41 +02:00
Andreas Schneider
bb5694ea9b Add a line to the README :) 2008-04-29 14:32:41 +02:00
Andreas Schneider
997ec6db98 Speedup the journal creation and adapt the testcases. 2008-04-29 14:21:16 +02:00
Andreas Schneider
3df40b205e Fix return value of csync_journal_load and add sqlite3 optimization. 2008-04-29 14:19:50 +02:00
Andreas Schneider
669c2f8478 Check for the right value in the database. 2008-04-29 14:19:10 +02:00
Andreas Schneider
c502634107 Measure time of the journal creation. 2008-04-29 14:07:18 +02:00
Andreas Schneider
27fb5d9128 Fix several bugs in the journal query function. 2008-04-29 11:42:20 +02:00
Andreas Schneider
cc5c87068e Write the journal. 2008-04-29 11:22:06 +02:00
Andreas Schneider
f8434dd780 Add function to write and close the journal. 2008-04-29 11:21:43 +02:00
Andreas Schneider
3bf6fc7e82 Fix test to check for status flag. 2008-04-29 11:21:22 +02:00
Andreas Schneider
eadbaa76d5 Use the status flag for the synchronizer. 2008-04-29 11:20:52 +02:00
Andreas Schneider
fb55788e2e Add support for new libsmbclient interface. 2008-04-29 09:54:29 +02:00
Andreas Schneider
0377c034f6 Check if journal exists to do update detection. 2008-04-29 09:27:49 +02:00
Andreas Schneider
0ff11694e9 Move ignore exclude files and check link count of files. 2008-04-29 09:26:42 +02:00
Andreas Schneider
cc4c636ed4 Add function to create tables in the journal. 2008-04-29 09:24:28 +02:00
Andreas Schneider
98962337c4 Use a struct for the journal. 2008-04-29 09:23:51 +02:00
Andreas Schneider
69a4f9f1c1 Change name of link_count to nlink. 2008-04-29 09:07:30 +02:00
Andreas Schneider
2ea310ab54 Fill stat and add it to the red black tree.
Update detection needs still to be done.
2008-04-28 16:50:25 +02:00
Andreas Schneider
fac0ba914f Print out memory usage between update detection. 2008-04-28 16:49:21 +02:00
Andreas Schneider
48a4ad8400 Add function to print out the status of the memory usage. 2008-04-28 16:47:35 +02:00
Andreas Schneider
ef0f29f561 Add more directories to exclude. 2008-04-28 16:47:09 +02:00
Andreas Schneider
80ee481af3 Add a type field to csync_file_stat. 2008-04-28 14:34:58 +02:00
Andreas Schneider
cf505c38a5 Add uid and gid fields to csync_vio_file_stat. 2008-04-28 14:22:04 +02:00
Andreas Schneider
a1d32a2c8b Rename pathid to phash and add current replica info. 2008-04-28 14:08:51 +02:00
Andreas Schneider
98efb19509 Set replica types. 2008-04-28 14:08:07 +02:00
Andreas Schneider
c6c6e9cbf0 Create the red-black trees for local and remote replica. 2008-04-28 13:42:10 +02:00
Andreas Schneider
8e815bffad Check which module we have to load. 2008-04-28 12:40:32 +02:00
Andreas Schneider
bae5bf798a Remove trailing slashed fo the uris. 2008-04-28 12:35:29 +02:00
Andreas Schneider
745e264f26 Add null pointer check to the c_rbtree_size function. 2008-04-28 12:19:01 +02:00
Andreas Schneider
59ab78ed57 Add instructions and file structure for internal rbtree. 2008-04-28 10:16:31 +02:00
Andreas Schneider
3eeb70ea94 Add replica type to the replica structs. 2008-04-28 10:05:40 +02:00
Andreas Schneider
6d1e843c1a Restructure csync_vio_file_stat and add checksum field. 2008-04-28 10:03:39 +02:00
Andreas Schneider
e0691bfe4c Free memory earlier to reduct the calls of free to one. 2008-04-26 21:06:19 +02:00
Andreas Schneider
2d8214aa31 Use better expression for asprintf. 2008-04-26 20:56:46 +02:00
Andreas Schneider
e8b4f4c5e1 Fix memory leak in vio test. 2008-04-26 20:48:12 +02:00
Andreas Schneider
f62366b2ed Fix typo. 2008-04-26 10:45:38 +02:00
Andreas Schneider
f71aea17a1 Fix a segfault in csync_destroy if a null pointer is passed. 2008-04-26 10:44:37 +02:00
Andreas Schneider
2a53561b2b Call the tree walker for local system for now. 2008-04-26 10:43:22 +02:00
Andreas Schneider
488b784dcf Change name of dfs to dirent to be more clear.
Add hash testing too for now.
2008-04-26 10:42:20 +02:00
Andreas Schneider
7bb4091787 Define test mode for logging. 2008-04-26 10:13:09 +02:00
Andreas Schneider
6820819c1e Add a null csync_destroy test. 2008-04-26 10:12:16 +02:00
Andreas Schneider
bc54165b13 Add missing testcases for csync_vio. 2008-04-25 17:13:27 +02:00
Andreas Schneider
0e0317c27e Fix segfaults if NULL is passed to some functions and set errno. 2008-04-25 17:12:48 +02:00
Andreas Schneider
817dc1c2a4 Add csync_vio_local_close test will NULL. 2008-04-25 17:12:19 +02:00
Andreas Schneider
5a13a0ee5a Add the missing tests for csync_vio_local. 2008-04-25 16:49:14 +02:00
Andreas Schneider
be53c0762d Use a pointer in the utimes functions. 2008-04-25 16:48:28 +02:00
Andreas Schneider
17faefbffe Add test for file functions of csync_vio_local. 2008-04-25 15:10:01 +02:00
Andreas Schneider
1892d73537 Fix segfaults for read, write and lseek and set errno. 2008-04-25 14:36:24 +02:00
Andreas Schneider
ce1debedb6 Add needed include files for flags needed by open. 2008-04-25 11:27:11 +02:00
Andreas Schneider
b59fec14e8 Fix output of non log4c logging. 2008-04-25 11:26:20 +02:00
Andreas Schneider
dd6cc1f83c Fix a segfault if we try to close a nullpointer.
Same local or in the smb plugin.
2008-04-25 10:57:35 +02:00
Andreas Schneider
e6b45181f3 Add the possibility to disable log4c in testcases. 2008-04-25 10:56:23 +02:00
Andreas Schneider
23b40250ef Fix the exclude list test. 2008-04-24 09:39:20 +02:00
Andreas Schneider
335b97242c Add some tests for csync_vio_local. 2008-04-23 17:54:53 +02:00
Andreas Schneider
282c915290 Fix a segfault if you pass NULL to closedir. 2008-04-23 17:37:39 +02:00
Andreas Schneider
fcb55722ab Make the first argument of the hash algorithm const. 2008-04-23 17:36:36 +02:00
Andreas Schneider
f24524dd2a Fix the default exclude lists. 2008-04-23 17:33:22 +02:00
Andreas Schneider
6d11fbd3c6 Fix remote tree name and free the memory of the replicas. 2008-04-23 13:05:40 +02:00
Andreas Schneider
6a2f1f0add Add a file tree walker for the update detection. 2008-04-23 12:12:48 +02:00
Andreas Schneider
c281a720b0 Fix the directory handling. 2008-04-23 12:12:02 +02:00
Andreas Schneider
d3c92bbf60 Use the right type for the csync_vio_method_handle_t. 2008-04-23 11:48:17 +02:00
Andreas Schneider
40f21cc369 Don't free a NULL pointer at csync_vio_file_stat_destroy(). 2008-04-23 11:47:32 +02:00
Andreas Schneider
dc72b7397c Add the local and remote uri at creation time. 2008-04-22 17:23:26 +02:00
Andreas Schneider
5a37fd9b6d Load and shutdown smb plugin for now.
This needs to be implemented later.
2008-04-22 15:58:06 +02:00
Andreas Schneider
9a97f52e4f Add missing vio functions.
This is the last step to get the vio framework working.
2008-04-22 12:12:23 +02:00
Andreas Schneider
8b31bb70b7 Fix typo. 2008-04-22 12:09:30 +02:00
Andreas Schneider
26bf60720c Use the right dhandle type of closedir in vio. 2008-04-22 11:27:04 +02:00
Andreas Schneider
61c4be6c23 Don't initialize the synchronizer in the vio test. 2008-04-22 11:05:16 +02:00
Andreas Schneider
63dddf8f78 Fix memory leak in vio handle test. 2008-04-22 10:46:52 +02:00
Andreas Schneider
8fb079ae60 Add local functions for the vio plugin system. 2008-04-21 14:55:59 +02:00
Andreas Schneider
22513d07f2 Add test for loading the module. 2008-04-21 09:45:55 +02:00
Andreas Schneider
96efd606b0 Add missing parameter to the vio functions. 2008-04-21 09:43:20 +02:00
Andreas Schneider
d2b7c2f0c6 Add vio module loading test. 2008-04-18 19:16:54 +02:00
Andreas Schneider
aa9d97c953 Call the right shutdown function in the module. 2008-04-18 19:15:40 +02:00
Andreas Schneider
4644c39f5a Implement module init and shutdown functions. 2008-04-17 18:02:41 +02:00
Andreas Schneider
cb14a9aaa5 Fix build warning for shadowed variable. 2008-04-17 15:02:52 +02:00
Andreas Schneider
9c90b113e8 Add config.h to csync_private.h and add plugin_handle. 2008-04-17 14:54:21 +02:00
Andreas Schneider
dca5625249 Fix typos. 2008-04-17 14:45:13 +02:00
Andreas Schneider
396e3b50fa Change the name of the BLOCK_SIZE field. 2008-04-16 15:02:32 +02:00
Andreas Schneider
0b7dde4934 Complete the smb plugin. 2008-04-16 14:05:13 +02:00
Andreas Schneider
beccc5f1bd Add missing include file. 2008-04-16 10:57:50 +02:00
Andreas Schneider
c1bd966c5c Make csync_vio_file_stat functions public. 2008-04-16 10:54:53 +02:00
Andreas Schneider
7bd9c7753d Add test for csync_vio_file_stat. 2008-04-16 10:32:33 +02:00
Andreas Schneider
ec5d3afea0 Fix warning about shadowed variables. 2008-04-16 10:32:01 +02:00
Andreas Schneider
269f5f5403 Add readdir function and add some debug messages. 2008-04-10 15:46:17 +02:00
Andreas Schneider
c7a3afecfa Fix a compile warning. 2008-04-10 15:46:01 +02:00
Andreas Schneider
241a38c8f2 Add csync_vio_file_stat functions to (de)allocate memory. 2008-04-10 15:45:23 +02:00
Andreas Schneider
59eff42dc4 Fix includes. 2008-04-10 15:44:41 +02:00
Andreas Schneider
ee657149b1 Change variables to new name. 2008-04-10 14:18:25 +02:00
Andreas Schneider
fd1045f913 Add a strndup function to c_stdlib. 2008-04-10 14:17:36 +02:00
Andreas Schneider
a465f28037 Fix the build. 2008-04-07 18:13:46 +02:00
Andreas Schneider
ab39159607 Add virtual IO plugin system.
This is the initial commit of the vio plugin system. The idea is based on
gnomevfs.
2008-04-07 17:16:41 +02:00
Andreas Schneider
3e33f5d52c Run tests in fork mode. 2008-04-07 17:16:00 +02:00
Andreas Schneider
5ba9432548 Free memory of the exclude list in the csync destroy function. 2008-03-26 11:11:20 +01:00
Andreas Schneider
2e85f56393 Add support for global and user exclude lists. 2008-03-25 16:22:51 +01:00
Andreas Schneider
335d07e0b8 Add a exclude list. 2008-03-25 16:13:44 +01:00
Andreas Schneider
5257f277a4 Config test should run in fork mode. 2008-03-25 16:08:39 +01:00
Andreas Schneider
10ec516dce The string we add should be const for strlist. 2008-03-25 16:07:58 +01:00
Andreas Schneider
d2c3e0734f Add exclude config 2008-03-25 16:07:06 +01:00
Andreas Schneider
4e8844f1bb Use POSIX functions for journal check. 2008-03-20 10:45:05 +01:00
Andreas Schneider
b4811c36bc Add a stringlist expand function. 2008-03-20 10:34:58 +01:00
Andreas Schneider
1dc975ad9d Don't leak memory.
Found by nightly build on http://testing.csync.org/.
2008-03-07 11:07:12 +01:00
Andreas Schneider
2e34b51373 Load the config file. 2008-03-06 17:43:58 +01:00
Andreas Schneider
57b74f8ce3 Copy config to the build directory. 2008-03-06 17:42:39 +01:00
Andreas Schneider
17ffc9d1e4 Add developer option to the build script. 2008-03-06 17:41:49 +01:00
Andreas Schneider
2f73648239 Add DEVELOPER options.
With this option you can work with the files in the build directory.
2008-03-06 17:41:27 +01:00
Andreas Schneider
2982193ee9 Add a false testcase for csync_journal_check. 2008-03-06 16:59:19 +01:00
Andreas Schneider
7c47d9cb59 Add more test cases for csync_journal functions. 2008-03-04 11:29:58 +01:00
Andreas Schneider
8ee1252276 Fix a deadlock if we pass an empty string to the journal insert. 2008-03-04 11:29:43 +01:00
Andreas Schneider
7415bb1ea3 Add more testcases for csync_journal. 2008-03-04 10:42:02 +01:00
Andreas Schneider
c8b641ac98 Fix build warnings. 2008-03-04 09:01:58 +01:00
Andreas Schneider
a98377dbd4 Fix gcc warnings. 2008-03-03 14:11:14 +01:00
Andreas Schneider
5b858683f5 Add a custom ctest config to ignore the jhash check. 2008-03-03 13:43:12 +01:00
Andreas Schneider
a262be870a Add a macro to copy a file if it is different. 2008-03-03 13:42:26 +01:00
Andreas Schneider
c394ea1c90 Fix memleaks in rbtree test. 2008-03-03 13:22:36 +01:00
Andreas Schneider
c29132d612 Fix indentation. 2008-03-03 13:20:45 +01:00
Andreas Schneider
0f6516931f Update CTestConfig for CDash.
http://testing.csync.org/
2008-03-03 12:28:58 +01:00
Andreas Schneider
c51ab886e8 Enable unit testing by default in the build script. 2008-03-03 12:28:32 +01:00
Andreas Schneider
5b3f0aad3d Add option to enable unit testing.
Unit testing is disabled by default.
2008-03-03 12:27:52 +01:00
Andreas Schneider
1692ef49ae Change version to 0.42. 2008-03-03 10:20:31 +01:00
Andreas Schneider
2d52e459bb Fix a typo and move ensure_out_of_source_build above the macros. 2008-03-03 10:18:59 +01:00
Andreas Schneider
2dbba9d1f8 Document the csync handle and remove the struct forward declaration. 2008-02-29 18:04:51 +01:00
Andreas Schneider
2d0de78d1f Add missing documentation for the public API. 2008-02-29 17:57:49 +01:00
Andreas Schneider
6900fe13b9 Add license file. 2008-02-29 17:50:52 +01:00
Andreas Schneider
ff7e28f82c Completly hide the csync structure for the user of the library.
So it easier to change the API/ABI.
2008-02-29 11:41:15 +01:00
Andreas Schneider
600fbe8740 Add two-phase commit for the journal. 2008-02-29 11:24:14 +01:00
Andreas Schneider
b00a3fa491 Add sqlite3 to the requriements and suggest version numbers. 2008-02-28 14:30:06 +01:00
Andreas Schneider
4f109c4460 Add a gitignore file 2008-02-28 11:56:09 +01:00
Andreas Schneider
1b29a420bc Initial commit 2008-02-27 18:56:47 +01:00
530 changed files with 86461 additions and 36993 deletions

10
.gitignore vendored
View File

@@ -6,3 +6,13 @@ CMakeLists.txt.user*
*~
*.autosave
doc/_build/*
*.kate-swp
*.kdev4
win/
admin/win/nsi/l10n/pofiles/*.po
*.swp
*~$
build*
cscope.*
tags
t1.cfg

3
.gitmodules vendored
View File

@@ -1,3 +1,6 @@
[submodule "doc/ocdoc"]
path = doc/ocdoc
url = https://github.com/owncloud/documentation
[submodule "src/3rdparty/qtmacgoodies"]
path = src/3rdparty/qtmacgoodies
url = git://github.com/shadone/qtmacgoodies.git

View File

@@ -21,14 +21,27 @@ include(${CMAKE_SOURCE_DIR}/VERSION.cmake)
configure_file( ${CMAKE_SOURCE_DIR}/src/mirall/version.h.in "${CMAKE_CURRENT_BINARY_DIR}/src/mirall/version.h" )
include_directories(BEFORE ${CMAKE_CURRENT_BINARY_DIR} "${CMAKE_CURRENT_BINARY_DIR}/src/mirall/")
#####
## handle DBUS for Fdo notifications
if( UNIX AND NOT APPLE )
add_definitions( -DUSE_FDO_NOTIFICATIONS)
set(WITH_DBUS ON)
endif()
####
include(GNUInstallDirs)
include(DefineInstallationPaths)
include(QtVersionAbstraction)
setup_qt()
include(GetGitRevisionDescription)
get_git_head_revision(GIT_REFSPEC GIT_SHA1)
# if we cannot get it from git, directly try .tag (packages)
# this will work if the tar balls have been properly created
# via git-archive.
if (GIT_SHA1)
if (${GIT_SHA1} STREQUAL "GITDIR-NOTFOUND")
file(READ ${CMAKE_SOURCE_DIR}/.tag sha1_candidate)
string(REPLACE "\n" "" sha1_candidate ${sha1_candidate})
@@ -37,6 +50,7 @@ if (${GIT_SHA1} STREQUAL "GITDIR-NOTFOUND")
set (GIT_SHA1 "${sha1_candidate}")
endif()
endif()
endif()
set(SYSCONFDIR ${SYSCONF_INSTALL_DIR})
set(DATADIR ${DATA_INSTALL_DIR})
@@ -47,6 +61,8 @@ set(DATADIR ${DATA_INSTALL_DIR})
if(APPLE AND (NOT DEFINED BUILD_OWNCLOUD_OSX_BUNDLE OR BUILD_OWNCLOUD_OSX_BUNDLE))
set(BUILD_OWNCLOUD_OSX_BUNDLE ON)
set(OWNCLOUD_OSX_BUNDLE "${APPLICATION_EXECUTABLE}.app")
set(LIB_INSTALL_DIR "${APPLICATION_EXECUTABLE}.app/Contents/MacOS")
set(BIN_INSTALL_DIR "${APPLICATION_EXECUTABLE}.app/Contents/MacOS")
# BUILD_OWNCLOUD_OSX_BUNDLE was disabled on OSX
elseif(APPLE AND NOT BUILD_OWNCLOUD_OSX_BUNDLE)
@@ -58,42 +74,68 @@ else()
endif()
#####
#####
## handle DBUS for Fdo notifications
if( UNIX AND NOT APPLE )
add_definitions( -DUSE_FDO_NOTIFICATIONS)
# this option removes Http authentication, keychain, shibboleth etc and is intended for
# external authentication mechanisms
option(TOKEN_AUTH_ONLY "TOKEN_AUTH_ONLY" OFF)
if(TOKEN_AUTH_ONLY)
message("Compiling with token authentication")
add_definitions(-DTOKEN_AUTH_ONLY=1)
endif()
# this option creates only libocsync and libowncloudsync
option(BUILD_LIBRARIES_ONLY "BUILD_LIBRARIES_ONLY" OFF)
# When this option is enabled, 5xx errors are not added to the clacklist
# Normaly you don't want to enable this option because if a particular file
# trigger a bug on the server, you want the file to be blacklisted.
option(OWNCLOUD_5XX_NO_BLACKLIST "OWNCLOUD_5XX_NO_BLACKLIST" OFF)
if(OWNCLOUD_5XX_NO_BLACKLIST)
add_definitions(-DOWNCLOUD_5XX_NO_BLACKLIST=1)
endif()
####
#### find libs
find_package(Qt4 4.7.0 COMPONENTS QtCore QtGui QtXml QtNetwork QtTest QtWebkit REQUIRED )
if( UNIX AND NOT APPLE ) # Fdo notifications
find_package(Qt4 4.7.0 COMPONENTS QtDBus REQUIRED )
#find_package(Qt4 4.7.0 COMPONENTS QtCore QtGui QtXml QtNetwork QtTest QtWebkit REQUIRED )
#if( UNIX AND NOT APPLE ) # Fdo notifications
# find_package(Qt4 4.7.0 COMPONENTS QtDBus REQUIRED )
#endif()
find_package(Neon REQUIRED)
if(NOT TOKEN_AUTH_ONLY)
if (Qt5Core_DIR)
find_package(Qt5Keychain REQUIRED)
else()
find_package(QtKeychain REQUIRED)
endif()
endif()
find_package(Csync REQUIRED)
Find_package(Sparkle)
if(UNIX)
find_package(INotify REQUIRED)
find_package(INotify REQUIRED)
else()
find_package(INotify)
find_package(INotify)
endif()
find_package(Sphinx)
find_package(PdfLatex)
find_package(QtKeychain)
set(WITH_QTKEYCHAIN ${QTKEYCHAIN_FOUND})
set(USE_INOTIFY ${INOTIFY_FOUND})
configure_file(config.h.in ${CMAKE_CURRENT_BINARY_DIR}/config.h)
configure_file(test/test_journal.db "${CMAKE_BINARY_DIR}/test/test_journal.db" COPYONLY)
include(OwnCloudCPack.cmake)
add_definitions(-DUNICODE)
add_definitions(-D_UNICODE)
if( WIN32 )
add_definitions( -D__USE_MINGW_ANSI_STDIO=1 )
endif( WIN32 )
# Handle Translations, pick all mirall_* files from trans directory.
file( GLOB TRANS_FILES ${CMAKE_SOURCE_DIR}/translations/mirall_*.ts)
set(TRANSLATIONS ${TRANS_FILES})
add_subdirectory(csync)
add_subdirectory(src)
add_subdirectory(doc)

View File

@@ -17,17 +17,6 @@ else ()
include ( "${CMAKE_SOURCE_DIR}/OWNCLOUD.cmake" )
endif()
set( CSYNC_BINARY_DIR @CSYNC_BINARY_DIR@ )
set( MINGW_ROOT @CMAKE_FIND_ROOT_PATH@ )
if(CSYNC_BINARY_DIR)
set( CSYNC_LIBRARY_DIR "${CSYNC_BINARY_DIR}/src" )
set( CSYNC_PLUGIN_DIR "${CSYNC_BINARY_DIR}/modules" )
set( CSYNC_CONFIG_DIR "${CSYNC_BINARY_DIR}/config" )
else()
set( CSYNC_LIBRARY_DIR "${MINGW_ROOT}/bin" )
set( CSYNC_PLUGIN_DIR "${MINGW_ROOT}/plugins-0" ) #FIXME: whatever it is
set( CSYNC_CONFIG_DIR "${MINGW_ROOT}/etc/ocsync" )
endif()
set( BUILD_OWNCLOUD_OSX_BUNDLE @BUILD_OWNCLOUD_OSX_BUNDLE@)
if(APPLE AND NOT BUILD_OWNCLOUD_OSX_BUNDLE)
message( FATAL_ERROR "You're trying to build a bundle although you haven't built mirall in bundle mode.\n Add -DBUILD_OWNCLOUD_OSX_BUNDLE=ON")

168
ChangeLog
View File

@@ -1,5 +1,173 @@
ChangeLog
=========
version 1.6.1 (release 2014-06-26 )
* Fix 'precondition failed' bug with broken upload
* Fix openSSL problems for windows deployment
* Fix syncing a folder with '#' in the name
* Fix #1845: do not update parent directory etag before sub
directories are removed
* Fix reappearing directories if dirs are removed during its
upload
* Fix app version in settings dialog, General tab
* Fix crash in FolderWizard when going offline
* Shibboleth fixes
* More specific error messages (file remove during upload, open
local sync file)
* Use QSet rather than QHash in SyncEngine (save memory)
* Fix some memory leaks
* Fix some thread race problems, ie. wait for neon thread to finish
before the propagator is shut down
* Fix a lot of issues and warnings found by Coverity
* Fix Mac some settings dialog problems
version 1.6.0 (release 2014-05-30 )
* Minor GUI improvements
* Qt5 compile issues fixed
* Ignore sync log file in filewatcher
* Install libocsync to private library dir and use rpath to localize
* Fix reconnect after server disconnect
* Fix "unknown action" display in Activity window
* Fix memory leaks
* Respect XDG_CONFIG_HOME environment var
* Handle empty fileids in the journal correctly
* Add abilility to compile libowncloudsync without GUI dependendy
* Fix SSL error with previously-expired CAs on Windows
* Fix incorrect folder pause state after start
* Fix a couple of actual potential crashes
* Improve Cookie support (e.g. for cookie-based load-balancers)
* Introduce a general timeout of 300s for network operations
* Improve error handling, blacklisting
* Job-based change propagation, enables faster parallel up/downloads
(right now only if no bandwidth limit is set and no proxy is used)
* Significantly reduced CPU load when checking for local and remote changes
* Speed up file stat code on Windows
* Enforce Qt5 for Windows and Mac OS X builds
* Improved owncloudcmd: SSL support, documentation
* Added advanced logging of operations (file .???.log in sync
directory)
* Avoid creating a temporary copy of the sync database (.ctmp)
* Enable support for TLS 1.2 negotiation on platforms that use
Qt 5.2 or later
* Forward server exception messages to client error messages
* Mac OS X: Support Notification Center in OS X 10.8+
* Mac OS X: Use native settings dialog
* Mac OS X: Fix UI inconsistencies on Mavericks
* Shibboleth: Warn if authenticating with a different user
* Remove vio abstraction in csync
* Avoid data loss when a client file system is not case sensitive
version 1.5.3 (release 2014-03-10 )
* Fix usage of proxies after first sync run (#1502, #1524, #1459, #1521)
* Do not wipe the credentials from config for reconnect (#1499, #1503)
* Do not erase the full account config if an old version of the client stored
the password (related to above)
* Fix layout of the network tab (fixes #1491)
* Handle authentication requests by a Shibboleth IdP
* Shibboleth: If no connection is available, don't open the login window
* [Packaging] Debian/Ubuntu: ship sync-exclude.lst
* [Packaging] Fix issues with access to gnome keychain in Fedora and RHEL6
* [Packaging] Ensure all sub packages get updated
* [Packaging] Fix incorrect path in desktop file (RHEL6/CentOS6)
version 1.5.2 (release 2014-02-26 )
* Fix behavior when attempting to rename Shared folder
* Fix potential endless sync loops on Mac OS (#1463)
* Fix potential crash when pausing during update phase (#1442)
* Fix handing of shared directories
* Fix online state handling (#1441, #1459)
* Fix potential crash in c_iconv on Mac OS
* Fix certificate chain display in SSLButton
* Fix sporadicly appearing multiple auth prompts on sign-in
* Show correct state icon in Account Settings right away
* Re-fetch content that gets deleted from read only shared directories
* Do not store the password in the config file, erase existing ones (#1469)
* Shibboleth: Close browser window after login
* Shibboleth: Proper invalidation if timeout during sync
* Shibboleth: Do not pop up IdP login immediately when modifying account
* Shibboleth: Avoid auth on restart by storing cookies in the wallet
* Fix license headers
version 1.5.1 (release 2014-02-13 )
* Added an auto updater that updates the client if a
more recent version was found automatically (Windows, Mac OS X)
* Added a button to the account dialog that gives information
about the encryption layer used for communication, plus a
certificate information widget
* Preserve the permission settings of local files rather than
setting them to a default (Bug #820)
* Handle windows lnk files correctly (Bug #1307)
* Detect removes and renames in read only shares and
restore the gone away files. (Bug #1386)
* Fixes sign in/sign out and password dialog. (Bug #1353)
* Fixed error messages (Bug #1394)
* Lots of fixes for building with Qt5
* Changes to network limits are now also applied during a
sync run
* Fixed mem leak after via valgrind on Mac
* Imported the ocsync library into miralls repository.
Adopted all build systems and packaging to that.
* Introduce a new linux packaging scheme following the
debian upstream scheme
* Use a refactored Linux file system watcher based on
inotify, incl. unit tests
* Wizard: Gracefully fall back to HTTP if HTTPS connection
fails, issuing a warning
* Fixed translation misses in the propagator
* Fixes in proxy configuration
* Fixes in sync journal handling
* Fix the upload progress if the local source is still
changing when the upload begins.
* Add proxy support to owncloud commandline client
* NSIS fixes
* A lot of other fixes and minor improvements
* Improve Qt5 compatability
version 1.5.0 (release 2013-12-12 ), csync 0.91.4 required
* New owncloud propagator that skips the vio abstraction layer
* Add owncloudcmd to replace the ocsync command line tool
* Localize Windows installer
* Allow to sign in and out
* Ask for password if missing
* Introduce activity view
* Introduce black list for files which could not be synced
* Enabling accessbility by shipping accessibility enables on OS X (#736)
* Toggle Settings window when clicking on systray icon on Win and KDE (#896)
* FolderWizard: Sanitize error detection (#1201)
* Set proper enable state of blacklist button after the dialog was opened
* Set proper tooltips in blacklist
* Translatable error messages for file errors
* Add man page for owncloudcmd (#1234)
* Don't close setup wizard when the initial sync run is started
* Close the sync journal if a folder gets removed (#1252)
* Activity: Avoid horizontal scrollbar (#1213)
* Fix crash (#1229)
* Resize wizard appropriately (#1130)
* Fix account identity test (#1231)
* Maintain the file type correctly
* Display rename-target in sync protocol action column
* Let recursive removal also remove the top dir
* If item is a directory, remove its contents from the database as well (#1257)
* Install headers for owncloudsync library
* Fix opening the explorer with a selected file in Windows (#1249)
* Add build number into versioning scheme
* Windows: Fix rename of temporary files
* Windows: Fix move file operation
version 1.4.2 (release 2013-10-18 ), csync 0.90.4 required
* Do not show the warning icon in the tray (#944)
* Fix manual proxy support when switching (#1016)
* Add folder column to detailed sync protocol (#1037)
* Fix possible endless loop in inotify (#1041)
* Do not elide the progress text (#1049)
* Fix high CPU load (#1073)
* Reconnect if network is unavailable after startup (#1080)
* Ensure paused folder stays paused when syncing with more than one folder (#1083)
* Don't show desktop notification when the user doesn't want to (#1093)
* System tray: Avoid quick flickering up of the ok-icon for the sync prepare state
* Progress: Do not show progress if nothing is transmitted
* Progress: Show number of deletes.
version 1.4.1 (release 2013-09-24 ), csync 0.90.1 required
* Translation and documentation fixes.

View File

@@ -2,7 +2,9 @@ set( APPLICATION_NAME "ownCloud" )
#set( APPLICATION_SHORTNAME ${APPLICATION_NAME} )
set( APPLICATION_EXECUTABLE "owncloud" )
set( APPLICATION_DOMAIN "owncloud.com" )
set( APPLICATION_VENDOR "ownCloud, Inc" )
set( APPLICATION_VENDOR "ownCloud" )
set( APPLICATION_UPDATE_URL "https://updates.owncloud.com/client/" CACHE string "URL for updater" )
set( THEME_CLASS "ownCloudTheme" )
set( APPLICATION_REV_DOMAIN "com.owncloud.desktopclient" )
set( WIN_SETUP_BITMAP_PATH "${CMAKE_SOURCE_DIR}/admin/win/nsi" )

View File

@@ -9,10 +9,11 @@ else ()
endif()
include( VERSION.cmake )
set( CPACK_PACKAGE_VERSION_MAJOR ${VERSION_MAJOR} )
set( CPACK_PACKAGE_VERSION_MINOR ${VERSION_MINOR} )
set( CPACK_PACKAGE_VERSION_PATCH ${VERSION_PATCH} )
set( CPACK_PACKAGE_VERSION ${VERSION} )
set( CPACK_PACKAGE_VERSION_MAJOR ${MIRALL_VERSION_MAJOR} )
set( CPACK_PACKAGE_VERSION_MINOR ${MIRALL_VERSION_MINOR} )
set( CPACK_PACKAGE_VERSION_PATCH ${MIRALL_VERSION_PATCH} )
set( CPACK_PACKAGE_VERSION_BUILD ${MIRALL_VERSION_BUILD} )
set( CPACK_PACKAGE_VERSION ${MIRALL_VERSION_FULL}${MIRALL_VERSION_SUFFIX} )
if(APPLE)
set( CPACK_GENERATOR "DragNDrop" )

View File

@@ -17,7 +17,8 @@ It uses OCSync as its syncing backend.
## Building the source code
Please refer to [Building the Client](http://doc.owncloud.org/desktop/1.2/building.html)
Please refer to doc/building.rst, or
[Building the Client](http://doc.owncloud.org/desktop/1.5/building.html)
in the ownCloud client manual.
## Authors

View File

@@ -1,6 +1,25 @@
set( VERSION_MAJOR 1 )
set( VERSION_MINOR 4 )
set( VERSION_PATCH 2 )
set( VERSION "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}${VERSION_SUFFIX}beta1")
set( SOVERSION 0 )
set( MIRALL_VERSION_MAJOR 1 )
set( MIRALL_VERSION_MINOR 6 )
set( MIRALL_VERSION_PATCH 1 )
set( MIRALL_SOVERSION 0 )
if ( NOT DEFINED MIRALL_VERSION_SUFFIX )
set( MIRALL_VERSION_SUFFIX "") #e.g. beta1, beta2, rc1
endif( NOT DEFINED MIRALL_VERSION_SUFFIX )
if( NOT DEFINED MIRALL_VERSION_BUILD )
set( MIRALL_VERSION_BUILD "0" ) # Integer ID. Generated by the build system
endif( NOT DEFINED MIRALL_VERSION_BUILD )
# Composite defines
# Used e.g. for libraries Keep at x.y.z.
set( MIRALL_VERSION "${MIRALL_VERSION_MAJOR}.${MIRALL_VERSION_MINOR}.${MIRALL_VERSION_PATCH}" )
# Version with Build ID. Used in the installer
set( MIRALL_VERSION_FULL ${MIRALL_VERSION} )
set( MIRALL_VERSION_STRING ${MIRALL_VERSION} )
set( MIRALL_VERSION_FULL "${MIRALL_VERSION_FULL}.${MIRALL_VERSION_BUILD}" )
set( MIRALL_VERSION_STRING "${MIRALL_VERSION}${MIRALL_VERSION_SUFFIX}" )
if( MIRALL_VERSION_BUILD )
set( MIRALL_VERSION_STRING "${MIRALL_VERSION_STRING} (build ${MIRALL_VERSION_BUILD})" )
endif( MIRALL_VERSION_BUILD )

View File

@@ -2,18 +2,39 @@
[ "$#" -lt 2 ] && echo "Usage: sign_dmg.sh <dmg> <identity>" && exit
src_dmg=$1
tmp_dmg=writable_$1
signed_dmg=signed_$1
identity=$2
mount="/Volumes/$(basename $src_dmg|cut -d"-" -f1)"
src_dmg="$1"
tmp_dmg="writable_$1"
signed_dmg="signed_$1"
identity="$2"
test -e $tmp_dmg && rm -rf $tmp_dmg
hdiutil convert $src_dmg -format UDRW -o $tmp_dmg
hdiutil attach $tmp_dmg
pushd $mount
codesign -s "$identity" $mount/*.app
QT_FMWKS=`basename ${TMP_APP}/Contents/Frameworks`/Qt*
QT_FMWK_VERSION="5"
fix_frameworks() {
TMP_APP=$1
QT_FMWK_PATH=$2
QT_FMWKS=$3/Qt*.framework
echo "Patching Qt frameworks..."
for FMWK in $QT_FMWKS; do
FMWK_NAME=`basename -s .framework $FMWK`
FMWK=`basename $FMWK`
FMWK_PATH="${TMP_APP}/Contents/Frameworks/${FMWK}"
mkdir -p "${FMWK_PATH}/Versions/${QT_FMWK_VERSION}/Resources/"
cp -avf "${QT_FMWK_PATH}/${FMWK}/Contents/Info.plist" "${FMWK_PATH}/Versions/${QT_FMWK_VERSION}/Resources"
(cd "${FMWK_PATH}" && ln -sf "Versions/${QT_FMWK_VERSION}/Resources" "Resources")
perl -pi -e "s/${FMWK_NAME}_debug/${FMWK_NAME}/" "${FMWK_PATH}/Resources/Info.plist"
done
}
mount="/Volumes/$(basename "$src_dmg"|sed 's,-\([0-9]\)\(.*\),,')"
test -e "$tmp_dmg" && rm -rf "$tmp_dmg"
hdiutil convert "$src_dmg" -format UDRW -o "$tmp_dmg"
hdiutil attach "$tmp_dmg"
pushd "$mount"
fix_frameworks "$mount"/*.app `qmake -query QT_INSTALL_LIBS` "$mount"/*.app/Contents/Frameworks
codesign -s "$identity" --deep "$mount"/*.app
popd
diskutil eject $mount
test -e $signed_dmg && rm -rf $signed_dmg
hdiutil convert $tmp_dmg -format UDBZ -o $signed_dmg
diskutil eject "$mount"
test -e "$signed_dmg" && rm -rf "$signed_dmg"
hdiutil convert "$tmp_dmg" -format UDBZ -o "$signed_dmg"

View File

@@ -0,0 +1,12 @@
-----BEGIN PUBLIC KEY-----
MIIBtzCCASsGByqGSM44BAEwggEeAoGBANC50nTWzroQwwawgaV4jd5TjjqbGKDH
6CWbZzyfJ246mJcrwTfM2h5Z80GwLSNFBIjtLGpFd7Wd+CI1dY8oIOYxnYgWDSJC
Al1RMoUSSwx0LRr8J3gojcvvsrhk/t57o9bjXynE2tiP1fwzPb+B3NH/02fMnzfH
k+B8/8GOnX8dAhUA9PZ1QrH/mN+7ckiGjmoegZdv9tMCgYBPEj2850r8+9tXljU4
X0s1NKBfiyhBGw/quJMZ3k0fQ/tpOyYwXYBg+9GBVc4pF1CKMVGoBS6XnLrZ1OkC
OP9g+NNH5cLOKrBxjtd1GPG8UF/sZpak2sVfuNKzRtFT/6WFHc3f7C+LiDFZ2aPO
A+Kr5MZJ8xxYDYj16WV2nKgoQgOBhQACgYEAuQzycfUZKm7MR9WZSFF9uQ3N3SQr
PKYggCl6GTdWYmrsFyXLEBmb3m2qXxx9AcfR2LdkTp/CRCzm+HD6wyHVAAVG2kI2
mWafcahlx/lVMd2yytdRE5pjpjLxw7rrt/fvSZsGwUswQJLl4iDWoE+mFfaaZnnM
JKoiKLX7LUFOPaU=
-----END PUBLIC KEY-----

View File

@@ -0,0 +1,21 @@
<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:sparkle="http://www.andymatuschak.org/xml-namespaces/sparkle"
xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
<title>oC</title>
<link>127.0.0.1/test.rss</link>
<description>Most recent changes with links to updates.</description>
<language>en</language>
<item>
<title>Version 1.5.1.2180-nightly20140202</title>
<pubDate>Wed, 09 Feb 2013 19:20:11 +0000</pubDate>
<enclosure url="http://127.0.0.1:8080/signed_ownCloud-1.5.1.2180-nightly20140202.dmg"
sparkle:version="1.5.1.2180-nightly20140202"
length="21078089"
type="application/octet-stream"
sparkle:dsaSignature="MCwCFA/RpP/MvNS1SpjD/2/U6RPyju3HAhQteFXvpUjTnNv3sC/lGkxtEkoB4Q=="
/>
</item>
</channel>
</rss>

28
admin/win/nsi/README.md Normal file
View File

@@ -0,0 +1,28 @@
# Windows Installer Translations
## Introduction
Translations on transifex: http://www.transifex.com/projects/p/owncloud/resource/mirall-wininstaller/
Daily sync job: https://ci.owncloud.org/view/translation-sync/job/translation-sync-mirall-wininstaller/
## How to add a new translation string?
0. Add the string to the pofiles/messages.pot manually. This step is necessary
for the upload of strings to be translated to transifex
1. Run bin/l10n.sh to properly generate declarations.nsh and English.nsh
2. If you want to test your installer right away you need to add the new string
at least to l10n/English.nsh
## How to add a new language?
0. Add the new language to l10n/.tx/config which holds the explicit list of
languages to be downloaded from transifex on each translation sync run.
1. Add the new language to l10n/languages.nsh
2. In NSIS.template.in the language has to be added in the macro SETLANG.

View File

@@ -0,0 +1,48 @@
[main]
host = https://www.transifex.com
[owncloud.mirall-wininstaller]
host = https://www.transifex.com
source_file = pofiles/messages.pot
source_lang = en
type = PO
minimum_perc = 5
# simple one-to-one language mappings
trans.ca = pofiles/ca.po
trans.el = pofiles/el.po
trans.es = pofiles/es.po
trans.es_AR = pofiles/es_AR.po
trans.eu = pofiles/eu.po
trans.fa = pofiles/fa.po
trans.fr = pofiles/fr.po
trans.gl = pofiles/gl.po
trans.it = pofiles/it.po
trans.nl = pofiles/nl.po
trans.pl = pofiles/pl.po
trans.pt_BR = pofiles/pt_BR.po
trans.ru = pofiles/ru.po
trans.sl = pofiles/sl.po
trans.sv = pofiles/sv.po
trans.tr = pofiles/tr.po
trans.uk = pofiles/uk.po
trans.zh_TW = pofiles/zh_TW.po
trans.zh_CN = pofiles/zh_CN.po
# special handling below
# de_DE holds the formal translation which we want as default
trans.de_DE = pofiles/de.po
# choose one of the given translations on transifex as default
trans.pt_PT = pofiles/pt.po
# choose a special language as more generic default
trans.cs_CZ = pofiles/cs.po
trans.et_EE = pofiles/et.po
trans.fi_FI = pofiles/fi.po
trans.ja_JP = pofiles/ja.po
trans.hu_HU = pofiles/hu.po
trans.sk_SK = pofiles/sk.po
trans.th_TH = pofiles/th.po

View File

@@ -0,0 +1,44 @@
# Auto-generated - do not modify
StrCpy $ConfirmEndProcess_KILL_NOT_FOUND_TEXT "kill prozesua ez da aurkitu!"
StrCpy $PageReinstall_NEW_Field_2 "Desinstalatu instalatu baino lehen"
StrCpy $PageReinstall_NEW_Field_3 "Ez desinstalatu"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_TITLE "Dagoeneko Instalatuta"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_SUBTITLE "Hautatu nola nahi duzun ${APPLICATION_NAME} instalatzea."
StrCpy $PageReinstall_SAME_Field_2 "Gehitu/Berrinstalatu osagaiak"
StrCpy $PageReinstall_SAME_Field_3 "Desinstalatu ${APPLICATION_NAME}"
StrCpy $UNINSTALLER_APPDATA_TITLE "Desinstalatu ${APPLICATION_NAME}"
StrCpy $OPTION_SECTION_SC_START_MENU_SECTION "Hasierako Menuko Lasterbidea"
StrCpy $OPTION_SECTION_SC_START_MENU_DetailPrint "Hasierako Menuan ${APPLICATION_NAME}rako Abiarazle bizkorra sortzen."
StrCpy $OPTION_SECTION_SC_DESKTOP_SECTION "Mahaigaineko Lasterbidea"
StrCpy $OPTION_SECTION_SC_DESKTOP_DetailPrint "Mahaigaineko Lasterbideak Sortzen"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_SECTION "Abiarazle Bizkorreko Lasterbidea"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_DetailPrint "Abiarazle Bizkorreko Lasterbidea Sortzen"
StrCpy $OPTION_SECTION_SC_START_MENU_Desc "${APPLICATION_NAME} lasterbidea."
StrCpy $OPTION_SECTION_SC_DESKTOP_Desc "${APPLICATION_NAME}rako mahaigaineko lasterbidea."
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_Desc "${APPLICATION_NAME}erako Abiarazle Bizkorreko Lasterbidea."
StrCpy $UNINSTALLER_APPDATA_SUBTITLE "Ezabatu ${APPLICATION_NAME}en datuen karpeta zure ordenagailutik."
StrCpy $UNINSTALLER_APPDATA_LABEL_1 "${APPLICATION_NAME}en datuen karpeta ezabatu nahi duzu?"
StrCpy $UNINSTALLER_APPDATA_CHECKBOX "Bai, ezabtu datu karpeta hau."
StrCpy $UNINSTALLER_FILE_Detail "Desinstalatzailea idazten"
StrCpy $UNINSTALLER_REGISTRY_Detail "Instalatzaileko Erregistroko Giltzak idazten"
StrCpy $UNINSTALLER_FINISHED_Detail "Bukatuta"
StrCpy $UNINSTALL_ABORT "Desinstalazioak erabiltzaileak bertan behera utzi du"
StrCpy $INIT_NO_QUICK_LAUNCH "Abiarazle Bizkorreko Lasterbidea (E/E)"
StrCpy $UAC_INSTALLER_REQUIRE_ADMIN "Instalatzaileak administratzaile baimenak behar ditu, saiatu berriro"
StrCpy $INIT_INSTALLER_RUNNING "Instalatzailea dagoeneko martxan da."
StrCpy $UAC_UNINSTALLER_REQUIRE_ADMIN "Desinstalatzaile honek administratzaile baimenak behar ditu, saiatu berriro"
StrCpy $INIT_UNINSTALLER_RUNNING "Desinstalatzailea dagoeneko martxan da."
StrCpy $SectionGroup_Shortcuts "Lasterbideak"
StrCpy $MUI_FINISHPAGE_SHOWREADME_TEXT_STRING "Show release notes"
StrCpy $ConfirmEndProcess_MESSAGEBOX_TEXT "Found ${APPLICATION_EXECUTABLE} process(s) which need to be stopped.$\nDo you want the installer to stop these for you?"
StrCpy $ConfirmEndProcess_KILLING_PROCESSES_TEXT "Killing ${APPLICATION_EXECUTABLE} processes."
StrCpy $PageReinstall_NEW_Field_1 "An older version of ${APPLICATION_NAME} is installed on your system. It is recommended that you uninstall the current version before installing. Select the operation you want to perform and click Next to continue."
StrCpy $PageReinstall_OLD_Field_1 "A newer version of ${APPLICATION_NAME} is already installed! It is not recommended that you install an older version. If you really want to install this older version, it is better to uninstall the current version first. Select the operation you want to perform and click Next to continue."
StrCpy $PageReinstall_SAME_Field_1 "${APPLICATION_NAME} ${VERSION} is already installed.\r\nSelect the operation you want to perform and click Next to continue."
StrCpy $PageReinstall_SAME_MUI_HEADER_TEXT_SUBTITLE "Choose the maintenance option to perform."
StrCpy $SEC_APPLICATION_DETAILS "Installing ${APPLICATION_NAME} essentials."
StrCpy $OPTION_SECTION_SC_APPLICATION_Desc "${APPLICATION_NAME} essentials."
StrCpy $UNINSTALLER_APPDATA_LABEL_2 "Leave unchecked to keep the data folder for later use or check to delete the data folder."
StrCpy $UNINSTALL_MESSAGEBOX "It does not appear that ${APPLICATION_NAME} is installed in the directory '$INSTDIR'.$\r$\nContinue anyway (not recommended)?"
StrCpy $INIT_NO_DESKTOP "Desktop Shortcut (overwrites existing)"
StrCpy $UAC_ERROR_ELEVATE "Unable to elevate, error:"

View File

@@ -0,0 +1,44 @@
# Auto-generated - do not modify
StrCpy $MUI_FINISHPAGE_SHOWREADME_TEXT_STRING "Mostrar les notes de versió"
StrCpy $ConfirmEndProcess_KILL_NOT_FOUND_TEXT "Procés per matar no trobat!"
StrCpy $PageReinstall_NEW_Field_1 "Una versió anterior de ${APPLICATION_NAME} està instal·lada en el vostre sistema. Es recomana desinstal·lar la versió actual abans d'instal·lar. Seleccioneu l'operació que desitjeu realitzar i feu clic a Següent per continuar."
StrCpy $PageReinstall_NEW_Field_2 "Desinstal·lar abans d'instal·lar"
StrCpy $PageReinstall_NEW_Field_3 "No instal·lar"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_TITLE "Ja instal·lat"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_SUBTITLE "Trieu la manera com voleu instal·lar ${APPLICATION_NAME}."
StrCpy $UNINSTALLER_FINISHED_Detail "Acabat"
StrCpy $SectionGroup_Shortcuts "Dreceres"
StrCpy $ConfirmEndProcess_MESSAGEBOX_TEXT "Found ${APPLICATION_EXECUTABLE} process(s) which need to be stopped.$\nDo you want the installer to stop these for you?"
StrCpy $ConfirmEndProcess_KILLING_PROCESSES_TEXT "Killing ${APPLICATION_EXECUTABLE} processes."
StrCpy $PageReinstall_OLD_Field_1 "A newer version of ${APPLICATION_NAME} is already installed! It is not recommended that you install an older version. If you really want to install this older version, it is better to uninstall the current version first. Select the operation you want to perform and click Next to continue."
StrCpy $PageReinstall_SAME_Field_1 "${APPLICATION_NAME} ${VERSION} is already installed.\r\nSelect the operation you want to perform and click Next to continue."
StrCpy $PageReinstall_SAME_Field_2 "Add/Reinstall components"
StrCpy $PageReinstall_SAME_Field_3 "Uninstall ${APPLICATION_NAME}"
StrCpy $UNINSTALLER_APPDATA_TITLE "Uninstall ${APPLICATION_NAME}"
StrCpy $PageReinstall_SAME_MUI_HEADER_TEXT_SUBTITLE "Choose the maintenance option to perform."
StrCpy $SEC_APPLICATION_DETAILS "Installing ${APPLICATION_NAME} essentials."
StrCpy $OPTION_SECTION_SC_START_MENU_SECTION "Start Menu Program Shortcut"
StrCpy $OPTION_SECTION_SC_START_MENU_DetailPrint "Adding shortcut for ${APPLICATION_NAME} to the Start Menu."
StrCpy $OPTION_SECTION_SC_DESKTOP_SECTION "Desktop Shortcut"
StrCpy $OPTION_SECTION_SC_DESKTOP_DetailPrint "Creating Desktop Shortcuts"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_SECTION "Quick Launch Shortcut"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_DetailPrint "Creating Quick Launch Shortcut"
StrCpy $OPTION_SECTION_SC_APPLICATION_Desc "${APPLICATION_NAME} essentials."
StrCpy $OPTION_SECTION_SC_START_MENU_Desc "${APPLICATION_NAME} shortcut."
StrCpy $OPTION_SECTION_SC_DESKTOP_Desc "Desktop shortcut for ${APPLICATION_NAME}."
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_Desc "Quick Launch shortcut for ${APPLICATION_NAME}."
StrCpy $UNINSTALLER_APPDATA_SUBTITLE "Remove ${APPLICATION_NAME}'s data folder from your computer."
StrCpy $UNINSTALLER_APPDATA_LABEL_1 "Do you want to delete ${APPLICATION_NAME}'s data folder?"
StrCpy $UNINSTALLER_APPDATA_LABEL_2 "Leave unchecked to keep the data folder for later use or check to delete the data folder."
StrCpy $UNINSTALLER_APPDATA_CHECKBOX "Yes, delete this data folder."
StrCpy $UNINSTALLER_FILE_Detail "Writing Uninstaller"
StrCpy $UNINSTALLER_REGISTRY_Detail "Writing Installer Registry Keys"
StrCpy $UNINSTALL_MESSAGEBOX "It does not appear that ${APPLICATION_NAME} is installed in the directory '$INSTDIR'.$\r$\nContinue anyway (not recommended)?"
StrCpy $UNINSTALL_ABORT "Uninstall aborted by user"
StrCpy $INIT_NO_QUICK_LAUNCH "Quick Launch Shortcut (N/A)"
StrCpy $INIT_NO_DESKTOP "Desktop Shortcut (overwrites existing)"
StrCpy $UAC_ERROR_ELEVATE "Unable to elevate, error:"
StrCpy $UAC_INSTALLER_REQUIRE_ADMIN "This installer requires admin access, try again"
StrCpy $INIT_INSTALLER_RUNNING "The installer is already running."
StrCpy $UAC_UNINSTALLER_REQUIRE_ADMIN "This uninstaller requires admin access, try again"
StrCpy $INIT_UNINSTALLER_RUNNING "The uninstaller is already running."

View File

@@ -0,0 +1,44 @@
# Auto-generated - do not modify
StrCpy $MUI_FINISHPAGE_SHOWREADME_TEXT_STRING "Zobrazit poznámky k vydání"
StrCpy $ConfirmEndProcess_MESSAGEBOX_TEXT "Nalezen proces(y) ${APPLICATION_EXECUTABLE}, které je nutné ukončit .$\nPřejete si, aby je instalátor za vás ukončil?"
StrCpy $ConfirmEndProcess_KILLING_PROCESSES_TEXT "Ukončuji procesy ${APPLICATION_EXECUTABLE}."
StrCpy $ConfirmEndProcess_KILL_NOT_FOUND_TEXT "Proces k ukončení nebyl nalezen! "
StrCpy $PageReinstall_NEW_Field_1 "Starší verze ${APPLICATION_NAME} je nainstalována na tomto systému. Doporučuje se předem tuto verzi odinstalovat. Zvolte operaci, kterou chcete uskutečnit, a klikněte na tlačítko Další pro pokračování."
StrCpy $PageReinstall_NEW_Field_2 "Odinstalovat před instalací"
StrCpy $PageReinstall_NEW_Field_3 "Neodinstalovávat"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_TITLE "Již nainstalováno"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_SUBTITLE "Zvolte, jak chcete ${APPLICATION_NAME} nainstalovat."
StrCpy $PageReinstall_OLD_Field_1 "Novější verze aplikace ${APPLICATION_NAME} je již nainstalována. Instalace starší verze se nedoporučuje. Pokud opravdu chcete tuto starší verzi nainstalovat, je lepší nejprve odinstalovat současnou verzi. Zvolte požadovanou operaci a klikněte na Další pro pokračování."
StrCpy $PageReinstall_SAME_Field_1 "${APPLICATION_NAME} ${VERSION} je již nainstalována.\nZvolte požadovanou operaci a klikněte na Další pro pokračování."
StrCpy $PageReinstall_SAME_Field_2 "Přidat či znovu instalovat komponenty"
StrCpy $PageReinstall_SAME_Field_3 "Odinstalovat ${APPLICATION_NAME}"
StrCpy $UNINSTALLER_APPDATA_TITLE "Odinstalovat ${APPLICATION_NAME}"
StrCpy $PageReinstall_SAME_MUI_HEADER_TEXT_SUBTITLE "Vyberte možnost údržby k provedení."
StrCpy $SEC_APPLICATION_DETAILS "Instalují se náležitosti ${APPLICATION_NAME}."
StrCpy $OPTION_SECTION_SC_START_MENU_SECTION "Zástupce v Nabídce Start"
StrCpy $OPTION_SECTION_SC_START_MENU_DetailPrint "Přidávám zástupce pro ${APPLICATION_NAME} do Nabídky Start."
StrCpy $OPTION_SECTION_SC_DESKTOP_SECTION "Zástupce na ploše"
StrCpy $OPTION_SECTION_SC_DESKTOP_DetailPrint "Vytvářím zástupce na ploše"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_SECTION "Zástupce v panelu rychlého spuštění"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_DetailPrint "Vytvářím zástupce v panelu rychlého spuštění"
StrCpy $OPTION_SECTION_SC_APPLICATION_Desc "Náležitosti ${APPLICATION_NAME}."
StrCpy $OPTION_SECTION_SC_START_MENU_Desc "Zástupce ${APPLICATION_NAME}."
StrCpy $OPTION_SECTION_SC_DESKTOP_Desc "Zástupce na ploše pro ${APPLICATION_NAME}."
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_Desc "Zástupce rychlého spuštění pro ${APPLICATION_NAME}."
StrCpy $UNINSTALLER_APPDATA_SUBTITLE "Odstraňte složku s daty aplikace ${APPLICATION_NAME} z tohoto počítače."
StrCpy $UNINSTALLER_APPDATA_LABEL_1 "Chcete smazat složku s daty ${APPLICATION_NAME}?"
StrCpy $UNINSTALLER_APPDATA_LABEL_2 "Ponechejte nezaškrtnuté, pokud chcete složku s daty ponechat pro pozdější využití, nebo zaškrtněte, pokud chcete složku smazat."
StrCpy $UNINSTALLER_APPDATA_CHECKBOX "Ano, smazat tuto složku s daty."
StrCpy $UNINSTALLER_FILE_Detail "Zapisuji odinstalátor"
StrCpy $UNINSTALLER_REGISTRY_Detail "Zapisuji instalátor do registrů"
StrCpy $UNINSTALLER_FINISHED_Detail "Dokončeno"
StrCpy $UNINSTALL_MESSAGEBOX "Nezdá se, že ${APPLICATION_NAME} je nainstalována ve složce '$INSTDIR'.\nChcete pokračovat (nedoporučuje se)?"
StrCpy $UNINSTALL_ABORT "Odinstalace zrušena uživatelem"
StrCpy $INIT_NO_QUICK_LAUNCH "Zástupce rychlého spuštění (není k dispozici)"
StrCpy $INIT_NO_DESKTOP "Zástupce na ploše (přepíše existující)"
StrCpy $UAC_ERROR_ELEVATE "Nelze zvýšit, chyba:"
StrCpy $UAC_INSTALLER_REQUIRE_ADMIN "Tento instalátor vyžaduje správcovská oprávnění, opakujte znovu"
StrCpy $INIT_INSTALLER_RUNNING "Instalátor je již spuštěn."
StrCpy $UAC_UNINSTALLER_REQUIRE_ADMIN "Tento odinstalátor vyžaduje správcovská oprávnění, opakujte znovu"
StrCpy $INIT_UNINSTALLER_RUNNING "Odinstalátor je již spuštěn."
StrCpy $SectionGroup_Shortcuts "Zástupci"

View File

@@ -0,0 +1,44 @@
# Auto-generated - do not modify
StrCpy $MUI_FINISHPAGE_SHOWREADME_TEXT_STRING "Toon releaseopmerkingen"
StrCpy $ConfirmEndProcess_MESSAGEBOX_TEXT "Gevonden ${APPLICATION_EXECUTABLE} proces(sen) moet worden gestopt.$\nWilt u dat het installatieprogramma dat voor u doet?"
StrCpy $ConfirmEndProcess_KILLING_PROCESSES_TEXT "Stoppen ${APPLICATION_EXECUTABLE} processen."
StrCpy $ConfirmEndProcess_KILL_NOT_FOUND_TEXT "Het te stoppen proces is niet gevonden!"
StrCpy $PageReinstall_NEW_Field_1 "Er is een oudere versie van ${APPLICATION_NAME} geïnstalleerd op uw systeem. geadviseerd wordt om de huidige versie te de-installeren voordat de nieuwe versie wordt geïnstalleerd. Selecteer de uit te voeren actie en klik op Verder om door te gaan."
StrCpy $PageReinstall_NEW_Field_2 "De-installeren voor installeren"
StrCpy $PageReinstall_NEW_Field_3 "Niet de-installeren"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_TITLE "Reeds geinstalleerd"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_SUBTITLE "Kies hoe u ${APPLICATION_NAME} wilt installeren."
StrCpy $PageReinstall_OLD_Field_1 "Er is al een recentere versie van ${APPLICATION_NAME} geïnstalleerd! Installeren van een oudere versie wordt niet aangeraden. Als u echt de oudere versie wilt installeren, adviseren we de huidige versie eerst te verwijderen. Kies de actie die u wilt uitvoeren en druk op Verder om door te gaan."
StrCpy $PageReinstall_SAME_Field_1 "${APPLICATION_NAME} ${VERSION} is al geïnstalleerd.\nKies de actie die u wilt uitvoeren en druk op Verder om door te gaan."
StrCpy $PageReinstall_SAME_Field_2 "Toevoegen/herinstalleren componenten"
StrCpy $PageReinstall_SAME_Field_3 "De-installeer ${APPLICATION_NAME}"
StrCpy $UNINSTALLER_APPDATA_TITLE "De-installeer ${APPLICATION_NAME}"
StrCpy $PageReinstall_SAME_MUI_HEADER_TEXT_SUBTITLE "Kies de uit te voeren onderhoudsoptie."
StrCpy $SEC_APPLICATION_DETAILS "Installeren ${APPLICATION_NAME} basis."
StrCpy $OPTION_SECTION_SC_START_MENU_SECTION "Startmenu snelkoppeling"
StrCpy $OPTION_SECTION_SC_START_MENU_DetailPrint "Toevoegen snelkoppeling voor ${APPLICATION_NAME} aan het Startmenu."
StrCpy $OPTION_SECTION_SC_DESKTOP_SECTION "Werkblad snelkoppeling"
StrCpy $OPTION_SECTION_SC_DESKTOP_DetailPrint "Aanmaken werkblad snelkoppelingen"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_SECTION "Snelstart snelkoppeling"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_DetailPrint "Aanmaken snelstart snelkoppeling"
StrCpy $OPTION_SECTION_SC_APPLICATION_Desc "${APPLICATION_NAME} basis."
StrCpy $OPTION_SECTION_SC_START_MENU_Desc "${APPLICATION_NAME} snelkoppeling."
StrCpy $OPTION_SECTION_SC_DESKTOP_Desc "Werkblad snelkoppeling voor ${APPLICATION_NAME}."
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_Desc "Snelstart snelkoppeling voor ${APPLICATION_NAME}."
StrCpy $UNINSTALLER_APPDATA_SUBTITLE "Verwijder ${APPLICATION_NAME}'s data map van uw computer."
StrCpy $UNINSTALLER_APPDATA_LABEL_1 "Wilt u de ${APPLICATION_NAME}'s data map verwijderen?"
StrCpy $UNINSTALLER_APPDATA_LABEL_2 "Niet aankruisen om de datamap te bewaren of aankruisen om de datamap te verwijderen."
StrCpy $UNINSTALLER_APPDATA_CHECKBOX "Ja, verwijder deze data map."
StrCpy $UNINSTALLER_FILE_Detail "Wegschrijven Uninstaller"
StrCpy $UNINSTALLER_REGISTRY_Detail "Wegschrijven installer Registersleutels"
StrCpy $UNINSTALLER_FINISHED_Detail "Klaar"
StrCpy $UNINSTALL_MESSAGEBOX "Het lijkt er niet op dat ${APPLICATION_NAME} is geïnstalleerd in de map '$INSTDIR'.$\n$\nToch doorgaan (niet aangeraden)?"
StrCpy $UNINSTALL_ABORT "De-installatie afgebroken door de gebruiker"
StrCpy $INIT_NO_QUICK_LAUNCH "Snelstart snelkoppeling (N/A)"
StrCpy $INIT_NO_DESKTOP "Desktop snelkoppeleng (overschrijft huidige)"
StrCpy $UAC_ERROR_ELEVATE "Kan niet verhogen, fout:"
StrCpy $UAC_INSTALLER_REQUIRE_ADMIN "Dit installatieprogramma vereist administrator rechten. Probeer het opnieuw"
StrCpy $INIT_INSTALLER_RUNNING "De Installer is al gestart."
StrCpy $UAC_UNINSTALLER_REQUIRE_ADMIN "Deze uninstaller vereist administrator toegang, probeer opnieuw"
StrCpy $INIT_UNINSTALLER_RUNNING "De uninstaller is al gestart."
StrCpy $SectionGroup_Shortcuts "Snelkoppelingen"

View File

@@ -0,0 +1,44 @@
# Auto-generated - do not modify
StrCpy $MUI_FINISHPAGE_SHOWREADME_TEXT_STRING "Show release notes"
StrCpy $ConfirmEndProcess_MESSAGEBOX_TEXT "Found ${APPLICATION_EXECUTABLE} process(s) which need to be stopped.$\nDo you want the installer to stop these for you?"
StrCpy $ConfirmEndProcess_KILLING_PROCESSES_TEXT "Killing ${APPLICATION_EXECUTABLE} processes."
StrCpy $ConfirmEndProcess_KILL_NOT_FOUND_TEXT "Process to kill not found!"
StrCpy $PageReinstall_NEW_Field_1 "An older version of ${APPLICATION_NAME} is installed on your system. It is recommended that you uninstall the current version before installing. Select the operation you want to perform and click Next to continue."
StrCpy $PageReinstall_NEW_Field_2 "Uninstall before installing"
StrCpy $PageReinstall_NEW_Field_3 "Do not uninstall"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_TITLE "Already Installed"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_SUBTITLE "Choose how you want to install ${APPLICATION_NAME}."
StrCpy $PageReinstall_OLD_Field_1 "A newer version of ${APPLICATION_NAME} is already installed! It is not recommended that you install an older version. If you really want to install this older version, it is better to uninstall the current version first. Select the operation you want to perform and click Next to continue."
StrCpy $PageReinstall_SAME_Field_1 "${APPLICATION_NAME} ${VERSION} is already installed.\r\nSelect the operation you want to perform and click Next to continue."
StrCpy $PageReinstall_SAME_Field_2 "Add/Reinstall components"
StrCpy $PageReinstall_SAME_Field_3 "Uninstall ${APPLICATION_NAME}"
StrCpy $UNINSTALLER_APPDATA_TITLE "Uninstall ${APPLICATION_NAME}"
StrCpy $PageReinstall_SAME_MUI_HEADER_TEXT_SUBTITLE "Choose the maintenance option to perform."
StrCpy $SEC_APPLICATION_DETAILS "Installing ${APPLICATION_NAME} essentials."
StrCpy $OPTION_SECTION_SC_START_MENU_SECTION "Start Menu Program Shortcut"
StrCpy $OPTION_SECTION_SC_START_MENU_DetailPrint "Adding shortcut for ${APPLICATION_NAME} to the Start Menu."
StrCpy $OPTION_SECTION_SC_DESKTOP_SECTION "Desktop Shortcut"
StrCpy $OPTION_SECTION_SC_DESKTOP_DetailPrint "Creating Desktop Shortcuts"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_SECTION "Quick Launch Shortcut"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_DetailPrint "Creating Quick Launch Shortcut"
StrCpy $OPTION_SECTION_SC_APPLICATION_Desc "${APPLICATION_NAME} essentials."
StrCpy $OPTION_SECTION_SC_START_MENU_Desc "${APPLICATION_NAME} shortcut."
StrCpy $OPTION_SECTION_SC_DESKTOP_Desc "Desktop shortcut for ${APPLICATION_NAME}."
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_Desc "Quick Launch shortcut for ${APPLICATION_NAME}."
StrCpy $UNINSTALLER_APPDATA_SUBTITLE "Remove ${APPLICATION_NAME}'s data folder from your computer."
StrCpy $UNINSTALLER_APPDATA_LABEL_1 "Do you want to delete ${APPLICATION_NAME}'s data folder?"
StrCpy $UNINSTALLER_APPDATA_LABEL_2 "Leave unchecked to keep the data folder for later use or check to delete the data folder."
StrCpy $UNINSTALLER_APPDATA_CHECKBOX "Yes, delete this data folder."
StrCpy $UNINSTALLER_FILE_Detail "Writing Uninstaller"
StrCpy $UNINSTALLER_REGISTRY_Detail "Writing Installer Registry Keys"
StrCpy $UNINSTALLER_FINISHED_Detail "Finished"
StrCpy $UNINSTALL_MESSAGEBOX "It does not appear that ${APPLICATION_NAME} is installed in the directory '$INSTDIR'.$\r$\nContinue anyway (not recommended)?"
StrCpy $UNINSTALL_ABORT "Uninstall aborted by user"
StrCpy $INIT_NO_QUICK_LAUNCH "Quick Launch Shortcut (N/A)"
StrCpy $INIT_NO_DESKTOP "Desktop Shortcut (overwrites existing)"
StrCpy $UAC_ERROR_ELEVATE "Unable to elevate, error:"
StrCpy $UAC_INSTALLER_REQUIRE_ADMIN "This installer requires admin access, try again"
StrCpy $INIT_INSTALLER_RUNNING "The installer is already running."
StrCpy $UAC_UNINSTALLER_REQUIRE_ADMIN "This uninstaller requires admin access, try again"
StrCpy $INIT_UNINSTALLER_RUNNING "The uninstaller is already running."
StrCpy $SectionGroup_Shortcuts "Shortcuts"

View File

@@ -0,0 +1,44 @@
# Auto-generated - do not modify
StrCpy $MUI_FINISHPAGE_SHOWREADME_TEXT_STRING "Näita väljalaske märkmeid"
StrCpy $ConfirmEndProcess_MESSAGEBOX_TEXT "Leitud protsess(id) ${processName} mis tuleks peatada. $\nKas soovid, et installer seiskaks need?"
StrCpy $ConfirmEndProcess_KILLING_PROCESSES_TEXT "${APPLICATION_EXECUTABLE} protsessi lõpetamine."
StrCpy $ConfirmEndProcess_KILL_NOT_FOUND_TEXT "Ei leitud protsessi, mida tappa!"
StrCpy $PageReinstall_NEW_Field_1 "Üks vanem versioon ${APPLICATION_NAME} on juba paigaldatud. On soovitav see eemaldada enne uue paigaldamist. Vali tehtav toiming ning kliki Jätka."
StrCpy $PageReinstall_NEW_Field_2 "Eemalda enne paigaldamist"
StrCpy $PageReinstall_NEW_Field_3 "Ära paigalda"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_TITLE "Juba paigaldatud"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_SUBTITLE "Vali, kuidas sa soovid paigaldada ${APPLICATION_NAME}."
StrCpy $PageReinstall_OLD_Field_1 "Uuem versioon ${APPLICATION_NAME} on juba paigaldatud! Vanema versiooni paigaldus ei ole soovitatav. Kui tõesti tahad paigaldada vanemat versiooni, siis on parem esmalt eemaldada olemasolev. Vali tehtav toiming ning kliki Jätka."
StrCpy $PageReinstall_SAME_Field_1 "${APPLICATION_NAME} ${VERSION} on juba paigaldatud.\nVali tehtav toiming ning kliki Jätka."
StrCpy $PageReinstall_SAME_Field_2 "Lisa/Taaspaigalda komponente"
StrCpy $PageReinstall_SAME_Field_3 "Desinstalli ${APPLICATION_NAME}"
StrCpy $UNINSTALLER_APPDATA_TITLE "Desinstalli ${APPLICATION_NAME}"
StrCpy $PageReinstall_SAME_MUI_HEADER_TEXT_SUBTITLE "Vali hooldustegevus, mida sa soovid sooritada."
StrCpy $SEC_APPLICATION_DETAILS "Paigaldan ${APPLICATION_NAME} põhiosa."
StrCpy $OPTION_SECTION_SC_START_MENU_SECTION "Start Menüü Programmide viit"
StrCpy $OPTION_SECTION_SC_START_MENU_DetailPrint "Lisan ${APPLICATION_NAME} viida Start menüüsse."
StrCpy $OPTION_SECTION_SC_DESKTOP_SECTION "Töölaua otsetee"
StrCpy $OPTION_SECTION_SC_DESKTOP_DetailPrint "Töölaua otseteede loomine"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_SECTION "Kiirvaliku nupp"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_DetailPrint "Kiirvaliku nupu loomine"
StrCpy $OPTION_SECTION_SC_APPLICATION_Desc "${APPLICATION_NAME} põhiosa."
StrCpy $OPTION_SECTION_SC_START_MENU_Desc "${APPLICATION_NAME} otsetee."
StrCpy $OPTION_SECTION_SC_DESKTOP_Desc "Töölaua viit rakendusele ${APPLICATION_NAME}."
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_Desc "Kiirvaliku viit rakendusele ${APPLICATION_NAME}."
StrCpy $UNINSTALLER_APPDATA_SUBTITLE "Eemalda arvutist rakenduse ${APPLICATION_NAME} andmete kataloog."
StrCpy $UNINSTALLER_APPDATA_LABEL_1 "Kas soovid kustutada ${APPLICATION_NAME} andmete kataloogi?"
StrCpy $UNINSTALLER_APPDATA_LABEL_2 "Jäta märkimata säilitamaks andmete kataloog hilisemaks kasutuseks või märgi andmete kataloogi kustutamiseks."
StrCpy $UNINSTALLER_APPDATA_CHECKBOX "Jah, kustuta andmete kaust."
StrCpy $UNINSTALLER_FILE_Detail "Desinstallija kirjutamine"
StrCpy $UNINSTALLER_REGISTRY_Detail "Kirjutan paigaldaja registri võtmeid"
StrCpy $UNINSTALLER_FINISHED_Detail "Lõpetatud"
StrCpy $UNINSTALL_MESSAGEBOX "Ei leia, et ${APPLICATION_NAME} oleks paigaldatud kataloogi '$INSTDIR'.$\n$\nJätkata sellele vaatamata (pole soovitav)?"
StrCpy $UNINSTALL_ABORT "Desinstallimine on kasutaja poolt katkestatud"
StrCpy $INIT_NO_QUICK_LAUNCH "Kiirvaliku viit (N/A)"
StrCpy $INIT_NO_DESKTOP "Ikoon töölaual (kirjutab olemasoleva üle)"
StrCpy $UAC_ERROR_ELEVATE "Ei suuda ülendada õigusi, viga: "
StrCpy $UAC_INSTALLER_REQUIRE_ADMIN "See paigaldaja vajab admini ligipääsu, proovi uuesti"
StrCpy $INIT_INSTALLER_RUNNING "Paigaldaja on juba käimas."
StrCpy $UAC_UNINSTALLER_REQUIRE_ADMIN "See desinstallija vajab admini ligipääsu, proovi uuesti"
StrCpy $INIT_UNINSTALLER_RUNNING "See desinstallija on juba käimas"
StrCpy $SectionGroup_Shortcuts "Viidad"

View File

@@ -0,0 +1,44 @@
# Auto-generated - do not modify
StrCpy $MUI_FINISHPAGE_SHOWREADME_TEXT_STRING "Näytä julkaisutiedot"
StrCpy $ConfirmEndProcess_KILL_NOT_FOUND_TEXT "Tapettavaa prosessia ei löytynyt!"
StrCpy $PageReinstall_NEW_Field_2 "Poista ennen asentamista"
StrCpy $PageReinstall_NEW_Field_3 "Älä poista"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_TITLE "Asennettu jo"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_SUBTITLE "Valitse miten ${APPLICATION_NAME} asennetaan."
StrCpy $PageReinstall_SAME_Field_1 "${APPLICATION_NAME} ${VERSION} on jo asennettu.\nValitse suoritettava toimenpide ja napsauta Seuraava jatkaaksesi."
StrCpy $PageReinstall_SAME_Field_3 "Poista ${APPLICATION_NAME}"
StrCpy $UNINSTALLER_APPDATA_TITLE "Poista ${APPLICATION_NAME}"
StrCpy $PageReinstall_SAME_MUI_HEADER_TEXT_SUBTITLE "Valitse suoritettava huoltotoimenpide."
StrCpy $OPTION_SECTION_SC_START_MENU_SECTION "Käynnistä-valikon pikakuvake"
StrCpy $OPTION_SECTION_SC_START_MENU_DetailPrint "Lisätään ${APPLICATION_NAME}-pikakuvake Käynnistä-valikkoon."
StrCpy $OPTION_SECTION_SC_DESKTOP_SECTION "Työpöydän pikakuvake"
StrCpy $OPTION_SECTION_SC_DESKTOP_DetailPrint "Luodaan työpöydän pikakuvakkeet"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_SECTION "Pikakäynnistyksen pikakuvake"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_DetailPrint "Luodaan pikakuvaketta pikakäynnistykseen"
StrCpy $OPTION_SECTION_SC_START_MENU_Desc "${APPLICATION_NAME}-pikakuvake."
StrCpy $OPTION_SECTION_SC_DESKTOP_Desc "Sovelluksen ${APPLICATION_NAME} työpyötäpikakuvake."
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_Desc "Pikakäynnistyksen pikakuvake sovellukselle ${APPLICATION_NAME}."
StrCpy $UNINSTALLER_APPDATA_SUBTITLE "Poista ${APPLICATION_NAME}-datakansio tietokoneelta."
StrCpy $UNINSTALLER_APPDATA_LABEL_1 "Haluatko varmasti poistaa ${APPLICATION_NAME}-datakansion?"
StrCpy $UNINSTALLER_APPDATA_CHECKBOX "Kyllä, poista tämä datakansio."
StrCpy $UNINSTALLER_REGISTRY_Detail "Kirjoitetaan asennusohjelman rekisteriavaimia"
StrCpy $UNINSTALLER_FINISHED_Detail "Valmis"
StrCpy $UNINSTALL_ABORT "Poistaminen keskeytettiin käyttäjän toimesta"
StrCpy $INIT_NO_DESKTOP "Työpöydän pikakuvake (korvaa nykyinen)"
StrCpy $UAC_INSTALLER_REQUIRE_ADMIN "Tämä asennusohjelma vaatii ylläpitäjän oikeudet, yritä uudelleen."
StrCpy $INIT_INSTALLER_RUNNING "Asennusohjelma on jo käynnissä."
StrCpy $UAC_UNINSTALLER_REQUIRE_ADMIN "Tämä poisto-ohjelma vaatii ylläpitäjän oikeudet, yritä uudelleen."
StrCpy $INIT_UNINSTALLER_RUNNING "Poisto-ohjelma on jo käynnissä."
StrCpy $SectionGroup_Shortcuts "Pikakuvakkeet"
StrCpy $ConfirmEndProcess_MESSAGEBOX_TEXT "Found ${APPLICATION_EXECUTABLE} process(s) which need to be stopped.$\nDo you want the installer to stop these for you?"
StrCpy $ConfirmEndProcess_KILLING_PROCESSES_TEXT "Killing ${APPLICATION_EXECUTABLE} processes."
StrCpy $PageReinstall_NEW_Field_1 "An older version of ${APPLICATION_NAME} is installed on your system. It is recommended that you uninstall the current version before installing. Select the operation you want to perform and click Next to continue."
StrCpy $PageReinstall_OLD_Field_1 "A newer version of ${APPLICATION_NAME} is already installed! It is not recommended that you install an older version. If you really want to install this older version, it is better to uninstall the current version first. Select the operation you want to perform and click Next to continue."
StrCpy $PageReinstall_SAME_Field_2 "Add/Reinstall components"
StrCpy $SEC_APPLICATION_DETAILS "Installing ${APPLICATION_NAME} essentials."
StrCpy $OPTION_SECTION_SC_APPLICATION_Desc "${APPLICATION_NAME} essentials."
StrCpy $UNINSTALLER_APPDATA_LABEL_2 "Leave unchecked to keep the data folder for later use or check to delete the data folder."
StrCpy $UNINSTALLER_FILE_Detail "Writing Uninstaller"
StrCpy $UNINSTALL_MESSAGEBOX "It does not appear that ${APPLICATION_NAME} is installed in the directory '$INSTDIR'.$\r$\nContinue anyway (not recommended)?"
StrCpy $INIT_NO_QUICK_LAUNCH "Quick Launch Shortcut (N/A)"
StrCpy $UAC_ERROR_ELEVATE "Unable to elevate, error:"

View File

@@ -0,0 +1,44 @@
# Auto-generated - do not modify
StrCpy $MUI_FINISHPAGE_SHOWREADME_TEXT_STRING "Montrer les notes de version"
StrCpy $ConfirmEndProcess_MESSAGEBOX_TEXT "Le(s) processus en cours dexécution ${APPLICATION_EXECUTABLE} doit être stoppé afin de poursuivre.$\nVoulez-vous que le programme dinstallation sen charge pour vous ?"
StrCpy $ConfirmEndProcess_KILLING_PROCESSES_TEXT "Fermeture du processus ${APPLICATION_EXECUTABLE}."
StrCpy $ConfirmEndProcess_KILL_NOT_FOUND_TEXT "Les processus à stopper n'ont pas été trouvés."
StrCpy $PageReinstall_NEW_Field_1 "Une vieille version de ${APPLICATION_NAME} est installée sur votre système. Il est recommandé que vous désinstalliez cette version avant l'installation. Sélectionnez l'opération que vous voulez exécuter et cliquez sur Suivant pour continuer."
StrCpy $PageReinstall_NEW_Field_2 "Désinstaller avant d'installer à nouveau"
StrCpy $PageReinstall_NEW_Field_3 "Ne pas désinstaller"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_TITLE "Déjà installée"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_SUBTITLE "Choisissez comment vous voulez installer ${APPLICATION_NAME}."
StrCpy $PageReinstall_OLD_Field_1 "Une version plus récente de ${APPLICATION_NAME} est déjà installée ! Il n'est pas recommandé d'installer une version plus ancienne. Si vous voulez vraiment installer cette version plus ancienne, il est préférable de d'abord désinstaller la version courante. Sélectionnez l'opération que vous voulez exécuter et cliquez sur Suivant pour continuer."
StrCpy $PageReinstall_SAME_Field_1 "${APPLICATION_NAME} ${VERSION} est déjà installée.\nSélectionnez l'opération que vous voulez exécuter et cliquez sur Suivant pour continuer."
StrCpy $PageReinstall_SAME_Field_2 "Ajouter/Réinstaller des composants"
StrCpy $PageReinstall_SAME_Field_3 "Désinstaller ${APPLICATION_NAME}"
StrCpy $UNINSTALLER_APPDATA_TITLE "Désinstaller ${APPLICATION_NAME}"
StrCpy $PageReinstall_SAME_MUI_HEADER_TEXT_SUBTITLE "Choisir l'option de maintenance à appliquer."
StrCpy $SEC_APPLICATION_DETAILS "Installer les essentiels de ${APPLICATION_NAME}."
StrCpy $OPTION_SECTION_SC_START_MENU_SECTION "Raccourci programme du menu Démarrer"
StrCpy $OPTION_SECTION_SC_START_MENU_DetailPrint "Ajouter un raccourci pour ${APPLICATION_NAME} au menu Démarrer."
StrCpy $OPTION_SECTION_SC_DESKTOP_SECTION "Raccourci Bureau"
StrCpy $OPTION_SECTION_SC_DESKTOP_DetailPrint "Créer un raccourci Bureau"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_SECTION "Raccourci de lancement rapide"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_DetailPrint "Créer un raccourci de lancement rapide"
StrCpy $OPTION_SECTION_SC_APPLICATION_Desc "Essentiels de ${APPLICATION_NAME}."
StrCpy $OPTION_SECTION_SC_START_MENU_Desc "Raccourci de ${APPLICATION_NAME}"
StrCpy $OPTION_SECTION_SC_DESKTOP_Desc "Raccourci Bureau de ${APPLICATION_NAME}."
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_Desc "Raccourci de lancement rapide de ${APPLICATION_NAME}."
StrCpy $UNINSTALLER_APPDATA_SUBTITLE "Supprimer de cet ordinateur le dossier de données de ${APPLICATION_NAME}."
StrCpy $UNINSTALLER_APPDATA_LABEL_1 "Voulez-vous supprimer le dossier de données de ${APPLICATION_NAME} ?"
StrCpy $UNINSTALLER_APPDATA_LABEL_2 "Laisser non-coché pour garder le dossier de données pour un usage ultérieur. Cocher pour supprimer le dossier de données."
StrCpy $UNINSTALLER_APPDATA_CHECKBOX "Oui, supprimer ce dossier de données."
StrCpy $UNINSTALLER_FILE_Detail "Écriture du désinstallateur"
StrCpy $UNINSTALLER_REGISTRY_Detail "Écriture des clefs de registre du désinstallateur"
StrCpy $UNINSTALLER_FINISHED_Detail "Terminé"
StrCpy $UNINSTALL_MESSAGEBOX "Il semble que ${APPLICATION_NAME} ne soit pas installée dans le dossier '$INSTDIR'.$\n$\nVoulez-vous poursuivre (non recommandé) ?"
StrCpy $UNINSTALL_ABORT "Désinstallation interrompue par l'utilisateur"
StrCpy $INIT_NO_QUICK_LAUNCH "Raccourci de lancement rapide (N/A)"
StrCpy $INIT_NO_DESKTOP "Raccourci bureau (remplace lexistant)"
StrCpy $UAC_ERROR_ELEVATE "Echec d'élévation, erreur :"
StrCpy $UAC_INSTALLER_REQUIRE_ADMIN "Cet installateur requiert les droits administrateur, essayez à nouveau"
StrCpy $INIT_INSTALLER_RUNNING "Une installation est déjà en cours."
StrCpy $UAC_UNINSTALLER_REQUIRE_ADMIN "Ce désinstallateur requiert les droits administrateur, essayez à nouveau"
StrCpy $INIT_UNINSTALLER_RUNNING "Une désinstallation est déjà en cours."
StrCpy $SectionGroup_Shortcuts "Raccourcis"

View File

@@ -0,0 +1,44 @@
# Auto-generated - do not modify
StrCpy $MUI_FINISHPAGE_SHOWREADME_TEXT_STRING "Amosar as notas de publicación"
StrCpy $ConfirmEndProcess_MESSAGEBOX_TEXT "Atopáronse procesos ${APPLICATION_EXECUTABLE} que teñen que ser detidos.$\nQuere que sexa o instalador quen o(s) deteña?"
StrCpy $ConfirmEndProcess_KILLING_PROCESSES_TEXT "Matando os procesos ${APPLICATION_EXECUTABLE}."
StrCpy $ConfirmEndProcess_KILL_NOT_FOUND_TEXT "Non se atopou o proceso para matalo!"
StrCpy $PageReinstall_NEW_Field_1 "No seu sistema hai instalada unha versión anterior do ${APPLICATION_NAME}. Recomendámoslle que desinstale a versión actual antes de instalar. Seleccione a operación que quere realizar e prema en Seguinte para continuar."
StrCpy $PageReinstall_NEW_Field_2 "Desinstalar antes de instalar"
StrCpy $PageReinstall_NEW_Field_3 "Non desinstalar"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_TITLE "Xa instalado"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_SUBTITLE "Escolla como quere instalar ${APPLICATION_NAME}."
StrCpy $PageReinstall_OLD_Field_1 "Ten instalada unha versión actualizada do ${APPLICATION_NAME}! recomendámoslle que non instale unha versión anterior. Se realmente quere instalar esta versión máis antiga, é preferíbel que desinstale a versión actual antes de instalar. Seleccione a operación que quere realizar e prema en Seguinte para continuar."
StrCpy $PageReinstall_SAME_Field_1 "${APPLICATION_NAME} ${VERSION} xa está instalado.\nSeleccione a operación que que quere realizar e prema en Seguinte para continuar."
StrCpy $PageReinstall_SAME_Field_2 "Engadir/reinstalar compoñentes"
StrCpy $PageReinstall_SAME_Field_3 "Desinstalar ${APPLICATION_NAME}"
StrCpy $UNINSTALLER_APPDATA_TITLE "Desinstalar ${APPLICATION_NAME}"
StrCpy $PageReinstall_SAME_MUI_HEADER_TEXT_SUBTITLE "Escolla a opción de mantemento a realizar."
StrCpy $SEC_APPLICATION_DETAILS "Instalando ${APPLICATION_NAME} esenciais."
StrCpy $OPTION_SECTION_SC_START_MENU_SECTION "Acceso directo ao programa no menú de inicio"
StrCpy $OPTION_SECTION_SC_START_MENU_DetailPrint "Engadindo o acceso directo ao ${APPLICATION_NAME} no menú de inicio"
StrCpy $OPTION_SECTION_SC_DESKTOP_SECTION "Acceso directo no escritorio"
StrCpy $OPTION_SECTION_SC_DESKTOP_DetailPrint "Creando os accesos directos no escritorio"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_SECTION "Acceso de inicio rápido"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_DetailPrint "Creando o acceso de inicio rápido"
StrCpy $OPTION_SECTION_SC_APPLICATION_Desc "${APPLICATION_NAME} esenciais."
StrCpy $OPTION_SECTION_SC_START_MENU_Desc "Acceso directo ao ${APPLICATION_NAME}."
StrCpy $OPTION_SECTION_SC_DESKTOP_Desc "Acceso directo no escritorio para "
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_Desc "Acceso de inicio rápido para ${APPLICATION_NAME}."
StrCpy $UNINSTALLER_APPDATA_SUBTITLE "Retirar o cartafol de datos do ${APPLICATION_NAME} do seu computador."
StrCpy $UNINSTALLER_APPDATA_LABEL_1 "Confirma que quere eliminar o cartafol de datos do ${APPLICATION_NAME}?"
StrCpy $UNINSTALLER_APPDATA_LABEL_2 "Deixeo sen marcar para manter o cartafol de datos para o seu uso posterior ou marqueo para eliminar o cartafol de datos."
StrCpy $UNINSTALLER_APPDATA_CHECKBOX "Si, eliminar este cartafol de datos."
StrCpy $UNINSTALLER_FILE_Detail "Escribindo o desinstalador"
StrCpy $UNINSTALLER_REGISTRY_Detail "Escribindo o instalador nas chaves do rexistro"
StrCpy $UNINSTALLER_FINISHED_Detail "Rematado"
StrCpy $UNINSTALL_MESSAGEBOX "Semella que ${APPLICATION_NAME} non está instalado no directorio «$INSTDIR».$\n$\nContinuar aínda así (non recomendado)?"
StrCpy $UNINSTALL_ABORT "A desinstalación foi interrompida polo usuario."
StrCpy $INIT_NO_QUICK_LAUNCH "Acceso de inicio rápido (n/d)"
StrCpy $INIT_NO_DESKTOP "Atallo no escritorio (sobrescribe o existente)"
StrCpy $UAC_ERROR_ELEVATE "Non foi posíbel elevalo, erro:"
StrCpy $UAC_INSTALLER_REQUIRE_ADMIN "Este instalador require acceso de administrador, tenteo de novo"
StrCpy $INIT_INSTALLER_RUNNING "O instalador xa está en execución."
StrCpy $UAC_UNINSTALLER_REQUIRE_ADMIN "Este desinstalador require acceso de administrador, tenteo de novo"
StrCpy $INIT_UNINSTALLER_RUNNING "O desinstalador xa está en execución."
StrCpy $SectionGroup_Shortcuts "Atallos"

View File

@@ -0,0 +1,44 @@
# Auto-generated - do not modify
StrCpy $MUI_FINISHPAGE_SHOWREADME_TEXT_STRING "Release-Informationen anzeigen"
StrCpy $ConfirmEndProcess_MESSAGEBOX_TEXT "${APPLICATION_EXECUTABLE} Prozess(e) gefunden, die gestoppt werden müssen.$\nWollen Sie, dass der Installer diese nun für Sie stoppt?"
StrCpy $ConfirmEndProcess_KILLING_PROCESSES_TEXT "Stoppe ${APPLICATION_EXECUTABLE} Prozess(e)."
StrCpy $ConfirmEndProcess_KILL_NOT_FOUND_TEXT "Prozess zum Beenden nicht gefunden!"
StrCpy $PageReinstall_NEW_Field_1 "Eine ältere Version von ${APPLICATION_NAME} ist auf Ihrem System installiert. Es wird empfohlen, diese Version zunächst zu entfernen. Wählen Sie unter folgenden Vorgehenweisen und wählen Sie $\"Weiter$\"."
StrCpy $PageReinstall_NEW_Field_2 "Vor der Installation entfernen"
StrCpy $PageReinstall_NEW_Field_3 "Nicht entfernen"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_TITLE "Bereits installiert"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_SUBTITLE "Wählen Sie die Methode, mit der sie ${APPLICATION_NAME} installieren wollen."
StrCpy $PageReinstall_OLD_Field_1 "Eine neuere Version von ${APPLICATION_NAME} ist bereits installiert! Es wird nicht empfohlen, eine ältere Version zu installieren. Wollen Sie dies trotzdem tun, so sollten Sie die aktuelle Version zunächst entfernen. Wählen Sie eine Vorgehensweise und wählen dann $\"Weiter$\"."
StrCpy $PageReinstall_SAME_Field_1 "${APPLICATION_NAME} ${VERSION} ist bereits installiert.\nWählen Sie eine Vorgehensweise und klicken Sie auf $\"Weiter$\"."
StrCpy $PageReinstall_SAME_Field_2 "Komponenten hinzufügen"
StrCpy $PageReinstall_SAME_Field_3 "${APPLICATION_NAME} entfernen"
StrCpy $UNINSTALLER_APPDATA_TITLE "${APPLICATION_NAME} entfernen"
StrCpy $PageReinstall_SAME_MUI_HEADER_TEXT_SUBTITLE "Wählen Sie zur Ausführung die Wartungsoption."
StrCpy $SEC_APPLICATION_DETAILS "Installiere ${APPLICATION_NAME} Basis."
StrCpy $OPTION_SECTION_SC_START_MENU_SECTION "Installiere Verknüpfung im Programmmenü"
StrCpy $OPTION_SECTION_SC_START_MENU_DetailPrint "Füge Verknüpfung für ${APPLICATION_NAME} dem Startmenü hinzu."
StrCpy $OPTION_SECTION_SC_DESKTOP_SECTION "Desktop-Verknüpfung"
StrCpy $OPTION_SECTION_SC_DESKTOP_DetailPrint "Erstellt Desktop-Verknüpfung"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_SECTION "Schnellstart-Verknüpfung"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_DetailPrint "Erstelle Schnellstart-Verknüpfung"
StrCpy $OPTION_SECTION_SC_APPLICATION_Desc "${APPLICATION_NAME} Basis."
StrCpy $OPTION_SECTION_SC_START_MENU_Desc "${APPLICATION_NAME} Verknüfung."
StrCpy $OPTION_SECTION_SC_DESKTOP_Desc "Desktop-Verknüpfung für ${APPLICATION_NAME}."
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_Desc "Schnellstart-Verknüpfung für ${APPLICATION_NAME}."
StrCpy $UNINSTALLER_APPDATA_SUBTITLE "Entferne Datenordner ${APPLICATION_NAME} von der Maschine."
StrCpy $UNINSTALLER_APPDATA_LABEL_1 "Wollen sie den ${APPLICATION_NAME} Datenordner entfernen?"
StrCpy $UNINSTALLER_APPDATA_LABEL_2 "Abwählen, um den Datenordner für spätere Verwendung zu behalten."
StrCpy $UNINSTALLER_APPDATA_CHECKBOX "Ja, Datenordner löschen."
StrCpy $UNINSTALLER_FILE_Detail "Schreibe Uninstaller"
StrCpy $UNINSTALLER_REGISTRY_Detail "Schreibe Registrierungseinträge"
StrCpy $UNINSTALLER_FINISHED_Detail "Abgeschlossen"
StrCpy $UNINSTALL_MESSAGEBOX "Es scheint, als ob ${APPLICATION_NAME} nicht im Verzeichnis '$INSTDIR' installiert ist.$\n$\nTrotzdem fortfahren (nicht empfohlen)?"
StrCpy $UNINSTALL_ABORT "Deinstallation vom Benutzer abgebrochen"
StrCpy $INIT_NO_QUICK_LAUNCH "Schnellstart-Verknüpfung (Nicht verfügbar)"
StrCpy $INIT_NO_DESKTOP "Desktop-Verknüpfung (überschreibt vorhandene)"
StrCpy $UAC_ERROR_ELEVATE "Kann Rechte nicht erhöhen, Fehler:"
StrCpy $UAC_INSTALLER_REQUIRE_ADMIN "Dieses Installationsprogramm erfordert Administrator-Rechte, bitte erneut versuchen"
StrCpy $INIT_INSTALLER_RUNNING "Das Installationsprogramm wird bereits ausgeführt."
StrCpy $UAC_UNINSTALLER_REQUIRE_ADMIN "Das Deinstallationsprogramm erfordert Administrator-Rechte. Bitte erneut versuchen."
StrCpy $INIT_UNINSTALLER_RUNNING "Das Deinstallationsprogramm wird bereits ausgeführt."
StrCpy $SectionGroup_Shortcuts "Verknüpfungen"

View File

@@ -0,0 +1,44 @@
# Auto-generated - do not modify
StrCpy $MUI_FINISHPAGE_SHOWREADME_TEXT_STRING "Εμφάνιση σημειώσεων έκδοσης"
StrCpy $ConfirmEndProcess_MESSAGEBOX_TEXT "Βρέθηκε η(οι) διεργασία(ες) ${APPLICATION_EXECUTABLE} η(οι) οποία(ες) θα πρέπει να τερματιστεί(ούν).$\nΘα θέλατε να την(τις) τερματίσει ο βοηθός εγκατάστασης για εσάς;"
StrCpy $ConfirmEndProcess_KILLING_PROCESSES_TEXT "Τερματισμός διεργασιών ${APPLICATION_EXECUTABLE}."
StrCpy $ConfirmEndProcess_KILL_NOT_FOUND_TEXT "Δεν βρέθηκε διεργασία για βίαιο τερματισμό!"
StrCpy $PageReinstall_NEW_Field_1 "Μια παλαιότερη έκδοση της ${APPLICATION_NAME} είναι εγκατεστημένη στο σύστημά σας. Είναι προτεινόμενο να απεγκαταστήσετε την τρέχουσα έκδοση πριν την εγκατάσταση. Επιλέξτε τη διαδικασία που επιθυμείτε να εκτελέσετε και πατήστε Επόμενο για να συνεχίσετε."
StrCpy $PageReinstall_NEW_Field_2 "Απεγκατάσταση πριν την εγκατάσταση"
StrCpy $PageReinstall_NEW_Field_3 "Να μην απεγκατασταθεί"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_TITLE "Ήδη εγκατεστημένη"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_SUBTITLE "Επιλέξτε πώς θέλετε να εγκαταστήσετε την ${APPLICATION_NAME}."
StrCpy $PageReinstall_OLD_Field_1 "Μια νεώτερη έκδοση της ${APPLICATION_NAME} είναι ήδη εγκατεστημένη! Δεν συνίσταται να εγκαταστείσετε μια παλαιότερη έκδοση. Εάν θέλετε πραγματικά να εγκαταστήσετε αυτήν την παλαιότερη έκδοση, είναι καλύτερο να απεγκαταστήσετε την τρέχουσα έκδοση πρώτα. Επιλέξτε τη διαδικασία που επιθυμείτε να εκτελέσετε και επιλέξτε Επόμενο για να συνεχίσετε."
StrCpy $PageReinstall_SAME_Field_1 "Η ${APPLICATION_NAME} ${VERSION} είναι ήδη εγκατεστημένη.\n\nΕπιλέξτε τη διαδικασία που επιθυμείτε να εκτελέσετε και επιλέξτε Επόμενο για να συνεχίσετε."
StrCpy $PageReinstall_SAME_Field_2 "Προσθήκη/ Επανεγκατάσταση συνιστωσών"
StrCpy $PageReinstall_SAME_Field_3 "Απεγκατάσταση ${APPLICATION_NAME}"
StrCpy $UNINSTALLER_APPDATA_TITLE "Απεγκατάσταση ${APPLICATION_NAME}"
StrCpy $PageReinstall_SAME_MUI_HEADER_TEXT_SUBTITLE "Επιλέξτε την επιλογή συντήρησης που θα πραγματοποιηθεί."
StrCpy $SEC_APPLICATION_DETAILS "Εγκατάσταση βάσης ${APPLICATION_NAME} σε εξέλιξη."
StrCpy $OPTION_SECTION_SC_START_MENU_SECTION "Συντόμευση στο Αρχικό Μενού"
StrCpy $OPTION_SECTION_SC_START_MENU_DetailPrint "Προσθήκη συντόμευσης για την ${APPLICATION_NAME} στο Αρχικό Μενού."
StrCpy $OPTION_SECTION_SC_DESKTOP_SECTION "Συντόμευση επιφάνειας εργασίας"
StrCpy $OPTION_SECTION_SC_DESKTOP_DetailPrint "Δημιουργία Συντομεύσεων στην Επιφάνεια Εργασίας"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_SECTION "Συντόμευση Ταχείας Εκκίνησης"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_DetailPrint "Δημιουργία Συντόμευσης Ταχείας Εκκίνησης"
StrCpy $OPTION_SECTION_SC_APPLICATION_Desc "Βάση ${APPLICATION_NAME}."
StrCpy $OPTION_SECTION_SC_START_MENU_Desc "Συντόμευση ${APPLICATION_NAME}."
StrCpy $OPTION_SECTION_SC_DESKTOP_Desc "Συντόμευση επιφάνειας εργασίας της ${APPLICATION_NAME}."
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_Desc "Συντόμευση Ταχείας Εκκίνησης της ${APPLICATION_NAME}."
StrCpy $UNINSTALLER_APPDATA_SUBTITLE "Αφαίρεση του φακέλου δεδομένων της ${APPLICATION_NAME} από τον υπολογιστή σας."
StrCpy $UNINSTALLER_APPDATA_LABEL_1 "Θέλετε να αφαιρέσετε τον φάκελο δεδομένων της ${APPLICATION_NAME};"
StrCpy $UNINSTALLER_APPDATA_LABEL_2 "Αφήστε κενό για να διατηρήσετε τον φάκελο δεδομένων για μελλοντική χρήση ή επιλέξτε για να διγράψετε το φάκελο δεδομένων."
StrCpy $UNINSTALLER_APPDATA_CHECKBOX "Ναι, διαγραφή αυτού του φακέλου δεδομένων."
StrCpy $UNINSTALLER_FILE_Detail "Εγγραφή Εφαρμογής Απεγκατάστασης"
StrCpy $UNINSTALLER_REGISTRY_Detail "Εγγραφή Κλειδιών μητρώου (Registry) της Εφαρμογής Εγκατάστασης"
StrCpy $UNINSTALLER_FINISHED_Detail "Ολοκληρώθηκε"
StrCpy $UNINSTALL_MESSAGEBOX "Δεν φαίνεται να είναι εγκατεστημένηη η ${APPLICATION_NAME} στον κατάλογο '$INSTDIR'.$\n$\nΣυνέχιση παρ' όλα αυτά (δεν συνίσταται);"
StrCpy $UNINSTALL_ABORT "Η απεγκατάσταση ματαιώθηκε από το χρήστη"
StrCpy $INIT_NO_QUICK_LAUNCH "Συντόμευση Ταχείας Εκκίνησης (Μ/Δ)"
StrCpy $INIT_NO_DESKTOP "Συντόμευση Επιφάνειας Εργασίας (αντικαθιστά υπάρχουσα)"
StrCpy $UAC_ERROR_ELEVATE "Αδυναμία ανύψωσης, σφάλμα:"
StrCpy $UAC_INSTALLER_REQUIRE_ADMIN "Αυτή η εφαρμογή εγκατάστασης απαιτεί πρόσβαση διαχειριστή, δοκιμάστε ξανά"
StrCpy $INIT_INSTALLER_RUNNING "Η εφαρμογή εγκατάστασης λειτουργεί ήδη."
StrCpy $UAC_UNINSTALLER_REQUIRE_ADMIN "Αυτή η εφαρμογή απεγκατάστασης απαιτεί πρόσβαση διαχειριστή, δοκιμάστε ξανά"
StrCpy $INIT_UNINSTALLER_RUNNING "Η εφαρμογή απεγκατάστασης λειτουργεί ήδη."
StrCpy $SectionGroup_Shortcuts "Συντομεύσεις"

View File

@@ -0,0 +1,44 @@
# Auto-generated - do not modify
StrCpy $MUI_FINISHPAGE_SHOWREADME_TEXT_STRING "Kiadási jegyzetek megtekintése"
StrCpy $PageReinstall_NEW_Field_2 "Eltávolítás telepítés előtt"
StrCpy $PageReinstall_NEW_Field_3 "Ne távolítsa el"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_TITLE "Már telepítve"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_SUBTITLE "Válaszd ki, hogy szeretnéd telepíteni a következő alkalmazást ${APPLICATION_NAME}."
StrCpy $PageReinstall_SAME_Field_2 "Komponens hozzáadása/újratelepítése"
StrCpy $PageReinstall_SAME_Field_3 "${APPLICATION_NAME} eltávolítása"
StrCpy $UNINSTALLER_APPDATA_TITLE "${APPLICATION_NAME} eltávolítása"
StrCpy $UNINSTALLER_APPDATA_CHECKBOX "Igen, törölje ezt az adatkönyvtárat."
StrCpy $UNINSTALLER_FINISHED_Detail "Befejezve"
StrCpy $ConfirmEndProcess_MESSAGEBOX_TEXT "Found ${APPLICATION_EXECUTABLE} process(s) which need to be stopped.$\nDo you want the installer to stop these for you?"
StrCpy $ConfirmEndProcess_KILLING_PROCESSES_TEXT "Killing ${APPLICATION_EXECUTABLE} processes."
StrCpy $ConfirmEndProcess_KILL_NOT_FOUND_TEXT "Process to kill not found!"
StrCpy $PageReinstall_NEW_Field_1 "An older version of ${APPLICATION_NAME} is installed on your system. It is recommended that you uninstall the current version before installing. Select the operation you want to perform and click Next to continue."
StrCpy $PageReinstall_OLD_Field_1 "A newer version of ${APPLICATION_NAME} is already installed! It is not recommended that you install an older version. If you really want to install this older version, it is better to uninstall the current version first. Select the operation you want to perform and click Next to continue."
StrCpy $PageReinstall_SAME_Field_1 "${APPLICATION_NAME} ${VERSION} is already installed.\r\nSelect the operation you want to perform and click Next to continue."
StrCpy $PageReinstall_SAME_MUI_HEADER_TEXT_SUBTITLE "Choose the maintenance option to perform."
StrCpy $SEC_APPLICATION_DETAILS "Installing ${APPLICATION_NAME} essentials."
StrCpy $OPTION_SECTION_SC_START_MENU_SECTION "Start Menu Program Shortcut"
StrCpy $OPTION_SECTION_SC_START_MENU_DetailPrint "Adding shortcut for ${APPLICATION_NAME} to the Start Menu."
StrCpy $OPTION_SECTION_SC_DESKTOP_SECTION "Desktop Shortcut"
StrCpy $OPTION_SECTION_SC_DESKTOP_DetailPrint "Creating Desktop Shortcuts"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_SECTION "Quick Launch Shortcut"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_DetailPrint "Creating Quick Launch Shortcut"
StrCpy $OPTION_SECTION_SC_APPLICATION_Desc "${APPLICATION_NAME} essentials."
StrCpy $OPTION_SECTION_SC_START_MENU_Desc "${APPLICATION_NAME} shortcut."
StrCpy $OPTION_SECTION_SC_DESKTOP_Desc "Desktop shortcut for ${APPLICATION_NAME}."
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_Desc "Quick Launch shortcut for ${APPLICATION_NAME}."
StrCpy $UNINSTALLER_APPDATA_SUBTITLE "Remove ${APPLICATION_NAME}'s data folder from your computer."
StrCpy $UNINSTALLER_APPDATA_LABEL_1 "Do you want to delete ${APPLICATION_NAME}'s data folder?"
StrCpy $UNINSTALLER_APPDATA_LABEL_2 "Leave unchecked to keep the data folder for later use or check to delete the data folder."
StrCpy $UNINSTALLER_FILE_Detail "Writing Uninstaller"
StrCpy $UNINSTALLER_REGISTRY_Detail "Writing Installer Registry Keys"
StrCpy $UNINSTALL_MESSAGEBOX "It does not appear that ${APPLICATION_NAME} is installed in the directory '$INSTDIR'.$\r$\nContinue anyway (not recommended)?"
StrCpy $UNINSTALL_ABORT "Uninstall aborted by user"
StrCpy $INIT_NO_QUICK_LAUNCH "Quick Launch Shortcut (N/A)"
StrCpy $INIT_NO_DESKTOP "Desktop Shortcut (overwrites existing)"
StrCpy $UAC_ERROR_ELEVATE "Unable to elevate, error:"
StrCpy $UAC_INSTALLER_REQUIRE_ADMIN "This installer requires admin access, try again"
StrCpy $INIT_INSTALLER_RUNNING "The installer is already running."
StrCpy $UAC_UNINSTALLER_REQUIRE_ADMIN "This uninstaller requires admin access, try again"
StrCpy $INIT_UNINSTALLER_RUNNING "The uninstaller is already running."
StrCpy $SectionGroup_Shortcuts "Shortcuts"

View File

@@ -0,0 +1,44 @@
# Auto-generated - do not modify
StrCpy $MUI_FINISHPAGE_SHOWREADME_TEXT_STRING "Mostra le note di rilascio"
StrCpy $ConfirmEndProcess_MESSAGEBOX_TEXT "Trovati ${APPLICATION_EXECUTABLE} processi che dovrebbero essere fermati.$\nVuoi che il programma di installazione li fermi al posto tuo?"
StrCpy $ConfirmEndProcess_KILLING_PROCESSES_TEXT "Sto terminando ${APPLICATION_EXECUTABLE} processi."
StrCpy $ConfirmEndProcess_KILL_NOT_FOUND_TEXT "Il processo da terminare non è stato trovato!"
StrCpy $PageReinstall_NEW_Field_1 "Una versione più datata di ${APPLICATION_NAME} è installata sul tuo sistema. Si consiglia di disinstallare la versione attuale prima di installare. Seleziona l'operazione da eseguire e fai clic su Avanti per continuare."
StrCpy $PageReinstall_NEW_Field_2 "Disinstalla prima di installare"
StrCpy $PageReinstall_NEW_Field_3 "Non disinstallare"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_TITLE "Già installato"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_SUBTITLE "Scegli come desideri installare ${APPLICATION_NAME}."
StrCpy $PageReinstall_OLD_Field_1 "Una versione più recente di ${APPLICATION_NAME} è già installata! Non è consigliabile installare una versione più vecchia. Se vuoi davvero installare una versione più vecchia, ti consigliamo di rimuovere prima la versione attuale. Scegli l'operazione da eseguire e fai clic su Avanti per continuare."
StrCpy $PageReinstall_SAME_Field_1 "${APPLICATION_NAME} ${VERSION} è già installato.\nSeleziona l'operazione che desideri eseguire e fai clic su Avanti per continuare."
StrCpy $PageReinstall_SAME_Field_2 "Aggiungi/Reinstalla i componenti"
StrCpy $PageReinstall_SAME_Field_3 "Disinstalla ${APPLICATION_NAME}"
StrCpy $UNINSTALLER_APPDATA_TITLE "Disinstalla ${APPLICATION_NAME}"
StrCpy $PageReinstall_SAME_MUI_HEADER_TEXT_SUBTITLE "Scegli l'opzione di manutenzione da eseguire."
StrCpy $SEC_APPLICATION_DETAILS "Installazione degli elementi fondamentali di ${APPLICATION_NAME}."
StrCpy $OPTION_SECTION_SC_START_MENU_SECTION "Scorciatoia di programma menu Start"
StrCpy $OPTION_SECTION_SC_START_MENU_DetailPrint "Aggiunta della scorciatoia per ${APPLICATION_NAME} al menu Start."
StrCpy $OPTION_SECTION_SC_DESKTOP_SECTION "Scorciatoia del desktop"
StrCpy $OPTION_SECTION_SC_DESKTOP_DetailPrint "Creazione delle scorciatoie del desktop"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_SECTION "Scorciatoia dell'avvio veloce"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_DetailPrint "Creazione della scorciatoia dell'avvio veloce"
StrCpy $OPTION_SECTION_SC_APPLICATION_Desc "Oggetti fondamentali di ${APPLICATION_NAME}"
StrCpy $OPTION_SECTION_SC_START_MENU_Desc "Scorciatoia di ${APPLICATION_NAME}"
StrCpy $OPTION_SECTION_SC_DESKTOP_Desc "Scorciatoia del desktop per ${APPLICATION_NAME}."
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_Desc "Scorciatoia per ${APPLICATION_NAME} dell'avvio veloce."
StrCpy $UNINSTALLER_APPDATA_SUBTITLE "Rimuovi la cartella dei dati di ${APPLICATION_NAME} dal tuo computer."
StrCpy $UNINSTALLER_APPDATA_LABEL_1 "Vuoi eliminare la cartella dei dati di ${APPLICATION_NAME}?"
StrCpy $UNINSTALLER_APPDATA_LABEL_2 "Lasciala smarcata per conservare la cartella dei dati per usi futuri o marcala per eliminarla."
StrCpy $UNINSTALLER_APPDATA_CHECKBOX "Sì, elimina questa cartella di dati."
StrCpy $UNINSTALLER_FILE_Detail "Creazione del programma di disinstallazione"
StrCpy $UNINSTALLER_REGISTRY_Detail "Scrittura delle chiavi di registro del programma di installazione"
StrCpy $UNINSTALLER_FINISHED_Detail "Completato"
StrCpy $UNINSTALL_MESSAGEBOX "Non sembra che ${APPLICATION_NAME} sia installato nella cartella '$INSTDIR'.$\nVuoi continuare comunque (non consigliato)?"
StrCpy $UNINSTALL_ABORT "Disinstallazione interrotta dall'utente"
StrCpy $INIT_NO_QUICK_LAUNCH "Scorciatoia dell'avvio veloce (N/D)"
StrCpy $INIT_NO_DESKTOP "Scorciatoia del desktop (sovrascrivi se esistente)"
StrCpy $UAC_ERROR_ELEVATE "Impossibile elevare, errore:"
StrCpy $UAC_INSTALLER_REQUIRE_ADMIN "Il programma di installazione necessita delle credenziali di amministrazione, riprova"
StrCpy $INIT_INSTALLER_RUNNING "Il programma di installazione è già in esecuzione."
StrCpy $UAC_UNINSTALLER_REQUIRE_ADMIN "Il programma di disinstallazione necessita delle credenziali di amministrazione, riprova"
StrCpy $INIT_UNINSTALLER_RUNNING "Il programma di disinstallazione è già in esecuzione."
StrCpy $SectionGroup_Shortcuts "Scorciatoie"

View File

@@ -0,0 +1,44 @@
# Auto-generated - do not modify
StrCpy $MUI_FINISHPAGE_SHOWREADME_TEXT_STRING "リリースノートを表示"
StrCpy $ConfirmEndProcess_MESSAGEBOX_TEXT "${APPLICATION_EXECUTABLE} のプロセスを終了する必要があります。\nインストーラーがそのプロセスを停止してもよろしいですか"
StrCpy $ConfirmEndProcess_KILLING_PROCESSES_TEXT "${APPLICATION_EXECUTABLE} プロセスを停止しています。"
StrCpy $ConfirmEndProcess_KILL_NOT_FOUND_TEXT "終了するプロセスがありません"
StrCpy $PageReinstall_NEW_Field_1 "システムに ${APPLICATION_NAME} の旧バージョンがインストールされています。\n旧バージョンをアンインストールし、最新バージョンをインストールするのをお勧めします。\nオペレーションを選択し、次へをクリックする。"
StrCpy $PageReinstall_NEW_Field_2 "インストール前にアンインストールする"
StrCpy $PageReinstall_NEW_Field_3 "アンインストールしない"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_TITLE "インストール済"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_SUBTITLE "${APPLICATION_NAME} のインストール方法を選択する"
StrCpy $PageReinstall_OLD_Field_1 "${APPLICATION_NAME} の最新バージョンがすでにインストールされています。\n旧バージョンのインストールはお勧めしません。旧バージョンのインストールが本当に必要な場合は、まず最新バージョンをアンインストールしてから、旧バージョンをインストールしてください。\nオペレーションを選択し、次へをクリックする。"
StrCpy $PageReinstall_SAME_Field_1 "${APPLICATION_NAME} ${VERSION} はすでにインストールされています。\n実行するオペレーションを選択し、次へをクリックする"
StrCpy $PageReinstall_SAME_Field_2 "追加/再インストールコンポーネント"
StrCpy $PageReinstall_SAME_Field_3 "${APPLICATION_NAME} をアンインストール"
StrCpy $UNINSTALLER_APPDATA_TITLE "${APPLICATION_NAME} をアンインストール"
StrCpy $PageReinstall_SAME_MUI_HEADER_TEXT_SUBTITLE "実行するには、メンテナンスオプションを選択してください。"
StrCpy $SEC_APPLICATION_DETAILS "${APPLICATION_NAME} の重要なパッケージをインストール中"
StrCpy $OPTION_SECTION_SC_START_MENU_SECTION "スタートメニューショートカット"
StrCpy $OPTION_SECTION_SC_START_MENU_DetailPrint "スタートメニューに${APPLICATION_NAME} のショートカットの追加"
StrCpy $OPTION_SECTION_SC_DESKTOP_SECTION "デスクトップショートカット"
StrCpy $OPTION_SECTION_SC_DESKTOP_DetailPrint "デスクトップショートカット作成"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_SECTION "クイック起動ショートカット"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_DetailPrint "クイック起動ショートカットを作成"
StrCpy $OPTION_SECTION_SC_APPLICATION_Desc "${APPLICATION_NAME} の重要なパッケージ"
StrCpy $OPTION_SECTION_SC_START_MENU_Desc "${APPLICATION_NAME} のショートカット"
StrCpy $OPTION_SECTION_SC_DESKTOP_Desc "${APPLICATION_NAME} のデスクトップショートカット"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_Desc "${APPLICATION_NAME} のクイック起動ショートカット"
StrCpy $UNINSTALLER_APPDATA_SUBTITLE "${APPLICATION_NAME} のデータフォルダーを削除する"
StrCpy $UNINSTALLER_APPDATA_LABEL_1 "${APPLICATION_NAME} のデータフォルダーを削除しますか?"
StrCpy $UNINSTALLER_APPDATA_LABEL_2 "データフォルダーを削除する場合、チェックボックスをオンにする。\nまたは、データフォルダーを保存する場合、チェックボックスをオフにする。"
StrCpy $UNINSTALLER_APPDATA_CHECKBOX "はい。データフォルダーを削除します。"
StrCpy $UNINSTALLER_FILE_Detail "アンインストーラーを書き込み"
StrCpy $UNINSTALLER_REGISTRY_Detail "インストーラーのレジストリキーの書き込み"
StrCpy $UNINSTALLER_FINISHED_Detail "終了"
StrCpy $UNINSTALL_MESSAGEBOX "${APPLICATION_NAME} は'$INSTDIR'.$$  ディレクトリにインストールされていません。エラーを無視し、進みますか (非推奨)"
StrCpy $UNINSTALL_ABORT "アンインストールは、ユーザーによって中止されました。"
StrCpy $INIT_NO_QUICK_LAUNCH "クイック起動ショートカット(N/A)"
StrCpy $INIT_NO_DESKTOP "デスクトップにショートカットを作成(すでにある場合は上書き)"
StrCpy $UAC_ERROR_ELEVATE "エスカレーション不可です、エラー:"
StrCpy $UAC_INSTALLER_REQUIRE_ADMIN "このインストーラーは、管理者権限が必要です。インストールを再試行してください。"
StrCpy $INIT_INSTALLER_RUNNING "インストーラーは、すでに起動しています。"
StrCpy $UAC_UNINSTALLER_REQUIRE_ADMIN "このアンインストーラーは、管理者権限が必要です。アンインストールを再試行してください。"
StrCpy $INIT_UNINSTALLER_RUNNING "アンインストーラーは、すでに起動しています。"
StrCpy $SectionGroup_Shortcuts "ショートカット"

View File

@@ -0,0 +1,44 @@
# Auto-generated - do not modify
StrCpy $MUI_FINISHPAGE_SHOWREADME_TEXT_STRING "Pokaż informacje o wydaniu"
StrCpy $ConfirmEndProcess_MESSAGEBOX_TEXT "Proces ${APPLICATION_EXECUTABLE} musi zostać zatrzymany $\nCzy chcesz aby instalator zatrzymał je dla ciebie?"
StrCpy $ConfirmEndProcess_KILLING_PROCESSES_TEXT "Zamykam proces ${APPLICATION_EXECUTABLE}."
StrCpy $ConfirmEndProcess_KILL_NOT_FOUND_TEXT "Nie znaleziono procesu!"
StrCpy $PageReinstall_NEW_Field_1 "W Twoim systemie jest zainstalowana starsza wersja ${APPLICATION_NAME}. Zalecane jest jej usunięcie przed dalszą instalacją. Wybierz operację którą chcesz wykonać i naciśnij przycisk Dalej."
StrCpy $PageReinstall_NEW_Field_2 "Odinstaluj przed instalacja"
StrCpy $PageReinstall_NEW_Field_3 "Nie usuwaj "
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_TITLE "Już zainstalowane"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_SUBTITLE "Wybierz jak chcesz zainstalować ${APPLICATION_NAME}."
StrCpy $PageReinstall_OLD_Field_1 "Zainstalowana jest nowsza wersja ${APPLICATION_NAME}! Niezalecane jest instalowanie starszej wersji. Jeśli naprawdę chcesz zainstalować starszą wersję lepiej najpierw odinstalować obecną aplikację. Wybierz operację którą chcesz wykonać i naciśnij przycisk Dalej."
StrCpy $PageReinstall_SAME_Field_1 "${APPLICATION_NAME} ${VERSION} jest już zainstalowany.\nWybierz operację którą chcesz wykonać i naciśnij przycisk Dalej."
StrCpy $PageReinstall_SAME_Field_2 "Doda/Przeinstaluj komponenty"
StrCpy $PageReinstall_SAME_Field_3 "Odinstaluj ${APPLICATION_NAME}"
StrCpy $UNINSTALLER_APPDATA_TITLE "Odinstaluj ${APPLICATION_NAME}"
StrCpy $PageReinstall_SAME_MUI_HEADER_TEXT_SUBTITLE "Wybierz sposób utrzymywania."
StrCpy $SEC_APPLICATION_DETAILS "Instaluje niezbędne pliki ${APPLICATION_NAME}."
StrCpy $OPTION_SECTION_SC_START_MENU_SECTION "Skrót w Menu Start"
StrCpy $OPTION_SECTION_SC_START_MENU_DetailPrint "Dodaję skrót ${APPLICATION_NAME} w Menu Start."
StrCpy $OPTION_SECTION_SC_DESKTOP_SECTION "Skrót na Pulpicie"
StrCpy $OPTION_SECTION_SC_DESKTOP_DetailPrint "Utworzy skrót na Pulpicie"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_SECTION "Skrót na Pasku Zadań"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_DetailPrint "Tworzę skrót na Pasku Zadań"
StrCpy $OPTION_SECTION_SC_APPLICATION_Desc "Niezbędne pliki ${APPLICATION_NAME}."
StrCpy $OPTION_SECTION_SC_START_MENU_Desc "Skrót ${APPLICATION_NAME}."
StrCpy $OPTION_SECTION_SC_DESKTOP_Desc "Skrót ${APPLICATION_NAME} na pulpicie."
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_Desc "Skrót ${APPLICATION_NAME} na Pasku Zadań."
StrCpy $UNINSTALLER_APPDATA_SUBTITLE "Usuń folder z danymi ${APPLICATION_NAME} z komputera."
StrCpy $UNINSTALLER_APPDATA_LABEL_1 "Czy chcesz usunąć folder z danymi ${APPLICATION_NAME}?"
StrCpy $UNINSTALLER_APPDATA_LABEL_2 "Zostaw niezaznaczone aby zachować folder z danymi lub zaznacz aby go usunąć."
StrCpy $UNINSTALLER_APPDATA_CHECKBOX "Tak, usuń folder z danymi."
StrCpy $UNINSTALLER_FILE_Detail "Tworzę dezinstalator"
StrCpy $UNINSTALLER_REGISTRY_Detail "Tworzę wpisy w rejestrze"
StrCpy $UNINSTALLER_FINISHED_Detail "Zakończony"
StrCpy $UNINSTALL_MESSAGEBOX "Nie wygląda na to że ${APPLICATION_NAME} jest zainstalowane w katalogu '$INSTDIR'.$$ Kontynuować mimo tego (nie zalecane)?"
StrCpy $UNINSTALL_ABORT "Dezinstalacja przerwana przez użytkownika"
StrCpy $INIT_NO_QUICK_LAUNCH "Skrót na Pasku Zadań (NIE DOTYCZY)"
StrCpy $INIT_NO_DESKTOP "Skróty na pulpicie (nadpisuje obecne)"
StrCpy $UAC_ERROR_ELEVATE "Niemożność podniesienia, błąd:"
StrCpy $UAC_INSTALLER_REQUIRE_ADMIN "Ten instalator potrzebuje uprawnień administratora, spróbuj ponownie"
StrCpy $INIT_INSTALLER_RUNNING "Instalator już jest uruchomiony."
StrCpy $UAC_UNINSTALLER_REQUIRE_ADMIN "Ten dezinstalator potrzebuje uprawnień administratora, spróbuj ponownie"
StrCpy $INIT_UNINSTALLER_RUNNING "Dezinstalator już jest uruchomiony."
StrCpy $SectionGroup_Shortcuts "Skróty"

View File

@@ -0,0 +1,44 @@
# Auto-generated - do not modify
StrCpy $MUI_FINISHPAGE_SHOWREADME_TEXT_STRING "Mostrar notas de lançamento"
StrCpy $ConfirmEndProcess_MESSAGEBOX_TEXT "Encontrados processos ${APPLICATION_EXECUTABLE} que precisam de ser parados.$\nDeseja que o instalador os pare ?"
StrCpy $ConfirmEndProcess_KILLING_PROCESSES_TEXT "A terminar processos ${APPLICATION_EXECUTABLE}."
StrCpy $ConfirmEndProcess_KILL_NOT_FOUND_TEXT "Processo para terminar não foi encontrado!"
StrCpy $PageReinstall_NEW_Field_1 "Está instalada uma versão anterior de ${APPLICATION_NAME} no seu sistema. Recomenda-se que desinstale primeiro a versão atual antes de instalar. Selecione a operação que pretende fazer, e clique Seguinte para continuar."
StrCpy $PageReinstall_NEW_Field_2 "Desinstalar antes de instalar"
StrCpy $PageReinstall_NEW_Field_3 "Não desinstalar"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_TITLE "Já instalado"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_SUBTITLE "Escolha como pretende instalar ${APPLICATION_NAME}."
StrCpy $PageReinstall_OLD_Field_1 "Já esta instalada uma nova versão dfe ${APPLICATION_NAME}! Não se recomenda instalar uma versão anterior. Se quer mesmo instalar esta versão mais antiga, é melhor desinstalar primeiro a versão atual. Selecione a operação que pretende fazer e clique Seguinte para continuar."
StrCpy $PageReinstall_SAME_Field_1 "${APPLICATION_NAME} ${VERSION} já está instalado.\nSelecione a operação que deseja fazer, e clique Seguinte para continuar."
StrCpy $PageReinstall_SAME_Field_2 "Adicionar/Reinstalar Componentes"
StrCpy $PageReinstall_SAME_Field_3 "Desinstalar ${APPLICATION_NAME}"
StrCpy $UNINSTALLER_APPDATA_TITLE "Desinstalar ${APPLICATION_NAME}"
StrCpy $PageReinstall_SAME_MUI_HEADER_TEXT_SUBTITLE "Escolha a opção de manutenção a fazer."
StrCpy $SEC_APPLICATION_DETAILS "A instalar o essencial de ${APPLICATION_NAME}."
StrCpy $OPTION_SECTION_SC_START_MENU_SECTION "Atalho do progama no Menu Inicial"
StrCpy $OPTION_SECTION_SC_START_MENU_DetailPrint "A adicionar o atalho de ${APPLICATION_NAME} ao Menu Inicial."
StrCpy $OPTION_SECTION_SC_DESKTOP_SECTION "Atalho da área de trabalho"
StrCpy $OPTION_SECTION_SC_DESKTOP_DetailPrint "A criar atalhos da área de trabalho"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_SECTION "Atalho de início rápido"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_DetailPrint "A criar atalho de início rápido"
StrCpy $OPTION_SECTION_SC_APPLICATION_Desc "O essencial de ${APPLICATION_NAME}."
StrCpy $OPTION_SECTION_SC_START_MENU_Desc "Atalho de ${APPLICATION_NAME}."
StrCpy $OPTION_SECTION_SC_DESKTOP_Desc "Atalho no ambiente de trabalho de ${APPLICATION_NAME}."
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_Desc "Atalho de início rápido de ${APPLICATION_NAME}."
StrCpy $UNINSTALLER_APPDATA_SUBTITLE "Remover a pasta de dados de ${APPLICATION_NAME} do seu computador."
StrCpy $UNINSTALLER_APPDATA_LABEL_1 "Deseja remover a pasta de dados de ${APPLICATION_NAME}?"
StrCpy $UNINSTALLER_APPDATA_LABEL_2 "Não assinale para manter a pasta de dados para uso mais tarde, ou assinale para apagar a pasta de dados."
StrCpy $UNINSTALLER_APPDATA_CHECKBOX "Sim, remover esta pasta."
StrCpy $UNINSTALLER_FILE_Detail "A escrever o Desinstalador"
StrCpy $UNINSTALLER_REGISTRY_Detail "A escrever chaves de registo do instalador"
StrCpy $UNINSTALLER_FINISHED_Detail "Terminado"
StrCpy $UNINSTALL_MESSAGEBOX "Não parece que ${APPLICATION_NAME} esteja instalado no diretório '$INSTDIR'.$\n$\nContinuar na mesma (não recomendado)?"
StrCpy $UNINSTALL_ABORT "Desinstalação cancelada pelo utilizador"
StrCpy $INIT_NO_QUICK_LAUNCH "Atalho de Início Rápido (N/A)"
StrCpy $INIT_NO_DESKTOP "Atalho do Ambiente de Trabalho (sobrepõe o existente)"
StrCpy $UAC_ERROR_ELEVATE "Incapaz de elevar, erro:"
StrCpy $UAC_INSTALLER_REQUIRE_ADMIN "Este instalador precisa de permissões de administrador, tente novamente"
StrCpy $INIT_INSTALLER_RUNNING "O instalador já está a correr."
StrCpy $UAC_UNINSTALLER_REQUIRE_ADMIN "Este desinstalador precisa de acesso de administrador; tente novamente"
StrCpy $INIT_UNINSTALLER_RUNNING "O desinstalador já está a correr."
StrCpy $SectionGroup_Shortcuts "Atalhos"

View File

@@ -0,0 +1,44 @@
# Auto-generated - do not modify
StrCpy $MUI_FINISHPAGE_SHOWREADME_TEXT_STRING "Mostrar notas de lançamento"
StrCpy $ConfirmEndProcess_MESSAGEBOX_TEXT "Encontrados ${APPLICATION_EXECUTABLE} processo(s) que precisam ser interrompidos.$\nVocê quer que o instalador pare esses processos para você?"
StrCpy $ConfirmEndProcess_KILLING_PROCESSES_TEXT "Desativando ${APPLICATION_EXECUTABLE} processos."
StrCpy $ConfirmEndProcess_KILL_NOT_FOUND_TEXT "Processo para eliminar não encontrado!"
StrCpy $PageReinstall_NEW_Field_1 "Uma versão mais antiga de ${APPLICATION_NAME} está instalado em seu sistema. É recomendado que você desinstale a versão atual antes de instalar. Selecione a operação que deseja executar e clique em Avançar para continuar."
StrCpy $PageReinstall_NEW_Field_2 "Desinstalar antes de instalar"
StrCpy $PageReinstall_NEW_Field_3 "Não desinstale"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_TITLE "Já instalado"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_SUBTITLE "Escolha como você deseja instalar ${APPLICATION_NAME}."
StrCpy $PageReinstall_OLD_Field_1 "A versão mais recente do ${APPLICATION_NAME} já está instalado! Não é recomendado que você instale uma versão mais antiga. Se você realmente deseja instalar esta versão mais antiga, é melhor desinstalar a versão atual primeiro. Selecione a operação que deseja executar e clique em Avançar para continuar."
StrCpy $PageReinstall_SAME_Field_1 "${APPLICATION_NAME} ${version} já está instalado. \nSelecione a operação que deseja executar e clique em Avançar para continuar."
StrCpy $PageReinstall_SAME_Field_2 "Adicionar/reinstalar componentes"
StrCpy $PageReinstall_SAME_Field_3 "Desinstalar ${APPLICATION_NAME}"
StrCpy $UNINSTALLER_APPDATA_TITLE "Desinstalar ${APPLICATION_NAME}"
StrCpy $PageReinstall_SAME_MUI_HEADER_TEXT_SUBTITLE "Escolha a opção de realizar manutenção."
StrCpy $SEC_APPLICATION_DETAILS "Instalando ${APPLICATION_NAME} fundamentos."
StrCpy $OPTION_SECTION_SC_START_MENU_SECTION "Menu Iniciar Programa Atalho"
StrCpy $OPTION_SECTION_SC_START_MENU_DetailPrint "Adicionando atalho para ${APPLICATION_NAME} para o Menu Iniciar."
StrCpy $OPTION_SECTION_SC_DESKTOP_SECTION "Atalho Desktop"
StrCpy $OPTION_SECTION_SC_DESKTOP_DetailPrint "Criando Atalhos de Desktop"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_SECTION "Atalho Rápido"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_DetailPrint "Criando Atalho Rápido"
StrCpy $OPTION_SECTION_SC_APPLICATION_Desc "${APPLICATION_NAME} esseciais."
StrCpy $OPTION_SECTION_SC_START_MENU_Desc "${APPLICATION_NAME} atalho."
StrCpy $OPTION_SECTION_SC_DESKTOP_Desc "Atalho Desktop para ${APPLICATION_NAME}."
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_Desc "Atalho Rápido para ${APPLICATION_NAME}."
StrCpy $UNINSTALLER_APPDATA_SUBTITLE "Remover ${APPLICATION_NAME} pasta de dados de seu computador."
StrCpy $UNINSTALLER_APPDATA_LABEL_1 "Você quer apagar ${APPLICATION_NAME} 's pasta de dados?"
StrCpy $UNINSTALLER_APPDATA_LABEL_2 "Deixe desmarcada para manter a pasta de dados para uso posterior ou cheque para excluir a pasta de dados."
StrCpy $UNINSTALLER_APPDATA_CHECKBOX "Sim, excluir essa pasta de dados."
StrCpy $UNINSTALLER_FILE_Detail "Escrevendo Desinstalador"
StrCpy $UNINSTALLER_REGISTRY_Detail "Escrevendo Chaves de Registro do Inslalador"
StrCpy $UNINSTALLER_FINISHED_Detail "Finalizado"
StrCpy $UNINSTALL_MESSAGEBOX "Não parece que ${APPLICATION_NAME} está instalado no diretório '$INSTDIR'.$\n$\nContinuar assim mesmo (não recomendado)?"
StrCpy $UNINSTALL_ABORT "Desinstalação abortada pelo usuário"
StrCpy $INIT_NO_QUICK_LAUNCH "Atalho de Inicialização Rápida (N/A)"
StrCpy $INIT_NO_DESKTOP "Atalho Desktop (substituições existente)"
StrCpy $UAC_ERROR_ELEVATE "Incapaz de elevar, erro:"
StrCpy $UAC_INSTALLER_REQUIRE_ADMIN "Este programa de instalação requer acesso de administrador, tente novamente"
StrCpy $INIT_INSTALLER_RUNNING "O instalador já está em execução."
StrCpy $UAC_UNINSTALLER_REQUIRE_ADMIN "Este desinstalador requer acesso de administrador, tente novamente"
StrCpy $INIT_UNINSTALLER_RUNNING "O desinstalador já está em execução."
StrCpy $SectionGroup_Shortcuts "Atalhos"

View File

@@ -0,0 +1,44 @@
# Auto-generated - do not modify
StrCpy $MUI_FINISHPAGE_SHOWREADME_TEXT_STRING "Показать примечания к выпуску"
StrCpy $ConfirmEndProcess_MESSAGEBOX_TEXT "Обнаружены процес(сы) ${APPLICATION_EXECUTABLE}, которые должны быть остановлены.$\nХотите программа установки сделает это самостоятельно?"
StrCpy $ConfirmEndProcess_KILLING_PROCESSES_TEXT "Завершение процессов ${APPLICATION_EXECUTABLE}."
StrCpy $ConfirmEndProcess_KILL_NOT_FOUND_TEXT "Не найдены процессы, которые нужно завершить!"
StrCpy $PageReinstall_NEW_Field_1 "Обнаружена более старая версия ${APPLICATION_NAME}. Рекомендуется удалить её перед установкой. Выберите желаемое действие и нажмите $\"Далее$\"."
StrCpy $PageReinstall_NEW_Field_2 "Удалить перед установкой"
StrCpy $PageReinstall_NEW_Field_3 "Не устанавливать"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_TITLE "Уже установлено"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_SUBTITLE "Выберите, как вы хотите установить ${APPLICATION_NAME}."
StrCpy $PageReinstall_OLD_Field_1 "Новая версия ${APPLICATION_NAME} уже установлена​​! Не рекомендуется устанавливать старую версию. Если вы действительно хотите, чтобы устанавливать старую версию, лучше удалить текущую версию. Выберите операцию, которую необходимо выполнить, и нажмите Далее, чтобы продолжить."
StrCpy $PageReinstall_SAME_Field_1 "${APPLICATION_NAME} ${VERSION} уже установлена.\nВыберите операцию, которую необходимо выполнить, и нажмите Далее, чтобы продолжить."
StrCpy $PageReinstall_SAME_Field_2 "Добавить/Переустановить компоненты"
StrCpy $PageReinstall_SAME_Field_3 "Удалить ${APPLICATION_NAME}"
StrCpy $UNINSTALLER_APPDATA_TITLE "Удалить ${APPLICATION_NAME}"
StrCpy $PageReinstall_SAME_MUI_HEADER_TEXT_SUBTITLE "Выберите опцию обслуживания для исполнения."
StrCpy $SEC_APPLICATION_DETAILS "Установка зависимостей приложения ${APPLICATION_NAME}"
StrCpy $OPTION_SECTION_SC_START_MENU_SECTION "Ярлык в меню Пуск"
StrCpy $OPTION_SECTION_SC_START_MENU_DetailPrint "Добавление ярлыка ${APPLICATION_NAME} в меню Пуск"
StrCpy $OPTION_SECTION_SC_DESKTOP_SECTION "Ярлык на рабочем столе"
StrCpy $OPTION_SECTION_SC_DESKTOP_DetailPrint "Создание ярлыков на рабочем столе"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_SECTION "Ярлык в меню быстрого запуска"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_DetailPrint "Создание ярлыка в меню быстрого запуска"
StrCpy $OPTION_SECTION_SC_APPLICATION_Desc "Зависимости приложения ${APPLICATION_NAME}."
StrCpy $OPTION_SECTION_SC_START_MENU_Desc "Ярлык приложения ${APPLICATION_NAME}."
StrCpy $OPTION_SECTION_SC_DESKTOP_Desc "Ярлык на рабочем столе для ${APPLICATION_NAME}."
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_Desc "Ярлык в меню быстрого запуска для ${APPLICATION_NAME}."
StrCpy $UNINSTALLER_APPDATA_SUBTITLE "Удалить папку данных ${APPLICATION_NAME} с вашего компьютера."
StrCpy $UNINSTALLER_APPDATA_LABEL_1 "Вы хотите удалить папку с данными ${APPLICATION_NAME} ?"
StrCpy $UNINSTALLER_APPDATA_LABEL_2 "Оставьте неактивным, для сохранения папки с данными приложения, для последующего их использования."
StrCpy $UNINSTALLER_APPDATA_CHECKBOX "Да, удалить эту папку с данными."
StrCpy $UNINSTALLER_FILE_Detail "Сохранение деинсталятора"
StrCpy $UNINSTALLER_REGISTRY_Detail "Запись ключей реестра"
StrCpy $UNINSTALLER_FINISHED_Detail "Завершено"
StrCpy $UNINSTALL_MESSAGEBOX "Скорее всего, приложение ${APPLICATION_NAME} уже установлено в директорию '$INSTDIR'.\nВсе равно продолжить (не рекомендуется)?"
StrCpy $UNINSTALL_ABORT "Удаление отменено пользователем"
StrCpy $INIT_NO_QUICK_LAUNCH "Ярлык быстрого запуска (недоступен)"
StrCpy $INIT_NO_DESKTOP "Ярлык на рабочем столе (перезаписать существующий)"
StrCpy $UAC_ERROR_ELEVATE "Невозможно поднять, ошибка:"
StrCpy $UAC_INSTALLER_REQUIRE_ADMIN "Для установки необходимы права администратора, попробуйте ещё раз."
StrCpy $INIT_INSTALLER_RUNNING "Установщик уже запущен."
StrCpy $UAC_UNINSTALLER_REQUIRE_ADMIN "Этот деинсталятор требует права администратора, попытайтесь ещё"
StrCpy $INIT_UNINSTALLER_RUNNING "Программа удаления уже выполняется."
StrCpy $SectionGroup_Shortcuts "Ярлыки"

View File

@@ -0,0 +1,44 @@
# Auto-generated - do not modify
StrCpy $MUI_FINISHPAGE_SHOWREADME_TEXT_STRING "查看版本日志"
StrCpy $ConfirmEndProcess_KILLING_PROCESSES_TEXT "杀死${APPLICATION_EXECUTABLE}进程。"
StrCpy $ConfirmEndProcess_KILL_NOT_FOUND_TEXT "未找到要杀死的进程!"
StrCpy $PageReinstall_NEW_Field_1 "您的系统已经安装${APPLICATION_NAME}较老版本。建议安装前卸载当前版本。选择将要执行的操作,点击下一步继续。"
StrCpy $PageReinstall_NEW_Field_2 "在安装前先卸载"
StrCpy $PageReinstall_NEW_Field_3 "不要卸载"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_TITLE "已经安装"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_SUBTITLE "选择如何安装${APPLICATION_NAME}。"
StrCpy $PageReinstall_SAME_Field_2 "添加/重装组件"
StrCpy $PageReinstall_SAME_Field_3 "卸载${APPLICATION_NAME}"
StrCpy $UNINSTALLER_APPDATA_TITLE "卸载${APPLICATION_NAME}"
StrCpy $SEC_APPLICATION_DETAILS "安装${APPLICATION_NAME}基本组件。"
StrCpy $OPTION_SECTION_SC_START_MENU_SECTION "开始菜单程序快捷方式"
StrCpy $OPTION_SECTION_SC_DESKTOP_SECTION "桌面快捷方式"
StrCpy $OPTION_SECTION_SC_DESKTOP_DetailPrint "创建桌面快捷方式"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_SECTION "快速启动栏快捷方式"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_DetailPrint "创建快速启动栏快捷方式"
StrCpy $OPTION_SECTION_SC_APPLICATION_Desc "${APPLICATION_NAME}基本组件。"
StrCpy $OPTION_SECTION_SC_START_MENU_Desc "${APPLICATION_NAME}快捷方式。"
StrCpy $OPTION_SECTION_SC_DESKTOP_Desc "${APPLICATION_NAME}桌面快捷方式。"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_Desc "${APPLICATION_NAME}快速启动栏快捷方式。"
StrCpy $UNINSTALLER_APPDATA_CHECKBOX "删除数据文件。"
StrCpy $UNINSTALLER_FILE_Detail "覆盖卸载器"
StrCpy $UNINSTALLER_FINISHED_Detail "完成"
StrCpy $INIT_NO_QUICK_LAUNCH "快速启动栏快捷方式(N/A)"
StrCpy $INIT_NO_DESKTOP "桌面快捷方式(覆盖)"
StrCpy $SectionGroup_Shortcuts "快捷方式"
StrCpy $ConfirmEndProcess_MESSAGEBOX_TEXT "Found ${APPLICATION_EXECUTABLE} process(s) which need to be stopped.$\nDo you want the installer to stop these for you?"
StrCpy $PageReinstall_OLD_Field_1 "A newer version of ${APPLICATION_NAME} is already installed! It is not recommended that you install an older version. If you really want to install this older version, it is better to uninstall the current version first. Select the operation you want to perform and click Next to continue."
StrCpy $PageReinstall_SAME_Field_1 "${APPLICATION_NAME} ${VERSION} is already installed.\r\nSelect the operation you want to perform and click Next to continue."
StrCpy $PageReinstall_SAME_MUI_HEADER_TEXT_SUBTITLE "Choose the maintenance option to perform."
StrCpy $OPTION_SECTION_SC_START_MENU_DetailPrint "Adding shortcut for ${APPLICATION_NAME} to the Start Menu."
StrCpy $UNINSTALLER_APPDATA_SUBTITLE "Remove ${APPLICATION_NAME}'s data folder from your computer."
StrCpy $UNINSTALLER_APPDATA_LABEL_1 "Do you want to delete ${APPLICATION_NAME}'s data folder?"
StrCpy $UNINSTALLER_APPDATA_LABEL_2 "Leave unchecked to keep the data folder for later use or check to delete the data folder."
StrCpy $UNINSTALLER_REGISTRY_Detail "Writing Installer Registry Keys"
StrCpy $UNINSTALL_MESSAGEBOX "It does not appear that ${APPLICATION_NAME} is installed in the directory '$INSTDIR'.$\r$\nContinue anyway (not recommended)?"
StrCpy $UNINSTALL_ABORT "Uninstall aborted by user"
StrCpy $UAC_ERROR_ELEVATE "Unable to elevate, error:"
StrCpy $UAC_INSTALLER_REQUIRE_ADMIN "This installer requires admin access, try again"
StrCpy $INIT_INSTALLER_RUNNING "The installer is already running."
StrCpy $UAC_UNINSTALLER_REQUIRE_ADMIN "This uninstaller requires admin access, try again"
StrCpy $INIT_UNINSTALLER_RUNNING "The uninstaller is already running."

View File

@@ -0,0 +1,44 @@
# Auto-generated - do not modify
StrCpy $MUI_FINISHPAGE_SHOWREADME_TEXT_STRING "Zobrazi<EFBFBD> zoznam zmien"
StrCpy $ConfirmEndProcess_MESSAGEBOX_TEXT "Našli sa ${APPLICATION_EXECUTABLE} proces (y), ktoré je potrebné zastavi<76>.$\nChcete, aby ich inštalátor zastavil?"
StrCpy $ConfirmEndProcess_KILLING_PROCESSES_TEXT "Ukonèujem ${APPLICATION_EXECUTABLE} procesy."
StrCpy $ConfirmEndProcess_KILL_NOT_FOUND_TEXT "Proces ukonèenia nebol nájdený!"
StrCpy $PageReinstall_NEW_Field_1 "Staršia verzia ${APPLICATION_NAME} je nainštalovaná vo vašom systéme. Odporúèam vám odinštalova<76> aktuálnu verziu pred inštaláciou. Vyberte operáciu, ktorú chcete vykona<6E>, a kliknite na tlaèidlo Ïalej pre pokraèovanie."
StrCpy $PageReinstall_NEW_Field_2 "Odinštalova<EFBFBD> pred inštaláciou"
StrCpy $PageReinstall_NEW_Field_3 "Neodinštalova<EFBFBD>"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_TITLE "Už je nainštalovaný"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_SUBTITLE "Vyberte si, ako chcete nainštalova<76> ${APPLICATION_NAME}."
StrCpy $PageReinstall_OLD_Field_1 "Novšia verzia ${APPLICATION_NAME} je už nainštalovaná! Neodporúèam vám nainštalova<76> staršiu verziu. Ak naozaj chcete nainštalova<76> túto staršiu verziu, je lepšie najprv odinštalova<76> aktuálnu verziu. Vyberte operáciu, ktorú chcete vykona<6E>, a kliknite na tlaèidlo Ïalej pre pokraèovanie."
StrCpy $PageReinstall_SAME_Field_1 "${APPLICATION_NAME} ${VERSION} je už nainštalovaná.\nVyberte operáciu, ktorú chcete vykona<6E>, a kliknite na tlaèidlo Ïalej pre pokraèovanie."
StrCpy $PageReinstall_SAME_Field_2 "Prida<EFBFBD>/Preinštalova<76> komponenty"
StrCpy $PageReinstall_SAME_Field_3 "Odinštalova<EFBFBD> ${APPLICATION_NAME}"
StrCpy $UNINSTALLER_APPDATA_TITLE "Odinštalova<EFBFBD> ${APPLICATION_NAME}"
StrCpy $PageReinstall_SAME_MUI_HEADER_TEXT_SUBTITLE "Vyberte možnos<6F> vykona<6E> údržbu."
StrCpy $SEC_APPLICATION_DETAILS "Inštalujú sa náležitosti ${APPLICATION_NAME}."
StrCpy $OPTION_SECTION_SC_START_MENU_SECTION "Zástupca programu v menu Štart"
StrCpy $OPTION_SECTION_SC_START_MENU_DetailPrint "Prida<EFBFBD> zástupcu pre ${APPLICATION_NAME} do menu Štart."
StrCpy $OPTION_SECTION_SC_DESKTOP_SECTION "Zástupca na ploche"
StrCpy $OPTION_SECTION_SC_DESKTOP_DetailPrint "Vytvorenie zástupcu na ploche"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_SECTION "Zástupca na paneli úloh"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_DetailPrint "Vytvorenie zástupcu na paneli úloh"
StrCpy $OPTION_SECTION_SC_APPLICATION_Desc "Náležitosti ${APPLICATION_NAME}"
StrCpy $OPTION_SECTION_SC_START_MENU_Desc "${APPLICATION_NAME} zástupca."
StrCpy $OPTION_SECTION_SC_DESKTOP_Desc "Zástupca na ploche pre ${APPLICATION_NAME}."
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_Desc "Zástupca na paneli úloh pre ${APPLICATION_NAME}."
StrCpy $UNINSTALLER_APPDATA_SUBTITLE "Zmaza<EFBFBD> dátový prieèinok ${APPLICATION_NAME}'s z vášho poèítaèa."
StrCpy $UNINSTALLER_APPDATA_LABEL_1 "Naozaj chcete zmaza<7A> prieèinok s dátami ${APPLICATION_NAME}'s ?"
StrCpy $UNINSTALLER_APPDATA_LABEL_2 "Ponechajte nezaškrtnuté, ak chcete prieèinok s dátami ponecha<68> na neskoršie použitie, alebo zaškrtnite, ak chcete prieèinok zmaza<7A>."
StrCpy $UNINSTALLER_APPDATA_CHECKBOX "Áno, zmaza<7A> tento prieèinok."
StrCpy $UNINSTALLER_FILE_Detail "Zapisujem odinštalátor"
StrCpy $UNINSTALLER_REGISTRY_Detail "Zapisujem inštalaèné k¾úèe do registra"
StrCpy $UNINSTALLER_FINISHED_Detail "Dokonèené"
StrCpy $UNINSTALL_MESSAGEBOX "Nezdá sa, že ${APPLICATION_NAME} je nainštalovaný v prieèinku '$INSTDIR'.$\n$\nNapriek tomu pokraèova<76> (neodporúèa sa)?"
StrCpy $UNINSTALL_ABORT "Odinštalácia prerušená používate¾om"
StrCpy $INIT_NO_QUICK_LAUNCH "Zástupca na paneli úloh (N/A)"
StrCpy $INIT_NO_DESKTOP "Zástupca na ploche (prepíše existujúci)"
StrCpy $UAC_ERROR_ELEVATE "Nemožno povýši<C5A1>, chyba:"
StrCpy $UAC_INSTALLER_REQUIRE_ADMIN "Tento inštalátor vyžaduje admin prístup, skúste to znova"
StrCpy $INIT_INSTALLER_RUNNING "Inštalátor je už spustený."
StrCpy $UAC_UNINSTALLER_REQUIRE_ADMIN "Tento odinštalátor vyžaduje admin prístup, skúste to znova"
StrCpy $INIT_UNINSTALLER_RUNNING "Odinštalátor je už spustený."
StrCpy $SectionGroup_Shortcuts "Zástupcovia"

View File

@@ -0,0 +1,44 @@
# Auto-generated - do not modify
StrCpy $MUI_FINISHPAGE_SHOWREADME_TEXT_STRING "Pokaži opombe k objavi"
StrCpy $ConfirmEndProcess_MESSAGEBOX_TEXT "Zaznana so dejavna opravila programa ${APPLICATION_EXECUTABLE}, ki pa morajo biti pred nadaljevanjem zaustavljena.$\nAli želite izvajanje teh dejanj končati?"
StrCpy $ConfirmEndProcess_KILLING_PROCESSES_TEXT "Poteka zaustavljanje opravil programa ${APPLICATION_EXECUTABLE}"
StrCpy $ConfirmEndProcess_KILL_NOT_FOUND_TEXT "Opravila, določenega za uničenje, ni mogoče najti!"
StrCpy $PageReinstall_NEW_Field_1 "Nameščena je starejša različica ${APPLICATION_NAME}. Priporočljivo je najprej odstraniti obstoječo namestitev in šele nato namestiti novo. Izberite ustrezno možnost in kliknite za nadaljevanje."
StrCpy $PageReinstall_NEW_Field_2 "Pred namestitvijo je treba obstoječo različico odstraniti"
StrCpy $PageReinstall_NEW_Field_3 "Ne odstrani namestitve"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_TITLE "Program je že nameščen"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_SUBTITLE "Izberite način namestitve programa ${APPLICATION_NAME}."
StrCpy $PageReinstall_OLD_Field_1 "Novejša različica programa ${APPLICATION_NAME} je že nameščena! Ni priporočljivo namestiti starejše. V kolikor želite vseeno nadaljevati z namestitvijo, prej odstranite obstoječo različico. Izberite opravilo in pritisnite gumb za nadaljevanje."
StrCpy $PageReinstall_SAME_Field_1 "Program ${APPLICATION_NAME} ${VERSION} je že nameščen. Izberite opravilo in pritisnite gumb za nadaljevanje."
StrCpy $PageReinstall_SAME_Field_2 "Dodaj/Ponovno namesti programe"
StrCpy $PageReinstall_SAME_Field_3 "Odstrani ${APPLICATION_NAME}"
StrCpy $UNINSTALLER_APPDATA_TITLE "Odstrani ${APPLICATION_NAME}"
StrCpy $PageReinstall_SAME_MUI_HEADER_TEXT_SUBTITLE "Izberite možnost vzdrževanja za izvedbo."
StrCpy $SEC_APPLICATION_DETAILS "Poteka nameščanje ključnih paketov programa ${APPLICATION_NAME}."
StrCpy $OPTION_SECTION_SC_START_MENU_SECTION "Bližnjica programa v programskem meniju"
StrCpy $OPTION_SECTION_SC_START_MENU_DetailPrint "Poteka dodajanje bližnjice programa ${APPLICATION_NAME} v programski meni."
StrCpy $OPTION_SECTION_SC_DESKTOP_SECTION "Bližnica namizja"
StrCpy $OPTION_SECTION_SC_DESKTOP_DetailPrint "Poteka ustvarjanje bližnjice na namizju"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_SECTION "Bližnjica na hitri dostop"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_DetailPrint "Poteka ustvarjanje bližnjice za hitri dostop"
StrCpy $OPTION_SECTION_SC_APPLICATION_Desc "Knjižnice programa ${APPLICATION_NAME}."
StrCpy $OPTION_SECTION_SC_START_MENU_Desc "Bližnjica programa ${APPLICATION_NAME}"
StrCpy $OPTION_SECTION_SC_DESKTOP_Desc "Bližnjica namizja za program ${APPLICATION_NAME}."
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_Desc "Bližnjica za hiter dostop za program ${APPLICATION_NAME}."
StrCpy $UNINSTALLER_APPDATA_SUBTITLE "Odstrani podatkovno mapo programa ${APPLICATION_NAME}."
StrCpy $UNINSTALLER_APPDATA_LABEL_1 "Ali želite izbrisati podatkovno mapo programa ${APPLICATION_NAME}?"
StrCpy $UNINSTALLER_APPDATA_LABEL_2 "Pustite možnost neoznačeno za kasnejšo rabo podatkov v mapi, ali pa možnost izberite in jo izbrišite."
StrCpy $UNINSTALLER_APPDATA_CHECKBOX "Da, izbriši podatkovno mapo."
StrCpy $UNINSTALLER_FILE_Detail "Zapisovanje programa za odstranjevanje namestitve"
StrCpy $UNINSTALLER_REGISTRY_Detail "Poteka zapisovanje namestilnika v register"
StrCpy $UNINSTALLER_FINISHED_Detail "Končano"
StrCpy $UNINSTALL_MESSAGEBOX "Ni videti, da bi bil program ${APPLICATION_NAME} nameščen v mapi '$INSTDIR'.$\n$\nAli želite vseeno nadaljevati (ni priporočeno)?"
StrCpy $UNINSTALL_ABORT "Odstranjevanje namestitve je bilo prekinjeno s strani uporabnika"
StrCpy $INIT_NO_QUICK_LAUNCH "Bližnjica za hiter dostop (N/A)"
StrCpy $INIT_NO_DESKTOP "Bližnjica namizja (obstajajo predmeti za prepis)"
StrCpy $UAC_ERROR_ELEVATE "Ni mogoče dvigniti; napaka:"
StrCpy $UAC_INSTALLER_REQUIRE_ADMIN "Namestilnik zahteva skrbniška dovoljenja."
StrCpy $INIT_INSTALLER_RUNNING "Namestilnik je že zagnan."
StrCpy $UAC_UNINSTALLER_REQUIRE_ADMIN "Program za odstranjevanje namestitve zahteva skrbniška dovoljenja."
StrCpy $INIT_UNINSTALLER_RUNNING "Program za odstranjevanje namestitve je že zagnan."
StrCpy $SectionGroup_Shortcuts "Bližnjice"

View File

@@ -0,0 +1,44 @@
# Auto-generated - do not modify
StrCpy $MUI_FINISHPAGE_SHOWREADME_TEXT_STRING "Mostrar las notas de la versión"
StrCpy $ConfirmEndProcess_MESSAGEBOX_TEXT "El/los proceso/s ${APPLICATION_EXECUTABLE} debe/n ser detenidos.$\n¿Quiere que el instalador lo haga por usted?"
StrCpy $ConfirmEndProcess_KILLING_PROCESSES_TEXT "Deteniendo el/los proceso/s ${APPLICATION_EXECUTABLE}."
StrCpy $ConfirmEndProcess_KILL_NOT_FOUND_TEXT "¡Proceso a detener no encontrado!"
StrCpy $PageReinstall_NEW_Field_1 "Una versión anterior de ${APPLICATION_NAME} se encuentra instalada en el sistema. Se recomienda de instalar la versión actual antes de instalar la nueva. Seleccione la operacion deseada y haga click en Siguiente para continuar."
StrCpy $PageReinstall_NEW_Field_2 "Desinstalar antes de instalar"
StrCpy $PageReinstall_NEW_Field_3 "No desinstalar"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_TITLE "Ya está instalado"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_SUBTITLE "Elija como quiere instalar ${APPLICATION_NAME}."
StrCpy $PageReinstall_OLD_Field_1 "Una nueva versión de ${APPLICATION_NAME} ya está instalada. No es recomendable instalar una versión anterior. Si realmente quiere instalar esta versión anterior, es mejor que desinstale la versión actual primero. Seleccione la operación que desea realizar y pulse Next para continuar."
StrCpy $PageReinstall_SAME_Field_1 "${APPLICATION_NAME} ${VERSION} ya está instalada.\nSeleccione la operación que desea realizar y pulse Next para continuar."
StrCpy $PageReinstall_SAME_Field_2 "Añadir/Reinstalar componentes"
StrCpy $PageReinstall_SAME_Field_3 "Desinstalar ${APPLICATION_NAME}"
StrCpy $UNINSTALLER_APPDATA_TITLE "Desinstalar ${APPLICATION_NAME}"
StrCpy $PageReinstall_SAME_MUI_HEADER_TEXT_SUBTITLE "Elija la opcion de mantenimiento a realizar."
StrCpy $SEC_APPLICATION_DETAILS "Instalando ${APPLICATION_NAME} esenciales."
StrCpy $OPTION_SECTION_SC_START_MENU_SECTION "Acceso Directo al Programa Menú de Inicio"
StrCpy $OPTION_SECTION_SC_START_MENU_DetailPrint "Añadiendo accesos directos para ${APPLICATION_NAME} en el Menú de Inicio."
StrCpy $OPTION_SECTION_SC_DESKTOP_SECTION "Acceso directo de Escritorio"
StrCpy $OPTION_SECTION_SC_DESKTOP_DetailPrint "Creando Accesos Directos de Escritorio"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_SECTION "Acceso Directo al Lanzador Rápido"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_DetailPrint "Creando un Acceso Directo al Lanzador Rápido"
StrCpy $OPTION_SECTION_SC_APPLICATION_Desc "${APPLICATION_NAME} esencial."
StrCpy $OPTION_SECTION_SC_START_MENU_Desc "Acceso Directo de ${APPLICATION_NAME}"
StrCpy $OPTION_SECTION_SC_DESKTOP_Desc "Acceso Directo de Escritorio para ${APPLICATION_NAME}"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_Desc "Lanzador Rápido de Accesos Director para ${APPLICATION_NAME}."
StrCpy $UNINSTALLER_APPDATA_SUBTITLE "Remueva la carpeta de datos de ${APPLICATION_NAME} del computador."
StrCpy $UNINSTALLER_APPDATA_LABEL_1 "¿Desea eliminar la carpeta de datos de ${APPLICATION_NAME}?"
StrCpy $UNINSTALLER_APPDATA_LABEL_2 "Deja sin marcar para mantener la carpeta de datos para uso posterior, o del marque para eliminar la carpeta de datos."
StrCpy $UNINSTALLER_APPDATA_CHECKBOX "Si, Elimine esta carpeta de datos."
StrCpy $UNINSTALLER_FILE_Detail "Escribiendo Desinstalador"
StrCpy $UNINSTALLER_REGISTRY_Detail "Escribiendo Llaves en el Registro del Instalador"
StrCpy $UNINSTALLER_FINISHED_Detail "Terminado"
StrCpy $UNINSTALL_MESSAGEBOX "Parece que ${APPLICATION_NAME} no está instalado en el directorio '$INSTDIR'.$$ ¿Continuar de todos modos? (No Recomendado)"
StrCpy $UNINSTALL_ABORT "Desinstalación cancelada por el usuario"
StrCpy $INIT_NO_QUICK_LAUNCH "Acceso Directo al Lanzador Rápido (N/A)"
StrCpy $INIT_NO_DESKTOP "Atajo de escritorio (sobreescribe el existente)"
StrCpy $UAC_ERROR_ELEVATE "No se ha podido elevar, Error:"
StrCpy $UAC_INSTALLER_REQUIRE_ADMIN "El instalador requiere acceso administrativo, intente de nuevo"
StrCpy $INIT_INSTALLER_RUNNING "El instalador ya se encuentra en ejecución"
StrCpy $UAC_UNINSTALLER_REQUIRE_ADMIN "El desinstalador requiere acceso administrativo, intente de nuevo"
StrCpy $INIT_UNINSTALLER_RUNNING "El desinstalador ya se encuentra en ejecución."
StrCpy $SectionGroup_Shortcuts "Accesos Directos"

View File

@@ -0,0 +1,44 @@
# Auto-generated - do not modify
StrCpy $MUI_FINISHPAGE_SHOWREADME_TEXT_STRING "Mostrar notas de la versión"
StrCpy $ConfirmEndProcess_KILLING_PROCESSES_TEXT "Parando el proceso ${APPLICATION_EXECUTABLE}."
StrCpy $ConfirmEndProcess_KILL_NOT_FOUND_TEXT "Proceso a detener no encontrado!"
StrCpy $PageReinstall_NEW_Field_1 "Una versión anterior de ${APPLICATION_NAME} esta instalada en el sistema. Es recomendado que quite esta versión antes de instalar. Elija la operación a realizar y seleccione Siguiente para continuar."
StrCpy $PageReinstall_NEW_Field_2 "Des-instale antes de Instalar."
StrCpy $PageReinstall_NEW_Field_3 "No des-instalar."
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_TITLE "Actualmente Instalado."
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_SUBTITLE "Elija como desea instalar ${APPLICATION_NAME}."
StrCpy $PageReinstall_OLD_Field_1 "Una versión mas reciente de ${APPLICATION_NAME} esta actualmente instalada! No es recomendado que instale una versión antigua. Si realmente desea instalar esta versión obsoleta, es mejor que des-instale la versión actual primero. Seleccione la operación que desea realizar y presione en Siguiente para continuar. "
StrCpy $PageReinstall_SAME_Field_2 "Agregar/Re-Instalar componentes"
StrCpy $PageReinstall_SAME_Field_3 "Des-instalar ${APPLICATION_NAME}"
StrCpy $UNINSTALLER_APPDATA_TITLE "Des-instalar ${APPLICATION_NAME}"
StrCpy $PageReinstall_SAME_MUI_HEADER_TEXT_SUBTITLE "Elija la opción de mantenimiento a realizar."
StrCpy $SEC_APPLICATION_DETAILS "Instalar esenciales ${APPLICATION_NAME}."
StrCpy $OPTION_SECTION_SC_START_MENU_SECTION "Acceso Directo en Menú de Programas"
StrCpy $OPTION_SECTION_SC_START_MENU_DetailPrint "Agregando el Acceso Directo al Menú de Inicio para ${APPLICATION_NAME}."
StrCpy $OPTION_SECTION_SC_DESKTOP_SECTION "Acceso directo en Escritorio"
StrCpy $OPTION_SECTION_SC_DESKTOP_DetailPrint "Creando Accesos Directos en Escritorio"
StrCpy $OPTION_SECTION_SC_START_MENU_Desc "Acceso directo de ${APPLICATION_NAME}"
StrCpy $OPTION_SECTION_SC_DESKTOP_Desc "Acceso Directo al Escritorio para ${APPLICATION_NAME}."
StrCpy $UNINSTALLER_APPDATA_SUBTITLE "Quitar la carpeta de datos ${APPLICATION_NAME} de la computadora."
StrCpy $UNINSTALLER_APPDATA_LABEL_1 "Desea borrar la carpeta de datos de ${APPLICATION_NAME}?"
StrCpy $UNINSTALLER_APPDATA_LABEL_2 "Dejar des-tildado para mantener la carpeta de datos para posterior uso o tildar para borrar la carpeta de datos."
StrCpy $UNINSTALLER_APPDATA_CHECKBOX "Si, eliminar esta carpeta de datos."
StrCpy $UNINSTALLER_FILE_Detail "Escribiendo Des-Instalador."
StrCpy $UNINSTALLER_REGISTRY_Detail "Escribiendo claves de Registro del Instalador"
StrCpy $UNINSTALLER_FINISHED_Detail "Terminado"
StrCpy $UNINSTALL_ABORT "Des-instalación abortada por el usuario"
StrCpy $INIT_NO_DESKTOP "Acceso Directo en Escritorio (Sobrescribe existentes)"
StrCpy $UAC_INSTALLER_REQUIRE_ADMIN "Este instalador requiere acceso Administrador, intente de nuevo. "
StrCpy $INIT_INSTALLER_RUNNING "El instalador ya esta corriendo."
StrCpy $UAC_UNINSTALLER_REQUIRE_ADMIN "Este des-instalador requiere acceso administrador, intente de nuevo"
StrCpy $INIT_UNINSTALLER_RUNNING "El des-instalador ya esta corriendo"
StrCpy $SectionGroup_Shortcuts "Accesos Directos"
StrCpy $ConfirmEndProcess_MESSAGEBOX_TEXT "Found ${APPLICATION_EXECUTABLE} process(s) which need to be stopped.$\nDo you want the installer to stop these for you?"
StrCpy $PageReinstall_SAME_Field_1 "${APPLICATION_NAME} ${VERSION} is already installed.\r\nSelect the operation you want to perform and click Next to continue."
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_SECTION "Quick Launch Shortcut"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_DetailPrint "Creating Quick Launch Shortcut"
StrCpy $OPTION_SECTION_SC_APPLICATION_Desc "${APPLICATION_NAME} essentials."
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_Desc "Quick Launch shortcut for ${APPLICATION_NAME}."
StrCpy $UNINSTALL_MESSAGEBOX "It does not appear that ${APPLICATION_NAME} is installed in the directory '$INSTDIR'.$\r$\nContinue anyway (not recommended)?"
StrCpy $INIT_NO_QUICK_LAUNCH "Quick Launch Shortcut (N/A)"
StrCpy $UAC_ERROR_ELEVATE "Unable to elevate, error:"

View File

@@ -0,0 +1,44 @@
# Auto-generated - do not modify
StrCpy $MUI_FINISHPAGE_SHOWREADME_TEXT_STRING "Visa versionsinformationen"
StrCpy $ConfirmEndProcess_MESSAGEBOX_TEXT "Hittade ${APPLICATION_EXECUTABLE} process(er) som behöver stoppas.$\nVill du att installationsprogrammet ska stoppa dessa åt dig?"
StrCpy $ConfirmEndProcess_KILLING_PROCESSES_TEXT "Dödar ${APPLICATION_EXECUTABLE} processer."
StrCpy $ConfirmEndProcess_KILL_NOT_FOUND_TEXT "Processen att döda hittades inte!"
StrCpy $PageReinstall_NEW_Field_1 "En tidigare version av ${APPLICATION_NAME} är installerad på ditt system. Det är rekommenderat att du avinstallerar den nuvarande versionen före installation. Välj den åtgärd du vill utföra och klicka Nästa för att fortsätta."
StrCpy $PageReinstall_NEW_Field_2 "Avinstallera före installation"
StrCpy $PageReinstall_NEW_Field_3 "Avinstallera inte"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_TITLE "Redan installerad"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_SUBTITLE "Välj hur du vill installera ${APPLICATION_NAME}."
StrCpy $PageReinstall_OLD_Field_1 "En nyare version av ${APPLICATION_NAME} är redan installerad! Det rekommenderas inte att du installerar en äldre version. Om du verkligen vill installera denna äldre versionen, är det bättre att du avinstallerar den nuvarande versionen först. Välj den åtgärd du vill utföra och klicka Nästa för att fortsätta."
StrCpy $PageReinstall_SAME_Field_1 "${APPLICATION_NAME} ${VERSION} är redan installerad.\nVälj den åtgärd du vill utföra och klicka Nästa för att fortsätta."
StrCpy $PageReinstall_SAME_Field_2 "Lägg till/Ominstallera komponenter"
StrCpy $PageReinstall_SAME_Field_3 "Avinstallera ${APPLICATION_NAME}"
StrCpy $UNINSTALLER_APPDATA_TITLE "Avinstallera ${APPLICATION_NAME}"
StrCpy $PageReinstall_SAME_MUI_HEADER_TEXT_SUBTITLE "Välj underhålls alternativ att utföra."
StrCpy $SEC_APPLICATION_DETAILS "Installerar ${APPLICATION_NAME} väsentligheter."
StrCpy $OPTION_SECTION_SC_START_MENU_SECTION "Start-meny program genväg"
StrCpy $OPTION_SECTION_SC_START_MENU_DetailPrint "Lägger till genväg för ${APPLICATION_NAME} till Start-menyn."
StrCpy $OPTION_SECTION_SC_DESKTOP_SECTION "Skrivbordsgenväg"
StrCpy $OPTION_SECTION_SC_DESKTOP_DetailPrint "Skapar skrivbordsgenvägar"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_SECTION "Snabbstartsgenväg"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_DetailPrint "Skapar snabbstartsgenväg"
StrCpy $OPTION_SECTION_SC_APPLICATION_Desc "${APPLICATION_NAME} väsentligheter."
StrCpy $OPTION_SECTION_SC_START_MENU_Desc "${APPLICATION_NAME} genväg."
StrCpy $OPTION_SECTION_SC_DESKTOP_Desc "Skrivbordsgenväg för ${APPLICATION_NAME}."
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_Desc "Snabbstartsgenväg för ${APPLICATION_NAME}."
StrCpy $UNINSTALLER_APPDATA_SUBTITLE "Tag bort ${APPLICATION_NAME}s data mapp från din dator."
StrCpy $UNINSTALLER_APPDATA_LABEL_1 "Vill du radera ${APPLICATION_NAME}s data mapp?"
StrCpy $UNINSTALLER_APPDATA_LABEL_2 "Lämna omarkerad för att behålla data mappen för senare användning eller markera för att radera data mappen.."
StrCpy $UNINSTALLER_APPDATA_CHECKBOX "Ja, radera denna data mappen."
StrCpy $UNINSTALLER_FILE_Detail "Skriver avinstallationsprogram"
StrCpy $UNINSTALLER_REGISTRY_Detail "Skriver installationsprogrammets registernycklar"
StrCpy $UNINSTALLER_FINISHED_Detail "Klar"
StrCpy $UNINSTALL_MESSAGEBOX "Det verkar inte som ${APPLICATION_NAME} är installerad i katalogen '$INSTDIR'.$\n$\nFortsätt ändå (rekommenderas ej)?"
StrCpy $UNINSTALL_ABORT "Avinstallering avbröts av användare"
StrCpy $INIT_NO_QUICK_LAUNCH "Snabbstartsgenväg (N/A)"
StrCpy $INIT_NO_DESKTOP "Skrivbordsgenväg (skriver över nuvarande)"
StrCpy $UAC_ERROR_ELEVATE "Kunde inte få förhöjda rättigheter, fel:"
StrCpy $UAC_INSTALLER_REQUIRE_ADMIN "Detta installationsprogram kräver adminstratörs rättigheter, försök igen"
StrCpy $INIT_INSTALLER_RUNNING "Installationsprogrammet körs redan."
StrCpy $UAC_UNINSTALLER_REQUIRE_ADMIN "Detta avinstallationsprogram kräver administratörs rättigheter, försök igen"
StrCpy $INIT_UNINSTALLER_RUNNING "Avinstallationsprogrammet körs redan."
StrCpy $SectionGroup_Shortcuts "Genvägar"

View File

@@ -0,0 +1,44 @@
# Auto-generated - do not modify
StrCpy $MUI_FINISHPAGE_SHOWREADME_TEXT_STRING "Sürüm notlarını göster"
StrCpy $ConfirmEndProcess_MESSAGEBOX_TEXT "Durdurulması gereken ${APPLICATION_EXECUTABLE} süreçleri bulundu.$\nYükleyicinin bunları sizin için durdurmasını ister misiniz?"
StrCpy $ConfirmEndProcess_KILLING_PROCESSES_TEXT "${APPLICATION_EXECUTABLE} süreçleri sonlandırılıyor."
StrCpy $ConfirmEndProcess_KILL_NOT_FOUND_TEXT "Sonlandırılacak süreç bulunamadı!"
StrCpy $PageReinstall_NEW_Field_1 "${APPLICATION_NAME} önceki sürümü sisteminizde yüklü. Kurulumdan önce bunu kaldırmanız önerilir. Yapmak istediğiniz işlemi seçip devam etmek için İleri tıklayın."
StrCpy $PageReinstall_NEW_Field_2 "Yüklemeden önce kaldır"
StrCpy $PageReinstall_NEW_Field_3 "Kaldırma"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_TITLE "Zaten Yüklü"
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_SUBTITLE "${APPLICATION_NAME} uygulamasını nasıl yüklemek istediğinizi seçin."
StrCpy $PageReinstall_OLD_Field_1 "${APPLICATION_NAME} uygulamasının daha yeni sürümü zaten yüklü! Daha eski bir sürümünü yüklemeniz önerilmez. Gerçekten bu eski sürümü yüklemek isterseniz, ilk olarak geçerli sürümü kaldırmanız tavsiye edilir. Yapmak istediğiniz işlemi seçin ve devam etmek üzere İleri tıklayın."
StrCpy $PageReinstall_SAME_Field_1 "${APPLICATION_NAME} ${VERSION} zaten yüklü.\n\nYapmak istediğiniz işlemi seçin ve devam etmek için İleri tıklayın."
StrCpy $PageReinstall_SAME_Field_2 "Bileşenleri ekle/yeniden yükle"
StrCpy $PageReinstall_SAME_Field_3 "${APPLICATION_NAME} uygulamasını kaldır"
StrCpy $UNINSTALLER_APPDATA_TITLE "${APPLICATION_NAME} uygulamasını kaldır"
StrCpy $PageReinstall_SAME_MUI_HEADER_TEXT_SUBTITLE "Yapmak istediğiniz bakım işlemini seçin."
StrCpy $SEC_APPLICATION_DETAILS "${APPLICATION_NAME} gereklilikleri yükleniyor."
StrCpy $OPTION_SECTION_SC_START_MENU_SECTION "Başlat Menüsü Program Kısayolu"
StrCpy $OPTION_SECTION_SC_START_MENU_DetailPrint "${APPLICATION_NAME} için Başlat Menüsü'ne kısayol ekleniyor."
StrCpy $OPTION_SECTION_SC_DESKTOP_SECTION "Masaüstü Kısayolu"
StrCpy $OPTION_SECTION_SC_DESKTOP_DetailPrint "Masaüstü Kısayolları Oluşturuluyor"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_SECTION "Hızlı Başlat Kısayolu"
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_DetailPrint "Hızlı Başlat Kısayolu Oluşturuluyor"
StrCpy $OPTION_SECTION_SC_APPLICATION_Desc "${APPLICATION_NAME} gereklilikleri."
StrCpy $OPTION_SECTION_SC_START_MENU_Desc "${APPLICATION_NAME} kısayolu."
StrCpy $OPTION_SECTION_SC_DESKTOP_Desc "${APPLICATION_NAME} için masaüstü kısayolu."
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_Desc "${APPLICATION_NAME} için Hızlı Başlat kısayolu."
StrCpy $UNINSTALLER_APPDATA_SUBTITLE "Bilgisayarınızdan ${APPLICATION_NAME} veri klasörünü kaldırır."
StrCpy $UNINSTALLER_APPDATA_LABEL_1 "${APPLICATION_NAME} veri klasörünü silmek istiyor musunuz?"
StrCpy $UNINSTALLER_APPDATA_LABEL_2 "Veri klasörünün daha sonraki kullanımı için saklamak üzere işaretini kaldırın veya silmek için işaretleyin."
StrCpy $UNINSTALLER_APPDATA_CHECKBOX "Evet bu veri klasörünü sil."
StrCpy $UNINSTALLER_FILE_Detail "Kaldırıcı Yazılıyor"
StrCpy $UNINSTALLER_REGISTRY_Detail "Yükleyici Kayıt Anahtarları Yazılıyor"
StrCpy $UNINSTALLER_FINISHED_Detail "Tamamlandı"
StrCpy $UNINSTALL_MESSAGEBOX "${APPLICATION_NAME} uygulaması '$INSTDIR' dizinine yüklenmiş gibi görünmüyor.$\n$\nYine de devam edilsin mi (önerilmez)?"
StrCpy $UNINSTALL_ABORT "Kaldırma kullanıcı tarafından iptal edildi"
StrCpy $INIT_NO_QUICK_LAUNCH "Hızlı Başlat Kısayolu (Kullanılamıyor)"
StrCpy $INIT_NO_DESKTOP "Masaüstü Kısayolu (mevcut olanın üzerine yazılır)"
StrCpy $UAC_ERROR_ELEVATE "Yükseltme başarısız, hata:"
StrCpy $UAC_INSTALLER_REQUIRE_ADMIN "Bu yükleyici yönetici erişimi gerektiriyor, yeniden deneyin"
StrCpy $INIT_INSTALLER_RUNNING "Yükleyici zaten çalışıyor."
StrCpy $UAC_UNINSTALLER_REQUIRE_ADMIN "Bu kaldırıcı yönetici erişimi gerektiriyor, yeniden deneyin"
StrCpy $INIT_UNINSTALLER_RUNNING "Kaldırıcı zaten çalışıyor."
StrCpy $SectionGroup_Shortcuts "Kısayollar"

View File

@@ -0,0 +1,182 @@
##############################################################################
#
# PROJECT: ownCloud v1.0
# LICENSE: See LICENSE in the top level directory
#
##############################################################################
import collections
import os
import polib
from optparse import OptionParser
parser = OptionParser()
parser.add_option("-o", "--output", dest="output",
help="Directory for localized output", default="../Shared/installer/nightly_localized.nsi")
parser.add_option("-p", "--podir", dest="podir",
help="Directory containing PO files", default="../Shared/installer/locale/")
parser.add_option("-l", "--lang", dest="lang",
help="Default language of the NSI", default="English" )
(options, args) = parser.parse_args()
# Define a dict to convert locale names to language names
localeToName = {
"af" : "Afrikaans",
"sq" : "Albanian",
"ar" : "Arabic",
"hy" : "Armenian",
"eu" : "Basque",
"be" : "Belarusian",
"bs" : "Bosnian",
"br" : "Breton",
"bg" : "Bulgarian",
"ca" : "Catalan",
"bem" : "Cibemba",
"hr" : "Croatian",
"cs" : "Czech",
"da" : "Danish",
"nl" : "Dutch",
"efi" : "Efik",
"en" : "English",
"eo" : "Esperanto",
"et" : "Estonian",
"fa" : "Farsi",
"fi" : "Finnish",
"fr" : "French",
"gl" : "Galician",
"ka" : "Georgian",
"de" : "German",
"el" : "Greek",
"he" : "Hebrew",
"hi" : "Hindi",
"hu" : "Hungarian",
"is" : "Icelandic",
"ig" : "Igbo",
"id" : "Indonesian",
"ga" : "Irish",
"it" : "Italian",
"ja" : "Japanese",
"km" : "Khmer",
"ko" : "Korean",
"ku" : "Kurdish",
"lv" : "Latvian",
"lt" : "Lithuanian",
"lb" : "Luxembourgish",
"mk" : "Macedonian",
"mg" : "Malagasy",
"ms" : "Malay",
"mn" : "Mongolian",
"nb" : "Norwegian",
"nn" : "NorwegianNynorsk",
"ps" : "Pashto",
"pl" : "Polish",
"pt" : "Portuguese",
"pt_BR" : "PortugueseBR",
"ro" : "Romanian",
"ru" : "Russian",
"sr" : "Serbian",
"sr_sp" : "SerbianLatin",
"st" : "Sesotho",
"sn" : "Shona",
"zh_CN" : "SimpChinese",
"sk" : "Slovak",
"sl" : "Slovenian",
"es" : "Spanish",
"es_AR" : "SpanishInternational",
"sw" : "Swahili",
"sv" : "Swedish",
"ta" : "Tamil",
"th" : "Thai",
"zh_HK" : "TradChinese",
"tr" : "Turkish",
"tw" : "Twi",
"uk" : "Ukrainian",
"ug" : "Uyghur",
"uz" : "Uzbek",
"ca@valencia" : "Valencian",
"vi" : "Vietnamese",
"cy" : "Welsh",
"yo" : "Yoruba",
"zu" : "Zulu",
}
def escapeNSIS(st):
return st.replace('\\', r'$\\')\
.replace('\t', r'$\t')\
.replace('\r', r'\r')\
.replace('\n', r'\n')\
.replace('\"', r'$\"')\
.replace('$$\\', '$\\')
translationCache = {}
# The purpose of this loop is to go to the podir scanning for PO files for each locale name
# Once we've found a PO file, we use PO lib to read every translated entry
# Using this, for each each language, we store a dict of entries - { nsilabel (comment) : translation (msgstr) }
# For untranslated entries, we use msgid instead of msgstr (i.e. default English string)
for root,dirs,files in os.walk(options.podir):
for file in files:
filename,ext = os.path.splitext(file)
if ext == ".po":
# Valid locale filename (fr.po, de.po etc)?
if filename in localeToName:
language = localeToName[filename]
translationCache[language] = collections.OrderedDict()
po = polib.pofile(os.path.join(root,file))
for entry in po.translated_entries():
# Loop through all our labels and add translation (each translation may have multiple labels)
for label in entry.comment.split():
translationCache[language][label] = escapeNSIS(entry.msgstr)
# For untranslated strings, let's add the English entry
for entry in po.untranslated_entries():
for label in entry.comment.split():
print("Warning: Label '%s' for language '%s' remains untranslated"%(label,language))
translationCache[language][label] = escapeNSIS(entry.msgid)
def tostr(obj):
if type(obj) == unicode:
return obj.encode("utf-8")
else:
return obj
NSILanguages = []
NSIDeclarations = []
# file header
NSILanguages.append( tostr('; Auto-generated - do not modify\n') )
NSIDeclarations.append( tostr('; Auto-generated - do not modify\n') )
# loopthrough the languages an generate one nsh files for each language
lineNo = 1
for language,translations in translationCache.iteritems():
NSINewLines = []
NSINewLines.append( tostr('# Auto-generated - do not modify\n') )
count = 0
# if the language isn't the default, we add our MUI_LANGUAGE macro
if language.upper() != options.lang.upper():
NSILanguages.append( tostr('!insertmacro MUI_LANGUAGE "%s"\n'%language) )
# For every translation we grabbed from the .po, let's add our StrCpy command
for label,value in translations.iteritems():
NSINewLines.append( tostr('StrCpy $%s "%s"\n' % (label,value)) )
if language.upper() == options.lang.upper():
NSIDeclarations.append( tostr('Var %s\n' % label) )
count += 1
NSIWorkingFile = open('%s/%s.nsh' % (options.output, language),"w")
NSIWorkingFile.writelines(NSINewLines)
NSIWorkingFile.close()
print ( "%i translations merged for language '%s'"%(count,language) )
# Finally, let's write languages.nsh and declarations.nsh
NSIWorkingFile = open('%s/languages.nsh' % options.output,"w")
NSIWorkingFile.writelines(NSILanguages)
NSIWorkingFile.close()
NSIWorkingFile = open('%s/declarations.nsh' % options.output,"w")
NSIWorkingFile.writelines(NSIDeclarations)
NSIWorkingFile.close()
print ( "NSI Localization Operation Complete" )

48
admin/win/nsi/l10n/bin/l10n.sh Executable file
View File

@@ -0,0 +1,48 @@
#!/bin/bash
L10NDIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && cd .. && pwd )"
SCRIPTDIR="$L10NDIR/bin"
PODIR="$L10NDIR/pofiles"
# messages.pot will be used as English translation
cp -f $PODIR/messages.pot $PODIR/en.po
# generate all the languages nsh files
python $SCRIPTDIR/build_locale_nsi.py -o $L10NDIR -p $PODIR -l "English"
# for future references: the windows code pages
# 874 — Thai
# 932 — Japanese
# 936 — Chinese (simplified) (PRC, Singapore)
# 949 — Korean
# 950 — Chinese (traditional) (Taiwan, Hong Kong)
# 1200 — Unicode (BMP of ISO 10646, UTF-16LE)
# 1201 — Unicode (BMP of ISO 10646, UTF-16BE)
# 1250 — Latin (Central European languages)
# 1251 — Cyrillic
# 1252 — Latin (Western European languages, replacing Code page 850)
# 1253 — Greek
# 1254 — Turkish
# 1255 — Hebrew
# 1256 — Arabic
# 1257 — Latin (Baltic languages)
# 1258 — Vietnamese
# convert file to proper content
cd $L10NDIR
iconv -t CP1252 -o German.nsh German.nsh
iconv -t CP1252 -o Basque.nsh Basque.nsh
iconv -t CP1252 -o English.nsh English.nsh
iconv -t CP1252 -o Galician.nsh Galician.nsh
iconv -t CP1253 -o Greek.nsh Greek.nsh
iconv -t CP1250 -o Slovenian.nsh Slovenian.nsh
iconv -t CP1257 -o Estonian.nsh Estonian.nsh
iconv -t CP1252 -o Italian.nsh Italian.nsh
iconv -t CP1252 -o PortugueseBR.nsh PortugueseBR.nsh
iconv -t CP1252 -o Spanish.nsh Spanish.nsh
iconv -t CP1252 -o Dutch.nsh Dutch.nsh
iconv -t CP1252 -o Finnish.nsh Finnish.nsh
iconv -t CP932 -o Japanese.nsh Japanese.nsh
iconv -t CP1250 -o Slovak.nsh Slovak.nsh
iconv -t CP1254 -o Turkish.nsh Turkish.nsh

View File

@@ -0,0 +1,44 @@
; Auto-generated - do not modify
Var MUI_FINISHPAGE_SHOWREADME_TEXT_STRING
Var ConfirmEndProcess_MESSAGEBOX_TEXT
Var ConfirmEndProcess_KILLING_PROCESSES_TEXT
Var ConfirmEndProcess_KILL_NOT_FOUND_TEXT
Var PageReinstall_NEW_Field_1
Var PageReinstall_NEW_Field_2
Var PageReinstall_NEW_Field_3
Var PageReinstall_NEW_MUI_HEADER_TEXT_TITLE
Var PageReinstall_NEW_MUI_HEADER_TEXT_SUBTITLE
Var PageReinstall_OLD_Field_1
Var PageReinstall_SAME_Field_1
Var PageReinstall_SAME_Field_2
Var PageReinstall_SAME_Field_3
Var UNINSTALLER_APPDATA_TITLE
Var PageReinstall_SAME_MUI_HEADER_TEXT_SUBTITLE
Var SEC_APPLICATION_DETAILS
Var OPTION_SECTION_SC_START_MENU_SECTION
Var OPTION_SECTION_SC_START_MENU_DetailPrint
Var OPTION_SECTION_SC_DESKTOP_SECTION
Var OPTION_SECTION_SC_DESKTOP_DetailPrint
Var OPTION_SECTION_SC_QUICK_LAUNCH_SECTION
Var OPTION_SECTION_SC_QUICK_LAUNCH_DetailPrint
Var OPTION_SECTION_SC_APPLICATION_Desc
Var OPTION_SECTION_SC_START_MENU_Desc
Var OPTION_SECTION_SC_DESKTOP_Desc
Var OPTION_SECTION_SC_QUICK_LAUNCH_Desc
Var UNINSTALLER_APPDATA_SUBTITLE
Var UNINSTALLER_APPDATA_LABEL_1
Var UNINSTALLER_APPDATA_LABEL_2
Var UNINSTALLER_APPDATA_CHECKBOX
Var UNINSTALLER_FILE_Detail
Var UNINSTALLER_REGISTRY_Detail
Var UNINSTALLER_FINISHED_Detail
Var UNINSTALL_MESSAGEBOX
Var UNINSTALL_ABORT
Var INIT_NO_QUICK_LAUNCH
Var INIT_NO_DESKTOP
Var UAC_ERROR_ELEVATE
Var UAC_INSTALLER_REQUIRE_ADMIN
Var INIT_INSTALLER_RUNNING
Var UAC_UNINSTALLER_REQUIRE_ADMIN
Var INIT_UNINSTALLER_RUNNING
Var SectionGroup_Shortcuts

View File

@@ -0,0 +1,25 @@
; Auto-generated - do not modify
!insertmacro MUI_LANGUAGE "Swedish"
!insertmacro MUI_LANGUAGE "Estonian"
!insertmacro MUI_LANGUAGE "Turkish"
!insertmacro MUI_LANGUAGE "Slovenian"
!insertmacro MUI_LANGUAGE "SpanishInternational"
!insertmacro MUI_LANGUAGE "Dutch"
!insertmacro MUI_LANGUAGE "Hungarian"
!insertmacro MUI_LANGUAGE "French"
!insertmacro MUI_LANGUAGE "Catalan"
!insertmacro MUI_LANGUAGE "Russian"
!insertmacro MUI_LANGUAGE "Finnish"
!insertmacro MUI_LANGUAGE "Basque"
!insertmacro MUI_LANGUAGE "Greek"
!insertmacro MUI_LANGUAGE "SimpChinese"
!insertmacro MUI_LANGUAGE "PortugueseBR"
!insertmacro MUI_LANGUAGE "Italian"
!insertmacro MUI_LANGUAGE "Portuguese"
!insertmacro MUI_LANGUAGE "German"
!insertmacro MUI_LANGUAGE "Japanese"
!insertmacro MUI_LANGUAGE "Galician"
!insertmacro MUI_LANGUAGE "Czech"
!insertmacro MUI_LANGUAGE "Slovak"
!insertmacro MUI_LANGUAGE "Spanish"
!insertmacro MUI_LANGUAGE "Polish"

View File

@@ -0,0 +1,200 @@
#
# Translators:
msgid ""
msgstr ""
"Project-Id-Version: ownCloud\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2013-12-09 06:40\n"
"PO-Revision-Date: 2013-12-03 23:13+0000\n"
"Last-Translator: I Robot <owncloud-bot@tmit.eu>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: en\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. MUI_FINISHPAGE_SHOWREADME_TEXT_STRING
msgid "Show release notes"
msgstr "Show release notes"
#. ConfirmEndProcess_MESSAGEBOX_TEXT
msgid ""
"Found ${APPLICATION_EXECUTABLE} process(s) which need to be stopped.$\n"
"Do you want the installer to stop these for you?"
msgstr "Found ${APPLICATION_EXECUTABLE} process(s) which need to be stopped.$\nDo you want the installer to stop these for you?"
#. ConfirmEndProcess_KILLING_PROCESSES_TEXT
msgid "Killing ${APPLICATION_EXECUTABLE} processes."
msgstr "Killing ${APPLICATION_EXECUTABLE} processes."
#. ConfirmEndProcess_KILL_NOT_FOUND_TEXT
msgid "Process to kill not found!"
msgstr "Process to kill not found!"
#. PageReinstall_NEW_Field_1
msgid ""
"An older version of ${APPLICATION_NAME} is installed on your system. It is "
"recommended that you uninstall the current version before installing. Select"
" the operation you want to perform and click Next to continue."
msgstr "An older version of ${APPLICATION_NAME} is installed on your system. It is recommended that you uninstall the current version before installing. Select the operation you want to perform and click Next to continue."
#. PageReinstall_NEW_Field_2
msgid "Uninstall before installing"
msgstr "Uninstall before installing"
#. PageReinstall_NEW_Field_3
msgid "Do not uninstall"
msgstr "Do not uninstall"
#. PageReinstall_NEW_MUI_HEADER_TEXT_TITLE
msgid "Already Installed"
msgstr "Already Installed"
#. PageReinstall_NEW_MUI_HEADER_TEXT_SUBTITLE
msgid "Choose how you want to install ${APPLICATION_NAME}."
msgstr "Choose how you want to install ${APPLICATION_NAME}."
#. PageReinstall_OLD_Field_1
msgid ""
"A newer version of ${APPLICATION_NAME} is already installed! It is not "
"recommended that you install an older version. If you really want to install"
" this older version, it is better to uninstall the current version first. "
"Select the operation you want to perform and click Next to continue."
msgstr "A newer version of ${APPLICATION_NAME} is already installed! It is not recommended that you install an older version. If you really want to install this older version, it is better to uninstall the current version first. Select the operation you want to perform and click Next to continue."
#. PageReinstall_SAME_Field_1
msgid ""
"${APPLICATION_NAME} ${VERSION} is already installed.\r\n"
"Select the operation you want to perform and click Next to continue."
msgstr "${APPLICATION_NAME} ${VERSION} is already installed.\r\nSelect the operation you want to perform and click Next to continue."
#. PageReinstall_SAME_Field_2
msgid "Add/Reinstall components"
msgstr "Add/Reinstall components"
#. PageReinstall_SAME_Field_3 UNINSTALLER_APPDATA_TITLE
msgid "Uninstall ${APPLICATION_NAME}"
msgstr "Uninstall ${APPLICATION_NAME}"
#. PageReinstall_SAME_MUI_HEADER_TEXT_SUBTITLE
msgid "Choose the maintenance option to perform."
msgstr "Choose the maintenance option to perform."
#. SEC_APPLICATION_DETAILS
msgid "Installing ${APPLICATION_NAME} essentials."
msgstr "Installing ${APPLICATION_NAME} essentials."
#. OPTION_SECTION_SC_START_MENU_SECTION
msgid "Start Menu Program Shortcut"
msgstr "Start Menu Program Shortcut"
#. OPTION_SECTION_SC_START_MENU_DetailPrint
msgid "Adding shortcut for ${APPLICATION_NAME} to the Start Menu."
msgstr "Adding shortcut for ${APPLICATION_NAME} to the Start Menu."
#. OPTION_SECTION_SC_DESKTOP_SECTION
msgid "Desktop Shortcut"
msgstr "Desktop Shortcut"
#. OPTION_SECTION_SC_DESKTOP_DetailPrint
msgid "Creating Desktop Shortcuts"
msgstr "Creating Desktop Shortcuts"
#. OPTION_SECTION_SC_QUICK_LAUNCH_SECTION
msgid "Quick Launch Shortcut"
msgstr "Quick Launch Shortcut"
#. OPTION_SECTION_SC_QUICK_LAUNCH_DetailPrint
msgid "Creating Quick Launch Shortcut"
msgstr "Creating Quick Launch Shortcut"
#. OPTION_SECTION_SC_APPLICATION_Desc
msgid "${APPLICATION_NAME} essentials."
msgstr "${APPLICATION_NAME} essentials."
#. OPTION_SECTION_SC_START_MENU_Desc
msgid "${APPLICATION_NAME} shortcut."
msgstr "${APPLICATION_NAME} shortcut."
#. OPTION_SECTION_SC_DESKTOP_Desc
msgid "Desktop shortcut for ${APPLICATION_NAME}."
msgstr "Desktop shortcut for ${APPLICATION_NAME}."
#. OPTION_SECTION_SC_QUICK_LAUNCH_Desc
msgid "Quick Launch shortcut for ${APPLICATION_NAME}."
msgstr "Quick Launch shortcut for ${APPLICATION_NAME}."
#. UNINSTALLER_APPDATA_SUBTITLE
msgid "Remove ${APPLICATION_NAME}'s data folder from your computer."
msgstr "Remove ${APPLICATION_NAME}'s data folder from your computer."
#. UNINSTALLER_APPDATA_LABEL_1
msgid "Do you want to delete ${APPLICATION_NAME}'s data folder?"
msgstr "Do you want to delete ${APPLICATION_NAME}'s data folder?"
#. UNINSTALLER_APPDATA_LABEL_2
msgid ""
"Leave unchecked to keep the data folder for later use or check to delete the"
" data folder."
msgstr "Leave unchecked to keep the data folder for later use or check to delete the data folder."
#. UNINSTALLER_APPDATA_CHECKBOX
msgid "Yes, delete this data folder."
msgstr "Yes, delete this data folder."
#. UNINSTALLER_FILE_Detail
msgid "Writing Uninstaller"
msgstr "Writing Uninstaller"
#. UNINSTALLER_REGISTRY_Detail
msgid "Writing Installer Registry Keys"
msgstr "Writing Installer Registry Keys"
#. UNINSTALLER_FINISHED_Detail
msgid "Finished"
msgstr "Finished"
#. UNINSTALL_MESSAGEBOX
msgid ""
"It does not appear that ${APPLICATION_NAME} is installed in the directory '$INSTDIR'.$\r"
"$\n"
"Continue anyway (not recommended)?"
msgstr "It does not appear that ${APPLICATION_NAME} is installed in the directory '$INSTDIR'.$\r$\nContinue anyway (not recommended)?"
#. UNINSTALL_ABORT
msgid "Uninstall aborted by user"
msgstr "Uninstall aborted by user"
#. INIT_NO_QUICK_LAUNCH
msgid "Quick Launch Shortcut (N/A)"
msgstr "Quick Launch Shortcut (N/A)"
#. INIT_NO_DESKTOP
msgid "Desktop Shortcut (overwrites existing)"
msgstr "Desktop Shortcut (overwrites existing)"
#. UAC_ERROR_ELEVATE
msgid "Unable to elevate, error:"
msgstr "Unable to elevate, error:"
#. UAC_INSTALLER_REQUIRE_ADMIN
msgid "This installer requires admin access, try again"
msgstr "This installer requires admin access, try again"
#. INIT_INSTALLER_RUNNING
msgid "The installer is already running."
msgstr "The installer is already running."
#. UAC_UNINSTALLER_REQUIRE_ADMIN
msgid "This uninstaller requires admin access, try again"
msgstr "This uninstaller requires admin access, try again"
#. INIT_UNINSTALLER_RUNNING
msgid "The uninstaller is already running."
msgstr "The uninstaller is already running."
#. SectionGroup_Shortcuts
msgid "Shortcuts"
msgstr "Shortcuts"

View File

@@ -5,7 +5,6 @@ This sample uses the registry plugin, so you need to download that if you don't
!define APPNAME "UAC_RealWorldFullyLoadedDualMode"
!define ELEVATIONTITLE "${APPNAME}: Elevate" ;displayed during elevation on our custom page
!define SMSUBDIR $StartMenuFolder ;"${APPNAME}"
!define UNINSTALLER_NAME "Uninstall ${APPNAME}.exe"
!define UNINSTALLER_REGSECTION "${APPNAME}"
!define RegPath.MSUninstall "Software\Microsoft\Windows\CurrentVersion\Uninstall"
@@ -200,10 +199,7 @@ UAC::Exec "" "Notepad.exe" "$Windir\Win.INI" "$InstDir"
FunctionEnd
Function CreateSMShortcuts
StrCpy ${SMSUBDIR} $9 ;stupid sync
CreateDirectory "$SMPrograms\${SMSUBDIR}"
CreateShortcut "$SMPrograms\${SMSUBDIR}\${APPNAME}.lnk" "$Windir\Notepad.exe"
CreateShortcut "$SMPrograms\${SMSUBDIR}\Uninstall ${APPNAME}.lnk" "$InstDir\${UNINSTALLER_NAME}"
CreateShortcut "$SMPrograms\${APPNAME}.lnk" "$Windir\Notepad.exe"
FunctionEnd
Function CreateDeskShortcuts
CreateShortcut "$Desktop\${APPNAME}.lnk" "$Windir\Notepad.exe"
@@ -222,7 +218,6 @@ ${registry::Unload}
SectionEnd
Section "Startmenu Shortcuts"
StrCpy $9 ${SMSUBDIR} ;this is stupid as hell, we need correct ${SMSUBDIR} in the outer process, this is the only way (plugins cannot enum "custom" var's AFAIK)
${UAC.CallFunctionAsUser} CreateSMShortcuts
SectionEnd
Section "Desktop Shortcut"
@@ -231,9 +226,7 @@ SectionEnd
Section Uninstall
Delete "$InstDir\${UNINSTALLER_NAME}"
Delete "$SMPrograms\${SMSUBDIR}\${APPNAME}.lnk"
Delete "$SMPrograms\${SMSUBDIR}\Uninstall ${APPNAME}.lnk"
RMDir "$SMPrograms\${SMSUBDIR}"
Delete "$SMPrograms\${APPNAME}.lnk"
Delete "$Desktop\${APPNAME}.lnk"
RMDir "$InstDir"

View File

@@ -66,10 +66,10 @@ macro (KDE4_ADD_APP_ICON appsources pattern)
message(STATUS "Unable to find a related icon that matches pattern ${pattern} for variable ${appsources} - application will not have an application icon!")
endif(_icons)
else(PNG2ICO_EXECUTABLE AND WINDRES_EXECUTABLE)
message(FATAL_ERROR "Unable to find the png2ico or windres utilities - application will not have an application icon!")
message(WARNING "Unable to find the png2ico or windres utilities - application will not have an application icon!")
endif(PNG2ICO_EXECUTABLE AND WINDRES_EXECUTABLE)
endif(WIN32)
if (Q_WS_MAC)
if (APPLE)
# first convert image to a tiff using the Mac OS X "sips" utility,
# then use tiff2icns to convert to an icon
find_program(SIPS_EXECUTABLE NAMES sips)
@@ -110,5 +110,5 @@ macro (KDE4_ADD_APP_ICON appsources pattern)
else(SIPS_EXECUTABLE AND TIFF2ICNS_EXECUTABLE)
message(STATUS "Unable to find the sips and tiff2icns utilities - application will not have an application icon!")
endif(SIPS_EXECUTABLE AND TIFF2ICNS_EXECUTABLE)
endif(Q_WS_MAC)
endif(APPLE)
endmacro (KDE4_ADD_APP_ICON)

View File

@@ -0,0 +1,23 @@
# - ADD_CHECK_TEST(test_name test_source linklib1 ... linklibN)
# Copyright (c) 2007 Daniel Gollub <dgollub@suse.de>
# Copyright (c) 2007-2010 Andreas Schneider <asn@cynapses.org>
#
# Redistribution and use is allowed according to the terms of the BSD license.
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
enable_testing()
include(CTest)
if(CMAKE_COMPILER_IS_GNUCC AND NOT MINGW)
set(CMAKE_C_FLAGS_PROFILING "-g -O0 -Wall -W -Wshadow -Wunused-variable -Wunused-parameter -Wunused-function -Wunused -Wno-system-headers -Wwrite-strings -fprofile-arcs -ftest-coverage" CACHE STRING "Profiling Compiler Flags")
set(CMAKE_SHARED_LINKER_FLAGS_PROFILING " -fprofile-arcs -ftest-coverage" CACHE STRING "Profiling Linker Flags")
set(CMAKE_MODULE_LINKER_FLAGS_PROFILING " -fprofile-arcs -ftest-coverage" CACHE STRING "Profiling Linker Flags")
set(CMAKE_EXEC_LINKER_FLAGS_PROFILING " -fprofile-arcs -ftest-coverage" CACHE STRING "Profiling Linker Flags")
endif(CMAKE_COMPILER_IS_GNUCC AND NOT MINGW)
function (ADD_CMOCKA_TEST _testName _testSource)
add_executable(${_testName} ${_testSource})
target_link_libraries(${_testName} ${ARGN})
add_test(${_testName} ${CMAKE_CURRENT_BINARY_DIR}/${_testName})
endfunction (ADD_CMOCKA_TEST)

View File

@@ -0,0 +1,22 @@
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
3. The name of the author may not be used to endorse or promote products
derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

View File

@@ -0,0 +1,26 @@
# - Check whether the C compiler supports a given flag in the
# context of a stack checking compiler option.
# CHECK_C_COMPILER_FLAG_SSP(FLAG VARIABLE)
#
# FLAG - the compiler flag
# VARIABLE - variable to store the result
#
# This actually calls check_c_source_compiles.
# See help for CheckCSourceCompiles for a listing of variables
# that can modify the build.
# Copyright (c) 2006, Alexander Neundorf, <neundorf@kde.org>
#
# Redistribution and use is allowed according to the terms of the BSD license.
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
include(CheckCSourceCompiles)
function(CHECK_C_COMPILER_FLAG_SSP _FLAG _RESULT)
set(SAFE_CMAKE_REQUIRED_DEFINITIONS "${CMAKE_REQUIRED_DEFINITIONS}")
set(CMAKE_REQUIRED_DEFINITIONS "${_FLAG}")
check_c_source_compiles("int main(int argc, char **argv) { char buffer[256]; return buffer[argc]=0;}" ${_RESULT})
set(CMAKE_REQUIRED_DEFINITIONS "${SAFE_CMAKE_REQUIRED_DEFINITIONS}")
endfunction(CHECK_C_COMPILER_FLAG_SSP)

View File

@@ -0,0 +1,29 @@
@CHECK_PROTOTYPE_DEFINITION_HEADER@
static void cmakeRequireSymbol(int dummy, ...) {
(void) dummy;
}
static void checkSymbol(void) {
#ifndef @CHECK_PROTOTYPE_DEFINITION_SYMBOL@
cmakeRequireSymbol(0, &@CHECK_PROTOTYPE_DEFINITION_SYMBOL@);
#endif
}
@CHECK_PROTOTYPE_DEFINITION_PROTO@ {
return @CHECK_PROTOTYPE_DEFINITION_RETURN@;
}
#ifdef __CLASSIC_C__
int main() {
int ac;
char*av[];
#else
int main(int ac, char *av[]) {
#endif
checkSymbol();
if (ac > 1000) {
return *av[0];
}
return 0;
}

View File

@@ -0,0 +1,98 @@
# - Check if the protoype we expect is correct.
# check_prototype_definition(FUNCTION PROTOTYPE RETURN HEADER VARIABLE)
# FUNCTION - The name of the function (used to check if prototype exists)
# PROTOTYPE- The prototype to check.
# RETURN - The return value of the function.
# HEADER - The header files required.
# VARIABLE - The variable to store the result.
# Example:
# check_prototype_definition(getpwent_r
# "struct passwd *getpwent_r(struct passwd *src, char *buf, int buflen)"
# "NULL"
# "unistd.h;pwd.h"
# SOLARIS_GETPWENT_R)
# The following variables may be set before calling this macro to
# modify the way the check is run:
#
# CMAKE_REQUIRED_FLAGS = string of compile command line flags
# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
# CMAKE_REQUIRED_INCLUDES = list of include directories
# CMAKE_REQUIRED_LIBRARIES = list of libraries to link
#=============================================================================
# Copyright 2005-2009 Kitware, Inc.
# Copyright 2010-2011 Andreas Schneider <asn@cryptomilk.org>
#
# Distributed under the OSI-approved BSD License (the "License");
# see accompanying file Copyright.txt for details.
#
# This software is distributed WITHOUT ANY WARRANTY; without even the
# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
# See the License for more information.
#=============================================================================
# (To distribute this file outside of CMake, substitute the full
# License text for the above reference.)
#
get_filename_component(__check_proto_def_dir "${CMAKE_CURRENT_LIST_FILE}" PATH)
function(CHECK_PROTOTYPE_DEFINITION _FUNCTION _PROTOTYPE _RETURN _HEADER _VARIABLE)
if ("${_VARIABLE}" MATCHES "^${_VARIABLE}$")
set(CHECK_PROTOTYPE_DEFINITION_CONTENT "/* */\n")
set(CHECK_PROTOTYPE_DEFINITION_FLAGS ${CMAKE_REQUIRED_FLAGS})
if (CMAKE_REQUIRED_LIBRARIES)
set(CHECK_PROTOTYPE_DEFINITION_LIBS
LINK_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES})
else()
set(CHECK_PROTOTYPE_DEFINITION_LIBS)
endif()
if (CMAKE_REQUIRED_INCLUDES)
set(CMAKE_SYMBOL_EXISTS_INCLUDES
"-DINCLUDE_DIRECTORIES:STRING=${CMAKE_REQUIRED_INCLUDES}")
else()
set(CMAKE_SYMBOL_EXISTS_INCLUDES)
endif()
foreach(_FILE ${_HEADER})
set(CHECK_PROTOTYPE_DEFINITION_HEADER
"${CHECK_PROTOTYPE_DEFINITION_HEADER}#include <${_FILE}>\n")
endforeach()
set(CHECK_PROTOTYPE_DEFINITION_SYMBOL ${_FUNCTION})
set(CHECK_PROTOTYPE_DEFINITION_PROTO ${_PROTOTYPE})
set(CHECK_PROTOTYPE_DEFINITION_RETURN ${_RETURN})
configure_file("${__check_proto_def_dir}/CheckPrototypeDefinition.c.in"
"${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/CheckPrototypeDefinition.c" @ONLY)
file(READ ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/CheckPrototypeDefinition.c _SOURCE)
try_compile(${_VARIABLE}
${CMAKE_BINARY_DIR}
${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/CheckPrototypeDefinition.c
COMPILE_DEFINITIONS ${CMAKE_REQUIRED_DEFINITIONS}
${CHECK_PROTOTYPE_DEFINITION_LIBS}
CMAKE_FLAGS -DCOMPILE_DEFINITIONS:STRING=${CHECK_PROTOTYPE_DEFINITION_FLAGS}
"${CMAKE_SYMBOL_EXISTS_INCLUDES}"
OUTPUT_VARIABLE OUTPUT)
if (${_VARIABLE})
set(${_VARIABLE} 1 CACHE INTERNAL "Have correct prototype for ${_FUNCTION}")
message(STATUS "Checking prototype ${_FUNCTION} for ${_VARIABLE} - True")
file(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log
"Determining if the prototype ${_FUNCTION} exists for ${_VARIABLE} passed with the following output:\n"
"${OUTPUT}\n\n")
else ()
message(STATUS "Checking prototype ${_FUNCTION} for ${_VARIABLE} - False")
set(${_VARIABLE} 0 CACHE INTERNAL "Have correct prototype for ${_FUNCTION}")
file(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log
"Determining if the prototype ${_FUNCTION} exists for ${_VARIABLE} failed with the following output:\n"
"${OUTPUT}\n\n${_SOURCE}\n\n")
endif ()
endif()
endfunction()

View File

@@ -0,0 +1,13 @@
CMake - Cross Platform Makefile Generator
Copyright 2000-2009 Kitware, Inc., Insight Software Consortium
All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
* Neither the names of Kitware, Inc., the Insight Software Consortium, nor the names of their contributors may be used to endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

View File

@@ -0,0 +1,30 @@
# Always include srcdir and builddir in include path
# This saves typing ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY} in
# about every subdir
# since cmake 2.4.0
set(CMAKE_INCLUDE_CURRENT_DIR ON)
# Put the include dirs which are in the source or build tree
# before all other include dirs, so the headers in the sources
# are prefered over the already installed ones
# since cmake 2.4.1
set(CMAKE_INCLUDE_DIRECTORIES_PROJECT_BEFORE ON)
# Use colored output
# since cmake 2.4.0
set(CMAKE_COLOR_MAKEFILE ON)
# Define the generic version of the libraries here
set(GENERIC_LIB_VERSION "0.1.0")
set(GENERIC_LIB_SOVERSION "0")
# set -Werror
set(CMAKE_ENABLE_WERROR ON)
# Set the default build type to release with debug info
if (NOT CMAKE_BUILD_TYPE)
set(CMAKE_BUILD_TYPE RelWithDebInfo
CACHE STRING
"Choose the type of build, options are: None Debug Release RelWithDebInfo MinSizeRel."
)
endif (NOT CMAKE_BUILD_TYPE)

View File

@@ -0,0 +1,88 @@
# define system dependent compiler flags
include(CheckCCompilerFlag)
include(CheckCCompilerFlagSSP)
#
# Define GNUCC compiler flags
#
if (${CMAKE_C_COMPILER_ID} MATCHES "(GNU|Clang)")
# add -Wconversion ?
# cannot be pedantic with sqlite3 directly linked
if (NOT CSYNC_STATIC_COMPILE_DIR)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=gnu99 -pedantic -pedantic-errors")
endif()
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra -Wshadow -Wmissing-prototypes -Wdeclaration-after-statement")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wunused -Wfloat-equal -Wpointer-arith -Wwrite-strings -Wformat-security")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wmissing-format-attribute")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wmissing-format-attribute -D_GNU_SOURCE")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -D__STDC_FORMAT_MACROS=1")
set(CSYNC_STRICT OFF CACHE BOOL "Strict error checking, enabled -Werror and friends")
if (CSYNC_STRICT)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Werror")
endif(CSYNC_STRICT)
# with -fPIC
check_c_compiler_flag("-fPIC" WITH_FPIC)
if (WITH_FPIC AND NOT WIN32)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fPIC")
endif (WITH_FPIC AND NOT WIN32)
check_c_compiler_flag_ssp("-fstack-protector" WITH_STACK_PROTECTOR)
if (WITH_STACK_PROTECTOR AND NOT WIN32)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fstack-protector")
endif (WITH_STACK_PROTECTOR AND NOT WIN32)
if (CMAKE_BUILD_TYPE)
string(TOLOWER "${CMAKE_BUILD_TYPE}" CMAKE_BUILD_TYPE_LOWER)
if (CMAKE_BUILD_TYPE_LOWER MATCHES "(release|relwithdebinfo|minsizerel)")
check_c_compiler_flag("-Wp,-D_FORTIFY_SOURCE=2" WITH_FORTIFY_SOURCE)
if (WITH_FORTIFY_SOURCE)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wp,-D_FORTIFY_SOURCE=2")
endif (WITH_FORTIFY_SOURCE)
endif()
endif()
endif (${CMAKE_C_COMPILER_ID} MATCHES "(GNU|Clang)")
if (UNIX AND NOT WIN32)
#
# Check for large filesystem support
#
if (CMAKE_SIZEOF_VOID_P MATCHES "8")
# with large file support
execute_process(
COMMAND
getconf LFS64_CFLAGS
OUTPUT_VARIABLE
_lfs_CFLAGS
ERROR_QUIET
OUTPUT_STRIP_TRAILING_WHITESPACE
)
else (CMAKE_SIZEOF_VOID_P MATCHES "8")
# with large file support
execute_process(
COMMAND
getconf LFS_CFLAGS
OUTPUT_VARIABLE
_lfs_CFLAGS
ERROR_QUIET
OUTPUT_STRIP_TRAILING_WHITESPACE
)
endif (CMAKE_SIZEOF_VOID_P MATCHES "8")
if (_lfs_CFLAGS)
string(REGEX REPLACE "[\r\n]" " " "${_lfs_CFLAGS}" "${${_lfs_CFLAGS}}")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${_lfs_CFLAGS}")
endif (_lfs_CFLAGS)
else(UNIX AND NOT WIN32)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -D_FILE_OFFSET_BITS=64")
endif (UNIX AND NOT WIN32)
if (MSVC)
# Use secure functions by defaualt and suppress warnings about
#"deprecated" functions
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /D _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES=1")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /D _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT=1")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /D _CRT_NONSTDC_NO_WARNINGS=1 /D _CRT_SECURE_NO_WARNINGS=1")
endif (MSVC)

View File

@@ -13,29 +13,33 @@ if (UNIX)
CACHE PATH "Base directory for files which go to share/"
)
SET(DATA_INSTALL_PREFIX
"${SHARE_INSTALL_PREFIX}/${APPLICATION_SHORT_NAME}"
"${SHARE_INSTALL_PREFIX}"
CACHE PATH "The parent directory where applications can install their data")
# The following are directories where stuff will be installed to
SET(BIN_INSTALL_DIR
"${EXEC_INSTALL_PREFIX}/bin"
CACHE PATH "The ${APPLICATION_SHORT_NAME} binary install dir (default prefix/bin)"
"${CMAKE_INSTALL_BINDIR}"
CACHE PATH "The ${APPLICATION_SHORTNAME} binary install dir (default prefix/bin)"
)
SET(SBIN_INSTALL_DIR
"${EXEC_INSTALL_PREFIX}/sbin"
CACHE PATH "The ${APPLICATION_SHORT_NAME} sbin install dir (default prefix/sbin)"
CACHE PATH "The ${APPLICATION_SHORTNAME} sbin install dir (default prefix/sbin)"
)
SET(LIB_INSTALL_DIR
"${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX}"
"${CMAKE_INSTALL_LIBDIR}"
CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is prefix/lib)"
)
SET(LIBEXEC_INSTALL_DIR
"${EXEC_INSTALL_PREFIX}/libexec"
CACHE PATH "The subdirectory relative to the install prefix where libraries will be installed (default is prefix/libexec)"
)
SET(LIB_PRIVATE_INSTALL_DIR
"${LIB_INSTALL_DIR}"
CACHE PATH "The subdirectory relative to the install prefix where private libs are installed"
)
SET(PLUGIN_INSTALL_DIR
"${LIB_INSTALL_DIR}/${APPLICATION_SHORT_NAME}"
CACHE PATH "The subdirectory relative to the install prefix where plugins will be installed (default is prefix/lib/${APPLICATION_SHORT_NAME})"
"${LIB_INSTALL_DIR}"
CACHE PATH "The subdirectory relative to the install prefix where plugins will be installed (default is prefix/lib/${APPLICATION_SHORTNAME})"
)
SET(INCLUDE_INSTALL_DIR
"${CMAKE_INSTALL_PREFIX}/include"
@@ -44,7 +48,7 @@ if (UNIX)
SET(DATA_INSTALL_DIR
"${DATA_INSTALL_PREFIX}"
CACHE PATH "The parent directory where applications can install their data (default prefix/share/${APPLICATION_SHORT_NAME})"
CACHE PATH "The parent directory where applications can install their data (default prefix/share/${APPLICATION_SHORTNAME})"
)
SET(HTML_INSTALL_DIR
"${DATA_INSTALL_PREFIX}/doc/HTML"
@@ -79,15 +83,15 @@ if (UNIX)
SET(SYSCONF_INSTALL_DIR
"${SYSCONFDIR_INSTALL_PREFIX}/etc"
CACHE PATH "The ${APPLICATION_SHORT_NAME} sysconfig install dir (default prefix/etc)"
CACHE PATH "The ${APPLICATION_SHORTNAME} sysconfig install dir (default prefix/etc)"
)
SET(MAN_INSTALL_DIR
"${SHARE_INSTALL_PREFIX}/man"
CACHE PATH "The ${APPLICATION_SHORT_NAME} man install dir (default prefix/man)"
CACHE PATH "The ${APPLICATION_SHORTNAME} man install dir (default prefix/man)"
)
SET(INFO_INSTALL_DIR
"${SHARE_INSTALL_PREFIX}/info"
CACHE PATH "The ${APPLICATION_SHORT_NAME} info install dir (default prefix/info)"
CACHE PATH "The ${APPLICATION_SHORTNAME} info install dir (default prefix/info)"
)
endif (UNIX)

View File

@@ -0,0 +1,28 @@
# Set system vars
if (CMAKE_SYSTEM_NAME MATCHES "Linux")
set(LINUX TRUE)
endif(CMAKE_SYSTEM_NAME MATCHES "Linux")
if (CMAKE_SYSTEM_NAME MATCHES "FreeBSD")
set(FREEBSD TRUE)
set(BSD TRUE)
endif (CMAKE_SYSTEM_NAME MATCHES "FreeBSD")
if (CMAKE_SYSTEM_NAME MATCHES "OpenBSD")
set(OPENBSD TRUE)
set(BSD TRUE)
endif (CMAKE_SYSTEM_NAME MATCHES "OpenBSD")
if (CMAKE_SYSTEM_NAME MATCHES "NetBSD")
set(NETBSD TRUE)
set(BSD TRUE)
endif (CMAKE_SYSTEM_NAME MATCHES "NetBSD")
if (CMAKE_SYSTEM_NAME MATCHES "(Solaris|SunOS)")
set(SOLARIS TRUE)
endif (CMAKE_SYSTEM_NAME MATCHES "(Solaris|SunOS)")
if (CMAKE_SYSTEM_NAME MATCHES "OS2")
set(OS2 TRUE)
endif (CMAKE_SYSTEM_NAME MATCHES "OS2")

View File

@@ -0,0 +1,381 @@
# - Functions to help assemble a standalone Qt5 executable.
# A collection of CMake utility functions useful for deploying
# Qt5 executables.
#
# The following functions are provided by this module:
# write_qt5_conf
# resolve_qt5_paths
# fixup_qt5_executable
# install_qt5_plugin_path
# install_qt5_plugin
# install_qt5_executable
# Requires CMake 2.6 or greater because it uses function and
# PARENT_SCOPE. Also depends on BundleUtilities.cmake.
#
# WRITE_QT5_CONF(<qt_conf_dir> <qt_conf_contents>)
# Writes a qt.conf file with the <qt_conf_contents> into <qt_conf_dir>.
#
# RESOLVE_QT5_PATHS(<paths_var> [<executable_path>])
# Loop through <paths_var> list and if any don't exist resolve them
# relative to the <executable_path> (if supplied) or the CMAKE_INSTALL_PREFIX.
#
# FIXUP_QT5_EXECUTABLE(<executable> [<qtplugins> <libs> <dirs> <plugins_dir> <request_qt_conf>])
# Copies Qt plugins, writes a Qt configuration file (if needed) and fixes up a
# Qt5 executable using BundleUtilities so it is standalone and can be
# drag-and-drop copied to another machine as long as all of the system
# libraries are compatible.
#
# <executable> should point to the executable to be fixed-up.
#
# <qtplugins> should contain a list of the names or paths of any Qt plugins
# to be installed.
#
# <libs> will be passed to BundleUtilities and should be a list of any already
# installed plugins, libraries or executables to also be fixed-up.
#
# <dirs> will be passed to BundleUtilities and should contain and directories
# to be searched to find library dependencies.
#
# <plugins_dir> allows an custom plugins directory to be used.
#
# <request_qt_conf> will force a qt.conf file to be written even if not needed.
#
# INSTALL_QT5_PLUGIN_PATH(plugin executable copy installed_plugin_path_var <plugins_dir> <component> <configurations>)
# Install (or copy) a resolved <plugin> to the default plugins directory
# (or <plugins_dir>) relative to <executable> and store the result in
# <installed_plugin_path_var>.
#
# If <copy> is set to TRUE then the plugins will be copied rather than
# installed. This is to allow this module to be used at CMake time rather than
# install time.
#
# If <component> is set then anything installed will use this COMPONENT.
#
# INSTALL_QT5_PLUGIN(plugin executable copy installed_plugin_path_var <plugins_dir> <component>)
# Install (or copy) an unresolved <plugin> to the default plugins directory
# (or <plugins_dir>) relative to <executable> and store the result in
# <installed_plugin_path_var>. See documentation of INSTALL_QT5_PLUGIN_PATH.
#
# INSTALL_QT5_EXECUTABLE(<executable> [<qtplugins> <libs> <dirs> <plugins_dir> <request_qt_conf> <component>])
# Installs Qt plugins, writes a Qt configuration file (if needed) and fixes up
# a Qt5 executable using BundleUtilities so it is standalone and can be
# drag-and-drop copied to another machine as long as all of the system
# libraries are compatible. The executable will be fixed-up at install time.
# <component> is the COMPONENT used for bundle fixup and plugin installation.
# See documentation of FIXUP_QT5_BUNDLE.
#=============================================================================
# Copyright 2011 Mike McQuaid <m...@mikemcquaid.com>
# Copyright 2013 Mihai Moldovan <io...@ionic.de>
# CMake - Cross Platform Makefile Generator
# Copyright 2000-2011 Kitware, Inc., Insight Software Consortium
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# * Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# * Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in the
# documentation and/or other materials provided with the distribution.
#
# * Neither the names of Kitware, Inc., the Insight Software Consortium,
# nor the names of their contributors may be used to endorse or promote
# products derived from this software without specific prior written
# permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
# HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
# The functions defined in this file depend on the fixup_bundle function
# (and others) found in BundleUtilities.cmake
include(BundleUtilities)
set(DeployQt5_cmake_dir "${CMAKE_CURRENT_LIST_DIR}")
set(DeployQt5_apple_plugins_dir "PlugIns")
function(write_qt5_conf qt_conf_dir qt_conf_contents)
set(qt_conf_path "${qt_conf_dir}/qt.conf")
message(STATUS "Writing ${qt_conf_path}")
file(WRITE "${qt_conf_path}" "${qt_conf_contents}")
endfunction()
function(resolve_qt5_paths paths_var)
set(executable_path ${ARGV1})
set(paths_resolved)
foreach(path ${${paths_var}})
if(EXISTS "${path}")
list(APPEND paths_resolved "${path}")
else()
if(${executable_path})
list(APPEND paths_resolved
"${executable_path}/${path}")
else()
list(APPEND paths_resolved
"\$ENV{DESTDIR}\${CMAKE_INSTALL_PREFIX}/${path}")
endif()
endif()
endforeach()
set(${paths_var} ${paths_resolved} PARENT_SCOPE)
endfunction()
function(fixup_qt5_executable executable)
set(qtplugins ${ARGV1})
set(libs ${ARGV2})
set(dirs ${ARGV3})
set(plugins_dir ${ARGV4})
set(request_qt_conf ${ARGV5})
message(STATUS "fixup_qt5_executable")
message(STATUS " executable='${executable}'")
message(STATUS " qtplugins='${qtplugins}'")
message(STATUS " libs='${libs}'")
message(STATUS " dirs='${dirs}'")
message(STATUS " plugins_dir='${plugins_dir}'")
message(STATUS " request_qt_conf='${request_qt_conf}'")
if(QT_LIBRARY_DIR)
list(APPEND dirs "${QT_LIBRARY_DIR}")
endif()
if(QT_BINARY_DIR)
list(APPEND dirs "${QT_BINARY_DIR}")
endif()
if(APPLE)
set(qt_conf_dir "${executable}/Contents/Resources")
set(executable_path "${executable}")
set(write_qt_conf TRUE)
if(NOT plugins_dir)
set(plugins_dir "${DeployQt5_apple_plugins_dir}")
endif()
else()
get_filename_component(executable_path "${executable}" PATH)
if(NOT executable_path)
set(executable_path ".")
endif()
set(qt_conf_dir "${executable_path}")
set(write_qt_conf ${request_qt_conf})
endif()
foreach(plugin ${qtplugins})
set(installed_plugin_path "")
install_qt5_plugin("${plugin}" "${executable}" 1
installed_plugin_path)
list(APPEND libs ${installed_plugin_path})
endforeach()
foreach(lib ${libs})
if(NOT EXISTS "${lib}")
message(FATAL_ERROR "Library does not exist: ${lib}")
endif()
endforeach()
resolve_qt5_paths(libs "${executable_path}")
if(write_qt_conf)
set(qt_conf_contents "[Paths]\nPlugins = ${plugins_dir}")
write_qt5_conf("${qt_conf_dir}" "${qt_conf_contents}")
endif()
fixup_bundle("${executable}" "${libs}" "${dirs}")
endfunction()
function(install_qt5_plugin_path plugin executable copy
installed_plugin_path_var)
set(plugins_dir ${ARGV4})
set(component ${ARGV5})
set(configurations ${ARGV6})
if(EXISTS "${plugin}")
if(APPLE)
if(NOT plugins_dir)
set(plugins_dir
"${DeployQt5_apple_plugins_dir}")
endif()
set(plugins_path
"${executable}/Contents/${plugins_dir}")
else()
get_filename_component(plugins_path "${executable}"
PATH)
if(NOT plugins_path)
set(plugins_path ".")
endif()
if(plugins_dir)
set(plugins_path
"${plugins_path}/${plugins_dir}")
endif()
endif()
set(plugin_group "")
get_filename_component(plugin_path "${plugin}" PATH)
get_filename_component(plugin_parent_path "${plugin_path}" PATH)
get_filename_component(plugin_parent_dir_name
"${plugin_parent_path}" NAME)
get_filename_component(plugin_name "${plugin}" NAME)
string(TOLOWER "${plugin_parent_dir_name}"
plugin_parent_dir_name)
if("${plugin_parent_dir_name}" STREQUAL "plugins")
get_filename_component(plugin_group "${plugin_path}"
NAME)
set(${plugin_group_var} "${plugin_group}")
endif()
set(plugins_path "${plugins_path}/${plugin_group}")
if(${copy})
file(MAKE_DIRECTORY "${plugins_path}")
file(COPY "${plugin}" DESTINATION "${plugins_path}")
else()
if(configurations AND (CMAKE_CONFIGURATION_TYPES OR
CMAKE_BUILD_TYPE))
set(configurations CONFIGURATIONS
${configurations})
else()
unset(configurations)
endif()
install(FILES "${plugin}" DESTINATION "${plugins_path}"
${configurations} ${component})
endif()
set(${installed_plugin_path_var}
"${plugins_path}/${plugin_name}" PARENT_SCOPE)
endif()
endfunction()
function(install_qt5_plugin plugin executable copy installed_plugin_path_var)
set(plugins_dir ${ARGV4})
set(component ${ARGV5})
if(EXISTS "${plugin}")
install_qt5_plugin_path("${plugin}" "${executable}" "${copy}"
"${installed_plugin_path_var}" "${plugins_dir}" "${component}")
else()
#string(TOUPPER "QT_${plugin}_PLUGIN" plugin_var)
set(plugin_release)
set(plugin_debug)
set(plugin_tmp_path)
set(plugin_find_path "${Qt5Core_DIR}/../../../plugins/")
get_filename_component(plugin_find_path "${plugin_find_path}"
REALPATH)
set(plugin_find_release_filename "lib${plugin}.dylib")
set(plugin_find_debug_filename "lib${plugin}_debug.dylib")
file(GLOB_RECURSE pluginlist "${plugin_find_path}"
"${plugin_find_path}/*/lib*.dylib")
foreach(found_plugin ${pluginlist})
get_filename_component(curname "${found_plugin}" NAME)
if("${curname}" STREQUAL "${plugin_find_release_filename}")
set(plugin_tmp_release_path "${found_plugin}")
endif()
if("${curname}" STREQUAL "${plugin_find_debug_filename}")
set(plugin_tmp_debug_path "${found_plugin}")
endif()
endforeach()
if((NOT DEFINED plugin_tmp_release_path OR NOT EXISTS
"${plugin_tmp_release_path}") AND (NOT DEFINED plugin_tmp_debug_PATH OR NOT
EXISTS "${plugin_tmp_debug_path}"))
message(WARNING "Qt plugin \"${plugin}\" not recognized
or found.")
endif()
if(EXISTS "${plugin_tmp_release_path}")
set(plugin_release "${plugin_tmp_release_path}")
elseif(EXISTS "${plugin_tmp_debug_path}")
set(plugin_release "${plugin_tmp_debug_path}")
endif()
if(EXISTS "${plugin_tmp_debug_path}")
set(plugin_debug "${plugin_tmp_debug_path}")
elseif(EXISTS "${plugin_tmp_release_path}")
set(plugin_debug "${plugin_tmp_release_path}")
endif()
if(CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE)
install_qt5_plugin_path("${plugin_release}"
"${executable}" "${copy}" "${installed_plugin_path_var}_release"
"${plugins_dir}" "${component}" "Release|RelWithDebInfo|MinSizeRel")
install_qt5_plugin_path("${plugin_debug}"
"${executable}" "${copy}" "${installed_plugin_path_var}_debug" "${plugins_dir}"
"${component}" "Debug")
if(CMAKE_BUILD_TYPE MATCHES "^Debug$")
set(${installed_plugin_path_var}
${${installed_plugin_path_var}_debug})
else()
set(${installed_plugin_path_var}
${${installed_plugin_path_var}_release})
endif()
else()
install_qt5_plugin_path("${plugin_release}"
"${executable}" "${copy}" "${installed_plugin_path_var}" "${plugins_dir}"
"${component}")
endif()
endif()
set(${installed_plugin_path_var} ${${installed_plugin_path_var}}
PARENT_SCOPE)
endfunction()
function(install_qt5_executable executable)
set(qtplugins ${ARGV1})
set(libs ${ARGV2})
set(dirs ${ARGV3})
set(plugins_dir ${ARGV4})
set(request_qt_conf ${ARGV5})
set(component ${ARGV6})
if(QT_LIBRARY_DIR)
list(APPEND dirs "${QT_LIBRARY_DIR}")
endif()
if(QT_BINARY_DIR)
list(APPEND dirs "${QT_BINARY_DIR}")
endif()
if(component)
set(component COMPONENT ${component})
else()
unset(component)
endif()
get_filename_component(executable_absolute "${executable}" ABSOLUTE)
if(EXISTS "${QT_QTCORE_LIBRARY_RELEASE}")
gp_file_type("${executable_absolute}"
"${QT_QTCORE_LIBRARY_RELEASE}" qtcore_type)
elseif(EXISTS "${QT_QTCORE_LIBRARY_DEBUG}")
gp_file_type("${executable_absolute}" "${QT_QTCORE_LIBRARY_DEBUG}"
qtcore_type)
endif()
if(qtcore_type STREQUAL "system")
set(qt_plugins_dir "")
endif()
if(QT_IS_STATIC)
message(WARNING "Qt built statically: not installing plugins.")
else()
foreach(plugin ${qtplugins})
message(STATUS "trying to install plugin ${plugin}")
set(installed_plugin_paths "")
install_qt5_plugin("${plugin}" "${executable}" 0
installed_plugin_paths "${plugins_dir}" "${component}")
list(APPEND libs ${installed_plugin_paths})
endforeach()
endif()
resolve_qt5_paths(libs "")
install(CODE
"include(\"${DeployQt5_cmake_dir}/DeployQt5.cmake\")
set(BU_CHMOD_BUNDLE_ITEMS TRUE)
FIXUP_QT5_EXECUTABLE(\"\$ENV{DESTDIR}\${CMAKE_INSTALL_PREFIX}/${executable}\"
\"\" \"${libs}\" \"${dirs}\" \"${plugins_dir}\" \"${request_qt_conf}\")"
${component}
)
endfunction()

View File

@@ -0,0 +1,49 @@
# - Try to find CMocka
# Once done this will define
#
# CMOCKA_ROOT_DIR - Set this variable to the root installation of CMocka
#
# Read-Only variables:
# CMOCKA_FOUND - system has CMocka
# CMOCKA_INCLUDE_DIR - the CMocka include directory
# CMOCKA_LIBRARIES - Link these to use CMocka
# CMOCKA_DEFINITIONS - Compiler switches required for using CMocka
#
#=============================================================================
# Copyright (c) 2011-2012 Andreas Schneider <asn@cryptomilk.org>
#
# Distributed under the OSI-approved BSD License (the "License");
# see accompanying file Copyright.txt for details.
#
# This software is distributed WITHOUT ANY WARRANTY; without even the
# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
# See the License for more information.
#=============================================================================
#
find_path(CMOCKA_INCLUDE_DIR
NAMES
cmocka.h
PATHS
${CMOCKA_ROOT_DIR}/include
)
find_library(CMOCKA_LIBRARY
NAMES
cmocka
PATHS
${CMOCKA_ROOT_DIR}/include
)
if (CMOCKA_LIBRARY)
set(CMOCKA_LIBRARIES
${CMOCKA_LIBRARIES}
${CMOCKA_LIBRARY}
)
endif (CMOCKA_LIBRARY)
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(CMocka DEFAULT_MSG CMOCKA_LIBRARIES CMOCKA_INCLUDE_DIR)
# show the CMOCKA_INCLUDE_DIR and CMOCKA_LIBRARIES variables only in the advanced view
mark_as_advanced(CMOCKA_INCLUDE_DIR CMOCKA_LIBRARIES)

View File

@@ -1,28 +0,0 @@
IF( DEFINED CSYNC_BUILD_PATH )
SET(CSYNC_LIBRARY_PATH ${CSYNC_BUILD_PATH})
SET(CSYNC_BINARY_DIR ${CSYNC_BUILD_PATH})
IF(WIN32)
SET(CSYNC_LIBRARY ${CSYNC_BUILD_PATH}/src/libocsync.dll)
ELSEIF( APPLE )
SET(CSYNC_LIBRARY ${CSYNC_BUILD_PATH}/src/libocsync.dylib)
ELSE()
SET(CSYNC_LIBRARY ${CSYNC_BUILD_PATH}/src/libocsync.so)
ENDIF()
ELSE()
FIND_LIBRARY(CSYNC_LIBRARY NAMES ocsync HINTS $ENV{CSYNC_DIR})
ENDIF()
IF(NOT DEFINED CSYNC_INCLUDE_PATH)
FIND_PATH(CSYNC_INCLUDE_PATH NAMES csync.h HINTS $ENV{CSYNC_DIR} )
ENDIF()
SET(CSYNC_INCLUDE_DIR ${CSYNC_INCLUDE_PATH})
# handle the QUIETLY and REQUIRED arguments and set CSYNC_FOUND to TRUE if
# all listed variables are TRUE
include(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(Csync DEFAULT_MSG CSYNC_LIBRARY CSYNC_INCLUDE_PATH)
MARK_AS_ADVANCED( CSYNC_INCLUDE_PATH CSYNC_LIBRARY )

View File

@@ -0,0 +1,82 @@
# - Try to find Iconv
# Once done this will define
#
# ICONV_FOUND - system has Iconv
# ICONV_INCLUDE_DIRS - the Iconv include directory
# ICONV_LIBRARIES - Link these to use Iconv
# ICONV_DEFINITIONS - Compiler switches required for using Iconv
#
# Copyright (c) 2013 Andreas Schneider <asn@cryptomilk.org>
#
# Redistribution and use is allowed according to the terms of the New
# BSD license.
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
#
include(CheckIncludeFile)
include(CheckFunctionExists)
include(CheckLibraryExists)
include(CheckPrototypeDefinition)
find_path(ICONV_INCLUDE_DIR
NAMES
iconv.h sys/iconv.h
)
set(CMAKE_REQUIRED_INCLUDES ${ICONV_INCLUDE_DIR})
check_include_file(iconv.h HAVE_ICONV_H)
check_include_file(sys/iconv.h HAVE_SYS_ICONV_H)
set(CMAKE_REQUIRED_INCLUDES)
find_library(ICONV_LIBRARY
NAMES
iconv
libiconv
PATHS
)
if (ICONV_LIBRARY)
get_filename_component(_ICONV_NAME ${ICONV_LIBRARY} NAME)
get_filename_component(_ICONV_PATH ${ICONV_LIBRARY} PATH)
check_library_exists(${_ICONV_NAME} iconv ${_ICONV_PATH} HAVE_ICONV)
else()
check_function_exists(iconv HAVE_ICONV)
endif()
if (HAVE_ICONV_H OR HAVE_SYS_ICONV_H)
if (HAVE_ICONV_H)
set(_ICONV_PROTO_INCLUDE "iconv.h")
endif (HAVE_ICONV_H)
if (HAVE_SYS_ICONV_H)
set(_ICONV_PROTO_INCLUDE "sys/iconv.h")
endif (HAVE_SYS_ICONV_H)
set(CMAKE_REQUIRED_INCLUDES ${ICONV_INCLUDE_DIR})
check_prototype_definition(iconv
"size_t iconv(iconv_t cd, const char **inbuf, size_t *inbytesleft, char **outbuf, size_t *outbytesleft)"
"-1"
${_ICONV_PROTO_INCLUDE}
HAVE_ICONV_CONST)
set(CMAKE_REQUIRED_INCLUDES)
endif (HAVE_ICONV_H OR HAVE_SYS_ICONV_H)
set(ICONV_INCLUDE_DIRS
${ICONV_INCLUDE_DIR}
)
if (ICONV_LIBRARY)
set(ICONV_LIBRARIES
${ICONV_LIBRARIES}
${ICONV_LIBRARY}
)
endif (ICONV_LIBRARY)
include(FindPackageHandleStandardArgs)
if (ICONV_LIBRARIES)
find_package_handle_standard_args(Iconv DEFAULT_MSG ICONV_LIBRARIES ICONV_INCLUDE_DIRS)
else()
find_package_handle_standard_args(Iconv DEFAULT_MSG ICONV_INCLUDE_DIRS)
endif()
# show the ICONV_INCLUDE_DIRS and ICONV_LIBRARIES variables only in the advanced view
mark_as_advanced(ICONV_INCLUDE_DIRS ICONV_LIBRARIES)

View File

@@ -0,0 +1,96 @@
# - Try to find LibSSH
# Once done this will define
#
# LIBSSH_FOUND - system has LibSSH
# LIBSSH_INCLUDE_DIRS - the LibSSH include directory
# LIBSSH_LIBRARIES - Link these to use LibSSH
# LIBSSH_DEFINITIONS - Compiler switches required for using LibSSH
#
# Copyright (c) 2009 Andreas Schneider <asn@cryptomilk.org>
#
# Redistribution and use is allowed according to the terms of the New
# BSD license.
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
#
if (LIBSSH_LIBRARIES AND LIBSSH_INCLUDE_DIRS)
# in cache already
set(LIBSSH_FOUND TRUE)
else (LIBSSH_LIBRARIES AND LIBSSH_INCLUDE_DIRS)
find_path(LIBSSH_INCLUDE_DIR
NAMES
libssh/libssh.h
PATHS
/usr/include
/usr/local/include
/opt/local/include
/sw/include
${CMAKE_INCLUDE_PATH}
${CMAKE_INSTALL_PREFIX}/include
)
find_library(SSH_LIBRARY
NAMES
ssh
libssh
PATHS
/usr/lib
/usr/local/lib
/opt/local/lib
/sw/lib
${CMAKE_LIBRARY_PATH}
${CMAKE_INSTALL_PREFIX}/lib
)
if (LIBSSH_INCLUDE_DIR AND SSH_LIBRARY)
set(SSH_FOUND TRUE)
endif (LIBSSH_INCLUDE_DIR AND SSH_LIBRARY)
set(LIBSSH_INCLUDE_DIRS
${LIBSSH_INCLUDE_DIR}
)
if (SSH_FOUND)
set(LIBSSH_LIBRARIES
${LIBSSH_LIBRARIES}
${SSH_LIBRARY}
)
if (LibSSH_FIND_VERSION)
file(STRINGS ${LIBSSH_INCLUDE_DIR}/libssh/libssh.h LIBSSH_VERSION_MAJOR
REGEX "#define[ ]+LIBSSH_VERSION_MAJOR[ ]+[0-9]+")
# Older versions of libssh like libssh-0.2 have LIBSSH_VERSION but not LIBSSH_VERSION_MAJOR
if (LIBSSH_VERSION_MAJOR)
string(REGEX MATCH "[0-9]+" LIBSSH_VERSION_MAJOR ${LIBSSH_VERSION_MAJOR})
file(STRINGS ${LIBSSH_INCLUDE_DIR}/libssh/libssh.h LIBSSH_VERSION_MINOR
REGEX "#define[ ]+LIBSSH_VERSION_MINOR[ ]+[0-9]+")
string(REGEX MATCH "[0-9]+" LIBSSH_VERSION_MINOR ${LIBSSH_VERSION_MINOR})
file(STRINGS ${LIBSSH_INCLUDE_DIR}/libssh/libssh.h LIBSSH_VERSION_PATCH
REGEX "#define[ ]+LIBSSH_VERSION_MICRO[ ]+[0-9]+")
string(REGEX MATCH "[0-9]+" LIBSSH_VERSION_PATCH ${LIBSSH_VERSION_PATCH})
set(LibSSH_VERSION ${LIBSSH_VERSION_MAJOR}.${LIBSSH_VERSION_MINOR}.${LIBSSH_VERSION_PATCH})
include(FindPackageVersionCheck)
find_package_version_check(LibSSH DEFAULT_MSG)
else (LIBSSH_VERSION_MAJOR)
message(STATUS "LIBSSH_VERSION_MAJOR not found in ${LIBSSH_INCLUDE_DIR}/libssh/libssh.h, assuming libssh is too old")
set(LIBSSH_FOUND FALSE)
endif (LIBSSH_VERSION_MAJOR)
endif (LibSSH_FIND_VERSION)
endif (SSH_FOUND)
# If the version is too old, but libs and includes are set,
# find_package_handle_standard_args will set LIBSSH_FOUND to TRUE again,
# so we need this if() here.
if (LIBSSH_FOUND)
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(LibSSH DEFAULT_MSG LIBSSH_LIBRARIES LIBSSH_INCLUDE_DIRS)
endif (LIBSSH_FOUND)
# show the LIBSSH_INCLUDE_DIRS and LIBSSH_LIBRARIES variables only in the advanced view
mark_as_advanced(LIBSSH_INCLUDE_DIRS LIBSSH_LIBRARIES)
endif (LIBSSH_LIBRARIES AND LIBSSH_INCLUDE_DIRS)

View File

@@ -0,0 +1,73 @@
# - Try to find Neon
# Once done this will define
#
# NEON_FOUND - system has Neon
# NEON_INCLUDE_DIRS - the Neon include directory
# NEON_LIBRARIES - Link these to use Neon
# NEON_DEFINITIONS - Compiler switches required for using Neon
#
# Copyright (c) 2011-2013 Andreas Schneider <asn@cryptomilk.org>
#
# Redistribution and use is allowed according to the terms of the New
# BSD license.
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
#
find_package(PkgConfig)
if (PKG_CONFIG_FOUND)
pkg_check_modules(_NEON neon)
endif (PKG_CONFIG_FOUND)
include(GNUInstallDirs)
find_path(NEON_INCLUDE_DIRS
NAMES
neon/ne_basic.h
HINTS
${_NEON_INCLUDEDIR}
${CMAKE_INSTALL_INCLUDEDIR}
)
find_library(NEON_LIBRARIES
NAMES
neon neon-27
HINTS
${_NEON_LIBDIR}
${CMAKE_INSTALL_LIBDIR}
${CMAKE_INSTALL_PREFIX}/lib
${CMAKE_INSTALL_PREFIX}/lib64
)
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(Neon DEFAULT_MSG NEON_LIBRARIES NEON_INCLUDE_DIRS)
# show the NEON_INCLUDE_DIRS and NEON_LIBRARIES variables only in the advanced view
mark_as_advanced(NEON_INCLUDE_DIRS NEON_LIBRARIES)
# Check if neon was compiled with LFS support, if so, the NE_LFS variable has to
# be defined in the owncloud module.
# If neon was not compiled with LFS its also ok since the underlying system
# than probably supports large files anyway.
IF( CMAKE_FIND_ROOT_PATH )
FIND_PROGRAM( NEON_CONFIG_EXECUTABLE NAMES neon-config HINTS ${CMAKE_FIND_ROOT_PATH}/bin )
ELSE( CMAKE_FIND_ROOT_PATH )
FIND_PROGRAM( NEON_CONFIG_EXECUTABLE NAMES neon-config )
ENDIF( CMAKE_FIND_ROOT_PATH )
IF ( NEON_CONFIG_EXECUTABLE )
MESSAGE(STATUS "neon-config executable: ${NEON_CONFIG_EXECUTABLE}")
# neon-config --support lfs
EXECUTE_PROCESS( COMMAND ${NEON_CONFIG_EXECUTABLE} "--support" "lfs"
RESULT_VARIABLE LFS
OUTPUT_STRIP_TRAILING_WHITESPACE )
IF (LFS EQUAL 0)
MESSAGE(STATUS "libneon has been compiled with LFS support")
SET(NEON_WITH_LFS 1)
ELSE (LFS EQUAL 0)
MESSAGE(STATUS "libneon has not been compiled with LFS support, rely on OS")
ENDIF (LFS EQUAL 0)
ELSE ( NEON_CONFIG_EXECUTABLE )
MESSAGE(STATUS, "neon-config could not be found.")
ENDIF ( NEON_CONFIG_EXECUTABLE )

View File

@@ -0,0 +1,306 @@
# - Try to find the OpenSSL encryption library
# Once done this will define
#
# OPENSSL_ROOT_DIR - Set this variable to the root installation of OpenSSL
#
# Read-Only variables:
# OPENSSL_FOUND - system has the OpenSSL library
# OPENSSL_INCLUDE_DIR - the OpenSSL include directory
# OPENSSL_LIBRARIES - The libraries needed to use OpenSSL
# OPENSSL_VERSION - This is set to $major.$minor.$revision$path (eg. 0.9.8s)
#=============================================================================
# Copyright 2006-2009 Kitware, Inc.
# Copyright 2006 Alexander Neundorf <neundorf@kde.org>
# Copyright 2009-2011 Mathieu Malaterre <mathieu.malaterre@gmail.com>
#
# Distributed under the OSI-approved BSD License (the "License");
# see accompanying file Copyright.txt for details.
#
# This software is distributed WITHOUT ANY WARRANTY; without even the
# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
# See the License for more information.
#=============================================================================
# (To distribute this file outside of CMake, substitute the full
# License text for the above reference.)
if (UNIX)
find_package(PkgConfig QUIET)
pkg_check_modules(_OPENSSL QUIET openssl)
endif (UNIX)
# http://www.slproweb.com/products/Win32OpenSSL.html
SET(_OPENSSL_ROOT_HINTS
$ENV{OPENSSL_ROOT_DIR}
${OPENSSL_ROOT_DIR}
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\OpenSSL (32-bit)_is1;Inno Setup: App Path]"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\OpenSSL (64-bit)_is1;Inno Setup: App Path]"
)
SET(_OPENSSL_ROOT_PATHS
"$ENV{PROGRAMFILES}/OpenSSL"
"$ENV{PROGRAMFILES}/OpenSSL-Win32"
"$ENV{PROGRAMFILES}/OpenSSL-Win64"
"C:/OpenSSL/"
"C:/OpenSSL-Win32/"
"C:/OpenSSL-Win64/"
)
SET(_OPENSSL_ROOT_HINTS_AND_PATHS
HINTS ${_OPENSSL_ROOT_HINTS}
PATHS ${_OPENSSL_ROOT_PATHS}
)
FIND_PATH(OPENSSL_INCLUDE_DIR
NAMES
openssl/ssl.h
HINTS
${_OPENSSL_INCLUDEDIR}
${_OPENSSL_ROOT_HINTS_AND_PATHS}
PATH_SUFFIXES
include
)
IF(WIN32 AND NOT CYGWIN)
# MINGW should go here too
IF(MSVC)
# /MD and /MDd are the standard values - if someone wants to use
# others, the libnames have to change here too
# use also ssl and ssleay32 in debug as fallback for openssl < 0.9.8b
# TODO: handle /MT and static lib
# In Visual C++ naming convention each of these four kinds of Windows libraries has it's standard suffix:
# * MD for dynamic-release
# * MDd for dynamic-debug
# * MT for static-release
# * MTd for static-debug
# Implementation details:
# We are using the libraries located in the VC subdir instead of the parent directory eventhough :
# libeay32MD.lib is identical to ../libeay32.lib, and
# ssleay32MD.lib is identical to ../ssleay32.lib
FIND_LIBRARY(LIB_EAY_DEBUG
NAMES
libeay32MDd
libeay32
${_OPENSSL_ROOT_HINTS_AND_PATHS}
PATH_SUFFIXES
"lib"
"VC"
"lib/VC"
)
FIND_LIBRARY(LIB_EAY_RELEASE
NAMES
libeay32MD
libeay32
${_OPENSSL_ROOT_HINTS_AND_PATHS}
PATH_SUFFIXES
"lib"
"VC"
"lib/VC"
)
FIND_LIBRARY(SSL_EAY_DEBUG
NAMES
ssleay32MDd
ssleay32
ssl
${_OPENSSL_ROOT_HINTS_AND_PATHS}
PATH_SUFFIXES
"lib"
"VC"
"lib/VC"
)
FIND_LIBRARY(SSL_EAY_RELEASE
NAMES
ssleay32MD
ssleay32
ssl
${_OPENSSL_ROOT_HINTS_AND_PATHS}
PATH_SUFFIXES
"lib"
"VC"
"lib/VC"
)
if( CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE )
set( OPENSSL_LIBRARIES
optimized ${SSL_EAY_RELEASE} debug ${SSL_EAY_DEBUG}
optimized ${LIB_EAY_RELEASE} debug ${LIB_EAY_DEBUG}
)
else()
set( OPENSSL_LIBRARIES ${SSL_EAY_RELEASE} ${LIB_EAY_RELEASE} )
endif()
MARK_AS_ADVANCED(SSL_EAY_DEBUG SSL_EAY_RELEASE)
MARK_AS_ADVANCED(LIB_EAY_DEBUG LIB_EAY_RELEASE)
ELSEIF(MINGW)
# same player, for MingW
FIND_LIBRARY(LIB_EAY
NAMES
libeay32
crypto
${_OPENSSL_ROOT_HINTS_AND_PATHS}
PATH_SUFFIXES
"lib"
"lib/MinGW"
)
FIND_LIBRARY(SSL_EAY
NAMES
ssleay32
ssl
${_OPENSSL_ROOT_HINTS_AND_PATHS}
PATH_SUFFIXES
"lib"
"lib/MinGW"
)
MARK_AS_ADVANCED(SSL_EAY LIB_EAY)
set( OPENSSL_LIBRARIES ${SSL_EAY} ${LIB_EAY} )
ELSE(MSVC)
# Not sure what to pick for -say- intel, let's use the toplevel ones and hope someone report issues:
FIND_LIBRARY(LIB_EAY
NAMES
libeay32
HINTS
${_OPENSSL_LIBDIR}
${_OPENSSL_ROOT_HINTS_AND_PATHS}
PATH_SUFFIXES
lib
)
FIND_LIBRARY(SSL_EAY
NAMES
ssleay32
HINTS
${_OPENSSL_LIBDIR}
${_OPENSSL_ROOT_HINTS_AND_PATHS}
PATH_SUFFIXES
lib
)
MARK_AS_ADVANCED(SSL_EAY LIB_EAY)
set( OPENSSL_LIBRARIES ${SSL_EAY} ${LIB_EAY} )
ENDIF(MSVC)
ELSE(WIN32 AND NOT CYGWIN)
FIND_LIBRARY(OPENSSL_SSL_LIBRARY
NAMES
ssl
ssleay32
ssleay32MD
HINTS
${_OPENSSL_LIBDIR}
${_OPENSSL_ROOT_HINTS_AND_PATHS}
PATH_SUFFIXES
lib
)
FIND_LIBRARY(OPENSSL_CRYPTO_LIBRARY
NAMES
crypto
HINTS
${_OPENSSL_LIBDIR}
${_OPENSSL_ROOT_HINTS_AND_PATHS}
PATH_SUFFIXES
lib
)
MARK_AS_ADVANCED(OPENSSL_CRYPTO_LIBRARY OPENSSL_SSL_LIBRARY)
# compat defines
SET(OPENSSL_SSL_LIBRARIES ${OPENSSL_SSL_LIBRARY})
SET(OPENSSL_CRYPTO_LIBRARIES ${OPENSSL_CRYPTO_LIBRARY})
SET(OPENSSL_LIBRARIES ${OPENSSL_SSL_LIBRARY} ${OPENSSL_CRYPTO_LIBRARY})
ENDIF(WIN32 AND NOT CYGWIN)
function(from_hex HEX DEC)
string(TOUPPER "${HEX}" HEX)
set(_res 0)
string(LENGTH "${HEX}" _strlen)
while (_strlen GREATER 0)
math(EXPR _res "${_res} * 16")
string(SUBSTRING "${HEX}" 0 1 NIBBLE)
string(SUBSTRING "${HEX}" 1 -1 HEX)
if (NIBBLE STREQUAL "A")
math(EXPR _res "${_res} + 10")
elseif (NIBBLE STREQUAL "B")
math(EXPR _res "${_res} + 11")
elseif (NIBBLE STREQUAL "C")
math(EXPR _res "${_res} + 12")
elseif (NIBBLE STREQUAL "D")
math(EXPR _res "${_res} + 13")
elseif (NIBBLE STREQUAL "E")
math(EXPR _res "${_res} + 14")
elseif (NIBBLE STREQUAL "F")
math(EXPR _res "${_res} + 15")
else()
math(EXPR _res "${_res} + ${NIBBLE}")
endif()
string(LENGTH "${HEX}" _strlen)
endwhile()
set(${DEC} ${_res} PARENT_SCOPE)
endfunction(from_hex)
if (OPENSSL_INCLUDE_DIR)
if (_OPENSSL_VERSION)
set(OPENSSL_VERSION "${_OPENSSL_VERSION}")
elseif(OPENSSL_INCLUDE_DIR AND EXISTS "${OPENSSL_INCLUDE_DIR}/openssl/opensslv.h")
file(STRINGS "${OPENSSL_INCLUDE_DIR}/openssl/opensslv.h" openssl_version_str
REGEX "^#define[\t ]+OPENSSL_VERSION_NUMBER[\t ]+0x([0-9a-fA-F])+.*")
# The version number is encoded as 0xMNNFFPPS: major minor fix patch status
# The status gives if this is a developer or prerelease and is ignored here.
# Major, minor, and fix directly translate into the version numbers shown in
# the string. The patch field translates to the single character suffix that
# indicates the bug fix state, which 00 -> nothing, 01 -> a, 02 -> b and so
# on.
string(REGEX REPLACE "^.*OPENSSL_VERSION_NUMBER[\t ]+0x([0-9a-fA-F])([0-9a-fA-F][0-9a-fA-F])([0-9a-fA-F][0-9a-fA-F])([0-9a-fA-F][0-9a-fA-F])([0-9a-fA-F]).*$"
"\\1;\\2;\\3;\\4;\\5" OPENSSL_VERSION_LIST "${openssl_version_str}")
list(GET OPENSSL_VERSION_LIST 0 OPENSSL_VERSION_MAJOR)
list(GET OPENSSL_VERSION_LIST 1 OPENSSL_VERSION_MINOR)
from_hex("${OPENSSL_VERSION_MINOR}" OPENSSL_VERSION_MINOR)
list(GET OPENSSL_VERSION_LIST 2 OPENSSL_VERSION_FIX)
from_hex("${OPENSSL_VERSION_FIX}" OPENSSL_VERSION_FIX)
list(GET OPENSSL_VERSION_LIST 3 OPENSSL_VERSION_PATCH)
if (NOT OPENSSL_VERSION_PATCH STREQUAL "00")
from_hex("${OPENSSL_VERSION_PATCH}" _tmp)
# 96 is the ASCII code of 'a' minus 1
math(EXPR OPENSSL_VERSION_PATCH_ASCII "${_tmp} + 96")
unset(_tmp)
# Once anyone knows how OpenSSL would call the patch versions beyond 'z'
# this should be updated to handle that, too. This has not happened yet
# so it is simply ignored here for now.
string(ASCII "${OPENSSL_VERSION_PATCH_ASCII}" OPENSSL_VERSION_PATCH_STRING)
endif (NOT OPENSSL_VERSION_PATCH STREQUAL "00")
set(OPENSSL_VERSION "${OPENSSL_VERSION_MAJOR}.${OPENSSL_VERSION_MINOR}.${OPENSSL_VERSION_FIX}${OPENSSL_VERSION_PATCH_STRING}")
endif (_OPENSSL_VERSION)
endif (OPENSSL_INCLUDE_DIR)
include(FindPackageHandleStandardArgs)
if (OPENSSL_VERSION)
find_package_handle_standard_args(OpenSSL
REQUIRED_VARS
OPENSSL_LIBRARIES
OPENSSL_INCLUDE_DIR
VERSION_VAR
OPENSSL_VERSION
FAIL_MESSAGE
"Could NOT find OpenSSL, try to set the path to OpenSSL root folder in the system variable OPENSSL_ROOT_DIR"
)
else (OPENSSL_VERSION)
find_package_handle_standard_args(OpenSSL "Could NOT find OpenSSL, try to set the path to OpenSSL root folder in the system variable OPENSSL_ROOT_DIR"
OPENSSL_LIBRARIES
OPENSSL_INCLUDE_DIR
)
endif (OPENSSL_VERSION)
MARK_AS_ADVANCED(OPENSSL_INCLUDE_DIR OPENSSL_LIBRARIES)

View File

@@ -0,0 +1,68 @@
# FIND_PACKAGE_VERSION_CHECK(NAME (DEFAULT_MSG|"Custom failure message"))
# This function is intended to be used in FindXXX.cmake modules files.
# It handles NAME_FIND_VERSION and NAME_VERSION variables in a Module.
#
# Example:
# find_package(LibSSH 0.3.2)
#
# # check for the version and set it
# set(LibSSH_VERSION 0.3.0)
# find_package_version_check(LibSSH DEFAULT_MSG)
#
#
# Copyright (c) 2009 Andreas Schneider <asn@cryptomilk.org>
#
# Redistribution and use is allowed according to the terms of the New
# BSD license.
function(FIND_PACKAGE_VERSION_CHECK _NAME _FAIL_MSG)
string(TOUPPER ${_NAME} _NAME_UPPER)
set(_AGE "old")
if(${_NAME}_FIND_VERSION_EXACT)
if (${_NAME}_FIND_VERSION VERSION_EQUAL ${_NAME}_VERSION)
# exact version found
set(${_NAME_UPPER}_FOUND TRUE)
else (${_NAME}_FIND_VERSION VERSION_EQUAL ${_NAME}_VERSION)
# exect version not found
set(${_NAME_UPPER}_FOUND FALSE)
# check if newer or older
if (${_NAME}_FIND_VERSION VERSION_LESS ${_NAME}_VERSION)
set(_AGE "new")
else (${_NAME}_FIND_VERSION VERSION_LESS ${_NAME}_VERSION)
set(_AGE "old")
endif (${_NAME}_FIND_VERSION VERSION_LESS ${_NAME}_VERSION)
endif (${_NAME}_FIND_VERSION VERSION_EQUAL ${_NAME}_VERSION)
else (${_NAME}_FIND_VERSION_EXACT)
if (${_NAME}_FIND_VERSION)
if (${_NAME}_VERSION VERSION_LESS ${_NAME}_FIND_VERSION)
set(${_NAME_UPPER}_FOUND FALSE)
set(_AGE "old")
else (${_NAME}_VERSION VERSION_LESS ${_NAME}_FIND_VERSION)
set(${_NAME_UPPER}_FOUND TRUE)
endif (${_NAME}_VERSION VERSION_LESS ${_NAME}_FIND_VERSION)
endif (${_NAME}_FIND_VERSION)
endif(${_NAME}_FIND_VERSION_EXACT)
if ("${_FAIL_MSG}" STREQUAL "DEFAULT_MSG")
if (${_NAME}_FIND_VERSION_EXACT)
set(_FAIL_MESSAGE "The installed ${_NAME} version ${${_NAME}_VERSION} is too ${_AGE}, version ${${_NAME}_FIND_VERSION} is required.")
else (${_NAME}_FIND_VERSION_EXACT)
set(_FAIL_MESSAGE "The installed ${_NAME} version ${${_NAME}_VERSION} is too ${_AGE}, at least version ${${_NAME}_FIND_VERSION} is required.")
endif (${_NAME}_FIND_VERSION_EXACT)
else ("${_FAIL_MSG}" STREQUAL "DEFAULT_MSG")
set(_FAIL_MESSAGE "${_FAIL_MSG}")
endif ("${_FAIL_MSG}" STREQUAL "DEFAULT_MSG")
if (NOT ${_NAME_UPPER}_FOUND)
if (${_NAME}_FIND_REQUIRED)
message(FATAL_ERROR "${_FAIL_MESSAGE}")
else (${_NAME}_FIND_REQUIRED)
if (NOT ${_NAME}_FIND_QUIETLY)
message(STATUS "${_FAIL_MESSAGE}")
endif (NOT ${_NAME}_FIND_QUIETLY)
endif (${_NAME}_FIND_REQUIRED)
endif (NOT ${_NAME_UPPER}_FOUND)
set(${_NAME_UPPER}_FOUND ${${_NAME_UPPER}_FOUND} PARENT_SCOPE)
endfunction(FIND_PACKAGE_VERSION_CHECK)

View File

@@ -0,0 +1,29 @@
# - Try to find QtKeychain
# Once done this will define
# QTKEYCHAIN_FOUND - System has QtKeychain
# QTKEYCHAIN_INCLUDE_DIRS - The QtKeychain include directories
# QTKEYCHAIN_LIBRARIES - The libraries needed to use QtKeychain
# QTKEYCHAIN_DEFINITIONS - Compiler switches required for using LibXml2
find_path(QTKEYCHAIN_INCLUDE_DIR qt5keychain/keychain.h)
find_library(QTKEYCHAIN_LIBRARY
NAMES
qt5keychain
lib5qtkeychain
PATHS
/usr/lib
/usr/lib/${CMAKE_ARCH_TRIPLET}
/usr/local/lib
/opt/local/lib
${CMAKE_LIBRARY_PATH}
${CMAKE_INSTALL_PREFIX}/lib
)
include(FindPackageHandleStandardArgs)
# handle the QUIETLY and REQUIRED arguments and set QTKEYCHAIN_FOUND to TRUE
# if all listed variables are TRUE
find_package_handle_standard_args(Qt5Keychain DEFAULT_MSG
QTKEYCHAIN_LIBRARY QTKEYCHAIN_INCLUDE_DIR)
mark_as_advanced(QTKEYCHAIN_INCLUDE_DIR QTKEYCHAIN_LIBRARY)

View File

@@ -1,18 +1,29 @@
# - Try to find QtKeyChain
# - Try to find QtKeychain
# Once done this will define
# QTKEYCHAIN_FOUND - System has QtKeyChain
# QTKEYCHAIN_INCLUDE_DIRS - The QtKeyChain include directories
# QTKEYCHAIN_LIBRARIES - The libraries needed to use QtKeyChain
# QTKEYCHAIN_FOUND - System has QtKeychain
# QTKEYCHAIN_INCLUDE_DIRS - The QtKeychain include directories
# QTKEYCHAIN_LIBRARIES - The libraries needed to use QtKeychain
# QTKEYCHAIN_DEFINITIONS - Compiler switches required for using LibXml2
find_path(QTKEYCHAIN_INCLUDE_DIR qtkeychain/keychain.h)
find_library(QTKEYCHAIN_LIBRARY NAMES libqtkeychain qtkeychain)
find_library(QTKEYCHAIN_LIBRARY
NAMES
qtkeychain
libqtkeychain
PATHS
/usr/lib
/usr/lib/${CMAKE_ARCH_TRIPLET}
/usr/local/lib
/opt/local/lib
${CMAKE_LIBRARY_PATH}
${CMAKE_INSTALL_PREFIX}/lib
)
include(FindPackageHandleStandardArgs)
# handle the QUIETLY and REQUIRED arguments and set QTKEYCHAIN_FOUND to TRUE
# if all listed variables are TRUE
find_package_handle_standard_args(QtKeyChain DEFAULT_MSG
find_package_handle_standard_args(QtKeychain DEFAULT_MSG
QTKEYCHAIN_LIBRARY QTKEYCHAIN_INCLUDE_DIR)
mark_as_advanced(QTKEYCHAIN_INCLUDE_DIR QTKEYCHAIN_LIBRARY )
mark_as_advanced(QTKEYCHAIN_INCLUDE_DIR QTKEYCHAIN_LIBRARY)

View File

@@ -0,0 +1,66 @@
# - Try to find SMBClient
# Once done this will define
#
# SMBCLIENT_FOUND - system has SMBClient
# SMBCLIENT_INCLUDE_DIRS - the SMBClient include directory
# SMBCLIENT_LIBRARIES - Link these to use SMBClient
# SMBCLIENT_DEFINITIONS - Compiler switches required for using SMBClient
#
# Copyright (c) 2013 Andreas Schneider <asn@cryptomilk.org>
#
# Redistribution and use is allowed according to the terms of the New
# BSD license.
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
#
if (SMBCLIENT_LIBRARIES AND SMBCLIENT_INCLUDE_DIRS)
# in cache already
set(SMBCLIENT_FOUND TRUE)
else (SMBCLIENT_LIBRARIES AND SMBCLIENT_INCLUDE_DIRS)
find_package(PkgConfig)
if (PKG_CONFIG_FOUND)
pkg_check_modules(_SMBCLIENT smbclient)
endif (PKG_CONFIG_FOUND)
find_path(SMBCLIENT_INCLUDE_DIR
NAMES
libsmbclient.h
PATHS
${_SMBCLIENT_INCLUDEDIR}
/usr/include
/usr/local/include
/opt/local/include
/sw/include
)
find_library(SMBCLIENT_LIBRARY
NAMES
smbclient
PATHS
${_SMBCLIENT_LIBDIR}
/usr/lib
/usr/local/lib
/opt/local/lib
/sw/lib
)
set(SMBCLIENT_INCLUDE_DIRS
${SMBCLIENT_INCLUDE_DIR}
)
if (SMBCLIENT_LIBRARY)
set(SMBCLIENT_LIBRARIES
${SMBCLIENT_LIBRARIES}
${SMBCLIENT_LIBRARY}
)
endif (SMBCLIENT_LIBRARY)
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(SMBClient DEFAULT_MSG SMBCLIENT_LIBRARIES SMBCLIENT_INCLUDE_DIRS)
# show the SMBCLIENT_INCLUDE_DIRS and SMBCLIENT_LIBRARIES variables only in the advanced view
mark_as_advanced(SMBCLIENT_INCLUDE_DIRS SMBCLIENT_LIBRARIES)
endif (SMBCLIENT_LIBRARIES AND SMBCLIENT_INCLUDE_DIRS)

View File

@@ -0,0 +1,58 @@
# - Try to find SQLite3
# Once done this will define
#
# SQLITE3_FOUND - system has SQLite3
# SQLITE3_INCLUDE_DIRS - the SQLite3 include directory
# SQLITE3_LIBRARIES - Link these to use SQLite3
# SQLITE3_DEFINITIONS - Compiler switches required for using SQLite3
#
# Copyright (c) 2009-2013 Andreas Schneider <asn@cryptomilk.org>
#
# Redistribution and use is allowed according to the terms of the New
# BSD license.
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
#
if (UNIX)
find_package(PkgConfig)
if (PKG_CONFIG_FOUND)
pkg_check_modules(_SQLITE3 sqlite3)
endif (PKG_CONFIG_FOUND)
endif (UNIX)
find_path(SQLITE3_INCLUDE_DIR
NAMES
sqlite3.h
PATHS
${_SQLITE3_INCLUDEDIR}
)
find_library(SQLITE3_LIBRARY
NAMES
sqlite3 sqlite3-0
PATHS
${_SQLITE3_LIBDIR}
)
set(SQLITE3_INCLUDE_DIRS
${SQLITE3_INCLUDE_DIR}
)
if (SQLITE3_LIBRARY)
set(SQLITE3_LIBRARIES
${SQLITE3_LIBRARIES}
${SQLITE3_LIBRARY}
)
endif (SQLITE3_LIBRARY)
if (SQLite3_FIND_VERSION AND _SQLITE3_VERSION)
set(SQLite3_VERSION _SQLITE3_VERSION)
endif (SQLite3_FIND_VERSION AND _SQLITE3_VERSION)
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(SQLite3 DEFAULT_MSG SQLITE3_LIBRARIES SQLITE3_INCLUDE_DIRS)
# show the SQLITE3_INCLUDE_DIRS and SQLITE3_LIBRARIES variables only in the advanced view
mark_as_advanced(SQLITE3_INCLUDE_DIRS SQLITE3_LIBRARIES)

View File

@@ -0,0 +1,23 @@
# Find Sparkle.framework
#
# Once done this will define
# SPARKLE_FOUND - system has Sparkle
# SPARKLE_INCLUDE_DIR - the Sparkle include directory
# SPARKLE_LIBRARY - The library needed to use Sparkle
# Copyright (c) 2009, Vittorio Giovara <vittorio.giovara@gmail.com>
#
# Distributed under the OSI-approved BSD License (the "License");
# see accompanying file Copyright.txt for details.
#
# This software is distributed WITHOUT ANY WARRANTY; without even the
# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
# See the License for more information.
include(FindPackageHandleStandardArgs)
find_path(SPARKLE_INCLUDE_DIR Sparkle.h)
find_library(SPARKLE_LIBRARY NAMES Sparkle)
find_package_handle_standard_args(Sparkle DEFAULT_MSG SPARKLE_INCLUDE_DIR SPARKLE_LIBRARY)
mark_as_advanced(SPARKLE_INCLUDE_DIR SPARKLE_LIBRARY)

View File

@@ -1,32 +1,49 @@
# - Define GNU standard installation directories
#.rst:
# GNUInstallDirs
# --------------
#
# Define GNU standard installation directories
#
# Provides install directory variables as defined for GNU software:
# http://www.gnu.org/prep/standards/html_node/Directory-Variables.html
#
# ::
#
# http://www.gnu.org/prep/standards/html_node/Directory-Variables.html
#
# Inclusion of this module defines the following variables:
# CMAKE_INSTALL_<dir> - destination for files of a given type
# CMAKE_INSTALL_FULL_<dir> - corresponding absolute path
#
# ::
#
# CMAKE_INSTALL_<dir> - destination for files of a given type
# CMAKE_INSTALL_FULL_<dir> - corresponding absolute path
#
# where <dir> is one of:
# BINDIR - user executables (bin)
# SBINDIR - system admin executables (sbin)
# LIBEXECDIR - program executables (libexec)
# SYSCONFDIR - read-only single-machine data (etc)
# SHAREDSTATEDIR - modifiable architecture-independent data (com)
# LOCALSTATEDIR - modifiable single-machine data (var)
# LIBDIR - object code libraries (lib or lib64)
# INCLUDEDIR - C header files (include)
# OLDINCLUDEDIR - C header files for non-gcc (/usr/include)
# DATAROOTDIR - read-only architecture-independent data root (share)
# DATADIR - read-only architecture-independent data (DATAROOTDIR)
# INFODIR - info documentation (DATAROOTDIR/info)
# LOCALEDIR - locale-dependent data (DATAROOTDIR/locale)
# MANDIR - man documentation (DATAROOTDIR/man)
# DOCDIR - documentation root (DATAROOTDIR/doc/PROJECT_NAME)
# Each CMAKE_INSTALL_<dir> value may be passed to the DESTINATION options of
# install() commands for the corresponding file type. If the includer does
# not define a value the above-shown default will be used and the value will
# appear in the cache for editing by the user.
# Each CMAKE_INSTALL_FULL_<dir> value contains an absolute path constructed
# from the corresponding destination by prepending (if necessary) the value
# of CMAKE_INSTALL_PREFIX.
#
# ::
#
# BINDIR - user executables (bin)
# SBINDIR - system admin executables (sbin)
# LIBEXECDIR - program executables (libexec)
# SYSCONFDIR - read-only single-machine data (etc)
# SHAREDSTATEDIR - modifiable architecture-independent data (com)
# LOCALSTATEDIR - modifiable single-machine data (var)
# LIBDIR - object code libraries (lib or lib64 or lib/<multiarch-tuple> on Debian)
# INCLUDEDIR - C header files (include)
# OLDINCLUDEDIR - C header files for non-gcc (/usr/include)
# DATAROOTDIR - read-only architecture-independent data root (share)
# DATADIR - read-only architecture-independent data (DATAROOTDIR)
# INFODIR - info documentation (DATAROOTDIR/info)
# LOCALEDIR - locale-dependent data (DATAROOTDIR/locale)
# MANDIR - man documentation (DATAROOTDIR/man)
# DOCDIR - documentation root (DATAROOTDIR/doc/PROJECT_NAME)
#
# Each CMAKE_INSTALL_<dir> value may be passed to the DESTINATION
# options of install() commands for the corresponding file type. If the
# includer does not define a value the above-shown default will be used
# and the value will appear in the cache for editing by the user. Each
# CMAKE_INSTALL_FULL_<dir> value contains an absolute path constructed
# from the corresponding destination by prepending (if necessary) the
# value of CMAKE_INSTALL_PREFIX.
#=============================================================================
# Copyright 2011 Nikita Krupen'ko <krnekit@gmail.com>
@@ -68,30 +85,90 @@ if(NOT DEFINED CMAKE_INSTALL_LOCALSTATEDIR)
set(CMAKE_INSTALL_LOCALSTATEDIR "var" CACHE PATH "modifiable single-machine data (var)")
endif()
if(NOT DEFINED CMAKE_INSTALL_LIBDIR)
# We check if the variable was manually set and not cached, in order to
# allow projects to set the values as normal variables before including
# GNUInstallDirs to avoid having the entries cached or user-editable. It
# replaces the "if(NOT DEFINED CMAKE_INSTALL_XXX)" checks in all the
# other cases.
# If CMAKE_INSTALL_LIBDIR is defined, if _libdir_set is false, then the
# variable is a normal one, otherwise it is a cache one.
get_property(_libdir_set CACHE CMAKE_INSTALL_LIBDIR PROPERTY TYPE SET)
if(NOT DEFINED CMAKE_INSTALL_LIBDIR OR (_libdir_set
AND DEFINED _GNUInstallDirs_LAST_CMAKE_INSTALL_PREFIX
AND NOT "${_GNUInstallDirs_LAST_CMAKE_INSTALL_PREFIX}" STREQUAL "${CMAKE_INSTALL_PREFIX}"))
# If CMAKE_INSTALL_LIBDIR is not defined, it is always executed.
# Otherwise:
# * if _libdir_set is false it is not executed (meaning that it is
# not a cache variable)
# * if _GNUInstallDirs_LAST_CMAKE_INSTALL_PREFIX is not defined it is
# not executed
# * if _GNUInstallDirs_LAST_CMAKE_INSTALL_PREFIX and
# CMAKE_INSTALL_PREFIX are the same string it is not executed.
# _GNUInstallDirs_LAST_CMAKE_INSTALL_PREFIX is updated after the
# execution, of this part of code, therefore at the next inclusion
# of the file, CMAKE_INSTALL_LIBDIR is defined, and the 2 strings
# are equal, meaning that the if is not executed the code the
# second time.
set(_LIBDIR_DEFAULT "lib")
# Override this default 'lib' with 'lib64' iff:
# - we are on Linux system but NOT cross-compiling
# - we are NOT on debian
# - we are on a 64 bits system
# reason is: amd64 ABI: http://www.x86-64.org/documentation/abi.pdf
# Note that the future of multi-arch handling may be even
# more complicated than that: http://wiki.debian.org/Multiarch
if(CMAKE_SYSTEM_NAME MATCHES "Linux"
AND NOT CMAKE_CROSSCOMPILING
AND NOT EXISTS "/etc/debian_version")
if(NOT DEFINED CMAKE_SIZEOF_VOID_P)
message(AUTHOR_WARNING
"Unable to determine default CMAKE_INSTALL_LIBDIR directory because no target architecture is known. "
"Please enable at least one language before including GNUInstallDirs.")
else()
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
set(_LIBDIR_DEFAULT "lib64")
# For Debian with multiarch, use 'lib/${CMAKE_LIBRARY_ARCHITECTURE}' if
# CMAKE_LIBRARY_ARCHITECTURE is set (which contains e.g. "i386-linux-gnu"
# and CMAKE_INSTALL_PREFIX is "/usr"
# See http://wiki.debian.org/Multiarch
if(DEFINED _GNUInstallDirs_LAST_CMAKE_INSTALL_PREFIX)
set(__LAST_LIBDIR_DEFAULT "lib")
# __LAST_LIBDIR_DEFAULT is the default value that we compute from
# _GNUInstallDirs_LAST_CMAKE_INSTALL_PREFIX, not a cache entry for
# the value that was last used as the default.
# This value is used to figure out whether the user changed the
# CMAKE_INSTALL_LIBDIR value manually, or if the value was the
# default one. When CMAKE_INSTALL_PREFIX changes, the value is
# updated to the new default, unless the user explicitly changed it.
endif()
if(CMAKE_SYSTEM_NAME MATCHES "^(Linux|kFreeBSD|GNU)$"
AND NOT CMAKE_CROSSCOMPILING)
if (EXISTS "/etc/debian_version") # is this a debian system ?
if(CMAKE_LIBRARY_ARCHITECTURE)
if("${CMAKE_INSTALL_PREFIX}" MATCHES "^/usr/?$")
set(_LIBDIR_DEFAULT "lib/${CMAKE_LIBRARY_ARCHITECTURE}")
endif()
if(DEFINED _GNUInstallDirs_LAST_CMAKE_INSTALL_PREFIX
AND "${_GNUInstallDirs_LAST_CMAKE_INSTALL_PREFIX}" MATCHES "^/usr/?$")
set(__LAST_LIBDIR_DEFAULT "lib/${CMAKE_LIBRARY_ARCHITECTURE}")
endif()
endif()
else() # not debian, rely on CMAKE_SIZEOF_VOID_P:
if(NOT DEFINED CMAKE_SIZEOF_VOID_P)
message(AUTHOR_WARNING
"Unable to determine default CMAKE_INSTALL_LIBDIR directory because no target architecture is known. "
"Please enable at least one language before including GNUInstallDirs.")
else()
if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
set(_LIBDIR_DEFAULT "lib64")
if(DEFINED _GNUInstallDirs_LAST_CMAKE_INSTALL_PREFIX)
set(__LAST_LIBDIR_DEFAULT "lib64")
endif()
endif()
endif()
endif()
endif()
set(CMAKE_INSTALL_LIBDIR "${_LIBDIR_DEFAULT}" CACHE PATH "object code libraries (${_LIBDIR_DEFAULT})")
if(NOT DEFINED CMAKE_INSTALL_LIBDIR)
set(CMAKE_INSTALL_LIBDIR "${_LIBDIR_DEFAULT}" CACHE PATH "object code libraries (${_LIBDIR_DEFAULT})")
elseif(DEFINED __LAST_LIBDIR_DEFAULT
AND "${__LAST_LIBDIR_DEFAULT}" STREQUAL "${CMAKE_INSTALL_LIBDIR}")
set_property(CACHE CMAKE_INSTALL_LIBDIR PROPERTY VALUE "${_LIBDIR_DEFAULT}")
endif()
endif()
# Save for next run
set(_GNUInstallDirs_LAST_CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}" CACHE INTERNAL "CMAKE_INSTALL_PREFIX during last run")
unset(_libdir_set)
unset(__LAST_LIBDIR_DEFAULT)
if(NOT DEFINED CMAKE_INSTALL_INCLUDEDIR)
set(CMAKE_INSTALL_INCLUDEDIR "include" CACHE PATH "C header files (include)")

View File

@@ -17,16 +17,20 @@
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleLongVersionString</key>
<string>@APPLICATION_NAME@ @VERSION@</string>
<string>@APPLICATION_NAME@ @MIRALL_VERSION_STRING@</string>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>@VERSION@</string>
<string>@MIRALL_VERSION_FULL@</string>
<key>CFBundleShortVersionString</key>
<string>@VERSION@</string>
<string>@MIRALL_VERSION_STRING@</string>
<key>NSHumanReadableCopyright</key>
<string>(C) 2012 @APPLICATION_VENDOR@</string>
<string>(C) 2014 @APPLICATION_VENDOR@</string>
<key>SUShowReleaseNotes</key>
<false/>
<key>SUPublicDSAKeyFile</key>
<string>dsa_pub.pem</string>
</dict>
</plist>

View File

@@ -0,0 +1,21 @@
# - MACRO_ADD_COMPILE_FLAGS(target_name flag1 ... flagN)
# Copyright (c) 2006, Oswald Buddenhagen, <ossi@kde.org>
# Copyright (c) 2006, Andreas Schneider, <asn@cryptomilk.org>
#
# Redistribution and use is allowed according to the terms of the BSD license.
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
macro (MACRO_ADD_COMPILE_FLAGS _target)
get_target_property(_flags ${_target} COMPILE_FLAGS)
if (_flags)
set(_flags ${_flags} ${ARGN})
else (_flags)
set(_flags ${ARGN})
endif (_flags)
set_target_properties(${_target} PROPERTIES COMPILE_FLAGS ${_flags})
endmacro (MACRO_ADD_COMPILE_FLAGS)

View File

@@ -0,0 +1,20 @@
# - MACRO_ADD_LINK_FLAGS(target_name flag1 ... flagN)
# Copyright (c) 2006, Oswald Buddenhagen, <ossi@kde.org>
# Copyright (c) 2006, Andreas Schneider, <asn@cryptomilk.org>
#
# Redistribution and use is allowed according to the terms of the BSD license.
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
macro (MACRO_ADD_LINK_FLAGS _target)
get_target_property(_flags ${_target} LINK_FLAGS)
if (_flags)
set(_flags "${_flags} ${ARGN}")
else (_flags)
set(_flags "${ARGN}")
endif (_flags)
set_target_properties(${_target} PROPERTIES LINK_FLAGS "${_flags}")
endmacro (MACRO_ADD_LINK_FLAGS)

View File

@@ -0,0 +1,30 @@
# - MACRO_ADD_PLUGIN(name [WITH_PREFIX] file1 .. fileN)
#
# Create a plugin from the given source files.
# If WITH_PREFIX is given, the resulting plugin will have the
# prefix "lib", otherwise it won't.
#
# Copyright (c) 2006, Alexander Neundorf, <neundorf@kde.org>
# Copyright (c) 2006, Laurent Montel, <montel@kde.org>
# Copyright (c) 2006, Andreas Schneider, <asn@cryptomilk.org>
#
# Redistribution and use is allowed according to the terms of the BSD license.
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
macro (MACRO_ADD_PLUGIN _target_NAME _with_PREFIX)
if (${_with_PREFIX} STREQUAL "WITH_PREFIX")
set(_first_SRC)
else (${_with_PREFIX} STREQUAL "WITH_PREFIX")
set(_first_SRC ${_with_PREFIX})
endif (${_with_PREFIX} STREQUAL "WITH_PREFIX")
add_library(${_target_NAME} MODULE ${_first_SRC} ${ARGN})
if (_first_SRC)
set_target_properties(${_target_NAME} PROPERTIES PREFIX "")
endif (_first_SRC)
endmacro (MACRO_ADD_PLUGIN _name _sources)

View File

@@ -0,0 +1,33 @@
# - macro_copy_file(_src _dst)
# Copies a file to ${_dst} only if ${_src} is different (newer) than ${_dst}
#
# Example:
# macro_copy_file(${CMAKE_CURRENT_SOURCE_DIR}/icon.png ${CMAKE_CURRENT_BINARY_DIR}/.)
# Copies file icon.png to ${CMAKE_CURRENT_BINARY_DIR} directory
#
# Copyright (c) 2006-2007 Wengo
# Copyright (c) 2006-2008 Andreas Schneider <asn@cryptomilk.org>
#
# Redistribution and use is allowed according to the terms of the BSD license.
# For details see the accompanying COPYING file.
macro (macro_copy_file _src _dst)
# Removes all path containing .svn or CVS or CMakeLists.txt during the copy
if (NOT ${_src} MATCHES ".*\\.svn|CVS|CMakeLists\\.txt.*")
if (CMAKE_VERBOSE_MAKEFILE)
message(STATUS "Copy file from ${_src} to ${_dst}")
endif (CMAKE_VERBOSE_MAKEFILE)
# Creates directory if necessary
get_filename_component(_path ${_dst} PATH)
file(MAKE_DIRECTORY ${_path})
execute_process(
COMMAND
${CMAKE_COMMAND} -E copy_if_different ${_src} ${_dst}
OUTPUT_QUIET
)
endif (NOT ${_src} MATCHES ".*\\.svn|CVS|CMakeLists\\.txt.*")
endmacro (macro_copy_file)

View File

@@ -0,0 +1,17 @@
# - MACRO_ENSURE_OUT_OF_SOURCE_BUILD(<errorMessage>)
# MACRO_ENSURE_OUT_OF_SOURCE_BUILD(<errorMessage>)
# Copyright (c) 2006, Alexander Neundorf, <neundorf@kde.org>
#
# Redistribution and use is allowed according to the terms of the BSD license.
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
macro (MACRO_ENSURE_OUT_OF_SOURCE_BUILD _errorMessage)
string(COMPARE EQUAL "${CMAKE_SOURCE_DIR}" "${CMAKE_BINARY_DIR}" _insource)
if (_insource)
message(SEND_ERROR "${_errorMessage}")
message(FATAL_ERROR "Remove the file CMakeCache.txt in ${CMAKE_SOURCE_DIR} first.")
endif (_insource)
endmacro (MACRO_ENSURE_OUT_OF_SOURCE_BUILD)

View File

@@ -0,0 +1,157 @@
# This file defines the Feature Logging macros.
#
# MACRO_LOG_FEATURE(VAR FEATURE DESCRIPTION URL [REQUIRED [MIN_VERSION [COMMENTS]]])
# Logs the information so that it can be displayed at the end
# of the configure run
# VAR : TRUE or FALSE, indicating whether the feature is supported
# FEATURE: name of the feature, e.g. "libjpeg"
# DESCRIPTION: description what this feature provides
# URL: home page
# REQUIRED: TRUE or FALSE, indicating whether the featue is required
# MIN_VERSION: minimum version number. empty string if unneeded
# COMMENTS: More info you may want to provide. empty string if unnecessary
#
# MACRO_DISPLAY_FEATURE_LOG()
# Call this to display the collected results.
# Exits CMake with a FATAL error message if a required feature is missing
#
# Example:
#
# INCLUDE(MacroLogFeature)
#
# FIND_PACKAGE(JPEG)
# MACRO_LOG_FEATURE(JPEG_FOUND "libjpeg" "Support JPEG images" "http://www.ijg.org" TRUE "3.2a" "")
# ...
# MACRO_DISPLAY_FEATURE_LOG()
# Copyright (c) 2006, Alexander Neundorf, <neundorf@kde.org>
# Copyright (c) 2006, Allen Winter, <winter@kde.org>
# Copyright (c) 2009, Sebastian Trueg, <trueg@kde.org>
#
# Redistribution and use is allowed according to the terms of the BSD license.
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
IF (NOT _macroLogFeatureAlreadyIncluded)
SET(_file ${CMAKE_BINARY_DIR}/MissingRequirements.txt)
IF (EXISTS ${_file})
FILE(REMOVE ${_file})
ENDIF (EXISTS ${_file})
SET(_file ${CMAKE_BINARY_DIR}/EnabledFeatures.txt)
IF (EXISTS ${_file})
FILE(REMOVE ${_file})
ENDIF (EXISTS ${_file})
SET(_file ${CMAKE_BINARY_DIR}/DisabledFeatures.txt)
IF (EXISTS ${_file})
FILE(REMOVE ${_file})
ENDIF (EXISTS ${_file})
SET(_macroLogFeatureAlreadyIncluded TRUE)
INCLUDE(FeatureSummary)
ENDIF (NOT _macroLogFeatureAlreadyIncluded)
MACRO(MACRO_LOG_FEATURE _var _package _description _url ) # _required _minvers _comments)
STRING(TOUPPER "${ARGV4}" _required)
SET(_minvers "${ARGV5}")
SET(_comments "${ARGV6}")
IF (${_var})
SET(_LOGFILENAME ${CMAKE_BINARY_DIR}/EnabledFeatures.txt)
ELSE (${_var})
IF ("${_required}" STREQUAL "TRUE")
SET(_LOGFILENAME ${CMAKE_BINARY_DIR}/MissingRequirements.txt)
ELSE ("${_required}" STREQUAL "TRUE")
SET(_LOGFILENAME ${CMAKE_BINARY_DIR}/DisabledFeatures.txt)
ENDIF ("${_required}" STREQUAL "TRUE")
ENDIF (${_var})
SET(_logtext " * ${_package}")
IF (NOT ${_var})
IF (${_minvers} MATCHES ".*")
SET(_logtext "${_logtext} (${_minvers} or higher)")
ENDIF (${_minvers} MATCHES ".*")
SET(_logtext "${_logtext} <${_url}>\n ")
ELSE (NOT ${_var})
SET(_logtext "${_logtext} - ")
ENDIF (NOT ${_var})
SET(_logtext "${_logtext}${_description}")
IF (NOT ${_var})
IF (${_comments} MATCHES ".*")
SET(_logtext "${_logtext}\n ${_comments}")
ENDIF (${_comments} MATCHES ".*")
# SET(_logtext "${_logtext}\n") #double-space missing features?
ENDIF (NOT ${_var})
FILE(APPEND "${_LOGFILENAME}" "${_logtext}\n")
IF(COMMAND SET_PACKAGE_INFO) # in FeatureSummary.cmake since CMake 2.8.3
SET_PACKAGE_INFO("${_package}" "\"${_description}\"" "${_url}" "\"${_comments}\"")
ENDIF(COMMAND SET_PACKAGE_INFO)
ENDMACRO(MACRO_LOG_FEATURE)
MACRO(MACRO_DISPLAY_FEATURE_LOG)
IF(COMMAND FEATURE_SUMMARY) # in FeatureSummary.cmake since CMake 2.8.3
FEATURE_SUMMARY(FILENAME ${CMAKE_CURRENT_BINARY_DIR}/FindPackageLog.txt
WHAT ALL)
ENDIF(COMMAND FEATURE_SUMMARY)
SET(_missingFile ${CMAKE_BINARY_DIR}/MissingRequirements.txt)
SET(_enabledFile ${CMAKE_BINARY_DIR}/EnabledFeatures.txt)
SET(_disabledFile ${CMAKE_BINARY_DIR}/DisabledFeatures.txt)
IF (EXISTS ${_missingFile} OR EXISTS ${_enabledFile} OR EXISTS ${_disabledFile})
SET(_printSummary TRUE)
ENDIF (EXISTS ${_missingFile} OR EXISTS ${_enabledFile} OR EXISTS ${_disabledFile})
IF(_printSummary)
SET(_missingDeps 0)
IF (EXISTS ${_enabledFile})
FILE(READ ${_enabledFile} _enabled)
FILE(REMOVE ${_enabledFile})
SET(_summary "${_summary}\n-----------------------------------------------------------------------------\n-- The following external packages were located on your system.\n-- This installation will have the extra features provided by these packages.\n-----------------------------------------------------------------------------\n${_enabled}")
ENDIF (EXISTS ${_enabledFile})
IF (EXISTS ${_disabledFile})
SET(_missingDeps 1)
FILE(READ ${_disabledFile} _disabled)
FILE(REMOVE ${_disabledFile})
SET(_summary "${_summary}\n-----------------------------------------------------------------------------\n-- The following OPTIONAL packages could NOT be located on your system.\n-- Consider installing them to enable more features from this software.\n-----------------------------------------------------------------------------\n${_disabled}")
ENDIF (EXISTS ${_disabledFile})
IF (EXISTS ${_missingFile})
SET(_missingDeps 1)
FILE(READ ${_missingFile} _requirements)
SET(_summary "${_summary}\n-----------------------------------------------------------------------------\n-- The following REQUIRED packages could NOT be located on your system.\n-- You must install these packages before continuing.\n-----------------------------------------------------------------------------\n${_requirements}")
FILE(REMOVE ${_missingFile})
SET(_haveMissingReq 1)
ENDIF (EXISTS ${_missingFile})
IF (NOT ${_missingDeps})
SET(_summary "${_summary}\n-----------------------------------------------------------------------------\n-- Congratulations! All external packages have been found.")
ENDIF (NOT ${_missingDeps})
MESSAGE(${_summary})
MESSAGE("-----------------------------------------------------------------------------\n")
IF(_haveMissingReq)
MESSAGE(FATAL_ERROR "Exiting: Missing Requirements")
ENDIF(_haveMissingReq)
ENDIF(_printSummary)
ENDMACRO(MACRO_DISPLAY_FEATURE_LOG)

View File

@@ -0,0 +1,47 @@
# - MACRO_OPTIONAL_FIND_PACKAGE() combines FIND_PACKAGE() with an OPTION()
# MACRO_OPTIONAL_FIND_PACKAGE( <name> [QUIT] )
# This macro is a combination of OPTION() and FIND_PACKAGE(), it
# works like FIND_PACKAGE(), but additionally it automatically creates
# an option name WITH_<name>, which can be disabled via the cmake GUI.
# or via -DWITH_<name>=OFF
# The standard <name>_FOUND variables can be used in the same way
# as when using the normal FIND_PACKAGE()
# Copyright (c) 2006-2010 Alexander Neundorf, <neundorf@kde.org>
#
# Redistribution and use is allowed according to the terms of the BSD license.
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
# This is just a helper macro to set a bunch of variables empty.
# We don't know whether the package uses UPPERCASENAME or CamelCaseName, so we try both:
macro(_MOFP_SET_EMPTY_IF_DEFINED _name _var)
if(DEFINED ${_name}_${_var})
set(${_name}_${_var} "")
endif(DEFINED ${_name}_${_var})
string(TOUPPER ${_name} _nameUpper)
if(DEFINED ${_nameUpper}_${_var})
set(${_nameUpper}_${_var} "")
endif(DEFINED ${_nameUpper}_${_var})
endmacro(_MOFP_SET_EMPTY_IF_DEFINED _package _var)
macro (MACRO_OPTIONAL_FIND_PACKAGE _name )
option(WITH_${_name} "Search for ${_name} package" ON)
if (WITH_${_name})
find_package(${_name} ${ARGN})
else (WITH_${_name})
string(TOUPPER ${_name} _nameUpper)
set(${_name}_FOUND FALSE)
set(${_nameUpper}_FOUND FALSE)
_mofp_set_empty_if_defined(${_name} INCLUDE_DIRS)
_mofp_set_empty_if_defined(${_name} INCLUDE_DIR)
_mofp_set_empty_if_defined(${_name} INCLUDES)
_mofp_set_empty_if_defined(${_name} LIBRARY)
_mofp_set_empty_if_defined(${_name} LIBRARIES)
_mofp_set_empty_if_defined(${_name} LIBS)
_mofp_set_empty_if_defined(${_name} FLAGS)
_mofp_set_empty_if_defined(${_name} DEFINITIONS)
endif (WITH_${_name})
endmacro (MACRO_OPTIONAL_FIND_PACKAGE)

View File

@@ -4,6 +4,7 @@
!define APPLICATION_NAME "@APPLICATION_NAME@"
!define APPLICATION_VENDOR "@APPLICATION_VENDOR@"
!define APPLICATION_EXECUTABLE "@APPLICATION_EXECUTABLE@.exe"
!define APPLICATION_CMD_EXECUTABLE "@APPLICATION_EXECUTABLE@cmd.exe"
!define APPLICATION_DOMAIN "@APPLICATION_DOMAIN@"
!define APPLICATION_LICENSE "@APPLICATION_LICENSE@"
!define WIN_SETUP_BITMAP_PATH "@WIN_SETUP_BITMAP_PATH@"
@@ -34,12 +35,12 @@
!define BUILD_PATH "@CMAKE_BINARY_DIR@"
!define SOURCE_PATH "@CMAKE_SOURCE_DIR@"
!define QT_DLL_PATH "${MING_BIN}"
!define ACCESSIBLE_DLL_PATH "${MING_LIB}/qt4/plugins/accessible"
!define SQLITE_DLL_PATH "${MING_LIB}/qt4/plugins/sqldrivers"
!define IMAGEFORMATS_DLL_PATH "${MING_LIB}/qt4/plugins/imageformats"
!define ACCESSIBLE_DLL_PATH "${MING_LIB}/qt5/plugins/accessible"
!define SQLITE_DLL_PATH "${MING_LIB}/qt5/plugins/sqldrivers"
!define IMAGEFORMATS_DLL_PATH "${MING_LIB}/qt5/plugins/imageformats"
!define PLATFORMS_DLL_PATH "${MING_LIB}/qt5/plugins/platforms"
!define CSYNC_LIBRARY_DIR "@CSYNC_LIBRARY_DIR@"
!define CSYNC_PLUGIN_DIR "@CSYNC_PLUGIN_DIR@"
!define CSYNC_CONFIG_DIR "@CSYNC_CONFIG_DIR@"
!define NSI_PATH "${source_path}/admin/win/nsi"
@@ -50,9 +51,13 @@
!define VER_MAJOR "@CPACK_PACKAGE_VERSION_MAJOR@"
!define VER_MINOR "@CPACK_PACKAGE_VERSION_MINOR@"
!define VER_BUILD "@CPACK_PACKAGE_VERSION_PATCH@"
!define VER_PATCH "@CPACK_PACKAGE_VERSION_PATCH@"
!define VER_BUILD "@CPACK_PACKAGE_VERSION_BUILD@"
!define VERSION "@CPACK_PACKAGE_VERSION@"
Var InstallRunIfSilent
Var NoAutomaticUpdates
;-----------------------------------------------------------------------------
; Installer build timestamp.
;-----------------------------------------------------------------------------
@@ -65,7 +70,7 @@ Name "@CPACK_NSIS_PACKAGE_NAME@"
BrandingText "${APPLICATION_NAME} ${VERSION} -- ${BUILD_TIME}"
OutFile "@CPACK_TOPLEVEL_DIRECTORY@/@CPACK_OUTPUT_FILE_NAME@"
InstallDir "$PROGRAMFILES\@CPACK_PACKAGE_INSTALL_DIRECTORY@"
InstallDirRegKey HKCU "Software\${APPLICATION_NAME}" ""
InstallDirRegKey HKCU "Software\${APPLICATION_VENDOR}\${APPLICATION_NAME}" ""
InstType Standard
InstType Full
InstType Minimal
@@ -87,6 +92,7 @@ ReserveFile "${NSISDIR}\Plugins\InstallOptions.dll"
!include Memento.nsh ;Remember user selections.
!include WinVer.nsh ;Windows version detection.
!include WordFunc.nsh ;Used by VersionCompare macro function.
!include FileFunc.nsh ;Used to read out parameters
!include UAC.nsh ;Used by the UAC elevation to install as user or admin.
;-----------------------------------------------------------------------------
@@ -111,7 +117,7 @@ ReserveFile "${NSISDIR}\Plugins\InstallOptions.dll"
!ifdef OPTION_FINISHPAGE_RELEASE_NOTES
!define MUI_FINISHPAGE_SHOWREADME_NOTCHECKED
!define MUI_FINISHPAGE_SHOWREADME "$INSTDIR\NOTES.txt"
!define MUI_FINISHPAGE_SHOWREADME_TEXT "Show release notes"
!define MUI_FINISHPAGE_SHOWREADME_TEXT $MUI_FINISHPAGE_SHOWREADME_TEXT_STRING
!endif
!ifdef OPTION_FINISHPAGE_LAUNCHER
!define MUI_FINISHPAGE_NOAUTOCLOSE
@@ -142,6 +148,89 @@ UninstPage custom un.UnPageUserAppData un.UnPageUserAppDataLeave
;-----------------------------------------------------------------------------
!insertmacro MUI_LANGUAGE "English"
!include ${source_path}/admin/win/nsi/l10n/languages.nsh
!include ${source_path}/admin/win/nsi/l10n/declarations.nsh
; Set version strings with english locale
VIProductVersion "${VERSION}"
VIAddVersionKey /LANG=${LANG_ENGLISH} "ProductName" "${APPLICATION_NAME}"
VIAddVersionKey /LANG=${LANG_ENGLISH} "CompanyName" "${APPLICATION_VENDOR}"
VIAddVersionKey /LANG=${LANG_ENGLISH} "FileVersion" "${VERSION}"
!macro SETLANG un
Function ${un}SetLang
# load the selected language file
!include "${source_path}/admin/win/nsi/l10n\English.nsh"
StrCmp $LANGUAGE ${LANG_GERMAN} German 0
StrCmp $LANGUAGE ${LANG_DUTCH} Dutch 0
StrCmp $LANGUAGE ${LANG_FINNISH} Finnish 0
StrCmp $LANGUAGE ${LANG_JAPANESE} Japanese 0
StrCmp $LANGUAGE ${LANG_SLOVENIAN} Slovenian 0
StrCmp $LANGUAGE ${LANG_SPANISH} Spanish 0
StrCmp $LANGUAGE ${LANG_ITALIAN} Italian 0
StrCmp $LANGUAGE ${LANG_ESTONIAN} Estonian 0
StrCmp $LANGUAGE ${LANG_GREEK} Greek 0
StrCmp $LANGUAGE ${LANG_GREEK} Basque 0
StrCmp $LANGUAGE ${LANG_GREEK} Galician 0
StrCmp $LANGUAGE ${LANG_GREEK} Slovak 0
StrCmp $LANGUAGE ${LANG_GREEK} Turkish 0
StrCmp $LANGUAGE ${LANG_PORTUGUESEBR} Brazilian EndLanguageCmp
German:
!include "${source_path}/admin/win/nsi/l10n\German.nsh"
Goto EndLanguageCmp
Dutch:
!include "${source_path}/admin/win/nsi/l10n\Dutch.nsh"
Goto EndLanguageCmp
Finnish:
!include "${source_path}/admin/win/nsi/l10n\Finnish.nsh"
Goto EndLanguageCmp
Japanese:
!include "${source_path}/admin/win/nsi/l10n\Japanese.nsh"
Goto EndLanguageCmp
Slovenian:
!include "${source_path}/admin/win/nsi/l10n\Slovenian.nsh"
Goto EndLanguageCmp
Spanish:
!include "${source_path}/admin/win/nsi/l10n\Spanish.nsh"
Goto EndLanguageCmp
Italian:
!include "${source_path}/admin/win/nsi/l10n\Italian.nsh"
Goto EndLanguageCmp
Estonian:
!include "${source_path}/admin/win/nsi/l10n\Estonian.nsh"
Goto EndLanguageCmp
Greek:
!include "${source_path}/admin/win/nsi/l10n\Greek.nsh"
Goto EndLanguageCmp
Basque:
!include "${source_path}/admin/win/nsi/l10n\Basque.nsh"
Goto EndLanguageCmp
Galician:
!include "${source_path}/admin/win/nsi/l10n\Galician.nsh"
Goto EndLanguageCmp
Slovak:
!include "${source_path}/admin/win/nsi/l10n\Slovak.nsh"
Goto EndLanguageCmp
Turkish:
!include "${source_path}/admin/win/nsi/l10n\Turkish.nsh"
Goto EndLanguageCmp
Brazilian:
!include "${source_path}/admin/win/nsi/l10n\PortugueseBR.nsh"
EndLanguageCmp:
FunctionEnd
!macroend
!insertmacro SETLANG ""
!insertmacro SETLANG "un."
; Usage: ${If} ${HasSection} SectionName
!macro _HasSection _a _b _t _f
ReadRegDWORD $_LOGICLIB_TEMP "${MEMENTO_REGISTRY_ROOT}" "${MEMENTO_REGISTRY_KEY}" "MementoSection_${_b}"
IntCmpU $_LOGICLIB_TEMP 0 ${_f} ${_t}
!macroend
!define HasSection `"" HasSection`
##############################################################################
# #
# FINISH PAGE LAUNCHER FUNCTIONS #
@@ -169,14 +258,14 @@ FunctionEnd
!macro ConfirmEndProcess processName
MessageBox MB_YESNO|MB_ICONEXCLAMATION \
"Found ${processName} process(s) which need to be stopped.$\nDo you want the installer to stop these for you?" \
$ConfirmEndProcess_MESSAGEBOX_TEXT \
IDYES process_${processName}_kill IDNO process_${processName}_ended
process_${processName}_kill:
DetailPrint "Killing ${processName} processes."
DetailPrint $ConfirmEndProcess_KILLING_PROCESSES_TEXT
Processes::KillProcess ${processName}
Sleep 1500
StrCmp $R0 "1" process_${processName}_ended
DetailPrint "Process to kill not found!"
DetailPrint $ConfirmEndProcess_KILL_NOT_FOUND_TEXT
process_${processName}_ended:
!macroend
@@ -197,41 +286,44 @@ FunctionEnd
##############################################################################
Function PageReinstall
ReadRegStr $R0 HKLM "Software\${APPLICATION_NAME}" ""
ReadRegStr $R0 HKLM "Software\${APPLICATION_VENDOR}\${APPLICATION_NAME}" ""
StrCmp $R0 "" 0 +2
Abort
;Detect version
ReadRegDWORD $R0 HKLM "Software\${APPLICATION_NAME}" "VersionMajor"
ReadRegDWORD $R0 HKLM "Software\${APPLICATION_VENDOR}\${APPLICATION_NAME}" "VersionMajor"
IntCmp $R0 ${VER_MAJOR} minor_check new_version older_version
minor_check:
ReadRegDWORD $R0 HKLM "Software\${APPLICATION_NAME}" "VersionMinor"
IntCmp $R0 ${VER_MINOR} build_check new_version older_version
ReadRegDWORD $R0 HKLM "Software\${APPLICATION_VENDOR}\${APPLICATION_NAME}" "VersionMinor"
IntCmp $R0 ${VER_MINOR} rev_check new_version older_version
rev_check:
ReadRegDWORD $R0 HKLM "Software\${APPLICATION_VENDOR}\${APPLICATION_NAME}" "VersionRevision"
IntCmp $R0 ${VER_PATCH} build_check new_version older_version
build_check:
ReadRegDWORD $R0 HKLM "Software\${APPLICATION_NAME}" "VersionBuild"
ReadRegDWORD $R0 HKLM "Software\${APPLICATION_VENDOR}\${APPLICATION_NAME}" "VersionBuild"
IntCmp $R0 ${VER_BUILD} same_version new_version older_version
new_version:
!insertmacro INSTALLOPTIONS_WRITE "NSIS.InstallOptions.ini" "Field 1" "Text" "An older version of ${APPLICATION_NAME} is installed on your system. It is recommended that you uninstall the current version before installing. Select the operation you want to perform and click Next to continue."
!insertmacro INSTALLOPTIONS_WRITE "NSIS.InstallOptions.ini" "Field 2" "Text" "Uninstall before installing"
!insertmacro INSTALLOPTIONS_WRITE "NSIS.InstallOptions.ini" "Field 3" "Text" "Do not uninstall"
!insertmacro MUI_HEADER_TEXT "Already Installed" "Choose how you want to install ${APPLICATION_NAME}."
!insertmacro INSTALLOPTIONS_WRITE "NSIS.InstallOptions.ini" "Field 1" "Text" $PageReinstall_NEW_Field_1
!insertmacro INSTALLOPTIONS_WRITE "NSIS.InstallOptions.ini" "Field 2" "Text" $PageReinstall_NEW_Field_2
!insertmacro INSTALLOPTIONS_WRITE "NSIS.InstallOptions.ini" "Field 3" "Text" $PageReinstall_NEW_Field_3
!insertmacro MUI_HEADER_TEXT $PageReinstall_NEW_MUI_HEADER_TEXT_TITLE $PageReinstall_NEW_MUI_HEADER_TEXT_SUBTITLE
StrCpy $R0 "1"
Goto reinst_start
older_version:
!insertmacro INSTALLOPTIONS_WRITE "NSIS.InstallOptions.ini" "Field 1" "Text" "A newer version of ${APPLICATION_NAME} is already installed! It is not recommended that you install an older version. If you really want to install this older version, it is better to uninstall the current version first. Select the operation you want to perform and click Next to continue."
!insertmacro INSTALLOPTIONS_WRITE "NSIS.InstallOptions.ini" "Field 2" "Text" "Uninstall before installing"
!insertmacro INSTALLOPTIONS_WRITE "NSIS.InstallOptions.ini" "Field 3" "Text" "Do not uninstall"
!insertmacro MUI_HEADER_TEXT "Already Installed" "Choose how you want to install ${APPLICATION_NAME}."
!insertmacro INSTALLOPTIONS_WRITE "NSIS.InstallOptions.ini" "Field 1" "Text" $PageReinstall_OLD_Field_1
!insertmacro INSTALLOPTIONS_WRITE "NSIS.InstallOptions.ini" "Field 2" "Text" $PageReinstall_NEW_Field_2
!insertmacro INSTALLOPTIONS_WRITE "NSIS.InstallOptions.ini" "Field 3" "Text" $PageReinstall_NEW_Field_3
!insertmacro MUI_HEADER_TEXT $PageReinstall_NEW_MUI_HEADER_TEXT_TITLE $PageReinstall_NEW_MUI_HEADER_TEXT_SUBTITLE
StrCpy $R0 "1"
Goto reinst_start
same_version:
!insertmacro INSTALLOPTIONS_WRITE "NSIS.InstallOptions.ini" "Field 1" "Text" "${APPLICATION_NAME} ${VERSION} is already installed.\r\nSelect the operation you want to perform and click Next to continue."
!insertmacro INSTALLOPTIONS_WRITE "NSIS.InstallOptions.ini" "Field 2" "Text" "Add/Reinstall components"
!insertmacro INSTALLOPTIONS_WRITE "NSIS.InstallOptions.ini" "Field 3" "Text" "Uninstall ${APPLICATION_NAME}"
!insertmacro MUI_HEADER_TEXT "Already Installed" "Choose the maintenance option to perform."
!insertmacro INSTALLOPTIONS_WRITE "NSIS.InstallOptions.ini" "Field 1" "Text" $PageReinstall_SAME_Field_1
!insertmacro INSTALLOPTIONS_WRITE "NSIS.InstallOptions.ini" "Field 2" "Text" $PageReinstall_SAME_Field_2
!insertmacro INSTALLOPTIONS_WRITE "NSIS.InstallOptions.ini" "Field 3" "Text" $PageReinstall_SAME_Field_3
!insertmacro MUI_HEADER_TEXT $PageReinstall_NEW_MUI_HEADER_TEXT_TITLE $PageReinstall_SAME_MUI_HEADER_TEXT_SUBTITLE
StrCpy $R0 "2"
reinst_start:
@@ -245,7 +337,7 @@ Function PageLeaveReinstall
StrCmp $R0 "2" 0 +3
StrCmp $R1 "1" reinst_done reinst_uninstall
reinst_uninstall:
ReadRegStr $R1 HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPLICATION_NAME}" "UninstallString"
ReadRegStr $R1 ${MEMENTO_REGISTRY_ROOT} "${MEMENTO_REGISTRY_KEY}" "UninstallString"
HideWindow
ClearErrors
ExecWait '$R1 _?=$INSTDIR'
@@ -271,62 +363,80 @@ Section "${APPLICATION_NAME}" SEC_APPLICATION
SetDetailsPrint listonly
SetDetailsPrint textonly
DetailPrint "Installing ${APPLICATION_NAME} essentials."
DetailPrint $SEC_APPLICATION_DETAILS
SetDetailsPrint listonly
SetOutPath "$INSTDIR"
!ifdef INSTALL_PATH
;Main executable.
File "${INSTALL_PATH}\bin\${APPLICATION_EXECUTABLE}"
!endif
!ifndef INSTALL_PATH
;Main executable.
File "${BUILD_PATH}\bin\${APPLICATION_EXECUTABLE}"
File "${BUILD_PATH}\src\lib${APPLICATION_SHORTNAME}sync.dll"
File "${BUILD_PATH}\src\mirall_*.qm"
; Make sure only to copy qt, not qt_help, etc
File "${MING_SHARE}\qt4\translations\qt_??.qm"
File "${MING_SHARE}\qt4\translations\qt_??_??.qm"
File "${MING_SHARE}\qt4\translations\qtkeychain_*.qm"
SetOutPath "$INSTDIR\accessible"
File "${ACCESSIBLE_DLL_PATH}\qtaccessiblewidgets4.dll"
SetOutPath "$INSTDIR\imageformats"
File "${IMAGEFORMATS_DLL_PATH}\qgif4.dll"
File "${IMAGEFORMATS_DLL_PATH}\qjpeg4.dll"
File "${IMAGEFORMATS_DLL_PATH}\qico4.dll"
SetOutPath "$INSTDIR\modules"
; FIXME: fix installation dir of module, currently needs manual copying to
; /usr/i686-w64-mingw32/sys-root/mingw/bin/csync_modules/
File "${CSYNC_PLUGIN_DIR}/ocsync_owncloud.dll"
SetOutPath "$INSTDIR"
!endif
;Main executable & csync
File "${BUILD_PATH}\bin\${APPLICATION_EXECUTABLE}"
File "${BUILD_PATH}\bin\${APPLICATION_CMD_EXECUTABLE}"
File "${BUILD_PATH}\src\lib${APPLICATION_SHORTNAME}sync.dll"
File "${BUILD_PATH}\csync\src\libocsync.dll"
File "${BUILD_PATH}\src\mirall_*.qm"
; Make sure only to copy qt, not qt_help, etc
File "${MING_SHARE}\qt5\translations\qt_??.qm"
File "${MING_SHARE}\qt5\translations\qt_??_??.qm"
File "${MING_SHARE}\qt5\translations\qtkeychain_*.qm"
SetOutPath "$INSTDIR\platforms"
File "${PLATFORMS_DLL_PATH}\qwindows.dll"
SetOutPath "$INSTDIR\accessible"
File "${ACCESSIBLE_DLL_PATH}\qtaccessiblewidgets.dll"
SetOutPath "$INSTDIR\imageformats"
File "${IMAGEFORMATS_DLL_PATH}\qgif.dll"
File "${IMAGEFORMATS_DLL_PATH}\qjpeg.dll"
File "${IMAGEFORMATS_DLL_PATH}\qico.dll"
SetOutPath "$INSTDIR\sqldrivers"
File "${SQLITE_DLL_PATH}\qsqlite.dll"
SetOutPath "$INSTDIR"
;License & release notes.
File "@CPACK_RESOURCE_FILE_LICENSE@"
;File /oname=NOTES.txt ${NSI_PATH}\RELEASE_NOTES.txt
;QT stuff:
File "${QT_DLL_PATH}\QtCore4.dll"
File "${QT_DLL_PATH}\QtGui4.dll"
File "${QT_DLL_PATH}\QtNetwork4.dll"
File "${QT_DLL_PATH}\QtXml4.dll"
File "${QT_DLL_PATH}\QtWebKit4.dll"
;Qt stuff:
File "${QT_DLL_PATH}\Qt5Core.dll"
File "${QT_DLL_PATH}\Qt5Gui.dll"
File "${QT_DLL_PATH}\Qt5Network.dll"
File "${QT_DLL_PATH}\Qt5OpenGL.dll"
File "${QT_DLL_PATH}\Qt5PrintSupport.dll"
File "${QT_DLL_PATH}\Qt5Qml.dll"
File "${QT_DLL_PATH}\Qt5Quick.dll"
File "${QT_DLL_PATH}\Qt5Sensors.dll"
File "${QT_DLL_PATH}\Qt5Sql.dll"
File "${QT_DLL_PATH}\Qt5WebKit.dll"
File "${QT_DLL_PATH}\Qt5WebKitWidgets.dll"
File "${QT_DLL_PATH}\Qt5Widgets.dll"
File "${QT_DLL_PATH}\Qt5Xml.dll"
;Qt deps
File "${MING_BIN}\libpng16-16.dll"
File "${MING_BIN}\icudata51.dll"
File "${MING_BIN}\icui18n51.dll"
File "${MING_BIN}\icuuc51.dll"
File "${MING_BIN}\libEGL.dll"
File "${MING_BIN}\libGLESv2.dll"
File "${MING_BIN}\libjpeg-8.dll"
File "${MING_BIN}\libpcre16-0.dll"
File "${MING_BIN}\libproxy.dll"
File "${MING_BIN}\libqt5keychain.dll"
File "${MING_BIN}\libsqlite3-0.dll"
File "${MING_BIN}\libcrypto-10.dll"
File "${MING_BIN}\libssl-10.dll"
File "${MING_BIN}\libstdc++-6.dll"
File "${MING_BIN}\libwebp-4.dll"
File "${MING_BIN}\libxslt-1.dll"
File "${MING_BIN}\zlib1.dll"
;QtSql and csync dep
File "${MING_BIN}\libsqlite3-0.dll"
;QtKeyChain stuff
File "${MING_BIN}\libqtkeychain.dll"
File "${CSYNC_LIBRARY_DIR}/libocsync.dll"
File "${MING_BIN}\libsqlite3-0.dll"
File "${MING_BIN}\libiniparser.dll"
File "${MING_BIN}\libdl.dll"
File "${MING_BIN}\libpng15-15.dll"
; ownCloud plugin
File "${MING_BIN}\libintl-8.dll"
File "${MING_BIN}\libneon-27.dll"
@@ -337,53 +447,42 @@ Section "${APPLICATION_NAME}" SEC_APPLICATION
;MinGW stuff
File "${MING_BIN}\libgcc_s_sjlj-1.dll"
File "${MING_BIN}\libstdc++-6.dll"
; Other
;File "${MING_BIN}\libpng15-15.dll"
File "${MING_BIN}\libjpeg-8.dll"
File "${MING_BIN}\zlib1.dll"
File "${MING_BIN}\libcrypto-10.dll"
File "${MING_BIN}\libssl-10.dll"
File "${MING_BIN}\libwinpthread-1.dll"
; CSync configs
File "${SOURCE_PATH}/sync-exclude.lst"
SectionEnd
SectionGroup "Shortcuts"
SectionGroup $SectionGroup_Shortcuts
!ifdef OPTION_SECTION_SC_START_MENU
${MementoSection} "Start Menu Program Group" SEC_START_MENU
${MementoSection} $OPTION_SECTION_SC_START_MENU_SECTION SEC_START_MENU
SectionIn 1 2 3
SetDetailsPrint textonly
DetailPrint "Adding shortcuts for the ${APPLICATION_NAME} program group to the Start Menu."
DetailPrint $OPTION_SECTION_SC_START_MENU_DetailPrint
SetDetailsPrint listonly
SetShellVarContext all
RMDir /r "$SMPROGRAMS\${APPLICATION_NAME}"
CreateDirectory "$SMPROGRAMS\${APPLICATION_NAME}"
;CreateShortCut "$SMPROGRAMS\${APPLICATION_NAME}\LICENSE.lnk" "$INSTDIR\LICENSE.txt"
CreateShortCut "$SMPROGRAMS\${APPLICATION_NAME}\${APPLICATION_NAME}.lnk" "$INSTDIR\${APPLICATION_EXECUTABLE}"
;CreateShortCut "$SMPROGRAMS\${APPLICATION_NAME}\Release notes.lnk" "$INSTDIR\NOTES.txt"
CreateShortCut "$SMPROGRAMS\${APPLICATION_NAME}\Uninstall.lnk" "$INSTDIR\uninstall.exe"
CreateShortCut "$SMPROGRAMS\${APPLICATION_NAME}.lnk" "$INSTDIR\${APPLICATION_EXECUTABLE}"
SetShellVarContext current
${MementoSectionEnd}
!endif
!ifdef OPTION_SECTION_SC_DESKTOP
${MementoSection} "Desktop Shortcut" SEC_DESKTOP
${MementoSection} $OPTION_SECTION_SC_DESKTOP_SECTION SEC_DESKTOP
SectionIn 1 2
SetDetailsPrint textonly
DetailPrint "Creating Desktop Shortcuts"
DetailPrint $OPTION_SECTION_SC_DESKTOP_DetailPrint
SetDetailsPrint listonly
CreateShortCut "$DESKTOP\${APPLICATION_NAME}.lnk" "$INSTDIR\${APPLICATION_EXECUTABLE}"
${MementoSectionEnd}
!endif
!ifdef OPTION_SECTION_SC_QUICK_LAUNCH
${MementoSection} "Quick Launch Shortcut" SEC_QUICK_LAUNCH
${MementoSection} $OPTION_SECTION_SC_QUICK_LAUNCH_SECTION SEC_QUICK_LAUNCH
SectionIn 1 2
SetDetailsPrint textonly
DetailPrint "Creating Quick Launch Shortcut"
DetailPrint $OPTION_SECTION_SC_QUICK_LAUNCH_DetailPrint
SetDetailsPrint listonly
CreateShortCut "$QUICKLAUNCH\${APPLICATION_NAME}.lnk" "$INSTDIR\${APPLICATION_EXECUTABLE}"
${MementoSectionEnd}
@@ -396,49 +495,50 @@ ${MementoSectionDone}
; Installer section descriptions
;--------------------------------
!insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
!insertmacro MUI_DESCRIPTION_TEXT ${SEC_APPLICATION} "${APPLICATION_NAME} essentials."
!insertmacro MUI_DESCRIPTION_TEXT ${SEC_START_MENU} "${APPLICATION_NAME} program group."
!insertmacro MUI_DESCRIPTION_TEXT ${SEC_DESKTOP} "Desktop shortcut for ${APPLICATION_NAME}."
!insertmacro MUI_DESCRIPTION_TEXT ${SEC_QUICK_LAUNCH} "Quick Launch shortcut for ${APPLICATION_NAME}."
!insertmacro MUI_DESCRIPTION_TEXT ${SEC_APPLICATION} $OPTION_SECTION_SC_APPLICATION_Desc
!insertmacro MUI_DESCRIPTION_TEXT ${SEC_START_MENU} $OPTION_SECTION_SC_START_MENU_Desc
!insertmacro MUI_DESCRIPTION_TEXT ${SEC_DESKTOP} $OPTION_SECTION_SC_DESKTOP_Desc
!insertmacro MUI_DESCRIPTION_TEXT ${SEC_QUICK_LAUNCH} $OPTION_SECTION_SC_QUICK_LAUNCH_Desc
!insertmacro MUI_FUNCTION_DESCRIPTION_END
Section -post
;Uninstaller file.
SetDetailsPrint textonly
DetailPrint "Writing Uninstaller"
DetailPrint $UNINSTALLER_FILE_Detail
SetDetailsPrint listonly
WriteUninstaller $INSTDIR\uninstall.exe
;Registry keys required for installer version handling and uninstaller.
SetDetailsPrint textonly
DetailPrint "Writing Installer Registry Keys"
DetailPrint $UNINSTALLER_REGISTRY_Detail
SetDetailsPrint listonly
;Version numbers used to detect existing installation version for comparisson.
WriteRegStr HKLM "Software\${APPLICATION_NAME}" "" $INSTDIR
WriteRegDWORD HKLM "Software\${APPLICATION_NAME}" "VersionMajor" "${VER_MAJOR}"
WriteRegDWORD HKLM "Software\${APPLICATION_NAME}" "VersionMinor" "${VER_MINOR}"
WriteRegDWORD HKLM "Software\${APPLICATION_NAME}" "VersionRevision" "${REVISION}"
WriteRegDWORD HKLM "Software\${APPLICATION_NAME}" "VersionBuild" "${VER_BUILD}"
WriteRegStr HKLM "Software\${APPLICATION_VENDOR}\${APPLICATION_NAME}" "" $INSTDIR
WriteRegDWORD HKLM "Software\${APPLICATION_VENDOR}\${APPLICATION_NAME}" "VersionMajor" "${VER_MAJOR}"
WriteRegDWORD HKLM "Software\${APPLICATION_VENDOR}\${APPLICATION_NAME}" "VersionMinor" "${VER_MINOR}"
WriteRegDWORD HKLM "Software\${APPLICATION_VENDOR}\${APPLICATION_NAME}" "VersionRevision" "${VER_PATCH}"
WriteRegDWORD HKLM "Software\${APPLICATION_VENDOR}\${APPLICATION_NAME}" "VersionBuild" "${VER_BUILD}"
;Add or Remove Programs entry.
WriteRegExpandStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPLICATION_NAME}" "UninstallString" '"$INSTDIR\Uninstall.exe"'
WriteRegExpandStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPLICATION_NAME}" "InstallLocation" "$INSTDIR"
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPLICATION_NAME}" "DisplayName" "${APPLICATION_NAME}"
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPLICATION_NAME}" "Publisher" "${APPLICATION_VENDOR}"
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPLICATION_NAME}" "DisplayIcon" "$INSTDIR\Uninstall.exe,0"
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPLICATION_NAME}" "DisplayVersion" "${VERSION}"
WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPLICATION_NAME}" "VersionMajor" "${VER_MAJOR}"
WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPLICATION_NAME}" "VersionMinor" "${VER_MINOR}.${REVISION}"
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPLICATION_NAME}" "URLInfoAbout" "http://${APPLICATION_DOMAIN}/"
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPLICATION_NAME}" "HelpLink" "http://${APPLICATION_DOMAIN}/"
WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPLICATION_NAME}" "NoModify" "1"
WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPLICATION_NAME}" "NoRepair" "1"
WriteRegExpandStr ${MEMENTO_REGISTRY_ROOT} "${MEMENTO_REGISTRY_KEY}" "UninstallString" '"$INSTDIR\Uninstall.exe"'
WriteRegExpandStr ${MEMENTO_REGISTRY_ROOT} "${MEMENTO_REGISTRY_KEY}" "InstallLocation" "$INSTDIR"
WriteRegStr ${MEMENTO_REGISTRY_ROOT} "${MEMENTO_REGISTRY_KEY}" "DisplayName" "${APPLICATION_NAME}"
WriteRegStr ${MEMENTO_REGISTRY_ROOT} "${MEMENTO_REGISTRY_KEY}" "Publisher" "${APPLICATION_VENDOR}"
WriteRegStr ${MEMENTO_REGISTRY_ROOT} "${MEMENTO_REGISTRY_KEY}" "DisplayIcon" "$INSTDIR\Uninstall.exe,0"
WriteRegStr ${MEMENTO_REGISTRY_ROOT} "${MEMENTO_REGISTRY_KEY}" "DisplayVersion" "${VERSION}"
WriteRegDWORD ${MEMENTO_REGISTRY_ROOT} "${MEMENTO_REGISTRY_KEY}" "VersionMajor" "${VER_MAJOR}"
WriteRegDWORD ${MEMENTO_REGISTRY_ROOT} "${MEMENTO_REGISTRY_KEY}" "VersionMinor" "${VER_MINOR}.${VER_PATCH}.${VER_BUILD}"
WriteRegStr ${MEMENTO_REGISTRY_ROOT} "${MEMENTO_REGISTRY_KEY}" "URLInfoAbout" "http://${APPLICATION_DOMAIN}/"
WriteRegStr ${MEMENTO_REGISTRY_ROOT} "${MEMENTO_REGISTRY_KEY}" "HelpLink" "http://${APPLICATION_DOMAIN}/"
WriteRegDWORD ${MEMENTO_REGISTRY_ROOT} "${MEMENTO_REGISTRY_KEY}" "NoModify" "1"
WriteRegDWORD ${MEMENTO_REGISTRY_ROOT} "${MEMENTO_REGISTRY_KEY}" "NoRepair" "1"
SetDetailsPrint textonly
DetailPrint "Finished."
DetailPrint $UNINSTALLER_FINISHED_Detail
SectionEnd
##############################################################################
@@ -453,7 +553,7 @@ Var UnPageUserAppDataCheckbox_State
Var UnPageUserAppDataEditBox
Function un.UnPageUserAppData
!insertmacro MUI_HEADER_TEXT "Uninstall ${APPLICATION_NAME}" "Remove ${APPLICATION_NAME}'s data folder from your computer."
!insertmacro MUI_HEADER_TEXT $UNINSTALLER_APPDATA_TITLE $UNINSTALLER_APPDATA_SUBTITLE
nsDialogs::Create /NOUNLOAD 1018
Pop $UnPageUserAppDataDialog
@@ -461,17 +561,17 @@ Function un.UnPageUserAppData
Abort
${EndIf}
${NSD_CreateLabel} 0 0 100% 12u "Do you want to delete ${APPLICATION_NAME}'s data folder?"
${NSD_CreateLabel} 0 0 100% 12u $UNINSTALLER_APPDATA_LABEL_1
Pop $0
${NSD_CreateText} 0 13u 100% 12u "$LOCALAPPDATA\${APPLICATION_NAME}"
Pop $UnPageUserAppDataEditBox
SendMessage $UnPageUserAppDataEditBox ${EM_SETREADONLY} 1 0
${NSD_CreateLabel} 0 46u 100% 24u "Leave unchecked to keep the data folder for later use or check to delete the data folder."
${NSD_CreateLabel} 0 46u 100% 24u $UNINSTALLER_APPDATA_LABEL_2
Pop $0
${NSD_CreateCheckbox} 0 71u 100% 8u "Yes, delete this data folder."
${NSD_CreateCheckbox} 0 71u 100% 8u $UNINSTALLER_APPDATA_CHECKBOX
Pop $UnPageUserAppDataCheckbox
nsDialogs::Show
@@ -487,38 +587,45 @@ FunctionEnd
Section Uninstall
IfFileExists "$INSTDIR\${APPLICATION_EXECUTABLE}" owncloud_installed
MessageBox MB_YESNO "It does not appear that ${APPLICATION_NAME} is installed in the directory '$INSTDIR'.$\r$\nContinue anyway (not recommended)?" IDYES owncloud_installed
Abort "Uninstall aborted by user"
MessageBox MB_YESNO $UNINSTALL_MESSAGEBOX /SD IDYES IDYES owncloud_installed
Abort $UNINSTALL_ABORT
owncloud_installed:
;Delete registry keys.
DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPLICATION_NAME}"
DeleteRegValue HKLM "Software\${APPLICATION_NAME}" "VersionBuild"
DeleteRegValue HKLM "Software\${APPLICATION_NAME}" "VersionMajor"
DeleteRegValue HKLM "Software\${APPLICATION_NAME}" "VersionMinor"
DeleteRegValue HKLM "Software\${APPLICATION_NAME}" "VersionRevision"
DeleteRegValue HKLM "Software\${APPLICATION_NAME}" ""
DeleteRegKey HKLM "Software\${APPLICATION_NAME}"
DeleteRegValue HKLM "Software\${APPLICATION_VENDOR}\${APPLICATION_NAME}" "VersionBuild"
DeleteRegValue HKLM "Software\${APPLICATION_VENDOR}\${APPLICATION_NAME}" "VersionMajor"
DeleteRegValue HKLM "Software\${APPLICATION_VENDOR}\${APPLICATION_NAME}" "VersionMinor"
DeleteRegValue HKLM "Software\${APPLICATION_VENDOR}\${APPLICATION_NAME}" "VersionRevision"
DeleteRegValue HKLM "Software\${APPLICATION_VENDOR}\${APPLICATION_NAME}" ""
DeleteRegKey HKLM "Software\${APPLICATION_VENDOR}\${APPLICATION_NAME}"
DeleteRegKey HKCR "${APPLICATION_NAME}"
;Start menu shortcuts.
;Start menu shortcut
!ifdef OPTION_SECTION_SC_START_MENU
SetShellVarContext all
RMDir /r "$SMPROGRAMS\${APPLICATION_NAME}"
${If} ${HasSection} SEC_START_MENU
Delete "$SMPROGRAMS\${APPLICATION_NAME}.lnk"
${EndIf}
SetShellVarContext current
!endif
;Desktop shortcut.
!ifdef OPTION_SECTION_SC_DESKTOP
IfFileExists "$DESKTOP\${APPLICATION_NAME}.lnk" 0 +2
Delete "$DESKTOP\${APPLICATION_NAME}.lnk"
${If} ${HasSection} SEC_DESKTOP
${If} ${FileExists} "$DESKTOP\${APPLICATION_NAME}.lnk"
Delete "$DESKTOP\${APPLICATION_NAME}.lnk"
${EndIf}
${EndIf}
!endif
;Quick Launch shortcut.
!ifdef OPTION_SECTION_SC_QUICK_LAUNCH
IfFileExists "$QUICKLAUNCH\${APPLICATION_NAME}.lnk" 0 +2
Delete "$QUICKLAUNCH\${APPLICATION_NAME}.lnk"
${If} ${HasSection} SEC_QUICK_LAUNCH
${If} ${FileExists} "$QUICKLAUNCH\${APPLICATION_NAME}.lnk"
Delete "$QUICKLAUNCH\${APPLICATION_NAME}.lnk"
${EndIf}
${EndIf}
!endif
;Remove all the Program Files.
@@ -529,8 +636,10 @@ Section Uninstall
RMDir /r "$LOCALAPPDATA\${APPLICATION_NAME}"
${EndIf}
DeleteRegKey ${MEMENTO_REGISTRY_ROOT} "${MEMENTO_REGISTRY_KEY}"
SetDetailsPrint textonly
DetailPrint "Finshed."
DetailPrint $UNINSTALLER_FINISHED_Detail
SectionEnd
##############################################################################
@@ -540,15 +649,45 @@ SectionEnd
##############################################################################
Function .onInit
SetOutPath $INSTDIR
${GetParameters} $R0
${GetOptions} $R0 "/launch" $R0
${IfNot} ${Errors}
StrCpy $InstallRunIfSilent "yes"
${EndIf}
${GetParameters} $R0
${GetOptions} $R0 "/noautoupdate" $R0
${IfNot} ${Errors}
StrCpy $NoAutomaticUpdates "yes"
${EndIf}
!insertmacro INSTALLOPTIONS_EXTRACT "NSIS.InstallOptions.ini"
;Remove Quick Launch option from Windows 7, as no longer applicable - usually.
; uncomment this line if you want to see the language selection
;!insertmacro MUI_LANGDLL_DISPLAY
Call SetLang
; Remove Quick Launch option from Windows 7, as no longer applicable - usually.
${IfNot} ${AtMostWinVista}
SectionSetText ${SEC_QUICK_LAUNCH} "Quick Launch Shortcut (N/A)"
SectionSetText ${SEC_QUICK_LAUNCH} $INIT_NO_QUICK_LAUNCH
SectionSetFlags ${SEC_QUICK_LAUNCH} ${SF_RO}
SectionSetInstTypes ${SEC_QUICK_LAUNCH} 0
${EndIf}
; Some people might have a shortcut called 'ownCloud' pointing elsewhere, see #356
; Unselect item and adjust text
${If} ${FileExists} "$DESKTOP\${APPLICATION_NAME}.lnk"
SectionSetText ${SEC_DESKTOP} $INIT_NO_DESKTOP
Push $0
SectionSetFlags ${SEC_DESKTOP} 0
SectionSetInstTypes ${SEC_DESKTOP} 0
Pop $0
${EndIf}
${MementoSectionRestore}
UAC_Elevate:
@@ -559,7 +698,7 @@ Function .onInit
Quit
UAC_Err:
MessageBox MB_ICONSTOP "Unable to elevate, error $0"
MessageBox MB_ICONSTOP "$UAC_ERROR_ELEVATE $0"
Abort
UAC_ElevationAborted:
@@ -568,19 +707,19 @@ Function .onInit
UAC_Success:
StrCmp 1 $3 +4 ;Admin?
StrCmp 3 $1 0 UAC_ElevationAborted ;Try again?
MessageBox MB_ICONSTOP "This installer requires admin access, try again"
MessageBox MB_ICONSTOP $UAC_INSTALLER_REQUIRE_ADMIN
goto UAC_Elevate
;Prevent multiple instances.
System::Call 'kernel32::CreateMutexA(i 0, i 0, t "owncloudInstaller") i .r1 ?e'
Pop $R0
StrCmp $R0 0 +3
MessageBox MB_OK|MB_ICONEXCLAMATION "The installer is already running."
MessageBox MB_OK|MB_ICONEXCLAMATION $INIT_INSTALLER_RUNNING
Abort
;Use available InstallLocation when possible. This is useful in the uninstaller
;via re-install, which would otherwise use a default location - a bug.
ReadRegStr $R0 HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPLICATION_NAME}" "InstallLocation"
ReadRegStr $R0 ${MEMENTO_REGISTRY_ROOT} "${MEMENTO_REGISTRY_KEY}" "InstallLocation"
StrCmp $R0 "" SkipSetInstDir
StrCpy $INSTDIR $R0
SkipSetInstDir:
@@ -591,6 +730,15 @@ FunctionEnd
Function .onInstSuccess
${MementoSectionSave}
${If} $NoAutomaticUpdates == "yes"
WriteRegDWORD HKLM "Software\${APPLICATION_VENDOR}\${APPLICATION_NAME}" "skipUpdateCheck" "1"
${EndIf}
${If} ${Silent}
${AndIf} $InstallRunIfSilent == "yes"
Call LaunchApplication
${EndIf}
UAC::Unload ;Must call unload!
FunctionEnd
@@ -605,6 +753,8 @@ FunctionEnd
##############################################################################
Function un.onInit
Call un.SetLang
UAC_Elevate:
UAC::RunElevated
StrCmp 1223 $0 UAC_ElevationAborted ; UAC dialog aborted by user?
@@ -613,7 +763,7 @@ Function un.onInit
Quit
UAC_Err:
MessageBox MB_ICONSTOP "Unable to elevate, error $0"
MessageBox MB_ICONSTOP "$UAC_ERROR_ELEVATE $0"
Abort
UAC_ElevationAborted:
@@ -622,14 +772,14 @@ Function un.onInit
UAC_Success:
StrCmp 1 $3 +4 ;Admin?
StrCmp 3 $1 0 UAC_ElevationAborted ;Try again?
MessageBox MB_ICONSTOP "This uninstaller requires admin access, try again"
MessageBox MB_ICONSTOP $UAC_UNINSTALLER_REQUIRE_ADMIN
goto UAC_Elevate
;Prevent multiple instances.
System::Call 'kernel32::CreateMutexA(i 0, i 0, t "owncloudUninstaller") i .r1 ?e'
Pop $R0
StrCmp $R0 0 +3
MessageBox MB_OK|MB_ICONEXCLAMATION "This uninstaller is already running."
MessageBox MB_OK|MB_ICONEXCLAMATION $INIT_UNINSTALLER_RUNNING
Abort
;Shutdown ${APPLICATION_NAME} in order to remove locked files.

View File

@@ -0,0 +1,156 @@
include (MacroOptionalFindPackage)
include (MacroLogFeature)
option(BUILD_WITH_QT4 "Build with Qt4 no matter if Qt5 was found" OFF)
if( BUILD_WITH_QT4 )
message(STATUS "Search for Qt5 was disalbed by option BUILD_WITH_QT4")
else( BUILD_WITH_QT4 )
find_package(Qt5Core QUIET)
endif( BUILD_WITH_QT4 )
if( Qt5Core_FOUND )
message(STATUS "Found Qt5 core, checking for further dependencies...")
find_package(Qt5Network REQUIRED)
find_package(Qt5Xml REQUIRED)
if(NOT TOKEN_AUTH_ONLY)
find_package(Qt5WebKitWidgets REQUIRED)
find_package(Qt5WebKit REQUIRED)
find_package(Qt5PrintSupport REQUIRED)
find_package(Qt5Quick REQUIRED)
find_package(Qt5Widgets REQUIRED)
endif()
if(APPLE)
find_package(Qt5MacExtras REQUIRED)
endif(APPLE)
else( Qt5Core_FOUND )
if(WIN32 OR APPLE)
message(FATAL_ERROR "Qt 5 not found, but application depends on Qt5 on Windows and Mac OS X")
endif(WIN32 OR APPLE)
endif( Qt5Core_FOUND )
if( Qt5Core_FOUND )
message(STATUS "Using Qt 5!")
# We need this to find the paths to qdbusxml2cpp and co
if (WITH_DBUS)
find_package(Qt5DBus REQUIRED)
include_directories(${Qt5DBus_INCLUDES})
add_definitions(${Qt5DBus_DEFINITIONS})
endif (WITH_DBUS)
include_directories(${Qt5Core_INCLUDES})
add_definitions(${Qt5Core_DEFINITIONS})
if (NOT WIN32) #implied on Win32
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC")
endif(NOT WIN32)
# set(CMAKE_CXX_FLAGS "${Qt5Widgets_EXECUTABLE_COMPILE_FLAGS}")
if(APPLE AND NOT TOKEN_AUTH_ONLY)
include_directories(${Qt5MacExtras_INCLUDE_DIRS})
add_definitions(${Qt5MacExtras_DEFINITIONS})
set (QT_LIBRARIES ${QT_LIBRARIES} ${Qt5MacExtras_LIBRARIES})
endif()
if(NOT BUILD_LIBRARIES_ONLY)
macro(qt_wrap_ui)
qt5_wrap_ui(${ARGN})
endmacro()
else()
# hack
SET(QT_UIC_EXECUTABLE "")
endif()
macro(qt_add_resources)
qt5_add_resources(${ARGN})
endmacro()
find_package(Qt5LinguistTools REQUIRED)
macro(qt_add_translation)
qt5_add_translation(${ARGN})
endmacro()
macro(qt_add_dbus_interface)
qt5_add_dbus_interface(${ARGN})
endmacro()
macro(qt_add_dbus_adaptor)
qt5_add_dbus_adaptor(${ARGN})
endmacro()
macro(qt_wrap_cpp)
qt5_wrap_cpp(${ARGN})
endmacro()
macro(install_qt_executable)
install_qt5_executable(${ARGN})
endmacro()
macro(setup_qt)
endmacro()
set(QT_RCC_EXECUTABLE "${Qt5Core_RCC_EXECUTABLE}")
#Enable deprecated symbols
add_definitions("-DQT_DISABLE_DEPRECATED_BEFORE=0")
endif( Qt5Core_FOUND )
if(NOT Qt5Core_FOUND)
message(STATUS "Could not find Qt5, searching for Qt4 instead...")
set(NEEDED_QT4_COMPONENTS "QtCore" "QtXml" "QtNetwork" "QtGui" "QtWebkit")
if( BUILD_TESTS )
list(APPEND NEEDED_QT4_COMPONENTS "QtTest")
endif()
find_package(Qt4 4.7.0 COMPONENTS ${NEEDED_QT4_COMPONENTS} )
macro_log_feature(QT4_FOUND "Qt" "A cross-platform application and UI framework" "http://www.qt-project.org" TRUE "" "If you see this, although libqt4-devel is installed, check whether the \n qtwebkit-devel package and whatever contains QtUiTools is installed too")
macro(qt5_use_modules)
endmacro()
macro(qt_wrap_ui)
qt4_wrap_ui(${ARGN})
endmacro()
macro(qt_add_resources)
qt4_add_resources(${ARGN})
endmacro()
macro(qt_add_translation)
qt4_add_translation(${ARGN})
endmacro()
macro(qt_add_dbus_interface)
qt4_add_dbus_interface(${ARGN})
endmacro()
macro(qt_add_dbus_adaptor)
qt4_add_dbus_adaptor(${ARGN})
endmacro()
macro(qt_wrap_cpp)
qt4_wrap_cpp(${ARGN})
endmacro()
macro(install_qt_executable)
install_qt4_executable(${ARGN})
endmacro()
macro(setup_qt)
set(QT_USE_QTGUI TRUE)
set(QT_USE_QTSQL TRUE)
set(QT_USE_QTNETWORK TRUE)
set(QT_USE_QTXML TRUE)
set(QT_USE_QTWEBKIT TRUE)
set(QT_USE_QTDBUS TRUE)
include( ${QT_USE_FILE} )
endmacro()
endif()
if( Qt5Core_DIR )
set( HAVE_QT5 TRUE )
else( Qt5Core_DIR )
set( HAVE_QT5 FALSE )
endif( Qt5Core_DIR )

View File

@@ -0,0 +1,58 @@
# - macro_asciidoc2man(inputfile outputfile)
#
# Create a manpage with asciidoc.
# Example: macro_asciidoc2man(foo.txt foo.1)
#
# Copyright (c) 2006, Andreas Schneider, <asn@cryptomilk.org>
#
# Redistribution and use is allowed according to the terms of the BSD license.
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
include(MacroCopyFile)
macro(MACRO_ASCIIDOC2MAN _a2m_input _a2m_output)
find_program(A2X
NAMES
a2x
)
#message("+++ A2X: ${A2X}")
if (A2X)
#message("+++ ${A2X} --doctype=manpage --format=manpage --destination-dir=${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/${_a2m_input}")
macro_copy_file(${CMAKE_CURRENT_SOURCE_DIR}/${_a2m_input} ${CMAKE_CURRENT_BINARY_DIR}/${_a2m_input})
execute_process(
COMMAND
${A2X} --doctype=manpage --format=manpage ${_a2m_input}
WORKING_DIRECTORY
${CMAKE_CURRENT_BINARY_DIR}
RESULT_VARIABLE
A2M_MAN_GENERATED
ERROR_QUIET
)
#message("+++ A2M_MAN_GENERATED: ${A2M_MAN_GENERATED}")
if (A2M_MAN_GENERATED EQUAL 0)
find_file(A2M_MAN_FILE
NAME
${_a2m_output}
PATHS
${CMAKE_CURRENT_BINARY_DIR}
NO_DEFAULT_PATH
)
if (A2M_MAN_FILE)
get_filename_component(A2M_MAN_CATEGORY ${A2M_MAN_FILE} EXT)
string(SUBSTRING ${A2M_MAN_CATEGORY} 1 1 A2M_MAN_CATEGORY)
install(
FILES
${A2M_MAN_FILE}
DESTINATION
${MAN_INSTALL_DIR}/man${A2M_MAN_CATEGORY}
)
endif (A2M_MAN_FILE)
endif (A2M_MAN_GENERATED EQUAL 0)
endif (A2X)
endmacro(MACRO_ASCIIDOC2MAN _a2m_input _a2m_file)

View File

@@ -0,0 +1,127 @@
# -helper macro to add a "doc" target with CMake build system.
# and configure doxy.config.in to doxy.config
#
# target "doc" allows building the documentation with doxygen/dot on WIN32 and Linux
# Creates .chm windows help file if MS HTML help workshop
# (available from http://msdn.microsoft.com/workshop/author/htmlhelp)
# is installed with its DLLs in PATH.
#
#
# Please note, that the tools, e.g.:
# doxygen, dot, latex, dvips, makeindex, gswin32, etc.
# must be in path.
#
# Note about Visual Studio Projects:
# MSVS has its own path environment which may differ from the shell.
# See "Menu Tools/Options/Projects/VC++ Directories" in VS 7.1
#
# author Jan Woetzel 2004-2006
# www.mip.informatik.uni-kiel.de/~jw
FIND_PACKAGE(Doxygen)
IF (DOXYGEN_FOUND)
# click+jump in Emacs and Visual Studio (for doxy.config) (jw)
IF (CMAKE_BUILD_TOOL MATCHES "(msdev|devenv)")
SET(DOXY_WARN_FORMAT "\"$file($line) : $text \"")
ELSE (CMAKE_BUILD_TOOL MATCHES "(msdev|devenv)")
SET(DOXY_WARN_FORMAT "\"$file:$line: $text \"")
ENDIF (CMAKE_BUILD_TOOL MATCHES "(msdev|devenv)")
# we need latex for doxygen because of the formulas
FIND_PACKAGE(LATEX)
IF (NOT LATEX_COMPILER)
MESSAGE(STATUS "latex command LATEX_COMPILER not found but usually required. You will probably get warnings and user inetraction on doxy run.")
ENDIF (NOT LATEX_COMPILER)
IF (NOT MAKEINDEX_COMPILER)
MESSAGE(STATUS "makeindex command MAKEINDEX_COMPILER not found but usually required.")
ENDIF (NOT MAKEINDEX_COMPILER)
IF (NOT DVIPS_CONVERTER)
MESSAGE(STATUS "dvips command DVIPS_CONVERTER not found but usually required.")
ENDIF (NOT DVIPS_CONVERTER)
FIND_PROGRAM(DOXYGEN_DOT_EXECUTABLE_PATH NAMES dot)
IF (DOXYGEN_DOT_EXECUTABLE_PATH)
SET(DOXYGEN_DOT_FOUND "YES")
ENDIF (DOXYGEN_DOT_EXECUTABLE_PATH)
IF (EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/doxy.config.in")
MESSAGE(STATUS "Generate ${CMAKE_CURRENT_BINARY_DIR}/doxy.config from doxy.config.in")
CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/doxy.config.in
${CMAKE_CURRENT_BINARY_DIR}/doxy.config
@ONLY )
# use (configured) doxy.config from (out of place) BUILD tree:
SET(DOXY_CONFIG "${CMAKE_CURRENT_BINARY_DIR}/doxy.config")
ELSE (EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/doxy.config.in")
# use static hand-edited doxy.config from SOURCE tree:
SET(DOXY_CONFIG "${CMAKE_CURRENT_SOURCE_DIR}/doxy.config")
IF (EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/doxy.config")
MESSAGE(STATUS "WARNING: using existing ${CMAKE_CURRENT_SOURCE_DIR}/doxy.config instead of configuring from doxy.config.in file.")
ELSE (EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/doxy.config")
IF (EXISTS "${CMAKE_MODULE_PATH}/doxy.config.in")
# using template doxy.config.in
MESSAGE(STATUS "Generate ${CMAKE_CURRENT_BINARY_DIR}/doxy.config from doxy.config.in")
CONFIGURE_FILE(${CMAKE_MODULE_PATH}/doxy.config.in
${CMAKE_CURRENT_BINARY_DIR}/doxy.config
@ONLY )
SET(DOXY_CONFIG "${CMAKE_CURRENT_BINARY_DIR}/doxy.config")
ELSE (EXISTS "${CMAKE_MODULE_PATH}/doxy.config.in")
# failed completely...
MESSAGE(SEND_ERROR "Please create ${CMAKE_CURRENT_SOURCE_DIR}/doxy.config.in (or doxy.config as fallback)")
ENDIF(EXISTS "${CMAKE_MODULE_PATH}/doxy.config.in")
ENDIF(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/doxy.config")
ENDIF(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/doxy.config.in")
ADD_CUSTOM_TARGET(csync_doc ${DOXYGEN_EXECUTABLE} ${DOXY_CONFIG} DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/doxy.config)
# create a windows help .chm file using hhc.exe
# HTMLHelp DLL must be in path!
# fallback: use hhw.exe interactively
IF (WIN32)
FIND_PACKAGE(HTMLHelp)
IF (HTML_HELP_COMPILER)
SET (TMP "${CMAKE_CURRENT_BINARY_DIR}\\doc\\html\\index.hhp")
STRING(REGEX REPLACE "[/]" "\\\\" HHP_FILE ${TMP} )
# MESSAGE(SEND_ERROR "DBG HHP_FILE=${HHP_FILE}")
ADD_CUSTOM_TARGET(winhelp ${HTML_HELP_COMPILER} ${HHP_FILE})
ADD_DEPENDENCIES (winhelp doc)
IF (NOT TARGET_DOC_SKIP_INSTALL)
# install windows help?
# determine useful name for output file
# should be project and version unique to allow installing
# multiple projects into one global directory
IF (EXISTS "${PROJECT_BINARY_DIR}/doc/html/index.chm")
IF (PROJECT_NAME)
SET(OUT "${PROJECT_NAME}")
ELSE (PROJECT_NAME)
SET(OUT "Documentation") # default
ENDIF(PROJECT_NAME)
IF (${PROJECT_NAME}_VERSION_MAJOR)
SET(OUT "${OUT}-${${PROJECT_NAME}_VERSION_MAJOR}")
IF (${PROJECT_NAME}_VERSION_MINOR)
SET(OUT "${OUT}.${${PROJECT_NAME}_VERSION_MINOR}")
IF (${PROJECT_NAME}_VERSION_PATCH)
SET(OUT "${OUT}.${${PROJECT_NAME}_VERSION_PATCH}")
ENDIF(${PROJECT_NAME}_VERSION_PATCH)
ENDIF(${PROJECT_NAME}_VERSION_MINOR)
ENDIF(${PROJECT_NAME}_VERSION_MAJOR)
# keep suffix
SET(OUT "${OUT}.chm")
#MESSAGE("DBG ${PROJECT_BINARY_DIR}/doc/html/index.chm \n${OUT}")
# create target used by install and package commands
INSTALL(FILES "${PROJECT_BINARY_DIR}/doc/html/index.chm"
DESTINATION "doc"
RENAME "${OUT}"
)
ENDIF(EXISTS "${PROJECT_BINARY_DIR}/doc/html/index.chm")
ENDIF(NOT TARGET_DOC_SKIP_INSTALL)
ENDIF(HTML_HELP_COMPILER)
# MESSAGE(SEND_ERROR "HTML_HELP_COMPILER=${HTML_HELP_COMPILER}")
ENDIF (WIN32)
ENDIF(DOXYGEN_FOUND)

View File

@@ -2,13 +2,13 @@ if(CMAKE_COMPILER_IS_GNUCXX)
execute_process(COMMAND ${CMAKE_C_COMPILER} -dumpversion
OUTPUT_VARIABLE GCC_VERSION)
if(GCC_VERSION VERSION_GREATER 4.8 OR GCC_VERSION VERSION_EQUAL 4.8)
set(CMAKE_CXX_FLAGS "-Wall -Wextra -Wpedantic -Wno-long-long")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra -Wpedantic -Wno-long-long")
else(GCC_VERSION VERSION_GREATER 4.8 OR GCC_VERSION VERSION_EQUAL 4.8)
set(CMAKE_CXX_FLAGS "-Wall -Wextra -pedantic -Wno-long-long")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra -pedantic -Wno-long-long")
endif(GCC_VERSION VERSION_GREATER 4.8 OR GCC_VERSION VERSION_EQUAL 4.8)
endif(CMAKE_COMPILER_IS_GNUCXX)
if(CMAKE_CXX_COMPILER MATCHES "clang")
set(CMAKE_CXX_FLAGS "-Wall -Wextra -pedantic -Wno-long-long")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra -pedantic -Wno-long-long")
endif(CMAKE_CXX_COMPILER MATCHES "clang")
# TODO: handle msvc compilers warnings?

View File

@@ -0,0 +1,154 @@
#!/usr/bin/env ruby
# Simple script to generate simple cmake modules for finding
# libraries (packages)
#
# usage: generate_findpackage_file
# then you will be prompted to enter the required parameters
#
#####################################################################
#
# Copyright (c) 2006 Alexander Neundorf <neundorf@kde.org>
# Copyright (c) 2006 Andreas Schneider <asn@cryptomilk.org>
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor,
# Boston, MA 02110-1301, USA.
#
require 'readline'
package=Readline.readline("Name of package: ")
name=Readline.readline("\nYour Name (for copyright): ")
email=Readline.readline("\nYour mail (for copyright): ")
pkgconfig=Readline.readline("\npkgconfig package name (e.g. \"libxml-2.0\", leave empty to skip pkgconfig): ")
header=Readline.readline("\nLook for header (e.g. \"jpeglib.h\" or \"libxml/xpath.h\"): ")
incSubDir=Readline.readline("\nLook for header subdir (e.g. \"libxml2\", empty to skip ): ")
libs=Readline.readline("\nLook for library (e.g. \"xml2\" or \"avcodec avutil\"): ")
t = Time.now
cmakeIncDirName=package.upcase+"_INCLUDE_DIR"
cmakeIncDirNames=package.upcase+"_INCLUDE_DIRS"
cmakeLibNames=package.upcase+"_LIBRARIES"
cmakeDefsName=package.upcase+"_DEFINITIONS"
cmakeFoundName=package.upcase+"_FOUND"
cmakeQuietName=package+"_FIND_QUIETLY"
cmakeRequiredName=package+"_FIND_REQUIRED"
file=File.new("Find#{package}.cmake", "w+")
file.printf("# - Try to find #{package}\n")
file.printf("# Once done this will define\n")
file.printf("#\n")
file.printf("# #{cmakeFoundName} - system has #{package}\n")
file.printf("# #{cmakeIncDirNames} - the #{package} include directory\n")
file.printf("# #{cmakeLibNames} - Link these to use #{package}\n")
file.printf("# #{cmakeDefsName} - Compiler switches required for using #{package}\n")
file.printf("#\n")
file.printf("# Copyright (c) #{t.year} #{name} <#{email}>\n")
file.printf("#\n")
file.printf("# Redistribution and use is allowed according to the terms of the New\n")
file.printf("# BSD license.\n")
file.printf("# For details see the accompanying COPYING-CMAKE-SCRIPTS file.\n")
file.printf("#\n")
file.printf("\n")
file.printf("\n")
file.printf("if (#{cmakeLibNames} AND #{cmakeIncDirNames})\n")
file.printf(" # in cache already\n")
file.printf(" set(#{cmakeFoundName} TRUE)\n")
file.printf("else (#{cmakeLibNames} AND #{cmakeIncDirNames})\n")
if not pkgconfig.empty?
file.printf(" find_package(PkgConfig)\n")
file.printf(" if (PKG_CONFIG_FOUND)\n")
file.printf(" pkg_check_modules(_#{package.upcase} #{pkgconfig})\n")
file.printf(" endif (PKG_CONFIG_FOUND)\n")
end
file.printf("\n")
file.printf(" find_path(#{cmakeIncDirName}\n")
file.printf(" NAMES\n")
file.printf(" #{header}\n")
file.printf(" PATHS\n")
if not pkgconfig.empty?
file.printf(" ${_#{package.upcase}_INCLUDEDIR}\n")
end
file.printf(" /usr/include\n")
file.printf(" /usr/local/include\n")
file.printf(" /opt/local/include\n")
file.printf(" /sw/include\n")
if not incSubDir.empty?
file.printf(" PATH_SUFFIXES\n")
file.printf(" #{incSubDir}\n")
end
file.printf(" )\n")
file.printf("\n")
libs.split(" ").each do |lib|
file.printf(" find_library(#{lib.upcase}_LIBRARY\n")
file.printf(" NAMES\n")
file.printf(" #{lib}\n")
file.printf(" PATHS\n")
if not pkgconfig.empty?
file.printf(" ${_#{package.upcase}_LIBDIR}\n")
end
file.printf(" /usr/lib\n")
file.printf(" /usr/local/lib\n")
file.printf(" /opt/local/lib\n")
file.printf(" /sw/lib\n")
file.printf(" )\n")
file.printf("\n")
end
file.printf(" set(#{cmakeIncDirNames}\n")
file.printf(" ${#{cmakeIncDirName}}\n")
file.printf(" )\n")
file.printf("\n")
libs.split(" ").each do |lib|
file.printf(" if (#{lib.upcase}_LIBRARY)\n")
file.printf(" set(#{cmakeLibNames}\n")
file.printf(" ${#{cmakeLibNames}}\n")
file.printf(" ${#{lib.upcase}_LIBRARY}\n")
file.printf(" )\n")
file.printf(" endif (#{lib.upcase}_LIBRARY)\n")
file.printf("\n")
end
file.printf(" include(FindPackageHandleStandardArgs)\n")
file.printf(" find_package_handle_standard_args(#{package} DEFAULT_MSG #{cmakeLibNames} #{cmakeIncDirNames})\n")
file.printf("\n")
file.printf(" # show the #{cmakeIncDirNames} and #{cmakeLibNames} variables only in the advanced view\n")
file.printf(" mark_as_advanced(#{cmakeIncDirNames} #{cmakeLibNames})\n\n")
file.printf("endif (#{cmakeLibNames} AND #{cmakeIncDirNames})\n\n")
printf("Done, generated Find#{package}.cmake\n")

View File

@@ -0,0 +1,135 @@
#!/usr/bin/env ruby
# simple script to generate CMakeLists.txt for wengophone libs
#
# usage: generate_lib_file
# then you will be prompted to enter the required parameters
#
#####################################################################
#
# Copyright (c) 2006 Andreas Schneider <asn@cryptomilk.org>
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor,
# Boston, MA 02110-1301, USA.
#
print("Name of project: ")
project=gets.chomp
printf("\n")
print("Other projects to includes (e.g. \"owutil tinyxml\", leave emtpy to skip): ")
otherprojects=gets.chomp
printf("\n")
print("Defininitions (leave empty to skip): ")
definitions=gets.chomp
cmakePublicIncDirName = project.upcase+"_PUBLIC_INCLUDE_DIRS"
cmakePrivateIncDirName = project.upcase+"_PRIVATE_INCLUDE_DIRS"
cmakeLibName = project.upcase+"_LIBRARY"
cmakeLibNames = project.upcase+"_LINK_LIBRARIES"
cmakePublicDefsName = project.upcase+"_PUBLIC_DEFINITIONS"
cmakePrivateDefsName = project.upcase+"_PRIVATE_DEFINITIONS"
file=File.new("CMakeLists.txt", "w+")
file.printf("project(#{project})\n")
file.printf("\n")
file.printf("# needed include directories to build #{project}\n")
file.printf("# saves the variable in internal cache for later use\n")
file.printf("set(#{cmakePublicIncDirName}\n")
file.printf(" ${CMAKE_CURRENT_SOURCE_DIR}\n")
file.printf(" ${CMAKE_CURRENT_SOURCE_DIR}/include\n")
file.printf(" CACHE INTERNAL \"#{project} public include directories\"\n")
file.printf(")\n")
file.printf("\n")
file.printf("set(#{cmakePrivateIncDirName}\n")
otherprojects.split(" ").each do |otherproject|
file.printf(" ${#{otherproject.upcase}_PUBLIC_INCLUDE_DIRS}\n")
end
file.printf(" ${CMAKE_CURRENT_BINARY_DIR}\n")
file.printf(")\n")
file.printf("\n")
file.printf("set(#{cmakeLibName}\n")
file.printf(" #{project}\n")
file.printf(" CACHE INTERNAL \"#{project} library\"\n")
file.printf(")\n")
file.printf("\n")
file.printf("# #{project} lib and dependencies\n")
file.printf("set(#{cmakeLibNames}\n")
file.printf(" #{cmakeLibName}\n")
otherprojects.split(" ").each do |otherproject|
file.printf(" ${#{otherproject.upcase}_LIBRARIES}\n")
end
file.printf(")\n")
file.printf("\n")
if not definitions.empty?
file.printf("set(#{cmakePublicDefsName}\n")
file.printf(" #{definitions}\n")
file.printf(" CACHE INTERNAL \"#{project} public definitions\"\n")
file.printf(")\n")
file.printf("\n")
file.printf("set(#{cmakePrivateDefsName}\n")
file.printf(" #{definitions}\n")
file.printf(")\n")
file.printf("\n")
end
file.printf("set(#{project}_SRCS\n")
file.printf(" files.c\n")
file.printf(")\n")
file.printf("\n")
file.printf("include_directories(\n")
file.printf(" ${#{cmakePublicIncDirName}}\n")
file.printf(" ${#{cmakePrivateIncDirName}}\n")
file.printf(")\n")
file.printf("\n")
if not definitions.empty?
file.printf("add_definitions(\n")
file.printf(" ${#{cmakePublicDefsName}}\n")
file.printf(" ${#{cmakePrivateDefsName}}\n")
file.printf(")\n")
file.printf("\n")
end
file.printf("\n")
file.printf("add_library(${#{cmakeLibName}} STATIC ${#{project}_SRCS})\n")
file.printf("\n")
file.printf("target_link_libraries(${#{cmakeLibNames}})\n")
file.printf("\n")
printf("Generated CMakeLists.txt for #{project}\n")

View File

@@ -10,9 +10,17 @@
#cmakedefine THEME_INCLUDE @THEME_INCLUDE@
#cmakedefine APPLICATION_NAME "@APPLICATION_NAME@"
#cmakedefine APPLICATION_VENDOR "@APPLICATION_VENDOR@"
#cmakedefine APPLICATION_REV_DOMAIN "@APPLICATION_REV_DOMAIN@"
#cmakedefine APPLICATION_SHORTNAME "@APPLICATION_SHORTNAME@"
#cmakedefine APPLICATION_EXECUTABLE "@APPLICATION_EXECUTABLE@"
#cmakedefine APPLICATION_UPDATE_URL "@APPLICATION_UPDATE_URL@"
#cmakedefine SYSCONFDIR "@SYSCONFDIR@"
#cmakedefine DATADIR "@DATADIR@"
#ifndef NEON_WITH_LFS
#cmakedefine NEON_WITH_LFS "@NEON_WITH_LFS@"
#endif
#endif

3
csync/AUTHORS Normal file
View File

@@ -0,0 +1,3 @@
Andreas Schneider <asn@cryptomilk.org>
Klaas Freitag <freitag@owncloud.com>
Olivier Goffart <olivier>

57
csync/CMakeLists.txt Normal file
View File

@@ -0,0 +1,57 @@
# global needed variables
set(APPLICATION_NAME "ocsync")
set(APPLICATION_VERSION_MAJOR "0")
set(APPLICATION_VERSION_MINOR "91")
set(APPLICATION_VERSION_PATCH "5")
set(APPLICATION_VERSION "${APPLICATION_VERSION_MAJOR}.${APPLICATION_VERSION_MINOR}.${APPLICATION_VERSION_PATCH}")
set(LIBRARY_VERSION "0.2.1")
set(LIBRARY_SOVERSION "0")
# add definitions
include(DefineCMakeDefaults)
include(DefinePlatformDefaults)
include(DefineCompilerFlags)
include(DefineOptions.cmake)
include(DefineInstallationPaths)
# add macros
include(MacroAddPlugin)
include(MacroCopyFile)
if (NOT WIN32)
find_package(Iconv)
endif (NOT WIN32)
find_package(CMocka)
if (CMOCKA_FOUND AND UNIT_TESTING)
include(AddCMockaTest)
endif (CMOCKA_FOUND AND UNIT_TESTING)
include(ConfigureChecks.cmake)
set(SOURCE_DIR ${CMAKE_SOURCE_DIR})
include_directories(${CMAKE_CURRENT_BINARY_DIR})
macro_copy_file(${CMAKE_CURRENT_SOURCE_DIR}/CTestCustom.cmake ${CMAKE_CURRENT_BINARY_DIR}/CTestCustom.cmake)
if (MEM_NULL_TESTS)
add_definitions(-DCSYNC_MEM_NULL_TESTS)
endif (MEM_NULL_TESTS)
add_subdirectory(src)
if (CMOCKA_FOUND AND UNIT_TESTING)
add_subdirectory(tests)
endif (CMOCKA_FOUND AND UNIT_TESTING)
configure_file(config_csync.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config_csync.h)
configure_file(config_test.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config_test.h)

502
csync/COPYING Normal file
View File

@@ -0,0 +1,502 @@
GNU LESSER GENERAL PUBLIC LICENSE
Version 2.1, February 1999
Copyright (C) 1991, 1999 Free Software Foundation, Inc.
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
[This is the first released version of the Lesser GPL. It also counts
as the successor of the GNU Library Public License, version 2, hence
the version number 2.1.]
Preamble
The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public
Licenses are intended to guarantee your freedom to share and change
free software--to make sure the software is free for all its users.
This license, the Lesser General Public License, applies to some
specially designated software packages--typically libraries--of the
Free Software Foundation and other authors who decide to use it. You
can use it too, but we suggest you first think carefully about whether
this license or the ordinary General Public License is the better
strategy to use in any particular case, based on the explanations below.
When we speak of free software, we are referring to freedom of use,
not price. Our General Public Licenses are designed to make sure that
you have the freedom to distribute copies of free software (and charge
for this service if you wish); that you receive source code or can get
it if you want it; that you can change the software and use pieces of
it in new free programs; and that you are informed that you can do
these things.
To protect your rights, we need to make restrictions that forbid
distributors to deny you these rights or to ask you to surrender these
rights. These restrictions translate to certain responsibilities for
you if you distribute copies of the library or if you modify it.
For example, if you distribute copies of the library, whether gratis
or for a fee, you must give the recipients all the rights that we gave
you. You must make sure that they, too, receive or can get the source
code. If you link other code with the library, you must provide
complete object files to the recipients, so that they can relink them
with the library after making changes to the library and recompiling
it. And you must show them these terms so they know their rights.
We protect your rights with a two-step method: (1) we copyright the
library, and (2) we offer you this license, which gives you legal
permission to copy, distribute and/or modify the library.
To protect each distributor, we want to make it very clear that
there is no warranty for the free library. Also, if the library is
modified by someone else and passed on, the recipients should know
that what they have is not the original version, so that the original
author's reputation will not be affected by problems that might be
introduced by others.
Finally, software patents pose a constant threat to the existence of
any free program. We wish to make sure that a company cannot
effectively restrict the users of a free program by obtaining a
restrictive license from a patent holder. Therefore, we insist that
any patent license obtained for a version of the library must be
consistent with the full freedom of use specified in this license.
Most GNU software, including some libraries, is covered by the
ordinary GNU General Public License. This license, the GNU Lesser
General Public License, applies to certain designated libraries, and
is quite different from the ordinary General Public License. We use
this license for certain libraries in order to permit linking those
libraries into non-free programs.
When a program is linked with a library, whether statically or using
a shared library, the combination of the two is legally speaking a
combined work, a derivative of the original library. The ordinary
General Public License therefore permits such linking only if the
entire combination fits its criteria of freedom. The Lesser General
Public License permits more lax criteria for linking other code with
the library.
We call this license the "Lesser" General Public License because it
does Less to protect the user's freedom than the ordinary General
Public License. It also provides other free software developers Less
of an advantage over competing non-free programs. These disadvantages
are the reason we use the ordinary General Public License for many
libraries. However, the Lesser license provides advantages in certain
special circumstances.
For example, on rare occasions, there may be a special need to
encourage the widest possible use of a certain library, so that it becomes
a de-facto standard. To achieve this, non-free programs must be
allowed to use the library. A more frequent case is that a free
library does the same job as widely used non-free libraries. In this
case, there is little to gain by limiting the free library to free
software only, so we use the Lesser General Public License.
In other cases, permission to use a particular library in non-free
programs enables a greater number of people to use a large body of
free software. For example, permission to use the GNU C Library in
non-free programs enables many more people to use the whole GNU
operating system, as well as its variant, the GNU/Linux operating
system.
Although the Lesser General Public License is Less protective of the
users' freedom, it does ensure that the user of a program that is
linked with the Library has the freedom and the wherewithal to run
that program using a modified version of the Library.
The precise terms and conditions for copying, distribution and
modification follow. Pay close attention to the difference between a
"work based on the library" and a "work that uses the library". The
former contains code derived from the library, whereas the latter must
be combined with the library in order to run.
GNU LESSER GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This License Agreement applies to any software library or other
program which contains a notice placed by the copyright holder or
other authorized party saying it may be distributed under the terms of
this Lesser General Public License (also called "this License").
Each licensee is addressed as "you".
A "library" means a collection of software functions and/or data
prepared so as to be conveniently linked with application programs
(which use some of those functions and data) to form executables.
The "Library", below, refers to any such software library or work
which has been distributed under these terms. A "work based on the
Library" means either the Library or any derivative work under
copyright law: that is to say, a work containing the Library or a
portion of it, either verbatim or with modifications and/or translated
straightforwardly into another language. (Hereinafter, translation is
included without limitation in the term "modification".)
"Source code" for a work means the preferred form of the work for
making modifications to it. For a library, complete source code means
all the source code for all modules it contains, plus any associated
interface definition files, plus the scripts used to control compilation
and installation of the library.
Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope. The act of
running a program using the Library is not restricted, and output from
such a program is covered only if its contents constitute a work based
on the Library (independent of the use of the Library in a tool for
writing it). Whether that is true depends on what the Library does
and what the program that uses the Library does.
1. You may copy and distribute verbatim copies of the Library's
complete source code as you receive it, in any medium, provided that
you conspicuously and appropriately publish on each copy an
appropriate copyright notice and disclaimer of warranty; keep intact
all the notices that refer to this License and to the absence of any
warranty; and distribute a copy of this License along with the
Library.
You may charge a fee for the physical act of transferring a copy,
and you may at your option offer warranty protection in exchange for a
fee.
2. You may modify your copy or copies of the Library or any portion
of it, thus forming a work based on the Library, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:
a) The modified work must itself be a software library.
b) You must cause the files modified to carry prominent notices
stating that you changed the files and the date of any change.
c) You must cause the whole of the work to be licensed at no
charge to all third parties under the terms of this License.
d) If a facility in the modified Library refers to a function or a
table of data to be supplied by an application program that uses
the facility, other than as an argument passed when the facility
is invoked, then you must make a good faith effort to ensure that,
in the event an application does not supply such function or
table, the facility still operates, and performs whatever part of
its purpose remains meaningful.
(For example, a function in a library to compute square roots has
a purpose that is entirely well-defined independent of the
application. Therefore, Subsection 2d requires that any
application-supplied function or table used by this function must
be optional: if the application does not supply it, the square
root function must still compute square roots.)
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the Library,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works. But when you
distribute the same sections as part of a whole which is a work based
on the Library, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote
it.
Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Library.
In addition, mere aggregation of another work not based on the Library
with the Library (or with a work based on the Library) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.
3. You may opt to apply the terms of the ordinary GNU General Public
License instead of this License to a given copy of the Library. To do
this, you must alter all the notices that refer to this License, so
that they refer to the ordinary GNU General Public License, version 2,
instead of to this License. (If a newer version than version 2 of the
ordinary GNU General Public License has appeared, then you can specify
that version instead if you wish.) Do not make any other change in
these notices.
Once this change is made in a given copy, it is irreversible for
that copy, so the ordinary GNU General Public License applies to all
subsequent copies and derivative works made from that copy.
This option is useful when you wish to copy part of the code of
the Library into a program that is not a library.
4. You may copy and distribute the Library (or a portion or
derivative of it, under Section 2) in object code or executable form
under the terms of Sections 1 and 2 above provided that you accompany
it with the complete corresponding machine-readable source code, which
must be distributed under the terms of Sections 1 and 2 above on a
medium customarily used for software interchange.
If distribution of object code is made by offering access to copy
from a designated place, then offering equivalent access to copy the
source code from the same place satisfies the requirement to
distribute the source code, even though third parties are not
compelled to copy the source along with the object code.
5. A program that contains no derivative of any portion of the
Library, but is designed to work with the Library by being compiled or
linked with it, is called a "work that uses the Library". Such a
work, in isolation, is not a derivative work of the Library, and
therefore falls outside the scope of this License.
However, linking a "work that uses the Library" with the Library
creates an executable that is a derivative of the Library (because it
contains portions of the Library), rather than a "work that uses the
library". The executable is therefore covered by this License.
Section 6 states terms for distribution of such executables.
When a "work that uses the Library" uses material from a header file
that is part of the Library, the object code for the work may be a
derivative work of the Library even though the source code is not.
Whether this is true is especially significant if the work can be
linked without the Library, or if the work is itself a library. The
threshold for this to be true is not precisely defined by law.
If such an object file uses only numerical parameters, data
structure layouts and accessors, and small macros and small inline
functions (ten lines or less in length), then the use of the object
file is unrestricted, regardless of whether it is legally a derivative
work. (Executables containing this object code plus portions of the
Library will still fall under Section 6.)
Otherwise, if the work is a derivative of the Library, you may
distribute the object code for the work under the terms of Section 6.
Any executables containing that work also fall under Section 6,
whether or not they are linked directly with the Library itself.
6. As an exception to the Sections above, you may also combine or
link a "work that uses the Library" with the Library to produce a
work containing portions of the Library, and distribute that work
under terms of your choice, provided that the terms permit
modification of the work for the customer's own use and reverse
engineering for debugging such modifications.
You must give prominent notice with each copy of the work that the
Library is used in it and that the Library and its use are covered by
this License. You must supply a copy of this License. If the work
during execution displays copyright notices, you must include the
copyright notice for the Library among them, as well as a reference
directing the user to the copy of this License. Also, you must do one
of these things:
a) Accompany the work with the complete corresponding
machine-readable source code for the Library including whatever
changes were used in the work (which must be distributed under
Sections 1 and 2 above); and, if the work is an executable linked
with the Library, with the complete machine-readable "work that
uses the Library", as object code and/or source code, so that the
user can modify the Library and then relink to produce a modified
executable containing the modified Library. (It is understood
that the user who changes the contents of definitions files in the
Library will not necessarily be able to recompile the application
to use the modified definitions.)
b) Use a suitable shared library mechanism for linking with the
Library. A suitable mechanism is one that (1) uses at run time a
copy of the library already present on the user's computer system,
rather than copying library functions into the executable, and (2)
will operate properly with a modified version of the library, if
the user installs one, as long as the modified version is
interface-compatible with the version that the work was made with.
c) Accompany the work with a written offer, valid for at
least three years, to give the same user the materials
specified in Subsection 6a, above, for a charge no more
than the cost of performing this distribution.
d) If distribution of the work is made by offering access to copy
from a designated place, offer equivalent access to copy the above
specified materials from the same place.
e) Verify that the user has already received a copy of these
materials or that you have already sent this user a copy.
For an executable, the required form of the "work that uses the
Library" must include any data and utility programs needed for
reproducing the executable from it. However, as a special exception,
the materials to be distributed need not include anything that is
normally distributed (in either source or binary form) with the major
components (compiler, kernel, and so on) of the operating system on
which the executable runs, unless that component itself accompanies
the executable.
It may happen that this requirement contradicts the license
restrictions of other proprietary libraries that do not normally
accompany the operating system. Such a contradiction means you cannot
use both them and the Library together in an executable that you
distribute.
7. You may place library facilities that are a work based on the
Library side-by-side in a single library together with other library
facilities not covered by this License, and distribute such a combined
library, provided that the separate distribution of the work based on
the Library and of the other library facilities is otherwise
permitted, and provided that you do these two things:
a) Accompany the combined library with a copy of the same work
based on the Library, uncombined with any other library
facilities. This must be distributed under the terms of the
Sections above.
b) Give prominent notice with the combined library of the fact
that part of it is a work based on the Library, and explaining
where to find the accompanying uncombined form of the same work.
8. You may not copy, modify, sublicense, link with, or distribute
the Library except as expressly provided under this License. Any
attempt otherwise to copy, modify, sublicense, link with, or
distribute the Library is void, and will automatically terminate your
rights under this License. However, parties who have received copies,
or rights, from you under this License will not have their licenses
terminated so long as such parties remain in full compliance.
9. You are not required to accept this License, since you have not
signed it. However, nothing else grants you permission to modify or
distribute the Library or its derivative works. These actions are
prohibited by law if you do not accept this License. Therefore, by
modifying or distributing the Library (or any work based on the
Library), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Library or works based on it.
10. Each time you redistribute the Library (or any work based on the
Library), the recipient automatically receives a license from the
original licensor to copy, distribute, link with or modify the Library
subject to these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties with
this License.
11. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Library at all. For example, if a patent
license would not permit royalty-free redistribution of the Library by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Library.
If any portion of this section is held invalid or unenforceable under any
particular circumstance, the balance of the section is intended to apply,
and the section as a whole is intended to apply in other circumstances.
It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system which is
implemented by public license practices. Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.
This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.
12. If the distribution and/or use of the Library is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Library under this License may add
an explicit geographical distribution limitation excluding those countries,
so that distribution is permitted only in or among countries not thus
excluded. In such case, this License incorporates the limitation as if
written in the body of this License.
13. The Free Software Foundation may publish revised and/or new
versions of the Lesser General Public License from time to time.
Such new versions will be similar in spirit to the present version,
but may differ in detail to address new problems or concerns.
Each version is given a distinguishing version number. If the Library
specifies a version number of this License which applies to it and
"any later version", you have the option of following the terms and
conditions either of that version or of any later version published by
the Free Software Foundation. If the Library does not specify a
license version number, you may choose any version ever published by
the Free Software Foundation.
14. If you wish to incorporate parts of the Library into other free
programs whose distribution conditions are incompatible with these,
write to the author to ask for permission. For software which is
copyrighted by the Free Software Foundation, write to the Free
Software Foundation; we sometimes make exceptions for this. Our
decision will be guided by the two goals of preserving the free status
of all derivatives of our free software and of promoting the sharing
and reuse of software generally.
NO WARRANTY
15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
DAMAGES.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Libraries
If you develop a new library, and you want it to be of the greatest
possible use to the public, we recommend making it free software that
everyone can redistribute and change. You can do so by permitting
redistribution under these terms (or, alternatively, under the terms of the
ordinary General Public License).
To apply these terms, attach the following notices to the library. It is
safest to attach them to the start of each source file to most effectively
convey the exclusion of warranty; and each file should have at least the
"copyright" line and a pointer to where the full notice is found.
<one line to give the library's name and a brief idea of what it does.>
Copyright (C) <year> <name of author>
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
Also add information on how to contact you by electronic and paper mail.
You should also get your employer (if you work as a programmer) or your
school, if any, to sign a "copyright disclaimer" for the library, if
necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright interest in the
library `Frob' (a library for tweaking knobs) written by James Random Hacker.
<signature of Ty Coon>, 1 April 1990
Ty Coon, President of Vice
That's all there is to it!

12
csync/CTestConfig.cmake Normal file
View File

@@ -0,0 +1,12 @@
set(UPDATE_TYPE "true")
set(MEMORYCHECK_SUPPRESSIONS_FILE ${CMAKE_SOURCE_DIR}/tests/valgrind-csync.supp)
set(CTEST_PROJECT_NAME "csync")
set(CTEST_NIGHTLY_START_TIME "01:00:00 UTC")
set(CTEST_DROP_METHOD "http")
set(CTEST_DROP_SITE "mock.cryptomilk.org")
set(CTEST_DROP_LOCATION "/submit.php?project=${CTEST_PROJECT_NAME}")
set(CTEST_DROP_SITE_CDASH TRUE)

4
csync/CTestCustom.cmake Normal file
View File

@@ -0,0 +1,4 @@
set(CTEST_CUSTOM_MEMCHECK_IGNORE
${CTEST_CUSTOM_MEMCHECK_IGNORE}
check_std_c_jhash
)

355
csync/ChangeLog Normal file
View File

@@ -0,0 +1,355 @@
ChangeLog
==========
version 0.91.4 (released 2013-12-12, ownCloud Cleint 1.5.0)
* changelog added, version bumped.
version 0.91.3 (released 2013-12-11, ownCloud Client 1.5.0rc1)
* Fix progress bar on win32
* Fix network rate limiting on win32
* Do not check for etag during failing requests
* Start quota timer only after the predecessor returned
* Remove tmp files in case of certain download problems
* Some valgrind fixes
* Theming fix: button behaviour
* Fix a case where a sync loop could happen.
* Multi-linguar installer
* Fix handling of quotes in etags written by older ownClouds
* Fix errno handling in update phase
* Make csync compile on FreeBSD
* Minor cleanups.
version 0.91.2 (released 2013-12-10, ownCloud Client 1.5.0beta3)
* have translatable error message for indiv. file errors.
* Use uint64_t for inode on win32 to fix a type glitch.
* Add test that directrories are properly moved.
* Handle symlinks correctly.
* Do not longer recurse into ignored directories in update
phase.
* Added proper symlink detection for win32 platform.
version 0.91.1 (released 2013-12-03, ownCloud Client 1.5.0beta2)
* Close database correctly to fix a potential crash (mirall#1229)
* Handle invalid inodes correctly.
* Use lstat rather than stat to detect symlinks correctly.
(core#6146)
version 0.91.0 (released 2013-11-28, ownCloud Client 1.5.0beta1)
* fix ascii to int conversion for large numbers.
* add support for file ids, needed to detect server side moves.
* removed unused code, ie. database writing code that went to
mirall.
* add functions to query the database by fileid.
* add functions to read fileids from PUT replies.
* add server side move detection.
* enhanced test scripts
* Remove ne_sock_init and ne_sock_exit from owncloud module
(mirall#1115)
* Renamed 'md5' to 'etag' in code identifiers to avoid confusion.
* add new state EVAL_RENAME
* link the owncloud module directly rather than dl-loading it.
* add a content type header 'application/octet-stream' to PUTs.
* remove -gzip from etag header if its there. (mirall#1195)
* Many minor fixes, refactorings and improvements.
version 0.90.4 (released 2013-10-18, ownCloud Client 1.4.2)
* Count renamed and deleted files for progress information.
* Do not reset csync internal error state in helper funcs
and do not overwrite error messages.
That fixes error reporting to the client.
* Disable check on inodes on all platforms as inodes are not
reliable.
* Fix resuming after user aborting the sync process.
* enabled HBF debugging permanently.
version 0.90.1 (released 2013-09-24, ownCloud Client 1.4.1)
* no more check on the local inode in updater for win32 (bug #779)
* detect if server does not send an etag after an upload
completed.
* fix crash in case of network timeout, reported as
https://github.com/owncloud/mirall/issues/1010
* compile and cmake fixes for win32
* fixed behaviour of csync_exclude
* documentation and spelling fixes.
version 0.90.0 (released 2013-09-04, ownCloud Client 1.4.0)
* Added API to get progress information from csync.
* Added c_rename function to csync std.
* Fix: Do renames of files before any puts.
* Improved database integrity checks.
* Improvements of database writing efficiendy.
* Fix: stat file on win32 even if its opened by application.
* httpbf: configurable block size and threshold.
* Many fixes found by a Coverity check.
* Fix: use correct stat struct on all platforms
* Fix: download resuming.
* ownCloud module: Bandwith limitation added.
* Added ability to remove ignored files automatically.
* Fix: Use int64_t and friends
* Fix: Removed all compile warnings.
* Left excluded files and links in csync's tree to be able to show.
them to the user.
* Add OC-Total-Length header for better quota handling.
* Report inbetween progress
version 0.80.0 (released 2013-06-25)
* Big file chunking (e.g. up/download of big files should now be no
problem anymore)
* Resuming (download of big files will resume)
* Fix false conflicts when database is corrupt/missing
* Fix false conflicts when file is locked
* Put legitimate conflict files only on client side
* Fix unreliable sync after push_file failed
* Fix rename due to inode cast error
* Make chunking work on nginx setups or through nginx proxies
* Improve error reporting in csync_update
* Clean progress database on csync_commit
* Fix issues detected by Coverity
* Fix conflict file appearing when a file cannot be stated
* Do not shadow server errors by not downloading files that have
failed to download in the past
version 0.70.6 (released 2013-04-11)
* [Fixes] Try to avoid to upload incomplete files
* [Fixes] Increase read timeout to 300 seconds
* [Fixes] Handle IGNORE status correctly
* [Fixes] Set path and phash for ignored files
* [Fixes] Fix some issues discovered by Coverity
* [Fixes] Make sure to never allow empty pathes in rmdir
* [Fixes] Fix a crash caused by superfluous free() calls
version 0.70.5 (released 2013-04-02)
* detect 'wrong' conflict files on client side.
* [Fixes] Give context to module to enable logging (cmd client).
* [Fixes] Fix version table contents.
* [Fixes] Fix handling of non statable files on Win32.
* [Fixes] Fix renames on clientside on read only shares.
* [Fixes] Various small fixes and improvements.
version 0.70.4 (released 2013-02-26)
* [Win32] Ship with upto-date openssl version to fix SSL problems we saw.
* [Fixes] Fix crash during mkdir.
* [Fixes] Added workaround for problem that server sometimes does
not respond properly to PROPFIND (mirall#285)
* [Fixes] Fix handling of deletion of non empty or locked
directories.
* [Fixes] Fixed some potential memory leaks.
* [Fixes] Files with filenames with unix extensions
are ignored now.
version 0.70.3 (released 2013-01-24)
* [Platform] Fix session cookie extraction (mirall bug #260).
version 0.70.2 (released 2013-01-23)
* [Platform] Improved module parameter system.
* [Platform] New logging framework. Dropped log4c dependency.
* [Platform] New API to provide sync progress information.
* [Fixes] More efficiency for the ownCloud plugin through less HTTP requests to
the server.
* [Fixes] ownCloud plugin: Improved upload performance.
* [Fixes] Improved error reporting to mirall.
* [Fixes] ownCloud plugin: Improved interpretation of HTTP error codes.
* [Fixes] ownCloud plugin: Do not abort on errors with individual files any
more.
* [Fixes] Lots of other minor fixes.
* [MacOSX] Use libneon with proper big file support.
* [Win32] Use libneon with openSSL support now.
version 0.70.0 and 0.70.1 were beta versions.
version 0.60.2 (released 2012-11-26)
* Migration to cross platform testing system cmocka.
* Fixed variuos minor things incl. potential mem leaks.
* Clang fixes.
* Moved journal database to sync directory.
* Fixed more csync->ocsync renaming issues.
* Fixed statedb query below path.
* Fixed win32 Daylight Saving Time issues.
* Allow static linking with iniparser and sqlite.
* Win32: Fix CreateHandle function in local stat.
* Win32: More wide char fixes.
* Added version table to journal database.
* Fixes for HTTP reply computation.
* Stricter error checks on PROPFIND results.
* Workaround for DST influenced times from previous versions.
* Detect looping in mkdirs to fix sharing.
version 0.60.1 (released 2012-10-18)
* Fix improper memory cleanup which could
cause memory leaks and crashes
* Fix memory leak
* Allow single quote (') in file names
* Remove stray temporary files
version 0.60.0 (released 2012-10-10)
* simplification of pac based proxy support.
* syncing algorithm based on ids rather than on timestamps
* make it possible to relocate database
version 0.50.11 (third beta version, released 2012-10-05)
* Renamed ownCloud version of csync to ocsync for ownCloud.
* Migration paths for csync database and config.
* Fixed that exclude patterns are also tested on files basenames.
* Fixed return type for query function if no database exists.
* minor code fixes
version 0.50.10 (second beta version, released 2012-09-20)
* Fixed crash by removing a bogus free.
* More useful logging.
* ownCloud: Maintain the http session by handling the HTTP Cookie.
version 0.50.9 (first beta version, released 2012-08-30)
* Fixed strncpy handling (mkdir on windows problem).
* extend database with columns uniq id and type.
* Use server maintained uniq IDs for update detection instead of
mtimes.
* Maintain uniq IDs in local database
* Handle change propagation through the file tree locally and remote.
* Added module to build a file tree from the local database (dbtree.c)
* Added methods to query IDs from the server and maintain it locally.
version 0.50.8 (released 2012-08-10)
* Inode equivalent support for Win32 platforms to support rename
* ownCloud supports propagates renames from local to webdav MOVE
* ownCloud module works with proxy, settings from mirall.
* improved CMake modules (openSSL)
* Fixed namespace for lastmodified propset.
* Added cmocka based tests for ownCloud module.
* Added a config_test.h config_csync.header file.
* Fix link handling: Ignore symlinks.
* Modules can now report their capabilities to csync core.
* A lot of minor fixes and improvements.
version 0.50.7 (released 2012-06-19)
* Added ability to log to a callback, ie. let the app
catch the log output
* Added push to remote without pushing to temp file first.
* Fixed file copy function to use wide character (win32).
* Fixed loading of statedb if user has special char (win32).
version 0.50.6 (released 2012-05-18)
* Directories with 'strange' characters broke sync. (oC bug #613)
* Special characters in Windows did not sync correctly. (oC bug #478)
* Make neon redirecting
* Switch logging off on Apple to not fill the syslog. (oC bug #622)
version 0.50.5 (released 2012-04-18)
* removed argp lib dependency
* simplified and fixed CMake files
* MacOS porting efforts
* more granular error reports, thread save
version 0.50.0 (released 2013-08-01)
* Added owncloud module.
* Added support for more platforms: FreeBSD, Windows and MacOSX
* Added support for more compilers: CLang, MinGW and latest GCC
* Added a backup mode to the reconciler.
* Added new logging framework (removed log4c dependency).
* Added new config parser (removed iniparser dependency).
* Added cmocka tests.
* Added a way to exported file_tree_walk functions.
* Added capabilities for modules.
* Added possiblity to push information to the modules.
* Added iconv support to support various char sets.
* Added csync_commit() to rerun on the same context.
* Added content checking in conflict case.
* Added callbacks for progress information.
* Added get() and put() functions for modules.
* Improved database: more performance, more integrity checks
* Improved error reporting: status codes, custom errnos
* Fixed serveral bugs.
* Relicensed libcsync to LGPLv2.1+.
version 0.44.0 (released 2010-02-15)
* Migrated sftp module to libssh 0.4.
* Added more cache entries to the default config.
* Added missing requirements.
* Fixed build warnings.
* Fixed some memory leaks using sftp attributes.
* Some code cleanups.
version 0.43.0 (released 2009-05-25)
* Added SFTP support with libssh 0.3.
* Added possibility to pass userdata to the auth function.
* Added a better version function.
* Fixed CMake build.
* Fixed CMake find modules.
* Fixed some flaws in cstd functions.
* Documented all public functions.
version 0.42.0 (released 2009-02-10)
* Small fix in the userguide.
version 0.42.0 rc3 (released 2009-01-23)
libcsync:
* Added checks for unix extensions.
* Added more documentation to the userguide.
* Fixed loading of plugins.
* Fixed call for deletion functions.
* Normalize the path to <hostname>/<path> for the statedb filename.
* More change name of client options to be more descriptive.
version 0.42.0 rc2 (released 2009-01-07)
libcsync:
* Fixed a bug in the creation of the statedb
* Completed userguide
version 0.42.0 rc1 (released 2008-12-04)
libcsync:
* Reduced calls of syscall functions.
* Added own function to create a temporary filename.
* Fixed libsmbclient 3.0.x support.
version 0.42.0 beta1 (released 2008-09-10)
libcsync:
* Added a sftp module using libssh
* Added user guide (just a start)
* Added testcase for update detection
* Added a function to parse an uri to cstdlib
* Updated the manpage
* Fixed some segfaults in cstdlib
* Fixed some memory leaks
csync:
* Improved the auth callback
version 0.42.0 alpha4 (released 2008-07-02)
libcsync:
* Added the possibility to run csync completely without a journal
* Improved chmod calls during propagation. Most of the time we use the
default mode and don't need to call chmod.
* Improved the exclude list handling in the file tree walker. This
increased the speed of the update detection.
* Fixed csync on PPC
* Fixed serveral small bugs
csync:
* Added commandline option to run csync completely without a journal
* Added a manpage
version 0.42.0 alpha3 (released 2008-06-25)
libcsync:
* Added a tree merger to write a complete journal
* Added support to run csync without a journal
* Fixed kerberos support in csync_smb module
* Fixed closing of files after the copy
* Fixed update detection to detect special files (fifo, pipes,
char devices, ..)
* Fixed O_NOATIME flag on open() if we don't have the permission
csync:
* Add a variable to run csync completely without a journal
version 0.42.0 alpha2 (released 2008-06-16)
libcsync:
* Peformance improvements
* Add more directories to the standard exclude file
* Bugfixes
version 0.42.0 alpha1 (released 2008-06-02)
* Initial release

View File

@@ -0,0 +1,70 @@
include(CheckIncludeFile)
include(CheckSymbolExists)
include(CheckFunctionExists)
include(CheckLibraryExists)
include(CheckTypeSize)
include(CheckCXXSourceCompiles)
set(PACKAGE ${APPLICATION_NAME})
set(VERSION ${APPLICATION_VERSION})
set(DATADIR ${DATA_INSTALL_DIR})
set(LIBDIR ${LIB_INSTALL_DIR})
set(PLUGINDIR "${PLUGIN_INSTALL_DIR}-${LIBRARY_SOVERSION}")
set(SYSCONFDIR ${SYSCONF_INSTALL_DIR})
set(BINARYDIR ${CMAKE_CURRENT_BINARY_DIR})
set(SOURCEDIR ${CMAKE_CURRENT_SOURCE_DIR})
# HEADER FILES
check_include_file(argp.h HAVE_ARGP_H)
# FUNCTIONS
if (NOT LINUX)
# librt
check_library_exists(rt nanosleep "" HAVE_LIBRT)
set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} )
endif (NOT LINUX)
check_library_exists(rt clock_gettime "" HAVE_CLOCK_GETTIME)
if (HAVE_LIBRT OR HAVE_CLOCK_GETTIME)
set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} rt)
endif (HAVE_LIBRT OR HAVE_CLOCK_GETTIME)
check_library_exists(dl dlopen "" HAVE_LIBDL)
if (HAVE_LIBDL)
set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} dl)
endif (HAVE_LIBDL)
check_function_exists(asprintf HAVE_ASPRINTF)
check_function_exists(fnmatch HAVE_FNMATCH)
if(NOT HAVE_FNMATCH AND WIN32)
find_library(SHLWAPI_LIBRARY shlwapi)
set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} shlwapi)
endif()
if(WIN32)
set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} psapi kernel32)
endif()
check_function_exists(timegm HAVE_TIMEGM)
check_function_exists(strerror_r HAVE_STRERROR_R)
check_function_exists(utimes HAVE_UTIMES)
check_function_exists(lstat HAVE_LSTAT)
check_function_exists(asprintf HAVE_ASPRINTF)
if (WIN32)
check_function_exists(__mingw_asprintf HAVE___MINGW_ASPRINTF)
endif(WIN32)
if (UNIX AND HAVE_ASPRINTF)
add_definitions(-D_GNU_SOURCE)
endif (UNIX AND HAVE_ASPRINTF)
if (WIN32)
check_function_exists(__mingw_asprintf HAVE___MINGW_ASPRINTF)
endif(WIN32)
if (UNIT_TESTING)
set(WITH_UNIT_TESTING ON)
endif (UNIT_TESTING)
set(CSYNC_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} CACHE INTERNAL "csync required system libraries")

View File

@@ -0,0 +1,5 @@
if ( NOT WIN32 )
option(WITH_ICONV "Build csync with iconv support" ON)
endif()
option(UNIT_TESTING "Build with unit tests" OFF)
option(MEM_NULL_TESTS "Enable NULL memory testing" OFF)

84
csync/INSTALL Normal file
View File

@@ -0,0 +1,84 @@
# How to build from source
## Requirements
### Common requirements
In order to build csync, you need to install several components:
- A C compiler
- [CMake](http://www.cmake.org) >= 2.6.0.
- [check](http://check.sourceforge.net) >= 0.9.5
- [sqlite3](http://www.sqlite.org) >= 3.4
- [libneon](http://www.webdav.org/neon/) >= 0.29.0
optional:
- [libsmbclient](http://www.samba.org) >= 3.5
- [libssh](http://www.libssh.org) >= 0.5
sqlite3 is a runtime requirement. libsmbclient is needed for
the smb plugin, libssh for the sftp plugin. libneon is required for the
ownCloud plugin.
Note that these version numbers are version we know works correctly. If you
build and run csync successfully with an older version, please let us know.
## Building
First, you need to configure the compilation, using CMake. Go inside the
`build` dir. Create it if it doesn't exist.
GNU/Linux and MacOS X:
cmake -DCMAKE_BUILD_TYPE=Debug ..
make
### CMake standard options
Here is a list of the most interesting options provided out of the box by CMake.
- CMAKE_BUILD_TYPE: The type of build (can be Debug Release MinSizeRel RelWithDebInfo)
- CMAKE_INSTALL_PREFIX: The prefix to use when running make install (Default to
/usr/local on GNU/Linux and MacOS X)
- CMAKE_C_COMPILER: The path to the C compiler
- CMAKE_CXX_COMPILER: The path to the C++ compiler
### CMake options defined for csync
Options are defined in the following files:
- DefineOptions.cmake
They can be changed with the -D option:
`cmake -DCMAKE_BUILD_TYPE=Debug -DWITH_LOG4C=OFF ..`
### Browsing/editing CMake options
In addition to passing options on the command line, you can browse and edit
CMake options using `cmakesetup` (Windows) or `ccmake` (GNU/Linux and MacOS X).
- Go to the build dir
- On Windows: run `cmakesetup`
- On GNU/Linux and MacOS X: run `ccmake ..`
## Installing
Befor installing you can run the tests if everything is working:
make test
If you want to install csync after compilation run:
make install
## Running
The csync binary can be found in the `build/client` directory.
## About this document
This document is written using [Markdown][] syntax, making it possible to
provide usable information in both plain text and HTML format. Whenever
modifying this document please use [Markdown][] syntax.
[markdown]: http://www.daringfireball.net/projects/markdown

34
csync/README Normal file
View File

@@ -0,0 +1,34 @@
WHAT IS CSYNC?
==============
csync is a lightweight utility to synchronize files between two directories on
a system or between multiple systems.
It synchronizes bidirectionally and allows the user to keep two copies of files
and directories in sync. csync uses widely adopted protocols, such as smb or
sftp, so that there is no need for a server component. It is a user-level
program which means you dont need to be a superuser or administrator.
CONTRIBUTIONS
=============
If you want to contribute to the development of the software then please join
the mailing list. Patches are accepted preferebly created with git and we are
always glad to receive feedback or suggestions to the address
csync-devel@csync.org.
More information on the various mailing lists can be found at
http://www.csync.org/communication/.
You can also get the sourcecode straight from the git repository - see
http://git.csync.org/
DOCUMENTATION
=============
As a user you can find a userguide which is shipped with this package or is
available at the website. For developers there is doxygen documentation and
comments in the source code itself. See
http://www.csync.org/userguide/
and
http://www.csync.org/api/

View File

@@ -0,0 +1,35 @@
#cmakedefine PACKAGE "${APPLICATION_NAME}"
#cmakedefine VERSION "${APPLICATION_VERSION}"
#cmakedefine LOCALEDIR "${LOCALE_INSTALL_DIR}"
#cmakedefine DATADIR "${DATADIR}"
#cmakedefine LIBDIR "${LIBDIR}"
#cmakedefine PLUGINDIR "${PLUGINDIR}"
#cmakedefine SYSCONFDIR "${SYSCONFDIR}"
#cmakedefine BINARYDIR "${BINARYDIR}"
#cmakedefine SOURCEDIR "${SOURCEDIR}"
#cmakedefine HAVE_CLOCK_GETTIME
#cmakedefine WITH_LOG4C 1
#cmakedefine WITH_ICONV 1
#cmakedefine HAVE_ARGP_H 1
#cmakedefine HAVE_ICONV_H 1
#cmakedefine HAVE_SYS_ICONV_H 1
#cmakedefine HAVE_TIMEGM 1
#cmakedefine HAVE_STRERROR_R 1
#cmakedefine HAVE_UTIMES 1
#cmakedefine HAVE_LSTAT 1
#cmakedefine HAVE_FNMATCH 1
#cmakedefine HAVE_ICONV 1
#cmakedefine HAVE_ICONV_CONST 1
#ifndef NEON_WITH_LFS
#cmakedefine NEON_WITH_LFS 1
#endif
#cmakedefine HAVE___MINGW_ASPRINTF 1
#cmakedefine HAVE_ASPRINTF 1
#cmakedefine WITH_UNIT_TESTING 1

View File

@@ -0,0 +1,7 @@
/* mind to have trailing slashes! */
#define TESTFILES_DIR "@SOURCE_DIR@/csync/tests/ownCloud/testfiles/"
#define TEST_CONFIG_DIR "@SOURCE_DIR@/csync/tests/ownCloud/"

142
csync/src/CMakeLists.txt Normal file
View File

@@ -0,0 +1,142 @@
project(libcsync)
add_subdirectory(std)
add_subdirectory(httpbf)
# Statically include sqlite
if (CSYNC_STATIC_COMPILE_DIR)
set(SQLITE3_INCLUDE_DIRS "")
set(SQLITE3_LIBRARIES "")
include_directories(${CSYNC_STATIC_COMPILE_DIR})
else (CSYNC_STATIC_COMPILE_DIR)
find_package(SQLite3 3.3.9 REQUIRED)
endif()
set(CSYNC_PUBLIC_INCLUDE_DIRS
${CMAKE_CURRENT_BINARY_DIR}
${CMAKE_CURRENT_SOURCE_DIR}
${CMAKE_SOURCE_DIR}
CACHE INTERNAL "csync public include directories"
)
set(CSYNC_PRIVATE_INCLUDE_DIRS
${SQLITE3_INCLUDE_DIRS}
${CSTDLIB_PUBLIC_INCLUDE_DIRS}
${HTTPBF_PUBLIC_INCLUDE_DIRS}
${CMAKE_BINARY_DIR}
)
set(CSYNC_LIBRARY
ocsync
CACHE INTERNAL "ocsync library"
)
set(CSYNC_LINK_LIBRARIES
${CSTDLIB_LIBRARY}
${CSYNC_REQUIRED_LIBRARIES}
${SQLITE3_LIBRARIES}
${NEON_LIBRARIES}
${HTTPBF_LIBRARY}
)
if(HAVE_ICONV AND WITH_ICONV)
list(APPEND CSYNC_PRIVATE_INCLUDE_DIRS ${ICONV_INCLUDE_DIR})
list(APPEND CSYNC_LINK_LIBRARIES ${ICONV_LIBRARIES})
endif()
# Specific option for builds tied to servers that do not support renaming extensions
set(NO_RENAME_EXTENSION 0 CACHE BOOL "Do not issue rename if the extension changes")
if(NO_RENAME_EXTENSION)
add_definitions(-DNO_RENAME_EXTENSION)
endif()
set(csync_SRCS
csync.c
csync_exclude.c
csync_log.c
csync_statedb.c
csync_time.c
csync_util.c
csync_misc.c
csync_update.c
csync_reconcile.c
csync_rename.cc
vio/csync_vio.c
vio/csync_vio_file_stat.c
vio/csync_vio_local.c
csync_owncloud.c
csync_owncloud_recursive_propfind.c
csync_owncloud_util.c
)
configure_file(csync_version.h.in ${CMAKE_CURRENT_BINARY_DIR}/csync_version.h)
set(csync_HDRS
${CMAKE_CURRENT_BINARY_DIR}/csync_version.h
csync.h
vio/csync_vio.h
vio/csync_vio_file_stat.h
vio/csync_vio_handle.h
vio/csync_vio_method.h
vio/csync_vio_module.h
)
# Statically include sqlite
if (CSYNC_STATIC_COMPILE_DIR)
list(APPEND csync_SRCS ${CSYNC_STATIC_COMPILE_DIR}/dictionary.c ${CSYNC_STATIC_COMPILE_DIR}/sqlite3.c)
endif()
include_directories(
${CSYNC_PUBLIC_INCLUDE_DIRS}
${CSYNC_PRIVATE_INCLUDE_DIRS}
)
add_library(${CSYNC_LIBRARY} SHARED ${csync_SRCS})
add_library(${CSYNC_LIBRARY}_static STATIC ${csync_SRCS})
target_link_libraries(${CSYNC_LIBRARY} ${CSYNC_LINK_LIBRARIES})
target_link_libraries(${CSYNC_LIBRARY}_static ${CSYNC_LINK_LIBRARIES})
set_target_properties(
${CSYNC_LIBRARY}
PROPERTIES
VERSION
${LIBRARY_VERSION}
SOVERSION
${LIBRARY_SOVERSION}
)
if(BUILD_OWNCLOUD_OSX_BUNDLE)
INSTALL(
TARGETS
${CSYNC_LIBRARY}
LIBRARY DESTINATION
${LIB_INSTALL_DIR}
ARCHIVE DESTINATION
${LIB_INSTALL_DIR}
RUNTIME DESTINATION
${BIN_INSTALL_DIR}
)
else()
INSTALL(
TARGETS
${CSYNC_LIBRARY}
LIBRARY DESTINATION
${LIB_INSTALL_DIR}/${APPLICATION_EXECUTABLE}
ARCHIVE DESTINATION
${LIB_INSTALL_DIR}/${APPLICATION_EXECUTABLE}
RUNTIME DESTINATION
${BIN_INSTALL_DIR}/${APPLICATION_EXECUTABLE}
)
endif()
# INSTALL(
# FILES
# ${csync_HDRS}
# DESTINATION
# ${INCLUDE_INSTALL_DIR}/${APPLICATION_NAME}
# )

Some files were not shown because too many files have changed in this diff Show More