Preparing report...

Report for github.com/adedayo/tlsaudit

A+    Excellent!    Found 18 issues across 37 files

Tweet

gofmt100%

Gofmt formats Go programs. We run gofmt -s on your code, where -s is for the "simplify" command

No problems detected. Good job!


go_vet100%

go vet examines Go source code and reports suspicious constructs, such as Printf calls whose arguments do not align with the format string.

No problems detected. Good job!


golint86%

Golint is a linter for Go source code.

    • tlsaudit/pkg/golang/common.go
    • Line 30: warning: exported const VersionSSL30 should have comment (or a comment on this block) or be unexported (golint)
    • Line 117: warning: exported const CurveP256 should have comment (or a comment on this block) or be unexported (golint)
    • Line 254: warning: exported const NoClientCert should have comment (or a comment on this block) or be unexported (golint)
    • Line 314: warning: comment on exported const PKCS1WithSHA256 should be of the form "PKCS1WithSHA256 ..." (golint)
    • Line 316: warning: exported const PKCS1WithSHA384 should have comment (or a comment on this block) or be unexported (golint)
    • Line 319: warning: comment on exported const PSSWithSHA256 should be of the form "PSSWithSHA256 ..." (golint)
    • Line 324: warning: comment on exported const ECDSAWithP256AndSHA256 should be of the form "ECDSAWithP256AndSHA256 ..." (golint)
    • Line 329: warning: comment on exported const Ed25519 should be of the form "Ed25519 ..." (golint)
    • Line 332: warning: comment on exported const PKCS1WithSHA1 should be of the form "PKCS1WithSHA1 ..." (golint)

gocyclo64%

Gocyclo calculates cyclomatic complexities of functions in Go source code. The cyclomatic complexity of a function is calculated according to the following rules: 1 is the base complexity of a function +1 for each 'if', 'for', 'case', '&&' or '||' Go Report Card warns on functions with cyclomatic complexity > 15.

    • tlsaudit/pkg/golang/conn.go
    • Line 582: warning: cyclomatic complexity 55 of function (*Conn).readRecordOrCCS() is high (> 15) (gocyclo)
    • Line 977: warning: cyclomatic complexity 27 of function (*Conn).readHandshake() is high (> 15) (gocyclo)
    • Line 314: warning: cyclomatic complexity 26 of function (*halfConn).decrypt() is high (> 15) (gocyclo)
    • tlsaudit/pkg/golang/handshake_client.go
    • Line 443: warning: cyclomatic complexity 34 of function (*clientHandshakeState).doFullHandshake() is high (> 15) (gocyclo)
    • Line 227: warning: cyclomatic complexity 22 of function (*Conn).loadSession() is high (> 15) (gocyclo)
    • Line 34: warning: cyclomatic complexity 22 of function (*Conn).makeClientHello() is high (> 15) (gocyclo)
    • Line 658: warning: cyclomatic complexity 19 of function (*clientHandshakeState).processServerHello() is high (> 15) (gocyclo)
    • Line 365: warning: cyclomatic complexity 17 of function (*clientHandshakeState).handshake() is high (> 15) (gocyclo)
    • tlsaudit/pkg/model/models.go
    • Line 359: warning: cyclomatic complexity 29 of function (*CipherConfig).GetKeyExchangeKeyLength() is high (> 15) (gocyclo)
    • Line 1478: warning: cyclomatic complexity 23 of function adjustUsingCertificateSecurity() is high (> 15) (gocyclo)
    • Line 823: warning: cyclomatic complexity 21 of function (SecurityScore).OrderGrade() is high (> 15) (gocyclo)
    • Line 1059: warning: cyclomatic complexity 19 of function (ScanResult).ToHumanScanResult() is high (> 15) (gocyclo)
    • Line 1201: warning: cyclomatic complexity 19 of function (ScanResult).ToString() is high (> 15) (gocyclo)
    • Line 174: warning: cyclomatic complexity 16 of function (*CipherConfig).getEncAlg() is high (> 15) (gocyclo)
    • tlsaudit/pkg/golang/handshake_messages.go
    • Line 355: warning: cyclomatic complexity 91 of function (*clientHelloMsg).unmarshal() is high (> 15) (gocyclo)
    • Line 745: warning: cyclomatic complexity 47 of function (*serverHelloMsg).unmarshal() is high (> 15) (gocyclo)
    • Line 1144: warning: cyclomatic complexity 29 of function (*certificateRequestMsgTLS13).unmarshal() is high (> 15) (gocyclo)
    • Line 100: warning: cyclomatic complexity 29 of function (*clientHelloMsg).marshal() is high (> 15) (gocyclo)
    • Line 1383: warning: cyclomatic complexity 22 of function unmarshalCertificate() is high (> 15) (gocyclo)
    • Line 1710: warning: cyclomatic complexity 16 of function (*certificateRequestMsg).unmarshal() is high (> 15) (gocyclo)
    • tlsaudit/pkg/golang/handshake_server.go
    • Line 442: warning: cyclomatic complexity 37 of function (*serverHandshakeState).doFullHandshake() is high (> 15) (gocyclo)
    • Line 166: warning: cyclomatic complexity 25 of function (*serverHandshakeState).processClientHello() is high (> 15) (gocyclo)
    • Line 60: warning: cyclomatic complexity 16 of function (*serverHandshakeState).handshake() is high (> 15) (gocyclo)
    • tlsaudit/pkg/golang/handshake_server_tls13.go
    • Line 460: warning: cyclomatic complexity 32 of function illegalClientHelloChange() is high (> 15) (gocyclo)
    • Line 83: warning: cyclomatic complexity 27 of function (*serverHandshakeStateTLS13).processClientHello() is high (> 15) (gocyclo)
    • Line 226: warning: cyclomatic complexity 21 of function (*serverHandshakeStateTLS13).checkForResumption() is high (> 15) (gocyclo)
    • Line 752: warning: cyclomatic complexity 18 of function (*serverHandshakeStateTLS13).readClientCertificate() is high (> 15) (gocyclo)
    • tlsaudit/pkg/golang/handshake_client_tls13.go
    • Line 175: warning: cyclomatic complexity 20 of function (*clientHandshakeStateTLS13).processHelloRetryRequest() is high (> 15) (gocyclo)
    • Line 406: warning: cyclomatic complexity 17 of function (*clientHandshakeStateTLS13).readServerCertificate() is high (> 15) (gocyclo)
    • Line 39: warning: cyclomatic complexity 17 of function (*clientHandshakeStateTLS13).handshake() is high (> 15) (gocyclo)
    • tlsaudit/pkg/golang/key_agreement_tls.go
    • Line 139: warning: cyclomatic complexity 17 of function (*ecdheKeyAgreement).generateServerKeyExchange() is high (> 15) (gocyclo)
    • Line 235: warning: cyclomatic complexity 16 of function (*ecdheKeyAgreement).processServerKeyExchange() is high (> 15) (gocyclo)

ineffassign89%

IneffAssign detects ineffectual assignments in Go code.


license100%

Checks whether your project has a LICENSE file.

No problems detected. Good job!


misspell97%

Misspell Finds commonly misspelled English words