Commit graph

218 commits

Author SHA1 Message Date
Thomas Müller
6824704699 Merge pull request #21117 from owncloud/owner-file-exists
Only return an owner if the file exists + improved getUidAndFilename
2016-01-15 13:31:56 +01:00
Robin Appelman
bdf51d9ea4 only trigger locking on lockingstorages 2016-01-14 13:01:43 +01:00
Robin Appelman
6d321f5f6b Return a class from cache operations instead of an array 2016-01-14 12:54:42 +01:00
Thomas Müller
682821c71e Happy new year! 2016-01-12 15:02:18 +01:00
Lukas Reschke
3e8a5f8a53 Typo in error message 2016-01-11 11:40:58 +01:00
Robin Appelman
300eb54c87 de-deplicate getUidAndFilename 2016-01-11 11:40:58 +01:00
Robin Appelman
fd2e1086c6 dont return an owner for files that don't exist 2016-01-11 11:40:58 +01:00
Thomas Müller
002161857c Merge pull request #21398 from owncloud/sharing-disabled-cache
Cache isSharingDisabledForUser
2016-01-06 17:23:14 +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
Morris Jobke
a18c0983d5 Use TempManager instead of tmpFile 2015-12-18 11:25:33 +01:00
Lukas Reschke
61da3d530d Verify return type
Can also be null. Silences another security warning...
2015-12-09 07:32:19 +01:00
Robin Appelman
19b2fe6a3a Fix mimetype filter in getDirectoryContent 2015-12-03 13:09:13 +01:00
Robin Appelman
b025f07fb7 Make Cache\Updater per storage 2015-11-25 14:16:00 +01:00
Robin Appelman
888df3933d take the etag of child mounts into account for the folder etag
this replaces shared etag propagation
2015-11-19 13:32:00 +01:00
Robin Appelman
d006a7c723 Fix scanning of incomplete folders 2015-11-19 13:30:50 +01:00
Robin Appelman
02f847bc66 use relative path 2015-11-19 13:30:50 +01:00
Robin Appelman
d5061b8139 fix fileinfo for non existing files 2015-11-19 13:30:50 +01:00
Robin Appelman
1736c70075 Some more cleanup for getFIleInfo/getDirectoryContent 2015-11-19 13:30:50 +01:00
Robin Appelman
02be8a3a12 Split getting cache entry and checking update to a seperate method 2015-11-19 13:29:12 +01:00
Robin Appelman
71b86c0ed4 Handle non existing users as owner in the view 2015-11-18 17:08:18 +01:00
Robin Appelman
331ef0e3c0 Add getOwner to FileInfo 2015-11-10 10:55:29 +01:00
Robin Appelman
c487f0f138 when a file is locked use old cache data 2015-11-04 14:45:10 +01:00
Robin Appelman
0a56313ca4 fix whitespace 2015-11-04 14:41:03 +01:00
Robin Appelman
fc7f7e5c37 only lock in getDirectoryContent if we need to update the cache 2015-11-03 18:23:22 +01:00
Robin Appelman
4f2656993e only lock in getFileInfo if we need to update the cache 2015-11-03 18:23:22 +01:00
Lukas Reschke
8f09d5b67c Update license headers 2015-10-26 14:04:01 +01:00
Lukas Reschke
13e817e901 Throw exception on getPath if file does not exist
Currently the `getPath` methods returned `NULL` in case when a file with the specified ID does not exist. This however mandates that developers are checking for the `NULL` case and if they do not the door for bugs with all kind of impact is widely opened.

This is especially harmful if used in context with Views where the final result is limited based on the result of `getPath`, if `getPath` returns `NULL` PHP type juggles this to an empty string resulting in all possible kind of bugs.

While one could argue that this is a misusage of the API the fact is that it is very often misused and an exception will trigger an immediate stop of execution as well as log this behaviour and show a pretty error page.

I also adjusted some usages where I believe that we need to catch these errors, in most cases this is though simply an error that should hard-fail.
2015-10-25 17:58:21 +01:00
Robin Appelman
9d7138aa50 Dont lock /$user/files 2015-10-23 14:59:16 +02:00
Roeland Jago Douma
3a14cfc295 Removemount expects absolutePath 2015-10-16 14:14:00 +02:00
Morris Jobke
b945d71384 update licence headers via script 2015-10-05 21:15:52 +02:00
Vincent Petry
64ca00925b Prevent moving mount point into already shared folder (outgoing)
It is already not allowed to share a folder containing mount points /
incoming shares.

This fixes an issue that made it possible to bypass the check by moving
the incoming share mount point into an existing outgoing share folder.
2015-10-02 16:14:42 +02:00
Thomas Müller
df75c17e52 Merge pull request #16479 from owncloud/core-fixgetrelativepathwrongmatches
Prevent wrong matches in getRelativePath
2015-09-24 10:25:00 +02:00
Thomas Müller
bcdb3c26da Merge pull request #19236 from owncloud/call_dot_directories_function
Replaces if ($file === '.' || $file === '..') by public function call isIgnoredDir
2015-09-23 11:34:23 +02:00
Martin
491250320a Replaces if ($file === '.' || $file === '..') by if(\OC\Files\Filesystem::isIgnoredDir($file)). Eases to find where this operation is used. 2015-09-22 17:53:15 +02:00
Vincent Petry
b9cd5bc1dc Prevent wrong matches in getRelativePath
Before this fix, the root "/files" with path "/files_trashbin" would
return "_trashbin" as relative path...
2015-09-22 11:34:37 +02:00
Bjoern Schiessle
17a64360e5 catch excexptions during the copy operation and make sure that we free the lock correctly 2015-09-22 11:32:10 +02:00
Thomas Müller
d5bba42030 Merge pull request #17932 from owncloud/fix_move_files
make sure that hooks are emitted properly on file move operation
2015-08-11 13:54:09 +02:00
Vincent Petry
143e4a81f0 Fix removal of share permissions when share disabled for user 2015-08-07 15:43:27 +02:00
Lukas Reschke
ad4c731c4c Correct regular expressions
Previously the regex was only matching on single characters. Meaning that file names such as "👍.txt" where possible while "👍" alone never was. This check apparently never worked as expected.
2015-07-30 11:22:14 +02:00
Bjoern Schiessle
fb4c99fe06 make sure that we emit the hooks if a file gets moved from a subfolder to the root folder with the nodes API 2015-07-29 11:02:38 +02:00
Thomas Müller
d3ac73c0c9 Remove OC_Log 2015-07-03 18:00:16 +02:00
Vincent Petry
16ff6cff54 Merge pull request #17256 from owncloud/locking-disablecallbackwrapperwhendisabled
Do not set callback wrapper when locking is disabled
2015-06-30 18:28:28 +02:00
Vincent Petry
afd83caf69 Do not set callback wrapper when locking is disabled 2015-06-30 13:45:41 +02:00
Vincent Petry
167f57c15e Unlock first path on rename if second path is locked 2015-06-29 17:31:14 +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
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
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
6697f9524c Merge pull request #16963 from owncloud/fileinfo-lock
Acquire read lock when getting file or directory info
2015-06-18 18:27:20 +02:00
Robin Appelman
17be0993b4 remove unneeded normalize 2015-06-18 15:33:44 +02:00