WebSocketHandshake::WebSocketHandshake(const KURL& url, const String& protocol, Document* document) : m_url(url) , m_clientProtocol(protocol) , m_secure(m_url.protocolIs("wss")) , m_document(document) , m_mode(Incomplete) { m_secWebSocketKey = generateSecWebSocketKey(); m_expectedAccept = getExpectedWebSocketAccept(m_secWebSocketKey); }
WebSocketHandshake::WebSocketHandshake(const KURL& url, const String& protocol, ScriptExecutionContext* context) : m_url(url) , m_clientProtocol(protocol) , m_secure(m_url.protocolIs("wss")) , m_context(context) , m_mode(Incomplete) { m_secWebSocketKey = generateSecWebSocketKey(); m_expectedAccept = getExpectedWebSocketAccept(m_secWebSocketKey); }
WebSocketHandshake::WebSocketHandshake(const KURL& url, const String& protocol, ScriptExecutionContext* context, bool useHixie76Protocol) : m_url(url) , m_clientProtocol(protocol) , m_secure(m_url.protocolIs("wss")) , m_context(context) , m_useHixie76Protocol(useHixie76Protocol) , m_mode(Incomplete) { if (m_useHixie76Protocol) { uint32_t number1; uint32_t number2; generateHixie76SecWebSocketKey(number1, m_hixie76SecWebSocketKey1); generateHixie76SecWebSocketKey(number2, m_hixie76SecWebSocketKey2); generateHixie76Key3(m_hixie76Key3); generateHixie76ExpectedChallengeResponse(number1, number2, m_hixie76Key3, m_hixie76ExpectedChallengeResponse); } else { m_secWebSocketKey = generateSecWebSocketKey(); m_expectedAccept = getExpectedWebSocketAccept(m_secWebSocketKey); } }