From 123d7fbfd5a2955dc5042c0a85211e376d5a8e65 Mon Sep 17 00:00:00 2001 From: Ophestra Date: Mon, 13 Oct 2025 18:49:58 +0900 Subject: container/seccomp: remove export pipe This was only useful when wrapping bwrap. Signed-off-by: Ophestra --- container/seccomp/seccomp.go | 60 -------------------------------------------- 1 file changed, 60 deletions(-) delete mode 100644 container/seccomp/seccomp.go (limited to 'container/seccomp/seccomp.go') diff --git a/container/seccomp/seccomp.go b/container/seccomp/seccomp.go deleted file mode 100644 index 664b31c6..00000000 --- a/container/seccomp/seccomp.go +++ /dev/null @@ -1,60 +0,0 @@ -// Package seccomp provides high level wrappers around libseccomp. -package seccomp - -import ( - "os" - "runtime" - "sync" -) - -type exporter struct { - rules []NativeRule - flags ExportFlag - r, w *os.File - - prepareOnce sync.Once - prepareErr error - closeOnce sync.Once - closeErr error - exportErr <-chan error -} - -func (e *exporter) prepare() error { - e.prepareOnce.Do(func() { - if r, w, err := os.Pipe(); err != nil { - e.prepareErr = err - return - } else { - e.r, e.w = r, w - } - - ec := make(chan error, 1) - go func(fd uintptr) { - ec <- Export(int(fd), e.rules, e.flags) - close(ec) - _ = e.closeWrite() - runtime.KeepAlive(e.w) - }(e.w.Fd()) - e.exportErr = ec - runtime.SetFinalizer(e, (*exporter).closeWrite) - }) - return e.prepareErr -} - -func (e *exporter) closeWrite() error { - e.closeOnce.Do(func() { - if e.w == nil { - panic("closeWrite called on invalid exporter") - } - e.closeErr = e.w.Close() - - // no need for a finalizer anymore - runtime.SetFinalizer(e, nil) - }) - - return e.closeErr -} - -func newExporter(rules []NativeRule, flags ExportFlag) *exporter { - return &exporter{rules: rules, flags: flags} -} -- cgit v1.3.1