Coverage Report

Created: 2026-05-20 07:05

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/openssl/providers/implementations/keymgmt/ecx_kmgmt.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 ecx_imexport_types_list
19
static const OSSL_PARAM ecx_imexport_types_list[] = {
20
    OSSL_PARAM_octet_string(OSSL_PKEY_PARAM_PUB_KEY, NULL, 0),
21
    OSSL_PARAM_octet_string(OSSL_PKEY_PARAM_PRIV_KEY, NULL, 0),
22
    OSSL_PARAM_END
23
};
24
#endif
25
26
#ifndef ecx_imexport_types_st
27
struct ecx_imexport_types_st {
28
    OSSL_PARAM *priv;
29
    OSSL_PARAM *pub;
30
};
31
#endif
32
33
#ifndef ecx_imexport_types_decoder
34
static int ecx_imexport_types_decoder
35
    (const OSSL_PARAM *p, struct ecx_imexport_types_st *r)
36
0
{
37
0
    const char *s;
38
39
0
    memset(r, 0, sizeof(*r));
40
0
    if (p != NULL)
41
0
        for (; (s = p->key) != NULL; p++)
42
0
            switch(s[0]) {
43
0
            default:
44
0
                break;
45
0
            case 'p':
46
0
                switch(s[1]) {
47
0
                default:
48
0
                    break;
49
0
                case 'r':
50
0
                    if (ossl_likely(strcmp("iv", s + 2) == 0)) {
51
                        /* OSSL_PKEY_PARAM_PRIV_KEY */
52
0
                        if (ossl_unlikely(r->priv != NULL)) {
53
0
                            ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
54
0
                                           "param %s is repeated", s);
55
0
                            return 0;
56
0
                        }
57
0
                        r->priv = (OSSL_PARAM *)p;
58
0
                    }
59
0
                    break;
60
0
                case 'u':
61
0
                    if (ossl_likely(strcmp("b", s + 2) == 0)) {
62
                        /* OSSL_PKEY_PARAM_PUB_KEY */
63
0
                        if (ossl_unlikely(r->pub != 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->pub = (OSSL_PARAM *)p;
69
0
                    }
70
0
                }
71
0
            }
72
0
    return 1;
73
0
}
74
#endif
75
/* End of machine generated */
76
77
/* Machine generated by util/perl/OpenSSL/paramnames.pm */
78
#include <string.h>
79
#include <openssl/params.h>
80
#include "internal/common.h"
81
#include "prov/proverr.h"
82
83
#ifndef ecx_get_params_list
84
static const OSSL_PARAM ecx_get_params_list[] = {
85
    OSSL_PARAM_int(OSSL_PKEY_PARAM_BITS, NULL),
86
    OSSL_PARAM_int(OSSL_PKEY_PARAM_SECURITY_BITS, NULL),
87
    OSSL_PARAM_int(OSSL_PKEY_PARAM_MAX_SIZE, NULL),
88
    OSSL_PARAM_int(OSSL_PKEY_PARAM_SECURITY_CATEGORY, NULL),
89
    OSSL_PARAM_octet_string(OSSL_PKEY_PARAM_PUB_KEY, NULL, 0),
90
    OSSL_PARAM_octet_string(OSSL_PKEY_PARAM_PRIV_KEY, NULL, 0),
91
    OSSL_PARAM_octet_string(OSSL_PKEY_PARAM_ENCODED_PUBLIC_KEY, NULL, 0),
92
# if defined(FIPS_MODULE)
93
    OSSL_PARAM_int(OSSL_PKEY_PARAM_FIPS_APPROVED_INDICATOR, NULL),
94
# endif
95
    OSSL_PARAM_END
96
};
97
#endif
98
99
#ifndef ecx_get_params_st
100
struct ecx_get_params_st {
101
    OSSL_PARAM *bits;
102
    OSSL_PARAM *encpub;
103
# if defined(FIPS_MODULE)
104
    OSSL_PARAM *ind;
105
# endif
106
    OSSL_PARAM *priv;
107
    OSSL_PARAM *pub;
108
    OSSL_PARAM *secbits;
109
    OSSL_PARAM *seccat;
110
    OSSL_PARAM *size;
111
};
112
#endif
113
114
#ifndef ecx_get_params_decoder
115
static int ecx_get_params_decoder
116
    (const OSSL_PARAM *p, struct ecx_get_params_st *r)
117
0
{
118
0
    const char *s;
119
120
0
    memset(r, 0, sizeof(*r));
121
0
    if (p != NULL)
122
0
        for (; (s = p->key) != NULL; p++)
123
0
            switch(s[0]) {
124
0
            default:
125
0
                break;
126
0
            case 'b':
127
0
                if (ossl_likely(strcmp("its", s + 1) == 0)) {
128
                    /* OSSL_PKEY_PARAM_BITS */
129
0
                    if (ossl_unlikely(r->bits != NULL)) {
130
0
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
131
0
                                       "param %s is repeated", s);
132
0
                        return 0;
133
0
                    }
134
0
                    r->bits = (OSSL_PARAM *)p;
135
0
                }
136
0
                break;
137
0
            case 'e':
138
0
                if (ossl_likely(strcmp("ncoded-pub-key", s + 1) == 0)) {
139
                    /* OSSL_PKEY_PARAM_ENCODED_PUBLIC_KEY */
140
0
                    if (ossl_unlikely(r->encpub != NULL)) {
141
0
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
142
0
                                       "param %s is repeated", s);
143
0
                        return 0;
144
0
                    }
145
0
                    r->encpub = (OSSL_PARAM *)p;
146
0
                }
147
0
                break;
148
0
            case 'f':
149
# if defined(FIPS_MODULE)
150
                if (ossl_likely(strcmp("ips-indicator", s + 1) == 0)) {
151
                    /* OSSL_PKEY_PARAM_FIPS_APPROVED_INDICATOR */
152
                    if (ossl_unlikely(r->ind != NULL)) {
153
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
154
                                       "param %s is repeated", s);
155
                        return 0;
156
                    }
157
                    r->ind = (OSSL_PARAM *)p;
158
                }
