Coverage Report

Created: 2024-11-21 07:03

/src/openssl/crypto/params_idx.c
Line
Count
Source (jump to first uncovered line)
1
/*
2
 * WARNING: do not edit!
3
 * Generated by Makefile from crypto/params_idx.c.in
4
 *
5
 * Copyright 2023 The OpenSSL Project Authors. All Rights Reserved.
6
 *
7
 * Licensed under the Apache License 2.0 (the "License").  You may not use
8
 * this file except in compliance with the License.  You can obtain a copy
9
 * in the file LICENSE in the source distribution or at
10
 * https://www.openssl.org/source/license.html
11
 */
12
13
14
#include "internal/e_os.h"
15
#include "internal/param_names.h"
16
#include <string.h>
17
18
/* Machine generated TRIE -- generated by util/perl/OpenSSL/paramnames.pm */
19
int ossl_param_find_pidx(const char *s)
20
1.52k
{
21
1.52k
    switch(s[0]) {
22
0
    default:
23
0
        break;
24
0
    case 'a':
25
0
        switch(s[1]) {
26
0
        default:
27
0
            break;
28
0
        case 'c':
29
0
            if (strcmp("vp-info", s + 2) == 0)
30
0
                return PIDX_KDF_PARAM_X942_ACVPINFO;
31
0
            break;
32
0
        case 'd':
33
0
            switch(s[2]) {
34
0
            default:
35
0
                break;
36
0
            case '\0':
37
0
                return PIDX_KDF_PARAM_ARGON2_AD;
38
0
            }
39
0
            break;
40
0
        case 'e':
41
0
            if (strcmp("ad", s + 2) == 0)
42
0
                return PIDX_CIPHER_PARAM_AEAD;
43
0
            break;
44
0
        case 'l':
45
0
            switch(s[2]) {
46
0
            default:
47
0
                break;
48
0
            case 'g':
49
0
                switch(s[3]) {
50
0
                default:
51
0
                    break;
52
0
                case '_':
53
0
                    if (strcmp("id_param", s + 4) == 0)
54
0
                        return PIDX_CIPHER_PARAM_ALGORITHM_ID_PARAMS_OLD;
55
0
                    break;
56
0
                case 'i':
57
0
                    if (strcmp("d-absent", s + 4) == 0)
58
0
                        return PIDX_DIGEST_PARAM_ALGID_ABSENT;
59
0
                    break;
60
0
                case 'o':
61
0
                    switch(s[4]) {
62
0
                    default:
63
0
                        break;
64
0
                    case 'r':
65
0
                        switch(s[5]) {
66
0
                        default:
67
0
                            break;
68
0
                        case 'i':
69
0
                            switch(s[6]) {
70
0
                            default:
71
0
                                break;
72
0
                            case 't':
73
0
                                switch(s[7]) {
74
0
                                default:
75
0
                                    break;
76
0
                                case 'h':
77
0
                                    switch(s[8]) {
78
0
                                    default:
79
0
                                        break;
80
0
                                    case 'm':
81
0
                                        switch(s[9]) {
82
0
                                        default:
83
0
                                            break;
84
0
                                        case '-':
85
0
                                            switch(s[10]) {
86
0
                                            default:
87
0
                                                break;
88
0
                                            case 'i':
89
0
                                                switch(s[11]) {
90
0
                                                default:
91
0
                                                    break;
92
0
                                                case 'd':
93
0
                                                    switch(s[12]) {
94
0
                                                    default:
95
0
                                                        break;
96
0
                                                    case '-':
97
0
                                                        if (strcmp("params", s + 13) == 0)
98
0
                                                            return PIDX_ALG_PARAM_ALGORITHM_ID_PARAMS;
99
0
                                                        break;
100
0
                                                    case '\0':
101
0
                                                        return PIDX_ALG_PARAM_ALGORITHM_ID;
102
0
                                                    }
103
0
                                                }
104
0
                                            }
105
0
                                        }
106
0
                                    }
107
0
                                }
108
0
                            }
109
0
                        }
110
0
                    }
111
0
                }
112
0
                break;
113
0
            case 'i':
114
0
                if (strcmp("as", s + 3) == 0)
115
0
                    return PIDX_STORE_PARAM_ALIAS;
116
0
            }
117
0
            break;
118
0
        case '\0':
119
0
            return PIDX_PKEY_PARAM_EC_A;
120
0
        }
121
0
        break;
122
0
    case 'b':
123
0
        switch(s[1]) {
124
0
        default:
125
0
            break;
126
0
        case 'a':
127
0
            if (strcmp("sis-type", s + 2) == 0)
128
0
                return PIDX_PKEY_PARAM_EC_CHAR2_TYPE;
129
0
            break;
130
0
        case 'i':
131
0
            if (strcmp("ts", s + 2) == 0)
132
0
                return PIDX_PKEY_PARAM_BITS;
133
0
            break;
134
0
        case 'l':
135
0
            switch(s[2]) {
136
0
            default:
137
0
                break;
138
0
            case 'o':
139
0
                switch(s[3]) {
140
0
                default:
141
0
                    break;
142
0
                case 'c':
143
0
                    switch(s[4]) {
144
0
                    default:
145
0
                        break;
146
0
                    case 'k':
147
0
                        switch(s[5]) {
148
0
                        default:
149
0
                            break;
150
0
                        case '-':
151
0
                            if (strcmp("size", s + 6) == 0)
152
0
                                return PIDX_MAC_PARAM_BLOCK_SIZE;
153
0
                            break;
154
0
                        case '_':
155
0
                            if (strcmp("padding", s + 6) == 0)
156
0
                                return PIDX_LIBSSL_RECORD_LAYER_PARAM_BLOCK_PADDING;
157
0
                            break;
158
0
                        case 's':
159
0
                            if (strcmp("ize", s + 6) == 0)
160
0
                                return PIDX_DIGEST_PARAM_BLOCK_SIZE;
161
0
                        }
162
0
                    }
163
0
                }
164
0
            }
165
0
            break;
166
0
        case 'u':
167
0
            if (strcmp("ildinfo", s + 2) == 0)
168
0
                return PIDX_PROV_PARAM_BUILDINFO;
169
0
            break;
170
0
        case '\0':
171
0
            return PIDX_PKEY_PARAM_EC_B;
172
0
        }
173
0
        break;
174
0
    case 'c':
175
0
        switch(s[1]) {
176
0
        default:
177
0
            break;
178
0
        case '-':
179
0
            if (strcmp("rounds", s + 2) == 0)
180
0
                return PIDX_MAC_PARAM_C_ROUNDS;
181
0
            break;
182
0
        case 'e':
183
0
            if (strcmp("kalg", s + 2) == 0)
184
0
                return PIDX_KDF_PARAM_CEK_ALG;
185
0
            break;
186
0
        case 'i':
187
0
            if (strcmp("pher", s + 2) == 0)
188
0
                return PIDX_ALG_PARAM_CIPHER;
189
0
            break;
190
0
        case 'o':
191
0
            switch(s[2]) {
192
0
            default:
193
0
                break;
194
0
            case 'f':
195
0
                if (strcmp("actor", s + 3) == 0)
196
0
                    return PIDX_PKEY_PARAM_EC_COFACTOR;
197
0
                break;
198
0
            case 'n':
199
0
                switch(s[3]) {
200
0
                default:
201
0
                    break;
202
0
                case 's':
203
0
                    if (strcmp("tant", s + 4) == 0)
204
0
                        return PIDX_KDF_PARAM_CONSTANT;
205
0
                    break;
206
0
                case 't':
207
0
                    if (strcmp("ext-string", s + 4) == 0)
208
0
                        return PIDX_SIGNATURE_PARAM_CONTEXT_STRING;
209
0
                }
210
0
            }
211
0
            break;
212
0
        case 't':
213
0
            switch(s[2]) {
214
0
            default:
215
0
                break;
216
0
            case 's':
217
0
                switch(s[3]) {
218
0
                default:
219
0
                    break;
220
0
                case '_':
221
0
                    if (strcmp("mode", s + 4) == 0)
222
0
                        return PIDX_CIPHER_PARAM_CTS_MODE;
223
0
                    break;
224
0
                case '\0':
225
0
                    return PIDX_CIPHER_PARAM_CTS;
226
0
                }
227
0
            }
228
0
            break;
229
0
        case 'u':
230
0
            switch(s[2]) {
231
0
            default:
232
0
                break;
233
0
            case 's':
234
0
                switch(s[3]) {
235
0
                default:
236
0
                    break;
237
0
                case 't':
238
0
                    switch(s[4]) {
239
0
                    default:
240
0
                        break;
241
0
                    case 'o':
242
0
                        switch(s[5]) {
243
0
                        default:
244
0
                            break;
245
0
                        case 'm':
246
0
                            switch(s[6]) {
247
0
                            default:
248
0
                                break;
249
0
                            case '-':
250
0
                                if (strcmp("iv", s + 7) == 0)
251
0
                                    return PIDX_CIPHER_PARAM_CUSTOM_IV;
252
0
                                break;
253
0
                            case '\0':
254
0
                                return PIDX_MAC_PARAM_CUSTOM;
255
0
                            }
256
0
                        }
257
0
                    }
258
0
                }
259
0
            }
260
0
        }
261
0
        break;
262
0
    case 'd':
263
0
        switch(s[1]) {
264
0
        default:
265
0
            break;
266
0
        case '-':
267
0
            if (strcmp("rounds", s + 2) == 0)
268
0
                return PIDX_MAC_PARAM_D_ROUNDS;
269
0
            break;
270
0
        case 'a':
271
0
            switch(s[2]) {
272
0
            default:
273
0
                break;
274
0
            case 't':
275
0
                switch(s[3]) {
276
0
                default:
277
0
                    break;
278
0
                case 'a':
279
0
                    switch(s[4]) {
280
0
                    default:
281
0
                        break;
282
0
                    case '-':
283
0
                        switch(s[5]) {
284
0
                        default:
285
0
                            break;
286
0
                        case 's':
287
0
                            if (strcmp("tructure", s + 6) == 0)
288
0
                                return PIDX_OBJECT_PARAM_DATA_STRUCTURE;
289
0
                            break;
290
0
                        case 't':
291
0
                            if (strcmp("ype", s + 6) == 0)
292
0
                                return PIDX_OBJECT_PARAM_DATA_TYPE;
293
0
                        }
294
0
                        break;
295
0
                    case '\0':
296
0
                        return PIDX_OBJECT_PARAM_DATA;
297
0
                    }
298
0
                }
299
0
            }
300
0
            break;
301
0
        case 'e':
302
0
            switch(s[2]) {
303
0
            default:
304
0
                break;
305
0
            case 'c':
306
0
                switch(s[3]) {
307
0
                default:
308
0
                    break;
309
0
                case 'o':
310
0
                    if (strcmp("ded-from-explicit", s + 4) == 0)
311
0
                        return PIDX_PKEY_PARAM_EC_DECODED_FROM_EXPLICIT_PARAMS;
312
0
                    break;
313
0
                case 'r':
314
0
                    if (strcmp("ypt-only", s + 4) == 0)
315
0
                        return PIDX_CIPHER_PARAM_DECRYPT_ONLY;
316
0
                }
317
0
                break;
318
0
            case 'f':
319
0
                if (strcmp("ault-digest", s + 3) == 0)
320
0
                    return PIDX_PKEY_PARAM_DEFAULT_DIGEST;
321
0
                break;
322
0
            case 's':
323
0
                if (strcmp("c", s + 3) == 0)
324
0
                    return PIDX_OBJECT_PARAM_DESC;
325
0
            }
326
0
            break;
327
0
        case 'h':
328
0
            if (strcmp("kem-ikm", s + 2) == 0)
329
0
                return PIDX_PKEY_PARAM_DHKEM_IKM;
330
0
            break;
331
0
        case 'i':
332
0
            switch(s[2]) {
333
0
            default:
334
0
                break;
335
0
            case 'g':
336
0
                switch(s[3]) {
337
0
                default:
338
0
                    break;
339
0
                case 'e':
340
0
                    switch(s[4]) {
341
0
                    default:
342
0
                        break;
343
0
                    case 's':
344
0
                        switch(s[5]) {
345
0
                        default:
346
0
                            break;
347
0
                        case 't':
348
0
                            switch(s[6]) {
349
0
                            default:
350
0
                                break;
351
0
                            case '-':
352
0
                                switch(s[7]) {
353
0
                                default:
354
0
                                    break;
355
0
                                case 'c':
356
0
                                    if (strcmp("heck", s + 8) == 0)
357
0
                                        return PIDX_PKEY_PARAM_FIPS_DIGEST_CHECK;
358
0
                                    break;
359
0
                                case 'n':
360
0
                                    if (strcmp("oinit", s + 8) == 0)
361
0
                                        return PIDX_MAC_PARAM_DIGEST_NOINIT;
362
0
                                    break;
363
0
                                case 'o':
364
0
                                    if (strcmp("neshot", s + 8) == 0)
365
0
                                        return PIDX_MAC_PARAM_DIGEST_ONESHOT;
366
0
                                    break;
367
0
                                case 'p':
368
0
                                    if (strcmp("rops", s + 8) == 0)
369
0
                                        return PIDX_ASYM_CIPHER_PARAM_OAEP_DIGEST_PROPS;
370
0
                                    break;
371
0
                                case 's':
372
0
                                    if (strcmp("ize", s + 8) == 0)
373
0
                                        return PIDX_PKEY_PARAM_DIGEST_SIZE;
374
0
                                }
375
0
                                break;
376
0
                            case '\0':
377
0
                                return PIDX_STORE_PARAM_DIGEST;
378
0
                            }
379
0
                        }
380
0
                    }
381
0
                }
382
0
                break;
383
0
            case 's':
384
0
                if (strcmp("tid", s + 3) == 0)
385
0
                    return PIDX_PKEY_PARAM_DIST_ID;
386
0
            }
387
0
            break;
388
0
        case 'r':
389
0
            if (strcmp("bg-no-trunc-md", s + 2) == 0)
390
0
                return PIDX_PROV_PARAM_DRBG_TRUNC_DIGEST;
391
0
            break;
392
0
        case 's':
393
0
            if (strcmp("a-sign-disabled", s + 2) == 0)
394
0
                return PIDX_PROV_PARAM_DSA_SIGN_DISABLED;
395
0
            break;
396
0
        case '\0':
397
0
            return PIDX_PKEY_PARAM_RSA_D;
398
0
        }
399
0
        break;
400
0
    case 'e':
401
0
        switch(s[1]) {
402
0
        default:
403
0
            break;
404
0
        case 'a':
405
0
            if (strcmp("rly_clean", s + 2) == 0)
406
0
                return PIDX_KDF_PARAM_EARLY_CLEAN;
407
0
            break;
408
0
        case 'c':
409
0
            switch(s[2]) {
410
0
            default:
411
0
                break;
412
0
            case 'd':
413
0
                switch(s[3]) {
414
0
                default:
415
0
                    break;
416
0
                case 'h':
417
0
                    switch(s[4]) {
418
0
                    default:
419
0
                        break;
420
0
                    case '-':
421
0
                        switch(s[5]) {
422
0
                        default:
423
0
                            break;
424
0
                        case 'c':
425
0
                            switch(s[6]) {
426
0
                            default:
427
0
                                break;
428
0
                            case 'o':
429
0
                                switch(s[7]) {
430
0
                                default:
431
0
                                    break;
432
0
                                case 'f':
433
0
                                    switch(s[8]) {
434
0
                                    default:
435
0
                                        break;
436
0
                                    case 'a':
437
0
                                        switch(s[9]) {
438
0
                                        default:
439
0
                                            break;
440
0
                                        case 'c':
441
0
                                            switch(s[10]) {
442
0
                                            default:
443
0
                                                break;
444
0
                                            case 't':
445
0
                                                switch(s[11]) {
446
0
                                                default:
447
0
                                                    break;
448
0
                                                case 'o':
449
0
                                                    switch(s[12]) {
450
0
                                                    default:
451
0
                                                        break;
452
0
                                                    case 'r':
453
0
                                                        switch(s[13]) {
454
0
                                                        default:
455
0
                                                            break;
456
0
                                                        case '-':
457
0
                                                            switch(s[14]) {
458
0
                                                            default:
459
0
                                                                break;
460
0
                                                            case 'c':
461
0
                                                                if (strcmp("heck", s + 15) == 0)
462
0
                                                                    return PIDX_PROV_PARAM_ECDH_COFACTOR_CHECK;
463
0
                                                                break;
464
0
                                                            case 'm':
465
0
                                                                if (strcmp("ode", s + 15) == 0)
466
0
                                                                    return PIDX_EXCHANGE_PARAM_EC_ECDH_COFACTOR_MODE;
467
0
                                                            }
468
0
                                                        }
469
0
                                                    }
470
0
                                                }
471
0
                                            }
472
0
                                        }
473
0
                                    }
474
0
                                }
475
0
                            }
476
0
                        }
477
0
                    }
478
0
                }
479
0
            }
480
0
            break;
481
0
        case 'm':
482
0
            if (strcmp("s_check", s + 2) == 0)
483
0
                return PIDX_KDF_PARAM_FIPS_EMS_CHECK;
484
0
            break;
485
0
        case 'n':
486
0
            switch(s[2]) {
487
0
            default:
488
0
                break;
489
0
            case 'c':
490
0
                switch(s[3]) {
491
0
                default:
492
0
                    break;
493
0
                case 'o':
494
0
                    switch(s[4]) {
495
0
                    default:
496
0
                        break;
497
0
                    case 'd':
498
0
                        switch(s[5]) {
499
0
                        default:
500
0
                            break;
501
0
                        case 'e':
502
0
                            if (strcmp("d-pub-key", s + 6) == 0)
503
0
                                return PIDX_PKEY_PARAM_ENCODED_PUBLIC_KEY;
504
0
                            break;
505
0
                        case 'i':
506
0
                            if (strcmp("ng", s + 6) == 0)
507
0
                                return PIDX_PKEY_PARAM_EC_ENCODING;
508
0
                        }
509
0
                    }
510
0
                    break;
511
0
                case 'r':
512
0
                    switch(s[4]) {
513
0
                    default:
514
0
                        break;
515
0
                    case 'y':
516
0
                        switch(s[5]) {
517
0
                        default:
518
0
                            break;
519
0
                        case 'p':
520
0
                            switch(s[6]) {
521
0
                            default:
522
0
                                break;
523
0
                            case 't':
524
0
                                switch(s[7]) {
525
0
                                default:
526
0
                                    break;
527
0
                                case '-':
528
0
                                    switch(s[8]) {
529
0
                                    default:
530
0
                                        break;
531
0
                                    case 'c':
532
0
                                        if (strcmp("heck", s + 9) == 0)
533
0
                                            return PIDX_CIPHER_PARAM_FIPS_ENCRYPT_CHECK;
534
0
                                        break;
535
0
                                    case 'l':
536
0
                                        if (strcmp("evel", s + 9) == 0)
537
0
                                            return PIDX_ENCODER_PARAM_ENCRYPT_LEVEL;
538
0
                                    }
539
0
                                }
540
0
                            }
541
0
                        }
542
0
                    }
543
0
                }
544
0
                break;
545
0
            case 'g':
546
0
                if (strcmp("ine", s + 3) == 0)
547
0
                    return PIDX_ALG_PARAM_ENGINE;
548
0
                break;
549
0
            case 't':
550
0
                switch(s[3]) {
551
0
                default:
552
0
                    break;
553
0
                case 'r':
554
0
                    switch(s[4]) {
555
0
                    default:
556
0
                        break;
557
0
                    case 'o':
558
0
                        switch(s[5]) {
559
0
                        default:
560
0
                            break;
561
0
                        case 'p':
562
0
                            switch(s[6]) {
563
0
                            default:
564
0
                                break;
565
0
                            case 'y':
566
0
                                switch(s[7]) {
567
0
                                default:
568
0
                                    break;
569
0
                                case '_':
570
0
                                    if (strcmp("required", s + 8) == 0)
571
0
                                        return PIDX_DRBG_PARAM_ENTROPY_REQUIRED;
572
0
                                    break;
573
0
                                case '\0':
574
0
                                    return PIDX_KDF_PARAM_HMACDRBG_ENTROPY;
575
0
                                }
576
0
                            }
577
0
                        }
578
0
                    }
579
0
                }
580
0
            }
581
0
            break;
582
0
        case '\0':
583
0
            return PIDX_PKEY_PARAM_RSA_E;
584
0
            break;
585
0
        case 'x':
586
0
            if (strcmp("pect", s + 2) == 0)
587
0
                return PIDX_STORE_PARAM_EXPECT;
588
0
        }
589
0
        break;
590
0
    case 'f':
591
0
        switch(s[1]) {
592
0
        default:
593
0
            break;
594
0
        case 'i':
595
0
            switch(s[2]) {
596
0
            default:
597
0
                break;
598
0
            case 'e':
599
0
                if (strcmp("ld-type", s + 3) == 0)
600
0
                    return PIDX_PKEY_PARAM_EC_FIELD_TYPE;
601
0
                break;
602
0
            case 'n':
603
0
                if (strcmp("gerprint", s + 3) == 0)
604
0
                    return PIDX_STORE_PARAM_FINGERPRINT;
605
0
                break;
606
0
            case 'p':
607
0
                if (strcmp("s-indicator", s + 3) == 0)
608
0
                    return PIDX_ALG_PARAM_FIPS_APPROVED_INDICATOR;
609
0
            }
610
0
        }
611
0
        break;
612
0
    case 'g':
613
0
        switch(s[1]) {
614
0
        default:
615
0
            break;
616
0
        case 'e':
617
0
            switch(s[2]) {
618
0
            default:
619
0
                break;
620
0
            case 'n':
621
0
                switch(s[3]) {
622
0
                default:
623
0
                    break;
624
0
                case 'e':
625
0
                    switch(s[4]) {
626
0
                    default:
627
0
                        break;
628
0
                    case 'r':
629
0
                        switch(s[5]) {
630
0
                        default:
631
0
                            break;
632
0
                        case 'a':
633
0
                            switch(s[6]) {
634
0
                            default:
635
0
                                break;
636
0
                            case 't':
637
0
                                switch(s[7]) {
638
0
                                default:
639
0
                                    break;
640
0
                                case 'e':
641
0
                                    switch(s[8]) {
642
0
                                    default:
643
0
                                        break;
644
0
                                    case '\0':
645
0
                                        return PIDX_RAND_PARAM_GENERATE;
646
0
                                    }
647
0
                                    break;
648
0
                                case 'o':
649
0
                                    if (strcmp("r", s + 8) == 0)
650
0
                                        return PIDX_PKEY_PARAM_EC_GENERATOR;
651
0
                                }
652
0
                            }
653
0
                        }
654
0
                    }
655
0
                }
656
0
            }
657
0
            break;
658
0
        case 'i':
659
0
            if (strcmp("ndex", s + 2) == 0)
660
0
                return PIDX_PKEY_PARAM_FFC_GINDEX;
661
0
            break;
662
0
        case 'r':
663
0
            switch(s[2]) {
664
0
            default:
665
0
                break;
666
0
            case 'o':
667
0
                switch(s[3]) {
668
0
                default:
669
0
                    break;
670
0
                case 'u':
671
0
                    switch(s[4]) {
672
0
                    default:
673
0
                        break;
674
0
                    case 'p':
675
0
                        switch(s[5]) {
676
0
                        default:
677
0
                            break;
678
0
                        case '-':
679
0
                            if (strcmp("check", s + 6) == 0)
680
0
                                return PIDX_PKEY_PARAM_EC_GROUP_CHECK_TYPE;
681
0
                            break;
682
0
                        case '\0':
683
0
                            return PIDX_PKEY_PARAM_GROUP_NAME;
684
0
                        }
685
0
                    }
686
0
                }
687
0
            }
688
0
            break;
689
0
        case '\0':
690
0
            return PIDX_PKEY_PARAM_FFC_G;
691
0
        }
692
0
        break;
693
0
    case 'h':
694
0
        switch(s[1]) {
695
0
        default:
696
0
            break;
697
0
        case 'a':
698
0
            if (strcmp("s-randkey", s + 2) == 0)
699
0
                return PIDX_CIPHER_PARAM_HAS_RAND_KEY;
700
0
            break;
701
0
        case 'i':
702
0
            if (strcmp("ndex", s + 2) == 0)
703
0
                return PIDX_PKEY_PARAM_FFC_H;
704
0
            break;
705
0
        case 'k':
706
0
            switch(s[2]) {
707
0
            default:
708
0
                break;
709
0
            case 'd':
710
0
                switch(s[3]) {
711
0
                default:
712
0
                    break;
713
0
                case 'f':
714
0
                    switch(s[4]) {
715
0
                    default:
716
0
                        break;
717
0
                    case '-':
718
0
                        switch(s[5]) {
719
0
                        default:
720
0
                            break;
721
0
                        case 'd':
722
0
                            if (strcmp("igest-check", s + 6) == 0)
723
0
                                return PIDX_PROV_PARAM_HKDF_DIGEST_CHECK;
724
0
                            break;
725
0
                        case 'k':
726
0
                            if (strcmp("ey-check", s + 6) == 0)
727
0
                                return PIDX_PROV_PARAM_HKDF_KEY_CHECK;
728
0
                        }
729
0
                    }
730
0
                }
731
0
            }
732
0
            break;
733
0
        case 'm':
734
0
            if (strcmp("ac-key-check", s + 2) == 0)
735
0
                return PIDX_PROV_PARAM_HMAC_KEY_CHECK;
736
0
            break;
737
0
        case 's':
738
0
            if (strcmp("_padding", s + 2) == 0)
739
0
                return PIDX_LIBSSL_RECORD_LAYER_PARAM_HS_PADDING;
740
0
        }
741
0
        break;
742
872
    case 'i':
743
872
        switch(s[1]) {
744
0
        default:
745
0
            break;
746
0
        case 'd':
747
0
            switch(s[2]) {
748
0
            default:
749
0
                break;
750
0
            case '\0':
751
0
                return PIDX_KDF_PARAM_PKCS12_ID;
752
0
            }
753
0
            break;
754
0
        case 'k':
755
0
            if (strcmp("me", s + 2) == 0)
756
0
                return PIDX_KEM_PARAM_IKME;
757
0
            break;
758
0
        case 'm':
759
0
            if (strcmp("plicit-rejection", s + 2) == 0)
760
0
                return PIDX_PKEY_PARAM_IMPLICIT_REJECTION;
761
0
            break;
762
0
        case 'n':
763
0
            switch(s[2]) {
764
0
            default:
765
0
                break;
766
0
            case 'c':
767
0
                if (strcmp("lude-public", s + 3) == 0)
768
0
                    return PIDX_PKEY_PARAM_EC_INCLUDE_PUBLIC;
769
0
                break;
770
0
            case 'f':
771
0
                if (strcmp("o", s + 3) == 0)
772
0
                    return PIDX_PASSPHRASE_PARAM_INFO;
773
0
                break;
774
0
            case 'p':
775
0
                if (strcmp("ut-type", s + 3) == 0)
776
0
                    return PIDX_STORE_PARAM_INPUT_TYPE;
777
0
                break;
778
0
            case 's':
779
0
                if (strcmp("tance", s + 3) == 0)
780
0
                    return PIDX_SIGNATURE_PARAM_INSTANCE;
781
0
            }
782
0
            break;
783
0
        case 't':
784
0
            switch(s[2]) {
785
0
            default:
786
0
                break;
787
0
            case 'e':
788
0
                switch(s[3]) {
789
0
                default:
790
0
                    break;
791
0
                case 'r':
792
0
                    switch(s[4]) {
793
0
                    default:
794
0
                        break;
795
0
                    case 'a':
796
0
                        if (strcmp("tion", s + 5) == 0)
797
0
                            return PIDX_GEN_PARAM_ITERATION;
798
0
                        break;
799
0
                    case '\0':
800
0
                        return PIDX_KDF_PARAM_ITER;
801
0
                    }
802
0
                }
803
0
            }
804
0
            break;
805
872
        case 'v':
806
872
            switch(s[2]) {
807
0
            default:
808
0
                break;
809
0
            case '-':
810
0
                if (strcmp("generated", s + 3) == 0)
811
0
                    return PIDX_CIPHER_PARAM_AEAD_IV_GENERATED;
812
0
                break;
813
872
            case 'l':
814
872
                if (strcmp("en", s + 3) == 0)
815
872
                    return PIDX_CIPHER_PARAM_IVLEN;
816
0
                break;
817
0
            case '\0':
818
0
                return PIDX_MAC_PARAM_IV;
819
872
            }
820
872
        }
821
0
        break;
822
0
    case 'j':
823
0
        switch(s[1]) {
824
0
        default:
825
0
            break;
826
0
        case '\0':
827
0
            return PIDX_PKEY_PARAM_FFC_COFACTOR;
828
0
        }
829
0
        break;
830
638
    case 'k':
831
638
        switch(s[1]) {
832
0
        default:
833
0
            break;
834
0
        case '1':
835
0
            switch(s[2]) {
836
0
            default:
837
0
                break;
838
0
            case '\0':
839
0
                return PIDX_PKEY_PARAM_EC_CHAR2_PP_K1;
840
0
            }
841
0
            break;
842
0
        case '2':
843
0
            switch(s[2]) {
844
0
            default:
845
0
                break;
846
0
            case '\0':
847
0
                return PIDX_PKEY_PARAM_EC_CHAR2_PP_K2;
848
0
            }
849
0
            break;
850
0
        case '3':
851
0
            switch(s[2]) {
852
0
            default:
853
0
                break;
854
0
            case '\0':
855
0
                return PIDX_PKEY_PARAM_EC_CHAR2_PP_K3;
856
0
            }
857
0
            break;
858
0
        case 'a':
859
0
            if (strcmp("t", s + 2) == 0)
860
0
                return PIDX_SIGNATURE_PARAM_KAT;
861
0
            break;
862
0
        case 'b':
863
0
            if (strcmp("kdf-key-check", s + 2) == 0)
864
0
                return PIDX_PROV_PARAM_KBKDF_KEY_CHECK;
865
0
            break;
866
0
        case 'd':
867
0
            switch(s[2]) {
868
0
            default:
869
0
                break;
870
0
            case 'f':
871
0
                switch(s[3]) {
872
0
                default:
873
0
                    break;
874
0
                case '-':
875
0
                    switch(s[4]) {
876
0
                    default:
877
0
                        break;
878
0
                    case 'd':
879
0
                        switch(s[5]) {
880
0
                        default:
881
0
                            break;
882
0
                        case 'i':
883
0
                            switch(s[6]) {
884
0
                            default:
885
0
                                break;
886
0
                            case 'g':
887
0
                                switch(s[7]) {
888
0
                                default:
889
0
                                    break;
890
0
                                case 'e':
891
0
                                    switch(s[8]) {
892
0
                                    default:
893
0
                                        break;
894
0
                                    case 's':
895
0
                                        switch(s[9]) {
896
0
                                        default:
897
0
                                            break;
898
0
                                        case 't':
899
0
                                            switch(s[10]) {
900
0
                                            default:
901
0
                                                break;
902
0
                                            case '-':
903
0
                                                if (strcmp("props", s + 11) == 0)
904
0
                                                    return PIDX_EXCHANGE_PARAM_KDF_DIGEST_PROPS;
905
0
                                                break;
906
0
                                            case '\0':
907
0
                                                return PIDX_EXCHANGE_PARAM_KDF_DIGEST;
908
0
                                            }
909
0
                                        }
910
0
                                    }
911
0
                                }
912
0
                            }
913
0
                        }
914
0
                        break;
915
0
                    case 'o':
916
0
                        if (strcmp("utlen", s + 5) == 0)
917
0
                            return PIDX_EXCHANGE_PARAM_KDF_OUTLEN;
918
0
                        break;
919
0
                    case 't':
920
0
                        if (strcmp("ype", s + 5) == 0)
921
0
                            return PIDX_EXCHANGE_PARAM_KDF_TYPE;
922
0
                        break;
923
0
                    case 'u':
924
0
                        if (strcmp("km", s + 5) == 0)
925
0
                            return PIDX_EXCHANGE_PARAM_KDF_UKM;
926
0
                    }
927
0
                }
928
0
            }
929
0
            break;
930
638
        case 'e':
931
638
            switch(s[2]) {
932
0
            default:
933
0
                break;
934
638
            case 'y':
935
638
                switch(s[3]) {
936
0
                default:
937
0
                    break;
938
0
                case '-':
939
0
                    if (strcmp("check", s + 4) == 0)
940
0
                        return PIDX_PKEY_PARAM_FIPS_KEY_CHECK;
941
0
                    break;
942
0
                case 'b':
943
0
                    if (strcmp("its", s + 4) == 0)
944
0
                        return PIDX_CIPHER_PARAM_RC2_KEYBITS;
945
0
                    break;
946
638
                case 'l':
947
638
                    if (strcmp("en", s + 4) == 0)
948
638
                        return PIDX_CIPHER_PARAM_KEYLEN;
949
0
                    break;
950
0
                case '\0':
951
0
                    return PIDX_MAC_PARAM_KEY;
952
638
                }
953
638
            }
954
0
            break;
955
0
        case 'm':
956
0
            if (strcmp("ac-key-check", s + 2) == 0)
957
0
                return PIDX_PROV_PARAM_KMAC_KEY_CHECK;
958
638
        }
959
0
        break;
960
0
    case 'l':
961
0
        switch(s[1]) {
962
0
        default:
963
0
            break;
964
0
        case 'a':
965
0
            switch(s[2]) {
966
0
            default:
967
0
                break;
968
0
            case 'b':
969
0
                if (strcmp("el", s + 3) == 0)
970
0
                    return PIDX_KDF_PARAM_LABEL;
971
0
                break;
972
0
            case 'n':
973
0
                if (strcmp("es", s + 3) == 0)
974
0
                    return PIDX_KDF_PARAM_ARGON2_LANES;
975
0
            }
976
0
        }
977
0
        break;
978
0
    case 'm':
979
0
        switch(s[1]) {
980
0
        default:
981
0
            break;
982
0
        case 'a':
983
0
            switch(s[2]) {
984
0
            default:
985
0
                break;
986
0
            case 'c':
987
0
                switch(s[3]) {
988
0
                default:
989
0
                    break;
990
0
                case 'k':
991
0
                    if (strcmp("ey", s + 4) == 0)
992
0
                        return PIDX_CIPHER_PARAM_AEAD_MAC_KEY;
993
0
                    break;
994
0
                case 'l':
995
0
                    if (strcmp("en", s + 4) == 0)
996
0
                        return PIDX_KDF_PARAM_MAC_SIZE;
997
0
                    break;
998
0
                case '\0':
999
0
                    return PIDX_ALG_PARAM_MAC;
1000
0
                }
1001
0
                break;
1002
0
            case 'n':
1003
0
                if (strcmp("datory-digest", s + 3) == 0)
1004
0
                    return PIDX_PKEY_PARAM_MANDATORY_DIGEST;
1005
0
                break;
1006
0
            case 'x':
1007
0
                switch(s[3]) {
1008
0
                default:
1009
0
                    break;
1010
0
                case '-':
1011
0
                    if (strcmp("size", s + 4) == 0)
1012
0
                        return PIDX_PKEY_PARAM_MAX_SIZE;
1013
0
                    break;
1014
0
                case '_':
1015
0
                    switch(s[4]) {
1016
0
                    default:
1017
0
                        break;
1018
0
                    case 'a':
1019
0
                        if (strcmp("dinlen", s + 5) == 0)
1020
0
                            return PIDX_DRBG_PARAM_MAX_ADINLEN;
1021
0
                        break;
1022
0
                    case 'e':
1023
0
                        switch(s[5]) {
1024
0
                        default:
1025
0
                            break;
1026
0
                        case 'a':
1027
0
                            if (strcmp("rly_data", s + 6) == 0)
1028
0
                                return PIDX_LIBSSL_RECORD_LAYER_PARAM_MAX_EARLY_DATA;
1029
0
                            break;
1030
0
                        case 'n':
1031
0
                            if (strcmp("tropylen", s + 6) == 0)
1032
0
                                return PIDX_DRBG_PARAM_MAX_ENTROPYLEN;
1033
0
                        }
1034
0
                        break;
1035
0
                    case 'f':
1036
0
                        if (strcmp("rag_len", s + 5) == 0)
1037
0
                            return PIDX_LIBSSL_RECORD_LAYER_PARAM_MAX_FRAG_LEN;
1038
0
                        break;
1039
0
                    case 'n':
1040
0
                        if (strcmp("oncelen", s + 5) == 0)
1041
0
                            return PIDX_DRBG_PARAM_MAX_NONCELEN;
1042
0
                        break;
1043
0
                    case 'p':
1044
0
                        if (strcmp("erslen", s + 5) == 0)
1045
0
                            return PIDX_DRBG_PARAM_MAX_PERSLEN;
1046
0
                        break;
1047
0
                    case 'r':
1048
0
                        if (strcmp("equest", s + 5) == 0)
1049
0
                            return PIDX_RAND_PARAM_MAX_REQUEST;
1050
0
                    }
1051
0
                    break;
1052
0
                case 'i':
1053
0
                    if (strcmp("um_length", s + 4) == 0)
1054
0
                        return PIDX_DRBG_PARAM_MAX_LENGTH;
1055
0
                    break;
1056
0
                case 'm':
1057
0
                    if (strcmp("em_bytes", s + 4) == 0)
1058
0
                        return PIDX_KDF_PARAM_SCRYPT_MAXMEM;
1059
0
                }
1060
0
            }
1061
0
            break;
1062
0
        case 'e':
1063
0
            if (strcmp("mcost", s + 2) == 0)
1064
0
                return PIDX_KDF_PARAM_ARGON2_MEMCOST;
1065
0
            break;
1066
0
        case 'g':
1067
0
            switch(s[2]) {
1068
0
            default:
1069
0
                break;
1070
0
            case 'f':
1071
0
                switch(s[3]) {
1072
0
                default:
1073
0
                    break;
1074
0
                case '1':
1075
0
                    switch(s[4]) {
1076
0
                    default:
1077
0
                        break;
1078
0
                    case '-':
1079
0
                        switch(s[5]) {
1080
0
                        default:
1081
0
                            break;
1082
0
                        case 'd':
1083
0
                            if (strcmp("igest", s + 6) == 0)
1084
0
                                return PIDX_PKEY_PARAM_MGF1_DIGEST;
1085
0
                            break;
1086
0
                        case 'p':
1087
0
                            if (strcmp("roperties", s + 6) == 0)
1088
0
                                return PIDX_PKEY_PARAM_MGF1_PROPERTIES;
1089
0
                        }
1090
0
                    }
1091
0
                    break;
1092
0
                case '\0':
1093
0
                    return PIDX_PKEY_PARAM_MASKGENFUNC;
1094
0
                }
1095
0
            }
1096
0
            break;
1097
0
        case 'i':
1098
0
            switch(s[2]) {
1099
0
            default:
1100
0
                break;
1101
0
            case 'c':
1102
0
                if (strcmp("alg", s + 3) == 0)
1103
0
                    return PIDX_DIGEST_PARAM_MICALG;
1104
0
                break;
1105
0
            case 'n':
1106
0
                switch(s[3]) {
1107
0
                default:
1108
0
                    break;
1109
0
                case '_':
1110
0
                    switch(s[4]) {
1111
0
                    default:
1112
0
                        break;
1113
0
                    case 'e':
1114
0
                        if (strcmp("ntropylen", s + 5) == 0)
1115
0
                            return PIDX_DRBG_PARAM_MIN_ENTROPYLEN;
1116
0
                        break;
1117
0
                    case 'n':
1118
0
                        if (strcmp("oncelen", s + 5) == 0)
1119
0
                            return PIDX_DRBG_PARAM_MIN_NONCELEN;
1120
0
                    }
1121
0
                    break;
1122
0
                case 'i':
1123
0
                    if (strcmp("um_length", s + 4) == 0)
1124
0
                        return PIDX_DRBG_PARAM_MIN_LENGTH;
1125
0
                }
1126
0
            }
1127
0
            break;
1128
0
        case 'o':
1129
0
            switch(s[2]) {
1130
0
            default:
1131
0
                break;
1132
0
            case 'd':
1133
0
                switch(s[3]) {
1134
0
                default:
1135
0
                    break;
1136
0
                case 'e':
1137
0
                    switch(s[4]) {
1138
0
                    default:
1139
0
                        break;
1140
0
                    case '\0':
1141
0
                        return PIDX_LIBSSL_RECORD_LAYER_PARAM_MODE;
1142
0
                    }
1143
0
                    break;
1144
0
                case 'u':
1145
0
                    if (strcmp("le-filename", s + 4) == 0)
1146
0
                        return PIDX_PROV_PARAM_CORE_MODULE_FILENAME;
1147
0
                }
1148
0
            }
1149
0
            break;
1150
0
        case '\0':
1151
0
            return PIDX_PKEY_PARAM_EC_CHAR2_M;
1152
0
        }
1153
0
        break;
1154
0
    case 'n':
1155
0
        switch(s[1]) {
1156
0
        default:
1157
0
            break;
1158
0
        case 'a':
1159
0
            if (strcmp("me", s + 2) == 0)
1160
0
                return PIDX_STORE_PARAM_ISSUER;
1161
0
            break;
1162
0
        case 'o':
1163
0
            switch(s[2]) {
1164
0
            default:
1165
0
                break;
1166
0
            case '-':
1167
0
                if (strcmp("short-mac", s + 3) == 0)
1168
0
                    return PIDX_PROV_PARAM_NO_SHORT_MAC;
1169
0
                break;
1170
0
            case 'n':
1171
0
                switch(s[3]) {
1172
0
                default:
1173
0
                    break;
1174
0
                case 'c':
1175
0
                    switch(s[4]) {
1176
0
                    default:
1177
0
                        break;
1178
0
                    case 'e':
1179
0
                        switch(s[5]) {
1180
0
                        default:
1181
0
                            break;
1182
0
                        case '-':
1183
0
                            if (strcmp("type", s + 6) == 0)
1184
0
                                return PIDX_SIGNATURE_PARAM_NONCE_TYPE;
1185
0
                            break;
1186
0
                        case '\0':
1187
0
                            return PIDX_KDF_PARAM_HMACDRBG_NONCE;
1188
0
                        }
1189
0
                    }
1190
0
                }
1191
0
            }
1192
0
            break;
1193
0
        case 'u':
1194
0
            if (strcmp("m", s + 2) == 0)
1195
0
                return PIDX_CIPHER_PARAM_NUM;
1196
0
            break;
1197
0
        case '\0':
1198
0
            return PIDX_PKEY_PARAM_RSA_N;
1199
0
        }
1200
0
        break;
1201
0
    case 'o':
1202
0
        switch(s[1]) {
1203
0
        default:
1204
0
            break;
1205
0
        case 'a':
1206
0
            if (strcmp("ep-label", s + 2) == 0)
1207
0
                return PIDX_ASYM_CIPHER_PARAM_OAEP_LABEL;
1208
0
            break;
1209
0
        case 'p':
1210
0
            switch(s[2]) {
1211
0
            default:
1212
0
                break;
1213
0
            case 'e':
1214
0
                switch(s[3]) {
1215
0
                default:
1216
0
                    break;
1217
0
                case 'n':
1218
0
                    if (strcmp("ssl-version", s + 4) == 0)
1219
0
                        return PIDX_PROV_PARAM_CORE_VERSION;
1220
0
                    break;
1221
0
                case 'r':
1222
0
                    if (strcmp("ation", s + 4) == 0)
1223
0
                        return PIDX_KEM_PARAM_OPERATION;
1224
0
                }
1225
0
                break;
1226
0
            case 't':
1227
0
                if (strcmp("ions", s + 3) == 0)
1228
0
                    return PIDX_LIBSSL_RECORD_LAYER_PARAM_OPTIONS;
1229
0
            }
1230
0
            break;
1231
0
        case 'r':
1232
0
            if (strcmp("der", s + 2) == 0)
1233
0
                return PIDX_PKEY_PARAM_EC_ORDER;
1234
0
        }
1235
0
        break;
1236
0
    case 'p':
1237
0
        switch(s[1]) {
1238
0
        default:
1239
0
            break;
1240
0
        case '1':
1241
0
            switch(s[2]) {
1242
0
            default:
1243
0
                break;
1244
0
            case '\0':
1245
0
                return PIDX_PKEY_PARAM_RSA_TEST_P1;
1246
0
            }
1247
0
            break;
1248
0
        case '2':
1249
0
            switch(s[2]) {
1250
0
            default:
1251
0
                break;
1252
0
            case '\0':
1253
0
                return PIDX_PKEY_PARAM_RSA_TEST_P2;
1254
0
            }
1255
0
            break;
1256
0
        case 'a':
1257
0
            switch(s[2]) {
1258
0
            default:
1259
0
                break;
1260
0
            case 'd':
1261
0
                switch(s[3]) {
1262
0
                default:
1263
0
                    break;
1264
0
                case '-':
1265
0
                    switch(s[4]) {
1266
0
                    default:
1267
0
                        break;
1268
0
                    case 'm':
1269
0
                        if (strcmp("ode", s + 5) == 0)
1270
0
                            return PIDX_PKEY_PARAM_PAD_MODE;
1271
0
                        break;
1272
0
                    case 't':
1273
0
                        if (strcmp("ype", s + 5) == 0)
1274
0
                            return PIDX_DIGEST_PARAM_PAD_TYPE;
1275
0
                    }
1276
0
                    break;
1277
0
                case 'd':
1278
0
                    if (strcmp("ing", s + 4) == 0)
1279
0
                        return PIDX_CIPHER_PARAM_PADDING;
1280
0
                    break;
1281
0
                case '\0':
1282
0
                    return PIDX_EXCHANGE_PARAM_PAD;
1283
0
                }
1284
0
                break;
1285
0
            case 'r':
1286
0
                switch(s[3]) {
1287
0
                default:
1288
0
                    break;
1289
0
                case 't':
1290
0
                    switch(s[4]) {
1291
0
                    default:
1292
0
                        break;
1293
0
                    case 'y':
1294
0
                        switch(s[5]) {
1295
0
                        default:
1296
0
                            break;
1297
0
                        case 'u':
1298
0
                            if (strcmp("-info", s + 6) == 0)
1299
0
                                return PIDX_KDF_PARAM_X942_PARTYUINFO;
1300
0
                            break;
1301
0
                        case 'v':
1302
0
                            if (strcmp("-info", s + 6) == 0)
1303
0
                                return PIDX_KDF_PARAM_X942_PARTYVINFO;
1304
0
                        }
1305
0
                    }
1306
0
                }
1307
0
                break;
1308
0
            case 's':
1309
0
                if (strcmp("s", s + 3) == 0)
1310
0
                    return PIDX_KDF_PARAM_PASSWORD;
1311
0
            }
1312
0
            break;
1313
0
        case 'b':
1314
0
            switch(s[2]) {
1315
0
            default:
1316
0
                break;
1317
0
            case 'i':
1318
0
                if (strcmp("ts", s + 3) == 0)
1319
0
                    return PIDX_PKEY_PARAM_FFC_PBITS;
1320
0
                break;
1321
0
            case 'k':
1322
0
                if (strcmp("df2-lower-bound-check", s + 3) == 0)
1323
0
                    return PIDX_PROV_PARAM_PBKDF2_LOWER_BOUND_CHECK;
1324
0
            }
1325
0
            break;
1326
0
        case 'c':
1327
0
            if (strcmp("ounter", s + 2) == 0)
1328
0
                return PIDX_PKEY_PARAM_FFC_PCOUNTER;
1329
0
            break;
1330
0
        case 'k':
1331
0
            if (strcmp("cs5", s + 2) == 0)
1332
0
                return PIDX_KDF_PARAM_PKCS5;
1333
0
            break;
1334
0
        case 'o':
1335
0
            switch(s[2]) {
1336
0
            default:
1337
0
                break;
1338
0
            case 'i':
1339
0
                if (strcmp("nt-format", s + 3) == 0)
1340
0
                    return PIDX_PKEY_PARAM_EC_POINT_CONVERSION_FORMAT;
1341
0
                break;
1342
0
            case 't':
1343
0
                if (strcmp("ential", s + 3) == 0)
1344
0
                    return PIDX_GEN_PARAM_POTENTIAL;
1345
0
            }
1346
0
            break;
1347
0
        case 'r':
1348
0
            switch(s[2]) {
1349
0
            default:
1350
0
                break;
1351
0
            case 'e':
1352
0
                switch(s[3]) {
1353
0
                default:
1354
0
                    break;
1355
0
                case 'd':
1356
0
                    if (strcmp("iction_resistance", s + 4) == 0)
1357
0
                        return PIDX_DRBG_PARAM_PREDICTION_RESISTANCE;
1358
0
                    break;
1359
0
                case 'f':
1360
0
                    if (strcmp("ix", s + 4) == 0)
1361
0
                        return PIDX_KDF_PARAM_PREFIX;
1362
0
                }
1363
0
                break;
1364
0
            case 'i':
1365
0
                switch(s[3]) {
1366
0
                default:
1367
0
                    break;
1368
0
                case 'm':
1369
0
                    if (strcmp("es", s + 4) == 0)
1370
0
                        return PIDX_PKEY_PARAM_RSA_PRIMES;
1371
0
                    break;
1372
0
                case 'v':
1373
0
                    switch(s[4]) {
1374
0
                    default:
1375
0
                        break;
1376
0
                    case '_':
1377
0
                        if (strcmp("len", s + 5) == 0)
1378
0
                            return PIDX_PKEY_PARAM_DH_PRIV_LEN;
1379
0
                        break;
1380
0
                    case '\0':
1381
0
                        return PIDX_PKEY_PARAM_PRIV_KEY;
1382
0
                    }
1383
0
                }
1384
0
                break;
1385
0
            case 'o':
1386
0
                switch(s[3]) {
1387
0
                default:
1388
0
                    break;
1389
0
                case 'p':
1390
0
                    if (strcmp("erties", s + 4) == 0)
1391
0
                        return PIDX_STORE_PARAM_PROPERTIES;
1392
0
                    break;
1393
0
                case 'v':
1394
0
                    if (strcmp("ider-name", s + 4) == 0)
1395
0
                        return PIDX_PROV_PARAM_CORE_PROV_NAME;
1396
0
                }
1397
0
            }
1398
0
            break;
1399
0
        case 'u':
1400
0
            if (strcmp("b", s + 2) == 0)
1401
0
                return PIDX_PKEY_PARAM_PUB_KEY;
1402
0
            break;
1403
0
        case '\0':
1404
0
            return PIDX_PKEY_PARAM_FFC_P;
1405
0
        }
1406
0
        break;
1407
0
    case 'q':
1408
0
        switch(s[1]) {
1409
0
        default:
1410
0
            break;
1411
0
        case '1':
1412
0
            switch(s[2]) {
1413
0
            default:
1414
0
                break;
1415
0
            case '\0':
1416
0
                return PIDX_PKEY_PARAM_RSA_TEST_Q1;
1417
0
            }
1418
0
            break;
1419
0
        case '2':
1420
0
            switch(s[2]) {
1421
0
            default:
1422
0
                break;
1423
0
            case '\0':
1424
0
                return PIDX_PKEY_PARAM_RSA_TEST_Q2;
1425
0
            }
1426
0
            break;
1427
0
        case 'b':
1428
0
            if (strcmp("its", s + 2) == 0)
1429
0
                return PIDX_PKEY_PARAM_FFC_QBITS;
1430
0
            break;
1431
0
        case '\0':
1432
0
            return PIDX_PKEY_PARAM_FFC_Q;
1433
0
            break;
1434
0
        case 'x':
1435
0
            switch(s[2]) {
1436
0
            default:
1437
0
                break;
1438
0
            case '\0':
1439
0
                return PIDX_PKEY_PARAM_EC_PUB_X;
1440
0
            }
1441
0
            break;
1442
0
        case 'y':
1443
0
            switch(s[2]) {
1444
0
            default:
1445
0
                break;
1446
0
            case '\0':
1447
0
                return PIDX_PKEY_PARAM_EC_PUB_Y;
1448
0
            }
1449
0
        }
1450
0
        break;
1451
0
    case 'r':
1452
0
        switch(s[1]) {
1453
0
        default:
1454
0
            break;
1455
0
        case 'a':
1456
0
            switch(s[2]) {
1457
0
            default:
1458
0
                break;
1459
0
            case 'n':
1460
0
                switch(s[3]) {
1461
0
                default:
1462
0
                    break;
1463
0
                case 'd':
1464
0
                    switch(s[4]) {
1465
0
                    default:
1466
0
                        break;
1467
0
                    case 'k':
1468
0
                        if (strcmp("ey", s + 5) == 0)
1469
0
                            return PIDX_CIPHER_PARAM_RANDOM_KEY;
1470
0
                        break;
1471
0
                    case 'o':
1472
0
                        if (strcmp("m_data", s + 5) == 0)
1473
0
                            return PIDX_DRBG_PARAM_RANDOM_DATA;
1474
0
                    }
1475
0
                }
1476
0
            }
1477
0
            break;
1478
0
        case 'e':
1479
0
            switch(s[2]) {
1480
0
            default:
1481
0
                break;
1482
0
            case 'a':
1483
0
                switch(s[3]) {
1484
0
                default:
1485
0
                    break;
1486
0
                case 'd':
1487
0
                    switch(s[4]) {
1488
0
                    default:
1489
0
                        break;
1490
0
                    case '_':
1491
0
                        switch(s[5]) {
1492
0
                        default:
1493
0
                            break;
1494
0
                        case 'a':
1495
0
                            if (strcmp("head", s + 6) == 0)
1496
0
                                return PIDX_LIBSSL_RECORD_LAYER_PARAM_READ_AHEAD;
1497
0
                            break;
1498
0
                        case 'b':
1499
0
                            if (strcmp("uffer_len", s + 6) == 0)
1500
0
                                return PIDX_LIBSSL_RECORD_LAYER_READ_BUFFER_LEN;
1501
0
                        }
1502
0
                    }
1503
0
                }
1504
0
                break;
1505
0
            case 'f':
1506
0
                if (strcmp("erence", s + 3) == 0)
1507
0
                    return PIDX_OBJECT_PARAM_REFERENCE;
1508
0
                break;
1509
0
            case 's':
1510
0
                switch(s[3]) {
1511
0
                default:
1512
0
                    break;
1513
0
                case 'e':
1514
0
                    switch(s[4]) {
1515
0
                    default:
1516
0
                        break;
1517
0
                    case 'e':
1518
0
                        switch(s[5]) {
1519
0
                        default:
1520
0
                            break;
1521
0
                        case 'd':
1522
0
                            switch(s[6]) {
1523
0
                            default:
1524
0
                                break;
1525
0
                            case '_':
1526
0
                                switch(s[7]) {
1527
0
                                default:
1528
0
                                    break;
1529
0
                                case 'c':
1530
0
                                    if (strcmp("ounter", s + 8) == 0)
1531
0
                                        return PIDX_DRBG_PARAM_RESEED_COUNTER;
1532
0
                                    break;
1533
0
                                case 'r':
1534
0
                                    if (strcmp("equests", s + 8) == 0)
1535
0
                                        return PIDX_DRBG_PARAM_RESEED_REQUESTS;
1536
0
                                    break;
1537
0
                                case 't':
1538
0
                                    switch(s[8]) {
1539
0
                                    default:
1540
0
                                        break;
1541
0
                                    case 'i':
1542
0
                                        switch(s[9]) {
1543
0
                                        default:
1544
0
                                            break;
1545
0
                                        case 'm':
1546
0
                                            switch(s[10]) {
1547
0
                                            default:
1548
0
                                                break;
1549
0
                                            case 'e':
1550
0
                                                switch(s[11]) {
1551
0
                                                default:
1552
0
                                                    break;
1553
0
                                                case '_':
1554
0
                                                    if (strcmp("interval", s + 12) == 0)
1555
0
                                                        return PIDX_DRBG_PARAM_RESEED_TIME_INTERVAL;
1556
0
                                                    break;
1557
0
                                                case '\0':
1558
0
                                                    return PIDX_DRBG_PARAM_RESEED_TIME;
1559
0
                                                }
1560
0
                                            }
1561
0
                                        }
1562
0
                                    }
1563
0
                                }
1564
0
                            }
1565
0
                        }
1566
0
                    }
1567
0
                }
1568
0
            }
1569
0
            break;
1570
0
        case 'o':
1571
0
            if (strcmp("unds", s + 2) == 0)
1572
0
                return PIDX_CIPHER_PARAM_ROUNDS;
1573
0
            break;
1574
0
        case 's':
1575
0
            switch(s[2]) {
1576
0
            default:
1577
0
                break;
1578
0
            case 'a':
1579
0
                switch(s[3]) {
1580
0
                default:
1581
0
                    break;
1582
0
                case '-':
1583
0
                    switch(s[4]) {
1584
0
                    default:
1585
0
                        break;
1586
0
                    case 'c':
1587
0
                        switch(s[5]) {
1588
0
                        default:
1589
0
                            break;
1590
0
                        case 'o':
1591
0
                            switch(s[6]) {
1592
0
                            default:
1593
0
                                break;
1594
0
                            case 'e':
1595
0
                                switch(s[7]) {
1596
0
                                default:
1597
0
                                    break;
1598
0
                                case 'f':
1599
0
                                    switch(s[8]) {
1600
0
                                    default:
1601
0
                                        break;
1602
0
                                    case 'f':
1603
0
                                        switch(s[9]) {
1604
0
                                        default:
1605
0
                                            break;
1606
0
                                        case 'i':
1607
0
                                            switch(s[10]) {
1608
0
                                            default:
1609
0
                                                break;
1610
0
                                            case 'c':
1611
0
                                                switch(s[11]) {
1612
0
                                                default:
1613
0
                                                    break;
1614
0
                                                case 'i':
1615
0
                                                    switch(s[12]) {
1616
0
                                                    default:
1617
0
                                                        break;
1618
0
                                                    case 'e':
1619
0
                                                        switch(s[13]) {
1620
0
                                                        default:
1621
0
                                                            break;
1622
0
                                                        case 'n':
1623
0
                                                            switch(s[14]) {
1624
0
                                                            default:
1625
0
                                                                break;
1626
0
                                                            case 't':
1627
0
                                                                switch(s[15]) {
1628
0
                                                                default:
1629
0
                                                                    break;
1630
0
                                                                case '1':
1631
0
                                                                    switch(s[16]) {
1632
0
                                                                    default:
1633
0
                                                                        break;
1634
0
                                                                    case '\0':
1635
0
                                                                        return PIDX_PKEY_PARAM_RSA_COEFFICIENT1;
1636
0
                                                                    }
1637
0
                                                                    break;
1638
0
                                                                case '2':
1639
0
                                                                    switch(s[16]) {
1640
0
                                                                    default:
1641
0
                                                                        break;
1642
0
                                                                    case '\0':
1643
0
                                                                        return PIDX_PKEY_PARAM_RSA_COEFFICIENT2;
1644
0
                                                                    }
1645
0
                                                                    break;
1646
0
                                                                case '3':
1647
0
                                                                    switch(s[16]) {
1648
0
                                                                    default:
1649
0
                                                                        break;
1650
0
                                                                    case '\0':
1651
0
                                                                        return PIDX_PKEY_PARAM_RSA_COEFFICIENT3;
1652
0
                                                                    }
1653
0
                                                                    break;
1654
0
                                                                case '4':
1655
0
                                                                    switch(s[16]) {
1656
0
                                                                    default:
1657
0
                                                                        break;
1658
0
                                                                    case '\0':
1659
0
                                                                        return PIDX_PKEY_PARAM_RSA_COEFFICIENT4;
1660
0
                                                                    }
1661
0
                                                                    break;
1662
0
                                                                case '5':
1663
0
                                                                    switch(s[16]) {
1664
0
                                                                    default:
1665
0
                                                                        break;
1666
0
                                                                    case '\0':
1667
0
                                                                        return PIDX_PKEY_PARAM_RSA_COEFFICIENT5;
1668
0
                                                                    }
1669
0
                                                                    break;
1670
0
                                                                case '6':
1671
0
                                                                    switch(s[16]) {
1672
0
                                                                    default:
1673
0
                                                                        break;
1674
0
                                                                    case '\0':
1675
0
                                                                        return PIDX_PKEY_PARAM_RSA_COEFFICIENT6;
1676
0
                                                                    }
1677
0
                                                                    break;
1678
0
                                                                case '7':
1679
0
                                                                    switch(s[16]) {
1680
0
                                                                    default:
1681
0
                                                                        break;
1682
0
                                                                    case '\0':
1683
0
                                                                        return PIDX_PKEY_PARAM_RSA_COEFFICIENT7;
1684
0
                                                                    }
1685
0
                                                                    break;
1686
0
                                                                case '8':
1687
0
                                                                    switch(s[16]) {
1688
0
                                                                    default:
1689
0
                                                                        break;
1690
0
                                                                    case '\0':
1691
0
                                                                        return PIDX_PKEY_PARAM_RSA_COEFFICIENT8;
1692
0
                                                                    }
1693
0
                                                                    break;
1694
0
                                                                case '9':
1695
0
                                                                    switch(s[16]) {
1696
0
                                                                    default:
1697
0
                                                                        break;
1698
0
                                                                    case '\0':
1699
0
                                                                        return PIDX_PKEY_PARAM_RSA_COEFFICIENT9;
1700
0
                                                                    }
1701
0
                                                                    break;
1702
0
                                                                case '\0':
1703
0
                                                                    return PIDX_PKEY_PARAM_RSA_COEFFICIENT;
1704
0
                                                                }
1705
0
                                                            }
1706
0
                                                        }
1707
0
                                                    }
1708
0
                                                }
1709
0
                                            }
1710
0
                                        }
1711
0
                                    }
1712
0
                                }
1713
0
                            }
1714
0
                        }
1715
0
                        break;
1716
0
                    case 'd':
1717
0
                        if (strcmp("erive-from-pq", s + 5) == 0)
1718
0
                            return PIDX_PKEY_PARAM_RSA_DERIVE_FROM_PQ;
1719
0
                        break;
1720
0
                    case 'e':
1721
0
                        switch(s[5]) {
1722
0
                        default:
1723
0
                            break;
1724
0
                        case 'x':
1725
0
                            switch(s[6]) {
1726
0
                            default:
1727
0
                                break;
1728
0
                            case 'p':
1729
0
                                switch(s[7]) {
1730
0
                                default:
1731
0
                                    break;
1732
0
                                case 'o':
1733
0
                                    switch(s[8]) {
1734
0
                                    default:
1735
0
                                        break;
1736
0
                                    case 'n':
1737
0
                                        switch(s[9]) {
1738
0
                                        default:
1739
0
                                            break;
1740
0
                                        case 'e':
1741
0
                                            switch(s[10]) {
1742
0
                                            default:
1743
0
                                                break;
1744
0
                                            case 'n':
1745
0
                                                switch(s[11]) {
1746
0
                                                default:
1747
0
                                                    break;
1748
0
                                                case 't':
1749
0
                                                    switch(s[12]) {
1750
0
                                                    default:
1751
0
                                                        break;
1752
0
                                                    case '1':
1753
0
                                                        switch(s[13]) {
1754
0
                                                        default:
1755
0
                                                            break;
1756
0
                                                        case '0':
1757
0
                                                            switch(s[14]) {
1758
0
                                                            default:
1759
0
                                                                break;
1760
0
                                                            case '\0':
1761
0
                                                                return PIDX_PKEY_PARAM_RSA_EXPONENT10;
1762
0
                                                            }
1763
0
                                                            break;
1764
0
                                                        case '\0':
1765
0
                                                            return PIDX_PKEY_PARAM_RSA_EXPONENT1;
1766
0
                                                        }
1767
0
                                                        break;
1768
0
                                                    case '2':
1769
0
                                                        switch(s[13]) {
1770
0
                                                        default:
1771
0
                                                            break;
1772
0
                                                        case '\0':
1773
0
                                                            return PIDX_PKEY_PARAM_RSA_EXPONENT2;
1774
0
                                                        }
1775
0
                                                        break;
1776
0
                                                    case '3':
1777
0
                                                        switch(s[13]) {
1778
0
                                                        default:
1779
0
                                                            break;
1780
0
                                                        case '\0':
1781
0
                                                            return PIDX_PKEY_PARAM_RSA_EXPONENT3;
1782
0
                                                        }
1783
0
                                                        break;
1784
0
                                                    case '4':
1785
0
                                                        switch(s[13]) {
1786
0
                                                        default:
1787
0
                                                            break;
1788
0
                                                        case '\0':
1789
0
                                                            return PIDX_PKEY_PARAM_RSA_EXPONENT4;
1790
0
                                                        }
1791
0
                                                        break;
1792
0
                                                    case '5':
1793
0
                                                        switch(s[13]) {
1794
0
                                                        default:
1795
0
                                                            break;
1796
0
                                                        case '\0':
1797
0
                                                            return PIDX_PKEY_PARAM_RSA_EXPONENT5;
1798
0
                                                        }
1799
0
                                                        break;
1800
0
                                                    case '6':
1801
0
                                                        switch(s[13]) {
1802
0
                                                        default:
1803
0
                                                            break;
1804
0
                                                        case '\0':
1805
0
                                                            return PIDX_PKEY_PARAM_RSA_EXPONENT6;
1806
0
                                                        }
1807
0
                                                        break;
1808
0
                                                    case '7':
1809
0
                                                        switch(s[13]) {
1810
0
                                                        default:
1811
0
                                                            break;
1812
0
                                                        case '\0':
1813
0
                                                            return PIDX_PKEY_PARAM_RSA_EXPONENT7;
1814
0
                                                        }
1815
0
                                                        break;
1816
0
                                                    case '8':
1817
0
                                                        switch(s[13]) {
1818
0
                                                        default:
1819
0
                                                            break;
1820
0
                                                        case '\0':
1821
0
                                                            return PIDX_PKEY_PARAM_RSA_EXPONENT8;
1822
0
                                                        }
1823
0
                                                        break;
1824
0
                                                    case '9':
1825
0
                                                        switch(s[13]) {
1826
0
                                                        default:
1827
0
                                                            break;
1828
0
                                                        case '\0':
1829
0
                                                            return PIDX_PKEY_PARAM_RSA_EXPONENT9;
1830
0
                                                        }
1831
0
                                                        break;
1832
0
                                                    case '\0':
1833
0
                                                        return PIDX_PKEY_PARAM_RSA_EXPONENT;
1834
0
                                                    }
1835
0
                                                }
1836
0
                                            }
1837
0
                                        }
1838
0
                                    }
1839
0
                                }
1840
0
                            }
1841
0
                        }
1842
0
                        break;
1843
0
                    case 'f':
1844
0
                        switch(s[5]) {
1845
0
                        default:
1846
0
                            break;
1847
0
                        case 'a':
1848
0
                            switch(s[6]) {
1849
0
                            default:
1850
0
                                break;
1851
0
                            case 'c':
1852
0
                                switch(s[7]) {
1853
0
                                default:
1854
0
                                    break;
1855
0
                                case 't':
1856
0
                                    switch(s[8]) {
1857
0
                                    default:
1858
0
                                        break;
1859
0
                                    case 'o':
1860
0
                                        switch(s[9]) {
1861
0
                                        default:
1862
0
                                            break;
1863
0
                                        case 'r':
1864
0
                                            switch(s[10]) {
1865
0
                                            default:
1866
0
                                                break;
1867
0
                                            case '1':
1868
0
                                                switch(s[11]) {
1869
0
                                                default:
1870
0
                                                    break;
1871
0
                                                case '0':
1872
0
                                                    switch(s[12]) {
1873
0
                                                    default:
1874
0
                                                        break;
1875
0
                                                    case '\0':
1876
0
                                                        return PIDX_PKEY_PARAM_RSA_FACTOR10;
1877
0
                                                    }
1878
0
                                                    break;
1879
0
                                                case '\0':
1880
0
                                                    return PIDX_PKEY_PARAM_RSA_FACTOR1;
1881
0
                                                }
1882
0
                                                break;
1883
0
                                            case '2':
1884
0
                                                switch(s[11]) {
1885
0
                                                default:
1886
0
                                                    break;
1887
0
                                                case '\0':
1888
0
                                                    return PIDX_PKEY_PARAM_RSA_FACTOR2;
1889
0
                                                }
1890
0
                                                break;
1891
0
                                            case '3':
1892
0
                                                switch(s[11]) {
1893
0
                                                default:
1894
0
                                                    break;
1895
0
                                                case '\0':
1896
0
                                                    return PIDX_PKEY_PARAM_RSA_FACTOR3;
1897
0
                                                }
1898
0
                                                break;
1899
0
                                            case '4':
1900
0
                                                switch(s[11]) {
1901
0
                                                default:
1902
0
                                                    break;
1903
0
                                                case '\0':
1904
0
                                                    return PIDX_PKEY_PARAM_RSA_FACTOR4;
1905
0
                                                }
1906
0
                                                break;
1907
0
                                            case '5':
1908
0
                                                switch(s[11]) {
1909
0
                                                default:
1910
0
                                                    break;
1911
0
                                                case '\0':
1912
0
                                                    return PIDX_PKEY_PARAM_RSA_FACTOR5;
1913
0
                                                }
1914
0
                                                break;
1915
0
                                            case '6':
1916
0
                                                switch(s[11]) {
1917
0
                                                default:
1918
0
                                                    break;
1919
0
                                                case '\0':
1920
0
                                                    return PIDX_PKEY_PARAM_RSA_FACTOR6;
1921
0
                                                }
1922
0
                                                break;
1923
0
                                            case '7':
1924
0
                                                switch(s[11]) {
1925
0
                                                default:
1926
0
                                                    break;
1927
0
                                                case '\0':
1928
0
                                                    return PIDX_PKEY_PARAM_RSA_FACTOR7;
1929
0
                                                }
1930
0
                                                break;
1931
0
                                            case '8':
1932
0
                                                switch(s[11]) {
1933
0
                                                default:
1934
0
                                                    break;
1935
0
                                                case '\0':
1936
0
                                                    return PIDX_PKEY_PARAM_RSA_FACTOR8;
1937
0
                                                }
1938
0
                                                break;
1939
0
                                            case '9':
1940
0
                                                switch(s[11]) {
1941
0
                                                default:
1942
0
                                                    break;
1943
0
                                                case '\0':
1944
0
                                                    return PIDX_PKEY_PARAM_RSA_FACTOR9;
1945
0
                                                }
1946
0
                                                break;
1947
0
                                            case '\0':
1948
0
                                                return PIDX_PKEY_PARAM_RSA_FACTOR;
1949
0
                                            }
1950
0
                                        }
1951
0
                                    }
1952
0
                                }
1953
0
                            }
1954
0
                        }
1955
0
                        break;
1956
0
                    case 'p':
1957
0
                        switch(s[5]) {
1958
0
                        default:
1959
0
                            break;
1960
0
                        case 'k':
1961
0
                            if (strcmp("cs15-pad-disabled", s + 6) == 0)
1962
0
                                return PIDX_PROV_PARAM_RSA_PKCS15_PAD_DISABLED;
1963
0
                            break;
1964
0
                        case 's':
1965
0
                            if (strcmp("s-saltlen-check", s + 6) == 0)
1966
0
                                return PIDX_SIGNATURE_PARAM_FIPS_RSA_PSS_SALTLEN_CHECK;
1967
0
                        }
1968
0
                        break;
1969
0
                    case 's':
1970
0
                        if (strcmp("ign-x931-pad-disabled", s + 5) == 0)
1971
0
                            return PIDX_PROV_PARAM_RSA_SIGN_X931_PAD_DISABLED;
1972
0
                    }
1973
0
                }
1974
0
            }
1975
0
            break;
1976
0
        case '\0':
1977
0
            return PIDX_KDF_PARAM_SCRYPT_R;
1978
0
        }
1979
0
        break;
1980
0
    case 's':
1981
0
        switch(s[1]) {
1982
0
        default:
1983
0
            break;
1984
0
        case 'a':
1985
0
            switch(s[2]) {
1986
0
            default:
1987
0
                break;
1988
0
            case 'f':
1989
0
                if (strcmp("eprime-generator", s + 3) == 0)
1990
0
                    return PIDX_PKEY_PARAM_DH_GENERATOR;
1991
0
                break;
1992
0
            case 'l':
1993
0
                switch(s[3]) {
1994
0
                default:
1995
0
                    break;
1996
0
                case 't':
1997
0
                    switch(s[4]) {
1998
0
                    default:
1999
0
                        break;
2000
0
                    case 'l':
2001
0
                        if (strcmp("en", s + 5) == 0)
2002
0
                            return PIDX_SIGNATURE_PARAM_PSS_SALTLEN;
2003
0
                        break;
2004
0
                    case '\0':
2005
0
                        return PIDX_MAC_PARAM_SALT;
2006
0
                    }
2007
0
                }
2008
0
                break;
2009
0
            case 'v':
2010
0
                if (strcmp("e-parameters", s + 3) == 0)
2011
0
                    return PIDX_ENCODER_PARAM_SAVE_PARAMETERS;
2012
0
            }
2013
0
            break;
2014
0
        case 'e':
2015
0
            switch(s[2]) {
2016
0
            default:
2017
0
                break;
2018
0
            case 'c':
2019
0
                switch(s[3]) {
2020
0
                default:
2021
0
                    break;
2022
0
                case 'r':
2023
0
                    if (strcmp("et", s + 4) == 0)
2024
0
                        return PIDX_KDF_PARAM_SECRET;
2025
0
                    break;
2026
0
                case 'u':
2027
0
                    switch(s[4]) {
2028
0
                    default:
2029
0
                        break;
2030
0
                    case 'r':
2031
0
                        switch(s[5]) {
2032
0
                        default:
2033
0
                            break;
2034
0
                        case 'i':
2035
0
                            switch(s[6]) {
2036
0
                            default:
2037
0
                                break;
2038
0
                            case 't':
2039
0
                                switch(s[7]) {
2040
0
                                default:
2041
0
                                    break;
2042
0
                                case 'y':
2043
0
                                    switch(s[8]) {
2044
0
                                    default:
2045
0
                                        break;
2046
0
                                    case '-':
2047
0
                                        switch(s[9]) {
2048
0
                                        default:
2049
0
                                            break;
2050
0
                                        case 'b':
2051
0
                                            if (strcmp("its", s + 10) == 0)
2052
0
                                                return PIDX_PKEY_PARAM_SECURITY_BITS;
2053
0
                                            break;
2054
0
                                        case 'c':
2055
0
                                            if (strcmp("hecks", s + 10) == 0)
2056
0
                                                return PIDX_PROV_PARAM_SECURITY_CHECKS;
2057
0
                                        }
2058
0
                                    }
2059
0
                                }
2060
0
                            }
2061
0
                        }
2062
0
                    }
2063
0
                }
2064
0
                break;
2065
0
            case 'e':
2066
0
                if (strcmp("d", s + 3) == 0)
2067
0
                    return PIDX_PKEY_PARAM_FFC_SEED;
2068
0
                break;
2069
0
            case 'r':
2070
0
                if (strcmp("ial", s + 3) == 0)
2071
0
                    return PIDX_STORE_PARAM_SERIAL;
2072
0
                break;
2073
0
            case 's':
2074
0
                if (strcmp("sion_id", s + 3) == 0)
2075
0
                    return PIDX_KDF_PARAM_SSHKDF_SESSION_ID;
2076
0
            }
2077
0
            break;
2078
0
        case 'i':
2079
0
            switch(s[2]) {
2080
0
            default:
2081
0
                break;
2082
0
            case 'g':
2083
0
                switch(s[3]) {
2084
0
                default:
2085
0
                    break;
2086
0
                case 'n':
2087
0
                    switch(s[4]) {
2088
0
                    default:
2089
0
                        break;
2090
0
                    case '-':
2091
0
                        switch(s[5]) {
2092
0
                        default:
2093
0
                            break;
2094
0
                        case 'c':
2095
0
                            if (strcmp("heck", s + 6) == 0)
2096
0
                                return PIDX_PKEY_PARAM_FIPS_SIGN_CHECK;
2097
0
                            break;
2098
0
                        case 'x':
2099
0
                            if (strcmp("931-pad-check", s + 6) == 0)
2100
0
                                return PIDX_SIGNATURE_PARAM_FIPS_SIGN_X931_PAD_CHECK;
2101
0
                        }
2102
0
                        break;
2103
0
                    case 'a':
2104
0
                        switch(s[5]) {
2105
0
                        default:
2106
0
                            break;
2107
0
                        case 't':
2108
0
                            switch(s[6]) {
2109
0
                            default:
2110
0
                                break;
2111
0
                            case 'u':
2112
0
                                switch(s[7]) {
2113
0
                                default:
2114
0
                                    break;
2115
0
                                case 'r':
2116
0
                                    switch(s[8]) {
2117
0
                                    default:
2118
0
                                        break;
2119
0
                                    case 'e':
2120
0
                                        switch(s[9]) {
2121
0
                                        default:
2122
0
                                            break;
2123
0
                                        case '-':
2124
0
                                            if (strcmp("digest-check", s + 10) == 0)
2125
0
                                                return PIDX_PROV_PARAM_SIGNATURE_DIGEST_CHECK;
2126
0
                                            break;
2127
0
                                        case '\0':
2128
0
                                            return PIDX_SIGNATURE_PARAM_SIGNATURE;
2129
0
                                        }
2130
0
                                    }
2131
0
                                }
2132
0
                            }
2133
0
                        }
2134
0
                    }
2135
0
                }
2136
0
                break;
2137
0
            case 'z':
2138
0
                if (strcmp("e", s + 3) == 0)
2139
0
                    return PIDX_MAC_PARAM_SIZE;
2140
0
            }
2141
0
            break;
2142
0
        case 'p':
2143
0
            if (strcmp("eed", s + 2) == 0)
2144
0
                return PIDX_CIPHER_PARAM_SPEED;
2145
0
            break;
2146
0
        case 's':
2147
0
            switch(s[2]) {
2148
0
            default:
2149
0
                break;
2150
0
            case 'h':
2151
0
                switch(s[3]) {
2152
0
                default:
2153
0
                    break;
2154
0
                case 'k':
2155
0
                    switch(s[4]) {
2156
0
                    default:
2157
0
                        break;
2158
0
                    case 'd':
2159
0
                        switch(s[5]) {
2160
0
                        default:
2161
0
                            break;
2162
0
                        case 'f':
2163
0
                            switch(s[6]) {
2164
0
                            default:
2165
0
                                break;
2166
0
                            case '-':
2167
0
                                switch(s[7]) {
2168
0
                                default:
2169
0
                                    break;
2170
0
                                case 'd':
2171
0
                                    if (strcmp("igest-check", s + 8) == 0)
2172
0
                                        return PIDX_PROV_PARAM_SSHKDF_DIGEST_CHECK;
2173
0
                                    break;
2174
0
                                case 'k':
2175
0
                                    if (strcmp("ey-check", s + 8) == 0)
2176
0
                                        return PIDX_PROV_PARAM_SSHKDF_KEY_CHECK;
2177
0
                                }
2178
0
                            }
2179
0
                        }
2180
0
                    }
2181
0
                }
2182
0
                break;
2183
0
            case 'k':
2184
0
                switch(s[3]) {
2185
0
                default:
2186
0
                    break;
2187
0
                case 'd':
2188
0
                    switch(s[4]) {
2189
0
                    default:
2190
0
                        break;
2191
0
                    case 'f':
2192
0
                        switch(s[5]) {
2193
0
                        default:
2194
0
                            break;
2195
0
                        case '-':
2196
0
                            switch(s[6]) {
2197
0
                            default:
2198
0
                                break;
2199
0
                            case 'd':
2200
0
                                if (strcmp("igest-check", s + 7) == 0)
2201
0
                                    return PIDX_PROV_PARAM_SSKDF_DIGEST_CHECK;
2202
0
                                break;
2203
0
                            case 'k':
2204
0
                                if (strcmp("ey-check", s + 7) == 0)
2205
0
                                    return PIDX_PROV_PARAM_SSKDF_KEY_CHECK;
2206
0
                            }
2207
0
                        }
2208
0
                    }
2209
0
                }
2210
0
                break;
2211
0
            case 'l':
2212
0
                if (strcmp("3-ms", s + 3) == 0)
2213
0
                    return PIDX_DIGEST_PARAM_SSL3_MS;
2214
0
            }
2215
0
            break;
2216
0
        case 't':
2217
0
            switch(s[2]) {
2218
0
            default:
2219
0
                break;
2220
0
            case '-':
2221
0
                switch(s[3]) {
2222
0
                default:
2223
0
                    break;
2224
0
                case 'd':
2225
0
                    if (strcmp("esc", s + 4) == 0)
2226
0
                        return PIDX_PROV_PARAM_SELF_TEST_DESC;
2227
0
                    break;
2228
0
                case 'p':
2229
0
                    if (strcmp("hase", s + 4) == 0)
2230
0
                        return PIDX_PROV_PARAM_SELF_TEST_PHASE;
2231
0
                    break;
2232
0
                case 't':
2233
0
                    if (strcmp("ype", s + 4) == 0)
2234
0
                        return PIDX_PROV_PARAM_SELF_TEST_TYPE;
2235
0
                }
2236
0
                break;
2237
0
            case 'a':
2238
0
                switch(s[3]) {
2239
0
                default:
2240
0
                    break;
2241
0
                case 't':
2242
0
                    switch(s[4]) {
2243
0
                    default:
2244
0
                        break;
2245
0
                    case 'e':
2246
0
                        switch(s[5]) {
2247
0
                        default:
2248
0
                            break;
2249
0
                        case '\0':
2250
0
                            return PIDX_RAND_PARAM_STATE;
2251
0
                        }
2252
0
                        break;
2253
0
                    case 'u':
2254
0
                        if (strcmp("s", s + 5) == 0)
2255
0
                            return PIDX_PROV_PARAM_STATUS;
2256
0
                    }
2257
0
                }
2258
0
                break;
2259
0
            case 'r':
2260
0
                switch(s[3]) {
2261
0
                default:
2262
0
                    break;
2263
0
                case 'e':
2264
0
                    switch(s[4]) {
2265
0
                    default:
2266
0
                        break;
2267
0
                    case 'a':
2268
0
                        if (strcmp("m_mac", s + 5) == 0)
2269
0
                            return PIDX_LIBSSL_RECORD_LAYER_PARAM_STREAM_MAC;
2270
0
                        break;
2271
0
                    case 'n':
2272
0
                        if (strcmp("gth", s + 5) == 0)
2273
0
                            return PIDX_RAND_PARAM_STRENGTH;
2274
0
                    }
2275
0
                }
2276
0
            }
2277
0
            break;
2278
0
        case 'u':
2279
0
            switch(s[2]) {
2280
0
            default:
2281
0
                break;
2282
0
            case 'b':
2283
0
                if (strcmp("ject", s + 3) == 0)
2284
0
                    return PIDX_STORE_PARAM_SUBJECT;
2285
0
                break;
2286
0
            case 'p':
2287
0
                switch(s[3]) {
2288
0
                default:
2289
0
                    break;
2290
0
                case 'p':
2291
0
                    switch(s[4]) {
2292
0
                    default:
2293
0
                        break;
2294
0
                    case '-':
2295
0
                        switch(s[5]) {
2296
0
                        default:
2297
0
                            break;
2298
0
                        case 'p':
2299
0
                            switch(s[6]) {
2300
0
                            default:
2301
0
                                break;
2302
0
                            case 'r':
2303
0
                                if (strcmp("ivinfo", s + 7) == 0)
2304
0
                                    return PIDX_KDF_PARAM_X942_SUPP_PRIVINFO;
2305
0
                                break;
2306
0
                            case 'u':
2307
0
                                if (strcmp("binfo", s + 7) == 0)
2308
0
                                    return PIDX_KDF_PARAM_X942_SUPP_PUBINFO;
2309
0
                            }
2310
0
                        }
2311
0
                    }
2312
0
                }
2313
0
            }
2314
0
        }
2315
0
        break;
2316
15
    case 't':
2317
15
        switch(s[1]) {
2318
0
        default:
2319
0
            break;
2320
15
        case 'a':
2321
15
            switch(s[2]) {
2322
0
            default:
2323
0
                break;
2324
15
            case 'g':
2325
15
                switch(s[3]) {
2326
0
                default:
2327
0
                    break;
2328
0
                case 'l':
2329
0
                    if (strcmp("en", s + 4) == 0)
2330
0
                        return PIDX_CIPHER_PARAM_AEAD_TAGLEN;
2331
0
                    break;
2332
15
                case '\0':
2333
15
                    return PIDX_CIPHER_PARAM_AEAD_TAG;
2334
15
                }
2335
15
            }
2336
0
            break;
2337
0
        case 'd':
2338
0
            if (strcmp("es-encrypt-disabled", s + 2) == 0)
2339
0
                return PIDX_PROV_PARAM_TDES_ENCRYPT_DISABLED;
2340
0
            break;
2341
0
        case 'e':
2342
0
            switch(s[2]) {
2343
0
            default:
2344
0
                break;
2345
0
            case 's':
2346
0
                switch(s[3]) {
2347
0
                default:
2348
0
                    break;
2349
0
                case 't':
2350
0
                    switch(s[4]) {
2351
0
                    default:
2352
0
                        break;
2353
0
                    case '_':
2354
0
                        switch(s[5]) {
2355
0
                        default:
2356
0
                            break;
2357
0
                        case 'e':
2358
0
                            if (strcmp("ntropy", s + 6) == 0)
2359
0
                                return PIDX_RAND_PARAM_TEST_ENTROPY;
2360
0
                            break;
2361
0
                        case 'n':
2362
0
                            if (strcmp("once", s + 6) == 0)
2363
0
                                return PIDX_RAND_PARAM_TEST_NONCE;
2364
0
                        }
2365
0
                    }
2366
0
                }
2367
0
            }
2368
0
            break;
2369
0
        case 'h':
2370
0
            if (strcmp("reads", s + 2) == 0)
2371
0
                return PIDX_KDF_PARAM_THREADS;
2372
0
            break;
2373
0
        case 'l':
2374
0
            switch(s[2]) {
2375
0
            default:
2376
0
                break;
2377
0
            case 's':
2378
0
                switch(s[3]) {
2379
0
                default:
2380
0
                    break;
2381
0
                case '-':
2382
0
                    switch(s[4]) {
2383
0
                    default:
2384
0
                        break;
2385
0
                    case 'c':
2386
0
                        if (strcmp("lient-version", s + 5) == 0)
2387
0
                            return PIDX_ASYM_CIPHER_PARAM_TLS_CLIENT_VERSION;
2388
0
                        break;
2389
0
                    case 'd':
2390
0
                        if (strcmp("ata-size", s + 5) == 0)
2391
0
                            return PIDX_MAC_PARAM_TLS_DATA_SIZE;
2392
0
                        break;
2393
0
                    case 'g':
2394
0
                        switch(s[5]) {
2395
0
                        default:
2396
0
                            break;
2397
0
                        case 'r':
2398
0
                            switch(s[6]) {
2399
0
                            default:
2400
0
                                break;
2401
0
                            case 'o':
2402
0
                                switch(s[7]) {
2403
0
                                default:
2404
0
                                    break;
2405
0
                                case 'u':
2406
0
                                    switch(s[8]) {
2407
0
                                    default:
2408
0
                                        break;
2409
0
                                    case 'p':
2410
0
                                        switch(s[9]) {
2411
0
                                        default:
2412
0
                                            break;
2413
0
                                        case '-':
2414
0
                                            switch(s[10]) {
2415
0
                                            default:
2416
0
                                                break;
2417
0
                                            case 'a':
2418
0
                                                if (strcmp("lg", s + 11) == 0)
2419
0
                                                    return PIDX_CAPABILITY_TLS_GROUP_ALG;
2420
0
                                                break;
2421
0
                                            case 'i':
2422
0
                                                switch(s[11]) {
2423
0
                                                default:
2424
0
                                                    break;
2425
0
                                                case 'd':
2426
0
                                                    switch(s[12]) {
2427
0
                                                    default:
2428
0
                                                        break;
2429
0
                                                    case '\0':
2430
0
                                                        return PIDX_CAPABILITY_TLS_GROUP_ID;
2431
0
                                                    }
2432
0
                                                    break;
2433
0
                                                case 's':
2434
0
                                                    if (strcmp("-kem", s + 12) == 0)
2435
0
                                                        return PIDX_CAPABILITY_TLS_GROUP_IS_KEM;
2436
0
                                                }
2437
0
                                                break;
2438
0
                                            case 'n':
2439
0
                                                switch(s[11]) {
2440
0
                                                default:
2441
0
                                                    break;
2442
0
                                                case 'a':
2443
0
                                                    switch(s[12]) {
2444
0
                                                    default:
2445
0
                                                        break;
2446
0
                                                    case 'm':
2447
0
                                                        switch(s[13]) {
2448
0
                                                        default:
2449
0
                                                            break;
2450
0
                                                        case 'e':
2451
0
                                                            switch(s[14]) {
2452
0
                                                            default:
2453
0
                                                                break;
2454
0
                                                            case '-':
2455
0
                                                                if (strcmp("internal", s + 15) == 0)
2456
0
                                                                    return PIDX_CAPABILITY_TLS_GROUP_NAME_INTERNAL;
2457
0
                                                                break;
2458
0
                                                            case '\0':
2459
0
                                                                return PIDX_CAPABILITY_TLS_GROUP_NAME;
2460
0
                                                            }
2461
0
                                                        }
2462
0
                                                    }
2463
0
                                                }
2464
0
                                                break;
2465
0
                                            case 's':
2466
0
                                                if (strcmp("ec-bits", s + 11) == 0)
2467
0
                                                    return PIDX_CAPABILITY_TLS_GROUP_SECURITY_BITS;
2468
0
                                            }
2469
0
                                        }
2470
0
                                    }
2471
0
                                }
2472
0
                            }
2473
0
                        }
2474
0
                        break;
2475
0
                    case 'm':
2476
0
                        switch(s[5]) {
2477
0
                        default:
2478
0
                            break;
2479
0
                        case 'a':
2480
0
                            switch(s[6]) {
2481
0
                            default:
2482
0
                                break;
2483
0
                            case 'c':
2484
0
                                switch(s[7]) {
2485
0
                                default:
2486
0
                                    break;
2487
0
                                case '-':
2488
0
                                    if (strcmp("size", s + 8) == 0)
2489
0
                                        return PIDX_CIPHER_PARAM_TLS_MAC_SIZE;
2490
0
                                    break;
2491
0
                                case '\0':
2492
0
                                    return PIDX_CIPHER_PARAM_TLS_MAC;
2493
0
                                }
2494
0
                                break;
2495
0
                            case 'x':
2496
0
                                switch(s[7]) {
2497
0
                                default:
2498
0
                                    break;
2499
0
                                case '-':
2500
0
                                    switch(s[8]) {
2501
0
                                    default:
2502
0
                                        break;
2503
0
                                    case 'd':
2504
0
                                        if (strcmp("tls", s + 9) == 0)
2505
0
                                            return PIDX_CAPABILITY_TLS_GROUP_MAX_DTLS;
2506
0
                                        break;
2507
0
                                    case 't':
2508
0
                                        if (strcmp("ls", s + 9) == 0)
2509
0
                                            return PIDX_CAPABILITY_TLS_SIGALG_MAX_TLS;
2510
0
                                    }
2511
0
                                }
2512
0
                            }
2513
0
                            break;
2514
0
                        case 'i':
2515
0
                            switch(s[6]) {
2516
0
                            default:
2517
0
                                break;
2518
0
                            case 'n':
2519
0
                                switch(s[7]) {
2520
0
                                default:
2521
0
                                    break;
2522
0
                                case '-':
2523
0
                                    switch(s[8]) {
2524
0
                                    default:
2525
0
                                        break;
2526
0
                                    case 'd':
2527
0
                                        if (strcmp("tls", s + 9) == 0)
2528
0
                                            return PIDX_CAPABILITY_TLS_GROUP_MIN_DTLS;
2529
0
                                        break;
2530
0
                                    case 't':
2531
0
                                        if (strcmp("ls", s + 9) == 0)
2532
0
                                            return PIDX_CAPABILITY_TLS_SIGALG_MIN_TLS;
2533
0
                                    }
2534
0
                                }
2535
0
                            }
2536
0
                            break;
2537
0
                        case 'u':
2538
0
                            if (strcmp("lti", s + 6) == 0)
2539
0
                                return PIDX_CIPHER_PARAM_TLS1_MULTIBLOCK;
2540
0
                        }
2541
0
                        break;
2542
0
                    case 'n':
2543
0
                        if (strcmp("egotiated-version", s + 5) == 0)
2544
0
                            return PIDX_ASYM_CIPHER_PARAM_TLS_NEGOTIATED_VERSION;
2545
0
                        break;
2546
0
                    case 's':
2547
0
                        switch(s[5]) {
2548
0
                        default:
2549
0
                            break;
2550
0
                        case 'i':
2551
0
                            switch(s[6]) {
2552
0
                            default:
2553
0
                                break;
2554
0
                            case 'g':
2555
0
                                switch(s[7]) {
2556
0
                                default:
2557
0
                                    break;
2558
0
                                case 'a':
2559
0
                                    switch(s[8]) {
2560
0
                                    default:
2561
0
                                        break;
2562
0
                                    case 'l':
2563
0
                                        switch(s[9]) {
2564
0
                                        default:
2565
0
                                            break;
2566
0
                                        case 'g':
2567
0
                                            switch(s[10]) {
2568
0
                                            default:
2569
0
                                                break;
2570
0
                                            case '-':
2571
0
                                                switch(s[11]) {
2572
0
                                                default:
2573
0
                                                    break;
2574
0
                                                case 'c':
2575
0
                                                    if (strcmp("ode-point", s + 12) == 0)
2576
0
                                                        return PIDX_CAPABILITY_TLS_SIGALG_CODE_POINT;
2577
0
                                                    break;
2578
0
                                                case 'h':
2579
0
                                                    switch(s[12]) {
2580
0
                                                    default:
2581
0
                                                        break;
2582
0
                                                    case 'a':
2583
0
                                                        switch(s[13]) {
2584
0
                                                        default:
2585
0
                                                            break;
2586
0
                                                        case 's':
2587
0
                                                            switch(s[14]) {
2588
0
                                                            default:
2589
0
                                                                break;
2590
0
                                                            case 'h':
2591
0
                                                                switch(s[15]) {
2592
0
                                                                default:
2593
0
                                                                    break;
2594
0
                                                                case '-':
2595
0
                                                                    switch(s[16]) {
2596
0
                                                                    default:
2597
0
                                                                        break;
2598
0
                                                                    case 'n':
2599
0
                                                                        if (strcmp("ame", s + 17) == 0)
2600
0
                                                                            return PIDX_CAPABILITY_TLS_SIGALG_HASH_NAME;
2601
0
                                                                        break;
2602
0
                                                                    case 'o':
2603
0
                                                                        if (strcmp("id", s + 17) == 0)
2604
0
                                                                            return PIDX_CAPABILITY_TLS_SIGALG_HASH_OID;
2605
0
                                                                    }
2606
0
                                                                }
2607
0
                                                            }
2608
0
                                                        }
2609
0
                                                    }
2610
0
                                                    break;
2611
0
                                                case 'i':
2612
0
                                                    if (strcmp("ana-name", s + 12) == 0)
2613
0
                                                        return PIDX_CAPABILITY_TLS_SIGALG_IANA_NAME;
2614
0
                                                    break;
2615
0
                                                case 'k':
2616
0
                                                    switch(s[12]) {
2617
0
                                                    default:
2618
0
                                                        break;
2619
0
                                                    case 'e':
2620
0
                                                        switch(s[13]) {
2621
0
                                                        default:
2622
0
                                                            break;
2623
0
                                                        case 'y':
2624
0
                                                            switch(s[14]) {
2625
0
                                                            default:
2626
0
                                                                break;
2627
0
                                                            case 't':
2628
0
                                                                switch(s[15]) {
2629
0
                                                                default:
2630
0
                                                                    break;
2631
0
                                                                case 'y':
2632
0
                                                                    switch(s[16]) {
2633
0
                                                                    default:
2634
0
                                                                        break;
2635
0
                                                                    case 'p':
2636
0
                                                                        switch(s[17]) {
2637
0
                                                                        default:
2638
0
                                                                            break;
2639
0
                                                                        case 'e':
2640
0
                                                                            switch(s[18]) {
2641
0
                                                                            default:
2642
0
                                                                                break;
2643
0
                                                                            case '-':
2644
0
                                                                                if (strcmp("oid", s + 19) == 0)
2645
0
                                                                                    return PIDX_CAPABILITY_TLS_SIGALG_KEYTYPE_OID;
2646
0
                                                                                break;
2647
0
                                                                            case '\0':
2648
0
                                                                                return PIDX_CAPABILITY_TLS_SIGALG_KEYTYPE;
2649
0
                                                                            }
2650
0
                                                                        }
2651
0
                                                                    }
2652
0
                                                                }
2653
0
                                                            }
2654
0
                                                        }
2655
0
                                                    }
2656
0
                                                    break;
2657
0
                                                case 'n':
2658
0
                                                    if (strcmp("ame", s + 12) == 0)
2659
0
                                                        return PIDX_CAPABILITY_TLS_SIGALG_NAME;
2660
0
                                                    break;
2661
0
                                                case 'o':
2662
0
                                                    if (strcmp("id", s + 12) == 0)
2663
0
                                                        return PIDX_CAPABILITY_TLS_SIGALG_OID;
2664
0
                                                    break;
2665
0
                                                case 's':
2666
0
                                                    switch(s[12]) {
2667
0
                                                    default:
2668
0
                                                        break;
2669
0
                                                    case 'e':
2670
0
                                                        if (strcmp("c-bits", s + 13) == 0)
2671
0
                                                            return PIDX_CAPABILITY_TLS_SIGALG_SECURITY_BITS;
2672
0
                                                        break;
2673
0
                                                    case 'i':
2674
0
                                                        switch(s[13]) {
2675
0
                                                        default:
2676
0
                                                            break;
2677
0
                                                        case 'g':
2678
0
                                                            switch(s[14]) {
2679
0
                                                            default:
2680
0
                                                                break;
2681
0
                                                            case '-':
2682
0
                                                                switch(s[15]) {
2683
0
                                                                default:
2684
0
                                                                    break;
2685
0
                                                                case 'n':
2686
0
                                                                    if (strcmp("ame", s + 16) == 0)
2687
0
                                                                        return PIDX_CAPABILITY_TLS_SIGALG_SIG_NAME;
2688
0
                                                                    break;
2689
0
                                                                case 'o':
2690
0
                                                                    if (strcmp("id", s + 16) == 0)
2691
0
                                                                        return PIDX_CAPABILITY_TLS_SIGALG_SIG_OID;
2692
0
                                                                }
2693
0
                                                            }
2694
0
                                                        }
2695
0
                                                    }
2696
0
                                                }
2697
0
                                            }
2698
0
                                        }
2699
0
                                    }
2700
0
                                }
2701
0
                            }
2702
0
                        }
2703
0
                        break;
2704
0
                    case 'v':
2705
0
                        if (strcmp("ersion", s + 5) == 0)
2706
0
                            return PIDX_CIPHER_PARAM_TLS_VERSION;
2707
0
                    }
2708
0
                    break;
2709
0
                case '1':
2710
0
                    switch(s[4]) {
2711
0
                    default:
2712
0
                        break;
2713
0
                    case '-':
2714
0
                        switch(s[5]) {
2715
0
                        default:
2716
0
                            break;
2717
0
                        case 'p':
2718
0
                            switch(s[6]) {
2719
0
                            default:
2720
0
                                break;
2721
0
                            case 'r':
2722
0
                                switch(s[7]) {
2723
0
                                default:
2724
0
                                    break;
2725
0
                                case 'f':
2726
0
                                    switch(s[8]) {
2727
0
                                    default:
2728
0
                                        break;
2729
0
                                    case '-':
2730
0
                                        switch(s[9]) {
2731
0
                                        default:
2732
0
                                            break;
2733
0
                                        case 'd':
2734
0
                                            if (strcmp("igest-check", s + 10) == 0)
2735
0
                                                return PIDX_PROV_PARAM_TLS1_PRF_DIGEST_CHECK;
2736
0
                                            break;
2737
0
                                        case 'e':
2738
0
                                            if (strcmp("ms-check", s + 10) == 0)
2739
0
                                                return PIDX_PROV_PARAM_TLS1_PRF_EMS_CHECK;
2740
0
                                            break;
2741
0
                                        case 'k':
2742
0
                                            if (strcmp("ey-check", s + 10) == 0)
2743
0
                                                return PIDX_PROV_PARAM_TLS1_PRF_KEY_CHECK;
2744
0
                                        }
2745
0
                                    }
2746
0
                                }
2747
0
                            }
2748
0
                        }
2749
0
                        break;
2750
0
                    case '3':
2751
0
                        switch(s[5]) {
2752
0
                        default:
2753
0
                            break;
2754
0
                        case '-':
2755
0
                            switch(s[6]) {
2756
0
                            default:
2757
0
                                break;
2758
0
                            case 'k':
2759
0
                                switch(s[7]) {
2760
0
                                default:
2761
0
                                    break;
2762
0
                                case 'd':
2763
0
                                    switch(s[8]) {
2764
0
                                    default:
2765
0
                                        break;
2766
0
                                    case 'f':
2767
0
                                        switch(s[9]) {
2768
0
                                        default:
2769
0
                                            break;
2770
0
                                        case '-':
2771
0
                                            switch(s[10]) {
2772
0
                                            default:
2773
0
                                                break;
2774
0
                                            case 'd':
2775
0
                                                if (strcmp("igest-check", s + 11) == 0)
2776
0
                                                    return PIDX_PROV_PARAM_TLS13_KDF_DIGEST_CHECK;
2777
0
                                                break;
2778
0
                                            case 'k':
2779
0
                                                if (strcmp("ey-check", s + 11) == 0)
2780
0
                                                    return PIDX_PROV_PARAM_TLS13_KDF_KEY_CHECK;
2781
0
                                            }
2782
0
                                        }
2783
0
                                    }
2784
0
                                }
2785
0
                            }
2786
0
                        }
2787
0
                        break;
2788
0
                    case 'm':
2789
0
                        switch(s[5]) {
2790
0
                        default:
2791
0
                            break;
2792
0
                        case 'u':
2793
0
                            switch(s[6]) {
2794
0
                            default:
2795
0
                                break;
2796
0
                            case 'l':
2797
0
                                switch(s[7]) {
2798
0
                                default:
2799
0
                                    break;
2800
0
                                case 't':
2801
0
                                    switch(s[8]) {
2802
0
                                    default:
2803
0
                                        break;
2804
0
                                    case 'i':
2805
0
                                        switch(s[9]) {
2806
0
                                        default:
2807
0
                                            break;
2808
0
                                        case '_':
2809
0
                                            switch(s[10]) {
2810
0
                                            default:
2811
0
                                                break;
2812
0
                                            case 'a':
2813
0
                                                switch(s[11]) {
2814
0
                                                default:
2815
0
                                                    break;
2816
0
                                                case 'a':
2817
0
                                                    switch(s[12]) {
2818
0
                                                    default:
2819
0
                                                        break;
2820
0
                                                    case 'd':
2821
0
                                                        switch(s[13]) {
2822
0
                                                        default:
2823
0
                                                            break;
2824
0
                                                        case 'p':
2825
0
                                                            if (strcmp("acklen", s + 14) == 0)
2826
0
                                                                return PIDX_CIPHER_PARAM_TLS1_MULTIBLOCK_AAD_PACKLEN;
2827
0
                                                            break;
2828
0
                                                        case '\0':
2829
0
                                                            return PIDX_CIPHER_PARAM_TLS1_MULTIBLOCK_AAD;
2830
0
                                                        }
2831
0
                                                    }
2832
0
                                                }
2833
0
                                                break;
2834
0
                                            case 'e':
2835
0
                                                switch(s[11]) {
2836
0
                                                default:
2837
0
                                                    break;
2838
0
                                                case 'n':
2839
0
                                                    switch(s[12]) {
2840
0
                                                    default:
2841
0
                                                        break;
2842
0
                                                    case 'c':
2843
0
                                                        switch(s[13]) {
2844
0
                                                        default:
2845
0
                                                            break;
2846
0
                                                        case 'i':
2847
0
                                                            if (strcmp("n", s + 14) == 0)
2848
0
                                                                return PIDX_CIPHER_PARAM_TLS1_MULTIBLOCK_ENC_IN;
2849
0
                                                            break;
2850
0
                                                        case 'l':
2851
0
                                                            if (strcmp("en", s + 14) == 0)
2852
0
                                                                return PIDX_CIPHER_PARAM_TLS1_MULTIBLOCK_ENC_LEN;
2853
0
                                                            break;
2854
0
                                                        case '\0':
2855
0
                                                            return PIDX_CIPHER_PARAM_TLS1_MULTIBLOCK_ENC;
2856
0
                                                        }
2857
0
                                                    }
2858
0
                                                }
2859
0
                                                break;
2860
0
                                            case 'i':
2861
0
                                                if (strcmp("nterleave", s + 11) == 0)
2862
0
                                                    return PIDX_CIPHER_PARAM_TLS1_MULTIBLOCK_INTERLEAVE;
2863
0
                                                break;
2864
0
                                            case 'm':
2865
0
                                                switch(s[11]) {
2866
0
                                                default:
2867
0
                                                    break;
2868
0
                                                case 'a':
2869
0
                                                    switch(s[12]) {
2870
0
                                                    default:
2871
0
                                                        break;
2872
0
                                                    case 'x':
2873
0
                                                        switch(s[13]) {
2874
0
                                                        default:
2875
0
                                                            break;
2876
0
                                                        case 'b':
2877
0
                                                            if (strcmp("ufsz", s + 14) == 0)
2878
0
                                                                return PIDX_CIPHER_PARAM_TLS1_MULTIBLOCK_MAX_BUFSIZE;
2879
0
                                                            break;
2880
0
                                                        case 's':
2881
0
                                                            if (strcmp("ndfrag", s + 14) == 0)
2882
0
                                                                return PIDX_CIPHER_PARAM_TLS1_MULTIBLOCK_MAX_SEND_FRAGMENT;
2883
0
                                                        }
2884
0
                                                    }
2885
0
                                                }
2886
0
                                            }
2887
0
                                        }
2888
0
                                    }
2889
0
                                }
2890
0
                            }
2891
0
                        }
2892
0
                    }
2893
0
                    break;
2894
0
                case 'a':
2895
0
                    switch(s[4]) {
2896
0
                    default:
2897
0
                        break;
2898
0
                    case 'a':
2899
0
                        switch(s[5]) {
2900
0
                        default:
2901
0
                            break;
2902
0
                        case 'd':
2903
0
                            switch(s[6]) {
2904
0
                            default:
2905
0
                                break;
2906
0
                            case 'p':
2907
0
                                if (strcmp("ad", s + 7) == 0)
2908
0
                                    return PIDX_CIPHER_PARAM_AEAD_TLS1_AAD_PAD;
2909
0
                                break;
2910
0
                            case '\0':
2911
0
                                return PIDX_CIPHER_PARAM_AEAD_TLS1_AAD;
2912
0
                            }
2913
0
                        }
2914
0
                    }
2915
0
                    break;
2916
0
                case 'i':
2917
0
                    switch(s[4]) {
2918
0
                    default:
2919
0
                        break;
2920
0
                    case 'v':
2921
0
                        switch(s[5]) {
2922
0
                        default:
2923
0
                            break;
2924
0
                        case 'f':
2925
0
                            if (strcmp("ixed", s + 6) == 0)
2926
0
                                return PIDX_CIPHER_PARAM_AEAD_TLS1_IV_FIXED;
2927
0
                            break;
2928
0
                        case 'g':
2929
0
                            if (strcmp("en", s + 6) == 0)
2930
0
                                return PIDX_CIPHER_PARAM_AEAD_TLS1_GET_IV_GEN;
2931
0
                            break;
2932
0
                        case 'i':
2933
0
                            if (strcmp("nv", s + 6) == 0)
2934
0
                                return PIDX_CIPHER_PARAM_AEAD_TLS1_SET_IV_INV;
2935
0
                        }
2936
0
                    }
2937
0
                    break;
2938
0
                case 't':
2939
0
                    if (strcmp("ree", s + 4) == 0)
2940
0
                        return PIDX_LIBSSL_RECORD_LAYER_PARAM_TLSTREE;
2941
0
                }
2942
0
            }
2943
0
            break;
2944
0
        case 'p':
2945
0
            switch(s[2]) {
2946
0
            default:
2947
0
                break;
2948
0
            case '\0':
2949
0
                return PIDX_PKEY_PARAM_EC_CHAR2_TP_BASIS;
2950
0
            }
2951
0
            break;
2952
0
        case 'y':
2953
0
            if (strcmp("pe", s + 2) == 0)
2954
0
                return PIDX_PKEY_PARAM_FFC_TYPE;
2955
15
        }
2956
0
        break;
2957
0
    case 'u':
2958
0
        switch(s[1]) {
2959
0
        default:
2960
0
            break;
2961
0
        case 'k':
2962
0
            if (strcmp("m", s + 2) == 0)
2963
0
                return PIDX_KDF_PARAM_UKM;
2964
0
            break;
2965
0
        case 'p':
2966
0
            if (strcmp("dated-iv", s + 2) == 0)
2967
0
                return PIDX_CIPHER_PARAM_UPDATED_IV;
2968
0
            break;
2969
0
        case 's':
2970
0
            switch(s[2]) {
2971
0
            default:
2972
0
                break;
2973
0
            case 'e':
2974
0
                switch(s[3]) {
2975
0
                default:
2976
0
                    break;
2977
0
                case '-':
2978
0
                    switch(s[4]) {
2979
0
                    default:
2980
0
                        break;
2981
0
                    case 'b':
2982
0
                        if (strcmp("its", s + 5) == 0)
2983
0
                            return PIDX_CIPHER_PARAM_USE_BITS;
2984
0
                        break;
2985
0
                    case 'c':
2986
0
                        if (strcmp("ofactor-flag", s + 5) == 0)
2987
0
                            return PIDX_PKEY_PARAM_USE_COFACTOR_FLAG;
2988
0
                        break;
2989
0
                    case 'k':
2990
0
                        if (strcmp("eybits", s + 5) == 0)
2991
0
                            return PIDX_KDF_PARAM_X942_USE_KEYBITS;
2992
0
                        break;
2993
0
                    case 'l':
2994
0
                        switch(s[5]) {
2995
0
                        default:
2996
0
                            break;
2997
0
                        case '\0':
2998
0
                            return PIDX_KDF_PARAM_KBKDF_USE_L;
2999
0
                        }
3000
0
                        break;
3001
0
                    case 's':
3002
0
                        if (strcmp("eparator", s + 5) == 0)
3003
0
                            return PIDX_KDF_PARAM_KBKDF_USE_SEPARATOR;
3004
0
                    }
3005
0
                    break;
3006
0
                case '_':
3007
0
                    switch(s[4]) {
3008
0
                    default:
3009
0
                        break;
3010
0
                    case 'd':
3011
0
                        if (strcmp("erivation_function", s + 5) == 0)
3012
0
                            return PIDX_DRBG_PARAM_USE_DF;
3013
0
                        break;
3014
0
                    case 'e':
3015
0
                        if (strcmp("tm", s + 5) == 0)
3016
0
                            return PIDX_LIBSSL_RECORD_LAYER_PARAM_USE_ETM;
3017
0
                    }
3018
0
                }
3019
0
            }
3020
0
        }
3021
0
        break;
3022
0
    case 'v':
3023
0
        switch(s[1]) {
3024
0
        default:
3025
0
            break;
3026
0
        case 'a':
3027
0
            switch(s[2]) {
3028
0
            default:
3029
0
                break;
3030
0
            case 'l':
3031
0
                switch(s[3]) {
3032
0
                default:
3033
0
                    break;
3034
0
                case 'i':
3035
0
                    switch(s[4]) {
3036
0
                    default:
3037
0
                        break;
3038
0
                    case 'd':
3039
0
                        switch(s[5]) {
3040
0
                        default:
3041
0
                            break;
3042
0
                        case 'a':
3043
0
                            switch(s[6]) {
3044
0
                            default:
3045
0
                                break;
3046
0
                            case 't':
3047
0
                                switch(s[7]) {
3048
0
                                default:
3049
0
                                    break;
3050
0
                                case 'e':
3051
0
                                    switch(s[8]) {
3052
0
                                    default:
3053
0
                                        break;
3054
0
                                    case '-':
3055
0
                                        switch(s[9]) {
3056
0
                                        default:
3057
0
                                            break;
3058
0
                                        case 'g':
3059
0
                                            switch(s[10]) {
3060
0
                                            default:
3061
0
                                                break;
3062
0
                                            case '\0':
3063
0
                                                return PIDX_PKEY_PARAM_FFC_VALIDATE_G;
3064
0
                                            }
3065
0
                                            break;
3066
0
                                        case 'l':
3067
0
                                            if (strcmp("egacy", s + 10) == 0)
3068
0
                                                return PIDX_PKEY_PARAM_FFC_VALIDATE_LEGACY;
3069
0
                                            break;
3070
0
                                        case 'p':
3071
0
                                            if (strcmp("q", s + 10) == 0)
3072
0
                                                return PIDX_PKEY_PARAM_FFC_VALIDATE_PQ;
3073
0
                                        }
3074
0
                                    }
3075
0
                                }
3076
0
                            }
3077
0
                        }
3078
0
                    }
3079
0
                }
3080
0
            }
3081
0
            break;
3082
0
        case 'e':
3083
0
            switch(s[2]) {
3084
0
            default:
3085
0
                break;
3086
0
            case 'r':
3087
0
                switch(s[3]) {
3088
0
                default:
3089
0
                    break;
3090
0
                case 'i':
3091
0
                    if (strcmp("fy-message", s + 4) == 0)
3092
0
                        return PIDX_SIGNATURE_PARAM_FIPS_VERIFY_MESSAGE;
3093
0
                    break;
3094
0
                case 's':
3095
0
                    if (strcmp("ion", s + 4) == 0)
3096
0
                        return PIDX_PROV_PARAM_VERSION;
3097
0
                }
3098
0
            }
3099
0
        }
3100
0
        break;
3101
0
    case 'x':
3102
0
        switch(s[1]) {
3103
0
        default:
3104
0
            break;
3105
0
        case '9':
3106
0
            switch(s[2]) {
3107
0
            default:
3108
0
                break;
3109
0
            case '4':
3110
0
                if (strcmp("2kdf-key-check", s + 3) == 0)
3111
0
                    return PIDX_PROV_PARAM_X942KDF_KEY_CHECK;
3112
0
                break;
3113
0
            case '6':
3114
0
                switch(s[3]) {
3115
0
                default:
3116
0
                    break;
3117
0
                case '3':
3118
0
                    switch(s[4]) {
3119
0
                    default:
3120
0
                        break;
3121
0
                    case 'k':
3122
0
                        switch(s[5]) {
3123
0
                        default:
3124
0
                            break;
3125
0
                        case 'd':
3126
0
                            switch(s[6]) {
3127
0
                            default:
3128
0
                                break;
3129
0
                            case 'f':
3130
0
                                switch(s[7]) {
3131
0
                                default:
3132
0
                                    break;
3133
0
                                case '-':
3134
0
                                    switch(s[8]) {
3135
0
                                    default:
3136
0
                                        break;
3137
0
                                    case 'd':
3138
0
                                        if (strcmp("igest-check", s + 9) == 0)
3139
0
                                            return PIDX_PROV_PARAM_X963KDF_DIGEST_CHECK;
3140
0
                                        break;
3141
0
                                    case 'k':
3142
0
                                        if (strcmp("ey-check", s + 9) == 0)
3143
0
                                            return PIDX_PROV_PARAM_X963KDF_KEY_CHECK;
3144
0
                                    }
3145
0
                                }
3146
0
                            }
3147
0
                        }
3148
0
                    }
3149
0
                }
3150
0
            }
3151
0
            break;
3152
0
        case 'c':
3153
0
            if (strcmp("ghash", s + 2) == 0)
3154
0
                return PIDX_KDF_PARAM_SSHKDF_XCGHASH;
3155
0
            break;
3156
0
        case 'o':
3157
0
            switch(s[2]) {
3158
0
            default:
3159
0
                break;
3160
0
            case 'f':
3161
0
                switch(s[3]) {
3162
0
                default:
3163
0
                    break;
3164
0
                case 'l':
3165
0
                    if (strcmp("en", s + 4) == 0)
3166
0
                        return PIDX_DIGEST_PARAM_XOFLEN;
3167
0
                    break;
3168
0
                case '\0':
3169
0
                    return PIDX_MAC_PARAM_XOF;
3170
0
                }
3171
0
            }
3172
0
            break;
3173
0
        case 'p':
3174
0
            switch(s[2]) {
3175
0
            default:
3176
0
                break;
3177
0
            case '1':
3178
0
                switch(s[3]) {
3179
0
                default:
3180
0
                    break;
3181
0
                case '\0':
3182
0
                    return PIDX_PKEY_PARAM_RSA_TEST_XP1;
3183
0
                }
3184
0
                break;
3185
0
            case '2':
3186
0
                switch(s[3]) {
3187
0
                default:
3188
0
                    break;
3189
0
                case '\0':
3190
0
                    return PIDX_PKEY_PARAM_RSA_TEST_XP2;
3191
0
                }
3192
0
                break;
3193
0
            case '\0':
3194
0
                return PIDX_PKEY_PARAM_RSA_TEST_XP;
3195
0
            }
3196
0
            break;
3197
0
        case 'q':
3198
0
            switch(s[2]) {
3199
0
            default:
3200
0
                break;
3201
0
            case '1':
3202
0
                switch(s[3]) {
3203
0
                default:
3204
0
                    break;
3205
0
                case '\0':
3206
0
                    return PIDX_PKEY_PARAM_RSA_TEST_XQ1;
3207
0
                }
3208
0
                break;
3209
0
            case '2':
3210
0
                switch(s[3]) {
3211
0
                default:
3212
0
                    break;
3213
0
                case '\0':
3214
0
                    return PIDX_PKEY_PARAM_RSA_TEST_XQ2;
3215
0
                }
3216
0
                break;
3217
0
            case '\0':
3218
0
                return PIDX_PKEY_PARAM_RSA_TEST_XQ;
3219
0
            }
3220
0
            break;
3221
0
        case 't':
3222
0
            if (strcmp("s_standard", s + 2) == 0)
3223
0
                return PIDX_CIPHER_PARAM_XTS_STANDARD;
3224
0
        }
3225
1.52k
    }
3226
0
    return -1;
3227
1.52k
}
3228
3229
/* End of TRIE */