summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorschwarze <>2016-11-30 18:05:18 +0000
committerschwarze <>2016-11-30 18:05:18 +0000
commit217bbb30a5b0c567db9c1c6c3c161fc592dfcf66 (patch)
tree93f13cf3ce0d27b9dad99b6a245ea7f4eb8f5689 /src
parent34046807ab0a55e63cc56cab3d7869830159c06d (diff)
downloadopenbsd-217bbb30a5b0c567db9c1c6c3c161fc592dfcf66.tar.gz
openbsd-217bbb30a5b0c567db9c1c6c3c161fc592dfcf66.tar.bz2
openbsd-217bbb30a5b0c567db9c1c6c3c161fc592dfcf66.zip
Add Copyright and license.
Fix the declaration of pem_password_cb. Simplify wording, mostly from OpenSSL. Garbage collect the empty RETURN VALUES section.
Diffstat (limited to 'src')
-rw-r--r--src/lib/libssl/man/SSL_CTX_set_default_passwd_cb.381
1 files changed, 60 insertions, 21 deletions
diff --git a/src/lib/libssl/man/SSL_CTX_set_default_passwd_cb.3 b/src/lib/libssl/man/SSL_CTX_set_default_passwd_cb.3
index 599c574c3d..b8febe1431 100644
--- a/src/lib/libssl/man/SSL_CTX_set_default_passwd_cb.3
+++ b/src/lib/libssl/man/SSL_CTX_set_default_passwd_cb.3
@@ -1,7 +1,54 @@
1.\" $OpenBSD: SSL_CTX_set_default_passwd_cb.3,v 1.2 2016/11/30 18:05:18 schwarze Exp $
2.\" OpenSSL 9b86974e Aug 17 15:21:33 2015 -0400
1.\" 3.\"
2.\" $OpenBSD: SSL_CTX_set_default_passwd_cb.3,v 1.1 2016/11/05 15:32:19 schwarze Exp $ 4.\" This file was written by Lutz Jaenicke <jaenicke@openssl.org>.
5.\" Copyright (c) 2000, 2001 The OpenSSL Project. All rights reserved.
3.\" 6.\"
4.Dd $Mdocdate: November 5 2016 $ 7.\" Redistribution and use in source and binary forms, with or without
8.\" modification, are permitted provided that the following conditions
9.\" are met:
10.\"
11.\" 1. Redistributions of source code must retain the above copyright
12.\" notice, this list of conditions and the following disclaimer.
13.\"
14.\" 2. Redistributions in binary form must reproduce the above copyright
15.\" notice, this list of conditions and the following disclaimer in
16.\" the documentation and/or other materials provided with the
17.\" distribution.
18.\"
19.\" 3. All advertising materials mentioning features or use of this
20.\" software must display the following acknowledgment:
21.\" "This product includes software developed by the OpenSSL Project
22.\" for use in the OpenSSL Toolkit. (http://www.openssl.org/)"
23.\"
24.\" 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to
25.\" endorse or promote products derived from this software without
26.\" prior written permission. For written permission, please contact
27.\" openssl-core@openssl.org.
28.\"
29.\" 5. Products derived from this software may not be called "OpenSSL"
30.\" nor may "OpenSSL" appear in their names without prior written
31.\" permission of the OpenSSL Project.
32.\"
33.\" 6. Redistributions of any form whatsoever must retain the following
34.\" acknowledgment:
35.\" "This product includes software developed by the OpenSSL Project
36.\" for use in the OpenSSL Toolkit (http://www.openssl.org/)"
37.\"
38.\" THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY
39.\" EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
40.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
41.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR
42.\" ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
43.\" SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
44.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
45.\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
46.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
47.\" STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
48.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
49.\" OF THE POSSIBILITY OF SUCH DAMAGE.
50.\"
51.Dd $Mdocdate: November 30 2016 $
5.Dt SSL_CTX_SET_DEFAULT_PASSWD_CB 3 52.Dt SSL_CTX_SET_DEFAULT_PASSWD_CB 3
6.Os 53.Os
7.Sh NAME 54.Sh NAME
@@ -14,8 +61,9 @@
14.Fn SSL_CTX_set_default_passwd_cb "SSL_CTX *ctx" "pem_password_cb *cb" 61.Fn SSL_CTX_set_default_passwd_cb "SSL_CTX *ctx" "pem_password_cb *cb"
15.Ft void 62.Ft void
16.Fn SSL_CTX_set_default_passwd_cb_userdata "SSL_CTX *ctx" "void *u" 63.Fn SSL_CTX_set_default_passwd_cb_userdata "SSL_CTX *ctx" "void *u"
17.Ft int 64.In openssl/pem.h
18.Fn pem_passwd_cb "char *buf" "int size" "int rwflag" "void *userdata" 65.Ft typedef int
66.Fn pem_password_cb "char *buf" "int size" "int rwflag" "void *userdata"
19.Sh DESCRIPTION 67.Sh DESCRIPTION
20.Fn SSL_CTX_set_default_passwd_cb 68.Fn SSL_CTX_set_default_passwd_cb
21sets the default password callback called when loading/storing a PEM 69sets the default password callback called when loading/storing a PEM
@@ -27,13 +75,14 @@ sets a pointer to userdata
27which will be provided to the password callback on invocation. 75which will be provided to the password callback on invocation.
28.Pp 76.Pp
29The 77The
30.Fn pem_passwd_cb , 78password callback
79.Fa cb ,
31which must be provided by the application, 80which must be provided by the application,
32hands back the password to be used during decryption. 81hands back the password to be used during decryption.
33On invocation a pointer to 82On invocation a pointer to
34.Fa userdata 83.Fa userdata
35is provided. 84is provided.
36The pem_passwd_cb must write the password into the provided buffer 85The password callback must write the password into the provided buffer
37.Fa buf 86.Fa buf
38which is of size 87which is of size
39.Fa size . 88.Fa size .
@@ -43,24 +92,19 @@ indicates whether the callback is used for reading/decryption
43.Pq Fa rwflag No = 0 92.Pq Fa rwflag No = 0
44or writing/encryption 93or writing/encryption
45.Pq Fa rwflag No = 1 . 94.Pq Fa rwflag No = 1 .
46.Sh NOTES 95.Pp
47When loading or storing private keys, a password might be supplied to protect 96When loading or storing private keys, a password might be supplied to protect
48the private key. 97the private key.
49The way this password can be supplied may depend on the application. 98The way this password can be supplied may depend on the application.
50If only one private key is handled, it can be practical to have 99If only one private key is handled, it can be practical to have the
51.Fn pem_passwd_cb 100callback handle the password dialog interactively.
52handle the password dialog interactively.
53If several keys have to be handled, it can be practical to ask for the password 101If several keys have to be handled, it can be practical to ask for the password
54once, then keep it in memory and use it several times. 102once, then keep it in memory and use it several times.
55In the last case, the password could be stored into the 103In the last case, the password could be stored into the
56.Fa userdata 104.Fa userdata
57storage and the 105storage and the callback only returns the password already stored.
58.Fn pem_passwd_cb
59only returns the password already stored.
60.Pp 106.Pp
61When asking for the password interactively, 107When asking for the password interactively, the callback can use
62.Fn pem_passwd_cb
63can use
64.Fa rwflag 108.Fa rwflag
65to check whether an item shall be encrypted 109to check whether an item shall be encrypted
66.Pq Fa rwflag No = 1 . 110.Pq Fa rwflag No = 1 .
@@ -69,11 +113,6 @@ comparison in order to catch typos which would make decryption impossible.
69.Pp 113.Pp
70Other items in PEM formatting (certificates) can also be encrypted; it is 114Other items in PEM formatting (certificates) can also be encrypted; it is
71however atypical, as certificate information is considered public. 115however atypical, as certificate information is considered public.
72.Sh RETURN VALUES
73.Fn SSL_CTX_set_default_passwd_cb
74and
75.Fn SSL_CTX_set_default_passwd_cb_userdata
76do not provide diagnostic information.
77.Sh EXAMPLES 116.Sh EXAMPLES
78The following example returns the password provided as 117The following example returns the password provided as
79.Fa userdata 118.Fa userdata