Commit Graph

321 Commits (feat/database/query-result-fetch-associative-fetch-num)

Author SHA1 Message Date
Robin Appelman 43f70e5817
ignore readonly flag for directories
see http://support.microsoft.com/kb/326549

Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-03-25 12:03:09 +07:00
Morris Jobke fb09f3d31d
Merge pull request #26145 from nextcloud/smb-force-write-option
add (hidden) option to always show smb root as writable
2021-03-19 15:31:04 +07:00
Vincent Petry e6fd9b2f55
Merge pull request #25129 from nextcloud/bugfix/smb-notify-subpath
Fix files_external:notify command when running withing a subdirectory
2021-03-19 14:53:16 +07:00
Robin Appelman 5ffaa94fbc
add (hidden) option to always show smb root as writable
some smb servers are very insistent in reporting that the root of the share is readonly, even if it isn't.

This works around the problem by adding a hidden option to overwrite the permissions of the root of the share.

This can be enabled using

```bash
occ files_external:config <mount id> root_force_writable true
```

where you can find your mount id using

```bash
occ files_external:list
```

Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-03-16 15:35:35 +07:00
Robin Appelman b844293536 catch notfound and forbidden exception in smb::getmetadata
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-03-04 21:34:54 +07:00
Julius Härtl e9ae943bba
Properly handle SMB ACL blocking scanning a directory
This makes sure that a possible ForbiddenException is properly passed
through the storage as a ForbiddenException and can be catched when
trying to fetch the quota info of a parent folder

Signed-off-by: Julius Härtl <jus@bitgrid.net>
2021-01-29 11:26:22 +07:00
Morris Jobke 10214fbee0
Merge pull request #25214 from nextcloud/dependabot/composer/phpseclib/phpseclib-2.0.30
Bump phpseclib/phpseclib from 2.0.25 to 2.0.30
2021-01-21 10:25:02 +07:00
Joas Schilling 76367c5c38
Don't save credentials of another user
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-01-20 08:46:07 +07:00
Christoph Wurst 4373afeae1
Bump phpseclib/phpseclib from 2.0.25 to 2.0.30
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-01-19 21:19:02 +07:00
Julius Härtl 9ee7d0b718
Fix files_external:notify command when running withing a subdirectory of the SMB share
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2021-01-14 16:53:02 +07:00
Morris Jobke 275f15c1fb
Merge pull request #23261 from nextcloud/enh/external-storage-session-type
Expose session based authentication through mount point type
2021-01-07 21:29:13 +07:00
blizzz 72f16a46e8
Revert "allow using any ldap property as login name when using login credentials" 2021-01-07 14:01:32 +07:00
Robin Appelman 58f3f5cc28
allow using any ldap property as login name when using external storage login credentials
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-01-04 19:53:07 +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
Julius Härtl 35e5cc88f0 Expose session based authentication through mount point type
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-12-21 22:55:06 +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
Robin Appelman 8d962579db
set mountid for personal external storage mounts
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-12-02 14:25:48 +07:00
Christoph Wurst fd649afb1f
Remove the deprecated update.php
* It was documented as deprecated.
* The app code checker warned about it
* It's been three years

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-11-27 13:02:59 +07:00
Roeland Jago Douma b7be09ab2c
Check if array elements exist before using them
It seems that in some recent upgrade here. Not always the entries we
expect are returned. So we should first check if they exist. As to not
spam the log.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-10-25 22:03:40 +07:00
Christoph Wurst d9015a8c94
Format code to a single space around binary operators
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-10-05 20:25:24 +07:00
Robin Appelman 43b3049a4f
improve handling of out of space errors for smb
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-09-17 17:23:33 +07:00
Julius Härtl 2004ae4603
Set delimiter so that the CommonPrefixes response can properly be determined
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-09-10 08:11:55 +07:00
Robin Appelman fc96fa0cc7
fix s3 doesDirectoryExist check for empty directories
if a directory is empty, only the 'marker' object `/` exists.

