Coverage Report

Created: 2026-02-13 06:31

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