Coverage Report

Created: 2025-10-28 06:56

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/openssl/providers/implementations/signature/rsa_sig.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
#ifndef rsa_get_ctx_params_list
14
static const OSSL_PARAM rsa_get_ctx_params_list[] = {
15
    OSSL_PARAM_octet_string(OSSL_SIGNATURE_PARAM_ALGORITHM_ID, NULL, 0),
16
    OSSL_PARAM_utf8_string(OSSL_SIGNATURE_PARAM_PAD_MODE, NULL, 0),
17
    OSSL_PARAM_int(OSSL_SIGNATURE_PARAM_PAD_MODE, NULL),
18
    OSSL_PARAM_utf8_string(OSSL_SIGNATURE_PARAM_DIGEST, NULL, 0),
19
    OSSL_PARAM_utf8_string(OSSL_SIGNATURE_PARAM_MGF1_DIGEST, NULL, 0),
20
    OSSL_PARAM_utf8_string(OSSL_SIGNATURE_PARAM_PSS_SALTLEN, NULL, 0),
21
    OSSL_PARAM_int(OSSL_SIGNATURE_PARAM_PSS_SALTLEN, NULL),
22
# if defined(FIPS_MODULE)
23
    OSSL_PARAM_uint(OSSL_SIGNATURE_PARAM_FIPS_VERIFY_MESSAGE, NULL),
24
# endif
25
# if defined(FIPS_MODULE)
26
    OSSL_PARAM_int(OSSL_SIGNATURE_PARAM_FIPS_APPROVED_INDICATOR, NULL),
27
# endif
28
    OSSL_PARAM_END
29
};
30
#endif
31
32
#ifndef rsa_get_ctx_params_st
33
struct rsa_get_ctx_params_st {
34
    OSSL_PARAM *algid;
35
    OSSL_PARAM *digest;
36
# if defined(FIPS_MODULE)
37
    OSSL_PARAM *ind;
38
# endif
39
    OSSL_PARAM *mgf1;
40
    OSSL_PARAM *pad;
41
    OSSL_PARAM *slen;
42
# if defined(FIPS_MODULE)
43
    OSSL_PARAM *verify;
44
# endif
45
};
46
#endif
47
48
#ifndef rsa_get_ctx_params_decoder
49
static int rsa_get_ctx_params_decoder
50
    (const OSSL_PARAM *p, struct rsa_get_ctx_params_st *r)
51
0
{
52
0
    const char *s;
53
54
0
    memset(r, 0, sizeof(*r));
55
0
    if (p != NULL)
56
0
        for (; (s = p->key) != NULL; p++)
57
0
            switch(s[0]) {
58
0
            default:
59
0
                break;
60
0
            case 'a':
61
0
                if (ossl_likely(strcmp("lgorithm-id", s + 1) == 0)) {
62
                    /* OSSL_SIGNATURE_PARAM_ALGORITHM_ID */
63
0
                    if (ossl_unlikely(r->algid != NULL)) {
64
0
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
65
0
                                       "param %s is repeated", s);
66
0
                        return 0;
67
0
                    }
68
0
                    r->algid = (OSSL_PARAM *)p;
69
0
                }
70
0
                break;
71
0
            case 'd':
72
0
                if (ossl_likely(strcmp("igest", s + 1) == 0)) {
73
                    /* OSSL_SIGNATURE_PARAM_DIGEST */
74
0
                    if (ossl_unlikely(r->digest != NULL)) {
75
0
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
76
0
                                       "param %s is repeated", s);
77
0
                        return 0;
78
0
                    }
79
0
                    r->digest = (OSSL_PARAM *)p;
80
0
                }
81
0
                break;
82
0
            case 'f':
83
# if defined(FIPS_MODULE)
84
                if (ossl_likely(strcmp("ips-indicator", s + 1) == 0)) {
85
                    /* OSSL_SIGNATURE_PARAM_FIPS_APPROVED_INDICATOR */
86
                    if (ossl_unlikely(r->ind != NULL)) {
87
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
88
                                       "param %s is repeated", s);
89
                        return 0;
90
                    }
91
                    r->ind = (OSSL_PARAM *)p;
92
                }
93
# endif
94
0
                break;
95
0
            case 'm':
96
0
                if (ossl_likely(strcmp("gf1-digest", s + 1) == 0)) {
97
                    /* OSSL_SIGNATURE_PARAM_MGF1_DIGEST */
98
0
                    if (ossl_unlikely(r->mgf1 != NULL)) {
99
0
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
100
0
                                       "param %s is repeated", s);
101
0
                        return 0;
102
0
                    }
