Commit Graph

4365 Commits

Author SHA1 Message Date
Lukas Reschke 89cd929560 Merge pull request #17791 from owncloud/make-eventsource-compatible-with-win10
Add custom CSP for Win 10 compatibility
2015-09-10 15:00:35 +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
Lukas Reschke bfa26db472 Use md5 over the version file to prevent cyclyc dependency 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
Björn Schießle acee9d4750 Merge pull request #18908 from owncloud/allow-0-as-password
Allow 0 and false as password
2015-09-09 10:29:29 +02:00
Robin Appelman 9f11b27797 Use the view logic for getFolderContent for the node api 2015-09-08 22:38:50 +02:00
Lukas Reschke a03422c55a Cache generated result
Saves 50ms
2015-09-08 21:28:15 +02:00
Robin Appelman 1b708e26ef Show cached previews directly 2015-09-08 19:51:15 +02:00
Lukas Reschke 7cbf2bc56d Allow 0 and false as password
When we use the check for "empty" here passwords such as 0 will not work.

Fixes https://github.com/owncloud/password_policy/issues/8
2015-09-08 17:53:29 +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 190d2c3d5b Add tests for the notification manager 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
Joas Schilling 0d154595f8 Fix the subject of notifications 2015-09-08 09:01:01 +02:00
Joas Schilling 57c273b2da Fix closures and adding parsed Actions 2015-09-08 09:01:01 +02:00
Joas Schilling d04021b1ac Fix the request type and the validity 2015-09-08 09:01:01 +02:00
Joas Schilling 21b83dc730 Allow getting the request type 2015-09-08 09:01:01 +02:00
Joas Schilling 913e2e9ae6 Use an INotification to getCount() and markProcessed() 2015-09-08 09:01:01 +02:00
Joas Schilling 3bdfef9107 Add the request type to the action 2015-09-08 09:01:01 +02:00
Joas Schilling f0ecfa6e6c Add the app id to the markProcessed method 2015-09-08 09:01:01 +02:00
Joas Schilling 0bcae89d14 Handle InvalidArgumentException more gracefully 2015-09-08 09:01:01 +02:00
Joas Schilling f16c5a38a8 Add language to the preparation method 2015-09-08 09:01:01 +02:00
Joas Schilling 4e347170ac Notification API 2015-09-08 09:00:57 +02:00
Lukas Reschke 84797023ed Remove XSendFile support
Required to ensure proper locking
2015-09-07 16:52:50 +02:00
Morris Jobke c57595bcb4 Merge pull request #18839 from owncloud/autoloader-supersecure
Restrict autoloaded paths to loaded apps (and other enhancements)
2015-09-07 00:09:00 +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 0fac2e3f3a Unique exception for invalid autoload paths, better handling
Background jobs are tolerant of stale entries left by disabled apps,
which will cause an autoload exception.
2015-09-05 16:50:02 +01:00
Robin McCorkell b06bc409e0 Rebuild app navigation in JS
Retrieve all app navigations to prevent reloading appinfo/app.php and
causing an error when the app isn't fully loaded. The addition/deletion
logic has been moved to JS, simplifying a lot of code.
2015-09-05 02:24:18 +01:00
Robin McCorkell b3acf09c60 Only add valid root for enabled apps 2015-09-05 00:04:58 +01:00
Robin McCorkell cdf01f0419 Split mimetype handling to new class 2015-09-04 17:28:20 +01:00
Morris Jobke 7f8bca64cb Merge pull request #18833 from owncloud/share-prevent-twice
Prevent sharing twice with user when already a group
2015-09-04 18:26:50 +02:00
Vincent Petry f100ef0fc6 Prevent sharing twice with user when already a group 2015-09-04 16:22:01 +02: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 38a164aa7a Make sure the array exists 2015-09-03 15:41:30 +02:00
Robin Appelman 8123df9489 setup owner when getting users for share 2015-09-03 14:34:46 +02:00
Morris Jobke a1e13d95ad Merge pull request #18777 from owncloud/locking-default
enable transational locking by default
2015-09-03 11:33:10 +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
Joas Schilling 8f2110e5da Revert "Soft fail when deleting and no entry found" 2015-09-02 19:52:45 +02:00
Robin Appelman 4880d7729b enable transational locking by default 2015-09-02 16:56:47 +02:00
Robin McCorkell c9c246a3f5 Soft fail when deleting and no entry found 2015-09-02 14:50:07 +01:00
Robin Appelman 0f6df2e0b6 Allow creating previewss that cover the specified dimensions 2015-09-02 10:32:39 +02:00
Robin Appelman 1c10fb5c9f also use httpclient for uploadFile 2015-09-01 18:01:27 +02:00
Robin McCorkell 5b2529b448 Delay adding OCS prefix to route collection until all is loaded
->addPrefix() iterates over all registered routes, so must be run after
all apps have had a chance to load their OCS routes.
2015-09-01 15:42:41 +01: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 McCorkell 9e9ffb1356 Allow access to full alias and mapping arrays 2015-09-01 14:07:14 +01: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
Vincent Petry 6ccbf4bce6 Improved update version detection logic 2015-08-31 18:35:35 +02:00
Vincent Petry 85b62c7d82 Merge pull request #18635 from owncloud/stickify-files-and-sharing-notification-types
Sticky the notification types of files and sharing
2015-08-31 17:56:48 +02:00
Robin McCorkell 3142a20f25 Expose files_external services from Server
Not exposed to OCP yet
2015-08-31 15:18:26 +01:00
Vincent Petry f8d8de5da6 Merge pull request #17899 from owncloud/enc_make_key_storage_root_configurable
Make root of key storage configurable
2015-08-31 15:58:30 +02:00
Morris Jobke c34fbea197 Merge pull request #18691 from owncloud/request-no-read
Decode request content only on getContent
2015-08-31 14:58:48 +02:00
Vincent Petry 3b37c20319 Simplify comparison algo 2015-08-31 14:31:17 +02:00
Robin McCorkell e60c4bada1 Decode request content only on getContent 2015-08-31 01:05:25 +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
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 a12d354762 Deprecate OC_L10N::get() 2015-08-28 12:04:52 +02: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
Bjoern Schiessle e51fe617d8 copy always file by file to encrypt/decrypt it if needed 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 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
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 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 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
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
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
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 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
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
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
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
Thomas Müller 5ed38a75d6 Remove remainings of mssql 2015-07-29 18:19:31 +02:00
Bjoern Schiessle 8fb89056bd make knowledge base url configurable 2015-07-29 18:07:04 +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 7c9405a921 Disable filesystem_check_changes by default
This will prevent detecting remote changes done in the data folder /
root storage by default. In the rare cases where the data folder is
shared with other apps/users outside ownCloud and change detection is
needed, the admin will have to set the option explicitly from now on.

