MCPcopy
hub / github.com/XX-net/XX-Net / _clientResume

Method _clientResume

code/default/lib/noarch/tlslite/tlsconnection.py:1625–1659  ·  view source on GitHub ↗
(self, session, serverHello, clientRandom, 
                      cipherImplementations, nextProto, settings)

Source from the content-addressed store, hash-verified

1623 return None
1624
1625 def _clientResume(self, session, serverHello, clientRandom,
1626 cipherImplementations, nextProto, settings):
1627 #If the server agrees to resume
1628 if session and session.sessionID and \
1629 serverHello.session_id == session.sessionID:
1630
1631 if serverHello.cipher_suite != session.cipherSuite:
1632 for result in self._sendError(\
1633 AlertDescription.illegal_parameter,\
1634 "Server's ciphersuite doesn't match session"):
1635 yield result
1636
1637 #Calculate pending connection states
1638 self._calcPendingStates(session.cipherSuite,
1639 session.masterSecret,
1640 clientRandom, serverHello.random,
1641 cipherImplementations)
1642
1643 #Exchange ChangeCipherSpec and Finished messages
1644 for result in self._getFinished(session.masterSecret,
1645 session.cipherSuite):
1646 yield result
1647 # buffer writes so that CCS and Finished go out in one TCP packet
1648 self.sock.buffer_writes = True
1649 for result in self._sendFinished(session.masterSecret,
1650 session.cipherSuite,
1651 nextProto,
1652 settings=settings):
1653 yield result
1654 self.sock.flush()
1655 self.sock.buffer_writes = False
1656
1657 #Set the session for this connection
1658 self.session = session
1659 yield "resumed_and_finished"
1660
1661 def _clientKeyExchange(self, settings, cipherSuite,
1662 clientCertChain, privateKey,

Callers 1

Calls 5

_getFinishedMethod · 0.95
_sendFinishedMethod · 0.95
_sendErrorMethod · 0.80
_calcPendingStatesMethod · 0.80
flushMethod · 0.45

Tested by

no test coverage detected