Coverage Report

Created: 2026-05-20 07:05

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/openssl/providers/implementations/ciphers/ciphercommon.inc
Line
Count
Source
1
/*
2
 * Copyright 2025 The OpenSSL Project Authors. All Rights Reserved.
3
 *
4
 * Licensed under the Apache License 2.0 (the \"License\").  You may not use
5
 * this file except in compliance with the License.  You can obtain a copy
6
 * in the file LICENSE in the source distribution or at
7
 * https://www.openssl.org/source/license.html
8
 */
9
10
11
12
/* Machine generated by util/perl/OpenSSL/paramnames.pm */
13
#include <string.h>
14
#include <openssl/params.h>
15
#include "internal/common.h"
16
#include "prov/proverr.h"
17
18
#ifndef ossl_cipher_generic_get_params_list
19
static const OSSL_PARAM ossl_cipher_generic_get_params_list[] = {
20
    OSSL_PARAM_uint(OSSL_CIPHER_PARAM_MODE, NULL),
21
    OSSL_PARAM_size_t(OSSL_CIPHER_PARAM_KEYLEN, NULL),
22
    OSSL_PARAM_size_t(OSSL_CIPHER_PARAM_IVLEN, NULL),
23
    OSSL_PARAM_size_t(OSSL_CIPHER_PARAM_BLOCK_SIZE, NULL),
24
    OSSL_PARAM_int(OSSL_CIPHER_PARAM_AEAD, NULL),
25
    OSSL_PARAM_int(OSSL_CIPHER_PARAM_CUSTOM_IV, NULL),
26
    OSSL_PARAM_int(OSSL_CIPHER_PARAM_CTS, NULL),
27
    OSSL_PARAM_int(OSSL_CIPHER_PARAM_TLS1_MULTIBLOCK, NULL),
28
    OSSL_PARAM_int(OSSL_CIPHER_PARAM_HAS_RAND_KEY, NULL),
29
    OSSL_PARAM_int(OSSL_CIPHER_PARAM_ENCRYPT_THEN_MAC, NULL),
30
    OSSL_PARAM_END
31
};
32
#endif
33
34
#ifndef ossl_cipher_generic_get_params_st
35
struct ossl_cipher_generic_get_params_st {
36
    OSSL_PARAM *aead;
37
    OSSL_PARAM *bsize;
38
    OSSL_PARAM *cts;
39
    OSSL_PARAM *custiv;
40
    OSSL_PARAM *etm;
41
    OSSL_PARAM *ivlen;
42
    OSSL_PARAM *keylen;
43
    OSSL_PARAM *mb;
44
    OSSL_PARAM *mode;
45
    OSSL_PARAM *rand;
46
};
47
#endif
48
49
#ifndef ossl_cipher_generic_get_params_decoder
50
static int ossl_cipher_generic_get_params_decoder
51
    (const OSSL_PARAM *p, struct ossl_cipher_generic_get_params_st *r)
52
2.08k
{
53
2.08k
    const char *s;
54
55
2.08k
    memset(r, 0, sizeof(*r));
56
2.08k
    if (p != NULL)
57
22.8k
        for (; (s = p->key) != NULL; p++)
58
20.8k
            switch(s[0]) {
59
0
            default:
60
0
                break;
61
2.08k
            case 'a':
62
2.08k
                if (ossl_likely(strcmp("ead", s + 1) == 0)) {
63
                    /* OSSL_CIPHER_PARAM_AEAD */
64
2.08k
                    if (ossl_unlikely(r->aead != NULL)) {
65
0
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
66
0
                                       "param %s is repeated", s);
67
0
                        return 0;
68
0
                    }
69
2.08k
                    r->aead = (OSSL_PARAM *)p;
70
2.08k
                }
71
2.08k
                break;
72
2.08k
            case 'b':
73
2.08k
                if (ossl_likely(strcmp("locksize", s + 1) == 0)) {
74
                    /* OSSL_CIPHER_PARAM_BLOCK_SIZE */
75
2.08k
                    if (ossl_unlikely(r->bsize != NULL)) {
76
0
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
77
0
                                       "param %s is repeated", s);
78
0
                        return 0;
79
0
                    }
80
2.08k
                    r->bsize = (OSSL_PARAM *)p;
81
2.08k
                }
