Commit Graph

5145 Commits

Author SHA1 Message Date
Thomas Müller 7fefd4f4d9 Merge pull request #20860 from owncloud/use-user-getEMailAddress-all-over-the-place
User IUser::getEMailAddress() all over the place
2015-12-03 09:21:53 +01:00
Thomas Müller 09600058d0 Merge pull request #20901 from owncloud/get-rid-of-more-legacy-config-stuff
Replace old config code with usage of proper APIs
2015-12-02 21:54:42 +01:00
Thomas Müller dcc7ff09ba Adding unit test for MailNotifications::sendInternalShareMail() 2015-12-02 21:42:14 +01:00
Thomas Müller eebe2b9c23 User IUser::getEMailAddress() all over the place 2015-12-02 21:25:05 +01:00
Thomas Müller df5872ec50 Merge pull request #20719 from owncloud/adding-system-addressbook-of-users
Adding system addressbook for users of this instance - a occ command …
2015-12-02 16:17:58 +01:00
Morris Jobke 37ecde065b Replace old config code with usage of proper APIs 2015-12-02 15:56:59 +01:00
Morris Jobke baecfc4080 Reduce OC_Config usage in lib/
* replaced by proper public interfaces
2015-12-02 14:49:40 +01:00
Thomas Müller 28ceab2f61 Fix endless recursion 2015-12-02 14:44:41 +01:00
Robin Appelman 0062888aaf Also add metadata for postDelete hooks triggered from the view 2015-12-02 13:51:26 +01:00
Thomas Müller 8d218bf3ef Merge pull request #20875 from owncloud/remove-changepropagator
remove old propagation logic
2015-12-02 13:03:31 +01:00
Lukas Reschke 09d9e430d8 Add a trailing slash to generated URLs 2015-12-02 11:27:07 +01:00
Thomas Müller 812a390f32 Merge pull request #20879 from owncloud/check-if-rewrite-base-is-set-if-rewrite-is-active
Check if rewrite base is set if rewrite is active
2015-12-02 10:56:44 +01:00
Thomas Müller c46ea30248 Merge pull request #20865 from owncloud/post-delete-meta
Add metadata to post delete hooks
2015-12-02 10:12:54 +01:00
Thomas Müller f840d8dee7 Merge pull request #20874 from owncloud/allow-di-mimetypedetector
Allow DI for OCP\Files\IMimeTypeDetector
2015-12-02 10:12:35 +01:00
Thomas Müller 0bd0212731 Merge pull request #20877 from owncloud/fix-empty-expirationDate
Check the expiration date for null
2015-12-02 10:12:16 +01:00
Thomas Müller 4c695e63c0 Fix comments 2015-12-02 09:20:58 +01:00
Thomas Müller 0391cc0451 Fix getCloudId 2015-12-02 09:14:41 +01:00
Thomas Müller 6abc02cb88 Proposal: add enumeration function to IUserManager which simply calls a callbask for each user in all backends 2015-12-02 09:14:41 +01:00
Thomas Müller df6fc6cc70 Add the user's cloud id to the vCard 2015-12-02 09:14:41 +01:00
Thomas Müller dad6470baa Add IUser::getAvatarImage() for easy access 2015-12-02 09:14:41 +01:00
Roeland Jago Douma b00db2c933 DI in avatar code
* DI in avatar code
* Use the node API
* More unit tests
* Unit tests no longer require DB
2015-12-01 22:15:43 +01:00
Lukas Reschke 6a067b1ec9 Set RewriteBase to / if OC::WEBROOT is not set 2015-12-01 22:03:25 +01:00
Lukas Reschke 002e719789 Set "SetEnv" within base `.htaccess` file
mod_rewrite as used by the front controller may require a `RewriteBase` in case the installation is done using an alias. Since we cannot enforce a writable `.htaccess` file this will move the `front_controller_active` environment variable into the main .htaccess file. If administrators decide to have this one not writable they can still enable this feature by setting the `front_controller_active` environment variable within the Apache config.
2015-12-01 19:06:48 +01:00
Morris Jobke 3061e5d2fc Check the expiration date for null
* null is always less than any value -> expirationDate gets null
  which is "no date set"
* ref https://github.com/owncloud/core/issues/20590#issuecomment-158393075
2015-12-01 17:43:05 +01:00
Robin Appelman 62cc316c6a remove old propagation logic 2015-12-01 16:50:20 +01:00
Joas Schilling 44852ce324 Allow DI for OCP\Files\IMimeTypeDetector 2015-12-01 16:49:20 +01:00
Lukas Reschke 2515cb17be Support pretty URLs
This changeset allows ownCloud to run with pretty URLs, they will be used if mod_rewrite and mod_env are available. This means basically that the `index.php` in the URL is not shown to the user anymore.

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

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

Due to the way our CSS and JS is structured the .htaccess uses some hacks for the final result but could be worse... And I was just annoyed by all that users crying for the removal of `index.php` ;-)
2015-12-01 16:46:07 +01:00
Thomas Müller 74e8c25a5b Merge pull request #20285 from owncloud/add-integrity-checker
Add code integrity checker foundation
2015-12-01 15:27:50 +01:00
Joas Schilling 1d0c041ac8 Add a method to get the list of tags from the TagNotFound Exception 2015-12-01 14:54:34 +01:00
Robin Appelman 0d63e95a5d Add metadata to post delete hooks 2015-12-01 13:22:58 +01:00
Joas Schilling 1761fdd9ee Fix the docs of the exceptions and remove hardcoded language from the message 2015-12-01 12:32:50 +01:00
Lukas Reschke 4971015544 Add code integrity check
This PR implements the base foundation of the code signing and integrity check. In this PR implemented is the signing and verification logic, as well as commands to sign single apps or the core repository.

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

Code signing basically happens the following way:

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

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

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

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

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

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

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

For packaging stable releases this requires the following additional steps as a last action before zipping:
1. Run `./occ integrity:sign-core` once
2. Run `./occ integrity:sign-app` _for each_ app. However, this can be simply automated using a simple foreach on the apps folder.
2015-12-01 11:55:20 +01:00
Joas Schilling 3c5a6b829e Allow DI the system tag stuff without Application class 2015-11-30 17:08:29 +01:00
Thomas Müller 08248f66ba Merge pull request #20650 from owncloud/systemtags-core
Implement systemtag managers and mapper
2015-11-30 15:38:43 +01:00
Thomas Müller 995ceeb8d9 Merge pull request #20815 from owncloud/avatar-cache-size
cache resized avatars
2015-11-30 14:27:05 +01:00
Thomas Müller fc21aa6c41 Merge pull request #20248 from owncloud/use-phpunit-groups-to-run-database-code-in-isolation
Use phpunit groups to run database code in isolation
2015-11-30 14:25:35 +01:00
Lukas Reschke f4eb15d340 Show error template
Otherwise this leads to an endless redirection in case of a CSRF exception. Also sets user expectation right.
2015-11-30 11:25:52 +01:00
Thomas Müller a94819f4a4 Merge pull request #20809 from owncloud/dont-trust-update-server-message
Don't trust update server
2015-11-30 11:20:30 +01:00
Thomas Müller f9fc254672 Add DB group to some files_external tests
Adding group Db to federation tests and ldap tests

Add group DB to Test_UrlGenerator

Adding group DB to trashbin and versions tests

Adding group DB to Test_Util_CheckServer for pg
2015-11-30 10:55:10 +01:00
Joas Schilling c4bebf66d4 Do not count the entries when we only need to know if it is at least one 2015-11-30 10:20:00 +01:00
Joas Schilling aa1a0a15ea Fix use statements 2015-11-30 10:12:15 +01:00
Thomas Müller 9c1dbaf0ad Merge pull request #20788 from owncloud/catch-missing-route
Dont die when we're missing a route
2015-11-30 10:11:12 +01:00
Joas Schilling 6816b36cdb Add backticks inside function to escape the column 2015-11-30 10:07:00 +01:00
Robin Appelman 6b7e748245 cache resized avatars 2015-11-28 17:33:16 +01:00
Lukas Reschke f3e9106864 Don't trust update server
In case the update server may deliver malicious content this would allow an adversary to inject arbitrary HTML into the response. So very bad stuff.

