EVP_PKEY_METH_GET_COUNT(3ossl)

πŸ“¦ version 3.5.0, in opensuse-leap 16.0

πŸ’– EVP_PKEY_METH_GET_COUNT πŸ’–

okay bestie, welcome to the OpenSSL girlies club β€” this one's a 3ossl page, and it's literally all about enumerating public key methods. Like, going through the list one by one, iykyk.

✨ NAME ✨

EVP_PKEY_meth_get_count, EVP_PKEY_meth_get0, EVP_PKEY_meth_get0_info β€” enumerate public key methods πŸŽ€

🌸 SYNOPSIS 🌸

#include <openssl/evp.h>

so here's the tea πŸ«– β€” these functions have been deprecated since OpenSSL 3.0, and you can hide them entirely by defining OPENSSL_API_COMPAT with a suitable version value. wanna know what "suitable" means? check openssl_user_macros(7), she explains it πŸ’…

size_t EVP_PKEY_meth_get_count(void);
const EVP_PKEY_METHOD *EVP_PKEY_meth_get0(size_t idx);
void EVP_PKEY_meth_get0_info(int *ppkey_id, int *pflags,
                             const EVP_PKEY_METHOD *meth);

πŸ¦‹ DESCRIPTION πŸ¦‹

⚠️ okay so real talk first: all of the functions described on this page are deprecated. applications should instead use the OSSL_PROVIDER APIs. that's the move, bestie ✨
  • EVP_PKEY_meth_count() β€” returns a count of the number of public key methods available. and it's not gatekeeping either: it includes standard methods and any methods added by the application. so inclusive πŸ’–
  • EVP_PKEY_meth_get0() β€” returns the public key method idx. the value of idx must be between zero and EVP_PKEY_meth_get_count() - 1. (yes, that's a hard requirement, no cap.)
  • EVP_PKEY_meth_get0_info() β€” returns the public key ID (a NID) and any flags associated with the public key method *meth.

πŸ‘‘ RETURN VALUES πŸ‘‘

  • EVP_PKEY_meth_count() β€” returns the number of available public key methods πŸ”₯
  • EVP_PKEY_meth_get0() β€” returns a public key method, or NULL if idx is out of range. sad but fair 😭
  • EVP_PKEY_meth_get0_info() β€” does not return a value. she's giving void energy, and honestly? iconic πŸ’€

🌈 SEE ALSO 🌈

EVP_PKEY_new(3)

⭐ HISTORY ⭐

all of these functions were deprecated in OpenSSL 3.0. periodt.

Copyright 2002-2020 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>.


okay that's the whole page, no notes 🫢 this was version 3.5.0, dated 2026-09-25 β€” mwah, bye bestie πŸ’‹βœ¨

πŸ“¦ where this page comes from