-
-
Notifications
You must be signed in to change notification settings - Fork 4.7k
Reflect public shares in isPublic flag and fix permission check
#55147
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
Conversation
4b2d141 to
40e4ac0
Compare
9535adf to
ce8e8bd
Compare
isPublic flag and fix permission check
3eab8d0 to
305ce63
Compare
ffc64f1 to
31143ea
Compare
provokateurin
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, but can you rebase and test everything again, as I fixed some things with chunked upload recently? I just want to avoid a regression with these changes.
Signed-off-by: Salvatore Martire <[email protected]>
The isPublicShare was set to false in one instance where it should have been true. Flipping the value to true, would break the functionality for PROPFIND /public.php/webdav/ which returns properties of files in a share identified by the username being the share token. Signed-off-by: Salvatore Martire <[email protected]>
instanceof cannot be used to check the instance of a storage, doing so breaks the check in certain cases. In this case, enabling the `files_accesscontrol` app breaks the check. Signed-off-by: Salvatore Martire <[email protected]>
Signed-off-by: Salvatore Martire <[email protected]>
31143ea to
631318f
Compare
Tested:
So it seems all is still good 👍 |
|
/backport to stable32 |
|
/backport to stable31 |
/public.php/webdavin feat: add oc-ownerid and oc-permissions headers on PUT DAV requests #54542Summary
Fixes some issues introduced in the PR above, namely:
isPublicSharewasfalsein an instance where it should have been set to true. Flipping it to reflect the publicity of the share would break a compatibility functionality (read more below)files_accesscontrolapp, instead of the functioninstanceOfStoragewhich checks if the instance itself or any wrapped storages (or wrappers) are instance of the passed class.Compatibility Issue
For compatibility reasons the API call
PROPFIND http://nextcloud.local/public.php/webdavshould return the properties of the files in a public share. The share is identified through its ID, sent through the authorization header as username. In the master code, flipping the boolisPublicShareto true would break this functionality by changing the way the DAV tree is set up.Checklist