Commit graph

3618 commits

Author SHA1 Message Date
Morris Jobke
5f66f867b6 Merge pull request #15581 from owncloud/deduplicate-oc-repair-namespace
Fix namespace duplication and other issues in repairlegacystorages
2015-04-13 21:51:38 +02:00
Morris Jobke
9eff199a17 Merge pull request #15360 from owncloud/cross-storage-move-cache
Preserve cache data when doing a cross storage move
2015-04-13 21:48:30 +02:00
Robin Appelman
f605c98531 Fix cross storage move with shared storages 2015-04-13 17:10:05 +02:00
Robin Appelman
addfafd9da Fix moving mount points 2015-04-13 17:10:02 +02:00
Robin Appelman
caadc8cdd9 reuse cache move logic 2015-04-13 17:10:01 +02:00
Robin Appelman
d7b3a1a35a preserve cache data when doing a cross storage move 2015-04-13 17:10:01 +02:00
Joas Schilling
71de1d58cd Fix namespace duplication and other issues in repairlegacystorages 2015-04-13 16:34:10 +02:00
Thomas Müller
660aa7ff1e Merge pull request #15568 from owncloud/cache_user_folder_for_file_search_results
cach user folder for file search results
2015-04-13 15:16:07 +02:00
Robin Appelman
c29419e6d7 fix rebase issue 2015-04-13 15:13:03 +02:00
Robin Appelman
0772e3b4c1 Properly handle copy/move failures in cross storage copy/move 2015-04-13 15:13:03 +02:00
Robin Appelman
404773940d Detect storage full when doing cross storage copy/move 2015-04-13 15:13:03 +02:00
Robin Appelman
d26c6cab90 properly return false if we cant delete the source file 2015-04-13 15:13:03 +02:00
Robin Appelman
c4ec8fbeff Make getSourcePath accessible for storage wrappers 2015-04-13 15:13:03 +02:00
Robin Appelman
31e94708f8 Improve cross storage copy between local storages 2015-04-13 15:13:02 +02:00
Robin Appelman
8575bb2cb9 Move cross storage copy logic to the storage 2015-04-13 15:13:02 +02:00
Robin Appelman
b302592a64 Small cleanup of rename code 2015-04-13 15:11:03 +02:00
Robin Appelman
2fd44dbde4 rewind and update error message 2015-04-13 14:14:48 +02:00
Robin Appelman
dcfe014103 use our own stream copy instead 2015-04-13 14:13:21 +02:00
Vincent Petry
2822d0579e Properly add trailing slash to mount point
Fixes resolving mount points when shared mount point's target name has
the same prefix as the source name
2015-04-13 12:36:47 +02:00
Jörn Friedrich Dreyer
b717681e3a cach user folder for file search results 2015-04-13 11:29:10 +02:00
Morris Jobke
c3fbc2b6fd Merge pull request #15563 from owncloud/fix-try-getting-propert-of-non-object-ocsclient
Prevent php message: "Trying to get property of non-object at /xxx/lib/p...
2015-04-13 10:30:31 +02:00
Thomas Müller
906b6b7337 Prevent php message: "Trying to get property of non-object at /xxx/lib/private/ocsclient.php#282" 2015-04-13 09:43:45 +02:00
Thomas Müller
8450b6aa2d Properly import used classes 2015-04-13 09:26:30 +02:00
Lukas Reschke
84041a4fa2 Merge pull request #15541 from owncloud/add-reply-to-support
Add "Reply-To" support for sharing mails as well as refactor code and add unit-tests
2015-04-12 22:30:35 +02:00
Jens-Christian Fischer
9c95315a9e clarify the duplication of the $params array 2015-04-12 14:49:18 +02:00
Jens-Christian Fischer
22c6216f5c don't update identical values
The UPDATE oc_filecache statement blindly overwrites identical data.
Databases like Postgres that create a new row on an update
and mark the old one as dead will suffer from the previous
behaviour, as millions of "new" rows are created in the database.

