Commit Graph

1478 Commits

Author SHA1 Message Date
Robin McCorkell da4127d23b Introduce CredentialsManager for storage of credentials in DB
CredentialsManager performs a simple role, of storing and retrieving
encrypted credentials from the database. Credentials are stored by user
ID (which may be null) and credentials identifier. Credentials
themselves may be of any type that can be JSON encoded.

The rationale behind this is to avoid further (mis)use of
oc_preferences, which was being used for all manner of data not related
to user preferences.
2016-01-18 11:10:41 +01:00
Robin McCorkell 88cd615214 Introduce IDBConnection::setValues()
setValues() attempts to insert a new row, or failing that, update an
existing row. The ability to set preconditions is also available.
2016-01-18 11:10:41 +01:00
Thomas Müller 807cf750b3 Merge pull request #21705 from owncloud/improve-background-job-message
Improve background job error message
2016-01-15 20:12:26 +01:00
Thomas Müller f6c4b10189 Add message key to context of logException 2016-01-15 14:55:30 +01:00
Thomas Müller 416fb65605 Merge pull request #21717 from owncloud/addpublicgroupinterface
allow apps to add an OCP GroupInterface backend
2016-01-15 12:38:18 +01:00
Thomas Müller 52040a3f23 Merge pull request #20898 from owncloud/cache-interfaces
Public Cache interfaces
2016-01-15 12:02:31 +01:00
Jörn Friedrich Dreyer 2ebb5726d7 add TODOs with the actual interface name 2016-01-14 14:34:35 +01:00
Jörn Friedrich Dreyer 64043e9bcc move methods to correct interface, deprecate private interface 2016-01-14 14:28:03 +01:00
Jörn Friedrich Dreyer bd77cd98c9 allow apps to add an OCP GroupInterface backend 2016-01-14 13:58:45 +01:00
Robin Appelman 7530f66f52 remove unneeded public cache methods 2016-01-14 13:01:46 +01:00
Robin Appelman 0724ac1e5e split locking related methods to their own interface 2016-01-14 12:54:42 +01:00
Robin Appelman 3deb3bd163 Add IStorage interface for consistent naming
minor phpdoc fixed
2016-01-14 12:54:42 +01:00
Robin Appelman dcbeeced3b add since tags 2016-01-14 12:54:42 +01:00
Robin Appelman 989995a852 fix phpdoc 2016-01-14 12:54:42 +01:00
Robin Appelman a3d50ef49a add watcher interface 2016-01-14 12:54:42 +01:00
Robin Appelman c27894791e Add updater interface and expose cache interfaces from storage 2016-01-14 12:54:42 +01:00
Robin Appelman 5fae07f422 add scanner interface 2016-01-14 12:54:42 +01:00
Robin Appelman 6d321f5f6b Return a class from cache operations instead of an array 2016-01-14 12:54:42 +01:00
Robin Appelman 3ab0ccd4a2 add cache entry interface 2016-01-14 12:54:42 +01:00
Robin Appelman 2dcdc81477 propagator interface 2016-01-14 12:54:42 +01:00
Robin Appelman cdc8c40d60 Add public cache interface 2016-01-14 12:54:42 +01:00
Thomas Müller c5a200c419 Merge pull request #21653 from owncloud/update-license-headers-2016
Update license headers 2016
2016-01-13 08:29:42 +01:00
Thomas Müller 59e9b93be6 Merge pull request #20948 from owncloud/fed-sync-contacts
Syncing system addressbooks across federated ownClouds
2016-01-13 08:27:51 +01:00
Thomas Müller 682821c71e Happy new year! 2016-01-12 15:02:18 +01:00
Thomas Müller dbddbb634b Use EventDispatcher to allow additional setup of auth backends - move federation auth to federation app 2016-01-12 14:24:01 +01:00
Robin Appelman c15cab7ed6 Allow admins to add system wide root certificates 2016-01-12 12:50:59 +01:00
Morris Jobke 078cf8ae36 fix identation in public/irequest.php 2016-01-12 08:48:51 +01:00
Roeland Jago Douma e01a488b31 Remove generateRandomBytes from OC_Util 2016-01-10 22:07:33 +01:00
Thomas Müller 0f5132552c Merge pull request #21292 from owncloud/checkAppEnabled-not-needed-anymore
core will handle invalid URLs and redirects properly
2016-01-08 13:36:11 +01:00
Roeland Jago Douma 34c8249799 Deprecate remaining function and entire class 2016-01-07 21:29:51 +01:00
Lukas Reschke 9bf01283e7 Cleanup router code
- Some functions are entirely broken
- PHPDoc etc...
2016-01-07 21:29:51 +01:00
Lukas Reschke fec41e7539 Move regeneration of session ID into session classes
There were code paths that nowadays call ISession::login directly thus bypassing the desired regeneration of the session ID. This moves the session regeneration deeper into the session handling and thus ensures that it is always called. Furthermore, I also added the session regeneration to the remember me cookie plus added some test case expectations for this.
2016-01-04 15:09:01 +01:00
Morris Jobke 6f00729124 Refactor OC_Util::callCheck 2015-12-22 09:32:14 +01:00
Thomas Müller 95a255b0d4 Merge pull request #21281 from owncloud/allow-di-for-background-jobs
Allow background jobs to be service names for DI
2015-12-18 16:34:42 +01:00
Morris Jobke 2f98f64241 core will handle invalid URLs and redirects properly 2015-12-18 15:51:03 +01:00
Thomas Müller 50e8773307 Merge pull request #21280 from owncloud/drop-unused-methods
OC_Helper::makeURLAbsolute is not used anymore
2015-12-18 14:49:55 +01:00
Joas Schilling a9935bd490 Add methods to interface which have always been required 2015-12-18 14:25:04 +01:00
Morris Jobke 450e2f3bd3 Move OC_Helper code to OCP\Util for linkToRemote 2015-12-18 12:00:18 +01:00
Morris Jobke e42f262d85 properly use OCP\Util instead of OC_Helper 2015-12-18 11:46:21 +01:00
Joas Schilling 0f836cfe9e Make sure the interface and the implementation match 2015-12-18 10:04:30 +01:00
Roeland Jago Douma 9fe3d2f1f8 OC_Helper::linkToRoute is deprecated
Replaced all calls to OC_Helper::linkToRoute with
OC::$server->getURLGenerator()->linkToRoute
2015-12-17 18:46:42 +01:00
Thomas Müller e3ed42135d Merge pull request #21240 from owncloud/avatar_speedup
Avatar speedup
2015-12-17 14:43:21 +01:00
Roeland Jago Douma 19eeb23b91 OC_Helper::linkTo is deprecated
Replaced with suggested (and calling body of)
2015-12-17 10:53:21 +01:00
Roeland Jago Douma d796c43841 [Avatars] Add function to get the Node of the avatar
Since we usually just get the avatar and stream the content to the users
there is no need to first create an image in memory.
2015-12-16 20:29:02 +01:00
Thomas Müller 6317ba8cb4 Merge pull request #21135 from owncloud/add-polyfill
Add polyfills for PHP55, PHP56 and PHP70 functionalities
2015-12-11 11:40:51 +01:00
Lukas Reschke f3360d51c6 Use PHP polyfills 2015-12-11 08:47:36 +01:00
Morris Jobke 4569d88879 IMemcacheTTL was backported to 8.2.2
see #21113
2015-12-10 19:00:07 +01:00
Thomas Müller 744ef6141b Merge pull request #21073 from owncloud/memcache-lock-ttl
Add ttl for redis based locking
2015-12-10 13:51:01 +01:00
Robin Appelman e41f7b005d add since 2015-12-09 14:45:08 +01:00
Robin Appelman 0a80bf5573 Add interface for memcache backends that support setting ttl on exisiting keys 2015-12-09 14:39:12 +01:00
Arthur Schiwon 249dc4490f improve PHP doc and remove superflous by reference indicator 2015-12-09 14:34:23 +01:00
Arthur Schiwon dec1f1d24a anounce CommentsManager getter in public server interface 2015-12-09 14:34:23 +01:00
Arthur Schiwon f9081303b1 fix phpdoc 2015-12-09 14:34:23 +01:00
Arthur Schiwon b44a33f68f fix php doc 2015-12-09 14:34:23 +01:00
Arthur Schiwon 2ce2de0ae5 add icommentsmanger and icomment implementation
register CommentsManager service, allow override, document in config.sample.php

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

