Commit graph

2522 commits

Author SHA1 Message Date
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
Morris Jobke
90dfa981c5 Merge pull request #14856 from rullzer/remote_avatars
Allow Remote avatars
2015-08-29 18:05:32 +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
Roeland Jago Douma
ae62537adf Allow remote avatars 2015-08-29 15:22:13 +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
Lukas Reschke
a67a2272e7 Merge pull request #18491 from owncloud/expire-token-after-12h-or-login
Expire token after 12h and if user logged-in again
2015-08-24 14:08:46 +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
db4cb1dd4d Expire token after 12h and if user logged-in again
As an hardening measure we should expire password reset tokens after 12h and if the user has logged-in again successfully after the token was requested.
2015-08-22 20:42:45 +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
c7b0d50cb2 Merge pull request #18369 from owncloud/occ-log
occ commands to manage logging
2015-08-20 12:57:05 +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
Morris Jobke
b3356b1288 Merge pull request #18432 from owncloud/ext-backends.simple
Migrate simple external storage backends to new registration API [part 1]
2015-08-19 20:04:20 +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 McCorkell
c693e5d5d1 Unit tests for occ log:* commands 2015-08-19 13:49:41 +01:00
Robin Appelman
beaef820cf handle non existing job classes in $jobList->getNext 2015-08-19 14:16:05 +02:00
Joas Schilling
6231bbdde3 Filter the objectstore password from the config list as well 2015-08-19 14:06:05 +02:00
Roeland Jago Douma
65cf4028cc Move avatarcontroller towards Node Api 2015-08-18 14:48:19 +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
Morris Jobke
15da671349 [test] more tests for UserController::setMailAddress
* fixes #12885
2015-08-17 11:53:03 +02: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
aed068b237 Merge pull request #17868 from owncloud/x-forwarded-for
Set default 'forwarded for' headers for reverse proxy
2015-08-11 14:02:46 +02: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
Robin McCorkell
2579999373 Add setup check for reverse proxy header configuration 2015-08-10 23:28:16 +01: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
9650f3ecbe Merge pull request #17919 from rullzer/php_supported_check
Display warning in security & setup warnings if php version is EOL
2015-08-10 23:03:35 +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
Thomas Müller
db1416346c Following the spec:
"`statuscode`: The OCS status code of the response, everything except 100 MUST be handled as failure."
2015-08-05 17:49:44 +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
Thomas Müller
314fc11e1b Merge pull request #18057 from owncloud/import_root_certificates
disable "ssl root certificate" settings if user can't mount external storages
2015-08-05 17:18:46 +02:00
Thomas Müller
6c46430cdb Return 200 not null - we should return consistent types 2015-08-05 11:23:29 +02:00
Lukas Reschke
4efa7c09b1 Use StringUtils::equals on CSRF token and add unit tests 2015-08-04 18:34:33 +02:00
Bjoern Schiessle
dc5e89e624 also block certificate management in the back-end if external storages are disabled for the user 2015-08-04 18:33:19 +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
Thomas Müller
bacf1603ff Adding ocs/v2.php with status code mapper 2015-08-03 16:05:50 +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
Roeland Douma
db91b4505c Merge pull request #17805 from owncloud/avatar-handle-errors
[avatar] add error handlers for avatar setup
2015-07-31 07:31:24 +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
Morris Jobke
e184157684 [avatar] add error handlers for avatar setup
add colon to translated string

use placeholder in t()

Adding a size limitation for avatar upload

Unit test for file size

Fix typo & display server side error message
2015-07-30 18:05:32 +02: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
Roeland Jago Douma
72ba67815e Display warning in security & setup warnings if php version is EOL 2015-07-29 10:07:01 +02:00
Robin McCorkell
6d54d2fad7 Merge pull request #17912 from owncloud/detect-old-openssl-versions
Detect old NSS and OpenSSL versions
2015-07-28 21:26:44 +01:00
Lukas Reschke
7f6c5e456b Add unit tests 2015-07-28 16:32:11 +02:00
Lukas Reschke
0d515de13e Detect old NSS and OpenSSL versions
This will detect old NSS and OpenSSL versions and show appropriate errors in the admin interface.

Fixes https://github.com/owncloud/core/issues/17901
2015-07-28 15:32:19 +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
Vincent Petry
9d71542ee4 Update JS unit test libs
Update sinon to 1.15.4.
Update karma-jasmine to 0.3.0
Update jasmine to 2.3.4

This brings a bunch of new useful functions for unit testing.
2015-07-10 11:21:47 +02:00
Morris Jobke
08afce3d7e [command] single user mode - use config object & add tests 2015-07-09 18:33:46 +02:00
Joas Schilling
85f012512e Invert the "public" to a "private" method 2015-07-07 11:30:21 +02:00
Joas Schilling
e5bc9d0619 Make it possible to import exportet app/system configs 2015-07-07 11:25:29 +02:00
Joas Schilling
d2ca3a25d3 Replace deprecated method calls 2015-07-07 11:18:25 +02:00
Joas Schilling
2b86eb0b29 Add commands to get, set and delete app config values 2015-07-07 11:18:25 +02:00
Joas Schilling
86952f88cb Add a command to import an json array into the config 2015-07-07 11:18:25 +02:00
Joas Schilling
bc084c40a6 Add a command to delete a system config 2015-07-07 11:18:25 +02:00
Joas Schilling
3608c1007e Add a command to get a config value 2015-07-07 11:18:25 +02:00
Joas Schilling
a83eac3762 Add a command to set a system config value 2015-07-07 11:18:25 +02:00
Joas Schilling
5370bba0b6 Split the system from the app config 2015-07-07 11:18:24 +02:00
Joas Schilling
16907f91ed Add tests for list config 2015-07-07 11:18:24 +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
403deb2a33 Fixing unit test execution 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
Vincent Petry
3df27a01be Merge pull request #17379 from owncloud/kill-file-mapper
Remove file mapper - was only use in Windows and never worked properly
2015-07-03 17:53:47 +02:00
Vincent Petry
b45c1f76b4 Remove bogus test result
This file was created during a bogus test run that created files in the
wrong location, and was checked in by mistake.
2015-07-03 17:31:14 +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
Lukas Reschke
76878e9943 Add endpoint with list of OCS providers
This adds a OCS provider list at `ocs-provider/` to enable a somewhat autodiscovery of services.

In the moment it is not possible for applications to add own entries and it is basically hard-coded in the controller. I'm aware that this is not an optimal solution and I'm happy for any pragmatic input that won't pollute our public API too much. (and is not a big super hack, this is already hacky enough ;-))

That said, I'd consider it as a first step also feasible to go with this somewhat hard-coded list and see if this gets adopted...
2015-06-27 18:23:49 +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
05fb9ceef9 Merge pull request #17025 from owncloud/sftp-rmdir-emptydir
Workaround for empty dir deletion for SFTP
2015-06-21 23:50:58 +01: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
Joas Schilling
6adddb3095 Merge pull request #16889 from owncloud/group-sorting-fixes
Only sort by group name when LDAP is involved
2015-06-19 08:29:25 +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
Lukas Reschke
21d261885d Fix test 2015-06-17 12:11:09 +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
171f86ca2e Only sort by group name when LDAP is involved 2015-06-16 11:10:00 +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
Lukas Reschke
dbe344ef3d Merge pull request #16879 from jcfischer/jcf_fix_user_delete_message
Fix error message and add 'user' to it
2015-06-11 14:53:50 +02:00
Jens-Christian Fischer
bffadd069d Fix test message and add 'user' to it 2015-06-11 13:44:38 +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