C++: Accept test changes in paths.

This commit is contained in:
Mathias Vorreiter Pedersen
2024-04-16 11:09:22 +01:00
parent 8630630c45
commit fb9fc14f3d
37 changed files with 704 additions and 473 deletions

View File

@@ -21,10 +21,9 @@ edges
| test_free.cpp:282:8:282:8 | *s [post update] [buf] | test_free.cpp:283:12:283:12 | *s [buf] | provenance | |
| test_free.cpp:282:8:282:12 | pointer to free output argument | test_free.cpp:282:8:282:8 | *s [post update] [buf] | provenance | |
| test_free.cpp:283:12:283:12 | *s [buf] | test_free.cpp:283:14:283:16 | buf | provenance | |
| test_free.cpp:293:8:293:10 | pointer to free output argument | test_free.cpp:294:11:294:13 | buf | provenance | |
| test_free.cpp:293:8:293:10 | pointer to free output argument | test_free.cpp:294:3:294:13 | ... = ... | provenance | |
| test_free.cpp:294:3:294:3 | *s [post update] [buf] | test_free.cpp:295:12:295:12 | *s [buf] | provenance | |
| test_free.cpp:294:3:294:13 | ... = ... | test_free.cpp:294:3:294:3 | *s [post update] [buf] | provenance | |
| test_free.cpp:294:11:294:13 | buf | test_free.cpp:294:3:294:13 | ... = ... | provenance | |
| test_free.cpp:295:12:295:12 | *s [buf] | test_free.cpp:295:14:295:16 | buf | provenance | |
nodes
| test_free.cpp:11:10:11:10 | pointer to free output argument | semmle.label | pointer to free output argument |
@@ -65,7 +64,6 @@ nodes
| test_free.cpp:293:8:293:10 | pointer to free output argument | semmle.label | pointer to free output argument |
| test_free.cpp:294:3:294:3 | *s [post update] [buf] | semmle.label | *s [post update] [buf] |
| test_free.cpp:294:3:294:13 | ... = ... | semmle.label | ... = ... |
| test_free.cpp:294:11:294:13 | buf | semmle.label | buf |
| test_free.cpp:295:12:295:12 | *s [buf] | semmle.label | *s [buf] |
| test_free.cpp:295:14:295:16 | buf | semmle.label | buf |
subpaths

View File

@@ -7,27 +7,33 @@ edges
| nested.cpp:34:37:34:39 | *fmt | nested.cpp:35:19:35:21 | *fmt | provenance | |
| nested.cpp:35:19:35:21 | *fmt | nested.cpp:27:32:27:34 | *fmt | provenance | |
| nested.cpp:42:24:42:34 | *call to ext_fmt_str | nested.cpp:34:37:34:39 | *fmt | provenance | |
| nested.cpp:86:19:86:46 | *call to __builtin_alloca | nested.cpp:87:18:87:20 | *fmt | provenance | |
| nested.cpp:86:19:86:46 | *(char *)... | nested.cpp:87:18:87:20 | *fmt | provenance | |
| nested.cpp:86:19:86:46 | *call to __builtin_alloca | nested.cpp:86:19:86:46 | *(char *)... | provenance | |
| test.cpp:46:27:46:30 | **argv | test.cpp:130:20:130:26 | *access to array | provenance | |
| test.cpp:167:31:167:34 | *data | test.cpp:170:12:170:14 | *res | provenance | DataFlowFunction |
| test.cpp:193:32:193:34 | *str | test.cpp:195:31:195:33 | *str | provenance | |
| test.cpp:193:32:193:34 | *str | test.cpp:197:11:197:14 | *wstr | provenance | TaintFunction |
| test.cpp:204:25:204:36 | *call to get_string | test.cpp:205:12:205:20 | *... + ... | provenance | |
| test.cpp:204:25:204:36 | *call to get_string | test.cpp:206:12:206:16 | *hello | provenance | |
| test.cpp:209:25:209:36 | *call to get_string | test.cpp:210:5:210:14 | *... += ... | provenance | |
| test.cpp:204:25:204:36 | *(const char *)... | test.cpp:205:12:205:20 | *... + ... | provenance | |
| test.cpp:204:25:204:36 | *(const char *)... | test.cpp:206:12:206:16 | *hello | provenance | |
| test.cpp:204:25:204:36 | *call to get_string | test.cpp:204:25:204:36 | *(const char *)... | provenance | |
| test.cpp:209:25:209:36 | *(const char *)... | test.cpp:210:5:210:14 | *... += ... | provenance | |
| test.cpp:209:25:209:36 | *call to get_string | test.cpp:209:25:209:36 | *(const char *)... | provenance | |
| test.cpp:210:5:210:14 | *... += ... | test.cpp:211:12:211:16 | *hello | provenance | |
| test.cpp:215:25:215:36 | *call to get_string | test.cpp:216:13:216:21 | *... + ... | provenance | |
| test.cpp:216:13:216:21 | *... + ... | test.cpp:217:12:217:16 | *hello | provenance | |
| test.cpp:221:25:221:36 | *call to get_string | test.cpp:222:5:222:11 | *... ++ | provenance | |
| test.cpp:215:25:215:36 | *(const char *)... | test.cpp:216:5:216:21 | *... = ... | provenance | |
| test.cpp:215:25:215:36 | *call to get_string | test.cpp:215:25:215:36 | *(const char *)... | provenance | |
| test.cpp:216:5:216:21 | *... = ... | test.cpp:217:12:217:16 | *hello | provenance | |
| test.cpp:221:25:221:36 | *(const char *)... | test.cpp:222:5:222:11 | *... ++ | provenance | |
| test.cpp:221:25:221:36 | *call to get_string | test.cpp:221:25:221:36 | *(const char *)... | provenance | |
| test.cpp:222:5:222:11 | *... ++ | test.cpp:223:12:223:16 | *hello | provenance | |
| test.cpp:227:25:227:36 | *call to get_string | test.cpp:228:12:228:18 | *++ ... | provenance | |
| test.cpp:227:25:227:36 | *(const char *)... | test.cpp:228:12:228:18 | *++ ... | provenance | |
| test.cpp:227:25:227:36 | *call to get_string | test.cpp:227:25:227:36 | *(const char *)... | provenance | |
| test.cpp:228:12:228:18 | *++ ... | test.cpp:228:12:228:18 | *++ ... | provenance | |
| test.cpp:232:25:232:36 | *call to get_string | test.cpp:233:22:233:27 | **& ... | provenance | |
| test.cpp:233:22:233:27 | **& ... | test.cpp:235:12:235:16 | *hello | provenance | |
| test.cpp:239:25:239:36 | *call to get_string | test.cpp:240:22:240:26 | **(reference to) | provenance | |
| test.cpp:240:22:240:26 | **(reference to) | test.cpp:242:12:242:16 | *hello | provenance | |
| test.cpp:245:25:245:36 | *call to get_string | test.cpp:246:28:246:33 | **(const char *const *)... | provenance | |
| test.cpp:246:28:246:33 | **(const char *const *)... | test.cpp:247:12:247:16 | *hello | provenance | |
| test.cpp:232:25:232:36 | *(const char *)... | test.cpp:235:12:235:16 | *hello | provenance | |
| test.cpp:232:25:232:36 | *call to get_string | test.cpp:232:25:232:36 | *(const char *)... | provenance | |
| test.cpp:239:25:239:36 | *(const char *)... | test.cpp:242:12:242:16 | *hello | provenance | |
| test.cpp:239:25:239:36 | *call to get_string | test.cpp:239:25:239:36 | *(const char *)... | provenance | |
| test.cpp:245:25:245:36 | *(const char *)... | test.cpp:247:12:247:16 | *hello | provenance | |
| test.cpp:245:25:245:36 | *call to get_string | test.cpp:245:25:245:36 | *(const char *)... | provenance | |
nodes
| NonConstantFormat.c:28:27:28:30 | **argv | semmle.label | **argv |
| NonConstantFormat.c:30:10:30:16 | *access to array | semmle.label | *access to array |
@@ -42,6 +48,7 @@ nodes
| nested.cpp:35:19:35:21 | *fmt | semmle.label | *fmt |
| nested.cpp:42:24:42:34 | *call to ext_fmt_str | semmle.label | *call to ext_fmt_str |
| nested.cpp:79:32:79:38 | *call to get_fmt | semmle.label | *call to get_fmt |
| nested.cpp:86:19:86:46 | *(char *)... | semmle.label | *(char *)... |
| nested.cpp:86:19:86:46 | *call to __builtin_alloca | semmle.label | *call to __builtin_alloca |
| nested.cpp:87:18:87:20 | *fmt | semmle.label | *fmt |
| test.cpp:46:27:46:30 | **argv | semmle.label | **argv |
@@ -51,29 +58,34 @@ nodes
| test.cpp:193:32:193:34 | *str | semmle.label | *str |
| test.cpp:195:31:195:33 | *str | semmle.label | *str |
| test.cpp:197:11:197:14 | *wstr | semmle.label | *wstr |
| test.cpp:204:25:204:36 | *(const char *)... | semmle.label | *(const char *)... |
| test.cpp:204:25:204:36 | *call to get_string | semmle.label | *call to get_string |
| test.cpp:205:12:205:20 | *... + ... | semmle.label | *... + ... |
| test.cpp:206:12:206:16 | *hello | semmle.label | *hello |
| test.cpp:209:25:209:36 | *(const char *)... | semmle.label | *(const char *)... |
| test.cpp:209:25:209:36 | *call to get_string | semmle.label | *call to get_string |
| test.cpp:210:5:210:14 | *... += ... | semmle.label | *... += ... |
| test.cpp:211:12:211:16 | *hello | semmle.label | *hello |
| test.cpp:215:25:215:36 | *(const char *)... | semmle.label | *(const char *)... |
| test.cpp:215:25:215:36 | *call to get_string | semmle.label | *call to get_string |
| test.cpp:216:13:216:21 | *... + ... | semmle.label | *... + ... |
| test.cpp:216:5:216:21 | *... = ... | semmle.label | *... = ... |
| test.cpp:217:12:217:16 | *hello | semmle.label | *hello |
| test.cpp:221:25:221:36 | *(const char *)... | semmle.label | *(const char *)... |
| test.cpp:221:25:221:36 | *call to get_string | semmle.label | *call to get_string |
| test.cpp:222:5:222:11 | *... ++ | semmle.label | *... ++ |
| test.cpp:223:12:223:16 | *hello | semmle.label | *hello |
| test.cpp:227:25:227:36 | *(const char *)... | semmle.label | *(const char *)... |
| test.cpp:227:25:227:36 | *call to get_string | semmle.label | *call to get_string |
| test.cpp:228:12:228:18 | *++ ... | semmle.label | *++ ... |
| test.cpp:228:12:228:18 | *++ ... | semmle.label | *++ ... |
| test.cpp:232:25:232:36 | *(const char *)... | semmle.label | *(const char *)... |
| test.cpp:232:25:232:36 | *call to get_string | semmle.label | *call to get_string |
| test.cpp:233:22:233:27 | **& ... | semmle.label | **& ... |
| test.cpp:235:12:235:16 | *hello | semmle.label | *hello |
| test.cpp:239:25:239:36 | *(const char *)... | semmle.label | *(const char *)... |
| test.cpp:239:25:239:36 | *call to get_string | semmle.label | *call to get_string |
| test.cpp:240:22:240:26 | **(reference to) | semmle.label | **(reference to) |
| test.cpp:242:12:242:16 | *hello | semmle.label | *hello |
| test.cpp:245:25:245:36 | *(const char *)... | semmle.label | *(const char *)... |
| test.cpp:245:25:245:36 | *call to get_string | semmle.label | *call to get_string |
| test.cpp:246:28:246:33 | **(const char *const *)... | semmle.label | **(const char *const *)... |
| test.cpp:247:12:247:16 | *hello | semmle.label | *hello |
subpaths
#select

View File

@@ -1,16 +1,20 @@
edges
| tests.cpp:26:15:26:23 | **badSource | tests.cpp:51:12:51:20 | *call to badSource | provenance | |
| tests.cpp:33:34:33:39 | *call to getenv | tests.cpp:33:34:33:39 | *call to getenv | provenance | |
| tests.cpp:33:34:33:39 | *call to getenv | tests.cpp:38:39:38:49 | *environment | provenance | |
| tests.cpp:38:25:38:36 | strncat output argument | tests.cpp:42:12:42:15 | *data | provenance | |
| tests.cpp:38:39:38:49 | *environment | tests.cpp:38:25:38:36 | strncat output argument | provenance | |
| tests.cpp:42:12:42:15 | *data | tests.cpp:26:15:26:23 | **badSource | provenance | |
| tests.cpp:51:12:51:20 | *call to badSource | tests.cpp:53:16:53:19 | *data | provenance | |
| tests.cpp:51:5:51:26 | *... = ... | tests.cpp:53:16:53:19 | *data | provenance | |
| tests.cpp:51:12:51:20 | *call to badSource | tests.cpp:51:5:51:26 | *... = ... | provenance | |
nodes
| tests.cpp:26:15:26:23 | **badSource | semmle.label | **badSource |
| tests.cpp:33:34:33:39 | *call to getenv | semmle.label | *call to getenv |
| tests.cpp:33:34:33:39 | *call to getenv | semmle.label | *call to getenv |
| tests.cpp:38:25:38:36 | strncat output argument | semmle.label | strncat output argument |
| tests.cpp:38:39:38:49 | *environment | semmle.label | *environment |
| tests.cpp:42:12:42:15 | *data | semmle.label | *data |
| tests.cpp:51:5:51:26 | *... = ... | semmle.label | *... = ... |
| tests.cpp:51:12:51:20 | *call to badSource | semmle.label | *call to badSource |
| tests.cpp:53:16:53:19 | *data | semmle.label | *data |
subpaths

View File

@@ -3,6 +3,7 @@ edges
| test.cpp:16:20:16:26 | *access to array | test.cpp:22:45:22:52 | *userName | provenance | |
| test.cpp:22:13:22:20 | sprintf output argument | test.cpp:23:12:23:19 | *command1 | provenance | |
| test.cpp:22:45:22:52 | *userName | test.cpp:22:13:22:20 | sprintf output argument | provenance | |
| test.cpp:47:21:47:26 | *call to getenv | test.cpp:47:21:47:26 | *call to getenv | provenance | |
| test.cpp:47:21:47:26 | *call to getenv | test.cpp:50:35:50:43 | *envCflags | provenance | |
| test.cpp:50:11:50:17 | sprintf output argument | test.cpp:51:10:51:16 | *command | provenance | |
| test.cpp:50:35:50:43 | *envCflags | test.cpp:50:11:50:17 | sprintf output argument | provenance | |
@@ -16,6 +17,7 @@ edges
| test.cpp:93:11:93:14 | strncat output argument | test.cpp:94:45:94:48 | *path | provenance | |
| test.cpp:93:17:93:24 | *filename | test.cpp:93:11:93:14 | strncat output argument | provenance | |
| test.cpp:106:20:106:38 | *call to getenv | test.cpp:107:33:107:36 | *path | provenance | TaintFunction |
| test.cpp:107:31:107:31 | call to operator+ | test.cpp:107:31:107:31 | call to operator+ | provenance | |
| test.cpp:107:31:107:31 | call to operator+ | test.cpp:108:18:108:22 | *call to c_str | provenance | TaintFunction |
| test.cpp:107:33:107:36 | *path | test.cpp:107:31:107:31 | call to operator+ | provenance | |
| test.cpp:113:20:113:38 | *call to getenv | test.cpp:114:19:114:22 | *path | provenance | TaintFunction |
@@ -72,6 +74,7 @@ nodes
| test.cpp:22:45:22:52 | *userName | semmle.label | *userName |
| test.cpp:23:12:23:19 | *command1 | semmle.label | *command1 |
| test.cpp:47:21:47:26 | *call to getenv | semmle.label | *call to getenv |
| test.cpp:47:21:47:26 | *call to getenv | semmle.label | *call to getenv |
| test.cpp:50:11:50:17 | sprintf output argument | semmle.label | sprintf output argument |
| test.cpp:50:35:50:43 | *envCflags | semmle.label | *envCflags |
| test.cpp:51:10:51:16 | *command | semmle.label | *command |
@@ -89,6 +92,7 @@ nodes
| test.cpp:94:45:94:48 | *path | semmle.label | *path |
| test.cpp:106:20:106:38 | *call to getenv | semmle.label | *call to getenv |
| test.cpp:107:31:107:31 | call to operator+ | semmle.label | call to operator+ |
| test.cpp:107:31:107:31 | call to operator+ | semmle.label | call to operator+ |
| test.cpp:107:33:107:36 | *path | semmle.label | *path |
| test.cpp:108:18:108:22 | *call to c_str | semmle.label | *call to c_str |
| test.cpp:113:20:113:38 | *call to getenv | semmle.label | *call to getenv |

View File

@@ -2,6 +2,7 @@ edges
| search.c:14:24:14:28 | *query | search.c:17:8:17:12 | *query | provenance | |
| search.c:22:24:22:28 | *query | search.c:23:39:23:43 | *query | provenance | |
| search.c:55:24:55:28 | *query | search.c:62:8:62:17 | *query_text | provenance | TaintFunction |
| search.c:67:21:67:26 | *call to getenv | search.c:67:21:67:26 | *call to getenv | provenance | |
| search.c:67:21:67:26 | *call to getenv | search.c:71:17:71:25 | *raw_query | provenance | |
| search.c:67:21:67:26 | *call to getenv | search.c:73:17:73:25 | *raw_query | provenance | |
| search.c:67:21:67:26 | *call to getenv | search.c:77:17:77:25 | *raw_query | provenance | |
@@ -16,6 +17,7 @@ nodes
| search.c:55:24:55:28 | *query | semmle.label | *query |
| search.c:62:8:62:17 | *query_text | semmle.label | *query_text |
| search.c:67:21:67:26 | *call to getenv | semmle.label | *call to getenv |
| search.c:67:21:67:26 | *call to getenv | semmle.label | *call to getenv |
| search.c:71:17:71:25 | *raw_query | semmle.label | *raw_query |
| search.c:73:17:73:25 | *raw_query | semmle.label | *raw_query |
| search.c:77:17:77:25 | *raw_query | semmle.label | *raw_query |

View File

@@ -4,8 +4,8 @@ edges
| test.c:15:20:15:26 | *access to array | test.c:35:16:35:23 | *userName | provenance | |
| test.c:35:16:35:23 | *userName | test.c:40:25:40:32 | *username | provenance | |
| test.c:38:7:38:20 | **globalUsername | test.c:48:20:48:33 | *globalUsername | provenance | |
| test.c:40:25:40:32 | *username | test.c:41:20:41:27 | *username | provenance | |
| test.c:41:20:41:27 | *username | test.c:38:7:38:20 | **globalUsername | provenance | |
| test.c:40:25:40:32 | *username | test.c:41:3:41:27 | *... = ... | provenance | |
| test.c:41:3:41:27 | *... = ... | test.c:38:7:38:20 | **globalUsername | provenance | |
| test.c:48:20:48:33 | *globalUsername | test.c:51:18:51:23 | *query1 | provenance | TaintFunction |
| test.c:75:8:75:16 | gets output argument | test.c:76:17:76:25 | *userInput | provenance | |
| test.c:75:8:75:16 | gets output argument | test.c:77:20:77:28 | *userInput | provenance | |
@@ -17,7 +17,7 @@ nodes
| test.c:35:16:35:23 | *userName | semmle.label | *userName |
| test.c:38:7:38:20 | **globalUsername | semmle.label | **globalUsername |
| test.c:40:25:40:32 | *username | semmle.label | *username |
| test.c:41:20:41:27 | *username | semmle.label | *username |
| test.c:41:3:41:27 | *... = ... | semmle.label | *... = ... |
| test.c:48:20:48:33 | *globalUsername | semmle.label | *globalUsername |
| test.c:51:18:51:23 | *query1 | semmle.label | *query1 |
| test.c:75:8:75:16 | gets output argument | semmle.label | gets output argument |

View File

@@ -1,11 +1,13 @@
edges
| test.cpp:37:73:37:76 | *data | test.cpp:43:32:43:35 | *data | provenance | |
| test.cpp:64:30:64:35 | *call to getenv | test.cpp:64:30:64:35 | *call to getenv | provenance | |
| test.cpp:64:30:64:35 | *call to getenv | test.cpp:73:24:73:27 | *data | provenance | TaintFunction |
| test.cpp:73:24:73:27 | *data | test.cpp:37:73:37:76 | *data | provenance | |
nodes
| test.cpp:37:73:37:76 | *data | semmle.label | *data |
| test.cpp:43:32:43:35 | *data | semmle.label | *data |
| test.cpp:64:30:64:35 | *call to getenv | semmle.label | *call to getenv |
| test.cpp:64:30:64:35 | *call to getenv | semmle.label | *call to getenv |
| test.cpp:73:24:73:27 | *data | semmle.label | *data |
subpaths
#select

View File

@@ -3,17 +3,18 @@ edges
| test.cpp:29:30:29:36 | *command | test.cpp:31:10:31:16 | *command | provenance | |
| test.cpp:42:18:42:34 | *call to getenv | test.cpp:24:30:24:36 | *command | provenance | |
| test.cpp:43:18:43:34 | *call to getenv | test.cpp:29:30:29:36 | *command | provenance | |
| test.cpp:56:12:56:17 | fgets output argument | test.cpp:58:16:58:21 | *buffer | provenance | |
| test.cpp:58:16:58:21 | *buffer | test.cpp:59:20:59:23 | **(reference to) | provenance | |
| test.cpp:58:16:58:21 | *buffer | test.cpp:62:10:62:15 | *buffer | provenance | |
| test.cpp:59:20:59:23 | **(reference to) | test.cpp:60:17:60:23 | *dataref | provenance | |
| test.cpp:59:20:59:23 | **(reference to) | test.cpp:63:10:63:13 | *data | provenance | |
| test.cpp:60:17:60:23 | *dataref | test.cpp:64:10:64:16 | *dataref | provenance | |
| test.cpp:60:17:60:23 | *dataref | test.cpp:65:10:65:14 | *data2 | provenance | |
| test.cpp:56:12:56:17 | fgets output argument | test.cpp:58:16:58:21 | *array to pointer conversion | provenance | |
| test.cpp:56:12:56:17 | fgets output argument | test.cpp:62:10:62:15 | *buffer | provenance | |
| test.cpp:58:16:58:21 | *array to pointer conversion | test.cpp:59:20:59:23 | **(reference to) | provenance | |
| test.cpp:58:16:58:21 | *array to pointer conversion | test.cpp:63:10:63:13 | *data | provenance | |
| test.cpp:59:20:59:23 | **(reference to) | test.cpp:60:17:60:23 | *(reference dereference) | provenance | |
| test.cpp:59:20:59:23 | **(reference to) | test.cpp:64:10:64:16 | *dataref | provenance | |
| test.cpp:60:17:60:23 | *(reference dereference) | test.cpp:65:10:65:14 | *data2 | provenance | |
| test.cpp:76:12:76:17 | fgets output argument | test.cpp:78:10:78:15 | *buffer | provenance | |
| test.cpp:98:17:98:22 | recv output argument | test.cpp:99:15:99:20 | *buffer | provenance | |
| test.cpp:106:17:106:22 | recv output argument | test.cpp:107:15:107:20 | *buffer | provenance | |
| test.cpp:113:8:113:12 | *call to fgets | test.cpp:114:9:114:11 | *ptr | provenance | |
| test.cpp:113:2:113:44 | *... = ... | test.cpp:114:9:114:11 | *ptr | provenance | |
| test.cpp:113:8:113:12 | *call to fgets | test.cpp:113:2:113:44 | *... = ... | provenance | |
nodes
| test.cpp:24:30:24:36 | *command | semmle.label | *command |
| test.cpp:26:10:26:16 | *command | semmle.label | *command |
@@ -22,9 +23,9 @@ nodes
| test.cpp:42:18:42:34 | *call to getenv | semmle.label | *call to getenv |
| test.cpp:43:18:43:34 | *call to getenv | semmle.label | *call to getenv |
| test.cpp:56:12:56:17 | fgets output argument | semmle.label | fgets output argument |
| test.cpp:58:16:58:21 | *buffer | semmle.label | *buffer |
| test.cpp:58:16:58:21 | *array to pointer conversion | semmle.label | *array to pointer conversion |
| test.cpp:59:20:59:23 | **(reference to) | semmle.label | **(reference to) |
| test.cpp:60:17:60:23 | *dataref | semmle.label | *dataref |
| test.cpp:60:17:60:23 | *(reference dereference) | semmle.label | *(reference dereference) |
| test.cpp:62:10:62:15 | *buffer | semmle.label | *buffer |
| test.cpp:63:10:63:13 | *data | semmle.label | *data |
| test.cpp:64:10:64:16 | *dataref | semmle.label | *dataref |
@@ -35,6 +36,7 @@ nodes
| test.cpp:99:15:99:20 | *buffer | semmle.label | *buffer |
| test.cpp:106:17:106:22 | recv output argument | semmle.label | recv output argument |
| test.cpp:107:15:107:20 | *buffer | semmle.label | *buffer |
| test.cpp:113:2:113:44 | *... = ... | semmle.label | *... = ... |
| test.cpp:113:8:113:12 | *call to fgets | semmle.label | *call to fgets |
| test.cpp:114:9:114:11 | *ptr | semmle.label | *ptr |
subpaths

