@@ -12,6 +12,7 @@ private class FlowModels extends SummaryModelCsv {
12
12
"org.json;XMLXsiTypeConverter;true;convert;;;Argument[0];ReturnValue;taint" ,
13
13
"org.json;CDL;false;rowToJSONArray;;;Argument[0];ReturnValue;taint" ,
14
14
"org.json;CDL;false;rowToJSONObject;;;Argument[0..1];ReturnValue;taint" ,
15
+ "org.json;CDL;false;rowToString;;;Argument[0];ReturnValue;taint" ,
15
16
"org.json;CDL;false;toJSONArray;;;Argument[0..1];ReturnValue;taint" ,
16
17
"org.json;CDL;false;toString;;;Argument[0..1];ReturnValue;taint" ,
17
18
"org.json;Cookie;false;escape;;;Argument[0];ReturnValue;taint" ,
@@ -60,7 +61,7 @@ private class FlowModels extends SummaryModelCsv {
60
61
"org.json;JSONArray;false;optNumber;;;Argument[-1];ReturnValue;taint" ,
61
62
"org.json;JSONArray;false;optQuery;;;Argument[-1];ReturnValue;taint" ,
62
63
"org.json;JSONArray;false;optString;;;Argument[-1];ReturnValue;taint" ,
63
- // Default values that may be returned by the `opt*` functions above:
64
+ // Default values that may be returned by the `opt*` methods above:
64
65
"org.json;JSONArray;false;optBigDecimal;;;Argument[1];ReturnValue;value" ,
65
66
"org.json;JSONArray;false;optBigInteger;;;Argument[1];ReturnValue;value" ,
66
67
"org.json;JSONArray;false;optBoolean;;;Argument[1];ReturnValue;value" ,
@@ -71,6 +72,7 @@ private class FlowModels extends SummaryModelCsv {
71
72
"org.json;JSONArray;false;optLong;;;Argument[1];ReturnValue;value" ,
72
73
"org.json;JSONArray;false;optNumber;;;Argument[1];ReturnValue;value" ,
73
74
"org.json;JSONArray;false;optString;;;Argument[1];ReturnValue;value" ,
75
+ "org.json;JSONArray;false;put;;;Argument[-1];ReturnValue;value" ,
74
76
"org.json;JSONArray;false;put;(boolean);;Argument[0];Argument[-1];taint" ,
75
77
"org.json;JSONArray;false;put;(Collection);;Element of Argument[0];Argument[-1];taint" ,
76
78
"org.json;JSONArray;false;put;(double);;Argument[0];Argument[-1];taint" ,
@@ -89,11 +91,13 @@ private class FlowModels extends SummaryModelCsv {
89
91
"org.json;JSONArray;false;put;(int,Map);;MapKey of Argument[1];Argument[-1];taint" ,
90
92
"org.json;JSONArray;false;put;(int,Map);;MapValue of Argument[1];Argument[-1];taint" ,
91
93
"org.json;JSONArray;false;put;(int,Object);;Argument[1];Argument[-1];taint" ,
94
+ "org.json;JSONArray;false;putAll;;;Argument[-1];ReturnValue;value" ,
92
95
"org.json;JSONArray;false;putAll;(Collection);;Element of Argument[0];Argument[-1];taint" ,
93
96
"org.json;JSONArray;false;putAll;(Iterable);;Element of Argument[0];Argument[-1];taint" ,
94
97
"org.json;JSONArray;false;putAll;(JSONArray);;Argument[0];Argument[-1];taint" ,
95
98
"org.json;JSONArray;false;putAll;(Object);;Argument[0];Argument[-1];taint" ,
96
99
"org.json;JSONArray;false;query;;;Argument[-1];ReturnValue;taint" ,
100
+ "org.json;JSONArray;false;remove;;;Argument[-1];ReturnValue;taint" ,
97
101
"org.json;JSONArray;false;toJSONObject;;;Argument[0];ReturnValue;taint" ,
98
102
"org.json;JSONArray;false;toJSONObject;;;Argument[-1];ReturnValue;taint" ,
99
103
"org.json;JSONArray;false;toList;;;Argument[0];Element of ReturnValue;taint" ,
@@ -114,9 +118,11 @@ private class FlowModels extends SummaryModelCsv {
114
118
"org.json;JSONObject;false;JSONObject;(String);;Argument[0];Argument[-1];taint" ,
115
119
"org.json;JSONObject;false;JSONObject;(String,Locale);;Argument[0];Argument[-1];taint" ,
116
120
"org.json;JSONObject;false;accumulate;;;Argument[0..1];Argument[-1];taint" ,
121
+ "org.json;JSONObject;false;accumulate;;;Argument[-1];ReturnValue;value" ,
117
122
"org.json;JSONObject;false;append;;;Argument[0..1];Argument[-1];taint" ,
123
+ "org.json;JSONObject;false;append;;;Argument[-1];ReturnValue;value" ,
118
124
"org.json;JSONObject;false;doubleToString;;;Argument[0];ReturnValue;taint" ,
119
- "org.json;JSONObject;false ;entrySet;;;Argument[-1];Element of ReturnValue;taint" ,
125
+ "org.json;JSONObject;true ;entrySet;;;Argument[-1];Element of ReturnValue;taint" ,
120
126
"org.json;JSONObject;false;get;;;Argument[-1];ReturnValue;taint" ,
121
127
"org.json;JSONObject;false;getBigDecimal;;;Argument[-1];ReturnValue;taint" ,
122
128
"org.json;JSONObject;false;getBigInteger;;;Argument[-1];ReturnValue;taint" ,
@@ -132,6 +138,7 @@ private class FlowModels extends SummaryModelCsv {
132
138
"org.json;JSONObject;false;getNumber;;;Argument[-1];ReturnValue;taint" ,
133
139
"org.json;JSONObject;false;getString;;;Argument[-1];ReturnValue;taint" ,
134
140
"org.json;JSONObject;false;increment;;;Argument[0];Argument[-1];taint" ,
141
+ "org.json;JSONObject;false;increment;;;Argument[-1];ReturnValue;value" ,
135
142
"org.json;JSONObject;false;keys;;;Argument[-1];Element of ReturnValue;taint" ,
136
143
"org.json;JSONObject;false;keySet;;;Argument[-1];Element of ReturnValue;taint" ,
137
144
"org.json;JSONObject;false;names;;;Argument[-1];ReturnValue;taint" , // Returns a JSONArray, hence this has no Element qualifier or similar
@@ -150,7 +157,7 @@ private class FlowModels extends SummaryModelCsv {
150
157
"org.json;JSONObject;false;optNumber;;;Argument[-1];ReturnValue;taint" ,
151
158
"org.json;JSONObject;false;optQuery;;;Argument[-1];ReturnValue;taint" ,
152
159
"org.json;JSONObject;false;optString;;;Argument[-1];ReturnValue;taint" ,
153
- // Default values that may be returned by the `opt*` functions above:
160
+ // Default values that may be returned by the `opt*` methods above:
154
161
"org.json;JSONObject;false;optBigDecimal;;;Argument[1];ReturnValue;value" ,
155
162
"org.json;JSONObject;false;optBigInteger;;;Argument[1];ReturnValue;value" ,
156
163
"org.json;JSONObject;false;optBoolean;;;Argument[1];ReturnValue;value" ,
@@ -161,6 +168,7 @@ private class FlowModels extends SummaryModelCsv {
161
168
"org.json;JSONObject;false;optLong;;;Argument[1];ReturnValue;value" ,
162
169
"org.json;JSONObject;false;optNumber;;;Argument[1];ReturnValue;value" ,
163
170
"org.json;JSONObject;false;optString;;;Argument[1];ReturnValue;value" ,
171
+ "org.json;JSONObject;false;put;;;Argument[-1];ReturnValue;value" ,
164
172
"org.json;JSONObject;false;put;(String,boolean);;Argument[0];Argument[-1];taint" ,
165
173
"org.json;JSONObject;false;put;(String,Collection);;Argument[0];Argument[-1];taint" ,
166
174
"org.json;JSONObject;false;put;(String,double);;Argument[0];Argument[-1];taint" ,
@@ -178,12 +186,15 @@ private class FlowModels extends SummaryModelCsv {
178
186
"org.json;JSONObject;false;put;(String,Map);;MapKey of Argument[1];Argument[-1];taint" ,
179
187
"org.json;JSONObject;false;put;(String,Map);;MapValue of Argument[1];Argument[-1];taint" ,
180
188
"org.json;JSONObject;false;put;(String,Object);;Argument[1];Argument[-1];taint" ,
189
+ "org.json;JSONObject;false;putOnce;;;Argument[-1];ReturnValue;value" ,
181
190
"org.json;JSONObject;false;putOnce;;;Argument[0..1];Argument[-1];taint" ,
191
+ "org.json;JSONObject;false;putOpt;;;Argument[-1];ReturnValue;value" ,
182
192
"org.json;JSONObject;false;putOpt;;;Argument[0..1];Argument[-1];taint" ,
183
193
"org.json;JSONObject;false;query;;;Argument[-1];ReturnValue;taint" ,
184
194
"org.json;JSONObject;false;quote;(String);;Argument[0];ReturnValue;taint" ,
185
195
"org.json;JSONObject;false;quote;(String,Writer);;Argument[0];Argument[1];taint" ,
186
196
"org.json;JSONObject;false;quote;(String,Writer);;Argument[1];ReturnValue;value" ,
197
+ "org.json;JSONObject;false;remove;;;Argument[-1];ReturnValue;taint" ,
187
198
"org.json;JSONObject;false;stringToValue;;;Argument[0];ReturnValue;taint" ,
188
199
"org.json;JSONObject;false;toJSONArray;;;Argument[-1];ReturnValue;taint" ,
189
200
"org.json;JSONObject;false;toMap;;;Argument[-1];MapKey of ReturnValue;taint" ,
@@ -202,14 +213,15 @@ private class FlowModels extends SummaryModelCsv {
202
213
"org.json;JSONPointer$Builder;false;append;;;Argument[-1];ReturnValue;value" ,
203
214
"org.json;JSONPointer$Builder;false;build;;;Argument[-1];ReturnValue;taint" ,
204
215
"org.json;JSONStringer;false;toString;;;Argument[-1];ReturnValue;taint" ,
205
- "org.json;JSONTokener;false;JSONTokener;;;Argument[0];Argument[-1];taint" ,
206
- "org.json;JSONTokener;false;next;;;Argument[-1];ReturnValue;taint" ,
207
- "org.json;JSONTokener;false;nextClean;;;Argument[-1];ReturnValue;taint" ,
208
- "org.json;JSONTokener;false;nextString;;;Argument[-1];ReturnValue;taint" ,
209
- "org.json;JSONTokener;false;nextTo;;;Argument[-1];ReturnValue;taint" ,
210
- "org.json;JSONTokener;false;nextValue;;;Argument[-1];ReturnValue;taint" ,
211
- "org.json;JSONTokener;false;syntaxError;;;Argument[0..1];ReturnValue;taint" ,
212
- "org.json;JSONTokener;false;toString;;;Argument[-1];ReturnValue;taint" ,
216
+ "org.json;JSONTokener;true;JSONTokener;;;Argument[0];Argument[-1];taint" ,
217
+ "org.json;JSONTokener;true;next;;;Argument[-1];ReturnValue;taint" ,
218
+ "org.json;JSONTokener;true;nextClean;;;Argument[-1];ReturnValue;taint" ,
219
+ "org.json;JSONTokener;true;nextString;;;Argument[-1];ReturnValue;taint" ,
220
+ "org.json;JSONTokener;true;nextTo;;;Argument[-1];ReturnValue;taint" ,
221
+ "org.json;JSONTokener;true;nextValue;;;Argument[-1];ReturnValue;taint" ,
222
+ "org.json;JSONTokener;true;syntaxError;;;Argument[0..1];ReturnValue;taint" ,
223
+ "org.json;JSONTokener;true;toString;;;Argument[-1];ReturnValue;taint" ,
224
+ // The following model doesn't work yet due to lack of support for reverse taint flow:
213
225
"org.json;JSONWriter;true;JSONWriter;;;Argument[-1];Argument[0];taint" ,
214
226
"org.json;JSONWriter;true;key;;;Argument[0];Argument[-1];taint" ,
215
227
"org.json;JSONWriter;true;value;;;Argument[0];Argument[-1];taint" ,
@@ -220,14 +232,14 @@ private class FlowModels extends SummaryModelCsv {
220
232
"org.json;JSONWriter;true;key;;;Argument[-1];ReturnValue;value" ,
221
233
"org.json;JSONWriter;true;object;;;Argument[-1];ReturnValue;value" ,
222
234
"org.json;JSONWriter;true;value;;;Argument[-1];ReturnValue;value" ,
223
- "org.json;Property;false;toProperties;;;Argument[0];MapKey of ReturnValue;taint" ,
224
- "org.json;Property;false;toProperties;;;Argument[0];MapValue of ReturnValue;taint" ,
225
235
"org.json;Property;false;toJSONObject;;;MapKey of Argument[0];ReturnValue;taint" ,
226
236
"org.json;Property;false;toJSONObject;;;MapValue of Argument[0];ReturnValue;taint" ,
237
+ "org.json;Property;false;toProperties;;;Argument[0];MapKey of ReturnValue;taint" ,
238
+ "org.json;Property;false;toProperties;;;Argument[0];MapValue of ReturnValue;taint" ,
227
239
"org.json;XML;false;escape;;;Argument[0];ReturnValue;taint" ,
228
240
"org.json;XML;false;stringToValue;;;Argument[0];ReturnValue;taint" ,
229
241
"org.json;XML;false;toJSONObject;;;Argument[0];ReturnValue;taint" ,
230
- "org.json;XML;false;toString;;;Argument[0];ReturnValue;taint" ,
242
+ "org.json;XML;false;toString;;;Argument[0..1 ];ReturnValue;taint" ,
231
243
"org.json;XML;false;unescape;;;Argument[0];ReturnValue;taint" ,
232
244
"org.json;XMLTokener;false;XMLTokener;;;Argument[0];Argument[-1];taint" ,
233
245
"org.json;XMLTokener;false;nextCDATA;;;Argument[-1];ReturnValue;taint" ,
0 commit comments