diff options
| author | Douglas Bagnall <douglas.bagnall@catalyst.net.nz> | 2022-05-13 10:59:24 +1200 |
|---|---|---|
| committer | Andrew Bartlett <abartlet@samba.org> | 2023-08-08 04:39:38 +0000 |
| commit | 5c007600dcdfd60b0ef8f164716573ee644869a1 (patch) | |
| tree | 4c48657ad58b60299995a7c88b6bbfd6ef7af94c /lib | |
| parent | c3ded9d934358260af9251c7c42e903d37a1bdd4 (diff) | |
| download | samba-5c007600dcdfd60b0ef8f164716573ee644869a1.tar.gz samba-5c007600dcdfd60b0ef8f164716573ee644869a1.tar.bz2 samba-5c007600dcdfd60b0ef8f164716573ee644869a1.zip | |
util/base64: add a note about zero length strings
Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/util/base64.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/lib/util/base64.c b/lib/util/base64.c index 842c22ffdb0..7acc83d0eaf 100644 --- a/lib/util/base64.c +++ b/lib/util/base64.c @@ -115,8 +115,16 @@ _PUBLIC_ char *base64_encode_data_blob(TALLOC_CTX *mem_ctx, DATA_BLOB data) size_t out_cnt, len, output_len; char *result; - if (!data.length || !data.data) + /* + * Note: we return NULL for a zero-length blob, even though it can be + * encoded as a zero length string in base64. + * + * FIXME, perhaps, but we need to check carefully before changing + * this. + */ + if (data.length == 0 || data.data == NULL) { return NULL; + } out_cnt = 0; len = data.length; |
