parameters: (self, username, password, session=None,
                             settings=None, checker=None, async=False)
docstring: Perform an SRP handshake in the role of client.
  
          This function performs a TLS/SRP handshake.  SRP mutually
          authenticates both parties to each other using only a
          username and password.  This function may also perform a
          combined SRP and server-certificate handshake, if the server
          chooses to authenticate itself with a certificate chain in
          addition to doing SRP.
  
          TLS/SRP is non-standard.  Most TLS implementations don't
          support it.  See
          U{http://www.ietf.org/html.charters/tls-charter.html} or
          U{http://trevp.net/tlssrp/} for the latest information on
          TLS/SRP.
  
          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 username: str
          @param username: The SRP username.
  
          @type password: str
          @param password: The SRP password.
  
          @type session: L{tlslite.Session.Session}
          @param session: A TLS session to attempt to resume.  This
          session must be an SRP session performed with the same username
          and password as were passed in.  If the resumption does not
          succeed, a full SRP 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 an SRP handshake in the role of client.
docstring_tokens: Perform an SRP handshake in the role of client .
function: def handshakeClientSRP(self, username, password, session=None,
                             settings=None, checker=None, async=False):
          """Perform an SRP handshake in the role of client.
  
          This function performs a TLS/SRP handshake.  SRP mutually
          authenticates both parties to each other using only a
          username and password.  This function may also perform a
          combined SRP and server-certificate handshake, if the server
          chooses to authenticate itself with a certificate chain in
          addition to doing SRP.
  
          TLS/SRP is non-standard.  Most TLS implementations don't
          support it.  See
          U{http://www.ietf.org/html.charters/tls-charter.html} or
          U{http://trevp.net/tlssrp/} for the latest information on
          TLS/SRP.
  
          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 username: str
          @param username: The SRP username.
  
          @type password: str
          @param password: The SRP password.
  
          @type session: L{tlslite.Session.Session}
          @param session: A TLS session to attempt to resume.  This
          session must be an SRP session performed with the same username
          and password as were passed in.  If the resumption does not
          succeed, a full SRP 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(srpParams=(username, password),
                          session=session, settings=settings, checker=checker)
          if async:
              return handshaker
          for result in handshaker:
              pass
function_tokens: def handshakeClientSRP ( self , username , password , session = None , settings = None , checker = None , async = False ) : handshaker = self . _handshakeClientAsync ( srpParams = ( username , password ) , session = session , settings = settings , checker = checker ) if async : return handshaker for result in handshaker : pass