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 <rodrigoca@microsoft.com>
  • Loading branch information
rata committed Jan 27, 2023
1 parent 0147921 commit 5ce511d
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 5ce511d

Please sign in to comment.