159
# endif
160
0
                break;
161
0
            case 'm':
162
0
                if (ossl_likely(strcmp("ax-size", s + 1) == 0)) {
163
                    /* OSSL_PKEY_PARAM_MAX_SIZE */
164
0
                    if (ossl_unlikely(r->size != NULL)) {
165
0
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
166
0
                                       "param %s is repeated", s);
167
0
                        return 0;
168
0
                    }
169
0
                    r->size = (OSSL_PARAM *)p;
170
0
                }
171
0
                break;
172
0
            case 'p':
173
0
                switch(s[1]) {
174
0
                default:
175
0
                    break;
176
0
                case 'r':
177
0
                    if (ossl_likely(strcmp("iv", s + 2) == 0)) {
178
                        /* OSSL_PKEY_PARAM_PRIV_KEY */
179
0
                        if (ossl_unlikely(r->priv != NULL)) {
180
0
                            ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
181
0
                                           "param %s is repeated", s);
182
0
                            return 0;
183
0
                        }
184
0
                        r->priv = (OSSL_PARAM *)p;
185
0
                    }
186
0
                    break;
187
0
                case 'u':
188
0
                    if (ossl_likely(strcmp("b", s + 2) == 0)) {
189
                        /* OSSL_PKEY_PARAM_PUB_KEY */
190
0
                        if (ossl_unlikely(r->pub != NULL)) {
191
0
                            ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
192
0
                                           "param %s is repeated", s);
193
0
                            return 0;
194
0
                        }
195
0
                        r->pub = (OSSL_PARAM *)p;
196
0
                    }
197
0
                }
198
0
                break;
199
0
            case 's':
200
0
                switch(s[1]) {
201
0
                default:
202
0
                    break;
203
0
                case 'e':
204
0
                    switch(s[2]) {
205
0
                    default:
206
0
                        break;
207
0
                    case 'c':
208
0
                        switch(s[3]) {
209
0
                        default:
210
0
                            break;
211
0
                        case 'u':
212
0
                            switch(s[4]) {
213
0
                            default:
214
0
                                break;
215
0
                            case 'r':
216
0
                                switch(s[5]) {
217
0
                                default:
218
0
                                    break;
219
0
                                case 'i':
220
0
                                    switch(s[6]) {
221
0
                                    default:
222
0
                                        break;
223
0
                                    case 't':
224
0
                                        switch(s[7]) {
225
0
                                        default:
226
0
                                            break;
227
0
                                        case 'y':
228
0
                                            switch(s[8]) {
229
0
                                            default:
230
0
                                                break;
231
0
                                            case '-':
232
0
                                                switch(s[9]) {
233
0
                                                default:
234
0
                                                    break;
235
0
                                                case 'b':
236
0
                                                    if (ossl_likely(strcmp("its", s + 10) == 0)) {
237
                                                        /* OSSL_PKEY_PARAM_SECURITY_BITS */
238
0
                                                        if (ossl_unlikely(r->secbits != NULL)) {
239
0
                                                            ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
240
0
                                                                           "param %s is repeated", s);
241
0
                                                            return 0;
242
0
                                                        }
243
0
                                                        r->secbits = (OSSL_PARAM *)p;
244
0
                                                    }
245
0
                                                    break;
246
0
                                                case 'c':
247
0
                                                    if (ossl_likely(strcmp("ategory", s + 10) == 0)) {
248
                                                        /* OSSL_PKEY_PARAM_SECURITY_CATEGORY */
249
0
                                                        if (ossl_unlikely(r->seccat != NULL)) {
250
0
                                                            ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
251
0
                                                                           "param %s is repeated", s);
252
0
                                                            return 0;
253
0
                                                        }
254
0
                                                        r->seccat = (OSSL_PARAM *)p;
255
0
                                                    }
256
0
                                                }
257
0
                                            }
258
0
                                        }
259
0
                                    }
260
0
                                }
261
0
                            }
262
0
                        }