103
0
                    r->mgf1 = (OSSL_PARAM *)p;
104
0
                }
105
0
                break;
106
0
            case 'p':
107
0
                if (ossl_likely(strcmp("ad-mode", s + 1) == 0)) {
108
                    /* OSSL_SIGNATURE_PARAM_PAD_MODE */
109
0
                    if (ossl_unlikely(r->pad != NULL)) {
110
0
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
111
0
                                       "param %s is repeated", s);
112
0
                        return 0;
113
0
                    }
114
0
                    r->pad = (OSSL_PARAM *)p;
115
0
                }
116
0
                break;
117
0
            case 's':
118
0
                if (ossl_likely(strcmp("altlen", s + 1) == 0)) {
119
                    /* OSSL_SIGNATURE_PARAM_PSS_SALTLEN */
120
0
                    if (ossl_unlikely(r->slen != NULL)) {
121
0
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
122
0
                                       "param %s is repeated", s);
123
0
                        return 0;
124
0
                    }
125
0
                    r->slen = (OSSL_PARAM *)p;
126
0
                }
127
0
                break;
128
0
            case 'v':
129
# if defined(FIPS_MODULE)
130
                if (ossl_likely(strcmp("erify-message", s + 1) == 0)) {
131
                    /* OSSL_SIGNATURE_PARAM_FIPS_VERIFY_MESSAGE */
132
                    if (ossl_unlikely(r->verify != NULL)) {
133
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
134
                                       "param %s is repeated", s);
135
                        return 0;
136
                    }
137
                    r->verify = (OSSL_PARAM *)p;
138
                }
139
# endif
140
0
                break;
141
0
            }
142
0
    return 1;
143
0
}
144
#endif
145
/* End of machine generated */
146
147
/* Machine generated by util/perl/OpenSSL/paramnames.pm */
148
#ifndef rsa_set_ctx_params_list
149
static const OSSL_PARAM rsa_set_ctx_params_list[] = {
150
    OSSL_PARAM_utf8_string(OSSL_SIGNATURE_PARAM_DIGEST, NULL, 0),
151
    OSSL_PARAM_utf8_string(OSSL_SIGNATURE_PARAM_PROPERTIES, NULL, 0),
152
    OSSL_PARAM_utf8_string(OSSL_SIGNATURE_PARAM_PAD_MODE, NULL, 0),
153
    OSSL_PARAM_int(OSSL_SIGNATURE_PARAM_PAD_MODE, NULL),
154
    OSSL_PARAM_utf8_string(OSSL_SIGNATURE_PARAM_MGF1_DIGEST, NULL, 0),
155
    OSSL_PARAM_utf8_string(OSSL_SIGNATURE_PARAM_MGF1_PROPERTIES, NULL, 0),
156
    OSSL_PARAM_utf8_string(OSSL_SIGNATURE_PARAM_PSS_SALTLEN, NULL, 0),
157
    OSSL_PARAM_int(OSSL_SIGNATURE_PARAM_PSS_SALTLEN, NULL),
158
# if defined(FIPS_MODULE)
159
    OSSL_PARAM_int(OSSL_SIGNATURE_PARAM_FIPS_KEY_CHECK, NULL),
160
# endif
161
# if defined(FIPS_MODULE)
162
    OSSL_PARAM_int(OSSL_SIGNATURE_PARAM_FIPS_DIGEST_CHECK, NULL),
163
# endif
164
# if defined(FIPS_MODULE)
165
    OSSL_PARAM_int(OSSL_SIGNATURE_PARAM_FIPS_RSA_PSS_SALTLEN_CHECK, NULL),
166
# endif
167
# if defined(FIPS_MODULE)
168
    OSSL_PARAM_int(OSSL_SIGNATURE_PARAM_FIPS_SIGN_X931_PAD_CHECK, NULL),
169
# endif
170
    OSSL_PARAM_END
171
};
172
#endif
173
174
#ifndef rsa_set_ctx_params_st
175
struct rsa_set_ctx_params_st {
176
    OSSL_PARAM *digest;
177
# if defined(FIPS_MODULE)
178
    OSSL_PARAM *ind_d;
179
# endif
180
# if defined(FIPS_MODULE)
181
    OSSL_PARAM *ind_k;
182
# endif
183
# if defined(FIPS_MODULE)
184
    OSSL_PARAM *ind_slen;
185
# endif
186
# if defined(FIPS_MODULE)
187
    OSSL_PARAM *ind_xpad;
188
# endif
189
    OSSL_PARAM *mgf1;
190
    OSSL_PARAM *mgf1pq;
191
    OSSL_PARAM *pad;
192
    OSSL_PARAM *propq;
193
    OSSL_PARAM *slen;
194
};
195
#endif
196
197
#ifndef rsa_set_ctx_params_decoder
198
static int rsa_set_ctx_params_decoder
199
    (const OSSL_PARAM *p, struct rsa_set_ctx_params_st *r)
