Commit Graph

4239 Commits

Author SHA1 Message Date
Johannes Ernst 2b4ceae620 Trusted domain wildcard checking made shorter, supporting multiple *
Added test cases
2016-07-06 23:38:30 +00:00
Thomas Pulzer 90b7f74da7 Changed name of default logfile from owncloud.log to nextcloud.log. 2016-07-04 11:50:32 +02:00
Lukas Reschke 179a355b2c Merge remote-tracking branch 'upstream/master' into master-sync-upstream 2016-07-01 11:36:35 +02:00
Morris Jobke 3acdc1339d Merge pull request #206 from nextcloud/ci-mysql
Add mysql job to CI
2016-06-30 09:06:19 +02:00
Morris Jobke 01829e8d7c mysql only works with 3 byte UTF-8 2016-06-29 15:53:23 +02:00
Thomas Müller b55ab6d22a Various database migration fixes (#25209)
* String columns with a length higher then 4000 are converted into a CLOB columns automagically - we have to respect this when migrating

* Adding schema migration tests to prevent unnecessary and non-sense migration steps
Fix Oracle autoincrement and unsigned handling

* Fix sqlite integer type for autoincrement

* Use lower case table names - fixes pg

* Fix postgres with default -1 - this only affect pg 9.4 servers - 9.5 seems to work fine
2016-06-29 14:54:41 +02:00
Christoph Wurst 1710de8afb Login hooks (#25260)
* fix login hooks

* adjust user session tests

* fix login return value of successful token logins

* trigger preLogin hook earlier; extract method 'loginWithPassword'

* call postLogin hook earlier; add PHPDoc
2016-06-27 22:16:22 +02:00
Lukas Reschke 6670d37658 Merge remote-tracking branch 'upstream/master' into master-sync-upstream 2016-06-27 18:23:00 +02:00
Bjoern Schiessle 2a990a0db5
verify user password on change 2016-06-27 14:08:11 +02:00
Bjoern Schiessle d4989c8037
remove old hook, no longer needed 2016-06-27 14:05:27 +02:00
Bjoern Schiessle 630e4b1b46
check password for link shares 2016-06-27 14:05:27 +02:00
Vincent Petry 199c8e304c Merge pull request #25250 from owncloud/linkshare-includedeletewithuploadperms
Add explicit delete permission to link shares
2016-06-27 12:14:05 +02:00
Lukas Reschke 7a9d60d87e
Merge remote-tracking branch 'upstream/master' into master-upstream-sync 2016-06-26 12:55:05 +02:00
Christoph Wurst 89198e62e8 check login name when authenticating with client token 2016-06-24 13:57:09 +02:00
Vincent Petry 0ad065cb8d Repair step to adjust link share delete permissions 2016-06-24 09:48:48 +02:00
Vincent Petry 955635c7aa Add explicit delete permission to link shares
Link shares always allowed deletion, however internally the permissions
were stored as 7 which lacked delete permissions. This created an
inconsistency in the Webdav permissions.

This fix makes sure we include delete permissions in the share
permissions, which now become 15.

In case a client is still passing 7 for legacy reasons, it gets
converted automatically to 15.
2016-06-24 09:48:48 +02:00
Vincent Petry 3db5de95bd Merge pull request #25172 from owncloud/token-login-validation
Token login validation
2016-06-22 13:58:56 +02:00
Lukas Reschke 2b493e2f9d
Merge remote-tracking branch 'upstream/master' into master-sync-upstream 2016-06-21 11:18:22 +02:00
Christoph Wurst b805908dca
update session token password on user password change 2016-06-21 10:24:25 +02:00
Morris Jobke 62e6de5df3
fix unit tests 2016-06-20 13:52:51 +02:00
Christoph Wurst 56199eba37
fix unit test warning/errors 2016-06-20 10:41:23 +02:00
Christoph Wurst fb36fd495b
fix DefaultTokenMapperTest 2016-06-20 09:25:15 +02:00
Christoph Wurst 5c68084823
fix default token provider tests 2016-06-20 09:17:19 +02:00
Christoph Wurst 8ef5431e7a
fix user session tests 2016-06-20 09:10:11 +02:00
Christoph Wurst c4149c59c2
use token last_activity instead of session value 2016-06-17 15:42:28 +02:00
Christoph Wurst 82b50d126c
add PasswordLoginForbiddenException 2016-06-17 11:02:07 +02:00
Christoph Wurst 3521f974db
assert app is loaded in unit tests 2016-06-16 11:08:43 +02:00
Christoph Wurst a40d64ff7f
load 2FA provider apps before querying classes 2016-06-16 10:12:16 +02:00
Vincent Petry 9c328de4ab Merge pull request #24415 from owncloud/optimize_sharingdisabled_for_user
Optimize isSharingDisabledForUser
2016-06-16 09:27:48 +02:00
Vincent Petry 1251df3e17 Merge pull request #25075 from owncloud/fix_23265
Remove shares of the root folder
2016-06-16 09:27:06 +02:00
Vincent Petry 05967a6904 Merge pull request #25093 from owncloud/issue-12816-clean-tags-from-deleted-users
Clean up tags of deleted users
2016-06-15 12:20:29 +02:00
Roeland Jago Douma ea4c5e6e0a
Fix unit tests 2016-06-14 13:24:48 +02:00
Joas Schilling 123bf78ca8
Clean up tags of deleted users 2016-06-14 12:38:09 +02:00
Arthur Schiwon ae02685e6f
Merge branch 'master' of https://github.com/owncloud/core into downstream-160614 2016-06-14 01:06:25 +02:00
Christoph Wurst 465807490d
create session token only for clients that support cookies 2016-06-13 19:44:05 +02:00
Roeland Jago Douma 64471b5d4a
Remove shares of the root folder
Fixes #23265

(A possibly costly) repair job to remove cyclic shares.
2016-06-13 15:07:41 +02:00
Christoph Wurst 5daa9a5417 fail hard if 2fa provider can not be loaded (#25061) 2016-06-13 12:46:45 +02:00
Arthur Schiwon 42c66efea5
Merge branch 'master' of https://github.com/owncloud/core into downstream-160611 2016-06-11 15:34:43 +02:00
Lukas Reschke 842cc2a788 Merge pull request #19 from nextcloud/files-drop
add "hide file list" option
2016-06-10 18:29:09 +02:00
Vincent Petry 52a0c939ab Merge pull request #24863 from owncloud/propagator-batching
Propagator batching for the file scanner
2016-06-10 17:45:52 +02:00
Joas Schilling 60225284f3
Add not-null columns for oracle 2016-06-10 12:44:49 +02:00
Roeland Jago Douma 1b66db72d9
Repair job to fix permissions for avatars
Fixes #22978

On some older installations the permissions for the userRoot and the
avatars are not correct. This breaks since we now use the Node API in
the avatar code.

This repair job makes sure that the permissions are set correctly.

* Unit tests added
2016-06-10 12:44:49 +02:00
Arthur Schiwon a636e4ff28
Downstream 2016-06-09
Merge branch 'master' of https://github.com/owncloud/core into downstream-160609
2016-06-09 18:45:12 +02:00
blizzz 51fd2602a7 Revert "Downstream 2016-06-08" 2016-06-09 17:41:57 +02:00
Roeland Jago Douma 7d51fd0310
Add repair step to clean old calendar/contact shares
fixes #21889
2016-06-09 15:48:45 +02:00
Bjoern Schiessle bb54ab0db8
add hide file list option 2016-06-09 15:15:17 +02:00
Robin Appelman bee918693a
dissalow symlinks in local storages that point outside the datadir 2016-06-09 14:00:01 +02:00
Joas Schilling 4f27c2c433
Allow to decrypt user '0' files only 2016-06-09 14:00:00 +02:00
Joas Schilling 0041d89dc2
Do not allow to store boolean configs, they behave unexpected on postgres 2016-06-09 13:59:58 +02:00
Robin Appelman 67c2c85b05
allow deleting "ghost files" trough the View and Node api 2016-06-09 13:59:58 +02:00
Vincent Petry 826e276a79 Merge pull request #24973 from owncloud/token-password-session-token
When creating a session token, make sure it's the login password and …
2016-06-09 11:58:04 +02:00
Vincent Petry aca4ea12c1 Merge pull request #24826 from owncloud/cors-client-login
use client login method on CORS routes
2016-06-09 10:31:14 +02:00
Joas Schilling e49307014c Do not log token or challenge with exception stacktrace (#25026)
* Make the filtering better readable

* Add some more methods to the sensitive list
2016-06-08 16:32:58 +02:00
Christoph Wurst 9997c431c3
use client login method on CORS routes 2016-06-08 15:18:53 +02:00
Christoph Wurst ec929f07f2
When creating a session token, make sure it's the login password and not a device token 2016-06-08 13:31:55 +02:00
Vincent Petry 8d0948977e Merge pull request #24899 from owncloud/local-storage-symlinks
dissalow symlinks in local storages that point outside the datadir
2016-06-08 10:19:24 +02:00
Vincent Petry ed92f4c427 Merge pull request #24983 from owncloud/issue-23776-do-not-allow-boolean-user-config
Do not allow to store boolean configs, they behave unexpected on postgres
2016-06-08 10:14:08 +02:00
Vincent Petry b7935dcebd Merge pull request #24998 from owncloud/issue-24994-allow-decrypting-user-0-only
Allow to decrypt user '0' files only
2016-06-08 10:12:28 +02:00
Morris Jobke 38451c85f1
skip failing tests 2016-06-07 17:54:40 +02:00
Robin Appelman 7b1b723e5b dissalow symlinks in local storages that point outside the datadir 2016-06-07 14:01:53 +02:00
Joas Schilling d4ba982131
Allow to decrypt user '0' files only 2016-06-07 09:13:11 +02:00
Joas Schilling 911fd3ead4
Do not allow to store boolean configs, they behave unexpected on postgres 2016-06-06 12:38:20 +02:00
Robin Appelman 63408fa6ef allow deleting "ghost files" trough the View and Node api 2016-06-03 13:30:59 +02:00
Robin Appelman 11900baaf3 add tests for propagator batching 2016-06-02 15:09:15 +02:00
Vincent Petry 5b1eb416d8
Fix TestCase::invokePrivate to work with static classes 2016-06-01 14:28:59 +02:00
Vincent Petry 5ad8fa7675
Add keepUnicode value in the cache key of normalizedPathCache 2016-06-01 14:28:59 +02:00
Christoph Wurst c58d8159d7
Create session tokens for apache auth users 2016-05-31 17:07:49 +02:00
Vincent Petry a441220f24 Merge pull request #24628 from owncloud/decryptall-checkifneedsprocessing
[decrypt_all] Check if file needs to decrypted or not for speed up large oc setups.
2016-05-31 10:12:03 +02:00
Torben Dannhauer 718f0757e4 Fix for #23066 (#24689) 2016-05-31 06:53:28 +02:00
Björn Schießle b15babd061
fix unit tests 2016-05-30 14:49:27 +02:00
Joas Schilling 4b1e8a1184 One more PSR-4 fix (#24852) 2016-05-26 16:31:26 +02:00
Joas Schilling 4cfefda891
Move Test\Files\Storage\Wrapper\EncodingTest to PSR-4 2016-05-25 15:26:14 +02:00
Christoph Wurst 28ce7dd262
do not allow client password logins if token auth is enforced or 2FA is enabled 2016-05-24 17:54:02 +02:00
Vincent Petry d3fb5d618e Merge pull request #24748 from owncloud/login-explicitly
Log in explicitly, save login name when generating browser/device tokens
2016-05-24 17:51:49 +02:00
Vincent Petry e7110c7678 Merge pull request #24760 from owncloud/objectstore_multibucket
Objectstore multibucket
2016-05-24 15:15:59 +02:00
Christoph Wurst ad10485cec
when generating browser/device token, save the login name for later password checks 2016-05-24 11:49:15 +02:00
Roeland Jago Douma abe338f433
Store user bucket in preferences 2016-05-23 21:57:41 +02:00
Vincent Petry 4f6670d759 Merge pull request #24658 from owncloud/invalidate-disabled-user-session
invalidate user session if the user was disabled
2016-05-23 20:50:25 +02:00
Vincent Petry 87fa86a69a Merge pull request #24559 from owncloud/2fa
two factor auth
2016-05-23 20:50:03 +02:00
Roeland Jago Douma e03e4921a0
Fix Name 2016-05-23 20:42:08 +02:00
Roeland Jago Douma 7ef21b0b27
Add unit tests for ObjectHomeMountProvider 2016-05-23 20:42:08 +02:00
Roeland Jago Douma 12b63258d5
Add mapper unit tests 2016-05-23 20:42:08 +02:00
Robin Appelman eca57be336 Only recurse into incomplete folders during background scans 2016-05-23 14:40:35 +02:00
Vincent Petry 57525a02f8 Merge pull request #24703 from owncloud/personal-settings-auth-tokens
Personal settings auth tokens
2016-05-23 14:17:01 +02:00
Vincent Petry bd87f67473 Merge pull request #24349 from owncloud/nfd-storagewrapper
Add wrapper for NFD encoding workaround
2016-05-23 13:45:33 +02:00
Christoph Wurst dfb4d426c2
Add two factor auth to core 2016-05-23 11:21:10 +02:00
Christoph Wurst c20cdc2213
invalidate user session if the user is disabled 2016-05-23 10:32:16 +02:00
Vincent Petry 5ba1add03c Merge pull request #24603 from owncloud/federated_reshare
flat federated re-share
2016-05-23 09:52:13 +02:00
Christoph Wurst 74277c25be
add button to invalidate browser sessions/device tokens 2016-05-23 09:11:12 +02:00
Vincent Petry 7a6966cdfe Merge pull request #24732 from owncloud/autoloader_fix
Autoloader fix
2016-05-21 19:09:22 +02:00
Vincent Petry 8646802850 Merge pull request #24696 from owncloud/lock-jobs-while-executing
Lock jobs while executing them, to allow multiple executors to run in…
2016-05-21 19:08:15 +02:00
Joas Schilling d0a2fa0506
Lock jobs while executing them, to allow multiple executors to run in parallel 2016-05-21 01:59:25 +02:00
Björn Schießle 7b25839bd5
use share initiator as fall back to access the file
in case of federated re-shares the owner can be a remote user.
Therefore we can't always use to owner to access the local file
2016-05-20 21:15:15 +02:00
Vincent Petry 88740f035d
Act on effective system tag canAssign permission
Whenever the server returns true for the can-assign Webdav property of
a system tag, it means the current user is allowed to assign,
regardless of the value of user-assignable.

This commit brings the proper logic to the web UI to make it possible
for users to assign when they have the permission.
2016-05-20 17:56:02 +02:00
Vincent Petry b5eb3d9e5a
Add system tag assignability check with groups
Whenever a user is not an admin, a tag is visible but not
user-assignable, check whether the user is a member of the allowed
groups.
2016-05-20 17:56:02 +02:00
Vincent Petry 3cd65fe25d
Add systemtag_group table and get/set methods
Added systemtag to group mapping table.
Added methods in ISystemTagManager to get/set the group mappings.
2016-05-20 17:56:02 +02:00
Vincent Petry 09b3883d9c
Updated canUser* functions in SystemTagManager to accept objects 2016-05-20 17:56:02 +02:00
Vincent Petry 8343cfb64b
Add interface methods for permission check
Instead of checking for admin perm, use interface method
canUserAssignTag and canUserSeeTag to check for permissions.
Allows for more flexible implementation.
2016-05-20 17:56:02 +02:00
Roeland Jago Douma 54b637e83c
Fix unit tests 2016-05-20 16:35:07 +02:00
Joas Schilling 94ad54ec9b Move tests/ to PSR-4 (#24731)
* Move a-b to PSR-4

* Move c-d to PSR-4

* Move e+g to PSR-4

* Move h-l to PSR-4

* Move m-r to PSR-4

* Move s-u to PSR-4

* Move files/ to PSR-4

* Move remaining tests to PSR-4

* Remove Test\ from old autoloader
2016-05-20 15:38:20 +02:00
Vincent Petry e8d082208d
Fixes for encoding wrapper
Improved label
Fixed rename/copy/moveFromStorage/copyFromStorage and added tests
Improved findPathToUse algo
2016-05-20 09:33:59 +02:00
Vincent Petry 63bbbf29f4
Add wrapper for NFD encoding workaround 2016-05-20 09:33:59 +02:00
Vincent Petry b495895017 Merge pull request #24728 from owncloud/no-more-test_-files
Fix autoloader for Test* files
2016-05-20 09:29:01 +02:00
Joas Schilling f8180391fd
Create a Fallback in the old autoloader for PSR-4 Test\TestCase 2016-05-19 15:45:34 +02:00
Joas Schilling ffa4633822
No more Test_* files exist, remove autoloading 2016-05-19 15:38:16 +02:00
Vincent Petry f42cdec4c4 Merge pull request #24725 from owncloud/ocs-provider-psr4
Move OCS Provider to PSR-4 namespace
2016-05-19 15:36:19 +02:00
Vincent Petry 3b3940df6b Merge pull request #24660 from owncloud/no-token-login-for-disabled-users
don't allow token login for disabled users
2016-05-19 15:32:09 +02:00
Vincent Petry 61b3260ebd Merge pull request #24716 from owncloud/fix-test-namespaces-2
Fix test namespaces [files-]
2016-05-19 15:31:43 +02:00
Joas Schilling 20f229eed9
Move OCS Provider to PSR-4 namespace 2016-05-19 11:10:32 +02:00
Joas Schilling bae4118b4f
Fix renamed class 2016-05-19 10:33:12 +02:00
Vincent Petry e36a27d21c Merge pull request #24712 from owncloud/fix-test-namespaces
Fix test namespaces [a-e]
2016-05-19 10:30:07 +02:00
Joas Schilling 320b1c3abf
Fix more failures 2016-05-19 10:11:42 +02:00
Joas Schilling f24179a327
Fix deprecated private method 2016-05-19 09:44:53 +02:00
Joas Schilling e88a9b2fed
Fix missing backtick before OC 2016-05-19 09:41:45 +02:00
Joas Schilling e823d50044
Fix "Class 'Test\Security\DateTime' not found" 2016-05-19 09:40:34 +02:00
Joas Schilling 9a4253ef7c
Fix lib/ 2016-05-19 09:38:52 +02:00
Joas Schilling 55fc6536d3
FIx lib/ a-d 2016-05-19 09:27:21 +02:00
Joas Schilling 7f3f16d155
Fix namespace in user/ 2016-05-19 09:19:03 +02:00
Joas Schilling a107e7de7b
Fix namespace in share/ 2016-05-19 09:15:10 +02:00
Joas Schilling 68481c10e6
Fix namespaces in security/ 2016-05-19 09:02:58 +02:00
Joas Schilling a9f24a74a2
Fix namespace in repair/ 2016-05-19 08:59:37 +02:00
Joas Schilling d19d6533dd
Fix public/ namespace in tests 2016-05-19 08:56:47 +02:00
Joas Schilling 859d2bc0ff
Fix namespace of memcache/ and ocs/ 2016-05-19 08:53:06 +02:00
Joas Schilling 71603fe348
Fix namespace in log/ and mail/ 2016-05-19 08:50:14 +02:00
Joas Schilling 0ab1120a33
Fix namespaces in tests/lib/integritycheck 2016-05-19 08:48:22 +02:00
Joas Schilling 51db410e67
Fix namespaces in tests/lib/http/ 2016-05-19 08:46:58 +02:00
Joas Schilling 995d4b7ecd
Fix namespaces in tests/lib/groups/ 2016-05-19 08:44:41 +02:00
Joas Schilling b1458d590d
Fix namespaces and class names in tests/lib/files/ 2016-05-19 08:41:01 +02:00
Christoph Wurst f824f3e5f3
don't allow token login for disabled users 2016-05-18 21:10:37 +02:00
Joas Schilling f57407e73e
Fix file name in tests/lib/encryption 2016-05-18 18:57:46 +02:00
Joas Schilling ba230888c6
Fix filenames and class names in tests/lib/comments 2016-05-18 18:57:46 +02:00
Joas Schilling bbf758b1b0
Fix file name of command test 2016-05-18 18:57:46 +02:00
Joas Schilling 1b6cd583f7
Fix namespace of tests/cache/ 2016-05-18 18:57:46 +02:00
Joas Schilling c54d79947b
Fix missing namespaces in tests/lib/db/ 2016-05-18 18:57:45 +02:00
Joas Schilling 5ce5eb195a
Fix namespace for archive tests 2016-05-18 18:57:45 +02:00
Joas Schilling 9eade36ae5
Fix namespaces in AppFramework tests 2016-05-18 18:57:45 +02:00
Christoph Wurst 0626578739
add method to query all user auth tokens 2016-05-18 18:25:37 +02:00
Christoph Wurst 98b465a8b9
a single token provider suffices 2016-05-18 09:20:48 +02:00
Roeland Douma 5c9103287f Group fixup (#24621)
* Move used OC_Group_xx to \OC\Group

* Add (deprecated) legacy wrapper in legacy, OC_Group_xx

* Replace deprecated use of OC_Group_xx with \OC\Group\xx
2016-05-17 16:06:44 +02:00
Vincent Petry e383a9506d Merge pull request #24617 from owncloud/autoloader_no_private
our autoloader should not load classes in \OC
2016-05-13 17:30:10 +02:00
Vincent Petry 9ac763a640 Merge pull request #24594 from owncloud/authtoken-name-column-size
Use CLOB for auth token names to allow long user agent strings
2016-05-13 11:56:52 +02:00
Roeland Jago Douma d022b6fad4
Fix unit tests 2016-05-13 11:33:21 +02:00
Roeland Jago Douma eb79b83831
Move functions.php to legacy
This file should really be properly namespaced etc!
2016-05-13 08:54:07 +02:00
Christoph Wurst c28e462583
Use CLOB for auth token names to allow long user agent strings 2016-05-12 11:19:17 +02:00
Christoph Wurst 69dafd727d
delete the token in case an exception is thrown when decrypting the password 2016-05-11 13:36:46 +02:00
Christoph Wurst af707fba41
use the query builder instead of raw sql statements 2016-05-11 13:36:46 +02:00
Christoph Wurst 46bdf6ea2b
fix PHPDoc and other minor issues 2016-05-11 13:36:46 +02:00
Christoph Wurst f0f8bdd495
PHPDoc and other minor fixes 2016-05-11 13:36:46 +02:00
Christoph Wurst dff108e97b
fix mock builder for old phpunit versions 2016-05-11 13:36:46 +02:00
Christoph Wurst fbb5768587
add unit tests for all new classes 2016-05-11 13:36:46 +02:00
Christoph Wurst aa85edd224
increase token column width
add some range to time() assertions
2016-05-11 13:36:46 +02:00
Christoph Wurst 8cc5f6036f
Fix existing tests 2016-05-11 13:36:46 +02:00
Roeland Jago Douma f6ee738ba8
Add \OC\User\Backend
Since some apps (ldap et al) still depend on OC_User_Backend this seemed
like the cleanest approach.
2016-05-10 19:53:36 +02:00
Roeland Jago Douma 9e1d9871a8
Move OC_User_Database to \OC\User\Database 2016-05-10 19:53:36 +02:00
Lukas Reschke e8e72aa910 Merge pull request #24434 from owncloud/permalinks
Permalinks
2016-05-10 09:44:50 +02:00
Lukas Reschke 8b428d84c0
Make update server URL configurable
Currently testing the updates is a big problem and not really super easy possible. Since we now have a new updater server we should also make this configurable so that people can properly test updates.
2016-05-09 11:25:58 +02:00
Roeland Jago Douma 108bd26856
Fix unit tests broken after #24457
Timeout was increased but tests were not updated.
2016-05-09 08:54:30 +02:00
Vincent Petry caefe23bb6
Send permalink in internal share notification emails 2016-05-06 16:46:59 +02:00
Morris Jobke 873849e843 Merge pull request #24432 from owncloud/issue-24270-never-save-app-language-into-request-lang
Do not save the language as request lang for apps when we didn't find…
2016-05-04 13:47:08 +02:00
Joas Schilling 9fbb8ce302
Do not save the language as request lang for apps when we didn't find any 2016-05-04 08:28:13 +02:00
Thomas Müller 4b2544925f Merge pull request #23844 from owncloud/disable-user
Add occ commands to enable and disable a user + a disabled user can n…
2016-05-03 15:22:41 +02:00
Roeland Jago Douma fc82047e26
Move OC_Log_xx to \OC\Log namespace 2016-05-03 08:57:26 +02:00
Lukas Reschke adf7e7295e Merge pull request #24375 from owncloud/archive_move
Move OC_Archive to \OC\Archive and PSR-4
2016-05-03 08:37:01 +02:00
Roeland Douma c87bd0432a Merge pull request #24380 from owncloud/move-activity-manager-to-namespace
Move activity manager to the namespace
2016-05-03 07:40:04 +02:00
Roeland Jago Douma 0cb434686c
Move OC_Archive_XX to PSR-4
* Fix code
* Fix tests
2016-05-02 19:32:51 +02:00
Thomas Müller 05cf552f66 Merge pull request #24322 from owncloud/install-and-uninstall-repair-steps
Adding repair steps for install and uninstall
2016-05-02 17:50:29 +02:00
Roeland Douma b84825f030 Merge pull request #24229 from owncloud/session-id-wrapper
add ISession::getId() wrapper for session_id
2016-05-02 16:49:38 +02:00
Joas Schilling 7bfc617b03
Move activity manager to the namespace 2016-05-02 11:57:24 +02:00
Joas Schilling 3397e27657
Remove the password from the validateUserPass() method as well 2016-05-02 10:44:09 +02:00
Thomas Müller 9c9fec36dd
Add occ commands to enable and disable a user + a disabled user can no longer login - fixes #23838 2016-05-02 09:31:22 +02:00
Thomas Müller e049953d1a
OC_Installer -> \OC\Installer 2016-05-02 08:52:06 +02:00
Thomas Müller e59ccc5fe9 Merge pull request #24299 from owncloud/availability-avoid-concurrency
Prevent concurrent storage availability checks
2016-04-29 17:43:31 +02:00
Thomas Müller 66ebc2ee6f Merge pull request #24337 from owncloud/add-db-group-for-required-tests
Add the DB group for preview tests that require the database
2016-04-29 15:02:27 +02:00
Vincent Petry 6571da1519 Merge pull request #24305 from owncloud/update-show-repair-step-progress
[Update] show repair step progress ...
2016-04-29 13:47:15 +02:00
Joas Schilling a85be14b62
Add the DB group for tests that require the database 2016-04-29 09:30:47 +02:00
Bernhard Posselt 4c1b55be92 allow app developers to specify the minimum int size
simplify comparison

remove additional null

fix off by 1 error
2016-04-28 22:55:15 +02:00
Thomas Müller 0e774e0fd8 Merge pull request #24274 from owncloud/async-repair-steps
Introduce background repair steps
2016-04-28 14:11:43 +02:00
Thomas Müller bbd2a07525
Remove emitter from class Repair 2016-04-28 13:52:01 +02:00
Robin McCorkell 77cec29b10 Prevent concurrent availability checks 2016-04-26 22:30:09 +01:00
Lukas Reschke ddbebe91f0 Merge pull request #24246 from owncloud/local-invalid
error out if a local storage isn't setup correctly
2016-04-26 20:57:56 +02:00
Robin Appelman 2f01c83a01 add tests 2016-04-26 16:08:52 +02:00
Christoph Wurst e93bf80b29
throw SessionNotAvailableException if session_id returns empty string 2016-04-26 14:51:21 +02:00
Thomas Müller 2ee7d2485c
Introduce background repair steps 2016-04-26 11:56:56 +02:00
Morris Jobke 23e7ad7a78 Merge pull request #24256 from owncloud/scanner-propagate
triger the propagator from the command line scanner
2016-04-26 10:05:39 +02:00
Robin Appelman 61054df36d triger the propagator from the command line scanner 2016-04-25 17:23:48 +02:00
Thomas Müller c7542c02db
Introduce OCP\Migration\IRepairStep and adopt all repair steps to this new interface - refs #24198 2016-04-25 15:01:13 +02:00
Christoph Wurst 0d53e86421
add ISession::getId() wrapper for session_id 2016-04-25 10:36:24 +02:00
Thomas Müller 8c7c713e86 Merge pull request #24187 from owncloud/fs-initmountpoint-rethrowifusernotfoundagain
Mark $usersSetup only if user was found in initMountPoints
2016-04-22 17:25:40 +02:00
Roeland Jago Douma 4eebccd81f
Fix inconsistent nameing of AppFramework 2016-04-22 16:00:00 +02:00
Thomas Müller cc4efc4c03 Merge pull request #24085 from owncloud/feedback-on-app-migrations
App migration steps need to push feedback to the user ....
2016-04-22 14:39:11 +02:00
Vincent Petry 13c01e62cf
Mark $usersSetup only if user was found in initMountPoints
initMountPoints is marking a user as successfully initialized too
early. If the user was not found an NoUserException was thrown, the
second time initMountPoints is called would not rethrow the exception
and happily continue.

This fix makes sure that we consistently throw NoUserException when
initMountPoints is called repeatedly with invalid users.
2016-04-22 14:29:41 +02:00
Thomas Müller 43323b0062 Merge pull request #24183 from owncloud/change-background-job-sort-order
Change the sort order of background jobs to be DESC instead of ASC
2016-04-22 13:33:54 +02:00
Vincent Petry 085bcd7da2
Throw NoUserException when attempting to init mount point for null user
In some scenarios initMountPoints is called with an empty user, and
also there is no user in the session.

In such cases, it is unsafe to let the code move on with an empty user.
2016-04-22 11:46:33 +02:00
Joas Schilling 04cee6a7db
Change the sort order of background jobs to be DESC instead of ASC
In theory, if your instance ever creates more jobs then your system cron can
handle, the default background jobs get never executed anymore. Because
everytime when the joblist returns the next job it looks for the next ID,
however there is always a new next ID, so it will never wrap back to execute
the low IDs. But when we change the sort order to be DESC, we make sure that
these low IDs are always executed, before the system jumps back up to
execute the new IDs.
2016-04-22 10:49:55 +02:00
Thomas Müller d0030aad6c
Remove deprecated HTTPHelper from InfoParser 2016-04-22 08:38:41 +02:00
Lukas Reschke 06a4da43ec
[master] Ignore certificate file if it starts with file:// 2016-04-21 19:02:31 +02:00
Vincent Petry b50d3255fb Merge pull request #22791 from owncloud/enc_master_key_improvements
Enc master key improvements
2016-04-21 11:48:26 +02:00
Thomas Müller cd01c440a0 Merge pull request #23919 from owncloud/cyclyc-share-dep-example
SharedStorage to new sharing code + cleanup
2016-04-20 20:37:27 +02:00
Thomas Müller cdcabbd0b3 Merge pull request #24098 from owncloud/fix_23782
When calling file_put_contents clear the checksum
2016-04-20 20:37:01 +02:00
Thomas Müller aa33ab0c03 Merge pull request #24094 from owncloud/move_dummy_group_backend_to_test
Move the group dummy backend to test
2016-04-20 11:55:00 +02:00
Roeland Jago Douma 0dbcbc4cae
When the scanner detects a file is changed clear checksum
Fixes #23782 and #23783

If the file scanner detects a changed file we clear the checksum while
we update the cache.

* Unit test added
2016-04-19 20:20:45 +02:00
Thomas Müller 5b2ef92eb2 Merge pull request #24004 from owncloud/dont-transfer-files-to-not-ready-user
Introduce isReadyForUser and verify in file transfer ownership
2016-04-19 15:56:47 +02:00
Roeland Jago Douma dd7e0d13e5
Move the group dummy backend to test
The dummy backend is only used for testing and should thus reside in
tests.
2016-04-19 15:13:31 +02:00
Roeland Jago Douma 92abb5f23d
Fix tests 2016-04-19 14:04:00 +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
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 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
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 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
Lukas Reschke ef93ec8bc2
Add test 2016-04-12 21:32:40 +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
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
Roeland Jago Douma 2a0244df27
Fix mappertest 2016-04-08 15:23:09 +02:00
Roeland Jago Douma f9ade49c7e
Fix notification tests 2016-04-08 15:23:06 +02:00
Roeland Jago Douma e65e7a5ad7
Fix ShareManager tests 2016-04-08 15:22:57 +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
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
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
Stefan Weil 02e226a6b3 tests: Fix typos (found by codespell)
Fix also a small grammar issue.

Signed-off-by: Stefan Weil <sw@weilnetz.de>
2016-04-06 15:08:27 +02:00
Roeland Douma 93b1768eb7 Merge pull request #23819 from owncloud/move-core-completely-to-psr4
Move OC/Core completely to PSR-4
2016-04-06 13:31:44 +02:00
Lukas Reschke 5a0c936f99
Remove OC/Settings from old autoloader 2016-04-06 11:34:53 +02:00
Lukas Reschke c952adabb5
Remove OC/Core autoloading from old autoloader 2016-04-06 11:34:29 +02:00
Jörn Friedrich Dreyer 4445ef82e0 Test locking with strange filename 2016-04-05 16:13:28 +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
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
Roeland Jago Douma 8da48a4482 Add unit tests
Add some unit tests for setting the internal id and the provider id
2016-03-30 23:08:35 +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
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 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
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 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
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
Roeland Jago Douma 52826d0e24 Block group sharing in API and in share manager
* Fix tests
2016-03-22 17:13:34 +01:00
Joas Schilling dcca20a48a Save the query when we get tags for no objects 2016-03-22 11:13:11 +01:00
Robin Appelman 0b0b3253bb properly use fileinfo objects 2016-03-21 14:20:33 +01:00
Robin Appelman 5e6c905a14 pass the fileinfo to the node if available 2016-03-21 13:53:33 +01:00
Morris Jobke 76455204c0 Inject server root - allows proper testing and separation of concerns 2016-03-18 13:59:44 +01:00
Bjoern Schiessle 5e267589d4 only create and update user specific key if no master key is enabled 2016-03-18 11:06:14 +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 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
Robin Appelman 0aa83511a1 remove old share propagation entries from appconfig 2016-03-15 12:50:22 +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
Joas Schilling 2f67aa9bc4 Fix errors in memcached implementation 2016-03-14 12:39:34 +01:00
Robin Appelman 54e750ba78 dont die when we cant save the resized avatar, log instead 2016-03-11 13:44:35 +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
Roeland Jago Douma 7301b43eb6 Added tests
* Unit tests for OC_Filechunking to verify the isComplete function
* Intergration tests to show that shuffling chunks is all fine
2016-03-07 21:20:13 +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
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
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
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
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 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
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
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
Joas Schilling fb8b34bdd0 Allow defining a limit and offset for getObjectIdsForTags 2016-02-23 09:04:15 +01:00
Joas Schilling 24c7f38a00 Make sure we can store strings as per the interface 2016-02-22 15:43:20 +01:00
Thomas Müller f8677628d4 Merge pull request #22503 from owncloud/issue_22500
When (re-)sharing an incomming federated share set the corrent owner
2016-02-19 16:07:43 +01:00
Thomas Müller b5281b61ed Merge pull request #22410 from owncloud/fix_22119
Do not copy skeleton on avatar access
2016-02-19 16:06:40 +01:00
Roeland Jago Douma 2dcf887cce When (re-)sharing an incomming federated share set the corrent owner
Incomming federated shares are a special kind. We mount them as normal
webdav shares but we do supply owner info with the federated cloud id of
the share owner.

Since we do not yet have the new resharing behaviour on federated shares
we need to set the correct owner. Which will allow sharing and proper
mounting for other users.

fixes #22500
2016-02-19 12:43:03 +01:00
v1r0x ec6e8c1ab6 fix unit test 2016-02-18 12:39:19 +01:00
Thomas Müller c6fef52939 Merge pull request #22416 from owncloud/fix_22402
Return proper error string if sharing for this user is disabled
2016-02-16 13:37:22 +01:00
Thomas Müller d5226c88ac Merge pull request #22338 from owncloud/fix_22247
Allow more characters in filenames
2016-02-16 13:37:07 +01:00
Roeland Jago Douma ed6843e87b Return proper error string if sharing for this user is disabled
Fixes #22402
2016-02-16 10:22:49 +01:00
Roeland Jago Douma 47d28155a8 Do not copy skeleton on avatar access
Fixes #22119

Just try to get the folder of the user. If it is not there a
NotFoundException will be thrown. Which will be handled by the avatar
endpoint.
2016-02-16 09:18:38 +01:00
Morris Jobke 7048d428b1 Remove unneeded parameter from OC_App::getEnabledApps 2016-02-15 13:33:07 +01:00
Thomas Müller 248c571c56 Merge pull request #22331 from owncloud/dav-nonexisting-part
fix getNodeForPath for non existing part files
2016-02-13 18:24:00 +01:00
Thomas Müller 207c09c511 Merge pull request #22309 from owncloud/infinite-recursion-on-expired-link
Do not getShare in deleteShare, it's already there when deleting
2016-02-12 11:11:26 +01:00
Thomas Müller e99c4d83dc Merge pull request #22317 from owncloud/fix_invisible_linkshares
Do not allow invisible link shares
2016-02-12 11:10:58 +01:00
Roeland Jago Douma 759b19775d Fix unit tests 2016-02-12 07:49:36 +01:00
Robin Appelman c3e4ced64a fix getNodeForPath for non existing part files 2016-02-11 17:22:40 +01:00
Roeland Jago Douma 4533cb9c59 Add parent for invisible link shares 2016-02-11 13:29:23 +01:00
Joas Schilling 8cfdc62eae Update info checker requirements 2016-02-11 11:54:13 +01:00
Roeland Jago Douma 2aa206e900 Fix unit tests 2016-02-11 11:21:12 +01:00
Björn Schießle 9bb97c714b fixing unit tests 2016-02-09 23:43:26 +01:00
Thomas Müller 29f6f451a9 Merge pull request #22192 from owncloud/fix_19685
Only set the default expiration date on share creation
2016-02-09 23:38:00 +01:00
Thomas Müller 2982017682 Merge pull request #22228 from owncloud/comments-limit-message
Limit comment message to 1k chars
2016-02-09 16:35:23 +01:00
Roeland Jago Douma ee65cd0bd8 Only set the default expiration date on share creation
Fixes #19685

The default expiration date should only be set when we create a new
share. So if a share is created and the expiration date is unset. And
after that the password is updated the expiration date should remain
unset.
2016-02-09 11:05:14 +01:00
Arthur Schiwon 347ad3e223 Limit comment message to 1k chars 2016-02-09 03:14:30 +01:00
Arthur Schiwon cd00751de5 Send events when enabling and disabling of apps 2016-02-09 02:51:12 +01:00
Roeland Jago Douma fad85ad19f Fix unit tests 2016-02-08 11:30:48 +01:00
Roeland Jago Douma 8486d61764 getSharesBy should also expire link shares 2016-02-06 13:31:54 +01:00
Roeland Jago Douma 3028ec5440 Delete expired share when fetched by id 2016-02-06 13:31:54 +01:00
Roeland Jago Douma 5ed56d9edb Delete a link share if it is expired on access
If we access a link share we should check if it has expired already.
If so we should remove it and throw a ShareNotFound exception
2016-02-06 13:31:54 +01:00
Thomas Müller 5832178f59 Merge pull request #22139 from owncloud/comments-files-cleanup
cleanup jobs for comments and comment read marks
2016-02-06 13:26:00 +01:00
Joas Schilling 065141f6f4 Move casting to IExpressionBuilder 2016-02-05 21:26:30 +01:00
Robin Appelman fb76d7de69 remove unused Storage->getLocalFolder 2016-02-05 16:48:08 +01:00
Roeland Jago Douma 169874957a Path should be relative 2016-02-04 19:19:10 +01:00
Roeland Jago Douma b57aac0a89 [Share 2.0] Add missing post_update_permissions hook 2016-02-04 19:18:25 +01:00
Thomas Müller d8faeab421 Merge pull request #21766 from farukuzun/master
Add some mimetypes
2016-02-04 16:49:31 +01:00
Thomas Müller 1619968a03 Merge pull request #22111 from owncloud/use-intermediate-certificate
Use intermediate root authority + sign other release channels
2016-02-04 16:17:47 +01:00
Roeland Jago Douma 0f22a8db1d Also add type (file/folder) to IShare object
We need this for the hooks :(
2016-02-04 14:28:09 +01:00
Roeland Jago Douma 2c0cb5a00e Unit test for delete lazy shares 2016-02-04 13:30:42 +01:00
Roeland Jago Douma e0bc128eb5 Add unit tests 2016-02-04 13:05:05 +01:00
Roeland Jago Douma fc215d0980 Make the share object lazy
Share providers can now just pass in a fileId. And the node will only be
created once needed.
2016-02-04 12:51:23 +01:00
Faruk Uzun 6ffd8f3e0d Introduce some mimetypes for richdocuments
* application/vnd.lotus-wordpro
* application/vnd.visio
* application/vnd.wordperfect
* application/msonenote
2016-02-04 13:48:21 +02:00
Thomas Müller b594aa18ee Merge pull request #22110 from owncloud/comment-types-always-plural
types shall always be plural
2016-02-04 10:55:49 +01:00
Lukas Reschke 5f300ac275 Allow specifing the signing path 2016-02-03 20:08:40 +01:00
Arthur Schiwon 9370491822 types shall always be plural 2016-02-03 19:28:15 +01:00
Roeland Jago Douma 96662c4d0d [Share 2.0] Fix shareManager 2016-02-03 19:25:29 +01:00
Roeland Jago Douma eb904c7aa9 [Share 2.0] Fix defaultshare provider 2016-02-03 19:25:29 +01:00
Thomas Müller 74abbbc0d6 Merge pull request #22098 from owncloud/cleanup-core-apps
Cleanup core apps
2016-02-03 14:17:10 +01:00
Joas Schilling 599eb141b4 Make sure tests don't leave a stray directory behind 2016-02-03 12:57:22 +01:00
Roeland Jago Douma dc32f49c6e [Share 2.0] Use GenericShareException 2016-02-02 14:23:45 +01:00
Roeland Jago Douma 4d7130ad31 [Share 2.0] Add exceptions to OCP 2016-02-02 14:07:11 +01:00
Thomas Müller ce053b9808 Merge pull request #22013 from owncloud/share2_moveshare
[Share 2.0] Allow moving of shares
2016-02-02 13:34:50 +01:00
Thomas Müller 2d1d89ee29 Merge pull request #22049 from owncloud/issue-22041-activities-for-systemtags
Issue 22041 activities for systemtags
2016-02-02 13:08:01 +01:00
Thomas Müller eee6f3d406 Merge pull request #22057 from owncloud/share2_update_hash
Update old password hashed for link shares on access
2016-02-02 12:37:31 +01:00
Thomas Müller c9006d6d56 Merge pull request #21988 from owncloud/allow-search-in-synced-addressbooks
Allow search in synced addressbooks
2016-02-02 12:37:12 +01:00
Roeland Jago Douma 2316cb1f8b [Share 2.0] Allow moving of shares
* Only recipient can move a share
* Unit tests
2016-02-02 11:34:52 +01:00
Thomas Müller b01d50216e The local address book is replaced now by the system addressbook as part of the dav app 2016-02-02 10:56:33 +01:00
Roeland Jago Douma 403547f0ea [Share 2.0] Allow recipient to be passed in to getShareById
* This allows us to retrieve usergroup shares for a given id.
  If the user deleted a share or moved it this will be a different share
2016-02-02 10:41:57 +01:00
Joas Schilling d5126b1ad4 Dispatch events when tags are added/updated/deleted 2016-02-02 09:57:42 +01:00
Joas Schilling 591613fce2 Dispatch some events when tags are un-/assigned 2016-02-02 09:57:42 +01:00
Roeland Jago Douma 619a4d2e52 Update old password hashed for link shares on access
Fixes https://github.com/owncloud/core/issues/16594
2016-02-01 21:46:32 +01:00
Thomas Müller b4853f3fce Merge pull request #21967 from owncloud/comments-webdav
Comments WebDAV adjustements
2016-02-01 16:17:45 +01:00
Thomas Müller 84d9704121 Merge pull request #22028 from owncloud/share_hook_expirationdate
Share hook expirationdate
2016-02-01 14:13:54 +01:00
Thomas Müller 32067ac49b Merge pull request #21989 from owncloud/make-csp-modifiable
Add public API to give developers the possibility to adjust the global CSP defaults
2016-02-01 10:10:40 +01:00
Thomas Müller a025b2865f Merge pull request #22022 from owncloud/share_ocs_filter_path_sharedwithme
Add path filter to OCS Share API shared_with_me=true
2016-02-01 09:00:31 +01:00
Roeland Jago Douma d3e79f3bb6 Add Unit tests 2016-01-30 15:40:35 +01:00
Thomas Müller 67bf225fbe Merge pull request #21956 from owncloud/cross-cache-move
Add fallback moveFromCache implementation
2016-01-29 17:03:16 +01:00
Roeland Jago Douma a24e7f6558 Add path filter to OCS Share API ?shared_with_me=true
This allows all clients to quickly get the share info for a given path.
Instead of returning everything and filtering it then manually on the
client side.
2016-01-29 15:36:23 +01:00
Arthur Schiwon 01cdc70f9c introduce comments read marke tables, comes with user cleanup after deletion 2016-01-29 13:08:02 +01:00
Arthur Schiwon d2882b9021 Comments WebDAV adjustements 2016-01-29 13:08:02 +01:00
Robin Appelman ec3f6549f6 Add fallback moveFromCache implementation 2016-01-29 13:06:59 +01:00
Roeland Jago Douma 1ff4ec1cd3 [Share 2.0] When deleting a group share delete children
For group shares we can have children. Those are custom shares when a
user has moved or deleted a group share. Those also have to be deleted
if the group share is removed.
2016-01-28 20:35:46 +01:00
Lukas Reschke 809ff5ac95 Add public API to give developers the possibility to adjust the global CSP defaults
Allows to inject something into the default content policy. This is for
example useful when you're injecting Javascript code into a view belonging
to another controller and cannot modify its Content-Security-Policy itself.
Note that the adjustment is only applied to applications that use AppFramework
controllers.

To use this from your `app.php` use `\OC::$server->getContentSecurityPolicyManager()->addDefaultPolicy($policy)`,
$policy has to be of type `\OCP\AppFramework\Http\ContentSecurityPolicy`.

To test this add something like the following into an `app.php` of any enabled app:
```
$manager = \OC::$server->getContentSecurityPolicyManager();
$policy = new \OCP\AppFramework\Http\ContentSecurityPolicy(false);
$policy->addAllowedFrameDomain('asdf');
$policy->addAllowedScriptDomain('yolo.com');

$policy->allowInlineScript(false);
$manager->addDefaultPolicy($policy);
$policy = new \OCP\AppFramework\Http\ContentSecurityPolicy(false);
$policy->addAllowedFontDomain('yolo.com');
$manager->addDefaultPolicy($policy);

$policy = new \OCP\AppFramework\Http\ContentSecurityPolicy(false);
$policy->addAllowedFrameDomain('banana.com');
$manager->addDefaultPolicy($policy);
```

If you now open the files app the policy should be:

```
Content-Security-Policy:default-src 'none';script-src yolo.com 'self' 'unsafe-eval';style-src 'self' 'unsafe-inline';img-src 'self' data: blob:;font-src yolo.com 'self';connect-src 'self';media-src 'self';frame-src asdf banana.com 'self'
```
2016-01-28 18:36:46 +01:00
Thomas Müller b7710ab6d7 Merge pull request #21858 from owncloud/getMountsForFileId
add IUserMountCache->getMountsForFileId
2016-01-28 11:20:42 +01:00
Roeland Jago Douma 34e912ab6b [Share 2.0] Fix interfaces and comments
* Made comments more clear
* Removed unneeded methods
* IShares shareTime is now a proper DateTime object
* IShares getPath -> getNode & setPath -> setNode
* Fix unit tests
2016-01-28 07:54:09 +01:00
Roeland Jago Douma f2e70441e4 [Share 2.0] Add getShareManager to OCP\IServerContainer 2016-01-27 22:04:37 +01:00
Roeland Jago Douma 185b9c6edd [Share 2.0] Move IShare to OCP 2016-01-27 22:04:37 +01:00
Roeland Jago Douma 0832cca54e [Share 2.0] Fix IShare 2016-01-27 22:04:09 +01:00
Lukas Reschke cb1a64b949 Check whether ownCloud is installed
ownCloud might not yet be setup. This causes an issue as the user config requires a setup ownCloud. Thus this needs a block whether ownCloud is installed or not.

Fixes https://github.com/owncloud/core/issues/21955
2016-01-27 18:30:18 +01:00
Thomas Müller 6973718fb8 Merge pull request #21940 from owncloud/share2_do_not_returned_removed_group_shares
[Share 2.0] Properly handle user deleted group shares
2016-01-27 16:16:06 +01:00
Joas Schilling 2563c3ffaf Fix failing oracle and postgres tests 2016-01-27 12:53:44 +01:00
Robin Appelman 644a8ab797 add IUserMountCache->getMountsForFileId 2016-01-27 12:53:44 +01:00
Thomas Müller 1594371c8c Merge pull request #21741 from owncloud/l10n-improvements
Move methods to the factory that are not related to translating, but to guessing/finding the language
2016-01-27 09:37:00 +01:00
Thomas Müller 5b7a1b13f3 Merge pull request #21887 from owncloud/share2_updateShare
[Sharing 2.0] update share
2016-01-27 09:36:41 +01:00
Thomas Müller c274f03e12 Merge pull request #21906 from owncloud/querybuilder-clob-comparison
Querybuilder clob comparison
2016-01-27 09:36:21 +01:00
Roeland Jago Douma a4900d721f [Share 2.0] Properly handle user deleted group shares
If a user deletes a group share we create a special share entry. To the
API this is just a normal group share for that user with permissions 0.
But we should not return this.
2016-01-27 09:02:12 +01:00
Roeland Jago Douma d11682dcb4 Fix comments from Thomas 2016-01-26 15:31:52 +01:00
Joas Schilling 7514695399 Fix Oracle comparisons 2016-01-26 14:56:07 +01:00
Joas Schilling bd444ae3c3 Add tests for clob comparisons 2016-01-26 14:56:07 +01:00
Roeland Jago Douma c090d709e7 We must resolve to the proper usergroup share 2016-01-26 14:14:54 +01:00
Joas Schilling f413b3ff3a Add tests for findAvailableLanguages 2016-01-26 14:02:32 +01:00
Joas Schilling 70396581eb Add tests for findLanguage() 2016-01-26 14:02:32 +01:00
Joas Schilling fe411788b7 Remove tests for wrapper 2016-01-26 14:02:31 +01:00
Joas Schilling b24b198a83 Add tests for the factory 2016-01-26 14:02:31 +01:00
Joas Schilling 8f9cc51559 Add tests for the new l10n class 2016-01-26 14:02:31 +01:00
Joas Schilling 1199619518 Move legacy test file to new location 2016-01-26 14:02:31 +01:00
Joas Schilling 2cb26a9151 Fix the tests 2016-01-26 14:02:31 +01:00
Joas Schilling 043625ee52 Move findLanguage() and setLanguageFromRequest() to factory 2016-01-26 14:02:31 +01:00
Roeland Jago Douma 44c073b1e6 [share 2.0] manager unit tests 2016-01-26 13:59:58 +01:00
Roeland Jago Douma 59c2aae54f [Share 2.0] Fix unit tests 2016-01-26 13:59:58 +01:00
Roeland Jago Douma 7239fea0f0 [Share 2.0] Add unit test for the default share provider 2016-01-26 13:59:58 +01:00
Thomas Müller 5285460669 Merge pull request #21845 from owncloud/sync-system-addressbook-on-avatar-change
Changing the avatar of the user emits the changeUser event which trig…
2016-01-26 11:37:17 +01:00
Thomas Müller 2bafb1c649 Merge pull request #21894 from owncloud/refactor-csrf
Add new CSRF manager for unit testing purposes
2016-01-26 11:36:56 +01:00
Thomas Müller a1ca9de0f5 Trigger change on avatar delete 2016-01-25 20:56:04 +01:00
Thomas Müller 68ef6e1bdd Assert that User::triggerChange is called upon avatar change 2016-01-25 20:05:11 +01:00
Thomas Müller f165ad8864 Changing the avatar of the user emits the changeUser event which triggers update of the system addressbook 2016-01-25 20:05:11 +01:00
Lukas Reschke a977465af5 Add new CSRF manager for unit testing purposes
This adds a new CSRF manager for unit testing purposes, it's interface is based upon https://github.com/symfony/security-csrf. Due to some of our required custom changes it is however not possible to use the Symfony component directly.
2016-01-25 20:03:40 +01:00
Thomas Müller 728caf13f8 Adding support of -1 as size to be passed into get and getFile 2016-01-25 16:54:40 +01:00
Thomas Müller 99e9c81c8b Merge pull request #21841 from owncloud/share2_deletefromself
[Share 2.0] Add deleteFromSelf method
2016-01-22 17:27:17 +01:00
Thomas Müller 7731b29136 Merge pull request #21719 from owncloud/move-notification-api-to-ocp
Move the notification API to public namespace
2016-01-22 16:20:26 +01:00
Roeland Jago Douma a6600e95dc [Share 2.0] Add deleteFromSelf method
This allows recipient to delete a share. For user shares this is the
same as deleting (at least for now).
But for group shares this means creating a new share with type 2. With
permissions set to 0.
2016-01-22 15:06:50 +01:00
Thomas Müller 9b4c9a0357 Merge pull request #18531 from owncloud/ext-user-credentials
External storage 'Login credentials' auth mechanism
2016-01-22 13:14:14 +01:00
Thomas Müller 0bccdbc959 Merge pull request #21849 from owncloud/add-custom-marker-into-htaccess
Add custom marker into htaccess and execute integrity check after installation
2016-01-22 13:13:59 +01:00
Thomas Müller e3013a99ef Merge pull request #21816 from owncloud/require-a-specific-path-instead-of-autoguessing
Use path instead of app id for occ app signing
2016-01-22 13:13:41 +01:00
Lukas Reschke bc62aa1ef5 Exclude .htaccess modifications from code checker
After the initial installation ownCloud will write some content into the .htaccess file such as the 404 or 403 directives. This adds a magic marker into the .htaccess file and only the content above this marker will be compared in the integrity checker.
2016-01-22 11:51:54 +01:00
Thomas Müller 1410120758 Merge pull request #20768 from owncloud/mount-cache
cache mountpoints in the db
2016-01-22 11:01:54 +01:00
Joas Schilling ee02165005 Move the notification API to public namespace 2016-01-22 10:32:42 +01:00
Thomas Müller e2e5eedb40 Merge pull request #21824 from owncloud/list-of-notifiers
Make it possible to get a list of notifiers for a potential settings …
2016-01-22 10:24:46 +01:00
Joas Schilling 3cca8498cb Make it possible to get a list of notifiers for a potential settings page 2016-01-22 08:47:21 +01:00
Roeland Jago Douma 9b5ea18ce5 Add Unit tests for the default share provider 2016-01-21 16:06:12 +01:00
Thomas Müller e2f231d051 Merge pull request #21761 from owncloud/share2_link
Share2 link
2016-01-21 15:43:08 +01:00
Thomas Müller 7c7467fe42 Merge pull request #21792 from owncloud/systemtags-managerfactory
Allow custom implementation of system tag managers
2016-01-21 12:13:01 +01:00
Roeland Jago Douma 88bc8634d2 Add Unit tests 2016-01-20 21:56:55 +01:00
Lukas Reschke ea367b598a Use path instead of app id
This change requires the usage of a path instead of the App ID when signing code. This has the advantage that developers can also sign code under a different location to make it easier. (e.g. remove `.git`, …)

Also it adds an example command usage as well as a link to the documentation
2016-01-20 20:38:18 +01:00
Vincent Petry 899f9bd113 Allow custom implementation of system tag managers
Added config.php option to replace the default implementation of system
tag manager and system tag object mapper.

Also adjusted the comments manager factory to inject the server container
2016-01-20 16:36:10 +01:00
Robin Appelman 99415a9f7f multiple minor fies 2016-01-20 16:32:52 +01:00
Robin Appelman 222e719c87 sort in tests 2016-01-20 16:30:22 +01:00
Robin Appelman 8940429976 log duplicates 2016-01-20 16:30:22 +01:00
Robin Appelman cf6ee1c866 cache mountpoints in the db 2016-01-20 16:30:22 +01:00
Thomas Müller aeb89947a2 Introduce IUser::setEMailAddress and add hook mechanism 2016-01-20 14:57:20 +01:00
Roeland Jago Douma 7a946a05f5 Properly DI the servercontainer 2016-01-20 08:33:36 +01:00
Morris Jobke 930555bd5e properly use standard
* JEDEC standard - https://en.wikipedia.org/wiki/JEDEC_memory_standards#Unit_prefixes_for_semiconductor_storage_capacity
2016-01-19 10:41:12 +01:00
Thomas Müller 14c98b4df7 Merge pull request #21519 from owncloud/propagate-folder-size
propagate folder size in the same query for write updates
2016-01-18 16:57:30 +01:00
Robin Appelman 7ba715d144 fix test 2016-01-18 12:08:58 +01:00
Robin McCorkell da4127d23b Introduce CredentialsManager for storage of credentials in DB
CredentialsManager performs a simple role, of storing and retrieving
encrypted credentials from the database. Credentials are stored by user
ID (which may be null) and credentials identifier. Credentials
themselves may be of any type that can be JSON encoded.

The rationale behind this is to avoid further (mis)use of
oc_preferences, which was being used for all manner of data not related
to user preferences.
2016-01-18 11:10:41 +01:00
Robin McCorkell 88cd615214 Introduce IDBConnection::setValues()
setValues() attempts to insert a new row, or failing that, update an
existing row. The ability to set preconditions is also available.
2016-01-18 11:10:41 +01:00
Thomas Müller 807cf750b3 Merge pull request #21705 from owncloud/improve-background-job-message
Improve background job error message
2016-01-15 20:12:26 +01:00
Robin Appelman ddbbe1742f propagate folder size in the same query for write updates 2016-01-15 15:36:52 +01:00
Thomas Müller f6c4b10189 Add message key to context of logException 2016-01-15 14:55:30 +01:00
Thomas Müller b37634a57d Merge pull request #21721 from owncloud/capped-memcache-indirect-set
Allow indirect set in CappedMemoryCache
2016-01-15 12:37:36 +01:00
Thomas Müller d8867f7692 Merge pull request #21723 from owncloud/prevent-group-enable-for-apps
Prevent group enable for apps
2016-01-15 12:26:43 +01:00
Thomas Müller 52040a3f23 Merge pull request #20898 from owncloud/cache-interfaces
Public Cache interfaces
2016-01-15 12:02:31 +01:00
Joas Schilling e3a0858444 Check whether the app can be enabled for groups 2016-01-14 15:45:48 +01:00
Robin Appelman d195584a32 Allow indirect set in CappedMemoryCache 2016-01-14 15:00:41 +01:00
Robin Appelman d2c579e167 fix quota wrapper 2016-01-14 12:54:42 +01:00
Robin Appelman 62d383e1ba fix tests 2016-01-14 12:54:42 +01:00
Roeland Jago Douma 0f454ff5aa Use namedparameter 2016-01-14 10:54:40 +01:00
Morris Jobke 86f08f59d6 use logException() to properly log the exception 2016-01-14 10:40:23 +01:00
Morris Jobke 64c8427d81 Improved error message for failing background job 2016-01-14 09:49:40 +01:00
Roeland Jago Douma 4cc2230c58 [Share 2.0] Fix pre_share and post_share hooks 2016-01-13 21:56:04 +01:00
Roeland Jago Douma 5f5951c8cf [Share 2.0] Let the factory do the factory stuff
* Updated unit tests (bit cleaner now)
2016-01-13 16:35:15 +01:00
Roeland Jago Douma cbd3050f4c [Share 2.0] Use full share id (providerId:shareId)
Now that we support multiple managers we communicate shares to the
outside as 'providerId:shareId'. This makes sures that id's are unique
when references from the OCS API.

However, since we do not want to break the OCS API v1 we need to
somewhat hack around this.

When we switch to OCS API v2 (which we should when we support more
custom providers). We will change the id to always be the fullShareId.
2016-01-13 16:35:15 +01:00
Roeland Jago Douma 67b7ebccd1 [Share 2.0] Add share provider factory
* Add providers
* Add share manager to server container
* Use share manager from server container
* Properly get the share manager
2016-01-13 16:35:14 +01:00
Roeland Jago Douma b4de427c1e [Share 2.0] Allow registering of share providers
* Properly register the default share provider
2016-01-13 16:35:07 +01:00
Thomas Müller 3ee3d02a76 Merge pull request #20018 from owncloud/cache_group_backend
The group database backend should cache groups
2016-01-13 15:58:21 +01:00
Lukas Reschke 0c65f4b2c6 Fix unit test
No idea why they passed locally before as well on the branch on the PR. Scary...
2016-01-13 11:22:44 +01:00
Thomas Müller 37e8a87d46 Merge pull request #21591 from owncloud/add-code-checking-for-apps
Verify signature of apps with level "Official" coming from the appstore
2016-01-13 10:35:00 +01:00
Thomas Müller 5565b19382 Merge pull request #21648 from owncloud/smb-statcache-cap
cap the number of entries we cache in smb's statcache
2016-01-13 10:33:43 +01:00
Lukas Reschke 08e73d2c8f Add hidden config switch to disable code integrity checking
This adds a hidden config flag that allows somebody to disable the code integrity check. If `integrity.check.disabled` is set to `true` in the config file:

1. The integrity check functions will return always an empty result
2. The integrity check is not performed when installing apps
3. The integrity check is not performed when updating apps
4. The integrity check is not performed when updating the core

Furthermore this adds support for a list of channels that the code checker will run on. At the moment this is only stable because I didn't want to break any build scripts that we have. Once we have a proper CA setup and updated the build process to sign the releases we can add the RC, alpha, beta as well as daily releases. So everything except "git" basically.
2016-01-12 18:48:36 +01:00
Robin Appelman d8d6368dd7 cap the number of entries we cache in smb's statcache 2016-01-12 13:26:58 +01:00
Robin Appelman c15cab7ed6 Allow admins to add system wide root certificates 2016-01-12 12:50:59 +01:00
Thomas Müller 3ec8789c77 Merge pull request #21628 from owncloud/deprecated_secure_random_funcions
Replace deprecated function calls to SecureRandom
2016-01-12 09:12:13 +01:00
Roeland Jago Douma 3c8f4784e9 Inject DBConnection
* Use query builder
* Minor unit tests additions
2016-01-12 08:24:08 +01:00
Roeland Jago Douma 07fd3889b1 Fix unit tests 2016-01-11 20:29:48 +01:00
Roeland Jago Douma 876fb83ddc getMediumStrengthGenerator is deprecated and does not do anything anymore 2016-01-11 20:06:30 +01:00
Roeland Jago Douma 98c4951f45 getLowStrengthGenerator does not do anything anymore 2016-01-11 19:59:15 +01:00
Roeland Jago Douma eccd9ca1cb Remove unused deprecated function 2016-01-11 16:41:46 +01:00
Roeland Jago Douma e01a488b31 Remove generateRandomBytes from OC_Util 2016-01-10 22:07:33 +01:00
Lukas Reschke c009d5dcc1 Verify signature of apps with level "Official" coming from the appstore
This change will verify the signature of all apps with the level "Official" coming from the appstore or if they have been signed before.
2016-01-10 19:40:28 +01:00
Thomas Müller a1a8a06042 Merge pull request #21527 from owncloud/remove_all_avatars
Remove all cache avatars on avatar deletion
2016-01-08 09:41:25 +01:00
Roeland Jago Douma 4e6f6518ff Remove all cache avatars on avatar deletion
Fixes #21513

Since we cache the generated avatars. We should also delete the
generated sizes when we remove the avatar.
2016-01-07 20:51:18 +01:00
Thomas Müller 1cc6fddead Merge pull request #21498 from owncloud/cleanup-OC_DB
Cleanup OC_DB methods
2016-01-07 20:13:16 +01:00
Thomas Müller f6f492ba4e Merge pull request #21502 from owncloud/di_mimetypedetector
Add 'OCP\Files\IMimeTypeDetector' to DI container
2016-01-07 16:18:55 +01:00
Thomas Müller 9ca670f94f Merge pull request #21505 from owncloud/allow-downgrades-for-brave-developers
Allow downgrades for our brave developers, that switch between branches
2016-01-07 16:03:36 +01:00
Thomas Müller 601457d221 Merge pull request #20773 from owncloud/share2.0_create
[Sharing 2.0] create share
2016-01-07 14:57:05 +01:00
Morris Jobke 190cc2bb67 Remove OC_DB::getConnection 2016-01-07 14:54:55 +01:00
Morris Jobke fddece9552 Remove OC_DB::insertid 2016-01-07 14:54:55 +01:00
Morris Jobke 547fbfdb76 Remove OC_DB::dropTable 2016-01-07 14:54:54 +01:00
Joas Schilling fd7ed93937 Allow downgrades for our brave developers, that switch between branches 2016-01-07 14:18:33 +01:00
Roeland Jago Douma cd35ad6aaa Add 'OCP\Files\IMimeTypeDetector' to DI container
* Added test to server container as well
2016-01-07 13:20:43 +01:00
Morris Jobke 604897945b Move lib/repair to lib/private/repair 2016-01-07 09:14:35 +01:00
Roeland Jago Douma 1358e5dcd9 [Sharing 2.0] Some error cases report 404 instead of 403 2016-01-06 15:25:29 +01:00
Roeland Jago Douma 26280e1f19 [Sharing 2.0] Add L10N instance to manager for translated errors 2016-01-06 14:53:43 +01:00
Roeland Jago Douma b15be8f96f [Share 2.0] Make the share manager ready for share creation 2016-01-06 14:53:43 +01:00
Roeland Jago Douma a08c497808 [Share 2.0] Make share provider ready for create shares 2016-01-06 14:53:43 +01:00
Lukas Reschke 836e96a95e Assign DB group for unit tests 2016-01-04 15:09:01 +01:00
Lukas Reschke fec41e7539 Move regeneration of session ID into session classes
There were code paths that nowadays call ISession::login directly thus bypassing the desired regeneration of the session ID. This moves the session regeneration deeper into the session handling and thus ensures that it is always called. Furthermore, I also added the session regeneration to the remember me cookie plus added some test case expectations for this.
2016-01-04 15:09:01 +01:00
Thomas Müller 24271cf953 Merge pull request #21216 from owncloud/fopen-statcache
Clear SMB statcache after fopen
2015-12-28 10:21:26 +01:00
Roeland Jago Douma b2df7b6b8a Fix unit test 2015-12-24 09:20:26 +01:00
Bernhard Posselt 23c754aed3 prefer scalar type hints over phpdoc annotation
use method exists lookup to be safe and not break on old hhvm versions

add test that checks if type hint is preferred over annotation
2015-12-24 09:20:26 +01:00
Vincent Petry d7169ffdec Restore DB connection after failure
In case of failure, PHPUnit seems to skip `tearDown`, so any useful
assertion messages cannot be shown because `tearDownAfterClass` is
throwing an error because of database usage.

This commit makes sure we also restore the database in
`tearDownAfterClass` to prevent the data root restoration to fail
2015-12-21 18:14:29 +01:00
Thomas Müller 0b913f00c7 Merge pull request #21289 from owncloud/issue-20399-keep-periodic-background-jobs
Do not delete background jobs, in case an exception occured
2015-12-21 09:47:07 +01:00
Thomas Müller 6cdaf754b2 Merge pull request #21290 from owncloud/public-api-usage-getversion
Use OCP\Util::getVersion instead of the internal private implementation
2015-12-18 16:07:01 +01:00
Morris Jobke ed98cdf532 Use OCP\Util::getVersion instead of the internal private implementation 2015-12-18 15:26:54 +01:00
Thomas Müller 36cc0528e3 Merge pull request #21288 from owncloud/deprecated_helper_mimetypes
Remove deprecated OC_Helper mimetype functions
2015-12-18 15:23:05 +01:00
Joas Schilling 54558bb5b2 Fix the test to expect the new behaviour 2015-12-18 15:05:32 +01:00
Thomas Müller a743047e82 Merge pull request #21283 from owncloud/cleanup_config
Cleanup OC_Config mess
2015-12-18 14:54:38 +01:00
Thomas Müller 50e8773307 Merge pull request #21280 from owncloud/drop-unused-methods
OC_Helper::makeURLAbsolute is not used anymore
2015-12-18 14:49:55 +01:00
Thomas Müller 22d1b1285e Merge pull request #21277 from owncloud/querybuild-joblist
Use the query builder for the joblist queries
2015-12-18 13:44:02 +01:00
Roeland Jago Douma a54be132fc Removed deprecated unsused function OC_Helper::getStringMimeType 2015-12-18 13:43:44 +01:00
Roeland Jago Douma 4f20e3bac0 Removed deprecated OC_Helper::getSecureMimeType 2015-12-18 13:42:59 +01:00
Morris Jobke 450e2f3bd3 Move OC_Helper code to OCP\Util for linkToRemote 2015-12-18 12:00:18 +01:00
Roeland Jago Douma 0a09004d39 Inject Config into SystemConfig 2015-12-18 11:53:41 +01:00
Morris Jobke e42f262d85 properly use OCP\Util instead of OC_Helper 2015-12-18 11:46:21 +01:00
Morris Jobke 3d55569a27 OC_Helper::makeURLAbsolute is not used anymore 2015-12-18 11:37:18 +01:00
Morris Jobke a18c0983d5 Use TempManager instead of tmpFile 2015-12-18 11:25:33 +01:00
Morris Jobke 90b0831cec Use TempManager instead of tmpFolder 2015-12-18 11:19:53 +01:00
Thomas Müller 9e97bef935 Merge pull request #21268 from owncloud/cleanup-OC_Helper-getFileNameMimeType
Use proper public API for OC_Helper::getFileNameMimeType
2015-12-18 10:15:33 +01:00
Thomas Müller 551e553bf4 Merge pull request #21264 from owncloud/deprecated_oc_user_methods
Cleanup OC_User deprecated methods
2015-12-18 10:15:18 +01:00
Joas Schilling 345e68cafa Use the query builder for the joblist queries 2015-12-18 09:50:23 +01:00
Thomas Müller 2709244acd Only perform tearDown operations on the database if we have a connection to it ..... 2015-12-17 17:29:50 +01:00
Thomas Müller 8f6a257f1b Use proper base class 2015-12-17 17:29:17 +01:00
Thomas Müller 26f416b9f5 Assert that there are no xml error left 2015-12-17 17:18:42 +01:00
Morris Jobke ecdf88e41b Use proper public API for OC_Helper::getFileNameMimeType 2015-12-17 17:07:48 +01:00
Roeland Jago Douma 1f715289bf Removed deprecated function OC_User::deleteUser
Replaced with proper OCP calls
2015-12-17 16:18:40 +01:00
Roeland Jago Douma 835911bce5 Removed deprecated private OC_User::createUser
All function calls are replaced with the recommended (which was already
the body of the function).
2015-12-17 16:18:40 +01:00
Roeland Jago Douma 7e44ea5da0 Remove deprecated function OC_User::getManager
Private deprecated function => removed
Replaced all instances with suggested replacement
2015-12-17 16:18:34 +01:00
Thomas Müller e3ed42135d Merge pull request #21240 from owncloud/avatar_speedup
Avatar speedup
2015-12-17 14:43:21 +01:00
Roeland Jago Douma 205c239eab Remove deprecated OC_Helper::linkTo function 2015-12-17 11:51:40 +01:00
Roeland Jago Douma d796c43841 [Avatars] Add function to get the Node of the avatar
Since we usually just get the avatar and stream the content to the users
there is no need to first create an image in memory.
2015-12-16 20:29:02 +01:00
Robin Appelman 38a2467a4f test for statcache after fopen 2015-12-15 13:48:17 +01:00
Björn Schießle efc030aa25 don't allow to create a federated share if source and target server are the same 2015-12-14 17:16:14 +01:00
Thomas Müller f831d93f3f Merge pull request #20878 from owncloud/proper-htaccess-support-in-code-signing-checker
Also run .htaccess routine when installing on another system than Apache
2015-12-11 11:46:37 +01:00
Thomas Müller 6317ba8cb4 Merge pull request #21135 from owncloud/add-polyfill
Add polyfills for PHP55, PHP56 and PHP70 functionalities
2015-12-11 11:40:51 +01:00
Lukas Reschke f3360d51c6 Use PHP polyfills 2015-12-11 08:47:36 +01:00
Scrutinizer Auto-Fixer ffc49a24f0 Scrutinizer Auto-Fixes
This commit consists of patches automatically generated for this project on https://scrutinizer-ci.com
2015-12-10 16:43:37 +01:00
Thomas Müller df15d54db6 Merge pull request #21072 from owncloud/db-lock-ttl
Remove all locks after ttl from the db
2015-12-10 13:51:18 +01:00
Lukas Reschke 29b6a03fc1 Add assertion to test
This seems to be missing on that test.
2015-12-10 09:29:24 +01:00
Arthur Schiwon 81d763be42 use expectedException annotation, not via method call, for consistency 2015-12-09 16:55:07 +01:00
Arthur Schiwon fdd06ba1f8 use getLastInsertId from query builder for convenience 2015-12-09 16:33:34 +01:00
Robin Appelman e191953942 Remove all locks after ttl from the db 2015-12-09 14:53:24 +01:00
Arthur Schiwon 8e298f51f8 adjust test's fakemanager to interface change 2015-12-09 14:38:01 +01:00
Arthur Schiwon 0c1c029571 hardening, add some checks for whitespace-only strings 2015-12-09 14:34:23 +01:00
Arthur Schiwon 8acbb7aef9 rework test about overwriting default comments manager 2015-12-09 14:34:23 +01:00
Arthur Schiwon d3692c3283 namespaces for tests 2015-12-09 14:34:23 +01:00
Arthur Schiwon 9a440c06b0 OC not oc 2015-12-09 14:34:23 +01:00
Arthur Schiwon e3dbc3d40c different strategy in cleaning up after user was deleted
we do not listen to deletion hooks anymore, because there is no guarantee that they
will be heard - requires that something fetches the CommentsManager first.

Instead, in the user deletion routine the clean up method will be called directly. Same way
as it happens for files, group memberships, config values.
2015-12-09 14:34:23 +01:00
Arthur Schiwon 2ce2de0ae5 add icommentsmanger and icomment implementation
register CommentsManager service, allow override, document in config.sample.php

don't insert autoincrement ids in tests, because of dislikes from oracle and pgsql

specify timezone in null date

only accepts strings for ID parameter that can be converted to int

replace forgotten hardcoded IDs in tests

react on deleted users

react on file deletion

Postgresql compatibility

lastInsertId needs *PREFIX* with the table name

do not listen for file deletion, because it is not reliable (trashbin, external storages)

add runtime cache for comments
2015-12-09 14:34:23 +01:00
Thomas Müller 5c95939bf3 Merge pull request #21061 from owncloud/fix-oracle-last-insert-id-test
Fix the last insert id test by changing to an autoincremen…
2015-12-09 11:53:43 +01:00
Thomas Müller bc744ff6de Merge pull request #21038 from owncloud/share-computesharepermissions-notstore
Fix (re)share permission checks in a few code paths
2015-12-09 10:04:56 +01:00
Joas Schilling 5c0be3b565 Fix the last insert id test by changing to an autoincrement table 2015-12-09 09:51:33 +01:00
Vincent Petry 28e9bc1156 Fix more unit tests to pass a mock storage instead of null to FileInfo 2015-12-08 16:33:39 +01:00
Thomas Müller 45fe8271ab Merge pull request #21030 from owncloud/querybuilder-new-features
Querybuilder new features
2015-12-08 13:51:45 +01:00
Thomas Müller 85409b6701 Merge pull request #20786 from owncloud/systemtags-dav
DAV endpoint for system tags
2015-12-08 13:51:25 +01:00
Joas Schilling 9f98849306 Add a method to the get "to use" table and column name 2015-12-08 11:04:28 +01:00
Thomas Müller fe8dc0bd5e Merge pull request #21022 from owncloud/get-rid-of-by-reference
Get rid of by reference
2015-12-08 11:04:25 +01:00
Joas Schilling a3391248e4 Add select distinct to the query builder 2015-12-08 09:49:21 +01:00
Joas Schilling f2c7acb3c0 Allow getting the last insert id without much hassle 2015-12-08 09:40:20 +01:00
Lukas Reschke 6d3eb7673d Add unit test for nested arrays 2015-12-08 09:07:38 +01:00
Lukas Reschke 8289943a0f Do not trust casting 2015-12-08 08:50:00 +01:00
Lukas Reschke 0a89073c47 Run .htaccess updates in any case
This is the same what we also do in updater.php and thus this aligns the code. Makes the code paths more consistent.
2015-12-08 08:16:24 +01:00
Scrutinizer Auto-Fixer 453e1bf66e Scrutinizer Auto-Fixes
This commit consists of patches automatically generated for this project on https://scrutinizer-ci.com
2015-12-07 15:43:36 +00:00
Thomas Müller a9e5faf7d0 Merge pull request #20981 from owncloud/issue-19848-multiple-emails-for-sharelink
Allow sending a share email to multiple users
2015-12-07 15:17:19 +01:00
Joas Schilling 820c3b852d Add a unit test for single user case as well 2015-12-07 12:01:02 +01:00
Joas Schilling 5b87413792 Allow sending a share email to multiple users 2015-12-07 10:49:34 +01:00
Thomas Müller 0c3d97921f Merge pull request #20904 from owncloud/view-mime-filter
Fix mimetype filter in getDirectoryContent
2015-12-07 10:20:43 +01:00
Vincent Petry 316b907a13 Fixed system tags DAV and API and docs 2015-12-04 17:30:50 +01:00
Thomas Müller 602b636d3e Merge pull request #20807 from owncloud/dont-append-redirect-url-if-user-is-already-logged-in
Don't append redirect URL if user is logged-in
2015-12-03 16:53:59 +01:00
Thomas Müller 0fe5506e91 Merge pull request #20921 from owncloud/last-OC_Config-removals-in-tests
Reduce OC_Config usage in tests/
2015-12-03 15:24:41 +01:00
Morris Jobke cbe6eeffa1 last change of OC_Config to the proper interface in tests/ 2015-12-03 14:03:05 +01:00
Thomas Müller 2d1cc8aaeb Merge pull request #19461 from owncloud/reuse_code
reuse code
2015-12-03 13:55:50 +01:00
Morris Jobke 542ce7dd0d Reduce OC_Config usage in tests/ 2015-12-03 13:48:19 +01:00
Robin Appelman 19b2fe6a3a Fix mimetype filter in getDirectoryContent 2015-12-03 13:09:13 +01:00
Morris Jobke e9c8f82fc5 Replace OC_Config in tests with IConfig calls 2015-12-03 09:38:41 +01:00
Thomas Müller c6bda8d6ca Merge pull request #20902 from owncloud/drop-OC_Config-from-tests
Replace OC_Config in tests with IConfig calls
2015-12-03 09:30:47 +01:00
Thomas Müller e7239b6553 Merge pull request #20872 from owncloud/systemtags-better-not-found-exception
Systemtags better not found exception
2015-12-03 09:26:05 +01:00
Thomas Müller a5c80ba8bc Merge pull request #20894 from owncloud/post-delete-meta-view
Also add metadata for postDelete hooks triggered from the view
2015-12-03 09:24:54 +01:00
Morris Jobke d331e0d4f8 Replace OC_Config in tests with IConfig calls 2015-12-02 23:14:52 +01:00
Thomas Müller dcc7ff09ba Adding unit test for MailNotifications::sendInternalShareMail() 2015-12-02 21:42:14 +01:00
Thomas Müller eebe2b9c23 User IUser::getEMailAddress() all over the place 2015-12-02 21:25:05 +01:00
Thomas Müller df5872ec50 Merge pull request #20719 from owncloud/adding-system-addressbook-of-users
Adding system addressbook for users of this instance - a occ command …
2015-12-02 16:17:58 +01:00
Thomas Müller 28ceab2f61 Fix endless recursion 2015-12-02 14:44:41 +01:00
Robin Appelman 0062888aaf Also add metadata for postDelete hooks triggered from the view 2015-12-02 13:51:26 +01:00
Thomas Müller 8d218bf3ef Merge pull request #20875 from owncloud/remove-changepropagator
remove old propagation logic
2015-12-02 13:03:31 +01:00
Thomas Müller c46ea30248 Merge pull request #20865 from owncloud/post-delete-meta
Add metadata to post delete hooks
2015-12-02 10:12:54 +01:00
Thomas Müller 0391cc0451 Fix getCloudId 2015-12-02 09:14:41 +01:00
Thomas Müller fe67db1ad0 Adding unit test for User::getCloudId() 2015-12-02 09:14:41 +01:00
Thomas Müller df6fc6cc70 Add the user's cloud id to the vCard 2015-12-02 09:14:41 +01:00
Thomas Müller dad6470baa Add IUser::getAvatarImage() for easy access 2015-12-02 09:14:41 +01:00
Roeland Jago Douma b00db2c933 DI in avatar code
* DI in avatar code
* Use the node API
* More unit tests
* Unit tests no longer require DB
2015-12-01 22:15:43 +01:00
Robin Appelman 62cc316c6a remove old propagation logic 2015-12-01 16:50:20 +01:00
Lukas Reschke 2515cb17be Support pretty URLs
This changeset allows ownCloud to run with pretty URLs, they will be used if mod_rewrite and mod_env are available. This means basically that the `index.php` in the URL is not shown to the user anymore.

Also the not deprecated functions to generate URLs have been modified to support this behaviour, old functions such as `filePath` will still behave as before for compatibility reasons.

Examples:
http://localhost/owncloud/index.php/s/AIDyKbxiRZWAAjP => http://localhost/owncloud/s/AIDyKbxiRZWAAjP
http://localhost/owncloud/index.php/apps/files/ => http://localhost/owncloud/apps/files/

Due to the way our CSS and JS is structured the .htaccess uses some hacks for the final result but could be worse... And I was just annoyed by all that users crying for the removal of `index.php` ;-)
2015-12-01 16:46:07 +01:00
Joas Schilling 08d07cc4db Fix the unit test by running tearDown() and cleaning tags before the test 2015-12-01 15:00:44 +01:00
Joas Schilling 1d0c041ac8 Add a method to get the list of tags from the TagNotFound Exception 2015-12-01 14:54:34 +01:00
Robin Appelman 0d63e95a5d Add metadata to post delete hooks 2015-12-01 13:22:58 +01:00
Lukas Reschke 4971015544 Add code integrity check
This PR implements the base foundation of the code signing and integrity check. In this PR implemented is the signing and verification logic, as well as commands to sign single apps or the core repository.

Furthermore, there is a basic implementation to display problems with the code integrity on the update screen.

Code signing basically happens the following way:

- There is a ownCloud Root Certificate authority stored `resources/codesigning/root.crt` (in this PR I also ship the private key which we obviously need to change before a release 😉). This certificate is not intended to be used for signing directly and only is used to sign new certificates.
- Using the `integrity:sign-core` and `integrity:sign-app` commands developers can sign either the core release or a single app. The core release needs to be signed with a certificate that has a CN of `core`,  apps need to be signed with a certificate that either has a CN of `core` (shipped apps!)  or the AppID.
- The command generates a signature.json file of the following format:
```json
{
    "hashes": {
        "/filename.php": "2401fed2eea6f2c1027c482a633e8e25cd46701f811e2d2c10dc213fd95fa60e350bccbbebdccc73a042b1a2799f673fbabadc783284cc288e4f1a1eacb74e3d",
        "/lib/base.php": "55548cc16b457cd74241990cc9d3b72b6335f2e5f45eee95171da024087d114fcbc2effc3d5818a6d5d55f2ae960ab39fd0414d0c542b72a3b9e08eb21206dd9"
    },
    "certificate": "-----BEGIN CERTIFICATE-----MIIBvTCCASagAwIBAgIUPvawyqJwCwYazcv7iz16TWxfeUMwDQYJKoZIhvcNAQEF\nBQAwIzEhMB8GA1UECgwYb3duQ2xvdWQgQ29kZSBTaWduaW5nIENBMB4XDTE1MTAx\nNDEzMTcxMFoXDTE2MTAxNDEzMTcxMFowEzERMA8GA1UEAwwIY29udGFjdHMwgZ8w\nDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBANoQesGdCW0L2L+a2xITYipixkScrIpB\nkX5Snu3fs45MscDb61xByjBSlFgR4QI6McoCipPw4SUr28EaExVvgPSvqUjYLGps\nfiv0Cvgquzbx/X3mUcdk9LcFo1uWGtrTfkuXSKX41PnJGTr6RQWGIBd1V52q1qbC\nJKkfzyeMeuQfAgMBAAEwDQYJKoZIhvcNAQEFBQADgYEAvF/KIhRMQ3tYTmgHWsiM\nwDMgIDb7iaHF0fS+/Nvo4PzoTO/trev6tMyjLbJ7hgdCpz/1sNzE11Cibf6V6dsz\njCE9invP368Xv0bTRObRqeSNsGogGl5ceAvR0c9BG+NRIKHcly3At3gLkS2791bC\niG+UxI/MNcWV0uJg9S63LF8=\n-----END CERTIFICATE-----",
    "signature": "U29tZVNpZ25lZERhdGFFeGFtcGxl"
}
```
`hashes` is an array of all files in the folder with their corresponding SHA512 hashes (this is actually quite cheap to calculate), the `certificate` is the  certificate used for signing. It has to be issued by the ownCloud Root Authority and it's CN needs to be permitted to perform the required action. The `signature` is then a signature of the `hashes` which can be verified using the `certificate`.

Steps to do in other PRs, this is already a quite huge one:
- Add nag screen in case the code check fails to ensure that administrators are aware of this.
- Add code verification also to OCC upgrade and unify display code more.
- Add enforced code verification to apps shipped from the appstore with a level of "official"
- Add enfocrced code verification to apps shipped from the appstore that were already signed in a previous release
- Add some developer documentation on how devs can request their own certificate
- Check when installing ownCloud
- Add support for CRLs to allow revoking certificates

**Note:** The upgrade checks are only run when the instance has a defined release channel of `stable` (defined in `version.php`). If you want to test this, you need to change the channel thus and then generate the core signature:

```
➜  master git:(add-integrity-checker) ✗ ./occ integrity:sign-core --privateKey=resources/codesigning/core.key --certificate=resources/codesigning/core.crt
Successfully signed "core"
```

Then increase the version and you should see something like the following:

![2015-11-04_12-02-57](https://cloud.githubusercontent.com/assets/878997/10936336/6adb1d14-82ec-11e5-8f06-9a74801c9abf.png)

As you can see a failed code check will not prevent the further update. It will instead just be a notice to the admin. In a next step we will add some nag screen.

For packaging stable releases this requires the following additional steps as a last action before zipping:
1. Run `./occ integrity:sign-core` once
2. Run `./occ integrity:sign-app` _for each_ app. However, this can be simply automated using a simple foreach on the apps folder.
2015-12-01 11:55:20 +01:00
Thomas Müller 08248f66ba Merge pull request #20650 from owncloud/systemtags-core
Implement systemtag managers and mapper
2015-11-30 15:38:43 +01:00
Joas Schilling b8b0ae0944 Fix phpstorm complains in tests 2015-11-30 13:36:22 +01:00
Thomas Müller b94aadc440 Cleanup imports and type hinting 2015-11-30 12:45:30 +01:00
Lukas Reschke f4eb15d340 Show error template
Otherwise this leads to an endless redirection in case of a CSRF exception. Also sets user expectation right.
2015-11-30 11:25:52 +01:00
Thomas Müller dddfa6de78 Don't break app on travis 2015-11-30 10:55:13 +01:00
Thomas Müller 318e5e2864 More group DB 2015-11-30 10:55:13 +01:00
Thomas Müller f9fc254672 Add DB group to some files_external tests
Adding group Db to federation tests and ldap tests

Add group DB to Test_UrlGenerator

Adding group DB to trashbin and versions tests

Adding group DB to Test_Util_CheckServer for pg
2015-11-30 10:55:10 +01:00
Thomas Müller 757aa45db7 Adding more DB groups to test suits
Adding more DB groups to test suits
2015-11-30 10:55:06 +01:00
Thomas Müller 56170dd825 Further unit test suite tweats 2015-11-30 10:55:05 +01:00
Thomas Müller 1480964768 Adding more test suites to group DB 2015-11-30 10:55:05 +01:00
Thomas Müller 7e71d8231e Mock DIContainer to not hit the database 2015-11-30 10:55:05 +01:00
Thomas Müller 3bb6dcea64 Apply DB group annotation ... 2015-11-30 10:55:05 +01:00
Thomas Müller 03ee3b9aec A TestCase which is not annotated to be in group DB will not allow access to the database connection.
This is necessary to categorize unit test and avoid duplicate test case execution - it also allows us to closely review unit test implementations to identify unnecessary db calls.
2015-11-30 10:55:05 +01:00
Joas Schilling 24d5ce9a58 Add phpunit group for tests 2015-11-30 10:25:53 +01:00
Thomas Müller 9c1dbaf0ad Merge pull request #20788 from owncloud/catch-missing-route
Dont die when we're missing a route
2015-11-30 10:11:12 +01:00
Robin Appelman 4c4331982c Merge pull request #20789 from owncloud/scanner-skip-not-available
Skip unavailable storages in scanner
2015-11-27 22:57:47 +01:00
Vincent Petry b666367a79 Added system tags data structure and PHP side managers
Added SystemTagManager and SystemTagObjectMapper
2015-11-27 17:54:29 +01:00
Robin Appelman aa822f76e2 fix tests 2015-11-27 17:05:58 +01:00
Robin Appelman ae71f80f4a Skip unavailable storages in scanner 2015-11-27 14:02:50 +01:00
Mitar e0e51fd79f Added tests. 2015-11-27 02:45:49 -08:00
Thomas Müller 8fe878afe9 Merge pull request #20602 from owncloud/fix-installed-apps
Always installed apps includes the hardcoded ones from shipped.json
2015-11-26 16:50:05 +01:00
Thomas Müller 80c43ffc6c Merge pull request #20702 from owncloud/move-user-principal-into-subfolder
Users are available under it's own principal resource named 'principa…
2015-11-26 16:49:49 +01:00
Thomas Müller 19d5059109 Merge pull request #20393 from owncloud/querybuilder-select-with-alias
Add a method to select a field or value with alias
2015-11-26 16:19:20 +01:00
Thomas Müller 3882cc8ef3 Merge pull request #20744 from owncloud/oc_helper-getMimeType-cleanup
Remove last occurences of OC_Helper::getMimeType()
2015-11-26 12:37:25 +01:00
Thomas Müller 5a33390a69 Merge pull request #20731 from owncloud/per-storage-updater
Make Cache\Updater per storage
2015-11-26 12:01:44 +01:00
Morris Jobke 4fcab98694 Remove unused internal methods
* removes OC_Helper::mb_substr_replace and OC_Helper::mb_str_replace
* keeps public interface wrapper working as expected
2015-11-26 10:25:43 +01:00
Morris Jobke 9318606faf Remove last occurences of OC_Helper::getMimeType()
* ref #4774
2015-11-26 10:18:32 +01:00
Thomas Müller b799e42b4e Introduce \OCP\IUser::getEMailAddress() 2015-11-25 22:23:34 +01:00
Thomas Müller 9ec2f8886e Merge pull request #20691 from owncloud/share2.0_di_fixes
[Sharing 2.0] di fixes
2015-11-25 15:25:50 +01:00
Robin Appelman b025f07fb7 Make Cache\Updater per storage 2015-11-25 14:16:00 +01:00
Thomas Müller 50f6817ce9 Merge pull request #20439 from owncloud/etag-propagate-in-storage
Take submount etag into account for folder etags
2015-11-25 12:49:54 +01:00
Roeland Jago Douma a2b8483779 [Sharing 2.0] Default share provider only generic DI
No injection of userfolders etc. Only generic DI components
(IRootFolder) etc should be used to make sure we can also run this from
the cli
2015-11-24 10:26:36 +01:00
Roeland Jago Douma aeae73b364 [Sharing 2.0] Removed unused DI stuff
The share manager etc should not care about filtering stuff. They should
return what is asked for them.
2015-11-24 10:26:36 +01:00
Joas Schilling 018bd3ee24 Make sure that object id can be a string 2015-11-23 14:18:15 +01:00
Thomas Müller df906f475b Merge pull request #20617 from owncloud/fix-usage-of-lastInsertId
lastInsertId() is properly working with Oracle if the table name is p…
2015-11-23 13:29:08 +01:00
Thomas Müller 240cc1c4ea Merge pull request #20543 from owncloud/share2.0_fix_hooks
Move hook and delete children logic to share manager
2015-11-23 13:28:49 +01:00
Joas Schilling 1c7d7288c4 Add a method to select a field or value with alias 2015-11-23 13:28:31 +01:00
Morris Jobke bc69cb2de3 fix unit tests 2015-11-23 13:13:26 +01:00
Roeland Jago Douma 1360e22d7c [Sharing 2.0] Move hook and delete children logic to share manager
To make sure hooks are always fired and child entries are always
cleaned. This logic is moved to the share manager.

* Updated unit tests
2015-11-23 12:28:54 +01:00
Thomas Müller 9f69021691 lastInsertId() is properly working with Oracle if the table name is properly passed in 2015-11-23 11:44:08 +01:00
Joas Schilling a370c29068 Use a DateTime object instead of a timestamp 2015-11-23 11:41:48 +01:00
Morris Jobke 32ab973254 add unit tests for OC_Util::add* methods 2015-11-23 11:03:09 +01:00
Thomas Müller 358858c9e3 Fix undefined HTTP_USER_AGENT 2015-11-22 16:05:50 +01:00
Thomas Müller 427d107b9f Merge pull request #20614 from owncloud/use-mocks-when-testing-isSharingDisabledForUser
Use mocks when testing isSharingDisabledForUser
2015-11-20 15:22:52 +01:00
Thomas Müller c565a7b042 Fix failing unit test 💀 2015-11-19 16:44:43 +01:00
Thomas Müller 9ec2850c78 Use mocks when testing isSharingDisabledForUser 2015-11-19 15:36:16 +01:00
Robin Appelman a95d4c2b22 update tests 2015-11-19 13:32:04 +01:00
Robin Appelman 888df3933d take the etag of child mounts into account for the folder etag
this replaces shared etag propagation
2015-11-19 13:32:00 +01:00
Joas Schilling 0b8335ff2f Make the JobList test more robust by sorting the result of getAll before comparison 2015-11-19 09:25:34 +01:00
Thomas Müller 8db9c49cda Merge pull request #20551 from owncloud/notification-fix-tests
Notification - Add tests for the "return $this" and fix it on the new method
2015-11-18 09:12:27 +01:00
Thomas Müller 74ce6d29e1 Merge pull request #20544 from owncloud/move-index-to-appframework
Move index.php from files to AppFramework
2015-11-17 12:49:38 +01:00
Joas Schilling 2fde6a77d7 Add tests for the "return $this" and fix it on the new method 2015-11-17 09:26:13 +01:00
Thomas Müller 705d208a8a Merge pull request #20539 from owncloud/notification-api-adjustment
Notification api update
2015-11-17 08:39:06 +01:00
Lukas Reschke daa388ce8d Move index.php from files to AppFramework
1. Allows it to use the more secure CSP rules of the AppFramework.
2. Adds some unit tests.
2015-11-16 21:10:11 +01:00
Joas Schilling 40d5d55124 Remove the icon for now 2015-11-16 16:17:23 +01:00
Joas Schilling 1666af89c2 Add "is primary action" to actions 2015-11-16 16:14:52 +01:00
Roeland Jago Douma 1e9fc33212 [Share2.0] OCS Share API getShare uses new code 2015-11-16 13:32:28 +01:00
Christian Schnidrig d0464bf772 enable microseconds in log timestamps 2015-11-12 10:33:20 +01:00
Robin Appelman 20cad09f7f Add tests for FileInfo owner 2015-11-10 11:06:48 +01:00
Robin Appelman 960c8cb5bc Merge pull request #16604 from owncloud/cache-escape-like
escape like parameter in cache operations
2015-11-10 09:45:00 +01:00
Roeland Jago Douma 87e3402ef5 Fix autoloader unit test output
Removed leftover print statement
2015-11-09 15:54:40 +01:00
Roeland Jago Douma 0bb5eadf89 [autoloader] Make sure to load construct full paths
This reduces a lot of the autoloader magic and makes sure that we
generate full paths in the autoloader.
2015-11-06 13:36:19 +01:00
Thomas Müller cc4f4f222d Merge pull request #20348 from owncloud/issue-20303-integer-group-names
Make sure that group names are strings not integers
2015-11-06 11:48:40 +01:00
Thomas Müller 8047597a81 Merge pull request #20288 from owncloud/fix_20234
make sure that we update the unencrypted size for the versions
2015-11-06 11:17:17 +01:00
Joas Schilling 292dc553c3 Make sure that group names are strings not integers 2015-11-06 10:40:09 +01:00
Robin Appelman 556fabf15d Add test for special character during move 2015-11-05 16:29:38 +01:00
Roeland Jago Douma 532b8a1ad0 Fix oracle 2015-11-05 15:59:09 +01:00
Roeland Jago Douma 0be05fdddd Add unshare hooks 2015-11-05 15:59:09 +01:00
Roeland Jago Douma 6624fa212a The new sharing code now handles deletion
OCS -> ShareManager -> DefaultShareProvider
2015-11-05 15:59:09 +01:00
Arthur Schiwon 51ead4e59b subadmin methods should not return any null user or group 2015-11-05 11:50:57 +01:00
Björn Schießle 6d0a324144 make sure that we update the unencrypted size for the versions 2015-11-04 10:59:05 +01:00
Thomas Müller 73d9699be9 Merge pull request #20135 from owncloud/check-if-null-subadmin
Drop OC_SubAdmin and replace usages
2015-10-29 17:07:45 +01:00
Thomas Müller 530f7229e7 Merge pull request #19869 from owncloud/cache-adjustcurrentmtimeonrename
On rename, also refresh storage_mtime of the target file
2015-10-29 11:57:00 +01:00
Lukas Reschke c6f6a8758b Drop OC_SubAdmin and replace usages 2015-10-29 11:31:18 +01:00
Joas Schilling 6043f0afdb Use the method 2015-10-29 09:26:26 +01:00
Joas Schilling e5a7e3124a Add a repair step that checks for group membership on shares 2015-10-29 09:26:26 +01:00
Joas Schilling ca2fd30073 Remove shares where the parent does not exist anymore 2015-10-29 09:26:26 +01:00
Vincent Petry f355d4e51a Fix locking unit tests due to filemtime addition 2015-10-26 15:41:23 +01:00
Vincent Petry b900782513 Also adjust storage_mtime of target after rename
Some storages like Dropbox change their mtime on rename...
2015-10-26 15:41:23 +01:00
Lukas Reschke 13e817e901 Throw exception on `getPath` if file does not exist
Currently the `getPath` methods returned `NULL` in case when a file with the specified ID does not exist. This however mandates that developers are checking for the `NULL` case and if they do not the door for bugs with all kind of impact is widely opened.

This is especially harmful if used in context with Views where the final result is limited based on the result of `getPath`, if `getPath` returns `NULL` PHP type juggles this to an empty string resulting in all possible kind of bugs.

While one could argue that this is a misusage of the API the fact is that it is very often misused and an exception will trigger an immediate stop of execution as well as log this behaviour and show a pretty error page.

I also adjusted some usages where I believe that we need to catch these errors, in most cases this is though simply an error that should hard-fail.
2015-10-25 17:58:21 +01:00
Lukas Reschke 8133d46620 Remove dependency on ICrypto + use XOR 2015-10-21 17:33:41 +02:00
Roeland Jago Douma 0e9ab13943 New \OC\SubAdmin class
* DI
* Tests
* moved OC_SubAdmin to legacy
* Added to private OC\GroupManager
2015-10-21 11:32:38 +02:00
Thomas Müller cf9b8fc182 Merge pull request #18184 from owncloud/ocs-merge-headers
Merge headers of ocs results
2015-10-21 10:36:37 +02:00
Jörn Friedrich Dreyer 2895c91291 Merge pull request #17641 from owncloud/fix_objectstore_rename
don't move files in cache twice, fixes renaming for objectstores
2015-10-19 17:18:57 +02:00
Robin Appelman 9c5337ca3e Merge pull request #19833 from owncloud/fix_view_rmdir
Removemount expects absolutePath
2015-10-19 16:22:42 +02:00
Robin Appelman ef179331bb Add tests for double cache rename 2015-10-16 21:41:51 +02:00
Robin Appelman a87368acb9 Skip checkupdate test for swift 2015-10-16 21:41:51 +02:00
Roeland Jago Douma 8fdb12f8fb Check for error when resharing 2015-10-16 20:43:17 +02:00
Roeland Jago Douma 9e86d71cc5 When sharing with the owner show the path
The error message should contain the path that is being shared not the
numeric id.
2015-10-16 20:43:17 +02:00
Roeland Jago Douma d8798877df Added test for rmdir on moveablemount 2015-10-16 16:51:44 +02:00
Thomas Müller 8fa59033ac Fix uni tests 2015-10-16 13:17:12 +02:00
Thomas Müller f2889dc6e4 Consolidate webdav code - move all to one app 2015-10-16 13:17:12 +02:00
Lukas Reschke e0d6bd5b6d Run test only when idn is available
IDN is not installed on all machines making the unit test execution fail on those without. Let's make IDN thus a pre-requirement for the text execution.
2015-10-16 11:02:10 +02:00
Joas Schilling d904a09a04 The constant is now deprecated 2015-10-14 15:29:38 +02:00
Thomas Müller 28d6da8158 Merge pull request #19738 from owncloud/proppatch-lastmodified
Fix mtime PROPPATCH to be "lastmodified" instead of "getlastmodified"
2015-10-14 12:49:33 +02:00
Thomas Müller bfac6c5eb7 Merge pull request #19730 from owncloud/fix_17560
Squash collection shares
2015-10-14 12:38:16 +02:00
Vincent Petry 02513f8d04 Fix mtime PROPPATCH to be "lastmodified" instead of "getlastmodified"
Fix regression that makes PROPPATCH of mtime work like it did in OC <=
8.0.
The PROPPATCH must be done on the "lastmodified" property.
The "getlastmodified" now return 403 again.
2015-10-13 12:51:21 +02:00
Thomas Müller 3891cd9068 Merge pull request #19677 from owncloud/silently-fail-app-upgrade-exceptions-master
Silently fail app upgrade exceptions
2015-10-13 11:04:02 +02:00
Roeland Jago Douma 06aaa059d1 Squash collection shares
If folder1 is shared to user2 and user3. And folder1/folder2 is shared
to user4 and user5 then getting all the users with access to
folder1/folder2 should only list user2 and user 3 once.

Previously this was done twice since we request the info two times.

This fix makes sure that we only append unique results to the array.

* Added test
2015-10-13 10:05:49 +02:00
Lukas Reschke e03f0542e4 Strip directory from scriptName
`\OCP\IRequest::getScriptName` will also return the directory, so if ownCloud is installed in a subfolder such as `owncloud/` it will resolve to `/owncloud/ocs/v2.php`. This made this check fail and also made it return invalid status codes.
2015-10-12 23:39:16 +02:00
Thomas Müller 64a8d01694 Merge pull request #19683 from owncloud/repair-donotrepairfoldermimetypes
Do not update mime types for folders with extension
2015-10-12 15:08:19 +02:00
Bjoern Schiessle 8185eaa6dd also detect files in a .part folder as part file 2015-10-12 13:59:16 +02:00
Thomas Müller 0036c637fc Merge pull request #19657 from owncloud/setup-transport
Setup sendmail transport
2015-10-12 13:44:26 +02:00
Vincent Petry 8098c06e70 Do not update mime types for folders with extension
Some folders might have an extension like "test.conf".
This fix prevents to overwrite the folder's mime type with another mime
type while running the mimetype repair step.
2015-10-09 18:16:36 +02:00
Thomas Müller 4cb5970947 Always pass in ILogger 2015-10-09 14:08:22 +02:00
Jörn Friedrich Dreyer c8640cdcb0 adjust filesystem tests to objectstore 2015-10-09 12:35:37 +02:00
Thomas Müller 020bb33150 Merge pull request #19034 from owncloud/http-request-warning
Prevent warning decoding content
2015-10-08 21:51:47 +02:00
Lukas Reschke 18394205c2 Setup sendmail transport
Replaces https://github.com/owncloud/core/pull/19047 and fixes https://github.com/owncloud/enterprise/issues/854  and https://github.com/owncloud/core/issues/19110
2015-10-08 16:48:18 +02:00
Thomas Müller 17ffa4a244 Merge pull request #19414 from owncloud/swift_primary_storage_tests
Swift primary storage tests
2015-10-08 14:08:56 +02:00
Thomas Müller 2fda4e38e2 Merge pull request #19546 from owncloud/fix-search-for-node-api
Fix search operations for the Node API
2015-10-08 13:17:26 +02:00
Roeland Jago Douma 1ee56c702d [WEBDAV] check if delete of source is allowed on move
Fixes #5251

If we perform a move we need to make sure first that the source can be
deleted. Else the dest might be cleared but the move will fail later.

* Added unit tests

Eventually we need more and better checking here.
2015-10-07 11:58:16 +02:00
Jörn Friedrich Dreyer 5646e39248 test objectstore with ceph docker
use default config for swift primary storage test config

allow testsuite to complete

fix timeout, script cleanup, enable debug for now

use btrfs loopback device, requires privileged container and absolute path

throw exception when storage has problems

debug by echo ...

sleep more, more debug
2015-10-06 16:27:25 +02:00
Robin Appelman e28a2ff888 Add unit test for searching in storage root 2015-10-06 15:54:17 +02:00
Lukas Reschke 80a232da6a Add \OCP\IRequest::getHttpProtocol
Only allow valid HTTP protocols.

Ref https://github.com/owncloud/core/pull/19537#discussion_r41252333 + https://github.com/owncloud/security-tracker/issues/119
2015-10-06 14:18:46 +02:00
Thomas Müller da640adf68 Merge pull request #19577 from owncloud/share-donotreturnentrieswhenusernotingroup
Remove invalid share items from result when missing group membership
2015-10-06 09:24:22 +02:00
Vincent Petry 1c7244c120 Remove invalid share items from result when missing group membership
Group shares usually have subshare entries for every user. In some
situations it can happen that the user was removed from the group but
the subshare entries still exist.

This fix makes sure that such subshare entries are not returned any more
as the user isn't in the group any more.
2015-10-05 17:21:34 +02:00
Joas Schilling ac5b3161e4 Add a unit test for "share a file inside a folder that is already shared" 2015-10-05 12:36:16 +02:00
Thomas Müller 34951efed6 Merge pull request #19574 from owncloud/fix-sharing-tests-assuming-empty-share-table
Clear the shares after the test like storages and files
2015-10-05 11:00:34 +02:00
Thomas Müller 56c35da8d5 Merge pull request #19416 from owncloud/node-hook-connector
pass view hooks trough to the node hooks
2015-10-05 10:25:04 +02:00
Joas Schilling 42b29e39c1 Clear the shares after the test like storages and files 2015-10-05 10:13:45 +02:00
Thomas Müller ff89824135 Merge pull request #19272 from owncloud/mimetypes-enhanced
Introduce a few new mimetypes for code, fix recursive mimetype aliases
2015-10-02 17:50:34 +02:00
Robin Appelman 8bdffb5ed3 Merge pull request #19525 from owncloud/share-preventmovemountpointintosharedfolder
Prevent moving mount point into already shared folder (outgoing)
2015-10-02 16:50:38 +02:00
Vincent Petry 64ca00925b Prevent moving mount point into already shared folder (outgoing)
It is already not allowed to share a folder containing mount points /
incoming shares.

This fixes an issue that made it possible to bypass the check by moving
the incoming share mount point into an existing outgoing share folder.
2015-10-02 16:14:42 +02:00
Roeland Jago Douma c80dd82fe4 Added mimetype repair step
* Version number increased
2015-10-02 16:06:56 +02:00
Morris Jobke 6b53f7c40e [l10n] remove unused static methods 2015-10-02 12:51:45 +02:00
Thomas Müller 8944cb539e Merge pull request #19510 from owncloud/json-grouplist-sharing-exclude
save excluded groups in json format
2015-10-02 12:14:36 +02:00
Thomas Müller b6591084a1 Merge pull request #19463 from owncloud/fix_18132
encryption: versions should always use the keys of the original file, no need to …
2015-10-01 16:56:28 +02:00
Thomas Müller b2dd5cb616 save excluded groups in json format - fixes #10983 2015-10-01 15:37:55 +02:00
Robin Appelman 1c3e28a73b Add tests 2015-10-01 13:17:22 +02:00
Bjoern Schiessle e7232a848b versions should always use the keys of the original file, no need to create new one 2015-10-01 10:10:19 +02:00
Joas Schilling 8f2600a0ea Also delete all shares before the test, so the count matches 2015-10-01 08:32:24 +02:00
Vincent Petry 6e104bc933 Repair step to remove bogus expiration dates from non-link shares 2015-10-01 08:27:12 +02:00
Thomas Müller ff75652cb7 Merge pull request #19299 from owncloud/fixgetRawPathInfo
Fix get raw path info, always return a string
2015-09-30 22:17:02 +02:00
Thomas Müller 1d8c10cf63 Merge pull request #19468 from owncloud/fix-36-vs-32-previews
Change small thumbnails to 32 px
2015-09-30 15:47:34 +02:00
Thomas Müller 10978a7a61 Merge pull request #19373 from owncloud/sidebar-preview-cover
Cover both width and height for the sidebar preview
2015-09-30 11:07:18 +02:00
Morris Jobke 1051a3c6f5 Change small thumbnails to 32 px
* fixes #16913
* fixes issues in IE8 where the thumbnail is too big
2015-09-30 10:49:48 +02:00
Individual IT Services fbe43e6a26 cache result of \OCP\Util::needUpgrade()
reduce calls of \OCP\Util::needUpgrade()
where \OCP\Util::needUpgrade() is called we can call as well
self::checkUpgrade and use the cached result
In line 877 the call way unnecessary anyway because of the first part of
the if statement

move caching to \OCP\Util::needUpgrade

renaming variable

fixing testNeedUpgradeCore()

cache result of checkUpgrade() in self::$needUpgrade

reduce calls of \OCP\Util::needUpgrade()
where \OCP\Util::needUpgrade() is called we can call as well
self::checkUpgrade and use the cached result
In line 877 the call way unnecessary anyway because of the first part of
the if statement

move caching to \OCP\Util::needUpgrade

renaming variable

fixing testNeedUpgradeCore()

fix typo in variable name

deleting tabs
2015-09-29 15:34:42 +02:00
Lukas Reschke e735a9915c Add blob: scheme to default CSP policy
Fixes https://github.com/owncloud/core/issues/19438
2015-09-29 14:27:35 +02:00
Robin Appelman f41a38ba15 Cover both width and height for the sidebar preview 2015-09-29 13:07:03 +02:00
Robin Appelman e21a025887 remove unused use 2015-09-28 17:20:44 +02:00
Robin Appelman 1e5a41f008 Add hook connector to connect view and node hooks 2015-09-28 17:18:40 +02:00
Thomas Müller d68079f932 Merge pull request #18548 from owncloud/repair-mimetype-limitversion
Repair mime types only when upgrading from OC 8.0
2015-09-28 12:56:36 +02:00
Robin Appelman b50d1aae56 rename config test to prevent autoloader issue 2015-09-28 10:47:49 +02:00
Thomas Müller 0aaece7de7 Merge pull request #19346 from owncloud/drop-passwords-from-exception-log
Remove passwords from logged exception stack traces
2015-09-25 20:04:01 +02:00
Roeland Jago Douma 9a373cb5bb Do not blindy copy expiration date on reshare
If a file/folder is reshared we should not blindly copy the expiration
date of the parent share. User/Group shares do not have expiration dates
currently, and thus this is always set to null.

Fixes #19119

* Added testcase
2015-09-25 13:06:05 +02:00
Morris Jobke db8e7ce8b9 Remove passwords from logged exception stack traces
* fixed #16318
* create logException in ILogger
* add unit tests
2015-09-24 20:01:30 +02:00
Thomas Müller ebdd6d96ce Merge pull request #19306 from owncloud/app-code-check-version
[App Code Check] add check for version and mandatory fields
2015-09-24 17:38:48 +02:00
Thomas Müller bf4c144c6f Merge pull request #19335 from owncloud/phil-davis-view-typos
Comment typos in tests/lib/files/view.php
2015-09-24 14:54:21 +02:00
Bjoern Schiessle d697ea58a4 only check if the user exists if a user was added as parameter 2015-09-24 12:21:40 +02:00
Morris Jobke 9b652ed5d5 [App Code Check] add check for version and mandatory fields
* ref #17598
* including unit tests for mandatory fields/versions
2015-09-24 11:58:12 +02:00
Thomas Müller 330ea18996 Merge pull request #19303 from owncloud/usecorrectvariable
Use correct variable
2015-09-24 11:34:19 +02:00
Phil Davis 9f9bdd8f90 Comment typos in tests/lib/files/view.php
Correct a comment typo just introduced at line 892, plus another and some white space at EOL.
2015-09-24 15:01:45 +05:45
Thomas Müller 11974477bd Merge pull request #19326 from owncloud/issue-19314-querybuilder-set-null
Allow `set('column', 'null')` to work like in Doctrine's QueryBuilder
2015-09-24 10:57:49 +02:00
Thomas Müller df75c17e52 Merge pull request #16479 from owncloud/core-fixgetrelativepathwrongmatches
Prevent wrong matches in getRelativePath
2015-09-24 10:25:00 +02:00
Joas Schilling 70572c1e3c Allow `set('column', 'null')` to work like in Doctrine 2015-09-24 09:53:09 +02:00
Jörn Friedrich Dreyer 17ef187681 add is* storage tests 2015-09-23 23:41:39 +02:00
Robin McCorkell ebe9bea709 Unit test for preventing warning decoding content 2015-09-23 14:16:41 +01:00
Jörn Friedrich Dreyer ca8d589f27 use assertSame, add failing case 2015-09-23 12:31:45 +02:00
Thomas Müller bcdb3c26da Merge pull request #19236 from owncloud/call_dot_directories_function
Replaces if ($file === '.' || $file === '..') by public function call isIgnoredDir
2015-09-23 11:34:23 +02:00
Thomas Müller ad71d92acf Merge pull request #19247 from owncloud/fix_locking_copy_operation
locking: handle exceptions correctly during copy operation
2015-09-23 11:28:27 +02:00
Vincent Petry 0bda4d54c5 Repair mime types only when upgrading from OC 8.0 2015-09-23 10:51:37 +02:00
Martin 491250320a Replaces if ($file === '.' || $file === '..') by if(\OC\Files\Filesystem::isIgnoredDir($file)). Eases to find where this operation is used. 2015-09-22 17:53:15 +02:00
Lukas Reschke 63b2bc136a Move mimetype files into /resources/config/ 2015-09-22 16:43:28 +02:00
Joas Schilling d26c49b995 Add more tests for relativePath 2015-09-22 11:34:37 +02:00
Vincent Petry b9cd5bc1dc Prevent wrong matches in getRelativePath
Before this fix, the root "/files" with path "/files_trashbin" would
return "_trashbin" as relative path...
2015-09-22 11:34:37 +02:00
Bjoern Schiessle 17a64360e5 catch excexptions during the copy operation and make sure that we free the lock correctly 2015-09-22 11:32:10 +02:00
Lukas Reschke 36ce254ffd Move dummy backend to Tests namespace 2015-09-22 11:01:11 +02:00
Thomas Müller d8901cf7cd Merge pull request #19221 from owncloud/improved_error_messages
decrypt-all: improved error message if user doesn't exists
2015-09-21 16:06:43 +02:00
Robin Appelman b520a1e520 Merge pull request #19081 from owncloud/prevent0bytedownloads
prevent 0 byte downloads when storage returns false
2015-09-21 13:50:35 +02:00
Bjoern Schiessle d2e90b6050 improved error message if user doesn't exists 2015-09-21 13:19:35 +02:00
Thomas Müller 2c8eaacec7 Merge headers of ocs results 2015-09-21 11:54:46 +02:00
Thomas Müller bbf128f1b2 Merge pull request #19098 from owncloud/db-lock-no-transaction
Remove the need for the transaction in the database locking backend
2015-09-18 17:02:18 +02:00
Thomas Müller d62cffbc9a Merge pull request #18901 from owncloud/encryption-dav-tests
Add tests for doing dav requests with encryption enabled
2015-09-18 14:54:06 +02:00
Lukas Reschke 947e3d7ab5 Add repair step for outdated OCS IDs
There is the case where OCs IDs might become outdated such as it has been with the calendar and contacts app which refer to the old dummy entry. This means that users with the old OCS id can't update updates as well will receive invalid state flags. (e.g. "experimental" instead of "approved")

To allow instances to properly update the applications in the future we need to migrate the OCS IDs for now manually.
2015-09-18 13:27:26 +02:00
Thomas Müller 3ca61db63b Merge pull request #19017 from owncloud/dav-download-tests
Add tests for downloading files over dav
2015-09-18 11:57:28 +02:00
Robin Appelman 485ea316a1 reuse the same datadir 2015-09-18 11:55:15 +02:00
Robin Appelman dc870cb450 Add tests for doing dav requests with encryption enabled 2015-09-18 11:55:15 +02:00
Robin Appelman a3d734f6cd Add trait to enable encryption for a unit test 2015-09-18 11:55:15 +02:00
Robin Appelman e3e78f809d create new mounts every time the mount provider is called
important for storage wrappers
2015-09-18 11:55:15 +02:00
Robin Appelman 5247a0685d clear up tests a bit 2015-09-18 11:55:15 +02:00
Joas Schilling 5eddde6486 Add a Sabre plugin that emits an event for apps 2015-09-17 13:59:27 +02:00
Robin Appelman 05fddec022 expire old lock rows 2015-09-17 13:55:04 +02:00
Robin Appelman 2839ef3439 add unit test 2015-09-17 11:16:00 +02:00
Robin Appelman 3cf4fc02f9 fix tests with empty response body 2015-09-16 15:27:22 +02:00
Robin Appelman 953b64f3f2 Add tests for downloading files over dav 2015-09-16 12:59:15 +02:00
Bjoern Schiessle 9bd4f2d41e occ script to disable encryption and to decrypt all files again 2015-09-15 22:39:44 +02:00
Robin Appelman 9883d5b85d Merge pull request #18915 from owncloud/node-getfoldercontents-use-view-logic
Use the view logic for getFolderContent for the node api
2015-09-15 18:04:01 +02:00
Robin Appelman 9202d2f45a fix chunking tests 2015-09-14 20:35:33 +02:00
Robin Appelman 80f054ddd3 also verify cache in dav upload tests 2015-09-14 20:35:33 +02:00
Robin Appelman 17b671ee25 adjust tests to handle before/after locking 2015-09-14 20:35:33 +02:00
Joas Schilling 2d0f0e898d Only check the "was updated/inserted" when not on Oracle... 2015-09-14 15:27:06 +02:00
Frank Karlitschek 7562e4959b Merge pull request #18658 from owncloud/configurable-temp
Configurable temporary directory
2015-09-12 22:04:41 +02:00
Robin McCorkell 188d0e09b8 Add reset method to mimetype loader
Used to solve concurrency issues
2015-09-11 12:44:53 +01:00
Robin McCorkell 620173c792 Merge pull request #18851 from owncloud/memcached-getallkeys-fallback
Fallback to complete Memcached flush if getAllKeys fails
2015-09-10 20:33:18 +01:00
Lukas Reschke fb717f254f Merge pull request #18699 from owncloud/notification-manager
Notification manager
2015-09-10 15:26:36 +02:00
Morris Jobke 7445afdb6f Merge pull request #18925 from owncloud/change-risky-test
Rename data provider to avoid risky test warning
2015-09-09 16:05:01 +02:00
Lukas Reschke 0943781ccf Rename data provider to avoid risky test warning
```
06:49:56 There was 1 risky test:
06:49:56
06:49:56 1) OC\AppFramework\Http\JSONResponseTest::testRenderProvider
06:49:56 This test did not perform any assertions
```
2015-09-09 12:52:54 +02:00
Lukas Reschke 0b91087489 Write to session in batch at the end of the request 2015-09-09 12:48:37 +02:00
Lukas Reschke e579dd62fd Write session data to single key
This prevents decrypting values multiple times.
2015-09-09 12:48:08 +02:00
Morris Jobke c4c9c5ffad Merge pull request #18684 from owncloud/explicit-upgrade-version
Explicit upgrade version + prevent downgrades
2015-09-09 11:08:55 +02:00
Robin Appelman 9f11b27797 Use the view logic for getFolderContent for the node api 2015-09-08 22:38:50 +02:00
Joas Schilling 38001d824b Move interfaces to private until they are no longer experimental 2015-09-08 09:01:02 +02:00
Joas Schilling 59f37a8dfb Add tests for the query() 2015-09-08 09:01:02 +02:00
Joas Schilling 190d2c3d5b Add tests for the notification manager 2015-09-08 09:01:02 +02:00
Joas Schilling 270b0bd91b Add more action tests 2015-09-08 09:01:02 +02:00
Joas Schilling c6469be8bd Add tests for notification 2015-09-08 09:01:02 +02:00
Joas Schilling acf8149f17 Add tests for Action 2015-09-08 09:01:01 +02:00
Roeland Douma 24f5f50b20 Merge pull request #18742 from owncloud/mimetype-updatedb
Introduce mimetype DB update occ command
2015-09-06 16:56:35 +02:00
Robin McCorkell b64e3f8db6 Fallback to complete Memcached flush if getAllKeys fails
Newer Memcached's do not support the underlying protocol commands that
getAllKeys() is implemented with. We should fallback to clearing
everything in that case, as causing (temporary) performance problems for
other applications on the server is better than having stale cached data.
2015-09-05 20:02:49 +01:00
Robin McCorkell c6314fc699 Unit tests for mimetype loader 2015-09-04 17:37:10 +01:00
Robin McCorkell cdf01f0419 Split mimetype handling to new class 2015-09-04 17:28:20 +01:00
Morris Jobke e54513cddd Merge pull request #18799 from owncloud/appconfig-with-one-request
Only query the appconfig once per request
2015-09-03 16:13:14 +02:00
Joas Schilling 21ba3b8737 Only query the appconfig once 2015-09-03 11:30:57 +02:00
Lukas Reschke f9e90e92d4 Encode HTML tags in JSON
While not encoding the HTML tags in the JSON response is perfectly fine since we set the proper mimetype as well as disable content sniffing a lot of automated code scanner do report this as security bug. Encoding them leads to less discussions and a lot of saved time.
2015-09-03 00:44:46 +02:00
Vincent Petry 87b3e28f06 Merge pull request #18730 from owncloud/appframework_proper_304
Properly return 304 in AppFramework
2015-09-01 15:39:59 +02:00
Robin Appelman e9b91b1798 verify the path in the autoloader 2015-09-01 15:03:28 +02:00
Roeland Jago Douma f12caf930e Properly return 304
The ETag set in the IF_NONE_MODIFIED header is wraped in quotes (").
However the ETag that is set in response is not (yet). Also we need to
cast the ETag to a string.

* Added unit test
2015-09-01 11:04:41 +02:00
Robin McCorkell 5a1619d80d Unit test getting temp dir from config 2015-08-30 23:34:38 +01:00
Robin McCorkell a0dfaf9be3 Clean up TempManager to follow code guidelines
tmpBaseDir can be overridden for unit testing purposes
2015-08-30 23:30:56 +01:00
Bjoern Schiessle 37513f9411 don't read certificates if ownCloud is not installed 2015-08-30 19:00:03 +02:00
Bjoern Schiessle 289e9130f3 make system root of key storage configurable 2015-08-30 19:00:03 +02:00
Vincent Petry 2b08659f7d Restrict upgrades to explicit allowed version
version.php now contains the previous ownCloud version from which
upgrades are allowed. Any other upgrades will show a message that the
upgrade/downgrade is not supported.
2015-08-30 18:04:18 +02:00
root acae208f2f moved code to /lib/private/tempmanager.php
fix for unit test

some fixes
2015-08-29 16:59:02 +01:00
Vincent Petry 723f8c8f1b Merge pull request #18620 from owncloud/add-public-interface-for-factory
Add a public interface for the language factory so apps can use it
2015-08-29 16:44:08 +02:00
Björn Schießle 6e210d960c Merge pull request #18423 from owncloud/occ_encrypt_all
occ command line tool to encrypt all files
2015-08-28 20:44:55 +02:00
Joas Schilling bd1215c1dd Add a test for the interface 2015-08-28 12:08:54 +02:00
Lukas Reschke ab87274930 Use certificates that expire in 10 years
🙊 🙊 🙊
2015-08-27 22:23:08 +02:00
Bjoern Schiessle e51fe617d8 copy always file by file to encrypt/decrypt it if needed 2015-08-26 14:58:22 +02:00
Bjoern Schiessle 8c08dd0ac2 occ tool to encrypt all files 2015-08-26 14:58:22 +02:00
Thomas Müller 534b2e407a Merge pull request #17662 from owncloud/locking-db
Database backend for locking
2015-08-26 03:56:37 +02:00
Lukas Reschke f3561e2349 Explicitly specify status code 200 as response code
Potentially fixes https://github.com/owncloud/core/issues/17586
2015-08-25 18:07:40 +02:00
Morris Jobke b3495a1dc9 Merge pull request #18482 from owncloud/encrypt-session-data
Add a session wrapper to encrypt the data before storing it on disk
2015-08-24 12:10:15 +02:00
Morris Jobke 40b1054530 Merge pull request #18254 from owncloud/mitigate-breach
Add mitigation against BREACH
2015-08-24 09:14:27 +02:00
Lukas Reschke 6a3fb0d3b3 Handle failures gracefully, remove switch 2015-08-21 19:16:28 +02:00
Joas Schilling 36eef2ddab Add a session wrapper to encrypt the data before storing it on disk 2015-08-21 17:59:23 +02:00
Morris Jobke ac086a11c1 Merge pull request #18426 from owncloud/joblist-next-non-existing
handle non existing job classes in $jobList->getNext
2015-08-21 10:34:33 +02:00
Robin McCorkell 5f5c3520c9 Merge pull request #18457 from owncloud/test-traits
Move common test logic to re-usable traits
2015-08-20 22:28:54 +01:00
Robin Appelman 24a2fff946 add test mountprovider logic to a trait 2015-08-20 16:39:32 +02:00
Joas Schilling 9573d7d60d Merge pull request #18372 from owncloud/issue-18358-object-type-and-id-for-activities
Issue 18358 object type and id for activities
2015-08-20 15:53:36 +02:00
Robin Appelman 3dbfbdaf54 allow moving common test logic into traits 2015-08-20 15:17:14 +02:00
Morris Jobke 06d8edd963 Merge pull request #17434 from owncloud/update-showappnameonappupdate
Display app names in update page for app updates
2015-08-20 11:50:01 +02:00
Vincent Petry a2674b2b30 Additions to update page
Apps to update and to disable will always be shown.
Main title changes only when apps need updated, not core.
Added bullet style.
Exclude incompatible apps from updated apps list.
2015-08-20 11:14:30 +02:00
Joas Schilling 389a32e92a Add test coverage for Activity Event and Manager 2015-08-20 10:25:49 +02:00
Vincent Petry b919ae96f0 Display app names in update page for app updates
Whenever the update page is displayed for apps, show app names instead
of the core update text.
2015-08-19 18:03:35 +02:00
Robin McCorkell 3b27603762 Revert "Fix mounting wrapped storages resulting in many-layered wrapping"
This reverts commit 75a5e6e12b.
2015-08-19 14:41:43 +01:00
Robin Appelman beaef820cf handle non existing job classes in $jobList->getNext 2015-08-19 14:16:05 +02:00
Robin McCorkell 675d852c7d Merge pull request #17182 from owncloud/user_ini_upload_size
Update .user.ini when setting upload size limit
2015-08-17 13:27:47 +01:00
Lukas Reschke 8313a3fcb3 Add mitigation against BREACH
While BREACH requires the following three factors to be effectively exploitable we should add another mitigation:

1. Application must support HTTP compression
2. Response most reflect user-controlled input
3. Response should contain sensitive data

Especially part 2 is with ownCloud not really given since user-input is usually only echoed if a CSRF token has been passed.

To reduce the risk even further it is however sensible to encrypt the CSRF token with a shared secret. Since this will change on every request an attack such as BREACH is not feasible anymore against the CSRF token at least.
2015-08-14 01:31:32 +02:00
Thomas Müller abd3d5c6a5 Merge pull request #17982 from owncloud/appframework-sanitize-name
Sanitize class names before registerService/query
2015-08-12 12:19:24 +02:00
Thomas Müller eb13cb8d75 Merge pull request #18127 from owncloud/dav-request-tests
add test framework for doing full request webdav tests
2015-08-12 10:07:20 +02:00
Robin Appelman d15870b998 fix setup/teardown 2015-08-11 14:43:46 +02:00
Robin Appelman b0c8654f9e split out creating the sabre dav server to it's own factory 2015-08-11 14:43:46 +02:00
Robin Appelman 8c5302847b add test framework for doing full request webdav tests 2015-08-11 14:43:46 +02:00
Robin McCorkell cd0a2874de Merge pull request #17852 from owncloud/register-alias-factory
Add test for factories
2015-08-11 13:30:56 +01:00
Thomas Müller d5bba42030 Merge pull request #17932 from owncloud/fix_move_files
make sure that hooks are emitted properly on file move operation
2015-08-11 13:54:09 +02:00
Joas Schilling 669d705792 Merge pull request #17830 from owncloud/issue-17825-dont-silently-ignore-invalid-consumers-extensions
Throw a InvalidArgumentException when a consumer/extension is invalid
2015-08-11 10:16:20 +02:00
Morris Jobke d56e03bb94 Merge pull request #18096 from sualko/patch-1
add data: to allowed image domains
2015-08-10 23:05:07 +02:00
Thomas Müller bfb9a8e58e Merge pull request #18175 from owncloud/automatic-db-prefix-query-builder
Automatic db prefix query builder
2015-08-10 21:41:32 +02:00
Joas Schilling e6eb74958f Remove unnecessary DB prefixes from existing query builder usages 2015-08-10 16:21:41 +02:00
Joas Schilling 5fea6f753e Automatically prefix table names with *PREFIX* unless specified 2015-08-10 16:20:42 +02:00
Robin Appelman d979e54030 log a warning while trying to acquire a db lock from within a transaction 2015-08-10 14:39:34 +02:00
sualko 5590d64612 add more unit tests for data: as allowed image domain 2015-08-10 12:42:42 +02:00
Roeland Jago Douma f0b617b508 Use DI
* Register OCP\Capability\IManager at DIContainer
* Add register capabilities to appframework
* Register capabilities in DI way
* Make unit test pass again
* Remove CapabiltiesManager from OCP
2015-08-10 10:45:16 +02:00
Roeland Jago Douma 7e6a2b71fd Added Capabilities Manager
* This should allow the capabilities to be intergrated into the
appframework
* Unit tests
* Throw exception if closure does not return ICapability instance
2015-08-10 10:45:08 +02:00
Morris Jobke ca8f7fd69c Merge pull request #18124 from owncloud/share-permwrongvar
Fix removal of share permissions when share disabled for user
2015-08-07 18:42:35 +02:00
Vincent Petry b3a1aef934 Merge pull request #13641 from owncloud/cache-storage-status
Store storage availability in database
2015-08-07 17:31:03 +02:00
Vincent Petry 143e4a81f0 Fix removal of share permissions when share disabled for user 2015-08-07 15:43:27 +02:00
sualko 930841b67a add unit test for data: as allowed image domain 2015-08-07 12:14:30 +02:00
Bernhard Posselt 7cb0934fa2 Merge pull request #18035 from owncloud/ocs-2.0
Adding ocs/v2.php with status code mapper
2015-08-05 17:28:08 +02:00
Lukas Reschke 4efa7c09b1 Use StringUtils::equals on CSRF token and add unit tests 2015-08-04 18:34:33 +02:00
Thomas Müller acd9b7576d Remove pointless unit test 2015-08-04 12:03:03 +02:00
Thomas Müller 3ecf7fce79 Fix unit test within OCSController 2015-08-03 22:19:04 +02:00
Thomas Müller 649cc2fa89 Remove duplicate and unused code 2015-08-03 21:03:11 +02:00
Robin Appelman 96a9d171b3 Fix db schema 2015-08-03 14:13:36 +02:00
Robin Appelman 4ea7cbb0f5 Add database backend for high level locking 2015-08-03 14:13:35 +02:00
Robin Appelman a8552a1b24 split off keeping track of acquire locks 2015-08-03 14:12:56 +02:00
Bjoern Schiessle 51a67a54e0 always update file cache, the cache can handle partial data correctly if the file doesn't already exists in the file cache 2015-07-31 17:14:32 +02:00
Robin McCorkell 182bc17aeb Sanitize class names before registerService/query
Leading backslashes are removed, so a `registerService('\\OC\\Foo')`
can still be resolved with `query('OC\\Foo')`.
2015-07-30 21:02:16 +01:00
Robin McCorkell 0223221a64 Fix incorrect test naming
`tesOverrideService()` was incorrect and wasn't getting called by
PHPUnit. Also, the unit test itself was wrong, but went unnoticed
because of point 1.
2015-07-30 16:06:26 +01:00
Thomas Müller 22fd04eb41 Merge pull request #17981 from owncloud/correct-regex
Correct regular expressions
2015-07-30 16:07:46 +02:00
Lukas Reschke e95bc68ac7 Check for PDO instead of removed function for PHP 7 compatibility 2015-07-30 12:32:22 +02:00
Lukas Reschke 52cd4efc83 Add more unit tests 2015-07-30 11:25:05 +02:00
Lukas Reschke ad4c731c4c Correct regular expressions
Previously the regex was only matching on single characters. Meaning that file names such as "👍.txt" where possible while "👍" alone never was. This check apparently never worked as expected.
2015-07-30 11:22:14 +02:00
Morris Jobke 4d672ded24 properly mock dependencies for setup tests 2015-07-30 09:02:35 +02:00
Morris Jobke 8bc4a10dbe fix unit tests 2015-07-29 20:14:28 +02:00
Thomas Müller 5ed38a75d6 Remove remainings of mssql 2015-07-29 18:19:31 +02:00
Robin McCorkell 3ef680d966 Merge pull request #17950 from owncloud/config-dontdetectfschangesinrootbydefault
Disable filesystem_check_changes by default
2015-07-29 15:34:02 +01:00
Vincent Petry 943fc1b8e5 Fix watcher tests to explicitly set policy 2015-07-29 15:10:42 +02:00
Bjoern Schiessle fb4c99fe06 make sure that we emit the hooks if a file gets moved from a subfolder to the root folder with the nodes API 2015-07-29 11:02:38 +02:00
Morris Jobke c34e63bb1f Merge pull request #15543 from rullzer/mimetypedetector
Mimetypedetector
2015-07-28 13:35:26 +02:00
Roeland Douma 73169b0edb Merge pull request #17195 from rullzer/no_multiple_remote_shares_of_same_file
Remote shares should be uique
2015-07-28 13:06:25 +02:00
Thomas Müller 68f14a943a Merge pull request #17840 from owncloud/fix-enc-wrapper-without-encryption
Only set is encrypted when encryption is enabled
2015-07-27 16:06:39 +02:00
Roeland Jago Douma d276aebf40 Pass config dir as parameter to detection class
In order to properly test the mimetype function:

* constructor takes path to configdir
* Added unit tests for mimetype (only if vfsStream is available)
2015-07-27 14:59:49 +02:00
Roeland Jago Douma 9cdd637050 Loading of mapping/aliases is done in class 2015-07-27 14:59:49 +02:00
Roeland Jago Douma 141a0f0f47 Move mimetypedetection to files/type/detection 2015-07-27 14:59:45 +02:00
Roeland Jago Douma 6db6689740 Added mimetype detector
* Copied unit tests from old functions
2015-07-27 14:58:45 +02:00
Lukas Reschke c20d4d1a0b Add unit tests 2015-07-27 11:21:49 +02:00
Bernhard Posselt d8673dabe3 add test for factories
use ref for factory test

use a factory for registerAlias

Ensure we construct SimpleContainer

Use single instance of DIContainer in routing tests
2015-07-25 01:59:30 +02:00
Thomas Müller 1f8ee61006 Merge pull request #17755 from owncloud/alias-container-alive
Add registerAlias method to shortcut interface registration #17714
2015-07-24 13:11:32 +02:00
Joas Schilling 42baeb36dc Add a unit test for the disabled encryption case 2015-07-23 17:01:44 +02:00
Joas Schilling 02323eca01 Throw a InvalidArgumentException when a consumer/extension is invalid 2015-07-23 11:00:29 +02:00
Morris Jobke 296ed4c276 Merge pull request #17413 from owncloud/public-api-querybuilder
Add public api for Doctrine QueryBuilder and ExpressionBuilder
2015-07-22 17:29:08 +02:00
Roeland Douma d37b8969f4 Merge pull request #17342 from rullzer/test_preview_conditions
Only run some preview unit tets if imagemagick is available
2015-07-22 09:34:31 +02:00
Joas Schilling f9071ed5b7 Comment out LIMIT 0 case because of the mixed results 2015-07-21 15:25:48 +02:00
Joas Schilling c9564503c2 Fix tests for setFirstResult and setMaxResults on oracle 2015-07-21 15:25:48 +02:00
Joas Schilling 22849238fb Set a limit until doctrine released a version that fixes Sqlite
See https://github.com/doctrine/dbal/pull/782 for more info
2015-07-21 15:25:48 +02:00
Joas Schilling 32cb30cb84 Correctly count the number of items (rowCount is Update/Insert/Delete only) 2015-07-21 15:25:47 +02:00
Joas Schilling 577a7c92e1 Can not test the string, thanks oracle.... 2015-07-21 15:25:47 +02:00
Joas Schilling f77e5f411d Fix existing usages by removing the quotes 2015-07-21 15:25:47 +02:00
Joas Schilling 516f7e8299 Add unit tests and automatic quoting 2015-07-21 15:25:47 +02:00
Joas Schilling de348180ae Use the public interface and our method instead of the doctrine thing 2015-07-21 15:25:47 +02:00
Morris Jobke 2d691c2fb4 Merge pull request #17381 from owncloud/fix_sharing_add_to_group
[sharing] fix addToGroup hook
2015-07-21 13:30:41 +02:00
Bernhard Posselt d20e2002a6 Merge pull request #17743 from owncloud/return-proper-statuscodes
Return proper status code in case of a CORS exception
2015-07-20 18:03:25 +02:00
Robin McCorkell 75a5e6e12b Fix mounting wrapped storages resulting in many-layered wrapping
This usually doesn't cause issues, but in unit tests sometimes a wrapped
storage is passed to Filesystem::mount() and gets rewrapped, hitting the
XDebug function nesting level limit when used.
2015-07-20 16:27:26 +01:00
Robin McCorkell df19cabb44 Store storage availability in database
Storage status is saved in the database. Failed storages are rechecked every
10 minutes, while working storages are rechecked every request.

Using the files_external app will recheck all external storages when the
settings page is viewed, or whenever an external storage is saved.
2015-07-20 16:27:26 +01:00
Robin McCorkell aac84f732d Unit test OC_Files::setUploadLimit()
There was also a bug with checking the upper limit on the passed upload
size. PHP does funny things with integer vs float comparisons, so our
check didn't work. Now the check is much simpler, and ensures the value
is sane.
2015-07-20 15:03:09 +01:00
Lukas Reschke 7dda86f371 Return proper status code in case of a CORS exception
When returning a 500 statuscode external applications may interpret this as an error instead of handling this more gracefully. This will now make return a 401 thus.

Fixes https://github.com/owncloud/core/issues/17742
2015-07-20 12:54:22 +02:00
Joas Schilling 0dd1a785fe Merge pull request #16935 from owncloud/allow-app-check-code-for-deprecated-classes
Allow app check code for deprecated classes
2015-07-20 08:39:53 +02:00
Bernhard Posselt a4e3939204 add registerAlias method to shorcut interface registration
remove unused import

add since tag

fix typo
2015-07-18 13:43:54 +02:00
Björn Schießle f363fc2d4a Merge pull request #17540 from owncloud/enc_detect_legacy_files2
make sure that we always detect legacy files correctly
2015-07-17 21:42:32 +02:00
Thomas Müller 2e1cc2d825 Merge pull request #17682 from owncloud/fix-undefined-REMOTE_ADDR-master
Fixing 'Undefined index: REMOTE_ADDR'
2015-07-17 14:27:33 +02:00
Bjoern Schiessle a2e2005e67 make sure that we always detect legacy files correctly 2015-07-17 13:30:08 +02:00
Joas Schilling 8a64abf4e4 Only decorate the type when it was matched 2015-07-17 12:34:56 +02:00
Joas Schilling a0c6f2e5e0 Use the decorator pattern 2015-07-17 12:34:56 +02:00
Joas Schilling bba87a2a3b Restructor the code into different classes instead of extending 2015-07-17 12:34:56 +02:00
Joas Schilling eb1c437941 Check for methods as good as possible 2015-07-17 12:34:56 +02:00
Joas Schilling 2783a78070 Allow checking for functions 2015-07-17 12:34:56 +02:00
Joas Schilling f228a3dc28 Add support for deprecated constants 2015-07-17 12:34:56 +02:00
Joas Schilling d2fc1b2302 Correctly handle use statements 2015-07-17 12:34:56 +02:00
Joas Schilling 4e95031ec4 Allow app:check-code to check for deprecated methods 2015-07-17 12:34:55 +02:00
Thomas Müller bd71540c8a Fixing 'Undefined index: REMOTE_ADDR' - fixes #17460 2015-07-16 16:40:57 +02:00
Robin McCorkell 8efa23c895 Fix memcache factory unit tests 2015-07-16 03:53:18 +01:00
Roeland Jago Douma e35b97e4c5 Added test 2015-07-15 12:49:26 +02:00
Vincent Petry b3b080e1c0 Strip public webdav info about sharing and mount points
Remove information about whether a file is an incoming share or mount
point when requested over public webdav.
2015-07-13 14:20:35 +02:00
Bjoern Schiessle 058d910f5e intproduce pre_addToGroup hook. we need to calculate the possible unique
targets before the user was added to the group otherwise we will always detect
a name collision
2015-07-06 17:24:05 +02:00
Thomas Müller 9120942bcf Merge pull request #16924 from owncloud/copy-recursive-polyfill
add recursive copy polyfill for storage backends
2015-07-06 17:05:36 +02:00
Vincent Petry 073e654692 Merge pull request #17304 from owncloud/fix-17265
Check if response could get generated
2015-07-06 12:29:07 +02:00
Thomas Müller 43ebf0d127 Fix unit test 2015-07-03 18:00:16 +02:00
Thomas Müller 1385b1ec48 Remove OC_Appconfig 2015-07-03 18:00:16 +02:00
Thomas Müller d3ac73c0c9 Remove OC_Log 2015-07-03 18:00:16 +02:00
Thomas Müller f55aa856ad Remove file mapper - was only use in Windows and never worked properly 2015-07-03 15:41:29 +02:00
Robin Appelman a0c089a1c9 add unit tests 2015-07-03 13:44:03 +02:00
Morris Jobke 208985dc1c fix wording 2015-07-03 12:54:49 +02:00
Lukas Reschke 8335c7a4e9 Correct wording
If a max version of 8.0.1 has been specified the message should indicate that 8.0.1 is also supported.
2015-07-02 16:37:39 +02:00
Lukas Reschke b21d4a55f2 Add missing type annotations 2015-07-02 16:36:40 +02:00
Roeland Jago Douma c061497eca Only run some preview unit tets if imagemagick is available 2015-07-02 13:42:55 +02:00
Morris Jobke f5c57e076e Merge pull request #17077 from owncloud/files-scan-absolute-path
fix getting mount points when passing a path to the files:scan command
2015-07-02 13:02:20 +02:00
Lukas Reschke 62e3de1bdb Check if response could get generated
`json_encode` fails hard on PHP >= 5.5 if a non UTF-8 value is specified by returning false. Older PHP versions just nullify the value which makes it at least somewhat usable.

This leads to very confusing errors which are very hard to debug since developers are usually not aware of this. In this case I'd consider throwing a fatal exception – since it arguably is an error situation – is a fair solution since this makes developers and administrators aware of any occurence of the problem so that these bugs can get fixed.

Fixes https://github.com/owncloud/core/issues/17265
2015-07-02 11:42:51 +02:00
Thomas Müller aae55174f6 Only do the description kung-fu on strings - fixes #17028 2015-07-01 13:15:13 +02:00
Morris Jobke da45fad3eb Merge pull request #17078 from owncloud/fix-initial-server-host
Fix undefined offset
2015-07-01 08:55:12 +02:00
Morris Jobke c703a3a63e Merge pull request #15569 from owncloud/remove-getetag-properties
Remove unneeded getetag entries in properties table
2015-07-01 08:53:37 +02:00
Vincent Petry f76773bd4c Merge pull request #17259 from owncloud/chunk-cleanupgracefulonlock
Do not try clearing locked files in cache folder
2015-07-01 07:08:47 +02:00
Lukas Reschke aff55347f9 Use UTF-8 mode for preg_split and preg_replace
Otherwise a single application with a description containing a non compliant character can break the whole ownCloud appstore. This is for example https://apps.owncloud.com/content/show.php?content=149553

Fixes https://github.com/owncloud/core/issues/17101#issuecomment-117365224
2015-07-01 01:44:33 +02:00
Vincent Petry e339e6f497 Test for chunk cache garbage collection 2015-06-30 17:34:10 +02:00
Morris Jobke 2bcd0af177 Merge pull request #17189 from owncloud/files-straypartfilesonexception
Cleanup part file after upload exception
2015-06-30 11:58:26 +02:00
Joas Schilling a1bfc26b88 Merge pull request #17249 from owncloud/file-cache-is-a-icache
Fixing "ImportController::__construct() must implement interface OCP\…
2015-06-30 09:46:09 +02:00
Thomas Müller fc474de573 Fixing "ImportController::__construct() must implement interface OCP\\ICache, instance of OC\\Cache\\File given" 2015-06-29 22:43:18 +02:00
Vincent Petry 167f57c15e Unlock first path on rename if second path is locked 2015-06-29 17:31:14 +02:00
Vincent Petry 3217d4dad1 Cleanup part file after upload exception
Added unit tests for checking for stray part files.
Convert exception to sabre exception in upload put method.

Also added unit test for exception mapping, which also indirectly tests
that the part file is being deleted on exception.

This applies to both chunking and non-chunking mode.

Added some unit tests for chunk upload.
2015-06-29 17:31:14 +02:00
Lukas Reschke 422d088bb9 Do not rely on actual time in unit tests
Ref https://github.com/owncloud/core/pull/17238#issuecomment-116724055
2015-06-29 17:15:42 +02:00
Joas Schilling 30f5fa42e5 Merge pull request #17229 from owncloud/maintenance-plugin-test
Unit tests added for MaintenancePlugin
2015-06-29 16:22:38 +02:00
Lukas Reschke b56af26199 Merge pull request #17222 from owncloud/issue-17101-send-oc-version-to-app-store
Send OC version to appstore so it can reply with the right links
2015-06-29 15:07:00 +02:00
Thomas Müller f8127046ee Unit tests added for MaintenancePlugin 2015-06-29 14:18:09 +02:00
Joas Schilling 70eb20e3a7 Merge pull request #17030 from owncloud/lock-posthooks
Keep shared lock for post-hooks
2015-06-29 14:17:03 +02:00
Robin Appelman 786ec82a61 add unit test 2015-06-29 14:06:29 +02:00
Lukas Reschke 5810e7ab87 Merge pull request #17050 from owncloud/request-status-from-ocs
Request approved state for disabled apps with ocsid
2015-06-29 13:41:11 +02:00
Joas Schilling ae3d402dbc Send OC version to appstore so it can reply with the right links 2015-06-29 12:14:07 +02:00
Lukas Reschke 03498c0b2c Build base URL 2015-06-28 12:26:47 +02:00
Lukas Reschke 04fe9e05f0 Use new updater URL + add unit tests
Uses the new updater url "https://updates.owncloud.com/server/"
2015-06-28 11:25:28 +02:00
Vincent Petry 271ef9dedb Remove test-specific method to make Bjoern and Joas happy 2015-06-26 17:37:04 +02:00
Thomas Müller ac94126393 Merge pull request #17191 from owncloud/issue-17188-group-share-part-file
Correctly check if the real file exists, otherwise try the part file
2015-06-26 16:01:41 +02:00
Björn Schießle b318b9cf17 Merge pull request #17008 from owncloud/fix-17006
Improve splitting of username and remote adress when username contains an `@`
2015-06-26 16:01:16 +02:00
Joas Schilling 9b336765b6 Correctly check if the real file exists, otherwise try the part file 2015-06-26 13:17:23 +02:00
Vincent Petry eae08d0adc Release locks after class in tests 2015-06-25 16:33:02 +02:00
Vincent Petry 538e466c30 Keep shared locks in post hooks
Instead of unlocking after the file operation, change exclusive locks
back to shared locks during post hooks, and unlock after that.

Also added unit tests to test locking in pre-hooks, during operation and
post-hooks.
2015-06-25 16:33:02 +02:00
Morris Jobke 1601867c9d Remove unneeded getetag entries in properties table
* fixes #13281
2015-06-25 08:44:26 +02:00
Vincent Petry 58439c337c Merge pull request #17070 from owncloud/lock-movemountbug
Lock correct paths when moving mount
2015-06-24 18:37:48 +02:00
Vincent Petry 35047a2300 Fix locked paths in the moveMount case
When moving a mount point directly, the lock must be applied on the
local mount point path instead of the attached storage root.

Other operations will still lock the attached storage root.
2015-06-24 11:33:28 +02:00
Björn Schießle cce841c665 Merge pull request #17045 from owncloud/enc_improvements
encryption improvements
2015-06-23 14:30:21 +02:00
Bjoern Schiessle 95602d4069 make sure that we always read the header from the original file 2015-06-23 11:41:21 +02:00
Joas Schilling 45f9083a58 Make an assertion in risky test testGetNodeForPathRoot 2015-06-22 16:49:04 +02:00
Joas Schilling 738b78f1b0 Use \OC\HintException and translate the hint 2015-06-22 15:34:06 +02:00
Joas Schilling 2b7e5f841a Merge spliteUserRemote with fixRemoteUrlInShareWith 2015-06-22 15:25:23 +02:00
Bjoern Schiessle d38a378b8c make sure that we split username and server address at the first '@' from the right to allow usernames containing '@' 2015-06-22 15:25:23 +02:00
Björn Schießle a88b370dc8 Merge pull request #12546 from oparoz/patch-1
Send the mime icon if we can't generate a preview
2015-06-22 13:55:17 +02:00
Lukas Reschke 4d23e06097 Fix undefined offset
There are cases where no trusted host is specified such as when installing the instance, this lead to an undefined offset warning in the log right after installing. (when another domain than localhost or 127.0.0.1 was used)
2015-06-22 12:28:07 +02:00
Thomas Müller ced15c44b4 Merge pull request #16657 from owncloud/view-emit-path
emit hooks from a view as long as the path is inside the default root
2015-06-22 11:29:11 +02:00
Bernhard Posselt 7fe5ab4d4a Merge pull request #17056 from owncloud/appframework-type-cast
Allow multiple whitespace in type hints in AppFramework
2015-06-22 10:35:28 +02:00
Robin McCorkell f1e3e25158 AppFramework annotation whitespace unit test 2015-06-21 20:26:57 +01:00
Lukas Reschke 00a65e30ce Request approved state for disabled apps with ocsid
In case an application gets disabled the level is set to "experimental" if it does not contain a `shipped` tag. This can for example be reproduced by installing the documents app from the appstore and then disabling it. Or cloning an app from git.

With this change the controller will now load the level of the application from the appstore if a valid OCSID has been provided.

Fixes https://github.com/owncloud/core/issues/17003
2015-06-19 19:04:54 +02:00
Olivier Paroz ba3b6f9be4 Remove unneeded returns from private cropping methods 2015-06-19 15:07:49 +02:00
Vincent Petry e15dd783ab Workaround for empty dir deletion for SFTP
Explicitly clear the stat cache after deleting an empty folder to make
sure it is properly detected as deleted in subsequent requests.

This works around a problem with phpseclib where the folder is properly
deleted remotely but the stat cache was not updated.
2015-06-18 17:40:38 +02:00
Olivier Paroz 8193e1d7c1 Move media type icon preview creation to its own method 2015-06-18 13:24:15 +02:00
Vincent Petry 102c6ffc41 Normalize path in View's lock methods 2015-06-16 17:03:12 +02:00
Vincent Petry e5d34a2733 Merge pull request #16892 from owncloud/lock-returnfullpath
Rethrow LockedException with full path
2015-06-16 16:47:10 +02:00
Joas Schilling 7d8b728066 Merge pull request #16832 from owncloud/memcache-fail
Throw exception if memcache misconfigured or missing
2015-06-16 11:00:18 +02:00
Joas Schilling 60005bea19 Merge pull request #16943 from owncloud/sabre-convertinvalidpath
Convert invalid path exception to sabre exception on MOVE
2015-06-16 10:49:22 +02:00
Vincent Petry 0e3a3dd5d7 Rethrow LockedException with full path
Because the path is converted to md5 from the original exception,
rethrow the exception with the correct full path
2015-06-16 10:48:31 +02:00
Lukas Reschke fffef529ee Adjust NullCache tests 2015-06-15 19:17:50 +02:00
Lukas Reschke 34f5541088 Add `no-store` to AppFramework 2015-06-15 18:35:41 +02:00
Vincent Petry 1f91e9e65d Convert invalid path exception to sabre exception on MOVE 2015-06-15 17:49:11 +02:00
Thomas Müller de3ed8e077 Merge pull request #16821 from owncloud/compare-and-delete-locking-watch
Compare and delete locking watch
2015-06-15 14:09:06 +02:00
Thomas Müller b6165b6865 Merge pull request #16912 from owncloud/webdav-smalltransferlockfix
Webdav PUT small file lock must be shared during hooks
2015-06-15 11:30:59 +02:00
Vincent Petry 4497aa4c68 Webdav PUT small file lock must be shared during hooks
Fixed code path for Webdav PUT of small files to use shared locks during
hook execution, and exclusive during the file operation

This makes it possible for versions to be copied by accessing the file
in a post_write hook.
2015-06-12 18:52:18 +02:00
Robin Appelman ac9f998abd add compare-and-delete to the memcache interface 2015-06-12 17:28:09 +02:00
Vincent Petry 446f628136 Merge pull request #16886 from owncloud/webdav-verify-path-again
verify path when getting a node for sabredav
2015-06-12 16:45:20 +02:00
Vincent Petry 3b08b26589 Throw exception if memcache misconfigured or missing
Instead of falling back to null memcache, throw exceptions.
Also throw file locking specific exceptions in case the class is not
available.
2015-06-12 12:33:06 +02:00
Joas Schilling a7d2b3b9ae Add return value to lock methods and check it in tests 2015-06-12 11:41:05 +02:00
Robin Appelman 5a5639ab76 tests for getNodeForPath with invalid path 2015-06-11 17:25:06 +02:00
Joas Schilling afa030c561 Check the query() for all defined services 2015-06-11 12:28:30 +02:00
Joas Schilling 05f1ff8715 Correctly import NullCache class 2015-06-11 10:48:30 +02:00
Thomas Müller 9d90421e62 Merge pull request #16803 from owncloud/issue/16801-group-reshare-part-file-enc-keys
Check if the part files has keys when the original file does not
2015-06-09 11:41:36 +02:00
Joas Schilling 05c2fc72d8 Add a test for the fallback to the part file keys 2015-06-08 16:35:37 +02:00
Thomas Müller 64c9c27f7e Merge pull request #16382 from oparoz/providers-are-responsible-for-the-size-of-their-preview
Fix max preview, some resizing and caching issues and force preview providers to resize their previews properly
2015-06-08 16:14:35 +02:00
Thomas Müller a968b8409d Merge pull request #16158 from owncloud/mountprovider-after-setup
Call newly registered mount providers after the filesystem is setup
2015-06-08 13:42:02 +02:00
Thomas Müller f051b7381b Merge pull request #16402 from owncloud/issue-15956-slow-group-usercount
Sort user groups by group name and hide the user count
2015-06-08 12:11:22 +02:00
Olivier Paroz 71d65cb713 Fix max preview, some resizing and caching issues and force preview providers to resize their previews properly
* introduces a method in OC_Image which doesn't stretch images when trying to make them fit in a box
* adds the method to all key providers so that they can do their job, as expected by the Preview class
* improves the caching mechanism of Preview in order to reduce I/O and to avoid filling the available disk space
* fixes some long standing issues
* **contains mostly tests**
2015-06-06 16:25:04 +02:00
Lukas Reschke cbb15f3cbd Merge pull request #16767 from owncloud/webdav-preventdeleteroot
Prevent deleting Webdav root
2015-06-05 19:56:20 +02:00
Vincent Petry b97be0ea02 Fix sabre directory test cases
- rely on a mock subfolder instead of the root
- remove obsolete "Shared" limitation tests which did pass but not for the right
  reasons
- added test for the prevention of root deletion
2015-06-05 19:04:59 +02:00
Thomas Müller 85d1ca11d4 Merge pull request #16765 from owncloud/fix-chunked-upload-jenkins
Fix chunked upload jenkins
2015-06-05 16:20:33 +02:00
Thomas Müller 680a67712b fix unit test 2015-06-05 15:30:20 +02:00
Thomas Müller cd82b24edd Bring back unit tests for \OC\Cache\File 2015-06-05 14:29:15 +02:00
Joas Schilling 249e54e34a Add unit tests for InvalidPath Exception being thrown 2015-06-05 13:55:12 +02:00
Joas Schilling bb0cb0aaec Merge pull request #15895 from owncloud/dav-getremoteetag
Get etag from remote OC server
2015-06-03 17:20:25 +02:00
Lukas Reschke bf07eb45e2 Fix unit tests
Regression caused by https://github.com/owncloud/core/pull/16721

Failed the unit tests as per https://ci.owncloud.org/job/server-master-linux/database=sqlite,label=SLAVE/1994/testReport/junit/(root)/Test_Encryption_ManagerTest/testGetEncryptionModuleUnknown/:
```
Test\Encryption\ManagerTest::testGetEncryptionModuleUnknown
Failed asserting that exception message 'Module with id: unknown does not exist.' contains 'Module with id: unknown does not exists.'
```
2015-06-03 17:07:30 +02:00
Morris Jobke 2edcce7e2a use not deprecated method in tests 2015-06-03 14:33:56 +02:00
Lukas Reschke 3a233b8698 Merge pull request #16714 from owncloud/fix-cors-test
Fix #16713
2015-06-03 13:52:14 +02:00
Morris Jobke e3440863bc Merge pull request #16708 from owncloud/enc_fix_move_to_trash
make sure that we always use the correct owner for both source and target
2015-06-03 13:49:46 +02:00
Bernhard Posselt 21ce5d034b fix #16713 2015-06-03 12:56:50 +02:00
Joas Schilling d3e3a84cae Move the helpful method to the TestCase class 2015-06-03 12:33:29 +02:00
Bjoern Schiessle 7eb2b31e34 make sure that we always use the correct owner for both source and target 2015-06-03 11:59:06 +02:00
Vincent Petry 120588dd7a Disable update check test when testing wrappers
The checkUpdate test is intended for testing real storages, not
wrappers.
2015-06-02 15:14:37 +02:00
Robin Appelman 0497534a6e more type hints 2015-06-02 14:07:55 +02:00
Robin Appelman 8926bca0c7 phpdoc, strict and type hints 2015-06-02 14:07:55 +02:00
Robin Appelman 24131586d7 call mount providers that are registered after the filesystem is setup 2015-06-02 14:07:54 +02:00
Robin Appelman 4b48dd424f emit hooks from a view as long as the path is inside the default root 2015-06-02 14:07:20 +02:00
Joas Schilling 50a31fa8f9 Add unit tests for wrapStorage 2015-06-02 12:33:17 +02:00
Vincent Petry c4cb93e644 Added storage backend test for checkUpdate
This helps testing whether checkUpdate properly returns false when no
change exists
2015-06-02 11:42:03 +02:00
Morris Jobke cf2c599218 Merge pull request #16200 from owncloud/kill-globalfilecache
Drop file caching
2015-06-02 09:11:33 +02:00
Robin Appelman a1372b2fb5 add method to atomically change between shared and exclusive lock 2015-06-01 13:24:02 +02:00
Robin Appelman c72ea9f7d7 unit test for releaseall 2015-06-01 13:22:56 +02:00
Robin Appelman b98dd3ceb8 release all locks after test 2015-06-01 13:22:56 +02:00
Robin Appelman d519aba878 fix test 2015-06-01 13:22:56 +02:00
Robin Appelman 7e418c7d69 high level locking wip 2015-06-01 13:22:56 +02:00
Thomas Müller c700f42b68 Merge pull request #16517 from owncloud/remove-logo-wide
replace logo-wide on share page as well with better icon + text
2015-05-29 12:15:02 +02:00
Jan-Christoph Borchardt 9194603c31 change tests back to check for logo-wide, make them pass again 2015-05-28 23:39:55 +02:00
Vincent Petry e114d00242 Only use quota stream wrapper on "files"
Prevent using the quota stream wrapper on trashbin folders and other
metadata folders
2015-05-28 18:31:20 +02:00
Vincent Petry ded62ff693 Merge pull request #16501 from owncloud/enc_fix_move_versions_between_storages
[encryption] fix move versions between storages
2015-05-28 15:28:25 +02:00
Bjoern Schiessle 5549641f1f improve error messages displayed to the user 2015-05-27 21:00:02 +02:00
Björn Schießle f70c309c2d Merge pull request #16561 from owncloud/add-default-timeout-back
Add connection timeout to default POST options
2015-05-26 12:23:57 +02:00
Vincent Petry 39c6a36488 Merge pull request #16532 from owncloud/cors-no-cookie-auth
Disallow cookie auth for cors requests
2015-05-26 12:12:04 +02:00
Björn Schießle ab0747113c Merge pull request #16452 from owncloud/enc_ftp_upload
always write file, if fseek doesn't work we write the whole file
2015-05-26 12:02:41 +02:00
Thomas Müller 3babcd0344 Merge pull request #16339 from owncloud/master-override-channel
Allow change update channel via public API
2015-05-26 11:42:41 +02:00
Lukas Reschke dff361dc5c Add connection timeout to default POST options
Fixes https://github.com/owncloud/core/issues/16560
2015-05-26 11:22:50 +02:00
Vincent Petry ce34edacfa Merge pull request #16526 from owncloud/enc_fix_versions_webdav_upload
remove part file extension before we read a filekey
2015-05-22 16:42:52 +02:00
Bjoern Schiessle c63f2286c0 copy keys before we move a file between storages to make sure that the new target file reuses the old file key, otherwise versions will break 2015-05-22 15:41:28 +02:00
Bernhard Posselt c8e3599cad disallow cookie auth for cors requests
testing ...

fixes

fix test

add php doc

fix small mistake

add another phpdoc

remove not working cors annotations from files app
2015-05-22 14:06:26 +02:00
Bjoern Schiessle fef75e5417 remove part file extension before we read a filekey to reuse a existing key if possible, otherwise stuff like versioning will break 2015-05-22 12:12:31 +02:00
Jan-Christoph Borchardt 4e93d9e3a2 remove logo-wide from tests 2015-05-21 22:40:26 +02:00
Bjoern Schiessle 5a20edac82 test to simulate a non-seekable stream wrapper 2015-05-21 14:15:26 +02:00
Bjoern Schiessle 38bceb0d74 distinguish between source and target mount point to allow copy/rename between system wide mount points and user specific mountpoints 2015-05-21 14:06:45 +02:00
Vincent Petry 22968e806c Get correct mimetype when moving and changing extension
Fixes issue when restoring folders from trash cross-storage, as such
folders have an extension ".d12345678".

Fixes issue when moving folders between storages and at the same time
changing their extension.
2015-05-21 10:57:58 +02:00
Morris Jobke 39d1e99228 Merge pull request #16322 from owncloud/trash-view
dont go trough the view when moving to trash
2015-05-20 14:44:01 +02:00
Vincent Petry 7386257676 Merge pull request #16075 from owncloud/skeleton-copy-delay
wait with copying the skeleton untill login and setupfs are done
2015-05-20 13:52:08 +02:00
Lukas Reschke a62190a72d Add support for disallowing domains to the ContentSecurityPolicy
For enhanced security it is important that there is also a way to disallow domains, including the default ones.

With this commit every method gets added a new "disallow" function.
2015-05-20 11:44:37 +02:00
Robin Appelman 2213d6597c add tests for copyFromStorage with same storage 2015-05-19 17:30:32 +02:00
Scrutinizer Auto-Fixer fdbc21fc6c Scrutinizer Auto-Fixes
This commit consists of patches automatically generated for this project on https://scrutinizer-ci.com
2015-05-19 11:23:06 +00:00
Morris Jobke 5f4e0863f5 Merge pull request #16420 from owncloud/update-useconfigtableprefix
Add unit test for migrator with different prefix
2015-05-19 12:19:46 +02:00
Thomas Müller a52afb040a Merge pull request #15965 from owncloud/conditional-logging
Conditional logging
2015-05-19 12:00:19 +02:00
Vincent Petry fabdc4ba9d Add unit test for migrator with different prefix 2015-05-19 10:43:14 +02:00
Björn Schießle 1c411baf17 Merge pull request #16412 from owncloud/jknockaert-patch-1
fix #16356
2015-05-18 19:26:40 +02:00
Clark Tomlinson f9b6ee86cd Merge pull request #16399 from owncloud/enc_rmdir_fix
[encryption] only try to delete file keys if it is a valid path
2015-05-18 11:09:36 -04:00
Bjoern Schiessle 1c500487ba add a unit test to make sure that we don't try to read a file during a write operation 2015-05-18 17:00:54 +02:00
Björn Schießle a1e60e7882 Merge pull request #15980 from owncloud/jknockaert-patch-1
fix bug #15973
2015-05-18 15:01:16 +02:00
Joas Schilling d683752b37 Sort user groups by group name and hide the user count 2015-05-18 12:55:19 +02:00
Robin Appelman a5d652a6b8 fix tests 2015-05-18 12:11:31 +02:00
Robin Appelman 415f16eb24 fix tests 2015-05-18 12:11:31 +02:00
jknockaert 62e6c46216 correct testSeek 2015-05-18 11:55:48 +02:00
Bjoern Schiessle efa674f10d only try to delete file keys if it is a valid path 2015-05-18 11:54:51 +02:00
Vincent Petry 7e271012b2 Merge pull request #16243 from owncloud/error_if_download_failed
redirect to error page if download failed
2015-05-18 11:42:55 +02:00
jknockaert 9a71eddaf9 work on tests
Tests reorganised and extended
2015-05-18 11:32:29 +02:00
Morris Jobke 7ee3f99a4a Merge pull request #16364 from owncloud/add-warning-webdav
Add notice that WebDAV interface is not intended for browsers
2015-05-18 11:28:47 +02:00
Bjoern Schiessle 887be709f5 a new approach to display the error message 2015-05-18 10:15:17 +02:00
Victor Dubiniuk 4c9734f630 Test overriding channel 2015-05-15 22:37:14 +03:00
Vincent Petry 246000f799 Merge pull request #16176 from owncloud/fix-provisioning-api-set-quota
Validate the quota value to be a correct value
2015-05-15 18:07:13 +02:00
Joas Schilling 0991c0cc02 Merge pull request #16292 from owncloud/webdav-storage-fireprehooks
Fire prehooks when uploading directly to storage
2015-05-15 15:08:27 +02:00
Vincent Petry eab55aa959 Properly log out test users in unit tests 2015-05-15 12:33:17 +02:00
Lukas Reschke 54ef098867 Add unit tests for \OC\Connector\Sabre\DummyGetResponsePlugin 2015-05-15 09:08:10 +02:00
Vincent Petry 3cae0135ad Fire prehooks when uploading directly to storage 2015-05-13 17:47:04 +02:00
Robin Appelman 4789e87a53 Merge pull request #16276 from owncloud/dav-quota-root
fix webdav quota check for the root of the dav endpoint
2015-05-13 14:43:02 +02:00
Vincent Petry 1f7df3eba8 Added unit test to quota plugin for free_space argument 2015-05-13 13:58:01 +02:00
Arthur Schiwon d6becb8d82 add repair steps to get rid of old background jobs 2015-05-12 18:19:44 +02:00
Björn Schießle fbe4b77c49 Merge pull request #16228 from owncloud/enc_fix_restore
use hooks to update encryption keys
2015-05-12 13:10:16 +02:00
Morris Jobke b11c0c533e Merge pull request #16233 from owncloud/enc_fix_check_if_file_is_excluded
fix check if a file is excluded from encryption
2015-05-12 09:12:38 +02:00
Bjoern Schiessle 9dd517071e fix check if file is excluded from encryption 2015-05-11 12:38:59 +02:00
Joas Schilling dfed287dc0 Use insertIfNotExists to avoid problems with parallel calls 2015-05-11 12:38:33 +02:00
Joas Schilling 39497b9c3a Add a test for parallel insert 2015-05-11 12:29:28 +02:00
Joas Schilling 2916b0ba76 Always test the object and the legacy class 2015-05-11 12:22:23 +02:00
Bjoern Schiessle 0d5c7a11e2 use hooks to update encryption keys instead of the storage wrapper if a file gets renamed/restored, as long as we
are in the storage wrapper the file cache isn't up-to-date
2015-05-11 12:06:57 +02:00
Morris Jobke e79c255cab Conditional logging
* Log condition for log level increase based on conditions. Once one of these
   conditions is met, the required log level is set to debug. This allows to
   debug specific requests, users or apps

 * Supported conditions (setting `log_condition` in `config.php`):
    - `shared_secret`: if a request parameter with the name `log_secret` is set to
                this value the condition is met
    - `users`:  if the current request is done by one of the specified users,
                this condition is met
    - `apps`:   if the log message is invoked by one of the specified apps,
                this condition is met
 * fix unit test and add app log condition test
2015-05-08 15:58:33 +02:00
Arthur Schiwon 3de7f58321 remove file cache classes and its tests 2015-05-08 14:05:54 +02:00
Thomas Müller 15d134124b Validate the quota value to be a correct value 2015-05-07 17:56:13 +02:00
Andreas Fischer 4f6ecd3da6 \OC\Connector\Sabre\CopyEtagHeaderPlugin constructor does not take arguments. 2015-05-07 12:24:06 +02:00
Joas Schilling aea734aaf1 Fix missing types on doc block and deduplicate the method name 2015-05-06 14:31:10 +02:00
Bjoern Schiessle dc39bda870 move/copy from storage 2015-05-06 14:20:02 +02:00
Bjoern Schiessle 83ed4ee5b6 unit tests 2015-05-06 12:28:15 +02:00
Morris Jobke 874d35b27a Merge pull request #16070 from owncloud/enc_update_file_cache_on_copy
make sure that we keep the correct encrypted-flag and the (unencrypted)size
2015-05-06 10:28:10 +02:00
Bjoern Schiessle 7089af96f2 make sure that we keep the correct encrypted-flag and the (unencrypted)size if a file gets copied 2015-05-05 16:17:14 +02:00
Morris Jobke 493844eda4 add positive tests for operator in code checker 2015-05-05 13:09:12 +02:00
Thomas Müller aae098c24a Check usage of != and == - refs #16054 2015-05-05 12:59:33 +02:00
Joas Schilling 59c657da53 Merge pull request #15772 from owncloud/issue-15771-dont-restrict-permissions-for-share-owner
Do not restrict permissions for the original owner
2015-05-04 15:07:37 +02:00
Thomas Müller 7376ea9b26 Merge pull request #15584 from owncloud/enc_fix_upload_shared_folder
skip user if we don't have a public key
2015-05-04 09:57:19 +02:00
Robin Appelman ba7d221cff allow getting the path from the lockedexception 2015-04-30 14:48:42 +02:00
Robin Appelman 8119b8b040 add tests for castrait 2015-04-30 14:48:39 +02:00
Robin Appelman 96f9573a4b add memcache based shared/exclusive locking 2015-04-30 14:48:39 +02:00
Robin Appelman acf30ede95 add compare and swap to memcache 2015-04-30 14:48:39 +02:00
Robin Appelman 29213b6136 extends memcache with add, inc and dec 2015-04-30 14:48:36 +02:00
Joas Schilling cf4a6874fb Allow setting protected properties 2015-04-30 12:04:02 +02:00
Joas Schilling 09d479e79d Add a test to share a subfolder of a folder shared with the owner by group 2015-04-29 13:33:20 +02:00
Morris Jobke 8c7db2536d Merge pull request #15596 from owncloud/issue/15589
Correctly generate the feedback URL for remote share
2015-04-29 10:52:43 +02:00
Morris Jobke 7df7a3b360 Merge pull request #15906 from rullzer/fix_15777
Password set via OCS API should not be double escaped
2015-04-29 10:44:25 +02:00
Lukas Reschke 34d0e610cc Filter potential dangerous filenames for avatars
We don't want to have users misusing this API resulting in a potential file disclosure of "avatar.(jpg|png)" files.
2015-04-28 16:57:23 +02:00
Joas Schilling b55ef51a27 Add tests for the correct share id on the call aswell 2015-04-28 14:56:13 +02:00
Roeland Jago Douma 02269b6464 Added unit test 2015-04-28 14:00:36 +02:00
Joas Schilling 02c60949dd make scrutinizer happy 2015-04-28 11:28:54 +02:00
Joas Schilling d146c13abd Add tests for the remote sharing url 2015-04-28 11:28:54 +02:00
Morris Jobke de8c15e1a4 Merge pull request #14764 from owncloud/shared-etag-propagate
Propagate etags across shared storages
2015-04-28 10:58:50 +02:00
Thomas Müller 7d0eba7a41 Merge pull request #15886 from owncloud/fix-15848-master
Adjust isLocal() on encryption wrapper
2015-04-27 15:06:26 +02:00
Thomas Müller 678b7d7e4d Merge pull request #15860 from owncloud/enc_fallback_old_encryption
[encryption] handle encrypted files correctly which where encrypted with a old version of ownCloud (<=oc6)
2015-04-27 14:32:19 +02:00
Thomas Müller 936d564058 fixes #15848 2015-04-27 14:26:05 +02:00
Robin Appelman 6bf0579622 fix test 2015-04-27 14:07:16 +02:00
Robin Appelman be55a90323 dont use our now non existing hook 2015-04-27 14:07:15 +02:00
Bjoern Schiessle 27683f9442 fall back to the ownCloud default encryption module and aes128 if we read a encrypted file without a header 2015-04-27 13:01:18 +02:00
Joas Schilling 8f61fbb81f Fix new tests 2015-04-27 11:10:31 +02:00
Joas Schilling d600955a51 Make getDefaultModuleId public and get module protected 2015-04-27 11:03:51 +02:00
Joas Schilling 4e97228cde Deduplicate module mock 2015-04-27 11:03:51 +02:00
Joas Schilling 4b7ae395f2 Add test for setDefaultEncryptionModule 2015-04-27 11:03:51 +02:00
Joas Schilling b35379515c Add a test that the default module is returned before we fall back 2015-04-27 11:03:50 +02:00
Lukas Reschke 4dfdaf741c Merge pull request #15834 from owncloud/make-temporary-file-really-unique
Fix collision on temporary files + adjust permissions
2015-04-25 23:18:26 +02:00
Lukas Reschke b9df932e3c Merge pull request #15683 from owncloud/block-legacy-clients
Block old legacy clients
2015-04-24 18:21:10 +02:00
Bjoern Schiessle 9a5783b284 fix unit tests 2015-04-24 16:47:27 +02:00
jknockaert 4554df2512 enable testWriteWriteRead 2015-04-24 16:44:00 +02:00
jknockaert 18a1225b0c enable testRewind 2015-04-24 16:44:00 +02:00
jknockaert 27ea23ea6b Update encryption.php 2015-04-24 16:44:00 +02:00
jknockaert d6841aa706 disable r+ test 2015-04-24 16:44:00 +02:00
jknockaert 7a34f75da6 add two tests
testRewind tests reading and writing after rewind on an encrypted stream; testWriteWriteRead tests r+ mode
2015-04-24 16:44:00 +02:00
Joas Schilling 4334e77035 Merge pull request #15839 from owncloud/enc_fix_moving_shared_files
[encryption] fix moving files to a shared folder
2015-04-24 15:07:36 +02:00
Joas Schilling 411f7893bf Add test "operation on keys failed" 2015-04-24 14:27:23 +02:00
Joas Schilling 781cfff221 Deduplicate data provider and fix method visibility 2015-04-24 13:12:45 +02:00
Bjoern Schiessle 24128d1384 only update share keys if the file was encrypted 2015-04-24 10:19:09 +02:00
Bjoern Schiessle 2646bccb83 update share keys if file gets copied 2015-04-23 17:18:48 +02:00
Bjoern Schiessle 2990b0e07e update share keys if a file is moved to a shared folder 2015-04-23 17:18:48 +02:00
Lukas Reschke ab9ea97d3a Catch not existing User-Agent header
In case of an not sent UA header consider the client as valid
2015-04-23 16:33:51 +02:00
Lukas Reschke 155ae44bc6 Fix collision on temporary files + adjust permissions
This changeset hardens the temporary file and directory creation to address multiple problems that may lead to exposure of files to other users, data loss or other unexpected behaviour that is impossible to debug.

**[CWE-668: Exposure of Resource to Wrong Sphere](https://cwe.mitre.org/data/definitions/668.html)**
The temporary file and folder handling as implemented in ownCloud is performed using a MD5 hash over `time()` concatenated with `rand()`. This is insufficiently and leads to the following security problems:
The generated filename could already be used by another user. It is not verified whether the file is already used and thus temporary files might be used for another user as well resulting in all possible stuff such as "user has file of other user".

Effectively this leaves us with:

1. A timestamp based on seconds (no entropy at all)
2. `rand()` which returns usually a number between 0 and 2,147,483,647

Considering the birthday paradox and that we use this method quite often (especially when handling external storage) this is quite error prone and needs to get addressed.

This behaviour has been fixed by using `tempnam` instead for single temporary files. For creating temporary directories an additional postfix will be appended, the solution is for directories still not absolutely bulletproof but the best I can think about at the moment. Improvement suggestions are welcome.

**[CWE-378: Creation of Temporary File With Insecure Permissions](https://cwe.mitre.org/data/definitions/378.html)**

Files were created using `touch()` which defaults to a permission of 0644. Thus other users on the machine may read potentially sensitive information as `/tmp/` is world-readable. However, ownCloud always encourages users to use a dedicated machine to run the ownCloud instance and thus this is no a high severe issue. Permissions have been adjusted to 0600.

**[CWE-379: Creation of Temporary File in Directory with Incorrect Permissions](https://cwe.mitre.org/data/definitions/379.html)**

Files were created using `mkdir()` which defaults to a permission of 0777. Thus other users on the machine may read potentially sensitive information as `/tmp/` is world-readable. However, ownCloud always encourages users to use a dedicated machine to run the ownCloud instance and thus this is no a high severe issue. Permissions have been adjusted to 0700.Please enter the commit message for your changes.
2015-04-23 15:07:54 +02:00
Vincent Petry b88d0ba0ac Delete temp files after testing encryption stream wrapper 2015-04-23 13:42:18 +02:00
Lukas Reschke ed0b465cf9 Use 403 instead a 50x response 2015-04-20 12:53:40 +02:00
Lukas Reschke 4ea205e262 Block old legacy clients
This Pull Request introduces a SabreDAV plugin that will block all older clients than 1.6.1 to connect and sync with the ownCloud instance.

This has multiple reasons:

1. Old ownCloud client versions before 1.6.0 are not properly working with sticky cookies for load balancers and thus generating sessions en masse
2. Old ownCloud client versions tend to be horrible buggy

In some cases we had in 80minutes about 10'000 sessions created by a single user. While this change set does not really "fix" the problem as 3rdparty legacy clients are affected as well, it is a good work-around and hopefully should force users to update their client
2015-04-20 11:12:17 +02:00
Georg Ehrke 8f51efc49e get rid of OC_Geo 2015-04-19 20:16:56 +02:00
Morris Jobke 758b2332f0 Use data provider instead of hand-crafted for loops
* reduces scrutinizer complains
* uses PHPUnit functionality
2015-04-18 15:19:33 +02:00
Bjoern Schiessle 7d4b1b52d0 always create a new instance of the encryption module 2015-04-17 10:31:33 +02:00
Bjoern Schiessle b25c06f576 detect system wide mount points correctly 2015-04-16 14:15:04 +02:00
Bjoern Schiessle e3d77c4b01 add migration script from old encryption to new one 2015-04-16 14:15:04 +02:00
Vincent Petry 903d52d45f Merge pull request #15809 from owncloud/view-null-root
dont allow using null as view root
2015-04-22 18:10:26 +02:00
Robin Appelman e302213248 add unit tests for null handling in view 2015-04-22 16:24:25 +02:00
Thomas Müller 225cde2183 pass KeyStorage via ctor 2015-04-22 13:09:42 +02:00
Thomas Müller 987bc138df calling renameKeys() on directory level as well - fixes #15778 2015-04-22 12:12:27 +02:00
Thomas Müller fc4127dd62 add $encryptionModuleId to methods of Keys/IStorage 2015-04-22 11:53:05 +02:00
Björn Schießle 570718fb6b Merge pull request #15757 from owncloud/enc-fixfeofforlastblock
Fix encryption feof to not return too early
2015-04-22 11:32:21 +02:00
Bjoern Schiessle 19e8c4fcb1 get dirname from sharePath 2015-04-21 14:58:01 +02:00
Vincent Petry 76dad297ff Fix encryption feof to not return too early
This is because stream_read will pre-cache the next block which causes
feof($this->source) to return true prematurely. So we cannot rely on it.

Fixed encryption stream wrapper unit tests to actually simulate 6k/8k
blocks to make sure we cover the matching logic.

Added two data files with 8192 and 8193 bytes.
2015-04-20 18:32:40 +02:00
Lukas Reschke fe2cbc3795 Merge pull request #15744 from owncloud/fix-inverted-path-in-resourcenotfound
Fix wrong path generation
2015-04-20 16:55:36 +02:00
Lukas Reschke 9bc48451b9 Adjust tests and statuscode 2015-04-20 13:00:02 +02:00
Lukas Reschke 21f0476d31 Fix files 2015-04-20 13:00:02 +02:00
Lukas Reschke 9f61cf60d4 Verify if returned object is an array
The error has to be thrown at this point as otherwise errors and notices are thrown since the time cannot be parsed in L60 and L61
2015-04-20 12:58:57 +02:00
Joas Schilling ddcd79132d Add tests for correct path 2015-04-20 12:31:35 +02:00
Joas Schilling 0cf13e9b78 Fix phpStorm complains and namespace 2015-04-20 12:31:07 +02:00
Morris Jobke e33e5b425a Merge pull request #12006 from owncloud/dav-put-storage
Work directly on the storage when uploading over webdav
2015-04-15 03:08:52 +02:00
Thomas Müller 1aa368effe Merge pull request #15592 from owncloud/fix-15590-master
Avoid php message "Invalid argument supplied for foreach()"
2015-04-15 00:14:08 +02:00
Björn Schießle 4f0437fbde Merge pull request #15598 from owncloud/fix-enc-file-size-master
Fix file size of encrypted files
2015-04-14 16:48:04 +02:00
Morris Jobke 717723b83e Remove unneeded comments 2015-04-14 16:44:24 +02:00
Robin Appelman 308af8b909 pass a stream to the tests 2015-04-14 15:25:52 +02:00
Morris Jobke 82cab25762 Merge pull request #13360 from owncloud/cross-storage-move
Proper copy/move between multiple local storages
2015-04-14 14:35:08 +02:00
Thomas Müller cbe30f740e remove calculateUnencryptedSize() - not needed 2015-04-14 13:08:59 +02:00
Thomas Müller 88cc52c408 Avoid php message "Invalid argument supplied for foreach()" - refs #15590 2015-04-14 11:00:20 +02:00
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
Robin Appelman 01da6be4d6 upda tests 2015-04-13 17:10:02 +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
Robin Appelman 0772e3b4c1 Properly handle copy/move failures in cross storage copy/move 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
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
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
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
Lukas Reschke e3ad99d252 Add "Reply-To" support to sharing mails and refactor code 2015-04-10 17:30:07 +02:00
Jörn Friedrich Dreyer fafecd1c05 fix cherrypicking 2015-04-10 11:08:24 +02:00
Jörn Friedrich Dreyer a85bc5538f fix filesystem and encryption tests
Conflicts:
	apps/files_encryption/lib/util.php
	apps/files_encryption/tests/hooks.php
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
Lukas Reschke 0bad8f644a Merge pull request #15511 from owncloud/fix-typos
Fix typos and some other adjustments
2015-04-09 19:23:27 +02:00
Thomas Müller 06a5a9d0c2 Fix mock object to return proper type 2015-04-09 18:30:45 +02:00
Thomas Müller 11c3741526 Fix mock object to return proper type 2015-04-09 17:45:57 +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 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
Vincent Petry f8cfc03f36 Replace originalStorage in tests with a proper teardown
The purpose of $originalStorage in unit tests was to remount the old
root.
However that storage itself is already wrapped by storage wrapper, so
remounting it would rewrap the storage several times.

This fix makes use of "loginAsUser()" and "logout()" from the TestCase
class to properly initialize and cleanup the FS as expected.
2015-04-08 12:45:38 +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
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 2d2cb09715 fixing unit test - expected value change due to different size being stored in cache table 2015-04-07 14:30:01 +02:00
Thomas Müller 54a3bdf1c5 fixing unit test execution related to trashbin 2015-04-07 13:30:31 +02:00
Thomas Müller 268d346b36 fixing unit tests 2015-04-07 13:30:31 +02:00
Thomas Müller fce42a3161 fixing unit test execution - test dummy module was behaving wrong 2015-04-07 13:30:31 +02:00
Thomas Müller 870c53ee37 fixing unit test execution 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 3e3226da4c Properly set size and unencrypted size in the stream unit tests 2015-04-07 13:30:31 +02:00
Thomas Müller b3c5ef3afe Adding unit test for read and write of big file 2015-04-07 13:30:31 +02:00
Thomas Müller 104d11ec4c Fixing encryption storage wrapper tests 2015-04-07 13:30:30 +02:00
Thomas Müller e8e5bd61ae fixing unit tests for encryption stream wrapper seek 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 e0ab2c34ea update unit tests after ctor signature change of \OC\Encryption\Util 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 00338f9dca Removing files_encryption left overs 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 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
Thomas Müller 4aa125cc0a fix unit test execution 2015-04-07 13:30:28 +02:00
Thomas Müller 8dde932546 Comment duplicate test methods 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
Clark Tomlinson 39733c8da1 Initial commit 2015-04-07 13:30:27 +02:00
Joas Schilling 0fcd273714 Select the timezone on the right timestamp and assert it 2015-04-07 10:13:51 +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
Olivier Paroz 70ec74e88b Introducing media types for yml, yaml, cnf, conf 2015-04-02 21:37:57 +02:00
Joas Schilling aa6573cf54 Adjust tests and check whether clear() is called 2015-04-01 17:19:44 +02:00
Joas Schilling 730efe25a4 Make scrutinizer happy 2015-04-01 12:13:49 +02:00
Vincent Petry 5c9998179f Properly quote file names in listFiles query for GDrive 2015-03-31 15:14:03 +02:00
Lukas Reschke 53f67fc65d Revert "Properly quote file names in listFiles query for GDrive" 2015-03-31 15:12:35 +02:00
Frank Karlitschek b216b3fad0 Merge pull request #15215 from owncloud/ext-gdrivelistfilequoting
Properly quote file names in listFiles query for GDrive
2015-03-31 09:08:59 -04:00
Roeland Jago Douma 3b1f0e6019 Fix unit test 2015-03-30 21:18:24 +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 dd535968e8 Add tests from getCurrentUserId() method and fix the constructor 2015-03-30 15:23:10 +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
Robin McCorkell 1511a42da7 Check for relative datadirectory path 2015-03-27 23:29:46 +00: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
Vincent Petry 23cb8112fc Add logout in share test to avoid nasty side effects 2015-03-27 15:54:29 +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
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 c6be1ba8d3 fix check if a file is excluded from encryption or not 2015-03-27 11:51:50 +01:00
Thomas Müller fb8994603b Merge pull request #15252 from owncloud/prevent-directory-characters-in-temporary-path
Filter potential dangerous characters in path name
2015-03-27 01:19:55 +01:00
Morris Jobke f72939df91 Merge pull request #15255 from owncloud/test-namespacesforrepairtests
Fix namespace for repair step tests
2015-03-27 00:16:47 +01:00
Vincent Petry cf2fd2a825 Fix namespace for repair step tests 2015-03-26 23:19:27 +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 746be98e03 Merge pull request #13654 from oparoz/tmpfile-with-extension
Keep the extension in temp files
2015-03-26 23:08:08 +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
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 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 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
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
Vincent Petry 70acd58336 Copy Etag header to OC-Etag for sabre calls 2015-03-26 16:06:43 +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
Vincent Petry 43588fe2f7 Properly quote file names in listFiles query for GDrive 2015-03-26 12:15:02 +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
Vincent Petry ec2d7cff2f SQLite autoincrement test 2015-03-25 18:33:21 +01:00
Lukas Reschke 5f044ebf1b Add wrapper for Guzzle 2015-03-25 16:04:41 +01:00
Roeland Jago Douma b1c513f000 Fix unit tests
Altough more are required to make sure this does not happen again
2015-03-24 21:42:40 +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
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
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
Joas Schilling 1686653fdd The iran timezone removed the DST handling which breaks the timezone lib 2015-03-23 14:08:47 +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
Vincent Petry eef5851a67 Fix share permission related unit tests 2015-03-20 11:30:51 +01:00
Morris Jobke 1de6fa19de Merge pull request #15035 from owncloud/assocmapper
If the execute method on the mapper receives an assoc array, it binds by...
2015-03-20 08:53:14 +01:00
Morris Jobke 2a8c3798a8 Merge pull request #14947 from oparoz/repairmimetypes-sql
Make repairmimetypes compatible with case sensitive SQL backends
2015-03-19 17:22:25 +01:00
Bernhard Posselt df24a014b8 If the execute method on the mapper receives an assoc array, it binds by value instead of index 2015-03-19 17:08:46 +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
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 dd3307dd19 Added unit test
Tests added to make sure that removing an expire date when this is
enforced is not allowed.
2015-03-19 10:47:09 +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
Joas Schilling f2f7f178a5 Add test for backticks in path and etag 2015-03-18 13:29:39 +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
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
Vincent Petry e50f13d46b Add positive test for path verification 2015-03-17 18:17:30 +01:00
Morris Jobke fbea83d4eb fix failing unit test 2015-03-17 17:26:03 +01:00
Olivier Paroz bd91546db8 Adding test cases where the extension is using capital letters 2015-03-17 13:25:39 +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
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
Joas Schilling ec1d5011b6 Add tests for the navigation manager (closure) behaviour 2015-03-16 16:46:17 +01:00
Olivier Paroz bef12488c3 Introducing the Raw mimetypes 2015-03-16 16:25:04 +01:00
Robin Appelman 7ab919256b fix test 2015-03-16 14:13:56 +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 8ed27d2ce0 Create an interface for OC_Image and OCP\Image for the public API 2015-03-16 12:45:15 +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 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
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 5855108e9b drop any fallback code related to curl - refs https://github.com/owncloud/core/pull/14838#issuecomment-78586447 2015-03-12 21:43:41 +01:00
Thomas Müller 80ef53eff0 verify the file name length not to exceed 255 characters + verify path during rename 2015-03-12 10:47:47 +01:00
Lukas Reschke f9fd1629da Merge pull request #14705 from rullzer/avatarcontroller
Move AvatarController to AppFramework
2015-03-11 17:15:42 +01:00
Roeland Jago Douma 1a0f9c375b Avatar controller moved to AppFrameWork
* Original avatarcontroller migrated to the appframework
* Added DataDisplayResponse that show data inline in the browser (used
  to retrun the image)
* Removed some unneeded code
* Added unit tests for the avatarcontroller
2015-03-11 16:37:42 +01:00
Robin Appelman 169031d1c5 fix factory test 2015-03-11 15:07:59 +01:00
Robin Appelman e1f2a6df94 Allow setting the watcher policy as mount option 2015-03-11 15:07:23 +01:00
Robin Appelman 7adda88786 Copy mount options to the storage 2015-03-11 15:06:48 +01:00
Robin Appelman 82a62fd249 Add test for storage factory 2015-03-11 15:06:12 +01:00
Morris Jobke dbade19362 Merge pull request #13839 from owncloud/issue/13678-improve-remote-domain-detection-in-sharedropdown
Better finding the remote URL from user input in share dropdown
2015-03-11 14:38:41 +01:00
Morris Jobke ad97ceb787 Merge pull request #13513 from owncloud/repair-legacystoragenofatalfail
Do not abort when meeting unfixable legacy storages
2015-03-11 13:32:33 +01:00
Lukas Reschke 8154ed4d2c Merge pull request #14791 from owncloud/fix-14516
Adding a more meaningful message for sabre dav exception
2015-03-11 12:52:18 +01:00
Thomas Müller 0f3e36fdfd Adding a more meaningful message for sabre dav exception - fixes #14516 2015-03-11 11:53:31 +01:00
Thomas Müller 6c1a1234f8 Properly handle available databases at runtime and respect setup checks in command line as well 2015-03-11 09:27:12 +01:00
Lukas Reschke 6dc59019af Merge pull request #14346 from owncloud/storage-based-path-validation
adding storage specific filename verification
2015-03-10 11:02:47 +01:00
Thomas Müller 214fa44400 Merge pull request #14534 from owncloud/add-child-src
Add support for 'child-src' directive
2015-03-10 10:30:44 +01:00
Joas Schilling 87431605b8 Add test for UniqueConstraintViolationException on wrong key 2015-03-10 09:26:45 +01:00
Thomas Müller c8ed88f4d6 Merge pull request #14689 from owncloud/better-missing-resource-handling
Log errors and create 404 in network list when a css or js is missing
2015-03-09 23:33:25 +01:00
Thomas Müller 89be55a672 let insertIfNotExist() throw the native DBALException - no need to hide the real exception 2015-03-09 22:37:49 +01:00
Thomas Müller b966a4eb17 Adding unit test which shows insertIfNotExists to fall apart in certain situations 2015-03-09 22:37:49 +01:00
Morris Jobke d34662122d Merge pull request #14429 from owncloud/issue/14176-validate-timezone-before-using
Etc timezones don't exist for .5 and .75 offsets
2015-03-09 16:16:16 +01:00
Thomas Müller 3623f14e73 no translation service in common storage class 2015-03-09 10:38:38 +01:00
Thomas Müller 49e1a81eba fixing namespaces and PHPDoc 2015-03-09 10:38:37 +01:00
Thomas Müller 4bac595068 adding storage specific filename verification - refs #13640 2015-03-09 10:38:37 +01:00
Lukas Reschke 9f5433c0c3 Merge pull request #13368 from owncloud/memcache_lowlatency
Refactor \OC\Memcache\Factory
2015-03-05 13:05:17 +01:00
Robin McCorkell 0e4933e6d2 Refactor \OC\Memcache\Factory
Caches divided up into two groups: distributed and local. 'Low latency' is an
alias for local caches, while the standard `create()` call tries to get
distributed caches first, then local caches.

Memcache backend is set in `config.php`, with the keys `memcache.local` and
`memcache.distributed`. If not set, `memcache.distributed` defaults to the value
of `memcache.local`.
2015-03-05 11:36:34 +00:00
Joas Schilling 716ba49a82 Log errors and create 404 in network list when a css or js is missing 2015-03-04 17:56:33 +01:00
Joas Schilling 294724b5da Add a test for ObjectStore\NoopScanner 2015-03-04 11:48:31 +01:00
Joas Schilling e12c83e3dc Merge pull request #14674 from owncloud/fix-l10n-getlanguagecode-2
Jenkins #14650
2015-03-03 18:33:08 +01:00
Joas Schilling 5fc004f8ea Add a test of what everyone thinks should be the result of this method 2015-03-03 16:47:31 +01:00
Thomas Müller be27188649 Merge pull request #14574 from owncloud/fix-irequest-for-older-php-versions
Read from IRequest instead of reading twice
2015-03-03 14:22:56 +01:00
Thomas Müller e30ca8198f Merge pull request #14638 from owncloud/issue/14538-repairstep-drop-old-tables
Add a repair step to delete old tables
2015-03-03 13:37:54 +01:00
Joas Schilling 8df4077dd7 Add a test for dropping the tables 2015-03-03 11:27:06 +01:00
Joas Schilling 276d678080 Etc timezones don't exist for .5 and .75 offsets 2015-03-03 09:08:47 +01:00
Lukas Reschke d620fc8798 Merge pull request #14615 from kampka/cron-command
Allow configuring background job mode from the console
2015-03-02 21:35:57 +01:00
Christian Kampka 83e0f84fef Allow configuring background job mode from the console 2015-03-02 20:51:40 +01:00
Robin Appelman 00568af74d Allow running the async commands from unit tests 2015-03-02 15:25:31 +01:00
Lukas Reschke b29940d956 Add support for 'child-src' directive
This is required when working with stuff such as PDF.js in the files_pdfviewer application. Opt-in only.

Master change only because the stable CSP policies has a failback that allows nearly anything 🙈
2015-02-28 12:27:46 +01:00
Robin Appelman 89735ab22b add some tests for disabled updater 2015-02-27 17:14:17 +01:00
Morris Jobke b4dfd043d7 Merge pull request #14575 from owncloud/cache-rename-overwrite
Fix cache update when doing a rename that overwrites the target
2015-02-27 17:11:37 +01:00
Robin Appelman fc027bceb7 Fix cache update when doing a rename that overwrites the target 2015-02-27 16:39:58 +01:00
Bernhard Posselt 970b14d297 Merge pull request #13616 from owncloud/streamresponse
AppFramework StreamResponse
2015-02-27 15:43:01 +01:00
Bernhard Posselt 95239ad21e AppFramework StreamResponse
First stab at the StreamResponse, see #12988

The idea is to use an interface ICallbackResponse (I'm not 100% happy with the name yet, suggestions?) that allow the response to output things in its own way, for instance stream the file using readfile

Unittests are atm lacking, plan is to

check if a mock of ICallbackResponse will be used by calling its callback (also unhappy with this name) method
Usage is:

$response = new StreamResponse('path/to/file');

rename io to output, add additional methods and handle error and not modified cases when using StreamResponse

fix indention and uppercasing, also handle forbidden cases

fix indention

fix indention

no forbidden, figuring out if a file is really readable is too complicated to get to work across OSes and streams

remove useless import

remove useless import

fix intendation
2015-02-27 15:42:33 +01:00
Lukas Reschke 5c2fafa05f Read from IRequest instead of reading twice
Potentially fixes https://github.com/owncloud/core/issues/14541 and https://github.com/owncloud/core/issues/14506
2015-02-27 14:22:35 +01:00
Vincent Petry 1750e7b76d Fixed expected warning count on repair fail 2015-02-27 13:32:46 +01:00
Vincent Petry 32c9139ac2 Detect that the done flag was not set after repair fail 2015-02-27 13:16:38 +01:00
Vincent Petry e6abe96374 Do not abort when meeting unfixable legacy storages 2015-02-27 12:03:22 +01:00
Thomas Müller 7fe07e93fe Merge pull request #14437 from owncloud/node-check-fileinfo
Check if we have a proper fileinfo
2015-02-27 02:56:13 -08:00
Thomas Müller 1c6857d92c Merge pull request #14529 from owncloud/intuitive-version-check
Make version check work on the lowest common version denominator
2015-02-27 02:16:23 -08:00
Lukas Reschke 9baf758150 Merge pull request #14503 from owncloud/quota-preventdatalossforfailedmove
Fix file move/copy when storage space is not enough
2015-02-26 16:35:13 +01:00
Vincent Petry 232de3bdc0 Delete target file for unsuccessful copy/rename 2015-02-26 15:11:37 +01:00
Morris Jobke 0c1e6fad6c Merge pull request #14300 from owncloud/commandbus
Add async command system to handle asynchronous operations
2015-02-26 15:10:13 +01:00
Robin Appelman 541c8c092d Add unit test 2015-02-26 12:20:20 +01:00
Bernhard Posselt 2987d4aec8 make version check work on the lowest common version denominator 2015-02-26 11:42:08 +01:00
Thomas Müller adc986f3e4 Merge pull request #14502 from owncloud/failing-mysql-master-tests
Failing mysql master tests
2015-02-26 01:48:37 -08:00
Bernhard Posselt 59bbf27253 remove IDb interface from core class usage 2015-02-25 22:21:24 +01:00
Bernhard Posselt f993ed823e fix tabs and spaces 2015-02-25 22:21:24 +01:00
Bernhard Posselt aaf753bc9a fix mappertestutility 2015-02-25 22:21:24 +01:00
Bernhard Posselt 7b2fdbfb0b use IDBConnection and close cursors after insert/update/delete 2015-02-25 22:21:24 +01:00
Vincent Petry 9ee37169a6 Return null when requesting tags for null user
The TagManager->load() now returns null if the user is not authenticated
instead of failing with an error.
2015-02-25 17:20:26 +01:00
Vincent Petry 20738d287e Properly detect streamCopy errors
Now checking whether the written bytes match the number of read bytes.
2015-02-25 16:03:15 +01:00
Joas Schilling 993d89b3cc Extend the class so the Filesystem is cleaned up 2015-02-25 16:03:10 +01:00
Robin Appelman 9873ab20af prevent phpunit from messing with the bound $this 2015-02-25 15:09:41 +01:00
Robin Appelman a39c7bf464 Add FileAccess trait for commands 2015-02-25 15:09:41 +01:00
Robin Appelman 74ae7b8929 Add async command system to handle asynchronous operations 2015-02-25 15:08:40 +01:00
Robin Appelman a848a6b1dd Cleanup garbage collection for global file cache 2015-02-25 14:13:58 +01:00
Thomas Müller bcf3704645 Merge pull request #14458 from owncloud/revive/11157
Get the real protocol behind several proxies
2015-02-25 02:51:46 -08:00
Thomas Müller 799e144b04 Merge pull request #14151 from owncloud/update-sabre2.1
Sabre Update to 2.1
2015-02-25 02:21:55 -08:00
Vincent Petry fb87b746f0 Merge pull request #14213 from AW-UC/naturalsort_defaultcollator-patch-file-sorting
Update naturalsort_defaultcollator.php. Fixes #13982
2015-02-25 10:30:14 +01:00
AW-UC 0066c6f001 Add PHPunit test for DefaultCollator
This extends Test_NaturalSort to include a basic test for
\OC\NaturalSort_DefaultCollator()
2015-02-24 23:51:08 +01:00
Lukas Reschke d43d34c93f Merge pull request #14195 from owncloud/activity-manager-performance-improvements
Activity manager performance improvements
2015-02-24 15:19:15 +01:00
Lukas Reschke 1c6eae9017 Get the real protocol behind several proxies
X-Forwarded-Proto contains a list of protocols if ownCloud is behind multiple reverse proxies.

This is a revival of https://github.com/owncloud/core/pull/11157 using the new IRequest public API.
2015-02-24 12:24:55 +01:00
Thomas Müller bbf7f56f94 3rd-party apps are disabled on upgrade - refs #14026 2015-02-24 12:02:36 +01:00
Vincent Petry 9f6dcb9d3e Sabre Update to 2.1
- VObject fixes for Sabre\VObject 3.3
- Remove VObject property workarounds
- Added prefetching for tags in sabre tags plugin
- Moved oc_properties logic to separate PropertyStorage backend (WIP)
- Fixed Sabre connector namespaces
- Improved files plugin to handle props on-demand
- Moved allowed props from server class to files plugin
- Fixed tags caching for files that are known to have no tags
  (less queries)
- Added/fixed unit tests for Sabre FilesPlugin, TagsPlugin
- Replace OC\Connector\Sabre\Request with direct call to
  httpRequest->setUrl()
- Fix exception detection in DAV client when using Sabre\DAV\Client
- Added setETag() on Node instead of using the static FileSystem
- Also preload tags/props when depth is infinity
2015-02-23 22:27:23 +01:00
Thomas Müller 1fd1b355e4 Fix namespace of OC_Setup -> \OC\Setup 2015-02-23 16:44:40 +01:00
Vincent Petry 4290e1990e Merge pull request #13829 from owncloud/appmanager-list
Better caching for enabled apps
2015-02-23 16:03:32 +01:00
Joas Schilling b180724cd0 Extract the remote host from user input in share dropdown
Fix #13678
2015-02-23 11:28:41 +01:00
Lukas Reschke fcc5f5a4f4 Merge pull request #13777 from owncloud/close-cursor
Close cursor for appframework and manipulation queries if applicable
2015-02-20 20:15:22 +01:00
Joas Schilling ae60108692 Revert "Correctly fallback to english, if the plural case is not translated"
This reverts commit cbad5c998b.
2015-02-20 11:51:36 +01:00
Lukas Reschke 41e5850450 Prevent directory traversals in ctr of \OC\Files\View
This prevents a misusage of \OC\Files\View by calling it with user-supplied input. In such cases an exception is now thrown.
2015-02-18 18:17:33 +01:00
Clark Tomlinson 8d09cc3b91 Merge pull request #13989 from owncloud/enhancment/security/11857
Allow AppFramework applications to specify a custom CSP header
2015-02-18 10:27:29 -05:00
Robin Appelman 5542fafd36 allow overwriting the appmanager in oc_util by subclassing 2015-02-18 14:24:50 +01:00
Morris Jobke 5d7d2adcbf Merge pull request #14207 from owncloud/propfind-optimize
Optimize quota calculation for propfind
2015-02-18 00:18:47 +01:00
Robin Appelman 04628cf368 better name for getAppsEnabledForUser 2015-02-17 15:05:29 +01:00
Robin Appelman 4d805b52cc Test improvements 2015-02-17 15:05:29 +01:00
Lukas Reschke 886bda5f81 Refactor OC_Request into TrustedDomainHelper and IRequest
This changeset removes the static class `OC_Request` and moves the functions either into `IRequest` which is accessible via `\OC::$server::->getRequest()` or into a separated `TrustedDomainHelper` class for some helper methods which should not be publicly exposed.

This changes only internal methods and nothing on the public API. Some public functions in `util.php` have been deprecated though in favour of the new non-static functions.

Unfortunately some part of this code uses things like `__DIR__` and thus is not completely unit-testable. Where tests where possible they ahve been added though.

Fixes https://github.com/owncloud/core/issues/13976 which was requested in https://github.com/owncloud/core/pull/13973#issuecomment-73492969
2015-02-16 22:13:00 +01:00
Thomas Müller 9271059195 Merge pull request #13750 from owncloud/enhanced-code-checker
Implement php code checker to detect usage of not allowed private ...
2015-02-16 16:55:57 +01:00
Joas Schilling 8eb804b1f6 Merge pull request #13269 from owncloud/issue/13211-cache-array-implementation
Add an array implementation of cache and use it if we are not debugging
2015-02-16 15:35:20 +01:00
Robin Appelman 23ab25e93a Use the app manager from oc_app 2015-02-16 15:16:13 +01:00
Robin Appelman 2b58e8489f Add getInstalledApps and getAppsForUser to the app manager 2015-02-16 15:15:35 +01:00
Joas Schilling 8848b5f067 Add an array implementation of cache and use it if we are not debugging 2015-02-16 14:55:50 +01:00
Lukas Reschke a9d1a01440 Rename to allowEval 2015-02-16 12:30:21 +01:00
Lukas Reschke b20174bdad Allow AppFramework applications to specify a custom CSP header
This change allows AppFramework applications to specify a custom CSP header for example when the default policy is too strict. Furthermore this allows us to partially migrate away from CSS and allowed eval() in our JavaScript components.

Legacy ownCloud components will still use the previous policy. Application developers can use this as following in their controllers:
```php
$response = new TemplateResponse('activity', 'list', []);
$cspHelper = new ContentSecurityPolicyHelper();
$cspHelper->addAllowedScriptDomain('www.owncloud.org');
$response->addHeader('Content-Security-Policy', $cspHelper->getPolicy());
return $response;
```

Fixes https://github.com/owncloud/core/issues/11857 which is a pre-requisite for https://github.com/owncloud/core/issues/13458 and https://github.com/owncloud/core/issues/11925
2015-02-16 11:00:41 +01:00
Robin Appelman 7bfe476030 add unit test for webdav quota 2015-02-13 18:00:01 +01:00
Robin Appelman 6ecfcde954 update test 2015-02-13 15:01:05 +01:00
Robin Appelman 134243d3e5 Dont lower the mtime of a folder when propagating changes 2015-02-13 14:30:05 +01:00
Joas Schilling 12fc625885 Fix test with the invalid filter check being added 2015-02-13 13:08:57 +01:00
Lukas Reschke bd5440a8a3 Merge pull request #13780 from owncloud/cmreflector-inheritance
Additional controllermethodreflector inheritance tests
2015-02-12 18:34:07 +01:00
Vincent Petry fbbb9fe0fd Merge pull request #13979 from owncloud/group-share-collition-wrong-type-in-post-hook
Do not overwrite the shareType so the post hook is still correct
2015-02-11 15:23:13 +01:00
Thomas Müller d74662df7d implement php code checker to detect usage of not allowed private APIs - including console command to check local code to be used by developers 2015-02-10 11:51:24 +01:00
Thomas Müller c60dabd11b Request requires a second parameter 2015-02-09 23:06:55 +01:00
Vincent Petry 5296767393 Merge pull request #13921 from owncloud/ocs-af
Add a controller and reponse for ocs
2015-02-09 18:11:47 +01:00
Joas Schilling c17b236c19 Add a test for the post_shared hook shareType 2015-02-09 13:12:34 +01:00
Lukas Reschke 770fa761b8 Respect `mod_unique_id` and refactor `OC_Request::getRequestId`
When `mod_unique_id` is enabled the ID generated by it will be used for logging. This allows for correlation of the Apache logs and the ownCloud logs.

Testplan:

- [ ] When `mod_unique_id` is enabled the request ID equals the one generated by `mod_unique_id`.
- [ ] When `mod_unique_id` is not available the request ID is a 20 character long random string
- [ ] The generated Id is stable over the lifespan of one request

Changeset looks a little bit larger since I had to adjust every unit test using the HTTP\Request class for proper DI.

Fixes https://github.com/owncloud/core/issues/13366
2015-02-09 11:53:11 +01:00
Morris Jobke 90556cb70b Merge pull request #12283 from oparoz/sfnt-fonts
Updated the media type of some font types
2015-02-07 13:33:49 +01:00
Lukas Reschke 4d91fa4c93 Normalize before processing 2015-02-06 15:03:29 +01:00
Bernhard Posselt 9873aa3d9e fix license email 2015-02-05 14:10:16 +01:00
Bernhard Posselt b89ddcfe41 fix license email 2015-02-05 14:09:01 +01:00
Bernhard Posselt fdc64e370c add a controller and reponse for ocs 2015-02-05 14:02:17 +01:00
Bjoern Schiessle 21c45925fe detect root of mountpoint also if the trailing slash is missed 2015-02-04 12:47:04 +01:00
Bernhard Posselt 81836ccc7e another test for overriding the docblock 2015-01-29 20:35:07 +01:00
Bernhard Posselt 72d2b6f723 additional inheritance tests 2015-01-29 20:33:05 +01:00
Bernhard Posselt 84a47645b9 fix indention 2015-01-29 20:10:29 +01:00
Bernhard Posselt 983563d7d9 add tests for closing the cursor 2015-01-29 19:23:57 +01:00
Bernhard Posselt 37e8969d34 ignore cursorclosing 2015-01-29 19:16:28 +01:00
Robin Appelman 05035ef4af Fix webdav put for single file webdav shares 2015-01-29 12:47:12 +01:00
Robin Appelman ddee63fa00 Fix resolving paths for views rooted in a file 2015-01-29 12:47:11 +01:00
Robin Appelman cec43df0f0 Add unit test 2015-01-28 13:44:39 +01:00
Robin Appelman 2124540d1d Dont remove a file from cache if the delete operation failed 2015-01-29 15:39:56 +01:00
Morris Jobke 752b94d363 Merge pull request #13717 from owncloud/storage-donotwrapnullstorage
Prevent wrapping null storage
2015-01-28 01:00:20 +01:00
Vincent Petry 6d8985b671 Prevent wrapping null storage
Can happen when trying to instantiate external storages that have
incomplete config, where the constructor throws an exception (the
exception is caught in createStorage())
2015-01-27 17:40:08 +01:00
Vincent Petry acec40fe5a Merge pull request #13561 from owncloud/trash-finaldeletewhencrossstoragefix
Call final unlink in trash wrapper's storage
2015-01-27 17:05:38 +01:00
Bjoern Schiessle 5ba19ba7fc certificate manager should always use a \OC\Files\View otherwise we will get problems for different primary storages 2015-01-26 16:58:52 +01:00
Bjoern Schiessle 67da1f7e5a certificate manager only needs the user-id, no need to pass on the complete user object 2015-01-26 16:58:52 +01:00
Thomas Müller 5da4071c45 Merge pull request #13621 from owncloud/system-config-multiset
Add a method to set/unset multiple config values with one write
2015-01-26 13:36:22 +01:00
Olivier Paroz 7fbf1a20d7 Updated the media type of some font types
TTF and TTF have now the same media type
Official since 2013 and supported by Firefox and Chrome
https://www.iana.org/assignments/media-types/application/font-sfnt

Introducing support for Type1 fonts
2015-01-24 01:49:13 +01:00
Robin Appelman 87a1b2bdc4 Preserve mtime when doing cross storage move 2015-01-23 15:11:27 +01:00
Vincent Petry 8fa3e7a6bf Do not retrieve shares through group if user has no group 2015-01-23 15:11:06 +01:00
Joas Schilling c61e9f3912 Add a method to set/unset multiple config values in one call
This reduces the number of file writes we do for config.php and therefor
hopefully helps lowering the chances for empty config.php files
2015-01-23 11:00:53 +01:00
Morris Jobke 3d42ecea37 Fix undefined offset 1 for wrong user mail address
* fixes Undefined offset: 1 at lib/private/mail.php#143
2015-01-22 16:23:50 +01:00
Morris Jobke b5b491d1bb Merge pull request #13509 from owncloud/share-deletechildrenwhenunsharefromgroup
Fix reshare permission change to not impair other deletion code
2015-01-22 10:40:29 +01:00
Vincent Petry 9f137ac259 Fix reshare permission change to not impair other deletion code
A recent change that prevents reshare permission changes to delete group
share children had the side-effect of also preventing group share
children deletion when it needed to be done.

This fix adds an extra flag to isolate the "reshare permission change"
deletion case and keep the other ones as they were before, not only to
fix the regression but also fix other potential regressions in code that
uses this method.

Also updated the comment because now Helper::delete() is no longer
limited to reshares but also applies to group share children.
2015-01-22 10:12:47 +01:00
Robin Appelman 0b9f7642a6 Add unit test 2015-01-21 17:18:47 +01:00
Joas Schilling 7eb8404040 Add a test case for memcaches to store an array 2015-01-20 10:51:04 +01:00
Vincent Petry ef8d38ca27 Fix chunked query for tags + unit test 2015-01-19 17:05:44 +01:00
Thomas Müller d2d6472e39 Merge pull request #13423 from owncloud/share-fixfindshareforuserwithmultiplegroups
Fix getItemSharedWithUser for groups
2015-01-19 12:34:28 +01:00
Lukas Reschke 744cf713f7 Merge pull request #13319 from owncloud/replace-line-breaks-in-app-description
replace line breaks in the app description by spaces - fixes #13315
2015-01-17 01:03:41 +01:00
Vincent Petry 40931a8b0d Fix getItemSharedWithUser for groups
Fixed SQL query for whenever a user has more than one group.
Added missing $owner where clause for group lookup.
Added unit tests for the group cases.
2015-01-16 18:11:13 +01:00
Thomas Müller 051f626617 Merge pull request #13389 from owncloud/issue/13372-failing-oracle-tests-jenkins
Mask table and column names with backticks and add lastInsertID() workar...
2015-01-15 22:41:57 +01:00
Robin Appelman 0a3e0a1665 Additional unit test for recursive remove 2015-01-15 18:47:05 +01:00
Bernhard Posselt bb0c88a577 always set url parameters when they are available in the app dispatch
prefer url parameters passed into the main method. If they are not present, use the containers urlParameters

add space
2015-01-15 15:22:52 +01:00
Joas Schilling 6769adcd0d Mask table and column names with backticks and add lastInsertID() workaround 2015-01-15 14:43:06 +01:00
Morris Jobke 925a680a24 Merge pull request #13354 from owncloud/hhvm-redis
HHVM: Prevent E_WARNING messages by Redis test in console output.
2015-01-15 00:23:12 +01:00
Thomas Müller 337c43ce92 Merge pull request #13317 from owncloud/partfile-fileinfo
Return valid fileinfo objects for part files
2015-01-14 22:39:19 +01:00
Morris Jobke 64d7463ca3 Merge pull request #13344 from owncloud/issue/13334-cleanup-tags-repairstep
Add a repair step to clean up orphan tags and tag entries
2015-01-14 20:43:23 +01:00
Joas Schilling a22068cce3 Add a repair step to clean up orphan tags and tag entries 2015-01-14 16:49:25 +01:00
Andreas Fischer 567c246094 HHVM: Prevent E_WARNING messages by Redis test in console output. 2015-01-14 14:46:22 +01:00
Morris Jobke 520d8ec53b OC_App::parseAppInfo
* replace line breaks (on non empty lines) in the app description by spaces
* fixes #13315
* includes unit tests
2015-01-14 13:58:31 +01:00
Joas Schilling 4b3a3dc0bb Check new and old ways of required oC version for app compatibility 2015-01-14 13:02:02 +01:00
Robin Appelman 96dff341e2 Return valid fileinfo objects for part files 2015-01-13 13:59:28 +01:00
Vincent Petry fcc3b3d5f7 Fix searchCommon to properly match path name
The internal path was matched without the last "/" which caused
"files_trashbin" to also match when the internal path was "files".

This adds the missing slash for the comparison.
2015-01-12 19:33:00 +01:00
Lukas Reschke 05615bfd47 Simplify isValidPath and add unit tests
The check for invalid paths is actually over-complicated and performed twice resulting in a performance penalty. Additionally, I decided to add unit-tests to that function.

Part of https://github.com/owncloud/core/issues/13221
2015-01-10 00:40:21 +01:00
Thomas Müller 9fb61b42f6 Merge pull request #13208 from owncloud/hhvm-streamwrapper-exception
HHVM Workaround: Do not use Exception from Stream.
2015-01-09 18:02:28 +01:00
Andreas Fischer df849bb69a HHVM Workaround: Do not use Exception from Stream.
Works around https://github.com/facebook/hhvm/issues/2436#issuecomment-69351373
2015-01-09 17:01:17 +01:00
Robin McCorkell 631d6571fd Merge pull request #13181 from owncloud/filecache-preventleadingslash
Trim leading or trailing slashes in file cache paths
2015-01-09 13:54:17 +00:00
Thomas Müller 1f1643b35f Merge pull request #12995 from owncloud/tbelau666-master
Use Doctrines filter by table name
2015-01-09 14:17:14 +01:00
Vincent Petry aa821ecc00 Trim leading or trailing slashes in file cache paths 2015-01-08 19:43:02 +01:00
Lukas Reschke 7fbb7f4dc4 Add version to .htaccess
Currently if a user does not replace the .htaccess file with the new update this can lead to serious problems in case Apache is used as webserver.

This commit adds the version to the .htaccess file and the update routine fails in case not the newest version is specified in there. This obviously means that every release has to update the version specified in .htaccess as well. But I see no better solution for it.

Conflicts:
	lib/private/updater.php
2015-01-08 12:49:02 +01:00
Lukas Reschke 3e324f87d0 Use proper test name 2015-01-05 09:54:14 +01:00
Lukas Reschke 7b3f736300 Use proper namespace 2015-01-05 09:54:14 +01:00
Lukas Reschke 0ed00bca43 Use namespace 2015-01-05 09:54:14 +01:00
Lukas Reschke 556c9b6f46 Write unit-tests and use DI 2015-01-05 09:54:12 +01:00
Thomas Müller 40330bf492 Merge pull request #12830 from owncloud/intelligent-container
Intelligent container
2014-12-23 15:36:55 +01:00
Morris Jobke 6fd1a9563e add proper prefix for migration tests 2014-12-23 11:05:53 +01:00
Bernhard Posselt f195123765 Intelligent container
* resolves dependencies by type hint or variable name
* simpler route.php
* implementation of https://github.com/owncloud/core/issues/12829

Generates and injects parameters automatically. You can now build full classes like

    $c->query('MyClassName')

without having to register it as a service. The resolved object's instance will be saved by using registerService. If a constructor parameter is not type hinted, the parameter name will be taken.

Therefore the following two implementations are identical:

    class Class1 { function __construct(MyClassName $class)
    class Class1 { function __construct($MyClassName)

This makes it possible to also inject primitive values such as strings, arrays etc.

In addition if the query could not be resolved, a `QueryException` is now thrown

Routes can now be returned as an array from `routes.php` and an `appinfo/application.php` is optional

Old commit messages:

make it possible to return the routes instead of having to intialize the application
try to get the controller by convention
add first implementation of automatic resolve
add another test just to be sure
store the resolved object
more tests
add phpdoc to public app.php method
use the same variable for the public app.php method
deprecate old methods and add services for public interfaces
deprecated getServer method
disallow private api injection for apps other than core or settings (settings should be an app goddamnit :D)
register userid because its such an often used variable
fix indention and leading slash
use test namespace
add deprecation reasons, remove private api usage checks and remove deprecation from getServer()
add additional public interfaces
add public interface for rootfolder
fix syntax error
remove deprecation from methods where no alternative is there yet
remove deprecated from method which has no alternative
add timezone public service for #12881
add another deprecation hint
move deprecation into separate branch
remove dead comment
first try to get the namespace from the info.xml, if it does not exist, just uppercase the first letter
also trim the namespace name
add an interface for timefactory
move timefactory to public and add icontrollermethodreflector
keep core interface
fix copyright date in headers
2014-12-23 09:50:42 +01:00
Andreas Fischer 4569953e5c Clean up test table in Connection Test to prevent unnecessary failures. 2014-12-23 01:01:58 +01:00
Thomas Müller fe6f4a1404 Merge pull request #11810 from owncloud/hhvm-autotest
Adding autotest-hhvm.sh [WIP]
2014-12-22 14:12:03 +01:00
Andreas Fischer 91e03f5845 Properly call parent::tearDown() in MDB2SchemaManager::tearDown().
The early return introduced by 04c982a96e
prevents parent::tearDown() being called on Oracle.
2014-12-20 15:30:35 +01:00
Bjoern Schiessle 24993280ed Next step in server-to-server sharing next generation, see #12285
Beside some small improvements and bug fixes this will probably the final state for OC8.

To test this you need to set up two ownCloud instances. Let's say:

URL: myPC/firstOwnCloud user: user1
URL: myPC/secondOwnCloud user: user2
Now user1 can share a file with user2 by entering the username and the URL to the second ownCloud to the share-drop-down, in this case "user2@myPC/secondOwnCloud".

The next time user2 login he will get a notification that he received a server-to-server share with the option to accept/decline it. If he accept it the share will be mounted. In both cases a event will be send back to user1 and add a notification to the activity stream that the share was accepted/declined.

If user1 decides to unshare the file again from user2 the share will automatically be removed from the second ownCloud server and user2 will see a notification in his activity stream that user1@myPC/firstOwnCloud has unshared the file/folder from him.
2014-12-19 15:20:24 +01:00
Thomas Müller 2d64797320 Merge pull request #12956 from owncloud/jenkins-user-backend-names
[jenkins only] introduce names for user backends - IUserBackend
2014-12-19 13:15:50 +01:00
Morris Jobke 6da33e1ea7 introduce names for user backends - IUserBackend
* LDAP with multiple servers also proved backendName
2014-12-19 10:17:17 +01:00
Morris Jobke 39d6ddd38a Merge pull request #12865 from owncloud/files-tags-webdav
Returns tags through WebDAV
2014-12-19 09:33:28 +01:00
Andreas Fischer 48d6724a6f HHVM sets stream meta datum wrapper_type to 'File' instead of 'user-space'. 2014-12-19 00:58:37 +01:00
Morris Jobke 114a6464e8 Merge pull request #12748 from owncloud/redis_cache
Add Redis cache implementation, prefer over memcached, tests & config sample doc
2014-12-19 00:26:25 +01:00
Morris Jobke 75e8b39826 Merge pull request #12879 from owncloud/mountconfig
Add mount specific options
2014-12-18 23:38:14 +01:00
Bernhard Posselt 6779bf113d add isAdmin and isInGroup methods for the group manager 2014-12-17 17:41:57 +01:00
Bernhard Posselt 0f535e3866 fix tests 2014-12-17 17:40:52 +01:00
Bernhard Posselt 0939c3147e use two tests instead of one 2014-12-17 17:40:52 +01:00
Bernhard Posselt 236632702c add a isLoggedIn method to the usersession and deprecate the isLoggedIn method on the api 2014-12-17 17:40:52 +01:00
Vincent Petry 0b3f0716fc Returns and update tags through WebDAV PROPFIND and PROPPATCH
Added oc:tags and oc:favorites in PROPFIND response.
It is possible to update them with PROPPATCH.
These properties are optional which means they need to be requested
explicitly
2014-12-17 16:50:35 +01:00
Robin Appelman fd85424742 Add getMountPoint to FileInfo 2014-12-17 14:03:50 +01:00
Joas Schilling 26100a6dfb Move timezone logic out of server.php 2014-12-16 16:16:22 +01:00
Morris Jobke eb97bb5617 Merge pull request #12846 from owncloud/fix-searchbytags-test
Sort results to make sure assert work on consistent order
2014-12-15 13:23:59 +01:00
Bernhard Posselt be45366013 Merge pull request #12625 from owncloud/app-dependencies-libs-and-commands
adding dependencies for command line tools and php libraries
2014-12-15 12:34:46 +01:00
Vincent Petry 5007289422 Sort results to make sure assert work on consistent order 2014-12-15 11:32:32 +01:00
Morris Jobke efb495b09f Merge pull request #12726 from owncloud/add-filter-for-backend-to-rest-index
Add filter for backend to rest index
2014-12-13 08:50:15 +01:00
Vincent Petry 4b57892c4e Merge pull request #12778 from owncloud/searchbytags2
Added searchByTags to view, storage and cache
2014-12-12 14:27:19 +01:00
Thomas Müller 79dfff2b4a adding unit tests for PlatformRepository::normalizeVersion() 2014-12-12 13:33:22 +01:00
Joas Schilling 4f92e4a233 Merge pull request #12808 from owncloud/add-special-parameterlist-to-manager
Add special parameterlist to manager
2014-12-12 13:03:26 +01:00
Thomas Müller dcb88e395b rework api of DependencyAnalyzer 2014-12-12 12:34:53 +01:00
Vincent Petry 15ecb28d50 Make $userId mandatory for searchByTags
$userId is now a mandatory parameter for searchByTags.

Also fixed some places in the code where the argument was missing (Node
API and View)
2014-12-12 11:18:35 +01:00
Vincent Petry 25dde7e93b Added searchByTags to view, storage and cache 2014-12-11 17:38:50 +01:00
Thomas Müller 6566dc83e7 single dependencies will not be represented as an array + fix unit tests 2014-12-11 15:37:45 +01:00
Joas Schilling e3dfddb48a Add test for getSpecialParameterList() 2014-12-11 15:01:45 +01:00
Morris Jobke 8fd90e04b6 Merge pull request #12781 from owncloud/jenkins-curl-open-basedir
[Jenkins only] curl open basedir
2014-12-11 14:15:24 +01:00
Joas Schilling 17d68e0638 Merge pull request #12780 from owncloud/make-datetimeformattertest-reliable
Use a fixed timestamp so we dont switch days/years with the getTimestampAgo
2014-12-11 14:11:07 +01:00
Joas Schilling affeea8c72 Use a fixed timestamp so we dont switch days/years with the getTimestampAgo 2014-12-11 13:22:05 +01:00
Joas Schilling cbad5c998b Correctly fallback to english, if the plural case is not translated 2014-12-11 12:42:21 +01:00
Vincent Petry 745d8706b9 Add user parameter to tag manager 2014-12-11 12:22:28 +01:00
Thomas Müller 5a03e0a5cf adding dependency to owncloud version - with fallback to requiremin and requiremax 2014-12-11 12:02:12 +01:00
Thomas Müller ee46548f57 adding dependencies for supported platforms 2014-12-11 12:02:12 +01:00
Thomas Müller 770f987659 adding supported libraries - including min and max version 2014-12-11 12:02:11 +01:00
Thomas Müller 08f1db4451 adding dependencies for command line tools 2014-12-11 12:02:11 +01:00
Lukas Reschke 9ea205dc3d Check if open_basedir is set
The file:// protocol does not work with curl when an open_basedir is set.

This fixes https://github.com/owncloud/core/issues/12016
2014-12-11 00:09:55 +01:00
Thomas Müller 6143232da6 Merge pull request #12746 from owncloud/skip-longpath-test-again
skip testLongPath()
2014-12-10 17:22:04 +01:00
Vincent Petry 5101bc54fa Add login/logout to TestCase base class 2014-12-10 16:11:27 +01:00
Robin Appelman 3898fbc0d2 Merge pull request #12750 from owncloud/cache-numericstorageidfix
Fix numeric storage id for cache wrapper
2014-12-10 15:03:41 +01:00
Joas Schilling fd2599cfc2 Merge pull request #12485 from owncloud/jenkins-12383
New DateTimeFormatter class for dates in other timezones and languages
2014-12-10 14:48:59 +01:00
Vincent Petry ebba54d490 Fix numeric storage id for cache wrapper 2014-12-10 13:05:31 +01:00
Jörn Friedrich Dreyer 363e9667ec Add Redis cache implementation, prefer over memcached, tests & config sample 2014-12-10 12:24:20 +01:00
Thomas Müller d648b548eb skip testLongPath() 2014-12-10 12:20:30 +01:00
Lukas Reschke 5dc6406b70 Add filter for 'backend' to user REST route
This adds a "backend" type filter to the index REST route which is a pre-requisite for https://github.com/owncloud/core/issues/12620

For example when calling `index.php/settings/users/users?offset=0&limit=10&gid=&pattern=&backend=OC_User_Database` only users within the backend `OC_User_Database` would be shown. (requires sending a CSRF token as well)

Depends upon https://github.com/owncloud/core/pull/12711
2014-12-10 12:07:34 +01:00
Joas Schilling 4d232e536e Deprecate Util::formatDate()
Make DateTimeFormatter a service and adjust tests that have been inaccurate
2014-12-10 11:58:56 +01:00
Lukas Reschke 5398bbdc00 Merge pull request #12711 from owncloud/add-backend-to-rest-index
Expose backend type via REST API
2014-12-10 11:56:45 +01:00
Thomas Müller 7028c7150d Merge pull request #12664 from owncloud/fix-12164
Use httphelper and cache response even when it is empty
2014-12-10 05:42:08 +01:00
Victor Dubiniuk adab0ca98a Remove leftover 2014-12-10 02:21:10 +03:00
Victor Dubiniuk c9fd3c9d29 Inject config 2014-12-10 01:13:38 +03:00
Morris Jobke 263e008d7b Merge pull request #12695 from owncloud/db-drop-table
Add dropTable to IDBConnection
2014-12-09 18:40:56 +01:00
Robin Appelman b66c0a1631 add unit tests for tableExists and dropTable 2014-12-09 17:26:53 +01:00
Joas Schilling 681caf882a Add sometests and copy tests from Util::formatDate to new class 2014-12-09 16:10:24 +01:00
Joas Schilling f53f25eafe Merge pull request #12409 from owncloud/tags-getTagsForObjectIds
Add getTagsForObjects in ITags
2014-12-09 13:27:38 +01:00
Lukas Reschke 7a290a3d6b Make class compatible 2014-12-09 12:25:22 +01:00