Commit Graph

257 Commits

Author SHA1 Message Date
Robin Appelman b0c8654f9e split out creating the sabre dav server to it's own factory 2015-08-11 14:43:46 +02:00
Robin Appelman 8c5302847b add test framework for doing full request webdav tests 2015-08-11 14:43:46 +02:00
Vincent Petry 6c139674a4 Merge pull request #18030 from owncloud/dav-upload-updater
go trough the updater when uploading over webdav
2015-08-06 15:28:10 +02:00
Robin Appelman 2a90cbe603 go trough the updater when uploading over webdav 2015-08-03 13:42:36 +02:00
Robin Appelman 91fbee8988 also log the class for dav exceptions 2015-07-24 13:30:52 +02:00
Vincent Petry b3b080e1c0 Strip public webdav info about sharing and mount points
Remove information about whether a file is an incoming share or mount
point when requested over public webdav.
2015-07-13 14:20:35 +02:00
Thomas Müller d3ac73c0c9 Remove OC_Log 2015-07-03 18:00:16 +02:00
Vincent Petry cf245b80fe Only delete part file on error if it is really a part file 2015-07-01 12:52:06 +02:00
Vincent Petry fd4efdded9 Clean up part file only once, not twice on error 2015-07-01 09:47:05 +02:00
Thomas Müller 134dc136e6 Avoid namespace clash 2015-06-30 15:07:48 +02:00
Thomas Müller 3f3c603922 Adding exception handling for ServerNotAvailableException - refs #17192 2015-06-30 15:05:59 +02:00
Morris Jobke 2bcd0af177 Merge pull request #17189 from owncloud/files-straypartfilesonexception
Cleanup part file after upload exception
2015-06-30 11:58:26 +02:00
Vincent Petry 3217d4dad1 Cleanup part file after upload exception
Added unit tests for checking for stray part files.
Convert exception to sabre exception in upload put method.

Also added unit test for exception mapping, which also indirectly tests
that the part file is being deleted on exception.

This applies to both chunking and non-chunking mode.

Added some unit tests for chunk upload.
2015-06-29 17:31:14 +02:00
Vincent Petry 2fa432dfb8 Fix class name conflict
Looks like PHP 5.6.x doesn't like name conflicts.

\Sabre\DAV\Server would overlap with \OC\Connector\Sabre\Server.
2015-06-29 17:11:14 +02:00
Thomas Müller 372a9afabe Fixing ctor calls and ctor itself to not break usage in calendar and contacts ..... 2015-06-29 15:54:05 +02:00
Thomas Müller f8127046ee Unit tests added for MaintenancePlugin 2015-06-29 14:18:09 +02:00
Thomas Müller e236e564af In case of maintenance we should add a message to the exception 2015-06-29 12:31:01 +02:00
Morris Jobke f63915d0c8 update license headers and authors 2015-06-25 14:13:49 +02:00
Robin Appelman 24f0151f81 handle locked exceptions when getting file/directory info in sabre 2015-06-17 14:13:10 +02:00
Thomas Müller d2305f2527 Merge pull request #16729 from owncloud/scanner-read-lock
keep a read lock while scanning a file or folder
2015-06-17 11:52:54 +02:00
Vincent Petry 1f91e9e65d Convert invalid path exception to sabre exception on MOVE 2015-06-15 17:49:11 +02:00
Robin Appelman 7d72f7d8ce keep a read lock while scanning a file or folder 2015-06-15 14:32:29 +02:00
Thomas Müller b6165b6865 Merge pull request #16912 from owncloud/webdav-smalltransferlockfix
Webdav PUT small file lock must be shared during hooks
2015-06-15 11:30:59 +02:00
Vincent Petry 4497aa4c68 Webdav PUT small file lock must be shared during hooks
Fixed code path for Webdav PUT of small files to use shared locks during
hook execution, and exclusive during the file operation

