diff options
Diffstat (limited to 'clang/test/Analysis/taint-tester.c')
| -rw-r--r-- | clang/test/Analysis/taint-tester.c | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/clang/test/Analysis/taint-tester.c b/clang/test/Analysis/taint-tester.c index 85a59c50ae3..02afe6d4f22 100644 --- a/clang/test/Analysis/taint-tester.c +++ b/clang/test/Analysis/taint-tester.c @@ -155,7 +155,6 @@ void stdinTest3() { // return value, ptr arguments. int atoi(const char *nptr); -// TODO: Add support for atol and atoll. long atol(const char *nptr); long long atoll(const char *nptr); @@ -164,5 +163,17 @@ void atoiTest() { scanf("%s", s); int d = atoi(s); // expected-warning + {{tainted}} int td = d; // expected-warning + {{tainted}} + + // TODO: We shouldn't have to redefine the taint source here. + char sl[80]; + scanf("%s", sl); + long l = atol(sl); // expected-warning + {{tainted}} + int tl = l; // expected-warning + {{tainted}} + + char sll[80]; + scanf("%s", sll); + long long ll = atoll(sll); // expected-warning + {{tainted}} + int tll = ll; // expected-warning + {{tainted}} + } |