since not all s3 implementations return just the prefix when listing objects by prefix,
when listing objects by the folder prefix, nothing will be returned if the directory is empty.
by not including the trailing slash in the prefix, the folder marked will always be returned if it exists

Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-09-10 08:11:55 +07:00
Roeland Jago Douma bb06b6cce4
Fix reading empty files from objectstorage
Since we try to do range requests this will fail hard.
However since empty files are not that interesting to read anyways we
just read from an emptry memory stream.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-09-09 20:45:13 +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
Morris Jobke ac73982395
Merge pull request #21734 from nextcloud/external-s3-no-touch
disable touch to update mtime for external s3 storage
2020-08-20 16:07:59 +07:00
Morris Jobke fedf9c69d9
Use matching parameter names form interfaces and implementations
Found by Psalm 3.14.1

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-08-19 18:16:35 +07:00
Morris Jobke afd52c6b12
Remove setCustomJs of the files_external FrontendDefinitionTrait
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-08-13 21:49:50 +07:00
Daniel Kesselberg ba3a855ad8
Remove unused method uploadFile
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2020-08-13 08:02:28 +07:00
Morris Jobke 0b0cc48c88
Move event listener to dedicated class
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-07-30 12:04:56 +07:00
Robin Appelman d1bd3ba594
update saved credentials on password change
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-07-30 11:43:15 +07:00
Robin Appelman 7ad0f66fc4
Only save login credentials in database once there is an external storage that needs it
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-07-30 11:43:15 +07:00
Morris Jobke 638e9438a9
Merge pull request #21728 from nextcloud/bugfix/noid/s3-external-mtime-cache
Reuse cache for directory mtime/size if filesystem changes can be ignored
2020-07-15 18:26:48 +07:00
Morris Jobke cbbbbee8b1
Merge pull request #21785 from nextcloud/techdebt/noid/remove-classmap-in-files_external
Move OC_Mount_Config to proper classname and remove OC::$CLASSPATH us…
2020-07-13 16:47:12 +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
Morris Jobke 065ef14cb0
Move OC_Mount_Config to proper classname and remove OC::$CLASSPATH usage in files_external
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-07-10 00:02:59 +07:00
Robin Appelman 0d6910ac13
disable touch to update mtime for external s3 storage
since updating the mtime requires doing a copy this can have a significant overhead and it messes with versioning

Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-07-07 15:55:38 +07:00
Julius Härtl f5cc34c9c2
Reuse cache for directory mtime/size if filesystem changes can be ignored
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-07-07 10:22:22 +07:00
Julius Härtl 69f4c50032
Remove rescanDelay from directory mtime
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2020-06-22 14:15:57 +07:00
Robin Appelman 6f2e920a5b
normalize sftp path in read and write stream
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-05-25 15:26:04 +07:00
Christoph Wurst cb057829f7
Update license headers for 19
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-29 11:57:22 +07:00
Robin Appelman 7f32fe6d50
add tooltip to option
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-04-22 14:25:33 +07:00
Robin Appelman 23e2baeb95
Add option to check share ACL's when listing directories
If a file or folder in a directory doesn't have read permissions they
will not be shown

Note that enabling this option incurs a performance penalty additional
requests need to be made to get all the acl.

