-
Notifications
You must be signed in to change notification settings - Fork 24
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
conflict with webdav access by gvfs #94
Comments
I've rechecked against another old dev instance running nc 15.0.7 + user_cas 1.6.2, and with that broken behaviour of dropping the trailing /, user_cas doesnt interfere in the webdav auth flow:
at that point the gio mount has succeeded (i can see in nextcloud debug log that user_ldap module paged search was triggered to find the authenticated user), but the client still does another subsquent request that also triggers user_cas:
so something changed between user_cas 1.6.2 and 1.8.6 that triggers a new behaviour ? I dont feel like its the singlesignout feature addition, since i can replicate the problem after reverting to 1.8.1.. something changed between nc 18.0.2 & 18.0.10 ? |
Probably a duplicate of #57 |
Fixed in version 1.9. Please review the function and close the ticket afterwards. Thanks! |
i can happily confirm that i've been able to successfully use Many thanks ! |
At first i thought this was a comeback of the webdav problems fixed in #77, but after carefully checking, i came to the conclusion that gio/gvfs (used by gtk linux files browsers, thunar, nautilus, etc..) does something (wrong or not ? i'm not the one to judge, but the code has been this way for ages. There's a ticket in upstream gvfs at https://gitlab.gnome.org/GNOME/gvfs/-/issues/168) to the url sent when connecting to nextcloud webdav:
yes, the user specified the trailing /, but gvfs removes it in https://gitlab.gnome.org/GNOME/gvfs/-/blob/master/daemon/gvfsbackendhttp.c#L110 (really, dont ask me why)
So here's what happens serverside
with cadaver or winscp, the trailing / is sent, and the server correctly behaves:
with tcpdump and phpcas logging enabled, here's what is triggered with gvfs:
and here's the content sent to the webdav client along the 302 location redirecting to cas:
i'm blaming it on user_cas module, because gvfs manages to connect fine to a nextcloud instance without user_cas module... seems some different codepath is taken whether the url has a trailing slash or not ?
so, can we envision doing something specific with a broken gvfs UA ? Strangely, this worked fine with nc 15.0.7 and user_cas 1.6.2, i'm pretty sure i had it working with nc 18.0.2 & user_cas 1.8.1 (when i tested/debugged #77), and now i cant get it to work with nc 18.0.10 & user_cas 1.8.1 or user_cas 1.8.6. Puzzling.
The text was updated successfully, but these errors were encountered: