Skip to content

Commit

Permalink
nsexec: Check for errors in write_log()
Browse files Browse the repository at this point in the history
First, check if strdup() fails and error out.

While we are there, the else case was missing brackets, as we only need
to check ret in the else case. Fix that too

Signed-off-by: Rodrigo Campos <[email protected]>
(cherry picked from commit 5ce511d)
  • Loading branch information
rata committed Feb 10, 2023
1 parent 3775df9 commit f6e2cd3
Showing 1 changed file with 8 additions and 6 deletions.
14 changes: 8 additions & 6 deletions libcontainer/nsenter/nsexec.c
Original file line number Diff line number Diff line change
Expand Up @@ -168,15 +168,17 @@ static void write_log(int level, const char *format, ...)

message = escape_json_string(message);

if (current_stage == STAGE_SETUP)
if (current_stage == STAGE_SETUP) {
stage = strdup("nsexec");
else
if (stage == NULL)
goto out;
} else {
ret = asprintf(&stage, "nsexec-%d", current_stage);
if (ret < 0) {
stage = NULL;
goto out;
if (ret < 0) {
stage = NULL;
goto out;
}
}

ret = asprintf(&json, "{\"level\":\"%s\", \"msg\": \"%s[%d]: %s\"}\n",
level_str[level], stage, getpid(), message);
if (ret < 0) {
Expand Down

0 comments on commit f6e2cd3

Please sign in to comment.