This makes it possible for versions to be copied by accessing the file
in a post_write hook.
2015-06-12 18:52:18 +02:00
Robin Appelman 05cecb101d verify path when getting a node for sabredav 2015-06-11 17:11:33 +02:00
Vincent Petry f13a2d9251 Revert "verify path when getting a node for sabredav" 2015-06-11 15:25:06 +02:00
Robin Appelman 4d10dab813 verify path when getting a node for sabredav 2015-06-11 14:12:04 +02:00
Vincent Petry 6ae5ae2e31 Prevent deleting Webdav root 2015-06-05 16:55:09 +02:00
Joas Schilling 1df95ea1ca Fix "@throws" tags on doc blocks 2015-06-05 13:55:59 +02:00
Vincent Petry 06dda427f3 Validate path in getChild 2015-06-05 12:08:18 +02:00
Vincent Petry 6ab38be40e Translate invalid path exception to sabre exception for files 2015-06-03 12:22:31 +02:00
Vincent Petry 270a10b754 Return 423 instead of 503 for locked files 2015-06-01 13:24:02 +02:00
Vincent Petry 0451a6652d Move locking exceptions 2015-06-01 13:24:02 +02:00
Vincent Petry ba174ac626 Convert LockedException to FileLocked in Sabre connector
For Sabre to be able to return the proper error code instead of 500, the
LockedException is now rethrown as FileLocked exception in the Sabre
connector
2015-06-01 13:22:57 +02:00
Robin Appelman 8665a98744 add locking for non-chunking webdav upload 2015-06-01 13:22:57 +02:00
Robin Appelman 668fafd4d2 close file handle after sending sabre response 2015-06-01 13:22:56 +02:00
Vincent Petry 06f8c80af6 Validate target file name for some webdav ops 2015-05-29 19:14:38 +02:00
Lukas Reschke ffd73ef2e4 Fix indentation 2015-05-27 14:57:19 +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
Morris Jobke 7ee3f99a4a Merge pull request #16364 from owncloud/add-warning-webdav
Add notice that WebDAV interface is not intended for browsers
2015-05-18 11:28:47 +02:00
Joas Schilling 0991c0cc02 Merge pull request #16292 from owncloud/webdav-storage-fireprehooks
Fire prehooks when uploading directly to storage
2015-05-15 15:08:27 +02:00
Lukas Reschke 13778893d9 Add notice that WebDAV interface is not intended for browsers
Fixes https://github.com/owncloud/core/issues/16359
2015-05-15 09:07:39 +02:00
Vincent Petry 3cae0135ad Fire prehooks when uploading directly to storage 2015-05-13 17:47:04 +02:00
Robin Appelman 11e1acd8ec fix webdav quota check for the root of the dav endpoint 2015-05-12 14:02:27 +02:00
Robin Appelman 06a65fab13 use cross storage move when renaming the part file during webdav put 2015-05-07 14:28:31 +02:00
Robin Appelman 2e897f05b1 triger propagation for webdav uploads
use post hooks for share etag propagator
2015-04-27 14:07:16 +02:00
Lukas Reschke b9df932e3c Merge pull request #15683 from owncloud/block-legacy-clients
Block old legacy clients
2015-04-24 18:21:10 +02:00
Lukas Reschke ab9ea97d3a Catch not existing User-Agent header
In case of an not sent UA header consider the client as valid
2015-04-23 16:33:51 +02:00
Lukas Reschke ed0b465cf9 Use 403 instead a 50x response 2015-04-20 12:53:40 +02:00
Lukas Reschke 4ea205e262 Block old legacy clients
This Pull Request introduces a SabreDAV plugin that will block all older clients than 1.6.1 to connect and sync with the ownCloud instance.

This has multiple reasons:

1. Old ownCloud client versions before 1.6.0 are not properly working with sticky cookies for load balancers and thus generating sessions en masse
2. Old ownCloud client versions tend to be horrible buggy

In some cases we had in 80minutes about 10'000 sessions created by a single user. While this change set does not really "fix" the problem as 3rdparty legacy clients are affected as well, it is a good work-around and hopefully should force users to update their client
2015-04-20 11:12:17 +02:00