diff options
author | Pawel Wieczorek <p.wieczorek2@samsung.com> | 2020-03-18 16:32:45 +0100 |
---|---|---|
committer | Bartek Grzybowski <b.grzybowski@partner.samsung.com> | 2020-03-25 13:08:24 +0000 |
commit | d688c4c4e37526e276690b5b51d1044b7e220aff (patch) | |
tree | f25d3fd001ee32401a1430fa3ca8486bef937054 /test/security/sslendpoints/main.go | |
parent | 328bcfbce8d97a66b975ee45cd69b30cdb727aef (diff) |
Reduce cyclomatic complexity
Moving CSV data conversion and "expected failure" filtering away from
main function made testing these features easier. Utility behaviour
remained unchanged.
Issue-ID: SECCOM-261
Change-Id: I4cabfc7b352434c84a613c02f44af3c9630be970
Signed-off-by: Pawel Wieczorek <p.wieczorek2@samsung.com>
Diffstat (limited to 'test/security/sslendpoints/main.go')
-rw-r--r-- | test/security/sslendpoints/main.go | 27 |
1 files changed, 10 insertions, 17 deletions
diff --git a/test/security/sslendpoints/main.go b/test/security/sslendpoints/main.go index 8c136d5c4..38950c4f4 100644 --- a/test/security/sslendpoints/main.go +++ b/test/security/sslendpoints/main.go @@ -39,7 +39,7 @@ func main() { xfailName = flag.String("xfail", "", "(optional) absolute path to the expected failures file") flag.Parse() - var xfails [][]string + xfails := make(map[uint16]string) if *xfailName != "" { xfailFile, err := os.Open(*xfailName) if err != nil { @@ -53,11 +53,18 @@ func main() { r.Comment = xfailComment r.FieldsPerRecord = xfailFields - xfails, err = r.ReadAll() + xfailData, err := r.ReadAll() if err != nil { log.Printf("Unable to read expected failures file: %v", err) log.Println("All non-SSL NodePorts will be reported") } + + var ok bool + xfails, ok = ports.ConvertNodePorts(xfailData) + if !ok { + log.Println("No usable data in expected failures file") + log.Println("All non-SSL NodePorts will be reported") + } } // use the current context in kubeconfig @@ -99,21 +106,7 @@ func main() { } // filter out expected failures here before running the scan - for _, xfail := range xfails { - port, err := strconv.Atoi(xfail[1]) - if err != nil { - log.Printf("Unable to parse port expected to fail: %v", err) - continue - } - service, ok := nodeports[uint16(port)] - if !ok { - continue - } - if service != xfail[0] { - continue - } - delete(nodeports, uint16(port)) - } + ports.FilterXFailNodePorts(xfails, nodeports) // extract ports for running the scan var ports []string |