200
0
{
201
0
    const char *s;
202
203
0
    memset(r, 0, sizeof(*r));
204
0
    if (p != NULL)
205
0
        for (; (s = p->key) != NULL; p++)
206
0
            switch(s[0]) {
207
0
            default:
208
0
                break;
209
0
            case 'd':
210
0
                switch(s[1]) {
211
0
                default:
212
0
                    break;
213
0
                case 'i':
214
0
                    switch(s[2]) {
215
0
                    default:
216
0
                        break;
217
0
                    case 'g':
218
0
                        switch(s[3]) {
219
0
                        default:
220
0
                            break;
221
0
                        case 'e':
222
0
                            switch(s[4]) {
223
0
                            default:
224
0
                                break;
225
0
                            case 's':
226
0
                                switch(s[5]) {
227
0
                                default:
228
0
                                    break;
229
0
                                case 't':
230
0
                                    switch(s[6]) {
231
0
                                    default:
232
0
                                        break;
233
0
                                    case '-':
234
# if defined(FIPS_MODULE)
235
                                        if (ossl_likely(strcmp("check", s + 7) == 0)) {
236
                                            /* OSSL_SIGNATURE_PARAM_FIPS_DIGEST_CHECK */
237
                                            if (ossl_unlikely(r->ind_d != NULL)) {
238
                                                ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
239
                                                               "param %s is repeated", s);
240
                                                return 0;
241
                                            }
242
                                            r->ind_d = (OSSL_PARAM *)p;
243
                                        }
244
# endif
245
0
                                        break;
246
0
                                    case '\0':
247
0
                                        if (ossl_unlikely(r->digest != NULL)) {
248
0
                                            ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
249
0
                                                           "param %s is repeated", s);
250
0
                                            return 0;
251
0
                                        }
252
0
                                        r->digest = (OSSL_PARAM *)p;
253
0
                                    }
254
0
                                }
255
0
                            }
256
0
                        }
257
0
                    }
258
0
                }
259
0
                break;
260
0
            case 'k':
261
# if defined(FIPS_MODULE)
262
                if (ossl_likely(strcmp("ey-check", s + 1) == 0)) {
263
                    /* OSSL_SIGNATURE_PARAM_FIPS_KEY_CHECK */
264
                    if (ossl_unlikely(r->ind_k != NULL)) {
265
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
266
                                       "param %s is repeated", s);
267
                        return 0;
268
                    }
269
                    r->ind_k = (OSSL_PARAM *)p;
270
                }
271
# endif
272
0
                break;
273
0
            case 'm':
274
0
                switch(s[1]) {
275
0
                default:
276
0
                    break;
277
0
                case 'g':
278
0
                    switch(s[2]) {
279
0
                    default:
280
0
                        break;
281
0
                    case 'f':
282
0
                        switch(s[3]) {
283
0
                        default:
284
0
                            break;
285
0
                        case '1':
286
0
                            switch(s[4]) {
287
0
                            default:
288
0
                                break;
289
0
                            case '-':
290
0
                                switch(s[5]) {
291
0
                                default:
292
0
                                    break;
293
0
                                case 'd':
294
0
                                    if (ossl_likely(strcmp("igest", s + 6) == 0)) {
295
                                        /* OSSL_SIGNATURE_PARAM_MGF1_DIGEST */
296
0
                                        if (ossl_unlikely(r->mgf1 != NULL)) {
297
0
                                            ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
298
0
                                                           "param %s is repeated", s);
299
0
                                            return 0;
300
0
                                        }
301
0
                                        r->mgf1 = (OSSL_PARAM *)p;
302
0
                                    }
303
0
                                    break;
304
0
                                case 'p':
305
0
                                    if (ossl_likely(strcmp("roperties", s + 6) == 0)) {
306
                                        /* OSSL_SIGNATURE_PARAM_MGF1_PROPERTIES */
307
0
                                        if (ossl_unlikely(r->mgf1pq != NULL)) {
308
0
                                            ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
309
0
                                                           "param %s is repeated", s);
310
0
                                            return 0;
311
0
                                        }
312
0
                                        r->mgf1pq = (OSSL_PARAM *)p;
313
0
                                    }
314
0
                                }
315
0
                            }
316
0
                        }
