Roxen.git/
server/
etc/
modules/
Roxen.pmod
Branch:
Tag:
Non-build tags
All tags
No tags
2016-03-11
2016-03-11 15:08:53 by Martin Karlgren <marty@roxen.com>
9603a5f8ee2e818d162af0dc703f862fa123b47a (
51
lines) (+
39
/-
12
)
[
Show
|
Annotate
]
Branch:
5.5
Add :base64url and :-base64url RXML encoding/decoding.
2938:
}) RXML.run_error("Cannot decode base64 string. Bad data.\n");
+
case "base64url":
+
case "base-64-url":
+
case "b64url":
+
#if constant (MIME.encode_base64url)
+
return MIME.encode_base64url(val);
+
#else
+
return replace (MIME.encode_base64 (val, 1),
+
([ "=": "",
+
"+": "-",
+
"/": "_" ]));
+
#endif
+
case "-base64url":
+
case "-base-64-url":
+
case "-b64url":
+
if( catch {
+
#if constant (MIME.decode_base64url)
+
return MIME.decode_base64url(val);
+
#else
+
string data = replace (val, ([ "-": "+",
+
"_": "/",
+
"=": "" ]));
+
data = (data + ("=" * (4-sizeof (data) % 4))); // Add padding.
+
return MIME.decode_base64 (data);
+
#endif
+
})
+
RXML.run_error("Cannot decode base64 string. Bad data.\n");
case "md5": case "sha1":