Additionally the acl resolving logic is fairly primitive at the moment
and might not work correctly in all setups (it should error to showing
the entry)

Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-04-21 16:26:12 +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
Julien Lutran 3e849daf11
Fix issues with Keystone auth v3 in files_external app
Signed-off-by: Julien Lutran <julien.lutran@corp.ovh.com>
2020-04-15 10:33:08 +07:00
Christoph Wurst 28f8eb5dba
Add visibility to all constants
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-10 16:54:27 +07:00
Christoph Wurst 1584c9ae9c
Add visibility to all methods and position of static keyword
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-10 16:51:06 +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
Christoph Wurst bcd13296de
Make sure every file ends with an empty newline
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-09 16:11:50 +07:00
Christoph Wurst 44577e4345
Remove trailing and in between spaces
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-09 16:07:47 +07:00
Christoph Wurst afbd9c4e6e
Unify function spacing to PSR2 recommendation
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-09 13:54:22 +07:00
Christoph Wurst 41b5e5923a
Use exactly one empty line after the namespace declaration
For PSR2

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-09 11:48:10 +07:00
Christoph Wurst 85e369cddb
Fix multiline comments
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-08 22:24:54 +07:00
Robin Appelman 857957b45e
allow setting tooltips for external storage config options
allows explaining non-obvious config options a bit more

Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-04-03 15:44:53 +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
John Molakvoæ fa4162e86f
Merge pull request #20208 from nextcloud/smb-folder-contents-normalize-path
normalize smb path while listing folder contents
2020-03-30 10:06:39 +07:00
Christoph Wurst 463b388589
Merge pull request #20170 from nextcloud/techdebt/remove-unused-imports
Remove unused imports
2020-03-27 17:14:08 +07:00
Robin Appelman ef7bb5225a
normalize smb path while listing folder contents
currently when listing `'/'`, it will include a double slash in the paths used for the listing logic
this causes unneeeded cache misses in the statCache

Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-03-27 17:04:53 +07:00
Christoph Wurst b80ebc9674
Use the short array syntax, everywhere
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-03-26 16:34:56 +07:00
Christoph Wurst 74936c49ea
Remove unused imports
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-03-25 22:08:08 +07:00
Joas Schilling 17bc35e4f1
Merge pull request #19915 from nextcloud/external-storage-password-placeholders
Use placeholder values for password fields in external storage webui
2020-03-13 10:54:40 +07:00
Robin Appelman 0d112d7901
Use placeholder values for password fields in external storage webui
This prevents the password from being sent to the webui.

While an admin will always be able to retrieve the passwords (as they
can do arbitrairy code execution by design) this prevents casual
password snooping

Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-03-12 19:45:23 +07:00
Robin Appelman 223ee42a53
faster implementation of SFTP write stream
using mostly the same techniques as the read stream

Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-03-10 16:18:40 +07:00
Robin Appelman fe4e80093e
Faster implementation of sftp read stream
- Keeps a single file handle open instead of creating a new one for
every stream_read
- Read from sftp in large chunks instead of the 8k internal php size
- Request a read for the next chunk while we're still processing the
current one

Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-03-06 16:57:18 +07:00
Arthur Schiwon 7e1d14d9a5
do not overwrite global user auth credentials with empty values
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2020-02-06 00:14:29 +07:00
Christoph Wurst 5bf3d1bb38
Update license headers
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2019-12-05 15:38:45 +07:00
Roeland Jago Douma 68748d4f85
Some php-cs fixes
* Order the imports
* No leading slash on imports
* Empty line before namespace
* One line per import
* Empty after imports
* Emmpty line at bottom of file

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-11-22 20:52:10 +07:00
Daniel Kesselberg 2bd591f227
Make timeout a optional parameter
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2019-11-09 15:18:52 +07:00
Daniel Kesselberg 230f685987
Remove superfluous fclose
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2019-10-21 11:31:07 +07:00
Roeland Jago Douma 88b6dc5eaf
Merge pull request #17258 from nextcloud/smb-timeout-config
add (hidden) option to configure smb timeout
2019-09-27 12:29:56 +07:00
Robin Appelman bc160992d3
Update apps/files_external/lib/Lib/Backend/SMB.php
Co-Authored-By: Daniel Kesselberg <mail@danielkesselberg.de>
2019-09-25 14:59:44 +07:00
Robin Appelman 194edfc64e
add (hidden) option to configure smb timeout
hidden from ui to prevent clutter

```occ files_external:config <mount> timeout 30```