While signing the response would be better and something we can also do in the future (considering the code signing work), this is already a good first start.
2015-11-28 12:21:53 +01:00
Robin Appelman 4c4331982c Merge pull request #20789 from owncloud/scanner-skip-not-available
Skip unavailable storages in scanner
2015-11-27 22:57:47 +01:00
Vincent Petry b666367a79 Added system tags data structure and PHP side managers
Added SystemTagManager and SystemTagObjectMapper
2015-11-27 17:54:29 +01:00
Robin Appelman b05c8faba8 Dont die when we're missing a route 2015-11-27 14:29:06 +01:00
Robin Appelman 816cd66b4b also log exception 2015-11-27 14:28:15 +01:00
Thomas Müller bdbefe17d6 Merge pull request #20782 from mitar/better-https
Also allow empty value for no-HTTPS
2015-11-27 14:24:23 +01:00
Robin Appelman ae71f80f4a Skip unavailable storages in scanner 2015-11-27 14:02:50 +01:00
Mitar 59511d97ee Also allow empty value for no-HTTPS.
This makes it work better with old version of Nginx.
2015-11-27 01:01:56 -08:00
Morris Jobke 7aed592957 Add full interface of server container as alias 2015-11-26 18:20:25 +01:00
Thomas Müller 8fe878afe9 Merge pull request #20602 from owncloud/fix-installed-apps
Always installed apps includes the hardcoded ones from shipped.json
2015-11-26 16:50:05 +01:00
Thomas Müller 80c43ffc6c Merge pull request #20702 from owncloud/move-user-principal-into-subfolder
Users are available under it's own principal resource named 'principa…
2015-11-26 16:49:49 +01:00
Thomas Müller 19d5059109 Merge pull request #20393 from owncloud/querybuilder-select-with-alias
Add a method to select a field or value with alias
2015-11-26 16:19:20 +01:00
Morris Jobke 675417a75c Untangle the linkToDocs method in OC_Helper
* now uses the proper URLGenerator interface
* add comment about DI problems
2015-11-26 13:58:43 +01:00
Thomas Müller 3882cc8ef3 Merge pull request #20744 from owncloud/oc_helper-getMimeType-cleanup
Remove last occurences of OC_Helper::getMimeType()
2015-11-26 12:37:25 +01:00
Thomas Müller 5a33390a69 Merge pull request #20731 from owncloud/per-storage-updater
Make Cache\Updater per storage
2015-11-26 12:01:44 +01:00
Morris Jobke 0b8296a756 remove unused method 2015-11-26 10:58:30 +01:00
Morris Jobke 4fcab98694 Remove unused internal methods
* removes OC_Helper::mb_substr_replace and OC_Helper::mb_str_replace
* keeps public interface wrapper working as expected
2015-11-26 10:25:43 +01:00
Morris Jobke 9318606faf Remove last occurences of OC_Helper::getMimeType()
* ref #4774
2015-11-26 10:18:32 +01:00
Thomas Müller b799e42b4e Introduce \OCP\IUser::getEMailAddress() 2015-11-25 22:23:34 +01:00
Thomas Müller 9ec2f8886e Merge pull request #20691 from owncloud/share2.0_di_fixes
[Sharing 2.0] di fixes
2015-11-25 15:25:50 +01:00
Thomas Müller afe76840f8 Merge pull request #20705 from owncloud/fix_20648
Fix overriding function from 3rdparty warning
2015-11-25 15:24:20 +01:00
Robin Appelman b025f07fb7 Make Cache\Updater per storage 2015-11-25 14:16:00 +01:00
Thomas Müller 50f6817ce9 Merge pull request #20439 from owncloud/etag-propagate-in-storage
Take submount etag into account for folder etags
2015-11-25 12:49:54 +01:00
Thomas Müller 89b9f5518b Merge pull request #20636 from owncloud/savre-3.0
sabre/dav 3.0 and related
2015-11-24 16:20:48 +01:00
Thomas Müller 4bb346a1e6 Merge pull request #20692 from owncloud/federation_auto_add_servers
auto-add ownClouds to the list of trusted servers
2015-11-24 16:19:39 +01:00
Thomas Müller ae36c01b95 Adjust sabre changes in core 2015-11-24 15:11:54 +01:00
Roeland Jago Douma cfdf2b9976 Fix overriding function from 3rdparty warning
Fixes #20648
2015-11-24 13:25:50 +01:00
Björn Schießle 964fa1fce3 use hooks to auto add server to the list of trusted servers once a federated share was created 2015-11-24 11:34:38 +01:00
Roeland Jago Douma 85976b7293 [Sharing 2.0] Fix phpdoc etc 2015-11-24 10:26:36 +01:00
Roeland Jago Douma a2b8483779 [Sharing 2.0] Default share provider only generic DI
No injection of userfolders etc. Only generic DI components
(IRootFolder) etc should be used to make sure we can also run this from
the cli
2015-11-24 10:26:36 +01:00
Roeland Jago Douma aeae73b364 [Sharing 2.0] Removed unused DI stuff
The share manager etc should not care about filtering stuff. They should
return what is asked for them.
2015-11-24 10:26:36 +01:00
Joas Schilling 018bd3ee24 Make sure that object id can be a string 2015-11-23 14:18:15 +01:00
Morris Jobke 728648ad77 Replace new occurences of ini_get with IniWrapper methods 2015-11-23 14:12:36 +01:00
Clark Tomlinson 9caf4ffbfc Replacing ini_get instances with inigetwrapper usages 2015-11-23 14:12:31 +01:00
Thomas Müller 021137d7ae Merge pull request #20679 from owncloud/fixphpdoc
p() supports string as argument
2015-11-23 13:32:46 +01:00
Thomas Müller df906f475b Merge pull request #20617 from owncloud/fix-usage-of-lastInsertId
lastInsertId() is properly working with Oracle if the table name is p…
2015-11-23 13:29:08 +01:00
Thomas Müller 240cc1c4ea Merge pull request #20543 from owncloud/share2.0_fix_hooks
Move hook and delete children logic to share manager
2015-11-23 13:28:49 +01:00
Joas Schilling 1c7d7288c4 Add a method to select a field or value with alias 2015-11-23 13:28:31 +01:00
Roeland Jago Douma 1360e22d7c [Sharing 2.0] Move hook and delete children logic to share manager
To make sure hooks are always fired and child entries are always
cleaned. This logic is moved to the share manager.