This patch changes the WHERE clause to test for identical
values and not updating if the values in the DB are identical
to the ones being passed.
2015-04-11 18:06:21 +02:00
Lukas Reschke
e3ad99d252 Add "Reply-To" support to sharing mails and refactor code 2015-04-10 17:30:07 +02:00
Lukas Reschke
77afef328d Merge pull request #15458 from owncloud/web-shell-master
Move console application to it's own class - allows reuse in the web shell
2015-04-10 16:33:01 +02:00
Vincent Petry
e512a69a59 Merge pull request #15395 from owncloud/fix-imagepath
Fix UrlGenerator::imagePath() for app paths
2015-04-10 16:11:57 +02:00
Thomas Müller
7b2d53603c Merge pull request #15489 from owncloud/dont_hide_exceptions_master
Dont hide exceptions master
2015-04-10 15:49:45 +02:00
Lukas Reschke
a881218fc2 Add "Reply-To" support for mails 2015-04-10 15:05:34 +02:00
Morris Jobke
25dd4ec767 Throw ServerNotAvailableException always 2015-04-10 14:51:21 +02:00
Thomas Müller
a163243e31 Merge pull request #15510 from owncloud/cron-singleuser
block cron when in single user mode
2015-04-10 14:38:50 +02:00
Vincent Petry
73afca6207 Catch more exceptions when connecting to remote DAV server
Added InvalidArgumentException to catch HTML parsing errors when XML was
expected.
Made convertSabreException more generic to be able to handle more
exception cases.
2015-04-10 12:02:06 +02:00
Jörn Friedrich Dreyer
fafecd1c05 fix cherrypicking 2015-04-10 11:08:24 +02:00
Jörn Friedrich Dreyer
b069f33a72 throw exception when backends don't provide a user instead of creating legacy local storages 2015-04-10 09:12:37 +02:00
Morris Jobke
5626a02d69 throw exception if setup is incomplete 2015-04-10 09:12:37 +02:00
Thomas Müller
5abbf6d5b0 Merge pull request #13920 from owncloud/sharing_no_user_entry_for_group_shares
only create a db entry for the user in case of a name conflict on group share
2015-04-09 23:37:02 +02:00
Morris Jobke
de4a81f462 Merge pull request #15517 from owncloud/fixRenameFailDeleteTargetKeepSource
fixes #15326
2015-04-09 18:41:18 +02:00
Thomas Müller
f7c906902a Throw an exception in case checkServer() returns errors 2015-04-09 16:42:34 +02:00
Lukas Reschke
b60d5d3d6f Merge pull request #14540 from owncloud/windows-setup-check
Disallow Windows Server in Server Check
2015-04-09 16:38:11 +02:00
Thomas Müller
890a18e1a6 Introduce own console application class 2015-04-09 16:28:53 +02:00
Robin Appelman
8af106cc75 block webdav in single user mode 2015-04-09 15:56:41 +02:00
Lukas Reschke
0abce86b31 Disallow Windows Server in Server Check
Will prevent users from use ownCloud on Windows Server 🙈
2015-04-09 15:56:37 +02:00
Jörn Friedrich Dreyer
8af52e3876 fixes #15326 2015-04-09 15:37:00 +02:00
Björn Schießle
0710db77bc Merge pull request #13896 from owncloud/share-generatetarget-remove-exclude
Dont create exclude list for generating the share target
2015-04-09 14:51:15 +02:00
Robin Appelman
cbcee34eb0 update tests 2015-04-09 14:46:25 +02:00
Thomas Müller
1d9bd3d31e Merge pull request #15496 from owncloud/enc-check-if-key-exists-before-deleting
Check if the key exists, before trying to delete it
2015-04-09 14:45:40 +02:00
Bjoern Schiessle
332ea77865 only create a db entry for the user in case of a name conflict on group share 2015-04-09 11:16:08 +02:00
Joas Schilling
45575d0135 Check if the key exists, before trying to delete it 2015-04-09 10:28:02 +02:00
Lukas Reschke
ba52f6f8fc Merge pull request #15314 from owncloud/app-categories-15274
Add different trust levels to AppStore interface
2015-04-09 10:07:32 +02:00
Morris Jobke
9c76d068c3 Merge pull request #15196 from owncloud/limit-file-activities-to-favorites
Limit file activities to favorites
2015-04-09 00:18:31 +02:00
Morris Jobke
f3ef17a963 Merge pull request #15490 from owncloud/remove-debug-logging
remove unessesary logging of methods instantiation
2015-04-08 21:42:47 +02:00
Morris Jobke
4e60b81264 Merge pull request #14120 from owncloud/dav-statcache
Stat cache for DAV storage, improves s2s performance a little bit
2015-04-08 21:09:28 +02:00
Clark Tomlinson
3ffb2d8abd remove unessesary logging of methods instantiation 2015-04-08 14:46:01 -04:00
Bjoern Schiessle
c379557e1d don't throw exception if a file gets uploaded and encryption is disabled 2015-04-08 16:41:20 +02:00
Morris Jobke
103d451459 Merge pull request #14987 from rullzer/ocs_password_fix2
OCS Fixes to allow setting of password without removing additional settings
2015-04-08 14:44:17 +02:00
Robin Appelman
6a59502759 Work directly on the storage when uploading over webdav 2015-04-08 14:04:58 +02:00
Morris Jobke
59322a5037 Merge pull request #15333 from owncloud/copy-cross-device
fix copying folder across devices
2015-04-08 12:35:15 +02:00
Morris Jobke
6c327f8331 Merge pull request #14879 from oparoz/fix-preview-caching
Introducing the maximum size preview
2015-04-07 18:16:24 +02:00
Thomas Müller
a4483243ac fixing license headers - encryption code related 2015-04-07 17:02:49 +02:00
Olivier Paroz
74bf9806b0 Introducing the maximum size preview
The first time we're asked to generate a preview we'll generate one of the maximum dimension indicated in the configuration and all future resizing requests will be done on that preview in order to not waste time converting the same file over and over.

