diff options
author | Pierre Rossi <pierre.rossi@digia.com> | 2014-06-30 17:30:35 +0200 |
---|---|---|
committer | Pierre Rossi <pierre.rossi@gmail.com> | 2014-07-30 21:43:40 +0200 |
commit | 0c80763a1dd1b58d85d37207f4d783ffcf799b36 (patch) | |
tree | 587a3801fbc7d404e0efbafb7f3e0b0dc2d44d9d /chromium/chrome/common/net/net_error_info.h | |
parent | 2e220291159804f8d233417178496184a621c46a (diff) |
Add files to the snapshot for error pages support
As we'll be using a few more files from the chrome layer.
Change-Id: I8008b44d0dba42d7531e6c8fbc0ec050ecca736a
Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
Diffstat (limited to 'chromium/chrome/common/net/net_error_info.h')
-rw-r--r-- | chromium/chrome/common/net/net_error_info.h | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/chromium/chrome/common/net/net_error_info.h b/chromium/chrome/common/net/net_error_info.h new file mode 100644 index 00000000000..1f69f7cd362 --- /dev/null +++ b/chromium/chrome/common/net/net_error_info.h @@ -0,0 +1,71 @@ +// Copyright (c) 2013 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#ifndef CHROME_COMMON_NET_NET_ERROR_INFO_H_ +#define CHROME_COMMON_NET_NET_ERROR_INFO_H_ + +namespace chrome_common_net { + +// The status of a DNS probe that the NetErrorTabHelper may or may not have +// started. +// +// The DNS_PROBE_FINISHED_* values are used in histograms, so: +// 1. FINISHED_UNKNOWN must remain the first FINISHED_* value. +// 2. FINISHED_* values must not be rearranged relative to FINISHED_UNKNOWN. +// 3. New FINISHED_* values must be inserted at the end. +// 4. New non-FINISHED_* values cannot be inserted. +enum DnsProbeStatus { + // A DNS probe may be run for this error page. (This status is only used on + // the renderer side before it's received a status update from the browser.) + DNS_PROBE_POSSIBLE, + + // A DNS probe will not be run for this error page. (This happens if the + // user has the "Use web service to resolve navigation errors" preference + // turned off, or if probes are disabled by the field trial.) + DNS_PROBE_NOT_RUN, + + // A DNS probe has been started for this error page. The renderer should + // expect to receive another IPC with one of the FINISHED statuses once the + // probe has finished (as long as the error page is still loaded). + DNS_PROBE_STARTED, + + // A DNS probe has finished with one of the following results: + + // The probe was inconclusive. + DNS_PROBE_FINISHED_INCONCLUSIVE, + + // There's no internet connection. + DNS_PROBE_FINISHED_NO_INTERNET, + + // The DNS configuration is wrong, or the servers are down or broken. + DNS_PROBE_FINISHED_BAD_CONFIG, + + // The DNS servers are working fine, so the domain must not exist. + DNS_PROBE_FINISHED_NXDOMAIN, + + DNS_PROBE_MAX +}; + +// Returns a string representing |status|. It should be simply the name of +// the value as a string, but don't rely on that. This is presented to the +// user as part of the DNS error page (as the error code, at the bottom), +// and is also used in some verbose log messages. +// +// |status| is an int because error codes are ints by the time they get to the +// localized error system, and we don't want to require the caller to cast back +// to a probe status. The function will NOTREACHED() and return an empty +// string if given an int that does not match a value in DnsProbeStatus (or if +// it is DNS_PROBE_MAX, which is not a real status). +const char* DnsProbeStatusToString(int status); + +// Returns true if |status| is one of the DNS_PROBE_FINISHED_* statuses. +bool DnsProbeStatusIsFinished(DnsProbeStatus status); + +// The error domain used to pass DNS probe statuses to the localized error +// code. +extern const char kDnsProbeErrorDomain[]; + +} // namespace chrome_common_net + +#endif // CHROME_COMMON_NET_NET_ERROR_INFO_H_ |