Commit graph

11024 commits

Author SHA1 Message Date
Jenkins for ownCloud
77a8085f84 [tx-robot] updated from transifex 2016-01-11 01:55:34 -05:00
Roeland Jago Douma
e01a488b31 Remove generateRandomBytes from OC_Util 2016-01-10 22:07:33 +01:00
Roeland Jago Douma
1a592e5745 Only '/tests' to be autoloaded when running unit tests 2016-01-10 21:36:14 +01:00
Roeland Jago Douma
fce8c42240 OC autoloader is not allowed to load 3rdparty 2016-01-10 21:32:52 +01:00
Lukas Reschke
c009d5dcc1 Verify signature of apps with level "Official" coming from the appstore
This change will verify the signature of all apps with the level "Official" coming from the appstore or if they have been signed before.
2016-01-10 19:40:28 +01:00
Lukas Reschke
e43bf54503 Assume apps from the appstore are compatible with the current version
Filtering is done server-side already so only compatible apps are delivered. Otherwise this leads to a ton of error messages as the info.xml cannot be read at that state.

Fixes https://github.com/owncloud/core/issues/21556
2016-01-10 17:02:50 +01:00
Lukas Reschke
74876fa6e7 Remove code related to session regeneration after some time
I do not really consider this necessary or a real security addition. Let's get rid of it thus, cleans up the code and makes the logic easier.
2016-01-10 11:01:30 +01:00
Lukas Reschke
a58ca89e7f Use ISession::clear
The native approach using the PHP calls will not work properly with the cryptowrapper and thus this code is effectively doing nothing at the moment.
2016-01-10 10:39:22 +01:00
Jenkins for ownCloud
580deb09f8 [tx-robot] updated from transifex 2016-01-10 01:55:57 -05:00
Lukas Reschke
3d4cf2e598 Use proper class name
This has never worked before. Introduced with https://github.com/owncloud/core/pull/18658
2016-01-09 23:43:12 +01:00
Roeland Jago Douma
77c611d339 Just query the securerandom from the container 2016-01-09 19:57:03 +01:00
Jenkins for ownCloud
72b34575df [tx-robot] updated from transifex 2016-01-09 01:55:50 -05:00
Roeland Jago Douma
17a066c18e Properly close db cursors 2016-01-08 20:27:01 +01:00
Roeland Jago Douma
629bac22fd Make sure to respect deleted group shares by user 2016-01-08 20:27:01 +01:00
Roeland Jago Douma
c882d46e5f Moved to the query builder
Anything to keep Lukas happy
2016-01-08 20:27:01 +01:00
Roeland Jago Douma
066e3770bb Make sure that permissions stay in sync for share_type 2
When a file/folder is shared with a group and one of the group members
moves this file/folder an extra entry is created in the share table.

When the permission of the group share is updated we used to only
sometimes update the shares for individual users.

* Added intergration tests
2016-01-08 20:27:01 +01:00
Thomas Müller
6ab5ad0593 Merge pull request #21447 from owncloud/leave-disabled-apps-off
Only enable apps that are not intentionally disabled
2016-01-08 18:17:15 +01:00
Thomas Müller
3de81be692 Merge pull request #21494 from owncloud/underscores-in-class-names
Remove underscores from class names - part 1
2016-01-08 18:11:25 +01:00
Thomas Müller
0f281cdd30 Merge pull request #21286 from owncloud/use-owncloud-mail-when-sending-caldav-schedule-mails
Adding IMip scheduling which uses ownClouds mail delivery
2016-01-08 17:58:33 +01:00
Thomas Müller
e60dddf57d Merge pull request #21479 from owncloud/fix-broken-state-in-htaccess-test
Remove unneeded check if htaccess test file already exists
2016-01-08 15:53:16 +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
Thomas Müller
71999ef820 Merge pull request #21139 from owncloud/makeswifturltypeconfigurable
make url type configurable
2016-01-08 12:34:58 +01:00
Thomas Müller
b3550db02d Adding IMip scheduling which uses ownClouds mail delivery 2016-01-08 12:21:41 +01:00
Thomas Müller
a0345b9465 Merge pull request #21032 from owncloud/router-error-handling
Router error handling + Base.php
2016-01-08 10:06:54 +01:00
Thomas Müller
a1a8a06042 Merge pull request #21527 from owncloud/remove_all_avatars
Remove all cache avatars on avatar deletion
2016-01-08 09:41:25 +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
0e561afe79 Check if app does exists 2016-01-07 21:29:45 +01:00
Roeland Jago Douma
4e6f6518ff Remove all cache avatars on avatar deletion
Fixes #21513