263
0
                    }
264
0
                }
265
0
            }
266
0
    return 1;
267
0
}
268
#endif
269
/* End of machine generated */
270
271
/* Machine generated by util/perl/OpenSSL/paramnames.pm */
272
#include <string.h>
273
#include <openssl/params.h>
274
#include "internal/common.h"
275
#include "prov/proverr.h"
276
277
#ifndef ed_get_params_list
278
static const OSSL_PARAM ed_get_params_list[] = {
279
    OSSL_PARAM_int(OSSL_PKEY_PARAM_BITS, NULL),
280
    OSSL_PARAM_int(OSSL_PKEY_PARAM_SECURITY_BITS, NULL),
281
    OSSL_PARAM_int(OSSL_PKEY_PARAM_MAX_SIZE, NULL),
282
    OSSL_PARAM_int(OSSL_PKEY_PARAM_SECURITY_CATEGORY, NULL),
283
    OSSL_PARAM_octet_string(OSSL_PKEY_PARAM_PUB_KEY, NULL, 0),
284
    OSSL_PARAM_octet_string(OSSL_PKEY_PARAM_PRIV_KEY, NULL, 0),
285
    OSSL_PARAM_utf8_string(OSSL_PKEY_PARAM_MANDATORY_DIGEST, NULL, 0),
286
    OSSL_PARAM_END
287
};
288
#endif
289
290
#ifndef ed_get_params_st
291
struct ed_get_params_st {
292
    OSSL_PARAM *bits;
293
    OSSL_PARAM *digest;
294
    OSSL_PARAM *priv;
295
    OSSL_PARAM *pub;
296
    OSSL_PARAM *secbits;
297
    OSSL_PARAM *seccat;
298
    OSSL_PARAM *size;
299
};
300
#endif
301
302
#ifndef ed_get_params_decoder
303
static int ed_get_params_decoder
304
    (const OSSL_PARAM *p, struct ed_get_params_st *r)
305
0
{
306
0
    const char *s;
307
308
0
    memset(r, 0, sizeof(*r));
309
0
    if (p != NULL)
310
0
        for (; (s = p->key) != NULL; p++)
311
0
            switch(s[0]) {
312
0
            default:
313
0
                break;
314
0
            case 'b':
315
0
                if (ossl_likely(strcmp("its", s + 1) == 0)) {
316
                    /* OSSL_PKEY_PARAM_BITS */
317
0
                    if (ossl_unlikely(r->bits != NULL)) {
318
0
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
319
0
                                       "param %s is repeated", s);
320
0
                        return 0;
321
0
                    }
322
0
                    r->bits = (OSSL_PARAM *)p;
323
0
                }
324
0
                break;
325
0
            case 'm':
326
0
                switch(s[1]) {
327
0
                default:
328
0
                    break;
329
0
                case 'a':
330
0
                    switch(s[2]) {
331
0
                    default:
332
0
                        break;
333
0
                    case 'n':
334
0
                        if (ossl_likely(strcmp("datory-digest", s + 3) == 0)) {
335
                            /* OSSL_PKEY_PARAM_MANDATORY_DIGEST */
336
0
                            if (ossl_unlikely(r->digest != NULL)) {
337
0
                                ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
338
0
                                               "param %s is repeated", s);
339
0
                                return 0;
340
0
                            }
341
0
                            r->digest = (OSSL_PARAM *)p;
342
0
                        }
343
0
                        break;
344
0
                    case 'x':
345
0
                        if (ossl_likely(strcmp("-size", s + 3) == 0)) {
346
                            /* OSSL_PKEY_PARAM_MAX_SIZE */
347
0
                            if (ossl_unlikely(r->size != NULL)) {
348
0
                                ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
349
0
                                               "param %s is repeated", s);
350
0
                                return 0;
351
0
                            }
352
0
                            r->size = (OSSL_PARAM *)p;
353
0
                        }
354
0
                    }
