diff options
author | Werner Koch <[email protected]> | 2024-03-12 15:00:55 +0000 |
---|---|---|
committer | Werner Koch <[email protected]> | 2024-03-12 15:00:55 +0000 |
commit | 4485930f9fd9ff02ca5c8472cf6aed3fdb1280cf (patch) | |
tree | 683140a4a33b0f3accf5b1f2455274d251581970 /g10/build-packet.c | |
parent | gpg: Fix a possible segv due to an uninitialized gcrypt context. (diff) | |
parent | Post release updates (diff) | |
download | gnupg-4485930f9fd9ff02ca5c8472cf6aed3fdb1280cf.tar.gz gnupg-4485930f9fd9ff02ca5c8472cf6aed3fdb1280cf.zip |
Merge branch 'STABLE-BRANCH-2-4'
--
Resolved conflicts:
NEWS
common/exechelp-w32.c
configure.ac
Diffstat (limited to 'g10/build-packet.c')
-rw-r--r-- | g10/build-packet.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/g10/build-packet.c b/g10/build-packet.c index 67d4a6eef..19a13760a 100644 --- a/g10/build-packet.c +++ b/g10/build-packet.c @@ -306,7 +306,9 @@ gpg_mpi_write (iobuf_t out, gcry_mpi_t a, unsigned int *r_nwritten) p = gcry_mpi_get_opaque (a, &nbits); if (p) { - /* Strip leading zero bits. */ + /* First get nbits back to full bytes. */ + nbits = ((nbits + 7) / 8) * 8; + /* Then strip leading zero bits. */ for (; nbits >= 8 && !*p; p++, nbits -= 8) ; if (nbits >= 8 && !(*p & 0x80)) |