aboutsummaryrefslogtreecommitdiffhomepage
path: root/container/autoetc.go
diff options
context:
space:
mode:
Diffstat (limited to 'container/autoetc.go')
-rw-r--r--container/autoetc.go8
1 files changed, 7 insertions, 1 deletions
diff --git a/container/autoetc.go b/container/autoetc.go
index f494d75c..23b1a86c 100644
--- a/container/autoetc.go
+++ b/container/autoetc.go
@@ -4,6 +4,7 @@ import (
"encoding/gob"
"fmt"
"os"
+ "syscall"
)
func init() { gob.Register(new(AutoEtcOp)) }
@@ -21,7 +22,12 @@ func (f *Ops) Etc(host *Absolute, prefix string) *Ops {
type AutoEtcOp struct{ Prefix string }
func (e *AutoEtcOp) early(*setupState) error { return nil }
-func (e *AutoEtcOp) apply(*setupState) error {
+func (e *AutoEtcOp) apply(state *setupState) error {
+ if state.nonrepeatable&nrAutoEtc != 0 {
+ return msg.WrapErr(syscall.EINVAL, "autoetc is not repeatable")
+ }
+ state.nonrepeatable |= nrAutoEtc
+
const target = sysrootPath + FHSEtc
rel := e.hostRel() + "/"