aboutsummaryrefslogtreecommitdiff
path: root/src/os/root_noopenat.go
diff options
context:
space:
mode:
authorDamien Neil <dneil@google.com>2024-11-12 17:16:10 +0100
committerDamien Neil <dneil@google.com>2024-11-20 23:21:14 +0000
commit49d24d469eb4ecbbf5a77d905ca2bd1da0e18bbd (patch)
tree620dfeb866b8bdc9174da763bd19e9cbd0e53b28 /src/os/root_noopenat.go
parent43d90c6a14e7b3fd1b3b8085b8071a09231c4b62 (diff)
downloadgo-49d24d469eb4ecbbf5a77d905ca2bd1da0e18bbd.tar.xz
os: add Root.Remove
For #67002 Change-Id: Ibbf44c0bf62f53695a7399ba0dae5b84d5efd374 Reviewed-on: https://go-review.googlesource.com/c/go/+/627076 Reviewed-by: Quim Muntal <quimmuntal@gmail.com> Reviewed-by: Ian Lance Taylor <iant@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Diffstat (limited to 'src/os/root_noopenat.go')
-rw-r--r--src/os/root_noopenat.go10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/os/root_noopenat.go b/src/os/root_noopenat.go
index be7f5507eb..d59720a7b7 100644
--- a/src/os/root_noopenat.go
+++ b/src/os/root_noopenat.go
@@ -84,3 +84,13 @@ func rootMkdir(r *Root, name string, perm FileMode) error {
}
return nil
}
+
+func rootRemove(r *Root, name string) error {
+ if err := checkPathEscapesLstat(r, name); err != nil {
+ return &PathError{Op: "removeat", Path: name, Err: err}
+ }
+ if err := Remove(joinPath(r.root.name, name)); err != nil {
+ return &PathError{Op: "removeat", Path: name, Err: underlyingError(err)}
+ }
+ return nil
+}