From ee3551db4b08ffd140a91f80318924f43f13bef1 Mon Sep 17 00:00:00 2001 From: Alexey Shchepin Date: Wed, 10 Aug 2005 23:29:16 +0000 Subject: * src/cyrsasl_digest.erl: Fixed challenge/response parsing (thanks to Martin Pokorny) SVN Revision: 405 --- src/cyrsasl_digest.erl | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src') diff --git a/src/cyrsasl_digest.erl b/src/cyrsasl_digest.erl index 7851dfabe..fbd543312 100644 --- a/src/cyrsasl_digest.erl +++ b/src/cyrsasl_digest.erl @@ -77,6 +77,10 @@ parse(S) -> parse1([$= | Cs], S, Ts) -> parse2(Cs, lists:reverse(S), "", Ts); +parse1([$, | Cs], [], Ts) -> + parse1(Cs, [], Ts); +parse1([$\s | Cs], [], Ts) -> + parse1(Cs, [], Ts); parse1([C | Cs], S, Ts) -> parse1(Cs, [C | S], Ts); parse1([], [], T) -> @@ -100,6 +104,8 @@ parse3([], _, _, _) -> parse4([$, | Cs], Key, Val, Ts) -> parse1(Cs, "", [{Key, lists:reverse(Val)} | Ts]); +parse4([$\s | Cs], Key, Val, Ts) -> + parse4(Cs, Key, Val, Ts); parse4([C | Cs], Key, Val, Ts) -> parse4(Cs, Key, [C | Val], Ts); parse4([], Key, Val, Ts) -> -- cgit v1.2.3