One of the fixes required for #12465
2015-04-07 16:45:59 +02:00
Thomas Müller
161d80da5b In case of encryption exceptions we return 503 - this will allow the client to retry 2015-04-07 14:17:42 +02:00
Lukas Reschke
dd7c491bff Fix PHPDoc 2015-04-07 13:49:16 +02:00
Lukas Reschke
a2182cde90 Deduplicate code 2015-04-07 13:48:33 +02:00
Thomas Müller
4a70ca665c respect mount option while encrypting 2015-04-07 13:30:31 +02:00
Thomas Müller
111fbabfb4 PHPDoc cleanup - clean code \o/ 2015-04-07 13:30:31 +02:00
Thomas Müller
69e95531f8 comment change as it broke unit tests 2015-04-07 13:30:31 +02:00
Thomas Müller
ba9a797eaa Encryption storage wrapper is enabled by default - necessary to detect encrypted files even if encryption was disabled after files have been encrypted - prevents data corruption 2015-04-07 13:30:31 +02:00
Bjoern Schiessle
3d7404fe68 add unit tests to the keystorage 2015-04-07 13:30:31 +02:00
Bjoern Schiessle
fe74a0cb4f implement webdav copy 2015-04-07 13:30:31 +02:00
Thomas Müller
8991272269 Using stream_get_contents in file_get_contents implementation + close handle 2015-04-07 13:30:31 +02:00
jknockaert
ff16e3dbff Adjusting count on read 2015-04-07 13:30:31 +02:00
jknockaert
02404a6a8c Fixing encryption stream wrapper seek - thanks @jknockaert 2015-04-07 13:30:30 +02:00
Thomas Müller
104d11ec4c Fixing encryption storage wrapper tests 2015-04-07 13:30:30 +02:00
Thomas Müller
d9c41b00ab Introducing trait LocalTempFileTrait 2015-04-07 13:30:30 +02:00
Bjoern Schiessle
fac7ec3fc4 fix re-shares with encryption 2015-04-07 13:30:30 +02:00
Thomas Müller
8ffa6db110 fixing unit tests for stream wrapper 2015-04-07 13:30:30 +02:00
Thomas Müller
9d8c07850d fixing unencrypted file size 2015-04-07 13:30:30 +02:00
Bjoern Schiessle
a74ee67476 don't wrap share storages 2015-04-07 13:30:30 +02:00
Thomas Müller
664b2bb7af cleaning up exception mess 2015-04-07 13:30:30 +02:00
Thomas Müller
c9d6ed3d7d in case the file exists we require the explicit module as specified in the file header - otherwise we need to fail hard to prevent data loss on client side 2015-04-07 13:30:30 +02:00
Bjoern Schiessle
51302d5812 getUidAndFilename() always get uid from path 2015-04-07 13:30:30 +02:00
Thomas Müller
cac83642f2 Finally fixing encryption with public share 2015-04-07 13:30:30 +02:00
Thomas Müller
a57918fb10 Hook: fixing error message in exception case 2015-04-07 13:30:30 +02:00
Thomas Müller
137c135664 file_put_contents has to return the number of written bytes 2015-04-07 13:30:30 +02:00
Thomas Müller
f20844ac89 PHPDoc 2015-04-07 13:30:30 +02:00
Bjoern Schiessle
83cb382b3f pass file helper to encryption wrapper 2015-04-07 13:30:29 +02:00
Bjoern Schiessle
e4895bda01 add helper class accessible for encryption modules to ask for a list of users with access to a file, needed to apply the recovery key to all files 2015-04-07 13:30:29 +02:00
Thomas Müller
a98b7dbf6f Fix double registration of encryption module 2015-04-07 13:30:29 +02:00
Thomas Müller
4db75e3407 Setting up the encryption wrapper in a setup hook - temporarily fixes the wrapping order 2015-04-07 13:30:29 +02:00
Thomas Müller
bf809ac85a Removing left overs from old encryption app 2015-04-07 13:30:29 +02:00
Thomas Müller
6ccd3ffa23 adding function getSecureRandom(); to IServerContainer 2015-04-07 13:30:29 +02:00
Bjoern Schiessle
0f28d538a0 add session class to handle all session operations 2015-04-07 13:30:28 +02:00
Thomas Müller
1b42b492dc kill OC_FileProxy 💥 2015-04-07 13:30:28 +02:00
Thomas Müller
dbdd754c3f Further cleanup of files_encryption 2015-04-07 13:30:28 +02:00
Thomas Müller
00338f9dca Removing files_encryption left overs 2015-04-07 13:30:28 +02:00
Thomas Müller
99255ff3a9 Fix - public sharing: in case on user is available - get it from the path 2015-04-07 13:30:28 +02:00
Bjoern Schiessle
0eee3a2618 remove unencrypted_size from the cache, size will contain the unencrypted size 2015-04-07 13:30:28 +02:00
Thomas Müller
d185761d31 initializing some variables + update size after writing the headers 2015-04-07 13:30:28 +02:00
Thomas Müller
4441835d18 https://github.com/owncloud/core/pull/15305#discussion_r27382305
Conflicts:
	lib/private/files/stream/encryption.php
2015-04-07 13:30:28 +02:00
Thomas Müller
90487384f7 initializing some variables 2015-04-07 13:30:28 +02:00
Bjoern Schiessle
0c48b069ba call end() before closing the file 2015-04-07 13:30:28 +02:00
Thomas Müller
498625ea3a adding unit tests for stream wrapper 2015-04-07 13:30:28 +02:00
Thomas Müller
a905f641b3 various fixes & start to unit test the encryption storage wrapper 2015-04-07 13:30:28 +02:00
jknockaert
3e6eb28ee3 Applying diff as of https://github.com/owncloud/core/pull/15303 2015-04-07 13:30:28 +02:00
Bjoern Schiessle
a85e2e0bfd make recovery settings work 2015-04-07 13:30:28 +02:00
Bjoern Schiessle
937efe856d fix lib/private/encryption/util.php call 2015-04-07 13:30:28 +02:00
Bjoern Schiessle
c266b3b5b7 remove debug code from core 2015-04-07 13:30:28 +02:00
Bjoern Schiessle
c64e0af4fb check if recovery key exists and encrypt the file with the recovery key if needed 2015-04-07 13:30:28 +02:00
Bjoern Schiessle
2244ea998d core: documentation fixes 2015-04-07 13:30:27 +02:00
Bjoern Schiessle
cb9980823d core: small fixes 2015-04-07 13:30:27 +02:00
Bjoern Schiessle
810ca9105c implement rename and delete of encryption keys 2015-04-07 13:30:27 +02:00
Clark Tomlinson
0c2f9ca849 Updating keystorage movement and fixing hooks 2015-04-07 13:30:27 +02:00
Bjoern Schiessle
506222567e add deleteKey methods to key storage 2015-04-07 13:30:27 +02:00
Bjoern Schiessle
e2f714263f fix encryption manager to handle more than one encryption module 2015-04-07 13:30:27 +02:00
Bjoern Schiessle
5bc9ababeb fix keystorage and add unit tests 2015-04-07 13:30:27 +02:00
Clark Tomlinson
39733c8da1 Initial commit 2015-04-07 13:30:27 +02:00
Bjoern Schiessle
63e7fe608a create basic interfaces and wrapper to make encryption more modular 2015-04-07 13:30:27 +02:00
Joas Schilling
3bde7c2f67 When guessing the timezone, the offset might only be valid on a given timestamp 2015-04-07 10:13:06 +02:00
Robin McCorkell
fbb84a518f Fix UrlGenerator::imagePath() for app paths 2015-04-03 23:42:18 +01:00
Thomas Müller
3bf269e565 Merge pull request #15229 from owncloud/response-setContentLengthHeader
Add OC_Response::setContentLengthHeader() for Apache PHP SAPI workaround...
2015-04-03 22:51:36 +02:00
Thomas Müller
b2b3e1ac94 Merge pull request #15391 from owncloud/fix-language-caching
fix caching of preferred language
2015-04-03 22:51:13 +02:00
Thomas Müller
3d2116dfe7 Merge pull request #15386 from oparoz/yaml-cnf-mediatype
Introducing media types for yml, yaml, cnf, conf
2015-04-03 22:49:41 +02:00
Robin Appelman
712e478cb2 fix caching of preferred language 2015-04-03 15:36:24 +02:00
Lukas Reschke
25531bad88 Make user names clickable 2015-04-03 13:36:03 +02:00
Lukas Reschke
0816cf9142 Add experimental applications switch
Allows administrators to disable or enabled experimental applications as well as show the trust level.
2015-04-03 13:21:24 +02:00
Morris Jobke
a2087f30d1 Merge pull request #15383 from owncloud/fix-exception-message
Update exception messages to better reflect and describe the problem
2015-04-03 10:15:23 +02:00
Olivier Paroz
70ec74e88b Introducing media types for yml, yaml, cnf, conf 2015-04-02 21:37:57 +02:00
Lukas Reschke
fa079a5959 Merge pull request #12314 from oparoz/patch-3
Make findBinaryPath compatible with open_basedir
2015-04-02 18:54:03 +02:00
Joas Schilling
a8d1ede347 Fix the exception messages 2015-04-02 18:40:06 +02:00
Thomas Müller
9f58097e4d Merge pull request #14113 from owncloud/chunking-chunkpartfiles
Added part files for when writing chunks
2015-04-02 18:15:27 +02:00
Thomas Müller
4082436419 Merge pull request #15367 from owncloud/pre-setup-hook
setup storage wrappers before setting up the filesystem
2015-04-02 17:40:23 +02:00
Morris Jobke
1720fdf5f4 Merge pull request #15346 from oparoz/split-image-provider
Split image provider in one sub-class per media type
2015-04-02 13:40:09 +02:00
Robin Appelman
f585994c4b setup mount manager before wrappers 2015-04-02 13:28:36 +02:00
Olivier Paroz
8ec6dfdbf8 Split image provider in one sub-class per media type 2015-04-02 10:31:24 +02:00
Morris Jobke
82f91c50c7 Merge pull request #15349 from oparoz/limit-bitmap-previews-2
The bitmap preview class now takes maxX and maxY into consideration
2015-04-02 10:23:55 +02:00
Thomas Müller
9e5b319ed4 Merge pull request #15362 from owncloud/issue/15359-purge-memcache-console-app-disable
Correctly purge the cache when an app is disabled via cli
2015-04-02 09:26:15 +02:00
Joas Schilling
696c750cfe Fix docs and line breaks 2015-04-02 08:28:42 +02:00
Robin Appelman
3cb53b7756 setup storage wrappers before setting up the filesystem 2015-04-01 17:12:06 +02:00
Olivier Paroz
1525ecd3dd The bitmap preview class now takes maxX and maxY into consideration
This is a fix for owncloud#13607 and is part of the global programme: owncloud#13609

