projects
/
silc.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Added SILC Thread Queue API
[silc.git]
/
lib
/
silcutil
/
silcbase64.c
diff --git
a/lib/silcutil/silcbase64.c
b/lib/silcutil/silcbase64.c
index c5c4242e8a1c3d65532541973479054f7f089963..ba9b2c8de95f20f8cf1e6b52c19149ab0473a43b 100644
(file)
--- a/
lib/silcutil/silcbase64.c
+++ b/
lib/silcutil/silcbase64.c
@@
-36,6
+36,8
@@
char *silc_base64_encode(SilcStack stack, unsigned char *data, SilcUInt32 len)
j = 0;
pem = silc_scalloc(stack, ((len * 8 + 5) / 6) + 5, sizeof(*pem));
j = 0;
pem = silc_scalloc(stack, ((len * 8 + 5) / 6) + 5, sizeof(*pem));
+ if (!pem)
+ return NULL;
for (i = 0; i < len; i++) {
c = data[i];
for (i = 0; i < len; i++) {
c = data[i];
@@
-127,6
+129,8
@@
unsigned char *silc_base64_decode(SilcStack stack,
len = base64_len;
data = silc_scalloc(stack, ((len * 6) / 8), sizeof(*data));
len = base64_len;
data = silc_scalloc(stack, ((len * 6) / 8), sizeof(*data));
+ if (!data)
+ return NULL;
for (i = 0; i < len; i++) {
c = base64[i];
for (i = 0; i < len; i++) {
c = base64[i];
@@
-151,9
+155,10
@@
unsigned char *silc_base64_decode(SilcStack stack,
}
}
}
}
- switch(char_count) {
+ switch
(char_count) {
case 1:
silc_sfree(stack, data);
case 1:
silc_sfree(stack, data);
+ silc_set_errno(SILC_ERR_BAD_ENCODING);
return NULL;
break;
case 2:
return NULL;
break;
case 2: