diff options
author | Michael Vetter <jubalh@iodoru.org> | 2022-05-04 11:35:15 +0200 |
---|---|---|
committer | Michael Vetter <jubalh@iodoru.org> | 2022-05-04 11:35:15 +0200 |
commit | e5e661e92d44ac21a4d19ef429091ef8e38203d3 (patch) | |
tree | 7cbbe9d88167cf240e905c7b62600c17e78a9bf4 /src/pgp | |
parent | 281c8b7d8d5fdf7d600811bd3002d26f8ef02576 (diff) | |
download | profani-tty-e5e661e92d44ac21a4d19ef429091ef8e38203d3.tar.gz |
ox: fix mistakes in p_ox_gpg_decrypt()
strcpy() can't work here because the data doesn't have to be NULL-terminated. So let's use memcpy. Fix memleak of plain_str.
Diffstat (limited to 'src/pgp')
-rw-r--r-- | src/pgp/gpg.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/pgp/gpg.c b/src/pgp/gpg.c index a93a8273..7dc57d96 100644 --- a/src/pgp/gpg.c +++ b/src/pgp/gpg.c @@ -1195,11 +1195,13 @@ p_ox_gpg_decrypt(char* base64) return NULL; } } + size_t len; char* plain_str = gpgme_data_release_and_get_mem(plain, &len); char* result = malloc(len + 1); - strcpy(result, plain_str); + memcpy(result, plain_str, len); result[len] = '\0'; + gpgme_free(plain_str); return result; } |