diff options
author | beck <> | 2000-03-19 11:13:58 +0000 |
---|---|---|
committer | beck <> | 2000-03-19 11:13:58 +0000 |
commit | 796d609550df3a33fc11468741c5d2f6d3df4c11 (patch) | |
tree | 6c6d539061caa20372dad0ac4ddb1dfae2fbe7fe /src/lib/libcrypto/doc/DH_set_method.pod | |
parent | 5be3114c1fd7e0dfea1e38d3abb4cbba75244419 (diff) | |
download | openbsd-796d609550df3a33fc11468741c5d2f6d3df4c11.tar.gz openbsd-796d609550df3a33fc11468741c5d2f6d3df4c11.tar.bz2 openbsd-796d609550df3a33fc11468741c5d2f6d3df4c11.zip |
OpenSSL 0.9.5 merge
*warning* this bumps shared lib minors for libssl and libcrypto from 2.1 to 2.2
if you are using the ssl26 packages for ssh and other things to work you will
need to get new ones (see ~beck/libsslsnap/<arch>) on cvs or ~beck/src-patent.tar.gz on cvs
Diffstat (limited to 'src/lib/libcrypto/doc/DH_set_method.pod')
-rw-r--r-- | src/lib/libcrypto/doc/DH_set_method.pod | 99 |
1 files changed, 99 insertions, 0 deletions
diff --git a/src/lib/libcrypto/doc/DH_set_method.pod b/src/lib/libcrypto/doc/DH_set_method.pod new file mode 100644 index 0000000000..dca41d8dbc --- /dev/null +++ b/src/lib/libcrypto/doc/DH_set_method.pod | |||
@@ -0,0 +1,99 @@ | |||
1 | =pod | ||
2 | |||
3 | =head1 NAME | ||
4 | |||
5 | DH_set_default_method, DH_get_default_method, DH_set_method, | ||
6 | DH_new_method, DH_OpenSSL - select DH method | ||
7 | |||
8 | =head1 SYNOPSIS | ||
9 | |||
10 | #include <openssl/dh.h> | ||
11 | |||
12 | void DH_set_default_method(DH_METHOD *meth); | ||
13 | |||
14 | DH_METHOD *DH_get_default_method(void); | ||
15 | |||
16 | DH_METHOD *DH_set_method(DH *dh, DH_METHOD *meth); | ||
17 | |||
18 | DH *DH_new_method(DH_METHOD *meth); | ||
19 | |||
20 | DH_METHOD *DH_OpenSSL(void); | ||
21 | |||
22 | =head1 DESCRIPTION | ||
23 | |||
24 | A B<DH_METHOD> specifies the functions that OpenSSL uses for Diffie-Hellman | ||
25 | operations. By modifying the method, alternative implementations | ||
26 | such as hardware accelerators may be used. | ||
27 | |||
28 | Initially, the default is to use the OpenSSL internal implementation. | ||
29 | DH_OpenSSL() returns a pointer to that method. | ||
30 | |||
31 | DH_set_default_method() makes B<meth> the default method for all B<DH> | ||
32 | structures created later. | ||
33 | |||
34 | DH_get_default_method() returns a pointer to the current default | ||
35 | method. | ||
36 | |||
37 | DH_set_method() selects B<meth> for all operations using the structure B<dh>. | ||
38 | |||
39 | DH_get_method() returns a pointer to the method currently selected | ||
40 | for B<dh>. | ||
41 | |||
42 | DH_new_method() allocates and initializes a B<DH> structure so that | ||
43 | B<method> will be used for the DH operations. If B<method> is B<NULL>, | ||
44 | the default method is used. | ||
45 | |||
46 | =head1 THE DH_METHOD STRUCTURE | ||
47 | |||
48 | typedef struct dh_meth_st | ||
49 | { | ||
50 | /* name of the implementation */ | ||
51 | const char *name; | ||
52 | |||
53 | /* generate private and public DH values for key agreement */ | ||
54 | int (*generate_key)(DH *dh); | ||
55 | |||
56 | /* compute shared secret */ | ||
57 | int (*compute_key)(unsigned char *key, BIGNUM *pub_key, DH *dh); | ||
58 | |||
59 | /* compute r = a ^ p mod m. May be NULL */ | ||
60 | int (*bn_mod_exp)(DH *dh, BIGNUM *r, BIGNUM *a, const BIGNUM *p, | ||
61 | const BIGNUM *m, BN_CTX *ctx, | ||
62 | BN_MONT_CTX *m_ctx); | ||
63 | |||
64 | /* called at DH_new */ | ||
65 | int (*init)(DH *dh); | ||
66 | |||
67 | /* called at DH_free */ | ||
68 | int (*finish)(DH *dh); | ||
69 | |||
70 | int flags; | ||
71 | |||
72 | char *app_data; /* ?? */ | ||
73 | |||
74 | } DH_METHOD; | ||
75 | |||
76 | =head1 RETURN VALUES | ||
77 | |||
78 | DH_OpenSSL(), DH_get_default_method() and DH_get_method() return | ||
79 | pointers to the respective B<DH_METHOD>s. | ||
80 | |||
81 | DH_set_default_method() returns no value. | ||
82 | |||
83 | DH_set_method() returns a pointer to the B<DH_METHOD> previously | ||
84 | associated with B<dh>. | ||
85 | |||
86 | DH_new_method() returns B<NULL> and sets an error code that can be | ||
87 | obtained by L<ERR_get_error(3)|ERR_get_error(3)> if the allocation fails. Otherwise it | ||
88 | returns a pointer to the newly allocated structure. | ||
89 | |||
90 | =head1 SEE ALSO | ||
91 | |||
92 | L<dh(3)|dh(3)>, L<DH_new(3)|DH_new(3)> | ||
93 | |||
94 | =head1 HISTORY | ||
95 | |||
96 | DH_set_default_method(), DH_get_default_method(), DH_set_method(), | ||
97 | DH_new_method() and DH_OpenSSL() were added in OpenSSL 0.9.4. | ||
98 | |||
99 | =cut | ||