Use base64:mime_decode/1 for SASL packets
It will be now possible to accept SASL packets with only single '=' character set as required by RFC6120
This commit is contained in:
parent
f6236d456d
commit
9d977e484a
|
@ -659,7 +659,7 @@
|
|||
#elem{name = <<"auth">>,
|
||||
xmlns = <<"urn:ietf:params:xml:ns:xmpp-sasl">>,
|
||||
cdata = #cdata{label = '$text',
|
||||
dec = {base64, decode, []},
|
||||
dec = {base64, mime_decode, []},
|
||||
enc = {base64, encode, []}},
|
||||
result = {sasl_auth, '$mechanism', '$text'},
|
||||
attrs = [#attr{name = <<"mechanism">>,
|
||||
|
@ -674,7 +674,7 @@
|
|||
#elem{name = <<"challenge">>,
|
||||
xmlns = <<"urn:ietf:params:xml:ns:xmpp-sasl">>,
|
||||
cdata = #cdata{label = '$text',
|
||||
dec = {base64, decode, []},
|
||||
dec = {base64, mime_decode, []},
|
||||
enc = {base64, encode, []}},
|
||||
result = {sasl_challenge, '$text'}}).
|
||||
|
||||
|
@ -682,7 +682,7 @@
|
|||
#elem{name = <<"response">>,
|
||||
xmlns = <<"urn:ietf:params:xml:ns:xmpp-sasl">>,
|
||||
cdata = #cdata{label = '$text',
|
||||
dec = {base64, decode, []},
|
||||
dec = {base64, mime_decode, []},
|
||||
enc = {base64, encode, []}},
|
||||
result = {sasl_response, '$text'}}).
|
||||
|
||||
|
@ -690,7 +690,7 @@
|
|||
#elem{name = <<"success">>,
|
||||
xmlns = <<"urn:ietf:params:xml:ns:xmpp-sasl">>,
|
||||
cdata = #cdata{label = '$text',
|
||||
dec = {base64, decode, []},
|
||||
dec = {base64, mime_decode, []},
|
||||
enc = {base64, encode, []}},
|
||||
result = {sasl_success, '$text'}}).
|
||||
|
||||
|
@ -3467,6 +3467,7 @@ enc_ip(Addr) ->
|
|||
|
||||
-spec re:split(_, _) -> [binary()].
|
||||
-spec base64:decode(_) -> binary().
|
||||
-spec base64:mime_decode(_) -> binary().
|
||||
|
||||
-spec dec_host_port(_) -> binary() | inet:ip_address() |
|
||||
{binary() | inet:ip_address(), non_neg_integer()}.
|
||||
|
|
|
@ -29298,7 +29298,7 @@ encode_sasl_success({sasl_success, Text}, __TopXMLNS) ->
|
|||
|
||||
decode_sasl_success_cdata(__TopXMLNS, <<>>) -> <<>>;
|
||||
decode_sasl_success_cdata(__TopXMLNS, _val) ->
|
||||
case catch base64:decode(_val) of
|
||||
case catch base64:mime_decode(_val) of
|
||||
{'EXIT', _} ->
|
||||
erlang:error({xmpp_codec,
|
||||
{bad_cdata_value, <<>>, <<"success">>, __TopXMLNS}});
|
||||
|
@ -29338,7 +29338,7 @@ encode_sasl_response({sasl_response, Text},
|
|||
|
||||
decode_sasl_response_cdata(__TopXMLNS, <<>>) -> <<>>;
|
||||
decode_sasl_response_cdata(__TopXMLNS, _val) ->
|
||||
case catch base64:decode(_val) of
|
||||
case catch base64:mime_decode(_val) of
|
||||
{'EXIT', _} ->
|
||||
erlang:error({xmpp_codec,
|
||||
{bad_cdata_value, <<>>, <<"response">>, __TopXMLNS}});
|
||||
|
@ -29378,7 +29378,7 @@ encode_sasl_challenge({sasl_challenge, Text},
|
|||
|
||||
decode_sasl_challenge_cdata(__TopXMLNS, <<>>) -> <<>>;
|
||||
decode_sasl_challenge_cdata(__TopXMLNS, _val) ->
|
||||
case catch base64:decode(_val) of
|
||||
case catch base64:mime_decode(_val) of
|
||||
{'EXIT', _} ->
|
||||
erlang:error({xmpp_codec,
|
||||
{bad_cdata_value, <<>>, <<"challenge">>, __TopXMLNS}});
|
||||
|
@ -29454,7 +29454,7 @@ encode_sasl_auth_attr_mechanism(_val, _acc) ->
|
|||
|
||||
decode_sasl_auth_cdata(__TopXMLNS, <<>>) -> <<>>;
|
||||
decode_sasl_auth_cdata(__TopXMLNS, _val) ->
|
||||
case catch base64:decode(_val) of
|
||||
case catch base64:mime_decode(_val) of
|
||||
{'EXIT', _} ->
|
||||
erlang:error({xmpp_codec,
|
||||
{bad_cdata_value, <<>>, <<"auth">>, __TopXMLNS}});
|
||||
|
|
Loading…
Reference in New Issue