Signed-off-by: Robin Appelman <robin@icewind.nl>
2019-09-25 13:30:40 +07:00
Daniel Kesselberg 72d22a4828
Use local variable for directory name
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2019-09-23 14:03:41 +07:00
Daniel Kesselberg 75b8944061
Don't strip path from directory prefix
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2019-09-23 14:03:41 +07:00
Daniel Kesselberg 80340a8d46
Fill directory cache from opendir
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2019-09-23 14:03:41 +07:00
Daniel Kesselberg 12863e0d24
Change visibility to private (from protected)
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2019-09-23 14:03:40 +07:00
Daniel Kesselberg 963d35c78c
Rename $location to $path
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2019-09-23 14:03:40 +07:00
Daniel Kesselberg 010473ca1f
Add method to check if directory exists
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2019-09-23 14:03:40 +07:00
Roeland Jago Douma 15e16d4a85
Merge pull request #16790 from nextcloud/admin-use-user-global-auth
Allow admin configured mounts to use user configured global credentials
2019-09-10 16:01:14 +07:00
Robin Appelman 603655341e
allow setting user provided global credentials trough credentials popup
Signed-off-by: Robin Appelman <robin@icewind.nl>
2019-09-09 17:15:30 +07:00
Robin Appelman 1d51b297a9
Allow admin configured mounts to use user configured global credentials
Signed-off-by: Robin Appelman <robin@icewind.nl>
2019-09-09 16:51:24 +07:00
Arthur Schiwon 43bc31bacb
set a storage availability delay on auth issues to avoid lock out
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2019-08-22 12:40:15 +07:00
Arthur Schiwon cd62b38cc8
catch auth issues also when php-smbclient is in use
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2019-08-22 11:12:43 +07:00
Morris Jobke adc2ab4bb2
Ignore forbidden exception when fetching share mtime on SMB for symlinks
See https://github.com/nextcloud/server/pull/7556#issuecomment-499028026

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-07-08 21:43:24 +07:00
Robin Appelman 6d5579863e
add option to show hidden files in SMB shares
Note hidden files can mean different things in smb and the option the the files web ui,
the webui only counts files starting with '.' as hidden, while smb files
can be marked as hidden regardless, any files that are marked as hidden
on smb will thus be shown in the webui regardless of the setting in the files app.

Fixes #15644

Signed-off-by: Robin Appelman <robin@icewind.nl>
2019-05-23 21:23:56 +07:00
Michael Zamot dc35a8af83 Convert timestamp key value of metadata in Swift files_external
modified:   apps/files_external/lib/Lib/Storage/Swift.php

Signed-off-by: Michael Zamot <michael@zamot.io>

Convert value of timestamp metadata key in swift files_external to string
2019-03-01 12:10:37 +07:00
Morris Jobke 7fc68fe93e
Merge pull request #14211 from nextcloud/bugfix/prefix-path-to-filecache-s3
Prefix $path for filename for internal file cache
2019-02-19 12:01:08 +07:00
Daniel Kesselberg 0d667d18bb
Call headObject if file not in filecache 🙈
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2019-02-14 18:34:04 +07:00
Daniel Kesselberg 659ed3ecda
Prefix $path for filename for internal file cache
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2019-02-14 17:06:14 +07:00
Arthur Schiwon 792bcb82ae
add LDAP ConfigHandler for external storages and "$home" var
* handler registered upon OCA\\Files_External::loadAdditionalBackends
  event as user_ldap is loaded before files_external
