Index: net/base/sdch_problem_code_list.h |
diff --git a/net/base/sdch_problem_code_list.h b/net/base/sdch_problem_code_list.h |
new file mode 100644 |
index 0000000000000000000000000000000000000000..4efc17cb166dd8be5cd67ae9bae722748771448e |
--- /dev/null |
+++ b/net/base/sdch_problem_code_list.h |
@@ -0,0 +1,127 @@ |
+// Copyright 2014 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. |
+ |
+// This file intentionally does not have header guards, it's included |
+// inside a macro to generate enum values. |
+ |
+// This file contains list of sdch-related problem codes. |
+// No error. |
+SDCH_PROBLEM_CODE(OK, 0) |
+ |
+// Content-encoding correction problems. |
+SDCH_PROBLEM_CODE(ADDED_CONTENT_ENCODING, 1) |
+SDCH_PROBLEM_CODE(FIXED_CONTENT_ENCODING, 2) |
+SDCH_PROBLEM_CODE(FIXED_CONTENT_ENCODINGS, 3) |
+ |
+// Content decoding errors. |
+SDCH_PROBLEM_CODE(DECODE_HEADER_ERROR, 4) |
+SDCH_PROBLEM_CODE(DECODE_BODY_ERROR, 5) |
+ |
+// More content-encoding correction problems. |
+SDCH_PROBLEM_CODE(OPTIONAL_GUNZIP_ENCODING_ADDED, 6) |
+ |
+// Content encoding correction when we're not even tagged as HTML!?! |
+SDCH_PROBLEM_CODE(BINARY_ADDED_CONTENT_ENCODING, 7) |
+SDCH_PROBLEM_CODE(BINARY_FIXED_CONTENT_ENCODING, 8) |
+SDCH_PROBLEM_CODE(BINARY_FIXED_CONTENT_ENCODINGS, 9) |
+ |
+// Dictionary selection for use problems. |
+SDCH_PROBLEM_CODE(DICTIONARY_FOUND_HAS_WRONG_DOMAIN, 10) |
+SDCH_PROBLEM_CODE(DICTIONARY_FOUND_HAS_WRONG_PORT_LIST, 11) |
+SDCH_PROBLEM_CODE(DICTIONARY_FOUND_HAS_WRONG_PATH, 12) |
+SDCH_PROBLEM_CODE(DICTIONARY_FOUND_HAS_WRONG_SCHEME, 13) |
+SDCH_PROBLEM_CODE(DICTIONARY_HASH_NOT_FOUND, 14) |
+SDCH_PROBLEM_CODE(DICTIONARY_HASH_MALFORMED, 15) |
+SDCH_PROBLEM_CODE(DICTIONARY_FOUND_EXPIRED, 16) |
+ |
+// Dictionary saving problems. |
+SDCH_PROBLEM_CODE(DICTIONARY_HAS_NO_HEADER, 20) |
+SDCH_PROBLEM_CODE(DICTIONARY_HEADER_LINE_MISSING_COLON, 21) |
+SDCH_PROBLEM_CODE(DICTIONARY_MISSING_DOMAIN_SPECIFIER, 22) |
+SDCH_PROBLEM_CODE(DICTIONARY_SPECIFIES_TOP_LEVEL_DOMAIN, 23) |
+SDCH_PROBLEM_CODE(DICTIONARY_DOMAIN_NOT_MATCHING_SOURCE_URL, 24) |
+SDCH_PROBLEM_CODE(DICTIONARY_PORT_NOT_MATCHING_SOURCE_URL, 25) |
+SDCH_PROBLEM_CODE(DICTIONARY_HAS_NO_TEXT, 26) |
+SDCH_PROBLEM_CODE(DICTIONARY_REFERER_URL_HAS_DOT_IN_PREFIX, 27) |
+SDCH_PROBLEM_CODE(DICTIONARY_UNSUPPORTED_VERSION, 28) |
+ |
+// Dictionary loading problems. |
+SDCH_PROBLEM_CODE(DICTIONARY_LOAD_ATTEMPT_FROM_DIFFERENT_HOST, 30) |
+SDCH_PROBLEM_CODE(DICTIONARY_SELECTED_FOR_SSL, 31) |
+SDCH_PROBLEM_CODE(DICTIONARY_ALREADY_LOADED, 32) |
+SDCH_PROBLEM_CODE(DICTIONARY_SELECTED_FROM_NON_HTTP, 33) |
+SDCH_PROBLEM_CODE(DICTIONARY_IS_TOO_LARGE, 34) |
+SDCH_PROBLEM_CODE(DICTIONARY_COUNT_EXCEEDED, 35) |
+// defunct = 36, // DICTIONARY_PREVIOUSLY_SCHEDULED_TO_DOWNLOAD used instead. |
+// defunct = 37, // DICTIONARY_PREVIOUSLY_SCHEDULED_TO_DOWNLOAD used instead. |
+SDCH_PROBLEM_CODE(DICTIONARY_FETCH_READ_FAILED, 38) |
+SDCH_PROBLEM_CODE(DICTIONARY_PREVIOUSLY_SCHEDULED_TO_DOWNLOAD, 39) |
+ |
+// Failsafe hack. |
+SDCH_PROBLEM_CODE(ATTEMPT_TO_DECODE_NON_HTTP_DATA, 40) |
+ |
+// Content-Encoding problems detected, with no action taken. |
+SDCH_PROBLEM_CODE(MULTIENCODING_FOR_NON_SDCH_REQUEST, 50) |
+SDCH_PROBLEM_CODE(SDCH_CONTENT_ENCODE_FOR_NON_SDCH_REQUEST, 51) |
+ |
+// Dictionary manager issues. |
+SDCH_PROBLEM_CODE(DOMAIN_BLACKLIST_INCLUDES_TARGET, 61) |
+ |
+// Problematic decode recovery methods. |
+// Dictionary not found. |
+SDCH_PROBLEM_CODE(META_REFRESH_RECOVERY, 70) |
+// defunct = 71, // Almost the same as META_REFRESH_UNSUPPORTED. |
+// defunct = 72, // Almost the same as CACHED_META_REFRESH_UNSUPPORTED. |
+// defunct = 73, // PASSING_THROUGH_NON_SDCH plus DISCARD_TENTATIVE_SDCH. |
+// Unrecoverable error. |
+SDCH_PROBLEM_CODE(META_REFRESH_UNSUPPORTED, 74) |
+// As above, but pulled from cache. |
+SDCH_PROBLEM_CODE(CACHED_META_REFRESH_UNSUPPORTED, 75) |
+// Tagged sdch but missing dictionary-hash. |
+SDCH_PROBLEM_CODE(PASSING_THROUGH_NON_SDCH, 76) |
+// Last window was not completely decoded. |
+SDCH_PROBLEM_CODE(INCOMPLETE_SDCH_CONTENT, 77) |
+// URL not found message passing through. |
+SDCH_PROBLEM_CODE(PASS_THROUGH_404_CODE, 78) |
+ |
+// This next report is very common, and not really an error scenario, but |
+// it exercises the error recovery logic. |
+// Back button got pre-SDCH cached content. |
+SDCH_PROBLEM_CODE(PASS_THROUGH_OLD_CACHED, 79) |
+ |
+// Common decoded recovery methods. |
+// Probably startup tab loading. |
+SDCH_PROBLEM_CODE(META_REFRESH_CACHED_RECOVERY, 80) |
+// defunct = 81, // Now tracked by ResponseCorruptionDetectionCause histo. |
+ |
+// Non SDCH problems, only accounted for to make stat counting complete |
+// (i.e., be able to be sure all dictionary advertisements are accounted |
+// for). |
+// Possible error in filter chaining. |
+SDCH_PROBLEM_CODE(UNFLUSHED_CONTENT, 90) |
+// defunct = 91, // MISSING_TIME_STATS (Should never happen.) |
+// No timing stats recorded. |
+SDCH_PROBLEM_CODE(CACHE_DECODED, 92) |
+// defunct = 93, // OVER_10_MINUTES (No timing stats recorded.) |
+// Filter never even got initialized. |
+SDCH_PROBLEM_CODE(UNINITIALIZED, 94) |
+// We hadn't even parsed a dictionary selector. |
+SDCH_PROBLEM_CODE(PRIOR_TO_DICTIONARY, 95) |
+// Something went wrong during decode. |
+SDCH_PROBLEM_CODE(DECODE_ERROR, 96) |
+ |
+// Problem during the latency test. |
+// SDCH now failing, but it worked before! |
+SDCH_PROBLEM_CODE(LATENCY_TEST_DISALLOWED, 100) |
+ |
+// General SDCH problems. |
+// SDCH is disabled. |
+SDCH_PROBLEM_CODE(DISABLED, 105) |
+// SDCH over https is disabled. |
+SDCH_PROBLEM_CODE(SECURE_SCHEME_NOT_SUPPORTED, 106) |
+ |
+// Used to bound histogram. |
+SDCH_PROBLEM_CODE(MAX_PROBLEM_CODE, 110) |
+ |
+// These values are not used in histograms. |