Commit graph

713 commits

Author SHA1 Message Date
Thomas Citharel
9af2a9ff4d
test serializer 2016-09-26 11:55:40 +02:00
Thomas Citharel
691b3ab448
Add publicuri to oc_dav_shares table and start working with it 2016-09-26 11:55:39 +02:00
Thomas Citharel
dd248caa09
fix some bracket positions 2016-09-26 11:55:39 +02:00
Thomas Citharel
1899116509
move getPublicCalendar inside the caldav backend 2016-09-26 11:55:39 +02:00
Thomas Citharel
762726d988
fix indent once and for all 2016-09-26 11:55:39 +02:00
Thomas Citharel
3921385ed3
fix things (indentation, tests, comments, backend custom implementation 2016-09-26 11:55:39 +02:00
Thomas Citharel
ebf23778f5
fix unpublishing test 2016-09-26 11:55:38 +02:00
Thomas Citharel
de5e212694
fix plugin test 2016-09-26 11:55:38 +02:00
Thomas Citharel
77216e7ca9
a few tests 2016-09-26 11:55:38 +02:00
Thomas Müller
d0ec6b9c15
Disable OPTIONS handling - done by sabre 2016-09-26 11:55:38 +02:00
Thomas Müller
e783d01da7
Allow public access to the principals/system/public 2016-09-26 11:55:37 +02:00
Thomas Citharel
aadb56dfcc
Fix wrong way to get publish status 2016-09-26 11:55:37 +02:00
Thomas Citharel
f09c46d166
Fix some tests 2016-09-26 11:55:37 +02:00
Thomas Citharel
2df69ec7f4
correct get published status and minor fixes 2016-09-26 11:55:37 +02:00
Thomas Citharel
aca305332a
Fix DB call for MySQL databases 2016-09-26 11:55:37 +02:00
Thomas Citharel
994001c480
Dirty hack to disable dav plugins on public calendar urls 2016-09-26 11:55:36 +02:00
Thomas Müller
00dc157b19
Fix requests for browser plugin as well as for the public calendar root folder 2016-09-26 11:55:36 +02:00
Thomas Müller
e7085aab38
Allow not-authenticated access to specific urls 2016-09-26 11:55:36 +02:00
Thomas Müller
90ab6e4fd9
Add new root collection public-calendars which holds all public calendars 2016-09-26 11:55:36 +02:00
Thomas Citharel
8da2100e7d
Start work on returning CalDAV published calendars 2016-09-26 11:55:35 +02:00
Thomas Citharel
bd0aae8636
No need to call database twice 2016-09-26 11:55:35 +02:00
Thomas Citharel
7e5a82b968
Use urlgenerator to generate an absolute url
And pass Config the correct way too
2016-09-26 11:55:35 +02:00
Thomas Citharel
72f35f8862
Use ressource ID instead of name 2016-09-26 11:55:35 +02:00
Thomas Citharel
f89961ddba
Fix annotations 2016-09-26 11:55:34 +02:00
Thomas Citharel
4a0e6e2ad0
Remove unnecessary line 2016-09-26 11:55:34 +02:00
Thomas Citharel
1652a74feb
Fix publish-url property & getPublishStatus() fct 2016-09-26 11:55:34 +02:00
Thomas Citharel
981c38f6d9
Remove unnecessary implementation 2016-09-26 11:55:34 +02:00
Thomas Citharel
5824c2493b
Make little corrections
Function getPublishedStatus) is not working atm.
2016-09-26 11:55:34 +02:00
Thomas Citharel
69d3601dcb
Proper work on Publishing 2016-09-26 11:55:33 +02:00
Vincent Petry
b17e836e45
FilesHome now also returns DAV properties
The files home node must also return DAV properties like etag,
permissions, etc for the clients to work like they did with the old
endpoint.

This fix makes FilesHome extend the Sabre Directory class, this makes
the FilesPlugin and other plugins recognize it as a directory and will
retrieve the matching properties when applicable.

Downstream of https://github.com/owncloud/core/pull/26066

Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2016-09-26 11:24:23 +02:00
Joas Schilling
94b0315d7a
Fix more tests 2016-09-20 14:28:17 +02:00
Thomas Müller
1f825f0fe8
Adding repair step to fix component of birthday calendars 2016-09-20 11:28:00 +02:00
Thomas Müller
6eb1bc55ab
The birthday calendar can only hold VEVENT - refs https://github.com/owncloud/tasks/issues/338 2016-09-20 11:26:09 +02:00
Joas Schilling
1944d9b3ab
Use magic DI 2016-09-20 01:15:24 +02:00
Joas Schilling
44fbf6f734
Close cursors 2016-09-15 09:47:39 +02:00
Joas Schilling
08c6ca5a1a
Chunk if you have too many contacts 2016-09-14 16:29:58 +02:00
Joas Schilling
62f31d67bd
Chunk if you have too many events 2016-09-14 16:29:33 +02:00
Lukas Reschke
c0656fb4ef
Move Travis tests to DroneCI
Should give us some quicker test execution speed as we're not limited by Travis

