diff options
| author | Dmitry Vyukov <dvyukov@google.com> | 2024-05-15 15:17:16 +0200 |
|---|---|---|
| committer | Dmitry Vyukov <dvyukov@google.com> | 2024-05-17 08:46:55 +0000 |
| commit | 15846cbccf63a4e74cce5b8cf0c1931fdcf81ccd (patch) | |
| tree | cc0f7740f5e2a84cf3c842e30bff93e926a00f6a /pkg/vminfo | |
| parent | df04197b8da247c029f5966369849c8dd8122398 (diff) | |
pkg/ipc: use flatrpc flags
Flatrpc flags are passed in RPC execution requests,
so to avoid conversions and duplicate set of flags
use flatrpc flags in pkg/ipc directly.
Diffstat (limited to 'pkg/vminfo')
| -rw-r--r-- | pkg/vminfo/features.go | 34 | ||||
| -rw-r--r-- | pkg/vminfo/syscalls.go | 4 |
2 files changed, 19 insertions, 19 deletions
diff --git a/pkg/vminfo/features.go b/pkg/vminfo/features.go index 0cfa980ee..3b7bae8d5 100644 --- a/pkg/vminfo/features.go +++ b/pkg/vminfo/features.go @@ -118,24 +118,24 @@ func (ctx *checkContext) finishFeatures(featureInfos []*flatrpc.FeatureInfo) (Fe // featureToFlags creates ipc flags required to test the feature on a simple program. // For features that has setup procedure in the executor, we just execute with the default flags. -func (ctx *checkContext) featureToFlags(feat flatrpc.Feature) (ipc.EnvFlags, ipc.ExecFlags) { +func (ctx *checkContext) featureToFlags(feat flatrpc.Feature) (flatrpc.ExecEnv, flatrpc.ExecFlag) { envFlags := ctx.sandbox // These don't have a corresponding feature and are always enabled. - envFlags |= ipc.FlagEnableCloseFds | ipc.FlagEnableCgroups | ipc.FlagEnableNetReset - execFlags := ipc.FlagThreaded + envFlags |= flatrpc.ExecEnvEnableCloseFds | flatrpc.ExecEnvEnableCgroups | flatrpc.ExecEnvEnableNetReset + execFlags := flatrpc.ExecFlagThreaded switch feat { case flatrpc.FeatureCoverage: - envFlags |= ipc.FlagSignal - execFlags |= ipc.FlagCollectSignal | ipc.FlagCollectCover + envFlags |= flatrpc.ExecEnvSignal + execFlags |= flatrpc.ExecFlagCollectSignal | flatrpc.ExecFlagCollectCover case flatrpc.FeatureComparisons: - envFlags |= ipc.FlagSignal - execFlags |= ipc.FlagCollectComps + envFlags |= flatrpc.ExecEnvSignal + execFlags |= flatrpc.ExecFlagCollectComps case flatrpc.FeatureExtraCoverage: - envFlags |= ipc.FlagSignal | ipc.FlagExtraCover - execFlags |= ipc.FlagCollectSignal | ipc.FlagCollectCover + envFlags |= flatrpc.ExecEnvSignal | flatrpc.ExecEnvExtraCover + execFlags |= flatrpc.ExecFlagCollectSignal | flatrpc.ExecFlagCollectCover case flatrpc.FeatureDelayKcovMmap: - envFlags |= ipc.FlagSignal | ipc.FlagDelayKcovMmap - execFlags |= ipc.FlagCollectSignal | ipc.FlagCollectCover + envFlags |= flatrpc.ExecEnvSignal | flatrpc.ExecEnvDelayKcovMmap + execFlags |= flatrpc.ExecFlagCollectSignal | flatrpc.ExecFlagCollectCover case flatrpc.FeatureSandboxSetuid: // We use setuid sandbox feature to test that the simple program // succeeds under the actual sandbox (not necessary setuid). @@ -145,19 +145,19 @@ func (ctx *checkContext) featureToFlags(feat flatrpc.Feature) (ipc.EnvFlags, ipc case flatrpc.FeatureFault: case flatrpc.FeatureLeak: case flatrpc.FeatureNetInjection: - envFlags |= ipc.FlagEnableTun + envFlags |= flatrpc.ExecEnvEnableTun case flatrpc.FeatureNetDevices: - envFlags |= ipc.FlagEnableNetDev + envFlags |= flatrpc.ExecEnvEnableNetDev case flatrpc.FeatureKCSAN: case flatrpc.FeatureDevlinkPCI: - envFlags |= ipc.FlagEnableDevlinkPCI + envFlags |= flatrpc.ExecEnvEnableDevlinkPCI case flatrpc.FeatureNicVF: - envFlags |= ipc.FlagEnableNicVF + envFlags |= flatrpc.ExecEnvEnableNicVF case flatrpc.FeatureUSBEmulation: case flatrpc.FeatureVhciInjection: - envFlags |= ipc.FlagEnableVhciInjection + envFlags |= flatrpc.ExecEnvEnableVhciInjection case flatrpc.FeatureWifiEmulation: - envFlags |= ipc.FlagEnableWifi + envFlags |= flatrpc.ExecEnvEnableWifi case flatrpc.FeatureLRWPANEmulation: case flatrpc.FeatureBinFmtMisc: case flatrpc.FeatureSwap: diff --git a/pkg/vminfo/syscalls.go b/pkg/vminfo/syscalls.go index 1e9714c9b..f6ab24a04 100644 --- a/pkg/vminfo/syscalls.go +++ b/pkg/vminfo/syscalls.go @@ -33,7 +33,7 @@ type checkContext struct { impl checker cfg *mgrconfig.Config target *prog.Target - sandbox ipc.EnvFlags + sandbox flatrpc.ExecEnv executor queue.Executor fs filesystem // Once checking of a syscall is finished, the result is sent to syscalls. @@ -222,7 +222,7 @@ func (ctx *checkContext) onlySandboxNone() string { } func (ctx *checkContext) onlySandboxNoneOrNamespace() string { - if ctx.sandbox != 0 && ctx.sandbox != ipc.FlagSandboxNamespace { + if ctx.sandbox != 0 && ctx.sandbox != flatrpc.ExecEnvSandboxNamespace { return "only supported under root with sandbox=none/namespace" } return "" |
