diff options
Diffstat (limited to 'scripts')
-rw-r--r-- | scripts/test_setenv_leak.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/scripts/test_setenv_leak.c b/scripts/test_setenv_leak.c new file mode 100644 index 000000000..e51722ca7 --- /dev/null +++ b/scripts/test_setenv_leak.c | |||
@@ -0,0 +1,18 @@ | |||
1 | #include <stdio.h> | ||
2 | #include <stdlib.h> | ||
3 | #include <unistd.h> | ||
4 | int main(int argc, char **argv) | ||
5 | { | ||
6 | char buf[256]; | ||
7 | |||
8 | int i = argv[1] ? atoi(argv[1]) : 999999; | ||
9 | while (--i > 0) { | ||
10 | sprintf(buf, "%d", i); | ||
11 | setenv("VAR", buf, 1); | ||
12 | } | ||
13 | printf("Check size of [heap] mapping:\n"); | ||
14 | freopen("/proc/self/maps", "r", stdin); | ||
15 | while (fgets(buf, sizeof(buf), stdin)) | ||
16 | fputs(buf, stdout); | ||
17 | return 0; | ||
18 | } | ||