The image aspect ratio is kept intact.
2015-04-01 15:54:22 +02:00
Joas Schilling
d01cfde982 Correctly purge the cache when an app is disabled via cli 2015-04-01 15:43:38 +02:00
Roeland Jago Douma
288da619b1 Deprecate functions that only call the urlgenerator anyway 2015-04-01 14:32:49 +02:00
Joas Schilling
730efe25a4 Make scrutinizer happy 2015-04-01 12:13:49 +02:00
Pierre Jochem
a1828ff034 More secure proposal 2015-04-01 11:28:53 +02:00
Olivier Paroz
0f01de9f7e Use getenv to get the paths for find 2015-03-31 23:49:21 +02:00
Olivier Paroz
7c41c0c13f use ExecutableFinder and find in findBinaryPath
When using open_basedir, commands such as `which`or `command`can fail
because they might try to look outside of the restricted perimeter.
Symfony's ExecutableFinder can be used instead to look in standard
locations and we can use `find` as a last resort

A better solution would be to adopt a mechanism similar to what has
been done for office documents where a configuration parameter is used
to indicate the path where the executable is to be found.
2015-03-31 23:49:16 +02:00
Robin Appelman
068c624b0d fix copying folder across devices 2015-03-31 13:50:11 +02:00
Roeland Jago Douma
0bf06d6691 No injections 2015-03-30 20:07:12 +02:00
Morris Jobke
bf17ac929d Merge pull request #15169 from rullzer/fix_displayNamesInGroup
Groupmanagers displayNamesInGroup should actually search in displaynames
2015-03-30 17:04:09 +02:00
Joas Schilling
b95d12700c Add logic for getting the user from the rss token to the Manager 2015-03-30 15:23:09 +02:00
Roeland Jago Douma
b0aa17b13f OCS Fixes to allow setting of password without removing additional settings
- Added setPassword to share.php
- Fixed OCS API call
- Added unit tests
2015-03-30 14:00:50 +02:00
Lukas Reschke
65202d2a18 Add check for activated local memcache
Also used the opportunity to refactor it into an AppFramework controller so that we can unit test it.

