From d50208f93e83e1285319905cb9daaa0bb74e3719 Mon Sep 17 00:00:00 2001 From: Andrey Konovalov Date: Wed, 5 Jul 2017 14:01:33 +0200 Subject: pkg/csourse: don't generate __NR_X defines for old syscalls --- pkg/csource/csource.go | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'pkg/csource') diff --git a/pkg/csource/csource.go b/pkg/csource/csource.go index 056266726..89b916cb9 100644 --- a/pkg/csource/csource.go +++ b/pkg/csource/csource.go @@ -59,9 +59,13 @@ func Write(p *prog.Prog, opts Options) ([]byte, error) { handled[c.Meta.CallName] = c.Meta.NR } for name, nr := range handled { - fmt.Fprintf(w, "#ifndef __NR_%v\n", name) - fmt.Fprintf(w, "#define __NR_%v %v\n", name, nr) - fmt.Fprintf(w, "#endif\n") + // Only generate defines for new (added after commit 8a1ab3155c2ac on 2012-10-04) native syscalls. + // TODO: the syscall number 313 implies that we're dealing with linux/amd64. + if nr >= 313 && !strings.HasPrefix(name, "syz_") { + fmt.Fprintf(w, "#ifndef __NR_%v\n", name) + fmt.Fprintf(w, "#define __NR_%v %v\n", name, nr) + fmt.Fprintf(w, "#endif\n") + } } fmt.Fprintf(w, "\n") -- cgit mrf-deployment