@@ -1251,6 +1251,44 @@ module LdapExecution {
1251
1251
}
1252
1252
}
1253
1253
1254
+ /*
1255
+ * A data-flow node that collects methods binding a LDAP connection.
1256
+ *
1257
+ * Extend this class to refine existing API models. If you want to model new APIs,
1258
+ * extend `LdapBind::Range` instead.
1259
+ */
1260
+
1261
+ class LdapBind extends DataFlow:: Node instanceof LdapBind:: Range {
1262
+ /** Gets the argument containing the binding host */
1263
+ DataFlow:: Node getHost ( ) { result = super .getHost ( ) }
1264
+
1265
+ /** Gets the argument containing the binding expression. */
1266
+ DataFlow:: Node getPassword ( ) { result = super .getPassword ( ) }
1267
+
1268
+ /** Holds if the binding process use SSL. */
1269
+ predicate usesSsl ( ) { super .usesSsl ( ) }
1270
+ }
1271
+
1272
+ /** Provides classes for modeling LDAP bind-related APIs. */
1273
+ module LdapBind {
1274
+ /**
1275
+ * A data-flow node that collects methods binding a LDAP connection.
1276
+ *
1277
+ * Extend this class to model new APIs. If you want to refine existing API models,
1278
+ * extend `LdapBind` instead.
1279
+ */
1280
+ abstract class Range extends DataFlow:: Node {
1281
+ /** Gets the argument containing the binding host. */
1282
+ abstract DataFlow:: Node getHost ( ) ;
1283
+
1284
+ /** Gets the argument containing the binding expression. */
1285
+ abstract DataFlow:: Node getPassword ( ) ;
1286
+
1287
+ /** Holds if the binding process use SSL. */
1288
+ abstract predicate usesSsl ( ) ;
1289
+ }
1290
+ }
1291
+
1254
1292
/**
1255
1293
* A data-flow node that encodes a Jwt token.
1256
1294
*
0 commit comments