View File

@@ -3,9 +3,9 @@ edges
| test.cpp:18:5:18:7 | *str [post update] [string] | test.cpp:19:5:19:7 | *str [string] | provenance | |
| test.cpp:18:5:18:30 | ... = ... | test.cpp:18:5:18:7 | *str [post update] [string] | provenance | |
| test.cpp:18:19:18:24 | call to malloc | test.cpp:18:5:18:30 | ... = ... | provenance | |
| test.cpp:18:19:18:24 | call to malloc | test.cpp:18:19:18:24 | call to malloc | provenance | |
| test.cpp:19:5:19:7 | *str [string] | test.cpp:20:12:20:14 | *str [string] | provenance | |
| test.cpp:20:12:20:14 | *str [string] | test.cpp:16:11:16:21 | **mk_string_t [string] | provenance | |
| test.cpp:39:21:39:31 | *call to mk_string_t [string] | test.cpp:39:21:39:31 | *call to mk_string_t [string] | provenance | |
| test.cpp:39:21:39:31 | *call to mk_string_t [string] | test.cpp:42:13:42:15 | *str [string] | provenance | |
| test.cpp:39:21:39:31 | *call to mk_string_t [string] | test.cpp:72:17:72:19 | *str [string] | provenance | |
| test.cpp:39:21:39:31 | *call to mk_string_t [string] | test.cpp:80:17:80:19 | *str [string] | provenance | |
@@ -16,9 +16,9 @@ edges
| test.cpp:90:5:90:7 | *str [post update] [string] | test.cpp:91:5:91:7 | *str [string] | provenance | |
| test.cpp:90:5:90:34 | ... = ... | test.cpp:90:5:90:7 | *str [post update] [string] | provenance | |
| test.cpp:90:19:90:24 | call to malloc | test.cpp:90:5:90:34 | ... = ... | provenance | |
| test.cpp:90:19:90:24 | call to malloc | test.cpp:90:19:90:24 | call to malloc | provenance | |
| test.cpp:91:5:91:7 | *str [string] | test.cpp:92:12:92:14 | *str [string] | provenance | |
| test.cpp:92:12:92:14 | *str [string] | test.cpp:88:11:88:30 | **mk_string_t_plus_one [string] | provenance | |
| test.cpp:96:21:96:40 | *call to mk_string_t_plus_one [string] | test.cpp:96:21:96:40 | *call to mk_string_t_plus_one [string] | provenance | |
| test.cpp:96:21:96:40 | *call to mk_string_t_plus_one [string] | test.cpp:99:13:99:15 | *str [string] | provenance | |
| test.cpp:96:21:96:40 | *call to mk_string_t_plus_one [string] | test.cpp:129:17:129:19 | *str [string] | provenance | |
| test.cpp:96:21:96:40 | *call to mk_string_t_plus_one [string] | test.cpp:137:17:137:19 | *str [string] | provenance | |
@@ -28,7 +28,6 @@ edges
| test.cpp:147:5:147:7 | *str [post update] [string] | test.cpp:148:5:148:7 | *str [string] | provenance | |
| test.cpp:147:5:147:34 | ... = ... | test.cpp:147:5:147:7 | *str [post update] [string] | provenance | |
| test.cpp:147:19:147:24 | call to malloc | test.cpp:147:5:147:34 | ... = ... | provenance | |
| test.cpp:147:19:147:24 | call to malloc | test.cpp:147:19:147:24 | call to malloc | provenance | |
| test.cpp:148:5:148:7 | *str [string] | test.cpp:152:13:152:15 | *str [string] | provenance | |
| test.cpp:148:5:148:7 | *str [string] | test.cpp:154:13:154:15 | *str [string] | provenance | |
| test.cpp:148:5:148:7 | *str [string] | test.cpp:156:13:156:15 | *str [string] | provenance | |
@@ -48,32 +47,37 @@ edges
| test.cpp:203:17:203:19 | *str [string] | test.cpp:203:22:203:27 | string | provenance | |
| test.cpp:207:17:207:19 | *str [string] | test.cpp:207:22:207:27 | string | provenance | |
| test.cpp:214:24:214:24 | p | test.cpp:216:10:216:10 | p | provenance | |
| test.cpp:220:27:220:54 | call to malloc | test.cpp:222:15:222:20 | buffer | provenance | |
| test.cpp:220:27:220:54 | (unsigned char *)... | test.cpp:222:15:222:20 | buffer | provenance | |
| test.cpp:220:27:220:54 | call to malloc | test.cpp:220:27:220:54 | (unsigned char *)... | provenance | |
| test.cpp:222:15:222:20 | buffer | test.cpp:214:24:214:24 | p | provenance | |
| test.cpp:228:27:228:54 | call to malloc | test.cpp:232:10:232:15 | buffer | provenance | |
| test.cpp:235:40:235:45 | buffer | test.cpp:236:21:236:26 | buffer | provenance | |
| test.cpp:228:27:228:54 | (unsigned char *)... | test.cpp:232:10:232:15 | buffer | provenance | |
| test.cpp:228:27:228:54 | call to malloc | test.cpp:228:27:228:54 | (unsigned char *)... | provenance | |
| test.cpp:235:40:235:45 | buffer | test.cpp:236:5:236:26 | ... = ... | provenance | |
| test.cpp:236:5:236:9 | *p_str [post update] [string] | test.cpp:235:27:235:31 | *p_str [string] | provenance | |
| test.cpp:236:5:236:26 | ... = ... | test.cpp:236:5:236:9 | *p_str [post update] [string] | provenance | |
| test.cpp:236:21:236:26 | buffer | test.cpp:236:5:236:26 | ... = ... | provenance | |
| test.cpp:241:20:241:38 | call to malloc | test.cpp:242:22:242:27 | buffer | provenance | |
| test.cpp:241:20:241:38 | (char *)... | test.cpp:242:22:242:27 | buffer | provenance | |
| test.cpp:241:20:241:38 | call to malloc | test.cpp:241:20:241:38 | (char *)... | provenance | |
| test.cpp:242:16:242:19 | set_string output argument [string] | test.cpp:243:12:243:14 | *str [string] | provenance | |
| test.cpp:242:22:242:27 | buffer | test.cpp:235:40:235:45 | buffer | provenance | |
| test.cpp:242:22:242:27 | buffer | test.cpp:242:16:242:19 | set_string output argument [string] | provenance | |
| test.cpp:243:12:243:14 | *str [string] | test.cpp:243:12:243:21 | string | provenance | |
| test.cpp:249:14:249:33 | call to my_alloc | test.cpp:250:12:250:12 | p | provenance | |
| test.cpp:256:9:256:25 | call to malloc | test.cpp:256:9:256:25 | call to malloc | provenance | |
| test.cpp:256:9:256:25 | call to malloc | test.cpp:257:12:257:12 | p | provenance | |
| test.cpp:262:15:262:30 | call to malloc | test.cpp:266:12:266:12 | p | provenance | |
| test.cpp:264:13:264:30 | call to malloc | test.cpp:266:12:266:12 | p | provenance | |
| test.cpp:249:14:249:33 | (int *)... | test.cpp:250:12:250:12 | p | provenance | |
| test.cpp:249:14:249:33 | call to my_alloc | test.cpp:249:14:249:33 | (int *)... | provenance | |
| test.cpp:256:5:256:25 | ... = ... | test.cpp:257:12:257:12 | p | provenance | |
| test.cpp:256:9:256:25 | call to malloc | test.cpp:256:5:256:25 | ... = ... | provenance | |
| test.cpp:262:15:262:30 | (char *)... | test.cpp:266:12:266:12 | p | provenance | |
| test.cpp:262:15:262:30 | call to malloc | test.cpp:262:15:262:30 | (char *)... | provenance | |
| test.cpp:264:9:264:30 | ... = ... | test.cpp:266:12:266:12 | p | provenance | |
| test.cpp:264:13:264:30 | call to malloc | test.cpp:264:9:264:30 | ... = ... | provenance | |
nodes
| test.cpp:16:11:16:21 | **mk_string_t [string] | semmle.label | **mk_string_t [string] |
| test.cpp:18:5:18:7 | *str [post update] [string] | semmle.label | *str [post update] [string] |
| test.cpp:18:5:18:30 | ... = ... | semmle.label | ... = ... |
| test.cpp:18:19:18:24 | call to malloc | semmle.label | call to malloc |
| test.cpp:18:19:18:24 | call to malloc | semmle.label | call to malloc |
| test.cpp:19:5:19:7 | *str [string] | semmle.label | *str [string] |
| test.cpp:20:12:20:14 | *str [string] | semmle.label | *str [string] |
| test.cpp:39:21:39:31 | *call to mk_string_t [string] | semmle.label | *call to mk_string_t [string] |
| test.cpp:39:21:39:31 | *call to mk_string_t [string] | semmle.label | *call to mk_string_t [string] |
| test.cpp:42:13:42:15 | *str [string] | semmle.label | *str [string] |
| test.cpp:42:18:42:23 | string | semmle.label | string |
| test.cpp:72:17:72:19 | *str [string] | semmle.label | *str [string] |
@@ -84,10 +88,10 @@ nodes
| test.cpp:90:5:90:7 | *str [post update] [string] | semmle.label | *str [post update] [string] |
| test.cpp:90:5:90:34 | ... = ... | semmle.label | ... = ... |
| test.cpp:90:19:90:24 | call to malloc | semmle.label | call to malloc |
| test.cpp:90:19:90:24 | call to malloc | semmle.label | call to malloc |
| test.cpp:91:5:91:7 | *str [string] | semmle.label | *str [string] |
| test.cpp:92:12:92:14 | *str [string] | semmle.label | *str [string] |
| test.cpp:96:21:96:40 | *call to mk_string_t_plus_one [string] | semmle.label | *call to mk_string_t_plus_one [string] |
| test.cpp:96:21:96:40 | *call to mk_string_t_plus_one [string] | semmle.label | *call to mk_string_t_plus_one [string] |
| test.cpp:99:13:99:15 | *str [string] | semmle.label | *str [string] |
| test.cpp:99:18:99:23 | string | semmle.label | string |
| test.cpp:129:17:129:19 | *str [string] | semmle.label | *str [string] |
@@ -97,7 +101,6 @@ nodes
| test.cpp:147:5:147:7 | *str [post update] [string] | semmle.label | *str [post update] [string] |
| test.cpp:147:5:147:34 | ... = ... | semmle.label | ... = ... |
| test.cpp:147:19:147:24 | call to malloc | semmle.label | call to malloc |
| test.cpp:147:19:147:24 | call to malloc | semmle.label | call to malloc |
| test.cpp:148:5:148:7 | *str [string] | semmle.label | *str [string] |
| test.cpp:152:13:152:15 | *str [string] | semmle.label | *str [string] |
| test.cpp:152:18:152:23 | string | semmle.label | string |
@@ -119,25 +122,31 @@ nodes
| test.cpp:207:22:207:27 | string | semmle.label | string |
| test.cpp:214:24:214:24 | p | semmle.label | p |
| test.cpp:216:10:216:10 | p | semmle.label | p |
| test.cpp:220:27:220:54 | (unsigned char *)... | semmle.label | (unsigned char *)... |
| test.cpp:220:27:220:54 | call to malloc | semmle.label | call to malloc |
| test.cpp:222:15:222:20 | buffer | semmle.label | buffer |
| test.cpp:228:27:228:54 | (unsigned char *)... | semmle.label | (unsigned char *)... |
| test.cpp:228:27:228:54 | call to malloc | semmle.label | call to malloc |
| test.cpp:232:10:232:15 | buffer | semmle.label | buffer |
| test.cpp:235:27:235:31 | *p_str [string] | semmle.label | *p_str [string] |
| test.cpp:235:40:235:45 | buffer | semmle.label | buffer |
| test.cpp:236:5:236:9 | *p_str [post update] [string] | semmle.label | *p_str [post update] [string] |
| test.cpp:236:5:236:26 | ... = ... | semmle.label | ... = ... |
| test.cpp:236:21:236:26 | buffer | semmle.label | buffer |
| test.cpp:241:20:241:38 | (char *)... | semmle.label | (char *)... |
| test.cpp:241:20:241:38 | call to malloc | semmle.label | call to malloc |
| test.cpp:242:16:242:19 | set_string output argument [string] | semmle.label | set_string output argument [string] |
| test.cpp:242:22:242:27 | buffer | semmle.label | buffer |
| test.cpp:243:12:243:14 | *str [string] | semmle.label | *str [string] |
| test.cpp:243:12:243:21 | string | semmle.label | string |
| test.cpp:249:14:249:33 | (int *)... | semmle.label | (int *)... |
| test.cpp:249:14:249:33 | call to my_alloc | semmle.label | call to my_alloc |
| test.cpp:250:12:250:12 | p | semmle.label | p |
| test.cpp:256:5:256:25 | ... = ... | semmle.label | ... = ... |
| test.cpp:256:9:256:25 | call to malloc | semmle.label | call to malloc |
| test.cpp:257:12:257:12 | p | semmle.label | p |
| test.cpp:262:15:262:30 | (char *)... | semmle.label | (char *)... |
| test.cpp:262:15:262:30 | call to malloc | semmle.label | call to malloc |
| test.cpp:264:9:264:30 | ... = ... | semmle.label | ... = ... |
| test.cpp:264:13:264:30 | call to malloc | semmle.label | call to malloc |
| test.cpp:266:12:266:12 | p | semmle.label | p |
subpaths

View File

@@ -1,8 +1,8 @@
edges
| main.cpp:6:27:6:30 | **argv | main.cpp:7:33:7:36 | **argv | provenance | |
| main.cpp:7:33:7:36 | **argv | overflowdestination.cpp:23:45:23:48 | **argv | provenance | |
| overflowdestination.cpp:23:45:23:48 | **argv | overflowdestination.cpp:27:9:27:15 | *access to array | provenance | |
| overflowdestination.cpp:27:9:27:15 | *access to array | overflowdestination.cpp:30:17:30:20 | *arg1 | provenance | |
| overflowdestination.cpp:23:45:23:48 | **argv | overflowdestination.cpp:27:2:27:15 | *... = ... | provenance | |
| overflowdestination.cpp:27:2:27:15 | *... = ... | overflowdestination.cpp:30:17:30:20 | *arg1 | provenance | |
| overflowdestination.cpp:43:8:43:10 | fgets output argument | overflowdestination.cpp:46:15:46:17 | *src | provenance | |
| overflowdestination.cpp:50:52:50:54 | *src | overflowdestination.cpp:50:52:50:54 | *src | provenance | |
| overflowdestination.cpp:50:52:50:54 | *src | overflowdestination.cpp:53:15:53:17 | *src | provenance | |
@@ -18,7 +18,7 @@ nodes
| main.cpp:6:27:6:30 | **argv | semmle.label | **argv |
| main.cpp:7:33:7:36 | **argv | semmle.label | **argv |
| overflowdestination.cpp:23:45:23:48 | **argv | semmle.label | **argv |
| overflowdestination.cpp:27:9:27:15 | *access to array | semmle.label | *access to array |
| overflowdestination.cpp:27:2:27:15 | *... = ... | semmle.label | *... = ... |
| overflowdestination.cpp:30:17:30:20 | *arg1 | semmle.label | *arg1 |
| overflowdestination.cpp:43:8:43:10 | fgets output argument | semmle.label | fgets output argument |
| overflowdestination.cpp:46:15:46:17 | *src | semmle.label | *src |

View File

@@ -40,10 +40,9 @@ edges
| test_buffer_overrun.cpp:32:46:32:49 | **argv | test_buffer_overrun.cpp:32:46:32:49 | *argv | provenance | |
| test_buffer_overrun.cpp:32:46:32:49 | *argv | test_buffer_overrun.cpp:32:46:32:49 | *argv | provenance | |
| tests.cpp:613:19:613:24 | *source | tests.cpp:615:17:615:22 | *source | provenance | |
| tests.cpp:622:19:622:24 | *source | tests.cpp:625:11:625:16 | *source | provenance | |
| tests.cpp:622:19:622:24 | *source | tests.cpp:625:2:625:16 | *... = ... | provenance | |
| tests.cpp:625:2:625:2 | *s [post update] [*home] | tests.cpp:628:14:628:14 | *s [*home] | provenance | |
| tests.cpp:625:2:625:16 | *... = ... | tests.cpp:625:2:625:2 | *s [post update] [*home] | provenance | |
| tests.cpp:625:11:625:16 | *source | tests.cpp:625:2:625:16 | *... = ... | provenance | |
| tests.cpp:628:14:628:14 | *s [*home] | tests.cpp:628:14:628:19 | *home | provenance | |
| tests.cpp:628:14:628:14 | *s [*home] | tests.cpp:628:16:628:19 | *home | provenance | |
| tests.cpp:628:16:628:19 | *home | tests.cpp:628:14:628:19 | *home | provenance | |
@@ -83,7 +82,6 @@ nodes
| tests.cpp:622:19:622:24 | *source | semmle.label | *source |
| tests.cpp:625:2:625:2 | *s [post update] [*home] | semmle.label | *s [post update] [*home] |
| tests.cpp:625:2:625:16 | *... = ... | semmle.label | *... = ... |
| tests.cpp:625:11:625:16 | *source | semmle.label | *source |
| tests.cpp:628:14:628:14 | *s [*home] | semmle.label | *s [*home] |
| tests.cpp:628:14:628:19 | *home | semmle.label | *home |
| tests.cpp:628:16:628:19 | *home | semmle.label | *home |

View File

@@ -1,9 +1,9 @@
edges
| CWE122_Heap_Based_Buffer_Overflow__c_CWE129_fgets_01.c:30:19:30:29 | fgets output argument | CWE122_Heap_Based_Buffer_Overflow__c_CWE129_fgets_01.c:33:20:33:23 | call to atoi | provenance | TaintFunction |
| CWE122_Heap_Based_Buffer_Overflow__c_CWE129_fgets_01.c:33:20:33:23 | call to atoi | CWE122_Heap_Based_Buffer_Overflow__c_CWE129_fgets_01.c:52:20:52:23 | data | provenance | |
| CWE122_Heap_Based_Buffer_Overflow__c_CWE129_fgets_01.c:30:19:30:29 | fgets output argument | CWE122_Heap_Based_Buffer_Overflow__c_CWE129_fgets_01.c:33:13:33:36 | ... = ... | provenance | TaintFunction |
| CWE122_Heap_Based_Buffer_Overflow__c_CWE129_fgets_01.c:33:13:33:36 | ... = ... | CWE122_Heap_Based_Buffer_Overflow__c_CWE129_fgets_01.c:52:20:52:23 | data | provenance | |
nodes
| CWE122_Heap_Based_Buffer_Overflow__c_CWE129_fgets_01.c:30:19:30:29 | fgets output argument | semmle.label | fgets output argument |
| CWE122_Heap_Based_Buffer_Overflow__c_CWE129_fgets_01.c:33:20:33:23 | call to atoi | semmle.label | call to atoi |
| CWE122_Heap_Based_Buffer_Overflow__c_CWE129_fgets_01.c:33:13:33:36 | ... = ... | semmle.label | ... = ... |
| CWE122_Heap_Based_Buffer_Overflow__c_CWE129_fgets_01.c:52:20:52:23 | data | semmle.label | data |
subpaths
#select

View File

@@ -8,8 +8,8 @@ edges
| test1.c:13:9:13:9 | i | test1.c:48:16:48:16 | i | provenance | |
| test1.c:16:16:16:16 | i | test1.c:18:16:18:16 | i | provenance | |
| test1.c:32:16:32:16 | i | test1.c:33:11:33:11 | i | provenance | |
| test1.c:48:16:48:16 | i | test1.c:51:7:51:7 | i | provenance | |
| test1.c:51:7:51:7 | i | test1.c:53:15:53:15 | j | provenance | |
| test1.c:48:16:48:16 | i | test1.c:51:3:51:7 | ... = ... | provenance | |
| test1.c:51:3:51:7 | ... = ... | test1.c:53:15:53:15 | j | provenance | |
nodes
| test1.c:7:26:7:29 | **argv | semmle.label | **argv |
| test1.c:8:11:8:14 | call to atoi | semmle.label | call to atoi |
@@ -21,7 +21,7 @@ nodes
| test1.c:32:16:32:16 | i | semmle.label | i |
| test1.c:33:11:33:11 | i | semmle.label | i |
| test1.c:48:16:48:16 | i | semmle.label | i |
| test1.c:51:7:51:7 | i | semmle.label | i |
| test1.c:51:3:51:7 | ... = ... | semmle.label | ... = ... |
| test1.c:53:15:53:15 | j | semmle.label | j |
subpaths
#select

View File

@@ -1,6 +1,7 @@
edges
| char_connect_socket_w32_vsnprintf_01_bad.c:94:46:94:69 | recv output argument | char_connect_socket_w32_vsnprintf_01_bad.c:125:15:125:18 | *data | provenance | |
| char_console_fprintf_01_bad.c:30:23:30:35 | fgets output argument | char_console_fprintf_01_bad.c:49:21:49:24 | *data | provenance | |
| char_environment_fprintf_01_bad.c:27:30:27:35 | *call to getenv | char_environment_fprintf_01_bad.c:27:30:27:35 | *call to getenv | provenance | |
| char_environment_fprintf_01_bad.c:27:30:27:35 | *call to getenv | char_environment_fprintf_01_bad.c:36:21:36:24 | *data | provenance | TaintFunction |
nodes
| char_connect_socket_w32_vsnprintf_01_bad.c:94:46:94:69 | recv output argument | semmle.label | recv output argument |
@@ -8,6 +9,7 @@ nodes
| char_console_fprintf_01_bad.c:30:23:30:35 | fgets output argument | semmle.label | fgets output argument |
| char_console_fprintf_01_bad.c:49:21:49:24 | *data | semmle.label | *data |
| char_environment_fprintf_01_bad.c:27:30:27:35 | *call to getenv | semmle.label | *call to getenv |
| char_environment_fprintf_01_bad.c:27:30:27:35 | *call to getenv | semmle.label | *call to getenv |
| char_environment_fprintf_01_bad.c:36:21:36:24 | *data | semmle.label | *data |
subpaths
#select

View File