Since we cache the generated avatars. We should also delete the
generated sizes when we remove the avatar.
2016-01-07 20:51:18 +01:00
Thomas Müller
1cc6fddead Merge pull request #21498 from owncloud/cleanup-OC_DB
Cleanup OC_DB methods
2016-01-07 20:13:16 +01:00
Thomas Müller
46107f82d4 Merge pull request #21506 from owncloud/issue-20218-min-max-owncloud-version-warning
Issue 20218 min max owncloud version warning
2016-01-07 16:51:00 +01:00
Thomas Müller
f6f492ba4e Merge pull request #21502 from owncloud/di_mimetypedetector
Add 'OCP\Files\IMimeTypeDetector' to DI container
2016-01-07 16:18:55 +01:00
Thomas Müller
9ca670f94f Merge pull request #21505 from owncloud/allow-downgrades-for-brave-developers
Allow downgrades for our brave developers, that switch between branches
2016-01-07 16:03:36 +01:00
Joas Schilling
c55da1fc8d Add a warning to the app:check-code if the version is missing 2016-01-07 15:04:36 +01:00
Thomas Müller
601457d221 Merge pull request #20773 from owncloud/share2.0_create
[Sharing 2.0] create share
2016-01-07 14:57:05 +01:00
Morris Jobke
190cc2bb67 Remove OC_DB::getConnection 2016-01-07 14:54:55 +01:00
Morris Jobke
fddece9552 Remove OC_DB::insertid 2016-01-07 14:54:55 +01:00
Morris Jobke
0a41cfefe3 Remove beginTransaction, commit, rollback from OC_DB 2016-01-07 14:54:55 +01:00
Morris Jobke
3917d888bd Remove OC_DB::isError 2016-01-07 14:54:55 +01:00
Morris Jobke
547fbfdb76 Remove OC_DB::dropTable 2016-01-07 14:54:54 +01:00
Joas Schilling
fd7ed93937 Allow downgrades for our brave developers, that switch between branches 2016-01-07 14:18:33 +01:00
Roeland Jago Douma
cd35ad6aaa Add 'OCP\Files\IMimeTypeDetector' to DI container
* Added test to server container as well
2016-01-07 13:20:43 +01:00
Morris Jobke
fa97e3a5a3 OC_TemplateLayout -> OC\TemplateLayout 2016-01-07 09:31:11 +01:00
Morris Jobke
c464b32738 OC_DB_MDB2SchemaManager -> OC\DB\MDB2SchemaManager 2016-01-07 09:29:21 +01:00
Morris Jobke
604897945b Move lib/repair to lib/private/repair 2016-01-07 09:14:35 +01:00
Jenkins for ownCloud
27dfa74d89 [tx-robot] updated from transifex 2016-01-07 01:55:48 -05:00
Thomas Müller
002161857c Merge pull request #21398 from owncloud/sharing-disabled-cache
Cache isSharingDisabledForUser
2016-01-06 17:23:14 +01:00
Thomas Müller
b6bc17d014 Merge pull request #21443 from owncloud/fix-container-lookup
Lookup the App name instead of OCA
2016-01-06 17:22:41 +01:00
Thomas Müller
a2c19d3d1a Merge pull request #21444 from owncloud/move-regenerate-below
Move regeneration of session ID into session classes
2016-01-06 17:21:43 +01:00
Roeland Jago Douma
1358e5dcd9 [Sharing 2.0] Some error cases report 404 instead of 403 2016-01-06 15:25:29 +01:00
Roeland Jago Douma
26280e1f19 [Sharing 2.0] Add L10N instance to manager for translated errors 2016-01-06 14:53:43 +01:00
Roeland Jago Douma
b15be8f96f [Share 2.0] Make the share manager ready for share creation 2016-01-06 14:53:43 +01:00
Roeland Jago Douma
a08c497808 [Share 2.0] Make share provider ready for create shares 2016-01-06 14:53:43 +01:00
Roeland Jago Douma
4f2e84a0ec [Share 2.0] Update share class
More getters and setters are required to properly create shares
2016-01-06 14:53:43 +01:00
Morris Jobke
7b8b2c73c5 Drop oc_gallery_sharing which was removed in 8.0.0
See c080dfe87d
2016-01-06 13:45:59 +01:00
Morris Jobke
516a6d7441 Remove unneeded check if htaccess test file already exists
* fixes #20199
2016-01-06 13:45:36 +01:00
Lukas Reschke
88c7face07 Inject OCSClient
Fixes https://github.com/owncloud/core/issues/21451
2016-01-06 11:40:22 +01:00
Jörn Friedrich Dreyer
a86e067154 Merge pull request #21442 from owncloud/annotate-type
Annotate type
2016-01-05 12:36:31 +01:00
Jenkins for ownCloud
d4034ffca0 [tx-robot] updated from transifex 2016-01-05 01:57:14 -05:00
Jörn Friedrich Dreyer
3f101039b9 add isset for optional params 2016-01-04 16:38:45 +01:00
Joas Schilling
761000624d Only enable apps that are not intentionally disabled 2016-01-04 16:24:52 +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
Thomas Müller
70ff90b1ec Merge pull request #21393 from owncloud/fix-urlgenerator-call
No more deprecation messages in error log
2016-01-04 15:00:06 +01:00
Joas Schilling
2cf4e144cc Lookup the App name instead of OCA 2016-01-04 14:47:49 +01:00
Lukas Reschke
26c3fa7911 Annotate type
Otherwise static code scanners will complain about this.
2016-01-04 14:18:01 +01:00
Jenkins for ownCloud
157bb50a39 [tx-robot] updated from transifex 2016-01-04 01:55:05 -05:00
Jenkins for ownCloud
970495a067 [tx-robot] updated from transifex 2015-12-31 01:55:16 -05:00
Thomas Müller
42897ac5cb Merge pull request #21402 from owncloud/view-getuserobject-cache
Cache usermanager instance in view
2015-12-30 20:04:51 +01:00
Robin Appelman
45d0396404 Cache sharing disabled in the view 2015-12-30 14:42:22 +01:00
Robin Appelman
2d9d0aedf8 Cache usermanager instance in view 2015-12-30 14:28:53 +01:00
Thomas Müller
9e39e8f1c7 No more deprecation messages in error log 2015-12-29 17:31:28 +01:00
Thomas Müller
9392a555ae Merge pull request #21331 from switch-ch/fix_ms_log
Fix owncloud logging with ms precision
2015-12-29 16:32:52 +01:00
Thomas Müller
edd051dc02 Merge pull request #21291 from owncloud/refactor-call-check
Refactor OC_Util::callCheck
2015-12-28 10:21:44 +01:00
Thomas Müller
eb509bcbe6 Merge pull request #17333 from owncloud/php7-scalar-types-controllers
Prefer scalar type hints over phpdoc annotation
2015-12-28 10:21:14 +01:00
Jenkins for ownCloud
89584716f8 [tx-robot] updated from transifex 2015-12-28 01:55:10 -05:00
Bernhard Posselt
23c754aed3 prefer scalar type hints over phpdoc annotation
use method exists lookup to be safe and not break on old hhvm versions