82
2.08k
                break;
83
4.16k
            case 'c':
84
4.16k
                switch(s[1]) {
85
0
                default:
86
0
                    break;
87
2.08k
                case 't':
88
2.08k
                    if (ossl_likely(strcmp("s", s + 2) == 0)) {
89
                        /* OSSL_CIPHER_PARAM_CTS */
90
2.08k
                        if (ossl_unlikely(r->cts != NULL)) {
91
0
                            ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
92
0
                                           "param %s is repeated", s);
93
0
                            return 0;
94
0
                        }
95
2.08k
                        r->cts = (OSSL_PARAM *)p;
96
2.08k
                    }
97
2.08k
                    break;
98
2.08k
                case 'u':
99
2.08k
                    if (ossl_likely(strcmp("stom-iv", s + 2) == 0)) {
100
                        /* OSSL_CIPHER_PARAM_CUSTOM_IV */
101
2.08k
                        if (ossl_unlikely(r->custiv != NULL)) {
102
0
                            ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
103
0
                                           "param %s is repeated", s);
104
0
                            return 0;
105
0
                        }
106
2.08k
                        r->custiv = (OSSL_PARAM *)p;
107
2.08k
                    }
108
4.16k
                }
109
4.16k
                break;
110
4.16k
            case 'e':
111
2.08k
                if (ossl_likely(strcmp("ncrypt-then-mac", s + 1) == 0)) {
112
                    /* OSSL_CIPHER_PARAM_ENCRYPT_THEN_MAC */
113
2.08k
                    if (ossl_unlikely(r->etm != NULL)) {
114
0
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
115
0
                                       "param %s is repeated", s);
116
0
                        return 0;
117
0
                    }
118
2.08k
                    r->etm = (OSSL_PARAM *)p;
119
2.08k
                }
120
2.08k
                break;
121
2.08k
            case 'h':
122
2.08k
                if (ossl_likely(strcmp("as-randkey", s + 1) == 0)) {
123
                    /* OSSL_CIPHER_PARAM_HAS_RAND_KEY */
124
2.08k
                    if (ossl_unlikely(r->rand != NULL)) {
125
0
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
126
0
                                       "param %s is repeated", s);
127
0
                        return 0;
128
0
                    }
129
2.08k
                    r->rand = (OSSL_PARAM *)p;
130
2.08k
                }
131
2.08k
                break;
132
2.08k
            case 'i':
133
2.08k
                if (ossl_likely(strcmp("vlen", s + 1) == 0)) {
134
                    /* OSSL_CIPHER_PARAM_IVLEN */
135
2.08k
                    if (ossl_unlikely(r->ivlen != NULL)) {
136
0
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
137
0
                                       "param %s is repeated", s);
138
0
                        return 0;
139
0
                    }
140
2.08k
                    r->ivlen = (OSSL_PARAM *)p;
141
2.08k
                }
142
2.08k
                break;
143
2.08k
            case 'k':
144
2.08k
                if (ossl_likely(strcmp("eylen", s + 1) == 0)) {
145
                    /* OSSL_CIPHER_PARAM_KEYLEN */
146
2.08k
                    if (ossl_unlikely(r->keylen != NULL)) {
147
0
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
148
0
                                       "param %s is repeated", s);
149
0
                        return 0;
150
0
                    }
151
2.08k
                    r->keylen = (OSSL_PARAM *)p;
152
2.08k
                }
153
2.08k
                break;
154
2.08k
            case 'm':
155
2.08k
                if (ossl_likely(strcmp("ode", s + 1) == 0)) {
156
                    /* OSSL_CIPHER_PARAM_MODE */
157
2.08k
                    if (ossl_unlikely(r->mode != NULL)) {
158
0
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
159
0
                                       "param %s is repeated", s);
160
0
                        return 0;
161
0
                    }
162
2.08k
                    r->mode = (OSSL_PARAM *)p;
163
2.08k
                }
164
2.08k
                break;
165
2.08k
            case 't':
