From 0f0652a3093111fc7dac0205fdcf8d02bf16e89f Mon Sep 17 00:00:00 2001 From: Peter Stuge Date: Wed, 23 Jun 2010 10:46:01 +0200 Subject: [PATCH] Make libssh2_debug() create a correctly terminated string Also use FILE *stderr rather than fd 2, which can very well be something completely different. --- src/misc.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/misc.c b/src/misc.c index 0662ebaf..404d2181 100644 --- a/src/misc.c +++ b/src/misc.c @@ -47,6 +47,7 @@ #include #endif +#include #include int _libssh2_error(LIBSSH2_SESSION* session, int errcode, const char* errmsg) @@ -412,14 +413,13 @@ _libssh2_debug(LIBSSH2_SESSION * session, int context, const char *format, ...) va_start(vargs, format); len += vsnprintf(buffer + len, 1535 - len, format, vargs); - buffer[len] = '\n'; va_end(vargs); if (session->tracehandler) (session->tracehandler)(session, session->tracehandler_context, buffer, len + 1); else - write(2, buffer, len + 1); + fprintf(stderr, "%s\n", buffer); } #else