317
0
                    }
318
0
                }
319
0
                break;
320
0
            case 'p':
321
0
                switch(s[1]) {
322
0
                default:
323
0
                    break;
324
0
                case 'a':
325
0
                    if (ossl_likely(strcmp("d-mode", s + 2) == 0)) {
326
                        /* OSSL_SIGNATURE_PARAM_PAD_MODE */
327
0
                        if (ossl_unlikely(r->pad != NULL)) {
328
0
                            ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
329
0
                                           "param %s is repeated", s);
330
0
                            return 0;
331
0
                        }
332
0
                        r->pad = (OSSL_PARAM *)p;
333
0
                    }
334
0
                    break;
335
0
                case 'r':
336
0
                    if (ossl_likely(strcmp("operties", s + 2) == 0)) {
337
                        /* OSSL_SIGNATURE_PARAM_PROPERTIES */
338
0
                        if (ossl_unlikely(r->propq != NULL)) {
339
0
                            ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
340
0
                                           "param %s is repeated", s);
341
0
                            return 0;
342
0
                        }
343
0
                        r->propq = (OSSL_PARAM *)p;
344
0
                    }
345
0
                }
346
0
                break;
347
0
            case 'r':
348
# if defined(FIPS_MODULE)
349
                if (ossl_likely(strcmp("sa-pss-saltlen-check", s + 1) == 0)) {
350
                    /* OSSL_SIGNATURE_PARAM_FIPS_RSA_PSS_SALTLEN_CHECK */
351
                    if (ossl_unlikely(r->ind_slen != NULL)) {
352
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
353
                                       "param %s is repeated", s);
354
                        return 0;
355
                    }
356
                    r->ind_slen = (OSSL_PARAM *)p;
357
                }
358
# endif
359
0
                break;
360
0
            case 's':
361
0
                switch(s[1]) {
362
0
                default:
363
0
                    break;
364
0
                case 'a':
365
0
                    if (ossl_likely(strcmp("ltlen", s + 2) == 0)) {
366
                        /* OSSL_SIGNATURE_PARAM_PSS_SALTLEN */
367
0
                        if (ossl_unlikely(r->slen != NULL)) {
368
0
                            ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
369
0
                                           "param %s is repeated", s);
370
0
                            return 0;
371
0
                        }
372
0
                        r->slen = (OSSL_PARAM *)p;
373
0
                    }
374
0
                    break;
375
0
                case 'i':
376
# if defined(FIPS_MODULE)
377
                    if (ossl_likely(strcmp("gn-x931-pad-check", s + 2) == 0)) {
378
                        /* OSSL_SIGNATURE_PARAM_FIPS_SIGN_X931_PAD_CHECK */
379
                        if (ossl_unlikely(r->ind_xpad != NULL)) {
380
                            ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
381
                                           "param %s is repeated", s);
382
                            return 0;
383
                        }
384
                        r->ind_xpad = (OSSL_PARAM *)p;
385
                    }
386
# endif
387
0
                    break;
388
0
                }
389
0
                break;
390
0
            }
391
0
    return 1;
