feat(aa): add rule constructors from internal parser.

This commit is contained in:
Alexandre Pujol 2024-06-19 23:22:49 +01:00
parent ac9d6d859f
commit 163c5be61c
No known key found for this signature in database
GPG key ID: C5469996F0DF68EC
19 changed files with 456 additions and 75 deletions

View file

@ -14,6 +14,26 @@ type Userns struct {
Create bool
}
func newUserns(q Qualifier, rule rule) (Rule, error) {
var create bool
switch len(rule) {
case 0:
create = true
case 1:
if rule.Get(0) != "create" {
return nil, fmt.Errorf("invalid userns format: %s", rule)
}
create = true
default:
return nil, fmt.Errorf("invalid userns format: %s", rule)
}
return &Userns{
RuleBase: newBase(rule),
Qualifier: q,
Create: create,
}, nil
}
func newUsernsFromLog(log map[string]string) Rule {
return &Userns{
RuleBase: newBaseFromLog(log),