@@ -8,7 +8,7 @@ import go
88class StringMethod extends TaintTracking:: FunctionModel , Method {
99 StringMethod ( ) { getName ( ) = "String" and getNumParameter ( ) = 0 }
1010
11- override predicate hasTaintFlow ( DataFlow :: FunctionInput inp , DataFlow :: FunctionOutput outp ) {
11+ override predicate hasTaintFlow ( FunctionInput inp , FunctionOutput outp ) {
1212 inp .isReceiver ( ) and outp .isResult ( )
1313 }
1414}
@@ -20,7 +20,7 @@ class StringMethod extends TaintTracking::FunctionModel, Method {
2020private class AppendFunction extends TaintTracking:: FunctionModel {
2121 AppendFunction ( ) { this = Builtin:: append ( ) }
2222
23- override predicate hasTaintFlow ( DataFlow :: FunctionInput inp , DataFlow :: FunctionOutput outp ) {
23+ override predicate hasTaintFlow ( FunctionInput inp , FunctionOutput outp ) {
2424 inp .isParameter ( _) and outp .isResult ( )
2525 }
2626}
@@ -32,7 +32,7 @@ private class AppendFunction extends TaintTracking::FunctionModel {
3232private class CopyFunction extends TaintTracking:: FunctionModel {
3333 CopyFunction ( ) { this = Builtin:: copy ( ) }
3434
35- override predicate hasTaintFlow ( DataFlow :: FunctionInput inp , DataFlow :: FunctionOutput outp ) {
35+ override predicate hasTaintFlow ( FunctionInput inp , FunctionOutput outp ) {
3636 inp .isParameter ( 1 ) and outp .isParameter ( 0 )
3737 }
3838}
@@ -60,7 +60,7 @@ module PathFilePath {
6060 )
6161 }
6262
63- override predicate hasTaintFlow ( DataFlow :: FunctionInput inp , DataFlow :: FunctionOutput outp ) {
63+ override predicate hasTaintFlow ( FunctionInput inp , FunctionOutput outp ) {
6464 inp .isParameter ( _) and
6565 outp .isResult ( _)
6666 }
@@ -84,7 +84,7 @@ module Fmt {
8484 class Sprinter extends TaintTracking:: FunctionModel {
8585 Sprinter ( ) { this .hasQualifiedName ( "fmt" , [ "Sprint" , "Sprintf" , "Sprintln" ] ) }
8686
87- override predicate hasTaintFlow ( DataFlow :: FunctionInput inp , DataFlow :: FunctionOutput outp ) {
87+ override predicate hasTaintFlow ( FunctionInput inp , FunctionOutput outp ) {
8888 inp .isParameter ( _) and outp .isResult ( )
8989 }
9090 }
@@ -440,7 +440,7 @@ module OS {
440440 class Expand extends TaintTracking:: FunctionModel {
441441 Expand ( ) { hasQualifiedName ( "os" , "Expand" ) }
442442
443- override predicate hasTaintFlow ( DataFlow :: FunctionInput inp , DataFlow :: FunctionOutput outp ) {
443+ override predicate hasTaintFlow ( FunctionInput inp , FunctionOutput outp ) {
444444 inp .isParameter ( 0 ) and outp .isResult ( )
445445 }
446446 }
@@ -449,7 +449,7 @@ module OS {
449449 class ExpandEnv extends TaintTracking:: FunctionModel {
450450 ExpandEnv ( ) { hasQualifiedName ( "os" , "ExpandEnv" ) }
451451
452- override predicate hasTaintFlow ( DataFlow :: FunctionInput inp , DataFlow :: FunctionOutput outp ) {
452+ override predicate hasTaintFlow ( FunctionInput inp , FunctionOutput outp ) {
453453 inp .isParameter ( 0 ) and outp .isResult ( )
454454 }
455455 }
@@ -470,7 +470,7 @@ module Path {
470470 )
471471 }
472472
473- override predicate hasTaintFlow ( DataFlow :: FunctionInput inp , DataFlow :: FunctionOutput outp ) {
473+ override predicate hasTaintFlow ( FunctionInput inp , FunctionOutput outp ) {
474474 inp .isParameter ( _) and
475475 outp .isResult ( _)
476476 }
@@ -483,7 +483,7 @@ module Strings {
483483 class Join extends TaintTracking:: FunctionModel {
484484 Join ( ) { hasQualifiedName ( "strings" , "Join" ) }
485485
486- override predicate hasTaintFlow ( DataFlow :: FunctionInput inp , DataFlow :: FunctionOutput outp ) {
486+ override predicate hasTaintFlow ( FunctionInput inp , FunctionOutput outp ) {
487487 inp .isParameter ( [ 0 .. 1 ] ) and outp .isResult ( )
488488 }
489489 }
@@ -492,7 +492,7 @@ module Strings {
492492 class Repeat extends TaintTracking:: FunctionModel {
493493 Repeat ( ) { hasQualifiedName ( "strings" , "Repeat" ) }
494494
495- override predicate hasTaintFlow ( DataFlow :: FunctionInput inp , DataFlow :: FunctionOutput outp ) {
495+ override predicate hasTaintFlow ( FunctionInput inp , FunctionOutput outp ) {
496496 inp .isParameter ( 0 ) and outp .isResult ( )
497497 }
498498 }
@@ -503,7 +503,7 @@ module Strings {
503503 hasQualifiedName ( "strings" , "Replace" ) or hasQualifiedName ( "strings" , "ReplaceAll" )
504504 }
505505
506- override predicate hasTaintFlow ( DataFlow :: FunctionInput inp , DataFlow :: FunctionOutput outp ) {
506+ override predicate hasTaintFlow ( FunctionInput inp , FunctionOutput outp ) {
507507 ( inp .isParameter ( 0 ) or inp .isParameter ( 2 ) ) and
508508 outp .isResult ( )
509509 }
@@ -515,7 +515,7 @@ module Strings {
515515 exists ( string split | split .matches ( "Split%" ) | hasQualifiedName ( "strings" , split ) )
516516 }
517517
518- override predicate hasTaintFlow ( DataFlow :: FunctionInput inp , DataFlow :: FunctionOutput outp ) {
518+ override predicate hasTaintFlow ( FunctionInput inp , FunctionOutput outp ) {
519519 inp .isParameter ( 0 ) and outp .isResult ( )
520520 }
521521 }
@@ -526,7 +526,7 @@ module Strings {
526526 exists ( string conv | conv .matches ( "To%" ) | hasQualifiedName ( "strings" , conv ) )
527527 }
528528
529- override predicate hasTaintFlow ( DataFlow :: FunctionInput inp , DataFlow :: FunctionOutput outp ) {
529+ override predicate hasTaintFlow ( FunctionInput inp , FunctionOutput outp ) {
530530 inp .isParameter ( getNumParameter ( ) - 1 ) and outp .isResult ( )
531531 }
532532 }
@@ -535,7 +535,7 @@ module Strings {
535535 class Trimmer extends TaintTracking:: FunctionModel {
536536 Trimmer ( ) { exists ( string split | split .matches ( "Trim%" ) | hasQualifiedName ( "strings" , split ) ) }
537537
538- override predicate hasTaintFlow ( DataFlow :: FunctionInput inp , DataFlow :: FunctionOutput outp ) {
538+ override predicate hasTaintFlow ( FunctionInput inp , FunctionOutput outp ) {
539539 inp .isParameter ( 0 ) and outp .isResult ( )
540540 }
541541 }
@@ -591,7 +591,7 @@ module URL {
591591 hasQualifiedName ( "net/url" , "PathEscape" ) or hasQualifiedName ( "net/url" , "QueryEscape" )
592592 }
593593
594- override predicate hasTaintFlow ( DataFlow :: FunctionInput inp , DataFlow :: FunctionOutput outp ) {
594+ override predicate hasTaintFlow ( FunctionInput inp , FunctionOutput outp ) {
595595 inp .isParameter ( 0 ) and outp .isResult ( )
596596 }
597597 }
@@ -602,7 +602,7 @@ module URL {
602602 hasQualifiedName ( "net/url" , "PathUnescape" ) or hasQualifiedName ( "net/url" , "QueryUnescape" )
603603 }
604604
605- override predicate hasTaintFlow ( DataFlow :: FunctionInput inp , DataFlow :: FunctionOutput outp ) {
605+ override predicate hasTaintFlow ( FunctionInput inp , FunctionOutput outp ) {
606606 inp .isParameter ( 0 ) and outp .isResult ( 0 )
607607 }
608608 }
@@ -616,7 +616,7 @@ module URL {
616616 hasQualifiedName ( "net/url" , "ParseRequestURI" )
617617 }
618618
619- override predicate hasTaintFlow ( DataFlow :: FunctionInput inp , DataFlow :: FunctionOutput outp ) {
619+ override predicate hasTaintFlow ( FunctionInput inp , FunctionOutput outp ) {
620620 inp .isParameter ( 0 ) and
621621 outp .isResult ( 0 )
622622 or
@@ -638,7 +638,7 @@ module URL {
638638 )
639639 }
640640
641- override predicate hasTaintFlow ( DataFlow :: FunctionInput inp , DataFlow :: FunctionOutput outp ) {
641+ override predicate hasTaintFlow ( FunctionInput inp , FunctionOutput outp ) {
642642 inp .isReceiver ( ) and outp .isResult ( )
643643 }
644644 }
@@ -647,7 +647,7 @@ module URL {
647647 class UrlMarshalBinary extends TaintTracking:: FunctionModel , Method {
648648 UrlMarshalBinary ( ) { hasQualifiedName ( "net/url" , "URL" , "MarshalBinary" ) }
649649
650- override predicate hasTaintFlow ( DataFlow :: FunctionInput inp , DataFlow :: FunctionOutput outp ) {
650+ override predicate hasTaintFlow ( FunctionInput inp , FunctionOutput outp ) {
651651 inp .isReceiver ( ) and outp .isResult ( 0 )
652652 }
653653 }
@@ -656,7 +656,7 @@ module URL {
656656 class UrlResolveReference extends TaintTracking:: FunctionModel , Method {
657657 UrlResolveReference ( ) { hasQualifiedName ( "net/url" , "URL" , "ResolveReference" ) }
658658
659- override predicate hasTaintFlow ( DataFlow :: FunctionInput inp , DataFlow :: FunctionOutput outp ) {
659+ override predicate hasTaintFlow ( FunctionInput inp , FunctionOutput outp ) {
660660 ( inp .isReceiver ( ) or inp .isParameter ( 0 ) ) and
661661 outp .isResult ( )
662662 }
@@ -669,7 +669,7 @@ module URL {
669669 hasQualifiedName ( "net/url" , "UserPassword" )
670670 }
671671
672- override predicate hasTaintFlow ( DataFlow :: FunctionInput inp , DataFlow :: FunctionOutput outp ) {
672+ override predicate hasTaintFlow ( FunctionInput inp , FunctionOutput outp ) {
673673 inp .isParameter ( _) and outp .isResult ( )
674674 }
675675 }
@@ -683,7 +683,7 @@ module URL {
683683 )
684684 }
685685
686- override predicate hasTaintFlow ( DataFlow :: FunctionInput inp , DataFlow :: FunctionOutput outp ) {
686+ override predicate hasTaintFlow ( FunctionInput inp , FunctionOutput outp ) {
687687 inp .isReceiver ( ) and outp .isResult ( 0 )
688688 }
689689 }
@@ -697,7 +697,7 @@ module URL {
697697 )
698698 }
699699
700- override predicate hasTaintFlow ( DataFlow :: FunctionInput inp , DataFlow :: FunctionOutput outp ) {
700+ override predicate hasTaintFlow ( FunctionInput inp , FunctionOutput outp ) {
701701 inp .isReceiver ( ) and outp .isResult ( )
702702 }
703703 }
@@ -797,27 +797,27 @@ module EncodingJson {
797797 this .hasQualifiedName ( "encoding/json" , "MarshalIndent" )
798798 }
799799
800- override predicate hasTaintFlow ( DataFlow :: FunctionInput inp , DataFlow :: FunctionOutput outp ) {
800+ override predicate hasTaintFlow ( FunctionInput inp , FunctionOutput outp ) {
801801 inp = getAnInput ( ) and outp = getOutput ( )
802802 }
803803
804- override DataFlow :: FunctionInput getAnInput ( ) { result .isParameter ( 0 ) }
804+ override FunctionInput getAnInput ( ) { result .isParameter ( 0 ) }
805805
806- override DataFlow :: FunctionOutput getOutput ( ) { result .isResult ( 0 ) }
806+ override FunctionOutput getOutput ( ) { result .isResult ( 0 ) }
807807
808808 override string getFormat ( ) { result = "JSON" }
809809 }
810810
811811 private class UnmarshalFunction extends TaintTracking:: FunctionModel , UnmarshalingFunction:: Range {
812812 UnmarshalFunction ( ) { this .hasQualifiedName ( "encoding/json" , "Unmarshal" ) }
813813
814- override predicate hasTaintFlow ( DataFlow :: FunctionInput inp , DataFlow :: FunctionOutput outp ) {
814+ override predicate hasTaintFlow ( FunctionInput inp , FunctionOutput outp ) {
815815 inp = getAnInput ( ) and outp = getOutput ( )
816816 }
817817
818- override DataFlow :: FunctionInput getAnInput ( ) { result .isParameter ( 0 ) }
818+ override FunctionInput getAnInput ( ) { result .isParameter ( 0 ) }
819819
820- override DataFlow :: FunctionOutput getOutput ( ) { result .isParameter ( 1 ) }
820+ override FunctionOutput getOutput ( ) { result .isParameter ( 1 ) }
821821
822822 override string getFormat ( ) { result = "JSON" }
823823 }
@@ -828,7 +828,7 @@ module EncodingHex {
828828 private class DecodeStringFunction extends TaintTracking:: FunctionModel {
829829 DecodeStringFunction ( ) { this .hasQualifiedName ( "encoding/hex" , "DecodeString" ) }
830830
831- override predicate hasTaintFlow ( DataFlow :: FunctionInput inp , DataFlow :: FunctionOutput outp ) {
831+ override predicate hasTaintFlow ( FunctionInput inp , FunctionOutput outp ) {
832832 inp .isParameter ( 0 ) and
833833 outp .isResult ( 0 )
834834 }
@@ -840,7 +840,7 @@ module CryptoCipher {
840840 private class AeadOpenFunction extends TaintTracking:: FunctionModel , Method {
841841 AeadOpenFunction ( ) { this .hasQualifiedName ( "crypto/cipher" , "AEAD" , "Open" ) }
842842
843- override predicate hasTaintFlow ( DataFlow :: FunctionInput inp , DataFlow :: FunctionOutput outp ) {
843+ override predicate hasTaintFlow ( FunctionInput inp , FunctionOutput outp ) {
844844 inp .isParameter ( 2 ) and
845845 outp .isResult ( 0 )
846846 }
0 commit comments