Coverage Report

Created: 2024-07-27 06:37

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