mirror of
git://git.gnupg.org/gnupg.git
synced 2025-01-03 12:11:33 +01:00
* assuan-buffer.c (assuan_write_line): Make sure we never
accidently print an extra LF.
This commit is contained in:
parent
c65009a2c5
commit
f60b29f2ee
@ -1,3 +1,8 @@
|
|||||||
|
2002-06-26 Werner Koch <wk@gnupg.org>
|
||||||
|
|
||||||
|
* assuan-buffer.c (assuan_write_line): Make sure we never
|
||||||
|
accidently print an extra LF.
|
||||||
|
|
||||||
2002-05-23 Werner Koch <wk@gnupg.org>
|
2002-05-23 Werner Koch <wk@gnupg.org>
|
||||||
|
|
||||||
* assuan-util.c (assuan_set_io_func): New.
|
* assuan-util.c (assuan_set_io_func): New.
|
||||||
|
@ -241,23 +241,31 @@ AssuanError
|
|||||||
assuan_write_line (ASSUAN_CONTEXT ctx, const char *line )
|
assuan_write_line (ASSUAN_CONTEXT ctx, const char *line )
|
||||||
{
|
{
|
||||||
int rc;
|
int rc;
|
||||||
|
size_t len;
|
||||||
|
const char *s;
|
||||||
|
|
||||||
if (!ctx)
|
if (!ctx)
|
||||||
return ASSUAN_Invalid_Value;
|
return ASSUAN_Invalid_Value;
|
||||||
|
|
||||||
/* fixme: we should do some kind of line buffering */
|
/* Make sure that we never take a LF from the user - this might
|
||||||
|
violate the protocol. */
|
||||||
|
s = strchr (line, '\n');
|
||||||
|
len = s? (s-line) : strlen (line);
|
||||||
|
|
||||||
|
/* fixme: we should do some kind of line buffering. */
|
||||||
if (ctx->log_fp)
|
if (ctx->log_fp)
|
||||||
{
|
{
|
||||||
fprintf (ctx->log_fp, "%s[%p] -> ", my_log_prefix (), ctx);
|
fprintf (ctx->log_fp, "%s[%p] -> ", my_log_prefix (), ctx);
|
||||||
|
if (s)
|
||||||
|
fputs ("[supplied line contained a LF]", ctx->log_fp);
|
||||||
if (ctx->confidential)
|
if (ctx->confidential)
|
||||||
fputs ("[Confidential data not shown]", ctx->log_fp);
|
fputs ("[Confidential data not shown]", ctx->log_fp);
|
||||||
else
|
else
|
||||||
_assuan_log_print_buffer (ctx->log_fp,
|
_assuan_log_print_buffer (ctx->log_fp, line, len);
|
||||||
line, strlen (line));
|
|
||||||
putc ('\n', ctx->log_fp);
|
putc ('\n', ctx->log_fp);
|
||||||
}
|
}
|
||||||
|
|
||||||
rc = writen (ctx->outbound.fd, line, strlen(line));
|
rc = writen (ctx->outbound.fd, line, len);
|
||||||
if (rc)
|
if (rc)
|
||||||
rc = ASSUAN_Write_Error;
|
rc = ASSUAN_Write_Error;
|
||||||
if (!rc)
|
if (!rc)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user