* Updated unit tests
2015-11-23 12:28:54 +01:00
Morris Jobke 7138659080 p() supports string as argument 2015-11-23 12:11:23 +01:00
Thomas Müller aa660ec232 Throw an exception in case no table name is passed into lastInsertId of the Oracle adapter 2015-11-23 11:44:08 +01:00
Thomas Müller 9f69021691 lastInsertId() is properly working with Oracle if the table name is properly passed in 2015-11-23 11:44:08 +01:00
Joas Schilling a370c29068 Use a DateTime object instead of a timestamp 2015-11-23 11:41:48 +01:00
Individual IT Services 1835462ec4 reuse code 2015-11-23 11:02:46 +01:00
Thomas Müller 79bbda994b Merge pull request #16902 from owncloud/jsocclient
Web UI uses Webdav instead of ajax/* calls
2015-11-23 09:38:01 +01:00
Thomas Müller 2f89eef334 Merge pull request #20524 from owncloud/pgsql-version-check-error
assume pgsql >=9 if checking the version fails
2015-11-23 09:05:13 +01:00
Robin Appelman 2d7c9f0ba9 also match ie11 with Request::USER_AGENT_IE 2015-11-22 16:05:52 +01:00
Vincent Petry a05e40932c Now using IE8 workaround of davclient.js for all IE versions 2015-11-22 16:05:52 +01:00
Thomas Müller 358858c9e3 Fix undefined HTTP_USER_AGENT 2015-11-22 16:05:50 +01:00
Vincent Petry fb3d5c7856 Add evert's davclient.js + es6-promise + IE8 workaround
- Add davclient.js lib
- Add es6-promise required by that lib
- Wrote IE8 workaround lib/shim for davclient.js
2015-11-22 16:05:49 +01:00
Thomas Müller 427d107b9f Merge pull request #20614 from owncloud/use-mocks-when-testing-isSharingDisabledForUser
Use mocks when testing isSharingDisabledForUser
2015-11-20 15:22:52 +01:00
Thomas Müller c86483f3ed Adjust PHPDoc as suggested 2015-11-20 14:38:29 +01:00
Thomas Müller c565a7b042 Fix failing unit test 💀 2015-11-19 16:44:43 +01:00
Thomas Müller 9ec2850c78 Use mocks when testing isSharingDisabledForUser 2015-11-19 15:36:16 +01:00
Roeland Jago Douma ca6bd5cacd Follow the interface again 2015-11-19 14:34:59 +01:00
Robin Appelman 888df3933d take the etag of child mounts into account for the folder etag
this replaces shared etag propagation
2015-11-19 13:32:00 +01:00
Robin Appelman d006a7c723 Fix scanning of incomplete folders 2015-11-19 13:30:50 +01:00
Robin Appelman 02f847bc66 use relative path 2015-11-19 13:30:50 +01:00
Robin Appelman d5061b8139 fix fileinfo for non existing files 2015-11-19 13:30:50 +01:00
Robin Appelman 1736c70075 Some more cleanup for getFIleInfo/getDirectoryContent 2015-11-19 13:30:50 +01:00
Robin Appelman 02be8a3a12 Split getting cache entry and checking update to a seperate method 2015-11-19 13:29:12 +01:00
Morris Jobke 1189528e1f Always installed apps includes the hardcoded ones from shipped.json
* fixes #20568
2015-11-19 09:11:14 +01:00
Robin Appelman 71b86c0ed4 Handle non existing users as owner in the view 2015-11-18 17:08:18 +01:00
Thomas Müller 8d74e28af6 Merge pull request #20438 from owncloud/memcache-key-length-fix
Handle errors on memcached level
2015-11-18 14:20:57 +01:00
Thomas Müller 6efa72867a Merge pull request #20540 from owncloud/fix-format-call-in-logger
Try to fix logging errors we did observe on ci ....
2015-11-18 09:18:54 +01:00
Thomas Müller aba119951e Merge pull request #20494 from owncloud/storage-forbidden-exception
Allow storage wrappers to through a forbidden exception with retry information for clients
2015-11-18 09:13:45 +01:00
Thomas Müller 8db9c49cda Merge pull request #20551 from owncloud/notification-fix-tests
Notification - Add tests for the "return $this" and fix it on the new method
2015-11-18 09:12:27 +01:00
Thomas Müller 74ce6d29e1 Merge pull request #20544 from owncloud/move-index-to-appframework
Move index.php from files to AppFramework
2015-11-17 12:49:38 +01:00
Joas Schilling e2cfcd992c Allow storage wrappers to through a forbidden exception with retry information 2015-11-17 10:39:52 +01:00
Joas Schilling 2fde6a77d7 Add tests for the "return $this" and fix it on the new method 2015-11-17 09:26:13 +01:00
Thomas Müller 705d208a8a Merge pull request #20539 from owncloud/notification-api-adjustment
Notification api update
2015-11-17 08:39:06 +01:00
Lukas Reschke daa388ce8d Move index.php from files to AppFramework
1. Allows it to use the more secure CSP rules of the AppFramework.
2. Adds some unit tests.
2015-11-16 21:10:11 +01:00
Thomas Müller 6ffd042a64 fixes #20538 2015-11-16 16:29:21 +01:00
Joas Schilling 40d5d55124 Remove the icon for now 2015-11-16 16:17:23 +01:00
Joas Schilling 1666af89c2 Add "is primary action" to actions 2015-11-16 16:14:52 +01:00
Thomas Müller 8169e4fdc8 Merge pull request #20465 from owncloud/forms.css
Move form styles from styles.css to inputs.css
2015-11-16 15:29:02 +01:00
Roeland Jago Douma 1e9fc33212 [Share2.0] OCS Share API getShare uses new code 2015-11-16 13:32:28 +01:00
Robin Appelman cc1db4ba87 assume pgsql >=9 if checking the version fails 2015-11-16 13:11:32 +01:00
Hendrik Leppelsack 7ab56de58b move form styles from styles.css to inputs.css 2015-11-13 00:19:57 +01:00
Thomas Müller aff4aed43c Merge pull request #20472 from owncloud/switch-ch-log_with_ms_precision
enable microseconds in log timestamps
2015-11-12 17:30:32 +01:00
Christian Schnidrig d0464bf772 enable microseconds in log timestamps 2015-11-12 10:33:20 +01:00
Thomas Müller 3248db05f1 Merge pull request #17920 from andyboeh/master
Add possibility for alternative logins to force redirection of login page
2015-11-12 10:15:23 +01:00
Thomas Müller af05be1ac7 Merge pull request #20461 from owncloud/assetpipeline-on-upgrade
Do not use the asset pipeline when doing updates
2015-11-12 08:51:30 +01:00
Joas Schilling c9753655dc Do not use the asset pipeline when doing updates 2015-11-11 18:18:33 +01:00
Thomas Müller c9b671a12f Handle errors on memcached level - fixes #17397 2015-11-10 15:58:17 +01:00
Robin Appelman 331ef0e3c0 Add getOwner to FileInfo 2015-11-10 10:55:29 +01:00
Thomas Müller 422d29ae48 Merge pull request #20373 from owncloud/use-random-int-if-it-exists
Use native CSPRNG if available
2015-11-10 10:10:23 +01:00
Robin Appelman 960c8cb5bc Merge pull request #16604 from owncloud/cache-escape-like
escape like parameter in cache operations
2015-11-10 09:45:00 +01:00
Thomas Müller f8e020ff87 Merge pull request #20390 from owncloud/appcheckcode-no-duplicate-requirement
Do not allow two different version requirements
2015-11-10 00:27:05 +01:00
Roeland Jago Douma 402e0afbc5 Fix Error message when sharing outside of group
For #19788
2015-11-09 15:52:17 +01:00
Lukas Reschke 045ea4eb2b Use native CSPRNG if available
Unfortunately only PHP 7…
2015-11-09 15:04:22 +01:00
Joas Schilling fe04451cb1 Do not allow two different version requirements 2015-11-09 11:10:37 +01:00
Thomas Müller cc4f4f222d Merge pull request #20348 from owncloud/issue-20303-integer-group-names
Make sure that group names are strings not integers
2015-11-06 11:48:40 +01:00
Thomas Müller 8047597a81 Merge pull request #20288 from owncloud/fix_20234
make sure that we update the unencrypted size for the versions
2015-11-06 11:17:17 +01:00
Joas Schilling 292dc553c3 Make sure that group names are strings not integers 2015-11-06 10:40:09 +01:00
Robin Appelman d36e1bbab2 escape like parameter for move queries 2015-11-05 16:41:33 +01:00
Robin Appelman d514200b56 Add escapeLikeParameter to IDBConnection 2015-11-05 16:41:30 +01:00
Robin Appelman b05e1b6ed3 define escape character for like statements on oracle 2015-11-05 16:29:35 +01:00
Robin Appelman b394fe8709 define escape character for like statements on sqlite 2015-11-05 16:28:54 +01:00
Robin Appelman 236c3c62cc move from OC_DB to IDBConnection 2015-11-05 16:25:02 +01:00
Roeland Jago Douma 0be05fdddd Add unshare hooks 2015-11-05 15:59:09 +01:00
Roeland Jago Douma 6624fa212a The new sharing code now handles deletion
OCS -> ShareManager -> DefaultShareProvider
2015-11-05 15:59:09 +01:00
Roeland Jago Douma 9567fa1194 Initial setup of shareing 2.0 sharemanager and share
* Added sharemanager class

This is the central class where all API calls talk to (OCS/Activity).
This in turn talks to the share providers to get the actual sharing
done.

It uses all ShareObjects

* Added share class

Simple class to hold all the share properties that is passed around

* Added IShareProvider interface

Interface that providers os a share have to implement.
2015-11-05 15:59:08 +01:00
Arthur Schiwon 51ead4e59b subadmin methods should not return any null user or group 2015-11-05 11:50:57 +01:00
Thomas Müller ba02a3771b Merge pull request #20053 from owncloud/getfileinfo-locking
Don't lock if we're only reading cache metadata
2015-11-04 22:40:17 +01:00
Robin Appelman a2cfbd975a mark path as checked 2015-11-04 16:34:39 +01:00
Robin Appelman c487f0f138 when a file is locked use old cache data 2015-11-04 14:45:10 +01:00
Thomas Müller bb216feeb2 Merge pull request #18361 from owncloud/sharing_performance_improvements
improve calculation of share recipients
2015-11-04 14:44:31 +01:00
Robin Appelman 0a56313ca4 fix whitespace 2015-11-04 14:41:03 +01:00
Björn Schießle 6d0a324144 make sure that we update the unencrypted size for the versions 2015-11-04 10:59:05 +01:00
Thomas Müller c59ca9203d Merge pull request #18821 from owncloud/global-classes
Global classes in core CSS
2015-11-04 10:30:10 +01:00
Bjoern Schiessle 4719305e3b cache result from parent folders 2015-11-04 09:27:29 +01:00
Robin Appelman fc7f7e5c37 only lock in getDirectoryContent if we need to update the cache 2015-11-03 18:23:22 +01:00
Robin Appelman 4f2656993e only lock in getFileInfo if we need to update the cache 2015-11-03 18:23:22 +01:00
Robin Appelman 0397871f7e Split checkUpdate 2015-11-03 18:23:22 +01:00
Thomas Müller b2a437ffff Add a new core capability which tells the clients which url to use 2015-11-03 14:27:36 +01:00
Thomas Müller 620dc7ce22 Merge pull request #20196 from owncloud/use-actual-mimetype-detection-instead-of-oath
Use actual mimetype detection instead of extension
2015-11-02 17:36:13 +01:00
Raghu Nayyar 56b537271e Global Classes for Core.
Move up the global styles up the hierarchy.

Adds Clear Left, Right and both.

New CSS file for Global Styles.
2015-11-02 20:54:02 +05:30
Thomas Müller b6ca23afe1 Merge pull request #20189 from owncloud/use-get-http-protocol
Use getHttpProtocol instead of $_SERVER
2015-11-02 10:13:41 +01:00
Lukas Reschke 40ae54d60a Use actual mimetype detection instead of extension
We cannot rely on the extension as the file may also be a valid TAR or ZIP file without such content. Especially when getting resources from the ownCloud appstore.
2015-10-31 00:55:37 +01:00
Lukas Reschke 78cad94ff4 Add support for Redis password auth
For enhanced security it is recommended to configure Redis to only accept connections with a password. (http://redis.io/topics/security)

This is especially critical since Redis supports the LUA scripting language and thus a simple SSRF vulnerability (as proven in http://benmmurphy.github.io/blog/2015/06/04/redis-eval-lua-sandbox-escape/ for example) may lead to a remote code execution.
2015-10-30 20:19:23 +01:00
Lukas Reschke bafb86fb9f Use getHttpProtocol instead of $_SERVER 2015-10-30 18:05:30 +01:00
Morris Jobke ef76998eda Add warning for broken l10n json files
* makes it easier to spot broken l10n files
2015-10-30 09:10:16 +01:00
Thomas Müller 73d9699be9 Merge pull request #20135 from owncloud/check-if-null-subadmin
Drop OC_SubAdmin and replace usages
2015-10-29 17:07:45 +01:00
Robin Appelman c30a68e2f8 Merge pull request #20060 from owncloud/cache-move-final-update-transaction
include the final update in the transaction when moving a folder in the cache
2015-10-29 16:45:59 +01:00
Thomas Müller 1ce911d2f9 Merge pull request #19592 from owncloud/availability-root-always-exists
The root of a storage always exists
2015-10-29 14:14:56 +01:00
Robin Appelman 01d3393b7b include the final update in the transaction when moving a folder in the cache 2015-10-29 12:34:49 +01:00
Thomas Müller 530f7229e7 Merge pull request #19869 from owncloud/cache-adjustcurrentmtimeonrename
On rename, also refresh storage_mtime of the target file
2015-10-29 11:57:00 +01:00
Lukas Reschke c6f6a8758b Drop OC_SubAdmin and replace usages 2015-10-29 11:31:18 +01:00
Thomas Müller 9ab44f1f00 Merge pull request #11509 from owncloud/internal_email_template
Allow separate templates for internal and external share notifications
2015-10-29 11:27:05 +01:00
Robin Appelman 33eb13e415 The root of a storage always exists 2015-10-29 11:21:50 +01:00
Stephen Colebrook 6feb31bf96 Allow separate templates for internal and external share notifications 2015-10-29 10:24:24 +01:00
Joas Schilling e5a7e3124a Add a repair step that checks for group membership on shares 2015-10-29 09:26:26 +01:00
Thomas Müller 8ad3df9b9e Merge pull request #19182 from cweiske/support-bzip2
Fix #19181: Support .bz2 app archives
2015-10-28 14:05:11 +01:00
Roeland Jago Douma 07fe1df8c1 Make \OC\SubAdmin php-5.4 compatible
* Also close some cursors while we are at it
2015-10-28 09:09:16 +01:00
Thomas Müller 40ba8d267f Merge pull request #19837 from owncloud/always-enabled-apps
Store list of apps which cannot be disabled in shipped.json
2015-10-26 17:14:29 +01:00
Vincent Petry b900782513 Also adjust storage_mtime of target after rename
Some storages like Dropbox change their mtime on rename...
2015-10-26 15:41:23 +01:00
Lukas Reschke 8f09d5b67c Update license headers 2015-10-26 14:04:01 +01:00
Thomas Müller d4d954b2d9 Merge pull request #19982 from owncloud/fix-link-sharing-regression-master
Ensure the password is only hashed in case it's changed on the client…
2015-10-26 10:57:31 +01:00
Thomas Müller 2038b2ec34 Fail hard if shipped.json is missing 2015-10-26 09:53:04 +01:00
Thomas Müller 5a5bcccd0d Don't show apps which are always enabled in the app manager 2015-10-26 09:53:04 +01:00
Thomas Müller 6fc59f85b6 Store list of apps which cannot be disabled in shipped.json 2015-10-26 09:53:04 +01:00
Lukas Reschke 13e817e901 Throw exception on `getPath` if file does not exist
Currently the `getPath` methods returned `NULL` in case when a file with the specified ID does not exist. This however mandates that developers are checking for the `NULL` case and if they do not the door for bugs with all kind of impact is widely opened.

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

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

I also adjusted some usages where I believe that we need to catch these errors, in most cases this is though simply an error that should hard-fail.
2015-10-25 17:58:21 +01:00
Robin Appelman 9d7138aa50 Dont lock /$user/files 2015-10-23 14:59:16 +02:00
Roeland Jago Douma 9071e756a1 Fix for broken ajax/share.php endpoint
Even more code mess :(
All tests pass again. But I'm really not happy with this endpoint.
2015-10-23 09:24:03 +02:00
Volker Fröhlich 711e1235ea Expose syslog tag in the configuration 2015-10-22 17:42:55 +02:00
Thomas Müller 4f5ff9c105 Ensure the password is only hashed in case it's changed on the client - fixes #19950 2015-10-22 17:32:40 +02:00
Thomas Müller e471600834 Merge pull request #19890 from owncloud/db-keep-shared-locks
Keep shared locks until the end of the request so we can reuse them
2015-10-22 10:43:00 +02:00
Lukas Reschke 8133d46620 Remove dependency on ICrypto + use XOR 2015-10-21 17:33:41 +02:00
Thomas Müller f7f2a160dd Merge pull request #19918 from owncloud/send-begin-message
Update: state which step we are going to start and warn if it might b…
2015-10-21 14:52:19 +02:00
Thomas Müller 1060be0886 Merge pull request #19927 from owncloud/install-shipped-apps-on-upgrade
Install new shipped apps on upgrade
2015-10-21 14:43:27 +02:00
Roeland Jago Douma c515628ebe Legacy OC_SubAdmin is now just a wrapper 2015-10-21 11:32:38 +02:00
Roeland Jago Douma 0e9ab13943 New \OC\SubAdmin class
* DI
* Tests
* moved OC_SubAdmin to legacy
* Added to private OC\GroupManager
2015-10-21 11:32:38 +02:00
Thomas Müller d8276af301 Install new shipped apps on upgrade -fixes #19925 2015-10-21 11:14:12 +02:00
Thomas Müller d0aeb268d6 Merge pull request #19883 from owncloud/provide-iappcontainer
Provide IAppContainer as dependency injection
2015-10-21 10:49:26 +02:00
Thomas Müller cf9b8fc182 Merge pull request #18184 from owncloud/ocs-merge-headers
Merge headers of ocs results
2015-10-21 10:36:37 +02:00
Robin Appelman f39c73c79c add phpdoc 2015-10-21 09:43:30 +02:00
Robin Appelman cc7bd53d17 Keep shared locks until the end of the request so we can reuse them 2015-10-21 09:43:30 +02:00
Joas Schilling 9200bbeaba Update: state which step we are going to start and warn if it might be slow 2015-10-21 09:17:38 +02:00
Christian Weiske a543d20958 Fix #19181: Support .bz2 app archives
At first a bz2 handling in needs to be fixed; PEAR's Archive_Tar
otherwise gives the following error:
> Unsupported compression type "bz"
> Supported types are "gz", "bz2" and "lzma2"

After that we can whitelist the application/bz2 MIME type in the installer.
2015-10-20 21:56:24 +02:00
Thomas Müller 1a84c8e9d2 Merge pull request #19884 from owncloud/locking_exception
catch all exception if table doesn't exists
2015-10-20 13:44:00 +02:00
Thomas Müller 64dc222ce5 Merge pull request #19874 from owncloud/delete-cookie-instead-of-setting-value-to-empty
Delete cookie instead of emptying value
2015-10-20 12:47:46 +02:00
Björn Schießle 168c2055ba catch all exception if table doesn't exists 2015-10-20 11:34:08 +02:00
Thomas Müller 5752e3b3c0 Merge pull request #19666 from owncloud/fix_13002
Combine OCS API getUser method code into provisioning_api app
2015-10-20 11:10:39 +02:00
Morris Jobke a0743f12c6 Provide IAppContainer as dependency injection 2015-10-20 10:33:53 +02:00
Morris Jobke 5944b33d56 [OCI setup] remove static logger/config calls
* logger/config object are already injected - this only uses it
2015-10-20 08:53:57 +02:00
Lukas Reschke 5588c5f262 Delete cookie instead of emptying value
PHP will handle session cookies with an empty values as an E_WARNING error. ([php/#68063](https://bugs.php.net/bug.php?id=68063))

ownCloud sets the cookie to an empty value in case the session expires, it however after this starts a new session. Due to potential race conditions this can in unlikely cases lead to the fact that the session never gets restarted and the user is left with an empty cookie. PHP tries then to use the empty cookie which makes the instance not usable.

To work around any race condition we now tell PHP to explicitly delete the value which can be done by using `null` as value, PHP will then send a cookie with the value "deleted". Also theepiration has been set to -1.
2015-10-19 19:54:12 +02:00
Jörn Friedrich Dreyer 2895c91291 Merge pull request #17641 from owncloud/fix_objectstore_rename
don't move files in cache twice, fixes renaming for objectstores
2015-10-19 17:18:57 +02:00
Robin Appelman 9c5337ca3e Merge pull request #19833 from owncloud/fix_view_rmdir
Removemount expects absolutePath
2015-10-19 16:22:42 +02:00
Thomas Müller 7fe7655070 The full name has to be tested if it's a dir - fixes #19854 2015-10-19 10:07:33 +02:00
Robin Appelman 0c6c36d0c5 fix objectstore files having create permissions 2015-10-16 21:41:51 +02:00
Robin Appelman e46741cf5d detect object homestorage in share code 2015-10-16 21:41:51 +02:00
Jörn Friedrich Dreyer aab226cef7 don't move files in cache twice, fixes renaming for objectstores 2015-10-16 21:41:51 +02:00
Thomas Müller 6cd1126dd1 Merge pull request #19843 from owncloud/an-app-is-identified-by-having-a-info.xml-app.php-should-not-be-mandatory
an-app-is-identified-by-having-a-info.xml-app.php-should-not-be-manda…
2015-10-16 21:28:55 +02:00
Roeland Jago Douma 8fdb12f8fb Check for error when resharing 2015-10-16 20:43:17 +02:00
Roeland Jago Douma 9e86d71cc5 When sharing with the owner show the path
The error message should contain the path that is being shared not the
numeric id.
2015-10-16 20:43:17 +02:00
Thomas Müller a2ec080427 an-app-is-identified-by-having-a-info.xml-app.php-should-not-be-mandatory 2015-10-16 17:25:22 +02:00
Roeland Jago Douma 3a14cfc295 Removemount expects absolutePath 2015-10-16 14:14:00 +02:00
Thomas Müller 2ff55560e2 Remove $ETagFunction - it was never used 2015-10-16 13:17:12 +02:00
Thomas Müller f2889dc6e4 Consolidate webdav code - move all to one app 2015-10-16 13:17:12 +02:00
Bjoern Schiessle dd6cb67030 check if fopen was successful before continue 2015-10-15 16:27:38 +02:00
Bjoern Schiessle c7883b1769 only wrap source if fopen was successful 2015-10-15 16:27:38 +02:00
Morris Jobke d392ddab70 Remove ArrayParser because it is unused 2015-10-14 16:50:56 +02:00
Thomas Müller fbccdedb5c Merge pull request #19731 from owncloud/update-list-of-deprecated-methods
Update list of deprecated methods
2015-10-14 16:34:55 +02:00
Thomas Müller ba461b0c92 Merge pull request #19760 from owncloud/adding_occ_upgrade_text_note
Adding occ upgrade text note
2015-10-14 16:33:33 +02:00
Thomas Müller db4dae527c Merge pull request #19764 from owncloud/issue-19759-app-check-code-issue
Variables don't have a class, so we can't use toString() on it
2015-10-14 14:10:25 +02:00
Morris Jobke aa10825026 update deprecation message 2015-10-14 14:08:45 +02:00
Joas Schilling e2806b0ae8 Update list of deprecated methods 2015-10-14 14:08:45 +02:00
Joas Schilling 8379611dbe Variables don't have a class, so we can't use toString() on it 2015-10-14 13:16:58 +02:00
Thomas Müller 28d6da8158 Merge pull request #19738 from owncloud/proppatch-lastmodified
Fix mtime PROPPATCH to be "lastmodified" instead of "getlastmodified"
2015-10-14 12:49:33 +02:00
Thomas Müller 757f320531 Merge pull request #19580 from owncloud/issue-19399-remote-shares-case-sensitivity
Make sure that remote shares use the correct uid casing
2015-10-14 12:39:57 +02:00
Thomas Müller 3e87560033 Merge pull request #19727 from owncloud/fix_19678
Return path instead of itemsource
2015-10-14 12:38:38 +02:00
Thomas Müller bfac6c5eb7 Merge pull request #19730 from owncloud/fix_17560
Squash collection shares
2015-10-14 12:38:16 +02:00
Martin 2c32811156 adding occ upgrade text note 2015-10-14 12:16:17 +02:00
Roeland Jago Douma 002e9c76cd Combine OCS API getUser method code into provisioning_api app
Fixes #13002

Move the cloud/users/{userid} code in total to the provisioning API.
2015-10-13 21:07:48 +02:00
Vincent Petry 02513f8d04 Fix mtime PROPPATCH to be "lastmodified" instead of "getlastmodified"
Fix regression that makes PROPPATCH of mtime work like it did in OC <=
8.0.
The PROPPATCH must be done on the "lastmodified" property.
The "getlastmodified" now return 403 again.
2015-10-13 12:51:21 +02:00
Thomas Müller 3891cd9068 Merge pull request #19677 from owncloud/silently-fail-app-upgrade-exceptions-master
Silently fail app upgrade exceptions
2015-10-13 11:04:02 +02:00
Roeland Jago Douma 06aaa059d1 Squash collection shares
If folder1 is shared to user2 and user3. And folder1/folder2 is shared
to user4 and user5 then getting all the users with access to
folder1/folder2 should only list user2 and user 3 once.

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

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

* Added test
2015-10-13 10:05:49 +02:00
Roeland Jago Douma 585e9cb0e9 Return path instead of itemsource
Fixes #19678

Errors should contain paths and not internal ids
2015-10-13 09:00:33 +02:00
Lukas Reschke e03f0542e4 Strip directory from scriptName
`\OCP\IRequest::getScriptName` will also return the directory, so if ownCloud is installed in a subfolder such as `owncloud/` it will resolve to `/owncloud/ocs/v2.php`. This made this check fail and also made it return invalid status codes.
2015-10-12 23:39:16 +02:00
Bjoern Schiessle 8185eaa6dd also detect files in a .part folder as part file 2015-10-12 13:59:16 +02:00
Thomas Müller 0036c637fc Merge pull request #19657 from owncloud/setup-transport
Setup sendmail transport
2015-10-12 13:44:26 +02:00
Thomas Müller 4cb5970947 Always pass in ILogger 2015-10-09 14:08:22 +02:00
Thomas Müller bd21e5925c Clean code 2015-10-09 13:46:59 +02:00
Thomas Müller 38143d670b Catch exceptions during app upgrade - fixes #16240 2015-10-09 13:44:30 +02:00
Robin Appelman a42dd117e2 Merge pull request #19654 from owncloud/db-locking-no-scan-transaction
Dont use a transaction in the scanner while using db based locking
2015-10-09 12:38:54 +02:00
Morris Jobke bf579a153f fix IE8 user agent detection 2015-10-09 11:19:06 +02:00
Thomas Müller 020bb33150 Merge pull request #19034 from owncloud/http-request-warning
Prevent warning decoding content
2015-10-08 21:51:47 +02:00
Thomas Müller 3130438fcc Merge pull request #19651 from owncloud/recursive_mkdir_for_objectstores
make mkdir recursive, add phpdoc to api
2015-10-08 21:28:53 +02:00
Lukas Reschke 18394205c2 Setup sendmail transport
Replaces https://github.com/owncloud/core/pull/19047 and fixes https://github.com/owncloud/enterprise/issues/854  and https://github.com/owncloud/core/issues/19110
2015-10-08 16:48:18 +02:00
Thomas Müller 1227786930 Merge pull request #19650 from owncloud/disable-appstore-for-ee
Disable app store for EE by default
2015-10-08 16:00:41 +02:00
Robin Appelman 7ff5a6ccf4 Dont use a transaction in the scanner while using db based locking 2015-10-08 15:29:04 +02:00
Jörn Friedrich Dreyer 89a63ec74b make mkdir recursive, add phpdoc to api 2015-10-08 14:54:21 +02:00
Lukas Reschke 9866037d0c Disable app store for EE by default
This disables the app store for EE versions by default to address some problems caused by the wrong assumption that "Official" means supported by ownCloud Inc.

Administrators can still enable the app store by setting `appstoreenabled` to true in the config file.
2015-10-08 14:52:52 +02:00
Thomas Müller fd5636cda7 Merge pull request #19644 from owncloud/issue-19617-catch-exception-when-cleaning-locks
Catch "missing table" exception when cleaning up locks
2015-10-08 13:39:34 +02:00
Thomas Müller 2fda4e38e2 Merge pull request #19546 from owncloud/fix-search-for-node-api
Fix search operations for the Node API
2015-10-08 13:17:26 +02:00
Thomas Müller 8d2c8cf2a2 Merge pull request #19607 from owncloud/use-url
Use `/` if installed in main folder
2015-10-08 13:01:41 +02:00
Thomas Müller 95c8d7598b Merge pull request #19609 from owncloud/check_dav_move_permissions
[webdav] Check if source can be deleted before move
2015-10-08 13:01:20 +02:00
Joas Schilling 336a127426 Catch "missing table" exception when cleaning up locks 2015-10-08 11:37:51 +02:00
Joas Schilling e6d9869cf7 Only use zip64 when we have 64 bit php 2015-10-08 09:13:08 +02:00
Thomas Müller 70ba594f45 Merge pull request #19537 from owncloud/fix-white-page-of-death
Fixes last causes for WSOD
2015-10-07 14:55:11 +02:00
Thomas Müller 9f25745649 Fix single file download - fixes #19614 2015-10-07 13:15:58 +02:00
Roeland Jago Douma 1ee56c702d [WEBDAV] check if delete of source is allowed on move
Fixes #5251

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

* Added unit tests

Eventually we need more and better checking here.
2015-10-07 11:58:16 +02:00
Joas Schilling 937fb70757 Do not trigger the update exception when we already show an error 2015-10-07 08:07:52 +02:00
Robin Appelman 59cf817308 Merge pull request #19511 from owncloud/etag-share-permissions-update
Mark shares as dirty when changing permissions
2015-10-06 18:09:12 +02:00
Robin Appelman c2d76d2010 fix internal path when searching in storage root 2015-10-06 15:54:17 +02:00
Olivier Paroz 3173ed29df The minimum size for internalRootLength is 1 2015-10-06 15:54:17 +02:00
Morris Jobke 285e73ac72 validate HTTP protocol in case of an exception 2015-10-06 15:25:31 +02:00
Lukas Reschke 6a4f22c61f Use `/` if installed in main folder
Otherwise an empty string is used indicating the cookie is only valid for those resources. This can lead to eunexpected behaviour.

Fixes https://github.com/owncloud/core/issues/19196
2015-10-06 15:24:19 +02:00
Thomas Müller 79524ce163 Merge pull request #19605 from owncloud/add-get-http-protocol
Add \OCP\IRequest::getHttpProtocol
2015-10-06 15:23:00 +02:00
Joas Schilling 13dd62f7b0 Make sure that remote shares use the correct uid casing 2015-10-06 15:16:19 +02:00
Lukas Reschke 80a232da6a Add \OCP\IRequest::getHttpProtocol
Only allow valid HTTP protocols.

Ref https://github.com/owncloud/core/pull/19537#discussion_r41252333 + https://github.com/owncloud/security-tracker/issues/119
2015-10-06 14:18:46 +02:00
Thomas Müller 48ef5b6b3b OC_Log not longer exists 2015-10-06 14:18:22 +02:00
Thomas Müller 319e61f0ea Merge pull request #19407 from owncloud/lock-zip-content
Lock zip content
2015-10-06 11:47:43 +02:00
Robin Appelman 0817024e6f Mark shares as dirty when changing permissions 2015-10-06 11:38:41 +02:00
Thomas Müller 0385a62363 Merge pull request #19597 from owncloud/update-license-headers
update licence headers via script
2015-10-06 11:18:35 +02:00
Morris Jobke b05422544d Fixes last causes for WSOD
* print plain text if rendering of exception/error page is not possible
2015-10-06 10:20:53 +02:00
Morris Jobke 8366ce2767 deduplicate @xenopathic 2015-10-06 09:52:19 +02:00
Thomas Müller da640adf68 Merge pull request #19577 from owncloud/share-donotreturnentrieswhenusernotingroup
Remove invalid share items from result when missing group membership
2015-10-06 09:24:22 +02:00
Thomas Müller 26b92c406c Merge pull request #19530 from owncloud/issue-13213-sharing-conflict-when-sharing-subfile
Make sure the share we found is for the same item
2015-10-06 09:23:44 +02:00
Morris Jobke b945d71384 update licence headers via script 2015-10-05 21:15:52 +02:00
Robin Appelman b1ce53f890 use a normal rename when moving from the same storage in the encryption wrapper 2015-10-05 20:55:57 +02:00
Thomas Müller be46cd6737 Refactor single file download into it's own method 2015-10-05 17:47:15 +02:00
Thomas Müller 57f841da2c Recursively lock folder contents 2015-10-05 17:31:37 +02:00
Vincent Petry 1c7244c120 Remove invalid share items from result when missing group membership
Group shares usually have subshare entries for every user. In some
situations it can happen that the user was removed from the group but
the subshare entries still exist.

This fix makes sure that such subshare entries are not returned any more
as the user isn't in the group any more.
2015-10-05 17:21:34 +02:00
Thomas Müller 3bf818450a release locks in case of exception 2015-10-05 16:53:57 +02:00
Thomas Müller def8e0c12a log the exception during zip creation 2015-10-05 16:53:57 +02:00
Thomas Müller b5dce05cb6 Lock files which are zipped 2015-10-05 16:53:57 +02:00
Thomas Müller 149792abe6 Clean PHPDoc 2015-10-05 16:53:57 +02:00
Bjoern Schiessle bf82015254 add some output to explain the pre-conditions for decrypt-all 2015-10-05 12:41:05 +02:00
Joas Schilling 3bbb65998f Make sure all variables are defined 2015-10-05 12:03:36 +02:00
Joas Schilling 8de0773214 Make sure the share we found is for the same item 2015-10-05 11:55:37 +02:00
Thomas Müller 56c35da8d5 Merge pull request #19416 from owncloud/node-hook-connector
pass view hooks trough to the node hooks
2015-10-05 10:25:04 +02:00
Lukas Reschke f6e055b2fd Add remark that $run is not supported anymore
Fixes https://github.com/owncloud/core/issues/16908
2015-10-02 23:19:26 +02:00
Thomas Müller ff89824135 Merge pull request #19272 from owncloud/mimetypes-enhanced
Introduce a few new mimetypes for code, fix recursive mimetype aliases
2015-10-02 17:50:34 +02:00
Robin Appelman 8bdffb5ed3 Merge pull request #19525 from owncloud/share-preventmovemountpointintosharedfolder
Prevent moving mount point into already shared folder (outgoing)
2015-10-02 16:50:38 +02:00
Vincent Petry 64ca00925b Prevent moving mount point into already shared folder (outgoing)
It is already not allowed to share a folder containing mount points /
incoming shares.

This fixes an issue that made it possible to bypass the check by moving
the incoming share mount point into an existing outgoing share folder.
2015-10-02 16:14:42 +02:00
Robin McCorkell aeb20675dd Allow recursive mimetype aliases
application/xml -> text/html -> text/code
2015-10-02 15:28:23 +02:00
Robin Appelman af01c04360 Merge pull request #19533 from owncloud/free-space-inf
Work around INF=0 on some shared hosts
2015-10-02 15:04:28 +02:00
Robin Appelman a1d0d23b6a Work around INF=0 on some shared hosts 2015-10-02 14:16:13 +02:00
Morris Jobke 6b53f7c40e [l10n] remove unused static methods 2015-10-02 12:51:45 +02:00
Thomas Müller 8944cb539e Merge pull request #19510 from owncloud/json-grouplist-sharing-exclude
save excluded groups in json format
2015-10-02 12:14:36 +02:00
Joas Schilling 7707bbe648 Allow identifying whether the current item is the filtered one 2015-10-02 09:53:39 +02:00
Jörn Friedrich Dreyer 3098fd0d30 Merge pull request #19505 from owncloud/returnfloatforquota
always return float, update doc
2015-10-02 08:57:04 +02:00
Jörn Friedrich Dreyer b18307aafb Merge pull request #19480 from owncloud/fix-l10n
Fix l10n on master
2015-10-02 08:56:33 +02:00
Thomas Müller b6591084a1 Merge pull request #19463 from owncloud/fix_18132
encryption: versions should always use the keys of the original file, no need to …
2015-10-01 16:56:28 +02:00
Thomas Müller b2dd5cb616 save excluded groups in json format - fixes #10983 2015-10-01 15:37:55 +02:00
Jörn Friedrich Dreyer 1d617c4bf6 always return float, update doc 2015-10-01 13:45:49 +02:00
Robin Appelman 1c3e28a73b Add tests 2015-10-01 13:17:22 +02:00
Robin Appelman dc49e76747 stricter check if thumbnail is cached 2015-10-01 13:14:47 +02:00
Robin Appelman 884e2fcd6e to much copy paste 2015-10-01 13:14:47 +02:00
Robin Appelman 9925ff33f1 use cache data we already have to check if a thumbnail of specific size is cached 2015-10-01 13:14:47 +02:00
Robin Appelman 52d4495793 use the fileinfo to check if we have a valid file 2015-10-01 13:14:47 +02:00
Robin Appelman f4d180ee5c allow passing the fileinfo to the preview manager 2015-10-01 13:14:47 +02:00
Bjoern Schiessle e7232a848b versions should always use the keys of the original file, no need to create new one 2015-10-01 10:10:19 +02:00
Vincent Petry 6e104bc933 Repair step to remove bogus expiration dates from non-link shares 2015-10-01 08:27:12 +02:00
Thomas Müller ff75652cb7 Merge pull request #19299 from owncloud/fixgetRawPathInfo
Fix get raw path info, always return a string
2015-09-30 22:17:02 +02:00
Robin Appelman be8ad69d35 Merge pull request #19478 from owncloud/cache-found-l10n-per-app
cache found l10n per app and not globally
2015-09-30 19:08:42 +02:00
Morris Jobke 73819c4f05 Fix l10n on master
* $app isn't useful for this case
* kill it with 🔥
2015-09-30 17:29:54 +02:00
Morris Jobke 5a2b30d78f cache found l10n per app and not globally
* fixes: if the first call to this is with an app that has no translations
  all future call will get a list with only english in there - even
  if their l10n holds more translations
2015-09-30 16:49:16 +02:00
Thomas Müller 1d8c10cf63 Merge pull request #19468 from owncloud/fix-36-vs-32-previews
Change small thumbnails to 32 px
2015-09-30 15:47:34 +02:00
Thomas Müller acd6c9b605 Merge pull request #19460 from owncloud/fix-postScanFile-and-make-it-available-to-utils-scanner
Fix postScanFile event and make it available to utils scanner
2015-09-30 15:03:50 +02:00
Robin Appelman a2817372ad Clean temp files used for thumbnail generation 2015-09-30 14:07:59 +02:00
Thomas Müller 10978a7a61 Merge pull request #19373 from owncloud/sidebar-preview-cover
Cover both width and height for the sidebar preview
2015-09-30 11:07:18 +02:00
Morris Jobke 1051a3c6f5 Change small thumbnails to 32 px
* fixes #16913
* fixes issues in IE8 where the thumbnail is too big
2015-09-30 10:49:48 +02:00
Olivier Paroz cc64c09ee5 Make postScanFile and postScanFolder available to OC\Files\Utils\Scanner 2015-09-30 01:53:49 +02:00
Olivier Paroz 9ea05c898e Always send a postScanFile event when done scanning a file
postScanFile is important when scanning external storage as it indicates when the file is ready to be used
2015-09-30 01:50:15 +02:00
Robin Appelman a5ad5bf29b Fix preview caching 2015-09-29 17:10:08 +02:00
Thomas Müller 99f440148f Merge pull request #19441 from owncloud/debug-log-mode-during-upgrade
[upgrade] switch to debug logging on upgrade
2015-09-29 16:08:31 +02:00
Morris Jobke 5acb38b5b3 [upgrade] switch to debug logging on upgrade
* resets afterwards
* adds output about the previous log level
2015-09-29 14:35:32 +02:00
Lukas Reschke e735a9915c Add blob: scheme to default CSP policy
Fixes https://github.com/owncloud/core/issues/19438
2015-09-29 14:27:35 +02:00
Thomas Müller c2dd0f80ec Merge pull request #19424 from owncloud/use-jsqueeze
Use jsqueeze
2015-09-29 13:44:26 +02:00
Thomas Müller 69430e0310 Merge pull request #19367 from owncloud/lock-transaction-no-log
remove warning when trying to get a lock while in transaction
2015-09-29 13:18:34 +02:00
Thomas Müller 6414b4b516 Merge pull request #19426 from owncloud/fix-legacy-CSP-for-images
Whitelist "data:" in legacy CSP headers
2015-09-29 13:17:23 +02:00
Robin Appelman f41a38ba15 Cover both width and height for the sidebar preview 2015-09-29 13:07:03 +02:00
Phil Davis 7940a3fb65 Session closed exception wording
and a small comment typo
2015-09-29 12:17:47 +05:45
Olivier Paroz c4bac1655d Fix CSP for images for legacy apps
Fixes #19425
2015-09-28 23:21:26 +02:00
Thomas Müller 766b69a0c8 User upstream class SeparatorFilter 2015-09-28 22:52:45 +02:00
Thomas Müller d40867d855 Suer JSqueezeFilter instead of JSMinFilter 2015-09-28 22:51:43 +02:00
Robin Appelman 00020535f9 pass view hooks trough to the node hooks 2015-09-28 17:18:46 +02:00
Robin Appelman 1e5a41f008 Add hook connector to connect view and node hooks 2015-09-28 17:18:40 +02:00
Thomas Müller d68079f932 Merge pull request #18548 from owncloud/repair-mimetype-limitversion
Repair mime types only when upgrading from OC 8.0
2015-09-28 12:56:36 +02:00
Thomas Müller 65124b48dd Adding ownCloud/TarStreamer 2015-09-28 11:46:54 +02:00
Victor Dubiniuk 057994f4aa Uniform behavour for tar and zip 2015-09-28 11:46:54 +02:00
Victor Dubiniuk 027fb4e3fe More corrections 2015-09-28 11:46:54 +02:00
Victor Dubiniuk 28df7be319 Add namespace. Fix broken zip 2015-09-28 11:46:54 +02:00
Victor Dubiniuk 74d879d039 Add PHpdoc 2015-09-28 11:46:54 +02:00
Victor Dubiniuk e3b95e8473 Introduce streamer 2015-09-28 11:46:53 +02:00
Thomas Müller 0aaece7de7 Merge pull request #19346 from owncloud/drop-passwords-from-exception-log
Remove passwords from logged exception stack traces
2015-09-25 20:04:01 +02:00
Thomas Müller 8f2a14c5d6 Merge pull request #19297 from owncloud/fix_19119
Do not blindy copy expiration date on reshare
2015-09-25 14:36:07 +02:00
Robin Appelman b2a528e303 remove warning when trying to get a lock while in transaction 2015-09-25 14:16:50 +02:00
Thomas Müller 8432c73611 Merge pull request #19030 from owncloud/oparoz-smarter-logger
[jenkins] Dump Arrays, Objects and Exceptions to the log
2015-09-25 14:15:59 +02:00
Thomas Müller 787c668b39 Merge pull request #19360 from owncloud/move-filter-method-into-config-object
Move the filtering of sensitive data to the config class
2015-09-25 14:05:04 +02:00
Thomas Müller 68bf4440d3 Merge pull request #19293 from owncloud/individual-it-move_initTemplate
[jenkins] do not load unnecessary code in case of webdav
2015-09-25 13:49:51 +02:00
Joas Schilling ab69a22606 Deduplicate constant 2015-09-25 13:17:23 +02:00
Roeland Jago Douma 9a373cb5bb Do not blindy copy expiration date on reshare
If a file/folder is reshared we should not blindly copy the expiration
date of the parent share. User/Group shares do not have expiration dates
currently, and thus this is always set to null.

Fixes #19119

* Added testcase
2015-09-25 13:06:05 +02:00
Individual IT Services db84791bb0 Todo for myself to eliminate double code
This will be in a new PR
2015-09-25 15:43:12 +05:45
Individual IT Services 2e42f99d00 add $prepend option to addStyle() & addVendorStyle() 2015-09-25 15:41:55 +05:45
Joas Schilling faba02564a Move the filtering of sensitive data to the config class 2015-09-25 11:08:33 +02:00
Thomas Müller e7bc2a10e3 Merge pull request #15098 from owncloud/fix_preview_versions_revert_issue
fix issue with version rollback and thumbnails
2015-09-24 21:06:27 +02:00
Morris Jobke db8e7ce8b9 Remove passwords from logged exception stack traces
* fixed #16318
* create logException in ILogger
* add unit tests
2015-09-24 20:01:30 +02:00
Thomas Müller ebdd6d96ce Merge pull request #19306 from owncloud/app-code-check-version
[App Code Check] add check for version and mandatory fields
2015-09-24 17:38:48 +02:00
Olivier Paroz f140084a8d Use a 3rd party normalizer for the logger 2015-09-24 17:13:39 +02:00
Morris Jobke 03bf2f786a public, remote and default_enable are not deprecated 2015-09-24 16:47:00 +02:00
Thomas Müller 5ee46c8500 Merge pull request #19337 from owncloud/fix-shipped-check-for-apps
Correctly check whether an app is shipped
2015-09-24 14:51:59 +02:00
Thomas Müller 383f381489 Merge pull request #19340 from owncloud/enc_fix_user_check
only check if the user exists if a user was added as parameter
2015-09-24 14:51:38 +02:00
Morris Jobke 5a3e57c2f5 encode arrays as string 2015-09-24 12:48:44 +02:00
Thomas Müller 8d6ec660a2 Merge pull request #19248 from owncloud/allow-status-code-403-and-503-for-listeners
Convert exceptions to SabreExceptions for the HTTP status code
2015-09-24 12:35:37 +02:00
Bjoern Schiessle d697ea58a4 only check if the user exists if a user was added as parameter 2015-09-24 12:21:40 +02:00
Joas Schilling 9da4869cd4 Correctly check whether an app is shipped 2015-09-24 12:06:29 +02:00
Morris Jobke 9b652ed5d5 [App Code Check] add check for version and mandatory fields
* ref #17598
* including unit tests for mandatory fields/versions
2015-09-24 11:58:12 +02:00
Thomas Müller 330ea18996 Merge pull request #19303 from owncloud/usecorrectvariable
Use correct variable
2015-09-24 11:34:19 +02:00
Thomas Müller 5a11e145da Clean code 2015-09-24 11:03:01 +02:00
Thomas Müller 11974477bd Merge pull request #19326 from owncloud/issue-19314-querybuilder-set-null
Allow `set('column', 'null')` to work like in Doctrine's QueryBuilder
2015-09-24 10:57:49 +02:00
Thomas Müller df75c17e52 Merge pull request #16479 from owncloud/core-fixgetrelativepathwrongmatches
Prevent wrong matches in getRelativePath
2015-09-24 10:25:00 +02:00
Joas Schilling 70572c1e3c Allow `set('column', 'null')` to work like in Doctrine 2015-09-24 09:53:09 +02:00
Jörn Friedrich Dreyer 8b90a55831 use correct variable
wow ... just wow ...
2015-09-23 23:41:39 +02:00
Joas Schilling 1493e86dea Allow listeners to set status code and message 2015-09-23 15:15:07 +02:00
Thomas Müller 2ea2ec0004 Show 'Apps' in the browser title when app management is open 2015-09-23 15:00:58 +02:00
Jörn Friedrich Dreyer d54d9a573f Revert "use correct variable"
This reverts commit 52cbaff061.
2015-09-23 14:09:52 +02:00
Jörn Friedrich Dreyer 52cbaff061 use correct variable
wow ... just wow ...
2015-09-23 13:59:37 +02:00
Jörn Friedrich Dreyer d81416c51d return '' instead of false 2015-09-23 12:32:49 +02:00
Thomas Müller af39e59e88 getService() is not needed -> remove 2015-09-23 12:00:07 +02:00
Individual IT Services bf1cb20e90 do not load unnecessary code in case of webdav
changing from "protected static" to "protected"
as suggested by @nickvergessen
https://github.com/owncloud/core/pull/19114#discussion_r39719851

moving initTemplate() into template constr.

reduce to move initTemplate only

cleanup spaces
2015-09-23 11:57:10 +02:00
Thomas Müller ee649d58c5 Merge pull request #19289 from owncloud/fix-type-hint-errors-container
Fix type hint errors in the container and the interface
2015-09-23 11:42:03 +02:00
Thomas Müller bcdb3c26da Merge pull request #19236 from owncloud/call_dot_directories_function
Replaces if ($file === '.' || $file === '..') by public function call isIgnoredDir
2015-09-23 11:34:23 +02:00
Thomas Müller ad71d92acf Merge pull request #19247 from owncloud/fix_locking_copy_operation
locking: handle exceptions correctly during copy operation
2015-09-23 11:28:27 +02:00
Morris Jobke 56a795ad37 Merge branch 'master' into fix-type-hint-errors-container 2015-09-23 11:01:59 +02:00
Thomas Müller f3d60df56d Merge pull request #19267 from owncloud/individual-it-reduce_db_calls_for_filelocks
[jenkins] Individual it reduce db calls for filelocks
2015-09-23 10:59:58 +02:00
Vincent Petry 0bda4d54c5 Repair mime types only when upgrading from OC 8.0 2015-09-23 10:51:37 +02:00
Joas Schilling ee75f9f594 Fix type hint errors in the container and the interface 2015-09-23 10:13:41 +02:00
Martin 491250320a Replaces if ($file === '.' || $file === '..') by if(\OC\Files\Filesystem::isIgnoredDir($file)). Eases to find where this operation is used. 2015-09-22 17:53:15 +02:00
Lukas Reschke 63b2bc136a Move mimetype files into /resources/config/ 2015-09-22 16:43:28 +02:00
Lukas Reschke a8e8a9dfb9 Move certificate bundle into resources/config/ 2015-09-22 16:43:28 +02:00
Robin Appelman 498e8f712c Merge pull request #19268 from owncloud/revert-18911
Revert "Show cached previews directly"
2015-09-22 16:05:38 +02:00
Individual IT Services 5f11049852 reduce amount of db calls needed for file-locks
return result of insertIfNotExist()

reducing initLockField, throwing exeption in releaseLock

don't throw exception in releaseLock()

cleaning up whitespaces
2015-09-22 15:04:15 +02:00
Robin Appelman d9db959331 Revert "Show cached previews directly"
This reverts commit 1b708e26ef.
2015-09-22 15:01:31 +02:00
Vincent Petry b9cd5bc1dc Prevent wrong matches in getRelativePath
Before this fix, the root "/files" with path "/files_trashbin" would
return "_trashbin" as relative path...
2015-09-22 11:34:37 +02:00
Bjoern Schiessle 17a64360e5 catch excexptions during the copy operation and make sure that we free the lock correctly 2015-09-22 11:32:10 +02:00
Lukas Reschke 36ce254ffd Move dummy backend to Tests namespace 2015-09-22 11:01:11 +02:00
Thomas Müller 67231ed9a7 Merge pull request #19231 from phil-davis/r1
Minor text typos
2015-09-21 23:35:30 +02:00
Phil Davis a165710e99 Minor text typos
that I noticed while looking at some code.
2015-09-21 23:04:25 +05:45
Thomas Müller fd6b4de2d4 Merge pull request #18481 from owncloud/fix-apache-login-master
Repeated calls to loginWithApache() should not not try to set user in…
2015-09-21 16:09:33 +02:00
Thomas Müller d8901cf7cd Merge pull request #19221 from owncloud/improved_error_messages
decrypt-all: improved error message if user doesn't exists
2015-09-21 16:06:43 +02:00
Robin Appelman b23a5e6886 Merge pull request #17347 from owncloud/dav-fopen-overwrite
dont download the existing file for webdav if we're going to overwrite it
2015-09-21 14:13:04 +02:00
Robin Appelman b520a1e520 Merge pull request #19081 from owncloud/prevent0bytedownloads
prevent 0 byte downloads when storage returns false
2015-09-21 13:50:35 +02:00
Robin Appelman 4ecf710dcd dont download the existing file for webdav if we're going to overwrite it 2015-09-21 13:45:25 +02:00
Bjoern Schiessle d2e90b6050 improved error message if user doesn't exists 2015-09-21 13:19:35 +02:00
Thomas Müller 0f2865abb2 Repeated calls to loginWithApache() should not not try to set user information in the session again 2015-09-21 11:55:41 +02:00
Thomas Müller e589226f58 fix PHPDoc 2015-09-21 11:54:46 +02:00
Thomas Müller 2c8eaacec7 Merge headers of ocs results 2015-09-21 11:54:46 +02:00
Thomas Müller 6006a03ef1 Merge pull request #19122 from owncloud/discardexpirationdatefornonlinkshares
Discard expiration date from result for non-link shares
2015-09-21 11:47:37 +02:00
Georg Ehrke b3ff773bbf delete cached preview when rolling back file's version
add random number using OC.parseQueryString and _.extend()

version rollback: add missing prefix to OC\Preview::post_delete

add test to assure that the rollback hook is called
2015-09-20 11:22:40 +02:00
Thomas Müller 9dc136a0d0 Merge pull request #19028 from owncloud/McNetic-zipstreamer-0.7
[jenkins] changed ZipStreamer to use composer for updates, update to 0.7
2015-09-18 17:03:49 +02:00
Thomas Müller bbf128f1b2 Merge pull request #19098 from owncloud/db-lock-no-transaction
Remove the need for the transaction in the database locking backend
2015-09-18 17:02:18 +02:00
Thomas Müller eb41a4da7f Merge branch 'zipstreamer-0.7' of https://github.com/McNetic/owncloud_core into McNetic-zipstreamer-0.7 2015-09-18 14:43:37 +02:00
Lukas Reschke 7c6d811584 Prefer OCS Id from database
To be consistent with other logic the app id from the database needs to be prefered. Especially when it comes to be able to replace an outdated OCS id.
2015-09-18 13:27:26 +02:00
Lukas Reschke 947e3d7ab5 Add repair step for outdated OCS IDs
There is the case where OCs IDs might become outdated such as it has been with the calendar and contacts app which refer to the old dummy entry. This means that users with the old OCS id can't update updates as well will receive invalid state flags. (e.g. "experimental" instead of "approved")

To allow instances to properly update the applications in the future we need to migrate the OCS IDs for now manually.
2015-09-18 13:27:26 +02:00
Thomas Müller 188d6d2e28 Merge pull request #18911 from owncloud/preview-show-cached-directly
Show cached previews directly
2015-09-18 13:02:10 +02:00
Thomas Müller 0101b1c65f Merge pull request #18840 from owncloud/fix-app-disable-route
Rebuild app navigation in JS
2015-09-18 13:00:58 +02:00
Thomas Müller 0eb37e2d64 Merge pull request #19092 from owncloud/allow-checking-for-notifiers
Allow checking whether there are notifiers registered
2015-09-18 11:57:56 +02:00
Thomas Müller 2eeb1b2b79 Merge pull request #19088 from owncloud/fix-availability-int
Explicitly cast number to integer
2015-09-18 08:31:56 +02:00
Thomas Müller 100d9e1976 Merge pull request #19095 from owncloud/set-priority-to-1-for-maintenance
Make sure Maintenance is checked before auth and others
2015-09-18 08:17:58 +02:00
Joas Schilling 44e6c4f398 Do not "use" Server 2015-09-17 15:11:05 +02:00
Robin Appelman e9b1aa6037 improve doc 2015-09-17 14:09:28 +02:00
Joas Schilling 5eddde6486 Add a Sabre plugin that emits an event for apps 2015-09-17 13:59:27 +02:00
Robin Appelman 05fddec022 expire old lock rows 2015-09-17 13:55:04 +02:00
Vincent Petry 1911472b88 Discard expiration date from result for non-link shares 2015-09-17 13:45:26 +02:00
Jörn Friedrich Dreyer 773941dfb0 prevent 0 byte downloads when storage returns false 2015-09-17 11:16:00 +02:00
Joas Schilling c3420fface Allow checking whether there are notifiers registered 2015-09-17 11:08:17 +02:00
Robin Appelman 7c66328381 Remove the need for the transaction in the database locking backend 2015-09-17 11:07:59 +02:00
Joas Schilling bc89bca803 Make sure Maintenance is checked before auth and others 2015-09-17 11:06:51 +02:00
Thomas Müller a1e343ae7c Merge pull request #19086 from owncloud/restore-loadapp-autoload
Restore loadApp() autoload registration
2015-09-16 15:19:41 +02:00
Thomas Müller b0414f6a30 Merge pull request #19022 from owncloud/console-loader-validroot
Register valid root for all installed apps in console
2015-09-16 15:17:43 +02:00
Robin McCorkell a0094d28f1 Explicitly cast number to integer 2015-09-16 11:22:52 +01:00
Robin McCorkell 862afd80b3 Restore loadApp() autoload registration
Also changes the autoloader validRoots into a hashmap to try and reduce
duplicate entries
2015-09-16 10:48:03 +01:00
Thomas Müller ed872589a3 Merge pull request #19077 from owncloud/check-maintenance-before-everything-else-master
Check for maintenance mode first so we send the 503 instead of login…
2015-09-16 10:22:10 +02:00
Joas Schilling e0992c1297 Check for maintenance mode first so we send the 503 instead of login verification 2015-09-16 09:38:36 +02:00
Arthur Schiwon c17d022ca4 started to implement sharee list view. not completed yet, do not cry please. 2015-09-16 07:23:27 +02:00
Arthur Schiwon ffd4e0dc5a split off expirationView 2015-09-16 07:23:26 +02:00
Arthur Schiwon f9c232c4ce split off linkShareView 2015-09-16 07:23:26 +02:00
Arthur Schiwon dcb084a617 split ShareDialogResharerInfoView from base view 2015-09-16 07:23:26 +02:00
Arthur Schiwon 83d91ddf20 further work on reimplementing the dialog layout 2015-09-16 07:23:25 +02:00
Arthur Schiwon edd163a611 refactor share dialog for multi-purpose use (dropdown, sidebar) and better maintainability 2015-09-16 07:23:25 +02:00
Bjoern Schiessle 9bd4f2d41e occ script to disable encryption and to decrypt all files again 2015-09-15 22:39:44 +02:00
Robin Appelman 9883d5b85d Merge pull request #18915 from owncloud/node-getfoldercontents-use-view-logic
Use the view logic for getFolderContent for the node api
2015-09-15 18:04:01 +02:00
Robin Appelman e545c2eec5 Merge pull request #17811 from owncloud/dav-lock-wide
Wrap the entire dav PUT in a read lock
2015-09-15 17:22:00 +02:00
Thomas Müller decdaf0018 Merge pull request #19024 from owncloud/remove-get_temp_dir
Remove get_temp_dir()
2015-09-15 14:18:29 +02:00
Thomas Müller e82a225d04 Merge pull request #18964 from owncloud/availability-integer
Use integer for availability instead of bool
2015-09-15 13:24:55 +02:00
Lukas Reschke 8e1b403b16 Catch apps which have been removed manually 2015-09-15 12:10:23 +02:00
Lukas Reschke 4680691ca6 Define allowed app roots earlier
The autoloader needs to be run before including the app.php, otherwise it depends on what app gets executed first and apps that rely on the dependency of other apps in app.php may break.
2015-09-15 12:10:23 +02:00
Robin McCorkell f8619870ea Remove get_temp_dir() 2015-09-15 11:33:25 +02:00
Robin McCorkell 5ca690e2f8 Use integer for availability instead of bool 2015-09-15 10:18:32 +02:00
Robin McCorkell 31a8949adf Prevent warning decoding content 2015-09-14 22:36:40 +01:00
Robin McCorkell 35d4851af2 Merge branch 'master' into fix-app-disable-route 2015-09-14 19:50:52 +01:00
Robin Appelman 688981b55c allow hook cancel 2015-09-14 20:35:33 +02:00
Robin Appelman 75f126da49 use the correct path for cache updates when doing chunked assembly 2015-09-14 20:35:33 +02:00
Robin Appelman 6386327150 work directly on storages when doing a chunked upload assembly 2015-09-14 20:35:33 +02:00
Robin Appelman b424151459 handle notfound exceptions in lock plugin 2015-09-14 20:35:33 +02:00
Robin Appelman e612d3123f wrap the entire put operation in a read lock 2015-09-14 20:35:33 +02:00
Robin Appelman 209abaadbb expose locking api in sabre connector 2015-09-14 20:35:33 +02:00
Thomas Müller fb9e75edb6 Merge pull request #18973 from owncloud/try-fixing-app-config-on-oracle
Do not compare the value on Oracle
2015-09-14 17:59:52 +02:00
Robin McCorkell dad56921ae Register valid root for all installed apps in console
We need to use commands from apps that aren't enabled (so don't get loaded).
2015-09-14 16:58:25 +01:00
Nicolai Ehemann 6c6be72e6b use zipstreamer via composer 2015-09-14 15:33:28 +02:00
Nicolai Ehemann be2023dae3 lib/private/files.php: adapted to minimally changed ZipStreamer API 2015-09-14 12:57:50 +02:00
Joas Schilling 0e805d5310 Do not compare the value on Oracle
As per docs: http://docs.oracle.com/cd/E11882_01/server.112/e26088/conditions002.htm#i1033286
> Large objects (LOBs) are not supported in comparison conditions.
2015-09-14 12:14:25 +02:00
Lukas Reschke 3adbfbfd69 Use / instead of an empty string as cookie path
When an empty string is used as cookie path PHP will assign the current directory as cookie path.

This means when an user had installed an ownCloud under "/", which is mapped to an empty string in \OC::$WEBROOT, and accessed it the cookie was set to values such as "/index.php/apps/files" since the web browser assumed this to be a directory. This means that multiple encryption cookies were set for the same domain resulting in potential havoc.

With this patch the path will be set to "/" in case an empty web root is installed which makes the cookie accessible to the whole domain.

To test this setup multiple ownCloud instances on the same domain under different ports and have both installed under "/", then try to login in both of it and previously this can in some cases lead to a lockout of the user.

Note that this affects the cookies that the browsers do sent and thus to test this you need to clear all cookies from your browser previously. I consider this an acceptable behaviour for now since this code is only in master.

Fixes https://github.com/owncloud/core/issues/18919
2015-09-14 11:22:34 +02:00
Bernhard Posselt fd74522804 make resolve public to avoid boiler plate code
add resolve to public interface
2015-09-13 17:44:24 +02:00
Frank Karlitschek 7562e4959b Merge pull request #18658 from owncloud/configurable-temp
Configurable temporary directory
2015-09-12 22:04:41 +02:00
Lukas Reschke 1924dd348a Merge pull request #18653 from owncloud/dav-stream-guzzle
stream webdav downloads using http client
2015-09-11 17:10:10 +02:00
Robin McCorkell 188d0e09b8 Add reset method to mimetype loader
Used to solve concurrency issues
2015-09-11 12:44:53 +01:00
Robin McCorkell e99988b9c7 Merge pull request #18676 from owncloud/ext-eventdispatcher
files_external event dispatcher
2015-09-11 09:34:05 +01:00
Robin McCorkell 620173c792 Merge pull request #18851 from owncloud/memcached-getallkeys-fallback
Fallback to complete Memcached flush if getAllKeys fails
2015-09-10 20:33:18 +01:00
Lukas Reschke fb717f254f Merge pull request #18699 from owncloud/notification-manager
Notification manager
2015-09-10 15:26:36 +02:00
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