diff options
author | Ben Murdoch <benm@google.com> | 2011-05-24 11:24:40 +0100 |
---|---|---|
committer | Ben Murdoch <benm@google.com> | 2011-06-02 09:53:15 +0100 |
commit | 81bc750723a18f21cd17d1b173cd2a4dda9cea6e (patch) | |
tree | 7a9e5ed86ff429fd347a25153107221543909b19 /Source/WebCore/platform/KURLGoogle.cpp | |
parent | 94088a6d336c1dd80a1e734af51e96abcbb689a7 (diff) | |
download | external_webkit-81bc750723a18f21cd17d1b173cd2a4dda9cea6e.zip external_webkit-81bc750723a18f21cd17d1b173cd2a4dda9cea6e.tar.gz external_webkit-81bc750723a18f21cd17d1b173cd2a4dda9cea6e.tar.bz2 |
Merge WebKit at r80534: Intial merge by Git
Change-Id: Ia7a83357124c9e1cdb1debf55d9661ec0bd09a61
Diffstat (limited to 'Source/WebCore/platform/KURLGoogle.cpp')
-rw-r--r-- | Source/WebCore/platform/KURLGoogle.cpp | 168 |
1 files changed, 1 insertions, 167 deletions
diff --git a/Source/WebCore/platform/KURLGoogle.cpp b/Source/WebCore/platform/KURLGoogle.cpp index 0697b33..231c43d 100644 --- a/Source/WebCore/platform/KURLGoogle.cpp +++ b/Source/WebCore/platform/KURLGoogle.cpp @@ -381,7 +381,7 @@ KURL::KURL(const CString& canonicalSpec, m_url.setAscii(canonicalSpec); } -#if PLATFORM(CF) +#if USE(CF) KURL::KURL(CFURLRef) { notImplemented(); @@ -758,161 +758,6 @@ String KURL::prettyURL() const return m_url.string(); } -bool protocolIsJavaScript(const String& url) -{ - return protocolIs(url, "javascript"); -} - -// We copied the KURL version here on Dec 4, 2009 while doing a WebKit -// merge. -// -// FIXME Somehow share this with KURL? Like we'd theoretically merge with -// decodeURLEscapeSequences below? -bool isDefaultPortForProtocol(unsigned short port, const String& protocol) -{ - if (protocol.isEmpty()) - return false; - - typedef HashMap<String, unsigned, CaseFoldingHash> DefaultPortsMap; - DEFINE_STATIC_LOCAL(DefaultPortsMap, defaultPorts, ()); - if (defaultPorts.isEmpty()) { - defaultPorts.set("http", 80); - defaultPorts.set("https", 443); - defaultPorts.set("ftp", 21); - defaultPorts.set("ftps", 990); - } - return defaultPorts.get(protocol) == port; -} - -// We copied the KURL version here on Dec 4, 2009 while doing a WebKit -// merge. -// -// FIXME Somehow share this with KURL? Like we'd theoretically merge with -// decodeURLEscapeSequences below? -bool portAllowed(const KURL& url) -{ - unsigned short port = url.port(); - - // Since most URLs don't have a port, return early for the "no port" case. - if (!port) - return true; - - // This blocked port list matches the port blocking that Mozilla implements. - // See http://www.mozilla.org/projects/netlib/PortBanning.html for more information. - static const unsigned short blockedPortList[] = { - 1, // tcpmux - 7, // echo - 9, // discard - 11, // systat - 13, // daytime - 15, // netstat - 17, // qotd - 19, // chargen - 20, // FTP-data - 21, // FTP-control - 22, // SSH - 23, // telnet - 25, // SMTP - 37, // time - 42, // name - 43, // nicname - 53, // domain - 77, // priv-rjs - 79, // finger - 87, // ttylink - 95, // supdup - 101, // hostriame - 102, // iso-tsap - 103, // gppitnp - 104, // acr-nema - 109, // POP2 - 110, // POP3 - 111, // sunrpc - 113, // auth - 115, // SFTP - 117, // uucp-path - 119, // nntp - 123, // NTP - 135, // loc-srv / epmap - 139, // netbios - 143, // IMAP2 - 179, // BGP - 389, // LDAP - 465, // SMTP+SSL - 512, // print / exec - 513, // login - 514, // shell - 515, // printer - 526, // tempo - 530, // courier - 531, // Chat - 532, // netnews - 540, // UUCP - 556, // remotefs - 563, // NNTP+SSL - 587, // ESMTP - 601, // syslog-conn - 636, // LDAP+SSL - 993, // IMAP+SSL - 995, // POP3+SSL - 2049, // NFS - 3659, // apple-sasl / PasswordServer [Apple addition] - 4045, // lockd - 6000, // X11 - 6665, // Alternate IRC [Apple addition] - 6666, // Alternate IRC [Apple addition] - 6667, // Standard IRC [Apple addition] - 6668, // Alternate IRC [Apple addition] - 6669, // Alternate IRC [Apple addition] - invalidPortNumber, // Used to block all invalid port numbers - }; - const unsigned short* const blockedPortListEnd = blockedPortList + WTF_ARRAY_LENGTH(blockedPortList); - -#ifndef NDEBUG - // The port list must be sorted for binary_search to work. - static bool checkedPortList = false; - if (!checkedPortList) { - for (const unsigned short* p = blockedPortList; p != blockedPortListEnd - 1; ++p) - ASSERT(*p < *(p + 1)); - checkedPortList = true; - } -#endif - - // If the port is not in the blocked port list, allow it. - if (!binary_search(blockedPortList, blockedPortListEnd, port)) - return true; - - // Allow ports 21 and 22 for FTP URLs, as Mozilla does. - if ((port == 21 || port == 22) && url.protocolIs("ftp")) - return true; - - // Allow any port number in a file URL, since the port number is ignored. - if (url.protocolIs("file")) - return true; - - return false; -} - -// We copied the KURL version here on Sept 12, 2008 while doing a WebKit -// merge. -// -// FIXME Somehow share this with KURL? Like we'd theoretically merge with -// decodeURLEscapeSequences below? -String mimeTypeFromDataURL(const String& url) -{ - ASSERT(protocolIs(url, "data")); - int index = url.find(';'); - if (index == -1) - index = url.find(','); - if (index != -1) { - int len = index - 5; - if (len > 0) - return url.substring(5, len); - return "text/plain"; // Data URLs with no MIME type are considered text/plain. - } - return ""; -} - String decodeURLEscapeSequences(const String& str) { return decodeURLEscapeSequences(str, UTF8Encoding()); @@ -968,11 +813,6 @@ bool KURL::protocolIs(const char* protocol) const protocol); } -bool KURL::isLocalFile() const -{ - return protocolIs("file"); -} - // This is called to escape a URL string. It is only used externally when // constructing mailto: links to set the query section. Since our query setter // will automatically do the correct escaping, this function does not have to @@ -1075,12 +915,6 @@ unsigned KURL::pathAfterLastSlash() const return filename.begin; } -const KURL& blankURL() -{ - static KURL staticBlankURL(ParsedURLString, "about:blank"); - return staticBlankURL; -} - bool protocolIs(const String& url, const char* protocol) { // Do the comparison without making a new string object. |