@@ -30,52 +30,54 @@ import (
3030
3131func handler (req * http.Request , ctx * goproxy.ProxyCtx ) {
3232 username := req .URL .Query ()["username" ][0 ]
33- slice := []any {"username" , username }
33+ password := req .URL .Query ()["password" ][0 ]
34+ formatString := req .URL .Query ()["formatString" ][0 ]
3435 testFlag := req .URL .Query ()["testFlag" ][0 ]
36+ slice := []any {"username" , username }
3537
3638 {
37- fmt .Print (username ) // $ hasTaintFlow="username"
38- fmt .Printf (username ) // $ hasTaintFlow="username"
39- fmt .Println (username ) // $ hasTaintFlow="username"
40- fmt .Fprint (nil , username ) // Fprint functions are only loggers if they target stdout/stderr
41- fmt .Fprintf (nil , username )
42- fmt .Fprintln (nil , username )
39+ fmt .Print (username , password ) // $ hasTaintFlow="username" hasTaintFlow="password "
40+ fmt .Printf (formatString , username , password ) // $ hasTaintFlow="formatString" hasTaintFlow=" username" hasTaintFlow="password "
41+ fmt .Println (username , password ) // $ hasTaintFlow="username" hasTaintFlow="password "
42+ fmt .Fprint (nil , username , password ) // Fprint functions are only loggers if they target stdout/stderr
43+ fmt .Fprintf (nil , formatString , username , password )
44+ fmt .Fprintln (nil , username , password )
4345 }
4446 // log
4547 {
46- log .Print ("user %s logged in. \n " , username ) // $ hasTaintFlow="username"
47- log .Printf ("user %s logged in. \n " , username ) // $ hasTaintFlow="username"
48- log .Println ("user %s logged in. \n " , username ) // $ hasTaintFlow="username"
48+ log .Print ("user is logged in: " , username , password ) // $ hasTaintFlow="username" hasTaintFlow="password "
49+ log .Printf (formatString , username , password ) // $ hasTaintFlow="formatString" hasTaintFlow=" username" hasTaintFlow="password "
50+ log .Println ("user is logged in: " , username , password ) // $ hasTaintFlow="username" hasTaintFlow="password "
4951
5052 if testFlag == "true" {
51- log .Fatal ("user %s logged in. \n " , username ) // $ hasTaintFlow="username"
53+ log .Fatal ("user is logged in: " , username , password ) // $ hasTaintFlow="username" hasTaintFlow="password "
5254 }
5355 if testFlag == "true" {
54- log .Fatalf ("user %s logged in. \n " , username ) // $ hasTaintFlow="username"
56+ log .Fatalf (formatString , username , password ) // $ hasTaintFlow="formatString" hasTaintFlow=" username" hasTaintFlow="password "
5557 }
5658 if testFlag == "true" {
57- log .Fatalln ("user %s logged in. \n " , username ) // $ hasTaintFlow="username"
59+ log .Fatalln ("user is logged in: " , username , password ) // $ hasTaintFlow="username" hasTaintFlow="password "
5860 }
5961 if testFlag == "true" {
60- log .Panic ("user %s logged in. \n " , username ) // $ hasTaintFlow="username"
62+ log .Panic ("user is logged in: " , username , password ) // $ hasTaintFlow="username" hasTaintFlow="password "
6163 }
6264 if testFlag == "true" {
63- log .Panicf ("user %s logged in. \n " , username ) // $ hasTaintFlow="username"
65+ log .Panicf (formatString , username , password ) // $ hasTaintFlow="formatString" hasTaintFlow=" username" hasTaintFlow="password "
6466 }
6567 if testFlag == "true" {
66- log .Panicln ("user %s logged in. \n " , username ) // $ hasTaintFlow="username"
68+ log .Panicln ("user is logged in: " , username , password ) // $ hasTaintFlow="username" hasTaintFlow="password "
6769 }
6870
6971 logger := log .Default ()
70- logger .Print ("user %s logged in. \n " , username ) // $ hasTaintFlow="username"
71- logger .Printf ("user %s logged in. \n " , username ) // $ hasTaintFlow="username"
72- logger .Println ("user %s logged in. \n " , username ) // $ hasTaintFlow="username"
73- logger .Fatal ("user %s logged in. \n " , username ) // $ hasTaintFlow="username"
74- logger .Fatalf ("user %s logged in. \n " , username ) // $ hasTaintFlow="username"
75- logger .Fatalln ("user %s logged in. \n " , username ) // $ hasTaintFlow="username"
76- logger .Panic ("user %s logged in. \n " , username ) // $ hasTaintFlow="username"
77- logger .Panicf ("user %s logged in. \n " , username ) // $ hasTaintFlow="username"
78- logger .Panicln ("user %s logged in. \n " , username ) // $ hasTaintFlow="username"
72+ logger .Print ("user is logged in: " , username , password ) // $ hasTaintFlow="username" hasTaintFlow="password "
73+ logger .Printf (formatString , username , password ) // $ hasTaintFlow="formatString" hasTaintFlow=" username" hasTaintFlow="password "
74+ logger .Println ("user is logged in: " , username , password ) // $ hasTaintFlow="username" hasTaintFlow="password "
75+ logger .Fatal ("user is logged in: " , username , password ) // $ hasTaintFlow="username" hasTaintFlow="password "
76+ logger .Fatalf (formatString , username , password ) // $ hasTaintFlow="formatString" hasTaintFlow=" username" hasTaintFlow="password "
77+ logger .Fatalln ("user is logged in: " , username , password ) // $ hasTaintFlow="username" hasTaintFlow="password "
78+ logger .Panic ("user is logged in: " , username , password ) // $ hasTaintFlow="username" hasTaintFlow="password "
79+ logger .Panicf (formatString , username , password ) // $ hasTaintFlow="formatString" hasTaintFlow=" username" hasTaintFlow="password "
80+ logger .Panicln ("user is logged in: " , username , password ) // $ hasTaintFlow="username" hasTaintFlow="password "
7981 }
8082 // k8s.io/klog
8183 {
@@ -421,7 +423,6 @@ func handler(req *http.Request, ctx *goproxy.ProxyCtx) {
421423 simpleLogger .Tracew ("%s" , username ) // $ hasTaintFlow="username"
422424 simpleLogger .Debugw ("%s %s" , slice ... ) // $ hasTaintFlow="slice"
423425 }
424-
425426}
426427
427428type Logger interface {
@@ -514,8 +515,12 @@ func handlerGood4(req *http.Request, ctx *goproxy.ProxyCtx) {
514515 verbose .Infof ("user %q logged in.\n " , username )
515516 klog .Infof ("user %q logged in.\n " , username )
516517 klog .Errorf ("user %q logged in.\n " , username )
517- klog .Fatalf ("user %q logged in.\n " , username )
518- klog .Exitf ("user %q logged in.\n " , username )
518+ if testFlag == " true" {
519+ klog .Fatalf ("user %q logged in.\n " , username )
520+ }
521+ if testFlag == " true" {
522+ klog .Exitf ("user %q logged in.\n " , username )
523+ }
519524 }
520525 // elazarl/goproxy
521526 {
@@ -529,16 +534,24 @@ func handlerGood4(req *http.Request, ctx *goproxy.ProxyCtx) {
529534
530535 glog .Infof ("user %q logged in.\n " , username )
531536 glog .Errorf ("user %q logged in.\n " , username )
532- glog .Fatalf ("user %q logged in.\n " , username )
533- glog .Exitf ("user %q logged in.\n " , username )
537+ if testFlag == " true" {
538+ glog .Fatalf ("user %q logged in.\n " , username )
539+ }
540+ if testFlag == " true" {
541+ glog .Exitf ("user %q logged in.\n " , username )
542+ }
534543 }
535544 // sirupsen/logrus
536545 {
537546 logrus .Debugf ("user %q logged in.\n " , username )
538547 logrus .Errorf ("user %q logged in.\n " , username )
539- logrus .Fatalf ("user %q logged in.\n " , username )
548+ if testFlag == " true" {
549+ logrus .Fatalf ("user %q logged in.\n " , username )
550+ }
540551 logrus .Infof ("user %q logged in.\n " , username )
541- logrus .Panicf ("user %q logged in.\n " , username )
552+ if testFlag == " true" {
553+ logrus .Panicf ("user %q logged in.\n " , username )
554+ }
542555 logrus .Printf ("user %q logged in.\n " , username )
543556 logrus .Tracef ("user %q logged in.\n " , username )
544557 logrus .Warnf ("user %q logged in.\n " , username )
@@ -548,10 +561,14 @@ func handlerGood4(req *http.Request, ctx *goproxy.ProxyCtx) {
548561 entry := logrus .WithFields (fields )
549562 entry .Debugf ("user %q logged in.\n " , username )
550563 entry .Errorf ("user %q logged in.\n " , username )
551- entry .Fatalf ("user %q logged in.\n " , username )
564+ if testFlag == " true" {
565+ entry .Fatalf ("user %q logged in.\n " , username )
566+ }
552567 entry .Infof ("user %q logged in.\n " , username )
553568 entry .Logf (0 , "user %q logged in.\n " , username )
554- entry .Panicf ("user %q logged in.\n " , username )
569+ if testFlag == " true" {
570+ entry .Panicf ("user %q logged in.\n " , username )
571+ }
555572 entry .Printf ("user %q logged in.\n " , username )
556573 entry .Tracef ("user %q logged in.\n " , username )
557574 entry .Warnf ("user %q logged in.\n " , username )
@@ -560,10 +577,14 @@ func handlerGood4(req *http.Request, ctx *goproxy.ProxyCtx) {
560577 logger := entry .Logger
561578 logger .Debugf ("user %q logged in.\n " , username )
562579 logger .Errorf ("user %q logged in.\n " , username )
563- logger .Fatalf ("user %q logged in.\n " , username )
580+ if testFlag == " true" {
581+ logger .Fatalf ("user %q logged in.\n " , username )
582+ }
564583 logger .Infof ("user %q logged in.\n " , username )
565584 logger .Logf (0 , "user %q logged in.\n " , username )
566- logger .Panicf ("user %q logged in.\n " , username )
585+ if testFlag == " true" {
586+ logger .Panicf ("user %q logged in.\n " , username )
587+ }
567588 logger .Printf ("user %q logged in.\n " , username )
568589 logger .Tracef ("user %q logged in.\n " , username )
569590 logger .Warnf ("user %q logged in.\n " , username )
@@ -599,8 +620,12 @@ func handlerGood4(req *http.Request, ctx *goproxy.ProxyCtx) {
599620 verbose .Infof ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
600621 klog .Infof ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
601622 klog .Errorf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
602- klog .Fatalf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
603- klog .Exitf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
623+ if testFlag == " true" {
624+ klog .Fatalf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
625+ }
626+ if testFlag == " true" {
627+ klog .Exitf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
628+ }
604629 }
605630 // elazarl/goproxy
606631 {
@@ -614,41 +639,57 @@ func handlerGood4(req *http.Request, ctx *goproxy.ProxyCtx) {
614639
615640 glog .Infof ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
616641 glog .Errorf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
617- glog .Fatalf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
618- glog .Exitf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
642+ if testFlag == " true" {
643+ glog .Fatalf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
644+ }
645+ if testFlag == " true" {
646+ glog .Exitf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
647+ }
619648 }
620649 // sirupsen/logrus
621650 {
622- logrus .Debugf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
623- logrus .Errorf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
624- logrus .Fatalf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
625- logrus .Infof ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
626- logrus .Panicf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
651+ logrus .Debugf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
652+ logrus .Errorf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
653+ if testFlag == " true" {
654+ logrus .Fatalf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
655+ }
656+ logrus .Infof ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
657+ if testFlag == " true" {
658+ logrus .Panicf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
659+ }
627660 logrus .Printf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
628661 logrus .Tracef ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
629662 logrus .Warnf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
630663 logrus .Warningf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
631664
632665 fields := make (logrus.Fields )
633666 entry := logrus .WithFields (fields )
634- entry .Debugf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
635- entry .Errorf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
636- entry .Fatalf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
637- entry .Infof ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
638- entry .Logf (0 , "user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
639- entry .Panicf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
667+ entry .Debugf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
668+ entry .Errorf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
669+ if testFlag == " true" {
670+ entry .Fatalf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
671+ }
672+ entry .Infof ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
673+ entry .Logf (0 , "user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
674+ if testFlag == " true" {
675+ entry .Panicf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
676+ }
640677 entry .Printf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
641678 entry .Tracef ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
642679 entry .Warnf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
643680 entry .Warningf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
644681
645682 logger := entry .Logger
646- logger .Debugf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
647- logger .Errorf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
648- logger .Fatalf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
649- logger .Infof ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
650- logger .Logf (0 , "user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
651- logger .Panicf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
683+ logger .Debugf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
684+ logger .Errorf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
685+ if testFlag == " true" {
686+ logger .Fatalf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
687+ }
688+ logger .Infof ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
689+ logger .Logf (0 , "user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
690+ if testFlag == " true" {
691+ logger .Panicf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
692+ }
652693 logger .Printf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
653694 logger .Tracef ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
654695 logger .Warnf ("user %#q logged in.\n " , username ) // $ hasTaintFlow="username"
0 commit comments