Fixes https://github.com/owncloud/core/issues/14956
2015-03-28 13:59:22 +01:00
Vincent Petry
d3752ca1e9 Merge pull request #15289 from owncloud/min-upload-limit
Require minimum 1 MiB upload limit
2015-03-28 11:34:11 +01:00
Robin McCorkell
ab991458ad Require minimum 1 MiB upload limit 2015-03-27 23:43:35 +00:00
Robin McCorkell
1511a42da7 Check for relative datadirectory path 2015-03-27 23:29:46 +00:00
Vincent Petry
a32c71d25e Revert "Deprecated \OCP\IAppConfig - add missing methods to IConfig"
This reverts commit 012016d331.
2015-03-27 18:50:11 +01:00
Morris Jobke
f4dc9e6bf3 Merge pull request #15155 from owncloud/share-donotreturntrashedfiles
Do not return shares for files outside "files"
2015-03-27 17:05:14 +01:00
Thomas Müller
4d12c4a38b Merge pull request #13938 from owncloud/deprecate-iappconfig
Deprecated \OCP\IAppConfig - add missing methods to IConfig
2015-03-27 16:07:41 +01:00
Thomas Müller
722e50a112 Merge pull request #15240 from owncloud/storage-wrapper-priority
add priority to storage wrappers
2015-03-27 15:18:44 +01:00
Thomas Müller
98bc1ad70a Merge pull request #15265 from owncloud/enc2_fixes
core improvements for Encryption 2.0
2015-03-27 14:58:33 +01:00
Morris Jobke
e918bcf212 Merge pull request #15247 from owncloud/fix_group_share_master_backport
also call generateTarget for group shares
2015-03-27 14:40:52 +01:00
Vincent Petry
80f83ab5e0 Do not return shares for files outside "files" 2015-03-27 13:25:23 +01:00
Vincent Petry
7ad4dfa201 Merge pull request #15227 from owncloud/ocetag-header
Copy Etag header to OC-Etag for sabre calls
2015-03-27 13:10:27 +01:00
Bjoern Schiessle
b5fad75e57 add deleteAllFileKeys to public interface and add "uid" as parameter for the
update call
2015-03-27 11:51:53 +01:00
Bjoern Schiessle
c6be1ba8d3 fix check if a file is excluded from encryption or not 2015-03-27 11:51:50 +01:00
Morris Jobke
a62f38a18b Merge pull request #15225 from owncloud/make-setups-for-users-that-tend-to-use-owncloud-on-not-proper-machines-a-little-bit-more-secure
Add some generic default headers as well via PHP
2015-03-27 09:54:40 +01:00
Lukas Reschke
9622fbdf29 Filter potential dangerous characters in path name
We should not allow / or \ in the postfix here.
2015-03-26 23:17:18 +01:00
Vincent Petry
670ca68453 Added stat cache for DAV storage
The stat cache stored known states of files/folders to avoid requerying
the DAV server multiple times.
2015-03-26 23:15:53 +01:00
Vincent Petry
746be98e03 Merge pull request #13654 from oparoz/tmpfile-with-extension
Keep the extension in temp files
2015-03-26 23:08:08 +01:00
Robin McCorkell
c2909355bf Merge pull request #14925 from owncloud/ext-mountoptions-ui
Mount options GUI for external storage
2015-03-26 21:36:34 +00:00
Lukas Reschke
9d1ce53cb1 Add some generic default headers as well via PHP 2015-03-26 22:32:57 +01:00
Bjoern Schiessle
223cca2a07 also call generateTarget for group share to add the correct prefix if share_folder is defined in config.php 2015-03-26 22:31:45 +01:00
Morris Jobke
e8109f0bc3 Merge pull request #13802 from owncloud/share-partfilepermissions
Fix share permission checks
2015-03-26 22:01:05 +01:00
Morris Jobke
4c00be4961 Merge pull request #14488 from owncloud/enhancement/security/inline-disposition
Serve all files with a Content-Disposition of 'attachment' via WebDAV
2015-03-26 21:45:30 +01:00
Robin Appelman
cb9ead7dde add priority to storage wrappers 2015-03-26 21:26:38 +01:00
Thomas Müller
232518ac54 Merge pull request #15234 from owncloud/encryption2_core
core part of encryption 2.0
2015-03-26 21:14:59 +01:00
Bjoern Schiessle
ff9c85ce60 implement basic encryption functionallity in core to enable multiple encryption modules 2015-03-26 20:56:51 +01:00
Lukas Reschke
8ebe667202 Remove unneeded argument 2015-03-26 20:45:39 +01:00
Lukas Reschke
74a9fc29b4 Merge pull request #14399 from owncloud/ignore-empty-plurals
Ignore empty plurals just like with singulars
2015-03-26 20:15:33 +01:00
Lukas Reschke
55fd0082aa Serve all files with a Content-Disposition of 'attachment' via WebDAV
As an additional security hardening it's sensible to serve these files with a Content-Disposition of 'attachment'. Currently they are served 'inline' and get a "secure mimetype" assigned in case of potential dangerous files.

To test this change ensure that:

- [ ] Syncing with the Desktop client still works
- [ ] Syncing with the Android client still works
- [ ] Syncing with the iOS client still works

I verified that the 1.8 OS X and iOS client still work with this change.
2015-03-26 20:01:05 +01:00
Lukas Reschke
c8c722bc6d Merge pull request #15129 from owncloud/version-command-bus
expire versions in a background command
2015-03-26 19:55:13 +01:00
Morris Jobke
70e64822b9 Merge pull request #14665 from owncloud/fileid-increment
SQLite autoincrement test
2015-03-26 19:36:18 +01:00
Vincent Petry
58b4c2c0e5 Make sure mountOptions keep their data type
str_replace for $user substitution was converting the data type of
mountOptions to string. This fix prevents this to happen by making sure
only strings are processed by substitution.

Also added a int conversion when reading the watcher policy
2015-03-26 19:24:37 +01:00
Thomas Müller
a8b756154a Merge pull request #14495 from owncloud/update-mailmap-01
Updating .mailmap
2015-03-26 17:17:18 +01:00
Robin Appelman
8c903c100f check limit of serialized command in unit tests 2015-03-26 17:07:02 +01:00
Robin Appelman
268f249e8d ensure commands can be serialized in unit tests 2015-03-26 17:07:02 +01:00
Robin Appelman
ddd6a67d2a Handle exceptions thrown during hooks when running unit tests 2015-03-26 17:07:02 +01:00
Robin Appelman
3ed6ed3c36 Force test cases using background commands to handle setting up the filesystem 2015-03-26 17:07:02 +01:00
Andreas Fischer
0f58315543 Add OC_Response::setContentLengthHeader() for Apache PHP SAPI workaround.
Do not send Content-Length headers with a value larger than PHP_INT_MAX
(2147483647) on Apache PHP SAPI 32-bit. PHP will eat them and send 2147483647
instead.

