tlsfuzzer/tlslite-ng

View on GitHub

Showing 324 of 1,708 total issues

Function _sanityCheckExtensions has a Cognitive Complexity of 15 (exceeds 5 allowed). Consider refactoring.
Open

    def _sanityCheckExtensions(other):
        """Check if set extension settings are sane"""
        not_matching = HandshakeSettings._not_matching

        if other.useEncryptThenMAC not in (True, False):
Severity: Minor
Found in tlslite/handshakesettings.py - About 1 hr to fix

Cognitive Complexity

Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

A method's cognitive complexity is based on a few simple rules:

  • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
  • Code is considered more complex for each "break in the linear flow of the code"
  • Code is considered more complex when "flow breaking structures are nested"

Further reading

Function _handshakeServerAsyncHelper has 44 lines of code (exceeds 25 allowed). Consider refactoring.
Open

    def _handshakeServerAsyncHelper(self, verifierDB,
                                    cert_chain, privateKey, reqCert,
                                    sessionCache, settings, reqCAs, tacks,
                                    activationFlags, nextProtos, anon, alpn,
                                    sni):
Severity: Minor
Found in tlslite/tlsconnection.py - About 1 hr to fix

    Function getRandomSafePrime has a Cognitive Complexity of 14 (exceeds 5 allowed). Consider refactoring.
    Open

    def getRandomSafePrime(bits, display=False):
        """Generate a random safe prime.
    
        Will generate a prime `bits` bits long (see getRandomPrime) such that
        the (p-1)/2 will also be prime.
    Severity: Minor
    Found in tlslite/utils/cryptomath.py - About 1 hr to fix

    Cognitive Complexity

    Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

    A method's cognitive complexity is based on a few simple rules:

    • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
    • Code is considered more complex for each "break in the linear flow of the code"
    • Code is considered more complex when "flow breaking structures are nested"

    Further reading

    Function canonicalCipherName has a Cognitive Complexity of 14 (exceeds 5 allowed). Consider refactoring.
    Open

        def canonicalCipherName(ciphersuite):
            """Return the canonical name of the cipher whose number is provided."""
            if ciphersuite in CipherSuite.aes128GcmSuites:
                return "aes128gcm"
            elif ciphersuite in CipherSuite.aes256GcmSuites:
    Severity: Minor
    Found in tlslite/constants.py - About 1 hr to fix

    Cognitive Complexity

    Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

    A method's cognitive complexity is based on a few simple rules:

    • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
    • Code is considered more complex for each "break in the linear flow of the code"
    • Code is considered more complex when "flow breaking structures are nested"

    Further reading

    Function handshakeServer has 14 arguments (exceeds 4 allowed). Consider refactoring.
    Open

        def handshakeServer(self, verifierDB=None,
    Severity: Major
    Found in tlslite/tlsconnection.py - About 1 hr to fix

      Function handshakeServerAsync has 14 arguments (exceeds 4 allowed). Consider refactoring.
      Open

          def handshakeServerAsync(self, verifierDB=None,
      Severity: Major
      Found in tlslite/tlsconnection.py - About 1 hr to fix

        Function _getCipherSettings has a Cognitive Complexity of 14 (exceeds 5 allowed). Consider refactoring.
        Open

            def _getCipherSettings(cipherSuite):
                """Get the settings for cipher suite used"""
                if cipherSuite in CipherSuite.aes256GcmSuites:
                    keyLength = 32
                    ivLength = 4
        Severity: Minor
        Found in tlslite/recordlayer.py - About 1 hr to fix

        Cognitive Complexity

        Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

        A method's cognitive complexity is based on a few simple rules:

        • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
        • Code is considered more complex for each "break in the linear flow of the code"
        • Code is considered more complex when "flow breaking structures are nested"

        Further reading

        Function _decryptAndUnseal has a Cognitive Complexity of 14 (exceeds 5 allowed). Consider refactoring.
        Open

            def _decryptAndUnseal(self, header, buf):
                """Decrypt AEAD encrypted data"""
                seqnumBytes = self._readState.getSeqNumBytes()
                # AES-GCM has an explicit variable nonce in TLS 1.2
                if "aes" in self._readState.encContext.name and \
        Severity: Minor
        Found in tlslite/recordlayer.py - About 1 hr to fix

        Cognitive Complexity

        Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

        A method's cognitive complexity is based on a few simple rules:

        • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
        • Code is considered more complex for each "break in the linear flow of the code"
        • Code is considered more complex when "flow breaking structures are nested"

        Further reading

        Function _handshakeServerAsyncHelper has 13 arguments (exceeds 4 allowed). Consider refactoring.
        Open

            def _handshakeServerAsyncHelper(self, verifierDB,
        Severity: Major
        Found in tlslite/tlsconnection.py - About 1 hr to fix

          Function __init__ has 13 arguments (exceeds 4 allowed). Consider refactoring.
          Open

              def __init__(self, host, port=None, strict=None,
          Severity: Major
          Found in tlslite/integration/httptlsconnection.py - About 1 hr to fix

            Function addVarTupleSeq has a Cognitive Complexity of 13 (exceeds 5 allowed). Consider refactoring.
            Open

                def addVarTupleSeq(self, seq, length, lengthLength):
                    """
                    Add a variable length list of same-sized element tuples.
            
                    Note that all tuples must have the same size.
            Severity: Minor
            Found in tlslite/utils/codec.py - About 1 hr to fix

            Cognitive Complexity

            Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

            A method's cognitive complexity is based on a few simple rules:

            • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
            • Code is considered more complex for each "break in the linear flow of the code"
            • Code is considered more complex when "flow breaking structures are nested"

            Further reading

            Function _handshakeClientAsyncHelper has 39 lines of code (exceeds 25 allowed). Consider refactoring.
            Open

                def _handshakeClientAsyncHelper(self, srpParams, certParams, anonParams,
                                           session, settings, serverName, nextProtos,
                                           reqTack, alpn):
            
                    self._handshakeStart(client=True)
            Severity: Minor
            Found in tlslite/tlsconnection.py - About 1 hr to fix

              Function _filterSuites has 36 lines of code (exceeds 25 allowed). Consider refactoring.
              Open

                  def _filterSuites(suites, settings, version=None):
                      if version is None:
                          version = settings.maxVersion
                      macNames = settings.macNames
                      cipherNames = settings.cipherNames
              Severity: Minor
              Found in tlslite/constants.py - About 1 hr to fix

                Function __init__ has a Cognitive Complexity of 12 (exceeds 5 allowed). Consider refactoring.
                Open

                    def __init__(self, key, mode, IV, implementation):
                        if len(key) not in (16, 24, 32):
                            raise AssertionError()
                        if mode not in [2, 6]:
                            raise AssertionError()
                Severity: Minor
                Found in tlslite/utils/aes.py - About 1 hr to fix

                Cognitive Complexity

                Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

                A method's cognitive complexity is based on a few simple rules:

                • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
                • Code is considered more complex for each "break in the linear flow of the code"
                • Code is considered more complex when "flow breaking structures are nested"

                Further reading

                Function deprecated_params has a Cognitive Complexity of 12 (exceeds 5 allowed). Consider refactoring.
                Open

                def deprecated_params(names, warn="Param name '{old_name}' is deprecated, "
                                                  "please use '{new_name}'"):
                    """Decorator to translate obsolete names and warn about their use.
                
                    :param dict names: dictionary with pairs of new_name: old_name
                Severity: Minor
                Found in tlslite/utils/deprecations.py - About 1 hr to fix

                Cognitive Complexity

                Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

                A method's cognitive complexity is based on a few simple rules:

                • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
                • Code is considered more complex for each "break in the linear flow of the code"
                • Code is considered more complex when "flow breaking structures are nested"

                Further reading

                Function _checkAssert has a Cognitive Complexity of 12 (exceeds 5 allowed). Consider refactoring.
                Open

                    def _checkAssert(self, maxActive=1):
                        #This checks that only one operation, at most, is
                        #active, and that self.result is set appropriately.
                        activeOps = 0
                        if self.handshaker:
                Severity: Minor
                Found in tlslite/integration/asyncstatemachine.py - About 1 hr to fix

                Cognitive Complexity

                Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

                A method's cognitive complexity is based on a few simple rules:

                • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
                • Code is considered more complex for each "break in the linear flow of the code"
                • Code is considered more complex when "flow breaking structures are nested"

                Further reading

                Function __init__ has a Cognitive Complexity of 12 (exceeds 5 allowed). Consider refactoring.
                Open

                        def __init__(self, key, msg=None, digestmod=None):
                            """
                            Initialise the HMAC and hash first portion of data.
                
                            msg: data to hash
                Severity: Minor
                Found in tlslite/utils/tlshmac.py - About 1 hr to fix

                Cognitive Complexity

                Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

                A method's cognitive complexity is based on a few simple rules:

                • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
                • Code is considered more complex for each "break in the linear flow of the code"
                • Code is considered more complex when "flow breaking structures are nested"

                Further reading

                Function _sendFinished has a Cognitive Complexity of 12 (exceeds 5 allowed). Consider refactoring.
                Open

                    def _sendFinished(self, masterSecret, cipherSuite=None, nextProto=None,
                            settings=None, send_session_ticket=False, client_cert_chain=None):
                        if send_session_ticket:
                            for result in self._serverSendTickets(settings):
                                yield result
                Severity: Minor
                Found in tlslite/tlsconnection.py - About 1 hr to fix

                Cognitive Complexity

                Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

                A method's cognitive complexity is based on a few simple rules:

                • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
                • Code is considered more complex for each "break in the linear flow of the code"
                • Code is considered more complex when "flow breaking structures are nested"

                Further reading

                Function _tls12_verify_SKE has a Cognitive Complexity of 12 (exceeds 5 allowed). Consider refactoring.
                Open

                    def _tls12_verify_SKE(serverKeyExchange, publicKey, clientRandom,
                                          serverRandom, validSigAlgs):
                        """Verify TLSv1.2 version of SKE."""
                        if (serverKeyExchange.hashAlg, serverKeyExchange.signAlg) not in \
                                validSigAlgs:
                Severity: Minor
                Found in tlslite/keyexchange.py - About 1 hr to fix

                Cognitive Complexity

                Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

                A method's cognitive complexity is based on a few simple rules:

                • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
                • Code is considered more complex for each "break in the linear flow of the code"
                • Code is considered more complex when "flow breaking structures are nested"

                Further reading

                Function _parse_tls12 has a Cognitive Complexity of 12 (exceeds 5 allowed). Consider refactoring.
                Open

                    def _parse_tls12(self, p):
                        p.startLengthCheck(3)
                        if self.certificateType == CertificateType.x509:
                            chainLength = p.get(3)
                            index = 0
                Severity: Minor
                Found in tlslite/messages.py - About 1 hr to fix

                Cognitive Complexity

                Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

                A method's cognitive complexity is based on a few simple rules:

                • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
                • Code is considered more complex for each "break in the linear flow of the code"
                • Code is considered more complex when "flow breaking structures are nested"

                Further reading

                Severity
                Category
                Status
                Source
                Language