Robin McCorkell
df19cabb44
Store storage availability in database
...
Storage status is saved in the database. Failed storages are rechecked every
10 minutes, while working storages are rechecked every request.
Using the files_external app will recheck all external storages when the
settings page is viewed, or whenever an external storage is saved.
2015-07-20 16:27:26 +01:00
Bjoern Schiessle
a2e2005e67
make sure that we always detect legacy files correctly
2015-07-17 13:30:08 +02:00
Thomas Müller
9120942bcf
Merge pull request #16924 from owncloud/copy-recursive-polyfill
...
add recursive copy polyfill for storage backends
2015-07-06 17:05:36 +02:00
Thomas Müller
f55aa856ad
Remove file mapper - was only use in Windows and never worked properly
2015-07-03 15:41:29 +02:00
Robin Appelman
a0c089a1c9
add unit tests
2015-07-03 13:44:03 +02:00
Morris Jobke
f5c57e076e
Merge pull request #17077 from owncloud/files-scan-absolute-path
...
fix getting mount points when passing a path to the files:scan command
2015-07-02 13:02:20 +02:00
Vincent Petry
167f57c15e
Unlock first path on rename if second path is locked
2015-06-29 17:31:14 +02:00
Joas Schilling
70eb20e3a7
Merge pull request #17030 from owncloud/lock-posthooks
...
Keep shared lock for post-hooks
2015-06-29 14:17:03 +02:00
Robin Appelman
786ec82a61
add unit test
2015-06-29 14:06:29 +02:00
Vincent Petry
271ef9dedb
Remove test-specific method to make Bjoern and Joas happy
2015-06-26 17:37:04 +02:00
Joas Schilling
9b336765b6
Correctly check if the real file exists, otherwise try the part file
2015-06-26 13:17:23 +02:00
Vincent Petry
538e466c30
Keep shared locks in post hooks
...
Instead of unlocking after the file operation, change exclusive locks
back to shared locks during post hooks, and unlock after that.
Also added unit tests to test locking in pre-hooks, during operation and
post-hooks.
2015-06-25 16:33:02 +02:00
Vincent Petry
58439c337c
Merge pull request #17070 from owncloud/lock-movemountbug
...
Lock correct paths when moving mount
2015-06-24 18:37:48 +02:00
Vincent Petry
35047a2300
Fix locked paths in the moveMount case
...
When moving a mount point directly, the lock must be applied on the
local mount point path instead of the attached storage root.
Other operations will still lock the attached storage root.
2015-06-24 11:33:28 +02:00
Björn Schießle
cce841c665
Merge pull request #17045 from owncloud/enc_improvements
...
encryption improvements
2015-06-23 14:30:21 +02:00
Bjoern Schiessle
95602d4069
make sure that we always read the header from the original file
2015-06-23 11:41:21 +02:00
Thomas Müller
ced15c44b4
Merge pull request #16657 from owncloud/view-emit-path
...
emit hooks from a view as long as the path is inside the default root
2015-06-22 11:29:11 +02:00
Vincent Petry
e15dd783ab
Workaround for empty dir deletion for SFTP
...
Explicitly clear the stat cache after deleting an empty folder to make
sure it is properly detected as deleted in subsequent requests.
This works around a problem with phpseclib where the folder is properly
deleted remotely but the stat cache was not updated.
2015-06-18 17:40:38 +02:00
Vincent Petry
102c6ffc41
Normalize path in View's lock methods
2015-06-16 17:03:12 +02:00
Vincent Petry
0e3a3dd5d7
Rethrow LockedException with full path
...
Because the path is converted to md5 from the original exception,
rethrow the exception with the correct full path
2015-06-16 10:48:31 +02:00
Joas Schilling
a7d2b3b9ae
Add return value to lock methods and check it in tests
2015-06-12 11:41:05 +02:00
Thomas Müller
a968b8409d
Merge pull request #16158 from owncloud/mountprovider-after-setup
...
Call newly registered mount providers after the filesystem is setup
2015-06-08 13:42:02 +02:00
Joas Schilling
bb0cb0aaec
Merge pull request #15895 from owncloud/dav-getremoteetag
...
Get etag from remote OC server
2015-06-03 17:20:25 +02:00
Joas Schilling
d3e3a84cae
Move the helpful method to the TestCase class
2015-06-03 12:33:29 +02:00
Vincent Petry
120588dd7a
Disable update check test when testing wrappers
...
The checkUpdate test is intended for testing real storages, not
wrappers.
2015-06-02 15:14:37 +02:00
Robin Appelman
8926bca0c7
phpdoc, strict and type hints
2015-06-02 14:07:55 +02:00
Robin Appelman
24131586d7
call mount providers that are registered after the filesystem is setup
2015-06-02 14:07:54 +02:00
Robin Appelman
4b48dd424f
emit hooks from a view as long as the path is inside the default root
2015-06-02 14:07:20 +02:00
Vincent Petry
c4cb93e644
Added storage backend test for checkUpdate
...
This helps testing whether checkUpdate properly returns false when no
change exists
2015-06-02 11:42:03 +02:00
Robin Appelman
d519aba878
fix test
2015-06-01 13:22:56 +02:00
Robin Appelman
7e418c7d69
high level locking wip
2015-06-01 13:22:56 +02:00
Thomas Müller
c700f42b68
Merge pull request #16517 from owncloud/remove-logo-wide
...
replace logo-wide on share page as well with better icon + text
2015-05-29 12:15:02 +02:00
Vincent Petry
e114d00242
Only use quota stream wrapper on "files"
...
Prevent using the quota stream wrapper on trashbin folders and other
metadata folders
2015-05-28 18:31:20 +02:00
Vincent Petry
ded62ff693
Merge pull request #16501 from owncloud/enc_fix_move_versions_between_storages
...
[encryption] fix move versions between storages
2015-05-28 15:28:25 +02:00
Björn Schießle
ab0747113c
Merge pull request #16452 from owncloud/enc_ftp_upload
...
always write file, if fseek doesn't work we write the whole file
2015-05-26 12:02:41 +02:00
Bjoern Schiessle
c63f2286c0
copy keys before we move a file between storages to make sure that the new target file reuses the old file key, otherwise versions will break
2015-05-22 15:41:28 +02:00
Jan-Christoph Borchardt
4e93d9e3a2
remove logo-wide from tests
2015-05-21 22:40:26 +02:00
Bjoern Schiessle
5a20edac82
test to simulate a non-seekable stream wrapper
2015-05-21 14:15:26 +02:00
Vincent Petry
22968e806c
Get correct mimetype when moving and changing extension
...
Fixes issue when restoring folders from trash cross-storage, as such
folders have an extension ".d12345678".
Fixes issue when moving folders between storages and at the same time
changing their extension.
2015-05-21 10:57:58 +02:00
Morris Jobke
39d1e99228
Merge pull request #16322 from owncloud/trash-view
...
dont go trough the view when moving to trash
2015-05-20 14:44:01 +02:00
Robin Appelman
2213d6597c
add tests for copyFromStorage with same storage
2015-05-19 17:30:32 +02:00
Scrutinizer Auto-Fixer
fdbc21fc6c
Scrutinizer Auto-Fixes
...
This commit consists of patches automatically generated for this project on https://scrutinizer-ci.com
2015-05-19 11:23:06 +00:00
Björn Schießle
1c411baf17
Merge pull request #16412 from owncloud/jknockaert-patch-1
...
fix #16356
2015-05-18 19:26:40 +02:00
Clark Tomlinson
f9b6ee86cd
Merge pull request #16399 from owncloud/enc_rmdir_fix
...
[encryption] only try to delete file keys if it is a valid path
2015-05-18 11:09:36 -04:00
Bjoern Schiessle
1c500487ba
add a unit test to make sure that we don't try to read a file during a write operation
2015-05-18 17:00:54 +02:00
Björn Schießle
a1e60e7882
Merge pull request #15980 from owncloud/jknockaert-patch-1
...
fix bug #15973
2015-05-18 15:01:16 +02:00
jknockaert
62e6c46216
correct testSeek
2015-05-18 11:55:48 +02:00
Bjoern Schiessle
efa674f10d
only try to delete file keys if it is a valid path
2015-05-18 11:54:51 +02:00
jknockaert
9a71eddaf9
work on tests
...
Tests reorganised and extended
2015-05-18 11:32:29 +02:00
Bjoern Schiessle
887be709f5
a new approach to display the error message
2015-05-18 10:15:17 +02:00
Bjoern Schiessle
0d5c7a11e2
use hooks to update encryption keys instead of the storage wrapper if a file gets renamed/restored, as long as we
...
are in the storage wrapper the file cache isn't up-to-date
2015-05-11 12:06:57 +02:00
Joas Schilling
aea734aaf1
Fix missing types on doc block and deduplicate the method name
2015-05-06 14:31:10 +02:00
Bjoern Schiessle
dc39bda870
move/copy from storage
2015-05-06 14:20:02 +02:00
Bjoern Schiessle
83ed4ee5b6
unit tests
2015-05-06 12:28:15 +02:00
Bjoern Schiessle
7089af96f2
make sure that we keep the correct encrypted-flag and the (unencrypted)size if a file gets copied
2015-05-05 16:17:14 +02:00
Morris Jobke
de8c15e1a4
Merge pull request #14764 from owncloud/shared-etag-propagate
...
Propagate etags across shared storages
2015-04-28 10:58:50 +02:00
Thomas Müller
7d0eba7a41
Merge pull request #15886 from owncloud/fix-15848-master
...
Adjust isLocal() on encryption wrapper
2015-04-27 15:06:26 +02:00
Thomas Müller
678b7d7e4d
Merge pull request #15860 from owncloud/enc_fallback_old_encryption
...
[encryption] handle encrypted files correctly which where encrypted with a old version of ownCloud (<=oc6)
2015-04-27 14:32:19 +02:00
Thomas Müller
936d564058
fixes #15848
2015-04-27 14:26:05 +02:00
Robin Appelman
be55a90323
dont use our now non existing hook
2015-04-27 14:07:15 +02:00
Bjoern Schiessle
27683f9442
fall back to the ownCloud default encryption module and aes128 if we read a encrypted file without a header
2015-04-27 13:01:18 +02:00
Joas Schilling
8f61fbb81f
Fix new tests
2015-04-27 11:10:31 +02:00
Bjoern Schiessle
9a5783b284
fix unit tests
2015-04-24 16:47:27 +02:00
jknockaert
4554df2512
enable testWriteWriteRead
2015-04-24 16:44:00 +02:00
jknockaert
18a1225b0c
enable testRewind
2015-04-24 16:44:00 +02:00
jknockaert
27ea23ea6b
Update encryption.php
2015-04-24 16:44:00 +02:00
jknockaert
d6841aa706
disable r+ test
2015-04-24 16:44:00 +02:00
jknockaert
7a34f75da6
add two tests
...
testRewind tests reading and writing after rewind on an encrypted stream; testWriteWriteRead tests r+ mode
2015-04-24 16:44:00 +02:00
Joas Schilling
4334e77035
Merge pull request #15839 from owncloud/enc_fix_moving_shared_files
...
[encryption] fix moving files to a shared folder
2015-04-24 15:07:36 +02:00
Joas Schilling
411f7893bf
Add test "operation on keys failed"
2015-04-24 14:27:23 +02:00
Joas Schilling
781cfff221
Deduplicate data provider and fix method visibility
2015-04-24 13:12:45 +02:00
Bjoern Schiessle
24128d1384
only update share keys if the file was encrypted
2015-04-24 10:19:09 +02:00
Bjoern Schiessle
2646bccb83
update share keys if file gets copied
2015-04-23 17:18:48 +02:00
Bjoern Schiessle
2990b0e07e
update share keys if a file is moved to a shared folder
2015-04-23 17:18:48 +02:00
Vincent Petry
b88d0ba0ac
Delete temp files after testing encryption stream wrapper
2015-04-23 13:42:18 +02:00
Vincent Petry
903d52d45f
Merge pull request #15809 from owncloud/view-null-root
...
dont allow using null as view root
2015-04-22 18:10:26 +02:00
Robin Appelman
e302213248
add unit tests for null handling in view
2015-04-22 16:24:25 +02:00
Thomas Müller
225cde2183
pass KeyStorage via ctor
2015-04-22 13:09:42 +02:00
Thomas Müller
987bc138df
calling renameKeys() on directory level as well - fixes #15778
2015-04-22 12:12:27 +02:00
Thomas Müller
fc4127dd62
add $encryptionModuleId to methods of Keys/IStorage
2015-04-22 11:53:05 +02:00
Björn Schießle
570718fb6b
Merge pull request #15757 from owncloud/enc-fixfeofforlastblock
...
Fix encryption feof to not return too early
2015-04-22 11:32:21 +02:00
Bjoern Schiessle
19e8c4fcb1
get dirname from sharePath
2015-04-21 14:58:01 +02:00
Vincent Petry
76dad297ff
Fix encryption feof to not return too early
...
This is because stream_read will pre-cache the next block which causes
feof($this->source) to return true prematurely. So we cannot rely on it.
Fixed encryption stream wrapper unit tests to actually simulate 6k/8k
blocks to make sure we cover the matching logic.
Added two data files with 8192 and 8193 bytes.
2015-04-20 18:32:40 +02:00
Bjoern Schiessle
b25c06f576
detect system wide mount points correctly
2015-04-16 14:15:04 +02:00
Björn Schießle
4f0437fbde
Merge pull request #15598 from owncloud/fix-enc-file-size-master
...
Fix file size of encrypted files
2015-04-14 16:48:04 +02:00
Morris Jobke
82cab25762
Merge pull request #13360 from owncloud/cross-storage-move
...
Proper copy/move between multiple local storages
2015-04-14 14:35:08 +02:00
Thomas Müller
cbe30f740e
remove calculateUnencryptedSize() - not needed
2015-04-14 13:08:59 +02:00
Robin Appelman
01da6be4d6
upda tests
2015-04-13 17:10:02 +02:00
Robin Appelman
d7b3a1a35a
preserve cache data when doing a cross storage move
2015-04-13 17:10:01 +02:00
Robin Appelman
0772e3b4c1
Properly handle copy/move failures in cross storage copy/move
2015-04-13 15:13:03 +02:00
Robin Appelman
31e94708f8
Improve cross storage copy between local storages
2015-04-13 15:13:02 +02:00
Vincent Petry
2822d0579e
Properly add trailing slash to mount point
...
Fixes resolving mount points when shared mount point's target name has
the same prefix as the source name
2015-04-13 12:36:47 +02:00
Jörn Friedrich Dreyer
fafecd1c05
fix cherrypicking
2015-04-10 11:08:24 +02:00
Jörn Friedrich Dreyer
a85bc5538f
fix filesystem and encryption tests
...
Conflicts:
apps/files_encryption/lib/util.php
apps/files_encryption/tests/hooks.php
2015-04-10 09:12:37 +02:00
Thomas Müller
06a5a9d0c2
Fix mock object to return proper type
2015-04-09 18:30:45 +02:00
Thomas Müller
11c3741526
Fix mock object to return proper type
2015-04-09 17:45:57 +02:00
Vincent Petry
f8cfc03f36
Replace originalStorage in tests with a proper teardown
...
The purpose of $originalStorage in unit tests was to remount the old
root.
However that storage itself is already wrapped by storage wrapper, so
remounting it would rewrap the storage several times.
This fix makes use of "loginAsUser()" and "logout()" from the TestCase
class to properly initialize and cleanup the FS as expected.
2015-04-08 12:45:38 +02:00
Thomas Müller
2d2cb09715
fixing unit test - expected value change due to different size being stored in cache table
2015-04-07 14:30:01 +02:00
Thomas Müller
268d346b36
fixing unit tests
2015-04-07 13:30:31 +02:00
Thomas Müller
fce42a3161
fixing unit test execution - test dummy module was behaving wrong
2015-04-07 13:30:31 +02:00
Thomas Müller
870c53ee37
fixing unit test execution
2015-04-07 13:30:31 +02:00
Thomas Müller
3e3226da4c
Properly set size and unencrypted size in the stream unit tests
2015-04-07 13:30:31 +02:00
Thomas Müller
b3c5ef3afe
Adding unit test for read and write of big file
2015-04-07 13:30:31 +02:00
Thomas Müller
104d11ec4c
Fixing encryption storage wrapper tests
2015-04-07 13:30:30 +02:00
Thomas Müller
e8e5bd61ae
fixing unit tests for encryption stream wrapper seek
2015-04-07 13:30:30 +02:00
Thomas Müller
8ffa6db110
fixing unit tests for stream wrapper
2015-04-07 13:30:30 +02:00
Thomas Müller
e0ab2c34ea
update unit tests after ctor signature change of \OC\Encryption\Util
2015-04-07 13:30:28 +02:00
Thomas Müller
00338f9dca
Removing files_encryption left overs
2015-04-07 13:30:28 +02:00
Bjoern Schiessle
0eee3a2618
remove unencrypted_size from the cache, size will contain the unencrypted size
2015-04-07 13:30:28 +02:00
Thomas Müller
498625ea3a
adding unit tests for stream wrapper
2015-04-07 13:30:28 +02:00
Thomas Müller
a905f641b3
various fixes & start to unit test the encryption storage wrapper
2015-04-07 13:30:28 +02:00
Vincent Petry
5c9998179f
Properly quote file names in listFiles query for GDrive
2015-03-31 15:14:03 +02:00
Lukas Reschke
53f67fc65d
Revert "Properly quote file names in listFiles query for GDrive"
2015-03-31 15:12:35 +02:00
Frank Karlitschek
b216b3fad0
Merge pull request #15215 from owncloud/ext-gdrivelistfilequoting
...
Properly quote file names in listFiles query for GDrive
2015-03-31 09:08:59 -04:00
Thomas Müller
722e50a112
Merge pull request #15240 from owncloud/storage-wrapper-priority
...
add priority to storage wrappers
2015-03-27 15:18:44 +01:00
Robin Appelman
cb9ead7dde
add priority to storage wrappers
2015-03-26 21:26:38 +01:00
Vincent Petry
43588fe2f7
Properly quote file names in listFiles query for GDrive
2015-03-26 12:15:02 +01:00
Vincent Petry
ec2d7cff2f
SQLite autoincrement test
2015-03-25 18:33:21 +01:00
Robin Appelman
d11f01fa0f
Add `getNonExistingName()` to the node api
2015-03-24 15:00:36 +01:00
Robin Appelman
73874ca27f
Merge pull request #14704 from owncloud/storage-wrapper-mount
...
pass mountpoint to storage wrapper callback
2015-03-19 16:20:38 +01:00
Joas Schilling
f2f7f178a5
Add test for backticks in path and etag
2015-03-18 13:29:39 +01:00
Vincent Petry
e50f13d46b
Add positive test for path verification
2015-03-17 18:17:30 +01:00
Robin Appelman
7ab919256b
fix test
2015-03-16 14:13:56 +01:00
Thomas Müller
80ef53eff0
verify the file name length not to exceed 255 characters + verify path during rename
2015-03-12 10:47:47 +01:00
Robin Appelman
169031d1c5
fix factory test
2015-03-11 15:07:59 +01:00
Robin Appelman
e1f2a6df94
Allow setting the watcher policy as mount option
2015-03-11 15:07:23 +01:00
Robin Appelman
7adda88786
Copy mount options to the storage
2015-03-11 15:06:48 +01:00
Robin Appelman
82a62fd249
Add test for storage factory
2015-03-11 15:06:12 +01:00
Thomas Müller
3623f14e73
no translation service in common storage class
2015-03-09 10:38:38 +01:00
Thomas Müller
4bac595068
adding storage specific filename verification - refs #13640
2015-03-09 10:38:37 +01:00
Joas Schilling
294724b5da
Add a test for ObjectStore\NoopScanner
2015-03-04 11:48:31 +01:00
Robin Appelman
89735ab22b
add some tests for disabled updater
2015-02-27 17:14:17 +01:00
Robin Appelman
fc027bceb7
Fix cache update when doing a rename that overwrites the target
2015-02-27 16:39:58 +01:00
Thomas Müller
7fe07e93fe
Merge pull request #14437 from owncloud/node-check-fileinfo
...
Check if we have a proper fileinfo
2015-02-27 02:56:13 -08:00
Lukas Reschke
9baf758150
Merge pull request #14503 from owncloud/quota-preventdatalossforfailedmove
...
Fix file move/copy when storage space is not enough
2015-02-26 16:35:13 +01:00
Vincent Petry
232de3bdc0
Delete target file for unsuccessful copy/rename
2015-02-26 15:11:37 +01:00
Robin Appelman
541c8c092d
Add unit test
2015-02-26 12:20:20 +01:00
Vincent Petry
20738d287e
Properly detect streamCopy errors
...
Now checking whether the written bytes match the number of read bytes.
2015-02-25 16:03:15 +01:00
Joas Schilling
993d89b3cc
Extend the class so the Filesystem is cleaned up
2015-02-25 16:03:10 +01:00
Lukas Reschke
41e5850450
Prevent directory traversals in ctr of \OC\Files\View
...
This prevents a misusage of \OC\Files\View by calling it with user-supplied input. In such cases an exception is now thrown.
2015-02-18 18:17:33 +01:00
Robin Appelman
6ecfcde954
update test
2015-02-13 15:01:05 +01:00
Robin Appelman
134243d3e5
Dont lower the mtime of a folder when propagating changes
2015-02-13 14:30:05 +01:00
Lukas Reschke
4d91fa4c93
Normalize before processing
2015-02-06 15:03:29 +01:00
Bjoern Schiessle
21c45925fe
detect root of mountpoint also if the trailing slash is missed
2015-02-04 12:47:04 +01:00
Robin Appelman
2124540d1d
Dont remove a file from cache if the delete operation failed
2015-01-29 15:39:56 +01:00
Robin Appelman
ddee63fa00
Fix resolving paths for views rooted in a file
2015-01-29 12:47:11 +01:00
Robin Appelman
cec43df0f0
Add unit test
2015-01-28 13:44:39 +01:00
Morris Jobke
752b94d363
Merge pull request #13717 from owncloud/storage-donotwrapnullstorage
...
Prevent wrapping null storage
2015-01-28 01:00:20 +01:00
Vincent Petry
6d8985b671
Prevent wrapping null storage
...
Can happen when trying to instantiate external storages that have
incomplete config, where the constructor throws an exception (the
exception is caught in createStorage())
2015-01-27 17:40:08 +01:00
Robin Appelman
87a1b2bdc4
Preserve mtime when doing cross storage move
2015-01-23 15:11:27 +01:00