@@ -3,74 +3,77 @@ edges
| argvLocal.c:13:27:13:30 | **argv | argvLocal.c:95:9:95:15 | *access to array | provenance | |
| argvLocal.c:13:27:13:30 | **argv | argvLocal.c:96:15:96:21 | *access to array | provenance | |
| argvLocal.c:13:27:13:30 | **argv | argvLocal.c:96:15:96:21 | *access to array | provenance | |
| argvLocal.c:13:27:13:30 | **argv | argvLocal.c:100:7:100:13 | *access to array | provenance | |
| argvLocal.c:13:27:13:30 | **argv | argvLocal.c:100:2:100:13 | *... = ... | provenance | |
| argvLocal.c:13:27:13:30 | **argv | argvLocal.c:105:14:105:17 | **argv | provenance | |
| argvLocal.c:13:27:13:30 | **argv | argvLocal.c:116:9:116:10 | *i3 | provenance | DataFlowFunction |
| argvLocal.c:13:27:13:30 | **argv | argvLocal.c:117:15:117:16 | *i3 | provenance | DataFlowFunction |
| argvLocal.c:13:27:13:30 | **argv | argvLocal.c:117:15:117:16 | *i3 | provenance | DataFlowFunction |
| argvLocal.c:13:27:13:30 | **argv | argvLocal.c:120:13:120:14 | *array to pointer conversion | provenance | DataFlowFunction |
| argvLocal.c:13:27:13:30 | **argv | argvLocal.c:126:2:126:19 | ... = ... | provenance | |
| argvLocal.c:13:27:13:30 | **argv | argvLocal.c:149:2:149:17 | *... = ... | provenance | |
| argvLocal.c:96:15:96:21 | *access to array | argvLocal.c:9:25:9:31 | *correct | provenance | |
| argvLocal.c:96:15:96:21 | *access to array | argvLocal.c:96:15:96:21 | printWrapper output argument | provenance | |
| argvLocal.c:96:15:96:21 | printWrapper output argument | argvLocal.c:100:7:100:13 | *access to array | provenance | |
| argvLocal.c:96:15:96:21 | printWrapper output argument | argvLocal.c:100:2:100:13 | *... = ... | provenance | |
| argvLocal.c:96:15:96:21 | printWrapper output argument | argvLocal.c:105:14:105:17 | **argv | provenance | |
| argvLocal.c:100:7:100:13 | *access to array | argvLocal.c:101:9:101:10 | *i1 | provenance | |
| argvLocal.c:100:7:100:13 | *access to array | argvLocal.c:102:15:102:16 | *i1 | provenance | |
| argvLocal.c:100:7:100:13 | *access to array | argvLocal.c:102:15:102:16 | *i1 | provenance | |
| argvLocal.c:100:7:100:13 | *access to array | argvLocal.c:143:14:143:25 | *... , ... | provenance | |
| argvLocal.c:96:15:96:21 | printWrapper output argument | argvLocal.c:116:9:116:10 | *i3 | provenance | DataFlowFunction |
| argvLocal.c:96:15:96:21 | printWrapper output argument | argvLocal.c:117:15:117:16 | *i3 | provenance | DataFlowFunction |
| argvLocal.c:96:15:96:21 | printWrapper output argument | argvLocal.c:117:15:117:16 | *i3 | provenance | DataFlowFunction |
| argvLocal.c:96:15:96:21 | printWrapper output argument | argvLocal.c:120:13:120:14 | *array to pointer conversion | provenance | DataFlowFunction |
| argvLocal.c:96:15:96:21 | printWrapper output argument | argvLocal.c:126:2:126:19 | ... = ... | provenance | |
| argvLocal.c:96:15:96:21 | printWrapper output argument | argvLocal.c:149:2:149:17 | *... = ... | provenance | |
| argvLocal.c:100:2:100:13 | *... = ... | argvLocal.c:101:9:101:10 | *i1 | provenance | |
| argvLocal.c:100:2:100:13 | *... = ... | argvLocal.c:102:15:102:16 | *i1 | provenance | |
| argvLocal.c:100:2:100:13 | *... = ... | argvLocal.c:102:15:102:16 | *i1 | provenance | |
| argvLocal.c:100:2:100:13 | *... = ... | argvLocal.c:143:13:143:26 | *(...) | provenance | |
| argvLocal.c:102:15:102:16 | *i1 | argvLocal.c:9:25:9:31 | *correct | provenance | |
| argvLocal.c:102:15:102:16 | *i1 | argvLocal.c:102:15:102:16 | printWrapper output argument | provenance | |
| argvLocal.c:102:15:102:16 | printWrapper output argument | argvLocal.c:143:14:143:25 | *... , ... | provenance | |
| argvLocal.c:102:15:102:16 | printWrapper output argument | argvLocal.c:143:13:143:26 | *(...) | provenance | |
| argvLocal.c:105:14:105:17 | **argv | argvLocal.c:106:9:106:13 | *access to array | provenance | |
| argvLocal.c:105:14:105:17 | **argv | argvLocal.c:107:15:107:19 | *access to array | provenance | |
| argvLocal.c:105:14:105:17 | **argv | argvLocal.c:107:15:107:19 | *access to array | provenance | |
| argvLocal.c:105:14:105:17 | **argv | argvLocal.c:110:9:110:11 | ** ... | provenance | |
| argvLocal.c:105:14:105:17 | **argv | argvLocal.c:111:15:111:17 | ** ... | provenance | |
| argvLocal.c:105:14:105:17 | **argv | argvLocal.c:116:9:116:10 | *i3 | provenance | DataFlowFunction |
| argvLocal.c:105:14:105:17 | **argv | argvLocal.c:117:15:117:16 | *i3 | provenance | DataFlowFunction |
| argvLocal.c:105:14:105:17 | **argv | argvLocal.c:117:15:117:16 | *i3 | provenance | DataFlowFunction |
| argvLocal.c:105:14:105:17 | **argv | argvLocal.c:120:13:120:14 | *i3 | provenance | DataFlowFunction |
| argvLocal.c:105:14:105:17 | **argv | argvLocal.c:126:10:126:19 | access to array | provenance | |
| argvLocal.c:105:14:105:17 | **argv | argvLocal.c:149:11:149:17 | *access to array | provenance | |
| argvLocal.c:107:15:107:19 | *access to array | argvLocal.c:9:25:9:31 | *correct | provenance | |
| argvLocal.c:107:15:107:19 | *access to array | argvLocal.c:107:15:107:19 | printWrapper output argument | provenance | |
| argvLocal.c:107:15:107:19 | printWrapper output argument | argvLocal.c:110:9:110:11 | ** ... | provenance | |
| argvLocal.c:107:15:107:19 | printWrapper output argument | argvLocal.c:111:15:111:17 | ** ... | provenance | |
| argvLocal.c:117:15:117:16 | *i3 | argvLocal.c:9:25:9:31 | *correct | provenance | |
| argvLocal.c:117:15:117:16 | *i3 | argvLocal.c:117:15:117:16 | printWrapper output argument | provenance | |
| argvLocal.c:117:15:117:16 | printWrapper output argument | argvLocal.c:120:13:120:14 | *i3 | provenance | |
| argvLocal.c:120:13:120:14 | *i3 | argvLocal.c:121:9:121:10 | *i4 | provenance | |
| argvLocal.c:120:13:120:14 | *i3 | argvLocal.c:122:15:122:16 | *i4 | provenance | |
| argvLocal.c:120:13:120:14 | *i3 | argvLocal.c:122:15:122:16 | *i4 | provenance | |
| argvLocal.c:120:13:120:14 | *i3 | argvLocal.c:135:9:135:12 | *... ++ | provenance | |
| argvLocal.c:120:13:120:14 | *i3 | argvLocal.c:135:9:135:12 | *... ++ | provenance | |
| argvLocal.c:117:15:117:16 | printWrapper output argument | argvLocal.c:120:13:120:14 | *array to pointer conversion | provenance | |
| argvLocal.c:120:13:120:14 | *array to pointer conversion | argvLocal.c:121:9:121:10 | *i4 | provenance | |
| argvLocal.c:120:13:120:14 | *array to pointer conversion | argvLocal.c:122:15:122:16 | *i4 | provenance | |
| argvLocal.c:120:13:120:14 | *array to pointer conversion | argvLocal.c:122:15:122:16 | *i4 | provenance | |
| argvLocal.c:120:13:120:14 | *array to pointer conversion | argvLocal.c:135:9:135:12 | *... ++ | provenance | |
| argvLocal.c:120:13:120:14 | *array to pointer conversion | argvLocal.c:135:9:135:12 | *... ++ | provenance | |
| argvLocal.c:122:15:122:16 | *i4 | argvLocal.c:9:25:9:31 | *correct | provenance | |
| argvLocal.c:122:15:122:16 | *i4 | argvLocal.c:122:15:122:16 | printWrapper output argument | provenance | |
| argvLocal.c:122:15:122:16 | printWrapper output argument | argvLocal.c:135:9:135:12 | *... ++ | provenance | |
| argvLocal.c:122:15:122:16 | printWrapper output argument | argvLocal.c:135:9:135:12 | *... ++ | provenance | |
| argvLocal.c:126:10:126:19 | access to array | argvLocal.c:127:9:127:10 | *i5 | provenance | |
| argvLocal.c:126:10:126:19 | access to array | argvLocal.c:128:15:128:16 | *i5 | provenance | |
| argvLocal.c:126:10:126:19 | access to array | argvLocal.c:128:15:128:16 | *i5 | provenance | |
| argvLocal.c:126:10:126:19 | access to array | argvLocal.c:131:9:131:14 | *... + ... | provenance | |
| argvLocal.c:126:10:126:19 | access to array | argvLocal.c:132:15:132:20 | *... + ... | provenance | |
| argvLocal.c:126:10:126:19 | access to array | argvLocal.c:132:15:132:20 | *... + ... | provenance | |
| argvLocal.c:126:10:126:19 | access to array | argvLocal.c:139:25:139:26 | *i5 | provenance | |
| argvLocal.c:126:10:126:19 | access to array | argvLocal.c:140:31:140:32 | *i5 | provenance | |
| argvLocal.c:126:2:126:19 | ... = ... | argvLocal.c:127:9:127:10 | *i5 | provenance | |
| argvLocal.c:126:2:126:19 | ... = ... | argvLocal.c:128:15:128:16 | *i5 | provenance | |
| argvLocal.c:126:2:126:19 | ... = ... | argvLocal.c:128:15:128:16 | *i5 | provenance | |
| argvLocal.c:126:2:126:19 | ... = ... | argvLocal.c:131:9:131:14 | *... + ... | provenance | |
| argvLocal.c:126:2:126:19 | ... = ... | argvLocal.c:132:15:132:20 | *... + ... | provenance | |
| argvLocal.c:126:2:126:19 | ... = ... | argvLocal.c:132:15:132:20 | *... + ... | provenance | |
| argvLocal.c:126:2:126:19 | ... = ... | argvLocal.c:139:9:139:26 | *... ? ... : ... | provenance | |
| argvLocal.c:126:2:126:19 | ... = ... | argvLocal.c:140:15:140:32 | *... ? ... : ... | provenance | |
| argvLocal.c:128:15:128:16 | *i5 | argvLocal.c:9:25:9:31 | *correct | provenance | |
| argvLocal.c:128:15:128:16 | *i5 | argvLocal.c:128:15:128:16 | printWrapper output argument | provenance | |
| argvLocal.c:128:15:128:16 | printWrapper output argument | argvLocal.c:131:9:131:14 | *... + ... | provenance | |
| argvLocal.c:128:15:128:16 | printWrapper output argument | argvLocal.c:132:15:132:20 | *... + ... | provenance | |
| argvLocal.c:128:15:128:16 | printWrapper output argument | argvLocal.c:132:15:132:20 | *... + ... | provenance | |
| argvLocal.c:128:15:128:16 | printWrapper output argument | argvLocal.c:139:25:139:26 | *i5 | provenance | |
| argvLocal.c:128:15:128:16 | printWrapper output argument | argvLocal.c:140:31:140:32 | *i5 | provenance | |
| argvLocal.c:128:15:128:16 | printWrapper output argument | argvLocal.c:139:9:139:26 | *... ? ... : ... | provenance | |
| argvLocal.c:128:15:128:16 | printWrapper output argument | argvLocal.c:140:15:140:32 | *... ? ... : ... | provenance | |
| argvLocal.c:132:15:132:20 | *... + ... | argvLocal.c:9:25:9:31 | *correct | provenance | |
| argvLocal.c:132:15:132:20 | *... + ... | argvLocal.c:132:15:132:20 | printWrapper output argument | provenance | |
| argvLocal.c:132:15:132:20 | printWrapper output argument | argvLocal.c:139:25:139:26 | *i5 | provenance | |
| argvLocal.c:132:15:132:20 | printWrapper output argument | argvLocal.c:140:31:140:32 | *i5 | provenance | |
| argvLocal.c:132:15:132:20 | printWrapper output argument | argvLocal.c:139:9:139:26 | *... ? ... : ... | provenance | |
| argvLocal.c:132:15:132:20 | printWrapper output argument | argvLocal.c:140:15:140:32 | *... ? ... : ... | provenance | |
| argvLocal.c:135:9:135:12 | *... ++ | argvLocal.c:136:15:136:18 | *-- ... | provenance | |
| argvLocal.c:136:15:136:18 | *-- ... | argvLocal.c:136:15:136:18 | *-- ... | provenance | |
| argvLocal.c:139:25:139:26 | *i5 | argvLocal.c:139:9:139:26 | *... ? ... : ... | provenance | |
| argvLocal.c:139:25:139:26 | *i5 | argvLocal.c:140:31:140:32 | *i5 | provenance | |
| argvLocal.c:140:31:140:32 | *i5 | argvLocal.c:140:15:140:32 | *... ? ... : ... | provenance | |
| argvLocal.c:143:14:143:25 | *... , ... | argvLocal.c:144:9:144:10 | *i7 | provenance | |
| argvLocal.c:143:14:143:25 | *... , ... | argvLocal.c:145:15:145:16 | *i7 | provenance | |
| argvLocal.c:149:11:149:17 | *access to array | argvLocal.c:150:9:150:10 | *i8 | provenance | |
| argvLocal.c:149:11:149:17 | *access to array | argvLocal.c:151:15:151:16 | *i8 | provenance | |
| argvLocal.c:143:13:143:26 | *(...) | argvLocal.c:144:9:144:10 | *i7 | provenance | |
| argvLocal.c:143:13:143:26 | *(...) | argvLocal.c:145:15:145:16 | *i7 | provenance | |
| argvLocal.c:149:2:149:17 | *... = ... | argvLocal.c:150:9:150:10 | *i8 | provenance | |
| argvLocal.c:149:2:149:17 | *... = ... | argvLocal.c:151:15:151:16 | *i8 | provenance | |
nodes
| argvLocal.c:9:25:9:31 | *correct | semmle.label | *correct |
| argvLocal.c:9:25:9:31 | *correct | semmle.label | *correct |
@@ -79,7 +82,7 @@ nodes
| argvLocal.c:96:15:96:21 | *access to array | semmle.label | *access to array |
| argvLocal.c:96:15:96:21 | *access to array | semmle.label | *access to array |
| argvLocal.c:96:15:96:21 | printWrapper output argument | semmle.label | printWrapper output argument |
| argvLocal.c:100:7:100:13 | *access to array | semmle.label | *access to array |
| argvLocal.c:100:2:100:13 | *... = ... | semmle.label | *... = ... |
| argvLocal.c:101:9:101:10 | *i1 | semmle.label | *i1 |
| argvLocal.c:102:15:102:16 | *i1 | semmle.label | *i1 |
| argvLocal.c:102:15:102:16 | *i1 | semmle.label | *i1 |
@@ -95,12 +98,12 @@ nodes
| argvLocal.c:117:15:117:16 | *i3 | semmle.label | *i3 |
| argvLocal.c:117:15:117:16 | *i3 | semmle.label | *i3 |
| argvLocal.c:117:15:117:16 | printWrapper output argument | semmle.label | printWrapper output argument |
| argvLocal.c:120:13:120:14 | *i3 | semmle.label | *i3 |
| argvLocal.c:120:13:120:14 | *array to pointer conversion | semmle.label | *array to pointer conversion |
| argvLocal.c:121:9:121:10 | *i4 | semmle.label | *i4 |
| argvLocal.c:122:15:122:16 | *i4 | semmle.label | *i4 |
| argvLocal.c:122:15:122:16 | *i4 | semmle.label | *i4 |
| argvLocal.c:122:15:122:16 | printWrapper output argument | semmle.label | printWrapper output argument |
| argvLocal.c:126:10:126:19 | access to array | semmle.label | access to array |
| argvLocal.c:126:2:126:19 | ... = ... | semmle.label | ... = ... |
| argvLocal.c:127:9:127:10 | *i5 | semmle.label | *i5 |
| argvLocal.c:128:15:128:16 | *i5 | semmle.label | *i5 |
| argvLocal.c:128:15:128:16 | *i5 | semmle.label | *i5 |
@@ -114,13 +117,11 @@ nodes
| argvLocal.c:136:15:136:18 | *-- ... | semmle.label | *-- ... |
| argvLocal.c:136:15:136:18 | *-- ... | semmle.label | *-- ... |
| argvLocal.c:139:9:139:26 | *... ? ... : ... | semmle.label | *... ? ... : ... |
| argvLocal.c:139:25:139:26 | *i5 | semmle.label | *i5 |
| argvLocal.c:140:15:140:32 | *... ? ... : ... | semmle.label | *... ? ... : ... |
| argvLocal.c:140:31:140:32 | *i5 | semmle.label | *i5 |
| argvLocal.c:143:14:143:25 | *... , ... | semmle.label | *... , ... |
| argvLocal.c:143:13:143:26 | *(...) | semmle.label | *(...) |
| argvLocal.c:144:9:144:10 | *i7 | semmle.label | *i7 |
| argvLocal.c:145:15:145:16 | *i7 | semmle.label | *i7 |
| argvLocal.c:149:11:149:17 | *access to array | semmle.label | *access to array |
| argvLocal.c:149:2:149:17 | *... = ... | semmle.label | *... = ... |
| argvLocal.c:150:9:150:10 | *i8 | semmle.label | *i8 |
| argvLocal.c:151:15:151:16 | *i8 | semmle.label | *i8 |
subpaths

View File

@@ -4,26 +4,34 @@ edges
| consts.cpp:29:7:29:25 | **nonConstFuncToArray | consts.cpp:126:9:126:30 | *call to nonConstFuncToArray | provenance | |
| consts.cpp:30:9:30:14 | *access to array | consts.cpp:29:7:29:25 | **nonConstFuncToArray | provenance | |
| consts.cpp:85:7:85:8 | gets output argument | consts.cpp:86:9:86:10 | *v1 | provenance | |
| consts.cpp:85:7:85:8 | gets output argument | consts.cpp:94:13:94:14 | *v1 | provenance | |
| consts.cpp:90:7:90:10 | *call to gets | consts.cpp:91:9:91:10 | *v2 | provenance | |
| consts.cpp:90:7:90:10 | *call to gets | consts.cpp:115:21:115:22 | *v2 | provenance | |
| consts.cpp:90:12:90:13 | gets output argument | consts.cpp:94:13:94:14 | *v1 | provenance | |
| consts.cpp:94:13:94:14 | *v1 | consts.cpp:95:9:95:10 | *v3 | provenance | |
| consts.cpp:94:13:94:14 | *v1 | consts.cpp:99:7:99:8 | *v1 | provenance | |
| consts.cpp:99:7:99:8 | *v1 | consts.cpp:100:9:100:10 | *v4 | provenance | |
| consts.cpp:99:7:99:8 | *v1 | consts.cpp:115:17:115:18 | *v1 | provenance | |
| consts.cpp:85:7:85:8 | gets output argument | consts.cpp:94:13:94:14 | *array to pointer conversion | provenance | |
| consts.cpp:85:7:85:8 | gets output argument | consts.cpp:99:2:99:8 | *... = ... | provenance | |
| consts.cpp:85:7:85:8 | gets output argument | consts.cpp:115:17:115:18 | *array to pointer conversion | provenance | |
| consts.cpp:85:7:85:8 | gets output argument | consts.cpp:123:2:123:12 | *... = ... | provenance | |
| consts.cpp:85:7:85:8 | gets output argument | consts.cpp:129:19:129:20 | *(const char *)... | provenance | |
| consts.cpp:85:7:85:8 | gets output argument | consts.cpp:135:9:135:11 | *v10 | provenance | TaintFunction |
| consts.cpp:90:2:90:14 | *... = ... | consts.cpp:91:9:91:10 | *v2 | provenance | |
| consts.cpp:90:2:90:14 | *... = ... | consts.cpp:115:21:115:22 | *v2 | provenance | |
| consts.cpp:90:7:90:10 | *call to gets | consts.cpp:90:2:90:14 | *... = ... | provenance | |
| consts.cpp:90:12:90:13 | gets output argument | consts.cpp:94:13:94:14 | *array to pointer conversion | provenance | |
| consts.cpp:90:12:90:13 | gets output argument | consts.cpp:99:2:99:8 | *... = ... | provenance | |
| consts.cpp:90:12:90:13 | gets output argument | consts.cpp:115:17:115:18 | *array to pointer conversion | provenance | |
| consts.cpp:90:12:90:13 | gets output argument | consts.cpp:123:2:123:12 | *... = ... | provenance | |
| consts.cpp:90:12:90:13 | gets output argument | consts.cpp:129:19:129:20 | *(const char *)... | provenance | |
| consts.cpp:90:12:90:13 | gets output argument | consts.cpp:135:9:135:11 | *v10 | provenance | TaintFunction |
| consts.cpp:94:13:94:14 | *array to pointer conversion | consts.cpp:95:9:95:10 | *v3 | provenance | |
| consts.cpp:99:2:99:8 | *... = ... | consts.cpp:100:9:100:10 | *v4 | provenance | |
| consts.cpp:106:13:106:19 | *call to varFunc | consts.cpp:106:13:106:19 | *call to varFunc | provenance | |
| consts.cpp:106:13:106:19 | *call to varFunc | consts.cpp:107:9:107:10 | *v5 | provenance | |
| consts.cpp:111:7:111:13 | *call to varFunc | consts.cpp:112:9:112:10 | *v6 | provenance | |
| consts.cpp:115:17:115:18 | *v1 | consts.cpp:116:9:116:13 | *access to array | provenance | |
| consts.cpp:115:17:115:18 | *v1 | consts.cpp:120:7:120:11 | *access to array | provenance | |
| consts.cpp:115:17:115:18 | *v1 | consts.cpp:123:11:123:12 | *v1 | provenance | |
| consts.cpp:111:2:111:15 | *... = ... | consts.cpp:112:9:112:10 | *v6 | provenance | |
| consts.cpp:111:7:111:13 | *call to varFunc | consts.cpp:111:2:111:15 | *... = ... | provenance | |
| consts.cpp:115:17:115:18 | *array to pointer conversion | consts.cpp:116:9:116:13 | *access to array | provenance | |
| consts.cpp:115:17:115:18 | *array to pointer conversion | consts.cpp:120:2:120:11 | *... = ... | provenance | |
| consts.cpp:115:21:115:22 | *v2 | consts.cpp:116:9:116:13 | *access to array | provenance | |
| consts.cpp:115:21:115:22 | *v2 | consts.cpp:120:7:120:11 | *access to array | provenance | |
| consts.cpp:120:7:120:11 | *access to array | consts.cpp:121:9:121:10 | *v8 | provenance | |
| consts.cpp:123:11:123:12 | *v1 | consts.cpp:24:7:24:9 | **gv1 | provenance | |
| consts.cpp:123:11:123:12 | *v1 | consts.cpp:129:19:129:20 | *v1 | provenance | |
| consts.cpp:129:19:129:20 | *v1 | consts.cpp:130:9:130:10 | *v9 | provenance | |
| consts.cpp:129:19:129:20 | *v1 | consts.cpp:135:9:135:11 | *v10 | provenance | TaintFunction |
| consts.cpp:115:21:115:22 | *v2 | consts.cpp:120:2:120:11 | *... = ... | provenance | |
| consts.cpp:120:2:120:11 | *... = ... | consts.cpp:121:9:121:10 | *v8 | provenance | |
| consts.cpp:123:2:123:12 | *... = ... | consts.cpp:24:7:24:9 | **gv1 | provenance | |
| consts.cpp:129:19:129:20 | *(const char *)... | consts.cpp:130:9:130:10 | *v9 | provenance | |
| consts.cpp:139:13:139:16 | readString output argument | consts.cpp:140:9:140:11 | *v11 | provenance | |
| consts.cpp:144:16:144:18 | readStringRef output argument | consts.cpp:145:9:145:11 | *v12 | provenance | |
nodes
@@ -32,26 +40,29 @@ nodes
| consts.cpp:30:9:30:14 | *access to array | semmle.label | *access to array |
| consts.cpp:85:7:85:8 | gets output argument | semmle.label | gets output argument |
| consts.cpp:86:9:86:10 | *v1 | semmle.label | *v1 |
| consts.cpp:90:2:90:14 | *... = ... | semmle.label | *... = ... |
| consts.cpp:90:7:90:10 | *call to gets | semmle.label | *call to gets |
| consts.cpp:90:12:90:13 | gets output argument | semmle.label | gets output argument |
| consts.cpp:91:9:91:10 | *v2 | semmle.label | *v2 |
| consts.cpp:94:13:94:14 | *v1 | semmle.label | *v1 |
| consts.cpp:94:13:94:14 | *array to pointer conversion | semmle.label | *array to pointer conversion |
| consts.cpp:95:9:95:10 | *v3 | semmle.label | *v3 |
| consts.cpp:99:7:99:8 | *v1 | semmle.label | *v1 |
| consts.cpp:99:2:99:8 | *... = ... | semmle.label | *... = ... |
| consts.cpp:100:9:100:10 | *v4 | semmle.label | *v4 |
| consts.cpp:103:9:103:17 | *call to varFunc | semmle.label | *call to varFunc |
| consts.cpp:106:13:106:19 | *call to varFunc | semmle.label | *call to varFunc |
| consts.cpp:106:13:106:19 | *call to varFunc | semmle.label | *call to varFunc |
| consts.cpp:107:9:107:10 | *v5 | semmle.label | *v5 |
| consts.cpp:111:2:111:15 | *... = ... | semmle.label | *... = ... |
| consts.cpp:111:7:111:13 | *call to varFunc | semmle.label | *call to varFunc |
| consts.cpp:112:9:112:10 | *v6 | semmle.label | *v6 |
| consts.cpp:115:17:115:18 | *v1 | semmle.label | *v1 |
| consts.cpp:115:17:115:18 | *array to pointer conversion | semmle.label | *array to pointer conversion |
| consts.cpp:115:21:115:22 | *v2 | semmle.label | *v2 |
| consts.cpp:116:9:116:13 | *access to array | semmle.label | *access to array |
| consts.cpp:120:7:120:11 | *access to array | semmle.label | *access to array |
| consts.cpp:120:2:120:11 | *... = ... | semmle.label | *... = ... |
| consts.cpp:121:9:121:10 | *v8 | semmle.label | *v8 |
| consts.cpp:123:11:123:12 | *v1 | semmle.label | *v1 |
| consts.cpp:123:2:123:12 | *... = ... | semmle.label | *... = ... |
| consts.cpp:126:9:126:30 | *call to nonConstFuncToArray | semmle.label | *call to nonConstFuncToArray |
| consts.cpp:129:19:129:20 | *v1 | semmle.label | *v1 |
| consts.cpp:129:19:129:20 | *(const char *)... | semmle.label | *(const char *)... |
| consts.cpp:130:9:130:10 | *v9 | semmle.label | *v9 |
| consts.cpp:135:9:135:11 | *v10 | semmle.label | *v10 |
| consts.cpp:139:13:139:16 | readString output argument | semmle.label | readString output argument |

