



@deftypefun {int} {gnutls_dh_params_generate2} (gnutls_dh_params_t @var{dparams}, unsigned int @var{bits})
@var{dparams}: The parameters

@var{bits}: is the prime's number of bits

This function will generate a new pair of prime and generator for use in
the Diffie-Hellman key exchange. This may take long time.

It is recommended not to set the number of bits directly, but 
use @code{gnutls_sec_param_to_pk_bits()}  instead.
Also note that the DH parameters are only useful to servers.
Since clients use the parameters sent by the server, it's of
no use to call this in client side.

The parameters generated are of the DSA form. It also is possible
to generate provable parameters (following the Shawe-Taylor
algorithm), using @code{gnutls_x509_privkey_generate2()}  with DSA option
and the @code{GNUTLS_PRIVKEY_FLAG_PROVABLE}  flag set. These can the
be imported with @code{gnutls_dh_params_import_dsa()} .

It is no longer recommended for applications to generate parameters.
See the "Parameter generation" section in the manual.

@strong{Returns:} On success, @code{GNUTLS_E_SUCCESS}  (0) is returned,
otherwise a negative error code is returned.
@end deftypefun
