Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 2b8ef5a

Browse files
committed
C++: Add MaD model for 'CAtlList'.
1 parent c604a93 commit 2b8ef5a

2 files changed

Lines changed: 41 additions & 16 deletions

File tree

cpp/ql/lib/ext/CAtlList.model.yml

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
extensions:
2+
- addsTo:
3+
pack: codeql/cpp-all
4+
extensible: summaryModel
5+
data: # namespace, type, subtypes, name, signature, ext, input, output, kind, provenance
6+
- ["", "CAtlList", True, "AddHead", "", "", "Argument[*@0]", "Argument[-1].Element[@]", "value", "manual"]
7+
- ["", "CAtlList", True, "AddHeadList", "", "", "Argument[*0].Element[@]", "Argument[-1].Element[@]", "value", "manual"]
8+
- ["", "CAtlList", True, "AddTail", "", "", "Argument[*@0]", "Argument[-1].Element[@]", "value", "manual"]
9+
- ["", "CAtlList", True, "AddTailList", "", "", "Argument[*0].Element[@]", "Argument[-1].Element[@]", "value", "manual"]
10+
- ["", "CAtlList", True, "FindIndex", "", "", "Argument[0]", "ReturnValue", "taint", "manual"]
11+
- ["", "CAtlList", True, "GetAt", "", "", "Argument[-1].Element[@]", "ReturnValue[*@]", "value", "manual"]
12+
- ["", "CAtlList", True, "GetAt", "", "", "Argument[0]", "ReturnValue[*@]", "taint", "manual"]
13+
- ["", "CAtlList", True, "GetHead", "", "", "Argument[-1].Element[@]", "ReturnValue[*@]", "value", "manual"]
14+
- ["", "CAtlList", True, "GetHeadPosition", "", "", "Argument[-1]", "ReturnValue", "taint", "manual"]
15+
- ["", "CAtlList", True, "GetNext", "", "", "Argument[-1]", "ReturnValue", "taint", "manual"]
16+
- ["", "CAtlList", True, "GetPrev", "", "", "Argument[-1]", "ReturnValue", "taint", "manual"]
17+
- ["", "CAtlList", True, "GetTail", "", "", "Argument[-1].Element[@]", "ReturnValue[*@]", "value", "manual"]
18+
- ["", "CAtlList", True, "GetTailPosition", "", "", "Argument[-1]", "ReturnValue", "taint", "manual"]
19+
- ["", "CAtlList", True, "InsertAfter", "", "", "Argument[*@1]", "Argument[-1].Element[@]", "value", "manual"]
20+
- ["", "CAtlList", True, "InsertAfter", "", "", "Argument[*@1]", "ReturnValue", "taint", "manual"]
21+
- ["", "CAtlList", True, "InsertBefore", "", "", "Argument[*@1]", "Argument[-1].Element[@]", "value", "manual"]
22+
- ["", "CAtlList", True, "InsertBefore", "", "", "Argument[*@1]", "ReturnValue", "taint", "manual"]
23+
- ["", "CAtlList", True, "SetAt", "", "", "Argument[*@1]", "Argument[-1].Element[@]", "taint", "manual"]
24+
- ["", "CAtlList", True, "SwapElements", "", "", "Argument[0]", "Argument[1]", "taint", "manual"]
25+
- ["", "CAtlList", True, "SwapElements", "", "", "Argument[1]", "Argument[0]", "taint", "manual"]

