-
Notifications
You must be signed in to change notification settings - Fork 2.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Allign WebDAV's <oc:permissions> with ocs permissions on PROPFIND #20426
Comments
Ah permission mess :) If you propfind on the root it will see hey there is a mountpoint Now if you do a propfind directly on So actually this is 2 bugs.
|
From my understanding the sync client only needs the permissions to find out whether or not to attempt a server call. If the permissions are too permissive, it isn't that bad if the sync client needs to make a server call to see it fail afterwards. So it's just a way to save server calls. Correct me if I'm wrong @ckamm 😄 With that assumption, we could make it so that the "PROPFIND /file" returns the same permissions as the sub-result from "PROPFIND /". |
@PVince81 not exactly. The clients wants to mark files that it can't edit as read only. So the uers will get notified on their system that they can't save the file. Right now they can edit the file just fine. Save it. And then the client will tell them there is a problem when uploading. |
@icewind1991 can you comment on this ? Was this behavior originally on purpose ? |
This also means that when we make the web UI use Webdav we might encounter similar issues. |
Looks like this behavior exists since OC 7 already. |
I see some perms manipulation here in |
YES!. When I ran with XDebug yesterday that was the point. Permissions are fine till that point. |
Then we should also add those permissions to the storage root when doing |
@rullzer @icewind1991 Can we fix this soon? Is there a PR ready to review? Can we backport this then afterwards? Thanks |
And keep in mind, that the instance this was noticed is on 7.0.x. Could there also be some fixes in the more recent versions involved? |
I'm not aware of any changes in that part. Note that the fix suggested by @icewind1991 might also influence the display of permissions in the web UI, so might need to properly retest that part. |
As far as I know this has been broken for a long long time. (Also when looking trought he git log). What I think would be "best". Is have the filed return a consitent group of permissions (from the fs point of view). So the permissions should be the same when looking at a file as when looking at the parent folder. Then we add a new field that can indicate if it is read only. Altough I have no idea how we can properly backport a fix here. Since one way or the other we change behaviour pretty drasticly... |
@rullzer how about the quickfix of putting the same permission changing logic in |
Potential fix here to make the permissions more consistent: #20685 |
The original blue issue was solved by an upgrade to 7.0.11 |
Hey, this issue has been closed because the label (This is an automated comment from GitMate.io.) |
See for reference & discussion owncloud/client#6346 (comment) The <oc:permissions>SRDNVW</oc:permissions> ... this is returned in both WebDAV endpoints (old & new). Based on client mappings: This is not consistent with the semantics of "Shared with me; can reshare but nothing else". For everything to be sound with the files backend behavior, the permissions should be: <oc:permissions>SRDV</oc:permissions> ... since Rename and Delete operations are also allowed for this file. And to be aligned with the response of of {
"ocs":{
"meta":{
"status":"ok",
"statuscode":200,
"message":null
},
"data":[
{
"id":"2",
"share_type":0,
"uid_owner":"demo",
"displayname_owner":"demo",
"permissions":17, |
This issue has been automatically closed. |
With 8.2.0:
<A>/file
to<B>/file
with all permissions/file
in PROPFIND of<B>/
and<B>/file
. Both should beSRDNVW
.<B>/file
returnsSRDNV
(correct), but the<B>/file
entry in the directory propfind continues to saySRDNVW
.This has the practical implication that the desktop sync client will not have up to date information about the file permissions and will behave incorrectly. owncloud/client#3244
@DeepDiver1975 @PVince81
The text was updated successfully, but these errors were encountered: