File tree Expand file tree Collapse file tree 3 files changed +18
-28
lines changed
Expand file tree Collapse file tree 3 files changed +18
-28
lines changed Original file line number Diff line number Diff line change 1212import java
1313import semmle.code.xml.MavenPom
1414
15- private class DeclaredRepository extends PomElement {
16- DeclaredRepository ( ) {
17- this .getName ( ) = "repository" or
18- this .getName ( ) = "snapshotRepository" or
19- this .getName ( ) = "pluginRepository"
20- }
21-
22- string getUrl ( ) { result = getAChild ( "url" ) .( PomElement ) .getValue ( ) }
23-
24- predicate isBintrayRepositoryUsage ( ) {
25- getUrl ( ) .matches ( "%.bintray.com%" )
26- }
15+ predicate isBintrayRepositoryUsage ( DeclaredRepository repository ) {
16+ repository .getUrl ( ) .matches ( "%.bintray.com%" )
2717}
2818
2919from DeclaredRepository repository
30- where repository . isBintrayRepositoryUsage ( )
20+ where isBintrayRepositoryUsage ( repository )
3121select repository ,
32- "Downloading or uploading artifacts to deprecated repository " +
33- repository .getUrl ( )
22+ "Downloading or uploading artifacts to deprecated repository " + repository .getUrl ( )
Original file line number Diff line number Diff line change 1515import java
1616import semmle.code.xml.MavenPom
1717
18- private class DeclaredRepository extends PomElement {
19- DeclaredRepository ( ) {
20- this .getName ( ) = "repository" or
21- this .getName ( ) = "snapshotRepository" or
22- this .getName ( ) = "pluginRepository"
23- }
24-
25- string getUrl ( ) { result = getAChild ( "url" ) .( PomElement ) .getValue ( ) }
26-
27- predicate isInsecureRepositoryUsage ( ) {
28- getUrl ( ) .regexpMatch ( "(?i)^(http|ftp)://(?!localhost[:/]).*" )
29- }
18+ predicate isInsecureRepositoryUsage ( DeclaredRepository repository ) {
19+ repository .getUrl ( ) .regexpMatch ( "(?i)^(http|ftp)://(?!localhost[:/]).*" )
3020}
3121
3222from DeclaredRepository repository
33- where repository . isInsecureRepositoryUsage ( )
23+ where isInsecureRepositoryUsage ( repository )
3424select repository ,
3525 "Downloading or uploading artifacts over insecure protocol (eg. http or ftp) to/from repository " +
3626 repository .getUrl ( )
Original file line number Diff line number Diff line change @@ -365,6 +365,17 @@ class PomProperty extends PomElement {
365365 PomProperty ( ) { getParent ( ) instanceof PomProperties }
366366}
367367
368+ /**
369+ * A repository block inside of a maven pom.
370+ */
371+ class DeclaredRepository extends PomElement {
372+ DeclaredRepository ( ) {
373+ this .getName ( ) = [ "repository" , "snapshotRepository" , "pluginRepository" ]
374+ }
375+
376+ string getUrl ( ) { result = getAChild ( "url" ) .( PomElement ) .getValue ( ) }
377+ }
378+
368379/**
369380 * A folder that represents a maven local repository using the standard layout. Any folder called
370381 * "repository" with a parent name ".m2" is considered to be a maven repository.
You can’t perform that action at this time.
0 commit comments