parameters: (self, certChain=None, privateKey=None,
                              session=None, settings=None, checker=None,
                              async=False)
docstring: Perform a certificate-based handshake in the role of client.
  
          This function performs an SSL or TLS handshake.  The server
          will authenticate itself using an X.509 or cryptoID certificate
          chain.  If the handshake succeeds, the server's certificate
          chain will be stored in the session's serverCertChain attribute.
          Unless a checker object is passed in, this function does no
          validation or checking of the server's certificate chain.
  
          If the server requests client authentication, the
          client will send the passed-in certificate chain, and use the
          passed-in private key to authenticate itself.  If no
          certificate chain and private key were passed in, the client
          will attempt to proceed without client authentication.  The
          server may or may not allow this.
  
          Like any handshake function, this can be called on a closed
          TLS connection, or on a TLS connection that is already open.
          If called on an open connection it performs a re-handshake.
  
          If the function completes without raising an exception, the
          TLS connection will be open and available for data transfer.
  
          If an exception is raised, the connection will have been
          automatically closed (if it was ever open).
  
          @type certChain: L{tlslite.X509CertChain.X509CertChain} or
          L{cryptoIDlib.CertChain.CertChain}
          @param certChain: The certificate chain to be used if the
          server requests client authentication.
  
          @type privateKey: L{tlslite.utils.RSAKey.RSAKey}
          @param privateKey: The private key to be used if the server
          requests client authentication.
  
          @type session: L{tlslite.Session.Session}
          @param session: A TLS session to attempt to resume.  If the
          resumption does not succeed, a full handshake will be
          performed.
  
          @type settings: L{tlslite.HandshakeSettings.HandshakeSettings}
          @param settings: Various settings which can be used to control
          the ciphersuites, certificate types, and SSL/TLS versions
          offered by the client.
  
          @type checker: L{tlslite.Checker.Checker}
          @param checker: A Checker instance.  This instance will be
          invoked to examine the other party's authentication
          credentials, if the handshake completes succesfully.
  
          @type async: bool
          @param async: If False, this function will block until the
          handshake is completed.  If True, this function will return a
          generator.  Successive invocations of the generator will
          return 0 if it is waiting to read from the socket, 1 if it is
          waiting to write to the socket, or will raise StopIteration if
          the handshake operation is completed.
  
          @rtype: None or an iterable
          @return: If 'async' is True, a generator object will be
          returned.
  
          @raise socket.error: If a socket error occurs.
          @raise tlslite.errors.TLSAbruptCloseError: If the socket is closed
          without a preceding alert.
          @raise tlslite.errors.TLSAlert: If a TLS alert is signalled.
          @raise tlslite.errors.TLSAuthenticationError: If the checker
          doesn't like the other party's authentication credentials.
docstring_summary: Perform a certificate-based handshake in the role of client.
docstring_tokens: Perform a certificate - based handshake in the role of client .
function: def handshakeClientCert(self, certChain=None, privateKey=None,
                              session=None, settings=None, checker=None,
                              async=False):
          """Perform a certificate-based handshake in the role of client.
  
          This function performs an SSL or TLS handshake.  The server
          will authenticate itself using an X.509 or cryptoID certificate
          chain.  If the handshake succeeds, the server's certificate
          chain will be stored in the session's serverCertChain attribute.
          Unless a checker object is passed in, this function does no
          validation or checking of the server's certificate chain.
  
          If the server requests client authentication, the
          client will send the passed-in certificate chain, and use the
          passed-in private key to authenticate itself.  If no
          certificate chain and private key were passed in, the client
          will attempt to proceed without client authentication.  The
          server may or may not allow this.
  
          Like any handshake function, this can be called on a closed
          TLS connection, or on a TLS connection that is already open.
          If called on an open connection it performs a re-handshake.
  
          If the function completes without raising an exception, the
          TLS connection will be open and available for data transfer.
  
          If an exception is raised, the connection will have been
          automatically closed (if it was ever open).
  
          @type certChain: L{tlslite.X509CertChain.X509CertChain} or
          L{cryptoIDlib.CertChain.CertChain}
          @param certChain: The certificate chain to be used if the
          server requests client authentication.
  
          @type privateKey: L{tlslite.utils.RSAKey.RSAKey}
          @param privateKey: The private key to be used if the server
          requests client authentication.
  
          @type session: L{tlslite.Session.Session}
          @param session: A TLS session to attempt to resume.  If the
          resumption does not succeed, a full handshake will be
          performed.
  
          @type settings: L{tlslite.HandshakeSettings.HandshakeSettings}
          @param settings: Various settings which can be used to control
          the ciphersuites, certificate types, and SSL/TLS versions
          offered by the client.
  
          @type checker: L{tlslite.Checker.Checker}
          @param checker: A Checker instance.  This instance will be
          invoked to examine the other party's authentication
          credentials, if the handshake completes succesfully.
  
          @type async: bool
          @param async: If False, this function will block until the
          handshake is completed.  If True, this function will return a
          generator.  Successive invocations of the generator will
          return 0 if it is waiting to read from the socket, 1 if it is
          waiting to write to the socket, or will raise StopIteration if
          the handshake operation is completed.
  
          @rtype: None or an iterable
          @return: If 'async' is True, a generator object will be
          returned.
  
          @raise socket.error: If a socket error occurs.
          @raise tlslite.errors.TLSAbruptCloseError: If the socket is closed
          without a preceding alert.
          @raise tlslite.errors.TLSAlert: If a TLS alert is signalled.
          @raise tlslite.errors.TLSAuthenticationError: If the checker
          doesn't like the other party's authentication credentials.
          """
          handshaker = self._handshakeClientAsync(certParams=(certChain,
                          privateKey), session=session, settings=settings,
                          checker=checker)
          if async:
              return handshaker
          for result in handshaker:
              pass
function_tokens: def handshakeClientCert ( self , certChain = None , privateKey = None , session = None , settings = None , checker = None , async = False ) : handshaker = self . _handshakeClientAsync ( certParams = ( certChain , privateKey ) , session = session , settings = settings , checker = checker ) if async : return handshaker for result in handshaker : pass