@@ -212,8 +212,12 @@ module UntrustedDataToExternalApiFlow = DataFlow::Global<UntrustedDataConfig>;
212212/** DEPRECATED: Alias for UntrustedDataToExternalApiConfig */
213213deprecated class UntrustedDataToExternalAPIConfig = UntrustedDataToExternalApiConfig ;
214214
215- /** A configuration for tracking flow from `RemoteFlowSource`s to `UnknownExternalApiDataNode`s. */
216- class UntrustedDataToUnknownExternalApiConfig extends TaintTracking:: Configuration {
215+ /**
216+ * DEPRECATED: Use `UntrustedDataToUnknownExternalApiFlow` instead.
217+ *
218+ * A configuration for tracking flow from `RemoteFlowSource`s to `UnknownExternalApiDataNode`s.
219+ */
220+ deprecated class UntrustedDataToUnknownExternalApiConfig extends TaintTracking:: Configuration {
217221 UntrustedDataToUnknownExternalApiConfig ( ) { this = "UntrustedDataToUnknownExternalAPIConfig" }
218222
219223 override predicate isSource ( DataFlow:: Node source ) { source instanceof UntrustedFlowSource }
@@ -224,6 +228,15 @@ class UntrustedDataToUnknownExternalApiConfig extends TaintTracking::Configurati
224228/** DEPRECATED: Alias for UntrustedDataToUnknownExternalApiConfig */
225229deprecated class UntrustedDataToUnknownExternalAPIConfig = UntrustedDataToUnknownExternalApiConfig ;
226230
231+ private module UntrustedDataToUnknownExternalApiConfig implements DataFlow:: ConfigSig {
232+ predicate isSource ( DataFlow:: Node source ) { source instanceof UntrustedFlowSource }
233+
234+ predicate isSink ( DataFlow:: Node sink ) { sink instanceof UnknownExternalApiDataNode }
235+ }
236+
237+ module UntrustedDataToUnknownExternalApiFlow =
238+ DataFlow:: Global< UntrustedDataToUnknownExternalApiConfig > ;
239+
227240/** A node representing untrusted data being passed to an external API. */
228241class UntrustedExternalApiDataNode extends ExternalApiDataNode {
229242 UntrustedExternalApiDataNode ( ) { UntrustedDataToExternalApiFlow:: flow ( _, this ) }
0 commit comments