diff --git a/pkg/aa/profile.go b/pkg/aa/profile.go index 98a41cfd5..68576680c 100644 --- a/pkg/aa/profile.go +++ b/pkg/aa/profile.go @@ -128,6 +128,12 @@ func (p *AppArmorProfile) Sort() { if typeOfI != typeOfJ { valueOfI := typeToValue(typeOfI) valueOfJ := typeToValue(typeOfJ) + if typeOfI == reflect.TypeOf((*Include)(nil)) && p.Rules[i].(*Include).IfExists { + valueOfI = "include_if_exists" + } + if typeOfJ == reflect.TypeOf((*Include)(nil)) && p.Rules[j].(*Include).IfExists { + valueOfJ = "include_if_exists" + } return ruleWeights[valueOfI] < ruleWeights[valueOfJ] } return p.Rules[i].Less(p.Rules[j]) diff --git a/pkg/aa/template.go b/pkg/aa/template.go index 0eb12fe6d..808fe5329 100644 --- a/pkg/aa/template.go +++ b/pkg/aa/template.go @@ -78,7 +78,7 @@ var ( "iouring", "dbus", "file", - "include_local", + "include_if_exists", } ruleWeights = map[string]int{}