355
0
                }
356
0
                break;
357
0
            case 'p':
358
0
                switch(s[1]) {
359
0
                default:
360
0
                    break;
361
0
                case 'r':
362
0
                    if (ossl_likely(strcmp("iv", s + 2) == 0)) {
363
                        /* OSSL_PKEY_PARAM_PRIV_KEY */
364
0
                        if (ossl_unlikely(r->priv != NULL)) {
365
0
                            ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
366
0
                                           "param %s is repeated", s);
367
0
                            return 0;
368
0
                        }
369
0
                        r->priv = (OSSL_PARAM *)p;
370
0
                    }
371
0
                    break;
372
0
                case 'u':
373
0
                    if (ossl_likely(strcmp("b", s + 2) == 0)) {
374
                        /* OSSL_PKEY_PARAM_PUB_KEY */
375
0
                        if (ossl_unlikely(r->pub != NULL)) {
376
0
                            ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
377
0
                                           "param %s is repeated", s);
378
0
                            return 0;
379
0
                        }
380
0
                        r->pub = (OSSL_PARAM *)p;
381
0
                    }
382
0
                }
383
0
                break;
384
0
            case 's':
385
0
                switch(s[1]) {
386
0
                default:
387
0
                    break;
388
0
                case 'e':
389
0
                    switch(s[2]) {
390
0
                    default:
391
0
                        break;
392
0
                    case 'c':
393
0
                        switch(s[3]) {
394
0
                        default:
395
0
                            break;
396
0
                        case 'u':
397
0
                            switch(s[4]) {
398
0
                            default:
399
0
                                break;
400
0
                            case 'r':
401
0
                                switch(s[5]) {
402
0
                                default:
403
0
                                    break;
404
0
                                case 'i':
405
0
                                    switch(s[6]) {
406
0
                                    default:
407
0
                                        break;
408
0
                                    case 't':
409
0
                                        switch(s[7]) {
410
0
                                        default:
411
0
                                            break;
412
0
                                        case 'y':
413
0
                                            switch(s[8]) {
414
0
                                            default:
415
0
                                                break;
416
0
                                            case '-':
417
0
                                                switch(s[9]) {
418
0
                                                default:
419
0
                                                    break;
420
0
                                                case 'b':
421
0
                                                    if (ossl_likely(strcmp("its", s + 10) == 0)) {
422
                                                        /* OSSL_PKEY_PARAM_SECURITY_BITS */
423
0
                                                        if (ossl_unlikely(r->secbits != NULL)) {
424
0
                                                            ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
425
0
                                                                           "param %s is repeated", s);
426
0
                                                            return 0;
427
0
                                                        }
428
0
                                                        r->secbits = (OSSL_PARAM *)p;
429
0
                                                    }
430
0
                                                    break;
431
0
                                                case 'c':
432
0
                                                    if (ossl_likely(strcmp("ategory", s + 10) == 0)) {
433
                                                        /* OSSL_PKEY_PARAM_SECURITY_CATEGORY */
434
0
                                                        if (ossl_unlikely(r->seccat != NULL)) {
435
0
                                                            ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
436
0
                                                                           "param %s is repeated", s);
437
0
                                                            return 0;
438
0
                                                        }
439
0
                                                        r->seccat = (OSSL_PARAM *)p;
440
0
                                                    }
441
0
                                                }
442
0
                                            }
443
0
                                        }
444
0
                                    }
445
0
                                }
446
0
                            }
447
0
                        }
448
0
                    }
449
0
                }
450
0
            }
451
0
    return 1;
452
0
}
453
#endif
454
/* End of machine generated */
455
456
/* Machine generated by util/perl/OpenSSL/paramnames.pm */
457
#include <string.h>
458
#include <openssl/params.h>
459
#include "internal/common.h"
460
#include "prov/proverr.h"
461
462
#ifndef ecx_set_params_list
463
static const OSSL_PARAM ecx_set_params_list[] = {
464
    OSSL_PARAM_octet_string(OSSL_PKEY_PARAM_ENCODED_PUBLIC_KEY, NULL, 0),
465
    OSSL_PARAM_utf8_string(OSSL_PKEY_PARAM_PROPERTIES, NULL, 0),
466
    OSSL_PARAM_END
467
};
468
#endif
469
470
#ifndef ecx_set_params_st
471
struct ecx_set_params_st {
472
    OSSL_PARAM *propq;
473
    OSSL_PARAM *pub;
474
};
475
#endif
476
477
#ifndef ecx_set_params_decoder
478
static int ecx_set_params_decoder
479
    (const OSSL_PARAM *p, struct ecx_set_params_st *r)
