Commit e6390aca authored by Rich Salz's avatar Rich Salz Committed by Rich Salz
Browse files

ex_data part 2: doc fixes and CRYPTO_free_ex_index.



Add CRYPTO_free_ex_index (for shared libraries)
Unify and complete the documentation for all "ex_data" API's and objects.
Replace xxx_get_ex_new_index functions with a macro.
Added an exdata test.
Renamed the ex_data internal datatypes.

Reviewed-by: default avatarMatt Caswell <matt@openssl.org>
parent d59c7c81
Loading
Loading
Loading
Loading
+4 −0
Original line number Original line Diff line number Diff line
@@ -151,6 +151,10 @@
     output file readable only by the owner.  This behavior change might
     output file readable only by the owner.  This behavior change might
     be noticeable when interacting with other software.
     be noticeable when interacting with other software.


  *) Documented all exdata functions.  Added CRYPTO_free_ex_index.
     Added a test.
     [Rich Salz]

  *) Added HTTP GET support to the ocsp command.
  *) Added HTTP GET support to the ocsp command.
     [Rich Salz]
     [Rich Salz]


+0 −7
Original line number Original line Diff line number Diff line
@@ -561,13 +561,6 @@ void BIO_copy_next_retry(BIO *b)
    b->retry_reason = b->next_bio->retry_reason;
    b->retry_reason = b->next_bio->retry_reason;
}
}


int BIO_get_ex_new_index(long argl, void *argp, CRYPTO_EX_new *new_func,
                         CRYPTO_EX_dup *dup_func, CRYPTO_EX_free *free_func)
{
    return CRYPTO_get_ex_new_index(CRYPTO_EX_INDEX_BIO, argl, argp,
                                   new_func, dup_func, free_func);
}

int BIO_set_ex_data(BIO *bio, int idx, void *data)
int BIO_set_ex_data(BIO *bio, int idx, void *data)
{
{
    return (CRYPTO_set_ex_data(&(bio->ex_data), idx, data));
    return (CRYPTO_set_ex_data(&(bio->ex_data), idx, data));
+2 −1
Original line number Original line Diff line number Diff line
@@ -78,8 +78,9 @@ static ERR_STRING_DATA CRYPTO_str_functs[] = {
    {ERR_FUNC(CRYPTO_F_CRYPTO_NEW_EX_DATA), "CRYPTO_new_ex_data"},
    {ERR_FUNC(CRYPTO_F_CRYPTO_NEW_EX_DATA), "CRYPTO_new_ex_data"},
    {ERR_FUNC(CRYPTO_F_CRYPTO_SET_EX_DATA), "CRYPTO_set_ex_data"},
    {ERR_FUNC(CRYPTO_F_CRYPTO_SET_EX_DATA), "CRYPTO_set_ex_data"},
    {ERR_FUNC(CRYPTO_F_DEF_ADD_INDEX), "DEF_ADD_INDEX"},
    {ERR_FUNC(CRYPTO_F_DEF_ADD_INDEX), "DEF_ADD_INDEX"},
    {ERR_FUNC(CRYPTO_F_DEF_GET_CLASS), "def_get_class"},
    {ERR_FUNC(CRYPTO_F_DEF_GET_CLASS), "DEF_GET_CLASS"},
    {ERR_FUNC(CRYPTO_F_FIPS_MODE_SET), "FIPS_mode_set"},
    {ERR_FUNC(CRYPTO_F_FIPS_MODE_SET), "FIPS_mode_set"},
    {ERR_FUNC(CRYPTO_F_GET_AND_LOCK), "get_and_lock"},
    {ERR_FUNC(CRYPTO_F_INT_DUP_EX_DATA), "INT_DUP_EX_DATA"},
    {ERR_FUNC(CRYPTO_F_INT_DUP_EX_DATA), "INT_DUP_EX_DATA"},
    {ERR_FUNC(CRYPTO_F_INT_FREE_EX_DATA), "INT_FREE_EX_DATA"},
    {ERR_FUNC(CRYPTO_F_INT_FREE_EX_DATA), "INT_FREE_EX_DATA"},
    {ERR_FUNC(CRYPTO_F_INT_NEW_EX_DATA), "INT_NEW_EX_DATA"},
    {ERR_FUNC(CRYPTO_F_INT_NEW_EX_DATA), "INT_NEW_EX_DATA"},
+0 −7
Original line number Original line Diff line number Diff line
@@ -205,13 +205,6 @@ int DH_up_ref(DH *r)
    return ((i > 1) ? 1 : 0);
    return ((i > 1) ? 1 : 0);
}
}


int DH_get_ex_new_index(long argl, void *argp, CRYPTO_EX_new *new_func,
                        CRYPTO_EX_dup *dup_func, CRYPTO_EX_free *free_func)
{
    return CRYPTO_get_ex_new_index(CRYPTO_EX_INDEX_DH, argl, argp,
                                   new_func, dup_func, free_func);
}

int DH_set_ex_data(DH *d, int idx, void *arg)
int DH_set_ex_data(DH *d, int idx, void *arg)
{
{
    return (CRYPTO_set_ex_data(&d->ex_data, idx, arg));
    return (CRYPTO_set_ex_data(&d->ex_data, idx, arg));
+0 −7
Original line number Original line Diff line number Diff line
@@ -234,13 +234,6 @@ int DSA_size(const DSA *r)
    return (ret);
    return (ret);
}
}


int DSA_get_ex_new_index(long argl, void *argp, CRYPTO_EX_new *new_func,
                         CRYPTO_EX_dup *dup_func, CRYPTO_EX_free *free_func)
{
    return CRYPTO_get_ex_new_index(CRYPTO_EX_INDEX_DSA, argl, argp,
                                   new_func, dup_func, free_func);
}

int DSA_set_ex_data(DSA *d, int idx, void *arg)
int DSA_set_ex_data(DSA *d, int idx, void *arg)
{
{
    return (CRYPTO_set_ex_data(&d->ex_data, idx, arg));
    return (CRYPTO_set_ex_data(&d->ex_data, idx, arg));
Loading