add test that checks if type hint is preferred over annotation
2015-12-24 09:20:26 +01:00
Christian Schnidrig
7fce06b3f3 When microtime(true) returns a whole number, then the parsing fails.
This patch makes sure, that the value can always be parsed correctly.
2015-12-22 15:06:32 +01:00
Morris Jobke
6f00729124 Refactor OC_Util::callCheck 2015-12-22 09:32:14 +01:00
Thomas Müller
0b913f00c7 Merge pull request #21289 from owncloud/issue-20399-keep-periodic-background-jobs
Do not delete background jobs, in case an exception occured
2015-12-21 09:47:07 +01:00
Lukas Reschke
2c4b9e03e0 Use new APCu API
This one is available since APCu 4.0, since we require APCu 4.0.6 this works fine. Also it brings us PHP 7 compatibility and thus fixes https://github.com/owncloud/core/issues/21095
2015-12-20 11:09:09 +01:00
Jenkins for ownCloud
7080594670 [tx-robot] updated from transifex 2015-12-20 01:55:09 -05:00
Jenkins for ownCloud
d0cb4c9ab3 [tx-robot] updated from transifex 2015-12-19 01:55:14 -05: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
Thomas Müller
6cdaf754b2 Merge pull request #21290 from owncloud/public-api-usage-getversion
Use OCP\Util::getVersion instead of the internal private implementation
2015-12-18 16:07:01 +01:00
Morris Jobke
2f98f64241 core will handle invalid URLs and redirects properly 2015-12-18 15:51:03 +01:00
Morris Jobke
ed98cdf532 Use OCP\Util::getVersion instead of the internal private implementation 2015-12-18 15:26:54 +01:00
Thomas Müller
36cc0528e3 Merge pull request #21288 from owncloud/deprecated_helper_mimetypes
Remove deprecated OC_Helper mimetype functions
2015-12-18 15:23:05 +01:00
Thomas Müller
a743047e82 Merge pull request #21283 from owncloud/cleanup_config
Cleanup OC_Config mess
2015-12-18 14:54:38 +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
6b813f56c9 Do not delete background jobs, in case an exception occured
This approach is not valid anymore. It initially was added for jobs
of non existing apps. But jobs of non-existing apps can not be created
so they will never be executed and so this call just catches other
cases which were not intended.

