diff options
| author | Anna Zaks <ganna@apple.com> | 2011-12-14 00:55:58 +0000 |
|---|---|---|
| committer | Anna Zaks <ganna@apple.com> | 2011-12-14 00:55:58 +0000 |
| commit | d6bb3227de1af821261b631b63812369f789b675 (patch) | |
| tree | 58ec081358566c43690b0a6d81e1adeba9ab85e1 /clang/test/Analysis/taint-tester.c | |
| parent | 8f92ce6e39086ffed1c3f93187e2e1b64bb7b49f (diff) | |
| download | bcm5719-llvm-d6bb3227de1af821261b631b63812369f789b675.tar.gz bcm5719-llvm-d6bb3227de1af821261b631b63812369f789b675.zip | |
[analyzer] Mark getenv output as tainted.
Also, allow adding taint to a region (not only a symbolic value).
llvm-svn: 146532
Diffstat (limited to 'clang/test/Analysis/taint-tester.c')
| -rw-r--r-- | clang/test/Analysis/taint-tester.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/clang/test/Analysis/taint-tester.c b/clang/test/Analysis/taint-tester.c index da1ff024d10..7e2d7717587 100644 --- a/clang/test/Analysis/taint-tester.c +++ b/clang/test/Analysis/taint-tester.c @@ -70,3 +70,13 @@ void BitwiseOp(int in, char inn) { m = inn; int mm = m; // expected-warning {{tainted}} } + +// Test getenv. +char *getenv(const char *name); +void getenvTest(char *home) { + home = getenv("HOME"); // expected-warning 2 {{tainted}} + if (home != 0) { // expected-warning 2 {{tainted}} + char d = home[0]; // expected-warning 2 {{tainted}} + } +} + |