* new configuration field "ldapExtStorageHomeAttribute" (not in GUI yet)

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2019-02-14 15:22:22 +07:00
Robin Appelman 2c1f6331a4
Add interface to allow storages from opting out of encryption
As opposed to hard-coding a list of excluded storages

Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-11-29 16:31:34 +07:00
Daniel Kesselberg 4cbea5f7e1
Remove value from cache on delete/clear
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2018-10-08 16:40:39 +07:00
Daniel Kesselberg 5cf38254bb
Use helper method for content length and last modified
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2018-10-01 20:18:36 +07:00
Daniel Kesselberg 67d5380b91
Reuse information from ListObjects for stat / filetype
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2018-09-30 21:05:53 +07:00
Morris Jobke 8563ab94aa
Merge pull request #10589 from nextcloud/smb-stat-retry
retry smb stat on timeout
2018-08-24 07:00:40 +07:00
Robin Appelman bdc6d0b5a1
log entries that are hidden during file listing
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-08-16 01:20:05 +07:00
Robin Appelman 24aaa3bc97
retry stat on timeout
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-08-08 16:07:41 +07:00
Morris Jobke e35451fd4e
Merge pull request #10025 from nextcloud/smb-rename-invalidargument-retry
also retry rename operation on InvalidArgumentException
2018-07-11 16:25:22 +07:00
Robin Appelman 27089422e1
Improved logging of smb connection errors
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-07-03 14:56:37 +07:00
Robin Appelman 431710a5aa
also retry rename operation on InvalidArgumentException
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-06-27 15:33:51 +07:00
Robin Appelman 90be8f336c
Add support for using kerberos ticket to authenticate to smb servers
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-06-22 14:25:36 +07:00
Robin Appelman 4a424f86db
update icewind/smb to 3.0.0
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-06-21 16:02:51 +07:00
Roeland Jago Douma 2b19add6b0
Add SFTP auth mechanism to use a password and public key for SFTP
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-06-07 13:35:43 +07:00
Morris Jobke b348431bce
Merge pull request #8842 from lanxenet/patch-1
fix(AmazonS3):  fix loop $result['Contents'] error
2018-05-07 18:41:39 +07:00
Roeland Jago Douma 055a003661
Use an actual function of the storage to determine needsPartFile
We have a function for it so better to override that. Also because other
codes that might check this should get the right value.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-05-01 15:02:36 +07:00
Arthur Schiwon 38a90130ce
move log constants to ILogger
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2018-04-26 10:45:52 +07:00
Roeland Jago Douma 47a3008141
Remove \OCP\Files::tmpFile
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-03-19 10:52:35 +07:00
Morris Jobke 63bc633d89
Merge pull request #8857 from nextcloud/swift-verify-cached-token
verify cached swift token
2018-03-19 10:10:04 +07:00
Robin Appelman 41954d2903
verify cached swift token
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-03-16 15:20:16 +07:00
enoch 6212992c0a
fix(AmazonS3): fix loop $result['Contents'] error
Invalid argument supplied for foreach() at /var/www/html/apps/files_external/lib/Lib/Storage/AmazonS3.php#295
2018-03-16 11:51:27 +07:00
Morris Jobke 044d01d0e1
Use proper method to log exceptions
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-03-12 18:10:59 +07:00
Roeland Jago Douma 017e1325f1
Merge pull request #8285 from nextcloud/apps_files-smb-catch-exceptions-on-listing
Make SMB module more fault-tolerant
2018-02-27 13:10:54 +07:00
Morris Jobke 8867629cf1
Merge pull request #8359 from nextcloud/swift-v3
Support swift v3 authentication
2018-02-26 18:30:00 +07:00
Robin Appelman d40c61a71a
adjust external storage config format to the one used in primary storage
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-02-26 14:54:30 +07:00
Robin Appelman 31dd6d6aae
add support for v3 swift auth
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-02-26 14:54:08 +07:00
Roeland Jago Douma 30017e3364
Properly set the mount type for external storages
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-02-20 15:51:12 +07:00
Robin Appelman 817f2f8f49
adjust swift external storage to new openstack sdk
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-02-19 19:41:16 +07:00
Roeland Jago Douma 7ad1e13961
Merge pull request #8158 from nextcloud/s3-minio
Use a more widely available method to test s3 settings
2018-02-19 17:09:36 +07:00
Morris Jobke d3d045dd5c
Remove unused import statements
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-02-14 16:55:43 +07:00
Roland Tapken 8e251e5d5a Make SMB module more fault-tolerant
Ignore unavailable files when fetching the share's mtime
or reading directory listings. This can happen on servers using a
distributed file system (DFS) with unavailable destinations, for example
when the remote server is offline.

