taint-tester.c revision a50b7ab5af79690855af68f1fff7897291ba9535
1// RUN: %clang_cc1  -analyze -analyzer-checker=experimental.security.taint,debug.TaintTest -verify %s
2
3int scanf(const char *restrict format, ...);
4int getchar(void);
5
6#define BUFSIZE 10
7int Buffer[BUFSIZE];
8
9void bufferScanfAssignment(int x) {
10  int n;
11  int *addr = &Buffer[0];
12  scanf("%d", &n);
13  addr += n;// expected-warning {{tainted}}
14  *addr = n; // expected-warning {{tainted}}
15}
16