View File

@@ -1,29 +1,35 @@
edges
| funcsLocal.c:16:8:16:9 | fread output argument | funcsLocal.c:17:9:17:10 | *i1 | provenance | |
| funcsLocal.c:16:8:16:9 | fread output argument | funcsLocal.c:57:10:57:14 | access to array | provenance | |
| funcsLocal.c:16:8:16:9 | fread output argument | funcsLocal.c:57:2:57:14 | ... = ... | provenance | |
| funcsLocal.c:26:8:26:9 | fgets output argument | funcsLocal.c:27:9:27:10 | *i3 | provenance | |
| funcsLocal.c:31:13:31:17 | *call to fgets | funcsLocal.c:31:13:31:17 | *call to fgets | provenance | |
| funcsLocal.c:31:13:31:17 | *call to fgets | funcsLocal.c:32:9:32:10 | *i4 | provenance | |
| funcsLocal.c:36:7:36:8 | gets output argument | funcsLocal.c:37:9:37:10 | *i5 | provenance | |
| funcsLocal.c:41:13:41:16 | *call to gets | funcsLocal.c:41:13:41:16 | *call to gets | provenance | |
| funcsLocal.c:41:13:41:16 | *call to gets | funcsLocal.c:42:9:42:10 | *i6 | provenance | |
| funcsLocal.c:46:7:46:9 | gets output argument | funcsLocal.c:47:9:47:11 | ** ... | provenance | |
| funcsLocal.c:52:8:52:11 | *call to gets | funcsLocal.c:53:9:53:11 | ** ... | provenance | |
| funcsLocal.c:57:10:57:14 | access to array | funcsLocal.c:58:9:58:10 | *e1 | provenance | |
| funcsLocal.c:52:2:52:16 | *... = ... | funcsLocal.c:53:9:53:11 | ** ... | provenance | |
| funcsLocal.c:52:8:52:11 | *call to gets | funcsLocal.c:52:2:52:16 | *... = ... | provenance | |
| funcsLocal.c:57:2:57:14 | ... = ... | funcsLocal.c:58:9:58:10 | *e1 | provenance | |
nodes
| funcsLocal.c:16:8:16:9 | fread output argument | semmle.label | fread output argument |
| funcsLocal.c:17:9:17:10 | *i1 | semmle.label | *i1 |
| funcsLocal.c:26:8:26:9 | fgets output argument | semmle.label | fgets output argument |
| funcsLocal.c:27:9:27:10 | *i3 | semmle.label | *i3 |
| funcsLocal.c:31:13:31:17 | *call to fgets | semmle.label | *call to fgets |
| funcsLocal.c:31:13:31:17 | *call to fgets | semmle.label | *call to fgets |
| funcsLocal.c:32:9:32:10 | *i4 | semmle.label | *i4 |
| funcsLocal.c:36:7:36:8 | gets output argument | semmle.label | gets output argument |
| funcsLocal.c:37:9:37:10 | *i5 | semmle.label | *i5 |
| funcsLocal.c:41:13:41:16 | *call to gets | semmle.label | *call to gets |
| funcsLocal.c:41:13:41:16 | *call to gets | semmle.label | *call to gets |
| funcsLocal.c:42:9:42:10 | *i6 | semmle.label | *i6 |
| funcsLocal.c:46:7:46:9 | gets output argument | semmle.label | gets output argument |
| funcsLocal.c:47:9:47:11 | ** ... | semmle.label | ** ... |
| funcsLocal.c:52:2:52:16 | *... = ... | semmle.label | *... = ... |
| funcsLocal.c:52:8:52:11 | *call to gets | semmle.label | *call to gets |
| funcsLocal.c:53:9:53:11 | ** ... | semmle.label | ** ... |
| funcsLocal.c:57:10:57:14 | access to array | semmle.label | access to array |
| funcsLocal.c:57:2:57:14 | ... = ... | semmle.label | ... = ... |
| funcsLocal.c:58:9:58:10 | *e1 | semmle.label | *e1 |
subpaths
#select

View File

@@ -7,10 +7,10 @@ edges
| globalVars.c:9:7:9:11 | **copy2 | globalVars.c:41:15:41:19 | *copy2 | provenance | |
| globalVars.c:9:7:9:11 | **copy2 | globalVars.c:41:15:41:19 | *copy2 | provenance | |
| globalVars.c:9:7:9:11 | **copy2 | globalVars.c:50:9:50:13 | *copy2 | provenance | |
| globalVars.c:11:22:11:25 | **argv | globalVars.c:12:9:12:15 | *access to array | provenance | |
| globalVars.c:12:9:12:15 | *access to array | globalVars.c:8:7:8:10 | **copy | provenance | |
| globalVars.c:15:21:15:23 | *val | globalVars.c:16:10:16:12 | *val | provenance | |
| globalVars.c:16:10:16:12 | *val | globalVars.c:9:7:9:11 | **copy2 | provenance | |
| globalVars.c:11:22:11:25 | **argv | globalVars.c:12:2:12:15 | *... = ... | provenance | |
| globalVars.c:12:2:12:15 | *... = ... | globalVars.c:8:7:8:10 | **copy | provenance | |
| globalVars.c:15:21:15:23 | *val | globalVars.c:16:2:16:12 | *... = ... | provenance | |
| globalVars.c:16:2:16:12 | *... = ... | globalVars.c:9:7:9:11 | **copy2 | provenance | |
| globalVars.c:19:25:19:27 | *str | globalVars.c:19:25:19:27 | *str | provenance | |
| globalVars.c:23:27:23:30 | **argv | globalVars.c:24:11:24:14 | **argv | provenance | |
| globalVars.c:24:11:24:14 | **argv | globalVars.c:11:22:11:25 | **argv | provenance | |
@@ -25,9 +25,9 @@ nodes
| globalVars.c:8:7:8:10 | **copy | semmle.label | **copy |
| globalVars.c:9:7:9:11 | **copy2 | semmle.label | **copy2 |
| globalVars.c:11:22:11:25 | **argv | semmle.label | **argv |
| globalVars.c:12:9:12:15 | *access to array | semmle.label | *access to array |
| globalVars.c:12:2:12:15 | *... = ... | semmle.label | *... = ... |
| globalVars.c:15:21:15:23 | *val | semmle.label | *val |
| globalVars.c:16:10:16:12 | *val | semmle.label | *val |
| globalVars.c:16:2:16:12 | *... = ... | semmle.label | *... = ... |
| globalVars.c:19:25:19:27 | *str | semmle.label | *str |
| globalVars.c:19:25:19:27 | *str | semmle.label | *str |
| globalVars.c:23:27:23:30 | **argv | semmle.label | **argv |

View File

@@ -1,49 +1,49 @@
edges
| ifs.c:16:27:16:30 | **argv | ifs.c:61:8:61:14 | *access to array | provenance | |
| ifs.c:16:27:16:30 | **argv | ifs.c:68:8:68:14 | *access to array | provenance | |
| ifs.c:16:27:16:30 | **argv | ifs.c:74:8:74:14 | *access to array | provenance | |
| ifs.c:16:27:16:30 | **argv | ifs.c:80:8:80:14 | *access to array | provenance | |
| ifs.c:16:27:16:30 | **argv | ifs.c:86:8:86:14 | *access to array | provenance | |
| ifs.c:16:27:16:30 | **argv | ifs.c:92:8:92:14 | *access to array | provenance | |
| ifs.c:16:27:16:30 | **argv | ifs.c:98:8:98:14 | *access to array | provenance | |
| ifs.c:16:27:16:30 | **argv | ifs.c:105:8:105:14 | *access to array | provenance | |
| ifs.c:16:27:16:30 | **argv | ifs.c:111:8:111:14 | *access to array | provenance | |
| ifs.c:16:27:16:30 | **argv | ifs.c:117:8:117:14 | *access to array | provenance | |
| ifs.c:16:27:16:30 | **argv | ifs.c:123:8:123:14 | *access to array | provenance | |
| ifs.c:61:8:61:14 | *access to array | ifs.c:62:9:62:10 | *c7 | provenance | |
| ifs.c:68:8:68:14 | *access to array | ifs.c:69:9:69:10 | *c8 | provenance | |
| ifs.c:74:8:74:14 | *access to array | ifs.c:75:9:75:10 | *i1 | provenance | |
| ifs.c:80:8:80:14 | *access to array | ifs.c:81:9:81:10 | *i2 | provenance | |
| ifs.c:86:8:86:14 | *access to array | ifs.c:87:9:87:10 | *i3 | provenance | |
| ifs.c:92:8:92:14 | *access to array | ifs.c:93:9:93:10 | *i4 | provenance | |
| ifs.c:98:8:98:14 | *access to array | ifs.c:99:9:99:10 | *i5 | provenance | |
| ifs.c:105:8:105:14 | *access to array | ifs.c:106:9:106:10 | *i6 | provenance | |
| ifs.c:111:8:111:14 | *access to array | ifs.c:112:9:112:10 | *i7 | provenance | |
| ifs.c:117:8:117:14 | *access to array | ifs.c:118:9:118:10 | *i8 | provenance | |
| ifs.c:123:8:123:14 | *access to array | ifs.c:124:9:124:10 | *i9 | provenance | |
| ifs.c:16:27:16:30 | **argv | ifs.c:61:3:61:14 | *... = ... | provenance | |
| ifs.c:16:27:16:30 | **argv | ifs.c:68:3:68:14 | *... = ... | provenance | |
| ifs.c:16:27:16:30 | **argv | ifs.c:74:3:74:14 | *... = ... | provenance | |
| ifs.c:16:27:16:30 | **argv | ifs.c:80:3:80:14 | *... = ... | provenance | |
| ifs.c:16:27:16:30 | **argv | ifs.c:86:3:86:14 | *... = ... | provenance | |
| ifs.c:16:27:16:30 | **argv | ifs.c:92:3:92:14 | *... = ... | provenance | |
| ifs.c:16:27:16:30 | **argv | ifs.c:98:3:98:14 | *... = ... | provenance | |
| ifs.c:16:27:16:30 | **argv | ifs.c:105:3:105:14 | *... = ... | provenance | |
| ifs.c:16:27:16:30 | **argv | ifs.c:111:3:111:14 | *... = ... | provenance | |
| ifs.c:16:27:16:30 | **argv | ifs.c:117:3:117:14 | *... = ... | provenance | |
| ifs.c:16:27:16:30 | **argv | ifs.c:123:3:123:14 | *... = ... | provenance | |
| ifs.c:61:3:61:14 | *... = ... | ifs.c:62:9:62:10 | *c7 | provenance | |
| ifs.c:68:3:68:14 | *... = ... | ifs.c:69:9:69:10 | *c8 | provenance | |
| ifs.c:74:3:74:14 | *... = ... | ifs.c:75:9:75:10 | *i1 | provenance | |
| ifs.c:80:3:80:14 | *... = ... | ifs.c:81:9:81:10 | *i2 | provenance | |
| ifs.c:86:3:86:14 | *... = ... | ifs.c:87:9:87:10 | *i3 | provenance | |
| ifs.c:92:3:92:14 | *... = ... | ifs.c:93:9:93:10 | *i4 | provenance | |
| ifs.c:98:3:98:14 | *... = ... | ifs.c:99:9:99:10 | *i5 | provenance | |
| ifs.c:105:3:105:14 | *... = ... | ifs.c:106:9:106:10 | *i6 | provenance | |
| ifs.c:111:3:111:14 | *... = ... | ifs.c:112:9:112:10 | *i7 | provenance | |
| ifs.c:117:3:117:14 | *... = ... | ifs.c:118:9:118:10 | *i8 | provenance | |
| ifs.c:123:3:123:14 | *... = ... | ifs.c:124:9:124:10 | *i9 | provenance | |
nodes
| ifs.c:16:27:16:30 | **argv | semmle.label | **argv |
| ifs.c:61:8:61:14 | *access to array | semmle.label | *access to array |
| ifs.c:61:3:61:14 | *... = ... | semmle.label | *... = ... |
| ifs.c:62:9:62:10 | *c7 | semmle.label | *c7 |
| ifs.c:68:8:68:14 | *access to array | semmle.label | *access to array |
| ifs.c:68:3:68:14 | *... = ... | semmle.label | *... = ... |
| ifs.c:69:9:69:10 | *c8 | semmle.label | *c8 |
| ifs.c:74:8:74:14 | *access to array | semmle.label | *access to array |
| ifs.c:74:3:74:14 | *... = ... | semmle.label | *... = ... |
| ifs.c:75:9:75:10 | *i1 | semmle.label | *i1 |
| ifs.c:80:8:80:14 | *access to array | semmle.label | *access to array |
| ifs.c:80:3:80:14 | *... = ... | semmle.label | *... = ... |
| ifs.c:81:9:81:10 | *i2 | semmle.label | *i2 |
| ifs.c:86:8:86:14 | *access to array | semmle.label | *access to array |
| ifs.c:86:3:86:14 | *... = ... | semmle.label | *... = ... |
| ifs.c:87:9:87:10 | *i3 | semmle.label | *i3 |
| ifs.c:92:8:92:14 | *access to array | semmle.label | *access to array |
| ifs.c:92:3:92:14 | *... = ... | semmle.label | *... = ... |
| ifs.c:93:9:93:10 | *i4 | semmle.label | *i4 |
| ifs.c:98:8:98:14 | *access to array | semmle.label | *access to array |
| ifs.c:98:3:98:14 | *... = ... | semmle.label | *... = ... |
| ifs.c:99:9:99:10 | *i5 | semmle.label | *i5 |
| ifs.c:105:8:105:14 | *access to array | semmle.label | *access to array |
| ifs.c:105:3:105:14 | *... = ... | semmle.label | *... = ... |
| ifs.c:106:9:106:10 | *i6 | semmle.label | *i6 |
| ifs.c:111:8:111:14 | *access to array | semmle.label | *access to array |
| ifs.c:111:3:111:14 | *... = ... | semmle.label | *... = ... |
| ifs.c:112:9:112:10 | *i7 | semmle.label | *i7 |
| ifs.c:117:8:117:14 | *access to array | semmle.label | *access to array |
| ifs.c:117:3:117:14 | *... = ... | semmle.label | *... = ... |
| ifs.c:118:9:118:10 | *i8 | semmle.label | *i8 |
| ifs.c:123:8:123:14 | *access to array | semmle.label | *access to array |
| ifs.c:123:3:123:14 | *... = ... | semmle.label | *... = ... |
| ifs.c:124:9:124:10 | *i9 | semmle.label | *i9 |
subpaths
#select

View File

@@ -1,26 +1,20 @@
edges
| examples.cpp:22:12:22:33 | ... ? ... : ... | examples.cpp:25:31:25:34 | data | provenance | |
| examples.cpp:22:26:22:33 | ... - ... | examples.cpp:22:12:22:33 | ... ? ... : ... | provenance | |
| examples.cpp:22:26:22:33 | ... ^ ... | examples.cpp:22:12:22:33 | ... ? ... : ... | provenance | |
| examples.cpp:22:26:22:33 | call to rand | examples.cpp:22:26:22:33 | ... - ... | provenance | |
| examples.cpp:22:26:22:33 | call to rand | examples.cpp:22:26:22:33 | ... - ... | provenance | |
| examples.cpp:22:26:22:33 | call to rand | examples.cpp:22:26:22:33 | ... - ... | provenance | |
| examples.cpp:22:26:22:33 | call to rand | examples.cpp:22:26:22:33 | ... ^ ... | provenance | |
| examples.cpp:22:26:22:33 | call to rand | examples.cpp:22:26:22:33 | ... ^ ... | provenance | |
| examples.cpp:22:26:22:33 | call to rand | examples.cpp:22:26:22:33 | ... ^ ... | provenance | |
| examples.cpp:35:12:35:33 | ... ? ... : ... | examples.cpp:38:9:38:12 | data | provenance | |
| examples.cpp:35:26:35:33 | ... - ... | examples.cpp:35:12:35:33 | ... ? ... : ... | provenance | |
| examples.cpp:35:26:35:33 | ... ^ ... | examples.cpp:35:12:35:33 | ... ? ... : ... | provenance | |
| examples.cpp:35:26:35:33 | call to rand | examples.cpp:35:26:35:33 | ... - ... | provenance | |
| examples.cpp:35:26:35:33 | call to rand | examples.cpp:35:26:35:33 | ... - ... | provenance | |
| examples.cpp:35:26:35:33 | call to rand | examples.cpp:35:26:35:33 | ... - ... | provenance | |
| examples.cpp:35:26:35:33 | call to rand | examples.cpp:35:26:35:33 | ... ^ ... | provenance | |
| examples.cpp:35:26:35:33 | call to rand | examples.cpp:35:26:35:33 | ... ^ ... | provenance | |
| examples.cpp:35:26:35:33 | call to rand | examples.cpp:35:26:35:33 | ... ^ ... | provenance | |
| examples.cpp:22:5:22:33 | ... = ... | examples.cpp:25:31:25:34 | data | provenance | |
| examples.cpp:22:26:22:33 | call to rand | examples.cpp:22:5:22:33 | ... = ... | provenance | |
| examples.cpp:22:26:22:33 | call to rand | examples.cpp:22:5:22:33 | ... = ... | provenance | |
| examples.cpp:22:26:22:33 | call to rand | examples.cpp:22:5:22:33 | ... = ... | provenance | |
| examples.cpp:22:26:22:33 | call to rand | examples.cpp:22:5:22:33 | ... = ... | provenance | |
| examples.cpp:22:26:22:33 | call to rand | examples.cpp:22:5:22:33 | ... = ... | provenance | |
| examples.cpp:22:26:22:33 | call to rand | examples.cpp:22:5:22:33 | ... = ... | provenance | |
| examples.cpp:35:5:35:33 | ... = ... | examples.cpp:38:9:38:12 | data | provenance | |
| examples.cpp:35:26:35:33 | call to rand | examples.cpp:35:5:35:33 | ... = ... | provenance | |
| examples.cpp:35:26:35:33 | call to rand | examples.cpp:35:5:35:33 | ... = ... | provenance | |
| examples.cpp:35:26:35:33 | call to rand | examples.cpp:35:5:35:33 | ... = ... | provenance | |
| examples.cpp:35:26:35:33 | call to rand | examples.cpp:35:5:35:33 | ... = ... | provenance | |
| examples.cpp:35:26:35:33 | call to rand | examples.cpp:35:5:35:33 | ... = ... | provenance | |
| examples.cpp:35:26:35:33 | call to rand | examples.cpp:35:5:35:33 | ... = ... | provenance | |
nodes
| examples.cpp:22:12:22:33 | ... ? ... : ... | semmle.label | ... ? ... : ... |
| examples.cpp:22:26:22:33 | ... - ... | semmle.label | ... - ... |
| examples.cpp:22:26:22:33 | ... ^ ... | semmle.label | ... ^ ... |
| examples.cpp:22:5:22:33 | ... = ... | semmle.label | ... = ... |
| examples.cpp:22:26:22:33 | call to rand | semmle.label | call to rand |
| examples.cpp:22:26:22:33 | call to rand | semmle.label | call to rand |
| examples.cpp:22:26:22:33 | call to rand | semmle.label | call to rand |
@@ -28,9 +22,7 @@ nodes
| examples.cpp:22:26:22:33 | call to rand | semmle.label | call to rand |
| examples.cpp:22:26:22:33 | call to rand | semmle.label | call to rand |
| examples.cpp:25:31:25:34 | data | semmle.label | data |
| examples.cpp:35:12:35:33 | ... ? ... : ... | semmle.label | ... ? ... : ... |
| examples.cpp:35:26:35:33 | ... - ... | semmle.label | ... - ... |
| examples.cpp:35:26:35:33 | ... ^ ... | semmle.label | ... ^ ... |
| examples.cpp:35:5:35:33 | ... = ... | semmle.label | ... = ... |
| examples.cpp:35:26:35:33 | call to rand | semmle.label | call to rand |
| examples.cpp:35:26:35:33 | call to rand | semmle.label | call to rand |
| examples.cpp:35:26:35:33 | call to rand | semmle.label | call to rand |

View File

