mirror of
https://github.com/github/codeql.git
synced 2026-05-03 04:39:29 +02:00
JS: eliminate DefaultUrlRequest: extract the got library
This commit is contained in:
@@ -52,31 +52,6 @@ private string urlPropertyName() {
|
||||
result = "url"
|
||||
}
|
||||
|
||||
/**
|
||||
* A simple model of common URL request libraries.
|
||||
*/
|
||||
private class DefaultUrlRequest extends CustomUrlRequest {
|
||||
|
||||
DataFlow::Node url;
|
||||
|
||||
DefaultUrlRequest() {
|
||||
exists (string moduleName, DataFlow::SourceNode callee |
|
||||
this = callee.getACall() |
|
||||
(
|
||||
moduleName = "superagent" and
|
||||
callee = DataFlow::moduleMember(moduleName, httpMethodName()) and
|
||||
url = getArgument(0)
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
override DataFlow::Node getUrl() {
|
||||
result = url
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* A model of a URL request in the `request` library.
|
||||
*/
|
||||
@@ -218,3 +193,25 @@ private class GotUrlRequest extends CustomUrlRequest {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* A model of a URL request in the `superagent` library.
|
||||
*/
|
||||
private class SuperAgentUrlRequest extends CustomUrlRequest {
|
||||
|
||||
DataFlow::Node url;
|
||||
|
||||
SuperAgentUrlRequest() {
|
||||
exists (string moduleName, DataFlow::SourceNode callee |
|
||||
this = callee.getACall() |
|
||||
moduleName = "superagent" and
|
||||
callee = DataFlow::moduleMember(moduleName, httpMethodName()) and
|
||||
url = getArgument(0)
|
||||
)
|
||||
}
|
||||
|
||||
override DataFlow::Node getUrl() {
|
||||
result = url
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user