X-Git-Url: https://git.openssl.org/?p=openssl.git;a=blobdiff_plain;f=doc%2Fcrypto%2FBN_CTX_new.pod;h=df432c77cbcd68588c0055c8affceb6b6115d574;hp=ad8d07db89afc137058c4e370efc5471f487ace7;hb=a528d4f0a9a71405f3ca06e20cbd27aa1b8c0df9;hpb=6859cf745961b04bea73297a275b3269085f6970 diff --git a/doc/crypto/BN_CTX_new.pod b/doc/crypto/BN_CTX_new.pod index ad8d07db89..df432c77cb 100644 --- a/doc/crypto/BN_CTX_new.pod +++ b/doc/crypto/BN_CTX_new.pod @@ -2,7 +2,7 @@ =head1 NAME -BN_CTX_new, BN_CTX_init, BN_CTX_free - allocate and free BN_CTX structures +BN_CTX_new, BN_CTX_secure_new, BN_CTX_init, BN_CTX_free - allocate and free BN_CTX structures =head1 SYNOPSIS @@ -10,7 +10,7 @@ BN_CTX_new, BN_CTX_init, BN_CTX_free - allocate and free BN_CTX structures BN_CTX *BN_CTX_new(void); - void BN_CTX_init(BN_CTX *c); + BN_CTX *BN_CTX_secure_new(void); void BN_CTX_free(BN_CTX *c); @@ -21,33 +21,47 @@ library functions. Since dynamic memory allocation to create Bs is rather expensive when used in conjunction with repeated subroutine calls, the B structure is used. -BN_CTX_new() allocates and initializes a B -structure. BN_CTX_init() initializes an existing uninitialized -B. +BN_CTX_new() allocates and initializes a B structure. +BN_CTX_secure_new() allocates and initializes a B structure +but uses the secure heap (see L) to hold the +Bs. BN_CTX_free() frees the components of the B, and if it was created by BN_CTX_new(), also the structure itself. -If L has been used on the B, -L must be called before the B +If L has been used on the B, +L must be called before the B may be freed by BN_CTX_free(). - +If B is NULL, nothing is done. =head1 RETURN VALUES -BN_CTX_new() returns a pointer to the B. If the allocation fails, -it returns B and sets an error code that can be obtained by -L. +BN_CTX_new() and BN_CTX_secure_new() return a pointer to the B. +If the allocation fails, +they return B and sets an error code that can be obtained by +L. + +BN_CTX_free() has no return values. + +=head1 REMOVED FUNCTIONALITY + + void BN_CTX_init(BN_CTX *c); + +BN_CTX_init() is no longer available as of OpenSSL 1.1.0. Applications should +replace use of BN_CTX_init with BN_CTX_new instead: -BN_CTX_init() and BN_CTX_free() have no return values. + BN_CTX *ctx; + ctx = BN_CTX_new(); + if(!ctx) /* Handle error */ + ... + BN_CTX_free(ctx); =head1 SEE ALSO -L, L, L, -L +L, L, L, +L =head1 HISTORY -BN_CTX_new() and BN_CTX_free() are available in all versions on SSLeay -and OpenSSL. BN_CTX_init() was added in SSLeay 0.9.1b. +BN_CTX_init() was removed in OpenSSL 1.1.0. =cut