This reverts commit 4f4ad72460.
2015-12-18 14:31:27 +01:00
Joas Schilling
a9935bd490 Add methods to interface which have always been required 2015-12-18 14:25:04 +01:00
Joas Schilling
0daed65e14 Allow dependency injection for background jobs 2015-12-18 14:20:30 +01:00
Roeland Jago Douma
b460bde7c6 Removed deprecated OC_Helper::mimeTypeIcon function 2015-12-18 14:00:20 +01:00
Joas Schilling
1f197134c8 Look up services in the app container before trying the core container 2015-12-18 13:45:07 +01:00
Joas Schilling
412e4ed3f6 Register app containers in the OC container 2015-12-18 13:45:07 +01:00
Thomas Müller
22d1b1285e Merge pull request #21277 from owncloud/querybuild-joblist
Use the query builder for the joblist queries
2015-12-18 13:44:02 +01:00
Roeland Jago Douma
a54be132fc Removed deprecated unsused function OC_Helper::getStringMimeType 2015-12-18 13:43:44 +01:00
Roeland Jago Douma
4f20e3bac0 Removed deprecated OC_Helper::getSecureMimeType 2015-12-18 13:42:59 +01:00
Morris Jobke
450e2f3bd3 Move OC_Helper code to OCP\Util for linkToRemote 2015-12-18 12:00:18 +01:00
Roeland Jago Douma
6fb60815c5 Use SystemConfig internally 2015-12-18 11:53:41 +01:00
Roeland Jago Douma
0a09004d39 Inject Config into SystemConfig 2015-12-18 11:53:41 +01:00
Roeland Jago Douma
82bf99c0cf Get rid of legacy OC_Config
We were still using the lecagy class OC_Config all over the place. Which
was a wrapper around the new class OC\Config
2015-12-18 11:53:41 +01:00
Morris Jobke
e42f262d85 properly use OCP\Util instead of OC_Helper 2015-12-18 11:46:21 +01:00
Morris Jobke
3d55569a27 OC_Helper::makeURLAbsolute is not used anymore 2015-12-18 11:37:18 +01:00
Morris Jobke
4af7bf07bf OC_Helper::userAvatarSet is not used anymore 2015-12-18 11:30:30 +01:00
Morris Jobke
a18c0983d5 Use TempManager instead of tmpFile 2015-12-18 11:25:33 +01:00
Morris Jobke
90b0831cec Use TempManager instead of tmpFolder 2015-12-18 11:19:53 +01:00
Thomas Müller
9e97bef935 Merge pull request #21268 from owncloud/cleanup-OC_Helper-getFileNameMimeType
Use proper public API for OC_Helper::getFileNameMimeType
2015-12-18 10:15:33 +01:00
Thomas Müller
551e553bf4 Merge pull request #21264 from owncloud/deprecated_oc_user_methods
Cleanup OC_User deprecated methods
2015-12-18 10:15:18 +01:00
Joas Schilling
0f836cfe9e Make sure the interface and the implementation match 2015-12-18 10:04:30 +01:00
Joas Schilling
345e68cafa Use the query builder for the joblist queries 2015-12-18 09:50:23 +01:00
Thomas Müller
1456e910ad Merge pull request #21269 from owncloud/we-shall-cleanup-xml-parser-errors
Assert that there are no xml error left
2015-12-18 09:17:53 +01:00
Thomas Müller
228a75e2ec Merge pull request #21248 from owncloud/deprecated_oc_helper_linkToRoute
Replace deprecated OC_Helper::linkToRoute calls
2015-12-18 07:56:42 +01:00
Roeland Jago Douma
2a280e2fad Remove private deprecated OC_Helper::linkToRoute 2015-12-17 18:46:43 +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
b3c8e9ca32 Clear xml errors in updater 2015-12-17 17:46:07 +01:00
Thomas Müller
9b423f3532 Clear xml errors in ocs client 2015-12-17 17:34:15 +01:00
Thomas Müller
62b82cfe4b Clear xml errors 2015-12-17 17:28:44 +01:00
Morris Jobke
ecdf88e41b Use proper public API for OC_Helper::getFileNameMimeType 2015-12-17 17:07:48 +01:00
Roeland Jago Douma
c64e827f00 Since avatar.js is now essentially empty remove it 2015-12-17 16:32:18 +01:00
Roeland Jago Douma
1f715289bf Removed deprecated function OC_User::deleteUser
Replaced with proper OCP calls
2015-12-17 16:18:40 +01:00
Roeland Jago Douma
9201b9713e Removed unused deprecated methods 2015-12-17 16:18:40 +01:00
Roeland Jago Douma
835911bce5 Removed deprecated private OC_User::createUser
All function calls are replaced with the recommended (which was already
the body of the function).
2015-12-17 16:18:40 +01:00
Roeland Jago Douma
7e44ea5da0 Remove deprecated function OC_User::getManager
Private deprecated function => removed
Replaced all instances with suggested replacement
2015-12-17 16:18:34 +01:00
Thomas Müller
1285b78086 Merge pull request #21200 from owncloud/files-authorizationheader
Use Authorization headers for public webdav in web UI
2015-12-17 15:30:13 +01:00
Thomas Müller
e3ed42135d Merge pull request #21240 from owncloud/avatar_speedup
Avatar speedup
2015-12-17 14:43:21 +01:00
Thomas Müller
358b84c21d Merge pull request #21253 from owncloud/deprecated_oc_helper_linkTo
Remove deprecated OC_Helper::linkTo
2015-12-17 14:43:02 +01:00
Thomas Müller
21bd19b6ae Merge pull request #21241 from owncloud/fix_21226
Do not try to get the avatar if there is no user
2015-12-17 12:14:25 +01:00
Roeland Jago Douma
205c239eab Remove deprecated OC_Helper::linkTo function 2015-12-17 11:51:40 +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
db95c8d512 Do not try to get the avatar if there is no user 2015-12-17 09:14:04 +01:00
Jenkins for ownCloud
a7cd8103b5 [tx-robot] updated from transifex 2015-12-17 01:55:09 -05: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
c92b49c82a Merge pull request #21184 from owncloud/cli-logger-embedded-webserver
Let's print error messages to the builtin webserver console ... makes…
2015-12-16 20:26:29 +01:00
Vincent Petry
064dcc079d Load base64 polyfill in IE and friends 2015-12-14 17:50:33 +01:00
Björn Schießle
efc030aa25 don't allow to create a federated share if source and target server are the same 2015-12-14 17:16:14 +01:00
Thomas Müller
a7ecb6e984 Let's print error messages to the builtin webserver console ... makes development a bit easier 2015-12-14 12:16:41 +01:00
Robin Appelman
9d732e35e1 Check if user isset in $_REQUEST first 2015-12-14 09:56:52 +01:00
Jenkins for ownCloud
74de12c698 [tx-robot] updated from transifex 2015-12-13 01:54:51 -05:00
Thomas Müller
f831d93f3f Merge pull request #20878 from owncloud/proper-htaccess-support-in-code-signing-checker
Also run .htaccess routine when installing on another system than Apache
2015-12-11 11:46:37 +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
Thomas Müller
86bd95ea1b Merge pull request #21020 from owncloud/add-directory-slash-to-setup-code
Add DirectorySlash to dynamic .htaccess write
2015-12-11 11:40:32 +01:00
Thomas Müller
c14f4e8506 Merge pull request #21045 from owncloud/scrutinizer-patch-1
Scrutinizer Auto-Fixes
2015-12-11 11:39:25 +01:00
Thomas Müller
ecc3c174a0 Merge pull request #21128 from owncloud/dav-fopen-non-existing
Dont do a seperate request to check if a file exists when downloading a file from dav external storage
2015-12-11 10:48:22 +01:00
Jörn Friedrich Dreyer
eae8500a86 make url type configurable 2015-12-11 10:19:28 +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
Robin Appelman
97f5c095f4 Dont do a seperate request to check if a file exists for dav->fopen 2015-12-10 17:23:53 +01:00
Thomas Müller
ab1ea5ccc4 Merge pull request #21119 from owncloud/make-appconfig-more-robust
Make AppManager->checkAppForUser more robust
2015-12-10 16:44:40 +01:00
Scrutinizer Auto-Fixer
ffc49a24f0 Scrutinizer Auto-Fixes
This commit consists of patches automatically generated for this project on https://scrutinizer-ci.com
2015-12-10 16:43:37 +01:00
Thomas Müller
7634c45e39 Merge pull request #21086 from owncloud/storage-nocheckavailforgetowner
Do not check storage availability for getOwner
2015-12-10 16:15:52 +01:00
Morris Jobke
f5e6c75804 Make AppManager->checkAppForUser more robust
* if the JSON that is stored in the DB is corrupt an error was thrown
* with this change it is properly handled and the app is disabled
2015-12-10 14:53:34 +01:00
Thomas Müller
df15d54db6 Merge pull request #21072 from owncloud/db-lock-ttl
Remove all locks after ttl from the db
2015-12-10 13:51:18 +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
Thomas Müller
9f4ceef7c9 Merge pull request #20984 from owncloud/fix-mysql-setup-unix-socket-master
Add unix_socket support for mysql during initial installation - fixes…
2015-12-10 10:13:49 +01:00
Thomas Müller
ea7fe672e8 Merge pull request #20775 from owncloud/comments-manager
add icommentsmanger and icomment implementation
2015-12-09 17:44:40 +01:00
Vincent Petry
4b68dd372d Do not check storage availability for getOwner
Because the owner is always known thanks to the file cache and other
places, we don't need the remote storage to be actually available.
2015-12-09 17:31:14 +01:00
Arthur Schiwon
fdd06ba1f8 use getLastInsertId from query builder for convenience 2015-12-09 16:33:34 +01:00
Arthur Schiwon
55a2715eff remove unused use statement 2015-12-09 16:25:42 +01:00
Arthur Schiwon
6af6febad0 php < 5.5 compatible 2015-12-09 16:25:31 +01:00
Thomas Müller
d5238b3d3c Don't load commands of apps when in maintenance mode - fixes #20939 2015-12-09 15:15:10 +01:00
Robin Appelman
e191953942 Remove all locks after ttl from the db 2015-12-09 14:53:24 +01:00
Robin Appelman
e41f7b005d add since 2015-12-09 14:45:08 +01:00
Robin Appelman
693a3c353e ttl for memcache locking backends that support it 2015-12-09 14:41:15 +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
0c1c029571 hardening, add some checks for whitespace-only strings 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
9a440c06b0 OC not oc 2015-12-09 14:34:23 +01:00
Arthur Schiwon
9dc4171830 parameter checks for setting actor and object to happen only in one place 2015-12-09 14:34:23 +01:00
Arthur Schiwon
4273689e9f fix usage of empty 2015-12-09 14:34:23 +01:00
Arthur Schiwon
e3dbc3d40c different strategy in cleaning up after user was deleted
we do not listen to deletion hooks anymore, because there is no guarantee that they
will be heard - requires that something fetches the CommentsManager first.

