X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fjournal%2Fjournald-console.c;h=5363aaa4ffa1d86e984998f4372c2d08dec6e733;hb=5ffa8c818120e35c89becd938d160235c069dd12;hp=4afa6ef9c3bb410741d79d0a6f4d12bc107de05d;hpb=294929f8916ca37d89ccb1757868d22f8068c56b;p=elogind.git diff --git a/src/journal/journald-console.c b/src/journal/journald-console.c index 4afa6ef9c..5363aaa4f 100644 --- a/src/journal/journald-console.c +++ b/src/journal/journald-console.c @@ -51,9 +51,9 @@ void server_forward_console( const struct ucred *ucred) { struct iovec iovec[5]; - char header_pid[16]; struct timespec ts; - char tbuf[4 + DECIMAL_STR_MAX(ts.tv_sec) + DECIMAL_STR_MAX(ts.tv_nsec)-3 + 1]; + char tbuf[sizeof("[] ")-1 + DECIMAL_STR_MAX(ts.tv_sec) + DECIMAL_STR_MAX(ts.tv_nsec)-3 + 1]; + char header_pid[sizeof("[]: ")-1 + DECIMAL_STR_MAX(pid_t)]; int n = 0, fd; _cleanup_free_ char *ident_buf = NULL; const char *tty; @@ -67,7 +67,7 @@ void server_forward_console( /* First: timestamp */ if (prefix_timestamp()) { assert_se(clock_gettime(CLOCK_MONOTONIC, &ts) == 0); - snprintf(tbuf, sizeof(tbuf), "[%5"PRI_TIME".%06ld] ", + xsprintf(tbuf, "[%5"PRI_TIME".%06ld] ", ts.tv_sec, ts.tv_nsec / 1000); IOVEC_SET_STRING(iovec[n++], tbuf); @@ -80,8 +80,7 @@ void server_forward_console( identifier = ident_buf; } - snprintf(header_pid, sizeof(header_pid), "["PID_FMT"]: ", ucred->pid); - char_array_0(header_pid); + xsprintf(header_pid, "["PID_FMT"]: ", ucred->pid); if (identifier) IOVEC_SET_STRING(iovec[n++], identifier);