@@ -1,107 +1,144 @@
edges
| test.c:18:13:18:16 | call to rand | test.c:18:13:18:16 | call to rand | provenance | |
| test.c:18:13:18:16 | call to rand | test.c:21:17:21:17 | r | provenance | |
| test.c:34:13:34:18 | call to rand | test.c:34:13:34:18 | call to rand | provenance | |
| test.c:34:13:34:18 | call to rand | test.c:35:5:35:5 | r | provenance | |
| test.c:44:13:44:16 | call to rand | test.c:44:13:44:16 | call to rand | provenance | |
| test.c:44:13:44:16 | call to rand | test.c:45:5:45:5 | r | provenance | |
| test.c:75:13:75:19 | ... ^ ... | test.c:77:9:77:9 | r | provenance | |
| test.c:75:13:75:19 | call to rand | test.c:75:13:75:19 | ... ^ ... | provenance | |
| test.c:75:13:75:19 | call to rand | test.c:75:13:75:19 | ... ^ ... | provenance | |
| test.c:81:14:81:17 | call to rand | test.c:81:14:81:28 | ... ^ ... | provenance | |
| test.c:81:14:81:28 | ... ^ ... | test.c:83:9:83:9 | r | provenance | |
| test.c:81:23:81:26 | call to rand | test.c:81:14:81:28 | ... ^ ... | provenance | |
| test.c:75:13:75:19 | (...) | test.c:77:9:77:9 | r | provenance | |
| test.c:75:13:75:19 | call to rand | test.c:75:13:75:19 | (...) | provenance | |
| test.c:75:13:75:19 | call to rand | test.c:75:13:75:19 | (...) | provenance | |
| test.c:81:13:81:29 | (...) | test.c:83:9:83:9 | r | provenance | |
| test.c:81:14:81:17 | call to rand | test.c:81:13:81:29 | (...) | provenance | |
| test.c:81:23:81:26 | call to rand | test.c:81:13:81:29 | (...) | provenance | |
| test.c:125:13:125:16 | call to rand | test.c:125:13:125:16 | call to rand | provenance | |
| test.c:125:13:125:16 | call to rand | test.c:127:9:127:9 | r | provenance | |
| test.c:131:13:131:16 | call to rand | test.c:131:13:131:16 | call to rand | provenance | |
| test.c:131:13:131:16 | call to rand | test.c:133:5:133:5 | r | provenance | |
| test.c:137:13:137:16 | call to rand | test.c:137:13:137:16 | call to rand | provenance | |
| test.c:137:13:137:16 | call to rand | test.c:139:10:139:10 | r | provenance | |
| test.c:155:22:155:27 | call to rand | test.c:157:9:157:9 | r | provenance | |
| test.c:155:22:155:27 | (unsigned int)... | test.c:157:9:157:9 | r | provenance | |
| test.c:155:22:155:27 | call to rand | test.c:155:22:155:27 | (unsigned int)... | provenance | |
| test.cpp:6:5:6:12 | *get_rand | test.cpp:24:11:24:18 | call to get_rand | provenance | |
| test.cpp:8:9:8:12 | call to rand | test.cpp:6:5:6:12 | *get_rand | provenance | |
| test.cpp:8:9:8:12 | call to rand | test.cpp:8:9:8:12 | call to rand | provenance | |
| test.cpp:11:21:11:24 | *dest | test.cpp:30:13:30:14 | get_rand2 output argument | provenance | |
| test.cpp:13:10:13:13 | call to rand | test.cpp:11:21:11:24 | *dest | provenance | |
| test.cpp:13:2:13:15 | ... = ... | test.cpp:11:21:11:24 | *dest | provenance | |
| test.cpp:13:10:13:13 | call to rand | test.cpp:13:2:13:15 | ... = ... | provenance | |
| test.cpp:16:21:16:24 | *dest | test.cpp:36:13:36:13 | get_rand3 output argument | provenance | |
| test.cpp:18:9:18:12 | call to rand | test.cpp:16:21:16:24 | *dest | provenance | |
| test.cpp:18:2:18:14 | ... = ... | test.cpp:16:21:16:24 | *dest | provenance | |
| test.cpp:18:9:18:12 | call to rand | test.cpp:18:2:18:14 | ... = ... | provenance | |
| test.cpp:24:11:24:18 | call to get_rand | test.cpp:24:11:24:18 | call to get_rand | provenance | |
| test.cpp:24:11:24:18 | call to get_rand | test.cpp:25:7:25:7 | r | provenance | |
| test.cpp:30:13:30:14 | get_rand2 output argument | test.cpp:31:7:31:7 | r | provenance | |
| test.cpp:36:13:36:13 | get_rand3 output argument | test.cpp:37:7:37:7 | r | provenance | |
| test.cpp:86:10:86:13 | call to rand | test.cpp:86:10:86:13 | call to rand | provenance | |
| test.cpp:86:10:86:13 | call to rand | test.cpp:90:10:90:10 | x | provenance | |
| test.cpp:98:10:98:13 | call to rand | test.cpp:98:10:98:13 | call to rand | provenance | |
| test.cpp:98:10:98:13 | call to rand | test.cpp:102:10:102:10 | x | provenance | |
| test.cpp:137:10:137:13 | call to rand | test.cpp:143:7:143:7 | x | provenance | |
| test.cpp:143:7:143:7 | x | test.cpp:146:9:146:9 | y | provenance | |
| test.cpp:137:10:137:13 | call to rand | test.cpp:137:10:137:13 | call to rand | provenance | |
| test.cpp:137:10:137:13 | call to rand | test.cpp:143:3:143:7 | ... = ... | provenance | |
| test.cpp:143:3:143:7 | ... = ... | test.cpp:146:9:146:9 | y | provenance | |
| test.cpp:151:10:151:13 | call to rand | test.cpp:151:10:151:13 | call to rand | provenance | |
| test.cpp:151:10:151:13 | call to rand | test.cpp:153:10:153:15 | ... - ... | provenance | |
| test.cpp:153:10:153:15 | ... - ... | test.cpp:154:10:154:10 | b | provenance | |
| test.cpp:169:11:169:14 | call to rand | test.cpp:170:13:170:13 | x | provenance | |
| test.cpp:170:13:170:13 | x | test.cpp:171:11:171:16 | y | provenance | |
| test.cpp:189:10:189:13 | call to rand | test.cpp:195:7:195:11 | ... * ... | provenance | |
| test.cpp:169:11:169:14 | call to rand | test.cpp:169:11:169:14 | call to rand | provenance | |
| test.cpp:169:11:169:14 | call to rand | test.cpp:170:13:170:13 | (float)... | provenance | |
| test.cpp:170:13:170:13 | (float)... | test.cpp:171:11:171:16 | y | provenance | |
| test.cpp:189:10:189:13 | call to rand | test.cpp:189:10:189:13 | call to rand | provenance | |
| test.cpp:189:10:189:13 | call to rand | test.cpp:195:3:195:11 | ... = ... | provenance | |
| test.cpp:189:10:189:13 | call to rand | test.cpp:198:3:198:11 | ... = ... | provenance | |
| test.cpp:189:10:189:13 | call to rand | test.cpp:198:7:198:7 | x | provenance | |
| test.cpp:189:10:189:13 | call to rand | test.cpp:198:7:198:11 | ... * ... | provenance | |
| test.cpp:190:10:190:13 | call to rand | test.cpp:190:10:190:13 | call to rand | provenance | |
| test.cpp:190:10:190:13 | call to rand | test.cpp:204:3:204:11 | ... = ... | provenance | |
| test.cpp:190:10:190:13 | call to rand | test.cpp:204:7:204:7 | y | provenance | |
| test.cpp:190:10:190:13 | call to rand | test.cpp:204:7:204:11 | ... * ... | provenance | |
| test.cpp:190:10:190:13 | call to rand | test.cpp:207:7:207:11 | ... * ... | provenance | |
| test.cpp:195:7:195:11 | ... * ... | test.cpp:196:7:196:7 | x | provenance | |
| test.cpp:198:7:198:11 | ... * ... | test.cpp:199:7:199:7 | x | provenance | |
| test.cpp:204:7:204:11 | ... * ... | test.cpp:205:7:205:7 | y | provenance | |
| test.cpp:207:7:207:11 | ... * ... | test.cpp:208:7:208:7 | y | provenance | |
| test.cpp:190:10:190:13 | call to rand | test.cpp:207:3:207:11 | ... = ... | provenance | |
| test.cpp:195:3:195:11 | ... = ... | test.cpp:196:7:196:7 | x | provenance | |
| test.cpp:198:3:198:11 | ... = ... | test.cpp:199:7:199:7 | x | provenance | |
| test.cpp:204:3:204:11 | ... = ... | test.cpp:205:7:205:7 | y | provenance | |
| test.cpp:207:3:207:11 | ... = ... | test.cpp:208:7:208:7 | y | provenance | |
| test.cpp:215:11:215:14 | call to rand | test.cpp:215:11:215:14 | call to rand | provenance | |
| test.cpp:215:11:215:14 | call to rand | test.cpp:219:8:219:8 | x | provenance | |
nodes
| test.c:18:13:18:16 | call to rand | semmle.label | call to rand |
| test.c:18:13:18:16 | call to rand | semmle.label | call to rand |
| test.c:21:17:21:17 | r | semmle.label | r |
| test.c:34:13:34:18 | call to rand | semmle.label | call to rand |
| test.c:34:13:34:18 | call to rand | semmle.label | call to rand |
| test.c:35:5:35:5 | r | semmle.label | r |
| test.c:44:13:44:16 | call to rand | semmle.label | call to rand |
| test.c:44:13:44:16 | call to rand | semmle.label | call to rand |
| test.c:45:5:45:5 | r | semmle.label | r |
| test.c:75:13:75:19 | ... ^ ... | semmle.label | ... ^ ... |
| test.c:75:13:75:19 | (...) | semmle.label | (...) |
| test.c:75:13:75:19 | call to rand | semmle.label | call to rand |
| test.c:75:13:75:19 | call to rand | semmle.label | call to rand |
| test.c:77:9:77:9 | r | semmle.label | r |
| test.c:81:13:81:29 | (...) | semmle.label | (...) |
| test.c:81:14:81:17 | call to rand | semmle.label | call to rand |
| test.c:81:14:81:28 | ... ^ ... | semmle.label | ... ^ ... |
| test.c:81:23:81:26 | call to rand | semmle.label | call to rand |
| test.c:83:9:83:9 | r | semmle.label | r |
| test.c:125:13:125:16 | call to rand | semmle.label | call to rand |
| test.c:125:13:125:16 | call to rand | semmle.label | call to rand |
| test.c:127:9:127:9 | r | semmle.label | r |
| test.c:131:13:131:16 | call to rand | semmle.label | call to rand |
| test.c:131:13:131:16 | call to rand | semmle.label | call to rand |
| test.c:133:5:133:5 | r | semmle.label | r |
| test.c:137:13:137:16 | call to rand | semmle.label | call to rand |
| test.c:137:13:137:16 | call to rand | semmle.label | call to rand |
| test.c:139:10:139:10 | r | semmle.label | r |
| test.c:155:22:155:27 | (unsigned int)... | semmle.label | (unsigned int)... |
| test.c:155:22:155:27 | call to rand | semmle.label | call to rand |
| test.c:157:9:157:9 | r | semmle.label | r |
| test.cpp:6:5:6:12 | *get_rand | semmle.label | *get_rand |
| test.cpp:8:9:8:12 | call to rand | semmle.label | call to rand |
| test.cpp:8:9:8:12 | call to rand | semmle.label | call to rand |
| test.cpp:11:21:11:24 | *dest | semmle.label | *dest |
| test.cpp:13:2:13:15 | ... = ... | semmle.label | ... = ... |
| test.cpp:13:10:13:13 | call to rand | semmle.label | call to rand |
| test.cpp:16:21:16:24 | *dest | semmle.label | *dest |
| test.cpp:18:2:18:14 | ... = ... | semmle.label | ... = ... |
| test.cpp:18:9:18:12 | call to rand | semmle.label | call to rand |
| test.cpp:24:11:24:18 | call to get_rand | semmle.label | call to get_rand |
| test.cpp:24:11:24:18 | call to get_rand | semmle.label | call to get_rand |
| test.cpp:25:7:25:7 | r | semmle.label | r |
| test.cpp:30:13:30:14 | get_rand2 output argument | semmle.label | get_rand2 output argument |
| test.cpp:31:7:31:7 | r | semmle.label | r |
| test.cpp:36:13:36:13 | get_rand3 output argument | semmle.label | get_rand3 output argument |
| test.cpp:37:7:37:7 | r | semmle.label | r |
| test.cpp:86:10:86:13 | call to rand | semmle.label | call to rand |
| test.cpp:86:10:86:13 | call to rand | semmle.label | call to rand |
| test.cpp:90:10:90:10 | x | semmle.label | x |
| test.cpp:98:10:98:13 | call to rand | semmle.label | call to rand |
| test.cpp:98:10:98:13 | call to rand | semmle.label | call to rand |
| test.cpp:102:10:102:10 | x | semmle.label | x |
| test.cpp:137:10:137:13 | call to rand | semmle.label | call to rand |
| test.cpp:143:7:143:7 | x | semmle.label | x |
| test.cpp:137:10:137:13 | call to rand | semmle.label | call to rand |
| test.cpp:143:3:143:7 | ... = ... | semmle.label | ... = ... |
| test.cpp:146:9:146:9 | y | semmle.label | y |
| test.cpp:151:10:151:13 | call to rand | semmle.label | call to rand |
| test.cpp:151:10:151:13 | call to rand | semmle.label | call to rand |
| test.cpp:153:10:153:15 | ... - ... | semmle.label | ... - ... |
| test.cpp:154:10:154:10 | b | semmle.label | b |
| test.cpp:169:11:169:14 | call to rand | semmle.label | call to rand |
| test.cpp:170:13:170:13 | x | semmle.label | x |
| test.cpp:169:11:169:14 | call to rand | semmle.label | call to rand |
| test.cpp:170:13:170:13 | (float)... | semmle.label | (float)... |
| test.cpp:171:11:171:16 | y | semmle.label | y |
| test.cpp:189:10:189:13 | call to rand | semmle.label | call to rand |
| test.cpp:189:10:189:13 | call to rand | semmle.label | call to rand |
| test.cpp:190:10:190:13 | call to rand | semmle.label | call to rand |
| test.cpp:195:7:195:11 | ... * ... | semmle.label | ... * ... |
| test.cpp:190:10:190:13 | call to rand | semmle.label | call to rand |
| test.cpp:195:3:195:11 | ... = ... | semmle.label | ... = ... |
| test.cpp:196:7:196:7 | x | semmle.label | x |
| test.cpp:198:3:198:11 | ... = ... | semmle.label | ... = ... |
| test.cpp:198:7:198:7 | x | semmle.label | x |
| test.cpp:198:7:198:11 | ... * ... | semmle.label | ... * ... |
| test.cpp:199:7:199:7 | x | semmle.label | x |
| test.cpp:204:3:204:11 | ... = ... | semmle.label | ... = ... |
| test.cpp:204:7:204:7 | y | semmle.label | y |
| test.cpp:204:7:204:11 | ... * ... | semmle.label | ... * ... |
| test.cpp:205:7:205:7 | y | semmle.label | y |
| test.cpp:207:7:207:11 | ... * ... | semmle.label | ... * ... |
| test.cpp:207:3:207:11 | ... = ... | semmle.label | ... = ... |
| test.cpp:208:7:208:7 | y | semmle.label | y |
| test.cpp:215:11:215:14 | call to rand | semmle.label | call to rand |
| test.cpp:215:11:215:14 | call to rand | semmle.label | call to rand |
| test.cpp:219:8:219:8 | x | semmle.label | x |
subpaths
#select

View File

@@ -17,15 +17,15 @@ edges
| test.cpp:211:9:211:42 | ... * ... | test.cpp:209:8:209:23 | *get_tainted_size | provenance | |
| test.cpp:211:14:211:27 | *call to getenv | test.cpp:211:9:211:42 | ... * ... | provenance | TaintFunction |
| test.cpp:230:21:230:21 | s | test.cpp:231:21:231:21 | s | provenance | |
| test.cpp:237:19:237:52 | ... * ... | test.cpp:239:9:239:18 | local_size | provenance | |
| test.cpp:237:19:237:52 | ... * ... | test.cpp:245:11:245:20 | local_size | provenance | |
| test.cpp:237:19:237:52 | ... * ... | test.cpp:247:10:247:19 | local_size | provenance | |
| test.cpp:237:24:237:37 | *call to getenv | test.cpp:237:19:237:52 | ... * ... | provenance | TaintFunction |
| test.cpp:237:19:237:52 | (int)... | test.cpp:239:9:239:18 | local_size | provenance | |
| test.cpp:237:19:237:52 | (int)... | test.cpp:245:11:245:20 | local_size | provenance | |
| test.cpp:237:19:237:52 | (int)... | test.cpp:247:10:247:19 | local_size | provenance | |
| test.cpp:237:24:237:37 | *call to getenv | test.cpp:237:19:237:52 | (int)... | provenance | TaintFunction |
| test.cpp:247:10:247:19 | local_size | test.cpp:230:21:230:21 | s | provenance | |
| test.cpp:250:20:250:27 | *out_size | test.cpp:289:17:289:20 | get_size output argument | provenance | |
| test.cpp:250:20:250:27 | *out_size | test.cpp:305:18:305:21 | get_size output argument | provenance | |
| test.cpp:251:13:251:16 | call to atoi | test.cpp:250:20:250:27 | *out_size | provenance | |
| test.cpp:251:18:251:31 | *call to getenv | test.cpp:251:13:251:16 | call to atoi | provenance | TaintFunction |
| test.cpp:251:2:251:32 | ... = ... | test.cpp:250:20:250:27 | *out_size | provenance | |
| test.cpp:251:18:251:31 | *call to getenv | test.cpp:251:2:251:32 | ... = ... | provenance | TaintFunction |
| test.cpp:259:15:259:18 | call to atoi | test.cpp:263:11:263:29 | ... * ... | provenance | |
| test.cpp:259:20:259:33 | *call to getenv | test.cpp:259:15:259:18 | call to atoi | provenance | TaintFunction |
| test.cpp:289:17:289:20 | get_size output argument | test.cpp:291:11:291:28 | ... * ... | provenance | |
@@ -57,14 +57,14 @@ nodes
| test.cpp:211:14:211:27 | *call to getenv | semmle.label | *call to getenv |
| test.cpp:230:21:230:21 | s | semmle.label | s |
| test.cpp:231:21:231:21 | s | semmle.label | s |
| test.cpp:237:19:237:52 | ... * ... | semmle.label | ... * ... |
| test.cpp:237:19:237:52 | (int)... | semmle.label | (int)... |
| test.cpp:237:24:237:37 | *call to getenv | semmle.label | *call to getenv |
| test.cpp:239:9:239:18 | local_size | semmle.label | local_size |
| test.cpp:241:9:241:24 | call to get_tainted_size | semmle.label | call to get_tainted_size |
| test.cpp:245:11:245:20 | local_size | semmle.label | local_size |
| test.cpp:247:10:247:19 | local_size | semmle.label | local_size |
| test.cpp:250:20:250:27 | *out_size | semmle.label | *out_size |
| test.cpp:251:13:251:16 | call to atoi | semmle.label | call to atoi |
| test.cpp:251:2:251:32 | ... = ... | semmle.label | ... = ... |
| test.cpp:251:18:251:31 | *call to getenv | semmle.label | *call to getenv |
| test.cpp:259:15:259:18 | call to atoi | semmle.label | call to atoi |
| test.cpp:259:20:259:33 | *call to getenv | semmle.label | *call to getenv |

View File

@@ -1,57 +1,57 @@
edges
| test2.cpp:12:21:12:21 | v | test2.cpp:14:11:14:11 | v | provenance | |
| test2.cpp:25:22:25:23 | fscanf output argument | test2.cpp:26:11:26:11 | v | provenance | |
| test2.cpp:26:11:26:11 | v | test2.cpp:27:13:27:13 | v | provenance | |
| test2.cpp:25:22:25:23 | fscanf output argument | test2.cpp:27:13:27:13 | v | provenance | |
| test2.cpp:27:13:27:13 | v | test2.cpp:12:21:12:21 | v | provenance | |
| test2.cpp:36:9:36:14 | fgets output argument | test2.cpp:38:13:38:16 | call to atoi | provenance | TaintFunction |
| test2.cpp:38:13:38:16 | call to atoi | test2.cpp:39:3:39:18 | ... = ... | provenance | |
| test2.cpp:38:13:38:16 | call to atoi | test2.cpp:39:9:39:11 | num | provenance | |
| test2.cpp:38:13:38:16 | call to atoi | test2.cpp:39:9:39:18 | ... + ... | provenance | |
| test2.cpp:39:9:39:18 | ... + ... | test2.cpp:40:3:40:5 | num | provenance | |
| test2.cpp:39:3:39:18 | ... = ... | test2.cpp:40:3:40:5 | num | provenance | |
| test3.c:10:27:10:30 | **argv | test.c:11:24:11:27 | call to atoi | provenance | TaintFunction |
| test3.c:10:27:10:30 | **argv | test.c:41:12:41:15 | call to atoi | provenance | TaintFunction |
| test3.c:10:27:10:30 | **argv | test.c:51:12:51:15 | call to atoi | provenance | TaintFunction |
| test3.c:10:27:10:30 | **argv | test.c:41:5:41:24 | ... = ... | provenance | TaintFunction |
| test3.c:10:27:10:30 | **argv | test.c:51:5:51:24 | ... = ... | provenance | TaintFunction |
| test5.cpp:5:5:5:17 | *getTaintedInt | test5.cpp:17:6:17:18 | call to getTaintedInt | provenance | |
| test5.cpp:5:5:5:17 | *getTaintedInt | test5.cpp:18:6:18:18 | call to getTaintedInt | provenance | |
| test5.cpp:9:7:9:9 | gets output argument | test5.cpp:10:9:10:27 | call to strtoul | provenance | TaintFunction |
| test5.cpp:10:9:10:27 | call to strtoul | test5.cpp:5:5:5:17 | *getTaintedInt | provenance | |
| test5.cpp:18:6:18:18 | call to getTaintedInt | test5.cpp:19:6:19:6 | y | provenance | |
| test5.cpp:9:7:9:9 | gets output argument | test5.cpp:10:9:10:27 | (int)... | provenance | TaintFunction |
| test5.cpp:10:9:10:27 | (int)... | test5.cpp:5:5:5:17 | *getTaintedInt | provenance | |
| test5.cpp:18:2:18:20 | ... = ... | test5.cpp:19:6:19:6 | y | provenance | |
| test5.cpp:18:6:18:18 | call to getTaintedInt | test5.cpp:18:2:18:20 | ... = ... | provenance | |
| test.c:10:27:10:30 | **argv | test.c:11:24:11:27 | call to atoi | provenance | TaintFunction |
| test.c:10:27:10:30 | **argv | test.c:41:12:41:15 | call to atoi | provenance | TaintFunction |
| test.c:10:27:10:30 | **argv | test.c:51:12:51:15 | call to atoi | provenance | TaintFunction |
| test.c:10:27:10:30 | **argv | test.c:41:5:41:24 | ... = ... | provenance | TaintFunction |
| test.c:10:27:10:30 | **argv | test.c:51:5:51:24 | ... = ... | provenance | TaintFunction |
| test.c:11:24:11:27 | call to atoi | test.c:14:15:14:28 | maxConnections | provenance | |
| test.c:41:12:41:15 | call to atoi | test.c:44:7:44:10 | len2 | provenance | |
| test.c:41:12:41:15 | call to atoi | test.c:44:7:44:12 | ... -- | provenance | |
| test.c:41:5:41:24 | ... = ... | test.c:44:7:44:10 | len2 | provenance | |
| test.c:41:5:41:24 | ... = ... | test.c:44:7:44:12 | ... -- | provenance | |
| test.c:44:7:44:12 | ... -- | test.c:44:7:44:10 | len2 | provenance | |
| test.c:44:7:44:12 | ... -- | test.c:44:7:44:12 | ... -- | provenance | |
| test.c:51:12:51:15 | call to atoi | test.c:54:7:54:10 | len3 | provenance | |
| test.c:51:12:51:15 | call to atoi | test.c:54:7:54:12 | ... -- | provenance | |
| test.c:51:5:51:24 | ... = ... | test.c:54:7:54:10 | len3 | provenance | |
| test.c:51:5:51:24 | ... = ... | test.c:54:7:54:12 | ... -- | provenance | |
| test.c:54:7:54:12 | ... -- | test.c:54:7:54:10 | len3 | provenance | |
| test.c:54:7:54:12 | ... -- | test.c:54:7:54:12 | ... -- | provenance | |
nodes
| test2.cpp:12:21:12:21 | v | semmle.label | v |
| test2.cpp:14:11:14:11 | v | semmle.label | v |
| test2.cpp:25:22:25:23 | fscanf output argument | semmle.label | fscanf output argument |
| test2.cpp:26:11:26:11 | v | semmle.label | v |
| test2.cpp:27:13:27:13 | v | semmle.label | v |
| test2.cpp:36:9:36:14 | fgets output argument | semmle.label | fgets output argument |
| test2.cpp:38:13:38:16 | call to atoi | semmle.label | call to atoi |
| test2.cpp:39:3:39:18 | ... = ... | semmle.label | ... = ... |
| test2.cpp:39:9:39:11 | num | semmle.label | num |
| test2.cpp:39:9:39:18 | ... + ... | semmle.label | ... + ... |
| test2.cpp:40:3:40:5 | num | semmle.label | num |
| test3.c:10:27:10:30 | **argv | semmle.label | **argv |
| test5.cpp:5:5:5:17 | *getTaintedInt | semmle.label | *getTaintedInt |
| test5.cpp:9:7:9:9 | gets output argument | semmle.label | gets output argument |
| test5.cpp:10:9:10:27 | call to strtoul | semmle.label | call to strtoul |
| test5.cpp:10:9:10:27 | (int)... | semmle.label | (int)... |
| test5.cpp:17:6:17:18 | call to getTaintedInt | semmle.label | call to getTaintedInt |
| test5.cpp:18:2:18:20 | ... = ... | semmle.label | ... = ... |
| test5.cpp:18:6:18:18 | call to getTaintedInt | semmle.label | call to getTaintedInt |
| test5.cpp:19:6:19:6 | y | semmle.label | y |
| test.c:10:27:10:30 | **argv | semmle.label | **argv |
| test.c:11:24:11:27 | call to atoi | semmle.label | call to atoi |
| test.c:14:15:14:28 | maxConnections | semmle.label | maxConnections |
| test.c:41:12:41:15 | call to atoi | semmle.label | call to atoi |
| test.c:41:5:41:24 | ... = ... | semmle.label | ... = ... |
| test.c:44:7:44:10 | len2 | semmle.label | len2 |
| test.c:44:7:44:12 | ... -- | semmle.label | ... -- |
| test.c:51:12:51:15 | call to atoi | semmle.label | call to atoi |
| test.c:51:5:51:24 | ... = ... | semmle.label | ... = ... |
| test.c:54:7:54:10 | len3 | semmle.label | len3 |
| test.c:54:7:54:12 | ... -- | semmle.label | ... -- |
subpaths

View File