Note that this doesn't affect external storages which have their own
setting in the mount options.
2015-07-29 12:01:12 +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
Vincent Petry 6ada1e3276 Merge pull request #17902 from owncloud/fix_17898
get header size before we open the file to avoid locking exception
2015-07-27 16:58:32 +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 88fb389eab Proper deprecate methods 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
Bjoern Schiessle 0736b45d92 get header size before we open the file to avoid locking exception 2015-07-27 14:29:07 +02:00
Robin Appelman f74525c349 check if the user is trying to scan a valid path 2015-07-27 11:21:48 +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 11244736ae Merge pull request #17838 from owncloud/sharing-password-policy-master
Use a hook to integrate sharing password verification
2015-07-24 16:47:18 +02:00
Robin Appelman 91fbee8988 also log the class for dav exceptions 2015-07-24 13:30:52 +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
Thomas Müller 632e39a750 Fix PHPDoc on setPassword 2015-07-23 16:11:06 +02:00
Joas Schilling 9cee8ff9f8 Only set is encrypted when encryption is enabled 2015-07-23 15:18:59 +02:00
Thomas Müller ac08685234 Use a hook to integrate sharing password verification 2015-07-23 14:44:48 +02:00
Joas Schilling 02323eca01 Throw a InvalidArgumentException when a consumer/extension is invalid 2015-07-23 11:00:29 +02:00
Lukas Reschke 874ccbfb81 Add custom CSP for Win 10 compatibility
The default content-security-policy of ownCloud forbids inline
JavaScript for security reasons. IE starting on Windows 10 will
however also obey the CSP which will break the event source fallback.
As a workaround thus we set a custom policy which allows the execution
of inline JavaScript.

This fixes https://github.com/owncloud/core/issues/14286
2015-07-21 20:40:32 +02:00
Joas Schilling 20cd0ae55b Add a log message when the Doctrine Query Builder is retrieved 2015-07-21 15:53:28 +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 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
Joas Schilling 1bfb944d51 Add QueryBuilder, ExpressionBuilder and CompositeExpression wrappers 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
Morris Jobke 5a5c59639b Escape ampersand in logout URL
* fixes #17757
2015-07-21 00:26:30 +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
Robin McCorkell d3bcafe618 Update .user.ini when setting upload size limit 2015-07-20 12:52:43 +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
Lukas Reschke 1e4496c1cb Merge pull request #17698 from owncloud/allow-update-of-disabled-apps
Allow upgrade of not enabled apps
2015-07-19 12:14:13 +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 16d8014cdd set targetIsEncrypted to true if file cache indicates that we try to read a encrypted file 2015-07-17 13:30:08 +02:00
Bjoern Schiessle a2e2005e67 make sure that we always detect legacy files correctly 2015-07-17 13:30:08 +02:00
Morris Jobke f7a78cf650 Merge pull request #17663 from owncloud/occ-memcache
Missing memcache should not cause occ hard-fail
2015-07-17 13:15:47 +02:00
Joas Schilling 3566dcf246 PR #17046 deprecated OCP\Util::mb_(sub)str_replace() 2015-07-17 12:34:56 +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 483c886291 Add deprecation version to the list 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
Morris Jobke 3fae984b56 Merge pull request #17282 from owncloud/s2s-catchremotelockexceptions
Throw lock exceptions if remote share returned 423 status code
2015-07-17 11:34:34 +02:00
Thomas Müller bd71540c8a Fixing 'Undefined index: REMOTE_ADDR' - fixes #17460 2015-07-16 16:40:57 +02:00
blizzz bfb90d10ed Merge pull request #17046 from nicolas-grekas/fix-16654
Do not use OC*::mb_*_replace(), they are useless
2015-07-16 11:35:25 +02:00
Nicolas Grekas 472d48f6e3 Do not use OC*::mb_*_replace(), they are useless 2015-07-16 11:00:04 +02:00
Robin McCorkell 8efa23c895 Fix memcache factory unit tests 2015-07-16 03:53:18 +01:00