File tree Expand file tree Collapse file tree 1 file changed +7
-14
lines changed
javascript/ql/lib/semmle/javascript/frameworks Expand file tree Collapse file tree 1 file changed +7
-14
lines changed Original file line number Diff line number Diff line change @@ -1077,24 +1077,17 @@ module Express {
1077
1077
* An express route setup configured with the `cors` package.
1078
1078
*/
1079
1079
class CorsConfiguration extends DataFlow:: MethodCallNode {
1080
+ Cors:: Cors corsConfig ;
1081
+
1080
1082
CorsConfiguration ( ) {
1081
1083
exists ( Express:: RouteSetup setup | this = setup |
1082
- setup .isUseCall ( ) and setup . getArgument ( 0 ) instanceof Cors :: Cors
1083
- or
1084
- not setup . isUseCall ( ) and setup .getAnArgument ( ) instanceof Cors :: Cors
1084
+ if setup .isUseCall ( )
1085
+ then corsConfig = setup . getArgument ( 0 )
1086
+ else corsConfig = setup .getArgument ( any ( int i | i > 0 ) )
1085
1087
)
1086
1088
}
1087
1089
1088
- /** Gets the cors argument */
1089
- Cors:: Cors getArgument ( ) { result = this .getArgument ( 0 ) }
1090
-
1091
- /** Gets the options used to configure `cors`. */
1092
- DataFlow:: Node getCorsArgument ( ) { result = this .getArgument ( ) .getOptionsArgument ( ) }
1093
-
1094
- /** Holds if cors is using its default configuration. */
1095
- predicate isDefault ( ) { this .getArgument ( ) .isDefault ( ) }
1096
-
1097
- /** Gets the `origin` option that the call to `cors` is configured with. */
1098
- DataFlow:: Node getOrigin ( ) { result = this .getArgument ( ) .getOrigin ( ) }
1090
+ /** Gets the expression that configures `cors` on this route setup. */
1091
+ Cors:: Cors getCorsConfiguration ( ) { result = corsConfig }
1099
1092
}
1100
1093
}
You can’t perform that action at this time.
0 commit comments