Update To 11.40.268.0
[platform/framework/web/crosswalk.git] / src / net / base / net_errors.cc
index 01fda39..55cdebb 100644 (file)
@@ -24,18 +24,47 @@ namespace net {
 
 const char kErrorDomain[] = "net";
 
-const char* ErrorToString(int error) {
+std::string ErrorToString(int error) {
+  return "net::" + ErrorToShortString(error);
+}
+
+std::string ErrorToShortString(int error) {
   if (error == 0)
-    return "net::OK";
+    return "OK";
 
+  const char* error_string;
   switch (error) {
 #define NET_ERROR(label, value) \
   case ERR_ ## label: \
-    return "net::" STRINGIZE_NO_EXPANSION(ERR_ ## label);
+    error_string = # label; \
+    break;
 #include "net/base/net_error_list.h"
 #undef NET_ERROR
   default:
-    return "net::<unknown>";
+    NOTREACHED();
+    error_string = "<unknown>";
+  }
+  return std::string("ERR_") + error_string;
+}
+
+bool IsCertificateError(int error) {
+  // Certificate errors are negative integers from net::ERR_CERT_BEGIN
+  // (inclusive) to net::ERR_CERT_END (exclusive) in *decreasing* order.
+  // ERR_SSL_PINNED_KEY_NOT_IN_CERT_CHAIN is currently an exception to this
+  // rule.
+  return (error <= ERR_CERT_BEGIN && error > ERR_CERT_END) ||
+         (error == ERR_SSL_PINNED_KEY_NOT_IN_CERT_CHAIN);
+}
+
+bool IsClientCertificateError(int error) {
+  switch (error) {
+    case ERR_BAD_SSL_CLIENT_AUTH_CERT:
+    case ERR_SSL_CLIENT_AUTH_PRIVATE_KEY_ACCESS_DENIED:
+    case ERR_SSL_CLIENT_AUTH_CERT_NO_PRIVATE_KEY:
+    case ERR_SSL_CLIENT_AUTH_SIGNATURE_FAILED:
+      return true;
+    default:
+      return false;
   }
 }
 
@@ -44,16 +73,15 @@ std::vector<int> GetAllErrorCodesForUma() {
       kAllErrorCodes, arraysize(kAllErrorCodes));
 }
 
-Error PlatformFileErrorToNetError(
-    base::PlatformFileError file_error) {
+Error FileErrorToNetError(base::File::Error file_error) {
   switch (file_error) {
-    case base::PLATFORM_FILE_OK:
+    case base::File::FILE_OK:
       return net::OK;
-    case base::PLATFORM_FILE_ERROR_ACCESS_DENIED:
+    case base::File::FILE_ERROR_ACCESS_DENIED:
       return net::ERR_ACCESS_DENIED;
-    case base::PLATFORM_FILE_ERROR_INVALID_URL:
+    case base::File::FILE_ERROR_INVALID_URL:
       return net::ERR_INVALID_URL;
-    case base::PLATFORM_FILE_ERROR_NOT_FOUND:
+    case base::File::FILE_ERROR_NOT_FOUND:
       return net::ERR_FILE_NOT_FOUND;
     default:
       return net::ERR_FAILED;