392
0
}
393
#endif
394
/* End of machine generated */
395
396
/* Machine generated by util/perl/OpenSSL/paramnames.pm */
397
#ifndef rsa_set_ctx_params_no_digest_list
398
static const OSSL_PARAM rsa_set_ctx_params_no_digest_list[] = {
399
    OSSL_PARAM_utf8_string(OSSL_SIGNATURE_PARAM_PAD_MODE, NULL, 0),
400
    OSSL_PARAM_int(OSSL_SIGNATURE_PARAM_PAD_MODE, NULL),
401
    OSSL_PARAM_utf8_string(OSSL_SIGNATURE_PARAM_MGF1_DIGEST, NULL, 0),
402
    OSSL_PARAM_utf8_string(OSSL_SIGNATURE_PARAM_MGF1_PROPERTIES, NULL, 0),
403
    OSSL_PARAM_utf8_string(OSSL_SIGNATURE_PARAM_PSS_SALTLEN, NULL, 0),
404
    OSSL_PARAM_int(OSSL_SIGNATURE_PARAM_PSS_SALTLEN, NULL),
405
# if defined(FIPS_MODULE)
406
    OSSL_PARAM_int(OSSL_SIGNATURE_PARAM_FIPS_KEY_CHECK, NULL),
407
# endif
408
# if defined(FIPS_MODULE)
409
    OSSL_PARAM_int(OSSL_SIGNATURE_PARAM_FIPS_DIGEST_CHECK, NULL),
410
# endif
411
# if defined(FIPS_MODULE)
412
    OSSL_PARAM_int(OSSL_SIGNATURE_PARAM_FIPS_RSA_PSS_SALTLEN_CHECK, NULL),
413
# endif
414
# if defined(FIPS_MODULE)
415
    OSSL_PARAM_int(OSSL_SIGNATURE_PARAM_FIPS_SIGN_X931_PAD_CHECK, NULL),
416
# endif
417
    OSSL_PARAM_END
418
};
419
#endif
420
421
#ifndef rsa_set_ctx_params_no_digest_st
422
struct rsa_set_ctx_params_no_digest_st {
423
# if defined(FIPS_MODULE)
424
    OSSL_PARAM *ind_d;
425
# endif
426
# if defined(FIPS_MODULE)
427
    OSSL_PARAM *ind_k;
428
# endif
429
# if defined(FIPS_MODULE)
430
    OSSL_PARAM *ind_slen;
431
# endif
432
# if defined(FIPS_MODULE)
433
    OSSL_PARAM *ind_xpad;
434
# endif
435
    OSSL_PARAM *mgf1;
436
    OSSL_PARAM *mgf1pq;
437
    OSSL_PARAM *pad;
438
    OSSL_PARAM *slen;
439
};
440
#endif
441
442
#ifndef rsa_set_ctx_params_no_digest_decoder
443
static int rsa_set_ctx_params_no_digest_decoder
444
    (const OSSL_PARAM *p, struct rsa_set_ctx_params_no_digest_st *r)
445
0
{
446
0
    const char *s;
447
448
0
    memset(r, 0, sizeof(*r));
449
0
    if (p != NULL)
450
0
        for (; (s = p->key) != NULL; p++)
451
0
            switch(s[0]) {
452
0
            default:
453
0
                break;
454
0
            case 'd':
455
# if defined(FIPS_MODULE)
456
                if (ossl_likely(strcmp("igest-check", s + 1) == 0)) {
457
                    /* OSSL_SIGNATURE_PARAM_FIPS_DIGEST_CHECK */
458
                    if (ossl_unlikely(r->ind_d != NULL)) {
459
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
460
                                       "param %s is repeated", s);
461
                        return 0;
462
                    }
463
                    r->ind_d = (OSSL_PARAM *)p;
464
                }
465
# endif
466
0
                break;
467
0
            case 'k':
468
# if defined(FIPS_MODULE)
469
                if (ossl_likely(strcmp("ey-check", s + 1) == 0)) {
470
                    /* OSSL_SIGNATURE_PARAM_FIPS_KEY_CHECK */
471
                    if (ossl_unlikely(r->ind_k != NULL)) {
472
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
473
                                       "param %s is repeated", s);
474
                        return 0;
475
                    }
476
                    r->ind_k = (OSSL_PARAM *)p;
477
                }
478
# endif
479
0
                break;
480
0
            case 'm':
481
0
                switch(s[1]) {
482
0
                default:
483
0
                    break;
484
0
                case 'g':
485
0
                    switch(s[2]) {
486
0
                    default:
487
0
                        break;
488
0
                    case 'f':
489
0
                        switch(s[3]) {
490
0
                        default:
491
0
                            break;
492
0
                        case '1':
493
0
                            switch(s[4]) {
494
0
                            default:
495
0
                                break;
496
0
                            case '-':
497
0
                                switch(s[5]) {
498
0
                                default:
499
0
                                    break;
500
0
                                case 'd':
501
0
                                    if (ossl_likely(strcmp("igest", s + 6) == 0)) {
502
                                        /* OSSL_SIGNATURE_PARAM_MGF1_DIGEST */
503
0
                                        if (ossl_unlikely(r->mgf1 != NULL)) {
504
0
                                            ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
505
0
                                                           "param %s is repeated", s);
506
0
                                            return 0;
507
0
                                        }
508
0
                                        r->mgf1 = (OSSL_PARAM *)p;
509
0
                                    }
510
0
                                    break;
511
0
                                case 'p':
512
0
                                    if (ossl_likely(strcmp("roperties", s + 6) == 0)) {
513
                                        /* OSSL_SIGNATURE_PARAM_MGF1_PROPERTIES */
514
0
                                        if (ossl_unlikely(r->mgf1pq != NULL)) {
515
0
                                            ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
516
0
                                                           "param %s is repeated", s);
517
0
                                            return 0;
518
0
                                        }
519
0
                                        r->mgf1pq = (OSSL_PARAM *)p;
520
0
                                    }
521
0
                                }
522
0
                            }
523
0
                        }
