Commit graph

9984 commits

Author SHA1 Message Date
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
Morris Jobke
b50ac6ff2f Merge pull request #10149 from owncloud/storage-wrapper-check
Check result of storage wrappers
2015-08-30 19:48:37 +02: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
d5b0b55eef Throw exception on downgrade attempt 2015-08-30 18:07:22 +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
Vincent Petry
045f8cc971 Merge pull request #18651 from owncloud/ocs_share_create_with_expire
Allow to directly set the expireDate on a new (link)share
2015-08-30 10:50:12 +02:00
Roeland Jago Douma
2aff11c80b Actually validate the expire date on share
* Added more intergration tests
2015-08-30 10:31:43 +02:00
Robin Appelman
4cb8ca1860 Check result of storage wrappers 2015-08-30 10:02:42 +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
Robin Appelman
df8cb2cc63 stream webdav downloads using http client 2015-08-29 14:56:15 +02:00
Robin Appelman
b67d395089 allow streamed responses in http client 2015-08-29 14:56:08 +02:00
Joas Schilling
0ddcc7da44 Merge pull request #18511 from owncloud/downgrad-sharing-error-logs-to-debug
Change log level of debugging logs to debug
2015-08-28 21:05:02 +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
42f0651b83 Sticky the notification types of files and sharing 2015-08-28 18:40:50 +02:00
Joas Schilling
37b00b7443 Add since tag 2015-08-28 15:46:55 +02:00
Joas Schilling
a12d354762 Deprecate OC_L10N::get() 2015-08-28 12:04:52 +02:00
Jenkins for ownCloud
933ac14b76 [tx-robot] updated from transifex 2015-08-28 01:55:25 -04:00
Joas Schilling
c3c7689b67 Add a public interface for the language factory so apps can use it 2015-08-27 13:14:50 +02:00
Jenkins for ownCloud
46978b616c [tx-robot] updated from transifex 2015-08-27 01:55:20 -04: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
Lukas Reschke
3d2ee95f1e Remove last occurence of forcessl
This shoudl have been adjusted as well, now it's consistent with `setMagicInCookie`. While it does not have a security impact directly some automated scanners reported this all the time.
2015-08-26 14:29:36 +02:00
Thomas Müller
40203d7d1e Remove languages which are no longer maintained on transifex 2015-08-26 12:19:24 +02:00
Jenkins for ownCloud
90e11ee005 [tx-robot] updated from transifex 2015-08-26 04:10:42 -04:00
Thomas Müller
749e3d5219 Merge pull request #18553 from owncloud/write-l10n-on-login
Save detected l10n of browser on login
2015-08-26 08:44:25 +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
Morris Jobke
e9241fcd8c Merge pull request #18562 from owncloud/explicit-use-statuscode-200
Explicitly specify status code 200 as response code
2015-08-25 22:02:27 +02:00
Jenkins for ownCloud
2171cc02c3 [tx-robot] updated from transifex 2015-08-25 12:39:10 -04: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
4f13f96981 Save detected l10n of browser on login
* fixes owncloud/activity#373
2015-08-25 15:47:31 +02:00
Thomas Müller
6f6a5f6c29 Adding path to log message 2015-08-25 14:31:21 +02:00
Thomas Müller
2f86be9ced Merge pull request #18523 from owncloud/crazy-scanner
Prevent bkg scanner going crazy with unavailable storages (ajax/scan.php)
2015-08-25 09:23:42 +02:00
Vincent Petry
fe575feca8 Prevent scanner going crazy with unavailable storages 2015-08-24 16:42:53 +02:00
Morris Jobke
e88b380973 Remove DEBUG constant and use config value
* introduces config.php option 'debug' that defaults to false
* migrate DEBUG constant to config value
2015-08-24 15:14:05 +02:00
Lukas Reschke
bd13126a80 Fix master again
Caused due to merge of two PRs
2015-08-24 12:19:03 +02:00
Joas Schilling
4e0e2eb222 Change log level of debugging logs to debug 2015-08-24 12:12:08 +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
Vincent Petry
fe568ab64d Merge pull request #18486 from owncloud/use-client-service-to-work-behind-proxy
Use client service to work behind proxy for checks for remote ownCloud instances
2015-08-24 11:05:14 +02:00
Vincent Petry
31d62c10bf Merge pull request #17501 from tbartenstein/patch-1
Update fileinfo.php
2015-08-24 09:57:27 +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
0a1d551090 Use IClientService to check for remote ownCloud instances
1. Allows to set a timeout (though still not perfect but way better than before)
2. Allows to have unit tests
3. I also added unit tests for the existing controller code
4. Corrected PHPDoc on IClient
2015-08-22 14:39:43 +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
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
Joas Schilling
c58316b1ae Expand the doc blocks on the new methods 2015-08-20 15:35:24 +02:00
Morris Jobke
d725de505e Merge pull request #18439 from owncloud/fix-appmanagement-install
[app management] fix dependency check on install
2015-08-20 13:26:55 +02:00
Joas Schilling
6697844c01 Remove unnecessary code 2015-08-20 13:10:11 +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
29decf698c [app management] fix dependency check on install 2015-08-19 21:32:56 +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
Thomas Müller
313cb092f9 Merge pull request #18427 from owncloud/fix-format-ocs
Fix format of log/private/ocs.php
2015-08-19 19:09:32 +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
Joas Schilling
4314c8fc6f Use an IEvent object instead of a huge parameter list 2015-08-19 17:44:57 +02:00
Joas Schilling
bc2aa14849 Extend the interfaces IManager and IConsumer to allow passing in the object 2015-08-19 17:44:57 +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
3bb793b6a7 Implement password authentication mechanisms
Introduces the basic password authentication mechanism, along with a
mechanism based on ownCloud credentials stored in the user session.

