From ab4b148b34b55427cf82f4dd67f0773aada301be Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Thu, 6 Dec 2018 18:53:57 +0100 Subject: prog: add Prog.Finalize Prog.Finalize combines assignSizesCall, SanitizeCall and validate. Intended for users who build own programs, so that we don't need to expose all individual methods. --- tools/syz-trace2syz/proggen/proggen.go | 2 -- tools/syz-trace2syz/proggen/proggen_test.go | 2 +- tools/syz-trace2syz/trace2syz.go | 2 +- 3 files changed, 2 insertions(+), 4 deletions(-) (limited to 'tools') diff --git a/tools/syz-trace2syz/proggen/proggen.go b/tools/syz-trace2syz/proggen/proggen.go index 4ba81d5b5..54d614670 100644 --- a/tools/syz-trace2syz/proggen/proggen.go +++ b/tools/syz-trace2syz/proggen/proggen.go @@ -33,7 +33,6 @@ func GenSyzProg(trace *parser.Trace, target *prog.Target, selector *CallSelector if call == nil { continue } - ctx.Target.AssignSizesCall(call) ctx.Prog.Calls = append(ctx.Prog.Calls, call) } return ctx @@ -60,7 +59,6 @@ func genCall(ctx *Context) *prog.Call { syzCall.Args = append(syzCall.Args, res) } genResult(syzCall.Meta.Ret, straceCall.Ret, ctx) - ctx.Target.SanitizeCall(syzCall) return syzCall } diff --git a/tools/syz-trace2syz/proggen/proggen_test.go b/tools/syz-trace2syz/proggen/proggen_test.go index 47a879333..c02ea57f7 100644 --- a/tools/syz-trace2syz/proggen/proggen_test.go +++ b/tools/syz-trace2syz/proggen/proggen_test.go @@ -40,7 +40,7 @@ func parseSingleTrace(t *testing.T, data string) *Context { traceTree = parser.ParseLoop(data) ctx = GenSyzProg(traceTree.TraceMap[traceTree.RootPid], target, selector) ctx.FillOutMemory() - if err := ctx.Prog.Validate(); err != nil { + if err := ctx.Prog.Finalize(); err != nil { t.Fatalf("failed to parse trace: %s", err.Error()) } return ctx diff --git a/tools/syz-trace2syz/trace2syz.go b/tools/syz-trace2syz/trace2syz.go index 745493186..3400004c8 100644 --- a/tools/syz-trace2syz/trace2syz.go +++ b/tools/syz-trace2syz/trace2syz.go @@ -85,7 +85,7 @@ func parseTraces(target *prog.Target) []*prog.Prog { log.Logf(1, "failed to fill out memory: %v, skipping this prog", err) continue } - if err := ctx.Prog.Validate(); err != nil { + if err := ctx.Prog.Finalize(); err != nil { log.Fatalf("error validating program: %s", err) } if progIsTooLarge(ctx.Prog) { -- cgit mrf-deployment