File tree Expand file tree Collapse file tree 3 files changed +42
-0
lines changed
cpp/ql/test/library-tests/dataflow/taint-tests Expand file tree Collapse file tree 3 files changed +42
-0
lines changed Original file line number Diff line number Diff line change @@ -1210,3 +1210,33 @@ void test_CStringT() {
1210
1210
sink (s1.TrimRight (" abc" ).GetString ()); // $ ir
1211
1211
sink (s1.TrimRight ().GetString ()); // $ ir
1212
1212
}
1213
+
1214
+ struct CStringData {
1215
+ void * data () throw();
1216
+ };
1217
+
1218
+ void test_CStringData () {
1219
+ CStringData d = source<CStringData>();
1220
+ sink (d.data ()); // $ MISSING: ir
1221
+ }
1222
+
1223
+ template <typename TCharType>
1224
+ struct CStrBufT {
1225
+ typedef CSimpleStringT<TCharType> StringType;
1226
+
1227
+ using PCXSTR = typename StringType::PCXSTR;
1228
+ using PXSTR = typename StringType::PXSTR;
1229
+
1230
+ CStrBufT (StringType& str, int nMinLength, DWORD dwFlags);
1231
+ CStrBufT (StringType& str);
1232
+
1233
+ operator PCXSTR () const throw();
1234
+ operator PXSTR () throw();
1235
+ };
1236
+
1237
+ void test_CStrBufT () {
1238
+ CStringT<char > s = source<CStringT<char >>();
1239
+ CStrBufT<char > b (s, 42 , 0 );
1240
+ sink (static_cast <CStrBufT<char >::PCXSTR>(b)); // $ MISSING: ir
1241
+ sink (static_cast <CStrBufT<char >::PXSTR>(b)); // $ MISSING: ir
1242
+ }
Original file line number Diff line number Diff line change @@ -1293,6 +1293,13 @@ WARNING: module 'TaintTracking' has been deprecated and may be removed in future
1293
1293
| atl.cpp:1210:8:1210:9 | ref arg s1 | atl.cpp:1211:8:1211:9 | s1 | |
1294
1294
| atl.cpp:1210:8:1210:9 | ref arg s1 | atl.cpp:1212:1:1212:1 | s1 | |
1295
1295
| atl.cpp:1211:8:1211:9 | ref arg s1 | atl.cpp:1212:1:1212:1 | s1 | |
1296
+ | atl.cpp:1219:19:1219:37 | call to source | atl.cpp:1220:8:1220:8 | d | |
1297
+ | atl.cpp:1238:22:1238:43 | call to source | atl.cpp:1239:20:1239:20 | s | |
1298
+ | atl.cpp:1238:22:1238:43 | call to source | atl.cpp:1242:1:1242:1 | s | |
1299
+ | atl.cpp:1239:20:1239:20 | ref arg s | atl.cpp:1242:1:1242:1 | s | |
1300
+ | atl.cpp:1239:20:1239:28 | call to CStrBufT | atl.cpp:1240:44:1240:44 | b | |
1301
+ | atl.cpp:1239:20:1239:28 | call to CStrBufT | atl.cpp:1241:43:1241:43 | b | |
1302
+ | atl.cpp:1240:44:1240:44 | ref arg b | atl.cpp:1241:43:1241:43 | b | |
1296
1303
| bsd.cpp:17:11:17:16 | call to source | bsd.cpp:20:18:20:18 | s | |
1297
1304
| bsd.cpp:18:12:18:15 | addr | bsd.cpp:20:22:20:25 | addr | |
1298
1305
| bsd.cpp:18:12:18:15 | addr | bsd.cpp:23:8:23:11 | addr | |
Original file line number Diff line number Diff line change @@ -1100,6 +1100,11 @@ getParameterTypeName
1100
1100
| atl.cpp:1091:13:1091:20 | TrimLeft | 0 | PCXSTR |
1101
1101
| atl.cpp:1093:13:1093:21 | TrimRight | 0 | XCHAR |
1102
1102
| atl.cpp:1094:13:1094:21 | TrimRight | 0 | PCXSTR |
1103
+ | atl.cpp:1214:8:1214:8 | operator= | 0 | CStringData && |
1104
+ | atl.cpp:1214:8:1214:8 | operator= | 0 | const CStringData & |
1105
+ | atl.cpp:1230:3:1230:10 | CStrBufT | 0 | StringType & |
1106
+ | atl.cpp:1230:3:1230:10 | CStrBufT | 1 | int |
1107
+ | atl.cpp:1230:3:1230:10 | CStrBufT | 2 | DWORD |
1103
1108
| bsd.cpp:6:8:6:8 | operator= | 0 | const sockaddr & |
1104
1109
| bsd.cpp:6:8:6:8 | operator= | 0 | sockaddr && |
1105
1110
| bsd.cpp:12:5:12:10 | accept | 0 | int |
You can’t perform that action at this time.
0 commit comments