Change to lib/private is an extension of PermissionsMask, as
isSharable() override was missing.

Session credentials auth mechanism now disables sharing on applied
storages, as credentials will not be available.
2015-08-19 14:20:09 +01:00
Lukas Reschke
40b87b1394 Add warning for not existing CA bundle when updating
For newer releases we shall use an integrity check. But that's a good alternative for now.
2015-08-19 15:03:33 +02:00
Morris Jobke
8fbb0c7b49 Fix format of log/private/ocs.php
Fixes https://github.com/owncloud/core/pull/14314#discussion_r37305256
2015-08-19 14:21:10 +02:00
Robin Appelman
beaef820cf handle non existing job classes in $jobList->getNext 2015-08-19 14:16:05 +02:00
Morris Jobke
127b6e2f3f Merge pull request #18374 from owncloud/router-apps
Only load app routes if the app has already been loaded [re-merge]
2015-08-19 09:52:09 +02:00
Bernhard Posselt
66d8476e9e Merge pull request #14314 from owncloud/clean-up-ocs-code
Cleanup OCS code
2015-08-18 16:47:53 +02:00
Robin McCorkell
1c26755686 Only load app routes if the app has already been loaded 2015-08-18 09:18:36 +01: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
24e20a51eb Degrade log message about missing app in appstore to debug
* fixes #18154
2015-08-17 11:27:41 +02:00
Thomas Müller
0b64268910 Adding EventDispatcher to IServerContainer 2015-08-14 15:40:15 +02:00
Lukas Reschke
a7e4785be9 Cleanup OCS code
This removes unused code from `OC_OCS` which nobody understood what it really was for anyways.
2015-08-14 13:42:56 +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
1d219cf799 With V2 we should ensure that the status codes are kept in sync 2015-08-13 10:45:25 +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 McCorkell
cd5342d0ff Merge pull request #18202 from owncloud/revert-route-breaking-changes
Revert route breaking changes
2015-08-11 15:28:06 +01:00
Robin Appelman
b7cbff23d9 handle single file dav endpoints 2015-08-11 14:46:46 +02:00
Robin Appelman
fd35365041 only add tags plugin when loggedin 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
Joas Schilling
32ccd66214 Revert "make knowledge base url configurable"
This reverts commit 8fb89056bd.
2015-08-11 14:20:25 +02:00
Joas Schilling
c16fd29f29 Revert "Only load app routes if the app has already been loaded"
This reverts commit 50ebea41f6.
2015-08-11 14:19:59 +02: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
acd54fbeda Merge pull request #16528 from owncloud/activity-302-improve-settings
Activity 302 improve settings
2015-08-11 11:24:27 +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
Robin McCorkell
8944af57cb Set default forwarded_for_headers to 'HTTP_X_FORWARDED_FOR' 2015-08-10 23:04:52 +02:00
Thomas Müller
54aa57b47a Merge pull request #18109 from owncloud/fix-router-app-loaded
Only load app routes if the app has already been loaded
2015-08-10 21:42:13 +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
Roeland Douma
c2856c05aa Merge pull request #15093 from rullzer/capabilities_manager
Capabilities manager
2015-08-10 20:33:50 +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
Robin Appelman
58e96e53b0 add method to check if we're inside a transaction 2015-08-10 14:15:44 +02:00
Robin Appelman
06065189d7 cleanup empty locks 2015-08-10 14:15:29 +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
c80c9819dc Move core capabilities to new class 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
michag86
c7c021e1c9 Update installer.php 2015-08-10 10:34:44 +02:00
michag86
1a23690522 Check if archive contains a directory named like appid 2015-08-10 09:36:16 +02:00
Robin McCorkell
214729a552 Merge pull request #14779 from owncloud/use-iterator-directory
Use the new IteratorDirectory instead of the fakedir wrapper
2015-08-07 22:16:47 +01: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
Lukas Reschke
77f71fbb08 Merge pull request #18120 from owncloud/appframework-isessio
Add \OCP\ISession to AppFramework
2015-08-07 18:03:51 +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
Robin McCorkell
fcc03e588a Add \OCP\ISession to AppFramework 2015-08-07 12:29:57 +01:00
Thomas Müller
0595c05200 Adding header support to class OC_OCS_Result 2015-08-07 13:12:43 +02:00
blizzz
795f4ad4c0 Merge pull request #18091 from owncloud/add-backbonejs
Add Backbone.js
2015-08-07 00:30:15 +02:00
Robin McCorkell
50ebea41f6 Only load app routes if the app has already been loaded 2015-08-06 16:09:34 +01:00
Vincent Petry
6c139674a4 Merge pull request #18030 from owncloud/dav-upload-updater
go trough the updater when uploading over webdav
2015-08-06 15:28:10 +02:00
Arthur Schiwon
ffaf5fed0e load backbone universally 2015-08-06 12:27:18 +02:00
Arthur Schiwon
67bb5712e4 make available as OC.Backbone to avoid conflicts 2015-08-06 12:08:42 +02:00
Arthur Schiwon
1aaef6fde7 files and sharing will require backbonejs 2015-08-06 11:09:47 +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
a70f145d71 Merge pull request #17961 from owncloud/make_knowledgebase_configurable
make knowledge base url configurable
2015-08-05 11:54:58 +02:00
sualko
ead25de628 add data: to allowed image domains 2015-08-05 11:41:25 +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
90a11efecd Remove "use" statement
Ref https://bugs.php.net/bug.php?id=66773
2015-08-05 09:31:21 +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
728780aee8 Merge pull request #18024 from owncloud/phpseclib-2.0
Update phpseclib to 2.0 for increased PHP7 compatibility
2015-08-04 16:33:14 +02:00
Lukas Reschke
c6a181d00b [PHP 7] Change type hint to also accept Errors
PHP 7 changed the exception types and thus our error handler needs to be able to catch this.

