From 1c202847db0380015a8920bfd21375c2d9f28ddb Mon Sep 17 00:00:00 2001 From: Aleksandr Nogikh Date: Fri, 3 Sep 2021 16:20:07 +0000 Subject: all: refactor fault injection into call props Now that call properties mechanism is implemented, we can refactor fault injection. Unfortunately, it is impossible to remove all traces of the previous apprach. In reprolist and while performing syz-ci jobs, syzkaller still needs to parse the old format. Remove the old prog options-based approach whenever possible and replace it with the use of call properties. --- pkg/csource/csource_test.go | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'pkg/csource/csource_test.go') diff --git a/pkg/csource/csource_test.go b/pkg/csource/csource_test.go index 9e6fd1a59..ebf22d5f9 100644 --- a/pkg/csource/csource_test.go +++ b/pkg/csource/csource_test.go @@ -58,6 +58,10 @@ func testTarget(t *testing.T, target *prog.Target, full bool) { // Testing 2 programs takes too long since we have lots of options permutations and OS/arch. // So we use the as-is in short tests and minimized version in full tests. syzProg := target.GenerateAllSyzProg(rs) + if len(syzProg.Calls) > 0 { + // Test fault injection generation as well. + p.Calls[0].Props.FailNth = 1 + } var opts []Options if !full || testing.Short() { p.Calls = append(p.Calls, syzProg.Calls...) -- cgit mrf-deployment