Instead, in the user deletion routine the clean up method will be called directly. Same way
as it happens for files, group memberships, config values.
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
04f4565fcd Merge pull request #21060 from owncloud/support-for-read-only-config-dir
Add support for read only config dir
2015-12-09 14:32:00 +01:00
Thomas Müller
5c95939bf3 Merge pull request #21061 from owncloud/fix-oracle-last-insert-id-test
Fix the last insert id test by changing to an autoincremen…
2015-12-09 11:53:43 +01:00
Thomas Müller
eb14c9dc1e Merge pull request #21056 from owncloud/check-return
Verify return type
2015-12-09 11:29:25 +01:00
Thomas Müller
74e7fb1438 Merge pull request #21055 from owncloud/fix-php-docs-for-console
Fix PHPDoc and check if path does exists
2015-12-09 11:28:53 +01:00
Joas Schilling
bef6344b27 Do not quote the table name for lastInsertId() 2015-12-09 11:09:02 +01:00
Thomas Müller
bb8dbc291b Merge pull request #21005 from owncloud/verify_password_before_unshare
The ajax code path unshares a link share when updating the password
2015-12-09 10:05:20 +01:00
Thomas Müller
bc744ff6de Merge pull request #21038 from owncloud/share-computesharepermissions-notstore
Fix (re)share permission checks in a few code paths
2015-12-09 10:04:56 +01:00
Thomas Müller
6ba22f0243 Merge pull request #21043 from owncloud/add-php-doc
Add type description
2015-12-09 10:04:30 +01:00
Lukas Reschke
b50987165e Add support for read only config dir
We already support the `config_is_read_only` for the config file itself. However not for the whole directory (which is a bug).

