provokateurin
70fa51f042
fix(files): Never return a null ETag in DAV
...
Signed-off-by: provokateurin <kate@provokateurin.de>
2024-09-09 10:30:33 +07:00
Ferdinand Thiessen
17f011f7c5
fix: Also validate parent path in `verifyPath`
...
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-08-28 17:22:20 +07:00
Daniel Kesselberg
af6de04e9e
style: update codestyle for coding-standard 1.2.3
...
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2024-08-25 19:34:58 +07:00
John Molakvoæ
d35c4eb911
Merge branch 'master' into jr-readdir-false-false
...
Signed-off-by: John Molakvoæ <skjnldsv@users.noreply.github.com>
2024-08-16 10:53:50 +07:00
Ferdinand Thiessen
69341e4306
refactor: Migrate filename validation logic from `Storage` to `FilenameValidator`
...
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-07-16 12:49:09 +07:00
Andy Scherzinger
dae7c159f7
chore: Add SPDX header
...
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-05-24 13:11:22 +07:00
Julius Härtl
4910e7e231
fix: Pass the mountpoint target user to storages without owner
...
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>
2024-04-09 09:04:24 +07:00
Côme Chilliet
ec5133b739
fix: Apply new coding standard to all files
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2024-04-02 14:16:21 +07:00
Ferdinand Thiessen
27642d3e6d
fix: Enforce forbidden filename characters on backend
...
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2024-02-28 22:19:25 +07:00
Julius Härtl
22eab7ba36
fix: Throw instead of yielding nothing when listing local directories
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2024-02-23 16:08:09 +07:00
Robin Appelman
e9d97a568f
use OCP\Server
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-02-12 16:39:00 +07:00
Robin Appelman
7a91abb439
improve di performance for cache
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2024-02-09 13:28:30 +07:00
Hamid Dehnavi
ea06cf2f39
Convert isset ternary to null coalescing operator
...
Signed-off-by: Hamid Dehnavi <hamid.dev.pro@gmail.com>
2023-09-28 17:44:19 +07:00
Josh Richards
e7cbaf3ee3
Clean-up some remaining readdir calls with undesirable false evaluation potential
...
Signed-off-by: Josh Richards <josh.t.richards@gmail.com>
2023-06-24 15:37:06 +07:00
Faraz Samapoor
e7cc7653b8
Refactors "strpos" calls in lib/private to improve code readability.
...
Signed-off-by: Faraz Samapoor <fsamapoor@gmail.com>
2023-05-15 15:17:19 +07:00
Julius Härtl
11c5bc6a2a
fix: Wrap filesystem LockedExceptions for holding the readable path
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2023-05-02 19:40:27 +07:00
Côme Chilliet
b294edad80
Merge branch 'master' into enh/type-iconfig-getter-calls
...
Signed-off-by: Côme Chilliet <91878298+come-nc@users.noreply.github.com>
2023-04-20 16:52:38 +07:00
Robin Appelman
570b64aafc
handle not being able to write file for notify self-test
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2023-04-06 11:52:22 +07:00
Côme Chilliet
426c0341ff
Use typed version of IConfig::getSystemValue as much as possible
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-04-05 12:50:08 +07:00
Côme Chilliet
1740311283
Adapt types of subclasses
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-04-01 14:20:24 +07:00
Côme Chilliet
308fcf4526
Respect OCP interface in private classes
...
Because the parameter type was moved to phpdoc it needs to be removed
from implementations
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-02-07 11:23:35 +07:00
Côme Chilliet
d9dbed9105
Fix psalm errors related to filesizes
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-02-07 11:23:29 +07:00
Côme Chilliet
ff776a90b1
Strong type filesize related methods to ease 32bits problem findings
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-02-07 11:23:28 +07:00
Côme Chilliet
f5c361cf44
composer run cs:fix
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2023-01-20 11:45:08 +07:00
Carl Schwan
a5ea677370
Rename file1 and file2 to source and target in Storage abstraction
...
Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2022-10-18 17:21:47 +07:00
blizzz
2e10378052
Merge pull request #31475 from nextcloud/kofemann-patch-1
...
files: close open directory file descriptor on error path
2022-06-21 18:44:05 +07:00
Côme Chilliet
23f7a37c03
Remove ILogger usages in lib/private/Files/Storage
...
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-04-26 16:52:53 +07:00
Robin Appelman
84f464550a
some file scanner performance improvements
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2022-03-17 22:21:16 +07:00
Tiramisu Mokka
8190441335
files: close open directory file descriptor on error path
2022-03-07 10:19:58 +07:00
Joas Schilling
65d79bb592
Check for invalid characters before trimming
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-11-25 08:48:26 +07:00
Julius Härtl
bc3c46362a
Make sure that a empty directory can still be deleted when copied from another storage
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2021-08-13 16:34:48 +07:00
Carl Schwan
28970563a2
Remove some mentions of ownCloud from our api documentation
...
Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2021-07-29 15:56:30 +07:00
John Molakvoæ (skjnldsv)
215aef3cbd
Update php licenses
...
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2021-06-04 22:02:41 +07:00
Robin Appelman
ed2d02d5f1
better cleanup of user files on user deletion
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-04-27 20:29:51 +07:00
Julius Härtl
98560c80ea
Properly handle result when copying with failure and throw in tests
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2021-01-05 09:20:35 +07:00
Christoph Wurst
73c7d0dc81
Bump icewind/streams from 0.7.1 to 0.7.2
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-12-29 09:07:36 +07:00
Christoph Wurst
d89a75be0b
Update all license headers for Nextcloud 21
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-12-16 18:48:22 +07:00
Christoph Wurst
2a054e6c04
Update the license headers for Nextcloud 20
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-08-24 14:54:25 +07:00
Robin Appelman
ad7798f9c9
use exceptions for error signaling in writeStream
...
this remove the ambiguity when writing zero length files
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-07-23 15:24:52 +07:00
Robin Appelman
5949849322
fix moving files from external storage to object store trashbin
...
having the "cache rename" after the "storage move" caused the target
to get the fileid from the source file, without taking care that the object
is stored under the original file id.
By doing the "cache rename" first, we trigger the "update existing file"
logic while moving the file to the object store and the object gets stored for the
correct file id
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-07-23 15:24:44 +07:00
Robin Appelman
e357d46863
filter files containing a hash in the path for ftp storages
...
the php ftp streamwrapper doesn't handle hashes correctly and will break when it tries to enter a path containing a hash.
By filtering out paths containing a hash we can at least stop the external storage from breaking completely
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-07-10 14:18:40 +07:00
Robin Appelman
da2d425044
add proper paths to locking exceptions
...
while some code paths do wrap the "raw" locking exception into one with a proper path, not all of them do
by adding the proper path to the original exception we ensure that we always have the usefull information in out logs
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-06-30 18:10:42 +07:00
Robin Appelman
e75797ad67
increase log level for storage self-test
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-06-08 18:12:49 +07:00
Robin Appelman
436908ee3f
filter out blacklisted files in getDirectoryContent
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-04-23 13:34:55 +07:00
Robin Appelman
9735b5d61f
Add method to storage backends to get directory content with metadata
...
Currently you need to use `opendir` and then call `getMetadata` for
every file, which adds overhead because most storage backends already
get the metadata when doing the `opendir`.
While storagebackends can (and do) use caching to relief this problem,
this adds cache invalidation dificulties and only a limited number of
items are generally cached (to prevent memory usage exploding when
scanning large storages)
With this new methods storage backends can use the child metadata they
got from listing the folder to return metadata without having to keep
seperate caches.
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-04-20 15:45:04 +07:00
Christoph Wurst
301327135c
Merge pull request #20361 from nextcloud/write-stream-close-on-exception
...
Close the streams in `writeStream` even when there is an exception
2020-04-15 10:48:24 +07:00
Christoph Wurst
caff1023ea
Format control structures, classes, methods and function
...
To continue this formatting madness, here's a tiny patch that adds
unified formatting for control structures like if and loops as well as
classes, their methods and anonymous functions. This basically forces
the constructs to start on the same line. This is not exactly what PSR2
wants, but I think we can have a few exceptions with "our" style. The
starting of braces on the same line is pracrically standard for our
code.
This also removes and empty lines from method/function bodies at the
beginning and end.
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-10 14:19:56 +07:00
Christoph Wurst
14c996d982
Use elseif instead of else if
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-10 10:35:09 +07:00
Robin Appelman
ccbf3059ba
Close the streams in `writeStream` even when there is an exception
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-04-08 16:40:56 +07:00
Christoph Wurst
1a9330cd69
Update the license headers for Nextcloud 19
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-03-31 14:52:54 +07:00