From 5d18af00077ae6ba8ef686d1fd93d888f69681b2 Mon Sep 17 00:00:00 2001 From: Ophestra Date: Tue, 7 Oct 2025 21:29:16 +0900 Subject: container/fhs: move pathname constants This allows referencing FHS pathnames without importing container. Signed-off-by: Ophestra --- container/fhs/abs.go | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 container/fhs/abs.go (limited to 'container/fhs/abs.go') diff --git a/container/fhs/abs.go b/container/fhs/abs.go new file mode 100644 index 00000000..af3588ba --- /dev/null +++ b/container/fhs/abs.go @@ -0,0 +1,41 @@ +package fhs + +import ( + _ "unsafe" + + "hakurei.app/container/check" +) + +/* constants in this file bypass abs check, be extremely careful when changing them! */ + +//go:linkname unsafeAbs hakurei.app/container/check.unsafeAbs +func unsafeAbs(_ string) *check.Absolute + +var ( + // AbsRoot is [Root] as [check.Absolute]. + AbsRoot = unsafeAbs(Root) + // AbsEtc is [Etc] as [check.Absolute]. + AbsEtc = unsafeAbs(Etc) + // AbsTmp is [Tmp] as [check.Absolute]. + AbsTmp = unsafeAbs(Tmp) + + // AbsRun is [Run] as [check.Absolute]. + AbsRun = unsafeAbs(Run) + // AbsRunUser is [RunUser] as [check.Absolute]. + AbsRunUser = unsafeAbs(RunUser) + + // AbsUsrBin is [UsrBin] as [check.Absolute]. + AbsUsrBin = unsafeAbs(UsrBin) + + // AbsVar is [Var] as [check.Absolute]. + AbsVar = unsafeAbs(Var) + // AbsVarLib is [VarLib] as [check.Absolute]. + AbsVarLib = unsafeAbs(VarLib) + + // AbsDev is [Dev] as [check.Absolute]. + AbsDev = unsafeAbs(Dev) + // AbsProc is [Proc] as [check.Absolute]. + AbsProc = unsafeAbs(Proc) + // AbsSys is [Sys] as [check.Absolute]. + AbsSys = unsafeAbs(Sys) +) -- cgit v1.3.1