diff options
author | Aditya Rajan <arajan@redhat.com> | 2021-09-07 00:59:18 +0530 |
---|---|---|
committer | Aditya Rajan <arajan@redhat.com> | 2021-09-07 00:59:21 +0530 |
commit | bd6403927866738fdc7cdc1c0c18f2e838065637 (patch) | |
tree | 37b8e8ae9940fd4169914110ced9408fef85a990 /pkg/cgroups/cgroups.go | |
parent | 68481539a4f019229707dcee9e4f4f8465392f06 (diff) | |
download | podman-bd6403927866738fdc7cdc1c0c18f2e838065637.tar.gz podman-bd6403927866738fdc7cdc1c0c18f2e838065637.tar.bz2 podman-bd6403927866738fdc7cdc1c0c18f2e838065637.zip |
cgroup-info: check if user.slice is valid before accessing value
Prevent hitting `panic: runtime error: index out of range [1] with length 1`
while performing `podman info` when unexpected values for user.slice is found.
[NO TESTS NEEDED]
Signed-off-by: Aditya Rajan <arajan@redhat.com>
Diffstat (limited to 'pkg/cgroups/cgroups.go')
-rw-r--r-- | pkg/cgroups/cgroups.go | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/pkg/cgroups/cgroups.go b/pkg/cgroups/cgroups.go index 9cb32a364..4bb8de69b 100644 --- a/pkg/cgroups/cgroups.go +++ b/pkg/cgroups/cgroups.go @@ -231,7 +231,10 @@ func getCgroupPathForCurrentProcess() (string, error) { for s.Scan() { text := s.Text() procEntries := strings.SplitN(text, "::", 2) - cgroupPath = procEntries[1] + // set process cgroupPath only if entry is valid + if len(procEntries) > 1 { + cgroupPath = procEntries[1] + } } if err := s.Err(); err != nil { return cgroupPath, err |