From cf273a06e2798b39fc69d26c0a35d4bce12fc36d Mon Sep 17 00:00:00 2001 From: Martin Sperl Date: Thu, 2 Oct 2014 09:31:28 +0000 Subject: [PATCH] fixed 0-byte issue in add_to_wbuf changed output format to the version that tobi preferrs --- src/rrd_daemon.c | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/src/rrd_daemon.c b/src/rrd_daemon.c index 8dad4ee1..f5d7761b 100644 --- a/src/rrd_daemon.c +++ b/src/rrd_daemon.c @@ -607,11 +607,13 @@ static int add_to_wbuf(listen_socket_t *sock, char *str, size_t len) /* {{{ */ return -1; } - strncpy(new_buf + sock->wbuf_len, str, len + 1); + memcpy(new_buf + sock->wbuf_len, str, len); sock->wbuf = new_buf; sock->wbuf_len += len; + *(sock->wbuf + sock->wbuf_len)=0; + return 0; } /* }}} static int add_to_wbuf */ @@ -1879,17 +1881,20 @@ static int handle_request_fetchbin (HANDLER_PROTO) /* {{{ */ add_response_info (sock, "End: %lu\n", (unsigned long) parsed.end_tm); add_response_info (sock, "Step: %lu\n", parsed.step); add_response_info (sock, "DSCount: %lu\n", parsed.field_cnt); + add_response_info (sock, + "BinaryByteOrder: " +#ifdef WORDS_BIGENDIAN + "BIG" +#else + "LITTLE" +#endif + "\n"); /* now iterate the parsed fields */ for (i = 0; i < parsed.field_cnt; i++) { add_response_info (sock, - "DSBINDATA%s: %s %i\n", -#ifdef WORDS_BIGENDIAN - "BIG" -#else - "LITTLE", -#endif + "DSBinaryData: %s %i\n", parsed.ds_namv[parsed.field_idx[i]], dbuffer_size ); -- 2.47.3