Parse Digest challenge parameter names case-insensitively
Merged
KL
4d ago+18+18+01234567890123456789-1-1-0123456789
Summary
DigestAuth matched challenge parameter names exactly, so Digest Realm="r", Nonce="n" raised ProtocolError, and QOP="auth" or Algorithm=SHA-256 were silently ignored. Whitespace around = also raised. RFC 9110 §11.2 makes auth parameter names case-insensitive and allows whitespace around =.
Checklist
- I understand that this PR may be closed in case there was no previous discussion. (This doesn't apply to typos!)
- I've added a test for each change that was introduced, and I tried as much as possible to make a single atomic change.
- I've updated the documentation accordingly.
AI Disclaimer
This PR was developed with the assistance of either Claude or Codex. I've reviewed and verified the changes.