-
-
Notifications
You must be signed in to change notification settings - Fork 81
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
[WebDAV] ETag cache is not invalidated by 412 response to GET w/ If-Match #1150
Comments
I think we should drop |
I've managed to reproduce with the steps given. Logs
Request
Response
Clearly, ETags do not match |
4 tasks
I've opened #1155 and it's now working fine. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Problem scope
App version
Android version and device/firmware type
Android 15 (GrapheneOS, Pixel 8a, F-Droid)
Steps to reproduce
mod_dav
.If-Match
ETag on theGET
that DAVx5 sends is no longer current.PROPFIND
on the directory and receving an updated ETag in the 412 response).HEAD
. Reading the file now works.Actual result
ETags seem to be cached from a prior
HEAD
request and not refreshed even when the WebDAV server returns status 412 fromIf-Match
request.Expected result
When the file changes on WebDAV server and the server returns 412 on
GET
, DAVx5 should refresh its ETag cache.Further info
Since the server returns the current ETag with the 412 response to the
GET
, maybe pick that up? Alternatively since DAVx5 is doing aPROPFIND
on the directory anyway, perhaps using thelp1:getetag
property would be an option too?If neither sounds good, re-doing
HEAD
on the target on 412 response seems like a surefire solution.The text was updated successfully, but these errors were encountered: