]> granicus.if.org Git - ejabberd/commitdiff
Merge fix from trunk r1190
authorBadlop <badlop@process-one.net>
Fri, 27 Feb 2009 15:57:35 +0000 (15:57 +0000)
committerBadlop <badlop@process-one.net>
Fri, 27 Feb 2009 15:57:35 +0000 (15:57 +0000)
* src/cyrsasl_digest.erl: Unquote backslash in DIGEST-MD5 quoted
strings (EJAB-304)

SVN Revision: 1927

ChangeLog
src/cyrsasl_digest.erl

index e7a88a343db85d5c2529cfd7b0ba8a05f3acd76b..f2648c46c4da2706fd4a6645661f8eb50a9e8bbc 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
 2009-02-27  Badlop  <badlop@process-one.net>
 
+       * src/cyrsasl_digest.erl: Unquote backslash in DIGEST-MD5 quoted
+       strings (EJAB-304)
+
        * src/tls/tls_drv.c: S2S connection with STARTTLS fails to Gtalk
        and recent Openfire (thanks to Philipp Hancke)(EJAB-877)
 
index 1e40e1437fe289333da26ae25b71e76827c4eaa3..0d27dbb689c0cf566a8a273937432c372ef0e3f9 100644 (file)
@@ -101,15 +101,17 @@ parse1([], [], T) ->
 parse1([], _S, _T) ->
     bad.
 
-parse2([$" | Cs], Key, Val, Ts) ->
+parse2([$\" | Cs], Key, Val, Ts) ->
     parse3(Cs, Key, Val, Ts);
 parse2([C | Cs], Key, Val, Ts) ->
     parse4(Cs, Key, [C | Val], Ts);
 parse2([], _, _, _) ->
     bad.
 
-parse3([$" | Cs], Key, Val, Ts) ->
+parse3([$\" | Cs], Key, Val, Ts) ->
     parse4(Cs, Key, Val, Ts);
+parse3([$\\, C | Cs], Key, Val, Ts) ->
+    parse3(Cs, Key, [C | Val], Ts);
 parse3([C | Cs], Key, Val, Ts) ->
     parse3(Cs, Key, [C | Val], Ts);
 parse3([], _, _, _) ->