diff options
Diffstat (limited to 'framework/src/suricata/qa/coccinelle/sz3.cocci')
-rw-r--r-- | framework/src/suricata/qa/coccinelle/sz3.cocci | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/framework/src/suricata/qa/coccinelle/sz3.cocci b/framework/src/suricata/qa/coccinelle/sz3.cocci new file mode 100644 index 00000000..37a8877b --- /dev/null +++ b/framework/src/suricata/qa/coccinelle/sz3.cocci @@ -0,0 +1,48 @@ +// +// Take size of pointed value, not pointer +// +// Target: Linux, Generic +// Copyright: 2012 - LIP6/INRIA +// License: Licensed under GPLv2 or any later version. +// Author: Julia Lawall <Julia.Lawall@lip6.fr> +// URL: http://coccinelle.lip6.fr/ +// URL: http://coccinellery.org/ +// Modified by Eric Leblond <eric@regit.org> for suricata test system + +@preuse@ +expression *e; +type T; +identifier f; +position p1; +@@ + +f(..., +sizeof(e@p1) +,...,(T)e,...) + +@ script:python @ +p1 << preuse.p1; +@@ + +print "Size of pointed value not pointer used at %s:%s" % (p1[0].file, p1[0].line) +import sys +sys.exit(1) + +@postuse@ +expression *e; +type T; +identifier f; +position p1; +@@ + +f(...,(T)e,..., +sizeof(e@p1) +,...) + +@ script:python @ +p1 << postuse.p1; +@@ + +print "Size of pointed value not pointer used at %s:%s" % (p1[0].file, p1[0].line) +import sys +sys.exit(1) |