diff options
author | Kristian Monsen <kristianm@google.com> | 2010-06-28 16:42:48 +0100 |
---|---|---|
committer | Kristian Monsen <kristianm@google.com> | 2010-07-02 10:29:56 +0100 |
commit | 06ea8e899e48f1f2f396b70e63fae369f2f23232 (patch) | |
tree | 20c1428cd05c76f32394ab354ea35ed99acd86d8 /WebCore/websockets/WebSocketHandshakeRequest.cpp | |
parent | 72aad67af14193199e29cdd5c4ddc095a8b9a8a8 (diff) | |
download | external_webkit-06ea8e899e48f1f2f396b70e63fae369f2f23232.zip external_webkit-06ea8e899e48f1f2f396b70e63fae369f2f23232.tar.gz external_webkit-06ea8e899e48f1f2f396b70e63fae369f2f23232.tar.bz2 |
Merge WebKit at r61871: Initial merge by git.
Change-Id: I6cff43abca9cc4782e088a469ad4f03f166a65d5
Diffstat (limited to 'WebCore/websockets/WebSocketHandshakeRequest.cpp')
-rw-r--r-- | WebCore/websockets/WebSocketHandshakeRequest.cpp | 62 |
1 files changed, 31 insertions, 31 deletions
diff --git a/WebCore/websockets/WebSocketHandshakeRequest.cpp b/WebCore/websockets/WebSocketHandshakeRequest.cpp index 9a41167..1132a44 100644 --- a/WebCore/websockets/WebSocketHandshakeRequest.cpp +++ b/WebCore/websockets/WebSocketHandshakeRequest.cpp @@ -34,60 +34,60 @@ #include "WebSocketHandshakeRequest.h" -#include "AtomicString.h" -#include "StringBuilder.h" -#include <utility> -#include <wtf/Assertions.h> +#include <cstring> using namespace std; namespace WebCore { -WebSocketHandshakeRequest::WebSocketHandshakeRequest(const KURL& url, const String& origin, const String& webSocketProtocol) +WebSocketHandshakeRequest::Key3::Key3() +{ + memset(value, 0, sizeof(value)); +} + +void WebSocketHandshakeRequest::Key3::set(const unsigned char key3[8]) +{ + memcpy(value, key3, sizeof(value)); +} + +WebSocketHandshakeRequest::WebSocketHandshakeRequest(const String& requestMethod, const KURL& url) : m_url(url) - , m_secure(m_url.protocolIs("wss")) - , m_origin(origin) - , m_webSocketProtocol(webSocketProtocol) + , m_requestMethod(requestMethod) { - ASSERT(!origin.isNull()); } WebSocketHandshakeRequest::~WebSocketHandshakeRequest() { } -void WebSocketHandshakeRequest::addExtraHeaderField(const AtomicString& name, const String& value) +String WebSocketHandshakeRequest::requestMethod() const +{ + return m_requestMethod; +} + +KURL WebSocketHandshakeRequest::url() const +{ + return m_url; +} + +void WebSocketHandshakeRequest::addHeaderField(const char* name, const String& value) { - m_extraHeaderFields.append(HeaderField(name, value)); + m_headerFields.add(name, value); } -void WebSocketHandshakeRequest::addExtraHeaderField(const char* name, const String& value) +const HTTPHeaderMap& WebSocketHandshakeRequest::headerFields() const { - m_extraHeaderFields.append(HeaderField(name, value)); + return m_headerFields; } -Vector<WebSocketHandshakeRequest::HeaderField> WebSocketHandshakeRequest::headerFields() const +WebSocketHandshakeRequest::Key3 WebSocketHandshakeRequest::key3() const { - Vector<HeaderField> fields; - fields.append(HeaderField("Upgrade", "WebSocket")); - fields.append(HeaderField("Connection", "Upgrade")); - fields.append(HeaderField("Host", host())); - fields.append(HeaderField("Origin", m_origin)); - if (!m_webSocketProtocol.isEmpty()) - fields.append(HeaderField("WebSocket-Protocol", m_webSocketProtocol)); - fields.append(m_extraHeaderFields); - return fields; + return m_key3; } -String WebSocketHandshakeRequest::host() const +void WebSocketHandshakeRequest::setKey3(const unsigned char key3[8]) { - StringBuilder builder; - builder.append(m_url.host().lower()); - if ((!m_secure && m_url.port() != 80) || (m_secure && m_url.port() != 443)) { - builder.append(":"); - builder.append(String::number(m_url.port())); - } - return builder.toString(); + m_key3.set(key3); } } // namespace WebCore |