From 2e2b96df4054dac7264a4e970e124ce03f1f9814 Mon Sep 17 00:00:00 2001 From: Aaron Paterson <9441877+MayCXC@users.noreply.github.com> Date: Wed, 9 Oct 2024 01:43:45 -0400 Subject: [PATCH] activation: add FilesWithNames() --- activation/files.go | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 activation/files.go diff --git a/activation/files.go b/activation/files.go new file mode 100644 index 00000000..49c9b57a --- /dev/null +++ b/activation/files.go @@ -0,0 +1,36 @@ +// Copyright 2015 CoreOS, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package activation + +import "os" + +// FilesWithNames maps fd names to a set of os.File pointers. +func FilesWithNames() map[string][]*os.File { + files := Files(true) + filesWithNames := map[string][]*os.File{} + + for _, f := range files { + current, ok := filesWithNames[f.Name()] + + if !ok { + current = []*os.File{} + filesWithNames[f.Name()] = current + } + + filesWithNames[f.Name()] = append(current, f) + } + + return filesWithNames +}