Coverage Report

Created: 2026-01-09 06:37

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/resiprocate/resip/stack/gen/HeaderHash.cxx
Line
Count
Source
1
/* C++ code produced by gperf version 3.1 */
2
/* Command-line: gperf -C -D -E -L C++ -t --key-positions='*' --compare-strncmp --ignore-case -Z HeaderHash HeaderHash.gperf  */
3
4
#if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \
5
      && ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \
6
      && (')' == 41) && ('*' == 42) && ('+' == 43) && (',' == 44) \
7
      && ('-' == 45) && ('.' == 46) && ('/' == 47) && ('0' == 48) \
8
      && ('1' == 49) && ('2' == 50) && ('3' == 51) && ('4' == 52) \
9
      && ('5' == 53) && ('6' == 54) && ('7' == 55) && ('8' == 56) \
10
      && ('9' == 57) && (':' == 58) && (';' == 59) && ('<' == 60) \
11
      && ('=' == 61) && ('>' == 62) && ('?' == 63) && ('A' == 65) \
12
      && ('B' == 66) && ('C' == 67) && ('D' == 68) && ('E' == 69) \
13
      && ('F' == 70) && ('G' == 71) && ('H' == 72) && ('I' == 73) \
14
      && ('J' == 74) && ('K' == 75) && ('L' == 76) && ('M' == 77) \
15
      && ('N' == 78) && ('O' == 79) && ('P' == 80) && ('Q' == 81) \
16
      && ('R' == 82) && ('S' == 83) && ('T' == 84) && ('U' == 85) \
17
      && ('V' == 86) && ('W' == 87) && ('X' == 88) && ('Y' == 89) \
18
      && ('Z' == 90) && ('[' == 91) && ('\\' == 92) && (']' == 93) \
19
      && ('^' == 94) && ('_' == 95) && ('a' == 97) && ('b' == 98) \
20
      && ('c' == 99) && ('d' == 100) && ('e' == 101) && ('f' == 102) \
21
      && ('g' == 103) && ('h' == 104) && ('i' == 105) && ('j' == 106) \
22
      && ('k' == 107) && ('l' == 108) && ('m' == 109) && ('n' == 110) \
23
      && ('o' == 111) && ('p' == 112) && ('q' == 113) && ('r' == 114) \
24
      && ('s' == 115) && ('t' == 116) && ('u' == 117) && ('v' == 118) \
25
      && ('w' == 119) && ('x' == 120) && ('y' == 121) && ('z' == 122) \
26
      && ('{' == 123) && ('|' == 124) && ('}' == 125) && ('~' == 126))