@@ -1,5 +1,6 @@
edges
| test.cpp:4:15:4:33 | call to malloc | test.cpp:5:15:5:22 | ... + ... | provenance | |
| test.cpp:4:15:4:33 | (char *)... | test.cpp:5:15:5:22 | ... + ... | provenance | |
| test.cpp:4:15:4:33 | call to malloc | test.cpp:4:15:4:33 | (char *)... | provenance | |
| test.cpp:5:15:5:22 | ... + ... | test.cpp:5:15:5:22 | ... + ... | provenance | |
| test.cpp:5:15:5:22 | ... + ... | test.cpp:6:14:6:15 | * ... | provenance | |
| test.cpp:5:15:5:22 | ... + ... | test.cpp:6:14:6:15 | * ... | provenance | |
@@ -8,8 +9,10 @@ edges
| test.cpp:5:15:5:22 | ... + ... | test.cpp:8:14:8:21 | * ... | provenance | |
| test.cpp:5:15:5:22 | ... + ... | test.cpp:8:14:8:21 | * ... | provenance | |
| test.cpp:6:14:6:15 | * ... | test.cpp:8:14:8:21 | * ... | provenance | |
| test.cpp:16:15:16:33 | call to malloc | test.cpp:20:14:20:21 | * ... | provenance | |
| test.cpp:28:15:28:37 | call to malloc | test.cpp:29:15:29:28 | ... + ... | provenance | |
| test.cpp:16:15:16:33 | (char *)... | test.cpp:20:14:20:21 | * ... | provenance | |
| test.cpp:16:15:16:33 | call to malloc | test.cpp:16:15:16:33 | (char *)... | provenance | |
| test.cpp:28:15:28:37 | (char *)... | test.cpp:29:15:29:28 | ... + ... | provenance | |
| test.cpp:28:15:28:37 | call to malloc | test.cpp:28:15:28:37 | (char *)... | provenance | |
| test.cpp:29:15:29:28 | ... + ... | test.cpp:29:15:29:28 | ... + ... | provenance | |
| test.cpp:29:15:29:28 | ... + ... | test.cpp:30:14:30:15 | * ... | provenance | |
| test.cpp:29:15:29:28 | ... + ... | test.cpp:30:14:30:15 | * ... | provenance | |
@@ -19,13 +22,17 @@ edges
| test.cpp:29:15:29:28 | ... + ... | test.cpp:32:14:32:21 | * ... | provenance | |
| test.cpp:30:14:30:15 | * ... | test.cpp:32:14:32:21 | * ... | provenance | |
| test.cpp:51:33:51:35 | *end | test.cpp:60:34:60:37 | mk_array output argument | provenance | |
| test.cpp:52:19:52:37 | call to malloc | test.cpp:53:12:53:23 | ... + ... | provenance | |
| test.cpp:53:12:53:23 | ... + ... | test.cpp:51:33:51:35 | *end | provenance | |
| test.cpp:52:19:52:37 | (char *)... | test.cpp:53:12:53:23 | ... + ... | provenance | |
| test.cpp:52:19:52:37 | call to malloc | test.cpp:52:19:52:37 | (char *)... | provenance | |
| test.cpp:53:5:53:23 | ... = ... | test.cpp:51:33:51:35 | *end | provenance | |
| test.cpp:53:12:53:23 | ... + ... | test.cpp:53:5:53:23 | ... = ... | provenance | |
| test.cpp:60:34:60:37 | mk_array output argument | test.cpp:67:9:67:14 | ... = ... | provenance | |
| test.cpp:205:15:205:33 | call to malloc | test.cpp:206:17:206:23 | ... + ... | provenance | |
| test.cpp:205:15:205:33 | (char *)... | test.cpp:206:17:206:23 | ... + ... | provenance | |
| test.cpp:205:15:205:33 | call to malloc | test.cpp:205:15:205:33 | (char *)... | provenance | |
| test.cpp:206:17:206:23 | ... + ... | test.cpp:206:17:206:23 | ... + ... | provenance | |
| test.cpp:206:17:206:23 | ... + ... | test.cpp:213:5:213:13 | ... = ... | provenance | |
| test.cpp:206:17:206:23 | ... + ... | test.cpp:213:5:213:13 | ... = ... | provenance | |
| test.cpp:260:13:260:24 | new[] | test.cpp:260:13:260:24 | new[] | provenance | |
| test.cpp:260:13:260:24 | new[] | test.cpp:261:14:261:21 | ... + ... | provenance | |
| test.cpp:261:14:261:21 | ... + ... | test.cpp:261:14:261:21 | ... + ... | provenance | |
| test.cpp:261:14:261:21 | ... + ... | test.cpp:264:13:264:14 | * ... | provenance | |
@@ -35,89 +42,109 @@ edges
| test.cpp:262:31:262:33 | *... ++ | test.cpp:264:13:264:14 | * ... | provenance | |
| test.cpp:262:31:262:33 | *... ++ | test.cpp:264:13:264:14 | * ... | provenance | |
| test.cpp:264:13:264:14 | * ... | test.cpp:262:31:262:33 | *... ++ | provenance | |
| test.cpp:270:13:270:24 | new[] | test.cpp:270:13:270:24 | new[] | provenance | |
| test.cpp:270:13:270:24 | new[] | test.cpp:271:14:271:21 | ... + ... | provenance | |
| test.cpp:271:14:271:21 | ... + ... | test.cpp:271:14:271:21 | ... + ... | provenance | |
| test.cpp:271:14:271:21 | ... + ... | test.cpp:274:5:274:10 | ... = ... | provenance | |
| test.cpp:271:14:271:21 | ... + ... | test.cpp:274:5:274:10 | ... = ... | provenance | |
| test.cpp:355:14:355:27 | new[] | test.cpp:355:14:355:27 | new[] | provenance | |
| test.cpp:355:14:355:27 | new[] | test.cpp:356:15:356:23 | ... + ... | provenance | |
| test.cpp:356:15:356:23 | ... + ... | test.cpp:356:15:356:23 | ... + ... | provenance | |
| test.cpp:356:15:356:23 | ... + ... | test.cpp:358:14:358:26 | * ... | provenance | |
| test.cpp:356:15:356:23 | ... + ... | test.cpp:358:14:358:26 | * ... | provenance | |
| test.cpp:356:15:356:23 | ... + ... | test.cpp:358:14:358:26 | * ... | provenance | |
| test.cpp:356:15:356:23 | ... + ... | test.cpp:358:14:358:26 | * ... | provenance | |
| test.cpp:356:15:356:23 | ... + ... | test.cpp:359:14:359:32 | * ... | provenance | |
| test.cpp:356:15:356:23 | ... + ... | test.cpp:359:14:359:32 | * ... | provenance | |
| test.cpp:358:14:358:26 | * ... | test.cpp:359:14:359:32 | * ... | provenance | |
| test.cpp:377:14:377:27 | new[] | test.cpp:377:14:377:27 | new[] | provenance | |
| test.cpp:377:14:377:27 | new[] | test.cpp:378:15:378:23 | ... + ... | provenance | |
| test.cpp:378:15:378:23 | ... + ... | test.cpp:378:15:378:23 | ... + ... | provenance | |
| test.cpp:378:15:378:23 | ... + ... | test.cpp:384:13:384:16 | * ... | provenance | |
| test.cpp:378:15:378:23 | ... + ... | test.cpp:384:13:384:16 | * ... | provenance | |
| test.cpp:410:14:410:27 | new[] | test.cpp:410:14:410:27 | new[] | provenance | |
| test.cpp:410:14:410:27 | new[] | test.cpp:411:15:411:23 | & ... | provenance | |
| test.cpp:410:14:410:27 | new[] | test.cpp:415:7:415:15 | ... = ... | provenance | |
| test.cpp:411:15:411:23 | & ... | test.cpp:411:15:411:23 | & ... | provenance | |
| test.cpp:411:15:411:23 | & ... | test.cpp:415:7:415:15 | ... = ... | provenance | |
| test.cpp:411:15:411:23 | & ... | test.cpp:415:7:415:15 | ... = ... | provenance | |
| test.cpp:421:14:421:27 | new[] | test.cpp:421:14:421:27 | new[] | provenance | |
| test.cpp:421:14:421:27 | new[] | test.cpp:422:15:422:23 | & ... | provenance | |
| test.cpp:421:14:421:27 | new[] | test.cpp:426:7:426:15 | ... = ... | provenance | |
| test.cpp:422:15:422:23 | & ... | test.cpp:422:15:422:23 | & ... | provenance | |
| test.cpp:422:15:422:23 | & ... | test.cpp:426:7:426:15 | ... = ... | provenance | |
| test.cpp:422:15:422:23 | & ... | test.cpp:426:7:426:15 | ... = ... | provenance | |
| test.cpp:432:14:432:27 | new[] | test.cpp:432:14:432:27 | new[] | provenance | |
| test.cpp:432:14:432:27 | new[] | test.cpp:433:15:433:23 | & ... | provenance | |
| test.cpp:432:14:432:27 | new[] | test.cpp:438:7:438:15 | ... = ... | provenance | |
| test.cpp:433:15:433:23 | & ... | test.cpp:433:15:433:23 | & ... | provenance | |
| test.cpp:433:15:433:23 | & ... | test.cpp:438:7:438:15 | ... = ... | provenance | |
| test.cpp:433:15:433:23 | & ... | test.cpp:438:7:438:15 | ... = ... | provenance | |
| test.cpp:444:14:444:27 | new[] | test.cpp:444:14:444:27 | new[] | provenance | |
| test.cpp:444:14:444:27 | new[] | test.cpp:445:15:445:23 | & ... | provenance | |
| test.cpp:444:14:444:27 | new[] | test.cpp:450:7:450:15 | ... = ... | provenance | |
| test.cpp:445:15:445:23 | & ... | test.cpp:445:15:445:23 | & ... | provenance | |
| test.cpp:445:15:445:23 | & ... | test.cpp:450:7:450:15 | ... = ... | provenance | |
| test.cpp:445:15:445:23 | & ... | test.cpp:450:7:450:15 | ... = ... | provenance | |
| test.cpp:480:14:480:27 | new[] | test.cpp:480:14:480:27 | new[] | provenance | |
| test.cpp:480:14:480:27 | new[] | test.cpp:481:15:481:23 | & ... | provenance | |
| test.cpp:480:14:480:27 | new[] | test.cpp:486:7:486:15 | ... = ... | provenance | |
| test.cpp:481:15:481:23 | & ... | test.cpp:481:15:481:23 | & ... | provenance | |
| test.cpp:481:15:481:23 | & ... | test.cpp:486:7:486:15 | ... = ... | provenance | |
| test.cpp:481:15:481:23 | & ... | test.cpp:486:7:486:15 | ... = ... | provenance | |
| test.cpp:543:14:543:27 | new[] | test.cpp:543:14:543:27 | new[] | provenance | |
| test.cpp:543:14:543:27 | new[] | test.cpp:548:5:548:19 | ... = ... | provenance | |
| test.cpp:554:14:554:27 | new[] | test.cpp:554:14:554:27 | new[] | provenance | |
| test.cpp:554:14:554:27 | new[] | test.cpp:559:5:559:19 | ... = ... | provenance | |
| test.cpp:642:14:642:31 | new[] | test.cpp:642:14:642:31 | new[] | provenance | |
| test.cpp:642:14:642:31 | new[] | test.cpp:647:5:647:19 | ... = ... | provenance | |
| test.cpp:730:12:730:28 | new[] | test.cpp:730:12:730:28 | new[] | provenance | |
| test.cpp:730:12:730:28 | new[] | test.cpp:732:16:732:26 | ... + ... | provenance | |
| test.cpp:732:16:732:26 | ... + ... | test.cpp:732:16:732:26 | ... + ... | provenance | |
| test.cpp:732:16:732:26 | ... + ... | test.cpp:733:5:733:12 | ... = ... | provenance | |
| test.cpp:732:16:732:26 | ... + ... | test.cpp:733:5:733:12 | ... = ... | provenance | |
| test.cpp:754:18:754:31 | new[] | test.cpp:754:18:754:31 | new[] | provenance | |
| test.cpp:754:18:754:31 | new[] | test.cpp:767:16:767:29 | access to array | provenance | |
| test.cpp:754:18:754:31 | new[] | test.cpp:767:16:767:29 | access to array | provenance | |
| test.cpp:754:18:754:31 | new[] | test.cpp:772:16:772:29 | access to array | provenance | |
| test.cpp:754:18:754:31 | new[] | test.cpp:772:16:772:29 | access to array | provenance | |
| test.cpp:781:14:781:27 | new[] | test.cpp:781:14:781:27 | new[] | provenance | |
| test.cpp:781:14:781:27 | new[] | test.cpp:786:18:786:27 | access to array | provenance | |
| test.cpp:792:60:792:62 | *end | test.cpp:800:40:800:43 | mk_array_no_field_flow output argument | provenance | |
| test.cpp:792:60:792:62 | *end | test.cpp:832:40:832:43 | mk_array_no_field_flow output argument | provenance | |
| test.cpp:793:14:793:32 | call to malloc | test.cpp:794:12:794:24 | ... + ... | provenance | |
| test.cpp:794:12:794:24 | ... + ... | test.cpp:792:60:792:62 | *end | provenance | |
| test.cpp:793:5:793:32 | ... = ... | test.cpp:794:12:794:24 | ... + ... | provenance | |
| test.cpp:793:14:793:32 | call to malloc | test.cpp:793:5:793:32 | ... = ... | provenance | |
| test.cpp:794:5:794:24 | ... = ... | test.cpp:792:60:792:62 | *end | provenance | |
| test.cpp:794:12:794:24 | ... + ... | test.cpp:794:5:794:24 | ... = ... | provenance | |
| test.cpp:800:40:800:43 | mk_array_no_field_flow output argument | test.cpp:807:7:807:12 | ... = ... | provenance | |
| test.cpp:815:52:815:54 | end | test.cpp:815:52:815:54 | end | provenance | |
| test.cpp:815:52:815:54 | end | test.cpp:821:7:821:12 | ... = ... | provenance | |
| test.cpp:815:52:815:54 | end | test.cpp:821:7:821:12 | ... = ... | provenance | |
| test.cpp:832:40:832:43 | mk_array_no_field_flow output argument | test.cpp:833:37:833:39 | end | provenance | |
| test.cpp:833:37:833:39 | end | test.cpp:815:52:815:54 | end | provenance | |
| test.cpp:841:18:841:35 | call to malloc | test.cpp:842:3:842:20 | ... = ... | provenance | |
| test.cpp:848:20:848:37 | call to malloc | test.cpp:849:5:849:22 | ... = ... | provenance | |
| test.cpp:856:12:856:35 | call to malloc | test.cpp:857:16:857:29 | ... + ... | provenance | |
| test.cpp:841:18:841:35 | (int *)... | test.cpp:842:3:842:20 | ... = ... | provenance | |
| test.cpp:841:18:841:35 | call to malloc | test.cpp:841:18:841:35 | (int *)... | provenance | |
| test.cpp:848:20:848:37 | (int *)... | test.cpp:849:5:849:22 | ... = ... | provenance | |
| test.cpp:848:20:848:37 | call to malloc | test.cpp:848:20:848:37 | (int *)... | provenance | |
| test.cpp:856:12:856:35 | (int *)... | test.cpp:857:16:857:29 | ... + ... | provenance | |
| test.cpp:856:12:856:35 | call to malloc | test.cpp:856:12:856:35 | (int *)... | provenance | |
| test.cpp:857:16:857:29 | ... + ... | test.cpp:857:16:857:29 | ... + ... | provenance | |
| test.cpp:857:16:857:29 | ... + ... | test.cpp:860:5:860:11 | ... = ... | provenance | |
| test.cpp:857:16:857:29 | ... + ... | test.cpp:860:5:860:11 | ... = ... | provenance | |
| test.cpp:868:15:868:35 | call to g_malloc | test.cpp:869:15:869:22 | ... + ... | provenance | |
| test.cpp:868:15:868:35 | (char *)... | test.cpp:869:15:869:22 | ... + ... | provenance | |
| test.cpp:868:15:868:35 | call to g_malloc | test.cpp:868:15:868:35 | (char *)... | provenance | |
| test.cpp:869:15:869:22 | ... + ... | test.cpp:869:15:869:22 | ... + ... | provenance | |
| test.cpp:869:15:869:22 | ... + ... | test.cpp:870:14:870:15 | * ... | provenance | |
| test.cpp:869:15:869:22 | ... + ... | test.cpp:870:14:870:15 | * ... | provenance | |
nodes
| test.cpp:4:15:4:33 | (char *)... | semmle.label | (char *)... |
| test.cpp:4:15:4:33 | call to malloc | semmle.label | call to malloc |
| test.cpp:5:15:5:22 | ... + ... | semmle.label | ... + ... |
| test.cpp:5:15:5:22 | ... + ... | semmle.label | ... + ... |
| test.cpp:6:14:6:15 | * ... | semmle.label | * ... |
| test.cpp:6:14:6:15 | * ... | semmle.label | * ... |
| test.cpp:8:14:8:21 | * ... | semmle.label | * ... |
| test.cpp:16:15:16:33 | (char *)... | semmle.label | (char *)... |
| test.cpp:16:15:16:33 | call to malloc | semmle.label | call to malloc |
| test.cpp:20:14:20:21 | * ... | semmle.label | * ... |
| test.cpp:28:15:28:37 | (char *)... | semmle.label | (char *)... |
| test.cpp:28:15:28:37 | call to malloc | semmle.label | call to malloc |
| test.cpp:29:15:29:28 | ... + ... | semmle.label | ... + ... |
| test.cpp:29:15:29:28 | ... + ... | semmle.label | ... + ... |
@@ -125,73 +152,92 @@ nodes
| test.cpp:30:14:30:15 | * ... | semmle.label | * ... |
| test.cpp:32:14:32:21 | * ... | semmle.label | * ... |
| test.cpp:51:33:51:35 | *end | semmle.label | *end |
| test.cpp:52:19:52:37 | (char *)... | semmle.label | (char *)... |
| test.cpp:52:19:52:37 | call to malloc | semmle.label | call to malloc |
| test.cpp:53:5:53:23 | ... = ... | semmle.label | ... = ... |
| test.cpp:53:12:53:23 | ... + ... | semmle.label | ... + ... |
| test.cpp:60:34:60:37 | mk_array output argument | semmle.label | mk_array output argument |
| test.cpp:67:9:67:14 | ... = ... | semmle.label | ... = ... |
| test.cpp:205:15:205:33 | (char *)... | semmle.label | (char *)... |
| test.cpp:205:15:205:33 | call to malloc | semmle.label | call to malloc |
| test.cpp:206:17:206:23 | ... + ... | semmle.label | ... + ... |
| test.cpp:206:17:206:23 | ... + ... | semmle.label | ... + ... |
| test.cpp:213:5:213:13 | ... = ... | semmle.label | ... = ... |
| test.cpp:260:13:260:24 | new[] | semmle.label | new[] |
| test.cpp:260:13:260:24 | new[] | semmle.label | new[] |
| test.cpp:261:14:261:21 | ... + ... | semmle.label | ... + ... |
| test.cpp:261:14:261:21 | ... + ... | semmle.label | ... + ... |
| test.cpp:262:31:262:33 | *... ++ | semmle.label | *... ++ |
| test.cpp:264:13:264:14 | * ... | semmle.label | * ... |
| test.cpp:264:13:264:14 | * ... | semmle.label | * ... |
| test.cpp:270:13:270:24 | new[] | semmle.label | new[] |
| test.cpp:270:13:270:24 | new[] | semmle.label | new[] |
| test.cpp:271:14:271:21 | ... + ... | semmle.label | ... + ... |
| test.cpp:271:14:271:21 | ... + ... | semmle.label | ... + ... |
| test.cpp:274:5:274:10 | ... = ... | semmle.label | ... = ... |
| test.cpp:355:14:355:27 | new[] | semmle.label | new[] |
| test.cpp:355:14:355:27 | new[] | semmle.label | new[] |
| test.cpp:356:15:356:23 | ... + ... | semmle.label | ... + ... |
| test.cpp:356:15:356:23 | ... + ... | semmle.label | ... + ... |
| test.cpp:358:14:358:26 | * ... | semmle.label | * ... |
| test.cpp:358:14:358:26 | * ... | semmle.label | * ... |
| test.cpp:359:14:359:32 | * ... | semmle.label | * ... |
| test.cpp:377:14:377:27 | new[] | semmle.label | new[] |
| test.cpp:377:14:377:27 | new[] | semmle.label | new[] |
| test.cpp:378:15:378:23 | ... + ... | semmle.label | ... + ... |
| test.cpp:378:15:378:23 | ... + ... | semmle.label | ... + ... |
| test.cpp:384:13:384:16 | * ... | semmle.label | * ... |
| test.cpp:410:14:410:27 | new[] | semmle.label | new[] |
| test.cpp:410:14:410:27 | new[] | semmle.label | new[] |
| test.cpp:411:15:411:23 | & ... | semmle.label | & ... |
| test.cpp:411:15:411:23 | & ... | semmle.label | & ... |
| test.cpp:415:7:415:15 | ... = ... | semmle.label | ... = ... |
| test.cpp:421:14:421:27 | new[] | semmle.label | new[] |
| test.cpp:421:14:421:27 | new[] | semmle.label | new[] |
| test.cpp:422:15:422:23 | & ... | semmle.label | & ... |
| test.cpp:422:15:422:23 | & ... | semmle.label | & ... |
| test.cpp:426:7:426:15 | ... = ... | semmle.label | ... = ... |
| test.cpp:432:14:432:27 | new[] | semmle.label | new[] |
| test.cpp:432:14:432:27 | new[] | semmle.label | new[] |
| test.cpp:433:15:433:23 | & ... | semmle.label | & ... |
| test.cpp:433:15:433:23 | & ... | semmle.label | & ... |
| test.cpp:438:7:438:15 | ... = ... | semmle.label | ... = ... |
| test.cpp:444:14:444:27 | new[] | semmle.label | new[] |
| test.cpp:444:14:444:27 | new[] | semmle.label | new[] |
| test.cpp:445:15:445:23 | & ... | semmle.label | & ... |
| test.cpp:445:15:445:23 | & ... | semmle.label | & ... |
| test.cpp:450:7:450:15 | ... = ... | semmle.label | ... = ... |
| test.cpp:480:14:480:27 | new[] | semmle.label | new[] |
| test.cpp:480:14:480:27 | new[] | semmle.label | new[] |
| test.cpp:481:15:481:23 | & ... | semmle.label | & ... |
| test.cpp:481:15:481:23 | & ... | semmle.label | & ... |
| test.cpp:486:7:486:15 | ... = ... | semmle.label | ... = ... |
| test.cpp:543:14:543:27 | new[] | semmle.label | new[] |
| test.cpp:543:14:543:27 | new[] | semmle.label | new[] |
| test.cpp:548:5:548:19 | ... = ... | semmle.label | ... = ... |
| test.cpp:554:14:554:27 | new[] | semmle.label | new[] |
| test.cpp:554:14:554:27 | new[] | semmle.label | new[] |
| test.cpp:559:5:559:19 | ... = ... | semmle.label | ... = ... |
| test.cpp:642:14:642:31 | new[] | semmle.label | new[] |
| test.cpp:642:14:642:31 | new[] | semmle.label | new[] |
| test.cpp:647:5:647:19 | ... = ... | semmle.label | ... = ... |
| test.cpp:730:12:730:28 | new[] | semmle.label | new[] |
| test.cpp:730:12:730:28 | new[] | semmle.label | new[] |
| test.cpp:732:16:732:26 | ... + ... | semmle.label | ... + ... |
| test.cpp:732:16:732:26 | ... + ... | semmle.label | ... + ... |
| test.cpp:733:5:733:12 | ... = ... | semmle.label | ... = ... |
| test.cpp:754:18:754:31 | new[] | semmle.label | new[] |
| test.cpp:754:18:754:31 | new[] | semmle.label | new[] |
| test.cpp:767:16:767:29 | access to array | semmle.label | access to array |
| test.cpp:767:16:767:29 | access to array | semmle.label | access to array |
| test.cpp:772:16:772:29 | access to array | semmle.label | access to array |
| test.cpp:772:16:772:29 | access to array | semmle.label | access to array |
| test.cpp:781:14:781:27 | new[] | semmle.label | new[] |
| test.cpp:781:14:781:27 | new[] | semmle.label | new[] |
| test.cpp:786:18:786:27 | access to array | semmle.label | access to array |
| test.cpp:792:60:792:62 | *end | semmle.label | *end |
| test.cpp:793:5:793:32 | ... = ... | semmle.label | ... = ... |
| test.cpp:793:14:793:32 | call to malloc | semmle.label | call to malloc |
| test.cpp:794:5:794:24 | ... = ... | semmle.label | ... = ... |
| test.cpp:794:12:794:24 | ... + ... | semmle.label | ... + ... |
| test.cpp:800:40:800:43 | mk_array_no_field_flow output argument | semmle.label | mk_array_no_field_flow output argument |
| test.cpp:807:7:807:12 | ... = ... | semmle.label | ... = ... |
@@ -200,14 +246,18 @@ nodes
| test.cpp:821:7:821:12 | ... = ... | semmle.label | ... = ... |
| test.cpp:832:40:832:43 | mk_array_no_field_flow output argument | semmle.label | mk_array_no_field_flow output argument |
| test.cpp:833:37:833:39 | end | semmle.label | end |
| test.cpp:841:18:841:35 | (int *)... | semmle.label | (int *)... |
| test.cpp:841:18:841:35 | call to malloc | semmle.label | call to malloc |
| test.cpp:842:3:842:20 | ... = ... | semmle.label | ... = ... |
| test.cpp:848:20:848:37 | (int *)... | semmle.label | (int *)... |
| test.cpp:848:20:848:37 | call to malloc | semmle.label | call to malloc |
| test.cpp:849:5:849:22 | ... = ... | semmle.label | ... = ... |
| test.cpp:856:12:856:35 | (int *)... | semmle.label | (int *)... |
| test.cpp:856:12:856:35 | call to malloc | semmle.label | call to malloc |
| test.cpp:857:16:857:29 | ... + ... | semmle.label | ... + ... |
| test.cpp:857:16:857:29 | ... + ... | semmle.label | ... + ... |
| test.cpp:860:5:860:11 | ... = ... | semmle.label | ... = ... |
| test.cpp:868:15:868:35 | (char *)... | semmle.label | (char *)... |
| test.cpp:868:15:868:35 | call to g_malloc | semmle.label | call to g_malloc |
| test.cpp:869:15:869:22 | ... + ... | semmle.label | ... + ... |
| test.cpp:869:15:869:22 | ... + ... | semmle.label | ... + ... |

View File

