aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNIIBE Yutaka <[email protected]>2022-05-25 07:00:10 +0000
committerNIIBE Yutaka <[email protected]>2022-05-25 07:00:10 +0000
commit89e8f265e37758c3aaaa7dc580d24d96d37cc8a8 (patch)
treede56324ad8e75a10232613c92ccfc6ed9701a2aa
parentserver: Wipe out the memory used by assuan_inquire if CONFIDENTIAL. (diff)
downloadlibassuan-89e8f265e37758c3aaaa7dc580d24d96d37cc8a8.tar.gz
libassuan-89e8f265e37758c3aaaa7dc580d24d96d37cc8a8.zip
server,client: Wipe the outbound buffer when CONFIDENTIAL.
* src/assuan-buffer.c (assuan_send_data): Wipe the buffer. -- GnuPG-bug-id: 5977 Signed-off-by: NIIBE Yutaka <[email protected]>
-rw-r--r--src/assuan-buffer.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/assuan-buffer.c b/src/assuan-buffer.c
index be87280..f131a8d 100644
--- a/src/assuan-buffer.c
+++ b/src/assuan-buffer.c
@@ -499,6 +499,8 @@ assuan_send_data (assuan_context_t ctx, const void *buffer, size_t length)
if (!buffer)
{ /* flush what we have */
_assuan_cookie_write_flush (ctx);
+ if (ctx->flags.confidential)
+ wipememory (ctx->outbound.data.line, LINELENGTH);
if (ctx->outbound.data.error)
return ctx->outbound.data.error;
if (!ctx->is_server)