aboutsummaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2018-05-17 19:57:54 +0200
committerDmitry Vyukov <dvyukov@google.com>2018-05-17 19:57:54 +0200
commit738d58ade0f41fb8ab33066dc0dd486d86383ef5 (patch)
tree1a924306f9af60f1067aa0c9ca0859664d8f3319 /tools
parent3717901c109694be56bb24593db945e4367ecf14 (diff)
pkg/csource: minimize netdevices and net reset
Add separate options to minimize netdevices setup and net namespace reset. Fixes #581
Diffstat (limited to 'tools')
-rw-r--r--tools/syz-execprog/execprog.go3
-rw-r--r--tools/syz-prog2c/prog2c.go34
2 files changed, 19 insertions, 18 deletions
diff --git a/tools/syz-execprog/execprog.go b/tools/syz-execprog/execprog.go
index 40aa521ce..ff7e6d838 100644
--- a/tools/syz-execprog/execprog.go
+++ b/tools/syz-execprog/execprog.go
@@ -226,8 +226,5 @@ func createConfig(entries []*prog.LogEntry) (*ipc.Config, *ipc.ExecOpts) {
handled[call.Meta.CallName] = true
}
}
- if handled["syz_emit_ethernet"] || handled["syz_extract_tcp_res"] {
- config.Flags |= ipc.FlagEnableTun
- }
return config, execOpts
}
diff --git a/tools/syz-prog2c/prog2c.go b/tools/syz-prog2c/prog2c.go
index 9eaf5fefe..b7f13f971 100644
--- a/tools/syz-prog2c/prog2c.go
+++ b/tools/syz-prog2c/prog2c.go
@@ -28,9 +28,11 @@ var (
flagFaultNth = flag.Int("fault_nth", 0, "inject fault on n-th operation (0-based)")
flagEnableTun = flag.Bool("tun", false, "set up TUN/TAP interface")
flagUseTmpDir = flag.Bool("tmpdir", false, "create a temporary dir and execute inside it")
+ flagCgroups = flag.Bool("cgroups", false, "enable cgroups support")
+ flagNetdev = flag.Bool("netdev", false, "setup various net devices")
+ flagResetNet = flag.Bool("resetnet", false, "reset net namespace after each test")
flagHandleSegv = flag.Bool("segv", false, "catch and ignore SIGSEGV")
flagWaitRepeat = flag.Bool("waitrepeat", false, "wait for each repeat attempt")
- flagCgroups = flag.Bool("cgroups", false, "enable cgroups support")
flagDebug = flag.Bool("debug", false, "generate debug printfs")
)
@@ -56,21 +58,23 @@ func main() {
os.Exit(1)
}
opts := csource.Options{
- Threaded: *flagThreaded,
- Collide: *flagCollide,
- Repeat: *flagRepeat,
- Procs: *flagProcs,
- Sandbox: *flagSandbox,
- Fault: *flagFaultCall >= 0,
- FaultCall: *flagFaultCall,
- FaultNth: *flagFaultNth,
- EnableTun: *flagEnableTun,
- UseTmpDir: *flagUseTmpDir,
+ Threaded: *flagThreaded,
+ Collide: *flagCollide,
+ Repeat: *flagRepeat,
+ Procs: *flagProcs,
+ Sandbox: *flagSandbox,
+ Fault: *flagFaultCall >= 0,
+ FaultCall: *flagFaultCall,
+ FaultNth: *flagFaultNth,
+ EnableTun: *flagEnableTun,
+ UseTmpDir: *flagUseTmpDir,
EnableCgroups: *flagCgroups,
- HandleSegv: *flagHandleSegv,
- WaitRepeat: *flagWaitRepeat,
- Debug: *flagDebug,
- Repro: false,
+ EnableNetdev: *flagNetdev,
+ ResetNet: *flagResetNet,
+ HandleSegv: *flagHandleSegv,
+ WaitRepeat: *flagWaitRepeat,
+ Debug: *flagDebug,
+ Repro: false,
}
src, err := csource.Write(p, opts)
if err != nil {