File tree Expand file tree Collapse file tree
csharp/ql/test/utils/model-generator Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1- | Summaries;BasicFlow;false;AssignFieldToArray;(System.Object[]);Argument[Qualifier];Argument[0].Element;taint |
2- | Summaries;BasicFlow;false;AssignToArray;(System.Int32,System.Int32[]);Argument[0];Argument[1].Element;taint |
3- | Summaries;BasicFlow;false;ReturnArrayElement;(System.Int32[]);Argument[0].Element;ReturnValue;taint |
41| Summaries;BasicFlow;false;ReturnField;();Argument[Qualifier];ReturnValue;taint |
52| Summaries;BasicFlow;false;ReturnParam0;(System.String,System.Object);Argument[0];ReturnValue;taint |
63| Summaries;BasicFlow;false;ReturnParam1;(System.String,System.Object);Argument[1];ReturnValue;taint |
96| Summaries;BasicFlow;false;ReturnSubstring;(System.String);Argument[0];ReturnValue;taint |
107| Summaries;BasicFlow;false;ReturnThis;(System.Object);Argument[Qualifier];ReturnValue;value |
118| Summaries;BasicFlow;false;SetField;(System.String);Argument[0];Argument[Qualifier];taint |
9+ | Summaries;CollectionFlow;false;AddFieldToList;(System.Collections.Generic.List<System.String>);Argument[Qualifier];Argument[0].Element;taint |
10+ | Summaries;CollectionFlow;false;AddToList;(System.Collections.Generic.List<System.Object>,System.Object);Argument[1];Argument[0].Element;taint |
11+ | Summaries;CollectionFlow;false;AssignFieldToArray;(System.Object[]);Argument[Qualifier];Argument[0].Element;taint |
12+ | Summaries;CollectionFlow;false;AssignToArray;(System.Int32,System.Int32[]);Argument[0];Argument[1].Element;taint |
13+ | Summaries;CollectionFlow;false;ReturnArrayElement;(System.Int32[]);Argument[0].Element;ReturnValue;taint |
14+ | Summaries;CollectionFlow;false;ReturnFieldInAList;();Argument[Qualifier];ReturnValue;taint |
15+ | Summaries;CollectionFlow;false;ReturnListElement;(System.Collections.Generic.List<System.Object>);Argument[0].Element;ReturnValue;taint |
Original file line number Diff line number Diff line change 11using System ;
2+ using System . Collections . Generic ;
23
34namespace Summaries ;
45
@@ -31,6 +32,21 @@ public string ReturnSubstring(string s)
3132 return s . Substring ( 0 , 1 ) ;
3233 }
3334
35+ public void SetField ( string s )
36+ {
37+ tainted = s ;
38+ }
39+
40+ public string ReturnField ( )
41+ {
42+ return tainted ;
43+ }
44+ }
45+
46+ public class CollectionFlow
47+ {
48+ private string tainted ;
49+
3450 public int ReturnArrayElement ( int [ ] input )
3551 {
3652 return input [ 0 ] ;
@@ -41,18 +57,28 @@ public void AssignToArray(int data, int[] target)
4157 target [ 0 ] = data ;
4258 }
4359
44- public void SetField ( string s )
60+ public void AssignFieldToArray ( object [ ] target )
4561 {
46- tainted = s ;
62+ target [ 0 ] = tainted ;
4763 }
4864
49- public string ReturnField ( )
65+ public object ReturnListElement ( List < object > input )
5066 {
51- return tainted ;
67+ return input [ 0 ] ;
5268 }
5369
54- public void AssignFieldToArray ( object [ ] target )
70+ public void AddToList ( List < object > input , object data )
5571 {
56- target [ 0 ] = tainted ;
72+ input . Add ( data ) ;
73+ }
74+
75+ public void AddFieldToList ( List < string > input )
76+ {
77+ input . Add ( tainted ) ;
78+ }
79+
80+ public List < string > ReturnFieldInAList ( )
81+ {
82+ return new List < string > { tainted } ;
5783 }
5884}
You can’t perform that action at this time.
0 commit comments