Skip to content

Commit 6666881

Browse files
committed
fix(misconf): check if metadata is not nil
Signed-off-by: nikpivkin <[email protected]>
1 parent fe400ea commit 6666881

File tree

2 files changed

+17
-2
lines changed

2 files changed

+17
-2
lines changed

pkg/iac/rego/load.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -197,13 +197,13 @@ func (s *Scanner) findMatchedEmbeddedCheck(badPolicy *ast.Module) *ast.Module {
197197
}
198198

199199
badPolicyMeta, err := MetadataFromAnnotations(badPolicy)
200-
if err != nil {
200+
if err != nil || badPolicyMeta == nil {
201201
return nil
202202
}
203203

204204
for _, embeddedCheck := range s.embeddedChecks {
205205
meta, err := MetadataFromAnnotations(embeddedCheck)
206-
if err != nil {
206+
if err != nil || meta == nil {
207207
continue
208208
}
209209
if badPolicyMeta.AVDID != "" && badPolicyMeta.AVDID == meta.AVDID {

pkg/iac/rego/load_test.go

+15
Original file line numberDiff line numberDiff line change
@@ -253,3 +253,18 @@ deny {
253253
err := scanner.LoadPolicies(fsys)
254254
require.Error(t, err)
255255
}
256+
257+
func TestFallback_CheckWithoutAnnotation(t *testing.T) {
258+
fsys := fstest.MapFS{
259+
"check.rego": &fstest.MapFile{Data: []byte(`package builtin.test
260+
import data.func
261+
deny := func(input)
262+
`)},
263+
}
264+
scanner := rego.NewScanner(
265+
rego.WithPolicyDirs("."),
266+
rego.WithEmbeddedLibraries(false),
267+
)
268+
err := scanner.LoadPolicies(fsys)
269+
require.NoError(t, err)
270+
}

0 commit comments

Comments
 (0)