Add {get,set}table_params() functions for provider digests
[openssl.git] / providers / legacy / digests / mdc2_prov.c
index f77e3992b0813eddf9392db267394cdabcb40576..d779c967cde8467adf0c266ba1d229a7615a7192 100644 (file)
 #include "internal/core_mkdigest.h"
 #include "internal/provider_algs.h"
 
-static OSSL_OP_digest_ctx_set_params_fn mdc2_set_params;
+static OSSL_OP_digest_ctx_set_params_fn mdc2_ctx_set_params;
+static OSSL_OP_digest_settable_ctx_params_fn mdc2_settable_ctx_params;
 
-static int mdc2_set_params(void *vctx, const OSSL_PARAM params[])
+static const OSSL_PARAM known_mdc2_settable_ctx_params[] = {
+    {OSSL_DIGEST_PARAM_PAD_TYPE, OSSL_PARAM_INTEGER, NULL, sizeof(int), 0},
+    OSSL_PARAM_END
+};
+
+static const OSSL_PARAM *mdc2_settable_ctx_params(void)
+{
+    return known_mdc2_settable_ctx_params;
+}
+
+static int mdc2_ctx_set_params(void *vctx, const OSSL_PARAM params[])
 {
     const OSSL_PARAM *p;
     MDC2_CTX *ctx = (MDC2_CTX *)vctx;
@@ -34,4 +45,4 @@ static int mdc2_set_params(void *vctx, const OSSL_PARAM params[])
 OSSL_FUNC_DIGEST_CONSTRUCT_PARAMS(mdc2, MDC2_CTX,
                                   MDC2_BLOCK, MDC2_DIGEST_LENGTH, 0,
                                   MDC2_Init, MDC2_Update, MDC2_Final,
-                                  mdc2_set_params)
+                                  mdc2_settable_ctx_params, mdc2_ctx_set_params)