diff options
| author | Paul Buetow <paul@buetow.org> | 2026-03-02 10:54:03 +0200 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2026-03-02 10:54:03 +0200 |
| commit | 88f6ca2fb24973b78afe76f82ea86171e40fccff (patch) | |
| tree | 2ed7a46fd36fb37fc6a5a3b7037a41b75592e81e /internal/cli/cli.go | |
| parent | 1bd6d282d2352870e68654afca3fa4a4ea7195ea (diff) | |
store/cli: deduplicate shred helper (task 400)
Diffstat (limited to 'internal/cli/cli.go')
| -rw-r--r-- | internal/cli/cli.go | 17 |
1 files changed, 1 insertions, 16 deletions
diff --git a/internal/cli/cli.go b/internal/cli/cli.go index 7152496..b6d47fc 100644 --- a/internal/cli/cli.go +++ b/internal/cli/cli.go @@ -565,7 +565,7 @@ func (c *CLI) makeActionFn(ctx context.Context, action store.Action) func(contex } // Shred the exported file immediately after opening — mirrors Ruby's // `shred_file(file: open_exported(...), delay: 0)` call. - return shredFile(ctx, path) + return store.ShredFile(ctx, path) } case store.ActionEdit: @@ -665,21 +665,6 @@ func externalEdit(ctx context.Context, exportDir, editCmd, file string) error { return nil } -// shredFile destroys a single file using shred(1) if available, or rm -Pfv. -// Used after ActionOpen to ensure exported secrets do not linger on disk. -func shredFile(ctx context.Context, path string) error { - if _, err := exec.LookPath("shred"); err == nil { - cmd := exec.CommandContext(ctx, "shred", "-vu", path) - cmd.Stdout = io.Discard - cmd.Stderr = io.Discard - return cmd.Run() - } - cmd := exec.CommandContext(ctx, "rm", "-Pfv", path) - cmd.Stdout = io.Discard - cmd.Stderr = io.Discard - return cmd.Run() -} - // printHelp prints a brief usage summary, mirroring the Ruby CLI#help output. func printHelp() { logMsg(`ls |
