/*
 * Copyright 2025 The OpenSSL Project Authors. All Rights Reserved.
 *
 * Licensed under the Apache License 2.0 (the \"License\").  You may not use
 * this file except in compliance with the License.  You can obtain a copy
 * in the file LICENSE in the source distribution or at
 * https://www.openssl.org/source/license.html
 */

{-
use OpenSSL::paramnames qw(produce_param_decoder);
-}

{- produce_param_decoder('dh_set_ctx_params',
                         (['OSSL_EXCHANGE_PARAM_PAD',               'pad',    'int'],
                          ['OSSL_EXCHANGE_PARAM_KDF_TYPE',          'kdf',    'utf8_string'],
                          ['OSSL_EXCHANGE_PARAM_KDF_DIGEST',        'digest', 'utf8_string'],
                          ['OSSL_EXCHANGE_PARAM_KDF_DIGEST_PROPS',  'propq',  'utf8_string'],
                          ['OSSL_EXCHANGE_PARAM_KDF_OUTLEN',        'len',    'size_t'],
                          ['OSSL_EXCHANGE_PARAM_KDF_UKM',           'ukm',    'octet_string'],
                          ['OSSL_KDF_PARAM_CEK_ALG',                'cekalg', 'utf8_string'],
                          ['OSSL_EXCHANGE_PARAM_FIPS_KEY_CHECK',    'ind_k',  'int', 'fips'],
                          ['OSSL_EXCHANGE_PARAM_FIPS_DIGEST_CHECK', 'ind_d',  'int', 'fips'],
                         )); -}

{- produce_param_decoder('dh_get_ctx_params',
                         (['OSSL_EXCHANGE_PARAM_KDF_TYPE',           'kdf',    'utf8_string'],
                          ['OSSL_EXCHANGE_PARAM_KDF_DIGEST',         'digest', 'utf8_string'],
                          ['OSSL_EXCHANGE_PARAM_KDF_OUTLEN',         'len',    'size_t'],
                          ['OSSL_EXCHANGE_PARAM_KDF_UKM',            'ukm',    'octet_ptr'],
                          ['OSSL_KDF_PARAM_CEK_ALG',                 'cekalg', 'utf8_string'],
                          ['OSSL_ALG_PARAM_FIPS_APPROVED_INDICATOR', 'ind',    'int', 'fips'],
                         )); -}