166
2.08k
                if (ossl_likely(strcmp("ls-multi", s + 1) == 0)) {
167
                    /* OSSL_CIPHER_PARAM_TLS1_MULTIBLOCK */
168
2.08k
                    if (ossl_unlikely(r->mb != NULL)) {
169
0
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
170
0
                                       "param %s is repeated", s);
171
0
                        return 0;
172
0
                    }
173
2.08k
                    r->mb = (OSSL_PARAM *)p;
174
2.08k
                }
175
20.8k
            }
176
2.08k
    return 1;
177
2.08k
}
178
#endif
179
/* End of machine generated */
180
181
/* Machine generated by util/perl/OpenSSL/paramnames.pm */
182
#include <string.h>
183
#include <openssl/params.h>
184
#include "internal/common.h"
185
#include "prov/proverr.h"
186
187
#ifndef cipher_generic_get_ctx_params_list
188
static const OSSL_PARAM cipher_generic_get_ctx_params_list[] = {
189
    OSSL_PARAM_size_t(OSSL_CIPHER_PARAM_KEYLEN, NULL),
190
    OSSL_PARAM_size_t(OSSL_CIPHER_PARAM_IVLEN, NULL),
191
    OSSL_PARAM_uint(OSSL_CIPHER_PARAM_PADDING, NULL),
192
    OSSL_PARAM_uint(OSSL_CIPHER_PARAM_NUM, NULL),
193
    OSSL_PARAM_octet_string(OSSL_CIPHER_PARAM_IV, NULL, 0),
194
    OSSL_PARAM_octet_string(OSSL_CIPHER_PARAM_UPDATED_IV, NULL, 0),
195
    OSSL_PARAM_octet_string(OSSL_CIPHER_PARAM_TLS_MAC, NULL, 0),
196
    OSSL_PARAM_END
197
};
198
#endif
199
200
#ifndef cipher_generic_get_ctx_params_st
201
struct cipher_generic_get_ctx_params_st {
202
    OSSL_PARAM *iv;
203
    OSSL_PARAM *ivlen;
204
    OSSL_PARAM *keylen;
205
    OSSL_PARAM *num;
206
    OSSL_PARAM *pad;
207
    OSSL_PARAM *tlsmac;
208
    OSSL_PARAM *updiv;
209
};
210
#endif
211
212
#ifndef cipher_generic_get_ctx_params_decoder
213
static int cipher_generic_get_ctx_params_decoder
214
    (const OSSL_PARAM *p, struct cipher_generic_get_ctx_params_st *r)
215
128
{
216
128
    const char *s;
217
218
128
    memset(r, 0, sizeof(*r));
219
128
    if (p != NULL)
220
256
        for (; (s = p->key) != NULL; p++)
221
128
            switch(s[0]) {
222
0
            default:
223
0
                break;
224
32
            case 'i':
225
32
                switch(s[1]) {
226
0
                default:
227
0
                    break;
228
32
                case 'v':
229
32
                    switch(s[2]) {
230
0
                    default:
231
0
                        break;
232
32
                    case 'l':
233
32
                        if (ossl_likely(strcmp("en", s + 3) == 0)) {
234
                            /* OSSL_CIPHER_PARAM_IVLEN */
235
32
                            if (ossl_unlikely(r->ivlen != NULL)) {
236
0
                                ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
237
0
                                               "param %s is repeated", s);
238
0
                                return 0;
239
0
                            }
240
32
                            r->ivlen = (OSSL_PARAM *)p;
241
32
                        }
242
32
                        break;
243
32
                    case '\0':
244
0
                        if (ossl_unlikely(r->iv != NULL)) {
245
0
                            ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
246
0
                                           "param %s is repeated", s);
247
0
                            return 0;
248
0
                        }
249
0
                        r->iv = (OSSL_PARAM *)p;
250
32
                    }
251
32
                }
252
32
                break;
253
96
            case 'k':
254
96
                if (ossl_likely(strcmp("eylen", s + 1) == 0)) {
255
                    /* OSSL_CIPHER_PARAM_KEYLEN */
256
96
                    if (ossl_unlikely(r->keylen != NULL)) {
257
0
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
258
0
                                       "param %s is repeated", s);
259
0
                        return 0;
260
0
                    }
261
96
                    r->keylen = (OSSL_PARAM *)p;
262
96
                }
263
96
                break;
264
96
            case 'n':