@@ -1,17 +1,25 @@
edges
| test.cpp:16:25:16:42 | *call to getenv | test.cpp:20:14:20:20 | *address | provenance | |
| test.cpp:27:25:27:42 | *call to getenv | test.cpp:31:14:31:20 | *address | provenance | |
| test.cpp:38:25:38:42 | *call to getenv | test.cpp:42:14:42:20 | *address | provenance | |
| test.cpp:49:25:49:42 | *call to getenv | test.cpp:52:14:52:20 | *address | provenance | |
| test.cpp:49:25:49:42 | *call to getenv | test.cpp:56:14:56:20 | *address | provenance | |
| test.cpp:49:25:49:42 | *call to getenv | test.cpp:60:14:60:20 | *address | provenance | |
| test.cpp:16:25:16:42 | *(const char *)... | test.cpp:20:14:20:20 | *address | provenance | |
| test.cpp:16:25:16:42 | *call to getenv | test.cpp:16:25:16:42 | *(const char *)... | provenance | |
| test.cpp:27:25:27:42 | *(const char *)... | test.cpp:31:14:31:20 | *address | provenance | |
| test.cpp:27:25:27:42 | *call to getenv | test.cpp:27:25:27:42 | *(const char *)... | provenance | |
| test.cpp:38:25:38:42 | *(const char *)... | test.cpp:42:14:42:20 | *address | provenance | |
| test.cpp:38:25:38:42 | *call to getenv | test.cpp:38:25:38:42 | *(const char *)... | provenance | |
| test.cpp:49:25:49:42 | *(const char *)... | test.cpp:52:14:52:20 | *address | provenance | |
| test.cpp:49:25:49:42 | *(const char *)... | test.cpp:56:14:56:20 | *address | provenance | |
| test.cpp:49:25:49:42 | *(const char *)... | test.cpp:60:14:60:20 | *address | provenance | |
| test.cpp:49:25:49:42 | *call to getenv | test.cpp:49:25:49:42 | *(const char *)... | provenance | |
nodes
| test.cpp:16:25:16:42 | *(const char *)... | semmle.label | *(const char *)... |
| test.cpp:16:25:16:42 | *call to getenv | semmle.label | *call to getenv |
| test.cpp:20:14:20:20 | *address | semmle.label | *address |
| test.cpp:27:25:27:42 | *(const char *)... | semmle.label | *(const char *)... |
| test.cpp:27:25:27:42 | *call to getenv | semmle.label | *call to getenv |
| test.cpp:31:14:31:20 | *address | semmle.label | *address |
| test.cpp:38:25:38:42 | *(const char *)... | semmle.label | *(const char *)... |
| test.cpp:38:25:38:42 | *call to getenv | semmle.label | *call to getenv |
| test.cpp:42:14:42:20 | *address | semmle.label | *address |
| test.cpp:49:25:49:42 | *(const char *)... | semmle.label | *(const char *)... |
| test.cpp:49:25:49:42 | *call to getenv | semmle.label | *call to getenv |
| test.cpp:52:14:52:20 | *address | semmle.label | *address |
| test.cpp:56:14:56:20 | *address | semmle.label | *address |

View File

@@ -1,4 +1,5 @@
edges
| test2.cpp:62:18:62:25 | password | test2.cpp:62:18:62:25 | password | provenance | |
| test2.cpp:62:18:62:25 | password | test2.cpp:65:31:65:34 | cpy1 | provenance | |
| test2.cpp:72:15:72:24 | password | test2.cpp:73:30:73:32 | *buf | provenance | DataFlowFunction |
| test2.cpp:98:45:98:52 | password | test2.cpp:99:27:99:32 | *buffer | provenance | TaintFunction |
@@ -13,6 +14,7 @@ nodes
| test2.cpp:55:40:55:51 | widepassword | semmle.label | widepassword |
| test2.cpp:57:39:57:49 | call to getPassword | semmle.label | call to getPassword |
| test2.cpp:62:18:62:25 | password | semmle.label | password |
| test2.cpp:62:18:62:25 | password | semmle.label | password |
| test2.cpp:65:31:65:34 | cpy1 | semmle.label | cpy1 |
| test2.cpp:72:15:72:24 | password | semmle.label | password |
| test2.cpp:73:30:73:32 | *buf | semmle.label | *buf |

View File

@@ -1,15 +1,20 @@
edges
| test3.cpp:74:21:74:29 | password1 | test3.cpp:74:21:74:29 | password1 | provenance | |
| test3.cpp:74:21:74:29 | password1 | test3.cpp:76:15:76:17 | ptr | provenance | |
| test3.cpp:81:15:81:22 | password | test3.cpp:83:15:83:17 | ptr | provenance | |
| test3.cpp:81:15:81:22 | array to pointer conversion | test3.cpp:83:15:83:17 | ptr | provenance | |
| test3.cpp:81:15:81:22 | password | test3.cpp:81:15:81:22 | array to pointer conversion | provenance | |
| test3.cpp:112:20:112:25 | buffer | test3.cpp:114:14:114:19 | buffer | provenance | |
| test3.cpp:117:28:117:33 | buffer | test3.cpp:119:9:119:14 | buffer | provenance | |
| test3.cpp:119:9:119:14 | buffer | test3.cpp:117:13:117:14 | *id | provenance | |
| test3.cpp:124:7:124:20 | *get_global_str | test3.cpp:144:16:144:29 | call to get_global_str | provenance | |
| test3.cpp:126:9:126:23 | global_password | test3.cpp:124:7:124:20 | *get_global_str | provenance | |
| test3.cpp:126:9:126:23 | global_password | test3.cpp:126:9:126:23 | global_password | provenance | |
| test3.cpp:134:11:134:18 | password | test3.cpp:112:20:112:25 | buffer | provenance | |
| test3.cpp:138:21:138:22 | call to id | test3.cpp:138:21:138:22 | call to id | provenance | |
| test3.cpp:138:21:138:22 | call to id | test3.cpp:140:15:140:17 | ptr | provenance | |
| test3.cpp:138:24:138:32 | password1 | test3.cpp:117:28:117:33 | buffer | provenance | |
| test3.cpp:138:24:138:32 | password1 | test3.cpp:138:21:138:22 | call to id | provenance | |
| test3.cpp:144:16:144:29 | call to get_global_str | test3.cpp:144:16:144:29 | call to get_global_str | provenance | |
| test3.cpp:144:16:144:29 | call to get_global_str | test3.cpp:146:15:146:18 | data | provenance | |
| test3.cpp:157:19:157:26 | password | test3.cpp:159:15:159:20 | *buffer | provenance | TaintFunction |
| test3.cpp:270:16:270:23 | password | test3.cpp:272:15:272:18 | *data | provenance | DataFlowFunction |
@@ -22,6 +27,7 @@ edges
| test3.cpp:314:11:314:19 | password1 | test3.cpp:283:20:283:23 | data | provenance | |
| test3.cpp:316:11:316:19 | password1 | test3.cpp:283:20:283:23 | data | provenance | |
| test3.cpp:317:11:317:19 | password1 | test3.cpp:288:20:288:23 | data | provenance | |
| test3.cpp:322:16:322:24 | password2 | test3.cpp:322:16:322:24 | password2 | provenance | |
| test3.cpp:322:16:322:24 | password2 | test3.cpp:324:11:324:14 | data | provenance | |
| test3.cpp:322:16:322:24 | password2 | test3.cpp:325:11:325:14 | data | provenance | |
| test3.cpp:324:11:324:14 | data | test3.cpp:293:20:293:23 | data | provenance | |
@@ -29,16 +35,21 @@ edges
| test3.cpp:526:44:526:54 | my_latitude | test3.cpp:527:15:527:20 | *buffer | provenance | TaintFunction |
| test3.cpp:532:45:532:58 | home_longitude | test3.cpp:533:15:533:20 | *buffer | provenance | TaintFunction |
| test3.cpp:551:47:551:58 | salaryString | test3.cpp:552:15:552:20 | *buffer | provenance | TaintFunction |
| test3.cpp:556:19:556:30 | salaryString | test3.cpp:556:19:556:30 | salaryString | provenance | |
| test3.cpp:556:19:556:30 | salaryString | test3.cpp:559:15:559:20 | *buffer | provenance | TaintFunction |
| test3.cpp:571:8:571:21 | call to get_home_phone | test3.cpp:572:14:572:16 | str | provenance | |
| test3.cpp:577:8:577:23 | call to get_home_address | test3.cpp:578:14:578:16 | str | provenance | |
| test3.cpp:571:2:571:23 | ... = ... | test3.cpp:572:14:572:16 | str | provenance | |
| test3.cpp:571:8:571:21 | call to get_home_phone | test3.cpp:571:2:571:23 | ... = ... | provenance | |
| test3.cpp:577:2:577:25 | ... = ... | test3.cpp:578:14:578:16 | str | provenance | |
| test3.cpp:577:8:577:23 | call to get_home_address | test3.cpp:577:2:577:25 | ... = ... | provenance | |
nodes
| test3.cpp:22:15:22:23 | password1 | semmle.label | password1 |
| test3.cpp:26:15:26:23 | password2 | semmle.label | password2 |
| test3.cpp:47:15:47:22 | password | semmle.label | password |
| test3.cpp:55:15:55:22 | password | semmle.label | password |
| test3.cpp:74:21:74:29 | password1 | semmle.label | password1 |
| test3.cpp:74:21:74:29 | password1 | semmle.label | password1 |
| test3.cpp:76:15:76:17 | ptr | semmle.label | ptr |
| test3.cpp:81:15:81:22 | array to pointer conversion | semmle.label | array to pointer conversion |
| test3.cpp:81:15:81:22 | password | semmle.label | password |
| test3.cpp:83:15:83:17 | ptr | semmle.label | ptr |
| test3.cpp:101:12:101:19 | password | semmle.label | password |
@@ -49,11 +60,14 @@ nodes
| test3.cpp:119:9:119:14 | buffer | semmle.label | buffer |
| test3.cpp:124:7:124:20 | *get_global_str | semmle.label | *get_global_str |
| test3.cpp:126:9:126:23 | global_password | semmle.label | global_password |
| test3.cpp:126:9:126:23 | global_password | semmle.label | global_password |
| test3.cpp:134:11:134:18 | password | semmle.label | password |
| test3.cpp:138:21:138:22 | call to id | semmle.label | call to id |
| test3.cpp:138:21:138:22 | call to id | semmle.label | call to id |
| test3.cpp:138:24:138:32 | password1 | semmle.label | password1 |
| test3.cpp:140:15:140:17 | ptr | semmle.label | ptr |
| test3.cpp:144:16:144:29 | call to get_global_str | semmle.label | call to get_global_str |
| test3.cpp:144:16:144:29 | call to get_global_str | semmle.label | call to get_global_str |
| test3.cpp:146:15:146:18 | data | semmle.label | data |
| test3.cpp:157:19:157:26 | password | semmle.label | password |
| test3.cpp:159:15:159:20 | *buffer | semmle.label | *buffer |
@@ -84,6 +98,7 @@ nodes
| test3.cpp:316:11:316:19 | password1 | semmle.label | password1 |
| test3.cpp:317:11:317:19 | password1 | semmle.label | password1 |
| test3.cpp:322:16:322:24 | password2 | semmle.label | password2 |
| test3.cpp:322:16:322:24 | password2 | semmle.label | password2 |
| test3.cpp:324:11:324:14 | data | semmle.label | data |
| test3.cpp:325:11:325:14 | data | semmle.label | data |
| test3.cpp:341:16:341:23 | password | semmle.label | password |
@@ -113,9 +128,12 @@ nodes
| test3.cpp:551:47:551:58 | salaryString | semmle.label | salaryString |
| test3.cpp:552:15:552:20 | *buffer | semmle.label | *buffer |
| test3.cpp:556:19:556:30 | salaryString | semmle.label | salaryString |
| test3.cpp:556:19:556:30 | salaryString | semmle.label | salaryString |
| test3.cpp:559:15:559:20 | *buffer | semmle.label | *buffer |
| test3.cpp:571:2:571:23 | ... = ... | semmle.label | ... = ... |
| test3.cpp:571:8:571:21 | call to get_home_phone | semmle.label | call to get_home_phone |
| test3.cpp:572:14:572:16 | str | semmle.label | str |
| test3.cpp:577:2:577:25 | ... = ... | semmle.label | ... = ... |
| test3.cpp:577:8:577:23 | call to get_home_address | semmle.label | call to get_home_address |
| test3.cpp:578:14:578:16 | str | semmle.label | str |
subpaths

View File

@@ -1,36 +1,44 @@
edges
| test.cpp:11:26:11:28 | *url | test.cpp:15:30:15:32 | *url | provenance | |
| test.cpp:24:13:24:17 | **url_g | test.cpp:38:11:38:15 | *url_g | provenance | |
| test.cpp:24:21:24:40 | *http://example.com | test.cpp:24:13:24:17 | **url_g | provenance | |
| test.cpp:24:21:24:40 | *array to pointer conversion | test.cpp:24:13:24:17 | **url_g | provenance | |
| test.cpp:24:21:24:40 | *http://example.com | test.cpp:24:21:24:40 | *array to pointer conversion | provenance | |
| test.cpp:28:10:28:29 | *http://example.com | test.cpp:11:26:11:28 | *url | provenance | |
| test.cpp:35:23:35:42 | *http://example.com | test.cpp:39:11:39:15 | *url_l | provenance | |
| test.cpp:36:26:36:45 | *http://example.com | test.cpp:40:11:40:17 | *access to array | provenance | |
| test.cpp:35:23:35:42 | *array to pointer conversion | test.cpp:39:11:39:15 | *url_l | provenance | |
| test.cpp:35:23:35:42 | *http://example.com | test.cpp:35:23:35:42 | *array to pointer conversion | provenance | |
| test.cpp:36:26:36:45 | *array to pointer conversion | test.cpp:40:11:40:17 | *access to array | provenance | |
| test.cpp:36:26:36:45 | *http://example.com | test.cpp:36:26:36:45 | *array to pointer conversion | provenance | |
| test.cpp:38:11:38:15 | *url_g | test.cpp:11:26:11:28 | *url | provenance | |
| test.cpp:39:11:39:15 | *url_l | test.cpp:11:26:11:28 | *url | provenance | |
| test.cpp:40:11:40:17 | *access to array | test.cpp:11:26:11:28 | *url | provenance | |
| test.cpp:46:18:46:26 | *http:// | test.cpp:49:11:49:16 | *buffer | provenance | DataFlowFunction |
| test.cpp:49:11:49:16 | *buffer | test.cpp:11:26:11:28 | *url | provenance | |
| test.cpp:110:21:110:40 | *http://example.com | test.cpp:113:8:113:13 | *call to strstr | provenance | TaintFunction |
| test.cpp:110:21:110:40 | *http://example.com | test.cpp:116:9:116:14 | *call to strstr | provenance | TaintFunction |
| test.cpp:113:8:113:13 | *call to strstr | test.cpp:121:11:121:13 | *ptr | provenance | |
| test.cpp:116:9:116:14 | *call to strstr | test.cpp:121:11:121:13 | *ptr | provenance | |
| test.cpp:110:21:110:40 | *(char *)... | test.cpp:113:2:113:37 | *... = ... | provenance | TaintFunction |
| test.cpp:110:21:110:40 | *(char *)... | test.cpp:116:3:116:37 | *... = ... | provenance | TaintFunction |
| test.cpp:110:21:110:40 | *http://example.com | test.cpp:110:21:110:40 | *(char *)... | provenance | |
| test.cpp:113:2:113:37 | *... = ... | test.cpp:121:11:121:13 | *ptr | provenance | |
| test.cpp:116:3:116:37 | *... = ... | test.cpp:121:11:121:13 | *ptr | provenance | |
| test.cpp:121:11:121:13 | *ptr | test.cpp:11:26:11:28 | *url | provenance | |
nodes
| test.cpp:11:26:11:28 | *url | semmle.label | *url |
| test.cpp:15:30:15:32 | *url | semmle.label | *url |
| test.cpp:24:13:24:17 | **url_g | semmle.label | **url_g |
| test.cpp:24:21:24:40 | *array to pointer conversion | semmle.label | *array to pointer conversion |
| test.cpp:24:21:24:40 | *http://example.com | semmle.label | *http://example.com |
| test.cpp:28:10:28:29 | *http://example.com | semmle.label | *http://example.com |
| test.cpp:35:23:35:42 | *array to pointer conversion | semmle.label | *array to pointer conversion |
| test.cpp:35:23:35:42 | *http://example.com | semmle.label | *http://example.com |
| test.cpp:36:26:36:45 | *array to pointer conversion | semmle.label | *array to pointer conversion |
| test.cpp:36:26:36:45 | *http://example.com | semmle.label | *http://example.com |
| test.cpp:38:11:38:15 | *url_g | semmle.label | *url_g |
| test.cpp:39:11:39:15 | *url_l | semmle.label | *url_l |
| test.cpp:40:11:40:17 | *access to array | semmle.label | *access to array |
| test.cpp:46:18:46:26 | *http:// | semmle.label | *http:// |
| test.cpp:49:11:49:16 | *buffer | semmle.label | *buffer |
| test.cpp:110:21:110:40 | *(char *)... | semmle.label | *(char *)... |
| test.cpp:110:21:110:40 | *http://example.com | semmle.label | *http://example.com |
| test.cpp:113:8:113:13 | *call to strstr | semmle.label | *call to strstr |
| test.cpp:116:9:116:14 | *call to strstr | semmle.label | *call to strstr |
| test.cpp:113:2:113:37 | *... = ... | semmle.label | *... = ... |
| test.cpp:116:3:116:37 | *... = ... | semmle.label | *... = ... |
| test.cpp:121:11:121:13 | *ptr | semmle.label | *ptr |
subpaths
#select

View File

@@ -1,23 +1,28 @@
edges
| tests2.cpp:50:13:50:19 | **global1 | tests2.cpp:82:14:82:20 | *global1 | provenance | |
| tests2.cpp:50:23:50:43 | *call to mysql_get_client_info | tests2.cpp:50:13:50:19 | **global1 | provenance | |
| tests2.cpp:50:23:50:43 | *call to mysql_get_client_info | tests2.cpp:50:23:50:43 | *call to mysql_get_client_info | provenance | |
| tests2.cpp:78:18:78:38 | *call to mysql_get_client_info | tests2.cpp:81:14:81:19 | *buffer | provenance | DataFlowFunction |
| tests2.cpp:91:42:91:45 | *str1 | tests2.cpp:93:14:93:17 | *str1 | provenance | |
| tests2.cpp:101:8:101:15 | *call to getpwuid | tests2.cpp:102:14:102:15 | *pw | provenance | |
| tests2.cpp:101:3:101:22 | *... = ... | tests2.cpp:102:14:102:15 | *pw | provenance | |
| tests2.cpp:101:8:101:15 | *call to getpwuid | tests2.cpp:101:3:101:22 | *... = ... | provenance | |
| tests2.cpp:109:3:109:4 | *c1 [post update] [*ptr] | tests2.cpp:111:14:111:15 | *c1 [*ptr] | provenance | |
| tests2.cpp:109:3:109:36 | *... = ... | tests2.cpp:109:3:109:4 | *c1 [post update] [*ptr] | provenance | |
| tests2.cpp:109:12:109:17 | *call to getenv | tests2.cpp:109:3:109:36 | *... = ... | provenance | |
| tests2.cpp:111:14:111:15 | *c1 [*ptr] | tests2.cpp:111:14:111:19 | *ptr | provenance | |
| tests2.cpp:111:14:111:15 | *c1 [*ptr] | tests2.cpp:111:17:111:19 | *ptr | provenance | |
| tests2.cpp:111:17:111:19 | *ptr | tests2.cpp:111:14:111:19 | *ptr | provenance | |
| tests_sockets.cpp:26:15:26:20 | *call to getenv | tests_sockets.cpp:26:15:26:20 | *call to getenv | provenance | |
| tests_sockets.cpp:26:15:26:20 | *call to getenv | tests_sockets.cpp:39:19:39:22 | *path | provenance | |
| tests_sockets.cpp:26:15:26:20 | *call to getenv | tests_sockets.cpp:43:20:43:23 | *path | provenance | |
| tests_sockets.cpp:63:15:63:20 | *call to getenv | tests_sockets.cpp:63:15:63:20 | *call to getenv | provenance | |
| tests_sockets.cpp:63:15:63:20 | *call to getenv | tests_sockets.cpp:76:19:76:22 | *path | provenance | |
| tests_sockets.cpp:63:15:63:20 | *call to getenv | tests_sockets.cpp:80:20:80:23 | *path | provenance | |
| tests_sysconf.cpp:36:21:36:27 | confstr output argument | tests_sysconf.cpp:39:19:39:25 | *pathbuf | provenance | |
nodes
| tests2.cpp:50:13:50:19 | **global1 | semmle.label | **global1 |
| tests2.cpp:50:23:50:43 | *call to mysql_get_client_info | semmle.label | *call to mysql_get_client_info |
| tests2.cpp:50:23:50:43 | *call to mysql_get_client_info | semmle.label | *call to mysql_get_client_info |
| tests2.cpp:63:13:63:26 | *call to getenv | semmle.label | *call to getenv |
| tests2.cpp:64:13:64:26 | *call to getenv | semmle.label | *call to getenv |
| tests2.cpp:65:13:65:30 | *call to getenv | semmle.label | *call to getenv |
@@ -28,6 +33,7 @@ nodes
| tests2.cpp:82:14:82:20 | *global1 | semmle.label | *global1 |
| tests2.cpp:91:42:91:45 | *str1 | semmle.label | *str1 |
| tests2.cpp:93:14:93:17 | *str1 | semmle.label | *str1 |
| tests2.cpp:101:3:101:22 | *... = ... | semmle.label | *... = ... |
| tests2.cpp:101:8:101:15 | *call to getpwuid | semmle.label | *call to getpwuid |
| tests2.cpp:102:14:102:15 | *pw | semmle.label | *pw |
| tests2.cpp:109:3:109:4 | *c1 [post update] [*ptr] | semmle.label | *c1 [post update] [*ptr] |
@@ -37,9 +43,11 @@ nodes
| tests2.cpp:111:14:111:19 | *ptr | semmle.label | *ptr |
| tests2.cpp:111:17:111:19 | *ptr | semmle.label | *ptr |
| tests_sockets.cpp:26:15:26:20 | *call to getenv | semmle.label | *call to getenv |
| tests_sockets.cpp:26:15:26:20 | *call to getenv | semmle.label | *call to getenv |
| tests_sockets.cpp:39:19:39:22 | *path | semmle.label | *path |
| tests_sockets.cpp:43:20:43:23 | *path | semmle.label | *path |
| tests_sockets.cpp:63:15:63:20 | *call to getenv | semmle.label | *call to getenv |
| tests_sockets.cpp:63:15:63:20 | *call to getenv | semmle.label | *call to getenv |
| tests_sockets.cpp:76:19:76:22 | *path | semmle.label | *path |
| tests_sockets.cpp:80:20:80:23 | *path | semmle.label | *path |
| tests_sysconf.cpp:36:21:36:27 | confstr output argument | semmle.label | confstr output argument |

View File

@@ -1,10 +1,9 @@
edges
| tests.cpp:62:7:62:18 | **global_token | tests.cpp:69:17:69:28 | *global_token | provenance | |
| tests.cpp:62:7:62:18 | **global_token | tests.cpp:69:2:69:43 | *... = ... | provenance | |
| tests.cpp:62:7:62:18 | **global_token | tests.cpp:71:27:71:38 | *global_token | provenance | |
| tests.cpp:62:22:62:27 | *call to getenv | tests.cpp:62:7:62:18 | **global_token | provenance | |
| tests.cpp:69:10:69:43 | *... ? ... : ... | tests.cpp:73:27:73:31 | *maybe | provenance | |
| tests.cpp:69:17:69:28 | *global_token | tests.cpp:69:10:69:43 | *... ? ... : ... | provenance | |
| tests.cpp:69:17:69:28 | *global_token | tests.cpp:71:27:71:38 | *global_token | provenance | |
| tests.cpp:62:22:62:27 | *call to getenv | tests.cpp:62:22:62:27 | *call to getenv | provenance | |
| tests.cpp:69:2:69:43 | *... = ... | tests.cpp:73:27:73:31 | *maybe | provenance | |
| tests.cpp:86:29:86:31 | *msg | tests.cpp:88:15:88:17 | *msg | provenance | |
| tests.cpp:97:13:97:34 | *call to getenv | tests.cpp:86:29:86:31 | *msg | provenance | |
| tests.cpp:107:30:107:32 | *msg | tests.cpp:109:20:109:22 | *msg | provenance | |
@@ -14,9 +13,11 @@ edges
| tests.cpp:131:14:131:35 | *call to getenv | tests.cpp:107:30:107:32 | *msg | provenance | |
| tests.cpp:132:14:132:35 | *call to getenv | tests.cpp:114:30:114:32 | *msg | provenance | |
| tests.cpp:133:14:133:35 | *call to getenv | tests.cpp:122:30:122:32 | *msg | provenance | |
| tests.cpp:139:17:139:22 | *call to getenv | tests.cpp:139:17:139:22 | *call to getenv | provenance | |
| tests.cpp:139:17:139:22 | *call to getenv | tests.cpp:141:15:141:20 | *secret | provenance | |
| tests_passwd.cpp:16:8:16:15 | *call to getpwnam | tests_passwd.cpp:18:29:18:31 | *pwd | provenance | |
| tests_passwd.cpp:16:8:16:15 | *call to getpwnam | tests_passwd.cpp:19:26:19:28 | *pwd | provenance | |
| tests_passwd.cpp:16:2:16:25 | *... = ... | tests_passwd.cpp:18:29:18:31 | *pwd | provenance | |
| tests_passwd.cpp:16:2:16:25 | *... = ... | tests_passwd.cpp:19:26:19:28 | *pwd | provenance | |
| tests_passwd.cpp:16:8:16:15 | *call to getpwnam | tests_passwd.cpp:16:2:16:25 | *... = ... | provenance | |
nodes
| tests.cpp:48:15:48:36 | *call to getenv | semmle.label | *call to getenv |
| tests.cpp:49:15:49:36 | *call to getenv | semmle.label | *call to getenv |
@@ -26,8 +27,8 @@ nodes
| tests.cpp:59:43:59:64 | *call to getenv | semmle.label | *call to getenv |
| tests.cpp:62:7:62:18 | **global_token | semmle.label | **global_token |
| tests.cpp:62:22:62:27 | *call to getenv | semmle.label | *call to getenv |
| tests.cpp:69:10:69:43 | *... ? ... : ... | semmle.label | *... ? ... : ... |
| tests.cpp:69:17:69:28 | *global_token | semmle.label | *global_token |
| tests.cpp:62:22:62:27 | *call to getenv | semmle.label | *call to getenv |
| tests.cpp:69:2:69:43 | *... = ... | semmle.label | *... = ... |
| tests.cpp:71:27:71:38 | *global_token | semmle.label | *global_token |
| tests.cpp:73:27:73:31 | *maybe | semmle.label | *maybe |
| tests.cpp:86:29:86:31 | *msg | semmle.label | *msg |
@@ -46,7 +47,9 @@ nodes
| tests.cpp:133:14:133:35 | *call to getenv | semmle.label | *call to getenv |
| tests.cpp:133:14:133:35 | *call to getenv | semmle.label | *call to getenv |
| tests.cpp:139:17:139:22 | *call to getenv | semmle.label | *call to getenv |
| tests.cpp:139:17:139:22 | *call to getenv | semmle.label | *call to getenv |
| tests.cpp:141:15:141:20 | *secret | semmle.label | *secret |
| tests_passwd.cpp:16:2:16:25 | *... = ... | semmle.label | *... = ... |
| tests_passwd.cpp:16:8:16:15 | *call to getpwnam | semmle.label | *call to getpwnam |
| tests_passwd.cpp:18:29:18:31 | *pwd | semmle.label | *pwd |
| tests_passwd.cpp:19:26:19:28 | *pwd | semmle.label | *pwd |