480
0
{
481
0
    const char *s;
482
483
0
    memset(r, 0, sizeof(*r));
484
0
    if (p != NULL)
485
0
        for (; (s = p->key) != NULL; p++)
486
0
            switch(s[0]) {
487
0
            default:
488
0
                break;
489
0
            case 'e':
490
0
                if (ossl_likely(strcmp("ncoded-pub-key", s + 1) == 0)) {
491
                    /* OSSL_PKEY_PARAM_ENCODED_PUBLIC_KEY */
492
0
                    if (ossl_unlikely(r->pub != NULL)) {
493
0
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
494
0
                                       "param %s is repeated", s);
495
0
                        return 0;
496
0
                    }
497
0
                    r->pub = (OSSL_PARAM *)p;
498
0
                }
499
0
                break;
500
0
            case 'p':
501
0
                if (ossl_likely(strcmp("roperties", s + 1) == 0)) {
502
                    /* OSSL_PKEY_PARAM_PROPERTIES */
503
0
                    if (ossl_unlikely(r->propq != 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->propq = (OSSL_PARAM *)p;
509
0
                }
510
0
            }
511
0
    return 1;
512
0
}
513
#endif
514
/* End of machine generated */
515
516
/* Machine generated by util/perl/OpenSSL/paramnames.pm */
517
#include <string.h>
518
#include <openssl/params.h>
519
#include "internal/common.h"
520
#include "prov/proverr.h"
521
522
#ifndef ecx_gen_set_params_list
523
static const OSSL_PARAM ecx_gen_set_params_list[] = {
524
    OSSL_PARAM_utf8_string(OSSL_PKEY_PARAM_GROUP_NAME, NULL, 0),
525
    OSSL_PARAM_utf8_string(OSSL_KDF_PARAM_PROPERTIES, NULL, 0),
526
    OSSL_PARAM_octet_string(OSSL_PKEY_PARAM_DHKEM_IKM, NULL, 0),
527
    OSSL_PARAM_END
528
};
529
#endif
530
531
#ifndef ecx_gen_set_params_st
532
struct ecx_gen_set_params_st {
533
    OSSL_PARAM *group;
534
    OSSL_PARAM *ikm;
535
    OSSL_PARAM *kdfpropq;
536
};
537
#endif
538
539
#ifndef ecx_gen_set_params_decoder
540
static int ecx_gen_set_params_decoder
541
    (const OSSL_PARAM *p, struct ecx_gen_set_params_st *r)
542
0
{
543
0
    const char *s;
544
545
0
    memset(r, 0, sizeof(*r));
546
0
    if (p != NULL)
547
0
        for (; (s = p->key) != NULL; p++)
548
0
            switch(s[0]) {
549
0
            default:
550
0
                break;
551
0
            case 'd':
552
0
                if (ossl_likely(strcmp("hkem-ikm", s + 1) == 0)) {
553
                    /* OSSL_PKEY_PARAM_DHKEM_IKM */
554
0
                    if (ossl_unlikely(r->ikm != NULL)) {
555
0
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
556
0
                                       "param %s is repeated", s);
557
0
                        return 0;
558
0
                    }
559
0
                    r->ikm = (OSSL_PARAM *)p;
560
0
                }
561
0
                break;
562
0
            case 'g':
563
0
                if (ossl_likely(strcmp("roup", s + 1) == 0)) {
564
                    /* OSSL_PKEY_PARAM_GROUP_NAME */
565
0
                    if (ossl_unlikely(r->group != NULL)) {
566
0
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
567
0
                                       "param %s is repeated", s);
568
0
                        return 0;
569
0
                    }
570
0
                    r->group = (OSSL_PARAM *)p;
571
0
                }
572
0
                break;
573
0
            case 'p':
574
0
                if (ossl_likely(strcmp("roperties", s + 1) == 0)) {
575
                    /* OSSL_KDF_PARAM_PROPERTIES */
576
0
                    if (ossl_unlikely(r->kdfpropq != NULL)) {
577
0
                        ERR_raise_data(ERR_LIB_PROV, PROV_R_REPEATED_PARAMETER,
578
0
                                       "param %s is repeated", s);
579
0
                        return 0;
580
0
                    }
581
0
                    r->kdfpropq = (OSSL_PARAM *)p;
582
0
                }
583
0
            }
584
0
    return 1;
585
0
}
586
#endif
587
/* End of machine generated */