Explicitly invoke with "bash"

Install instance already

Use newest litmus container
2016-09-13 18:17:15 +02:00
Vincent Petry
1ab472b9ad
Improve chunk upload AssemblyStream performance 2016-09-13 09:29:02 +02:00
Roeland Jago Douma
94fb5bcbae
Cast query result to int
Else we never create the default address book
2016-09-09 19:15:27 +02:00
Morris Jobke
3fc37b2fc5 Merge pull request #1342 from nextcloud/throw-exceptions-not-printable
Don't print exception message in HTML
2016-09-09 14:57:23 +02:00
Lukas Reschke
f715b5ea2e
Don't print exception message in HTML
The exception message is potentially influenced by user input and could thus be confusing (e.g. somebody could try to open a file like "Please send a mail to support@foo.com", and then the message would include that string.

It is thus reasonable to not show the exception message by default. Also for the browser view I added an `exit()` at the end, as otherwise the XML exception would be attached.
2016-09-09 13:52:34 +02:00
Lukas Reschke
67439951e6
Filter more mimetypes
There's no need to allow more than those defined mimetypes for images.
2016-09-09 12:33:10 +02:00
Joas Schilling
b94a4df592
Fix tests 2016-09-07 18:39:48 +02:00
Joas Schilling
cf69a2b7eb
UPDATE permissions qualify for renaming a node 2016-09-07 11:22:57 +02:00
Joas Schilling
4c0665b6ec
Only require CREATE permissions when the file does not exist yet 2016-09-07 11:10:48 +02:00
Robin Appelman
344945bfe9 more efficient check if addressbook and calendar exists for user 2016-08-31 15:08:29 +02:00
Joas Schilling
a123fe6f18
Add a unit test for all the magic 2016-08-30 12:24:20 +02:00
Joas Schilling
0c4d471c18
Correctly handle multi-values when converting VCards to array 2016-08-30 12:08:39 +02:00
Markus Goetz
0cb34c2fa5
[master] DAV: Return data-fingerprint always when asked (#25482)
For owncloud/client#5056
Users can configure arbitrary subfolders for syncing, therefore we should
always return it when asked for.
The sync client makes sure to not always ask for it to save bandwidth.
2016-08-29 14:37:14 +02:00
Lukas Reschke
4d85ffc27c Merge pull request #1054 from nextcloud/less-cache-hits
Reduce the number of cache operations for dav operations
2016-08-27 22:44:29 +02:00
Joas Schilling
89c78bbce4 Merge pull request #1031 from nextcloud/2fa-infinite-redirect-loop
prevent infinite redirect loops if the there is no 2fa provider to pass
2016-08-26 16:03:05 +02:00
Robin Appelman
7c4d9add0d reuse the userfolder's fileinfo when possible during dav setup 2016-08-25 17:22:22 +02:00
Christoph Wurst
6af2efb679
prevent infinite redirect loops if the there is no 2fa provider to pass
This fixes infinite loops that are caused whenever a user is about to solve a 2FA
challenge, but the provider app is disabled at the same time. Since the session
value usually indicates that the challenge needs to be solved before we grant access
we have to remove that value instead in this special case.
2016-08-24 10:49:23 +02:00
Joas Schilling
3fbb5de74f
Better displaynames for shared address books 2016-08-24 08:50:25 +02:00
Joas Schilling
53182fb780
Better displaynames for shared calendars 2016-08-24 08:50:25 +02:00
Thomas Müller
f960aec5bb
Move over to new CalDAVTester repo (#25859)
* Move over to new caldac tester repo

* no run.py anymore
2016-08-19 10:18:59 +02:00
Roeland Jago Douma
64ff8ac6fa
Fix phpdoc in Comments 2016-08-16 20:33:09 +02:00
Joas Schilling
dae6432ae7
Increment the versions and adjust the capitilization 2016-08-08 16:45:40 +02:00
Bernhard Posselt
d7c1bfb4ed fix #724 by using step instead of job 2016-08-04 13:32:03 +02:00
Thomas Müller
6f34c37cfb
Adding quota plugin to new dav endpoint (#25615)
* Adding quota plugin to new dav endpoint

* Added integrated test failing in old endpoint

* Added 0B quota test
2016-07-29 10:03:46 +02:00
Robin Appelman
1fef5d3d06 add dav property to check if a file has a preview available 2016-07-27 12:59:39 +02:00
Joas Schilling
7400ff05ac
Also increase the min version 2016-07-22 14:46:52 +02:00
Robin Appelman
6062b6365b bumb compatible app versions for core apps 2016-07-22 13:04:23 +02:00
Joas Schilling
194c385c7a Merge pull request #517 from nextcloud/fix-typo
Fix typo in docs
2016-07-22 11:41:20 +02:00
Joas Schilling
03cb588ea9 Merge pull request #500 from nextcloud/bump_version
Bump version
2016-07-22 10:03:42 +02:00
Joas Schilling
398d1591ca
Use app name from stable9 2016-07-22 09:55:46 +02:00
Morris Jobke
febf95ffb4 Merge pull request #496 from nextcloud/fix-config-generation
Make the changes from doc fix persistant
2016-07-21 23:37:22 +02:00
Joas Schilling
0215b004da
Update with robin 2016-07-21 18:13:58 +02:00
Joas Schilling
813f0a0f40
Fix apps/ 2016-07-21 18:13:57 +02:00
Joas Schilling
86129a8b88
Increase app versions 2016-07-21 15:50:30 +02:00
Joas Schilling
1902105b5f
Change the app name 2016-07-21 12:57:05 +02:00
Lukas Reschke
c385423d10 Merge pull request #479 from nextcloud/add-bruteforce-throttler
Implement brute force protection
2016-07-21 00:31:02 +02:00
Lukas Reschke
ba4f12baa0
Implement brute force protection
Class Throttler implements the bruteforce protection for security actions in
Nextcloud.

It is working by logging invalid login attempts to the database and slowing
down all login attempts from the same subnet. The max delay is 30 seconds and
the starting delay are 200 milliseconds. (after the first failed login)
2016-07-20 22:08:56 +02:00
Lukas Reschke
a17ba2f488 Merge pull request #466 from nextcloud/escape-special-characters
Escape special characters (#25429)
2016-07-20 21:24:19 +02:00
Roeland Douma
26cf51403e Merge pull request #464 from nextcloud/master-change-load-order
[master] Change load order of auth backends so that we can throw an exception …
2016-07-20 20:08:22 +02:00
Vincent Petry
e5c4f53eea
Cast share id to string (#25402) 2016-07-20 15:10:10 +02:00
Aaron Wood
7c0de08cc4
Escape special characters (#25429)
* Escape LIKE parameter

* Escape LIKE parameter

* Escape LIKE parameter

* Escape LIKE parameter

* Escape LIKE parameter

* Use correct method in the AbstractMapping class

* Change the getNamesBySearch method so that input can be properly escaped while still supporting matches

* Don't escape hardcoded wildcard
2016-07-20 14:46:47 +02:00
Thomas Müller
e795f7b106
Change load order of auth backends so that we can throw an exception in OCA\DAV\Connector\Sabre\Auth - fixes #25362 (#25476) 2016-07-20 14:40:52 +02:00
Morris Jobke
0a6d95b126 Merge pull request #394 from nextcloud/tags-for-everything
SystemTags for everything not just files
2016-07-19 10:47:12 +02:00
Björn Schießle
ea470f8777 Merge pull request #405 from nextcloud/theming-fixes
Theming fixes
2016-07-18 15:59:47 +02:00
Joas Schilling
54708f97a1
Fix non-existing exception class 2016-07-18 10:26:42 +02:00
Joas Schilling
7c039bcbf6
Allow apps to register SystemTags plugins 2016-07-18 10:26:42 +02:00
Joas Schilling
c2b077e185
Fix doc blocks 2016-07-18 10:26:42 +02:00
Joas Schilling
8e13ff2c86
Fix TODO and bring in abstraction (similar to comments) 2016-07-18 10:26:36 +02:00
Morris Jobke
40328114f9 Merge pull request #379 from nextcloud/create_federated_share_on_mount
Create federated share on mount
2016-07-18 09:22:48 +02:00
Morris Jobke
ab6db739fa Merge pull request #407 from nextcloud/dav_phpunit_fixes
Fix PHPUnit 5.4 warnings in DAV app
2016-07-15 11:14:15 +02:00
Roeland Jago Douma
2fcb24166f
Fix PHPUnit 5.4 warnings in DAV app
* getMock is deprecated
2016-07-15 09:52:46 +02:00
Joas Schilling
2c988ecbf4
Use the themed Defaults everywhere 2016-07-15 09:17:30 +02:00
Roeland Jago Douma
059b7435ab
PasswordLoginForbidden is not a FATAL exception
It is just a 'Sabre\DAV\Exception\NotAuthenticated' exception
with some special meaning.

So just log it as DEBUG and not as FATAL.
2016-07-14 22:53:12 +02:00
Bjoern Schiessle
dc53788711
remove unused parameter 2016-07-14 16:39:48 +02:00
Robin Appelman
6da066e7be
Fix test using private propertries 2016-07-08 12:36:25 +02:00
Robin Appelman
f98cb9efa0
Fix type hinting 2016-07-08 12:35:50 +02:00
Robin Appelman
8f84c99e3f
Fix undefined properties 2016-07-08 12:35:16 +02:00
Morris Jobke
ba16fd0d33 Merge branch 'master' into sync-master 2016-07-07 11:29:46 +02:00
Thomas Pulzer
90b7f74da7 Changed name of default logfile from owncloud.log to nextcloud.log. 2016-07-04 11:50:32 +02:00
Thomas Citharel
7d95cde37d Add all properties while creating a subscription (#25318)
Fixes #24469
2016-07-01 13:42:35 +02:00
Lukas Reschke
179a355b2c Merge remote-tracking branch 'upstream/master' into master-sync-upstream 2016-07-01 11:36:35 +02:00
Bjoern Schiessle
26e14529be fix error message 2016-06-30 13:50:31 +02:00
Lukas Reschke
149218ead9 Fix tests 2016-06-30 13:46:08 +02:00
Lukas Reschke
c771368c4e Add proper throws PHP docs 2016-06-30 13:19:50 +02:00
Lukas Reschke
1e7f0f7341 Add required $message parameter 2016-06-30 13:17:53 +02:00
Bjoern Schiessle
3571207bd9 add some additonal permission checks to the webdav backend 2016-06-30 11:16:49 +02:00
Björn Schießle
5ace6b53f3 get only vcards which match both the address book id and the vcard uri (#25294) 2016-06-29 12:13:59 +02:00
Bjoern Schiessle
5f6944954b get only vcard which match both the address book id and the vcard uri 2016-06-28 16:11:06 +02:00
Georg Ehrke
3c399be6ec fix a ImageExportPlugin Test (#25215) 2016-06-27 21:26:56 +02:00
Lukas Reschke
7a9d60d87e
Merge remote-tracking branch 'upstream/master' into master-upstream-sync 2016-06-26 12:55:05 +02:00
Vincent Petry
56ad4cdfec
Show error message when posting an invalid comment
When an internal server error occurs while creating or updating a
comment, display a proper error notification in the UI.
2016-06-24 10:17:12 +02:00
Georg Ehrke
1452b74de7 Contacts API: replace raw image data with url (#25081)
* add uri to AddressBookImpl array

* Introduce ImageExportPlugin for CardDav

* add plugin to v1 routes

* replace binary contact photo with link

* update tests

* Adding unit tests
2016-06-21 15:25:44 +02:00
Lukas Reschke
2b493e2f9d
Merge remote-tracking branch 'upstream/master' into master-sync-upstream 2016-06-21 11:18:22 +02:00
Vincent Petry
2340660a5b
PasswordLoginForbidden must extend NotAuthenticated
The auth code from Sabre will forward NotAuthenticated exceptions but
in the case of a generic exception, it is packaged as "service not
available".
2016-06-17 15:50:24 +02:00
Christoph Wurst
5a8cfab68f
throw PasswordLoginForbidden on DAV 2016-06-17 11:30:24 +02:00
Christoph Wurst
82b50d126c
add PasswordLoginForbiddenException 2016-06-17 11:02:07 +02:00
Thomas Müller
0b7685d326 Move birthday calendar generation to a live migration job (#25135) 2016-06-16 16:14:28 +02:00
Christoph Wurst
465807490d
create session token only for clients that support cookies 2016-06-13 19:44:05 +02:00
Christoph Wurst
331d88bcab
create session token on all APIs 2016-06-13 15:38:34 +02:00
Arthur Schiwon
42c66efea5
Merge branch 'master' of https://github.com/owncloud/core into downstream-160611 2016-06-11 15:34:43 +02:00
Lukas Reschke
842cc2a788 Merge pull request #19 from nextcloud/files-drop
add "hide file list" option
2016-06-10 18:29:09 +02:00
Vincent Petry
57b999fde7 Merge pull request #24990 from owncloud/fix_24868
Wrap publicwebdav in sharePermission mask
2016-06-10 14:33:06 +02:00
Vincent Petry
68c3b23e04 Merge pull request #24080 from owncloud/support-calendar-class-property
Extract CLASS property from calendar object and store it in the database
2016-06-10 11:22:11 +02:00
Vincent Petry
67c3a97401 Merge pull request #25046 from owncloud/fix-the-realm
Use the correct realm for basic authentication
2016-06-10 10:41:46 +02:00
Vincent Petry
543545505d Merge pull request #25043 from owncloud/webdav-download-mimetype
DAV now returns file name with Content-Disposition header
2016-06-10 09:55:59 +02:00
Vincent Petry
1399e87d57
DAV now returns file name with Content-Disposition header
Fixes issue where Chrome would append ".txt" to XML files when
downloaded in the web UI
2016-06-09 15:51:41 +02:00
Bjoern Schiessle
66d853680c
block webdav access if share is not readable 2016-06-09 15:15:17 +02:00
Robin Appelman
9b5fd515ef
Better handling of forbidden files in dav 2016-06-09 14:00:01 +02:00
Thomas Müller
c4b80b86db
Fix checkMove() implementation for dav v2 - fixes #24776 (#24971) 2016-06-09 13:59:59 +02:00
Robin Appelman
16559e4a8a
add test for deleting ghost files over dav 2016-06-09 13:59:58 +02:00
Thomas Müller
cf06b17df1
Use the correct realm for basic authentication - fixes #23427 2016-06-09 13:53:32 +02:00
Thomas Müller
f20c617154
Allow login by email address via webdav as well - fixes #24791 2016-06-09 12:08:49 +02:00
Thomas Müller
bfcd1dc49c
Filter confidential calendar objects in shared calendars
Filter private calendar objects in shared calendars
2016-06-09 11:09:14 +02:00
Thomas Müller
082f456b8b
Added unit testing for the migration step 2016-06-09 11:09:14 +02:00
Thomas Müller
369c3b5d7e
Implement classification migration as repair step 2016-06-09 11:09:14 +02:00
Thomas Müller
287e41732c
Bump dav app version and fix variable rename 2016-06-09 11:09:14 +02:00
Thomas Müller
f013cfc530
Add migration step 2016-06-09 11:09:13 +02:00
Thomas Müller
fbdec59f22
Extract CLASS property from calendar object and store it in the database 2016-06-09 11:09:13 +02:00
Robin Appelman
f119769c26 Better handling of forbidden files in dav 2016-06-07 14:01:55 +02:00
Vincent Petry
bf917d7063 Merge pull request #24813 from owncloud/delete-ghost-files
allow deleting "ghost files" trough the View and Node api
2016-06-07 09:34:16 +02:00
Thomas Müller
371a07e3ab Fix checkMove() implementation for dav v2 - fixes #24776 (#24971) 2016-06-06 17:01:27 +02:00
Roeland Jago Douma
1b5368bbaf
Wrap publicwebdav in sharePermission mask
Fixes #24868

The writable mask was a bit misleading. We should wrap with the
sharepermissions (as they are used everywhere else). The
PERMISSIONS_SHARE are added since that is required for the public link
check plugin.
2016-06-06 14:39:02 +02:00
Robin Appelman
3bd5073251 add test for deleting ghost files over dav 2016-06-03 13:37:52 +02:00
Vincent Petry
3ff2bec5fa Merge pull request #24935 from owncloud/2fa-block-dav
block DAV if 2FA challenge needs to be solved first
2016-06-02 15:31:18 +02:00
Joas Schilling
942e946f06
Catch the ForbiddenException to make sure it gets handled 2016-06-01 16:17:57 +02:00
Christoph Wurst
da03a85c3c
block DAV if 2FA challenge needs to be solved first 2016-06-01 10:42:38 +02:00
Lukas Reschke
aba539703c
Update license headers 2016-05-26 19:57:24 +02:00
Joas Schilling
5882e21b3b
Update DAV unit tests to PSR-4 2016-05-25 16:09:18 +02:00
Joas Schilling
42ba61db04
Fix local execution 2016-05-25 16:09:18 +02:00
Christoph Wurst
28ce7dd262
do not allow client password logins if token auth is enforced or 2FA is enabled 2016-05-24 17:54:02 +02:00
Christoph Wurst
ad10485cec
when generating browser/device token, save the login name for later password checks 2016-05-24 11:49:15 +02:00
Vincent Petry
87fa86a69a Merge pull request #24559 from owncloud/2fa
two factor auth
2016-05-23 20:50:03 +02:00
Vincent Petry
c10d8a37f7 Merge pull request #22690 from owncloud/fix-comments-href-remote.php-files
ensure comments-href returns a value also when propfind is done again…
2016-05-23 14:47:03 +02:00