27
/* The character set is not based on ISO-646.  */
28
#error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gperf@gnu.org>."
29
#endif
30
31
#line 1 "HeaderHash.gperf"
32
33
#include <string.h>
34
#include <ctype.h>
35
#include "resip/stack/HeaderTypes.hxx"
36
37
namespace resip
38
{
39
using namespace std;
40
#line 10 "HeaderHash.gperf"
41
struct headers { const char *name; Headers::Type type; };
42
/* maximum key range = 438, duplicates = 0 */
43
44
#ifndef GPERF_DOWNCASE
45
#define GPERF_DOWNCASE 1
46
static unsigned char gperf_downcase[256] =
47
  {
48
      0,   1,   2,   3,   4,   5,   6,   7,   8,   9,  10,  11,  12,  13,  14,
49
     15,  16,  17,  18,  19,  20,  21,  22,  23,  24,  25,  26,  27,  28,  29,
50
     30,  31,  32,  33,  34,  35,  36,  37,  38,  39,  40,  41,  42,  43,  44,
51
     45,  46,  47,  48,  49,  50,  51,  52,  53,  54,  55,  56,  57,  58,  59,
52
     60,  61,  62,  63,  64,  97,  98,  99, 100, 101, 102, 103, 104, 105, 106,
53
    107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121,
54
    122,  91,  92,  93,  94,  95,  96,  97,  98,  99, 100, 101, 102, 103, 104,
55
    105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119,
56
    120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
57
    135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149,
58
    150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164,
59
    165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179,
60
    180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194,
61
    195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209,
62
    210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224,
63
    225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239,
64
    240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254,
65
    255
66
  };
67
#endif
68
69
#ifndef GPERF_CASE_STRNCMP
70
#define GPERF_CASE_STRNCMP 1
71
static int
72
gperf_case_strncmp (const char *s1, const char *s2, size_t n)
73
101k
{
74
222k
  for (; n > 0;)
75
121k
    {
76
121k
      unsigned char c1 = gperf_downcase[(unsigned char)*s1++];
77
121k
      unsigned char c2 = gperf_downcase[(unsigned char)*s2++];
78
121k
      if (c1 != 0 && c1 == c2)
79
120k
        {
80
120k
          n--;
81
120k
          continue;
82
120k
        }
83
826
      return (int)c1 - (int)c2;
84
121k
    }
85
101k
  return 0;
86
101k
}
87
#endif
88
89
class HeaderHash
90
{
91
private:
92
  static inline unsigned int hash (const char *str, size_t len);
93
public:
94
  static const struct headers *in_word_set (const char *str, size_t len);
95
};
96
97
inline unsigned int
98
HeaderHash::hash (const char *str, size_t len)
99
327k
{
100
327k
  static const unsigned short asso_values[] =
101
327k
    {
102
327k
      439, 439, 439, 439, 439, 439, 439, 439, 439, 439,
103
327k
      439, 439, 439, 439, 439, 439, 439, 439, 439, 439,
104
327k
      439, 439, 439, 439, 439, 439, 439, 439, 439, 439,
105
327k
      439, 439, 439, 439, 439, 439, 439, 439, 439, 439,
106
327k
      439, 439, 439, 439, 439,   0, 439, 439, 439,   5,
107
327k
        0, 439, 439, 439, 439, 439, 439, 439, 439, 439,
108
327k
      439, 439, 439, 439, 439,   0,  65,  25,   0,  20,
109
327k
       45,   5,  15,  30,  15,  80,  50,  40,   0,   5,
110
327k
        0,  30,  15,  10,   0,   0,  70,   0, 110,  35,
111
327k
        0, 439, 439, 439, 439, 439, 439,   0,  65,  25,
112
327k
        0,  20,  45,   5,  15,  30,  15,  80,  50,  40,
113
327k
        0,   5,   0,  30,  15,  10,   0,   0,  70,   0,
114
327k
      110,  35,   0, 439, 439, 439, 439, 439, 439, 439,
115
327k
      439, 439, 439, 439, 439, 439, 439, 439, 439, 439,
116
327k
      439, 439, 439, 439, 439, 439, 439, 439, 439, 439,
117
327k
      439, 439, 439, 439, 439, 439, 439, 439, 439, 439,
118
327k
      439, 439, 439, 439, 439, 439, 439, 439, 439, 439,
119
327k
      439, 439, 439, 439, 439, 439, 439, 439, 439, 439,
120
327k
      439, 439, 439, 439, 439, 439, 439, 439, 439, 439,
121
327k
      439, 439, 439, 439, 439, 439, 439, 439, 439, 439,
122
327k
      439, 439, 439, 439, 439, 439, 439, 439, 439, 439,
123
327k
      439, 439, 439, 439, 439, 439, 439, 439, 439, 439,
124
327k
      439, 439, 439, 439, 439, 439, 439, 439, 439, 439,
125
327k
      439, 439, 439, 439, 439, 439, 439, 439, 439, 439,
126
327k
      439, 439, 439, 439, 439, 439, 439, 439, 439, 439,
127
327k
      439, 439, 439, 439, 439, 439
128
327k
    };
129
327k
  unsigned int hval = len;
130
131
327k
  switch (hval)
132
327k
    {
133
366
      default:
134
366
        hval += asso_values[static_cast<unsigned char>(str[28])];
135
      /*FALLTHROUGH*/
136
699
      case 28:
137
699
        hval += asso_values[static_cast<unsigned char>(str[27])];
138
      /*FALLTHROUGH*/
139
5.09k
      case 27:
140
5.09k
        hval += asso_values[static_cast<unsigned char>(str[26])];
141
      /*FALLTHROUGH*/
142
5.38k
      case 26:
143
5.38k
        hval += asso_values[static_cast<unsigned char>(str[25])];
144
      /*FALLTHROUGH*/
145
5.75k
      case 25:
146
5.75k
        hval += asso_values[static_cast<unsigned char>(str[24])];
147
      /*FALLTHROUGH*/
148
6.20k
      case 24:
149
6.20k
        hval += asso_values[static_cast<unsigned char>(str[23])];
150
      /*FALLTHROUGH*/
151
8.38k
      case 23:
152
8.38k
        hval += asso_values[static_cast<unsigned char>(str[22])];
153
      /*FALLTHROUGH*/
154
8.94k
      case 22:
155
8.94k
        hval += asso_values[static_cast<unsigned char>(str[21])];
156
      /*FALLTHROUGH*/
157
9.56k
      case 21:
158
9.56k
        hval += asso_values[static_cast<unsigned char>(str[20])];
159
      /*FALLTHROUGH*/
160
10.0k
      case 20:
161
10.0k
        hval += asso_values[static_cast<unsigned char>(str[19])];
162
      /*FALLTHROUGH*/
163
14.1k
      case 19:
164
14.1k
        hval += asso_values[static_cast<unsigned char>(str[18])];
165
      /*FALLTHROUGH*/
166
14.5k
      case 18:
167
14.5k
        hval += asso_values[static_cast<unsigned char>(str[17])];
168
      /*FALLTHROUGH*/
169
15.6k
      case 17:
170
15.6k
        hval += asso_values[static_cast<unsigned char>(str[16])];
171
      /*FALLTHROUGH*/
172
16.6k
      case 16:
173
16.6k
        hval += asso_values[static_cast<unsigned char>(str[15])];
174
      /*FALLTHROUGH*/
175
17.0k
      case 15:
176
17.0k
        hval += asso_values[static_cast<unsigned char>(str[14])];
177
      /*FALLTHROUGH*/
178
17.5k
      case 14:
179
17.5k
        hval += asso_values[static_cast<unsigned char>(str[13])];
180
      /*FALLTHROUGH*/
181
19.2k
      case 13:
182
19.2k
        hval += asso_values[static_cast<unsigned char>(str[12])];
183
      /*FALLTHROUGH*/
184
21.7k
      case 12:
185
21.7k
        hval += asso_values[static_cast<unsigned char>(str[11])];
186
      /*FALLTHROUGH*/
187
22.6k
      case 11:
188
22.6k
        hval += asso_values[static_cast<unsigned char>(str[10])];
189
      /*FALLTHROUGH*/
190
23.9k
      case 10:
191
23.9k
        hval += asso_values[static_cast<unsigned char>(str[9])];
192
      /*FALLTHROUGH*/
193
25.8k
      case 9:
194
25.8k
        hval += asso_values[static_cast<unsigned char>(str[8])];
195
      /*FALLTHROUGH*/
196
29.8k
      case 8:
197
29.8k
        hval += asso_values[static_cast<unsigned char>(str[7])];
198
      /*FALLTHROUGH*/
199
42.7k
      case 7:
200
42.7k
        hval += asso_values[static_cast<unsigned char>(str[6])];
201
      /*FALLTHROUGH*/
202
45.8k
      case 6:
203
45.8k
        hval += asso_values[static_cast<unsigned char>(str[5])];
204
      /*FALLTHROUGH*/
205
61.9k
      case 5:
206
61.9k
        hval += asso_values[static_cast<unsigned char>(str[4])];
207
      /*FALLTHROUGH*/
208
74.4k
      case 4:
209
74.4k
        hval += asso_values[static_cast<unsigned char>(str[3])];
210
      /*FALLTHROUGH*/
211
98.8k
      case 3:
212
98.8k
        hval += asso_values[static_cast<unsigned char>(str[2])];
213
      /*FALLTHROUGH*/
214
139k
      case 2:
215
139k
        hval += asso_values[static_cast<unsigned char>(str[1])];
216
      /*FALLTHROUGH*/
217
327k
      case 1:
218
327k
        hval += asso_values[static_cast<unsigned char>(str[0])];
219
327k
        break;
220
327k
    }
221
327k
  return hval;
222
327k
}
223
224
const struct headers *
225
HeaderHash::in_word_set (const char *str, size_t len)
226
876k
{
227
876k
  enum
228
876k
    {
229
876k
      TOTAL_KEYWORDS = 113,
230
876k
      MIN_WORD_LENGTH = 1,
231
876k
      MAX_WORD_LENGTH = 29,
232
876k
      MIN_HASH_VALUE = 1,
233
876k
      MAX_HASH_VALUE = 438
234
876k
    };
235
236
876k
  static const struct headers wordlist[] =
237
876k
    {
238
876k
#line 20 "HeaderHash.gperf"
239
876k
      {"t", Headers::To},
240
876k
#line 26 "HeaderHash.gperf"
241
876k
      {"o", Headers::Event},
242
876k
#line 36 "HeaderHash.gperf"
243
876k
      {"to", Headers::To},
244
876k
#line 18 "HeaderHash.gperf"
245
876k
      {"s", Headers::Subject},
246
876k
#line 22 "HeaderHash.gperf"
247
876k
      {"r", Headers::ReferTo},
248
876k
#line 99 "HeaderHash.gperf"
249
876k
      {"path", Headers::Path},
250
876k
#line 14 "HeaderHash.gperf"
251
876k
      {"e", Headers::ContentEncoding},
252
876k
#line 52 "HeaderHash.gperf"
253
876k
      {"date", Headers::Date},
254
876k
#line 16 "HeaderHash.gperf"
255
876k
      {"c", Headers::ContentType},
256
876k
#line 12 "HeaderHash.gperf"
257
876k
      {"i", Headers::CallID},
258
876k
#line 64 "HeaderHash.gperf"
259
876k
      {"host", Headers::Host},
260
876k
#line 25 "HeaderHash.gperf"
261
876k
      {"y", Headers::Identity},
262
876k
#line 13 "HeaderHash.gperf"
263
876k
      {"m", Headers::Contact},
264
876k
#line 34 "HeaderHash.gperf"
265
876k
      {"route", Headers::Route},
266
876k
#line 17 "HeaderHash.gperf"
267
876k
      {"f", Headers::From},
268
876k
#line 15 "HeaderHash.gperf"
269
876k
      {"l", Headers::ContentLength},
270
876k
#line 93 "HeaderHash.gperf"
271
876k
      {"join", Headers::Join},
272
876k
#line 103 "HeaderHash.gperf"
273
876k
      {"reason", Headers::Reason},
274
876k
#line 83 "HeaderHash.gperf"
275
876k
      {"warning", Headers::Warning},
276
876k
#line 77 "HeaderHash.gperf"
277
876k
      {"supported", Headers::Supported},
278
876k
#line 81 "HeaderHash.gperf"
279
876k
      {"unsupported", Headers::Unsupported},
280
876k
#line 29 "HeaderHash.gperf"
281
876k
      {"contact", Headers::Contact},
282
876k
#line 23 "HeaderHash.gperf"
283
876k
      {"b", Headers::ReferredBy},
284
876k
#line 90 "HeaderHash.gperf"
285
876k
      {"hide", Headers::UNKNOWN},
286
876k
#line 21 "HeaderHash.gperf"
287
876k
      {"v", Headers::Via},
288
876k
#line 75 "HeaderHash.gperf"
289
876k
      {"sip-etag", Headers::SIPETag},
290
876k
#line 38 "HeaderHash.gperf"
291
876k
      {"accept", Headers::Accept},
292
876k
#line 110 "HeaderHash.gperf"
293
876k
      {"rseq", Headers::RSeq},
294
876k
#line 82 "HeaderHash.gperf"
295
876k
      {"user-agent", Headers::UserAgent},
296
876k
#line 19 "HeaderHash.gperf"
297
876k
      {"k", Headers::Supported},
298
876k
#line 27 "HeaderHash.gperf"
299
876k
      {"cseq", Headers::CSeq},
300
876k
#line 47 "HeaderHash.gperf"
301
876k
      {"content-id", Headers::ContentId},
302
876k
#line 63 "HeaderHash.gperf"
303
876k
      {"origin", Headers::Origin},
304
876k
#line 57 "HeaderHash.gperf"
305
876k
      {"organization", Headers::Organization},
306
876k
#line 37 "HeaderHash.gperf"
307
876k
      {"via", Headers::Via},
308
876k
#line 116 "HeaderHash.gperf"
309
876k
      {"min-se", Headers::MinSE},
310
876k
#line 124 "HeaderHash.gperf"
311
876k
      {"user-to-user", Headers::UserToUser},
312
876k
#line 32 "HeaderHash.gperf"
313
876k
      {"from", Headers::From},
314
876k
#line 43 "HeaderHash.gperf"
315
876k
      {"allow", Headers::Allow},
316
876k
#line 24 "HeaderHash.gperf"
317
876k
      {"x", Headers::SessionExpires},
318
876k
#line 86 "HeaderHash.gperf"
319
876k
      {"authorization", Headers::Authorization},
320
876k
#line 89 "HeaderHash.gperf"
321
876k
      {"event", Headers::Event},
322
876k
#line 50 "HeaderHash.gperf"
323
876k
      {"content-type", Headers::ContentType},
324
876k
#line 79 "HeaderHash.gperf"
325
876k
      {"answer-mode", Headers::AnswerMode},
326
876k
#line 91 "HeaderHash.gperf"
327
876k
      {"identity", Headers::Identity},
328
876k
#line 102 "HeaderHash.gperf"
329
876k
      {"rack", Headers::RAck},
330
876k
#line 84 "HeaderHash.gperf"
331
876k
      {"www-authenticate",Headers::WWWAuthenticate},
332
876k
#line 104 "HeaderHash.gperf"
333
876k
      {"refer-to",Headers::ReferTo},
334
876k
#line 69 "HeaderHash.gperf"
335
876k
      {"record-route", Headers::RecordRoute},
336
876k
#line 70 "HeaderHash.gperf"
337
876k
      {"reply-to", Headers::ReplyTo},
338
876k
#line 71 "HeaderHash.gperf"
339
876k
      {"require", Headers::Require},
340
876k
#line 65 "HeaderHash.gperf"
341
876k
      {"priority", Headers::Priority},
342
876k
#line 39 "HeaderHash.gperf"
343
876k
      {"accept-contact", Headers::AcceptContact},
344
876k
#line 88 "HeaderHash.gperf"
345
876k
      {"encryption", Headers::UNKNOWN},
346
876k
#line 35 "HeaderHash.gperf"
347
876k
      {"subject", Headers::Subject},
348
876k
#line 100 "HeaderHash.gperf"
349
876k
      {"target-dialog", Headers::TargetDialog},
350
876k
#line 49 "HeaderHash.gperf"
351
876k
      {"content-language", Headers::ContentLanguage},
352
876k
#line 106 "HeaderHash.gperf"
353
876k
      {"replaces",Headers::Replaces},
354
876k
#line 78 "HeaderHash.gperf"
355
876k
      {"timestamp", Headers::Timestamp},
356
876k
#line 48 "HeaderHash.gperf"
357
876k
      {"content-encoding", Headers::ContentEncoding},
358
876k
#line 30 "HeaderHash.gperf"
359
876k
      {"content-length", Headers::ContentLength},
360
876k
#line 74 "HeaderHash.gperf"
361
876k
      {"server", Headers::Server},
362
876k
#line 53 "HeaderHash.gperf"
363
876k
      {"error-info", Headers::ErrorInfo},
364
876k
#line 95 "HeaderHash.gperf"
365
876k
      {"p-associated-uri", Headers::PAssociatedUri},
366
876k
#line 28 "HeaderHash.gperf"
367
876k
      {"call-id", Headers::CallID},
368
876k
#line 107 "HeaderHash.gperf"
369
876k
      {"reject-contact", Headers::RejectContact},
370
876k
#line 41 "HeaderHash.gperf"
371
876k
      {"accept-language", Headers::AcceptLanguage},
372
876k
#line 54 "HeaderHash.gperf"
373
876k
      {"in-reply-to", Headers::InReplyTo},
374
876k
#line 40 "HeaderHash.gperf"
375
876k
      {"accept-encoding", Headers::AcceptEncoding},
376
876k
#line 62 "HeaderHash.gperf"
377
876k
      {"cookie", Headers::Cookie},
378
876k
#line 42 "HeaderHash.gperf"
379
876k
      {"alert-info",Headers::AlertInfo},
380
876k
#line 72 "HeaderHash.gperf"
381
876k
      {"retry-after", Headers::RetryAfter},
382
876k
#line 101 "HeaderHash.gperf"
383
876k
      {"privacy", Headers::Privacy},
384
876k
#line 46 "HeaderHash.gperf"
385
876k
      {"content-disposition", Headers::ContentDisposition},
386
876k
#line 118 "HeaderHash.gperf"
387
876k
      {"remote-party-id", Headers::RemotePartyId},
388
876k
#line 117 "HeaderHash.gperf"
389
876k
      {"refer-sub", Headers::ReferSub},
390
876k
#line 119 "HeaderHash.gperf"
391
876k
      {"history-info", Headers::HistoryInfo},
392
876k
#line 76 "HeaderHash.gperf"
393
876k
      {"sip-if-match", Headers::SIPIfMatch},
394
876k
#line 92 "HeaderHash.gperf"
395
876k
      {"identity-info", Headers::IdentityInfo},
396
876k
#line 94 "HeaderHash.gperf"
397
876k
      {"p-asserted-identity", Headers::PAssertedIdentity},
398
876k
#line 97 "HeaderHash.gperf"
399
876k
      {"p-media-authorization", Headers::PMediaAuthorization},
400
876k
#line 31 "HeaderHash.gperf"
401
876k
      {"expires", Headers::Expires},
402
876k
#line 45 "HeaderHash.gperf"
403
876k
      {"call-info", Headers::CallInfo},
404
876k
#line 73 "HeaderHash.gperf"
405
876k
      {"flow-timer", Headers::FlowTimer},
406
876k
#line 44 "HeaderHash.gperf"
407
876k
      {"authentication-info", Headers::AuthenticationInfo},
408
876k
#line 109 "HeaderHash.gperf"
409
876k
      {"response-key", Headers::UNKNOWN},
410
876k
#line 108 "HeaderHash.gperf"
411
876k
      {"request-disposition", Headers::RequestDisposition},
412
876k
#line 87 "HeaderHash.gperf"
413
876k
      {"allow-events", Headers::AllowEvents},
414
876k
#line 85 "HeaderHash.gperf"
415
876k
      {"subscription-state",Headers::SubscriptionState},
416
876k
#line 80 "HeaderHash.gperf"
417
876k
      {"priv-answer-mode", Headers::PrivAnswerMode},
418
876k
#line 96 "HeaderHash.gperf"
419
876k
      {"p-called-party-id", Headers::PCalledPartyId},
420
876k
#line 114 "HeaderHash.gperf"
421
876k
      {"service-route", Headers::ServiceRoute},
422
876k
#line 121 "HeaderHash.gperf"
423
876k
      {"p-charging-vector", Headers::PChargingVector},
424
876k
#line 33 "HeaderHash.gperf"
425
876k
      {"max-forwards", Headers::MaxForwards},
426
876k
#line 105 "HeaderHash.gperf"
427
876k
      {"referred-by",Headers::ReferredBy},
428
876k
#line 51 "HeaderHash.gperf"
429
876k
      {"content-transfer-encoding", Headers::ContentTransferEncoding},
430
876k
#line 111 "HeaderHash.gperf"
431
876k
      {"security-client", Headers::SecurityClient},
432
876k
#line 67 "HeaderHash.gperf"
433
876k
      {"proxy-authorization", Headers::ProxyAuthorization},
434
876k
#line 98 "HeaderHash.gperf"
435
876k
      {"p-preferred-identity", Headers::PPreferredIdentity},
436
876k
#line 55 "HeaderHash.gperf"
437
876k
      {"min-expires", Headers::MinExpires},
438
876k
#line 56 "HeaderHash.gperf"
439
876k
      {"mime-version", Headers::MIMEVersion},
440
876k
#line 66 "HeaderHash.gperf"
441
876k
      {"proxy-authenticate", Headers::ProxyAuthenticate},
442
876k
#line 112 "HeaderHash.gperf"
443
876k
      {"security-server", Headers::SecurityServer},
444
876k
#line 115 "HeaderHash.gperf"
445
876k
      {"session-expires", Headers::SessionExpires},
446
876k
#line 68 "HeaderHash.gperf"
447
876k
      {"proxy-require", Headers::ProxyRequire},
448
876k
#line 120 "HeaderHash.gperf"
449
876k
      {"p-access-network-info", Headers::PAccessNetworkInfo},
450
876k
#line 122 "HeaderHash.gperf"
451
876k
      {"p-charging-function-addresses", Headers::PChargingFunctionAddresses},
452
876k
#line 123 "HeaderHash.gperf"
453
876k
      {"p-visited-network-id", Headers::PVisitedNetworkID},
454
876k
#line 113 "HeaderHash.gperf"
455
876k
      {"security-verify", Headers::SecurityVerify},
456
876k
#line 61 "HeaderHash.gperf"
457
876k
      {"sec-websocket-accept", Headers::SecWebSocketAccept},
458
876k
#line 58 "HeaderHash.gperf"
459
876k
      {"sec-websocket-key", Headers::SecWebSocketKey},
460
876k
#line 60 "HeaderHash.gperf"
461
876k
      {"sec-websocket-key2", Headers::SecWebSocketKey2},
462
876k
#line 59 "HeaderHash.gperf"
463
876k
      {"sec-websocket-key1", Headers::SecWebSocketKey1}
464
876k
    };
465
466
876k
  static const signed char lookup[] =
467
876k
    {
468
876k
       -1,   0,  -1,  -1,  -1,  -1,   1,   2,  -1,  -1,
469
876k
       -1,   3,  -1,  -1,  -1,  -1,   4,  -1,  -1,   5,
470
876k
       -1,   6,  -1,  -1,   7,  -1,   8,  -1,  -1,  -1,
471
876k
       -1,   9,  -1,  -1,  10,  -1,  11,  -1,  -1,  -1,
472
876k
       -1,  12,  -1,  -1,  -1,  13,  14,  -1,  -1,  -1,
473
876k
       -1,  15,  -1,  -1,  16,  -1,  17,  18,  -1,  19,
474
876k
       -1,  20,  21,  -1,  -1,  -1,  22,  -1,  -1,  23,
475
876k
       -1,  24,  -1,  25,  -1,  -1,  26,  -1,  -1,  27,
476
876k
       28,  29,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  30,
477
876k
       31,  32,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
478
876k
       -1,  -1,  33,  34,  -1,  -1,  35,  36,  -1,  37,
479
876k
       38,  39,  -1,  40,  -1,  41,  -1,  42,  -1,  -1,
480
876k
       -1,  43,  -1,  44,  45,  -1,  46,  -1,  47,  -1,
481
876k
       -1,  -1,  48,  49,  -1,  -1,  -1,  50,  51,  52,
482
876k
       53,  -1,  54,  55,  -1,  -1,  56,  -1,  57,  58,
483
876k
       -1,  59,  -1,  -1,  60,  -1,  61,  -1,  -1,  -1,
484
876k
       62,  63,  64,  -1,  65,  66,  67,  -1,  -1,  -1,
485
876k
       68,  69,  -1,  -1,  -1,  70,  71,  -1,  -1,  -1,
486
876k
       -1,  -1,  72,  -1,  -1,  -1,  -1,  -1,  -1,  73,
487
876k
       -1,  -1,  -1,  -1,  -1,  74,  -1,  -1,  -1,  75,
488
876k
       -1,  -1,  76,  -1,  -1,  -1,  -1,  77,  78,  79,
489
876k
       -1,  80,  81,  -1,  82,  83,  -1,  -1,  -1,  -1,
490
876k
       -1,  -1,  -1,  -1,  84,  -1,  -1,  85,  -1,  -1,
491
876k
       -1,  -1,  -1,  -1,  86,  -1,  -1,  87,  88,  -1,
492
876k
       -1,  89,  90,  91,  -1,  -1,  -1,  92,  -1,  -1,
493
876k
       -1,  -1,  93,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
494
876k
       -1,  94,  -1,  -1,  -1,  95,  -1,  -1,  -1,  -1,
495
876k
       -1,  -1,  -1,  -1,  -1,  96,  -1,  -1,  -1,  -1,
496
876k
       -1,  -1,  -1,  -1,  97,  98,  99,  -1,  -1,  -1,
497
876k
       -1,  -1, 100, 101,  -1,  -1,  -1,  -1,  -1,  -1,
498
876k
      102,  -1,  -1,  -1,  -1, 103,  -1,  -1, 104,  -1,
499
876k
       -1, 105,  -1,  -1, 106,  -1,  -1,  -1,  -1,  -1,
500
876k
       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
501
876k
      107,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
502
876k
       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
503
876k
       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
504
876k
       -1,  -1,  -1,  -1,  -1, 108,  -1,  -1,  -1,  -1,
505
876k
      109,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
506
876k
       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
507
876k
       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
508
876k
       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
509
876k
       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
510
876k
       -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,  -1,
511
876k
       -1,  -1, 110, 111,  -1,  -1,  -1,  -1, 112
512
876k
    };
513
514
876k
  if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
515
327k
    {
516
327k
      unsigned int key = hash (str, len);
517
518
327k
      if (key <= MAX_HASH_VALUE)
519
135k
        {
520
135k
          int index = lookup[key];
521
522
135k
          if (index >= 0)
523
124k
            {
524
124k
              const char *s = wordlist[index].name;
525
526
124k
              if ((((unsigned char)*str ^ (unsigned char)*s) & ~32) == 0 && !gperf_case_strncmp (str, s, len) && s[len] == '\0')
527
101k
                return &wordlist[index];
528
124k
            }
529
135k
        }
530
327k
    }
531
775k
  return 0;
532
876k
}
533
#line 125 "HeaderHash.gperf"
534
535
}