specify timezone in null date

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

replace forgotten hardcoded IDs in tests

react on deleted users

react on file deletion

Postgresql compatibility

lastInsertId needs *PREFIX* with the table name

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

add runtime cache for comments
2015-12-09 14:34:23 +01:00
Thomas Müller 45fe8271ab Merge pull request #21030 from owncloud/querybuilder-new-features
Querybuilder new features
2015-12-08 13:51:45 +01:00
Thomas Müller 85409b6701 Merge pull request #20786 from owncloud/systemtags-dav
DAV endpoint for system tags
2015-12-08 13:51:25 +01:00
Joas Schilling 9f98849306 Add a method to the get "to use" table and column name 2015-12-08 11:04:28 +01:00
Joas Schilling a3391248e4 Add select distinct to the query builder 2015-12-08 09:49:21 +01:00
Joas Schilling f2c7acb3c0 Allow getting the last insert id without much hassle 2015-12-08 09:40:20 +01:00
Lukas Reschke 4b293dffe5 Use \OCP\Util::sanitizeHTML instead of \OC_Util::sanitizeHTML 2015-12-08 08:56:47 +01:00
Vincent Petry 316b907a13 Fixed system tags DAV and API and docs 2015-12-04 17:30:50 +01:00
Morris Jobke e6d4496fc2 Remove unused setActiveNavigationEntry of OC_App - it's also in OCP\App 2015-12-04 17:23:51 +01:00
Thomas Müller 2ceae43989 Merge pull request #20545 from owncloud/scan-storage-in-background-job
Move files/ajax/scan.php to background job
2015-12-03 16:53:46 +01:00
Jesús Macias 9dd11091d4 Fix code from comments 2015-12-03 10:00:11 +01:00
Jesús Macias 98f5c50aa4 Migrate storate status code to storagenotavailablexception 2015-12-03 09:59:45 +01:00
Jesús Macias 4ead2bc861 Fix code from PR comments 2015-12-03 09:58:55 +01:00
Jesús Macias 7cd13f462a Add new external storage exceptions for different errors 2015-12-03 09:57:59 +01:00
Thomas Müller e7239b6553 Merge pull request #20872 from owncloud/systemtags-better-not-found-exception
Systemtags better not found exception
2015-12-03 09:26:05 +01:00
Thomas Müller dcc7ff09ba Adding unit test for MailNotifications::sendInternalShareMail() 2015-12-02 21:42:14 +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 baecfc4080 Reduce OC_Config usage in lib/
* replaced by proper public interfaces
2015-12-02 14:49:40 +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
Joas Schilling 1d0c041ac8 Add a method to get the list of tags from the TagNotFound Exception 2015-12-01 14:54:34 +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
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
Lukas Reschke 391bc49dab Move files/ajax/scan.php to background job
The background job will now be executed in chunks of 500 users all 10 minutes.
2015-11-28 13:06:53 +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
Thomas Müller 80c43ffc6c Merge pull request #20702 from owncloud/move-user-principal-into-subfolder
Users are available under it's own principal resource named 'principa…
2015-11-26 16:49:49 +01:00
Thomas Müller 19d5059109 Merge pull request #20393 from owncloud/querybuilder-select-with-alias
Add a method to select a field or value with alias
2015-11-26 16:19:20 +01:00
Thomas Müller 4d22c75d49 Merge pull request #20562 from owncloud/comments-interfaces
public interfaces for Comments
2015-11-26 15:06:35 +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
Arthur Schiwon d660c6162f proper description for IllegalIDChangeException 2015-11-26 12:15:00 +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
Arthur Schiwon ab8937ba6a missing setters for setChildrenCount and setLatestChildDateTime (formerly …Timestamp) 2015-11-23 23:58:22 +01:00
Roeland Jago Douma 5873821b8d Consistent interface declaration 2015-11-23 22:03:19 +01:00
Arthur Schiwon 4005c0337b give creation datetime setter and getter a more meaningful and less misleading name 2015-11-23 17:32:22 +01:00
Arthur Schiwon d43abd0b8f public interfaces for Comments 2015-11-23 17:21:11 +01:00
Joas Schilling 1c7d7288c4 Add a method to select a field or value with alias 2015-11-23 13:28:31 +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
Joas Schilling ea2bf49be0 Adjust the method name to reflect it's behaviour 2015-11-19 16:08:21 +01:00
Thomas Müller 30dd610a2a Merge pull request #20563 from owncloud/systemtags-interface
Core interfaces for system tags and its manager
2015-11-19 15:47:47 +01:00
Thomas Müller 9ec2850c78 Use mocks when testing isSharingDisabledForUser 2015-11-19 15:36:16 +01:00
Vincent Petry ea6341df29 Core interfaces for system tags and its manager 2015-11-19 11:31:25 +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
Joas Schilling e2cfcd992c Allow storage wrappers to through a forbidden exception with retry information 2015-11-17 10:39:52 +01:00
Vincent Petry 84e5b76d3c Add getOwner() method to FileInfo and Node API 2015-11-13 10:41:33 +01:00
Robin Appelman bbe2f5c2d5 Merge pull request #20224 from owncloud/fileinfo-owner
Add getOwner to FileInfo
2015-11-10 14:36:15 +01:00
Thomas Müller 480bf14698 Merge pull request #20389 from owncloud/storage_not_available
use a HintException to have some useful user output in case of an error
2015-11-10 11:53:47 +01:00
Robin Appelman 331ef0e3c0 Add getOwner to FileInfo 2015-11-10 10:55:29 +01:00
Björn Schießle 2960a208cd use a HintException to have some useful user output in case of an error 2015-11-10 10:54:17 +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
Lukas Reschke 045ea4eb2b Use native CSPRNG if available
Unfortunately only PHP 7…
2015-11-09 15:04:22 +01:00
Robin Appelman d514200b56 Add escapeLikeParameter to IDBConnection 2015-11-05 16:41:30 +01:00
Björn Schießle d1a090e3e2 adjust comment, this parameter was added for 9.0 2015-11-04 15:12:22 +01:00
Bjoern Schiessle 4719305e3b cache result from parent folders 2015-11-04 09:27:29 +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
Lukas Reschke 8f09d5b67c Update license headers 2015-10-26 14:04:01 +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
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
Morris Jobke bf579a153f fix IE8 user agent detection 2015-10-09 11:19:06 +02:00
Vincent Petry c7aef6c368 Fix uploading avatar and root certs in IE8 2015-10-09 11:19:05 +02:00
Jörn Friedrich Dreyer 89a63ec74b make mkdir recursive, add phpdoc to api 2015-10-08 14:54:21 +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
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
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
Morris Jobke 8366ce2767 deduplicate @xenopathic 2015-10-06 09:52:19 +02:00
Morris Jobke b945d71384 update licence headers via script 2015-10-05 21:15:52 +02:00
Joas Schilling 7707bbe648 Allow identifying whether the current item is the filtered one 2015-10-02 09:53:39 +02:00
Individual IT Services fbe43e6a26 cache result of \OCP\Util::needUpgrade()
reduce calls of \OCP\Util::needUpgrade()
where \OCP\Util::needUpgrade() is called we can call as well
self::checkUpgrade and use the cached result
In line 877 the call way unnecessary anyway because of the first part of
the if statement

