]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
lib: Avoid memcpy in debug_lttng_log()
authorVolker Lendecke <vl@samba.org>
Tue, 19 Dec 2023 13:47:24 +0000 (14:47 +0100)
committerVolker Lendecke <vl@samba.org>
Thu, 4 Jan 2024 16:03:36 +0000 (16:03 +0000)
tracef() understands the %.*s format.

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
lib/util/debug.c

index 0dd8e2e954b297ad740136597b5d6554adb5f58e..4c10fde1b8e1430786797f017a0cdda7a376c747 100644 (file)
@@ -402,16 +402,19 @@ static void debug_systemd_log(int msg_level, const char *msg, size_t msg_len)
 static void debug_lttng_log(int msg_level, const char *msg, size_t msg_len)
 {
        if (state.hs_len > 0) {
-               ensure_copy_no_nl(state.header_str_no_nl,
-                                 sizeof(state.header_str_no_nl),
-                                 state.header_str,
-                                 state.hs_len);
-               tracef(state.header_str_no_nl);
+               size_t len = state.hs_len;
+
+               if (state.header_str[len - 1] == '\n') {
+                       len -= 1;
+               }
+
+               tracef("%.*s", (int)len, state.header_str);
        }
-       ensure_copy_no_nl(state.msg_no_nl,
-                         sizeof(state.msg_no_nl),
-                         msg, msg_len);
-       tracef(state.msg_no_nl);
+
+       if ((msg_len > 0) && (msg[msg_len - 1] == '\n')) {
+               msg_len -= 1;
+       }
+       tracef("%.*s", (int)msg_len, msg);
 }
 #endif /* WITH_LTTNG_TRACEF */