summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNIIBE Yutaka <gniibe@fsij.org>2022-05-25 16:00:10 +0900
committerNIIBE Yutaka <gniibe@fsij.org>2022-05-25 16:00:10 +0900
commit89e8f265e37758c3aaaa7dc580d24d96d37cc8a8 (patch)
treede56324ad8e75a10232613c92ccfc6ed9701a2aa
parentd812e28af637144d078005887cb7519d7a2d0c58 (diff)
downloadlibassuan-89e8f265e37758c3aaaa7dc580d24d96d37cc8a8.tar.gz
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 <gniibe@fsij.org>
-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)