move caching to \OCP\Util::needUpgrade

renaming variable

fixing testNeedUpgradeCore()

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

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

move caching to \OCP\Util::needUpgrade

renaming variable

fixing testNeedUpgradeCore()

fix typo in variable name

deleting tabs
2015-09-29 15:34:42 +02:00
Lukas Reschke e735a9915c Add blob: scheme to default CSP policy
Fixes https://github.com/owncloud/core/issues/19438
2015-09-29 14:27:35 +02:00
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 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
Joas Schilling faba02564a Move the filtering of sensitive data to the config class 2015-09-25 11:08:33 +02:00
Joas Schilling e91e36f8df Add the L10N Factory to the container interface 2015-09-25 09:05:12 +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
Joas Schilling 2c00587b5d Add since-tag 2015-09-23 16:16:57 +02:00
Joas Schilling 1493e86dea Allow listeners to set status code and message 2015-09-23 15:15:07 +02:00
Joas Schilling ee75f9f594 Fix type hint errors in the container and the interface 2015-09-23 10:13:41 +02:00
Bjoern Schiessle 9bd4f2d41e occ script to disable encryption and to decrypt all files again 2015-09-15 22:39:44 +02:00
Lukas Reschke 7953cc9494 Function does return void
This function does return void and not a bool.
2015-09-15 14:02:10 +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
Joas Schilling 38001d824b Move interfaces to private until they are no longer experimental 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 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 f16c5a38a8 Add language to the preparation method 2015-09-08 09:01:01 +02:00
Joas Schilling 5437aeeaa2 Nothing is set in stone here yet 2015-09-08 09:01:01 +02:00
Joas Schilling 4e347170ac Notification API 2015-09-08 09:00:57 +02:00