-
Notifications
You must be signed in to change notification settings - Fork 346
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
litmus locks:20 fix for support negate lock and invalid etag #702
Conversation
Hi Jeremy, I actually believe that this is a bug in the Litmus tool. I posted this message on their mailing list a while back: http://lists.manyfish.co.uk/pipermail/litmus/2015-February/000350.html Can you read that message and tell me if I misunderstood? I never got a response. |
I read your message and I agree except I think in this case we have : but this don't change your analysis except if we consider unlogical parenthesis it's not an usual case and it's seems code/logic (in sabre and litmus) don't change since 2 years... |
Hmm... you are saying that this:
Means:
Instead of:
I need to re-read the specification to see if you're right or not =) |
If this can help you http://www.webdav.org/specs/rfc4918.html#if.header.evaluation.example.no-tag This is little unclear and keep reasonable doubt |
The spec does indeed say:
|
The problem I see with the proposed fix is that I don't think it correctly fixes the issue. We basically now need to accommodate this as well:
Two |
When I try to check webdav compliance to litmus 0.13 (http://www.webdav.org/neon/litmus/)
with PDO mysql locks, the locks check 20 return :
20. fail_complex_cond_put. FAIL (PUT with complex bogus conditional should fail with 412: 204 No Content)
(and test content is updated)
After analysis I understand this is linked to If: header parsing especially with Not token...
My patch propose to add a condition for check this case and validate the test...
I try to find in git history how you can validate this litmus test but it's seems old and not update from long time ago
If you see a mistake on my side, please tell me