Commit graph

5684 commits

Author SHA1 Message Date
Thomas Müller
f8c55beaae Merge pull request #23903 from owncloud/fix-user-data-folder-creation-for-apache-login
Ensure the user's data folder is created for IApacheBackend authentication
2016-04-19 08:35:21 +02:00
Thomas Müller
1773dcbef2 Merge pull request #23973 from owncloud/share_move_post_delete_from_group_hook
Move post_removeFromGroup to shareManager
2016-04-19 06:59:58 +02:00
Petr Svoboda
465152023d solves problem with moving files via WebDAV
When moving files via WebDAV I sometimes got 

PHP Fatal error:  Nesting level too deep - recursive dependency? in /var/www/owncloud/lib/private/files/view.php on line 729

This small change has fixed the problem for me
2016-04-19 00:49:21 +02:00
Thomas Müller
c609abf075
In case of fatal php errors and other unhandled exceptions no html error page is expected to be displayed in the console 2016-04-18 22:30:01 +02:00
Roeland Jago Douma
c03bd2d8a7
Fix use statement 2016-04-18 22:06:14 +02:00
Roeland Jago Douma
161eaadc89
Move OC\IntegrityCheck to PSR-4 2016-04-18 21:46:07 +02:00
Lukas Reschke
8222ad5157
Move logout to controller
Testable code. Yay.
2016-04-18 21:21:52 +02:00
Thomas Müller
1626850fc9
Remove deprecated HTTPHelper 2016-04-18 17:28:10 +02:00
Thomas Müller
5c3183cedd
Move version check code out of class Updater 2016-04-18 17:12:59 +02:00
Lukas Reschke
14fdafaede Merge pull request #23947 from owncloud/login-to-ctrl
Move login form into controller
2016-04-18 11:47:57 +02:00
Roeland Jago Douma
3301bfd195
Move \OC\Notification to PSR-4 2016-04-18 09:20:06 +02:00
Roeland Jago Douma
f3d05486fd
Move \OC\Memcache to PSR-4 2016-04-18 08:21:50 +02:00
Roeland Jago Douma
d09f835dca
Move \OC\DB to PSR-4
Besides the statement wrapper that is moved to the legacy folder
(namepsace of shame folder)
2016-04-15 19:46:34 +02:00
Daniel Jagszent
5a0938ad8e Call private cache methods only for OC\Files\Cache\Cache
The two implementation detail methods `correctFolderSize` and
`calculateFolderSize` should only be called for instances of
`OC\Files\Cache\Cache`. This commit adds guarding checks
whenever they are called.
2016-04-15 17:56:27 +02:00
Lukas Reschke
331e4efacb
Move login form into controller
First step on getting the authorisation stuff cleaned up. This is only for the login form, all other stuff is still where it is.
2016-04-15 17:36:23 +02:00
Roeland Jago Douma
653325f254
Move \OC\Comments to PSR-4 2016-04-15 15:54:20 +02:00
Thomas Müller
50e20e531e
Introduce isReadyForUser and verify in file transfer ownership - fixes #23786 2016-04-15 15:07:40 +02:00
Roeland Jago Douma
5c6079cd89
Move \OC\Command to PSR-4 2016-04-15 12:01:13 +02:00
Roeland Jago Douma
d9007ccacf
Move \OC\Cache to PSR-4 2016-04-15 09:22:37 +02:00
Roeland Jago Douma
e2c36c2903
Move \OC\Session to PSR-4 2016-04-15 07:46:19 +02:00
Thomas Müller
e3b90d7caa Merge pull request #24007 from owncloud/security_psr4
Move \OC\Security to PSR-4
2016-04-14 23:44:36 +02:00
Thomas Müller
b23037ec5c Merge pull request #23998 from owncloud/translate-birthday
Translate contacts birthday
2016-04-14 23:41:03 +02:00
Thomas Müller
f4f4f88347 Merge pull request #24005 from owncloud/3rdparty-has-to-be-in-root
Kill movable 3rdparty
2016-04-14 23:33:34 +02:00
C. Montero Luque
ed1874ee97 Merge pull request #23561 from owncloud/background-scan-unscanned
handle completely unscanned storages in the background scanner
2016-04-14 15:23:42 -04:00
Roeland Jago Douma
9050e76d95
Move \OC\Security to PSR-4 2016-04-14 19:21:18 +02:00
Thomas Müller
dc061bae42
Kill movable 3rdparty 2016-04-14 17:59:49 +02:00
Thomas Müller
55735e1450
Translate contacts birthday - fixes #23982 2016-04-14 16:58:45 +02:00
Thomas Müller
0cff70bb90 Merge pull request #23991 from owncloud/handle-exceptions-in-templates
Properly handle exception within templates
2016-04-14 15:38:47 +02:00
Scrutinizer Auto-Fixer
25fff15487 Scrutinizer Auto-Fixes (#23959)
* Scrutinizer Auto-Fixes

This commit consists of patches automatically generated for this project on https://scrutinizer-ci.com

* revert append() change
2016-04-14 11:50:06 +02:00
Morris Jobke
dfb98c31a3 Merge pull request #19615 from owncloud/issue-15858-mount-points-return-wrong-paths-for-getusersharingfiles
Fix Share::getUsersSharingFile() for mount points
2016-04-14 11:49:11 +02:00
Roeland Jago Douma
7b3191705c
Let the querybuilder convert 2016-04-14 11:32:34 +02:00
Robin Appelman
68746e1bdb
chunk the cleaning up of shared locks 2016-04-14 11:32:34 +02:00
Morris Jobke
12f1adb7bb
Properly handle exception within templates
* fixes partial printed templates when exception is thrown in between
2016-04-14 11:22:38 +02:00
Roeland Jago Douma
86e757d2b3
Move \OC\Lock to PSR-4 2016-04-14 08:28:16 +02:00
Roeland Jago Douma
e5dd4272d3
Move \OC\App to PSR-4 2016-04-13 19:53:05 +02:00
Joas Schilling
79c17cdfa6
Fix Share::getUsersSharingFile() for mount points 2016-04-13 17:44:18 +02:00
Roeland Jago Douma
6144ced7a0
Move post_removeFromGroup to shareManager
The last sharing hook to be moved over.

* Added unit tests
* Removed old tests that relied on old behaviour
* Removed old hooks.php
2016-04-13 15:00:12 +02:00
Thomas Müller
7f87c3e843 Merge pull request #23962 from owncloud/activity-psr4
Move files in \OC\Activity to PSR-4
2016-04-13 14:10:07 +02:00
Joas Schilling
009f96cb83 Merge pull request #23963 from owncloud/lazyRoot
Add LazyRootFolder
2016-04-13 12:53:28 +02:00
Roeland Jago Douma
55497e09a9
Make shareproviders use the lazy root folder 2016-04-13 11:23:07 +02:00
Roeland Jago Douma
5cd8382d39
Add lazyRootFolder 2016-04-13 11:23:02 +02:00
Thomas Müller
e90a3b5ba7 Merge pull request #23954 from stweil/master
misc: Fix some typos
2016-04-13 11:08:58 +02:00
Roeland Jago Douma
a5a6c85c1c
Move files in \OC\Activity to PSR-4 2016-04-13 10:29:36 +02:00
Stefan Weil
ee5f5eebe5 misc: Fix some typos
Some of them were found by codespell.

Signed-off-by: Stefan Weil <sw@weilnetz.de>
2016-04-12 18:36:39 +02:00
Björn Schießle
f17ad18865
set $share to null if getShareByToken() failed 2016-04-12 17:26:09 +02:00
Thomas Müller
fdee771aca Add unit testing capabilities for templates (#23708)
Add unit testing capabilities for templates
2016-04-12 12:49:11 +02:00
Roeland Douma
495a964ca2 Migrate post_groupDelete hook to share manager (#23841)
The hook now calls the share manager that will call the responsible
shareProvider to do the proper cleanup.

* Unit tests added

Again nothing should change it is just to cleanup old code
2016-04-12 09:46:25 +02:00
Roeland Douma
4ddf9f98f1 Don't calculate permissions twice (#23917)
There is no need to calculate the permissions twice.
Saves some is_dir and file_exists calls.
2016-04-12 09:45:59 +02:00
Joas Schilling
8e16e7bf34 Merge pull request #23856 from owncloud/share_remove_addtogroup_hooks
Remove pre/post_addToGroup hooks for shares
2016-04-11 15:05:20 +02:00
Morris Jobke
ddbb9b7ec4 Catch the AutoloadNotAllowedException also for legacy jobs (#23901)
* same as #18839 for legacy jobs
* avoids spamming the log with useless entries
2016-04-11 14:06:11 +02:00
Joshua Ruehlig
329849f2c2 To be safe don't unload until end (#23752)
* To be safe don't unload until end

* unlink needs to be before return to actually do anything
2016-04-11 14:04:57 +02:00
Morris Jobke
929a28421a Merge pull request #23798 from owncloud/federated-unshare-background-job
re-try to send unshare notification if remote server is not available
2016-04-11 11:13:00 +02:00
Thomas Müller
bab55141a6 Fixes #23899 2016-04-11 10:35:52 +02:00
Thomas Müller
e2c4a0cecd Merge pull request #23860 from owncloud/followup-23304-opening-empty-file
Correctly return an empty string for empty files
2016-04-11 10:08:24 +02:00
Thomas Müller
1d3d43b1e9 Merge pull request #23553 from owncloud/lock-ttl-execution-time
Make lock ttl configurable
2016-04-08 14:53:26 +02:00
Thomas Müller
53acb4a65f Merge pull request #23736 from owncloud/move_public_webdav_auth_to_share_manager
Move public webdav auth to share manager
2016-04-08 14:52:15 +02:00
Joas Schilling
178ad23d80
Correctly return an empty string for empty files 2016-04-08 14:50:42 +02:00
Roeland Jago Douma
bd3bde2f3b
Set proper permissions on link share
If we do not allow public upload we should limit the permissions on
links shares upon retrieval.

* Added unit test
* Allow fetching federated shares by token as well
2016-04-08 14:17:05 +02:00
Roeland Jago Douma
3fae4c82d2
Remove pre/post_addToGroup hooks for shares
There is no need to perform the checks for unique targets on add to
group as we have to do this all when mounting the shares anyway.
2016-04-08 11:56:38 +02:00
Bjoern Schiessle
fbd5c28c39 re-try to send unshare notification if remote server is not available 2016-04-08 11:32:04 +02:00
Stefan Weil
b1a856d7b7 lib: Fix typos (found by codespell)
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2016-04-07 19:51:27 +02:00
Joas Schilling
0de15a86f0 Merge pull request #23773 from owncloud/share_move_delete_user_hook
Migrate post_userDelete hook to share manager
2016-04-07 13:01:10 +02:00
Robin Appelman
cdedda99e4 Make lock ttl configurable 2016-04-07 08:24:13 +02:00
Lukas Reschke
cc5a2b549e
Replace getid3 with ID3Parser 2016-04-06 12:00:16 +02:00
Morris Jobke
046506dd14 Merge pull request #23763 from owncloud/do_not_export_share_type_2
Share type 2 is private
2016-04-06 09:40:13 +02:00
Thomas Müller
60f532882c Merge pull request #23794 from owncloud/handle-null-in-usermanager
Prevent null to be passed into the closure of callForAllUsers
2016-04-05 17:57:39 +02:00
Thomas Müller
64d400b5df Prevent null to be passed into the closure of callForAllUsers 2016-04-05 10:26:04 +02:00
Jan-Christoph Borchardt
73a6664ca8 load mobile styles last, fix #19596 2016-04-05 09:47:39 +02:00
Thomas Müller
961bb4c3e3 Merge pull request #23677 from owncloud/db-schema-migration-feedback
Show individual sql schema migration steps during upgrade - on web as…
2016-04-05 09:39:35 +02:00
Morris Jobke
6ecd1d9e86 Fix PHP memory leak in file_get_contents()
* ref https://bugs.php.net/bug.php?id=61961

* ref https://github.com/owncloud/core/issues/20261#issuecomment-180000256

* code is based on the proposal of @chriseqipe

* fixes #20261
2016-04-04 16:48:09 +02:00
Thomas Müller
4b79fb10a2 Fix verbose output of upgrade command - not progressbar in this case and the schema migration test has one progressbar now for all tables - before we had one progressbar for each table 2016-04-04 16:20:53 +02:00
Roeland Jago Douma
e0cee43cf0 Migrate post_userDelete hook to share manager
This makes the post_userDelete hook call the sharemanager. This will
cleanup to and from this user.

* All shares owned by this user
* All shares with this user (user)
* All custom group shares
* All link share initiated by this user (to avoid invisible link shares)

Unit tests are added for the defaultshare provider as well as the
federated share provider
2016-04-04 14:15:38 +02:00
Thomas Müller
f6cea3c9c4 Merge pull request #23557 from owncloud/sabre-plugin-browser-error-page
In case of exception we return an html page in case the client is a b…
2016-04-04 13:51:23 +02:00
Thomas Müller
1bf4c75e8b Show individual sql schema migration steps during upgrade - on web as well as on the command line 2016-04-04 12:34:18 +02:00
Thomas Müller
64d68eb2da Merge pull request #23722 from owncloud/also-hide-password-for-private-key-password-update
Also replace password in updatePrivateKeyPassword
2016-04-04 10:54:59 +02:00
Roeland Jago Douma
d3959ee152 Share type 2 is private
This was added to the factory for legacy reasons when converting from
old to new sharing code. It is not used anymore so can be deleted. Which
means we no longer expose internal types.
2016-04-04 09:00:06 +02:00
Lukas Reschke
a5f2f22c12 Sanitize more data in config report
This sanitizes the following keys as well:

- `proxyuserpwd`
- `shared_secret` of `log.condition`
- `license-key`
- `password` of `redis`
2016-04-01 13:03:34 +02:00
Lukas Reschke
09b14ceffc Also replace password in updatePrivateKeyPassword
Fixes https://github.com/owncloud/core/issues/23717
2016-04-01 10:32:23 +02:00
Joas Schilling
0235a79b4e Initialise the printcss array 2016-04-01 09:46:15 +02:00
Thomas Müller
2714dfce21 Merge pull request #23713 from owncloud/small_encryption_fix
make sure that we always remove the file again from the cache after t…
2016-03-31 23:13:52 +02:00
Morris Jobke
902abe33f5 Merge pull request #23676 from owncloud/handle-null-return-getAppInfo
Properly handle return values of OC_App::getAppInfo()
2016-03-31 22:21:50 +02:00
C. Montero Luque
0393e80c7c Merge pull request #16857 from owncloud/printStylesheets
Support for print stylesheets
2016-03-31 22:13:44 +02:00
Bjoern Schiessle
e4b451491b make sure that we always remove the file again from the cache after the version was created 2016-03-31 21:52:23 +02:00
Frank Karlitschek
f5709b511b Merge pull request #23445 from owncloud/enc_small_improvement
small performance improvement: no need to calculate the header size
2016-03-31 20:38:42 +02:00
Frank Karlitschek
2bff34be56 Merge pull request #23707 from owncloud/make-sure-that-encrypted-version-is-set
Make sure that the encrypted version is set
2016-03-31 20:37:17 +02:00
Frank Karlitschek
fdb59079a2 Merge pull request #23675 from owncloud/fix_encryption_versions_on_external_storages
fix creation of versions of encrypted files on external storages
2016-03-31 20:36:03 +02:00
Bjoern Schiessle
93ed965cbb fix creation of versions of encrypted files on external storages
in order to create a 1:1 copy of a file if a version gets created
we need to store this information on copyBetweenStorage(). This
allows us to by-pass the encryption wrapper if we read the source file.
2016-03-31 19:24:47 +02:00
Lukas Reschke
c427bf3b5d Make sure that the encrypted version is set
The code path called when using external storage with WebDAV is using `\OC\Files\Storage\Wrapper\Encryption::getMetaData` which did not contain the actual encrypted version inside the cache entry version. This lead to the following:

1. User uploaded a file
2. File is created and `\OC\Files\Storage\Wrapper\Encryption::getMetaData` is called. It has an empty `encryptedVersion` but sets `encrypted` to either `true` or `false`.
3. The call when updating the file cache will use the old version.
2016-03-31 18:06:37 +02:00
Morris Jobke
f5beeec833 Properly handle return values of OC_App::getAppInfo()
* fixes #23668
2016-03-30 23:29:26 +02:00
Roeland Jago Douma
2f4294e781 Add setId and setProviderID to the public interface
Fixes #23337

We only allow the id to be set once!
2016-03-30 22:55:03 +02:00
Thomas Müller
66ee9d56fc Merge pull request #23628 from owncloud/avatar-remove
only remove avatars from the folder we store them in
2016-03-30 17:00:09 +02:00
Thomas Müller
748a59db11 Merge pull request #23654 from owncloud/issue-23653-xcache-detection-fails
xcache.var_size with 64M should evaluate to isAvailable
2016-03-30 16:57:02 +02:00
Joas Schilling
f1c23a92a4 xcache.var_size with 64M should evaluate to isAvailable 2016-03-30 14:54:56 +02:00
Roeland Jago Douma
9ce5e4b01f Non moveable mount points should always be UPDATE+DELETE shareable
Fixes #23536

The new sharing code is much stricter in checking permissions. However
for non moveable mounts the permissions UPDATE+DELETE are not reported
on the mount point.

This is just a quick fix.

* Updated unit tests
2016-03-30 13:33:16 +02:00
Robin Appelman
c22697e09e only remove avatars from the folder we store them in 2016-03-30 10:24:43 +02:00
Thomas Müller
37d32a93d0 Merge pull request #23543 from owncloud/issue-23503-activity-emails-always-short
Fix activity emails always using the short translation
2016-03-29 18:44:16 +02:00
C. Montero Luque
4123185d2d Merge branch 'master' into background-scan-unscanned 2016-03-25 13:14:35 +01:00
Thomas Müller
b966fc2233 Merge pull request #23545 from owncloud/issue-17144-lock-mount-point-on-removal
Lock the mountpoint while removing
2016-03-24 22:43:46 +01:00
Thomas Müller
b8812c8cba Merge pull request #23154 from owncloud/avatar-save-failure
dont die when we cant save the resized avatar, log instead
2016-03-24 22:43:17 +01:00
Lukas Reschke
95820fbd5b Add magical regex to catch browsers 2016-03-24 19:02:16 +01:00
Thomas Müller
c46f480031 In case of exception we return an html page in case the client is a browser 2016-03-24 19:02:16 +01:00
Robin Appelman
6485d95c5a handle completely unscanned storages in the background scanner 2016-03-24 17:16:21 +01:00
Jörn Friedrich Dreyer
c3508df09a add missing var 2016-03-24 12:49:43 +01:00
Thomas Müller
789df4d630 Merge pull request #23542 from owncloud/catch-empty-app-path-oh-we-really-should-use-exceptions-in-the-future
getAppPath can return false
2016-03-24 11:56:43 +01:00
Joas Schilling
3d9863febc Lock the mountpoint while removing 2016-03-24 11:50:17 +01:00
Joas Schilling
c0858f42aa Allow the activity app to set the current user when sending emails 2016-03-24 09:36:44 +01:00
Joas Schilling
dad98542a5 We are only formatting an object when it's not null 2016-03-24 09:34:19 +01:00
Lukas Reschke
117b3e0a12 getAppPath can return false
Fixes https://github.com/owncloud/core/issues/23533
2016-03-24 09:19:43 +01:00
Lukas Reschke
cc8c0b6a90 Check if request is sent from official ownCloud client
There are authentication backends such as Shibboleth that do send no Basic Auth credentials for DAV requests. This means that the ownCloud DAV backend would consider these requests coming from an untrusted source and require higher levels of security checks. (e.g. a CSRF check)

While an elegant solution would rely on authenticating via token (so that one can properly ensure that the request came indeed from a trusted client) this is a okay'ish workaround for this problem until we have something more reliable in the authentication code.
2016-03-24 08:59:56 +01:00
Thomas Müller
6fc92453f3 Merge pull request #23515 from owncloud/issue-22695-wrong-menu-translations
Fix the translations of the User menu
2016-03-23 23:20:00 +01:00
Joas Schilling
6026b67280 Fix the translations of the User menu 2016-03-23 15:34:25 +01:00
Thomas Müller
ea07a428f4 Merge pull request #22506 from owncloud/node-get-from-cache
Query the cache when checking if a node exists
2016-03-23 13:08:17 +01:00
Thomas Müller
e9d62741e8 Merge pull request #23142 from owncloud/request_properties
Fix analyzer warnings in request.php
2016-03-23 11:03:37 +01:00
Thomas Müller
fc18d33ff8 Merge pull request #22895 from owncloud/cleanup_default_share_provider
Remove support for old shares in the default share provider
2016-03-23 11:02:28 +01:00
Thomas Müller
efd378814c Merge pull request #23362 from owncloud/fix-l10n-for-themes
Read available l10n files also from theme folder
2016-03-23 09:22:21 +01:00
Thomas Müller
61c5717281 Merge pull request #23463 from owncloud/lets-consistently-use-no-referer
Consistently use rel=noreferrer
2016-03-23 09:14:54 +01:00
Thomas Müller
abcee56fe3 Merge pull request #23474 from owncloud/RealRancor-exclude_lost_and_found
Exclude lost+found dir in integrity check
2016-03-23 08:05:27 +01:00
Roeland Jago Douma
e6dc80f0f3 Fix warning in request.php
* Added proper @property tags
* RunTimeException => RuntimeException

Makes code analyzers happier
2016-03-23 07:59:20 +01:00
Roeland Jago Douma
da1dbb52e4 Remove dead function
This was used when we did not have lazy shares yet. Now that we no
longer support legacy shares this can go.
2016-03-23 07:58:17 +01:00
Roeland Jago Douma
b26b8d17eb Remove support for old shares in the default share provider
In 9.0 we converted the old shares to the new shares. So for 9.1 we can
savely remove the fallback code.

This code was required when there was no initiator set.

* Fixed unit tests
2016-03-23 07:58:17 +01:00
Thomas Müller
d5be21fe81 Merge pull request #23398 from owncloud/block_group_sharing
Allow blocking of group sharing
2016-03-22 21:28:13 +01:00
Lukas Reschke
1fffc30cf0 Only use the user session if ownCloud is already installed
When installing ownCloud with autotest and MySQL some log entries may be created which will invoke the logging class. IUserSession has a dependency on the database which will make the installation fail => 💣
2016-03-22 17:34:20 +01:00
Roeland Jago Douma
52826d0e24 Block group sharing in API and in share manager
* Fix tests
2016-03-22 17:13:34 +01:00
Roeland Jago Douma
195efc12eb Add config to sharemanager 2016-03-22 17:13:34 +01:00
Thomas Müller
6aa28037c7 Merge pull request #23437 from owncloud/save-query-when-the-list-is-empty
Save the query when we get tags for no objects
2016-03-22 17:12:24 +01:00
Thomas Müller
ffe57a55d9 Merge pull request #23461 from owncloud/activity-491-autoloading-issue-without-sharing
Fix "AutoloadNotAllowedException" when files_sharing is disabled
2016-03-22 15:12:25 +01:00
Thomas Müller
0cd93a8e72 Merge pull request #23411 from owncloud/new_sharing_to_composer
Move sharing 2.0 to composer autoloader
2016-03-22 15:10:11 +01:00
Lukas Reschke
5d170e0505 Merge branch 'exclude_lost_and_found' of https://github.com/RealRancor/core into RealRancor-exclude_lost_and_found 2016-03-22 12:58:14 +01:00
Joas Schilling
dcca20a48a Save the query when we get tags for no objects 2016-03-22 11:13:11 +01:00
Thomas Müller
7426be0937 Merge pull request #23448 from owncloud/issue-22993-soften-exception-on-enable-default-app
Do not abort with an exception when a default app can not be enabled
2016-03-22 10:19:59 +01:00
Thomas Müller
da8781e425 Merge pull request #23443 from owncloud/some-more-logging-information
Log more information by default
2016-03-22 10:06:32 +01:00
Joas Schilling
24ce4b0f7d Fix "AutoloadNotAllowedException" when files_sharing is disabled 2016-03-22 08:42:25 +01:00
Thomas Müller
61629ad9ad Merge pull request #23424 from owncloud/fix-cachewrapper-doc-issue
Fix doc issue of cache wrapper
2016-03-21 18:03:35 +01:00
Joas Schilling
444343dc2b Do not abort with an exception when a default app can not be enabled 2016-03-21 16:31:59 +01:00
Lukas Reschke
7adae4476f Log more information by default
This modifies the logger to add the following logging information by default:

- Request Method
- Request URL
- Current user
2016-03-21 15:48:01 +01:00
Bjoern Schiessle
7b9d53b7ea no need to calculate the header size, if the first block contain a header we already know the size 2016-03-21 15:47:24 +01:00
Vincent Petry
f28f538029 Do not fire pre/post hooks twice on chunk upload 2016-03-21 15:14:58 +01:00
Robin Appelman
0b0b3253bb properly use fileinfo objects 2016-03-21 14:20:33 +01:00
Robin Appelman
6031ae1ad4 improve reuse in getUserFolder 2016-03-21 13:53:33 +01:00
Robin Appelman
5e6c905a14 pass the fileinfo to the node if available 2016-03-21 13:53:33 +01:00
Robin Appelman
a98b038300 Query the cache when checking if a node exists 2016-03-21 13:53:33 +01:00
Joas Schilling
e86fd945dd Fix doc issue of cache wrapper 2016-03-21 10:45:53 +01:00
Thomas Müller
16782484b9 Merge pull request #23349 from owncloud/hardenings
Hardenings
2016-03-21 09:45:05 +01:00
Lukas Reschke
6ad957906e Consistently use rel=noreferrer
When linking to external entities we should consistently use rel=noreferrer
2016-03-20 15:27:20 +01:00
Roeland Jago Douma
c6edbfecbe Move (new) sharing over to composer autoloader 2016-03-20 14:12:36 +01:00
RealRancor
dee0bbbbce Exclude lost+found dir in integrity check 2016-03-19 14:08:21 +01:00
Morris Jobke
76455204c0 Inject server root - allows proper testing and separation of concerns 2016-03-18 13:59:44 +01:00
Lukas Reschke
e867a7d54d Write .htaccess update only if not already written
The ownCloud update routine also runs the "updateHtaccess" code in case only an application gets updated. This leads to having entries multiple time in the .htaccess file leading to unpredictable behaviour.

With 9.0 we added the "#### DO NOT CHANGE ANYTHING ABOVE THIS LINE ####" entry to the .htaccess file, this change uses it to ensure that only to the .htaccess gets written if the file has not been modified already. Since the .htaccess modifications are optional this is not a big deal.

Without this change updates of applications can break the rewrite rules (ending in endless redirects) as well as breaking the code integrity checker.
2016-03-17 17:59:28 +01:00
Morris Jobke
23c0f4ff5f Read available l10n files also from theme folder
The old behaviour was that only languages could be used for an app
that are already present in the apps/$app/l10n folder. If there is
a themed l10n that is not present in the apps default l10n folder
the language could not be used and the texts are not translated.

With this change this is possible and also the l10n files are
loaded even if the default l10n doesn't contain the l10n file.
2016-03-17 16:15:37 +01:00
Lukas Reschke
bf017f5c11 Remove unused code
This code is not used anymore.
2016-03-17 13:09:23 +01:00
Lukas Reschke
979a3ff830 Escape App ID
While all callers do this as well this prevents a misuse of the API by mistake.
2016-03-17 13:09:22 +01:00
Manish Bisht
07e7d4836e Update oci.php
Error Fixed

combined the database errors

Merged Database Errors
2016-03-16 19:21:14 +01:00
Thomas Müller
2f5b929ee9 Merge pull request #23108 from owncloud/set-encrypted-version-at-least-to-1
Ensure that stored version is at least 1 for cross-storage copy
2016-03-16 13:14:36 +01:00
Thomas Müller
5f00724e5b Merge pull request #23189 from owncloud/require-at-least-libxml-2-7-0
Require at least libxml 2.7.0
2016-03-16 13:11:59 +01:00
Lukas Reschke
676041ba7e Ensure that stored version is at least 1 for cross-storage copy
In case of a move operation from an unencrypted to an encrypted
storage the old encrypted version would stay with "0" while the
correct value would be "1". Thus we manually set the value to "1"
for those cases.

See also https://github.com/owncloud/core/issues/23078
2016-03-16 10:36:15 +01:00
Thomas Müller
f7140294f2 Merge pull request #23157 from owncloud/remove-share-prop-entries
remove old share propagation entries from appconfig
2016-03-15 16:04:17 +01:00
Thomas Müller
27760ae54e Merge pull request #23164 from owncloud/db-connection-precondition-fix
Prevent certain DBs throwing exceptions on same-value updates
2016-03-15 16:03:55 +01:00
Thomas Müller
7b06dd485d Merge pull request #23250 from owncloud/fix-support-for-php7-in-htaccess
Fix several .htaccess and .user.ini related problems
2016-03-15 16:03:18 +01:00
Robin McCorkell
1b2f1cc272 Prevent certain DBs throwing exceptions on same-value updates
A PreconditionNotMetException must only be thrown if explicit
preconditions are specified for setValues(), not if the value is merely
the same as was already in the DB.
2016-03-15 13:02:19 +01:00
Thomas Müller
ad9a0804f3 Merge pull request #23226 from owncloud/fix_23190
Generate a valid URL for link notification
2016-03-15 12:55:13 +01:00
Robin Appelman
0aa83511a1 remove old share propagation entries from appconfig 2016-03-15 12:50:22 +01:00
Thomas Müller
0f6ea9fd29 Merge pull request #23039 from owncloud/invalid-share-storage
dont break when there is an invalid share
2016-03-15 12:15:05 +01:00
Thomas Müller
e9eeb3607f Merge pull request #23074 from owncloud/issue-22835-correctly-use-querybuilder-api
Correctly escape join statements and use selectAlias
2016-03-15 12:14:17 +01:00
Roeland Jago Douma
1db82073a4 Generate a valid URL for link notification
fixes #23197

* Updated unit test
2016-03-15 11:10:24 +01:00
Lukas Reschke
5278bfe0e4 Add support for custom values in integrity checker 2016-03-15 10:41:17 +01:00
Lukas Reschke
c7abd307c0 Replace all required values 2016-03-15 10:41:17 +01:00
Lukas Reschke
0b0077e62d Revert "Removed unnecessary check 'installed' system value' call." 2016-03-15 10:23:40 +01:00
Thomas Müller
9657f9a01b Merge pull request #23171 from maxolasersquad/master
Removed unnecessary check 'installed' system value' call.
2016-03-14 17:18:36 +01:00
Thomas Müller
a058bb0d7e Merge pull request #23225 from owncloud/Phiber2000-fix_logtimezone
fix broken logtimezone
2016-03-14 17:08:48 +01:00
Thomas Müller
b25077748e Merge pull request #22901 from owncloud/add-dav-authenticated
Add DAV authenticated also to other scopes
2016-03-14 16:33:09 +01:00
Thomas Müller
3661b47b6d Merge pull request #23124 from owncloud/improved-rewrite-rule
Improved rewrite rule
2016-03-14 16:13:50 +01:00
Thomas Müller
f6a5fe452d Merge pull request #23190 from owncloud/use-proper-url-for-search-results
Use proper URLs for search results
2016-03-14 16:11:17 +01:00
Thomas Müller
d219284961 Merge pull request #23191 from owncloud/fix-external-dav-storage
Verify the getResponse returns a ResponseInterface
2016-03-14 16:10:40 +01:00
Thomas Müller
852acd364a Merge pull request #23218 from owncloud/memcached-not-found-on-remove-means-success
Fix errors in memcached implementation
2016-03-14 16:08:47 +01:00
Phiber2000
3e7b2810e2 fix broken logtimezone 2016-03-14 15:10:47 +01:00
Joas Schilling
2f67aa9bc4 Fix errors in memcached implementation 2016-03-14 12:39:34 +01:00
Joas Schilling
c3c491689b Shorter cache key for URL entries 2016-03-14 11:05:46 +01:00
Roeland Jago Douma
3f8c998afe Do not recurse link share fetching
* Might fix an issue on oracle
2016-03-13 13:31:28 +01:00
Lukas Reschke
d43051f7de Verify the getResponse returns a ResponseInterface
Can also return `null` as per PHPDoc. Regression added by 97f5c095f4

Fixes https://github.com/owncloud/core/issues/23145
2016-03-12 22:45:07 +01:00
Lukas Reschke
3c06b08c92 Use proper URLs for search results
Fixes https://github.com/owncloud/core/issues/23136
2016-03-12 22:29:47 +01:00
Lukas Reschke
42a70ed482 Require at least libxml 2.7.0
Fixes https://github.com/owncloud/core/issues/23168
2016-03-12 22:13:05 +01:00
David Baucum
c519447522 Removed unnecessary check 'installed' system value' call.
OC_Utils::checkServer makes an unnecessary call to $config->getSystemValue('installed', false), which replicates the call made immediately before it during the call to needUpgrade.
2016-03-11 15:59:11 -05:00
Thomas Müller
a8922e9d35 Merge pull request #23125 from owncloud/add-port-support-to-trusteddomain
Explicitly check for port
2016-03-11 14:55:27 +01:00
Robin Appelman
54e750ba78 dont die when we cant save the resized avatar, log instead 2016-03-11 13:44:35 +01:00
Robin Appelman
a8db587b1f move failedstorage to core 2016-03-11 13:15:45 +01:00
Roeland Jago Douma
b8ce9c5554 Use more generic node instead of File/Folder
The phpdoc for the sharing functions was very restrictive. As a
consequence passing node object (for example from the OCS Share API
where we don't really care if it is a file or folder), would actually
be invalid.

With this loser restriction the interfaces become more generic.
2016-03-11 08:51:07 +01:00
Lukas Reschke
dc6789fd5b Explicitly check for port
The setup uses `\OCP\IRequest::getInsecureServerHost` which in some cases can also include a port. This makes the trusted domain check fail thus.

I've decided to add this here that way because adjusting the setup would require parsing the host properly. This is not something that can be done very good in PHP. Check the following example for why `parse_url` is not our friend: https://3v4l.org/k501Z
2016-03-10 22:32:29 +01:00
Lukas Reschke
3e8decf5e9 Improved rewrite rule
As per https://github.com/owncloud/core/issues/23098 and https://github.com/owncloud/core/issues/23117
2016-03-10 22:20:02 +01:00
Thomas Müller
51072f742e Merge pull request #21582 from owncloud/core_composer
Composers PSR-4 autoloader in core
2016-03-10 12:06:44 +01:00
Joas Schilling
6b4117df34 Correctly escape join statements and use selectAlias 2016-03-10 10:24:08 +01:00
Thomas Müller
308c99f1fd Merge pull request #23029 from owncloud/add-rewrite-rules-after-setup
Add base rewrite rule only when RewriteBase is defined
2016-03-10 08:25:18 +01:00
Roeland Jago Douma
d16b371e38 POC for PSR-4 autoloader server.php => Server.php 2016-03-09 16:53:39 +01:00
Lukas Reschke
bc4a043a76 Add base rewrite rule only when RewriteBase is defined
In case Apache is configured with an `Alias` such as with the ownCloud packages the rewrite rules will fail when no valid RewriteBase is configured.
2016-03-09 15:13:07 +01:00
Thomas Müller
0cc53ee06d Merge pull request #22602 from owncloud/fix_slow_chunkcheck
Do not check all chunks of a chunked upload if we do not need to
2016-03-09 15:06:44 +01:00
Thomas Müller
d0a70a9776 Merge pull request #23006 from owncloud/require-xml-reader
Add XMLReader as requirement
2016-03-09 15:03:50 +01:00
Roeland Jago Douma
e8f22a16f6 Select queries in the default share provider should query for file/folder
There can be leftover calendar and contacts shares in the oc_share
table. We need to filter those out properly.
2016-03-09 11:19:57 +01:00
Lukas Reschke
642c38ffb2 Add XMLReader as requirement
The SabreDAV release in 9.0 requires XMLReader, while this is usually compiled in by default some distributions like Gentoo don't.

Without this ownCloud gives a fatal 500 error instead of telling people to enable XMLReader.

Fixes https://github.com/owncloud/core/issues/23003
2016-03-09 11:11:00 +01:00
Vincent Petry
e5a107cc45 Fix share mounting recursion 2016-03-08 14:46:42 +01:00
Roeland Jago Douma
e08f98075c Do not check all chunks of a chunked upload if we do not need to
Fixes #22601

Before we did a full test on all chunks to verify if a chunked upload
was completed. This is unneeded since if we are missing one chunk we can
already fail.

Also we look from back to front since it is much more likely that we
find a missing chunk thus can error out early.
2016-03-07 19:52:30 +01:00
Lukas Reschke
1fd76b6379 Remove double URL encoding
ZipStreamer as bundled with 9.0 will properly encode the filename already.

Fixes https://github.com/owncloud/core/issues/22836#issuecomment-193336245
2016-03-07 19:29:15 +01:00
Thomas Müller
19dc02b8e0 Merge pull request #22900 from owncloud/diskfreespace-filesworkaround
Fix call to disk_free_space when a file is provided
2016-03-07 15:07:31 +01:00
Thomas Müller
fa436b5b0c Merge pull request #22812 from owncloud/node-lock
Add locking to the node api
2016-03-07 14:43:49 +01:00
Joas Schilling
69d7097a1a Make sure that the return value is an array 2016-03-07 11:57:05 +01:00
Lukas Reschke
14f932f3c7 Add DAV authenticated also to other scopes
Fixes https://github.com/owncloud/core/issues/22893
2016-03-07 11:17:33 +01:00
Vincent Petry
89881ed511 Fix call to disk_free_space when a file is provided
In the case of shared files, we have to call free_space() on the file
name. This has the side-effect that when uploading to a local storage
without quota set, it will call disk_free_space with the file name,
which fails.

This fix uses the parent folder in case the given path is a file.
2016-03-07 11:01:24 +01:00
C. Montero Luque
7a0720f300 Merge branch 'master' into fix-db-locking-cleanup 2016-03-04 13:35:04 -05:00
Morris Jobke
138219d74a Run cleanup of expired DB file locks to background job
* fixes #22819

The old way fired a DELETE statement on each destruction of the
DBLockingProvider. Which could cause a lot of queries. It's enough
to run this every 5 minutes in a background job, which in the end
could result in file locks that exists 5 minutes longer - in the
worst case and for not properly released locks.

This makes the DB based locking a lot more performant and could
result in a similar performance to the Redis based locking provider.
2016-03-04 15:52:23 +01:00
Thomas Müller
b56dbd0607 Merge pull request #22816 from owncloud/external-unavailable-recheck
allow availability recheck for external storages
2016-03-04 15:29:17 +01:00
Joas Schilling
98f5423df7 ucwords does not support delimiter on 5.4 2016-03-04 12:13:16 +01:00
Thomas Müller
8d2238e055 Merge pull request #22796 from owncloud/fix-encryption-on-version-restore
Keep "encryptedVersion" when calling `\OC\Files\View::copy`
2016-03-03 16:31:11 +01:00
Robin Appelman
6990100e6e allow availability recheck for external storages 2016-03-03 14:19:34 +01:00
Lukas Reschke
72c8187cbb Keep "encryptedVersion" when calling \OC\Files\View::copy
When calling `\OC\Files\View::copy` we should also keep the version to ensure that the file will always have the correct version attached and can be successfully decrypted.

To test this the following steps are necessary (from https://github.com/owncloud/core/issues/22781#issuecomment-191328982):

1. setup a new ownCloud 9.0 beta2
2. enable encryption
2. upload a docx (5.7MB large)
3. upload the same file again and overwrite the existing file
4. I can download the original file and the first version
5. I restore the first version
6. restored version can no longer be downloaded with the error described above

The manual cache operation in `\OCA\Files_Versions\Storage` is unfortunately necessary since `\OCA\Files_Versions\Storage::copyFileContents` is not using `\OCP\Files\Storage::moveFromStorage` in the case when an object storage is used. Due to the workaround added in 54cea05271 the stream is directly copied and thus bypassing the FS.
2016-03-03 14:15:36 +01:00
Robin Appelman
02635c6f2f Add locking to the node api 2016-03-03 13:47:00 +01:00
Lukas Reschke
e55c52c078 Exclude the assets folder from integrity check
We should not scan the assets folder as this can contain user specific content. Partially addresses https://github.com/owncloud/core/issues/22803
2016-03-03 13:46:41 +01:00
C. Montero Luque
4d69e562a0 Merge pull request #22757 from owncloud/apply-license
Update copyright information and author file
2016-03-01 15:36:37 -05:00
Lukas Reschke
c353d51810 Remove Scrutinizer Auto Fixer 2016-03-01 17:48:23 +01:00
Lukas Reschke
c430f5ba53 Map Maci 2016-03-01 17:45:05 +01:00
Lukas Reschke
933f60e314 Update author information
Probably nice for the people that contributed to 9.0 to see themselves in the AUTHORS file :)
2016-03-01 17:25:15 +01:00
Lukas Reschke
2d68c1b945 Exclude custom data directory from integrity checker
We should not scan any custom data directory in the integrity checker as well. Otherwise this would lead to a massive increased update time that may likely exceed the timeout.

To test this:

1. Install ownCloud 8.2.2, set as data dir another folder than `data` such as `data-asdf`. Make sure that folder lives in the web root as well.
2. Update that instance to 9.0.0 beta2 => Errors are shown in the code integrity check
3. Apply this patch and trigger the rescan in the admin settings => No errors are shown anymore (can also do a new update with that patch applied)

Fixes https://github.com/owncloud/core/issues/22698
2016-03-01 17:16:10 +01:00
Thomas Müller
5fe5233f41 Merge pull request #22681 from owncloud/add-autodiscovery-for-ocs
Add autodiscovery support to server-to-server sharing implementation
2016-03-01 11:27:28 +01:00
Thomas Müller
fd4742d430 Merge pull request #22613 from owncloud/quota-changedavreturnvaluewhennoquotaset
Don't return quota when none set
2016-03-01 08:30:58 +01:00
Thomas Müller
71e5de3865 Merge pull request #22677 from owncloud/allow-to-overwrite-single-l10n-string-via-theme
Allow to overwrite a single language string via the theme folder
2016-03-01 08:26:28 +01:00
Thomas Müller
da18d04b38 Merge pull request #22733 from owncloud/size-propagation-new-file
fix size propagation for new files
2016-03-01 08:20:34 +01:00
Thomas Müller
caf6c43187 Merge pull request #22736 from owncloud/propagation-ignore-encryption
ignore encryption keys for propagation
2016-03-01 08:19:42 +01:00
Robin Appelman
003a686c1b ignore encryption keys for propagation 2016-02-29 17:47:09 +01:00
Robin Appelman
8c700cc99d fix size propagation for new files 2016-02-29 17:31:01 +01:00
Vincent Petry
11215f4e27 Return -3 for unlimited quota
Returns -3 for unlimited quota in Webdav response.
Also adjusted personal page to show unlimited quota when set.
2016-02-29 14:36:20 +01:00
Joas Schilling
2a0cda74d4 Use IQueryBuilder::PARAM_* instead of \PDO::PARAM_* 2016-02-29 09:44:40 +01:00
Thomas Müller
6526c122af Merge pull request #22683 from owncloud/fix_22682
Relax rootfolder check
2016-02-29 08:53:58 +01:00
Roeland Jago Douma
b116e80c56 Relax rootfolder check
* Updated unit tests
* Added intergration test
2016-02-26 16:05:32 +01:00
Joas Schilling
78570a5f72 Allow to overwrite a single language string via the theme folder 2016-02-26 13:56:02 +01:00
Roeland Jago Douma
bfcdf40a64 Expiration date can only be enforced if default is enabled
If the default expiration date is not enebaled it can not be enforced.

* Added unit tests
2016-02-26 11:38:06 +01:00
Thomas Müller
62d7885c3b Merge pull request #22660 from owncloud/fix_22656
Do not allow sharing of the users root folder
2016-02-26 10:49:12 +01:00
Thomas Müller
0795cc373d Merge pull request #22646 from owncloud/fix_22642
Set default expiration date if none given on share creation
2016-02-26 10:48:21 +01:00
Thomas Müller
cbde4bb92f Merge pull request #22650 from owncloud/fix_hook
Fix verifyExpirationDate passwordSet argument
2016-02-26 09:32:41 +01:00
Lukas Reschke
59028cced0 Add autodiscovery support to server-to-server sharing
Adds autodiscovery support to server-to-server sharing as specified in the specification. If no discovery data is found it is using the fallback ownCloud endpoints for legacy support.
2016-02-26 09:26:55 +01:00
Thomas Müller
cb41b1a863 Merge pull request #22584 from owncloud/fix-app-load-order-fixes-22508
Before installing new shipped apps we need to load authentication apps
2016-02-25 21:43:32 +01:00
Roeland Jago Douma
8213d5df4f Do not allow sharing of the root folder
Sharing of the users root folder should not be allowed as it is very
weird UX. Also many of our clients have no proper way of displaying
this.

Added unit test

Also added intergration tests to make sure we won't allow it in the
future.
2016-02-25 20:40:30 +01:00
Thomas Müller
776d91f3bc Merge pull request #21854 from owncloud/fix-share-hook-group-add
Fix addUserToGroup hook of the share code
2016-02-25 16:56:19 +01:00
Roeland Jago Douma
9412f69104 Fix verifyExpirationDate passwordSet argument
Password set should be false if the password is null.

Also updated the unit tests to tests this now.
2016-02-25 15:39:02 +01:00
Thomas Müller
914ac09aae Merge pull request #22636 from owncloud/fix-ssl-on-external-storages
Fix HTTPS support on external storages
2016-02-25 14:36:00 +01:00
Thomas Müller
efc966698f Merge pull request #22579 from owncloud/fix_broken_unencrypted_size
Heal unencrypted file sizes at download time (second approach)
2016-02-25 14:34:48 +01:00
Roeland Jago Douma
6d4f80d680 Set default expiration date if none given on share creation
When we create a share for the first time we should set the default
expiration date. If none is given.

Fixes #22642
2016-02-25 14:21:46 +01:00
Lukas Reschke
bf4a038535 Add proxy support to external storage
Otherwise debugging issues is a PITA
2016-02-24 19:48:47 +01:00
Thomas Müller
2ec1c738d0 Merge pull request #22573 from owncloud/issue-22568-allow-string-object-ids
Make sure we can store strings as per the interface
2016-02-24 12:15:23 +01:00
Thomas Müller
4124d909b6 Merge pull request #22565 from owncloud/avoid-scanning-root-storage
Avoids scanning the root storage
2016-02-24 12:14:39 +01:00
Thomas Müller
bfde96a623 Fix PHPDoc of OC_App::loadApps() 2016-02-23 15:57:12 +01:00
Bjoern Schiessle
834b51b83b recalculate unencrypted size if we assume that the size stored in the db is not correct 2016-02-23 15:09:46 +01:00
Thomas Müller
9a0950f10b Merge pull request #22569 from owncloud/issue-22566-too-much-mapping-entries
Allow defining a limit and offset for getObjectIdsForTags
2016-02-23 15:02:08 +01:00
Thomas Müller
ad6238c808 Install new shipped apps after upgrading all existing apps 2016-02-23 10:31:11 +01:00