NAME
DH_new
, DH_up_ref
,
DH_free
—
allocate and free DH objects
SYNOPSIS
#include
<openssl/dh.h>
DH*
DH_new
(void);
int
DH_up_ref
(DH *dh);
void
DH_free
(DH *dh);
DESCRIPTION
The DH functions implement the Diffie-Hellman key agreement protocol.
DH_new
()
allocates and initializes a DH structure, setting the
reference count to 1. It is equivalent to
DH_new_method(3) with a NULL
argument.
DH_up_ref
()
increments the reference count by 1.
DH_free
()
decrements the reference count by 1. If it reaches 0, it frees the
DH structure and its components. The values are erased
before the memory is returned to the system. If dh is
a NULL
pointer, no action occurs.
RETURN VALUES
If the allocation fails, DH_new
() returns
NULL
and sets an error code that can be obtained by
ERR_get_error(3). Otherwise it returns a pointer to the newly
allocated structure.
DH_up_ref
() returns 1 for success or 0 for
failure.
SEE ALSO
BN_new(3), crypto(3), d2i_DHparams(3), DH_generate_key(3), DH_generate_parameters(3), DH_get0_pqg(3), DH_get_ex_new_index(3), DH_set_method(3), DH_size(3), DHparams_print(3), DSA_dup_DH(3), EVP_PKEY_CTX_set_dh_paramgen_prime_len(3), EVP_PKEY_set1_DH(3)
HISTORY
DH_new
() and
DH_free
() first appeared in SSLeay 0.5.1 and have
been available since OpenBSD 2.4.
DH_up_ref
() first appeared in OpenSSL
0.9.7 and has been available since OpenBSD 3.2.