def SeccompAction.of_u32

bend-osdev-bpf@0.1.0.0 · seccomp.bend:93

import bend-osdev-bpf@0.1.0.0/seccomp.bend as Seccomp
import Base

93# the action of a SECCOMP_RET_* value: SECCOMP_RET_ACTION_FULL (0xffff0000)
94# selects the action, SECCOMP_RET_DATA (0xffff) the data
95def SeccompAction.of_u32(+v: U32) -> SeccompAction:
96  +act = U32.and(4294901760, v)
97  +d = U32.and(65535, v)
98  SeccompAction.pick(U32.is_eq(act, 2147483648), SeccompKillProcess{},
99    SeccompAction.pick(U32.is_eq(act, 0), SeccompKillThread{},
100    SeccompAction.pick(U32.is_eq(act, 196608), SeccompTrap{d},
101    SeccompAction.pick(U32.is_eq(act, 327680), SeccompErrno{d},
102    SeccompAction.pick(U32.is_eq(act, 2143289344), SeccompUserNotif{},
103    SeccompAction.pick(U32.is_eq(act, 2146435072), SeccompTrace{d},
104    SeccompAction.pick(U32.is_eq(act, 2147221504), SeccompLog{},
105    SeccompAction.pick(U32.is_eq(act, 2147418112), SeccompAllow{},
106    SeccompKillProcess{}))))))))

Uses (5)

Used by (4)