From 2ec0e3b650bcce43a8c9d0f47703eceaf947edbe Mon Sep 17 00:00:00 2001 From: Valentin Rothberg Date: Tue, 16 Feb 2021 14:15:21 +0100 Subject: [PATCH] do not set empty $HOME Make sure to not set an empty $HOME for containers and let it default to "/". https://github.com/containers/crun/pull/599 is required to fully address #9378. Partially-Fixes: #9378 Signed-off-by: Valentin Rothberg --- libpod/container_internal_linux.go | 2 +- test/system/030-run.bats | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/libpod/container_internal_linux.go b/libpod/container_internal_linux.go index a3476f42e9..e49c895669 100644 --- a/libpod/container_internal_linux.go +++ b/libpod/container_internal_linux.go @@ -458,7 +458,7 @@ func (c *Container) generateSpec(ctx context.Context) (*spec.Spec, error) { break } } - if !hasHomeSet { + if !hasHomeSet && execUser.Home != "" { c.config.Spec.Process.Env = append(c.config.Spec.Process.Env, fmt.Sprintf("HOME=%s", execUser.Home)) } diff --git a/test/system/030-run.bats b/test/system/030-run.bats index 3749dcac5e..93449ece94 100644 --- a/test/system/030-run.bats +++ b/test/system/030-run.bats @@ -662,4 +662,10 @@ json-file | f run_podman rm $cname } +@test "podman run - do not set empty HOME" { + # Regression test for #9378. + run_podman run --rm --user 100 $IMAGE printenv + is "$output" ".*HOME=/.*" +} + # vim: filetype=sh