summaryrefslogtreecommitdiffstats
path: root/net/base/sdch_problem_code_list.h
blob: 864f81e78b1ac4a2334c6028d5b5782de768a651 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
// 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)
// defunct = 16, no longer used

// 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)
// defunct = 34, // Now recorded in separate histogram; see sdch_owner.cc.
// defunct = 35, // Now recorded in separate histogram; see sdch_owner.cc.
// defunct = 36, // DICTIONARY_PREVIOUSLY_SCHEDULED_TO_DOWNLOAD used instead.
// defunct = 37, // DICTIONARY_PREVIOUSLY_SCHEDULED_TO_DOWNLOAD used instead.
// defunct = 38, // No longer paying attention to URLRequest::Read return.
SDCH_PROBLEM_CODE(DICTIONARY_PREVIOUSLY_SCHEDULED_TO_DOWNLOAD, 39)

// Failsafe hack.
SDCH_PROBLEM_CODE(ATTEMPT_TO_DECODE_NON_HTTP_DATA, 40)

// More dictionary loading problems.
SDCH_PROBLEM_CODE(DICTIONARY_NO_ROOM, 44)

// 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)

// A dictionary that wasn't advertised is being used for decoding.
SDCH_PROBLEM_CODE(UNADVERTISED_DICTIONARY_USED, 52)
SDCH_PROBLEM_CODE(UNADVERTISED_DICTIONARY_USED_CACHED, 53)

// 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 always supports secure schemes now, so this enum value is unused.
// SDCH_PROBLEM_CODE(SECURE_SCHEME_NOT_SUPPORTED, 106)

// A dictionary used notification occurred after dictionary deletion.
SDCH_PROBLEM_CODE(DICTIONARY_USED_AFTER_DELETION, 107)

// Used to bound histogram.
SDCH_PROBLEM_CODE(MAX_PROBLEM_CODE, 110)

// These values are not used in histograms.