524
0
                    }
525
0
                }
526
0
                break;
527
0
            case 'p':
528
0
                if (ossl_likely(strcmp("ad-mode", s + 1) == 0)) {
529
                    /* OSSL_SIGNATURE_PARAM_PAD_MODE */
530
0
                    if (ossl_unlikely(r->pad != NULL)) {
531
0
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
532
0
                                       "param %s is repeated", s);
533
0
                        return 0;
534
0
                    }
535
0
                    r->pad = (OSSL_PARAM *)p;
536
0
                }
537
0
                break;
538
0
            case 'r':
539
# if defined(FIPS_MODULE)
540
                if (ossl_likely(strcmp("sa-pss-saltlen-check", s + 1) == 0)) {
541
                    /* OSSL_SIGNATURE_PARAM_FIPS_RSA_PSS_SALTLEN_CHECK */
542
                    if (ossl_unlikely(r->ind_slen != NULL)) {
543
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
544
                                       "param %s is repeated", s);
545
                        return 0;
546
                    }
547
                    r->ind_slen = (OSSL_PARAM *)p;
548
                }
549
# endif
550
0
                break;
551
0
            case 's':
552
0
                switch(s[1]) {
553
0
                default:
554
0
                    break;
555
0
                case 'a':
556
0
                    if (ossl_likely(strcmp("ltlen", s + 2) == 0)) {
557
                        /* OSSL_SIGNATURE_PARAM_PSS_SALTLEN */
558
0
                        if (ossl_unlikely(r->slen != NULL)) {
559
0
                            ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
560
0
                                           "param %s is repeated", s);
561
0
                            return 0;
562
0
                        }
563
0
                        r->slen = (OSSL_PARAM *)p;
564
0
                    }
565
0
                    break;
566
0
                case 'i':
567
# if defined(FIPS_MODULE)
568
                    if (ossl_likely(strcmp("gn-x931-pad-check", s + 2) == 0)) {
569
                        /* OSSL_SIGNATURE_PARAM_FIPS_SIGN_X931_PAD_CHECK */
570
                        if (ossl_unlikely(r->ind_xpad != NULL)) {
571
                            ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
572
                                           "param %s is repeated", s);
573
                            return 0;
574
                        }
575
                        r->ind_xpad = (OSSL_PARAM *)p;
576
                    }
577
# endif
578
0
                    break;
579
0
                }
580
0
                break;
581
0
            }
582
0
    return 1;
583
0
}
584
#endif
585
/* End of machine generated */
586
587
/* Machine generated by util/perl/OpenSSL/paramnames.pm */
588
#ifndef rsa_sigalg_set_ctx_params_list
589
static const OSSL_PARAM rsa_sigalg_set_ctx_params_list[] = {
590
    OSSL_PARAM_octet_string(OSSL_SIGNATURE_PARAM_SIGNATURE, NULL, 0),
591
    OSSL_PARAM_END
592
};
593
#endif
594
595
#ifndef rsa_sigalg_set_ctx_params_st
596
struct rsa_sigalg_set_ctx_params_st {
597
    OSSL_PARAM *sig;
598
};
599
#endif
600
601
#ifndef rsa_sigalg_set_ctx_params_decoder
602
static int rsa_sigalg_set_ctx_params_decoder
603
    (const OSSL_PARAM *p, struct rsa_sigalg_set_ctx_params_st *r)
604
0
{
605
0
    const char *s;
606
607
0
    memset(r, 0, sizeof(*r));
608
0
    if (p != NULL)
609
0
        for (; (s = p->key) != NULL; p++)
610
0
            if (ossl_likely(strcmp("signature", s + 0) == 0)) {
611
                /* OSSL_SIGNATURE_PARAM_SIGNATURE */
612
0
                if (ossl_unlikely(r->sig != NULL)) {
613
0
                    ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
614
0
                                   "param %s is repeated", s);
615
0
                    return 0;
616
0
                }
617
0
                r->sig = (OSSL_PARAM *)p;
618
0
            }
619
0
    return 1;
620
0
}
621
#endif
622
/* End of machine generated */