When X-Sendfile is enabled, Apache will send a correct Content-Length header,
even for files larger than 2147483647 bytes. When X-Sendfile is not enabled,
ownCloud will not send a Content-Length header. This prevents progress bars
from working, but allows the actual transfer to work properly.
2015-03-26 16:37:38 +01:00
Joas Schilling
39dbf9509b Merge pull request #15224 from owncloud/issue/15191-app-code-checker-error-list
Correctly only send the errors of the current file to the event
2015-03-26 16:35:46 +01:00
Vincent Petry
70acd58336 Copy Etag header to OC-Etag for sabre calls 2015-03-26 16:06:43 +01:00
Joas Schilling
db763027bb Correctly only send the errors of the current file to the event 2015-03-26 15:33:31 +01:00
Vincent Petry
a84ade5f32 Revert "adding OC-ETag header"
This reverts commit 30ee8b6f99.
2015-03-26 15:04:41 +01:00
Vincent Petry
daceb1a9ac Revert "adding unit tests"
This reverts commit 8d327c94a8.
2015-03-26 15:04:36 +01:00
Vincent Petry
cda7f7fd61 Merge pull request #15168 from owncloud/oc-etag-master
adding OC-ETag header
2015-03-26 13:52:43 +01:00
Lukas Reschke
468456e168 Merge pull request #14125 from dratini0/master
[nginx] Extending X-Accel-Redirect support
2015-03-26 13:35:00 +01:00
Jenkins for ownCloud
b585d87d9d Update license headers 2015-03-26 11:44:36 +01:00
Morris Jobke
20f5290462 Merge pull request #15195 from owncloud/reanimate-add-guzzle
Add wrapper for Guzzle
2015-03-26 11:06:48 +01:00
Vincent Petry
f056558b72 Add repair step to fix SQLite autoincrement
Force Doctrine to generate alter table SQL statements for SQLite to make
sure the code from OCSqlitePlatform is triggered.
2015-03-26 11:00:22 +01:00
Thomas Müller
8d327c94a8 adding unit tests 2015-03-26 10:49:26 +01:00
Robin Appelman
ac8254de6a Rename platform 2015-03-25 18:33:21 +01:00
Robin Appelman
24a30c10d7 Add custom sqlite platform to set auto increment 2015-03-25 18:33:21 +01:00
Lukas Reschke
5f044ebf1b Add wrapper for Guzzle 2015-03-25 16:04:41 +01:00
Andreas Fischer
630b7edc54 Do not use APCu when apc.enabled is Off. 2015-03-25 14:52:01 +01:00
Thomas Müller
43beaba0dc Merge pull request #15171 from owncloud/sabre-logforbiddenasdebug
Log forbidden in debug level
2015-03-24 23:31:35 +01:00
Lukas Reschke
ec12f5e019 Merge pull request #14949 from owncloud/sabre-2.1.3
Update sabre-2.1.3 thirdparty submodule
2015-03-24 23:16:57 +01:00
Vincent Petry
72c1c89bcd Log forbidden in debug level 2015-03-24 22:08:11 +01:00
Thomas Müller
30ee8b6f99 adding OC-ETag header 2015-03-24 21:36:46 +01:00
Roeland Jago Douma
abfb524b29 When searching for displayname then search for displayname 2015-03-24 21:35:44 +01:00
Lukas Reschke
5a9c9b86f8 Merge pull request #15153 from owncloud/uniquename-node
Add `getNonExistingName()` to the node api
2015-03-24 15:51:12 +01:00
Robin Appelman
d11f01fa0f Add getNonExistingName() to the node api 2015-03-24 15:00:36 +01:00
Vincent Petry
331f0196e0 Merge pull request #15150 from owncloud/sabre-removerangeexceptionforencryption
Remove range header exception for encryption
2015-03-24 14:29:01 +01:00
Morris Jobke
92791bb8ba Merge pull request #15126 from owncloud/sabre-storagenotavailable
Soft fail in CustomPropertiesBackend whenever storage not available
2015-03-24 14:01:47 +01:00
Joas Schilling
5e71d1558a Merge pull request #15149 from owncloud/fix-enable-for-group
Correctly get array of groups and send OCP\IGroup objects to enable meth...
2015-03-24 13:50:56 +01:00
Vincent Petry
46475bf580 Merge pull request #15003 from owncloud/issue/14859-speed-up-favorite-list
Do not walk over the users directory, but over the list of tagged objects
2015-03-24 13:26:59 +01:00
jknockaert
a1b68b5a48 Remove range header exception for encryption
revert #10422
2015-03-24 13:19:49 +01:00
Joas Schilling
b262c30fa9 Correctly get array of groups and send OCP\IGroup objects to enable method 2015-03-24 12:56:42 +01:00
dratini0
d4e5ef4f38 Removed simplified X-accel-redirect even further 2015-03-23 17:51:12 +01:00
Vincent Petry
eb894e6625 Soft fail in CustomPropertiesBackend whenever storage not available
When a storage is not available, it will not fail the whole call any
more but still return a usable file list.
2015-03-23 17:41:32 +01:00
Morris Jobke
0adcb99110 Merge pull request #14862 from owncloud/introduce-shipped.json-master
shipped apps are now defined in core/shipped.json - the shipped tag in i...
2015-03-23 17:17:33 +01:00
dratini0
c432b52c74 Changed the disputed while loop to a single if. 2015-03-23 16:12:03 +01:00
Joas Schilling
1a26263123 Do not walk over the users directory, but over the list of tagged objects
Way quicker
2015-03-23 15:10:58 +01:00
Olivier Paroz
f3fe46685b Introducing 3D images support (media type)
So that people with 3D images can at least see a 2D picture
Full 3D support is possible via an app
2015-03-20 22:11:42 +01:00
Thomas Müller
afa8872955 Merge pull request #14857 from owncloud/preview-provider-registration-in-manager
Preview provider registration in manager
2015-03-20 16:34:22 +01:00
Morris Jobke
a45e45df1e Merge pull request #14941 from AdamWill/pipeline-apps
fall back to absolute path for pipelined assets (#14940)
2015-03-20 14:56:02 +01:00
Thomas Müller
0b1c4bfc3b Merge pull request #15062 from owncloud/fix-15053-master
Handle session initialization errors and display error page
2015-03-20 14:07:15 +01:00
Vincent Petry
67160e0861 Do not automatically add "update" permission to shared mounts
In the past it seems the update permission was needed to be able to
rename shared mounts, but it doesn't seem to be the case any more.

Removing the "update" permission that used to be added automatically
fixes the read-only permission check when trying to overwrite a
read-only file over WebDAV.
2015-03-20 12:33:59 +01:00
Thomas Müller
843fef0490 Handle session initialization errors and display error page - fixes #15053 2015-03-20 12:21:03 +01:00
Thomas Müller
cce303ff5c Merge pull request #15047 from owncloud/connect-failed-exception-message
be a little more verbose in the exception message when we cant connect to...
2015-03-20 10:06:06 +01:00
Robin Appelman
faa4918355 be a little more verbose in the exception message when we cant connect to the db 2015-03-20 03:56:38 +01:00
Robin Appelman
2df20aaffb show exception type in debug mode 2015-03-20 03:51:21 +01:00
Vincent Petry
5ba508b346 Fix permission checks in Sabre connector
This fixes moving files in and out of shared folders with some exotic
permission combinations.
2015-03-19 21:18:48 +01:00
Thomas Müller
857b22c61b Merge pull request #15025 from rullzer/ocs_respect_enforced_date
Ocs respect enforced date
2015-03-19 17:06:04 +01:00
Robin Appelman
73874ca27f Merge pull request #14704 from owncloud/storage-wrapper-mount
pass mountpoint to storage wrapper callback
2015-03-19 16:20:38 +01:00
Olivier Paroz
f890c3ffb1 Make the method compatible with all types of extensions
Fix existing tests
2015-03-19 16:09:16 +01:00
Olivier Paroz
60b1643f02 Fix the office class
The office converter already replaces the original extension with '.pdf', so we need to switch the extensions of the tmp file instead of appending '.pdf' to it
2015-03-19 16:09:09 +01:00
Olivier Paroz
8d6b2b8867 Keep the extension in temp files
The file extension helps some applications like ImageMagick to properly
process files
2015-03-19 16:09:02 +01:00
Thomas Müller
0868e49663 Merge pull request #14980 from owncloud/fix-fileglobalgc
Fix fileglobalgc unlink parameter warnings
2015-03-19 14:17:20 +01:00
Roeland Jago Douma
3c39658a1c When the expiration date is enforced respect this
Make sure that we do not allow removing of the expiration date when this
is enforced in the settings.
2015-03-19 10:07:17 +01:00
Vincent Petry
fe8002a7db Merge pull request #14995 from owncloud/remove-unrequired-backtick-removal
Remove unrequired backtick removal
2015-03-18 19:34:49 +01:00
Robin McCorkell
693ca9a92f Add unit tests for gc() for \OC\Cache\FileGlobalGC 2015-03-18 16:19:04 +00:00
Robin Appelman
e2e16249a1 Merge pull request #14999 from owncloud/kill-fileoperations-proxy
kill fileoperations proxy
2015-03-18 15:42:00 +01:00
Lukas Reschke
7310575f07 Merge pull request #14994 from owncloud/sabre-customprops-softfail
Soft fail in custom properties backend
2015-03-18 15:39:35 +01:00
Robin Appelman
8f9ddef435 kill fileoperations proxy
check is now handled by storage backends
2015-03-18 15:04:28 +01:00
Morris Jobke
378eef7eb4 migrate share helper method to IConfig 2015-03-18 13:07:39 +01:00
Lukas Reschke
bb5c5a3691 Remove unreqired backtick removal
Without this files with a ` (backtick) in the beginning of the filenames where simply not correctly referenced as the ` got removed. This can lead to all possible havoc situations.

Should get backported to stable8 and in future we might consider if it is really worth to backport such changes when it is just for SQLite 🙈

Regression of https://github.com/owncloud/core/pull/14734
2015-03-18 12:38:19 +01:00
Vincent Petry
50194c31b4 Soft fail in custom properties backend
This makes it possible for clients to still receive a file list (minus
the broken files) instead of getting no list at all
2015-03-18 12:36:37 +01:00
Lukas Reschke
917cb66a5b Use ArrayCache if ownCloud is not installed
If ownCloud has not been installed yet the prefix might otherwise change at this point quite some time and thus the cache runs havoc.

This made installing ownCloud impossible on systems where APCu or so was available. However, I was not able to reproduce the same problem for application upgrades so this patch seems to work fine for this situation as well.

Fixes itself.
2015-03-18 11:47:16 +01:00
Robin McCorkell
42fcd0e8b7 Fix fileglobalgc unlink parameter warnings 2015-03-18 00:07:18 +00:00
Thomas Müller
c69cd28a73 Merge pull request #14968 from owncloud/files-reallowsinglequote
Reallow single quote in file names
2015-03-17 23:50:16 +01:00
Thomas Müller
a4d2c7810e Merge pull request #14975 from owncloud/add-smtp-debug-mode
Add debug mode back to mailer
2015-03-17 23:49:19 +01:00
Lukas Reschke
f13216d275 Use FILTER_UNSAFE_RAW instead of FILTER_SANITIZE_STRING
`FILTER_SANITIZE_STRING` will still encode everything else.
2015-03-17 21:56:16 +01:00
Bernhard Posselt
087117d87d Merge pull request #14961 from owncloud/onlyrequireinfo
Only hard depend on the info.xml and not the app.php
2015-03-17 21:27:51 +01:00
Robin McCorkell
760f5fc5e5 Merge pull request #14954 from owncloud/cache-image-path
Cache \OC\URLGenerator::imagePath
2015-03-17 19:36:23 +00:00
Lukas Reschke
aea4b3166b Add debug mode back to mailer
This re-adds the debug mode for the mailer which will log the whole SMTP traffic within the log file if enabled.
2015-03-17 19:41:13 +01:00
Morris Jobke
012016d331 Deprecated \OCP\IAppConfig - add missing methods to IConfig 2015-03-17 17:19:33 +01:00
Bernhard Posselt
57ceed590a only hard depend on the info.xml and not the app.php
fix comment
2015-03-17 15:43:48 +01:00
Thomas Müller
6d5f52484e Merge pull request #14948 from owncloud/prefix-memcache
Add version and path to cache prefix
2015-03-17 13:39:22 +01:00
Lukas Reschke
1f4aa5350a Reuse cache result 2015-03-17 13:15:52 +01:00
Lukas Reschke
4f9b76d821 Read theme only if required 2015-03-17 12:47:46 +01:00
Lukas Reschke
c233f2c90b Add version and path to cache prefix
Prevents to have the cache reused by other instances on the server which have possible the same instance ID and also invalidates older cache entries after an upgrade which can cause unwanted side-effects.

Impact for deployment: The same cache will only get used if ownCloud is installed with the same version and under the same path. But this should be a basic requirement anyways.
2015-03-17 12:39:49 +01:00
Lukas Reschke
9e2ebf2dce Cache \OC\URLGenerator::imagePath
\OC\URLGenerator::imagePath is a really expensive operation due to all the I/O handling and can really benefit from caching.
2015-03-17 12:35:47 +01:00
Vincent Petry
5ea8ab3bb0 Fix Principal connector override 2015-03-17 12:22:29 +01:00
Joas Schilling
9c45ab49a1 Use a closure for the files app entry and deprecate old methods 2015-03-17 12:17:09 +01:00
Thomas Müller
98a42dbccc Merge pull request #14927 from oparoz/raw-mimetypes
Introducing the Raw media types
2015-03-17 11:32:09 +01:00
Lukas Reschke
e4c6b0abf5 Merge pull request #14931 from owncloud/issue/14881-closures-for-navigation-entries
Issue/14881 closures for navigation entries
2015-03-17 11:28:27 +01:00
Lukas Reschke
b1c19f74a1 Merge pull request #12085 from owncloud/add-swift-mailer
Migrate OC_Mail to SwiftMailer
2015-03-17 11:15:39 +01:00
Adam Williamson
fa1be7d296 fall back to absolute path for pipelined assets (#14940)
If the asset is, for example, in an apps directory that is
outside the $SERVERROOT, we won't be able to get a relative
path. We shouldn't just fail hard in this case. Fall back to
using the absolute path instead (as we used to).
2015-03-16 19:08:11 -07:00
Vincent Petry
7bc09f8f06 Fix setup config 2015-03-16 17:57:34 +01:00
Vincent Petry
6f687fa6ae Merge pull request #14923 from owncloud/fix-preference-key-definition
Fix user preference key definition for insertIfNotExists()
2015-03-16 17:14:09 +01:00
Thomas Müller
54e1edbf03 Merge pull request #13733 from mmattel/Try_to_write_logtimezone_during_installation
Write the parameter 'logtimezone' into config.php during setup
2015-03-16 17:04:06 +01:00
Olivier Paroz
bef12488c3 Introducing the Raw mimetypes 2015-03-16 16:25:04 +01:00
Joas Schilling
970846624f Allow registering closures for navigation entries
This speeds up all pages that don't use the navigation by 0.04sec per app,
because we don't need to create the routing anymore, unless we really need to.
2015-03-16 16:17:43 +01:00
Joas Schilling
c2a5bd6a01 Also add a note that clob does not work in the compare array 2015-03-16 15:41:00 +01:00
Joas Schilling
06b2446269 The key is over configkey, user and app, not the value
stupid me :(
2015-03-16 15:37:12 +01:00
Lukas Reschke
d7c7808a5e Add debug log message back 2015-03-16 13:01:17 +01:00
Lukas Reschke
e32f1582c7 Show more detailed error message 2015-03-16 12:47:06 +01:00
Lukas Reschke
f92f3a1a6e Incorporate review changes 2015-03-16 12:47:05 +01:00
Lukas Reschke
13486a5ada Migrate to SwiftMail
Replaces the OC_Mail and phpmailer with SwiftMail allowing us to mock it properly.

Fixes the unit test execution on master on local machines and https://github.com/owncloud/core/issues/12014

Conflicts:
	3rdparty
	lib/private/server.php
	lib/public/iservercontainer.php
	tests/lib/mail.php
	tests/settings/controller/mailsettingscontrollertest.php

Conflicts:
	3rdparty
	lib/private/mail.php
	lib/private/server.php
	lib/public/iservercontainer.php
	settings/ajax/lostpassword.php
	settings/application.php
2015-03-16 12:47:05 +01:00
Joas Schilling
2731b80f74 Only register the core providers when necessary 2015-03-16 12:45:18 +01:00
Joas Schilling
8ed27d2ce0 Create an interface for OC_Image and OCP\Image for the public API 2015-03-16 12:45:15 +01:00
Joas Schilling
3b7aec1b7d Only sort the list when required 2015-03-16 12:44:12 +01:00
Joas Schilling
37b827f0b2 Order the providers alphabetically 2015-03-16 12:44:12 +01:00
Joas Schilling
9c86574acf Only do all the "find path" magic when we need to register them 2015-03-16 12:44:11 +01:00
Joas Schilling
e38dea3542 Cache result for isMimeTypeSupported() 2015-03-16 12:44:11 +01:00
Joas Schilling
e518eacba6 Add more type hinting 2015-03-16 12:44:11 +01:00
Joas Schilling
1a1dc9b335 Use DI for the config 2015-03-16 12:44:11 +01:00
Joas Schilling
c1f266db88 Add an interface for the preview providers 2015-03-16 12:44:11 +01:00
Joas Schilling
227ff0a9e3 Clean up some docs 2015-03-16 12:44:11 +01:00
Joas Schilling
0b37d5aea3 Move default provider registration to preview manager 2015-03-16 12:44:11 +01:00
Joas Schilling
cae8529359 Register preview providers on the preview manager instead of OC\Preview 2015-03-16 12:44:11 +01:00
Thomas Müller
1075914f8a Merge pull request #14883 from owncloud/imagepng_expects_resource_issue
validate resource's integrity before using it
2015-03-16 12:22:27 +01:00
Georg Ehrke
09b05373ed validate resource's integrity before using it 2015-03-16 10:57:01 +01:00
Morris Jobke
17b10ef9b4 Add spaces 2015-03-16 10:52:29 +01:00
Morris Jobke
997a7a2668 Merge pull request #14766 from owncloud/fix-insertifnotexists-poc
Allow specifying the compare-array for insertIfNotExists()
2015-03-16 10:31:36 +01:00
Vincent Petry
b495ca4924 Added part files for when writing chunks
Whenever a chunk is being written, it is now written to a part file
first. This is to avoid a concurrent chunk upload to believe that the
former chunk already exists, even though it's not fully written.

This makes sure that the final file assembly is only done when all
chunks were successfully written.

Also added an extra unique id to chunk parts in case the same chunk is
uploaded twice concurrently.
2015-03-16 10:13:13 +01:00
Thomas Müller
bbaf97ca43 Merge pull request #14644 from owncloud/trash-expire-command
Expire files from the trash in the background
2015-03-16 10:04:05 +01:00
Thomas Müller
6927773648 Merge pull request #14776 from owncloud/fix-14629-master
verify the file name length not to exceed 255 characters + verify path d...
2015-03-16 09:58:41 +01:00
Thomas Müller
b159c7f274 Merge pull request #14848 from owncloud/kill-curl-fallback-master
drop any fallback code related to curl
2015-03-16 09:56:31 +01:00