Coverage Report

Created: 2026-05-20 07:05

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