]>
Commit | Line | Data |
---|---|---|
5368bf05 DSH |
1 | =pod |
2 | ||
3 | =head1 NAME | |
4 | ||
5 | DH_new_by_nid, DH_get_nid - get or find DH named parameters | |
6 | ||
7 | =head1 SYNOPSIS | |
8 | ||
9 | #include <openssl/dh.h> | |
10 | DH *DH_new_by_nid(int nid); | |
ada66e78 P |
11 | |
12 | Deprecated since OpenSSL 3.0, can be hidden entirely by defining | |
13 | B<OPENSSL_API_COMPAT> with a suitable version value, see | |
14 | L<openssl_user_macros(7)>: | |
15 | ||
ca2bf555 | 16 | int *DH_get_nid(DH *dh); |
5368bf05 DSH |
17 | |
18 | =head1 DESCRIPTION | |
19 | ||
20 | DH_new_by_nid() creates and returns a DH structure containing named parameters | |
21 | B<nid>. Currently B<nid> must be B<NID_ffdhe2048>, B<NID_ffdhe3072>, | |
ca2bf555 SL |
22 | B<NID_ffdhe4096>, B<NID_ffdhe6144>, B<NID_ffdhe8192>, |
23 | B<NID_modp_1536>, B<NID_modp_2048>, B<NID_modp_3072>, | |
24 | B<NID_modp_4096>, B<NID_modp_6144> or B<NID_modp_8192>. | |
25 | ||
5368bf05 | 26 | DH_get_nid() determines if the parameters contained in B<dh> match |
55f02cb6 SL |
27 | any named safe prime group. It returns the NID corresponding to the matching |
28 | parameters or B<NID_undef> if there is no match. | |
29 | Internally it caches the nid, so that any subsequent calls can fetch the | |
30 | cached value. | |
31 | If a matching p and g are not found and the value of parameter q is not set, | |
32 | then it is set to q = (p - 1) / 2. | |
33 | If parameter q is already set then it must also match the expected q otherwise | |
34 | no match will be found. | |
35 | This function is deprecated. | |
5368bf05 DSH |
36 | |
37 | =head1 RETURN VALUES | |
38 | ||
39 | DH_new_by_nid() returns a set of DH parameters or B<NULL> if an error occurred. | |
40 | ||
55f02cb6 SL |
41 | DH_get_nid() returns the NID of the matching set of parameters for p and g |
42 | and optionally q, otherwise it returns B<NID_undef> if there is no match. | |
5368bf05 | 43 | |
ada66e78 P |
44 | =head1 HISTORY |
45 | ||
46 | The DH_get_nid() function was deprecated in OpenSSL 3.0. | |
47 | ||
5368bf05 DSH |
48 | =head1 COPYRIGHT |
49 | ||
ca2bf555 | 50 | Copyright 2017-2020 The OpenSSL Project Authors. All Rights Reserved. |
5368bf05 | 51 | |
4746f25a | 52 | Licensed under the Apache License 2.0 (the "License"). You may not use |
5368bf05 DSH |
53 | this file except in compliance with the License. You can obtain a copy |
54 | in the file LICENSE in the source distribution or at | |
55 | L<https://www.openssl.org/source/license.html>. | |
56 | ||
57 | =cut |