@@ -77,12 +77,30 @@ private class IDbCommandConstructionSinkModelCsv extends SinkModelCsv {
77
77
}
78
78
}
79
79
80
+ /** Data flow for SqlCommand and friends. */
81
+ private class SqlCommandSummaryModelCsv extends SummaryModelCsv {
82
+ override predicate row ( string row ) {
83
+ row =
84
+ [
85
+ // SqlCommand
86
+ "System.Data.SqlClient;SqlCommand;false;SqlCommand;(System.String);;Argument[0];Argument[Qualifier];taint;manual" ,
87
+ "System.Data.SqlClient;SqlCommand;false;SqlCommand;(System.String,System.Data.SqlClient.SqlConnection);;Argument[0];Argument[Qualifier];taint;manual" ,
88
+ "System.Data.SqlClient;SqlCommand;false;SqlCommand;(System.String,System.Data.SqlClient.SqlConnection,System.Data.SqlClient.SqlTransaction);;Argument[0];Argument[Qualifier];taint;manual" ,
89
+ // SQLiteCommand.
90
+ "System.Data.SQLite;SQLiteCommand;false;SQLiteCommand;(System.String);;Argument[0];Argument[Qualifier];taint;manual" ,
91
+ "System.Data.SQLite;SQLiteCommand;false;SQLiteCommand;(System.String,System.Data.SQLite.SQLiteConnection);;Argument[0];Argument[Qualifier];taint;manual" ,
92
+ "System.Data.SQLite;SQLiteCommand;false;SQLiteCommand;(System.String,System.Data.SQLite.SQLiteConnection,System.Data.SQLite.SQLiteTransaction);;Argument[0];Argument[Qualifier];taint;manual" ,
93
+ ]
94
+ }
95
+ }
96
+
80
97
/** A construction of an `Adapter` object. */
81
98
private class SqlDataAdapterConstructionSinkModelCsv extends SinkModelCsv {
82
99
override predicate row ( string row ) {
83
100
row =
84
101
[
85
102
// SqlDataAdapter
103
+ "System.Data.SqlClient;SqlDataAdapter;false;SqlDataAdapter;(System.Data.SqlClient.SqlCommand);;Argument[0];sql;manual" ,
86
104
"System.Data.SqlClient;SqlDataAdapter;false;SqlDataAdapter;(System.String,System.String);;Argument[0];sql;manual" ,
87
105
"System.Data.SqlClient;SqlDataAdapter;false;SqlDataAdapter;(System.String,System.Data.SqlClient.SqlConnection);;Argument[0];sql;manual" ,
88
106
// SQLiteDataAdapter
0 commit comments