This unifies the check in the checkServer routine with the one in base.php. Now one can enable a read only config folder so that ownCloud is not allowed to overwrite it's own source code.

To test this set the whole config folder to read only, clear your session, refresh, see it fails, add the new code, refresh, see it works. Also verify that setup still works fine. (obviously setup does not work with a read only config Also verify that setup still works fine. (obviously setup does not work with a read only config))

Fixes https://github.com/owncloud/core/issues/14455
2015-12-09 08:54:11 +01:00
Jenkins for ownCloud
dda9525c4b [tx-robot] updated from transifex 2015-12-09 01:55:14 -05:00
Lukas Reschke
61da3d530d Verify return type
Can also be null. Silences another security warning...
2015-12-09 07:32:19 +01:00
Lukas Reschke
11e98e2de6 Fix PHPDoc and check if path does exists
Mutes another security warning of some static scanners.
2015-12-09 06:57:24 +01:00
Vincent Petry
d0cca6c3ad Add explicit check for groups excluded from sharing
Since isSharable() doesn't do the check for groups excluded from
sharing, adding an explicit check in the sharing code.
2015-12-08 16:48:33 +01:00
Lukas Reschke
7c45eaa70b Add type description
Allows IDEs and static code analyzers. Would have saved me some minutes today :)
2015-12-08 15:20:54 +01:00
Thomas Müller
49095fa4bb Merge pull request #21031 from owncloud/sanitize-findAppInDirectories
Sanitize the appId passed to `findAppInDirectories`
2015-12-08 13:52:04 +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
Vincent Petry
6e4006d139 Add reshare permission checks
Added in isSharable() in incoming remote share.
Added in isSharable() in regular incoming share.
Added in FileInfo to make sure the proper attributes are returned to the
clients.
2015-12-08 13:13:26 +01:00
Vincent Petry
e241d26316 Compute share permissions in the view
The share permissions are now computed in the View/FileInfo instead of
storing them directly/permanently on the storage
2015-12-08 13:04:22 +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
Thomas Müller
fe8dc0bd5e Merge pull request #21022 from owncloud/get-rid-of-by-reference
Get rid of by reference
2015-12-08 11:04:25 +01:00
Lukas Reschke
715f89a9d9 Sanitize the appId passed to findAppInDirectories
Would have prevented quite some security bugs in the past. Nice hardening for now.
2015-12-08 10:03:22 +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
Lukas Reschke
70c228a7cc Get rid of passing a reference
Fixes https://github.com/owncloud/core/issues/14643
2015-12-08 08:56:46 +01:00
Lukas Reschke
8289943a0f Do not trust casting 2015-12-08 08:50:00 +01:00
Lukas Reschke
451ba4ddaa Remove unused repair steps
These ones are not necessary anymore for the new major release.
2015-12-08 08:46:41 +01:00
Lukas Reschke
6ea7410041 Remove legacy check
This one is not required anymore as we have the RepairConfig repair step since November 2014.
2015-12-08 08:44:42 +01:00
Lukas Reschke
8903afec26 Don't write directives from CLI 2015-12-08 08:17:04 +01:00
Lukas Reschke
0a89073c47 Run .htaccess updates in any case
This is the same what we also do in updater.php and thus this aligns the code. Makes the code paths more consistent.
2015-12-08 08:16:24 +01:00
Lukas Reschke
235094ab54 Remove version check out of .htaccess
This can now be achieved using the new code signing.
2015-12-08 08:16:23 +01:00
Lukas Reschke
3bce1b20fe Add DirectorySlash to dynamic .htaccess write
When `DirectorySlash off` is set then Apache will not lookup folders anymore. This is required for example when we use the rewrite directives on an existing path such as  `/core/search`. By default Apache would load `/core/search/` instead `/core/search` so the redirect would fail here.

