🔒 Cancel SASL authentication after client-side exceptions
Nobody has claimed this yet.
- Dominant language
- Ruby
- Stars
- 118
- Forks
- 43
- Avg merge
- 1d 23h
- Merged PRs (30d)
- 26
Description
From RFC9051 6.2.2
If the client wishes to cancel an authentication exchange, it issues a line consisting of a single "*". If the server receives such a response, or if it receives an invalid base64 string (e.g., characters outside the base64 alphabet or non-terminal "="), it MUST reject the AUTHENTICATE command by sending a tagged BAD response.
Currently, exceptions should cause the connection to be dropped, but that's too severe a reaction.
When authentication is canceled, the original exception should be the #cause of any resulting BAD exception. This way it will be captured by automated error reporting.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by locating the AUTHENTICATE command handling and compare its cancellation behavior with RFC 9051 section 6.2.2. The work is done when client-side exceptions cancel authentication instead of dropping the connection, and the resulting BAD exception retains the original exception as its #cause.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- ruby
- Domain
- authentication, networking
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 50/100