265
0
                if (ossl_likely(strcmp("um", s + 1) == 0)) {
266
                    /* OSSL_CIPHER_PARAM_NUM */
267
0
                    if (ossl_unlikely(r->num != NULL)) {
268
0
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
269
0
                                       "param %s is repeated", s);
270
0
                        return 0;
271
0
                    }
272
0
                    r->num = (OSSL_PARAM *)p;
273
0
                }
274
0
                break;
275
0
            case 'p':
276
0
                if (ossl_likely(strcmp("adding", s + 1) == 0)) {
277
                    /* OSSL_CIPHER_PARAM_PADDING */
278
0
                    if (ossl_unlikely(r->pad != NULL)) {
279
0
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
280
0
                                       "param %s is repeated", s);
281
0
                        return 0;
282
0
                    }
283
0
                    r->pad = (OSSL_PARAM *)p;
284
0
                }
285
0
                break;
286
0
            case 't':
287
0
                if (ossl_likely(strcmp("ls-mac", s + 1) == 0)) {
288
                    /* OSSL_CIPHER_PARAM_TLS_MAC */
289
0
                    if (ossl_unlikely(r->tlsmac != NULL)) {
290
0
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
291
0
                                       "param %s is repeated", s);
292
0
                        return 0;
293
0
                    }
294
0
                    r->tlsmac = (OSSL_PARAM *)p;
295
0
                }
296
0
                break;
297
0
            case 'u':
298
0
                if (ossl_likely(strcmp("pdated-iv", s + 1) == 0)) {
299
                    /* OSSL_CIPHER_PARAM_UPDATED_IV */
300
0
                    if (ossl_unlikely(r->updiv != NULL)) {
301
0
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
302
0
                                       "param %s is repeated", s);
303
0
                        return 0;
304
0
                    }
305
0
                    r->updiv = (OSSL_PARAM *)p;
306
0
                }
307
128
            }
308
128
    return 1;
309
128
}
310
#endif
311
/* End of machine generated */
312
313
/* Machine generated by util/perl/OpenSSL/paramnames.pm */
314
#include <string.h>
315
#include <openssl/params.h>
316
#include "internal/common.h"
317
#include "prov/proverr.h"
318
319
#ifndef cipher_generic_set_ctx_params_list
320
static const OSSL_PARAM cipher_generic_set_ctx_params_list[] = {
321
    OSSL_PARAM_uint(OSSL_CIPHER_PARAM_PADDING, NULL),
322
    OSSL_PARAM_uint(OSSL_CIPHER_PARAM_NUM, NULL),
323
    OSSL_PARAM_uint(OSSL_CIPHER_PARAM_USE_BITS, NULL),
324
    OSSL_PARAM_uint(OSSL_CIPHER_PARAM_TLS_VERSION, NULL),
325
    OSSL_PARAM_size_t(OSSL_CIPHER_PARAM_TLS_MAC_SIZE, NULL),
326
    OSSL_PARAM_END
327
};
328
#endif
329
330
#ifndef cipher_generic_set_ctx_params_st
331
struct cipher_generic_set_ctx_params_st {
332
    OSSL_PARAM *bits;
333
    OSSL_PARAM *num;
334
    OSSL_PARAM *pad;
335
    OSSL_PARAM *tlsmacsize;
336
    OSSL_PARAM *tlsvers;
337
};
338
#endif
339
340
#ifndef cipher_generic_set_ctx_params_decoder
341
static int cipher_generic_set_ctx_params_decoder
342
    (const OSSL_PARAM *p, struct cipher_generic_set_ctx_params_st *r)
343
0
{
344
0
    const char *s;
345
346
0
    memset(r, 0, sizeof(*r));
347
0
    if (p != NULL)
348
0
        for (; (s = p->key) != NULL; p++)
349
0
            switch(s[0]) {
350
0
            default:
351
0
                break;
352
0
            case 'n':
353
0
                if (ossl_likely(strcmp("um", s + 1) == 0)) {
354
                    /* OSSL_CIPHER_PARAM_NUM */
355
0
                    if (ossl_unlikely(r->num != NULL)) {
356
0
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
357
0
                                       "param %s is repeated", s);
358
0
                        return 0;
359
0
                    }
360
0
                    r->num = (OSSL_PARAM *)p;
361
0
                }
362
0
                break;
363
0
            case 'p':
364
0
                if (ossl_likely(strcmp("adding", s + 1) == 0)) {
365
                    /* OSSL_CIPHER_PARAM_PADDING */
366
0
                    if (ossl_unlikely(r->pad != NULL)) {
367
0
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
368
0
                                       "param %s is repeated", s);
369
0
                        return 0;
370
0
                    }
371
0
                    r->pad = (OSSL_PARAM *)p;
372
0
                }