Signed-off-by: Roland Tapken <roland@bitarbeiter.net>
2018-02-09 17:40:00 +07:00
Robin Appelman 48ea714341
Use a more widely available method to test s3 settings
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-02-08 09:34:05 +07:00
Robin Appelman 84bd2b6bc9
fix invalidating folder cache for s3
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-01-29 15:09:15 +07:00
Robin Appelman 7afd77604e
adjust s3 bulk delete to new sdk syntax
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-01-29 15:06:10 +07:00
Morris Jobke a661f043e1
Remove unneeded semicolon and parentheses
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-01-26 23:46:40 +07:00
Morris Jobke 4c38d1ed01
Merge pull request #8054 from nextcloud/substr-use-index
Use index based string access for substr with length of 1
2018-01-26 15:40:44 +07:00
Morris Jobke 9ff51aafc5
Use index based string access for substr with length of 1
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-01-26 13:38:34 +07:00
Morris Jobke 16a558871c
Use proper code flow instead of not needed else branch
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-01-25 23:01:03 +07:00
Morris Jobke 2a38605545
Properly log the full exception instead of only the message
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-01-23 10:57:21 +07:00
Roeland Jago Douma 05f75f803a
[files_external] OCS endpoint to proper OCSController
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-01-18 11:15:03 +07:00
Robin Appelman 34ced4dd97
add option to use legacy v2 auth with s3
Signed-off-by: Robin Appelman <robin@icewind.nl>
2017-12-19 11:54:55 +07:00
Morris Jobke b01d20c0d7
Merge pull request #7556 from nextcloud/smb-stat-exception
handle exceptions in SMB::stat
2017-12-18 22:31:05 +07:00
Robin Appelman 3fa13b48fc
handle exceptions in SMB::stat
Signed-off-by: Robin Appelman <robin@icewind.nl>
2017-12-18 15:55:46 +07:00
Robin Appelman 4f0d03e172
additional debug logging on smb copy/rename failures
Signed-off-by: Robin Appelman <robin@icewind.nl>
2017-12-18 13:59:58 +07:00
Robin Appelman 046eb0c635
add retry wrapper when reading files from swift
Signed-off-by: Robin Appelman <robin@icewind.nl>
2017-12-04 16:34:53 +07:00
Morris Jobke 0eebff152a
Update license headers
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-11-06 16:56:19 +07:00
Roeland Jago Douma 87e10f9e6a
OC_OCS_Response is deprecated
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2017-09-21 17:56:00 +07:00
Robin Appelman c83232adae
Fix undefined offset warning when using '/' as external storage root
Signed-off-by: Robin Appelman <robin@icewind.nl>
2017-09-19 17:18:04 +07:00
Robin Appelman 91f44f5309
fix undefined constants
Signed-off-by: Robin Appelman <robin@icewind.nl>
2017-09-18 15:16:28 +07:00
Robin Appelman 9154b27943
disable part files for s3 external storage
Signed-off-by: Robin Appelman <robin@icewind.nl>
2017-09-18 15:16:27 +07:00
Robin Appelman cc9dd4280f
add stat cache for s3 external storage
Signed-off-by: Robin Appelman <robin@icewind.nl>
2017-09-18 15:16:27 +07:00
Robin Appelman d5678201b4
more efficient is_dir
Signed-off-by: Robin Appelman <robin@icewind.nl>
2017-09-18 15:16:27 +07:00
Robin Appelman 4bbc1cdc79
more efficient permissions for s3 external storage
Signed-off-by: Robin Appelman <robin@icewind.nl>
2017-09-18 15:16:27 +07:00
Robin Appelman 9b5accf9f3
more efficient write only fopen
Signed-off-by: Robin Appelman <robin@icewind.nl>
2017-09-18 15:16:27 +07:00
Robin Appelman d70607104e
reuse object read/write/delete logic in s3 implementations
Signed-off-by: Robin Appelman <robin@icewind.nl>
2017-09-18 15:16:27 +07:00
Robin Appelman dad18baec8
update aws sdk and move it to 3rdparty
Signed-off-by: Robin Appelman <robin@icewind.nl>
2017-09-18 15:16:27 +07:00
Robin Appelman e9a58f8579
show storage as unavailable in the file list
Signed-off-by: Robin Appelman <robin@icewind.nl>
2017-09-04 11:54:13 +07:00
Robin Appelman 68ee79b595
set the exception for failedstorage
Signed-off-by: Robin Appelman <robin@icewind.nl>
2017-09-04 11:54:13 +07:00
Morris Jobke 442d4ed24a
Use the FailedStorage instead
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-09-04 11:54:13 +07:00
Vincent Petry 5df5b9c8b1
Handle invalid ext storage backend to keep mount point visible
Keep mount point visible and also ext storage config visible when
dealing with configs relating to storage backends or auth mechanisms
that were provided by an app that is currently disabled.

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-09-04 11:54:08 +07:00