Lines Matching refs:md
731 int EVP_MD_is_a(const EVP_MD *md, const char *name)
733 if (md == NULL)
735 if (md->prov != NULL)
736 return evp_is_a(md->prov, md->name_id, NULL, name);
737 return evp_is_a(NULL, 0, EVP_MD_get0_name(md), name);
740 int evp_md_get_number(const EVP_MD *md)
742 return md->name_id;
745 const char *EVP_MD_get0_description(const EVP_MD *md)
747 if (md->description != NULL)
748 return md->description;
750 return OBJ_nid2ln(EVP_MD_nid(md));
756 const char *EVP_MD_get0_name(const EVP_MD *md)
758 if (md == NULL)
760 if (md->type_name != NULL)
761 return md->type_name;
763 return OBJ_nid2sn(EVP_MD_nid(md));
769 int EVP_MD_names_do_all(const EVP_MD *md,
773 if (md->prov != NULL)
774 return evp_names_do_all(md->prov, md->name_id, fn, data);
779 const OSSL_PROVIDER *EVP_MD_get0_provider(const EVP_MD *md)
781 return md->prov;
784 int EVP_MD_get_type(const EVP_MD *md)
786 return md->type;
789 int EVP_MD_get_pkey_type(const EVP_MD *md)
791 return md->pkey_type;
794 int EVP_MD_get_block_size(const EVP_MD *md)
796 if (md == NULL) {
800 return md->block_size;
803 int EVP_MD_get_size(const EVP_MD *md)
805 if (md == NULL) {
809 return md->md_size;
812 unsigned long EVP_MD_get_flags(const EVP_MD *md)
814 return md->flags;
819 EVP_MD *md = evp_md_new();
821 if (md != NULL) {
822 md->type = md_type;
823 md->pkey_type = pkey_type;
824 md->origin = EVP_ORIG_METH;
826 return md;
829 EVP_MD *EVP_MD_meth_dup(const EVP_MD *md)
837 if (md->prov != NULL)
840 if ((to = EVP_MD_meth_new(md->type, md->pkey_type)) != NULL) {
843 memcpy(to, md, sizeof(*to));
850 void evp_md_free_int(EVP_MD *md)
852 OPENSSL_free(md->type_name);
853 ossl_provider_free(md->prov);
854 CRYPTO_THREAD_lock_free(md->lock);
855 OPENSSL_free(md);
858 void EVP_MD_meth_free(EVP_MD *md)
860 if (md == NULL || md->origin != EVP_ORIG_METH)
863 evp_md_free_int(md);
866 int EVP_MD_meth_set_input_blocksize(EVP_MD *md, int blocksize)
868 if (md->block_size != 0)
871 md->block_size = blocksize;
874 int EVP_MD_meth_set_result_size(EVP_MD *md, int resultsize)
876 if (md->md_size != 0)
879 md->md_size = resultsize;
882 int EVP_MD_meth_set_app_datasize(EVP_MD *md, int datasize)
884 if (md->ctx_size != 0)
887 md->ctx_size = datasize;
890 int EVP_MD_meth_set_flags(EVP_MD *md, unsigned long flags)
892 if (md->flags != 0)
895 md->flags = flags;
898 int EVP_MD_meth_set_init(EVP_MD *md, int (*init)(EVP_MD_CTX *ctx))
900 if (md->init != NULL)
903 md->init = init;
906 int EVP_MD_meth_set_update(EVP_MD *md, int (*update)(EVP_MD_CTX *ctx,
910 if (md->update != NULL)
913 md->update = update;
916 int EVP_MD_meth_set_final(EVP_MD *md, int (*final)(EVP_MD_CTX *ctx,
917 unsigned char *md))
919 if (md->final != NULL)
922 md->final = final;
925 int EVP_MD_meth_set_copy(EVP_MD *md, int (*copy)(EVP_MD_CTX *to,
928 if (md->copy != NULL)
931 md->copy = copy;
934 int EVP_MD_meth_set_cleanup(EVP_MD *md, int (*cleanup)(EVP_MD_CTX *ctx))
936 if (md->cleanup != NULL)
939 md->cleanup = cleanup;
942 int EVP_MD_meth_set_ctrl(EVP_MD *md, int (*ctrl)(EVP_MD_CTX *ctx, int cmd,
945 if (md->md_ctrl != NULL)
948 md->md_ctrl = ctrl;
952 int EVP_MD_meth_get_input_blocksize(const EVP_MD *md)
954 return md->block_size;
956 int EVP_MD_meth_get_result_size(const EVP_MD *md)
958 return md->md_size;
960 int EVP_MD_meth_get_app_datasize(const EVP_MD *md)
962 return md->ctx_size;
964 unsigned long EVP_MD_meth_get_flags(const EVP_MD *md)
966 return md->flags;
968 int (*EVP_MD_meth_get_init(const EVP_MD *md))(EVP_MD_CTX *ctx)
970 return md->init;
972 int (*EVP_MD_meth_get_update(const EVP_MD *md))(EVP_MD_CTX *ctx,
976 return md->update;
978 int (*EVP_MD_meth_get_final(const EVP_MD *md))(EVP_MD_CTX *ctx,
979 unsigned char *md)
981 return md->final;
983 int (*EVP_MD_meth_get_copy(const EVP_MD *md))(EVP_MD_CTX *to,
986 return md->copy;
988 int (*EVP_MD_meth_get_cleanup(const EVP_MD *md))(EVP_MD_CTX *ctx)
990 return md->cleanup;
992 int (*EVP_MD_meth_get_ctrl(const EVP_MD *md))(EVP_MD_CTX *ctx, int cmd,
995 return md->md_ctrl;
1016 EVP_MD *md;
1020 md = (EVP_MD *)ctx->reqdigest;
1021 if (md == NULL || !EVP_MD_up_ref(md))
1023 return md;