This leads however to the problem that URLs such as `localhost/owncloud` would not load anymore while `localhost/owncloud/` would. This has caused problems such as https://github.com/owncloud/core/pull/21015

With this change we add the `DirectorySlash off` directive only when the `.htaccess` is writable to the dynamic part of it. This would also make `localhost/owncloud` work again as it would trigger the 404 directive which triggers the redirect in base.php.
2015-12-08 08:10:55 +01:00
Jenkins for ownCloud
736e133c04 [tx-robot] updated from transifex 2015-12-08 01:56:19 -05:00
Thomas Müller
4100263bd6 Merge pull request #20996 from owncloud/issue-12215-remove-password-reset-when-not-possible
Issue 12215 remove password reset when not possible
2015-12-07 19:55:26 +01:00
Scrutinizer Auto-Fixer
453e1bf66e Scrutinizer Auto-Fixes
This commit consists of patches automatically generated for this project on https://scrutinizer-ci.com
2015-12-07 15:43:36 +00:00
Roeland Jago Douma
780d80d7c3 The ajax code path unshares a link share when updating the password
In order to not mess up existing shares if the password gets verified we
should first fire this validation.
2015-12-07 16:38:49 +01:00
Thomas Müller
663f31b127 Merge pull request #20993 from owncloud/issue-20666-language-always-overwritten
Do not overwrite the language when it's just missing for one app
2015-12-07 16:19:21 +01:00
Joas Schilling
87bc02c6cd Allow specifying a custom reset-password-url 2015-12-07 15:41:40 +01:00
Thomas Müller
a9e5faf7d0 Merge pull request #20981 from owncloud/issue-19848-multiple-emails-for-sharelink
Allow sending a share email to multiple users
2015-12-07 15:17:19 +01:00
Joas Schilling
f8f3c9ecf9 Remove password reset when the user can not change the password 2015-12-07 15:14:19 +01:00
Joas Schilling
c6dbe8ac63 Do not overwrite the language when it's just missing for one app 2015-12-07 14:46:53 +01:00
Thomas Müller
d155c8e5fe Add unix_socket support for mysql during initial installation - fixes #20210 2015-12-07 12:00:31 +01:00
Joas Schilling
5b87413792 Allow sending a share email to multiple users 2015-12-07 10:49:34 +01:00
Thomas Müller
764b2932ff Merge pull request #20960 from owncloud/drop-OC_Util-getUrlContent
Remove OC_Util::getUrlContent and replace by proper usage of public i…
2015-12-07 10:21:16 +01:00
Thomas Müller
f3d49a89fe Merge pull request #11131 from owncloud/use-phpini-wrapper
Replacing ini_get instances with inigetwrapper usages
2015-12-07 10:20:59 +01:00
Thomas Müller
0c3d97921f Merge pull request #20904 from owncloud/view-mime-filter
Fix mimetype filter in getDirectoryContent
2015-12-07 10:20:43 +01:00
Thomas Müller
e1f2965e54 Merge pull request #20949 from owncloud/fix_20892
[Sharing] Properly check if a group already has access
2015-12-07 10:20:05 +01:00
Thomas Müller
c1fb9fa483 Merge pull request #20957 from owncloud/use-correct-method-signature
Use correct method signature
2015-12-07 10:18:03 +01:00
Thomas Müller
c9069d5711 Merge pull request #20959 from owncloud/drop-OC_App-setActiveNavigationEntry
Remove unused setActiveNavigationEntry of OC_App - it's also in OCP\App
2015-12-07 10:17:44 +01:00
Jenkins for ownCloud
884946276e [tx-robot] updated from transifex 2015-12-07 01:54:35 -05:00
Jenkins for ownCloud
d14f128329 [tx-robot] updated from transifex 2015-12-06 01:54:33 -05:00
Jenkins for ownCloud
f0b1ba713d [tx-robot] updated from transifex 2015-12-05 01:55:14 -05:00
Morris Jobke
4548a0aa90 Remove OC_Util::getUrlContent and replace by proper usage of public interfaces 2015-12-04 18:02:47 +01:00
Vincent Petry
316b907a13 Fixed system tags DAV and API and docs 2015-12-04 17:30:50 +01:00
Morris Jobke
46a6c6d70b remove OC_App::getActiveNavigationEntry - not unsed anymore 2015-12-04 17:26:28 +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
Lukas Reschke
d522797227 Use correct method signature
This function takes only one parameter
2015-12-04 15:52:42 +01:00
Roeland Jago Douma
11d8b336e2 [Sharing] Properly check if a group already has access
The old code check was to liberal resulting in wrong matches if a user
with the same name as the group already had access.

Fixes 20892
2015-12-04 12:22:21 +01:00
Thomas Müller
6034c9142d Merge pull request #20933 from owncloud/more-OC_Config-cleanups
More cleanups of OC_Config usage
2015-12-04 09:06:47 +01:00
Jenkins for ownCloud
a2848af625 [tx-robot] updated from transifex 2015-12-04 01:56:31 -05:00
Thomas Müller
602b636d3e Merge pull request #20807 from owncloud/dont-append-redirect-url-if-user-is-already-logged-in
Don't append redirect URL if user is logged-in
2015-12-03 16:53:59 +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
Morris Jobke
c60c793cf2 More cleanups of OC_Config usage 2015-12-03 16:41:23 +01:00
Thomas Müller
1fe7957fd0 Merge pull request #20924 from owncloud/use-url-generator-to-generate-link
Use URLGenerator instead of hard-coded WEBROOT
2015-12-03 15:26:14 +01:00
Vincent Petry
cc72c6a30d Added dav endpoints for system tags 2015-12-03 15:23:21 +01:00
Lukas Reschke
1f69dcb593 Use URLGenerator instead of hard-coded WEBROOT
Fixes https://github.com/owncloud/core/issues/20922
2015-12-03 14:42:14 +01:00
Morris Jobke
aa0265bd34 Replace OC_Config in setup 2015-12-03 14:35:15 +01:00
Thomas Müller
2d1cc8aaeb Merge pull request #19461 from owncloud/reuse_code
reuse code
2015-12-03 13:55:50 +01:00
Robin Appelman
19b2fe6a3a Fix mimetype filter in getDirectoryContent 2015-12-03 13:09:13 +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
a5c80ba8bc Merge pull request #20894 from owncloud/post-delete-meta-view
Also add metadata for postDelete hooks triggered from the view
2015-12-03 09:24:54 +01:00
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
4d9af08f12 Execute only for web and not for CLI 2015-12-02 11:49:33 +01:00
Lukas Reschke
09d9e430d8 Add a trailing slash to generated URLs 2015-12-02 11:27:07 +01:00
Lukas Reschke
125b7e7512 Ensure that ownCloud is always accessed with a trailing slash 2015-12-02 11:26:41 +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
Jenkins for ownCloud
4f4b91a9ec [tx-robot] updated from transifex 2015-12-02 02:00:28 -05: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
Vincent Petry
17ce120736 Revert "Dont bother with stream_resolve_include_path if the path is already absolute" 2015-11-29 10:54:29 +01:00
Robin Appelman
6b7e748245 cache resized avatars 2015-11-28 17:33:16 +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