373
0
                break;
374
0
            case 't':
375
0
                switch(s[1]) {
376
0
                default:
377
0
                    break;
378
0
                case 'l':
379
0
                    switch(s[2]) {
380
0
                    default:
381
0
                        break;
382
0
                    case 's':
383
0
                        switch(s[3]) {
384
0
                        default:
385
0
                            break;
386
0
                        case '-':
387
0
                            switch(s[4]) {
388
0
                            default:
389
0
                                break;
390
0
                            case 'm':
391
0
                                if (ossl_likely(strcmp("ac-size", s + 5) == 0)) {
392
                                    /* OSSL_CIPHER_PARAM_TLS_MAC_SIZE */
393
0
                                    if (ossl_unlikely(r->tlsmacsize != NULL)) {
394
0
                                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
395
0
                                                       "param %s is repeated", s);
396
0
                                        return 0;
397
0
                                    }
398
0
                                    r->tlsmacsize = (OSSL_PARAM *)p;
399
0
                                }
400
0
                                break;
401
0
                            case 'v':
402
0
                                if (ossl_likely(strcmp("ersion", s + 5) == 0)) {
403
                                    /* OSSL_CIPHER_PARAM_TLS_VERSION */
404
0
                                    if (ossl_unlikely(r->tlsvers != NULL)) {
405
0
                                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
406
0
                                                       "param %s is repeated", s);
407
0
                                        return 0;
408
0
                                    }
409
0
                                    r->tlsvers = (OSSL_PARAM *)p;
410
0
                                }
411
0
                            }
412
0
                        }
413
0
                    }
414
0
                }
415
0
                break;
416
0
            case 'u':
417
0
                if (ossl_likely(strcmp("se-bits", s + 1) == 0)) {
418
                    /* OSSL_CIPHER_PARAM_USE_BITS */
419
0
                    if (ossl_unlikely(r->bits != NULL)) {
420
0
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
421
0
                                       "param %s is repeated", s);
422
0
                        return 0;
423
0
                    }
424
0
                    r->bits = (OSSL_PARAM *)p;
425
0
                }
426
0
            }
427
0
    return 1;
428
0
}
429
#endif
430
/* End of machine generated */
431
432
/* Machine generated by util/perl/OpenSSL/paramnames.pm */
433
#include <string.h>
434
#include <openssl/params.h>
435
#include "internal/common.h"
436
#include "prov/proverr.h"
437
438
#ifndef cipher_var_keylen_set_ctx_params_list
439
static const OSSL_PARAM cipher_var_keylen_set_ctx_params_list[] = {
440
    OSSL_PARAM_uint(OSSL_CIPHER_PARAM_PADDING, NULL),
441
    OSSL_PARAM_uint(OSSL_CIPHER_PARAM_NUM, NULL),
442
    OSSL_PARAM_uint(OSSL_CIPHER_PARAM_USE_BITS, NULL),
443
    OSSL_PARAM_uint(OSSL_CIPHER_PARAM_TLS_VERSION, NULL),
444
    OSSL_PARAM_size_t(OSSL_CIPHER_PARAM_TLS_MAC_SIZE, NULL),
445
    OSSL_PARAM_size_t(OSSL_CIPHER_PARAM_KEYLEN, NULL),
446
    OSSL_PARAM_END
447
};
448
#endif
449
450
#ifndef cipher_var_keylen_set_ctx_params_st
451
struct cipher_var_keylen_set_ctx_params_st {
452
    OSSL_PARAM *bits;
453
    OSSL_PARAM *keylen;
454
    OSSL_PARAM *num;
455
    OSSL_PARAM *pad;
456
    OSSL_PARAM *tlsmacsize;
457
    OSSL_PARAM *tlsvers;
458
};
459
#endif
460
461
#ifndef cipher_var_keylen_set_ctx_params_decoder
462
static int cipher_var_keylen_set_ctx_params_decoder
463
    (const OSSL_PARAM *p, struct cipher_var_keylen_set_ctx_params_st *r)
