git://git.exim.org
/
exim.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
GnuTLS: Do not care about corked data when uncorking
[exim.git]
/
src
/
src
/
base64.c
diff --git
a/src/src/base64.c
b/src/src/base64.c
index 289383b66ddd02a9fd80e0a7bff109a9d3c3c97b..aa46c2b32d7ae57b853df7bd7fc30b3805f10ad1 100644
(file)
--- a/
src/src/base64.c
+++ b/
src/src/base64.c
@@
-158,7
+158,7
@@
uschar *result;
{
int l = Ustrlen(code);
{
int l = Ustrlen(code);
- *ptr = result = store_get(1 + l/4 * 3 + l%4);
+ *ptr = result = store_get(1 + l/4 * 3 + l%4
, is_tainted(code)
);
}
/* Each cycle of the loop handles a quantum of 4 input bytes. For the last
}
/* Each cycle of the loop handles a quantum of 4 input bytes. For the last
@@
-242,9
+242,9
@@
static uschar *enc64table =
US"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
uschar *
US"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
uschar *
-b64encode
(const uschar * clear, int len
)
+b64encode
_taint(const uschar * clear, int len, BOOL tainted
)
{
{
-uschar *code = store_get(4*((len+2)/3) + 1);
+uschar *code = store_get(4*((len+2)/3) + 1
, tainted
);
uschar *p = code;
while (len-- >0)
uschar *p = code;
while (len-- >0)
@@
-283,6
+283,12
@@
while (len-- >0)
return code;
}
return code;
}
+uschar *
+b64encode(const uschar * clear, int len)
+{
+return b64encode_taint(clear, len, is_tainted(clear));
+}
+
/* End of base64.c */
/* vi: sw ai sw=2
/* End of base64.c */
/* vi: sw ai sw=2