View File

@@ -4,18 +4,28 @@ edges
| tests2.cpp:33:17:33:31 | *new | tests2.cpp:37:2:37:2 | *p | provenance | |
| tests2.cpp:33:17:33:31 | call to SAXParser | tests2.cpp:33:17:33:31 | *new | provenance | |
| tests2.cpp:49:12:49:12 | call to SAXParser | tests2.cpp:51:2:51:2 | *p | provenance | |
| tests3.cpp:23:21:23:53 | *call to createXMLReader | tests3.cpp:23:21:23:53 | *call to createXMLReader | provenance | |
| tests3.cpp:23:21:23:53 | *call to createXMLReader | tests3.cpp:25:2:25:2 | *p | provenance | |
| tests3.cpp:35:16:35:20 | **p_3_3 | tests3.cpp:38:2:38:6 | *p_3_3 | provenance | |
| tests3.cpp:35:24:35:56 | *call to createXMLReader | tests3.cpp:35:16:35:20 | **p_3_3 | provenance | |
| tests3.cpp:35:24:35:56 | *call to createXMLReader | tests3.cpp:35:24:35:56 | *call to createXMLReader | provenance | |
| tests3.cpp:48:16:48:20 | **p_3_5 | tests3.cpp:56:2:56:6 | *p_3_5 | provenance | |
| tests3.cpp:48:24:48:56 | *call to createXMLReader | tests3.cpp:48:16:48:20 | **p_3_5 | provenance | |
| tests3.cpp:48:24:48:56 | *call to createXMLReader | tests3.cpp:48:24:48:56 | *call to createXMLReader | provenance | |
| tests3.cpp:60:21:60:53 | *call to createXMLReader | tests3.cpp:60:21:60:53 | *call to createXMLReader | provenance | |
| tests3.cpp:60:21:60:53 | *call to createXMLReader | tests3.cpp:63:2:63:2 | *p | provenance | |
| tests3.cpp:67:21:67:53 | *call to createXMLReader | tests3.cpp:67:21:67:53 | *call to createXMLReader | provenance | |
| tests3.cpp:67:21:67:53 | *call to createXMLReader | tests3.cpp:70:2:70:2 | *p | provenance | |
| tests5.cpp:27:25:27:38 | *call to createLSParser | tests5.cpp:27:25:27:38 | *call to createLSParser | provenance | |
| tests5.cpp:27:25:27:38 | *call to createLSParser | tests5.cpp:29:2:29:2 | *p | provenance | |
| tests5.cpp:40:25:40:38 | *call to createLSParser | tests5.cpp:40:25:40:38 | *call to createLSParser | provenance | |
| tests5.cpp:40:25:40:38 | *call to createLSParser | tests5.cpp:43:2:43:2 | *p | provenance | |
| tests5.cpp:55:25:55:38 | *call to createLSParser | tests5.cpp:55:25:55:38 | *call to createLSParser | provenance | |
| tests5.cpp:55:25:55:38 | *call to createLSParser | tests5.cpp:59:2:59:2 | *p | provenance | |
| tests5.cpp:63:21:63:24 | **g_p2 | tests5.cpp:77:2:77:5 | *g_p2 | provenance | |
| tests5.cpp:70:17:70:30 | *call to createLSParser | tests5.cpp:63:21:63:24 | **g_p2 | provenance | |
| tests5.cpp:70:2:70:32 | *... = ... | tests5.cpp:63:21:63:24 | **g_p2 | provenance | |
| tests5.cpp:70:17:70:30 | *call to createLSParser | tests5.cpp:70:2:70:32 | *... = ... | provenance | |
| tests5.cpp:81:25:81:38 | *call to createLSParser | tests5.cpp:81:25:81:38 | *call to createLSParser | provenance | |
| tests5.cpp:81:25:81:38 | *call to createLSParser | tests5.cpp:83:2:83:2 | *p | provenance | |
| tests5.cpp:81:25:81:38 | *call to createLSParser | tests5.cpp:83:2:83:2 | *p | provenance | |
| tests5.cpp:83:2:83:2 | *p | tests5.cpp:85:2:85:2 | *p | provenance | |
@@ -47,12 +57,12 @@ edges
| tests.cpp:66:23:66:43 | call to XercesDOMParser | tests.cpp:66:23:66:43 | *new | provenance | |
| tests.cpp:73:23:73:43 | *new | tests.cpp:80:2:80:2 | *p | provenance | |
| tests.cpp:73:23:73:43 | call to XercesDOMParser | tests.cpp:73:23:73:43 | *new | provenance | |
| tests.cpp:85:24:85:44 | *new | tests.cpp:86:24:86:25 | ** ... | provenance | |
| tests.cpp:85:24:85:44 | *new | tests.cpp:86:24:86:25 | *(reference to) | provenance | |
| tests.cpp:85:24:85:44 | call to XercesDOMParser | tests.cpp:85:24:85:44 | *new | provenance | |
| tests.cpp:86:24:86:25 | ** ... | tests.cpp:88:3:88:3 | *q | provenance | |
| tests.cpp:100:24:100:44 | *new | tests.cpp:101:24:101:25 | ** ... | provenance | |
| tests.cpp:86:24:86:25 | *(reference to) | tests.cpp:88:3:88:3 | *q | provenance | |
| tests.cpp:100:24:100:44 | *new | tests.cpp:101:24:101:25 | *(reference to) | provenance | |
| tests.cpp:100:24:100:44 | call to XercesDOMParser | tests.cpp:100:24:100:44 | *new | provenance | |
| tests.cpp:101:24:101:25 | ** ... | tests.cpp:104:3:104:3 | *q | provenance | |
| tests.cpp:101:24:101:25 | *(reference to) | tests.cpp:104:3:104:3 | *q | provenance | |
| tests.cpp:112:39:112:39 | *p | tests.cpp:112:39:112:39 | *p | provenance | |
| tests.cpp:112:39:112:39 | *p | tests.cpp:113:2:113:2 | *p | provenance | |
| tests.cpp:116:39:116:39 | *p | tests.cpp:117:2:117:2 | *p | provenance | |
@@ -73,16 +83,21 @@ nodes
| tests2.cpp:49:12:49:12 | call to SAXParser | semmle.label | call to SAXParser |
| tests2.cpp:51:2:51:2 | *p | semmle.label | *p |
| tests3.cpp:23:21:23:53 | *call to createXMLReader | semmle.label | *call to createXMLReader |
| tests3.cpp:23:21:23:53 | *call to createXMLReader | semmle.label | *call to createXMLReader |
| tests3.cpp:25:2:25:2 | *p | semmle.label | *p |
| tests3.cpp:35:16:35:20 | **p_3_3 | semmle.label | **p_3_3 |
| tests3.cpp:35:24:35:56 | *call to createXMLReader | semmle.label | *call to createXMLReader |
| tests3.cpp:35:24:35:56 | *call to createXMLReader | semmle.label | *call to createXMLReader |
| tests3.cpp:38:2:38:6 | *p_3_3 | semmle.label | *p_3_3 |
| tests3.cpp:48:16:48:20 | **p_3_5 | semmle.label | **p_3_5 |
| tests3.cpp:48:24:48:56 | *call to createXMLReader | semmle.label | *call to createXMLReader |
| tests3.cpp:48:24:48:56 | *call to createXMLReader | semmle.label | *call to createXMLReader |
| tests3.cpp:56:2:56:6 | *p_3_5 | semmle.label | *p_3_5 |
| tests3.cpp:60:21:60:53 | *call to createXMLReader | semmle.label | *call to createXMLReader |
| tests3.cpp:60:21:60:53 | *call to createXMLReader | semmle.label | *call to createXMLReader |
| tests3.cpp:63:2:63:2 | *p | semmle.label | *p |
| tests3.cpp:67:21:67:53 | *call to createXMLReader | semmle.label | *call to createXMLReader |
| tests3.cpp:67:21:67:53 | *call to createXMLReader | semmle.label | *call to createXMLReader |
| tests3.cpp:70:2:70:2 | *p | semmle.label | *p |
| tests4.cpp:26:34:26:48 | XML_PARSE_NOENT | semmle.label | XML_PARSE_NOENT |
| tests4.cpp:36:34:36:50 | XML_PARSE_DTDLOAD | semmle.label | XML_PARSE_DTDLOAD |
@@ -90,15 +105,20 @@ nodes
| tests4.cpp:77:34:77:38 | flags | semmle.label | flags |
| tests4.cpp:130:39:130:55 | XML_PARSE_DTDLOAD | semmle.label | XML_PARSE_DTDLOAD |
| tests5.cpp:27:25:27:38 | *call to createLSParser | semmle.label | *call to createLSParser |
| tests5.cpp:27:25:27:38 | *call to createLSParser | semmle.label | *call to createLSParser |
| tests5.cpp:29:2:29:2 | *p | semmle.label | *p |
| tests5.cpp:40:25:40:38 | *call to createLSParser | semmle.label | *call to createLSParser |
| tests5.cpp:40:25:40:38 | *call to createLSParser | semmle.label | *call to createLSParser |
| tests5.cpp:43:2:43:2 | *p | semmle.label | *p |
| tests5.cpp:55:25:55:38 | *call to createLSParser | semmle.label | *call to createLSParser |
| tests5.cpp:55:25:55:38 | *call to createLSParser | semmle.label | *call to createLSParser |
| tests5.cpp:59:2:59:2 | *p | semmle.label | *p |
| tests5.cpp:63:21:63:24 | **g_p2 | semmle.label | **g_p2 |
| tests5.cpp:70:2:70:32 | *... = ... | semmle.label | *... = ... |
| tests5.cpp:70:17:70:30 | *call to createLSParser | semmle.label | *call to createLSParser |
| tests5.cpp:77:2:77:5 | *g_p2 | semmle.label | *g_p2 |
| tests5.cpp:81:25:81:38 | *call to createLSParser | semmle.label | *call to createLSParser |
| tests5.cpp:81:25:81:38 | *call to createLSParser | semmle.label | *call to createLSParser |
| tests5.cpp:83:2:83:2 | *p | semmle.label | *p |
| tests5.cpp:83:2:83:2 | *p | semmle.label | *p |
| tests5.cpp:85:2:85:2 | *p | semmle.label | *p |
@@ -138,11 +158,11 @@ nodes
| tests.cpp:80:2:80:2 | *p | semmle.label | *p |
| tests.cpp:85:24:85:44 | *new | semmle.label | *new |
| tests.cpp:85:24:85:44 | call to XercesDOMParser | semmle.label | call to XercesDOMParser |
| tests.cpp:86:24:86:25 | ** ... | semmle.label | ** ... |
| tests.cpp:86:24:86:25 | *(reference to) | semmle.label | *(reference to) |
| tests.cpp:88:3:88:3 | *q | semmle.label | *q |
| tests.cpp:100:24:100:44 | *new | semmle.label | *new |
| tests.cpp:100:24:100:44 | call to XercesDOMParser | semmle.label | call to XercesDOMParser |
| tests.cpp:101:24:101:25 | ** ... | semmle.label | ** ... |
| tests.cpp:101:24:101:25 | *(reference to) | semmle.label | *(reference to) |
| tests.cpp:104:3:104:3 | *q | semmle.label | *q |
| tests.cpp:112:39:112:39 | *p | semmle.label | *p |
| tests.cpp:112:39:112:39 | *p | semmle.label | *p |

View File

@@ -1,6 +1,8 @@
edges
| test.cpp:20:29:20:47 | *call to getenv | test.cpp:24:10:24:35 | ! ... | provenance | TaintFunction |
| test.cpp:20:29:20:47 | *(const char *)... | test.cpp:24:10:24:35 | ! ... | provenance | TaintFunction |
| test.cpp:20:29:20:47 | *call to getenv | test.cpp:20:29:20:47 | *(const char *)... | provenance | |
nodes
| test.cpp:20:29:20:47 | *(const char *)... | semmle.label | *(const char *)... |
| test.cpp:20:29:20:47 | *call to getenv | semmle.label | *call to getenv |
| test.cpp:24:10:24:35 | ! ... | semmle.label | ! ... |
subpaths

View File

@@ -1,64 +1,106 @@
edges
| test.cpp:17:13:17:18 | new | test.cpp:18:21:18:47 | p | provenance | |
| test.cpp:22:13:22:26 | new | test.cpp:23:12:23:30 | p | provenance | |
| test.cpp:27:13:27:18 | new | test.cpp:28:25:28:55 | p | provenance | |
| test.cpp:32:13:32:30 | new | test.cpp:33:12:33:30 | p | provenance | |
| test.cpp:17:13:17:18 | (void *)... | test.cpp:18:21:18:47 | p | provenance | |
| test.cpp:17:13:17:18 | new | test.cpp:17:13:17:18 | (void *)... | provenance | |
| test.cpp:22:13:22:26 | (void *)... | test.cpp:23:12:23:30 | p | provenance | |
| test.cpp:22:13:22:26 | new | test.cpp:22:13:22:26 | (void *)... | provenance | |
| test.cpp:27:13:27:18 | (void *)... | test.cpp:28:25:28:55 | p | provenance | |
| test.cpp:27:13:27:18 | new | test.cpp:27:13:27:18 | (void *)... | provenance | |
| test.cpp:32:13:32:30 | (void *)... | test.cpp:33:12:33:30 | p | provenance | |
| test.cpp:32:13:32:30 | new | test.cpp:32:13:32:30 | (void *)... | provenance | |
| test.cpp:47:21:47:36 | new | test.cpp:47:21:47:36 | new | provenance | |
| test.cpp:47:21:47:36 | new | test.cpp:48:22:48:55 | p | provenance | |
| test.cpp:66:15:66:21 | new | test.cpp:67:12:67:31 | a | provenance | |
| test.cpp:76:15:76:21 | new | test.cpp:77:12:77:31 | a | provenance | |
| test.cpp:83:9:83:15 | new | test.cpp:88:14:88:33 | a | provenance | |
| test.cpp:85:9:85:15 | new | test.cpp:88:14:88:33 | a | provenance | |
| test.cpp:66:15:66:21 | (Animal *)... | test.cpp:67:12:67:31 | a | provenance | |
| test.cpp:66:15:66:21 | new | test.cpp:66:15:66:21 | (Animal *)... | provenance | |
| test.cpp:76:15:76:21 | (Animal *)... | test.cpp:77:12:77:31 | a | provenance | |
| test.cpp:76:15:76:21 | new | test.cpp:76:15:76:21 | (Animal *)... | provenance | |
| test.cpp:83:5:83:15 | ... = ... | test.cpp:88:14:88:33 | a | provenance | |
| test.cpp:83:9:83:15 | new | test.cpp:83:5:83:15 | ... = ... | provenance | |
| test.cpp:85:5:85:15 | ... = ... | test.cpp:88:14:88:33 | a | provenance | |
| test.cpp:85:9:85:15 | new | test.cpp:85:5:85:15 | ... = ... | provenance | |
| test.cpp:115:12:115:17 | new | test.cpp:115:12:115:17 | new | provenance | |
| test.cpp:115:12:115:17 | new | test.cpp:116:20:116:51 | s2 | provenance | |
| test.cpp:127:12:127:17 | new | test.cpp:127:12:127:17 | new | provenance | |
| test.cpp:127:12:127:17 | new | test.cpp:128:24:128:59 | s2 | provenance | |
| test.cpp:140:12:140:17 | new | test.cpp:140:12:140:17 | new | provenance | |
| test.cpp:140:12:140:17 | new | test.cpp:141:23:141:57 | s1 | provenance | |
| test.cpp:143:14:143:19 | new | test.cpp:143:14:143:19 | new | provenance | |
| test.cpp:143:14:143:19 | new | test.cpp:145:28:145:68 | s1_2 | provenance | |
| test.cpp:153:9:153:15 | new | test.cpp:159:14:159:33 | a | provenance | |
| test.cpp:166:9:166:15 | new | test.cpp:171:14:171:33 | a | provenance | |
| test.cpp:168:9:168:15 | new | test.cpp:171:14:171:33 | a | provenance | |
| test.cpp:179:15:179:24 | new | test.cpp:181:15:181:25 | u64 | provenance | |
| test.cpp:187:15:187:24 | new | test.cpp:189:25:189:45 | u64 | provenance | |
| test.cpp:207:14:207:26 | new | test.cpp:209:17:209:28 | si | provenance | |
| test.cpp:217:13:217:18 | new | test.cpp:218:30:218:65 | p | provenance | |
| test.cpp:226:13:226:18 | new | test.cpp:227:29:227:63 | p | provenance | |
| test.cpp:153:5:153:15 | ... = ... | test.cpp:159:14:159:33 | a | provenance | |
| test.cpp:153:9:153:15 | new | test.cpp:153:5:153:15 | ... = ... | provenance | |
| test.cpp:166:5:166:15 | ... = ... | test.cpp:171:14:171:33 | a | provenance | |
| test.cpp:166:9:166:15 | new | test.cpp:166:5:166:15 | ... = ... | provenance | |
| test.cpp:168:5:168:15 | ... = ... | test.cpp:171:14:171:33 | a | provenance | |
| test.cpp:168:9:168:15 | new | test.cpp:168:5:168:15 | ... = ... | provenance | |
| test.cpp:179:15:179:24 | (void *)... | test.cpp:181:15:181:25 | u64 | provenance | |
| test.cpp:179:15:179:24 | new | test.cpp:179:15:179:24 | (void *)... | provenance | |
| test.cpp:187:15:187:24 | (void *)... | test.cpp:189:25:189:45 | u64 | provenance | |
| test.cpp:187:15:187:24 | new | test.cpp:187:15:187:24 | (void *)... | provenance | |
| test.cpp:207:14:207:26 | (void *)... | test.cpp:209:17:209:28 | si | provenance | |
| test.cpp:207:14:207:26 | new | test.cpp:207:14:207:26 | (void *)... | provenance | |
| test.cpp:217:13:217:18 | (void *)... | test.cpp:218:30:218:65 | p | provenance | |
| test.cpp:217:13:217:18 | new | test.cpp:217:13:217:18 | (void *)... | provenance | |
| test.cpp:226:13:226:18 | (void *)... | test.cpp:227:29:227:63 | p | provenance | |
| test.cpp:226:13:226:18 | new | test.cpp:226:13:226:18 | (void *)... | provenance | |
nodes
| test.cpp:17:13:17:18 | (void *)... | semmle.label | (void *)... |
| test.cpp:17:13:17:18 | new | semmle.label | new |
| test.cpp:18:21:18:47 | p | semmle.label | p |
| test.cpp:22:13:22:26 | (void *)... | semmle.label | (void *)... |
| test.cpp:22:13:22:26 | new | semmle.label | new |
| test.cpp:23:12:23:30 | p | semmle.label | p |
| test.cpp:27:13:27:18 | (void *)... | semmle.label | (void *)... |
| test.cpp:27:13:27:18 | new | semmle.label | new |
| test.cpp:28:25:28:55 | p | semmle.label | p |
| test.cpp:32:13:32:30 | (void *)... | semmle.label | (void *)... |
| test.cpp:32:13:32:30 | new | semmle.label | new |
| test.cpp:33:12:33:30 | p | semmle.label | p |
| test.cpp:47:21:47:36 | new | semmle.label | new |
| test.cpp:47:21:47:36 | new | semmle.label | new |
| test.cpp:48:22:48:55 | p | semmle.label | p |
| test.cpp:66:15:66:21 | (Animal *)... | semmle.label | (Animal *)... |
| test.cpp:66:15:66:21 | new | semmle.label | new |
| test.cpp:67:12:67:31 | a | semmle.label | a |
| test.cpp:76:15:76:21 | (Animal *)... | semmle.label | (Animal *)... |
| test.cpp:76:15:76:21 | new | semmle.label | new |
| test.cpp:77:12:77:31 | a | semmle.label | a |
| test.cpp:83:5:83:15 | ... = ... | semmle.label | ... = ... |
| test.cpp:83:9:83:15 | new | semmle.label | new |
| test.cpp:85:5:85:15 | ... = ... | semmle.label | ... = ... |
| test.cpp:85:9:85:15 | new | semmle.label | new |
| test.cpp:88:14:88:33 | a | semmle.label | a |
| test.cpp:115:12:115:17 | new | semmle.label | new |
| test.cpp:115:12:115:17 | new | semmle.label | new |
| test.cpp:116:20:116:51 | s2 | semmle.label | s2 |
| test.cpp:127:12:127:17 | new | semmle.label | new |
| test.cpp:127:12:127:17 | new | semmle.label | new |
| test.cpp:128:24:128:59 | s2 | semmle.label | s2 |
| test.cpp:140:12:140:17 | new | semmle.label | new |
| test.cpp:140:12:140:17 | new | semmle.label | new |
| test.cpp:141:23:141:57 | s1 | semmle.label | s1 |
| test.cpp:143:14:143:19 | new | semmle.label | new |
| test.cpp:143:14:143:19 | new | semmle.label | new |
| test.cpp:145:28:145:68 | s1_2 | semmle.label | s1_2 |
| test.cpp:153:5:153:15 | ... = ... | semmle.label | ... = ... |
| test.cpp:153:9:153:15 | new | semmle.label | new |
| test.cpp:159:14:159:33 | a | semmle.label | a |
| test.cpp:166:5:166:15 | ... = ... | semmle.label | ... = ... |
| test.cpp:166:9:166:15 | new | semmle.label | new |
| test.cpp:168:5:168:15 | ... = ... | semmle.label | ... = ... |
| test.cpp:168:9:168:15 | new | semmle.label | new |
| test.cpp:171:14:171:33 | a | semmle.label | a |
| test.cpp:179:15:179:24 | (void *)... | semmle.label | (void *)... |
| test.cpp:179:15:179:24 | new | semmle.label | new |
| test.cpp:181:15:181:25 | u64 | semmle.label | u64 |
| test.cpp:187:15:187:24 | (void *)... | semmle.label | (void *)... |
| test.cpp:187:15:187:24 | new | semmle.label | new |
| test.cpp:189:25:189:45 | u64 | semmle.label | u64 |
| test.cpp:207:14:207:26 | (void *)... | semmle.label | (void *)... |
| test.cpp:207:14:207:26 | new | semmle.label | new |
| test.cpp:209:17:209:28 | si | semmle.label | si |
| test.cpp:217:13:217:18 | (void *)... | semmle.label | (void *)... |
| test.cpp:217:13:217:18 | new | semmle.label | new |
| test.cpp:218:30:218:65 | p | semmle.label | p |
| test.cpp:226:13:226:18 | (void *)... | semmle.label | (void *)... |
| test.cpp:226:13:226:18 | new | semmle.label | new |
| test.cpp:227:29:227:63 | p | semmle.label | p |
subpaths