Skip to content

Add exdata to FIPS (etc) crypto objects? #8863

@richsalz

Description

@richsalz

There are a number of ways to use ex_data (as in CRYPTO_get_ex_new_index.pod) to cryptographic keys including the generic method using the CRYPTO_EX_INDEX_xxx values in crypto.h, and key-specific methods such as RSA_set_ex_data(), EVP_MD_meth_set_app_datasize() (sic), EVP_PKEY_CTX_set_app_data() and so on.

Some of those will not be available, of course, as RSA type isn't part of the EVP interface (via EVP_PKEY_keygen()), but some should still work, right?

Does the "index" value used to store type-specific exdata now vary depending on which provider or core is used? That seems yucky, and is kind of an ABI break, since applications which used to init and have a single exdata index, now have to have more than one and know when to use each.

My suggestion is to make exdata index and instance pointer lists be a core service, but some disagree. This discussion has wandered over multiple PR's, and @levitte rightfully suggested opening a new issue.

Metadata

Metadata

Assignees

No one assigned

    Labels

    triaged: featureThe issue/pr requests/adds a feature

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions