aboutsummaryrefslogtreecommitdiffstats
path: root/lib/private/Files/Storage
Commit message (Collapse)AuthorAgeFilesLines
* fix(storage): Try to delete existing targetdeleteExistingTargetGit'Fellow2024-11-202-10/+15
| | | | | | Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com> Add same logic to common storage
* chore: use `$this->logger` and prevent Server::getfix/undefined-responseskjnldsv2024-11-081-2/+2
| | | | Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
* Fix Undefined variable: response notice in case of non-404 errorVictor Dubiniuk2024-11-081-2/+3
| | | | Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
* Merge pull request #47847 from ↵John Molakvoæ2024-10-291-2/+6
|\ | | | | | | nextcloud/fix-copying-or-moving-from-shared-groupfolders
| * fix: Fix copying or moving from shared groupfoldersDaniel Calviño Sánchez2024-10-101-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When copying or moving between two local storages the source path (on disk) to copy or move from is got from the unjailed path of the source storage. However, if the source storage has more than one jail getting the unjailed path resolves the most external jail, but the source path needs to be got from the most internal jail instead (the one closer to the local storage). This can happen, for example, with a shared groupfolder: in that case there is an external jail for the shared storage, and one internal jail for the groupfolder storage wrapped by the shared storage. Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
* | refactor(Storage): Align all Storage constructorsrefactor/storage/constructorsprovokateurin2024-10-2315-44/+44
| | | | | | | | Signed-off-by: provokateurin <kate@provokateurin.de>
* | feat(http-client): expose default request timeout constant to be used ↵add-default-request-timeout-constThomas Citharel2024-10-111-1/+2
|/ | | | | | | | | | instead of magic number 30 Will be used to set default where we are able to override the default timeout. See https://github.com/nextcloud/server/pull/48418 Signed-off-by: Thomas Citharel <tcit@tcit.fr>
* Merge pull request #48623 from nextcloud/fix/allow-quota-wrapper-checkKate2024-10-091-1/+1
|\
| * fix: Allow overriding shouldApplyQuota check from child classesfix/allow-quota-wrapper-checkJulius Knorr2024-10-091-1/+1
| | | | | | | | Signed-off-by: Julius Knorr <jus@bitgrid.net>
* | refactor(Storage): Make all parameter types strong typesprovokateurin2024-10-0719-567/+422
| | | | | | | | Signed-off-by: provokateurin <kate@provokateurin.de>
* | refactor(Wrapper\Encryption): Migrate to strong typesrefactor/stream-encryption/typingsprovokateurin2024-10-071-59/+15
|/ | | | Signed-off-by: provokateurin <kate@provokateurin.de>
* Merge pull request #48454 from ↵Kate2024-10-015-6/+6
|\ | | | | | | nextcloud/fix/storage/get-directory-content-return-type
| * fix(Storage): Fix getDirectoryContent() return typefix/storage/get-directory-content-return-typeprovokateurin2024-09-305-6/+6
| | | | | | | | Signed-off-by: provokateurin <kate@provokateurin.de>
* | Merge pull request #48235 from nextcloud/readd-object-store-phpunitRobin Appelman2024-10-011-4/+16
|\ \ | |/ |/| test: re-add object store primary storage phpunit tests
| * fix: preserve fileid when moving from objectstore to non-objectstoreRobin Appelman2024-09-271-4/+16
| | | | | | | | Signed-off-by: Robin Appelman <robin@icewind.nl>
* | fix: Fix test of IConstructableStorage implentation by storage classesfix/fix-storage-interface-checkCôme Chilliet2024-09-301-1/+1
|/ | | | Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
* fix(Storage): Fix IStorage return typesprovokateurin2024-09-2621-1458/+496
| | | | Signed-off-by: provokateurin <kate@provokateurin.de>
* fix: Move storage constructor to specific interfaceCôme Chilliet2024-09-232-1/+7
| | | | | | That allows Wrappers to use DI and not care about the constructor Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
* chore(deps): Update nextcloud/coding-standard to v1.3.1provokateurin2024-09-193-8/+8
| | | | Signed-off-by: provokateurin <kate@provokateurin.de>
* fix(Storage): Fix method docs inheritancefix/storage/method-docs-inheritanceprovokateurin2024-09-179-151/+16
| | | | Signed-off-by: provokateurin <kate@provokateurin.de>
* fix(Storage): Document getOwner() can return falseprovokateurin2024-09-175-31/+6
| | | | Signed-off-by: provokateurin <kate@provokateurin.de>
* chore: Check storage is an instance of the correct class instead of ↵fix/remove-references-to-deprected-storage-interfaceCôme Chilliet2024-09-161-6/+9
| | | | | | psalm-suppress Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
* chore: Remove deprecated Storage::search method instead of moving it to IStorageCôme Chilliet2024-09-164-34/+0
| | | | Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
* chore: psalm-suppress legacy code weirdnessCôme Chilliet2024-09-161-2/+12
| | | | Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
* chore: Fix psalm issues, put back private versions of getter in private ↵Côme Chilliet2024-09-164-9/+63
| | | | | | Storage interface Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
* fix: Fix other uses of removed Storage interfaceCôme Chilliet2024-09-162-84/+8
| | | | Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
* chore: improve hash_file php usage in Local Storageartonge/fix/hash_return_typeJohn Molakvoæ2024-09-161-8/+1
| | | | Co-authored-by: Ferdinand Thiessen <opensource@fthiessen.de> Signed-off-by: John Molakvoæ <skjnldsv@users.noreply.github.com>
* fix(files): Ensure that the hash method does not return nullLouis Chemineau2024-09-162-2/+10
| | | | | | | | To match https://github.com/nextcloud/server/blob/beececf66068f57c416225efcde9b44ce5c2e835/lib/private/Files/View.php#L1050 - Fix https://github.com/nextcloud/server/issues/44110 Signed-off-by: Louis Chemineau <louis@chmn.me>
* fix(Storage\Local): Do not call getSourcePath() on SplFileInfofix/storage-local/get-source-path-spl-file-infoprovokateurin2024-09-151-1/+1
| | | | Signed-off-by: provokateurin <kate@provokateurin.de>
* fix(files): Never return a null ETag in DAVprovokateurin2024-09-093-10/+3
| | | | Signed-off-by: provokateurin <kate@provokateurin.de>
* chore(storage): refactor some code portionsGit'Fellow2024-09-061-30/+16
| | | | | | | | Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com> chore: revert portion Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
* fix: Also validate parent path in `verifyPath`Ferdinand Thiessen2024-08-281-1/+13
| | | | Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
* style: update codestyle for coding-standard 1.2.3Daniel Kesselberg2024-08-257-24/+24
| | | | Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
* fix: use mountpoint from storage to find the encryption keysRobin Appelman2024-08-201-3/+3
| | | | Signed-off-by: Robin Appelman <robin@icewind.nl>
* Merge branch 'master' into jr-readdir-false-falseJohn Molakvoæ2024-08-1621-683/+412
|\ | | | | Signed-off-by: John Molakvoæ <skjnldsv@users.noreply.github.com>
| * fix(encryption): Fix mountpoint check to accept if several are foundCôme Chilliet2024-08-051-1/+1
| | | | | | | | | | | | | | There is no strong requirement to have only one mount for a given storage id. Also the error in this case would be misleading. Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
| * chore: fix some commentswithbest2024-07-291-1/+1
| | | | | | | | Signed-off-by: withbest <seekseat@outlook.com>
| * fix: Release directory iterator and thereby its potential directory lock ↵Dennis Verspuij2024-07-271-0/+1
| | | | | | | | | | | | prior to deleting a directory, to avoid e.g. "Text file busy" error with VirtualBox shared folder storage Signed-off-by: Dennis Verspuij <6680484+dennisverspuij@users.noreply.github.com>
| * refactor: Migrate filename validation logic from `Storage` to ↵Ferdinand Thiessen2024-07-161-64/+12
| | | | | | | | | | | | `FilenameValidator` Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
| * Merge branch 'master' into refactor/OC-Server-getHTTPClientServiceJohn Molakvoæ2024-05-3021-596/+374
| |\ | | | | | | Signed-off-by: John Molakvoæ <skjnldsv@users.noreply.github.com>
| | * chore: Add SPDX headerAndy Scherzinger2024-05-2421-513/+81
| | | | | | | | | | | | Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
| | * fix: Fix newly spotted psalm issues, add exhaustive typed magic properties ↵Côme Chilliet2024-04-301-0/+1
| | | | | | | | | | | | | | | | | | for LDAP classes Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
| | * fix(storage): Fix DAV storage as false is never returnedJoas Schilling2024-04-221-6/+0
| | | | | | | | | | | | Signed-off-by: Joas Schilling <coding@schilljs.com>
| | * fix(CI): Suppress psalm UndefinedClassJoas Schilling2024-04-181-0/+1
| | | | | | | | | | | | Signed-off-by: Joas Schilling <coding@schilljs.com>
| | * fix(files): Also skip cross storage move with access controlJoas Schilling2024-04-171-0/+2
| | | | | | | | | | | | Signed-off-by: Joas Schilling <coding@schilljs.com>
| | * Merge pull request #44294 from nextcloud/fix/storage-mount-ownerJulius Härtl2024-04-092-0/+17
| | |\ | | | | | | | | fix: Pass the mountpoint target user to storages without owner
| | | * fix: Pass the mountpoint target user to storages without ownerJulius Härtl2024-04-092-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Storages that do not have a dedicated owner (e.g. groupfolders, external storages) currently always assume the current session user as the owner. This leads to several issues when there is no user session but a node is obtained through a user folder. In order to have the correct user available we need to pass the user that is used to setup a mountpoint along to the storage layer as we generally assume that an owner is available for those. Signed-off-by: Julius Härtl <jus@bitgrid.net>
| | * | fix: use proper jailed patch in watcherRobin Appelman2024-04-081-4/+3
| | |/ | | | | | | | | | Signed-off-by: Robin Appelman <robin@icewind.nl>
| | * fix: Apply new coding standard to all filesCôme Chilliet2024-04-026-14/+14
| | | | | | | | | | | | Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
| | * fix: log error when default getWrapperStorage would return nullRobin Appelman2024-03-201-0/+9
| | | | | | | | | | | | Signed-off-by: Robin Appelman <robin@icewind.nl>