Add Digest AKA to Algorithm Directive from RFC 3110 and RFC 4169
Hi,
I added changes to match the definition for the algorithm directive from RFC 3310:
algorithm = "algorithm" EQUAL ( aka-namespace
/ algorithm-value )
aka-namespace = aka-version "-" algorithm-value
aka-version = "AKAv" 1*DIGIT
algorithm-value = ( "MD5" / "MD5-sess" / token )
~~Since the no Digest AKA is supported right now, I decided to return an error on the handle_digest_challenge method.~~ I added a second commit to add Digest AKA in the handle_digest_challenge method too.
Additional I decided to add some tests to check if the parsing works fine.
AKAv1: https://datatracker.ietf.org/doc/html/rfc3310#section-3.1 AKAv2: https://datatracker.ietf.org/doc/html/rfc4169#section-2
I clean up the code and the commits, this PR is ready to review. @kbalt If you have time, can you please look at it?
For Digest AKA the password used to generate the digest response can contain non-ascii chars. So I change the type of the password to a vector of u8.
...
The resulting AKA RES parameter is treated as a "password" when
calculating the response directive of [RFC 2617](https://datatracker.ietf.org/doc/html/rfc2617).
source: https://datatracker.ietf.org/doc/html/rfc3310#section-3.3
Sorry, I accidentally closed this PR with a force push. Now it should be open again.
Thanks for your effort, I will look into this when I have a bit of time to check everything out!
Any updates on the review process?
Thanks!