aboutsummaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2019-12-22 09:55:30 +0100
committerDmitry Vyukov <dvyukov@google.com>2019-12-22 10:15:24 +0100
commit1461be9d82541ed8a2562169fe8719e1cdeeff2b (patch)
tree8c759fbc4cc158403a64cb21aa2e653555841740 /tools
parent9b81e6bdb8d0b4ad4fcaa587fe37408894fdccd4 (diff)
tools/syz-check: add some TODOs
Diffstat (limited to 'tools')
-rw-r--r--tools/syz-check/check.go12
1 files changed, 12 insertions, 0 deletions
diff --git a/tools/syz-check/check.go b/tools/syz-check/check.go
index 6b28d3671..30fe326d9 100644
--- a/tools/syz-check/check.go
+++ b/tools/syz-check/check.go
@@ -176,6 +176,18 @@ func checkStruct(typ *prog.StructDesc, astStruct *ast.Struct, str *dwarf.StructT
}
// TODO: we could also check enums (elements match corresponding flags in syzkaller).
// TODO: we could also check values of literal constants (dwarf should have that, right?).
+ // TODO: handle nested structs/unions, e.g.:
+ // struct foo {
+ // union {
+ // ...
+ // } bar;
+ // };
+ // should be matched with:
+ // foo_bar [
+ // ...
+ // ]
+ // TODO: consider making guesses about semantic types of fields,
+ // e.g. if a name contains filedes/uid/pid/gid that may be the corresponding resource.
ai := 0
offset := uint64(0)
for _, field := range typ.Fields {