464
0
{
465
0
    const char *s;
466
467
0
    memset(r, 0, sizeof(*r));
468
0
    if (p != NULL)
469
0
        for (; (s = p->key) != NULL; p++)
470
0
            switch(s[0]) {
471
0
            default:
472
0
                break;
473
0
            case 'k':
474
0
                if (ossl_likely(strcmp("eylen", s + 1) == 0)) {
475
                    /* OSSL_CIPHER_PARAM_KEYLEN */
476
0
                    if (ossl_unlikely(r->keylen != NULL)) {
477
0
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
478
0
                                       "param %s is repeated", s);
479
0
                        return 0;
480
0
                    }
481
0
                    r->keylen = (OSSL_PARAM *)p;
482
0
                }
483
0
                break;
484
0
            case 'n':
485
0
                if (ossl_likely(strcmp("um", s + 1) == 0)) {
486
                    /* OSSL_CIPHER_PARAM_NUM */
487
0
                    if (ossl_unlikely(r->num != NULL)) {
488
0
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
489
0
                                       "param %s is repeated", s);
490
0
                        return 0;
491
0
                    }
492
0
                    r->num = (OSSL_PARAM *)p;
493
0
                }
494
0
                break;
495
0
            case 'p':
496
0
                if (ossl_likely(strcmp("adding", s + 1) == 0)) {
497
                    /* OSSL_CIPHER_PARAM_PADDING */
498
0
                    if (ossl_unlikely(r->pad != NULL)) {
499
0
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
500
0
                                       "param %s is repeated", s);
501
0
                        return 0;
502
0
                    }
503
0
                    r->pad = (OSSL_PARAM *)p;
504
0
                }
505
0
                break;
506
0
            case 't':
507
0
                switch(s[1]) {
508
0
                default:
509
0
                    break;
510
0
                case 'l':
511
0
                    switch(s[2]) {
512
0
                    default:
513
0
                        break;
514
0
                    case 's':
515
0
                        switch(s[3]) {
516
0
                        default:
517
0
                            break;
518
0
                        case '-':
519
0
                            switch(s[4]) {
520
0
                            default:
521
0
                                break;
522
0
                            case 'm':
523
0
                                if (ossl_likely(strcmp("ac-size", s + 5) == 0)) {
524
                                    /* OSSL_CIPHER_PARAM_TLS_MAC_SIZE */
525
0
                                    if (ossl_unlikely(r->tlsmacsize != NULL)) {
526
0
                                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
527
0
                                                       "param %s is repeated", s);
528
0
                                        return 0;
529
0
                                    }
530
0
                                    r->tlsmacsize = (OSSL_PARAM *)p;
531
0
                                }
532
0
                                break;
533
0
                            case 'v':
534
0
                                if (ossl_likely(strcmp("ersion", s + 5) == 0)) {
535
                                    /* OSSL_CIPHER_PARAM_TLS_VERSION */
536
0
                                    if (ossl_unlikely(r->tlsvers != NULL)) {
537
0
                                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
538
0
                                                       "param %s is repeated", s);
539
0
                                        return 0;
540
0
                                    }
541
0
                                    r->tlsvers = (OSSL_PARAM *)p;
542
0
                                }
543
0
                            }
544
0
                        }
545
0
                    }
546
0
                }
547
0
                break;
548
0
            case 'u':
549
0
                if (ossl_likely(strcmp("se-bits", s + 1) == 0)) {
550
                    /* OSSL_CIPHER_PARAM_USE_BITS */
551
0
                    if (ossl_unlikely(r->bits != NULL)) {
552
0
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
553
0
                                       "param %s is repeated", s);
554
0
                        return 0;
555
0
                    }
556
0
                    r->bits = (OSSL_PARAM *)p;
557
0
                }
558
0
            }
559
0
    return 1;
560
0
}
561
#endif
562
/* End of machine generated */