1*b077aed3SPierre Pronchery=pod 2*b077aed3SPierre Pronchery 3*b077aed3SPierre Pronchery=head1 NAME 4*b077aed3SPierre Pronchery 5*b077aed3SPierre Proncheryossl_decoder_get_number, evp_md_get_number, evp_cipher_get_number, 6*b077aed3SPierre Proncheryevp_mac_get_number, evp_rand_get_number, evp_keymgmt_get_number, 7*b077aed3SPierre Proncheryevp_signature_get_number, evp_asym_cipher_get_number, evp_kem_get_number, 8*b077aed3SPierre Proncheryevp_keyexch_get_number, evp_kdf_get_number, ossl_encoder_get_number, 9*b077aed3SPierre Proncheryossl_store_loader_get_number - EVP get internal identification numbers 10*b077aed3SPierre Pronchery 11*b077aed3SPierre Pronchery=head1 SYNOPSIS 12*b077aed3SPierre Pronchery 13*b077aed3SPierre Pronchery #include "crypto/evp.h" 14*b077aed3SPierre Pronchery 15*b077aed3SPierre Pronchery int evp_asym_cipher_get_number(const EVP_ASYM_CIPHER *cipher); 16*b077aed3SPierre Pronchery int evp_cipher_get_number(const EVP_CIPHER *e); 17*b077aed3SPierre Pronchery int evp_kdf_get_number(const EVP_KDF *kdf); 18*b077aed3SPierre Pronchery int evp_kem_get_number(const EVP_KEM *kem); 19*b077aed3SPierre Pronchery int evp_keyexch_get_number(const EVP_KEYEXCH *exchange); 20*b077aed3SPierre Pronchery int evp_keymgmt_get_number(const EVP_KEYMGMT *keymgmt); 21*b077aed3SPierre Pronchery int evp_mac_get_number(const EVP_MAC *mac); 22*b077aed3SPierre Pronchery int evp_md_get_number(const EVP_MD *md); 23*b077aed3SPierre Pronchery int evp_rand_get_number(const EVP_RAND *rand); 24*b077aed3SPierre Pronchery int evp_signature_get_number(const EVP_SIGNATURE *signature); 25*b077aed3SPierre Pronchery int ossl_decoder_get_number(const OSSL_DECODER *decoder); 26*b077aed3SPierre Pronchery int ossl_encoder_get_number(const OSSL_ENCODER *encoder); 27*b077aed3SPierre Pronchery int ossl_store_loader_get_number(const OSSL_STORE_LOADER *loader); 28*b077aed3SPierre Pronchery 29*b077aed3SPierre Pronchery=head1 DESCRIPTION 30*b077aed3SPierre Pronchery 31*b077aed3SPierre ProncheryAll provided algorithms get an associated integer identification number. 32*b077aed3SPierre ProncheryThis number is dynamic and should be expected to vary from run to run. 33*b077aed3SPierre ProncheryThese numbers should only be considered to be unique per provider per 34*b077aed3SPierre Proncherylibrary context. 35*b077aed3SPierre Pronchery 36*b077aed3SPierre Pronchery=over 4 37*b077aed3SPierre Pronchery 38*b077aed3SPierre Pronchery=item evp_asym_cipher_get_number() 39*b077aed3SPierre Pronchery 40*b077aed3SPierre ProncheryReturns the internal dynamic number assigned to I<cipher>. 41*b077aed3SPierre Pronchery 42*b077aed3SPierre Pronchery=item evp_cipher_get_number() 43*b077aed3SPierre Pronchery 44*b077aed3SPierre ProncheryReturns the internal dynamic number assigned to the I<cipher>. This is only 45*b077aed3SPierre Proncheryuseful with fetched B<EVP_CIPHER>s. 46*b077aed3SPierre Pronchery 47*b077aed3SPierre Pronchery=item evp_kdf_get_number() 48*b077aed3SPierre Pronchery 49*b077aed3SPierre ProncheryKeturns the internal dynamic number assigned to I<kdf>. 50*b077aed3SPierre Pronchery 51*b077aed3SPierre Pronchery=item evp_kem_get_number() 52*b077aed3SPierre Pronchery 53*b077aed3SPierre ProncheryReturns the internal dynamic number assigned to I<kem>. 54*b077aed3SPierre Pronchery 55*b077aed3SPierre Pronchery=item evp_keyexch_get_number() 56*b077aed3SPierre Pronchery 57*b077aed3SPierre ProncheryReturns the internal dynamic number assigned to the I<exchange>. 58*b077aed3SPierre Pronchery 59*b077aed3SPierre Pronchery=item evp_keymgmt_get_number() 60*b077aed3SPierre Pronchery 61*b077aed3SPierre ProncheryReturns the internal dynamic number assigned to the I<keymgmt>. 62*b077aed3SPierre Pronchery 63*b077aed3SPierre Pronchery=item evp_mac_get_number() 64*b077aed3SPierre Pronchery 65*b077aed3SPierre ProncheryReturns the internal dynamic number assigned to I<mac>. 66*b077aed3SPierre Pronchery 67*b077aed3SPierre Pronchery=item evp_md_get_number() 68*b077aed3SPierre Pronchery 69*b077aed3SPierre ProncheryReturns the internal dynamic number assigned to the I<md>. This is 70*b077aed3SPierre Proncheryonly useful with fetched B<EVP_MD>s. 71*b077aed3SPierre Pronchery 72*b077aed3SPierre Pronchery=item evp_rand_get_number() 73*b077aed3SPierre Pronchery 74*b077aed3SPierre ProncheryReturns the internal dynamic number assigned to I<rand>. 75*b077aed3SPierre Pronchery 76*b077aed3SPierre Pronchery=item evp_signature_get_number() 77*b077aed3SPierre Pronchery 78*b077aed3SPierre ProncheryReturns the internal dynamic number assigned to I<signature>. 79*b077aed3SPierre Pronchery 80*b077aed3SPierre Pronchery=item ossl_decoder_get_number() 81*b077aed3SPierre Pronchery 82*b077aed3SPierre ProncheryReturns the internal dynamic number assigned to the given I<decoder>. 83*b077aed3SPierre Pronchery 84*b077aed3SPierre Pronchery=item ossl_encoder_get_number() 85*b077aed3SPierre Pronchery 86*b077aed3SPierre ProncheryReturns the internal dynamic number assigned to the given I<encoder>. 87*b077aed3SPierre Pronchery 88*b077aed3SPierre Pronchery=item ossl_store_loader_get_number() 89*b077aed3SPierre Pronchery 90*b077aed3SPierre ProncheryReturns the internal dynamic number assigned to the given I<loader>. 91*b077aed3SPierre Pronchery 92*b077aed3SPierre Pronchery=back 93*b077aed3SPierre Pronchery 94*b077aed3SPierre Pronchery=head1 RETURN VALUES 95*b077aed3SPierre Pronchery 96*b077aed3SPierre ProncheryAll of these functions return the provider specific identification number 97*b077aed3SPierre Proncheryfor the specified algorithm. 98*b077aed3SPierre Pronchery 99*b077aed3SPierre Pronchery=head1 HISTORY 100*b077aed3SPierre Pronchery 101*b077aed3SPierre ProncheryThis functionality was added to OpenSSL 3.0. 102*b077aed3SPierre Pronchery 103*b077aed3SPierre Pronchery=head1 COPYRIGHT 104*b077aed3SPierre Pronchery 105*b077aed3SPierre ProncheryCopyright 2021 The OpenSSL Project Authors. All Rights Reserved. 106*b077aed3SPierre Pronchery 107*b077aed3SPierre ProncheryLicensed under the Apache License 2.0 (the "License"). You may not use 108*b077aed3SPierre Proncherythis file except in compliance with the License. You can obtain a copy 109*b077aed3SPierre Proncheryin the file LICENSE in the source distribution or at 110*b077aed3SPierre ProncheryL<https://www.openssl.org/source/license.html>. 111*b077aed3SPierre Pronchery 112*b077aed3SPierre Pronchery=cut 113