cpp/ql/test/library-tests/dataflow/taint-tests/atl.cpp

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -297,19 +297,19 @@ void test_CAtlList() {
297297
CAtlList<int> list(10);
298298
sink(list.GetHead());
299299
list.AddHead(x);
300-
sink(list.GetHead()); // $ MISSING: ir
300+
sink(list.GetHead()); // $ ir
301301

302302
CAtlList<int> list2(10);
303303
list2.AddHeadList(&list);
304-
sink(list2.GetHead()); // $ MISSING: ir
304+
sink(list2.GetHead()); // $ ir
305305

306306
CAtlList<int> list3(10);
307307
list3.AddTail(x);
308-
sink(list3.GetHead()); // $ MISSING: ir
308+
sink(list3.GetHead()); // $ ir
309309

310310
CAtlList<int> list4(10);
311311
list4.AddTailList(&list3);
312-
sink(list4.GetHead()); // $ MISSING: ir
312+
sink(list4.GetHead()); // $ ir
313313

314314
{
315315
CAtlList<int> list5(10);
@@ -321,26 +321,26 @@ void test_CAtlList() {
321321
CAtlList<int> list6(10);
322322
list6.AddHead(x);
323323
auto pos = list6.FindIndex(0);
324-
sink(list6.GetAt(pos)); // $ MISSING: ir
324+
sink(list6.GetAt(pos)); // $ ir
325325
}
326326

327327
{
328328
CAtlList<int> list7(10);
329329
auto pos = list7.GetTailPosition();
330330
list7.InsertAfter(pos, x);
331-
sink(list7.GetHead()); // $ MISSING: ir
331+
sink(list7.GetHead()); // $ ir
332332
}
333333

334334
{
335335
CAtlList<int> list8(10);
336336
auto pos = list8.GetTailPosition();
337337
list8.InsertBefore(pos, x);
338-
sink(list8.GetHead()); // $ MISSING: ir
338+
sink(list8.GetHead()); // $ ir
339339
}
340340
{
341341
CAtlList<int> list9(10);
342342
list9.SetAt(list9.GetHeadPosition(), x);
343-
sink(list9.GetHead()); // $ MISSING: ir
343+
sink(list9.GetHead()); // $ ir
344344
}
345345
}
346346

@@ -349,19 +349,19 @@ void test_CAtlList() {
349349
CAtlList<int> list(10);
350350
sink(list.GetHead());
351351
list.AddHead(x);
352-
sink(list.GetHead()); // $ MISSING: ir
352+
sink(list.GetHead()); // $ ir
353353

354354
CAtlList<int> list2(10);
355355
list2.AddHeadList(&list);
356-
sink(list2.GetHead()); // $ MISSING: ir
356+
sink(list2.GetHead()); // $ ir
357357

358358
CAtlList<int> list3(10);
359359
list3.AddTail(x);
360-
sink(list3.GetHead()); // $ MISSING: ir
360+
sink(list3.GetHead()); // $ ir
361361

362362
CAtlList<int> list4(10);
363363
list4.AddTailList(&list3);
364-
sink(list4.GetHead()); // $ MISSING: ir
364+
sink(list4.GetHead()); // $ ir
365365

366366
{
367367
CAtlList<int> list5(10);
@@ -373,26 +373,26 @@ void test_CAtlList() {
373373
CAtlList<int> list6(10);
374374
list6.AddHead(x);
375375
auto pos = list6.FindIndex(0);
376-
sink(list6.GetAt(pos)); // $ MISSING: ir
376+
sink(list6.GetAt(pos)); // $ ir
377377
}
378378

379379
{
380380
CAtlList<int> list7(10);
381381
auto pos = list7.GetTailPosition();
382382
list7.InsertAfter(pos, x);
383-
sink(list7.GetHead()); // $ MISSING: ir
383+
sink(list7.GetHead()); // $ ir
384384
}
385385

386386
{
387387
CAtlList<int> list8(10);
388388
auto pos = list8.GetTailPosition();
389389
list8.InsertBefore(pos, x);
390-
sink(list8.GetHead()); // $ MISSING: ir
390+
sink(list8.GetHead()); // $ ir
391391
}
392392
{
393393
CAtlList<int> list9(10);
394394
list9.SetAt(list9.GetHeadPosition(), x);
395-
sink(list9.GetHead()); // $ MISSING: ir
395+
sink(list9.GetHead()); // $ ir
396396
}
397397
}
398398
}

0 commit comments

Comments
 (0)