Without this in some cases just a white page is shown instead of an error message.
2015-08-04 11:54:05 +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
cd1bfd7eb6 Fix authors 2015-08-03 21:02:41 +02:00
Thomas Müller
3358db320b Reduce duplicate code 2015-08-03 18:06:07 +02:00
Thomas Müller
bacf1603ff Adding ocs/v2.php with status code mapper 2015-08-03 16:05:50 +02:00
Robin Appelman
9729e67e3d more phpdoc 2015-08-03 16:02:24 +02:00
Robin Appelman
cd205249e4 more phpdoc 2015-08-03 15:46:23 +02:00
Robin Appelman
132a564a21 rename path field to key 2015-08-03 15:46:19 +02:00
Morris Jobke
767ca44988 Merge pull request #17820 from owncloud/dav-exception-log-class
also log the class for dav exceptions
2015-08-03 15:14:21 +02:00
Robin Appelman
c39ded21d2 initialize unused (for now) ttl field to 0 2015-08-03 14:13:36 +02:00
Robin Appelman
96a9d171b3 Fix db schema 2015-08-03 14:13:36 +02:00
Robin Appelman
86acd535c2 use the database backend for locking if no memcache is configured for it 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
Robin Appelman
2a90cbe603 go trough the updater when uploading over webdav 2015-08-03 13:42:36 +02:00
Andreas Fischer
3b803db6d8 Update phpseclib to 2.0 2015-08-03 09:43:45 +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
Jenkins for ownCloud
de01951da3 [tx-robot] updated from transifex 2015-07-31 01:56:30 -04: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
Thomas Müller
22fd04eb41 Merge pull request #17981 from owncloud/correct-regex
Correct regular expressions
2015-07-30 16:07:46 +02:00
Morris Jobke
80810ae10f Merge pull request #17963 from owncloud/remove-derecated-mysql-functions
Moving mysql setup code over to Doctrine
2015-07-30 15:21:54 +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
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
Jenkins for ownCloud
a07254856c [tx-robot] updated from transifex 2015-07-30 01:55:20 -04:00
Thomas Müller
c3cac887f5 - more injection
- less static calls
- use params on sql queries
- handle sql exception on database and user creation gracefully
2015-07-30 00:04:30 +02:00
Thomas Müller
114f128fc3 Moving mysql setup code over to Doctrine 2015-07-29 23:12:59 +02:00