sync code with last improvements from OpenBSD
This commit is contained in:
parent
708141b7a2
commit
085b88af82
18 changed files with 307 additions and 35 deletions
134
lib/libcrypto/man/EVP_CIPHER_do_all.3
Normal file
134
lib/libcrypto/man/EVP_CIPHER_do_all.3
Normal file
|
@ -0,0 +1,134 @@
|
|||
.\" $OpenBSD: EVP_CIPHER_do_all.3,v 1.1 2023/08/30 00:58:57 tb Exp $
|
||||
.\"
|
||||
.\" Copyright (c) 2023 Theo Buehler <tb@openbsd.org>
|
||||
.\"
|
||||
.\" Permission to use, copy, modify, and distribute this software for any
|
||||
.\" purpose with or without fee is hereby granted, provided that the above
|
||||
.\" copyright notice and this permission notice appear in all copies.
|
||||
.\"
|
||||
.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
||||
.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
||||
.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
||||
.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
||||
.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
||||
.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
||||
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
.\"
|
||||
.Dd $Mdocdate: August 30 2023 $
|
||||
.Dt EVP_CIPHER_DO_ALL 3
|
||||
.Os
|
||||
.Sh NAME
|
||||
.Nm EVP_CIPHER_do_all ,
|
||||
.Nm EVP_CIPHER_do_all_sorted ,
|
||||
.Nm EVP_MD_do_all ,
|
||||
.Nm EVP_MD_do_all_sorted
|
||||
.Nd iterate over lookup tables for ciphers and digests
|
||||
.Sh SYNOPSIS
|
||||
.In openssl/evp.h
|
||||
.Ft void
|
||||
.Fo EVP_CIPHER_do_all
|
||||
.Fa "void (*fn)(const EVP_CIPHER *cipher, const char *from,\
|
||||
const char *to, void *arg)"
|
||||
.Fa "void *arg"
|
||||
.Fc
|
||||
.Ft void
|
||||
.Fo EVP_CIPHER_do_all_sorted
|
||||
.Fa "void (*fn)(const EVP_CIPHER *cipher, const char *from,\
|
||||
const char *to, void *arg)"
|
||||
.Fa "void *arg"
|
||||
.Fc
|
||||
.Ft void
|
||||
.Fo EVP_MD_do_all
|
||||
.Fa "void (*fn)(const EVP_MD *md, const char *from,\
|
||||
const char *to, void *arg)"
|
||||
.Fa "void *arg"
|
||||
.Fc
|
||||
.Ft void
|
||||
.Fo EVP_MD_do_all_sorted
|
||||
.Fa "void (*fn)(const EVP_MD *md, const char *from,\
|
||||
const char *to, void *arg)"
|
||||
.Fa "void *arg"
|
||||
.Fc
|
||||
.Sh DESCRIPTION
|
||||
.Fn EVP_CIPHER_do_all
|
||||
calls
|
||||
.Fa fn
|
||||
on every entry of the global table of cipher names and aliases.
|
||||
For a cipher name entry,
|
||||
.Fa fn
|
||||
is called with a non-NULL
|
||||
.Fa cipher ,
|
||||
its non-NULL cipher name
|
||||
.Fa from ,
|
||||
a NULL
|
||||
.Fa to ,
|
||||
and the
|
||||
.Fa arg
|
||||
pointer.
|
||||
For an alias entry,
|
||||
.Fa fn
|
||||
is called with a NULL
|
||||
.Fa cipher ,
|
||||
its alias
|
||||
.Fa from ,
|
||||
the cipher name that alias points
|
||||
.Fa to ,
|
||||
and the
|
||||
.Fa arg
|
||||
pointer.
|
||||
.Pp
|
||||
.Fn EVP_CIPHER_do_all_sorted
|
||||
is similar, except that it processes the cipher names and aliases
|
||||
in lexicographic order of their
|
||||
.Fa from
|
||||
names as determined by
|
||||
.Xr strcmp 3 .
|
||||
.Pp
|
||||
.Fn EVP_MD_do_all
|
||||
calls
|
||||
.Fa fn
|
||||
on every entry of the global table of digest names and aliases.
|
||||
For a digest name entry,
|
||||
.Fa fn
|
||||
is called with a non-NULL
|
||||
.Fa md ,
|
||||
its non-NULL digest name
|
||||
.Fa from ,
|
||||
a NULL
|
||||
.Fa to ,
|
||||
and the
|
||||
.Fa arg
|
||||
pointer.
|
||||
For an alias entry,
|
||||
.Fa fn
|
||||
is called with a NULL
|
||||
.Fa md ,
|
||||
its alias
|
||||
.Fa from ,
|
||||
the digest name that alias points
|
||||
.Fa to ,
|
||||
and the
|
||||
.Fa arg
|
||||
pointer.
|
||||
.Pp
|
||||
.Fn EVP_MD_do_all_sorted
|
||||
is similar, except that it processes the digest names and aliases
|
||||
in lexicographic order of their
|
||||
.Fa from
|
||||
names as determined by
|
||||
.Xr strcmp 3 .
|
||||
.Sh SEE ALSO
|
||||
.Xr evp 3 ,
|
||||
.Xr EVP_add_cipher 3 ,
|
||||
.Xr OBJ_NAME_do_all 3
|
||||
.Sh HISTORY
|
||||
These functions first appeared in OpenSSL 1.0.0 and have been available since
|
||||
.Ox 4.9 .
|
||||
.Sh BUGS
|
||||
.Fn EVP_CIPHER_do_all_sorted
|
||||
and
|
||||
.Fn EVP_MD_do_all_sorted
|
||||
are wrappers of
|
||||
.Xr OBJ_NAME_do_all_sorted 3 .
|
||||
In particular, if memory allocation fails, they do nothing at all
|
||||
without telling the caller about the problem.
|
|
@ -1,4 +1,4 @@
|
|||
# $OpenBSD: Makefile,v 1.264 2023/08/27 15:33:08 schwarze Exp $
|
||||
# $OpenBSD: Makefile,v 1.265 2023/08/30 00:58:57 tb Exp $
|
||||
|
||||
.include <bsd.own.mk>
|
||||
|
||||
|
@ -165,6 +165,7 @@ MAN= \
|
|||
EVP_AEAD_CTX_init.3 \
|
||||
EVP_BytesToKey.3 \
|
||||
EVP_CIPHER_CTX_get_cipher_data.3 \
|
||||
EVP_CIPHER_do_all.3 \
|
||||
EVP_CIPHER_meth_new.3 \
|
||||
EVP_DigestInit.3 \
|
||||
EVP_DigestSignInit.3 \
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
.\" $OpenBSD: evp.3,v 1.20 2023/08/27 15:33:08 schwarze Exp $
|
||||
.\" $OpenBSD: evp.3,v 1.21 2023/08/30 00:58:57 tb Exp $
|
||||
.\" full merge up to: OpenSSL man7/evp 24a535ea Sep 22 13:14:20 2020 +0100
|
||||
.\"
|
||||
.\" This file was written by Ulf Moeller <ulf@openssl.org>,
|
||||
|
@ -51,7 +51,7 @@
|
|||
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
|
||||
.\" OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.Dd $Mdocdate: August 27 2023 $
|
||||
.Dd $Mdocdate: August 30 2023 $
|
||||
.Dt EVP 3
|
||||
.Os
|
||||
.Sh NAME
|
||||
|
@ -200,6 +200,7 @@ operations are more efficient using the high-level interfaces.
|
|||
.Xr EVP_camellia_128_cbc 3 ,
|
||||
.Xr EVP_chacha20 3 ,
|
||||
.Xr EVP_CIPHER_CTX_get_cipher_data 3 ,
|
||||
.Xr EVP_CIPHER_do_all 3 ,
|
||||
.Xr EVP_CIPHER_meth_new 3 ,
|
||||
.Xr EVP_des_cbc 3 ,
|
||||
.Xr EVP_DigestInit 3 ,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue