diff options
Diffstat (limited to 'uuencode.c')
-rw-r--r-- | uuencode.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/uuencode.c b/uuencode.c index 314eb92f3..feda6a016 100644 --- a/uuencode.c +++ b/uuencode.c | |||
@@ -57,9 +57,14 @@ uudecode(const char *src, u_char *target, size_t targsize) | |||
57 | void | 57 | void |
58 | dump_base64(FILE *fp, u_char *data, u_int len) | 58 | dump_base64(FILE *fp, u_char *data, u_int len) |
59 | { | 59 | { |
60 | char *buf = xmalloc(2*len); | 60 | char *buf;; |
61 | int i, n; | 61 | int i, n; |
62 | 62 | ||
63 | if (len > 65536) { | ||
64 | fprintf(fp, "dump_base64: len > 65536\n"); | ||
65 | return; | ||
66 | } | ||
67 | buf = xmalloc(2*len); | ||
63 | n = uuencode(data, len, buf, 2*len); | 68 | n = uuencode(data, len, buf, 2*len); |
64 | for (i = 0; i < n; i++) { | 69 | for (i = 0; i < n; i++) { |
65 | fprintf(fp, "%c", buf[i]); | 70 | fprintf(fp, "%c", buf[i]); |