diff options
450 files changed, 6543 insertions, 39984 deletions
@@ -12,7 +12,8 @@ Michal Meloun <mmel@FreeBSD.org> <strejda@users.noreply.github.com> Dmitriy Alexandrov <d06alexandrov@gmail.com> <d06alexandrov@users.noreply.github.com> Alfonso Gregory <gfunni234@gmail.com> <83477269+AtariDreams@users.noreply.github.com> Alfonso Gregory <gfunni234@gmail.com> <83477269+gAlfonso-bit@users.noreply.github.com> -Jose Luis Duran <jlduran@gmail.com> <jlduran@users.noreply.github.com> +Jose Luis Duran <jlduran@FreeBSD.org> <jlduran@users.noreply.github.com> +Jose Luis Duran <jlduran@FreeBSD.org> <jlduran@gmail.com> Val Packett <val@packett.cool> <greg@unrelenting.technology> Piotr Paweł Stefaniak <pstef@FreeBSD.org> <pstef@FreeBSD.org> Sumit Saxena <ssaxena@FreeBSD.org> <sumit@FreeBSD.org> diff --git a/MAINTAINERS b/MAINTAINERS index ea9bb4195aa1..e32822f8675d 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -111,6 +111,7 @@ sys/xen royger Pre-commit review recommended. tests ngie,#test Pre-commit review requested. tools/build imp Pre-commit review requested, especially to fix bootstrap issues. top(1) eadler Pre-commit review requested. +ufshci(4) jaeyoon Pre-commit review requested. usr.sbin/bsdconfig dteske Pre-commit phabricator review requested. usr.sbin/dpv dteske Pre-commit review requested. Keep in sync with libdpv. usr.sbin/pkg pkg@ Please coordinate behavior or flag changes with pkg team. diff --git a/Makefile.inc1 b/Makefile.inc1 index a86dead09aa1..e341599ac505 100644 --- a/Makefile.inc1 +++ b/Makefile.inc1 @@ -587,7 +587,16 @@ PKG_VERSION:= ${_PKG_REVISION}${EXTRA_REVISION:C/[[:space:]]//g} .endif # !defined(_MKSHOWCONFIG) +PKG_NAME_PREFIX?= FreeBSD +PKG_MAINTAINER?= re@FreeBSD.org +PKG_WWW?= https://www.FreeBSD.org +PKG_WORKERS_COUNT?= 1 + .if make(*package*) +.export PKG_NAME_PREFIX +.export PKG_MAINTAINER +.export PKG_WWW + .if !defined(PKG_TIMESTAMP) .if !empty(GIT_CMD) && exists(${GIT_CMD}) && exists(${SRCDIR}/.git) SOURCE_DATE_EPOCH!= ${GIT_CMD} -C ${SRCDIR} show -s --format=%ct HEAD @@ -598,14 +607,6 @@ SOURCE_DATE_EPOCH= ${TIMEEPOCHNOW:gmtime} .else SOURCE_DATE_EPOCH= ${PKG_TIMESTAMP} .endif -PKG_WORKERS_COUNT?= 1 - -PKG_NAME_PREFIX?= FreeBSD -PKG_MAINTAINER?= re@FreeBSD.org -PKG_WWW?= https://www.FreeBSD.org -.export PKG_NAME_PREFIX -.export PKG_MAINTAINER -.export PKG_WWW .endif .if !defined(_MKSHOWCONFIG) @@ -1353,6 +1354,28 @@ __installcheck_DESTDIR: .PHONY .endif .endif +# +# Don't allow installworld or installkernel on a pkgbase system. This avoids +# accidentally updating a pkgbase system with install{world,kernel}, causing +# the installed system to become out of date with the package database. +# +# Skip the check if DESTDIR is defined on the assumption the user knows what +# they're doing. This means the check can be disabled for the running system +# using DESTDIR=/. +# +.if !make(distributeworld) && !defined(DESTDIR) +_installcheck_world: __installcheck_PKG +_installcheck_kernel: __installcheck_PKG +__installcheck_PKG: .PHONY +.if exists(${LOCALBASE}/sbin/pkg-static) + @if ${LOCALBASE}/sbin/pkg-static info -e ${PKG_NAME_PREFIX}-runtime; then \ + echo >&2 "ERROR: This target should not be used on a system installed from packages." ; \ + echo >&2 " To override this check, set DESTDIR=/."; \ + false; \ + fi +.endif +.endif + .if !defined(DB_FROM_SRC) # # Check for missing UIDs/GIDs. @@ -27,6 +27,22 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 16.x IS SLOW: world, or to merely disable the most expensive debugging functionality at runtime, run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) +20251021: + Bump __FreeBSD_version to 1600002 for LinuxKPI. An embedded struct + has changed size and might possibly be an issue otherwise. + +20251016: + With the migration to OpenZFS in FreeBSD 13.x a number of ZFS sysctls + moved to new locations, but backwards compatibility aliases were + provided. These aliases will be removed in the near future. Please + update /etc/sysctl.conf to reference the new OIDs. For example, + + vfs.zfs.min_auto_ashift=12 + + needs to be changed to + + vfs.zfs.vdev.min_auto_ashift=12 + 20251015: The "FreeBSD-unbound" package is renamed to "FreeBSD-local-unbound". If you have set-optional or set-base installed, the new package will diff --git a/contrib/libarchive/NEWS b/contrib/libarchive/NEWS index caca7d5cbdb9..f2dd4102fa04 100644 --- a/contrib/libarchive/NEWS +++ b/contrib/libarchive/NEWS @@ -1,3 +1,5 @@ +Oct 15, 2026: libarchive 3.8.2 released + Jun 01, 2026: libarchive 3.8.1 released May 20, 2025: libarchive 3.8.0 released diff --git a/contrib/libarchive/SECURITY.md b/contrib/libarchive/SECURITY.md index 6ca188b603fe..f2f60e792a57 100644 --- a/contrib/libarchive/SECURITY.md +++ b/contrib/libarchive/SECURITY.md @@ -16,4 +16,4 @@ Please provide the following information in your report: - How to reproduce the issue This project is maintained by volunteers on a reasonable-effort basis. As such, we ask -that you give me 90 days to work on a fix before public exposure. +that you give us 90 days to work on a fix before public exposure. diff --git a/contrib/libarchive/build/ci/github_actions/install-macos-dependencies.sh b/contrib/libarchive/build/ci/github_actions/install-macos-dependencies.sh index 2aa4823fc3d0..b33aed5e5562 100755 --- a/contrib/libarchive/build/ci/github_actions/install-macos-dependencies.sh +++ b/contrib/libarchive/build/ci/github_actions/install-macos-dependencies.sh @@ -5,6 +5,9 @@ set -eux #brew update > /dev/null #brew upgrade > /dev/null +# Workaround for cmake in local/pinned tap issue +brew uninstall cmake + # This does an upgrade if the package is already installed brew install \ autoconf \ diff --git a/contrib/libarchive/cat/bsdcat.c b/contrib/libarchive/cat/bsdcat.c index 731621fa9b75..2e78870ae50e 100644 --- a/contrib/libarchive/cat/bsdcat.c +++ b/contrib/libarchive/cat/bsdcat.c @@ -7,6 +7,9 @@ #include "bsdcat_platform.h" +#ifdef HAVE_SIGNAL_H +#include <signal.h> +#endif #include <stdio.h> #ifdef HAVE_STDLIB_H #include <stdlib.h> @@ -22,7 +25,7 @@ #include <archive_entry.h> #include "bsdcat.h" -#include "err.h" +#include "lafe_err.h" #define BYTES_PER_BLOCK (20*512) @@ -105,6 +108,16 @@ main(int argc, char **argv) bsdcat = &bsdcat_storage; memset(bsdcat, 0, sizeof(*bsdcat)); +#if defined(HAVE_SIGACTION) && defined(SIGCHLD) + { /* Do not ignore SIGCHLD. */ + struct sigaction sa; + sa.sa_handler = SIG_DFL; + sigemptyset(&sa.sa_mask); + sa.sa_flags = 0; + sigaction(SIGCHLD, &sa, NULL); + } +#endif + lafe_setprogname(*argv, "bsdcat"); bsdcat->argv = argv; diff --git a/contrib/libarchive/cat/cmdline.c b/contrib/libarchive/cat/cmdline.c index 8ecd74aa95e4..5a5fcaf0263f 100644 --- a/contrib/libarchive/cat/cmdline.c +++ b/contrib/libarchive/cat/cmdline.c @@ -22,7 +22,7 @@ #endif #include "bsdcat.h" -#include "err.h" +#include "lafe_err.h" /* * Short options for bsdcat. Please keep this sorted. diff --git a/contrib/libarchive/cpio/cmdline.c b/contrib/libarchive/cpio/cmdline.c index c67519947dbc..db06c03c011d 100644 --- a/contrib/libarchive/cpio/cmdline.c +++ b/contrib/libarchive/cpio/cmdline.c @@ -26,7 +26,7 @@ #endif #include "cpio.h" -#include "err.h" +#include "lafe_err.h" /* * Short options for cpio. Please keep this sorted. diff --git a/contrib/libarchive/cpio/cpio.c b/contrib/libarchive/cpio/cpio.c index 2bf1bfa2985a..262db510568b 100644 --- a/contrib/libarchive/cpio/cpio.c +++ b/contrib/libarchive/cpio/cpio.c @@ -60,7 +60,7 @@ #endif #include "cpio.h" -#include "err.h" +#include "lafe_err.h" #include "line_reader.h" #include "passphrase.h" @@ -124,13 +124,21 @@ main(int argc, char *argv[]) cpio->buff_size = sizeof(buff); -#if defined(HAVE_SIGACTION) && defined(SIGPIPE) - { /* Ignore SIGPIPE signals. */ +#if defined(HAVE_SIGACTION) + { struct sigaction sa; sigemptyset(&sa.sa_mask); sa.sa_flags = 0; +#ifdef SIGPIPE + /* Ignore SIGPIPE signals. */ sa.sa_handler = SIG_IGN; sigaction(SIGPIPE, &sa, NULL); +#endif +#ifdef SIGCHLD + /* Do not ignore SIGCHLD. */ + sa.sa_handler = SIG_DFL; + sigaction(SIGCHLD, &sa, NULL); +#endif } #endif diff --git a/contrib/libarchive/cpio/test/test_owner_parse.c b/contrib/libarchive/cpio/test/test_owner_parse.c index dfc78ca77aec..bd68f21cec9b 100644 --- a/contrib/libarchive/cpio/test/test_owner_parse.c +++ b/contrib/libarchive/cpio/test/test_owner_parse.c @@ -7,7 +7,7 @@ #include "test.h" #include "../cpio.h" -#include "err.h" +#include "lafe_err.h" #if !defined(_WIN32) #define ROOT "root" diff --git a/contrib/libarchive/libarchive/archive.h b/contrib/libarchive/libarchive/archive.h index 002190a24663..98d7674e18f1 100644 --- a/contrib/libarchive/libarchive/archive.h +++ b/contrib/libarchive/libarchive/archive.h @@ -34,7 +34,7 @@ * assert that ARCHIVE_VERSION_NUMBER >= 2012108. */ /* Note: Compiler will complain if this does not match archive_entry.h! */ -#define ARCHIVE_VERSION_NUMBER 3008001 +#define ARCHIVE_VERSION_NUMBER 3008002 #include <sys/stat.h> #include <stddef.h> /* for wchar_t */ @@ -177,7 +177,7 @@ __LA_DECL int archive_version_number(void); /* * Textual name/version of the library, useful for version displays. */ -#define ARCHIVE_VERSION_ONLY_STRING "3.8.1" +#define ARCHIVE_VERSION_ONLY_STRING "3.8.2" #define ARCHIVE_VERSION_STRING "libarchive " ARCHIVE_VERSION_ONLY_STRING __LA_DECL const char * archive_version_string(void); diff --git a/contrib/libarchive/libarchive/archive_acl.c b/contrib/libarchive/libarchive/archive_acl.c index 9e71f5ee5610..362e3308f43f 100644 --- a/contrib/libarchive/libarchive/archive_acl.c +++ b/contrib/libarchive/libarchive/archive_acl.c @@ -270,6 +270,19 @@ acl_new_entry(struct archive_acl *acl, { struct archive_acl_entry *ap, *aq; + /* Reject an invalid type */ + switch (type) { + case ARCHIVE_ENTRY_ACL_TYPE_ACCESS: + case ARCHIVE_ENTRY_ACL_TYPE_DEFAULT: + case ARCHIVE_ENTRY_ACL_TYPE_ALLOW: + case ARCHIVE_ENTRY_ACL_TYPE_DENY: + case ARCHIVE_ENTRY_ACL_TYPE_AUDIT: + case ARCHIVE_ENTRY_ACL_TYPE_ALARM: + break; + default: + return (NULL); + } + /* Type argument must be a valid NFS4 or POSIX.1e type. * The type must agree with anything already set and * the permset must be compatible. */ @@ -822,6 +835,9 @@ append_entry_w(wchar_t **wp, const wchar_t *prefix, int type, wname = NULL; id = -1; break; + default: + **wp = '\0'; + break; } *wp += wcslen(*wp); *(*wp)++ = L':'; @@ -878,6 +894,7 @@ append_entry_w(wchar_t **wp, const wchar_t *prefix, int type, wcscpy(*wp, L"alarm"); break; default: + *(*wp) = L'\0'; break; } *wp += wcslen(*wp); @@ -1057,6 +1074,9 @@ append_entry(char **p, const char *prefix, int type, name = NULL; id = -1; break; + default: + **p = '\0'; + break; } *p += strlen(*p); *(*p)++ = ':'; @@ -1112,6 +1132,9 @@ append_entry(char **p, const char *prefix, int type, case ARCHIVE_ENTRY_ACL_TYPE_ALARM: strcpy(*p, "alarm"); break; + default: + *(*p) = '\0'; + break; } *p += strlen(*p); } diff --git a/contrib/libarchive/libarchive/archive_check_magic.c b/contrib/libarchive/libarchive/archive_check_magic.c index d12f0c496e27..6b8e0c5595f4 100644 --- a/contrib/libarchive/libarchive/archive_check_magic.c +++ b/contrib/libarchive/libarchive/archive_check_magic.c @@ -30,6 +30,7 @@ #endif #include <stdio.h> +#include <errno.h> #ifdef HAVE_STDLIB_H #include <stdlib.h> #endif @@ -54,8 +55,14 @@ errmsg(const char *m) while (s > 0) { written = write(2, m, s); - if (written <= 0) + if (written == 0) return; + if (written < 0) + { + if (errno == EINTR) + continue; + return; + } m += written; s -= written; } diff --git a/contrib/libarchive/libarchive/archive_cryptor.c b/contrib/libarchive/libarchive/archive_cryptor.c index 1825af4dc510..9f03f9ca6dd0 100644 --- a/contrib/libarchive/libarchive/archive_cryptor.c +++ b/contrib/libarchive/libarchive/archive_cryptor.c @@ -151,7 +151,7 @@ pbkdf2_sha1(const char *pw, size_t pw_len, const uint8_t *salt, (void)rounds; /* UNUSED */ (void)derived_key; /* UNUSED */ (void)derived_key_len; /* UNUSED */ - return -1; /* UNSUPPORTED */ + return CRYPTOR_STUB_FUNCTION; /* UNSUPPORTED */ } #endif @@ -439,14 +439,14 @@ aes_ctr_init(archive_crypto_ctx *ctx, const uint8_t *key, size_t key_len) (void)ctx; /* UNUSED */ (void)key; /* UNUSED */ (void)key_len; /* UNUSED */ - return -1; + return CRYPTOR_STUB_FUNCTION; } static int aes_ctr_encrypt_counter(archive_crypto_ctx *ctx) { (void)ctx; /* UNUSED */ - return -1; + return CRYPTOR_STUB_FUNCTION; } static int @@ -469,7 +469,7 @@ aes_ctr_update(archive_crypto_ctx *ctx, const uint8_t * const in, (void)out; /* UNUSED */ (void)out_len; /* UNUSED */ aes_ctr_encrypt_counter(ctx); /* UNUSED */ /* Fix unused function warning */ - return -1; + return CRYPTOR_STUB_FUNCTION; } #else diff --git a/contrib/libarchive/libarchive/archive_cryptor_private.h b/contrib/libarchive/libarchive/archive_cryptor_private.h index 4b3c6c161433..1dbc5c17a01a 100644 --- a/contrib/libarchive/libarchive/archive_cryptor_private.h +++ b/contrib/libarchive/libarchive/archive_cryptor_private.h @@ -43,7 +43,7 @@ int __libarchive_cryptor_build_hack(void); #ifdef __APPLE__ # include <AvailabilityMacros.h> # if MAC_OS_X_VERSION_MAX_ALLOWED >= 1080 -# define ARCHIVE_CRYPTOR_USE_Apple_CommonCrypto +# define ARCHIVE_CRYPTOR_USE_Apple_CommonCrypto 1 # endif #endif @@ -144,9 +144,15 @@ typedef struct { #else +#if defined(ARCHIVE_CRYPTO_MD5_WIN) ||\ + defined(ARCHIVE_CRYPTO_SHA1_WIN) ||\ + defined(ARCHIVE_CRYPTO_SHA256_WIN) ||\ + defined(ARCHIVE_CRYPTO_SHA384_WIN) ||\ + defined(ARCHIVE_CRYPTO_SHA512_WIN) #if defined(_WIN32) && !defined(__CYGWIN__) && !(defined(HAVE_BCRYPT_H) && _WIN32_WINNT >= _WIN32_WINNT_VISTA) #define ARCHIVE_CRYPTOR_USE_WINCRYPT 1 #endif +#endif #define AES_BLOCK_SIZE 16 #define AES_MAX_KEY_SIZE 32 @@ -172,6 +178,9 @@ typedef int archive_crypto_ctx; #define archive_encrypto_aes_ctr_release(ctx) \ __archive_cryptor.encrypto_aes_ctr_release(ctx) +/* Stub return value if no encryption support exists. */ +#define CRYPTOR_STUB_FUNCTION -2 + /* Minimal interface to cryptographic functionality for internal use in * libarchive */ struct archive_cryptor diff --git a/contrib/libarchive/libarchive/archive_entry.h b/contrib/libarchive/libarchive/archive_entry.h index 2b917b3fde8e..344f33bffac2 100644 --- a/contrib/libarchive/libarchive/archive_entry.h +++ b/contrib/libarchive/libarchive/archive_entry.h @@ -28,7 +28,7 @@ #define ARCHIVE_ENTRY_H_INCLUDED /* Note: Compiler will complain if this does not match archive.h! */ -#define ARCHIVE_VERSION_NUMBER 3008001 +#define ARCHIVE_VERSION_NUMBER 3008002 /* * Note: archive_entry.h is for use outside of libarchive; the diff --git a/contrib/libarchive/libarchive/archive_entry_paths.3 b/contrib/libarchive/libarchive/archive_entry_paths.3 index 0f849c9ebb35..f739b172308d 100644 --- a/contrib/libarchive/libarchive/archive_entry_paths.3 +++ b/contrib/libarchive/libarchive/archive_entry_paths.3 @@ -64,7 +64,7 @@ Streaming Archive Library (libarchive, -larchive) .Ft void .Fn archive_entry_copy_hardlink "struct archive_entry *a" "const char *path" .Ft void -.Fn archive_entry_copy_hardlink_w "struct archive_entry *a "const wchar_t *path" +.Fn archive_entry_copy_hardlink_w "struct archive_entry *a" "const wchar_t *path" .Ft int .Fn archive_entry_update_hardlink_utf8 "struct archive_entry *a" "const char *path" .Ft void diff --git a/contrib/libarchive/libarchive/archive_entry_stat.c b/contrib/libarchive/libarchive/archive_entry_stat.c index c4906838ed0f..345d3d29b2f2 100644 --- a/contrib/libarchive/libarchive/archive_entry_stat.c +++ b/contrib/libarchive/libarchive/archive_entry_stat.c @@ -38,6 +38,7 @@ const struct stat * archive_entry_stat(struct archive_entry *entry) { + int64_t size; struct stat *st; if (entry->stat == NULL) { entry->stat = calloc(1, sizeof(*st)); @@ -74,7 +75,10 @@ archive_entry_stat(struct archive_entry *entry) st->st_ino = (ino_t)archive_entry_ino64(entry); st->st_nlink = archive_entry_nlink(entry); st->st_rdev = archive_entry_rdev(entry); - st->st_size = (off_t)archive_entry_size(entry); + size = archive_entry_size(entry); + st->st_size = (off_t)size; + if (st->st_size < 0 || (int64_t)st->st_size != size) + st->st_size = 0; st->st_mode = archive_entry_mode(entry); /* diff --git a/contrib/libarchive/libarchive/archive_parse_date.c b/contrib/libarchive/libarchive/archive_parse_date.c index cda0b11a555f..d9e968387d34 100644 --- a/contrib/libarchive/libarchive/archive_parse_date.c +++ b/contrib/libarchive/libarchive/archive_parse_date.c @@ -703,9 +703,7 @@ Convert(time_t Month, time_t Day, time_t Year, Year += 1900; DaysInMonth[1] = Year % 4 == 0 && (Year % 100 != 0 || Year % 400 == 0) ? 29 : 28; - /* Checking for 2038 bogusly assumes that time_t is 32 bits. But - I'm too lazy to try to check for time_t overflow in another way. */ - if (Year < EPOCH || Year >= 2038 + if (Year < EPOCH || (sizeof(time_t) <= 4 && Year >= 2038) || Month < 1 || Month > 12 /* Lint fluff: "conversion from long may lose accuracy" */ || Day < 1 || Day > DaysInMonth[(int)--Month] diff --git a/contrib/libarchive/libarchive/archive_platform.h b/contrib/libarchive/libarchive/archive_platform.h index f30df1104c83..33dc5582b7ed 100644 --- a/contrib/libarchive/libarchive/archive_platform.h +++ b/contrib/libarchive/libarchive/archive_platform.h @@ -183,16 +183,6 @@ #define CAN_RESTORE_METADATA_FD #endif -/* - * glibc 2.24 deprecates readdir_r - * bionic c deprecates readdir_r too - */ -#if defined(HAVE_READDIR_R) && (!defined(__GLIBC__) || !defined(__GLIBC_MINOR__) || __GLIBC__ < 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ < 24)) && (!defined(__ANDROID__)) -#define USE_READDIR_R 1 -#else -#undef USE_READDIR_R -#endif - /* Set up defaults for internal error codes. */ #ifndef ARCHIVE_ERRNO_FILE_FORMAT #if HAVE_EFTYPE diff --git a/contrib/libarchive/libarchive/archive_platform_stat.h b/contrib/libarchive/libarchive/archive_platform_stat.h new file mode 100644 index 000000000000..5432b2f6433a --- /dev/null +++ b/contrib/libarchive/libarchive/archive_platform_stat.h @@ -0,0 +1,45 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2025 Tobias Stoeckmann + * All rights reserved. + */ + +/* !!ONLY FOR USE INTERNALLY TO LIBARCHIVE!! */ + +#ifndef ARCHIVE_PLATFORM_STAT_H_INCLUDED +#define ARCHIVE_PLATFORM_STAT_H_INCLUDED + +#ifndef __LIBARCHIVE_BUILD +#error This header is only to be used internally to libarchive. +#endif + +#if defined(_WIN32) && !defined(__CYGWIN__) +/* We use _lseeki64() on Windows. */ +typedef int64_t la_seek_t; + +struct la_seek_stat { + int64_t st_mtime; + ino_t st_ino; + unsigned short st_mode; + uint32_t st_nlink; + gid_t st_gid; + la_seek_t st_size; + uid_t st_uid; + dev_t st_dev; + dev_t st_rdev; +}; +typedef struct la_seek_stat la_seek_stat_t; + +#define la_seek_fstat(fd, st) __la_seek_fstat((fd), (st)) +#define la_seek_stat(fd, st) __la_seek_stat((fd), (st)) + +#else +typedef off_t la_seek_t; +typedef struct stat la_seek_stat_t; + +#define la_seek_fstat(fd, st) fstat((fd), (st)) +#define la_seek_stat(fd, st) stat((fd), (st)) +#endif + +#endif /* !ARCHIVE_PLATFORM_STAT_H_INCLUDED */ diff --git a/contrib/libarchive/libarchive/archive_private.h b/contrib/libarchive/libarchive/archive_private.h index 050fc63c0b2e..3a926c6886ad 100644 --- a/contrib/libarchive/libarchive/archive_private.h +++ b/contrib/libarchive/libarchive/archive_private.h @@ -158,6 +158,7 @@ int __archive_check_magic(struct archive *, unsigned int magic, __LA_NORETURN void __archive_errx(int retvalue, const char *msg); void __archive_ensure_cloexec_flag(int fd); +int __archive_get_tempdir(struct archive_string *); int __archive_mktemp(const char *tmpdir); #if defined(_WIN32) && !defined(__CYGWIN__) int __archive_mkstemp(wchar_t *templates); diff --git a/contrib/libarchive/libarchive/archive_read.c b/contrib/libarchive/libarchive/archive_read.c index 50db87017706..c9b9d5981516 100644 --- a/contrib/libarchive/libarchive/archive_read.c +++ b/contrib/libarchive/libarchive/archive_read.c @@ -575,8 +575,7 @@ choose_filters(struct archive_read *a) return (ARCHIVE_OK); } - filter - = calloc(1, sizeof(*filter)); + filter = calloc(1, sizeof(*filter)); if (filter == NULL) return (ARCHIVE_FATAL); filter->bidder = best_bidder; @@ -834,7 +833,9 @@ archive_read_data(struct archive *_a, void *buff, size_t s) r = archive_read_data_block(a, &read_buf, &a->read_data_remaining, &a->read_data_offset); a->read_data_block = read_buf; - if (r == ARCHIVE_EOF) + if (r == ARCHIVE_EOF && + a->read_data_offset == a->read_data_output_offset && + a->read_data_remaining == 0) return (bytes_read); /* * Error codes are all negative, so the status diff --git a/contrib/libarchive/libarchive/archive_read_disk_entry_from_file.c b/contrib/libarchive/libarchive/archive_read_disk_entry_from_file.c index 19d049770b78..42af4034b07e 100644 --- a/contrib/libarchive/libarchive/archive_read_disk_entry_from_file.c +++ b/contrib/libarchive/libarchive/archive_read_disk_entry_from_file.c @@ -338,7 +338,7 @@ setup_mac_metadata(struct archive_read_disk *a, int ret = ARCHIVE_OK; void *buff = NULL; int have_attrs; - const char *name, *tempdir; + const char *name; struct archive_string tempfile; (void)fd; /* UNUSED */ @@ -357,13 +357,11 @@ setup_mac_metadata(struct archive_read_disk *a, if (have_attrs == 0) return (ARCHIVE_OK); - tempdir = NULL; - if (issetugid() == 0) - tempdir = getenv("TMPDIR"); - if (tempdir == NULL) - tempdir = _PATH_TMP; archive_string_init(&tempfile); - archive_strcpy(&tempfile, tempdir); + if (__archive_get_tempdir(&tempfile) != ARCHIVE_OK) { + ret = ARCHIVE_WARN; + goto cleanup; + } archive_strcat(&tempfile, "tar.md.XXXXXX"); tempfd = mkstemp(tempfile.s); if (tempfd < 0) { diff --git a/contrib/libarchive/libarchive/archive_read_disk_posix.c b/contrib/libarchive/libarchive/archive_read_disk_posix.c index a7a98e9cb1cd..54a8e66188f8 100644 --- a/contrib/libarchive/libarchive/archive_read_disk_posix.c +++ b/contrib/libarchive/libarchive/archive_read_disk_posix.c @@ -168,9 +168,6 @@ struct filesystem { int synthetic; int remote; int noatime; -#if defined(USE_READDIR_R) - size_t name_max; -#endif long incr_xfer_size; long max_xfer_size; long min_xfer_size; @@ -203,10 +200,6 @@ struct tree { DIR *d; #define INVALID_DIR_HANDLE NULL struct dirent *de; -#if defined(USE_READDIR_R) - struct dirent *dirent; - size_t dirent_allocated; -#endif int flags; int visit_type; /* Error code from last failed operation. */ @@ -869,7 +862,7 @@ next_entry(struct archive_read_disk *a, struct tree *t, tree_enter_initial_dir(t); return (ARCHIVE_FATAL); case TREE_ERROR_DIR: - archive_set_error(&a->archive, ARCHIVE_ERRNO_MISC, + archive_set_error(&a->archive, t->tree_errno, "%s: Couldn't visit directory", tree_current_path(t)); tree_enter_initial_dir(t); @@ -1578,9 +1571,6 @@ setup_current_filesystem(struct archive_read_disk *a) # endif #endif int r, xr = 0; -#if !defined(HAVE_STRUCT_STATFS_F_NAMEMAX) - long nm; -#endif t->current_filesystem->synthetic = -1; t->current_filesystem->remote = -1; @@ -1647,35 +1637,6 @@ setup_current_filesystem(struct archive_read_disk *a) #endif t->current_filesystem->noatime = 0; -#if defined(USE_READDIR_R) - /* Set maximum filename length. */ -#if defined(HAVE_STRUCT_STATFS_F_NAMEMAX) - t->current_filesystem->name_max = sfs.f_namemax; -#else -# if defined(_PC_NAME_MAX) - /* Mac OS X does not have f_namemax in struct statfs. */ - if (tree_current_is_symblic_link_target(t)) { - if (tree_enter_working_dir(t) != 0) { - archive_set_error(&a->archive, errno, "fchdir failed"); - return (ARCHIVE_FAILED); - } - nm = pathconf(tree_current_access_path(t), _PC_NAME_MAX); - } else - nm = fpathconf(tree_current_dir_fd(t), _PC_NAME_MAX); -# else - nm = -1; -# endif - if (nm == -1) - t->current_filesystem->name_max = NAME_MAX; - else - t->current_filesystem->name_max = nm; -#endif - if (t->current_filesystem->name_max == 0) { - archive_set_error(&a->archive, ARCHIVE_ERRNO_MISC, - "Cannot determine name_max"); - return (ARCHIVE_FAILED); - } -#endif /* USE_READDIR_R */ return (ARCHIVE_OK); } @@ -1863,19 +1824,6 @@ setup_current_filesystem(struct archive_read_disk *a) #endif t->current_filesystem->noatime = 0; -#if defined(USE_READDIR_R) - /* Set maximum filename length. */ -#if defined(HAVE_STATVFS) - t->current_filesystem->name_max = svfs.f_namemax; -#else - t->current_filesystem->name_max = sfs.f_namelen; -#endif - if (t->current_filesystem->name_max == 0) { - archive_set_error(&a->archive, ARCHIVE_ERRNO_MISC, - "Cannot determine name_max"); - return (ARCHIVE_FAILED); - } -#endif return (ARCHIVE_OK); } @@ -1953,15 +1901,6 @@ setup_current_filesystem(struct archive_read_disk *a) #endif t->current_filesystem->noatime = 0; -#if defined(USE_READDIR_R) - /* Set maximum filename length. */ - t->current_filesystem->name_max = svfs.f_namemax; - if (t->current_filesystem->name_max == 0) { - archive_set_error(&a->archive, ARCHIVE_ERRNO_MISC, - "Cannot determine name_max"); - return (ARCHIVE_FAILED); - } -#endif return (ARCHIVE_OK); } @@ -1975,9 +1914,6 @@ static int setup_current_filesystem(struct archive_read_disk *a) { struct tree *t = a->tree; -#if defined(_PC_NAME_MAX) && defined(USE_READDIR_R) - long nm; -#endif t->current_filesystem->synthetic = -1;/* Not supported */ t->current_filesystem->remote = -1;/* Not supported */ t->current_filesystem->noatime = 0; @@ -1987,40 +1923,6 @@ setup_current_filesystem(struct archive_read_disk *a) t->current_filesystem->min_xfer_size = -1; t->current_filesystem->incr_xfer_size = -1; -#if defined(USE_READDIR_R) - /* Set maximum filename length. */ -# if defined(_PC_NAME_MAX) - if (tree_current_is_symblic_link_target(t)) { - if (tree_enter_working_dir(t) != 0) { - archive_set_error(&a->archive, errno, "fchdir failed"); - return (ARCHIVE_FAILED); - } - nm = pathconf(tree_current_access_path(t), _PC_NAME_MAX); - } else - nm = fpathconf(tree_current_dir_fd(t), _PC_NAME_MAX); - if (nm == -1) -# endif /* _PC_NAME_MAX */ - /* - * Some systems (HP-UX or others?) incorrectly defined - * NAME_MAX macro to be a smaller value. - */ -# if defined(NAME_MAX) && NAME_MAX >= 255 - t->current_filesystem->name_max = NAME_MAX; -# else - /* No way to get a trusted value of maximum filename - * length. */ - t->current_filesystem->name_max = PATH_MAX; -# endif /* NAME_MAX */ -# if defined(_PC_NAME_MAX) - else - t->current_filesystem->name_max = nm; -# endif /* _PC_NAME_MAX */ - if (t->current_filesystem->name_max == 0) { - archive_set_error(&a->archive, ARCHIVE_ERRNO_MISC, - "Cannot determine name_max"); - return (ARCHIVE_FAILED); - } -#endif /* USE_READDIR_R */ return (ARCHIVE_OK); } @@ -2112,8 +2014,11 @@ tree_dup(int fd) } #endif /* F_DUPFD_CLOEXEC */ new_fd = dup(fd); - __archive_ensure_cloexec_flag(new_fd); - return (new_fd); + if (new_fd != -1) { + __archive_ensure_cloexec_flag(new_fd); + return (new_fd); + } + return (-1); } /* @@ -2235,11 +2140,16 @@ tree_reopen(struct tree *t, const char *path, int restore_time) * so try again for execute. The consequences of not opening this are * unhelpful and unnecessary errors later. */ - if (t->initial_dir_fd < 0) + if (t->initial_dir_fd < 0) { t->initial_dir_fd = open(".", o_flag | O_CLOEXEC); + if (t->initial_dir_fd < 0) + return NULL; + } #endif __archive_ensure_cloexec_flag(t->initial_dir_fd); t->working_dir_fd = tree_dup(t->initial_dir_fd); + if (t->working_dir_fd < 0) + return NULL; return (t); } @@ -2449,12 +2359,11 @@ tree_dir_next_posix(struct tree *t) size_t namelen; if (t->d == NULL) { -#if defined(USE_READDIR_R) - size_t dirent_size; -#endif #if defined(HAVE_FDOPENDIR) - t->d = fdopendir(tree_dup(t->working_dir_fd)); + int fd = tree_dup(t->working_dir_fd); + if (fd != -1) + t->d = fdopendir(fd); #else /* HAVE_FDOPENDIR */ if (tree_enter_working_dir(t) == 0) { t->d = opendir("."); @@ -2470,45 +2379,12 @@ tree_dir_next_posix(struct tree *t) t->visit_type = r != 0 ? r : TREE_ERROR_DIR; return (t->visit_type); } -#if defined(USE_READDIR_R) - dirent_size = offsetof(struct dirent, d_name) + - t->filesystem_table[t->current->filesystem_id].name_max + 1; - if (t->dirent == NULL || t->dirent_allocated < dirent_size) { - free(t->dirent); - t->dirent = malloc(dirent_size); - if (t->dirent == NULL) { - closedir(t->d); - t->d = INVALID_DIR_HANDLE; - (void)tree_ascend(t); - tree_pop(t); - t->tree_errno = ENOMEM; - t->visit_type = TREE_ERROR_DIR; - return (t->visit_type); - } - t->dirent_allocated = dirent_size; - } -#endif /* USE_READDIR_R */ } for (;;) { errno = 0; -#if defined(USE_READDIR_R) - r = readdir_r(t->d, t->dirent, &t->de); -#ifdef _AIX - /* Note: According to the man page, return value 9 indicates - * that the readdir_r was not successful and the error code - * is set to the global errno variable. And then if the end - * of directory entries was reached, the return value is 9 - * and the third parameter is set to NULL and errno is - * unchanged. */ - if (r == 9) - r = errno; -#endif /* _AIX */ - if (r != 0 || t->de == NULL) { -#else t->de = readdir(t->d); if (t->de == NULL) { r = errno; -#endif closedir(t->d); t->d = INVALID_DIR_HANDLE; if (r != 0) { @@ -2747,9 +2623,6 @@ tree_free(struct tree *t) if (t == NULL) return; archive_string_free(&t->path); -#if defined(USE_READDIR_R) - free(t->dirent); -#endif free(t->sparse_list); for (i = 0; i < t->max_filesystem_id; i++) free(t->filesystem_table[i].allocation_ptr); diff --git a/contrib/libarchive/libarchive/archive_read_open_fd.c b/contrib/libarchive/libarchive/archive_read_open_fd.c index dc7c9e52c6f6..c85a62a3e2d7 100644 --- a/contrib/libarchive/libarchive/archive_read_open_fd.c +++ b/contrib/libarchive/libarchive/archive_read_open_fd.c @@ -48,6 +48,7 @@ #endif #include "archive.h" +#include "archive_platform_stat.h" struct read_fd_data { int fd; @@ -65,12 +66,12 @@ static int64_t file_skip(struct archive *, void *, int64_t request); int archive_read_open_fd(struct archive *a, int fd, size_t block_size) { - struct stat st; + la_seek_stat_t st; struct read_fd_data *mine; void *b; archive_clear_error(a); - if (fstat(fd, &st) != 0) { + if (la_seek_fstat(fd, &st) != 0) { archive_set_error(a, errno, "Can't stat fd %d", fd); return (ARCHIVE_FATAL); } @@ -133,7 +134,7 @@ static int64_t file_skip(struct archive *a, void *client_data, int64_t request) { struct read_fd_data *mine = (struct read_fd_data *)client_data; - off_t skip = (off_t)request; + la_seek_t skip = (la_seek_t)request; int64_t old_offset, new_offset; int skip_bits = sizeof(skip) * 8 - 1; /* off_t is a signed type. */ @@ -149,7 +150,8 @@ file_skip(struct archive *a, void *client_data, int64_t request) } /* Reduce 'skip' to the next smallest multiple of block_size */ - skip = (off_t)(((int64_t)skip / mine->block_size) * mine->block_size); + skip = (la_seek_t)(((int64_t)skip / mine->block_size) * mine->block_size); + if (skip == 0) return (0); @@ -185,27 +187,28 @@ static int64_t file_seek(struct archive *a, void *client_data, int64_t request, int whence) { struct read_fd_data *mine = (struct read_fd_data *)client_data; - off_t seek = (off_t)request; + la_seek_t seek = (la_seek_t)request; int64_t r; int seek_bits = sizeof(seek) * 8 - 1; /* off_t is a signed type. */ /* We use off_t here because lseek() is declared that way. */ - /* Reduce a request that would overflow the 'seek' variable. */ + /* Do not perform a seek which cannot be fulfilled. */ if (sizeof(request) > sizeof(seek)) { const int64_t max_seek = (((int64_t)1 << (seek_bits - 1)) - 1) * 2 + 1; const int64_t min_seek = ~max_seek; - if (request > max_seek) - seek = (off_t)max_seek; - else if (request < min_seek) - seek = (off_t)min_seek; + if (request < min_seek || request > max_seek) { + errno = EOVERFLOW; + goto err; + } } r = lseek(mine->fd, seek, whence); if (r >= 0) return r; +err: if (errno == ESPIPE) { archive_set_error(a, errno, "A file descriptor(%d) is not seekable(PIPE)", mine->fd); diff --git a/contrib/libarchive/libarchive/archive_read_open_file.c b/contrib/libarchive/libarchive/archive_read_open_file.c index 742923abbee9..6ca2ff191aa8 100644 --- a/contrib/libarchive/libarchive/archive_read_open_file.c +++ b/contrib/libarchive/libarchive/archive_read_open_file.c @@ -48,6 +48,7 @@ #endif #include "archive.h" +#include "archive_platform_stat.h" struct read_FILE_data { FILE *f; @@ -65,7 +66,7 @@ static int64_t FILE_skip(struct archive *, void *, int64_t); int archive_read_open_FILE(struct archive *a, FILE *f) { - struct stat st; + la_seek_stat_t st; struct read_FILE_data *mine; size_t block_size = 128 * 1024; void *b; @@ -88,7 +89,7 @@ archive_read_open_FILE(struct archive *a, FILE *f) * streams that don't support fileno()). As a result, fileno() * should be used cautiously.) */ - if (fstat(fileno(mine->f), &st) == 0 && S_ISREG(st.st_mode)) { + if (la_seek_fstat(fileno(mine->f), &st) == 0 && S_ISREG(st.st_mode)) { archive_read_extract_set_skip_file(a, st.st_dev, st.st_ino); /* Enable the seek optimization only for regular files. */ mine->can_skip = 1; @@ -205,15 +206,15 @@ FILE_seek(struct archive *a, void *client_data, int64_t request, int whence) int seek_bits = sizeof(seek) * 8 - 1; (void)a; /* UNUSED */ - /* Reduce a request that would overflow the 'seek' variable. */ + /* Do not perform a seek which cannot be fulfilled. */ if (sizeof(request) > sizeof(seek)) { const int64_t max_seek = (((int64_t)1 << (seek_bits - 1)) - 1) * 2 + 1; const int64_t min_seek = ~max_seek; - if (request > max_seek) - seek = max_seek; - else if (request < min_seek) - seek = min_seek; + if (request < min_seek || request > max_seek) { + errno = EOVERFLOW; + goto err; + } } #ifdef __ANDROID__ @@ -236,6 +237,7 @@ FILE_seek(struct archive *a, void *client_data, int64_t request, int whence) } #endif /* If we arrive here, the input is corrupted or truncated so fail. */ +err: archive_set_error(a, errno, "Error seeking in FILE* pointer"); return (ARCHIVE_FATAL); } diff --git a/contrib/libarchive/libarchive/archive_read_open_filename.c b/contrib/libarchive/libarchive/archive_read_open_filename.c index 5f5b3f1f7259..a910eefcbfd2 100644 --- a/contrib/libarchive/libarchive/archive_read_open_filename.c +++ b/contrib/libarchive/libarchive/archive_read_open_filename.c @@ -59,6 +59,7 @@ #endif #include "archive.h" +#include "archive_platform_stat.h" #include "archive_private.h" #include "archive_string.h" @@ -136,8 +137,10 @@ archive_read_open_filenames(struct archive *a, const char **filenames, mine->filename_type = FNT_STDIN; } else mine->filename_type = FNT_MBS; - if (archive_read_append_callback_data(a, mine) != (ARCHIVE_OK)) + if (archive_read_append_callback_data(a, mine) != (ARCHIVE_OK)) { + free(mine); return (ARCHIVE_FATAL); + } if (filenames == NULL) break; filename = *(filenames++); @@ -216,8 +219,10 @@ archive_read_open_filenames_w(struct archive *a, const wchar_t **wfilenames, archive_string_free(&fn); #endif } - if (archive_read_append_callback_data(a, mine) != (ARCHIVE_OK)) + if (archive_read_append_callback_data(a, mine) != (ARCHIVE_OK)) { + free(mine); return (ARCHIVE_FATAL); + } if (wfilenames == NULL) break; wfilename = *(wfilenames++); @@ -248,7 +253,7 @@ archive_read_open_filename_w(struct archive *a, const wchar_t *wfilename, static int file_open(struct archive *a, void *client_data) { - struct stat st; + la_seek_stat_t st; struct read_file_data *mine = (struct read_file_data *)client_data; void *buffer; const char *filename = NULL; @@ -313,7 +318,7 @@ file_open(struct archive *a, void *client_data) goto fail; #endif } - if (fstat(fd, &st) != 0) { + if (la_seek_fstat(fd, &st) != 0) { #if defined(_WIN32) && !defined(__CYGWIN__) if (mine->filename_type == FNT_WCS) archive_set_error(a, errno, "Can't stat '%ls'", @@ -482,10 +487,11 @@ file_skip_lseek(struct archive *a, void *client_data, int64_t request) struct read_file_data *mine = (struct read_file_data *)client_data; #if defined(_WIN32) && !defined(__CYGWIN__) /* We use _lseeki64() on Windows. */ - int64_t old_offset, new_offset, skip = request; + int64_t old_offset, new_offset; #else - off_t old_offset, new_offset, skip = (off_t)request; + off_t old_offset, new_offset; #endif + la_seek_t skip = (la_seek_t)request; int skip_bits = sizeof(skip) * 8 - 1; /* We use off_t here because lseek() is declared that way. */ @@ -552,21 +558,21 @@ static int64_t file_seek(struct archive *a, void *client_data, int64_t request, int whence) { struct read_file_data *mine = (struct read_file_data *)client_data; - off_t seek = (off_t)request; + la_seek_t seek = (la_seek_t)request; int64_t r; int seek_bits = sizeof(seek) * 8 - 1; /* We use off_t here because lseek() is declared that way. */ - /* Reduce a request that would overflow the 'seek' variable. */ + /* Do not perform a seek which cannot be fulfilled. */ if (sizeof(request) > sizeof(seek)) { const int64_t max_seek = (((int64_t)1 << (seek_bits - 1)) - 1) * 2 + 1; const int64_t min_seek = ~max_seek; - if (request > max_seek) - seek = (off_t)max_seek; - else if (request < min_seek) - seek = (off_t)min_seek; + if (request < min_seek || request > max_seek) { + errno = EOVERFLOW; + goto err; + } } r = lseek(mine->fd, seek, whence); @@ -574,6 +580,7 @@ file_seek(struct archive *a, void *client_data, int64_t request, int whence) return r; /* If the input is corrupted or truncated, fail. */ +err: if (mine->filename_type == FNT_STDIN) archive_set_error(a, errno, "Error seeking in stdin"); else if (mine->filename_type == FNT_MBS) diff --git a/contrib/libarchive/libarchive/archive_read_set_format.c b/contrib/libarchive/libarchive/archive_read_set_format.c index c74361b20c13..552ab12d2f92 100644 --- a/contrib/libarchive/libarchive/archive_read_set_format.c +++ b/contrib/libarchive/libarchive/archive_read_set_format.c @@ -37,7 +37,7 @@ int archive_read_set_format(struct archive *_a, int code) { int r1, r2, slots, i; - char str[10]; + const char *str; struct archive_read *a = (struct archive_read *)_a; if ((r1 = archive_read_support_format_by_code(_a, code)) < (ARCHIVE_OK)) @@ -49,49 +49,49 @@ archive_read_set_format(struct archive *_a, int code) switch (code & ARCHIVE_FORMAT_BASE_MASK) { case ARCHIVE_FORMAT_7ZIP: - strcpy(str, "7zip"); + str = "7zip"; break; case ARCHIVE_FORMAT_AR: - strcpy(str, "ar"); + str = "ar"; break; case ARCHIVE_FORMAT_CAB: - strcpy(str, "cab"); + str = "cab"; break; case ARCHIVE_FORMAT_CPIO: - strcpy(str, "cpio"); + str = "cpio"; break; case ARCHIVE_FORMAT_EMPTY: - strcpy(str, "empty"); + str = "empty"; break; case ARCHIVE_FORMAT_ISO9660: - strcpy(str, "iso9660"); + str = "iso9660"; break; case ARCHIVE_FORMAT_LHA: - strcpy(str, "lha"); + str = "lha"; break; case ARCHIVE_FORMAT_MTREE: - strcpy(str, "mtree"); + str = "mtree"; break; case ARCHIVE_FORMAT_RAR: - strcpy(str, "rar"); + str = "rar"; break; case ARCHIVE_FORMAT_RAR_V5: - strcpy(str, "rar5"); + str = "rar5"; break; case ARCHIVE_FORMAT_RAW: - strcpy(str, "raw"); + str = "raw"; break; case ARCHIVE_FORMAT_TAR: - strcpy(str, "tar"); + str = "tar"; break; case ARCHIVE_FORMAT_WARC: - strcpy(str, "warc"); + str = "warc"; break; case ARCHIVE_FORMAT_XAR: - strcpy(str, "xar"); + str = "xar"; break; case ARCHIVE_FORMAT_ZIP: - strcpy(str, "zip"); + str = "zip"; break; default: archive_set_error(&a->archive, ARCHIVE_ERRNO_PROGRAMMER, diff --git a/contrib/libarchive/libarchive/archive_read_support_filter_program.c b/contrib/libarchive/libarchive/archive_read_support_filter_program.c index 9e825223b26c..2c8e45302d8e 100644 --- a/contrib/libarchive/libarchive/archive_read_support_filter_program.c +++ b/contrib/libarchive/libarchive/archive_read_support_filter_program.c @@ -110,7 +110,7 @@ struct program_filter { pid_t child; #endif int exit_status; - int waitpid_return; + pid_t waitpid_return; int child_stdin, child_stdout; char *out_buf; @@ -242,16 +242,13 @@ child_stop(struct archive_read_filter *self, struct program_filter *state) state->waitpid_return = waitpid(state->child, &state->exit_status, 0); } while (state->waitpid_return == -1 && errno == EINTR); -#if defined(_WIN32) && !defined(__CYGWIN__) - CloseHandle(state->child); -#endif state->child = 0; } if (state->waitpid_return < 0) { /* waitpid() failed? This is ugly. */ archive_set_error(&self->archive->archive, ARCHIVE_ERRNO_MISC, - "Child process exited badly"); + "Error closing child process"); return (ARCHIVE_WARN); } diff --git a/contrib/libarchive/libarchive/archive_read_support_format_7zip.c b/contrib/libarchive/libarchive/archive_read_support_format_7zip.c index f273f84be521..595462733104 100644 --- a/contrib/libarchive/libarchive/archive_read_support_format_7zip.c +++ b/contrib/libarchive/libarchive/archive_read_support_format_7zip.c @@ -80,7 +80,7 @@ /* * ELF format */ -#define ELF_HDR_MIN_LEN 0x34 +#define ELF_HDR_MIN_LEN 0x3f #define ELF_HDR_EI_CLASS_OFFSET 0x04 #define ELF_HDR_EI_DATA_OFFSET 0x05 @@ -811,6 +811,8 @@ find_elf_data_sec(struct archive_read *a) strtab_size = (*dec32)( h + e_shstrndx * e_shentsize + 0x14); } + if (strtab_size < 6 || strtab_size > SIZE_MAX) + break; /* * Read the STRTAB section to find the .data offset @@ -1391,7 +1393,8 @@ init_decompression(struct archive_read *a, struct _7zip *zip, * size to liblzma when using lzma_raw_decoder() liblzma * could correctly deal with BCJ+LZMA. But unfortunately * there is no way to do that. - * Discussion about this can be found at XZ Utils forum. + * + * Reference: https://web.archive.org/web/20240405171610/https://www.mail-archive.com/xz-devel@tukaani.org/msg00373.html */ if (coder2 != NULL) { zip->codec2 = coder2->codec; diff --git a/contrib/libarchive/libarchive/archive_read_support_format_mtree.c b/contrib/libarchive/libarchive/archive_read_support_format_mtree.c index ba0e49de2408..ded13bee79a3 100644 --- a/contrib/libarchive/libarchive/archive_read_support_format_mtree.c +++ b/contrib/libarchive/libarchive/archive_read_support_format_mtree.c @@ -51,6 +51,7 @@ #include "archive.h" #include "archive_entry.h" #include "archive_entry_private.h" +#include "archive_platform_stat.h" #include "archive_private.h" #include "archive_rb.h" #include "archive_read_private.h" @@ -1073,6 +1074,8 @@ read_mtree(struct archive_read *a, struct mtree *mtree) /* Non-printable characters are not allowed */ for (s = p;s < p + len - 1; s++) { if (!isprint((unsigned char)*s) && *s != '\t') { + archive_set_error(&a->archive, ARCHIVE_ERRNO_FILE_FORMAT, + "Non-printable character 0x%02X", (unsigned char)(*s)); r = ARCHIVE_FATAL; break; } @@ -1175,7 +1178,7 @@ parse_file(struct archive_read *a, struct archive_entry *entry, struct mtree *mtree, struct mtree_entry *mentry, int *use_next) { const char *path; - struct stat st_storage, *st; + la_seek_stat_t st_storage, *st; struct mtree_entry *mp; struct archive_entry *sparse_entry; int r = ARCHIVE_OK, r1, parsed_kws; @@ -1251,7 +1254,7 @@ parse_file(struct archive_read *a, struct archive_entry *entry, archive_entry_filetype(entry) == AE_IFDIR) { mtree->fd = open(path, O_RDONLY | O_BINARY | O_CLOEXEC); __archive_ensure_cloexec_flag(mtree->fd); - if (mtree->fd == -1 && ( + if (mtree->fd < 0 && ( #if defined(_WIN32) && !defined(__CYGWIN__) /* * On Windows, attempting to open a file with an @@ -1270,7 +1273,7 @@ parse_file(struct archive_read *a, struct archive_entry *entry, st = &st_storage; if (mtree->fd >= 0) { - if (fstat(mtree->fd, st) == -1) { + if (la_seek_fstat(mtree->fd, st) == -1) { archive_set_error(&a->archive, errno, "Could not fstat %s", path); r = ARCHIVE_WARN; @@ -1283,7 +1286,7 @@ parse_file(struct archive_read *a, struct archive_entry *entry, #ifdef HAVE_LSTAT else if (lstat(path, st) == -1) #else - else if (la_stat(path, st) == -1) + else if (la_seek_stat(path, st) == -1) #endif { st = NULL; @@ -2130,6 +2133,13 @@ readline(struct archive_read *a, struct mtree *mtree, char **start, for (u = mtree->line.s + find_off; *u; ++u) { if (u[0] == '\n') { /* Ends with unescaped newline. */ + /* Check if preceded by '\r' for CRLF handling */ + if (u > mtree->line.s && u[-1] == '\r') { + /* CRLF ending - remove the '\r' */ + u[-1] = '\n'; + u[0] = '\0'; + total_size--; + } *start = mtree->line.s; return total_size; } else if (u[0] == '#') { @@ -2144,6 +2154,11 @@ readline(struct archive_read *a, struct mtree *mtree, char **start, total_size -= 2; mtree->line.s[total_size] = '\0'; break; + } else if (u[1] == '\r' && u[2] == '\n') { + /* Trim escaped CRLF. */ + total_size -= 3; + mtree->line.s[total_size] = '\0'; + break; } else if (u[1] != '\0') { /* Skip the two-char escape sequence */ ++u; diff --git a/contrib/libarchive/libarchive/archive_read_support_format_rar.c b/contrib/libarchive/libarchive/archive_read_support_format_rar.c index 923ae5c65e17..9b401c00ba34 100644 --- a/contrib/libarchive/libarchive/archive_read_support_format_rar.c +++ b/contrib/libarchive/libarchive/archive_read_support_format_rar.c @@ -1117,8 +1117,6 @@ archive_read_format_rar_read_data(struct archive_read *a, const void **buff, if (rar->entry_eof || rar->offset_seek >= rar->unp_size) { *size = 0; *offset = rar->offset; - if (*offset < rar->unp_size) - *offset = rar->unp_size; return (ARCHIVE_EOF); } @@ -1455,7 +1453,7 @@ read_header(struct archive_read *a, struct archive_entry *entry, return (ARCHIVE_FATAL); #endif } - /* If no CRC error, Go on parsing File Header. */ + /* If no CRC error, go on parsing File Header. */ p = h; endp = p + header_size - 7; memcpy(&file_header, p, sizeof(file_header)); @@ -2368,8 +2366,8 @@ parse_codes(struct archive_read *a) return (ARCHIVE_FATAL); } - /* Make sure ppmd7_contest is freed before Ppmd7_Construct - * because reading a broken file cause this abnormal sequence. */ + /* Make sure ppmd7_context is freed before Ppmd7_Construct + * because reading a broken file causes this abnormal sequence. */ __archive_ppmd7_functions.Ppmd7_Free(&rar->ppmd7_context); rar->bytein.a = a; diff --git a/contrib/libarchive/libarchive/archive_read_support_format_rar5.c b/contrib/libarchive/libarchive/archive_read_support_format_rar5.c index 48dde0c2e814..17e501e02e9f 100644 --- a/contrib/libarchive/libarchive/archive_read_support_format_rar5.c +++ b/contrib/libarchive/libarchive/archive_read_support_format_rar5.c @@ -1619,10 +1619,13 @@ static int process_head_file_extra(struct archive_read* a, { uint64_t extra_field_size; uint64_t extra_field_id = 0; - int ret = ARCHIVE_FATAL; uint64_t var_size; while(extra_data_size > 0) { + /* Make sure we won't fail if the file declares only unsupported + attributes. */ + int ret = ARCHIVE_OK; + if(!read_var(a, &extra_field_size, &var_size)) return ARCHIVE_EOF; @@ -1675,12 +1678,53 @@ static int process_head_file_extra(struct archive_read* a, if (ARCHIVE_OK != consume(a, extra_field_size)) { return ARCHIVE_EOF; } + + /* Don't fail on unsupported attribute -- we've handled it + by skipping over it. */ + ret = ARCHIVE_OK; + } + + if (ret != ARCHIVE_OK) { + /* Forward any errors signalled by the attribute parsing + functions. */ + return ret; } } - if(ret != ARCHIVE_OK) { - /* Attribute not implemented. */ - return ret; + if (extra_data_size != 0) { + /* We didn't skip everything, or we skipped too much; either way, + there's an error in this parsing function. */ + + archive_set_error(&a->archive, ARCHIVE_ERRNO_PROGRAMMER, + "unsupported structure of file header extra data"); + return ARCHIVE_FATAL; + } + + return ARCHIVE_OK; +} + +static int file_entry_sanity_checks(struct archive_read* a, + size_t block_flags, uint8_t is_dir, uint64_t unpacked_size, + size_t packed_size) +{ + if (is_dir) { + const int declares_data_size = + (int) (unpacked_size != 0 || packed_size != 0); + + /* FILE entries for directories still declare HFL_DATA in block flags, + even though attaching data to such blocks doesn't make much sense. */ + if (declares_data_size) { + archive_set_error(&a->archive, ARCHIVE_ERRNO_FILE_FORMAT, + "directory entries cannot have any data"); + return ARCHIVE_FATAL; + } + } else { + const int declares_hfl_data = (int) ((block_flags & HFL_DATA) != 0); + if (!declares_hfl_data) { + archive_set_error(&a->archive, ARCHIVE_ERRNO_FILE_FORMAT, + "no data found in file/service block"); + return ARCHIVE_FATAL; + } } return ARCHIVE_OK; @@ -1701,6 +1745,7 @@ static int process_head_file(struct archive_read* a, struct rar5* rar, int c_method = 0, c_version = 0; char name_utf8_buf[MAX_NAME_IN_BYTES]; const uint8_t* p; + int sanity_ret; enum FILE_FLAGS { DIRECTORY = 0x0001, UTIME = 0x0002, CRC32 = 0x0004, @@ -1744,10 +1789,6 @@ static int process_head_file(struct archive_read* a, struct rar5* rar, rar->file.bytes_remaining = data_size; } else { rar->file.bytes_remaining = 0; - - archive_set_error(&a->archive, ARCHIVE_ERRNO_FILE_FORMAT, - "no data found in file/service block"); - return ARCHIVE_FATAL; } if(!read_var_sized(a, &file_flags, NULL)) @@ -1764,6 +1805,13 @@ static int process_head_file(struct archive_read* a, struct rar5* rar, rar->file.dir = (uint8_t) ((file_flags & DIRECTORY) > 0); + sanity_ret = file_entry_sanity_checks(a, block_flags, rar->file.dir, + unpacked_size, data_size); + + if (sanity_ret != ARCHIVE_OK) { + return sanity_ret; + } + if(!read_var_sized(a, &file_attr, NULL)) return ARCHIVE_EOF; @@ -4163,7 +4211,7 @@ static int rar5_read_data(struct archive_read *a, const void **buff, * it's impossible to perform any decompression. */ archive_set_error(&a->archive, ARCHIVE_ERRNO_FILE_FORMAT, "Can't decompress an entry marked as a directory"); - return ARCHIVE_FAILED; + return ARCHIVE_FATAL; } if(!rar->skip_mode && (rar->cstate.last_write_ptr > rar->file.unpacked_size)) { diff --git a/contrib/libarchive/libarchive/archive_read_support_format_tar.c b/contrib/libarchive/libarchive/archive_read_support_format_tar.c index 0c87bc6d732f..eeb2c725f6eb 100644 --- a/contrib/libarchive/libarchive/archive_read_support_format_tar.c +++ b/contrib/libarchive/libarchive/archive_read_support_format_tar.c @@ -233,7 +233,7 @@ static int tar_read_header(struct archive_read *, struct tar *, struct archive_entry *, int64_t *); static int tohex(int c); static char *url_decode(const char *, size_t); -static void tar_flush_unconsumed(struct archive_read *, int64_t *); +static int tar_flush_unconsumed(struct archive_read *, int64_t *); /* Sanity limits: These numbers should be low enough to * prevent a maliciously-crafted archive from forcing us to @@ -477,7 +477,7 @@ archive_read_format_tar_options(struct archive_read *a, * how much unconsumed data we have floating around, and to consume * anything outstanding since we're going to do read_aheads */ -static void +static int tar_flush_unconsumed(struct archive_read *a, int64_t *unconsumed) { if (*unconsumed) { @@ -490,9 +490,13 @@ tar_flush_unconsumed(struct archive_read *a, int64_t *unconsumed) memset(data, 0xff, *unconsumed); } */ - __archive_read_consume(a, *unconsumed); + int64_t consumed = __archive_read_consume(a, *unconsumed); + if (consumed != *unconsumed) { + return (ARCHIVE_FATAL); + } *unconsumed = 0; } + return (ARCHIVE_OK); } /* @@ -750,7 +754,9 @@ tar_read_header(struct archive_read *a, struct tar *tar, /* Find the next valid header record. */ while (1) { - tar_flush_unconsumed(a, unconsumed); + if (tar_flush_unconsumed(a, unconsumed) != ARCHIVE_OK) { + return (ARCHIVE_FATAL); + } /* Read 512-byte header record */ h = __archive_read_ahead(a, 512, &bytes); @@ -796,7 +802,9 @@ tar_read_header(struct archive_read *a, struct tar *tar, /* This is NOT a null block, so it must be a valid header. */ if (!checksum(a, h)) { - tar_flush_unconsumed(a, unconsumed); + if (tar_flush_unconsumed(a, unconsumed) != ARCHIVE_OK) { + return (ARCHIVE_FATAL); + } archive_set_error(&a->archive, EINVAL, "Damaged tar archive (bad header checksum)"); /* If we've read some critical information (pax headers, etc) @@ -1236,7 +1244,7 @@ header_volume(struct archive_read *a, struct tar *tar, header = (const struct archive_entry_header_ustar *)h; size = tar_atol(header->size, sizeof(header->size)); - if (size > (int64_t)pathname_limit) { + if (size < 0 || size > (int64_t)pathname_limit) { return (ARCHIVE_FATAL); } to_consume = ((size + 511) & ~511); @@ -1255,13 +1263,15 @@ read_bytes_to_string(struct archive_read *a, const void *src; /* Fail if we can't make our buffer big enough. */ - if (archive_string_ensure(as, (size_t)size+1) == NULL) { + if (archive_string_ensure(as, size + 1) == NULL) { archive_set_error(&a->archive, ENOMEM, "No memory"); return (ARCHIVE_FATAL); } - tar_flush_unconsumed(a, unconsumed); + if (tar_flush_unconsumed(a, unconsumed) != ARCHIVE_OK) { + return (ARCHIVE_FATAL); + } /* Read the body into the string. */ src = __archive_read_ahead(a, size, NULL); @@ -1272,9 +1282,9 @@ read_bytes_to_string(struct archive_read *a, *unconsumed = 0; return (ARCHIVE_FATAL); } - memcpy(as->s, src, (size_t)size); + memcpy(as->s, src, size); as->s[size] = '\0'; - as->length = (size_t)size; + as->length = size; *unconsumed += size; return (ARCHIVE_OK); } @@ -1715,7 +1725,9 @@ read_mac_metadata_blob(struct archive_read *a, * Q: Is the above idea really possible? Even * when there are GNU or pax extension entries? */ - tar_flush_unconsumed(a, unconsumed); + if (tar_flush_unconsumed(a, unconsumed) != ARCHIVE_OK) { + return (ARCHIVE_FATAL); + } data = __archive_read_ahead(a, msize, NULL); if (data == NULL) { archive_set_error(&a->archive, EINVAL, @@ -1900,7 +1912,9 @@ header_pax_extension(struct archive_read *a, struct tar *tar, (long long)ext_size, (long long)ext_size_limit); return (ARCHIVE_WARN); } - tar_flush_unconsumed(a, unconsumed); + if (tar_flush_unconsumed(a, unconsumed) != ARCHIVE_OK) { + return (ARCHIVE_FATAL); + } /* Parse the size/name of each pax attribute in the body */ archive_string_init(&attr_name); @@ -1994,7 +2008,9 @@ header_pax_extension(struct archive_read *a, struct tar *tar, /* Consume size, name, and `=` */ *unconsumed += p - attr_start; - tar_flush_unconsumed(a, unconsumed); + if (tar_flush_unconsumed(a, unconsumed) != ARCHIVE_OK) { + return (ARCHIVE_FATAL); + } if (value_length == 0) { archive_set_error(&a->archive, EINVAL, @@ -2017,7 +2033,9 @@ header_pax_extension(struct archive_read *a, struct tar *tar, err = err_combine(err, r); /* Consume the `\n` that follows the pax attribute value. */ - tar_flush_unconsumed(a, unconsumed); + if (tar_flush_unconsumed(a, unconsumed) != ARCHIVE_OK) { + return (ARCHIVE_FATAL); + } p = __archive_read_ahead(a, 1, &did_read); if (p == NULL) { archive_set_error(&a->archive, EINVAL, @@ -2033,7 +2051,9 @@ header_pax_extension(struct archive_read *a, struct tar *tar, } ext_size -= 1; *unconsumed += 1; - tar_flush_unconsumed(a, unconsumed); + if (tar_flush_unconsumed(a, unconsumed) != ARCHIVE_OK) { + return (ARCHIVE_FATAL); + } } *unconsumed += ext_size + ext_padding; @@ -2290,7 +2310,9 @@ pax_attribute_read_number(struct archive_read *a, size_t value_length, int64_t * archive_string_init(&as); r = read_bytes_to_string(a, &as, value_length, &unconsumed); - tar_flush_unconsumed(a, &unconsumed); + if (tar_flush_unconsumed(a, &unconsumed) != ARCHIVE_OK) { + return (ARCHIVE_FATAL); + } if (r < ARCHIVE_OK) { archive_string_free(&as); *result = 0; @@ -2940,7 +2962,9 @@ header_gnutar(struct archive_read *a, struct tar *tar, /* Copy filename over (to ensure null termination). */ header = (const struct archive_entry_header_gnutar *)h; const char *existing_pathname = archive_entry_pathname(entry); - if (existing_pathname == NULL || existing_pathname[0] == '\0') { + const wchar_t *existing_wcs_pathname = archive_entry_pathname_w(entry); + if ((existing_pathname == NULL || existing_pathname[0] == '\0') + && (existing_wcs_pathname == NULL || existing_wcs_pathname[0] == L'\0')) { if (archive_entry_copy_pathname_l(entry, header->name, sizeof(header->name), tar->sconv) != 0) { err = set_conversion_failed_error(a, tar->sconv, "Pathname"); @@ -3093,7 +3117,9 @@ gnu_sparse_old_read(struct archive_read *a, struct tar *tar, return (ARCHIVE_OK); do { - tar_flush_unconsumed(a, unconsumed); + if (tar_flush_unconsumed(a, unconsumed) != ARCHIVE_OK) { + return (ARCHIVE_FATAL); + } data = __archive_read_ahead(a, 512, &bytes_read); if (data == NULL) { archive_set_error(&a->archive, ARCHIVE_ERRNO_FILE_FORMAT, @@ -3283,7 +3309,9 @@ gnu_sparse_10_read(struct archive_read *a, struct tar *tar, int64_t *unconsumed) return (ARCHIVE_FATAL); } /* Skip rest of block... */ - tar_flush_unconsumed(a, unconsumed); + if (tar_flush_unconsumed(a, unconsumed) != ARCHIVE_OK) { + return (ARCHIVE_FATAL); + } bytes_read = tar->entry_bytes_remaining - remaining; to_skip = 0x1ff & -bytes_read; /* Fail if tar->entry_bytes_remaing would get negative */ @@ -3509,7 +3537,9 @@ readline(struct archive_read *a, struct tar *tar, const char **start, const char *s; void *p; - tar_flush_unconsumed(a, unconsumed); + if (tar_flush_unconsumed(a, unconsumed) != ARCHIVE_OK) { + return (ARCHIVE_FATAL); + } t = __archive_read_ahead(a, 1, &bytes_read); if (bytes_read <= 0 || t == NULL) diff --git a/contrib/libarchive/libarchive/archive_read_support_format_warc.c b/contrib/libarchive/libarchive/archive_read_support_format_warc.c index 696f959c341d..d8f188cf0b44 100644 --- a/contrib/libarchive/libarchive/archive_read_support_format_warc.c +++ b/contrib/libarchive/libarchive/archive_read_support_format_warc.c @@ -405,7 +405,7 @@ _warc_read(struct archive_read *a, const void **buf, size_t *bsz, int64_t *off) /* it's our lucky day, no work, we can leave early */ *buf = NULL; *bsz = 0U; - *off = w->cntoff + 4U/*for \r\n\r\n separator*/; + *off = w->cntoff; w->unconsumed = 0U; return (ARCHIVE_EOF); } diff --git a/contrib/libarchive/libarchive/archive_read_support_format_xar.c b/contrib/libarchive/libarchive/archive_read_support_format_xar.c index b4e1192ef771..36b5ab3ae04c 100644 --- a/contrib/libarchive/libarchive/archive_read_support_format_xar.c +++ b/contrib/libarchive/libarchive/archive_read_support_format_xar.c @@ -930,7 +930,7 @@ xar_read_data(struct archive_read *a, abort_read_data: *buff = NULL; *size = 0; - *offset = xar->total; + *offset = (int64_t)xar->entry_total; return (r); } diff --git a/contrib/libarchive/libarchive/archive_read_support_format_zip.c b/contrib/libarchive/libarchive/archive_read_support_format_zip.c index daf51933d687..9abd55709e3f 100644 --- a/contrib/libarchive/libarchive/archive_read_support_format_zip.c +++ b/contrib/libarchive/libarchive/archive_read_support_format_zip.c @@ -3015,8 +3015,8 @@ init_WinZip_AES_decryption(struct archive_read *a) p, salt_len, 1000, derived_key, key_len * 2 + 2); if (r != 0) { archive_set_error(&a->archive, ARCHIVE_ERRNO_MISC, - "Decryption is unsupported due to lack of " - "crypto library"); + r == CRYPTOR_STUB_FUNCTION ? "Decryption is unsupported due " + "to lack of crypto library" : "Failed to process passphrase"); return (ARCHIVE_FAILED); } diff --git a/contrib/libarchive/libarchive/archive_string.c b/contrib/libarchive/libarchive/archive_string.c index 7437715f9122..3bb978335eb8 100644 --- a/contrib/libarchive/libarchive/archive_string.c +++ b/contrib/libarchive/libarchive/archive_string.c @@ -2015,7 +2015,7 @@ archive_strncat_l(struct archive_string *as, const void *_p, size_t n, /* We must allocate memory even if there is no data for conversion * or copy. This simulates archive_string_append behavior. */ if (length == 0) { - int tn = 1; + size_t tn = 1; if (sc != NULL && (sc->flag & SCONV_TO_UTF16)) tn = 2; if (archive_string_ensure(as, as->length + tn) == NULL) @@ -2752,7 +2752,8 @@ archive_string_append_unicode(struct archive_string *as, const void *_p, char *p, *endp; uint32_t uc; size_t w; - int n, ret = 0, ts, tm; + size_t ts, tm; + int n, ret = 0; int (*parse)(uint32_t *, const char *, size_t); size_t (*unparse)(char *, size_t, uint32_t); diff --git a/contrib/libarchive/libarchive/archive_string_sprintf.c b/contrib/libarchive/libarchive/archive_string_sprintf.c index 1c5910e0b2d3..69b0cdcd83d5 100644 --- a/contrib/libarchive/libarchive/archive_string_sprintf.c +++ b/contrib/libarchive/libarchive/archive_string_sprintf.c @@ -146,7 +146,7 @@ archive_string_vsprintf(struct archive_string *as, const char *fmt, case 'z': s = va_arg(ap, ssize_t); break; default: s = va_arg(ap, int); break; } - append_int(as, s, 10); + append_int(as, s, 10); break; case 's': switch(long_flag) { diff --git a/contrib/libarchive/libarchive/archive_util.c b/contrib/libarchive/libarchive/archive_util.c index 900abd0c3c62..d048bbc94650 100644 --- a/contrib/libarchive/libarchive/archive_util.c +++ b/contrib/libarchive/libarchive/archive_util.c @@ -445,11 +445,39 @@ __archive_mkstemp(wchar_t *template) #else static int -get_tempdir(struct archive_string *temppath) +__archive_issetugid(void) { - const char *tmp; +#ifdef HAVE_ISSETUGID + return (issetugid()); +#elif HAVE_GETRESUID + uid_t ruid, euid, suid; + gid_t rgid, egid, sgid; + if (getresuid(&ruid, &euid, &suid) != 0) + return (-1); + if (ruid != euid || ruid != suid) + return (1); + if (getresgid(&ruid, &egid, &sgid) != 0) + return (-1); + if (rgid != egid || rgid != sgid) + return (1); +#elif HAVE_GETEUID + if (geteuid() != getuid()) + return (1); +#if HAVE_GETEGID + if (getegid() != getgid()) + return (1); +#endif +#endif + return (0); +} + +int +__archive_get_tempdir(struct archive_string *temppath) +{ + const char *tmp = NULL; - tmp = getenv("TMPDIR"); + if (__archive_issetugid() == 0) + tmp = getenv("TMPDIR"); if (tmp == NULL) #ifdef _PATH_TMP tmp = _PATH_TMP; @@ -476,7 +504,7 @@ __archive_mktemp(const char *tmpdir) archive_string_init(&temp_name); if (tmpdir == NULL) { - if (get_tempdir(&temp_name) != ARCHIVE_OK) + if (__archive_get_tempdir(&temp_name) != ARCHIVE_OK) goto exit_tmpfile; } else { archive_strcpy(&temp_name, tmpdir); @@ -538,7 +566,7 @@ __archive_mktempx(const char *tmpdir, char *template) if (template == NULL) { archive_string_init(&temp_name); if (tmpdir == NULL) { - if (get_tempdir(&temp_name) != ARCHIVE_OK) + if (__archive_get_tempdir(&temp_name) != ARCHIVE_OK) goto exit_tmpfile; } else archive_strcpy(&temp_name, tmpdir); diff --git a/contrib/libarchive/libarchive/archive_write.c b/contrib/libarchive/libarchive/archive_write.c index a8e7b63b5bfe..9b9cb196f0f9 100644 --- a/contrib/libarchive/libarchive/archive_write.c +++ b/contrib/libarchive/libarchive/archive_write.c @@ -360,7 +360,6 @@ archive_write_client_open(struct archive_write_filter *f) struct archive_none *state; void *buffer; size_t buffer_size; - int ret; f->bytes_per_block = archive_write_get_bytes_per_block(f->archive); f->bytes_in_last_block = @@ -385,13 +384,7 @@ archive_write_client_open(struct archive_write_filter *f) if (a->client_opener == NULL) return (ARCHIVE_OK); - ret = a->client_opener(f->archive, a->client_data); - if (ret != ARCHIVE_OK) { - free(state->buffer); - free(state); - f->data = NULL; - } - return (ret); + return (a->client_opener(f->archive, a->client_data)); } static int @@ -480,6 +473,7 @@ static int archive_write_client_free(struct archive_write_filter *f) { struct archive_write *a = (struct archive_write *)f->archive; + struct archive_none *state = (struct archive_none *)f->data; if (a->client_freer) (*a->client_freer)(&a->archive, a->client_data); @@ -492,6 +486,13 @@ archive_write_client_free(struct archive_write_filter *f) a->passphrase = NULL; } + /* Free state. */ + if (state != NULL) { + free(state->buffer); + free(state); + f->data = NULL; + } + return (ARCHIVE_OK); } @@ -548,8 +549,6 @@ archive_write_client_close(struct archive_write_filter *f) } if (a->client_closer) (*a->client_closer)(&a->archive, a->client_data); - free(state->buffer); - free(state); /* Clear the close handler myself not to be called again. */ f->state = ARCHIVE_WRITE_FILTER_STATE_CLOSED; @@ -807,7 +806,10 @@ _archive_write_finish_entry(struct archive *_a) if (a->archive.state & ARCHIVE_STATE_DATA && a->format_finish_entry != NULL) ret = (a->format_finish_entry)(a); - a->archive.state = ARCHIVE_STATE_HEADER; + if (ret == ARCHIVE_FATAL) + a->archive.state = ARCHIVE_STATE_FATAL; + else + a->archive.state = ARCHIVE_STATE_HEADER; return (ret); } @@ -819,6 +821,7 @@ _archive_write_data(struct archive *_a, const void *buff, size_t s) { struct archive_write *a = (struct archive_write *)_a; const size_t max_write = INT_MAX; + int ret; archive_check_magic(&a->archive, ARCHIVE_WRITE_MAGIC, ARCHIVE_STATE_DATA, "archive_write_data"); @@ -826,7 +829,10 @@ _archive_write_data(struct archive *_a, const void *buff, size_t s) if (s > max_write) s = max_write; archive_clear_error(&a->archive); - return ((a->format_write_data)(a, buff, s)); + ret = (a->format_write_data)(a, buff, s); + if (ret == ARCHIVE_FATAL) + a->archive.state = ARCHIVE_STATE_FATAL; + return (ret); } static struct archive_write_filter * diff --git a/contrib/libarchive/libarchive/archive_write_add_filter_bzip2.c b/contrib/libarchive/libarchive/archive_write_add_filter_bzip2.c index 0726f08936ec..2434528d5133 100644 --- a/contrib/libarchive/libarchive/archive_write_add_filter_bzip2.c +++ b/contrib/libarchive/libarchive/archive_write_add_filter_bzip2.c @@ -281,6 +281,10 @@ static int archive_compressor_bzip2_free(struct archive_write_filter *f) { struct private_data *data = (struct private_data *)f->data; + + /* May already have been called, but not necessarily. */ + (void)BZ2_bzCompressEnd(&(data->stream)); + free(data->compressed); free(data); f->data = NULL; diff --git a/contrib/libarchive/libarchive/archive_write_add_filter_gzip.c b/contrib/libarchive/libarchive/archive_write_add_filter_gzip.c index 5ef43c1936ed..b09e669b753d 100644 --- a/contrib/libarchive/libarchive/archive_write_add_filter_gzip.c +++ b/contrib/libarchive/libarchive/archive_write_add_filter_gzip.c @@ -191,7 +191,8 @@ static int archive_compressor_gzip_open(struct archive_write_filter *f) { struct private_data *data = (struct private_data *)f->data; - int ret; + int ret = ARCHIVE_OK; + int init_success; if (data->compressed == NULL) { size_t bs = 65536, bpb; @@ -221,44 +222,66 @@ archive_compressor_gzip_open(struct archive_write_filter *f) data->compressed[0] = 0x1f; /* GZip signature bytes */ data->compressed[1] = 0x8b; data->compressed[2] = 0x08; /* "Deflate" compression */ - data->compressed[3] = data->original_filename == NULL ? 0 : 0x8; + data->compressed[3] = 0x00; /* Flags */ if (data->timestamp >= 0) { time_t t = time(NULL); data->compressed[4] = (uint8_t)(t)&0xff; /* Timestamp */ data->compressed[5] = (uint8_t)(t>>8)&0xff; data->compressed[6] = (uint8_t)(t>>16)&0xff; data->compressed[7] = (uint8_t)(t>>24)&0xff; - } else + } else { memset(&data->compressed[4], 0, 4); - if (data->compression_level == 9) - data->compressed[8] = 2; - else if(data->compression_level == 1) - data->compressed[8] = 4; - else - data->compressed[8] = 0; + } + if (data->compression_level == 9) { + data->compressed[8] = 2; + } else if(data->compression_level == 1) { + data->compressed[8] = 4; + } else { + data->compressed[8] = 0; + } data->compressed[9] = 3; /* OS=Unix */ data->stream.next_out += 10; data->stream.avail_out -= 10; if (data->original_filename != NULL) { - strcpy((char*)data->compressed + 10, data->original_filename); - data->stream.next_out += strlen(data->original_filename) + 1; - data->stream.avail_out -= strlen(data->original_filename) + 1; + /* Limit "original filename" to 32k or the + * remaining space in the buffer, whichever is smaller. + */ + int ofn_length = strlen(data->original_filename); + int ofn_max_length = 32768; + int ofn_space_available = data->compressed + + data->compressed_buffer_size + - data->stream.next_out + - 1; + if (ofn_max_length > ofn_space_available) { + ofn_max_length = ofn_space_available; + } + if (ofn_length < ofn_max_length) { + data->compressed[3] |= 0x8; + strcpy((char*)data->compressed + 10, + data->original_filename); + data->stream.next_out += ofn_length + 1; + data->stream.avail_out -= ofn_length + 1; + } else { + archive_set_error(f->archive, ARCHIVE_ERRNO_MISC, + "Gzip 'Original Filename' ignored because it is too long"); + ret = ARCHIVE_WARN; + } } f->write = archive_compressor_gzip_write; /* Initialize compression library. */ - ret = deflateInit2(&(data->stream), + init_success = deflateInit2(&(data->stream), data->compression_level, Z_DEFLATED, -15 /* < 0 to suppress zlib header */, 8, Z_DEFAULT_STRATEGY); - if (ret == Z_OK) { + if (init_success == Z_OK) { f->data = data; - return (ARCHIVE_OK); + return (ret); } /* Library setup failed: clean up. */ @@ -266,7 +289,7 @@ archive_compressor_gzip_open(struct archive_write_filter *f) "initializing compression library"); /* Override the error message if we know what really went wrong. */ - switch (ret) { + switch (init_success) { case Z_STREAM_ERROR: archive_set_error(f->archive, ARCHIVE_ERRNO_MISC, "Internal error initializing " diff --git a/contrib/libarchive/libarchive/archive_write_add_filter_program.c b/contrib/libarchive/libarchive/archive_write_add_filter_program.c index c661cc7f412f..f12db3373883 100644 --- a/contrib/libarchive/libarchive/archive_write_add_filter_program.c +++ b/contrib/libarchive/libarchive/archive_write_add_filter_program.c @@ -330,6 +330,7 @@ __archive_write_program_close(struct archive_write_filter *f, struct archive_write_program_data *data) { int ret, status; + pid_t pid; ssize_t bytes_read; if (data->child == 0) @@ -373,14 +374,12 @@ cleanup: close(data->child_stdin); if (data->child_stdout != -1) close(data->child_stdout); - while (waitpid(data->child, &status, 0) == -1 && errno == EINTR) - continue; -#if defined(_WIN32) && !defined(__CYGWIN__) - CloseHandle(data->child); -#endif + do { + pid = waitpid(data->child, &status, 0); + } while (pid == -1 && errno == EINTR); data->child = 0; - if (status != 0) { + if (pid < 0 || status != 0) { archive_set_error(f->archive, EIO, "Error closing program: %s", data->program_name); ret = ARCHIVE_FATAL; diff --git a/contrib/libarchive/libarchive/archive_write_add_filter_zstd.c b/contrib/libarchive/libarchive/archive_write_add_filter_zstd.c index c0a6e5a37a66..d4752c247157 100644 --- a/contrib/libarchive/libarchive/archive_write_add_filter_zstd.c +++ b/contrib/libarchive/libarchive/archive_write_add_filter_zstd.c @@ -391,6 +391,8 @@ archive_compressor_zstd_open(struct archive_write_filter *f) ZSTD_CCtx_setParameter(data->cstream, ZSTD_c_nbWorkers, data->threads); + ZSTD_CCtx_setParameter(data->cstream, ZSTD_c_checksumFlag, 1); + #if ZSTD_VERSION_NUMBER >= MINVER_LONG ZSTD_CCtx_setParameter(data->cstream, ZSTD_c_windowLog, data->long_distance); #endif diff --git a/contrib/libarchive/libarchive/archive_write_disk_posix.c b/contrib/libarchive/libarchive/archive_write_disk_posix.c index 1bbfd7a3d779..aeb27e1270ad 100644 --- a/contrib/libarchive/libarchive/archive_write_disk_posix.c +++ b/contrib/libarchive/libarchive/archive_write_disk_posix.c @@ -2204,7 +2204,7 @@ restore_entry(struct archive_write_disk *a) (void)clear_nochange_fflags(a); if ((a->flags & ARCHIVE_EXTRACT_SAFE_WRITES) && - S_ISREG(a->st.st_mode)) { + S_ISREG(a->mode)) { /* Use a temporary file to extract */ if ((a->fd = la_mktemp(a)) == -1) { archive_set_error(&a->archive, errno, @@ -2559,9 +2559,9 @@ _archive_write_disk_close(struct archive *_a) * for directories. For other file types * we need to verify via fstat() or lstat() */ - if (fd == -1 || p->filetype != AE_IFDIR) { + if (fd < 0 || p->filetype != AE_IFDIR) { #if HAVE_FSTAT - if (fd > 0 && ( + if (fd >= 0 && ( fstat(fd, &st) != 0 || la_verify_filetype(st.st_mode, p->filetype) == 0)) { @@ -3930,10 +3930,14 @@ clear_nochange_fflags(struct archive_write_disk *a) #ifdef UF_APPEND | UF_APPEND #endif -#ifdef EXT2_APPEND_FL +#if defined(FS_APPEND_FL) + | FS_APPEND_FL +#elif defined(EXT2_APPEND_FL) | EXT2_APPEND_FL #endif -#ifdef EXT2_IMMUTABLE_FL +#if defined(FS_IMMUTABLE_FL) + | FS_IMMUTABLE_FL +#elif defined(EXT2_IMMUTABLE_FL) | EXT2_IMMUTABLE_FL #endif ; @@ -4437,7 +4441,7 @@ fixup_appledouble(struct archive_write_disk *a, const char *pathname) */ fd = open(pathname, O_RDONLY | O_BINARY | O_CLOEXEC); __archive_ensure_cloexec_flag(fd); - if (fd == -1) { + if (fd < 0) { archive_set_error(&a->archive, errno, "Failed to open a restoring file"); ret = ARCHIVE_WARN; diff --git a/contrib/libarchive/libarchive/archive_write_open_fd.c b/contrib/libarchive/libarchive/archive_write_open_fd.c index 8a3f68d0699d..ba034ed92f8a 100644 --- a/contrib/libarchive/libarchive/archive_write_open_fd.c +++ b/contrib/libarchive/libarchive/archive_write_open_fd.c @@ -122,7 +122,7 @@ file_write(struct archive *a, void *client_data, const void *buff, size_t length mine = (struct write_fd_data *)client_data; for (;;) { bytesWritten = write(mine->fd, buff, length); - if (bytesWritten <= 0) { + if (bytesWritten < 0) { if (errno == EINTR) continue; archive_set_error(a, errno, "Write error"); diff --git a/contrib/libarchive/libarchive/archive_write_open_file.c b/contrib/libarchive/libarchive/archive_write_open_file.c index 4c6ebfb2269d..0b310f3da83b 100644 --- a/contrib/libarchive/libarchive/archive_write_open_file.c +++ b/contrib/libarchive/libarchive/archive_write_open_file.c @@ -85,16 +85,12 @@ file_write(struct archive *a, void *client_data, const void *buff, size_t length size_t bytesWritten; mine = client_data; - for (;;) { - bytesWritten = fwrite(buff, 1, length, mine->f); - if (bytesWritten <= 0) { - if (errno == EINTR) - continue; - archive_set_error(a, errno, "Write error"); - return (-1); - } - return (bytesWritten); + bytesWritten = fwrite(buff, 1, length, mine->f); + if (bytesWritten != length) { + archive_set_error(a, errno, "Write error"); + return (-1); } + return (bytesWritten); } static int diff --git a/contrib/libarchive/libarchive/archive_write_open_filename.c b/contrib/libarchive/libarchive/archive_write_open_filename.c index 34209426558c..7d0f9bde1dbb 100644 --- a/contrib/libarchive/libarchive/archive_write_open_filename.c +++ b/contrib/libarchive/libarchive/archive_write_open_filename.c @@ -108,6 +108,7 @@ open_filename(struct archive *a, int mbs_fn, const void *filename) else r = archive_mstring_copy_wcs(&mine->filename, filename); if (r < 0) { + free(mine); if (errno == ENOMEM) { archive_set_error(a, ENOMEM, "No memory"); return (ARCHIVE_FATAL); @@ -227,7 +228,7 @@ file_write(struct archive *a, void *client_data, const void *buff, mine = (struct write_file_data *)client_data; for (;;) { bytesWritten = write(mine->fd, buff, length); - if (bytesWritten <= 0) { + if (bytesWritten < 0) { if (errno == EINTR) continue; archive_set_error(a, errno, "Write error"); diff --git a/contrib/libarchive/libarchive/archive_write_set_format_7zip.c b/contrib/libarchive/libarchive/archive_write_set_format_7zip.c index c2bce5975a46..175285da13be 100644 --- a/contrib/libarchive/libarchive/archive_write_set_format_7zip.c +++ b/contrib/libarchive/libarchive/archive_write_set_format_7zip.c @@ -686,7 +686,7 @@ write_to_temp(struct archive_write *a, const void *buff, size_t s) ws = write(zip->temp_fd, p, s); if (ws < 0) { archive_set_error(&(a->archive), errno, - "fwrite function failed"); + "write function failed"); return (ARCHIVE_FATAL); } s -= ws; diff --git a/contrib/libarchive/libarchive/archive_write_set_format_mtree.c b/contrib/libarchive/libarchive/archive_write_set_format_mtree.c index 02fbb2d2f555..8131574c8da2 100644 --- a/contrib/libarchive/libarchive/archive_write_set_format_mtree.c +++ b/contrib/libarchive/libarchive/archive_write_set_format_mtree.c @@ -1927,7 +1927,7 @@ mtree_entry_setup_filenames(struct archive_write *a, struct mtree_entry *file, } /* - * Find out the position which points the last position of + * Find out the position which points to the last position of * path separator('/'). */ slash = NULL; @@ -2024,7 +2024,7 @@ mtree_entry_add_child_tail(struct mtree_entry *parent, } /* - * Find a entry from a parent entry with the name. + * Find an entry from a parent entry with given name. */ static struct mtree_entry * mtree_entry_find_child(struct mtree_entry *parent, const char *child_name) @@ -2148,10 +2148,10 @@ mtree_entry_tree_add(struct archive_write *a, struct mtree_entry **filep) /* Find next sub directory. */ if (!np->dir_info) { - /* NOT Directory! */ + /* NOT a directory! */ archive_set_error(&a->archive, ARCHIVE_ERRNO_MISC, - "`%s' is not directory, we cannot insert `%s' ", + "`%s' is not a directory, we cannot insert `%s' ", np->pathname.s, file->pathname.s); return (ARCHIVE_FAILED); } @@ -2243,10 +2243,7 @@ mtree_entry_tree_add(struct archive_write *a, struct mtree_entry **filep) } same_entry: - /* - * We have already has the entry the filename of which is - * the same. - */ + /* We already have an entry with same filename. */ r = mtree_entry_exchange_same_entry(a, np, file); if (r < ARCHIVE_WARN) return (r); @@ -2264,13 +2261,13 @@ mtree_entry_exchange_same_entry(struct archive_write *a, struct mtree_entry *np, if ((np->mode & AE_IFMT) != (file->mode & AE_IFMT)) { archive_set_error(&a->archive, ARCHIVE_ERRNO_MISC, - "Found duplicate entries `%s' and its file type is " - "different", + "Found duplicate entries for `%s' with " + "differing file types.", np->pathname.s); return (ARCHIVE_FAILED); } - /* Update the existent mtree entry's attributes by the new one's. */ + /* Update the existing mtree entry's attributes by the new one's. */ archive_string_empty(&np->symlink); archive_string_concat(&np->symlink, &file->symlink); archive_string_empty(&np->uname); diff --git a/contrib/libarchive/libarchive/archive_write_set_format_xar.c b/contrib/libarchive/libarchive/archive_write_set_format_xar.c index 3775e9f5819a..9921f1032be5 100644 --- a/contrib/libarchive/libarchive/archive_write_set_format_xar.c +++ b/contrib/libarchive/libarchive/archive_write_set_format_xar.c @@ -689,7 +689,7 @@ write_to_temp(struct archive_write *a, const void *buff, size_t s) ws = write(xar->temp_fd, p, s); if (ws < 0) { archive_set_error(&(a->archive), errno, - "fwrite function failed"); + "write function failed"); return (ARCHIVE_FATAL); } s -= ws; @@ -3418,8 +3418,8 @@ static int xml_writer_get_final_content_and_length(struct xml_writer *ctx, const char **out, size_t *size) { - *out = (const char*)ctx->bp->content; - *size = (size_t)ctx->bp->use; + *out = (const char*)xmlBufferContent(ctx->bp); + *size = (size_t)xmlBufferLength(ctx->bp); return (0); } diff --git a/contrib/libarchive/libarchive/archive_write_set_format_zip.c b/contrib/libarchive/libarchive/archive_write_set_format_zip.c index 3630b9f2b3a3..19121b519148 100644 --- a/contrib/libarchive/libarchive/archive_write_set_format_zip.c +++ b/contrib/libarchive/libarchive/archive_write_set_format_zip.c @@ -1856,7 +1856,10 @@ archive_write_zip_finish_entry(struct archive_write *a) } ret = __archive_write_output(a, zip->buf, remainder); if (ret != ARCHIVE_OK) + { + deflateEnd(&zip->stream.deflate); return (ret); + } zip->entry_compressed_written += remainder; zip->written_bytes += remainder; zip->stream.deflate.next_out = zip->buf; @@ -1898,7 +1901,10 @@ archive_write_zip_finish_entry(struct archive_write *a) } ret = __archive_write_output(a, zip->buf, remainder); if (ret != ARCHIVE_OK) + { + BZ2_bzCompressEnd(&zip->stream.bzip2); return (ret); + } zip->entry_compressed_written += remainder; zip->written_bytes += remainder; zip->stream.bzip2.next_out = (char*)zip->buf; @@ -1940,13 +1946,17 @@ archive_write_zip_finish_entry(struct archive_write *a) } ret = __archive_write_output(a, zip->buf, remainder); if (ret != ARCHIVE_OK) + { + ZSTD_freeCStream(zip->stream.zstd.context); return (ret); + } zip->entry_compressed_written += remainder; zip->written_bytes += remainder; - zip->stream.zstd.out.dst = zip->buf; if (zip->stream.zstd.out.pos != zip->stream.zstd.out.size) finishing = 0; + zip->stream.zstd.out.dst = zip->buf; zip->stream.zstd.out.size = zip->len_buf; + zip->stream.zstd.out.pos = 0; } while (finishing); ZSTD_freeCStream(zip->stream.zstd.context); break; @@ -1984,7 +1994,10 @@ archive_write_zip_finish_entry(struct archive_write *a) } ret = __archive_write_output(a, zip->buf, remainder); if (ret != ARCHIVE_OK) + { + lzma_end(&zip->stream.lzma.context); return (ret); + } zip->entry_compressed_written += remainder; zip->written_bytes += remainder; zip->stream.lzma.context.next_out = zip->buf; @@ -2434,13 +2447,19 @@ init_winzip_aes_encryption(struct archive_write *a) "Can't generate random number for encryption"); return (ARCHIVE_FATAL); } - archive_pbkdf2_sha1(passphrase, strlen(passphrase), + ret = archive_pbkdf2_sha1(passphrase, strlen(passphrase), salt, salt_len, 1000, derived_key, key_len * 2 + 2); + if (ret != 0) { + archive_set_error(&a->archive, ARCHIVE_ERRNO_MISC, + ret == CRYPTOR_STUB_FUNCTION ? "Encryption is unsupported due to " + "lack of crypto library" : "Failed to process passphrase"); + return (ARCHIVE_FAILED); + } ret = archive_encrypto_aes_ctr_init(&zip->cctx, derived_key, key_len); if (ret != 0) { archive_set_error(&a->archive, ARCHIVE_ERRNO_MISC, - "Decryption is unsupported due to lack of crypto library"); + "Failed to initialize AES CTR mode"); return (ARCHIVE_FAILED); } ret = archive_hmac_sha1_init(&zip->hctx, derived_key + key_len, diff --git a/contrib/libarchive/libarchive/filter_fork_posix.c b/contrib/libarchive/libarchive/filter_fork_posix.c index c895c08e59b3..7c48519336ff 100644 --- a/contrib/libarchive/libarchive/filter_fork_posix.c +++ b/contrib/libarchive/libarchive/filter_fork_posix.c @@ -1,6 +1,6 @@ /*- * Copyright (c) 2007 Joerg Sonnenberger - * Copyright (c) 2012 Michihiro NAKAJIMA + * Copyright (c) 2012 Michihiro NAKAJIMA * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -76,7 +76,15 @@ __archive_create_child(const char *cmd, int *child_stdin, int *child_stdout, { pid_t child = -1; int stdin_pipe[2], stdout_pipe[2], tmp; + +#if !defined(POSIX_SPAWN_CLOEXEC_DEFAULT) && \ + (HAVE_FORK || HAVE_VFORK) && \ + (HAVE_CLOSEFROM || HAVE_CLOSE_RANGE || defined(_SC_OPEN_MAX)) +#undef HAVE_POSIX_SPAWNP +#endif + #if HAVE_POSIX_SPAWNP + posix_spawnattr_t attr; posix_spawn_file_actions_t actions; int r; #endif @@ -107,11 +115,21 @@ __archive_create_child(const char *cmd, int *child_stdin, int *child_stdout, #if HAVE_POSIX_SPAWNP - r = posix_spawn_file_actions_init(&actions); + r = posix_spawnattr_init(&attr); if (r != 0) { errno = r; goto stdout_opened; } + r = posix_spawn_file_actions_init(&actions); + if (r != 0) { + errno = r; + goto attr_inited; + } +#ifdef POSIX_SPAWN_CLOEXEC_DEFAULT + r = posix_spawnattr_setflags(&attr, POSIX_SPAWN_CLOEXEC_DEFAULT); + if (r != 0) + goto actions_inited; +#endif r = posix_spawn_file_actions_addclose(&actions, stdin_pipe[1]); if (r != 0) goto actions_inited; @@ -136,11 +154,12 @@ __archive_create_child(const char *cmd, int *child_stdin, int *child_stdout, if (r != 0) goto actions_inited; } - r = posix_spawnp(&child, cmdline->path, &actions, NULL, + r = posix_spawnp(&child, cmdline->path, &actions, &attr, cmdline->argv, NULL); if (r != 0) goto actions_inited; posix_spawn_file_actions_destroy(&actions); + posix_spawnattr_destroy(&attr); #else /* HAVE_POSIX_SPAWNP */ @@ -162,6 +181,16 @@ __archive_create_child(const char *cmd, int *child_stdin, int *child_stdout, _exit(254); if (stdout_pipe[1] != 1 /* stdout */) close(stdout_pipe[1]); + +#if HAVE_CLOSEFROM + closefrom(3); +#elif HAVE_CLOSE_RANGE + close_range(3, ~0U, 0); +#elif defined(_SC_OPEN_MAX) + for (int i = sysconf(_SC_OPEN_MAX); i > 3;) + close(--i); +#endif + execvp(cmdline->path, cmdline->argv); _exit(254); } @@ -183,6 +212,8 @@ __archive_create_child(const char *cmd, int *child_stdin, int *child_stdout, actions_inited: errno = r; posix_spawn_file_actions_destroy(&actions); +attr_inited: + posix_spawnattr_destroy(&attr); #endif stdout_opened: close(stdout_pipe[0]); diff --git a/contrib/libarchive/libarchive/test/test_acl_nfs4.c b/contrib/libarchive/libarchive/test/test_acl_nfs4.c index 98d39689df69..050c0a063654 100644 --- a/contrib/libarchive/libarchive/test/test_acl_nfs4.c +++ b/contrib/libarchive/libarchive/test/test_acl_nfs4.c @@ -145,6 +145,13 @@ static struct archive_test_acl_t acls_bad[] = { ARCHIVE_ENTRY_ACL_EVERYONE, -1, "" }, { ARCHIVE_ENTRY_ACL_TYPE_ALLOW, ARCHIVE_ENTRY_ACL_WRITE, ARCHIVE_ENTRY_ACL_EVERYONE, -1, "" }, + + /* Multiple types */ + { ARCHIVE_ENTRY_ACL_TYPE_ALLOW | ARCHIVE_ENTRY_ACL_TYPE_AUDIT, + ARCHIVE_ENTRY_ACL_EXECUTE, + ARCHIVE_ENTRY_ACL_EVERYONE, -1, "" }, + { ARCHIVE_ENTRY_ACL_TYPE_NFS4, ARCHIVE_ENTRY_ACL_EXECUTE, + ARCHIVE_ENTRY_ACL_EVERYONE, -1, "" }, }; DEFINE_TEST(test_acl_nfs4) diff --git a/contrib/libarchive/libarchive/test/test_acl_posix1e.c b/contrib/libarchive/libarchive/test/test_acl_posix1e.c index 025ef6afd102..f9b6ffeb6ab7 100644 --- a/contrib/libarchive/libarchive/test/test_acl_posix1e.c +++ b/contrib/libarchive/libarchive/test/test_acl_posix1e.c @@ -94,6 +94,11 @@ static struct archive_test_acl_t acls_nfs4[] = { { ARCHIVE_ENTRY_ACL_TYPE_ACCESS, ARCHIVE_ENTRY_ACL_READ | ARCHIVE_ENTRY_ACL_ENTRY_FILE_INHERIT, ARCHIVE_ENTRY_ACL_USER_OBJ, -1, "" }, + + /* Invalid type codes */ + { ARCHIVE_ENTRY_ACL_TYPE_ACCESS | ARCHIVE_ENTRY_ACL_TYPE_DEFAULT, + ARCHIVE_ENTRY_ACL_READ, + ARCHIVE_ENTRY_ACL_GROUP_OBJ, -1, "" }, }; DEFINE_TEST(test_acl_posix1e) diff --git a/contrib/libarchive/libarchive/test/test_archive_parse_date.c b/contrib/libarchive/libarchive/test/test_archive_parse_date.c index 0a70971b1da6..5251b3393999 100644 --- a/contrib/libarchive/libarchive/test/test_archive_parse_date.c +++ b/contrib/libarchive/libarchive/test/test_archive_parse_date.c @@ -39,6 +39,8 @@ DEFINE_TEST(test_archive_parse_date) assertEqualInt(get_date(now, "Jan 1, 1970 UTC"), 0); assertEqualInt(get_date(now, "7:12:18-0530 4 May 1983"), 420900138); assertEqualInt(get_date(now, "2004/01/29 513 mest"), 1075345980); + assertEqualInt(get_date(now, "2038-06-01 00:01:02 UTC"), + sizeof(time_t) <= 4 ? -1 : 2158963262); assertEqualInt(get_date(now, "99/02/17 7pm utc"), 919278000); assertEqualInt(get_date(now, "02/17/99 7:11am est"), 919253460); assertEqualInt(get_date(now, "now - 2 hours"), diff --git a/contrib/libarchive/libarchive/test/test_archive_string_conversion.c b/contrib/libarchive/libarchive/test/test_archive_string_conversion.c index 12976f3e70ec..055bddc75068 100644 --- a/contrib/libarchive/libarchive/test/test_archive_string_conversion.c +++ b/contrib/libarchive/libarchive/test/test_archive_string_conversion.c @@ -991,6 +991,7 @@ DEFINE_TEST(test_archive_string_update_utf8_koi8) static const char koi8_string[] = "\xD0\xD2\xC9"; static const wchar_t wcs_string[] = L"\U0000043f\U00000440\U00000438"; struct archive_mstring mstr; + struct archive *a; int r; memset(&mstr, 0, sizeof(mstr)); @@ -999,6 +1000,15 @@ DEFINE_TEST(test_archive_string_update_utf8_koi8) skipping("KOI8-R locale not available on this system."); return; } + a = archive_write_new(); + assertEqualInt(ARCHIVE_OK, archive_write_set_format_pax(a)); + if (archive_write_set_options(a, "hdrcharset=UTF-8") != ARCHIVE_OK) { + skipping("This system cannot convert character-set" + " from KOI8-R to UTF-8."); + archive_write_free(a); + return; + } + archive_write_free(a); r = archive_mstring_update_utf8(NULL, &mstr, utf8_string); diff --git a/contrib/libarchive/libarchive/test/test_entry.c b/contrib/libarchive/libarchive/test/test_entry.c index 9b21b83ecdfb..cff9c5c86efc 100644 --- a/contrib/libarchive/libarchive/test/test_entry.c +++ b/contrib/libarchive/libarchive/test/test_entry.c @@ -880,6 +880,17 @@ DEFINE_TEST(test_entry) if (pst == NULL) return; assertEqualInt(pst->st_uid, 22); + + /* Check behavior with large sizes. */ + archive_entry_set_size(e, INT64_MAX - 1); + assert((pst = archive_entry_stat(e)) != NULL); + if (pst == NULL) + return; + if (sizeof(pst->st_size) < sizeof(int64_t)) + assertEqualInt(pst->st_size, 0); + else + assertEqualInt(pst->st_size, INT64_MAX - 1); + /* We don't need to check high-res fields here. */ /* diff --git a/contrib/libarchive/libarchive/test/test_read_filter_gzip_recursive.c b/contrib/libarchive/libarchive/test/test_read_filter_gzip_recursive.c index 0042a0511d5a..51b614b6c023 100644 --- a/contrib/libarchive/libarchive/test/test_read_filter_gzip_recursive.c +++ b/contrib/libarchive/libarchive/test/test_read_filter_gzip_recursive.c @@ -29,8 +29,8 @@ DEFINE_TEST(test_read_filter_gzip_recursive) const char *name = "test_read_filter_gzip_recursive.gz"; struct archive *a; - if (!canGzip()) { - skipping("gzip not available"); + if (archive_zlib_version() == NULL) { + skipping("zlib not available"); return; } diff --git a/contrib/libarchive/libarchive/test/test_read_format_7zip.c b/contrib/libarchive/libarchive/test/test_read_format_7zip.c index ad10ef06bbc5..3236fee2c9d3 100644 --- a/contrib/libarchive/libarchive/test/test_read_format_7zip.c +++ b/contrib/libarchive/libarchive/test/test_read_format_7zip.c @@ -1285,19 +1285,26 @@ DEFINE_TEST(test_read_format_7zip_sfx_pe) const char test_txt[] = "123"; int size = sizeof(test_txt) - 1; - extract_reference_file(reffile); assert((a = archive_read_new()) != NULL); - assertA(0 == archive_read_support_filter_all(a)); - assertA(0 == archive_read_support_format_all(a)); - assertA(0 == archive_read_open_filename(a, reffile, bs)); - assertA(0 == archive_read_next_header(a, &ae)); - assertEqualString("test.txt.txt", archive_entry_pathname(ae)); + if (ARCHIVE_OK != archive_read_support_filter_lzma(a)) { + skipping( + "7zip:lzma decoding is not supported on this platform"); + } else { + extract_reference_file(reffile); + assertA(0 == archive_read_support_filter_all(a)); + assertA(0 == archive_read_support_format_all(a)); + assertA(0 == archive_read_open_filename(a, reffile, bs)); - assertA(size == archive_read_data(a, buff, size)); - assertEqualMem(buff, test_txt, size); + assertA(0 == archive_read_next_header(a, &ae)); + assertEqualString("test.txt.txt", archive_entry_pathname(ae)); + + assertA(size == archive_read_data(a, buff, size)); + assertEqualMem(buff, test_txt, size); + + assertEqualIntA(a, ARCHIVE_OK, archive_read_close(a)); + } - assertEqualIntA(a, ARCHIVE_OK, archive_read_close(a)); assertEqualInt(ARCHIVE_OK, archive_read_free(a)); } @@ -1316,19 +1323,26 @@ DEFINE_TEST(test_read_format_7zip_sfx_modified_pe) const char test_txt[] = "123"; int size = sizeof(test_txt) - 1; - extract_reference_file(reffile); assert((a = archive_read_new()) != NULL); - assertA(0 == archive_read_support_filter_all(a)); - assertA(0 == archive_read_support_format_all(a)); - assertA(0 == archive_read_open_filename(a, reffile, bs)); - assertA(0 == archive_read_next_header(a, &ae)); - assertEqualString("test.txt.txt", archive_entry_pathname(ae)); + if (ARCHIVE_OK != archive_read_support_filter_lzma(a)) { + skipping( + "7zip:lzma decoding is not supported on this platform"); + } else { + extract_reference_file(reffile); + assertA(0 == archive_read_support_filter_all(a)); + assertA(0 == archive_read_support_format_all(a)); + assertA(0 == archive_read_open_filename(a, reffile, bs)); + + assertA(0 == archive_read_next_header(a, &ae)); + assertEqualString("test.txt.txt", archive_entry_pathname(ae)); + + assertA(size == archive_read_data(a, buff, size)); + assertEqualMem(buff, test_txt, size); - assertA(size == archive_read_data(a, buff, size)); - assertEqualMem(buff, test_txt, size); + assertEqualIntA(a, ARCHIVE_OK, archive_read_close(a)); + } - assertEqualIntA(a, ARCHIVE_OK, archive_read_close(a)); assertEqualInt(ARCHIVE_OK, archive_read_free(a)); } @@ -1346,20 +1360,27 @@ DEFINE_TEST(test_read_format_7zip_sfx_elf) const char test_txt[] = "123"; int size = sizeof(test_txt) - 1; - extract_reference_file(reffile); assert((a = archive_read_new()) != NULL); - assertA(0 == archive_read_support_filter_all(a)); - assertA(0 == archive_read_support_format_all(a)); - assertA(0 == archive_read_open_filename(a, reffile, bs)); - assertA(0 == archive_read_next_header(a, &ae)); - assertEqualString("test.txt.txt", archive_entry_pathname(ae)); + if (ARCHIVE_OK != archive_read_support_filter_lzma(a)) { + skipping( + "7zip:lzma decoding is not supported on this platform"); + } else { + extract_reference_file(reffile); + assertA(0 == archive_read_support_filter_all(a)); + assertA(0 == archive_read_support_format_all(a)); + assertA(0 == archive_read_open_filename(a, reffile, bs)); + + assertA(0 == archive_read_next_header(a, &ae)); + assertEqualString("test.txt.txt", archive_entry_pathname(ae)); - assertA(size == archive_read_data(a, buff, size)); - assertEqualMem(buff, test_txt, size); + assertA(size == archive_read_data(a, buff, size)); + assertEqualMem(buff, test_txt, size); - assertEqualIntA(a, ARCHIVE_OK, archive_read_close(a)); - assertEqualInt(ARCHIVE_OK, archive_read_free(a)); + assertEqualIntA(a, ARCHIVE_OK, archive_read_close(a)); + } + + assertEqualInt(ARCHIVE_OK, archive_read_free(a)); } DEFINE_TEST(test_read_format_7zip_extract_second) @@ -1597,9 +1618,9 @@ DEFINE_TEST(test_read_format_7zip_lzma2_powerpc) assert((a = archive_read_new()) != NULL); - if (ARCHIVE_OK != archive_read_support_filter_gzip(a)) { + if (ARCHIVE_OK != archive_read_support_filter_lzma(a)) { skipping( - "7zip:deflate decoding is not supported on this platform"); + "7zip:lzma decoding is not supported on this platform"); } else { test_powerpc_filter("test_read_format_7zip_lzma2_powerpc.7z"); } diff --git a/contrib/libarchive/libarchive/test/test_read_format_rar5.c b/contrib/libarchive/libarchive/test/test_read_format_rar5.c index fd233277bc1b..6ab0d236a1ed 100644 --- a/contrib/libarchive/libarchive/test/test_read_format_rar5.c +++ b/contrib/libarchive/libarchive/test/test_read_format_rar5.c @@ -1111,6 +1111,18 @@ DEFINE_TEST(test_read_format_rar5_nonempty_dir_stream) EPILOGUE(); } +DEFINE_TEST(test_read_format_rar5_nonempty_dir_data) +{ + PROLOGUE("test_read_format_rar5_dirdata.rar"); + + /* This archive is invalid. It declares a directory entry with nonzero + data size. */ + + assertA(archive_read_next_header(a, &ae) == ARCHIVE_FATAL); + + EPILOGUE(); +} + DEFINE_TEST(test_read_format_rar5_fileattr) { unsigned long set, clear, flag; @@ -1428,3 +1440,57 @@ DEFINE_TEST(test_read_format_rar5_data_ready_pointer_leak) EPILOGUE(); } + +DEFINE_TEST(test_read_format_rar5_only_crypt_exfld) +{ + /* GH #2711 */ + + char buf[4096]; + PROLOGUE("test_read_format_rar5_only_crypt_exfld.rar"); + + /* The reader should allow iteration through files, but should fail + during data extraction. */ + + assertA(archive_read_next_header(a, &ae) == ARCHIVE_OK); + assertA(archive_read_data(a, buf, sizeof(buf)) == ARCHIVE_FATAL); + + /* The reader should also provide a valid error message. */ + assertA(archive_error_string(a) != NULL); + + EPILOGUE(); +} + +DEFINE_TEST(test_read_format_rar5_only_unsupported_exfld) +{ + /* GH #2711 */ + + char buf[4096]; + PROLOGUE("test_read_format_rar5_unsupported_exfld.rar"); + + /* The reader should allow iteration through files, and it should + succeed with data extraction. */ + + assertA(archive_read_next_header(a, &ae) == ARCHIVE_OK); + + /* 48 is the expected number of bytes that should be extracted */ + assertA(archive_read_data(a, buf, sizeof(buf)) == 48); + + EPILOGUE(); +} + +DEFINE_TEST(test_read_format_rar5_invalidhash_and_validhtime_exfld) +{ + /* GH #2711 */ + + char buf[4096]; + PROLOGUE("test_read_format_rar5_invalid_hash_valid_htime_exfld.rar"); + + /* The reader should report an error when trying to process this data. + Returning EOF here means that the reader has failed to identify + malformed structure. */ + + assertA(archive_read_next_header(a, &ae) < 0); + assertA(archive_read_data(a, buf, sizeof(buf)) < 0); + + EPILOGUE(); +} diff --git a/contrib/libarchive/libarchive/test/test_read_format_rar5_dirdata.rar.uu b/contrib/libarchive/libarchive/test/test_read_format_rar5_dirdata.rar.uu new file mode 100644 index 000000000000..c7928f344a80 --- /dev/null +++ b/contrib/libarchive/libarchive/test/test_read_format_rar5_dirdata.rar.uu @@ -0,0 +1,6 @@ +begin 644 - +M4F%R(1H'`0`BD'[;,`$%,#8P`0&`@("``B?GD;$U`@(+@X``"_C5%:2#``(` +M`#"``S`P,#`P,#`P,#!);S#6KA',@]:N$?*IN;YV[8"1S>?4^`,#`R,#`P,# +-`P,#1)'C@XX*4`O.^P`` +` +end diff --git a/contrib/libarchive/libarchive/test/test_read_format_rar5_invalid_hash_valid_htime_exfld.rar.uu b/contrib/libarchive/libarchive/test/test_read_format_rar5_invalid_hash_valid_htime_exfld.rar.uu new file mode 100644 index 000000000000..399acd814ae4 --- /dev/null +++ b/contrib/libarchive/libarchive/test/test_read_format_rar5_invalid_hash_valid_htime_exfld.rar.uu @@ -0,0 +1,6 @@ +begin 644 - +M4F%R(1H'`0`SDK7E"@$%!@`%`0&`@`#^T/5L)`(###$$,>V#`D840I@``0AF +M:6QE+G1X=`@"OX0]``$"`P(#`&EN=F%L:60@2$%32"!E>'1R82P@86YD(&QA +>=&5R(&$@=F%L:60@2%1)344@97AT<F$@/=^&`@4$ +` +end diff --git a/contrib/libarchive/libarchive/test/test_read_format_rar5_only_crypt_exfld.rar.uu b/contrib/libarchive/libarchive/test/test_read_format_rar5_only_crypt_exfld.rar.uu new file mode 100644 index 000000000000..4f9faf350c11 --- /dev/null +++ b/contrib/libarchive/libarchive/test/test_read_format_rar5_only_crypt_exfld.rar.uu @@ -0,0 +1,7 @@ +begin 644 - +M4F%R(1H'`0`SDK7E"@$%!@`%`0&`@`"!0_"Y/0(#)2X$+NV#`IB>)!,``0AF +M:6QE+G1X="0!```&``````````````````````````````````````````!R +M87(U('-T;W)E9"!F:6QE('=I=&@@;VYL>2!A($-265!4(&5X=')A(&9I96QD +'(#W?A@(%!``` +` +end diff --git a/contrib/libarchive/libarchive/test/test_read_format_rar5_unsupported_exfld.rar.uu b/contrib/libarchive/libarchive/test/test_read_format_rar5_unsupported_exfld.rar.uu new file mode 100644 index 000000000000..16b456bf4873 --- /dev/null +++ b/contrib/libarchive/libarchive/test/test_read_format_rar5_unsupported_exfld.rar.uu @@ -0,0 +1,6 @@ +begin 644 - +M4F%R(1H'`0`SDK7E"@$%!@`%`0&`@`#>[JDS)@(##C`$,.V#`BX6Z[0``0AF +M:6QE+G1X=`W_____#WA6-!(`````<F%R-2!S=&]R960@9FEL92!W:71H(&%N +?('5N<W5P<&]R=&5D(&5X=')A(&9I96QD(#W?A@(%!``` +` +end diff --git a/contrib/libarchive/libarchive/test/test_read_format_tar_V_negative_size.c b/contrib/libarchive/libarchive/test/test_read_format_tar_V_negative_size.c new file mode 100644 index 000000000000..d110553acfaf --- /dev/null +++ b/contrib/libarchive/libarchive/test/test_read_format_tar_V_negative_size.c @@ -0,0 +1,48 @@ +/*- + * Copyright (c) 2025 Tim Kientzle + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR + * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES + * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF + * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +#include "test.h" + +DEFINE_TEST(test_read_format_tar_V_negative_size) +{ + /* + * An archive that contains a `V` volume header with a negative body size + * + * This used to lead to an infinite loop: the tar reader would "advance" + * by the size of the body to skip it, which would in this case end up + * reversing back to the beginning of the same header. + */ + struct archive_entry *ae; + struct archive *a; + const char *refname = "test_read_format_tar_V_negative_size.tar"; + + extract_reference_file(refname); + assert((a = archive_read_new()) != NULL); + assertEqualInt(ARCHIVE_OK, archive_read_support_filter_all(a)); + assertEqualInt(ARCHIVE_OK, archive_read_support_format_all(a)); + assertEqualIntA(a, ARCHIVE_OK, archive_read_open_filename(a, refname, 10240)); + assertEqualIntA(a, ARCHIVE_FATAL, archive_read_next_header(a, &ae)); + assertEqualIntA(a, ARCHIVE_OK, archive_read_close(a)); + assertEqualInt(ARCHIVE_OK, archive_read_free(a)); +} diff --git a/contrib/libarchive/libarchive/test/test_read_format_tar_V_negative_size.tar.uu b/contrib/libarchive/libarchive/test/test_read_format_tar_V_negative_size.tar.uu new file mode 100644 index 000000000000..230d710c8f8f --- /dev/null +++ b/contrib/libarchive/libarchive/test/test_read_format_tar_V_negative_size.tar.uu @@ -0,0 +1,20 @@ +Tar archive with a single `V` header that has a negative size. +This used to result in an infinite loop -- the tar reader would +"advance" by the size of the header, which in this case just backed +up to re-read the same header again. + +begin 644 test_read_format_tar_V_negative_size.tar +M`#(VXP```````````````````-Z;@"E&LOX^\@````````````!7````'``` +M```````````````````````````````````````````````````````````` +M``````````````````````````````````````````#___\````````@```` +M````````````````````````````5H%ZL#X]SH\-``":SN#[C4;Z5OOW-&'] +M?HHQ%WRG?Z$Q>^E#_1.OY96VEI*Z<U[)$TR502_;F$;9FU"/F'!`V:0````` +M`````````````````````````````````````````````````````0`````` +M```````````````````````````````````````````````````````````` +M`````````````````````````````0`````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +1```````````````````````` +` +end diff --git a/contrib/libarchive/libarchive/test/test_read_set_format.c b/contrib/libarchive/libarchive/test/test_read_set_format.c index c760de0056d3..615dd8ae8022 100644 --- a/contrib/libarchive/libarchive/test/test_read_set_format.c +++ b/contrib/libarchive/libarchive/test/test_read_set_format.c @@ -138,7 +138,10 @@ DEFINE_TEST(test_read_append_filter) assertEqualInt(ARCHIVE_OK, archive_read_free(a)); return; } - assertEqualIntA(a, ARCHIVE_OK, r); + if (r == ARCHIVE_WARN && canGzip()) + assertEqualString(archive_error_string(a), "Using external gzip program"); + else + assertEqualIntA(a, ARCHIVE_OK, r); assertEqualInt(ARCHIVE_OK, archive_read_open_memory(a, archive, sizeof(archive))); assertEqualInt(ARCHIVE_OK, archive_read_next_header(a, &ae)); @@ -210,7 +213,7 @@ DEFINE_TEST(test_read_append_filter_wrong_program) /* * If we have "bunzip2 -q", try using that. */ - if (!canRunCommand("bunzip2 -h")) { + if (!canRunCommand("bunzip2 -h", NULL)) { skipping("Can't run bunzip2 program on this platform"); return; } diff --git a/contrib/libarchive/libarchive/test/test_write_filter_bzip2.c b/contrib/libarchive/libarchive/test/test_write_filter_bzip2.c index 20ca0d9a7b22..7b2e4f857a75 100644 --- a/contrib/libarchive/libarchive/test/test_write_filter_bzip2.c +++ b/contrib/libarchive/libarchive/test/test_write_filter_bzip2.c @@ -268,6 +268,35 @@ DEFINE_TEST(test_write_filter_bzip2) assertEqualInt(ARCHIVE_OK, archive_write_free(a)); /* + * Test behavior after a fatal error (triggered by giving + * archive_write_open_memory() a very small buffer). + */ + if (!use_prog) { + used1 = 0; + assert((a = archive_write_new()) != NULL); + assertEqualIntA(a, ARCHIVE_OK, + archive_write_set_format_ustar(a)); + assertEqualIntA(a, ARCHIVE_OK, + archive_write_add_filter_bzip2(a)); + assertEqualIntA(a, ARCHIVE_OK, + archive_write_open_memory(a, buff, 100, &used1)); + assert((ae = archive_entry_new()) != NULL); + archive_entry_set_filetype(ae, AE_IFREG); + archive_entry_set_size(ae, 4000000); + archive_entry_copy_pathname(ae, "file"); + assertEqualIntA(a, ARCHIVE_OK, + archive_write_header(a, ae)); + for (i = 0; i < 1000000; i++) { + r = archive_write_data(a, &i, 4); + if (r == ARCHIVE_FATAL) + break; + } + assertEqualIntA(a, ARCHIVE_FATAL, r); + archive_entry_free(ae); + assertEqualInt(ARCHIVE_OK, archive_write_free(a)); + } + + /* * Clean up. */ free(data); diff --git a/contrib/libarchive/libarchive/test/test_write_filter_gzip.c b/contrib/libarchive/libarchive/test/test_write_filter_gzip.c index 8fbdbed09744..a6681d7618b1 100644 --- a/contrib/libarchive/libarchive/test/test_write_filter_gzip.c +++ b/contrib/libarchive/libarchive/test/test_write_filter_gzip.c @@ -166,9 +166,15 @@ DEFINE_TEST(test_write_filter_gzip) assertEqualInt(rbuff[0], 0x1f); assertEqualInt(rbuff[1], 0x8b); assertEqualInt(rbuff[2], 0x08); - assertEqualInt(rbuff[3], 0x08); - assertEqualInt(rbuff[8], 2); /* RFC 1952 flag for compression level 9 */ - assertEqualString((const char*)rbuff+10, "testorgfilename"); + /* RFC 1952 flag for compression level 9 */ + assertEqualInt(rbuff[8], 2); + /* External gzip program might not save filename */ + if (!use_prog || rbuff[3] == 0x08) { + assertEqualInt(rbuff[3], 0x08); + assertEqualString((const char*)rbuff+10, "testorgfilename"); + } else { + assertEqualInt(rbuff[3], 0x00); + } /* Curiously, this test fails; the test data above compresses * better at default compression than at level 9. */ diff --git a/contrib/libarchive/libarchive/test/test_write_filter_gzip_timestamp.c b/contrib/libarchive/libarchive/test/test_write_filter_gzip_timestamp.c index a148f818dcec..d0496b025b64 100644 --- a/contrib/libarchive/libarchive/test/test_write_filter_gzip_timestamp.c +++ b/contrib/libarchive/libarchive/test/test_write_filter_gzip_timestamp.c @@ -81,8 +81,11 @@ DEFINE_TEST(test_write_filter_gzip_timestamp) archive_entry_free(ae); assertEqualIntA(a, ARCHIVE_OK, archive_write_close(a)); assertEqualInt(ARCHIVE_OK, archive_write_free(a)); - failure("Timestamp should be recorded"); - assert(memcmp(buff + 4, "\x00\x00\x00\x00", 4) != 0); + /* External gzip program might not save timestamp */ + if (!use_prog) { + failure("Timestamp should be recorded"); + assert(memcmp(buff + 4, "\x00\x00\x00\x00", 4) != 0); + } /* Test2: set "gzip:!timestamp" option. */ assert((a = archive_write_new()) != NULL); diff --git a/contrib/libarchive/libarchive_fe/err.c b/contrib/libarchive/libarchive_fe/lafe_err.c index f6dcf44af347..b108b9b1fea7 100644 --- a/contrib/libarchive/libarchive_fe/err.c +++ b/contrib/libarchive/libarchive_fe/lafe_err.c @@ -36,7 +36,7 @@ #include <string.h> #endif -#include "err.h" +#include "lafe_err.h" static void lafe_vwarnc(int, const char *, va_list) __LA_PRINTFLIKE(2, 0); diff --git a/contrib/libarchive/libarchive_fe/err.h b/contrib/libarchive/libarchive_fe/lafe_err.h index f4a66350a669..f4a66350a669 100644 --- a/contrib/libarchive/libarchive_fe/err.h +++ b/contrib/libarchive/libarchive_fe/lafe_err.h diff --git a/contrib/libarchive/libarchive_fe/line_reader.c b/contrib/libarchive/libarchive_fe/line_reader.c index 7f0429ece3cf..0af9db53c0a2 100644 --- a/contrib/libarchive/libarchive_fe/line_reader.c +++ b/contrib/libarchive/libarchive_fe/line_reader.c @@ -31,7 +31,7 @@ #include <stdlib.h> #include <string.h> -#include "err.h" +#include "lafe_err.h" #include "line_reader.h" #if defined(_WIN32) && !defined(__CYGWIN__) && !defined(__BORLANDC__) diff --git a/contrib/libarchive/libarchive_fe/passphrase.c b/contrib/libarchive/libarchive_fe/passphrase.c index 527ad2d63654..1b7a50453664 100644 --- a/contrib/libarchive/libarchive_fe/passphrase.c +++ b/contrib/libarchive/libarchive_fe/passphrase.c @@ -61,7 +61,7 @@ #include <readpassphrase.h> #endif -#include "err.h" +#include "lafe_err.h" #include "passphrase.h" #ifndef HAVE_READPASSPHRASE diff --git a/contrib/libarchive/tar/bsdtar.c b/contrib/libarchive/tar/bsdtar.c index 53ac135f0129..92e86fd6bd94 100644 --- a/contrib/libarchive/tar/bsdtar.c +++ b/contrib/libarchive/tar/bsdtar.c @@ -55,7 +55,7 @@ #endif #include "bsdtar.h" -#include "err.h" +#include "lafe_err.h" #if ARCHIVE_VERSION_NUMBER < 4000000 && !defined(_PATH_DEFTAPE) // Libarchive 4.0 and later will NOT define _PATH_DEFTAPE @@ -183,6 +183,11 @@ main(int argc, char **argv) sa.sa_handler = SIG_IGN; sigaction(SIGPIPE, &sa, NULL); #endif +#ifdef SIGCHLD + /* Do not ignore SIGCHLD. */ + sa.sa_handler = SIG_DFL; + sigaction(SIGCHLD, &sa, NULL); +#endif } #endif diff --git a/contrib/libarchive/tar/bsdtar.h b/contrib/libarchive/tar/bsdtar.h index 45dfeed7dce3..782d36d6f756 100644 --- a/contrib/libarchive/tar/bsdtar.h +++ b/contrib/libarchive/tar/bsdtar.h @@ -16,6 +16,12 @@ #define ENV_WRITER_OPTIONS "TAR_WRITER_OPTIONS" #define IGNORE_WRONG_MODULE_NAME "__ignore_wrong_module_name__," +#if defined(_MSC_VER ) && (_MSC_VER < 1927 ) /* Check if compiler pre-dated Visual Studio 2019 Release 16.8 */ +#define ARCHIVE_RESTRICT +#else +#define ARCHIVE_RESTRICT restrict +#endif + struct creation_set; /* * The internal state for the "bsdtar" program. @@ -188,7 +194,7 @@ int edit_pathname(struct bsdtar *, struct archive_entry *); void edit_mtime(struct bsdtar *, struct archive_entry *); int need_report(void); int pathcmp(const char *a, const char *b); -void safe_fprintf(FILE * restrict, const char * restrict fmt, ...) __LA_PRINTF(2, 3); +void safe_fprintf(FILE * ARCHIVE_RESTRICT, const char * ARCHIVE_RESTRICT fmt, ...) __LA_PRINTF(2, 3); void set_chdir(struct bsdtar *, const char *newdir); const char *tar_i64toa(int64_t); void tar_mode_c(struct bsdtar *bsdtar); diff --git a/contrib/libarchive/tar/cmdline.c b/contrib/libarchive/tar/cmdline.c index c766c1a52dbb..309be312c948 100644 --- a/contrib/libarchive/tar/cmdline.c +++ b/contrib/libarchive/tar/cmdline.c @@ -22,7 +22,7 @@ #endif #include "bsdtar.h" -#include "err.h" +#include "lafe_err.h" /* * Short options for tar. Please keep this sorted. diff --git a/contrib/libarchive/tar/creation_set.c b/contrib/libarchive/tar/creation_set.c index 6883090418b0..51f803354a5d 100644 --- a/contrib/libarchive/tar/creation_set.c +++ b/contrib/libarchive/tar/creation_set.c @@ -15,7 +15,7 @@ #endif #include "bsdtar.h" -#include "err.h" +#include "lafe_err.h" struct creation_set { char *create_format; diff --git a/contrib/libarchive/tar/read.c b/contrib/libarchive/tar/read.c index 8563fe714f9a..7cbcfb19ff0a 100644 --- a/contrib/libarchive/tar/read.c +++ b/contrib/libarchive/tar/read.c @@ -57,7 +57,7 @@ #endif #include "bsdtar.h" -#include "err.h" +#include "lafe_err.h" struct progress_data { struct bsdtar *bsdtar; diff --git a/contrib/libarchive/tar/subst.c b/contrib/libarchive/tar/subst.c index 5546b5f93b12..a5d644dc5a70 100644 --- a/contrib/libarchive/tar/subst.c +++ b/contrib/libarchive/tar/subst.c @@ -25,7 +25,7 @@ #define REG_BASIC 0 #endif -#include "err.h" +#include "lafe_err.h" struct subst_rule { struct subst_rule *next; diff --git a/contrib/libarchive/tar/test/test_crlf_mtree.c b/contrib/libarchive/tar/test/test_crlf_mtree.c new file mode 100644 index 000000000000..5ef8811369c1 --- /dev/null +++ b/contrib/libarchive/tar/test/test_crlf_mtree.c @@ -0,0 +1,74 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2018 The FreeBSD Foundation + * All rights reserved. + * + * This software was developed by Arshan Khanifar <arshankhanifar@gmail.com> + * under sponsorship from the FreeBSD Foundation. + */ +#include "test.h" + +DEFINE_TEST(test_crlf_mtree) +{ + char *p0; + size_t s; + int r; + p0 = NULL; + char *content = "#mtree\r\n" + "f type=file uname=\\\r\n" + "root gname=root mode=0755 content=bar/foo\r\n" + "g type=file uname=root gname=root mode=0755 content=bar/goo\r\n"; + char *filename = "output.tar"; +#if defined(_WIN32) && !defined(__CYGWIN__) + char *p; +#endif + + /* an absolute path to mtree file */ + char *mtree_file = "/METALOG.mtree"; + char *absolute_path = malloc(strlen(testworkdir) + strlen(mtree_file) + 1); + strcpy(absolute_path, testworkdir); + strcat(absolute_path, mtree_file ); + + /* Create an archive using an mtree file. */ + assertMakeFile(absolute_path, 0777, content); + assertMakeDir("bar", 0775); + assertMakeFile("bar/foo", 0777, "abc"); + assertMakeFile("bar/goo", 0777, "abc"); + +#if defined(_WIN32) && !defined(__CYGWIN__) + p = absolute_path; + while(*p != '\0') { + if (*p == '/') + *p = '\\'; + p++; + } + + r = systemf("%s -cf %s @%s >step1.out 2>step1.err", testprog, filename, absolute_path); + failure("Error invoking %s -cf %s -C bar @%s", testprog, filename, absolute_path); +#else + r = systemf("%s -cf %s \"@%s\" >step1.out 2>step1.err", testprog, filename, absolute_path); + failure("Error invoking %s -cf %s -C bar \"@%s\"", testprog, filename, absolute_path); +#endif + + assertEqualInt(r, 0); + assertEmptyFile("step1.out"); + assertEmptyFile("step1.err"); + + /* Do validation of the constructed archive. */ + + p0 = slurpfile(&s, "output.tar"); + if (!assert(p0 != NULL)) + goto done; + if (!assert(s >= 2048)) + goto done; + assertEqualMem(p0 + 0, "f", 2); + assertEqualMem(p0 + 512, "abc", 4); + assertEqualMem(p0 + 1024, "g", 2); + assertEqualMem(p0 + 1536, "abc", 4); +done: + free(p0); + free(absolute_path); +} + + diff --git a/contrib/libarchive/tar/test/test_option_safe_writes.c b/contrib/libarchive/tar/test/test_option_safe_writes.c index b88479bc5f35..d30b9a745927 100644 --- a/contrib/libarchive/tar/test/test_option_safe_writes.c +++ b/contrib/libarchive/tar/test/test_option_safe_writes.c @@ -16,11 +16,12 @@ DEFINE_TEST(test_option_safe_writes) assertMakeFile("d", 0644, "c"); assertMakeFile("fs", 0644, "d"); assertMakeFile("ds", 0644, "e"); + assertMakeDir("fd", 0755); assertEqualInt(0, chdir("..")); /* Tar files up */ assertEqualInt(0, - systemf("%s -c -C in -f t.tar f fh d fs ds " + systemf("%s -c -C in -f t.tar f fh d fs ds fd " ">pack.out 2>pack.err", testprog)); /* Verify that nothing went to stdout or stderr. */ @@ -32,6 +33,7 @@ DEFINE_TEST(test_option_safe_writes) assertEqualInt(0, chdir("out")); assertMakeFile("f", 0644, "a"); assertMakeHardlink("fh", "f"); + assertMakeFile("fd", 0644, "b"); assertMakeDir("d", 0755); if (canSymlink()) { assertMakeSymlink("fs", "f", 0); @@ -55,4 +57,5 @@ DEFINE_TEST(test_option_safe_writes) assertTextFileContents("c","d"); assertTextFileContents("d","fs"); assertTextFileContents("e","ds"); + assertIsDir("fd", 0755); } diff --git a/contrib/libarchive/tar/util.c b/contrib/libarchive/tar/util.c index c99f67797562..fc5e15cb039f 100644 --- a/contrib/libarchive/tar/util.c +++ b/contrib/libarchive/tar/util.c @@ -41,7 +41,7 @@ #endif #include "bsdtar.h" -#include "err.h" +#include "lafe_err.h" #include "passphrase.h" static size_t bsdtar_expand_char(char *, size_t, size_t, char); @@ -682,6 +682,7 @@ list_item_verbose(struct bsdtar *bsdtar, FILE *out, struct archive_entry *entry) { char tmp[100]; size_t w; + size_t sw; const char *p; const char *fmt; time_t tim; @@ -769,8 +770,8 @@ list_item_verbose(struct bsdtar *bsdtar, FILE *out, struct archive_entry *entry) ltime = localtime(&tim); #endif if (ltime) - strftime(tmp, sizeof(tmp), fmt, ltime); - else + sw = strftime(tmp, sizeof(tmp), fmt, ltime); + if (!ltime || !sw) sprintf(tmp, "-- -- ----"); fprintf(out, " %s ", tmp); safe_fprintf(out, "%s", archive_entry_pathname(entry)); diff --git a/contrib/libarchive/tar/write.c b/contrib/libarchive/tar/write.c index 21984e980ebd..9e6c97b580b7 100644 --- a/contrib/libarchive/tar/write.c +++ b/contrib/libarchive/tar/write.c @@ -58,7 +58,7 @@ #endif #include "bsdtar.h" -#include "err.h" +#include "lafe_err.h" #include "line_reader.h" #ifndef O_BINARY @@ -111,7 +111,32 @@ seek_file(int fd, int64_t offset, int whence) return (SetFilePointerEx((HANDLE)_get_osfhandle(fd), distance, NULL, FILE_BEGIN) ? 1 : -1); } -#define open _open + +static int +_open_wrap_sopen(char const *const path, int const oflag, ...) +{ + va_list ap; + int r, pmode; + + pmode = 0; + if (oflag & _O_CREAT) + { + va_start(ap, oflag); + pmode = va_arg(ap, int); + va_end(ap); + } + + _sopen_s(&r, path, oflag, _SH_DENYNO, pmode & 0600); + if (r < 0) + { + /* _sopen_s populates errno */ + return -1; + } + + return r; +} + +#define open _open_wrap_sopen #define close _close #define read _read #ifdef lseek diff --git a/contrib/libarchive/test_utils/test_common.h b/contrib/libarchive/test_utils/test_common.h index 064f0a6ec241..a9df300e3be8 100644 --- a/contrib/libarchive/test_utils/test_common.h +++ b/contrib/libarchive/test_utils/test_common.h @@ -340,8 +340,14 @@ int canGrzip(void); /* Return true if this platform can run the "gzip" program. */ int canGzip(void); -/* Return true if this platform can run the specified command. */ -int canRunCommand(const char *); +/* Return true if this platform can run the specified command. + * + * Result can be optionally cached with `*tested`: + * - 0 if not tested yet + * - <0 if already tested negative + * - >0 if already tested positive + */ +int canRunCommand(const char *cmd, int *tested); /* Return true if this platform can run the "lrzip" program. */ int canLrzip(void); diff --git a/contrib/libarchive/test_utils/test_main.c b/contrib/libarchive/test_utils/test_main.c index fe330e5a052e..f4d443060d88 100644 --- a/contrib/libarchive/test_utils/test_main.c +++ b/contrib/libarchive/test_utils/test_main.c @@ -2523,167 +2523,77 @@ static const char *redirectArgs = ">NUL 2>NUL"; /* Win32 cmd.exe */ #else static const char *redirectArgs = ">/dev/null 2>/dev/null"; /* POSIX 'sh' */ #endif + /* - * Can this platform run the bzip2 program? + * Can this platform run the specified command? */ int -canBzip2(void) +canRunCommand(const char *cmd, int *tested) { - static int tested = 0, value = 0; - if (!tested) { - tested = 1; - if (systemf("bzip2 --help %s", redirectArgs) == 0) - value = 1; - } - return (value); + int value = tested ? *tested : 0; + if (!value) { + value = systemf("%s %s", cmd, redirectArgs) ? -1 : +1; + if (tested) + *tested = value; + } + return (value > 0); } +#define CAN_RUN_FUNC(Program, Command) \ + int can##Program(void) { \ + static int tested = 0; \ + return canRunCommand((Command), &tested); \ + } + +/* + * Can this platform run the bzip2 program? + */ +CAN_RUN_FUNC(Bzip2, "bzip2 --help") + /* * Can this platform run the grzip program? */ -int -canGrzip(void) -{ - static int tested = 0, value = 0; - if (!tested) { - tested = 1; - if (systemf("grzip -V %s", redirectArgs) == 0) - value = 1; - } - return (value); -} +CAN_RUN_FUNC(Grzip, "grzip -V") /* * Can this platform run the gzip program? */ -int -canGzip(void) -{ - static int tested = 0, value = 0; - if (!tested) { - tested = 1; - if (systemf("gzip --help %s", redirectArgs) == 0) - value = 1; - } - return (value); -} +CAN_RUN_FUNC(Gzip, "gzip --help") /* * Can this platform run the lrzip program? */ -int -canRunCommand(const char *cmd) -{ - static int tested = 0, value = 0; - if (!tested) { - tested = 1; - if (systemf("%s %s", cmd, redirectArgs) == 0) - value = 1; - } - return (value); -} - -int -canLrzip(void) -{ - static int tested = 0, value = 0; - if (!tested) { - tested = 1; - if (systemf("lrzip -V %s", redirectArgs) == 0) - value = 1; - } - return (value); -} +CAN_RUN_FUNC(Lrzip, "lrzip -V") /* * Can this platform run the lz4 program? */ -int -canLz4(void) -{ - static int tested = 0, value = 0; - if (!tested) { - tested = 1; - if (systemf("lz4 --help %s", redirectArgs) == 0) - value = 1; - } - return (value); -} +CAN_RUN_FUNC(Lz4, "lz4 --help") /* * Can this platform run the zstd program? */ -int -canZstd(void) -{ - static int tested = 0, value = 0; - if (!tested) { - tested = 1; - if (systemf("zstd --help %s", redirectArgs) == 0) - value = 1; - } - return (value); -} +CAN_RUN_FUNC(Zstd, "zstd --help") /* * Can this platform run the lzip program? */ -int -canLzip(void) -{ - static int tested = 0, value = 0; - if (!tested) { - tested = 1; - if (systemf("lzip --help %s", redirectArgs) == 0) - value = 1; - } - return (value); -} +CAN_RUN_FUNC(Lzip, "lzip --help") /* * Can this platform run the lzma program? */ -int -canLzma(void) -{ - static int tested = 0, value = 0; - if (!tested) { - tested = 1; - if (systemf("lzma --help %s", redirectArgs) == 0) - value = 1; - } - return (value); -} +CAN_RUN_FUNC(Lzma, "lzma --help") /* * Can this platform run the lzop program? */ -int -canLzop(void) -{ - static int tested = 0, value = 0; - if (!tested) { - tested = 1; - if (systemf("lzop --help %s", redirectArgs) == 0) - value = 1; - } - return (value); -} +CAN_RUN_FUNC(Lzop, "lzop --help") /* * Can this platform run the xz program? */ -int -canXz(void) -{ - static int tested = 0, value = 0; - if (!tested) { - tested = 1; - if (systemf("xz --help %s", redirectArgs) == 0) - value = 1; - } - return (value); -} +CAN_RUN_FUNC(Xz, "xz --help") /* * Can this filesystem handle nodump flags. @@ -4184,6 +4094,9 @@ main(int argc, char **argv) if (testprogfile == NULL) { tmp2_len = strlen(testprogdir) + 1 + strlen(PROGRAM) + 1; +#if defined(_WIN32) && !defined(__CYGWIN__) + tmp2_len += 4; +#endif if ((tmp2 = malloc(tmp2_len)) == NULL) { fprintf(stderr, "ERROR: Out of memory."); @@ -4192,6 +4105,9 @@ main(int argc, char **argv) strncpy(tmp2, testprogdir, tmp2_len); strncat(tmp2, "/", tmp2_len); strncat(tmp2, PROGRAM, tmp2_len); +#if defined(_WIN32) && !defined(__CYGWIN__) + strncat(tmp2, ".exe", tmp2_len); +#endif testprogfile = tmp2; } diff --git a/contrib/libarchive/unzip/bsdunzip.c b/contrib/libarchive/unzip/bsdunzip.c index 621afbeb9d6a..1b520e841690 100644 --- a/contrib/libarchive/unzip/bsdunzip.c +++ b/contrib/libarchive/unzip/bsdunzip.c @@ -29,6 +29,9 @@ #ifdef HAVE_LOCALE_H #include <locale.h> #endif +#ifdef HAVE_SIGNAL_H +#include <signal.h> +#endif #ifdef HAVE_STDARG_H #include <stdarg.h> #endif @@ -54,7 +57,7 @@ #include "bsdunzip.h" #include "passphrase.h" -#include "err.h" +#include "lafe_err.h" /* command-line options */ static int a_opt; /* convert EOL */ @@ -1187,6 +1190,16 @@ main(int argc, char *argv[]) const char *zipfile; int nopts; +#if defined(HAVE_SIGACTION) && defined(SIGCHLD) + { /* Do not ignore SIGCHLD. */ + struct sigaction sa; + sa.sa_handler = SIG_DFL; + sigemptyset(&sa.sa_mask); + sa.sa_flags = 0; + sigaction(SIGCHLD, &sa, NULL); + } +#endif + lafe_setprogname(*argv, "bsdunzip"); #if HAVE_SETLOCALE diff --git a/contrib/libarchive/unzip/cmdline.c b/contrib/libarchive/unzip/cmdline.c index 8afddedd5ead..8e6eedd2321c 100644 --- a/contrib/libarchive/unzip/cmdline.c +++ b/contrib/libarchive/unzip/cmdline.c @@ -21,7 +21,7 @@ #endif #include "bsdunzip.h" -#include "err.h" +#include "lafe_err.h" /* * Short options for bsdunzip. Please keep this sorted. diff --git a/contrib/libarchive/unzip/test/test_C.c b/contrib/libarchive/unzip/test/test_C.c index 66835c8406f3..d386bd61e85d 100644 --- a/contrib/libarchive/unzip/test/test_C.c +++ b/contrib/libarchive/unzip/test/test_C.c @@ -9,6 +9,7 @@ /* Test C arg - match case-insensitive */ DEFINE_TEST(test_C) { +#ifdef HAVE_LIBZ const char *reffile = "test_basic.zip"; int r; @@ -19,4 +20,7 @@ DEFINE_TEST(test_C) assertEmptyFile("test.err"); assertTextFileContents("contents CAPS\n", "test_basic/CAPS"); +#else + skipping("zlib not available"); +#endif } diff --git a/contrib/libarchive/unzip/test/test_L.c b/contrib/libarchive/unzip/test/test_L.c index 5b004d5d5707..85b43f592542 100644 --- a/contrib/libarchive/unzip/test/test_L.c +++ b/contrib/libarchive/unzip/test/test_L.c @@ -9,6 +9,7 @@ /* Test L arg - make names lowercase */ DEFINE_TEST(test_L) { +#ifdef HAVE_LIBZ const char *reffile = "test_basic.zip"; int r; @@ -22,4 +23,7 @@ DEFINE_TEST(test_L) assertTextFileContents("contents b\n", "test_basic/b"); assertTextFileContents("contents c\n", "test_basic/c"); assertTextFileContents("contents CAPS\n", "test_basic/caps"); +#else + skipping("zlib not available"); +#endif } diff --git a/contrib/libarchive/unzip/test/test_P_encryption.c b/contrib/libarchive/unzip/test/test_P_encryption.c index e2cf3cda0ebd..ed08a068811b 100644 --- a/contrib/libarchive/unzip/test/test_P_encryption.c +++ b/contrib/libarchive/unzip/test/test_P_encryption.c @@ -14,9 +14,13 @@ DEFINE_TEST(test_P_encryption) extract_reference_file(reffile); r = systemf("%s -P password %s >test.out 2>test.err", testprog, reffile); - assertEqualInt(0, r); - assertNonEmptyFile("test.out"); - assertEmptyFile("test.err"); + if (r == 256) { + assertTextFileContents("unzip: Decryption is unsupported due to lack of crypto library\n", "test.err"); + } else { + assertEqualInt(0, r); + assertNonEmptyFile("test.out"); + assertEmptyFile("test.err"); - assertTextFileContents("plaintext\n", "encrypted/file.txt"); + assertTextFileContents("plaintext\n", "encrypted/file.txt"); + } } diff --git a/contrib/libarchive/unzip/test/test_basic.c b/contrib/libarchive/unzip/test/test_basic.c index 1f37dcd416a3..3a884aa30e5d 100644 --- a/contrib/libarchive/unzip/test/test_basic.c +++ b/contrib/libarchive/unzip/test/test_basic.c @@ -9,6 +9,7 @@ /* This test just does a basic zip decompression */ DEFINE_TEST(test_basic) { +#ifdef HAVE_LIBZ const char *reffile = "test_basic.zip"; int r; @@ -22,4 +23,7 @@ DEFINE_TEST(test_basic) assertTextFileContents("contents b\n", "test_basic/b"); assertTextFileContents("contents c\n", "test_basic/c"); assertTextFileContents("contents CAPS\n", "test_basic/CAPS"); +#else + skipping("zlib not available"); +#endif } diff --git a/contrib/libarchive/unzip/test/test_d.c b/contrib/libarchive/unzip/test/test_d.c index ea67246207f2..cd7c3dfd97ad 100644 --- a/contrib/libarchive/unzip/test/test_d.c +++ b/contrib/libarchive/unzip/test/test_d.c @@ -9,6 +9,7 @@ /* Test d arg - extract to target dir - before zipfile argument */ DEFINE_TEST(test_d_before_zipfile) { +#ifdef HAVE_LIBZ const char *reffile = "test_basic.zip"; int r; @@ -22,11 +23,15 @@ DEFINE_TEST(test_d_before_zipfile) assertTextFileContents("contents b\n", "foobar/test_basic/b"); assertTextFileContents("contents c\n", "foobar/test_basic/c"); assertTextFileContents("contents CAPS\n", "foobar/test_basic/CAPS"); +#else + skipping("zlib not available"); +#endif } /* Test d arg - extract to target dir - after zipfile argument */ DEFINE_TEST(test_d_after_zipfile) { +#ifdef HAVE_LIBZ const char *reffile = "test_basic.zip"; int r; @@ -40,4 +45,7 @@ DEFINE_TEST(test_d_after_zipfile) assertTextFileContents("contents b\n", "foobar/test_basic/b"); assertTextFileContents("contents c\n", "foobar/test_basic/c"); assertTextFileContents("contents CAPS\n", "foobar/test_basic/CAPS"); +#else + skipping("zlib not available"); +#endif } diff --git a/contrib/libarchive/unzip/test/test_doubledash.c b/contrib/libarchive/unzip/test/test_doubledash.c index 4467213dbb89..db0445ec3c24 100644 --- a/contrib/libarchive/unzip/test/test_doubledash.c +++ b/contrib/libarchive/unzip/test/test_doubledash.c @@ -9,6 +9,7 @@ /* Test double dash arg - swallow "--" and use next argument as file name */ DEFINE_TEST(test_doubledash) { +#ifdef HAVE_LIBZ const char *reffile = "test_basic.zip"; int r; @@ -22,4 +23,7 @@ DEFINE_TEST(test_doubledash) assertTextFileContents("contents b\n", "test_basic/b"); assertTextFileContents("contents c\n", "test_basic/c"); assertTextFileContents("contents CAPS\n", "test_basic/CAPS"); +#else + skipping("zlib not available"); +#endif } diff --git a/contrib/libarchive/unzip/test/test_glob.c b/contrib/libarchive/unzip/test/test_glob.c index b53aa16fd85c..589ff1c55ef3 100644 --- a/contrib/libarchive/unzip/test/test_glob.c +++ b/contrib/libarchive/unzip/test/test_glob.c @@ -9,6 +9,7 @@ /* Test that the glob works */ DEFINE_TEST(test_glob) { +#ifdef HAVE_LIBZ const char *reffile = "test_basic.zip"; int r; @@ -22,4 +23,7 @@ DEFINE_TEST(test_glob) assertTextFileContents("contents b\n", "test_basic/b"); assertFileNotExists("test_basic/c"); assertFileNotExists("test_basic/CAPS"); +#else + skipping("zlib not available"); +#endif } diff --git a/contrib/libarchive/unzip/test/test_j.c b/contrib/libarchive/unzip/test/test_j.c index b87229f42e25..1fba8ca207ec 100644 --- a/contrib/libarchive/unzip/test/test_j.c +++ b/contrib/libarchive/unzip/test/test_j.c @@ -9,6 +9,7 @@ /* Test j arg - don't make directories */ DEFINE_TEST(test_j) { +#ifdef HAVE_LIBZ const char *reffile = "test_basic.zip"; int r; @@ -22,4 +23,7 @@ DEFINE_TEST(test_j) assertTextFileContents("contents b\n", "b"); assertTextFileContents("contents c\n", "c"); assertTextFileContents("contents CAPS\n", "CAPS"); +#else + skipping("zlib not available"); +#endif } diff --git a/contrib/libarchive/unzip/test/test_n.c b/contrib/libarchive/unzip/test/test_n.c index bb75c5d7696d..a13623ce23df 100644 --- a/contrib/libarchive/unzip/test/test_n.c +++ b/contrib/libarchive/unzip/test/test_n.c @@ -9,6 +9,7 @@ /* Test n arg - don't overwrite existing files */ DEFINE_TEST(test_n) { +#ifdef HAVE_LIBZ const char *reffile = "test_basic.zip"; int r; @@ -26,4 +27,7 @@ DEFINE_TEST(test_n) assertTextFileContents("orig b\n", "test_basic/b"); assertTextFileContents("contents c\n", "test_basic/c"); assertTextFileContents("contents CAPS\n", "test_basic/CAPS"); +#else + skipping("zlib not available"); +#endif } diff --git a/contrib/libarchive/unzip/test/test_o.c b/contrib/libarchive/unzip/test/test_o.c index 64f946774440..8c48348c41a4 100644 --- a/contrib/libarchive/unzip/test/test_o.c +++ b/contrib/libarchive/unzip/test/test_o.c @@ -9,6 +9,7 @@ /* Test o arg - overwrite existing files */ DEFINE_TEST(test_o) { +#ifdef HAVE_LIBZ const char *reffile = "test_basic.zip"; int r; @@ -25,4 +26,7 @@ DEFINE_TEST(test_o) assertTextFileContents("contents b\n", "test_basic/b"); assertTextFileContents("contents c\n", "test_basic/c"); assertTextFileContents("contents CAPS\n", "test_basic/CAPS"); +#else + skipping("zlib not available"); +#endif } diff --git a/contrib/libarchive/unzip/test/test_p.c b/contrib/libarchive/unzip/test/test_p.c index 8bfffbe5dc39..13a7765463ec 100644 --- a/contrib/libarchive/unzip/test/test_p.c +++ b/contrib/libarchive/unzip/test/test_p.c @@ -9,6 +9,7 @@ /* Test p arg - Print to stdout */ DEFINE_TEST(test_p) { +#ifdef HAVE_LIBZ const char *reffile = "test_basic.zip"; int r; @@ -17,4 +18,7 @@ DEFINE_TEST(test_p) assertEqualInt(0, r); assertTextFileContents("contents a\ncontents b\ncontents c\ncontents CAPS\n", "test.out"); assertEmptyFile("test.err"); +#else + skipping("zlib not available"); +#endif } diff --git a/contrib/libarchive/unzip/test/test_q.c b/contrib/libarchive/unzip/test/test_q.c index 13222a483992..0579e8028d76 100644 --- a/contrib/libarchive/unzip/test/test_q.c +++ b/contrib/libarchive/unzip/test/test_q.c @@ -9,6 +9,7 @@ /* Test q arg - Quiet */ DEFINE_TEST(test_q) { +#ifdef HAVE_LIBZ const char *reffile = "test_basic.zip"; int r; @@ -22,4 +23,7 @@ DEFINE_TEST(test_q) assertTextFileContents("contents b\n", "test_basic/b"); assertTextFileContents("contents c\n", "test_basic/c"); assertTextFileContents("contents CAPS\n", "test_basic/CAPS"); +#else + skipping("zlib not available"); +#endif } diff --git a/contrib/libarchive/unzip/test/test_singlefile.c b/contrib/libarchive/unzip/test/test_singlefile.c index a72811f046d9..a5a35ecacc4d 100644 --- a/contrib/libarchive/unzip/test/test_singlefile.c +++ b/contrib/libarchive/unzip/test/test_singlefile.c @@ -9,6 +9,7 @@ /* Ensure single-file zips work */ DEFINE_TEST(test_singlefile) { +#ifdef HAVE_LIBZ const char *reffile = "test_singlefile.zip"; int r; @@ -19,4 +20,7 @@ DEFINE_TEST(test_singlefile) assertEmptyFile("test.err"); assertTextFileContents("hello\n", "file.txt"); +#else + skipping("zlib not available"); +#endif } diff --git a/contrib/libarchive/unzip/test/test_t.c b/contrib/libarchive/unzip/test/test_t.c index 55a516fc636f..7565830915c3 100644 --- a/contrib/libarchive/unzip/test/test_t.c +++ b/contrib/libarchive/unzip/test/test_t.c @@ -9,6 +9,7 @@ /* Test t arg - Test zip contents */ DEFINE_TEST(test_t) { +#ifdef HAVE_LIBZ const char *reffile = "test_basic.zip"; int r; @@ -17,4 +18,7 @@ DEFINE_TEST(test_t) assertEqualInt(0, r); assertNonEmptyFile("test.out"); assertEmptyFile("test.err"); +#else + skipping("zlib not available"); +#endif } diff --git a/contrib/libarchive/unzip/test/test_x.c b/contrib/libarchive/unzip/test/test_x.c index 959beb1950df..43a2085dc5b2 100644 --- a/contrib/libarchive/unzip/test/test_x.c +++ b/contrib/libarchive/unzip/test/test_x.c @@ -9,6 +9,7 @@ /* Test x arg with single exclude path */ DEFINE_TEST(test_x_single) { +#ifdef HAVE_LIBZ const char *reffile = "test_basic.zip"; int r; @@ -22,11 +23,15 @@ DEFINE_TEST(test_x_single) assertTextFileContents("contents b\n", "test_basic/b"); assertFileNotExists("test_basic/c"); assertTextFileContents("contents CAPS\n", "test_basic/CAPS"); +#else + skipping("zlib not available"); +#endif } /* Test x arg with multiple exclude paths */ DEFINE_TEST(test_x_multiple) { +#ifdef HAVE_LIBZ const char *reffile = "test_basic.zip"; int r; @@ -40,11 +45,15 @@ DEFINE_TEST(test_x_multiple) assertFileNotExists("test_basic/b"); assertFileNotExists("test_basic/c"); assertTextFileContents("contents CAPS\n", "test_basic/CAPS"); +#else + skipping("zlib not available"); +#endif } /* Test x arg with multiple exclude paths and a d arg afterwards */ DEFINE_TEST(test_x_multiple_with_d) { +#ifdef HAVE_LIBZ const char *reffile = "test_basic.zip"; int r; @@ -58,4 +67,7 @@ DEFINE_TEST(test_x_multiple_with_d) assertFileNotExists("foobar/test_basic/b"); assertFileNotExists("foobar/test_basic/c"); assertTextFileContents("contents CAPS\n", "foobar/test_basic/CAPS"); +#else + skipping("zlib not available"); +#endif } diff --git a/contrib/netbsd-tests/lib/libc/regex/t_exhaust.c b/contrib/netbsd-tests/lib/libc/regex/t_exhaust.c index dd2e55635653..2f3d1025536b 100644 --- a/contrib/netbsd-tests/lib/libc/regex/t_exhaust.c +++ b/contrib/netbsd-tests/lib/libc/regex/t_exhaust.c @@ -1,4 +1,4 @@ -/* $NetBSD: t_exhaust.c,v 1.9 2019/03/16 21:57:15 christos Exp $ */ +/* $NetBSD: t_exhaust.c,v 1.10 2019/07/09 13:59:25 gson Exp $ */ /*- * Copyright (c) 2011 The NetBSD Foundation, Inc. @@ -37,7 +37,7 @@ */ #include <sys/cdefs.h> -__RCSID("$NetBSD: t_exhaust.c,v 1.9 2019/03/16 21:57:15 christos Exp $"); +__RCSID("$NetBSD: t_exhaust.c,v 1.10 2019/07/09 13:59:25 gson Exp $"); #include <sys/resource.h> #include <atf-c.h> @@ -177,7 +177,7 @@ ATF_TC_HEAD(regcomp_too_big, tc) " crash, but return a proper error code"); // libtre needs it. atf_tc_set_md_var(tc, "timeout", "600"); - atf_tc_set_md_var(tc, "require.memory", "64M"); + atf_tc_set_md_var(tc, "require.memory", "256M"); } ATF_TC_BODY(regcomp_too_big, tc) @@ -186,10 +186,8 @@ ATF_TC_BODY(regcomp_too_big, tc) int e; struct rlimit limit; -#if defined(__i386__) if (atf_tc_get_config_var_as_bool_wd(tc, "ci", false)) - atf_tc_skip("https://bugs.freebsd.org/237450"); -#endif + atf_tc_skip("https://bugs.freebsd.org/259971"); limit.rlim_cur = limit.rlim_max = 256 * 1024 * 1024; ATF_REQUIRE(setrlimit(RLIMIT_VMEM, &limit) != -1); diff --git a/crypto/.gitignore b/crypto/.gitignore new file mode 100644 index 000000000000..4c6e1f0fe03f --- /dev/null +++ b/crypto/.gitignore @@ -0,0 +1,78 @@ +# OpenSSL: the following are generated paths that generally should not be committed to FreeBSD. +openssl/apps/tsget.pl +openssl/crypto/buildinf.h +openssl/doc/html +openssl/doc/man +openssl/test/buildtest_*.c +openssl/util/wrap.pl +openssl/**/*.cmake +openssl/**/*.ld +openssl/**/*.s +openssl/*.pc +openssl/Makefile +openssl/Makefile.in +openssl/builddata.pm +openssl/configdata.pm +openssl/installdata.pm +openssl/pod2htmd.tmp + +# .pod files generated from .pod.in files. +# +# List can be easily updated via this command: +# +# % find openssl/doc -name \*.pod.in | sed -e 's,\.in,,g' +openssl/doc/man1/openssl-asn1parse.pod +openssl/doc/man1/openssl-ca.pod +openssl/doc/man1/openssl-ciphers.pod +openssl/doc/man1/openssl-cmds.pod +openssl/doc/man1/openssl-cmp.pod +openssl/doc/man1/openssl-cms.pod +openssl/doc/man1/openssl-crl.pod +openssl/doc/man1/openssl-crl2pkcs7.pod +openssl/doc/man1/openssl-dgst.pod +openssl/doc/man1/openssl-dhparam.pod +openssl/doc/man1/openssl-dsa.pod +openssl/doc/man1/openssl-dsaparam.pod +openssl/doc/man1/openssl-ec.pod +openssl/doc/man1/openssl-ecparam.pod +openssl/doc/man1/openssl-enc.pod +openssl/doc/man1/openssl-engine.pod +openssl/doc/man1/openssl-errstr.pod +openssl/doc/man1/openssl-fipsinstall.pod +openssl/doc/man1/openssl-gendsa.pod +openssl/doc/man1/openssl-genpkey.pod +openssl/doc/man1/openssl-genrsa.pod +openssl/doc/man1/openssl-info.pod +openssl/doc/man1/openssl-kdf.pod +openssl/doc/man1/openssl-list.pod +openssl/doc/man1/openssl-mac.pod +openssl/doc/man1/openssl-nseq.pod +openssl/doc/man1/openssl-ocsp.pod +openssl/doc/man1/openssl-passwd.pod +openssl/doc/man1/openssl-pkcs12.pod +openssl/doc/man1/openssl-pkcs7.pod +openssl/doc/man1/openssl-pkcs8.pod +openssl/doc/man1/openssl-pkey.pod +openssl/doc/man1/openssl-pkeyparam.pod +openssl/doc/man1/openssl-pkeyutl.pod +openssl/doc/man1/openssl-prime.pod +openssl/doc/man1/openssl-rand.pod +openssl/doc/man1/openssl-rehash.pod +openssl/doc/man1/openssl-req.pod +openssl/doc/man1/openssl-rsa.pod +openssl/doc/man1/openssl-rsautl.pod +openssl/doc/man1/openssl-s_client.pod +openssl/doc/man1/openssl-s_server.pod +openssl/doc/man1/openssl-s_time.pod +openssl/doc/man1/openssl-sess_id.pod +openssl/doc/man1/openssl-skeyutl.pod +openssl/doc/man1/openssl-smime.pod +openssl/doc/man1/openssl-speed.pod +openssl/doc/man1/openssl-spkac.pod +openssl/doc/man1/openssl-srp.pod +openssl/doc/man1/openssl-storeutl.pod +openssl/doc/man1/openssl-ts.pod +openssl/doc/man1/openssl-verify.pod +openssl/doc/man1/openssl-version.pod +openssl/doc/man1/openssl-x509.pod +openssl/doc/man7/openssl_user_macros.pod diff --git a/crypto/openssl/BSDmakefile b/crypto/openssl/BSDmakefile index d260808ffac3..a45dc2b532f3 100644 --- a/crypto/openssl/BSDmakefile +++ b/crypto/openssl/BSDmakefile @@ -48,32 +48,12 @@ configure: enable-sctp \ --openssldir=etc \ --prefix=/usr) - @echo "Building configdata.pm for later use." - @(cd ${.CURDIR} && \ - ${SETENVI} ${WRK_ENV} ${GMAKE} -j ${.MAKE.JOBS} configdata.pm) - - @echo "Populating Makefile.version with release information" - @(cd ${LCRYPTO_SRC} && ${SETENVI} ${WRK_ENV} ${PERL} \ - ${LCRYPTO_SRC}/freebsd/dump_version_from_configdata.pl > \ - ${SRCTOP}/secure/lib/libcrypto/Makefile.version) all: patch @echo "==> Building generated files (headers, manpages, etc)" @(cd ${.CURDIR} && \ ${SETENVI} ${WRK_ENV} ${GMAKE} -j ${.MAKE.JOBS} build_all_generated) - # 1. Fix --prefix. - # a. Not sure why --prefix isn't honored properly, even though it's - # passed to Configure; the files might be getting rebuilt - # post-Configure, somehow. - # 2. Remove duplicate path in CFLAGS. - # 3. Remove duplicate path in includedir(s). - @echo "==> Fixing pkgconfig files" - @find . -name \*.pc -print -exec sed -i '' -E \ - -e 's,^prefix=.+,prefix=/usr,' \ - -e 's,[[:space:]]+(\-I)?\$\{prefix\}/\./include[[:space:]]*,,g' \ - {} + - @echo "==> Cleaning / rebuilding ASM" @(cd ${SRCTOP}/secure/lib/libcrypto && \ ${SETENVI} ${WRK_ENV} ${MAKE} cleanasm && \ diff --git a/crypto/openssl/configdata.pm b/crypto/openssl/configdata.pm deleted file mode 100755 index 4a2c9307aa86..000000000000 --- a/crypto/openssl/configdata.pm +++ /dev/null @@ -1,36871 +0,0 @@ -#! /usr/bin/env perl -# -*- mode: perl -*- - -package configdata; - -use strict; -use warnings; - -use Exporter; -our @ISA = qw(Exporter); -our @EXPORT = qw( - %config %target %disabled %withargs %unified_info - @disablables @disablables_int -); - -our %config = ( - "AR" => "ar", - "ARFLAGS" => [ - "qc" - ], - "ASFLAGS" => [], - "CC" => "cc", - "CFLAGS" => [ - "-Wall -O3" - ], - "CPPDEFINES" => [], - "CPPFLAGS" => [], - "CPPINCLUDES" => [], - "CXXFLAGS" => [], - "FIPSKEY" => "f4556650ac31d35461610bac4ed81b1a181b2d8a43ea2854cbae22ca74560813", - "FIPS_VENDOR" => "OpenSSL non-compliant FIPS Provider", - "HASHBANGPERL" => "/usr/bin/env perl", - "LD" => "ld", - "LDFLAGS" => [], - "LDLIBS" => [], - "OBJCOPY" => "objcopy", - "PERL" => "/usr/local/bin/perl", - "RANLIB" => "ranlib", - "RC" => "windres", - "RCFLAGS" => [], - "afalgeng" => "", - "api" => "30500", - "b32" => "0", - "b64" => "0", - "b64l" => "1", - "bn_ll" => "0", - "build_file" => "Makefile", - "build_file_templates" => [ - "Configurations/common0.tmpl", - "Configurations/unix-Makefile.tmpl" - ], - "build_infos" => [ - "./build.info", - "crypto/build.info", - "ssl/build.info", - "apps/build.info", - "util/build.info", - "tools/build.info", - "fuzz/build.info", - "providers/build.info", - "doc/build.info", - "test/build.info", - "engines/build.info", - "exporters/build.info", - "crypto/objects/build.info", - "crypto/buffer/build.info", - "crypto/bio/build.info", - "crypto/stack/build.info", - "crypto/lhash/build.info", - "crypto/hashtable/build.info", - "crypto/rand/build.info", - "crypto/evp/build.info", - "crypto/asn1/build.info", - "crypto/pem/build.info", - "crypto/x509/build.info", - "crypto/conf/build.info", - "crypto/txt_db/build.info", - "crypto/pkcs7/build.info", - "crypto/pkcs12/build.info", - "crypto/ui/build.info", - "crypto/kdf/build.info", - "crypto/store/build.info", - "crypto/property/build.info", - "crypto/md4/build.info", - "crypto/md5/build.info", - "crypto/sha/build.info", - "crypto/ml_kem/build.info", - "crypto/hmac/build.info", - "crypto/ripemd/build.info", - "crypto/whrlpool/build.info", - "crypto/poly1305/build.info", - "crypto/siphash/build.info", - "crypto/des/build.info", - "crypto/aes/build.info", - "crypto/rc2/build.info", - "crypto/rc4/build.info", - "crypto/bf/build.info", - "crypto/cast/build.info", - "crypto/camellia/build.info", - "crypto/seed/build.info", - "crypto/chacha/build.info", - "crypto/modes/build.info", - "crypto/bn/build.info", - "crypto/ec/build.info", - "crypto/rsa/build.info", - "crypto/dsa/build.info", - "crypto/dh/build.info", - "crypto/dso/build.info", - "crypto/engine/build.info", - "crypto/err/build.info", - "crypto/comp/build.info", - "crypto/http/build.info", - "crypto/ocsp/build.info", - "crypto/cms/build.info", - "crypto/ts/build.info", - "crypto/srp/build.info", - "crypto/cmac/build.info", - "crypto/ct/build.info", - "crypto/async/build.info", - "crypto/ess/build.info", - "crypto/crmf/build.info", - "crypto/cmp/build.info", - "crypto/encode_decode/build.info", - "crypto/ffc/build.info", - "crypto/hpke/build.info", - "crypto/thread/build.info", - "crypto/ml_dsa/build.info", - "crypto/slh_dsa/build.info", - "ssl/record/build.info", - "ssl/rio/build.info", - "ssl/quic/build.info", - "apps/lib/build.info", - "providers/common/build.info", - "providers/implementations/build.info", - "doc/man1/build.info", - "ssl/record/methods/build.info", - "providers/common/der/build.info", - "providers/implementations/digests/build.info", - "providers/implementations/ciphers/build.info", - "providers/implementations/rands/build.info", - "providers/implementations/macs/build.info", - "providers/implementations/kdfs/build.info", - "providers/implementations/exchange/build.info", - "providers/implementations/keymgmt/build.info", - "providers/implementations/signature/build.info", - "providers/implementations/asymciphers/build.info", - "providers/implementations/encode_decode/build.info", - "providers/implementations/storemgmt/build.info", - "providers/implementations/kem/build.info", - "providers/implementations/skeymgmt/build.info", - "providers/implementations/rands/seeding/build.info" - ], - "build_metadata" => "", - "build_type" => "release", - "builddir" => ".", - "cflags" => [ - "-Wa,--noexecstack", - "-Qunused-arguments" - ], - "conf_files" => [ - "Configurations/00-base-templates.conf", - "Configurations/10-main.conf" - ], - "cppflags" => [], - "cxxflags" => [], - "defines" => [ - "NDEBUG" - ], - "dynamic_engines" => "1", - "ex_libs" => [], - "full_version" => "3.5.4", - "includes" => [], - "ktls" => "", - "lflags" => [], - "lib_defines" => [ - "OPENSSL_PIC" - ], - "libdir" => "", - "major" => "3", - "makedep_scheme" => "gcc", - "minor" => "5", - "openssl_api_defines" => [ - "OPENSSL_CONFIGURED_API=30500" - ], - "openssl_feature_defines" => [ - "OPENSSL_RAND_SEED_OS", - "OPENSSL_THREADS", - "OPENSSL_NO_ACVP_TESTS", - "OPENSSL_NO_AFALGENG", - "OPENSSL_NO_ARIA", - "OPENSSL_NO_ASAN", - "OPENSSL_NO_BROTLI", - "OPENSSL_NO_BROTLI_DYNAMIC", - "OPENSSL_NO_CRYPTO_MDEBUG", - "OPENSSL_NO_CRYPTO_MDEBUG_BACKTRACE", - "OPENSSL_NO_DEMOS", - "OPENSSL_NO_EGD", - "OPENSSL_NO_EXTERNAL_TESTS", - "OPENSSL_NO_FIPS_JITTER", - "OPENSSL_NO_FIPS_POST", - "OPENSSL_NO_FIPS_SECURITYCHECKS", - "OPENSSL_NO_FUZZ_AFL", - "OPENSSL_NO_FUZZ_LIBFUZZER", - "OPENSSL_NO_H3DEMO", - "OPENSSL_NO_HQINTEROP", - "OPENSSL_NO_IDEA", - "OPENSSL_NO_JITTER", - "OPENSSL_NO_MD2", - "OPENSSL_NO_MDC2", - "OPENSSL_NO_MSAN", - "OPENSSL_NO_PIE", - "OPENSSL_NO_RC5", - "OPENSSL_NO_SM2", - "OPENSSL_NO_SM3", - "OPENSSL_NO_SM4", - "OPENSSL_NO_SSL3", - "OPENSSL_NO_SSL3_METHOD", - "OPENSSL_NO_SSLKEYLOG", - "OPENSSL_NO_TFO", - "OPENSSL_NO_TRACE", - "OPENSSL_NO_UBSAN", - "OPENSSL_NO_UNIT_TEST", - "OPENSSL_NO_UPLINK", - "OPENSSL_NO_WEAK_SSL_CIPHERS", - "OPENSSL_NO_WINSTORE", - "OPENSSL_NO_ZLIB", - "OPENSSL_NO_ZLIB_DYNAMIC", - "OPENSSL_NO_ZSTD", - "OPENSSL_NO_ZSTD_DYNAMIC", - "OPENSSL_NO_STATIC_ENGINE" - ], - "openssl_sys_defines" => [], - "openssldir" => "etc", - "options" => "enable-ec_nistp_64_gcc_128 enable-ktls enable-sctp --openssldir=etc --prefix=/usr no-acvp-tests no-afalgeng no-aria no-asan no-brotli no-brotli-dynamic no-buildtest-c++ no-crypto-mdebug no-crypto-mdebug-backtrace no-demos no-egd no-external-tests no-fips no-fips-jitter no-fips-post no-fips-securitychecks no-fuzz-afl no-fuzz-libfuzzer no-h3demo no-hqinterop no-idea no-jitter no-md2 no-mdc2 no-msan no-pie no-rc5 no-sm2 no-sm3 no-sm4 no-ssl3 no-ssl3-method no-sslkeylog no-tfo no-trace no-ubsan no-unit-test no-uplink no-weak-ssl-ciphers no-winstore no-zlib no-zlib-dynamic no-zstd no-zstd-dynamic", - "patch" => "4", - "perl_archname" => "amd64-freebsd-thread-multi", - "perl_cmd" => "/usr/local/bin/perl", - "perl_version" => "5.40.3", - "perlargv" => [ - "disable-aria", - "disable-egd", - "disable-idea", - "disable-mdc2", - "disable-sm2", - "disable-sm3", - "disable-sm4", - "enable-ec_nistp_64_gcc_128", - "enable-ktls", - "enable-sctp", - "--openssldir=etc", - "--prefix=/usr" - ], - "perlenv" => { - "AR" => undef, - "ARFLAGS" => undef, - "AS" => undef, - "ASFLAGS" => undef, - "BUILDFILE" => undef, - "CC" => "cc", - "CFLAGS" => undef, - "CPP" => undef, - "CPPDEFINES" => undef, - "CPPFLAGS" => undef, - "CPPINCLUDES" => undef, - "CROSS_COMPILE" => undef, - "CXX" => undef, - "CXXFLAGS" => undef, - "HASHBANGPERL" => undef, - "LD" => "ld", - "LDFLAGS" => undef, - "LDLIBS" => undef, - "MT" => undef, - "MTFLAGS" => undef, - "OBJCOPY" => undef, - "OPENSSL_LOCAL_CONFIG_DIR" => undef, - "PERL" => undef, - "RANLIB" => undef, - "RC" => undef, - "RCFLAGS" => undef, - "RM" => undef, - "WINDRES" => undef, - "__CNF_CFLAGS" => undef, - "__CNF_CPPDEFINES" => undef, - "__CNF_CPPFLAGS" => undef, - "__CNF_CPPINCLUDES" => undef, - "__CNF_CXXFLAGS" => undef, - "__CNF_LDFLAGS" => undef, - "__CNF_LDLIBS" => undef - }, - "prefix" => "/usr", - "prerelease" => "", - "processor" => "", - "rc4_int" => "unsigned int", - "release_date" => "30 Sep 2025", - "shlib_version" => "3", - "sourcedir" => ".", - "target" => "BSD-x86_64", - "version" => "3.5.4" -); -our %target = ( - "AR" => "ar", - "ARFLAGS" => "qc", - "CC" => "cc", - "CFLAGS" => "-Wall -O3", - "HASHBANGPERL" => "/usr/bin/env perl", - "OBJCOPY" => "objcopy", - "RANLIB" => "ranlib", - "RC" => "windres", - "_conf_fname_int" => [ - "Configurations/00-base-templates.conf", - "Configurations/00-base-templates.conf", - "Configurations/10-main.conf", - "Configurations/10-main.conf", - "Configurations/10-main.conf", - "Configurations/shared-info.pl" - ], - "asm_arch" => "x86_64", - "bin_cflags" => "", - "bin_lflags" => "", - "bn_ops" => "SIXTY_FOUR_BIT_LONG", - "build_file" => "Makefile", - "build_scheme" => [ - "unified", - "unix" - ], - "cflags" => "-pthread", - "cppflags" => "-D_THREAD_SAFE -D_REENTRANT", - "defines" => [ - "OPENSSL_BUILDING_OPENSSL" - ], - "disable" => [], - "dso_ldflags" => "-Wl,-z,defs", - "dso_scheme" => "dlfcn", - "enable" => [ - "devcryptoeng" - ], - "ex_libs" => "-pthread", - "includes" => [], - "lflags" => "", - "lib_cflags" => "", - "lib_cppflags" => "-DL_ENDIAN", - "lib_defines" => [], - "module_cflags" => "-fPIC", - "module_cxxflags" => undef, - "module_ldflags" => "-shared -Wl,-Bsymbolic", - "perl_platform" => "Unix", - "perlasm_scheme" => "elf", - "shared_cflag" => "-fPIC", - "shared_defflag" => "-Wl,--version-script=", - "shared_defines" => [], - "shared_ldflag" => "-shared -Wl,-Bsymbolic", - "shared_rcflag" => "", - "shared_sonameflag" => "-Wl,-soname=", - "shared_target" => "bsd-gcc-shared", - "template" => "1", - "thread_defines" => [], - "thread_scheme" => "pthreads", - "unistd" => "<unistd.h>" -); -our @disablables = ( - "acvp-tests", - "afalgeng", - "apps", - "argon2", - "aria", - "asan", - "asm", - "async", - "atexit", - "autoalginit", - "autoerrinit", - "autoload-config", - "bf", - "blake2", - "brotli", - "brotli-dynamic", - "buildtest-c++", - "bulk", - "cached-fetch", - "camellia", - "capieng", - "winstore", - "cast", - "chacha", - "cmac", - "cmp", - "cms", - "comp", - "crypto-mdebug", - "ct", - "default-thread-pool", - "demos", - "h3demo", - "hqinterop", - "deprecated", - "des", - "devcryptoeng", - "dgram", - "dh", - "docs", - "dsa", - "dso", - "dtls", - "dynamic-engine", - "ec", - "ec2m", - "ec_nistp_64_gcc_128", - "ecdh", - "ecdsa", - "ecx", - "egd", - "engine", - "err", - "external-tests", - "filenames", - "fips", - "fips-securitychecks", - "fips-post", - "fips-jitter", - "fuzz-afl", - "fuzz-libfuzzer", - "gost", - "http", - "idea", - "integrity-only-ciphers", - "jitter", - "ktls", - "legacy", - "loadereng", - "makedepend", - "md2", - "md4", - "mdc2", - "ml-dsa", - "ml-kem", - "module", - "msan", - "multiblock", - "nextprotoneg", - "ocb", - "ocsp", - "padlockeng", - "pic", - "pie", - "pinshared", - "poly1305", - "posix-io", - "psk", - "quic", - "unstable-qlog", - "rc2", - "rc4", - "rc5", - "rdrand", - "rfc3779", - "rmd160", - "scrypt", - "sctp", - "secure-memory", - "seed", - "shared", - "siphash", - "siv", - "slh-dsa", - "sm2", - "sm2-precomp", - "sm3", - "sm4", - "sock", - "srp", - "srtp", - "sse2", - "ssl", - "ssl-trace", - "static-engine", - "stdio", - "sslkeylog", - "tests", - "tfo", - "thread-pool", - "threads", - "tls", - "tls-deprecated-ec", - "trace", - "ts", - "ubsan", - "ui-console", - "unit-test", - "uplink", - "weak-ssl-ciphers", - "whirlpool", - "zlib", - "zlib-dynamic", - "zstd", - "zstd-dynamic", - "ssl3", - "ssl3-method", - "tls1", - "tls1-method", - "tls1_1", - "tls1_1-method", - "tls1_2", - "tls1_2-method", - "tls1_3", - "dtls1", - "dtls1-method", - "dtls1_2", - "dtls1_2-method" -); -our @disablables_int = ( - "crmf" -); -our %disabled = ( - "acvp-tests" => "cascade", - "afalgeng" => "not-linux", - "aria" => "option", - "asan" => "default", - "brotli" => "default", - "brotli-dynamic" => "default", - "buildtest-c++" => "default", - "crypto-mdebug" => "default", - "crypto-mdebug-backtrace" => "default", - "demos" => "default", - "egd" => "option", - "external-tests" => "default", - "fips" => "default", - "fips-jitter" => "default", - "fips-post" => "cascade", - "fips-securitychecks" => "cascade", - "fuzz-afl" => "default", - "fuzz-libfuzzer" => "default", - "h3demo" => "default", - "hqinterop" => "default", - "idea" => "option", - "jitter" => "default", - "md2" => "default", - "mdc2" => "option", - "msan" => "default", - "pie" => "default", - "rc5" => "default", - "sm2" => "option", - "sm3" => "option", - "sm4" => "option", - "ssl3" => "default", - "ssl3-method" => "default", - "sslkeylog" => "default", - "tfo" => "default", - "trace" => "default", - "ubsan" => "default", - "unit-test" => "default", - "uplink" => "no uplink_arch", - "weak-ssl-ciphers" => "default", - "winstore" => "not-windows", - "zlib" => "default", - "zlib-dynamic" => "default", - "zstd" => "default", - "zstd-dynamic" => "default" -); -our %withargs = (); -our %unified_info = ( - "attributes" => { - "depends" => { - "doc/man1/openssl-asn1parse.pod" => { - "doc/man1/openssl-asn1parse.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-ca.pod" => { - "doc/man1/openssl-ca.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-ciphers.pod" => { - "doc/man1/openssl-ciphers.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-cmds.pod" => { - "doc/man1/openssl-cmds.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-cmp.pod" => { - "doc/man1/openssl-cmp.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-cms.pod" => { - "doc/man1/openssl-cms.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-crl.pod" => { - "doc/man1/openssl-crl.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-crl2pkcs7.pod" => { - "doc/man1/openssl-crl2pkcs7.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-dgst.pod" => { - "doc/man1/openssl-dgst.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-dhparam.pod" => { - "doc/man1/openssl-dhparam.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-dsa.pod" => { - "doc/man1/openssl-dsa.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-dsaparam.pod" => { - "doc/man1/openssl-dsaparam.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-ec.pod" => { - "doc/man1/openssl-ec.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-ecparam.pod" => { - "doc/man1/openssl-ecparam.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-enc.pod" => { - "doc/man1/openssl-enc.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-engine.pod" => { - "doc/man1/openssl-engine.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-errstr.pod" => { - "doc/man1/openssl-errstr.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-fipsinstall.pod" => { - "doc/man1/openssl-fipsinstall.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-gendsa.pod" => { - "doc/man1/openssl-gendsa.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-genpkey.pod" => { - "doc/man1/openssl-genpkey.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-genrsa.pod" => { - "doc/man1/openssl-genrsa.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-info.pod" => { - "doc/man1/openssl-info.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-kdf.pod" => { - "doc/man1/openssl-kdf.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-list.pod" => { - "doc/man1/openssl-list.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-mac.pod" => { - "doc/man1/openssl-mac.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-nseq.pod" => { - "doc/man1/openssl-nseq.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-ocsp.pod" => { - "doc/man1/openssl-ocsp.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-passwd.pod" => { - "doc/man1/openssl-passwd.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-pkcs12.pod" => { - "doc/man1/openssl-pkcs12.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-pkcs7.pod" => { - "doc/man1/openssl-pkcs7.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-pkcs8.pod" => { - "doc/man1/openssl-pkcs8.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-pkey.pod" => { - "doc/man1/openssl-pkey.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-pkeyparam.pod" => { - "doc/man1/openssl-pkeyparam.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-pkeyutl.pod" => { - "doc/man1/openssl-pkeyutl.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-prime.pod" => { - "doc/man1/openssl-prime.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-rand.pod" => { - "doc/man1/openssl-rand.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-rehash.pod" => { - "doc/man1/openssl-rehash.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-req.pod" => { - "doc/man1/openssl-req.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-rsa.pod" => { - "doc/man1/openssl-rsa.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-rsautl.pod" => { - "doc/man1/openssl-rsautl.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-s_client.pod" => { - "doc/man1/openssl-s_client.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-s_server.pod" => { - "doc/man1/openssl-s_server.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-s_time.pod" => { - "doc/man1/openssl-s_time.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-sess_id.pod" => { - "doc/man1/openssl-sess_id.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-skeyutl.pod" => { - "doc/man1/openssl-skeyutl.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-smime.pod" => { - "doc/man1/openssl-smime.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-speed.pod" => { - "doc/man1/openssl-speed.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-spkac.pod" => { - "doc/man1/openssl-spkac.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-srp.pod" => { - "doc/man1/openssl-srp.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-storeutl.pod" => { - "doc/man1/openssl-storeutl.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-ts.pod" => { - "doc/man1/openssl-ts.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-verify.pod" => { - "doc/man1/openssl-verify.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-version.pod" => { - "doc/man1/openssl-version.pod.in" => { - "pod" => "1" - } - }, - "doc/man1/openssl-x509.pod" => { - "doc/man1/openssl-x509.pod.in" => { - "pod" => "1" - } - }, - "doc/man7/openssl_user_macros.pod" => { - "doc/man7/openssl_user_macros.pod.in" => { - "pod" => "1" - } - }, - "providers/libcommon.a" => { - "libcrypto" => { - "weak" => "1" - } - } - }, - "generate" => { - "exporters/OpenSSLConfig.cmake" => { - "exporter" => "cmake" - }, - "exporters/OpenSSLConfigVersion.cmake" => { - "exporter" => "cmake" - }, - "exporters/libcrypto.pc" => { - "exporter" => "pkg-config" - }, - "exporters/libssl.pc" => { - "exporter" => "pkg-config" - }, - "exporters/openssl.pc" => { - "exporter" => "pkg-config" - }, - "include/openssl/configuration.h" => { - "skip" => "1" - } - }, - "libraries" => { - "apps/libapps.a" => { - "noinst" => "1" - }, - "providers/libcommon.a" => { - "noinst" => "1" - }, - "providers/libdefault.a" => { - "noinst" => "1" - }, - "providers/liblegacy.a" => { - "noinst" => "1" - }, - "providers/libtemplate.a" => { - "noinst" => "1" - }, - "test/libtestutil.a" => { - "has_main" => "1", - "noinst" => "1" - } - }, - "modules" => { - "engines/capi" => { - "engine" => "1" - }, - "engines/dasync" => { - "engine" => "1", - "noinst" => "1" - }, - "engines/devcrypto" => { - "engine" => "1" - }, - "engines/loader_attic" => { - "engine" => "1" - }, - "engines/ossltest" => { - "engine" => "1", - "noinst" => "1" - }, - "engines/padlock" => { - "engine" => "1" - }, - "test/p_minimal" => { - "noinst" => "1" - }, - "test/p_test" => { - "noinst" => "1" - } - }, - "programs" => { - "fuzz/acert-test" => { - "noinst" => "1" - }, - "fuzz/asn1-test" => { - "noinst" => "1" - }, - "fuzz/asn1parse-test" => { - "noinst" => "1" - }, - "fuzz/bignum-test" => { - "noinst" => "1" - }, - "fuzz/bndiv-test" => { - "noinst" => "1" - }, - "fuzz/client-test" => { - "noinst" => "1" - }, - "fuzz/cmp-test" => { - "noinst" => "1" - }, - "fuzz/cms-test" => { - "noinst" => "1" - }, - "fuzz/conf-test" => { - "noinst" => "1" - }, - "fuzz/crl-test" => { - "noinst" => "1" - }, - "fuzz/ct-test" => { - "noinst" => "1" - }, - "fuzz/decoder-test" => { - "noinst" => "1" - }, - "fuzz/dtlsclient-test" => { - "noinst" => "1" - }, - "fuzz/dtlsserver-test" => { - "noinst" => "1" - }, - "fuzz/hashtable-test" => { - "noinst" => "1" - }, - "fuzz/ml-dsa-test" => { - "noinst" => "1" - }, - "fuzz/ml-kem-test" => { - "noinst" => "1" - }, - "fuzz/pem-test" => { - "noinst" => "1" - }, - "fuzz/provider-test" => { - "noinst" => "1" - }, - "fuzz/punycode-test" => { - "noinst" => "1" - }, - "fuzz/quic-client-test" => { - "noinst" => "1" - }, - "fuzz/quic-lcidm-test" => { - "noinst" => "1" - }, - "fuzz/quic-rcidm-test" => { - "noinst" => "1" - }, - "fuzz/quic-server-test" => { - "noinst" => "1" - }, - "fuzz/quic-srtm-test" => { - "noinst" => "1" - }, - "fuzz/server-test" => { - "noinst" => "1" - }, - "fuzz/slh-dsa-test" => { - "noinst" => "1" - }, - "fuzz/smime-test" => { - "noinst" => "1" - }, - "fuzz/v3name-test" => { - "noinst" => "1" - }, - "fuzz/x509-test" => { - "noinst" => "1" - }, - "test/aborttest" => { - "noinst" => "1" - }, - "test/aesgcmtest" => { - "noinst" => "1" - }, - "test/afalgtest" => { - "noinst" => "1" - }, - "test/algorithmid_test" => { - "noinst" => "1" - }, - "test/asn1_decode_test" => { - "noinst" => "1" - }, - "test/asn1_dsa_internal_test" => { - "noinst" => "1" - }, - "test/asn1_encode_test" => { - "noinst" => "1" - }, - "test/asn1_internal_test" => { - "noinst" => "1" - }, - "test/asn1_stable_parse_test" => { - "noinst" => "1" - }, - "test/asn1_string_table_test" => { - "noinst" => "1" - }, - "test/asn1_time_test" => { - "noinst" => "1" - }, - "test/asynciotest" => { - "noinst" => "1" - }, - "test/asynctest" => { - "noinst" => "1" - }, - "test/bad_dtls_test" => { - "noinst" => "1" - }, - "test/bftest" => { - "noinst" => "1" - }, - "test/bio_addr_test" => { - "noinst" => "1" - }, - "test/bio_base64_test" => { - "noinst" => "1" - }, - "test/bio_callback_test" => { - "noinst" => "1" - }, - "test/bio_core_test" => { - "noinst" => "1" - }, - "test/bio_dgram_test" => { - "noinst" => "1" - }, - "test/bio_enc_test" => { - "noinst" => "1" - }, - "test/bio_memleak_test" => { - "noinst" => "1" - }, - "test/bio_meth_test" => { - "noinst" => "1" - }, - "test/bio_prefix_text" => { - "noinst" => "1" - }, - "test/bio_pw_callback_test" => { - "noinst" => "1" - }, - "test/bio_readbuffer_test" => { - "noinst" => "1" - }, - "test/bio_tfo_test" => { - "noinst" => "1" - }, - "test/bioprinttest" => { - "noinst" => "1" - }, - "test/bn_internal_test" => { - "noinst" => "1" - }, - "test/bntest" => { - "noinst" => "1" - }, - "test/build_wincrypt_test" => { - "noinst" => "1" - }, - "test/buildtest_c_aes" => { - "noinst" => "1" - }, - "test/buildtest_c_asn1" => { - "noinst" => "1" - }, - "test/buildtest_c_asn1t" => { - "noinst" => "1" - }, - "test/buildtest_c_async" => { - "noinst" => "1" - }, - "test/buildtest_c_bio" => { - "noinst" => "1" - }, - "test/buildtest_c_blowfish" => { - "noinst" => "1" - }, - "test/buildtest_c_bn" => { - "noinst" => "1" - }, - "test/buildtest_c_buffer" => { - "noinst" => "1" - }, - "test/buildtest_c_byteorder" => { - "noinst" => "1" - }, - "test/buildtest_c_camellia" => { - "noinst" => "1" - }, - "test/buildtest_c_cast" => { - "noinst" => "1" - }, - "test/buildtest_c_cmac" => { - "noinst" => "1" - }, - "test/buildtest_c_cmp" => { - "noinst" => "1" - }, - "test/buildtest_c_cmp_util" => { - "noinst" => "1" - }, - "test/buildtest_c_cms" => { - "noinst" => "1" - }, - "test/buildtest_c_comp" => { - "noinst" => "1" - }, - "test/buildtest_c_conf" => { - "noinst" => "1" - }, - "test/buildtest_c_conf_api" => { - "noinst" => "1" - }, - "test/buildtest_c_configuration" => { - "noinst" => "1" - }, - "test/buildtest_c_conftypes" => { - "noinst" => "1" - }, - "test/buildtest_c_core" => { - "noinst" => "1" - }, - "test/buildtest_c_core_dispatch" => { - "noinst" => "1" - }, - "test/buildtest_c_core_names" => { - "noinst" => "1" - }, - "test/buildtest_c_core_object" => { - "noinst" => "1" - }, - "test/buildtest_c_crmf" => { - "noinst" => "1" - }, - "test/buildtest_c_crypto" => { - "noinst" => "1" - }, - "test/buildtest_c_cryptoerr_legacy" => { - "noinst" => "1" - }, - "test/buildtest_c_ct" => { - "noinst" => "1" - }, - "test/buildtest_c_decoder" => { - "noinst" => "1" - }, - "test/buildtest_c_des" => { - "noinst" => "1" - }, - "test/buildtest_c_dh" => { - "noinst" => "1" - }, - "test/buildtest_c_dsa" => { - "noinst" => "1" - }, - "test/buildtest_c_dtls1" => { - "noinst" => "1" - }, - "test/buildtest_c_e_os2" => { - "noinst" => "1" - }, - "test/buildtest_c_e_ostime" => { - "noinst" => "1" - }, - "test/buildtest_c_ebcdic" => { - "noinst" => "1" - }, - "test/buildtest_c_ec" => { - "noinst" => "1" - }, - "test/buildtest_c_ecdh" => { - "noinst" => "1" - }, - "test/buildtest_c_ecdsa" => { - "noinst" => "1" - }, - "test/buildtest_c_encoder" => { - "noinst" => "1" - }, - "test/buildtest_c_engine" => { - "noinst" => "1" - }, - "test/buildtest_c_ess" => { - "noinst" => "1" - }, - "test/buildtest_c_evp" => { - "noinst" => "1" - }, - "test/buildtest_c_fips_names" => { - "noinst" => "1" - }, - "test/buildtest_c_fipskey" => { - "noinst" => "1" - }, - "test/buildtest_c_hmac" => { - "noinst" => "1" - }, - "test/buildtest_c_hpke" => { - "noinst" => "1" - }, - "test/buildtest_c_http" => { - "noinst" => "1" - }, - "test/buildtest_c_indicator" => { - "noinst" => "1" - }, - "test/buildtest_c_kdf" => { - "noinst" => "1" - }, - "test/buildtest_c_lhash" => { - "noinst" => "1" - }, - "test/buildtest_c_macros" => { - "noinst" => "1" - }, - "test/buildtest_c_md4" => { - "noinst" => "1" - }, - "test/buildtest_c_md5" => { - "noinst" => "1" - }, - "test/buildtest_c_ml_kem" => { - "noinst" => "1" - }, - "test/buildtest_c_modes" => { - "noinst" => "1" - }, - "test/buildtest_c_obj_mac" => { - "noinst" => "1" - }, - "test/buildtest_c_objects" => { - "noinst" => "1" - }, - "test/buildtest_c_ocsp" => { - "noinst" => "1" - }, - "test/buildtest_c_opensslv" => { - "noinst" => "1" - }, - "test/buildtest_c_ossl_typ" => { - "noinst" => "1" - }, - "test/buildtest_c_param_build" => { - "noinst" => "1" - }, - "test/buildtest_c_params" => { - "noinst" => "1" - }, - "test/buildtest_c_pem" => { - "noinst" => "1" - }, - "test/buildtest_c_pem2" => { - "noinst" => "1" - }, - "test/buildtest_c_pkcs12" => { - "noinst" => "1" - }, - "test/buildtest_c_pkcs7" => { - "noinst" => "1" - }, - "test/buildtest_c_prov_ssl" => { - "noinst" => "1" - }, - "test/buildtest_c_provider" => { - "noinst" => "1" - }, - "test/buildtest_c_quic" => { - "noinst" => "1" - }, - "test/buildtest_c_rand" => { - "noinst" => "1" - }, - "test/buildtest_c_rc2" => { - "noinst" => "1" - }, - "test/buildtest_c_rc4" => { - "noinst" => "1" - }, - "test/buildtest_c_ripemd" => { - "noinst" => "1" - }, - "test/buildtest_c_rsa" => { - "noinst" => "1" - }, - "test/buildtest_c_safestack" => { - "noinst" => "1" - }, - "test/buildtest_c_seed" => { - "noinst" => "1" - }, - "test/buildtest_c_self_test" => { - "noinst" => "1" - }, - "test/buildtest_c_sha" => { - "noinst" => "1" - }, - "test/buildtest_c_srp" => { - "noinst" => "1" - }, - "test/buildtest_c_srtp" => { - "noinst" => "1" - }, - "test/buildtest_c_ssl" => { - "noinst" => "1" - }, - "test/buildtest_c_ssl2" => { - "noinst" => "1" - }, - "test/buildtest_c_sslerr_legacy" => { - "noinst" => "1" - }, - "test/buildtest_c_stack" => { - "noinst" => "1" - }, - "test/buildtest_c_store" => { - "noinst" => "1" - }, - "test/buildtest_c_symhacks" => { - "noinst" => "1" - }, - "test/buildtest_c_thread" => { - "noinst" => "1" - }, - "test/buildtest_c_tls1" => { - "noinst" => "1" - }, - "test/buildtest_c_ts" => { - "noinst" => "1" - }, - "test/buildtest_c_txt_db" => { - "noinst" => "1" - }, - "test/buildtest_c_types" => { - "noinst" => "1" - }, - "test/buildtest_c_ui" => { - "noinst" => "1" - }, - "test/buildtest_c_whrlpool" => { - "noinst" => "1" - }, - "test/buildtest_c_x509" => { - "noinst" => "1" - }, - "test/buildtest_c_x509_acert" => { - "noinst" => "1" - }, - "test/buildtest_c_x509_vfy" => { - "noinst" => "1" - }, - "test/buildtest_c_x509v3" => { - "noinst" => "1" - }, - "test/byteorder_test" => { - "noinst" => "1" - }, - "test/ca_internals_test" => { - "noinst" => "1" - }, - "test/casttest" => { - "noinst" => "1" - }, - "test/chacha_internal_test" => { - "noinst" => "1" - }, - "test/cipher_overhead_test" => { - "noinst" => "1" - }, - "test/cipherbytes_test" => { - "noinst" => "1" - }, - "test/cipherlist_test" => { - "noinst" => "1" - }, - "test/ciphername_test" => { - "noinst" => "1" - }, - "test/clienthellotest" => { - "noinst" => "1" - }, - "test/cmactest" => { - "noinst" => "1" - }, - "test/cmp_asn_test" => { - "noinst" => "1" - }, - "test/cmp_client_test" => { - "noinst" => "1" - }, - "test/cmp_ctx_test" => { - "noinst" => "1" - }, - "test/cmp_hdr_test" => { - "noinst" => "1" - }, - "test/cmp_msg_test" => { - "noinst" => "1" - }, - "test/cmp_protect_test" => { - "noinst" => "1" - }, - "test/cmp_server_test" => { - "noinst" => "1" - }, - "test/cmp_status_test" => { - "noinst" => "1" - }, - "test/cmp_vfy_test" => { - "noinst" => "1" - }, - "test/cmsapitest" => { - "noinst" => "1" - }, - "test/conf_include_test" => { - "noinst" => "1" - }, - "test/confdump" => { - "noinst" => "1" - }, - "test/constant_time_test" => { - "noinst" => "1" - }, - "test/context_internal_test" => { - "noinst" => "1" - }, - "test/crltest" => { - "noinst" => "1" - }, - "test/ct_test" => { - "noinst" => "1" - }, - "test/ctype_internal_test" => { - "noinst" => "1" - }, - "test/curve448_internal_test" => { - "noinst" => "1" - }, - "test/d2i_test" => { - "noinst" => "1" - }, - "test/danetest" => { - "noinst" => "1" - }, - "test/decoder_propq_test" => { - "noinst" => "1" - }, - "test/defltfips_test" => { - "noinst" => "1" - }, - "test/destest" => { - "noinst" => "1" - }, - "test/dhtest" => { - "noinst" => "1" - }, - "test/drbgtest" => { - "noinst" => "1" - }, - "test/dsa_no_digest_size_test" => { - "noinst" => "1" - }, - "test/dsatest" => { - "noinst" => "1" - }, - "test/dtls_mtu_test" => { - "noinst" => "1" - }, - "test/dtlstest" => { - "noinst" => "1" - }, - "test/dtlsv1listentest" => { - "noinst" => "1" - }, - "test/ec_internal_test" => { - "noinst" => "1" - }, - "test/ecdsatest" => { - "noinst" => "1" - }, - "test/ecstresstest" => { - "noinst" => "1" - }, - "test/ectest" => { - "noinst" => "1" - }, - "test/endecode_test" => { - "noinst" => "1" - }, - "test/endecoder_legacy_test" => { - "noinst" => "1" - }, - "test/enginetest" => { - "noinst" => "1" - }, - "test/errtest" => { - "noinst" => "1" - }, - "test/evp_byname_test" => { - "noinst" => "1" - }, - "test/evp_extra_test" => { - "noinst" => "1" - }, - "test/evp_extra_test2" => { - "noinst" => "1" - }, - "test/evp_fetch_prov_test" => { - "noinst" => "1" - }, - "test/evp_kdf_test" => { - "noinst" => "1" - }, - "test/evp_libctx_test" => { - "noinst" => "1" - }, - "test/evp_pkey_ctx_new_from_name" => { - "noinst" => "1" - }, - "test/evp_pkey_dhkem_test" => { - "noinst" => "1" - }, - "test/evp_pkey_dparams_test" => { - "noinst" => "1" - }, - "test/evp_pkey_provided_test" => { - "noinst" => "1" - }, - "test/evp_skey_test" => { - "noinst" => "1" - }, - "test/evp_test" => { - "noinst" => "1" - }, - "test/evp_xof_test" => { - "noinst" => "1" - }, - "test/exdatatest" => { - "noinst" => "1" - }, - "test/exptest" => { - "noinst" => "1" - }, - "test/ext_internal_test" => { - "noinst" => "1" - }, - "test/fatalerrtest" => { - "noinst" => "1" - }, - "test/ffc_internal_test" => { - "noinst" => "1" - }, - "test/fips_version_test" => { - "noinst" => "1" - }, - "test/gmdifftest" => { - "noinst" => "1" - }, - "test/hexstr_test" => { - "noinst" => "1" - }, - "test/hmactest" => { - "noinst" => "1" - }, - "test/hpke_test" => { - "noinst" => "1" - }, - "test/http_test" => { - "noinst" => "1" - }, - "test/ideatest" => { - "noinst" => "1" - }, - "test/igetest" => { - "noinst" => "1" - }, - "test/json_test" => { - "noinst" => "1" - }, - "test/keymgmt_internal_test" => { - "noinst" => "1" - }, - "test/lhash_test" => { - "noinst" => "1" - }, - "test/list_test" => { - "noinst" => "1" - }, - "test/localetest" => { - "noinst" => "1" - }, - "test/mdc2test" => { - "noinst" => "1" - }, - "test/membio_test" => { - "noinst" => "1" - }, - "test/memleaktest" => { - "noinst" => "1" - }, - "test/ml_dsa_test" => { - "noinst" => "1" - }, - "test/ml_kem_evp_extra_test" => { - "noinst" => "1" - }, - "test/ml_kem_internal_test" => { - "noinst" => "1" - }, - "test/modes_internal_test" => { - "noinst" => "1" - }, - "test/moduleloadtest" => { - "noinst" => "1" - }, - "test/namemap_internal_test" => { - "noinst" => "1" - }, - "test/nodefltctxtest" => { - "noinst" => "1" - }, - "test/ocspapitest" => { - "noinst" => "1" - }, - "test/ossl_store_test" => { - "noinst" => "1" - }, - "test/packettest" => { - "noinst" => "1" - }, - "test/pairwise_fail_test" => { - "noinst" => "1" - }, - "test/param_build_test" => { - "noinst" => "1" - }, - "test/params_api_test" => { - "noinst" => "1" - }, - "test/params_conversion_test" => { - "noinst" => "1" - }, - "test/params_test" => { - "noinst" => "1" - }, - "test/pbelutest" => { - "noinst" => "1" - }, - "test/pbetest" => { - "noinst" => "1" - }, - "test/pem_read_depr_test" => { - "noinst" => "1" - }, - "test/pemtest" => { - "noinst" => "1" - }, - "test/pkcs12_api_test" => { - "noinst" => "1" - }, - "test/pkcs12_format_test" => { - "noinst" => "1" - }, - "test/pkcs7_test" => { - "noinst" => "1" - }, - "test/pkey_meth_kdf_test" => { - "noinst" => "1" - }, - "test/pkey_meth_test" => { - "noinst" => "1" - }, - "test/poly1305_internal_test" => { - "noinst" => "1" - }, - "test/priority_queue_test" => { - "noinst" => "1" - }, - "test/property_test" => { - "noinst" => "1" - }, - "test/prov_config_test" => { - "noinst" => "1" - }, - "test/provfetchtest" => { - "noinst" => "1" - }, - "test/provider_default_search_path_test" => { - "noinst" => "1" - }, - "test/provider_fallback_test" => { - "noinst" => "1" - }, - "test/provider_internal_test" => { - "noinst" => "1" - }, - "test/provider_pkey_test" => { - "noinst" => "1" - }, - "test/provider_status_test" => { - "noinst" => "1" - }, - "test/provider_test" => { - "noinst" => "1" - }, - "test/punycode_test" => { - "noinst" => "1" - }, - "test/quic_ackm_test" => { - "noinst" => "1" - }, - "test/quic_cc_test" => { - "noinst" => "1" - }, - "test/quic_cfq_test" => { - "noinst" => "1" - }, - "test/quic_client_test" => { - "noinst" => "1" - }, - "test/quic_fc_test" => { - "noinst" => "1" - }, - "test/quic_fifd_test" => { - "noinst" => "1" - }, - "test/quic_lcidm_test" => { - "noinst" => "1" - }, - "test/quic_multistream_test" => { - "noinst" => "1" - }, - "test/quic_newcid_test" => { - "noinst" => "1" - }, - "test/quic_qlog_test" => { - "noinst" => "1" - }, - "test/quic_radix_test" => { - "noinst" => "1" - }, - "test/quic_rcidm_test" => { - "noinst" => "1" - }, - "test/quic_record_test" => { - "noinst" => "1" - }, - "test/quic_srt_gen_test" => { - "noinst" => "1" - }, - "test/quic_srtm_test" => { - "noinst" => "1" - }, - "test/quic_stream_test" => { - "noinst" => "1" - }, - "test/quic_tserver_test" => { - "noinst" => "1" - }, - "test/quic_txp_test" => { - "noinst" => "1" - }, - "test/quic_txpim_test" => { - "noinst" => "1" - }, - "test/quic_wire_test" => { - "noinst" => "1" - }, - "test/quicapitest" => { - "noinst" => "1" - }, - "test/quicfaultstest" => { - "noinst" => "1" - }, - "test/rand_status_test" => { - "noinst" => "1" - }, - "test/rand_test" => { - "noinst" => "1" - }, - "test/rc2test" => { - "noinst" => "1" - }, - "test/rc4test" => { - "noinst" => "1" - }, - "test/rc5test" => { - "noinst" => "1" - }, - "test/rdcpu_sanitytest" => { - "noinst" => "1" - }, - "test/recordlentest" => { - "noinst" => "1" - }, - "test/rpktest" => { - "noinst" => "1" - }, - "test/rsa_complex" => { - "noinst" => "1" - }, - "test/rsa_mp_test" => { - "noinst" => "1" - }, - "test/rsa_sp800_56b_test" => { - "noinst" => "1" - }, - "test/rsa_test" => { - "noinst" => "1" - }, - "test/rsa_x931_test" => { - "noinst" => "1" - }, - "test/safe_math_test" => { - "noinst" => "1" - }, - "test/sanitytest" => { - "noinst" => "1" - }, - "test/secmemtest" => { - "noinst" => "1" - }, - "test/servername_test" => { - "noinst" => "1" - }, - "test/sha_test" => { - "noinst" => "1" - }, - "test/shlibloadtest" => { - "noinst" => "1" - }, - "test/siphash_internal_test" => { - "noinst" => "1" - }, - "test/slh_dsa_test" => { - "noinst" => "1" - }, - "test/sparse_array_test" => { - "noinst" => "1" - }, - "test/srptest" => { - "noinst" => "1" - }, - "test/ssl_cert_table_internal_test" => { - "noinst" => "1" - }, - "test/ssl_ctx_test" => { - "noinst" => "1" - }, - "test/ssl_handshake_rtt_test" => { - "noinst" => "1" - }, - "test/ssl_old_test" => { - "noinst" => "1" - }, - "test/ssl_test" => { - "noinst" => "1" - }, - "test/ssl_test_ctx_test" => { - "noinst" => "1" - }, - "test/sslapitest" => { - "noinst" => "1" - }, - "test/sslbuffertest" => { - "noinst" => "1" - }, - "test/sslcorrupttest" => { - "noinst" => "1" - }, - "test/stack_test" => { - "noinst" => "1" - }, - "test/strtoultest" => { - "noinst" => "1" - }, - "test/sysdefaulttest" => { - "noinst" => "1" - }, - "test/test_test" => { - "noinst" => "1" - }, - "test/threadpool_test" => { - "noinst" => "1" - }, - "test/threadstest" => { - "noinst" => "1" - }, - "test/threadstest_fips" => { - "noinst" => "1" - }, - "test/time_offset_test" => { - "noinst" => "1" - }, - "test/time_test" => { - "noinst" => "1" - }, - "test/timing_load_creds" => { - "noinst" => "1" - }, - "test/tls13ccstest" => { - "noinst" => "1" - }, - "test/tls13encryptiontest" => { - "noinst" => "1" - }, - "test/tls13groupselection_test" => { - "noinst" => "1" - }, - "test/tls13secretstest" => { - "noinst" => "1" - }, - "test/trace_api_test" => { - "noinst" => "1" - }, - "test/uitest" => { - "noinst" => "1" - }, - "test/upcallstest" => { - "noinst" => "1" - }, - "test/user_property_test" => { - "noinst" => "1" - }, - "test/v3ext" => { - "noinst" => "1" - }, - "test/v3nametest" => { - "noinst" => "1" - }, - "test/verify_extra_test" => { - "noinst" => "1" - }, - "test/versions" => { - "noinst" => "1" - }, - "test/wpackettest" => { - "noinst" => "1" - }, - "test/x509_acert_test" => { - "noinst" => "1" - }, - "test/x509_check_cert_pkey_test" => { - "noinst" => "1" - }, - "test/x509_dup_cert_test" => { - "noinst" => "1" - }, - "test/x509_internal_test" => { - "noinst" => "1" - }, - "test/x509_load_cert_file_test" => { - "noinst" => "1" - }, - "test/x509_req_test" => { - "noinst" => "1" - }, - "test/x509_test" => { - "noinst" => "1" - }, - "test/x509_time_test" => { - "noinst" => "1" - }, - "test/x509aux" => { - "noinst" => "1" - } - }, - "scripts" => { - "apps/CA.pl" => { - "misc" => "1" - }, - "apps/tsget.pl" => { - "linkname" => "tsget", - "misc" => "1" - }, - "util/shlib_wrap.sh" => { - "noinst" => "1" - }, - "util/wrap.pl" => { - "noinst" => "1" - } - }, - "sources" => { - "apps/openssl" => { - "apps/openssl-bin-progs.o" => { - "nocheck" => "1" - } - }, - "apps/openssl-bin-progs.o" => { - "apps/progs.c" => { - "nocheck" => "1" - } - }, - "apps/progs.o" => {} - } - }, - "defines" => { - "engines/loader_attic" => [ - "OPENSSL_NO_PROVIDER_CODE" - ], - "engines/padlock" => [ - "PADLOCK_ASM" - ], - "libcrypto" => [ - "AES_ASM", - "BSAES_ASM", - "CMLL_ASM", - "ECP_NISTZ256_ASM", - "GHASH_ASM", - "KECCAK1600_ASM", - "MD5_ASM", - "OPENSSL_BN_ASM_GF2m", - "OPENSSL_BN_ASM_MONT", - "OPENSSL_BN_ASM_MONT5", - "OPENSSL_CPUID_OBJ", - "OPENSSL_IA32_SSE2", - "POLY1305_ASM", - "RC4_ASM", - "SHA1_ASM", - "SHA256_ASM", - "SHA512_ASM", - "VPAES_ASM", - "WHIRLPOOL_ASM", - "X25519_ASM" - ], - "libssl" => [ - "AES_ASM" - ], - "providers/legacy" => [ - "OPENSSL_CPUID_OBJ" - ], - "providers/libcommon.a" => [ - "OPENSSL_BN_ASM_GF2m", - "OPENSSL_BN_ASM_MONT", - "OPENSSL_BN_ASM_MONT5", - "OPENSSL_CPUID_OBJ", - "OPENSSL_IA32_SSE2" - ], - "providers/libdefault.a" => [ - "AES_ASM", - "BSAES_ASM", - "ECP_NISTZ256_ASM", - "KECCAK1600_ASM", - "OPENSSL_CPUID_OBJ", - "OPENSSL_IA32_SSE2", - "SHA1_ASM", - "SHA256_ASM", - "SHA512_ASM", - "VPAES_ASM", - "X25519_ASM" - ], - "providers/libfips.a" => [ - "AES_ASM", - "BSAES_ASM", - "ECP_NISTZ256_ASM", - "FIPS_MODULE", - "GHASH_ASM", - "KECCAK1600_ASM", - "OPENSSL_BN_ASM_GF2m", - "OPENSSL_BN_ASM_MONT", - "OPENSSL_BN_ASM_MONT5", - "OPENSSL_CPUID_OBJ", - "OPENSSL_IA32_SSE2", - "SHA1_ASM", - "SHA256_ASM", - "SHA512_ASM", - "VPAES_ASM", - "X25519_ASM" - ], - "providers/liblegacy.a" => [ - "AES_ASM", - "BSAES_ASM", - "ECP_NISTZ256_ASM", - "KECCAK1600_ASM", - "MD5_ASM", - "RC4_ASM", - "SHA1_ASM", - "SHA256_ASM", - "SHA512_ASM", - "VPAES_ASM", - "X25519_ASM" - ], - "test/endecode_test" => [ - "STATIC_LEGACY" - ], - "test/evp_extra_test" => [ - "STATIC_LEGACY" - ], - "test/provider_internal_test" => [ - "PROVIDER_INIT_FUNCTION_NAME=p_test_init" - ], - "test/provider_test" => [ - "PROVIDER_INIT_FUNCTION_NAME=p_test_init" - ], - "test/tls13secretstest" => [ - "OPENSSL_NO_KTLS" - ] - }, - "depends" => { - "" => [ - "OpenSSLConfigVersion.cmake", - "crypto/params_idx.c", - "exporters/OpenSSLConfigVersion.cmake", - "exporters/openssl.pc", - "include/crypto/bn_conf.h", - "include/crypto/dso_conf.h", - "include/internal/param_names.h", - "include/openssl/asn1.h", - "include/openssl/asn1t.h", - "include/openssl/bio.h", - "include/openssl/cmp.h", - "include/openssl/cms.h", - "include/openssl/comp.h", - "include/openssl/conf.h", - "include/openssl/core_names.h", - "include/openssl/crmf.h", - "include/openssl/crypto.h", - "include/openssl/ct.h", - "include/openssl/err.h", - "include/openssl/ess.h", - "include/openssl/fipskey.h", - "include/openssl/lhash.h", - "include/openssl/ocsp.h", - "include/openssl/opensslv.h", - "include/openssl/pkcs12.h", - "include/openssl/pkcs7.h", - "include/openssl/safestack.h", - "include/openssl/srp.h", - "include/openssl/ssl.h", - "include/openssl/ui.h", - "include/openssl/x509.h", - "include/openssl/x509_acert.h", - "include/openssl/x509_vfy.h", - "include/openssl/x509v3.h", - "openssl.pc", - "test/provider_internal_test.cnf" - ], - "OpenSSLConfig.cmake" => [ - "builddata.pm" - ], - "OpenSSLConfigVersion.cmake" => [ - "OpenSSLConfig.cmake", - "builddata.pm" - ], - "apps/ca_internals_test-bin-ca.o" => [ - "apps/progs.h" - ], - "apps/lib/cmp_client_test-bin-cmp_mock_srv.o" => [ - "apps/progs.h" - ], - "apps/lib/openssl-bin-cmp_mock_srv.o" => [ - "apps/progs.h" - ], - "apps/openssl" => [ - "apps/libapps.a", - "libssl" - ], - "apps/openssl-bin-asn1parse.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-ca.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-ciphers.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-cmp.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-cms.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-crl.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-crl2pkcs7.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-dgst.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-dhparam.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-dsa.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-dsaparam.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-ec.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-ecparam.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-enc.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-engine.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-errstr.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-fipsinstall.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-gendsa.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-genpkey.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-genrsa.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-info.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-kdf.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-list.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-mac.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-nseq.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-ocsp.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-openssl.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-passwd.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-pkcs12.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-pkcs7.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-pkcs8.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-pkey.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-pkeyparam.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-pkeyutl.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-prime.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-progs.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-rand.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-rehash.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-req.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-rsa.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-rsautl.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-s_client.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-s_server.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-s_time.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-sess_id.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-skeyutl.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-smime.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-speed.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-spkac.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-srp.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-storeutl.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-ts.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-verify.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-version.o" => [ - "apps/progs.h" - ], - "apps/openssl-bin-x509.o" => [ - "apps/progs.h" - ], - "apps/progs.c" => [ - "configdata.pm" - ], - "apps/progs.h" => [ - "apps/progs.c" - ], - "crypto/aes/aes-586.S" => [ - "crypto/perlasm/x86asm.pl" - ], - "crypto/aes/aesni-586.S" => [ - "crypto/perlasm/x86asm.pl" - ], - "crypto/aes/aest4-sparcv9.S" => [ - "crypto/perlasm/sparcv9_modes.pl" - ], - "crypto/aes/vpaes-586.S" => [ - "crypto/perlasm/x86asm.pl" - ], - "crypto/bf/bf-586.S" => [ - "crypto/perlasm/cbc.pl", - "crypto/perlasm/x86asm.pl" - ], - "crypto/bn/bn-586.S" => [ - "crypto/perlasm/x86asm.pl" - ], - "crypto/bn/co-586.S" => [ - "crypto/perlasm/x86asm.pl" - ], - "crypto/bn/x86-gf2m.S" => [ - "crypto/perlasm/x86asm.pl" - ], - "crypto/bn/x86-mont.S" => [ - "crypto/perlasm/x86asm.pl" - ], - "crypto/camellia/cmll-x86.S" => [ - "crypto/perlasm/x86asm.pl" - ], - "crypto/camellia/cmllt4-sparcv9.S" => [ - "crypto/perlasm/sparcv9_modes.pl" - ], - "crypto/cast/cast-586.S" => [ - "crypto/perlasm/cbc.pl", - "crypto/perlasm/x86asm.pl" - ], - "crypto/des/crypt586.S" => [ - "crypto/perlasm/cbc.pl", - "crypto/perlasm/x86asm.pl" - ], - "crypto/des/des-586.S" => [ - "crypto/perlasm/cbc.pl", - "crypto/perlasm/x86asm.pl" - ], - "crypto/libcrypto-lib-cversion.o" => [ - "crypto/buildinf.h" - ], - "crypto/libcrypto-lib-info.o" => [ - "crypto/buildinf.h" - ], - "crypto/libcrypto-shlib-cversion.o" => [ - "crypto/buildinf.h" - ], - "crypto/libcrypto-shlib-info.o" => [ - "crypto/buildinf.h" - ], - "crypto/params_idx.c" => [ - "util/perl|OpenSSL/paramnames.pm" - ], - "crypto/rc4/rc4-586.S" => [ - "crypto/perlasm/x86asm.pl" - ], - "crypto/ripemd/rmd-586.S" => [ - "crypto/perlasm/x86asm.pl" - ], - "crypto/sha/sha1-586.S" => [ - "crypto/perlasm/x86asm.pl" - ], - "crypto/sha/sha256-586.S" => [ - "crypto/perlasm/x86asm.pl" - ], - "crypto/sha/sha512-586.S" => [ - "crypto/perlasm/x86asm.pl" - ], - "crypto/whrlpool/wp-mmx.S" => [ - "crypto/perlasm/x86asm.pl" - ], - "crypto/x86cpuid.s" => [ - "crypto/perlasm/x86asm.pl" - ], - "doc/html/man1/CA.pl.html" => [ - "doc/man1/CA.pl.pod" - ], - "doc/html/man1/openssl-asn1parse.html" => [ - "doc/man1/openssl-asn1parse.pod" - ], - "doc/html/man1/openssl-ca.html" => [ - "doc/man1/openssl-ca.pod" - ], - "doc/html/man1/openssl-ciphers.html" => [ - "doc/man1/openssl-ciphers.pod" - ], - "doc/html/man1/openssl-cmds.html" => [ - "doc/man1/openssl-cmds.pod" - ], - "doc/html/man1/openssl-cmp.html" => [ - "doc/man1/openssl-cmp.pod" - ], - "doc/html/man1/openssl-cms.html" => [ - "doc/man1/openssl-cms.pod" - ], - "doc/html/man1/openssl-crl.html" => [ - "doc/man1/openssl-crl.pod" - ], - "doc/html/man1/openssl-crl2pkcs7.html" => [ - "doc/man1/openssl-crl2pkcs7.pod" - ], - "doc/html/man1/openssl-dgst.html" => [ - "doc/man1/openssl-dgst.pod" - ], - "doc/html/man1/openssl-dhparam.html" => [ - "doc/man1/openssl-dhparam.pod" - ], - "doc/html/man1/openssl-dsa.html" => [ - "doc/man1/openssl-dsa.pod" - ], - "doc/html/man1/openssl-dsaparam.html" => [ - "doc/man1/openssl-dsaparam.pod" - ], - "doc/html/man1/openssl-ec.html" => [ - "doc/man1/openssl-ec.pod" - ], - "doc/html/man1/openssl-ecparam.html" => [ - "doc/man1/openssl-ecparam.pod" - ], - "doc/html/man1/openssl-enc.html" => [ - "doc/man1/openssl-enc.pod" - ], - "doc/html/man1/openssl-engine.html" => [ - "doc/man1/openssl-engine.pod" - ], - "doc/html/man1/openssl-errstr.html" => [ - "doc/man1/openssl-errstr.pod" - ], - "doc/html/man1/openssl-fipsinstall.html" => [ - "doc/man1/openssl-fipsinstall.pod" - ], - "doc/html/man1/openssl-format-options.html" => [ - "doc/man1/openssl-format-options.pod" - ], - "doc/html/man1/openssl-gendsa.html" => [ - "doc/man1/openssl-gendsa.pod" - ], - "doc/html/man1/openssl-genpkey.html" => [ - "doc/man1/openssl-genpkey.pod" - ], - "doc/html/man1/openssl-genrsa.html" => [ - "doc/man1/openssl-genrsa.pod" - ], - "doc/html/man1/openssl-info.html" => [ - "doc/man1/openssl-info.pod" - ], - "doc/html/man1/openssl-kdf.html" => [ - "doc/man1/openssl-kdf.pod" - ], - "doc/html/man1/openssl-list.html" => [ - "doc/man1/openssl-list.pod" - ], - "doc/html/man1/openssl-mac.html" => [ - "doc/man1/openssl-mac.pod" - ], - "doc/html/man1/openssl-namedisplay-options.html" => [ - "doc/man1/openssl-namedisplay-options.pod" - ], - "doc/html/man1/openssl-nseq.html" => [ - "doc/man1/openssl-nseq.pod" - ], - "doc/html/man1/openssl-ocsp.html" => [ - "doc/man1/openssl-ocsp.pod" - ], - "doc/html/man1/openssl-passphrase-options.html" => [ - "doc/man1/openssl-passphrase-options.pod" - ], - "doc/html/man1/openssl-passwd.html" => [ - "doc/man1/openssl-passwd.pod" - ], - "doc/html/man1/openssl-pkcs12.html" => [ - "doc/man1/openssl-pkcs12.pod" - ], - "doc/html/man1/openssl-pkcs7.html" => [ - "doc/man1/openssl-pkcs7.pod" - ], - "doc/html/man1/openssl-pkcs8.html" => [ - "doc/man1/openssl-pkcs8.pod" - ], - "doc/html/man1/openssl-pkey.html" => [ - "doc/man1/openssl-pkey.pod" - ], - "doc/html/man1/openssl-pkeyparam.html" => [ - "doc/man1/openssl-pkeyparam.pod" - ], - "doc/html/man1/openssl-pkeyutl.html" => [ - "doc/man1/openssl-pkeyutl.pod" - ], - "doc/html/man1/openssl-prime.html" => [ - "doc/man1/openssl-prime.pod" - ], - "doc/html/man1/openssl-rand.html" => [ - "doc/man1/openssl-rand.pod" - ], - "doc/html/man1/openssl-rehash.html" => [ - "doc/man1/openssl-rehash.pod" - ], - "doc/html/man1/openssl-req.html" => [ - "doc/man1/openssl-req.pod" - ], - "doc/html/man1/openssl-rsa.html" => [ - "doc/man1/openssl-rsa.pod" - ], - "doc/html/man1/openssl-rsautl.html" => [ - "doc/man1/openssl-rsautl.pod" - ], - "doc/html/man1/openssl-s_client.html" => [ - "doc/man1/openssl-s_client.pod" - ], - "doc/html/man1/openssl-s_server.html" => [ - "doc/man1/openssl-s_server.pod" - ], - "doc/html/man1/openssl-s_time.html" => [ - "doc/man1/openssl-s_time.pod" - ], - "doc/html/man1/openssl-sess_id.html" => [ - "doc/man1/openssl-sess_id.pod" - ], - "doc/html/man1/openssl-skeyutl.html" => [ - "doc/man1/openssl-skeyutl.pod" - ], - "doc/html/man1/openssl-smime.html" => [ - "doc/man1/openssl-smime.pod" - ], - "doc/html/man1/openssl-speed.html" => [ - "doc/man1/openssl-speed.pod" - ], - "doc/html/man1/openssl-spkac.html" => [ - "doc/man1/openssl-spkac.pod" - ], - "doc/html/man1/openssl-srp.html" => [ - "doc/man1/openssl-srp.pod" - ], - "doc/html/man1/openssl-storeutl.html" => [ - "doc/man1/openssl-storeutl.pod" - ], - "doc/html/man1/openssl-ts.html" => [ - "doc/man1/openssl-ts.pod" - ], - "doc/html/man1/openssl-verification-options.html" => [ - "doc/man1/openssl-verification-options.pod" - ], - "doc/html/man1/openssl-verify.html" => [ - "doc/man1/openssl-verify.pod" - ], - "doc/html/man1/openssl-version.html" => [ - "doc/man1/openssl-version.pod" - ], - "doc/html/man1/openssl-x509.html" => [ - "doc/man1/openssl-x509.pod" - ], - "doc/html/man1/openssl.html" => [ - "doc/man1/openssl.pod" - ], - "doc/html/man1/tsget.html" => [ - "doc/man1/tsget.pod" - ], - "doc/html/man3/ADMISSIONS.html" => [ - "doc/man3/ADMISSIONS.pod" - ], - "doc/html/man3/ASN1_EXTERN_FUNCS.html" => [ - "doc/man3/ASN1_EXTERN_FUNCS.pod" - ], - "doc/html/man3/ASN1_INTEGER_get_int64.html" => [ - "doc/man3/ASN1_INTEGER_get_int64.pod" - ], - "doc/html/man3/ASN1_INTEGER_new.html" => [ - "doc/man3/ASN1_INTEGER_new.pod" - ], - "doc/html/man3/ASN1_ITEM_lookup.html" => [ - "doc/man3/ASN1_ITEM_lookup.pod" - ], - "doc/html/man3/ASN1_OBJECT_new.html" => [ - "doc/man3/ASN1_OBJECT_new.pod" - ], - "doc/html/man3/ASN1_STRING_TABLE_add.html" => [ - "doc/man3/ASN1_STRING_TABLE_add.pod" - ], - "doc/html/man3/ASN1_STRING_length.html" => [ - "doc/man3/ASN1_STRING_length.pod" - ], - "doc/html/man3/ASN1_STRING_new.html" => [ - "doc/man3/ASN1_STRING_new.pod" - ], - "doc/html/man3/ASN1_STRING_print_ex.html" => [ - "doc/man3/ASN1_STRING_print_ex.pod" - ], - "doc/html/man3/ASN1_TIME_set.html" => [ - "doc/man3/ASN1_TIME_set.pod" - ], - "doc/html/man3/ASN1_TYPE_get.html" => [ - "doc/man3/ASN1_TYPE_get.pod" - ], - "doc/html/man3/ASN1_aux_cb.html" => [ - "doc/man3/ASN1_aux_cb.pod" - ], - "doc/html/man3/ASN1_generate_nconf.html" => [ - "doc/man3/ASN1_generate_nconf.pod" - ], - "doc/html/man3/ASN1_item_d2i_bio.html" => [ - "doc/man3/ASN1_item_d2i_bio.pod" - ], - "doc/html/man3/ASN1_item_new.html" => [ - "doc/man3/ASN1_item_new.pod" - ], - "doc/html/man3/ASN1_item_sign.html" => [ - "doc/man3/ASN1_item_sign.pod" - ], - "doc/html/man3/ASYNC_WAIT_CTX_new.html" => [ - "doc/man3/ASYNC_WAIT_CTX_new.pod" - ], - "doc/html/man3/ASYNC_start_job.html" => [ - "doc/man3/ASYNC_start_job.pod" - ], - "doc/html/man3/BF_encrypt.html" => [ - "doc/man3/BF_encrypt.pod" - ], - "doc/html/man3/BIO_ADDR.html" => [ - "doc/man3/BIO_ADDR.pod" - ], - "doc/html/man3/BIO_ADDRINFO.html" => [ - "doc/man3/BIO_ADDRINFO.pod" - ], - "doc/html/man3/BIO_connect.html" => [ - "doc/man3/BIO_connect.pod" - ], - "doc/html/man3/BIO_ctrl.html" => [ - "doc/man3/BIO_ctrl.pod" - ], - "doc/html/man3/BIO_f_base64.html" => [ - "doc/man3/BIO_f_base64.pod" - ], - "doc/html/man3/BIO_f_buffer.html" => [ - "doc/man3/BIO_f_buffer.pod" - ], - "doc/html/man3/BIO_f_cipher.html" => [ - "doc/man3/BIO_f_cipher.pod" - ], - "doc/html/man3/BIO_f_md.html" => [ - "doc/man3/BIO_f_md.pod" - ], - "doc/html/man3/BIO_f_null.html" => [ - "doc/man3/BIO_f_null.pod" - ], - "doc/html/man3/BIO_f_prefix.html" => [ - "doc/man3/BIO_f_prefix.pod" - ], - "doc/html/man3/BIO_f_readbuffer.html" => [ - "doc/man3/BIO_f_readbuffer.pod" - ], - "doc/html/man3/BIO_f_ssl.html" => [ - "doc/man3/BIO_f_ssl.pod" - ], - "doc/html/man3/BIO_find_type.html" => [ - "doc/man3/BIO_find_type.pod" - ], - "doc/html/man3/BIO_get_data.html" => [ - "doc/man3/BIO_get_data.pod" - ], - "doc/html/man3/BIO_get_ex_new_index.html" => [ - "doc/man3/BIO_get_ex_new_index.pod" - ], - "doc/html/man3/BIO_get_rpoll_descriptor.html" => [ - "doc/man3/BIO_get_rpoll_descriptor.pod" - ], - "doc/html/man3/BIO_meth_new.html" => [ - "doc/man3/BIO_meth_new.pod" - ], - "doc/html/man3/BIO_new.html" => [ - "doc/man3/BIO_new.pod" - ], - "doc/html/man3/BIO_new_CMS.html" => [ - "doc/man3/BIO_new_CMS.pod" - ], - "doc/html/man3/BIO_parse_hostserv.html" => [ - "doc/man3/BIO_parse_hostserv.pod" - ], - "doc/html/man3/BIO_printf.html" => [ - "doc/man3/BIO_printf.pod" - ], - "doc/html/man3/BIO_push.html" => [ - "doc/man3/BIO_push.pod" - ], - "doc/html/man3/BIO_read.html" => [ - "doc/man3/BIO_read.pod" - ], - "doc/html/man3/BIO_s_accept.html" => [ - "doc/man3/BIO_s_accept.pod" - ], - "doc/html/man3/BIO_s_bio.html" => [ - "doc/man3/BIO_s_bio.pod" - ], - "doc/html/man3/BIO_s_connect.html" => [ - "doc/man3/BIO_s_connect.pod" - ], - "doc/html/man3/BIO_s_core.html" => [ - "doc/man3/BIO_s_core.pod" - ], - "doc/html/man3/BIO_s_datagram.html" => [ - "doc/man3/BIO_s_datagram.pod" - ], - "doc/html/man3/BIO_s_dgram_pair.html" => [ - "doc/man3/BIO_s_dgram_pair.pod" - ], - "doc/html/man3/BIO_s_fd.html" => [ - "doc/man3/BIO_s_fd.pod" - ], - "doc/html/man3/BIO_s_file.html" => [ - "doc/man3/BIO_s_file.pod" - ], - "doc/html/man3/BIO_s_mem.html" => [ - "doc/man3/BIO_s_mem.pod" - ], - "doc/html/man3/BIO_s_null.html" => [ - "doc/man3/BIO_s_null.pod" - ], - "doc/html/man3/BIO_s_socket.html" => [ - "doc/man3/BIO_s_socket.pod" - ], - "doc/html/man3/BIO_sendmmsg.html" => [ - "doc/man3/BIO_sendmmsg.pod" - ], - "doc/html/man3/BIO_set_callback.html" => [ - "doc/man3/BIO_set_callback.pod" - ], - "doc/html/man3/BIO_should_retry.html" => [ - "doc/man3/BIO_should_retry.pod" - ], - "doc/html/man3/BIO_socket_wait.html" => [ - "doc/man3/BIO_socket_wait.pod" - ], - "doc/html/man3/BN_BLINDING_new.html" => [ - "doc/man3/BN_BLINDING_new.pod" - ], - "doc/html/man3/BN_CTX_new.html" => [ - "doc/man3/BN_CTX_new.pod" - ], - "doc/html/man3/BN_CTX_start.html" => [ - "doc/man3/BN_CTX_start.pod" - ], - "doc/html/man3/BN_add.html" => [ - "doc/man3/BN_add.pod" - ], - "doc/html/man3/BN_add_word.html" => [ - "doc/man3/BN_add_word.pod" - ], - "doc/html/man3/BN_bn2bin.html" => [ - "doc/man3/BN_bn2bin.pod" - ], - "doc/html/man3/BN_cmp.html" => [ - "doc/man3/BN_cmp.pod" - ], - "doc/html/man3/BN_copy.html" => [ - "doc/man3/BN_copy.pod" - ], - "doc/html/man3/BN_generate_prime.html" => [ - "doc/man3/BN_generate_prime.pod" - ], - "doc/html/man3/BN_mod_exp_mont.html" => [ - "doc/man3/BN_mod_exp_mont.pod" - ], - "doc/html/man3/BN_mod_inverse.html" => [ - "doc/man3/BN_mod_inverse.pod" - ], - "doc/html/man3/BN_mod_mul_montgomery.html" => [ - "doc/man3/BN_mod_mul_montgomery.pod" - ], - "doc/html/man3/BN_mod_mul_reciprocal.html" => [ - "doc/man3/BN_mod_mul_reciprocal.pod" - ], - "doc/html/man3/BN_new.html" => [ - "doc/man3/BN_new.pod" - ], - "doc/html/man3/BN_num_bytes.html" => [ - "doc/man3/BN_num_bytes.pod" - ], - "doc/html/man3/BN_rand.html" => [ - "doc/man3/BN_rand.pod" - ], - "doc/html/man3/BN_security_bits.html" => [ - "doc/man3/BN_security_bits.pod" - ], - "doc/html/man3/BN_set_bit.html" => [ - "doc/man3/BN_set_bit.pod" - ], - "doc/html/man3/BN_swap.html" => [ - "doc/man3/BN_swap.pod" - ], - "doc/html/man3/BN_zero.html" => [ - "doc/man3/BN_zero.pod" - ], - "doc/html/man3/BUF_MEM_new.html" => [ - "doc/man3/BUF_MEM_new.pod" - ], - "doc/html/man3/CMAC_CTX.html" => [ - "doc/man3/CMAC_CTX.pod" - ], - "doc/html/man3/CMS_EncryptedData_decrypt.html" => [ - "doc/man3/CMS_EncryptedData_decrypt.pod" - ], - "doc/html/man3/CMS_EncryptedData_encrypt.html" => [ - "doc/man3/CMS_EncryptedData_encrypt.pod" - ], - "doc/html/man3/CMS_EnvelopedData_create.html" => [ - "doc/man3/CMS_EnvelopedData_create.pod" - ], - "doc/html/man3/CMS_add0_cert.html" => [ - "doc/man3/CMS_add0_cert.pod" - ], - "doc/html/man3/CMS_add1_recipient_cert.html" => [ - "doc/man3/CMS_add1_recipient_cert.pod" - ], - "doc/html/man3/CMS_add1_signer.html" => [ - "doc/man3/CMS_add1_signer.pod" - ], - "doc/html/man3/CMS_compress.html" => [ - "doc/man3/CMS_compress.pod" - ], - "doc/html/man3/CMS_data_create.html" => [ - "doc/man3/CMS_data_create.pod" - ], - "doc/html/man3/CMS_decrypt.html" => [ - "doc/man3/CMS_decrypt.pod" - ], - "doc/html/man3/CMS_digest_create.html" => [ - "doc/man3/CMS_digest_create.pod" - ], - "doc/html/man3/CMS_encrypt.html" => [ - "doc/man3/CMS_encrypt.pod" - ], - "doc/html/man3/CMS_final.html" => [ - "doc/man3/CMS_final.pod" - ], - "doc/html/man3/CMS_get0_RecipientInfos.html" => [ - "doc/man3/CMS_get0_RecipientInfos.pod" - ], - "doc/html/man3/CMS_get0_SignerInfos.html" => [ - "doc/man3/CMS_get0_SignerInfos.pod" - ], - "doc/html/man3/CMS_get0_type.html" => [ - "doc/man3/CMS_get0_type.pod" - ], - "doc/html/man3/CMS_get1_ReceiptRequest.html" => [ - "doc/man3/CMS_get1_ReceiptRequest.pod" - ], - "doc/html/man3/CMS_sign.html" => [ - "doc/man3/CMS_sign.pod" - ], - "doc/html/man3/CMS_sign_receipt.html" => [ - "doc/man3/CMS_sign_receipt.pod" - ], - "doc/html/man3/CMS_signed_get_attr.html" => [ - "doc/man3/CMS_signed_get_attr.pod" - ], - "doc/html/man3/CMS_uncompress.html" => [ - "doc/man3/CMS_uncompress.pod" - ], - "doc/html/man3/CMS_verify.html" => [ - "doc/man3/CMS_verify.pod" - ], - "doc/html/man3/CMS_verify_receipt.html" => [ - "doc/man3/CMS_verify_receipt.pod" - ], - "doc/html/man3/COMP_CTX_new.html" => [ - "doc/man3/COMP_CTX_new.pod" - ], - "doc/html/man3/CONF_modules_free.html" => [ - "doc/man3/CONF_modules_free.pod" - ], - "doc/html/man3/CONF_modules_load_file.html" => [ - "doc/man3/CONF_modules_load_file.pod" - ], - "doc/html/man3/CRYPTO_THREAD_run_once.html" => [ - "doc/man3/CRYPTO_THREAD_run_once.pod" - ], - "doc/html/man3/CRYPTO_get_ex_new_index.html" => [ - "doc/man3/CRYPTO_get_ex_new_index.pod" - ], - "doc/html/man3/CRYPTO_memcmp.html" => [ - "doc/man3/CRYPTO_memcmp.pod" - ], - "doc/html/man3/CTLOG_STORE_get0_log_by_id.html" => [ - "doc/man3/CTLOG_STORE_get0_log_by_id.pod" - ], - "doc/html/man3/CTLOG_STORE_new.html" => [ - "doc/man3/CTLOG_STORE_new.pod" - ], - "doc/html/man3/CTLOG_new.html" => [ - "doc/man3/CTLOG_new.pod" - ], - "doc/html/man3/CT_POLICY_EVAL_CTX_new.html" => [ - "doc/man3/CT_POLICY_EVAL_CTX_new.pod" - ], - "doc/html/man3/DEFINE_STACK_OF.html" => [ - "doc/man3/DEFINE_STACK_OF.pod" - ], - "doc/html/man3/DES_random_key.html" => [ - "doc/man3/DES_random_key.pod" - ], - "doc/html/man3/DH_generate_key.html" => [ - "doc/man3/DH_generate_key.pod" - ], - "doc/html/man3/DH_generate_parameters.html" => [ - "doc/man3/DH_generate_parameters.pod" - ], - "doc/html/man3/DH_get0_pqg.html" => [ - "doc/man3/DH_get0_pqg.pod" - ], - "doc/html/man3/DH_get_1024_160.html" => [ - "doc/man3/DH_get_1024_160.pod" - ], - "doc/html/man3/DH_meth_new.html" => [ - "doc/man3/DH_meth_new.pod" - ], - "doc/html/man3/DH_new.html" => [ - "doc/man3/DH_new.pod" - ], - "doc/html/man3/DH_new_by_nid.html" => [ - "doc/man3/DH_new_by_nid.pod" - ], - "doc/html/man3/DH_set_method.html" => [ - "doc/man3/DH_set_method.pod" - ], - "doc/html/man3/DH_size.html" => [ - "doc/man3/DH_size.pod" - ], - "doc/html/man3/DSA_SIG_new.html" => [ - "doc/man3/DSA_SIG_new.pod" - ], - "doc/html/man3/DSA_do_sign.html" => [ - "doc/man3/DSA_do_sign.pod" - ], - "doc/html/man3/DSA_dup_DH.html" => [ - "doc/man3/DSA_dup_DH.pod" - ], - "doc/html/man3/DSA_generate_key.html" => [ - "doc/man3/DSA_generate_key.pod" - ], - "doc/html/man3/DSA_generate_parameters.html" => [ - "doc/man3/DSA_generate_parameters.pod" - ], - "doc/html/man3/DSA_get0_pqg.html" => [ - "doc/man3/DSA_get0_pqg.pod" - ], - "doc/html/man3/DSA_meth_new.html" => [ - "doc/man3/DSA_meth_new.pod" - ], - "doc/html/man3/DSA_new.html" => [ - "doc/man3/DSA_new.pod" - ], - "doc/html/man3/DSA_set_method.html" => [ - "doc/man3/DSA_set_method.pod" - ], - "doc/html/man3/DSA_sign.html" => [ - "doc/man3/DSA_sign.pod" - ], - "doc/html/man3/DSA_size.html" => [ - "doc/man3/DSA_size.pod" - ], - "doc/html/man3/DTLS_get_data_mtu.html" => [ - "doc/man3/DTLS_get_data_mtu.pod" - ], - "doc/html/man3/DTLS_set_timer_cb.html" => [ - "doc/man3/DTLS_set_timer_cb.pod" - ], - "doc/html/man3/DTLSv1_get_timeout.html" => [ - "doc/man3/DTLSv1_get_timeout.pod" - ], - "doc/html/man3/DTLSv1_handle_timeout.html" => [ - "doc/man3/DTLSv1_handle_timeout.pod" - ], - "doc/html/man3/DTLSv1_listen.html" => [ - "doc/man3/DTLSv1_listen.pod" - ], - "doc/html/man3/ECDSA_SIG_new.html" => [ - "doc/man3/ECDSA_SIG_new.pod" - ], - "doc/html/man3/ECDSA_sign.html" => [ - "doc/man3/ECDSA_sign.pod" - ], - "doc/html/man3/ECPKParameters_print.html" => [ - "doc/man3/ECPKParameters_print.pod" - ], - "doc/html/man3/EC_GFp_simple_method.html" => [ - "doc/man3/EC_GFp_simple_method.pod" - ], - "doc/html/man3/EC_GROUP_copy.html" => [ - "doc/man3/EC_GROUP_copy.pod" - ], - "doc/html/man3/EC_GROUP_new.html" => [ - "doc/man3/EC_GROUP_new.pod" - ], - "doc/html/man3/EC_KEY_get_enc_flags.html" => [ - "doc/man3/EC_KEY_get_enc_flags.pod" - ], - "doc/html/man3/EC_KEY_new.html" => [ - "doc/man3/EC_KEY_new.pod" - ], - "doc/html/man3/EC_POINT_add.html" => [ - "doc/man3/EC_POINT_add.pod" - ], - "doc/html/man3/EC_POINT_new.html" => [ - "doc/man3/EC_POINT_new.pod" - ], - "doc/html/man3/ENGINE_add.html" => [ - "doc/man3/ENGINE_add.pod" - ], - "doc/html/man3/ERR_GET_LIB.html" => [ - "doc/man3/ERR_GET_LIB.pod" - ], - "doc/html/man3/ERR_clear_error.html" => [ - "doc/man3/ERR_clear_error.pod" - ], - "doc/html/man3/ERR_error_string.html" => [ - "doc/man3/ERR_error_string.pod" - ], - "doc/html/man3/ERR_get_error.html" => [ - "doc/man3/ERR_get_error.pod" - ], - "doc/html/man3/ERR_load_crypto_strings.html" => [ - "doc/man3/ERR_load_crypto_strings.pod" - ], - "doc/html/man3/ERR_load_strings.html" => [ - "doc/man3/ERR_load_strings.pod" - ], - "doc/html/man3/ERR_new.html" => [ - "doc/man3/ERR_new.pod" - ], - "doc/html/man3/ERR_print_errors.html" => [ - "doc/man3/ERR_print_errors.pod" - ], - "doc/html/man3/ERR_put_error.html" => [ - "doc/man3/ERR_put_error.pod" - ], - "doc/html/man3/ERR_remove_state.html" => [ - "doc/man3/ERR_remove_state.pod" - ], - "doc/html/man3/ERR_set_mark.html" => [ - "doc/man3/ERR_set_mark.pod" - ], - "doc/html/man3/EVP_ASYM_CIPHER_free.html" => [ - "doc/man3/EVP_ASYM_CIPHER_free.pod" - ], - "doc/html/man3/EVP_BytesToKey.html" => [ - "doc/man3/EVP_BytesToKey.pod" - ], - "doc/html/man3/EVP_CIPHER_CTX_get_cipher_data.html" => [ - "doc/man3/EVP_CIPHER_CTX_get_cipher_data.pod" - ], - "doc/html/man3/EVP_CIPHER_CTX_get_original_iv.html" => [ - "doc/man3/EVP_CIPHER_CTX_get_original_iv.pod" - ], - "doc/html/man3/EVP_CIPHER_meth_new.html" => [ - "doc/man3/EVP_CIPHER_meth_new.pod" - ], - "doc/html/man3/EVP_DigestInit.html" => [ - "doc/man3/EVP_DigestInit.pod" - ], - "doc/html/man3/EVP_DigestSignInit.html" => [ - "doc/man3/EVP_DigestSignInit.pod" - ], - "doc/html/man3/EVP_DigestVerifyInit.html" => [ - "doc/man3/EVP_DigestVerifyInit.pod" - ], - "doc/html/man3/EVP_EncodeInit.html" => [ - "doc/man3/EVP_EncodeInit.pod" - ], - "doc/html/man3/EVP_EncryptInit.html" => [ - "doc/man3/EVP_EncryptInit.pod" - ], - "doc/html/man3/EVP_KDF.html" => [ - "doc/man3/EVP_KDF.pod" - ], - "doc/html/man3/EVP_KEM_free.html" => [ - "doc/man3/EVP_KEM_free.pod" - ], - "doc/html/man3/EVP_KEYEXCH_free.html" => [ - "doc/man3/EVP_KEYEXCH_free.pod" - ], - "doc/html/man3/EVP_KEYMGMT.html" => [ - "doc/man3/EVP_KEYMGMT.pod" - ], - "doc/html/man3/EVP_MAC.html" => [ - "doc/man3/EVP_MAC.pod" - ], - "doc/html/man3/EVP_MD_meth_new.html" => [ - "doc/man3/EVP_MD_meth_new.pod" - ], - "doc/html/man3/EVP_OpenInit.html" => [ - "doc/man3/EVP_OpenInit.pod" - ], - "doc/html/man3/EVP_PBE_CipherInit.html" => [ - "doc/man3/EVP_PBE_CipherInit.pod" - ], - "doc/html/man3/EVP_PKEY2PKCS8.html" => [ - "doc/man3/EVP_PKEY2PKCS8.pod" - ], - "doc/html/man3/EVP_PKEY_ASN1_METHOD.html" => [ - "doc/man3/EVP_PKEY_ASN1_METHOD.pod" - ], - "doc/html/man3/EVP_PKEY_CTX_ctrl.html" => [ - "doc/man3/EVP_PKEY_CTX_ctrl.pod" - ], - "doc/html/man3/EVP_PKEY_CTX_get0_libctx.html" => [ - "doc/man3/EVP_PKEY_CTX_get0_libctx.pod" - ], - "doc/html/man3/EVP_PKEY_CTX_get0_pkey.html" => [ - "doc/man3/EVP_PKEY_CTX_get0_pkey.pod" - ], - "doc/html/man3/EVP_PKEY_CTX_get_algor.html" => [ - "doc/man3/EVP_PKEY_CTX_get_algor.pod" - ], - "doc/html/man3/EVP_PKEY_CTX_new.html" => [ - "doc/man3/EVP_PKEY_CTX_new.pod" - ], - "doc/html/man3/EVP_PKEY_CTX_set1_pbe_pass.html" => [ - "doc/man3/EVP_PKEY_CTX_set1_pbe_pass.pod" - ], - "doc/html/man3/EVP_PKEY_CTX_set_hkdf_md.html" => [ - "doc/man3/EVP_PKEY_CTX_set_hkdf_md.pod" - ], - "doc/html/man3/EVP_PKEY_CTX_set_params.html" => [ - "doc/man3/EVP_PKEY_CTX_set_params.pod" - ], - "doc/html/man3/EVP_PKEY_CTX_set_rsa_pss_keygen_md.html" => [ - "doc/man3/EVP_PKEY_CTX_set_rsa_pss_keygen_md.pod" - ], - "doc/html/man3/EVP_PKEY_CTX_set_scrypt_N.html" => [ - "doc/man3/EVP_PKEY_CTX_set_scrypt_N.pod" - ], - "doc/html/man3/EVP_PKEY_CTX_set_tls1_prf_md.html" => [ - "doc/man3/EVP_PKEY_CTX_set_tls1_prf_md.pod" - ], - "doc/html/man3/EVP_PKEY_asn1_get_count.html" => [ - "doc/man3/EVP_PKEY_asn1_get_count.pod" - ], - "doc/html/man3/EVP_PKEY_check.html" => [ - "doc/man3/EVP_PKEY_check.pod" - ], - "doc/html/man3/EVP_PKEY_copy_parameters.html" => [ - "doc/man3/EVP_PKEY_copy_parameters.pod" - ], - "doc/html/man3/EVP_PKEY_decapsulate.html" => [ - "doc/man3/EVP_PKEY_decapsulate.pod" - ], - "doc/html/man3/EVP_PKEY_decrypt.html" => [ - "doc/man3/EVP_PKEY_decrypt.pod" - ], - "doc/html/man3/EVP_PKEY_derive.html" => [ - "doc/man3/EVP_PKEY_derive.pod" - ], - "doc/html/man3/EVP_PKEY_digestsign_supports_digest.html" => [ - "doc/man3/EVP_PKEY_digestsign_supports_digest.pod" - ], - "doc/html/man3/EVP_PKEY_encapsulate.html" => [ - "doc/man3/EVP_PKEY_encapsulate.pod" - ], - "doc/html/man3/EVP_PKEY_encrypt.html" => [ - "doc/man3/EVP_PKEY_encrypt.pod" - ], - "doc/html/man3/EVP_PKEY_fromdata.html" => [ - "doc/man3/EVP_PKEY_fromdata.pod" - ], - "doc/html/man3/EVP_PKEY_get_attr.html" => [ - "doc/man3/EVP_PKEY_get_attr.pod" - ], - "doc/html/man3/EVP_PKEY_get_default_digest_nid.html" => [ - "doc/man3/EVP_PKEY_get_default_digest_nid.pod" - ], - "doc/html/man3/EVP_PKEY_get_field_type.html" => [ - "doc/man3/EVP_PKEY_get_field_type.pod" - ], - "doc/html/man3/EVP_PKEY_get_group_name.html" => [ - "doc/man3/EVP_PKEY_get_group_name.pod" - ], - "doc/html/man3/EVP_PKEY_get_size.html" => [ - "doc/man3/EVP_PKEY_get_size.pod" - ], - "doc/html/man3/EVP_PKEY_gettable_params.html" => [ - "doc/man3/EVP_PKEY_gettable_params.pod" - ], - "doc/html/man3/EVP_PKEY_is_a.html" => [ - "doc/man3/EVP_PKEY_is_a.pod" - ], - "doc/html/man3/EVP_PKEY_keygen.html" => [ - "doc/man3/EVP_PKEY_keygen.pod" - ], - "doc/html/man3/EVP_PKEY_meth_get_count.html" => [ - "doc/man3/EVP_PKEY_meth_get_count.pod" - ], - "doc/html/man3/EVP_PKEY_meth_new.html" => [ - "doc/man3/EVP_PKEY_meth_new.pod" - ], - "doc/html/man3/EVP_PKEY_new.html" => [ - "doc/man3/EVP_PKEY_new.pod" - ], - "doc/html/man3/EVP_PKEY_print_private.html" => [ - "doc/man3/EVP_PKEY_print_private.pod" - ], - "doc/html/man3/EVP_PKEY_set1_RSA.html" => [ - "doc/man3/EVP_PKEY_set1_RSA.pod" - ], - "doc/html/man3/EVP_PKEY_set1_encoded_public_key.html" => [ - "doc/man3/EVP_PKEY_set1_encoded_public_key.pod" - ], - "doc/html/man3/EVP_PKEY_set_type.html" => [ - "doc/man3/EVP_PKEY_set_type.pod" - ], - "doc/html/man3/EVP_PKEY_settable_params.html" => [ - "doc/man3/EVP_PKEY_settable_params.pod" - ], - "doc/html/man3/EVP_PKEY_sign.html" => [ - "doc/man3/EVP_PKEY_sign.pod" - ], - "doc/html/man3/EVP_PKEY_todata.html" => [ - "doc/man3/EVP_PKEY_todata.pod" - ], - "doc/html/man3/EVP_PKEY_verify.html" => [ - "doc/man3/EVP_PKEY_verify.pod" - ], - "doc/html/man3/EVP_PKEY_verify_recover.html" => [ - "doc/man3/EVP_PKEY_verify_recover.pod" - ], - "doc/html/man3/EVP_RAND.html" => [ - "doc/man3/EVP_RAND.pod" - ], - "doc/html/man3/EVP_SIGNATURE.html" => [ - "doc/man3/EVP_SIGNATURE.pod" - ], - "doc/html/man3/EVP_SKEY.html" => [ - "doc/man3/EVP_SKEY.pod" - ], - "doc/html/man3/EVP_SKEYMGMT.html" => [ - "doc/man3/EVP_SKEYMGMT.pod" - ], - "doc/html/man3/EVP_SealInit.html" => [ - "doc/man3/EVP_SealInit.pod" - ], - "doc/html/man3/EVP_SignInit.html" => [ - "doc/man3/EVP_SignInit.pod" - ], - "doc/html/man3/EVP_VerifyInit.html" => [ - "doc/man3/EVP_VerifyInit.pod" - ], - "doc/html/man3/EVP_aes_128_gcm.html" => [ - "doc/man3/EVP_aes_128_gcm.pod" - ], - "doc/html/man3/EVP_aria_128_gcm.html" => [ - "doc/man3/EVP_aria_128_gcm.pod" - ], - "doc/html/man3/EVP_bf_cbc.html" => [ - "doc/man3/EVP_bf_cbc.pod" - ], - "doc/html/man3/EVP_blake2b512.html" => [ - "doc/man3/EVP_blake2b512.pod" - ], - "doc/html/man3/EVP_camellia_128_ecb.html" => [ - "doc/man3/EVP_camellia_128_ecb.pod" - ], - "doc/html/man3/EVP_cast5_cbc.html" => [ - "doc/man3/EVP_cast5_cbc.pod" - ], - "doc/html/man3/EVP_chacha20.html" => [ - "doc/man3/EVP_chacha20.pod" - ], - "doc/html/man3/EVP_des_cbc.html" => [ - "doc/man3/EVP_des_cbc.pod" - ], - "doc/html/man3/EVP_desx_cbc.html" => [ - "doc/man3/EVP_desx_cbc.pod" - ], - "doc/html/man3/EVP_idea_cbc.html" => [ - "doc/man3/EVP_idea_cbc.pod" - ], - "doc/html/man3/EVP_md2.html" => [ - "doc/man3/EVP_md2.pod" - ], - "doc/html/man3/EVP_md4.html" => [ - "doc/man3/EVP_md4.pod" - ], - "doc/html/man3/EVP_md5.html" => [ - "doc/man3/EVP_md5.pod" - ], - "doc/html/man3/EVP_mdc2.html" => [ - "doc/man3/EVP_mdc2.pod" - ], - "doc/html/man3/EVP_rc2_cbc.html" => [ - "doc/man3/EVP_rc2_cbc.pod" - ], - "doc/html/man3/EVP_rc4.html" => [ - "doc/man3/EVP_rc4.pod" - ], - "doc/html/man3/EVP_rc5_32_12_16_cbc.html" => [ - "doc/man3/EVP_rc5_32_12_16_cbc.pod" - ], - "doc/html/man3/EVP_ripemd160.html" => [ - "doc/man3/EVP_ripemd160.pod" - ], - "doc/html/man3/EVP_seed_cbc.html" => [ - "doc/man3/EVP_seed_cbc.pod" - ], - "doc/html/man3/EVP_set_default_properties.html" => [ - "doc/man3/EVP_set_default_properties.pod" - ], - "doc/html/man3/EVP_sha1.html" => [ - "doc/man3/EVP_sha1.pod" - ], - "doc/html/man3/EVP_sha224.html" => [ - "doc/man3/EVP_sha224.pod" - ], - "doc/html/man3/EVP_sha3_224.html" => [ - "doc/man3/EVP_sha3_224.pod" - ], - "doc/html/man3/EVP_sm3.html" => [ - "doc/man3/EVP_sm3.pod" - ], - "doc/html/man3/EVP_sm4_cbc.html" => [ - "doc/man3/EVP_sm4_cbc.pod" - ], - "doc/html/man3/EVP_whirlpool.html" => [ - "doc/man3/EVP_whirlpool.pod" - ], - "doc/html/man3/GENERAL_NAME.html" => [ - "doc/man3/GENERAL_NAME.pod" - ], - "doc/html/man3/HMAC.html" => [ - "doc/man3/HMAC.pod" - ], - "doc/html/man3/MD5.html" => [ - "doc/man3/MD5.pod" - ], - "doc/html/man3/MDC2_Init.html" => [ - "doc/man3/MDC2_Init.pod" - ], - "doc/html/man3/NCONF_new_ex.html" => [ - "doc/man3/NCONF_new_ex.pod" - ], - "doc/html/man3/OBJ_nid2obj.html" => [ - "doc/man3/OBJ_nid2obj.pod" - ], - "doc/html/man3/OCSP_REQUEST_new.html" => [ - "doc/man3/OCSP_REQUEST_new.pod" - ], - "doc/html/man3/OCSP_cert_to_id.html" => [ - "doc/man3/OCSP_cert_to_id.pod" - ], - "doc/html/man3/OCSP_request_add1_nonce.html" => [ - "doc/man3/OCSP_request_add1_nonce.pod" - ], - "doc/html/man3/OCSP_resp_find_status.html" => [ - "doc/man3/OCSP_resp_find_status.pod" - ], - "doc/html/man3/OCSP_response_status.html" => [ - "doc/man3/OCSP_response_status.pod" - ], - "doc/html/man3/OCSP_sendreq_new.html" => [ - "doc/man3/OCSP_sendreq_new.pod" - ], - "doc/html/man3/OPENSSL_Applink.html" => [ - "doc/man3/OPENSSL_Applink.pod" - ], - "doc/html/man3/OPENSSL_FILE.html" => [ - "doc/man3/OPENSSL_FILE.pod" - ], - "doc/html/man3/OPENSSL_LH_COMPFUNC.html" => [ - "doc/man3/OPENSSL_LH_COMPFUNC.pod" - ], - "doc/html/man3/OPENSSL_LH_stats.html" => [ - "doc/man3/OPENSSL_LH_stats.pod" - ], - "doc/html/man3/OPENSSL_config.html" => [ - "doc/man3/OPENSSL_config.pod" - ], - "doc/html/man3/OPENSSL_fork_prepare.html" => [ - "doc/man3/OPENSSL_fork_prepare.pod" - ], - "doc/html/man3/OPENSSL_gmtime.html" => [ - "doc/man3/OPENSSL_gmtime.pod" - ], - "doc/html/man3/OPENSSL_hexchar2int.html" => [ - "doc/man3/OPENSSL_hexchar2int.pod" - ], - "doc/html/man3/OPENSSL_ia32cap.html" => [ - "doc/man3/OPENSSL_ia32cap.pod" - ], - "doc/html/man3/OPENSSL_init_crypto.html" => [ - "doc/man3/OPENSSL_init_crypto.pod" - ], - "doc/html/man3/OPENSSL_init_ssl.html" => [ - "doc/man3/OPENSSL_init_ssl.pod" - ], - "doc/html/man3/OPENSSL_instrument_bus.html" => [ - "doc/man3/OPENSSL_instrument_bus.pod" - ], - "doc/html/man3/OPENSSL_load_builtin_modules.html" => [ - "doc/man3/OPENSSL_load_builtin_modules.pod" - ], - "doc/html/man3/OPENSSL_load_u16_le.html" => [ - "doc/man3/OPENSSL_load_u16_le.pod" - ], - "doc/html/man3/OPENSSL_malloc.html" => [ - "doc/man3/OPENSSL_malloc.pod" - ], - "doc/html/man3/OPENSSL_riscvcap.html" => [ - "doc/man3/OPENSSL_riscvcap.pod" - ], - "doc/html/man3/OPENSSL_s390xcap.html" => [ - "doc/man3/OPENSSL_s390xcap.pod" - ], - "doc/html/man3/OPENSSL_secure_malloc.html" => [ - "doc/man3/OPENSSL_secure_malloc.pod" - ], - "doc/html/man3/OPENSSL_strcasecmp.html" => [ - "doc/man3/OPENSSL_strcasecmp.pod" - ], - "doc/html/man3/OSSL_ALGORITHM.html" => [ - "doc/man3/OSSL_ALGORITHM.pod" - ], - "doc/html/man3/OSSL_CALLBACK.html" => [ - "doc/man3/OSSL_CALLBACK.pod" - ], - "doc/html/man3/OSSL_CMP_ATAV_set0.html" => [ - "doc/man3/OSSL_CMP_ATAV_set0.pod" - ], - "doc/html/man3/OSSL_CMP_CTX_new.html" => [ - "doc/man3/OSSL_CMP_CTX_new.pod" - ], - "doc/html/man3/OSSL_CMP_HDR_get0_transactionID.html" => [ - "doc/man3/OSSL_CMP_HDR_get0_transactionID.pod" - ], - "doc/html/man3/OSSL_CMP_ITAV_new_caCerts.html" => [ - "doc/man3/OSSL_CMP_ITAV_new_caCerts.pod" - ], - "doc/html/man3/OSSL_CMP_ITAV_set0.html" => [ - "doc/man3/OSSL_CMP_ITAV_set0.pod" - ], - "doc/html/man3/OSSL_CMP_MSG_get0_header.html" => [ - "doc/man3/OSSL_CMP_MSG_get0_header.pod" - ], - "doc/html/man3/OSSL_CMP_MSG_http_perform.html" => [ - "doc/man3/OSSL_CMP_MSG_http_perform.pod" - ], - "doc/html/man3/OSSL_CMP_SRV_CTX_new.html" => [ - "doc/man3/OSSL_CMP_SRV_CTX_new.pod" - ], - "doc/html/man3/OSSL_CMP_STATUSINFO_new.html" => [ - "doc/man3/OSSL_CMP_STATUSINFO_new.pod" - ], - "doc/html/man3/OSSL_CMP_exec_certreq.html" => [ - "doc/man3/OSSL_CMP_exec_certreq.pod" - ], - "doc/html/man3/OSSL_CMP_log_open.html" => [ - "doc/man3/OSSL_CMP_log_open.pod" - ], - "doc/html/man3/OSSL_CMP_validate_msg.html" => [ - "doc/man3/OSSL_CMP_validate_msg.pod" - ], - "doc/html/man3/OSSL_CORE_MAKE_FUNC.html" => [ - "doc/man3/OSSL_CORE_MAKE_FUNC.pod" - ], - "doc/html/man3/OSSL_CRMF_MSG_get0_tmpl.html" => [ - "doc/man3/OSSL_CRMF_MSG_get0_tmpl.pod" - ], - "doc/html/man3/OSSL_CRMF_MSG_set0_validity.html" => [ - "doc/man3/OSSL_CRMF_MSG_set0_validity.pod" - ], - "doc/html/man3/OSSL_CRMF_MSG_set1_regCtrl_regToken.html" => [ - "doc/man3/OSSL_CRMF_MSG_set1_regCtrl_regToken.pod" - ], - "doc/html/man3/OSSL_CRMF_MSG_set1_regInfo_certReq.html" => [ - "doc/man3/OSSL_CRMF_MSG_set1_regInfo_certReq.pod" - ], - "doc/html/man3/OSSL_CRMF_pbmp_new.html" => [ - "doc/man3/OSSL_CRMF_pbmp_new.pod" - ], - "doc/html/man3/OSSL_DECODER.html" => [ - "doc/man3/OSSL_DECODER.pod" - ], - "doc/html/man3/OSSL_DECODER_CTX.html" => [ - "doc/man3/OSSL_DECODER_CTX.pod" - ], - "doc/html/man3/OSSL_DECODER_CTX_new_for_pkey.html" => [ - "doc/man3/OSSL_DECODER_CTX_new_for_pkey.pod" - ], - "doc/html/man3/OSSL_DECODER_from_bio.html" => [ - "doc/man3/OSSL_DECODER_from_bio.pod" - ], - "doc/html/man3/OSSL_DISPATCH.html" => [ - "doc/man3/OSSL_DISPATCH.pod" - ], - "doc/html/man3/OSSL_ENCODER.html" => [ - "doc/man3/OSSL_ENCODER.pod" - ], - "doc/html/man3/OSSL_ENCODER_CTX.html" => [ - "doc/man3/OSSL_ENCODER_CTX.pod" - ], - "doc/html/man3/OSSL_ENCODER_CTX_new_for_pkey.html" => [ - "doc/man3/OSSL_ENCODER_CTX_new_for_pkey.pod" - ], - "doc/html/man3/OSSL_ENCODER_to_bio.html" => [ - "doc/man3/OSSL_ENCODER_to_bio.pod" - ], - "doc/html/man3/OSSL_ERR_STATE_save.html" => [ - "doc/man3/OSSL_ERR_STATE_save.pod" - ], - "doc/html/man3/OSSL_ESS_check_signing_certs.html" => [ - "doc/man3/OSSL_ESS_check_signing_certs.pod" - ], - "doc/html/man3/OSSL_GENERAL_NAMES_print.html" => [ - "doc/man3/OSSL_GENERAL_NAMES_print.pod" - ], - "doc/html/man3/OSSL_HPKE_CTX_new.html" => [ - "doc/man3/OSSL_HPKE_CTX_new.pod" - ], - "doc/html/man3/OSSL_HTTP_REQ_CTX.html" => [ - "doc/man3/OSSL_HTTP_REQ_CTX.pod" - ], - "doc/html/man3/OSSL_HTTP_parse_url.html" => [ - "doc/man3/OSSL_HTTP_parse_url.pod" - ], - "doc/html/man3/OSSL_HTTP_transfer.html" => [ - "doc/man3/OSSL_HTTP_transfer.pod" - ], - "doc/html/man3/OSSL_IETF_ATTR_SYNTAX.html" => [ - "doc/man3/OSSL_IETF_ATTR_SYNTAX.pod" - ], - "doc/html/man3/OSSL_IETF_ATTR_SYNTAX_print.html" => [ - "doc/man3/OSSL_IETF_ATTR_SYNTAX_print.pod" - ], - "doc/html/man3/OSSL_INDICATOR_set_callback.html" => [ - "doc/man3/OSSL_INDICATOR_set_callback.pod" - ], - "doc/html/man3/OSSL_ITEM.html" => [ - "doc/man3/OSSL_ITEM.pod" - ], - "doc/html/man3/OSSL_LIB_CTX.html" => [ - "doc/man3/OSSL_LIB_CTX.pod" - ], - "doc/html/man3/OSSL_LIB_CTX_set_conf_diagnostics.html" => [ - "doc/man3/OSSL_LIB_CTX_set_conf_diagnostics.pod" - ], - "doc/html/man3/OSSL_PARAM.html" => [ - "doc/man3/OSSL_PARAM.pod" - ], - "doc/html/man3/OSSL_PARAM_BLD.html" => [ - "doc/man3/OSSL_PARAM_BLD.pod" - ], - "doc/html/man3/OSSL_PARAM_allocate_from_text.html" => [ - "doc/man3/OSSL_PARAM_allocate_from_text.pod" - ], - "doc/html/man3/OSSL_PARAM_dup.html" => [ - "doc/man3/OSSL_PARAM_dup.pod" - ], - "doc/html/man3/OSSL_PARAM_int.html" => [ - "doc/man3/OSSL_PARAM_int.pod" - ], - "doc/html/man3/OSSL_PARAM_print_to_bio.html" => [ - "doc/man3/OSSL_PARAM_print_to_bio.pod" - ], - "doc/html/man3/OSSL_PROVIDER.html" => [ - "doc/man3/OSSL_PROVIDER.pod" - ], - "doc/html/man3/OSSL_QUIC_client_method.html" => [ - "doc/man3/OSSL_QUIC_client_method.pod" - ], - "doc/html/man3/OSSL_SELF_TEST_new.html" => [ - "doc/man3/OSSL_SELF_TEST_new.pod" - ], - "doc/html/man3/OSSL_SELF_TEST_set_callback.html" => [ - "doc/man3/OSSL_SELF_TEST_set_callback.pod" - ], - "doc/html/man3/OSSL_STORE_INFO.html" => [ - "doc/man3/OSSL_STORE_INFO.pod" - ], - "doc/html/man3/OSSL_STORE_LOADER.html" => [ - "doc/man3/OSSL_STORE_LOADER.pod" - ], - "doc/html/man3/OSSL_STORE_SEARCH.html" => [ - "doc/man3/OSSL_STORE_SEARCH.pod" - ], - "doc/html/man3/OSSL_STORE_attach.html" => [ - "doc/man3/OSSL_STORE_attach.pod" - ], - "doc/html/man3/OSSL_STORE_expect.html" => [ - "doc/man3/OSSL_STORE_expect.pod" - ], - "doc/html/man3/OSSL_STORE_open.html" => [ - "doc/man3/OSSL_STORE_open.pod" - ], - "doc/html/man3/OSSL_sleep.html" => [ - "doc/man3/OSSL_sleep.pod" - ], - "doc/html/man3/OSSL_trace_enabled.html" => [ - "doc/man3/OSSL_trace_enabled.pod" - ], - "doc/html/man3/OSSL_trace_get_category_num.html" => [ - "doc/man3/OSSL_trace_get_category_num.pod" - ], - "doc/html/man3/OSSL_trace_set_channel.html" => [ - "doc/man3/OSSL_trace_set_channel.pod" - ], - "doc/html/man3/OpenSSL_add_all_algorithms.html" => [ - "doc/man3/OpenSSL_add_all_algorithms.pod" - ], - "doc/html/man3/OpenSSL_version.html" => [ - "doc/man3/OpenSSL_version.pod" - ], - "doc/html/man3/PBMAC1_get1_pbkdf2_param.html" => [ - "doc/man3/PBMAC1_get1_pbkdf2_param.pod" - ], - "doc/html/man3/PEM_X509_INFO_read_bio_ex.html" => [ - "doc/man3/PEM_X509_INFO_read_bio_ex.pod" - ], - "doc/html/man3/PEM_bytes_read_bio.html" => [ - "doc/man3/PEM_bytes_read_bio.pod" - ], - "doc/html/man3/PEM_read.html" => [ - "doc/man3/PEM_read.pod" - ], - "doc/html/man3/PEM_read_CMS.html" => [ - "doc/man3/PEM_read_CMS.pod" - ], - "doc/html/man3/PEM_read_bio_PrivateKey.html" => [ - "doc/man3/PEM_read_bio_PrivateKey.pod" - ], - "doc/html/man3/PEM_read_bio_ex.html" => [ - "doc/man3/PEM_read_bio_ex.pod" - ], - "doc/html/man3/PEM_write_bio_CMS_stream.html" => [ - "doc/man3/PEM_write_bio_CMS_stream.pod" - ], - "doc/html/man3/PEM_write_bio_PKCS7_stream.html" => [ - "doc/man3/PEM_write_bio_PKCS7_stream.pod" - ], - "doc/html/man3/PKCS12_PBE_keyivgen.html" => [ - "doc/man3/PKCS12_PBE_keyivgen.pod" - ], - "doc/html/man3/PKCS12_SAFEBAG_create_cert.html" => [ - "doc/man3/PKCS12_SAFEBAG_create_cert.pod" - ], - "doc/html/man3/PKCS12_SAFEBAG_get0_attrs.html" => [ - "doc/man3/PKCS12_SAFEBAG_get0_attrs.pod" - ], - "doc/html/man3/PKCS12_SAFEBAG_get1_cert.html" => [ - "doc/man3/PKCS12_SAFEBAG_get1_cert.pod" - ], - "doc/html/man3/PKCS12_SAFEBAG_set0_attrs.html" => [ - "doc/man3/PKCS12_SAFEBAG_set0_attrs.pod" - ], - "doc/html/man3/PKCS12_add1_attr_by_NID.html" => [ - "doc/man3/PKCS12_add1_attr_by_NID.pod" - ], - "doc/html/man3/PKCS12_add_CSPName_asc.html" => [ - "doc/man3/PKCS12_add_CSPName_asc.pod" - ], - "doc/html/man3/PKCS12_add_cert.html" => [ - "doc/man3/PKCS12_add_cert.pod" - ], - "doc/html/man3/PKCS12_add_friendlyname_asc.html" => [ - "doc/man3/PKCS12_add_friendlyname_asc.pod" - ], - "doc/html/man3/PKCS12_add_localkeyid.html" => [ - "doc/man3/PKCS12_add_localkeyid.pod" - ], - "doc/html/man3/PKCS12_add_safe.html" => [ - "doc/man3/PKCS12_add_safe.pod" - ], - "doc/html/man3/PKCS12_create.html" => [ - "doc/man3/PKCS12_create.pod" - ], - "doc/html/man3/PKCS12_decrypt_skey.html" => [ - "doc/man3/PKCS12_decrypt_skey.pod" - ], - "doc/html/man3/PKCS12_gen_mac.html" => [ - "doc/man3/PKCS12_gen_mac.pod" - ], - "doc/html/man3/PKCS12_get_friendlyname.html" => [ - "doc/man3/PKCS12_get_friendlyname.pod" - ], - "doc/html/man3/PKCS12_init.html" => [ - "doc/man3/PKCS12_init.pod" - ], - "doc/html/man3/PKCS12_item_decrypt_d2i.html" => [ - "doc/man3/PKCS12_item_decrypt_d2i.pod" - ], - "doc/html/man3/PKCS12_key_gen_utf8_ex.html" => [ - "doc/man3/PKCS12_key_gen_utf8_ex.pod" - ], - "doc/html/man3/PKCS12_newpass.html" => [ - "doc/man3/PKCS12_newpass.pod" - ], - "doc/html/man3/PKCS12_pack_p7encdata.html" => [ - "doc/man3/PKCS12_pack_p7encdata.pod" - ], - "doc/html/man3/PKCS12_parse.html" => [ - "doc/man3/PKCS12_parse.pod" - ], - "doc/html/man3/PKCS5_PBE_keyivgen.html" => [ - "doc/man3/PKCS5_PBE_keyivgen.pod" - ], - "doc/html/man3/PKCS5_PBKDF2_HMAC.html" => [ - "doc/man3/PKCS5_PBKDF2_HMAC.pod" - ], - "doc/html/man3/PKCS7_decrypt.html" => [ - "doc/man3/PKCS7_decrypt.pod" - ], - "doc/html/man3/PKCS7_encrypt.html" => [ - "doc/man3/PKCS7_encrypt.pod" - ], - "doc/html/man3/PKCS7_get_octet_string.html" => [ - "doc/man3/PKCS7_get_octet_string.pod" - ], - "doc/html/man3/PKCS7_sign.html" => [ - "doc/man3/PKCS7_sign.pod" - ], - "doc/html/man3/PKCS7_sign_add_signer.html" => [ - "doc/man3/PKCS7_sign_add_signer.pod" - ], - "doc/html/man3/PKCS7_type_is_other.html" => [ - "doc/man3/PKCS7_type_is_other.pod" - ], - "doc/html/man3/PKCS7_verify.html" => [ - "doc/man3/PKCS7_verify.pod" - ], - "doc/html/man3/PKCS8_encrypt.html" => [ - "doc/man3/PKCS8_encrypt.pod" - ], - "doc/html/man3/PKCS8_pkey_add1_attr.html" => [ - "doc/man3/PKCS8_pkey_add1_attr.pod" - ], - "doc/html/man3/RAND_add.html" => [ - "doc/man3/RAND_add.pod" - ], - "doc/html/man3/RAND_bytes.html" => [ - "doc/man3/RAND_bytes.pod" - ], - "doc/html/man3/RAND_cleanup.html" => [ - "doc/man3/RAND_cleanup.pod" - ], - "doc/html/man3/RAND_egd.html" => [ - "doc/man3/RAND_egd.pod" - ], - "doc/html/man3/RAND_get0_primary.html" => [ - "doc/man3/RAND_get0_primary.pod" - ], - "doc/html/man3/RAND_load_file.html" => [ - "doc/man3/RAND_load_file.pod" - ], - "doc/html/man3/RAND_set_DRBG_type.html" => [ - "doc/man3/RAND_set_DRBG_type.pod" - ], - "doc/html/man3/RAND_set_rand_method.html" => [ - "doc/man3/RAND_set_rand_method.pod" - ], - "doc/html/man3/RC4_set_key.html" => [ - "doc/man3/RC4_set_key.pod" - ], - "doc/html/man3/RIPEMD160_Init.html" => [ - "doc/man3/RIPEMD160_Init.pod" - ], - "doc/html/man3/RSA_blinding_on.html" => [ - "doc/man3/RSA_blinding_on.pod" - ], - "doc/html/man3/RSA_check_key.html" => [ - "doc/man3/RSA_check_key.pod" - ], - "doc/html/man3/RSA_generate_key.html" => [ - "doc/man3/RSA_generate_key.pod" - ], - "doc/html/man3/RSA_get0_key.html" => [ - "doc/man3/RSA_get0_key.pod" - ], - "doc/html/man3/RSA_meth_new.html" => [ - "doc/man3/RSA_meth_new.pod" - ], - "doc/html/man3/RSA_new.html" => [ - "doc/man3/RSA_new.pod" - ], - "doc/html/man3/RSA_padding_add_PKCS1_type_1.html" => [ - "doc/man3/RSA_padding_add_PKCS1_type_1.pod" - ], - "doc/html/man3/RSA_print.html" => [ - "doc/man3/RSA_print.pod" - ], - "doc/html/man3/RSA_private_encrypt.html" => [ - "doc/man3/RSA_private_encrypt.pod" - ], - "doc/html/man3/RSA_public_encrypt.html" => [ - "doc/man3/RSA_public_encrypt.pod" - ], - "doc/html/man3/RSA_set_method.html" => [ - "doc/man3/RSA_set_method.pod" - ], - "doc/html/man3/RSA_sign.html" => [ - "doc/man3/RSA_sign.pod" - ], - "doc/html/man3/RSA_sign_ASN1_OCTET_STRING.html" => [ - "doc/man3/RSA_sign_ASN1_OCTET_STRING.pod" - ], - "doc/html/man3/RSA_size.html" => [ - "doc/man3/RSA_size.pod" - ], - "doc/html/man3/SCT_new.html" => [ - "doc/man3/SCT_new.pod" - ], - "doc/html/man3/SCT_print.html" => [ - "doc/man3/SCT_print.pod" - ], - "doc/html/man3/SCT_validate.html" => [ - "doc/man3/SCT_validate.pod" - ], - "doc/html/man3/SHA256_Init.html" => [ - "doc/man3/SHA256_Init.pod" - ], - "doc/html/man3/SMIME_read_ASN1.html" => [ - "doc/man3/SMIME_read_ASN1.pod" - ], - "doc/html/man3/SMIME_read_CMS.html" => [ - "doc/man3/SMIME_read_CMS.pod" - ], - "doc/html/man3/SMIME_read_PKCS7.html" => [ - "doc/man3/SMIME_read_PKCS7.pod" - ], - "doc/html/man3/SMIME_write_ASN1.html" => [ - "doc/man3/SMIME_write_ASN1.pod" - ], - "doc/html/man3/SMIME_write_CMS.html" => [ - "doc/man3/SMIME_write_CMS.pod" - ], - "doc/html/man3/SMIME_write_PKCS7.html" => [ - "doc/man3/SMIME_write_PKCS7.pod" - ], - "doc/html/man3/SRP_Calc_B.html" => [ - "doc/man3/SRP_Calc_B.pod" - ], - "doc/html/man3/SRP_VBASE_new.html" => [ - "doc/man3/SRP_VBASE_new.pod" - ], - "doc/html/man3/SRP_create_verifier.html" => [ - "doc/man3/SRP_create_verifier.pod" - ], - "doc/html/man3/SRP_user_pwd_new.html" => [ - "doc/man3/SRP_user_pwd_new.pod" - ], - "doc/html/man3/SSL_CIPHER_get_name.html" => [ - "doc/man3/SSL_CIPHER_get_name.pod" - ], - "doc/html/man3/SSL_COMP_add_compression_method.html" => [ - "doc/man3/SSL_COMP_add_compression_method.pod" - ], - "doc/html/man3/SSL_CONF_CTX_new.html" => [ - "doc/man3/SSL_CONF_CTX_new.pod" - ], - "doc/html/man3/SSL_CONF_CTX_set1_prefix.html" => [ - "doc/man3/SSL_CONF_CTX_set1_prefix.pod" - ], - "doc/html/man3/SSL_CONF_CTX_set_flags.html" => [ - "doc/man3/SSL_CONF_CTX_set_flags.pod" - ], - "doc/html/man3/SSL_CONF_CTX_set_ssl_ctx.html" => [ - "doc/man3/SSL_CONF_CTX_set_ssl_ctx.pod" - ], - "doc/html/man3/SSL_CONF_cmd.html" => [ - "doc/man3/SSL_CONF_cmd.pod" - ], - "doc/html/man3/SSL_CONF_cmd_argv.html" => [ - "doc/man3/SSL_CONF_cmd_argv.pod" - ], - "doc/html/man3/SSL_CTX_add1_chain_cert.html" => [ - "doc/man3/SSL_CTX_add1_chain_cert.pod" - ], - "doc/html/man3/SSL_CTX_add_extra_chain_cert.html" => [ - "doc/man3/SSL_CTX_add_extra_chain_cert.pod" - ], - "doc/html/man3/SSL_CTX_add_session.html" => [ - "doc/man3/SSL_CTX_add_session.pod" - ], - "doc/html/man3/SSL_CTX_config.html" => [ - "doc/man3/SSL_CTX_config.pod" - ], - "doc/html/man3/SSL_CTX_ctrl.html" => [ - "doc/man3/SSL_CTX_ctrl.pod" - ], - "doc/html/man3/SSL_CTX_dane_enable.html" => [ - "doc/man3/SSL_CTX_dane_enable.pod" - ], - "doc/html/man3/SSL_CTX_flush_sessions.html" => [ - "doc/man3/SSL_CTX_flush_sessions.pod" - ], - "doc/html/man3/SSL_CTX_free.html" => [ - "doc/man3/SSL_CTX_free.pod" - ], - "doc/html/man3/SSL_CTX_get0_param.html" => [ - "doc/man3/SSL_CTX_get0_param.pod" - ], - "doc/html/man3/SSL_CTX_get_verify_mode.html" => [ - "doc/man3/SSL_CTX_get_verify_mode.pod" - ], - "doc/html/man3/SSL_CTX_has_client_custom_ext.html" => [ - "doc/man3/SSL_CTX_has_client_custom_ext.pod" - ], - "doc/html/man3/SSL_CTX_load_verify_locations.html" => [ - "doc/man3/SSL_CTX_load_verify_locations.pod" - ], - "doc/html/man3/SSL_CTX_new.html" => [ - "doc/man3/SSL_CTX_new.pod" - ], - "doc/html/man3/SSL_CTX_sess_number.html" => [ - "doc/man3/SSL_CTX_sess_number.pod" - ], - "doc/html/man3/SSL_CTX_sess_set_cache_size.html" => [ - "doc/man3/SSL_CTX_sess_set_cache_size.pod" - ], - "doc/html/man3/SSL_CTX_sess_set_get_cb.html" => [ - "doc/man3/SSL_CTX_sess_set_get_cb.pod" - ], - "doc/html/man3/SSL_CTX_sessions.html" => [ - "doc/man3/SSL_CTX_sessions.pod" - ], - "doc/html/man3/SSL_CTX_set0_CA_list.html" => [ - "doc/man3/SSL_CTX_set0_CA_list.pod" - ], - "doc/html/man3/SSL_CTX_set1_cert_comp_preference.html" => [ - "doc/man3/SSL_CTX_set1_cert_comp_preference.pod" - ], - "doc/html/man3/SSL_CTX_set1_curves.html" => [ - "doc/man3/SSL_CTX_set1_curves.pod" - ], - "doc/html/man3/SSL_CTX_set1_sigalgs.html" => [ - "doc/man3/SSL_CTX_set1_sigalgs.pod" - ], - "doc/html/man3/SSL_CTX_set1_verify_cert_store.html" => [ - "doc/man3/SSL_CTX_set1_verify_cert_store.pod" - ], - "doc/html/man3/SSL_CTX_set_alpn_select_cb.html" => [ - "doc/man3/SSL_CTX_set_alpn_select_cb.pod" - ], - "doc/html/man3/SSL_CTX_set_cert_cb.html" => [ - "doc/man3/SSL_CTX_set_cert_cb.pod" - ], - "doc/html/man3/SSL_CTX_set_cert_store.html" => [ - "doc/man3/SSL_CTX_set_cert_store.pod" - ], - "doc/html/man3/SSL_CTX_set_cert_verify_callback.html" => [ - "doc/man3/SSL_CTX_set_cert_verify_callback.pod" - ], - "doc/html/man3/SSL_CTX_set_cipher_list.html" => [ - "doc/man3/SSL_CTX_set_cipher_list.pod" - ], - "doc/html/man3/SSL_CTX_set_client_cert_cb.html" => [ - "doc/man3/SSL_CTX_set_client_cert_cb.pod" - ], - "doc/html/man3/SSL_CTX_set_client_hello_cb.html" => [ - "doc/man3/SSL_CTX_set_client_hello_cb.pod" - ], - "doc/html/man3/SSL_CTX_set_ct_validation_callback.html" => [ - "doc/man3/SSL_CTX_set_ct_validation_callback.pod" - ], - "doc/html/man3/SSL_CTX_set_ctlog_list_file.html" => [ - "doc/man3/SSL_CTX_set_ctlog_list_file.pod" - ], - "doc/html/man3/SSL_CTX_set_default_passwd_cb.html" => [ - "doc/man3/SSL_CTX_set_default_passwd_cb.pod" - ], - "doc/html/man3/SSL_CTX_set_domain_flags.html" => [ - "doc/man3/SSL_CTX_set_domain_flags.pod" - ], - "doc/html/man3/SSL_CTX_set_generate_session_id.html" => [ - "doc/man3/SSL_CTX_set_generate_session_id.pod" - ], - "doc/html/man3/SSL_CTX_set_info_callback.html" => [ - "doc/man3/SSL_CTX_set_info_callback.pod" - ], - "doc/html/man3/SSL_CTX_set_keylog_callback.html" => [ - "doc/man3/SSL_CTX_set_keylog_callback.pod" - ], - "doc/html/man3/SSL_CTX_set_max_cert_list.html" => [ - "doc/man3/SSL_CTX_set_max_cert_list.pod" - ], - "doc/html/man3/SSL_CTX_set_min_proto_version.html" => [ - "doc/man3/SSL_CTX_set_min_proto_version.pod" - ], - "doc/html/man3/SSL_CTX_set_mode.html" => [ - "doc/man3/SSL_CTX_set_mode.pod" - ], - "doc/html/man3/SSL_CTX_set_msg_callback.html" => [ - "doc/man3/SSL_CTX_set_msg_callback.pod" - ], - "doc/html/man3/SSL_CTX_set_new_pending_conn_cb.html" => [ - "doc/man3/SSL_CTX_set_new_pending_conn_cb.pod" - ], - "doc/html/man3/SSL_CTX_set_num_tickets.html" => [ - "doc/man3/SSL_CTX_set_num_tickets.pod" - ], - "doc/html/man3/SSL_CTX_set_options.html" => [ - "doc/man3/SSL_CTX_set_options.pod" - ], - "doc/html/man3/SSL_CTX_set_psk_client_callback.html" => [ - "doc/man3/SSL_CTX_set_psk_client_callback.pod" - ], - "doc/html/man3/SSL_CTX_set_quiet_shutdown.html" => [ - "doc/man3/SSL_CTX_set_quiet_shutdown.pod" - ], - "doc/html/man3/SSL_CTX_set_read_ahead.html" => [ - "doc/man3/SSL_CTX_set_read_ahead.pod" - ], - "doc/html/man3/SSL_CTX_set_record_padding_callback.html" => [ - "doc/man3/SSL_CTX_set_record_padding_callback.pod" - ], - "doc/html/man3/SSL_CTX_set_security_level.html" => [ - "doc/man3/SSL_CTX_set_security_level.pod" - ], - "doc/html/man3/SSL_CTX_set_session_cache_mode.html" => [ - "doc/man3/SSL_CTX_set_session_cache_mode.pod" - ], - "doc/html/man3/SSL_CTX_set_session_id_context.html" => [ - "doc/man3/SSL_CTX_set_session_id_context.pod" - ], - "doc/html/man3/SSL_CTX_set_session_ticket_cb.html" => [ - "doc/man3/SSL_CTX_set_session_ticket_cb.pod" - ], - "doc/html/man3/SSL_CTX_set_split_send_fragment.html" => [ - "doc/man3/SSL_CTX_set_split_send_fragment.pod" - ], - "doc/html/man3/SSL_CTX_set_srp_password.html" => [ - "doc/man3/SSL_CTX_set_srp_password.pod" - ], - "doc/html/man3/SSL_CTX_set_ssl_version.html" => [ - "doc/man3/SSL_CTX_set_ssl_version.pod" - ], - "doc/html/man3/SSL_CTX_set_stateless_cookie_generate_cb.html" => [ - "doc/man3/SSL_CTX_set_stateless_cookie_generate_cb.pod" - ], - "doc/html/man3/SSL_CTX_set_timeout.html" => [ - "doc/man3/SSL_CTX_set_timeout.pod" - ], - "doc/html/man3/SSL_CTX_set_tlsext_servername_callback.html" => [ - "doc/man3/SSL_CTX_set_tlsext_servername_callback.pod" - ], - "doc/html/man3/SSL_CTX_set_tlsext_status_cb.html" => [ - "doc/man3/SSL_CTX_set_tlsext_status_cb.pod" - ], - "doc/html/man3/SSL_CTX_set_tlsext_ticket_key_cb.html" => [ - "doc/man3/SSL_CTX_set_tlsext_ticket_key_cb.pod" - ], - "doc/html/man3/SSL_CTX_set_tlsext_use_srtp.html" => [ - "doc/man3/SSL_CTX_set_tlsext_use_srtp.pod" - ], - "doc/html/man3/SSL_CTX_set_tmp_dh_callback.html" => [ - "doc/man3/SSL_CTX_set_tmp_dh_callback.pod" - ], - "doc/html/man3/SSL_CTX_set_tmp_ecdh.html" => [ - "doc/man3/SSL_CTX_set_tmp_ecdh.pod" - ], - "doc/html/man3/SSL_CTX_set_verify.html" => [ - "doc/man3/SSL_CTX_set_verify.pod" - ], - "doc/html/man3/SSL_CTX_use_certificate.html" => [ - "doc/man3/SSL_CTX_use_certificate.pod" - ], - "doc/html/man3/SSL_CTX_use_psk_identity_hint.html" => [ - "doc/man3/SSL_CTX_use_psk_identity_hint.pod" - ], - "doc/html/man3/SSL_CTX_use_serverinfo.html" => [ - "doc/man3/SSL_CTX_use_serverinfo.pod" - ], - "doc/html/man3/SSL_SESSION_free.html" => [ - "doc/man3/SSL_SESSION_free.pod" - ], - "doc/html/man3/SSL_SESSION_get0_cipher.html" => [ - "doc/man3/SSL_SESSION_get0_cipher.pod" - ], - "doc/html/man3/SSL_SESSION_get0_hostname.html" => [ - "doc/man3/SSL_SESSION_get0_hostname.pod" - ], - "doc/html/man3/SSL_SESSION_get0_id_context.html" => [ - "doc/man3/SSL_SESSION_get0_id_context.pod" - ], - "doc/html/man3/SSL_SESSION_get0_peer.html" => [ - "doc/man3/SSL_SESSION_get0_peer.pod" - ], - "doc/html/man3/SSL_SESSION_get_compress_id.html" => [ - "doc/man3/SSL_SESSION_get_compress_id.pod" - ], - "doc/html/man3/SSL_SESSION_get_protocol_version.html" => [ - "doc/man3/SSL_SESSION_get_protocol_version.pod" - ], - "doc/html/man3/SSL_SESSION_get_time.html" => [ - "doc/man3/SSL_SESSION_get_time.pod" - ], - "doc/html/man3/SSL_SESSION_has_ticket.html" => [ - "doc/man3/SSL_SESSION_has_ticket.pod" - ], - "doc/html/man3/SSL_SESSION_is_resumable.html" => [ - "doc/man3/SSL_SESSION_is_resumable.pod" - ], - "doc/html/man3/SSL_SESSION_print.html" => [ - "doc/man3/SSL_SESSION_print.pod" - ], - "doc/html/man3/SSL_SESSION_set1_id.html" => [ - "doc/man3/SSL_SESSION_set1_id.pod" - ], - "doc/html/man3/SSL_accept.html" => [ - "doc/man3/SSL_accept.pod" - ], - "doc/html/man3/SSL_accept_stream.html" => [ - "doc/man3/SSL_accept_stream.pod" - ], - "doc/html/man3/SSL_alert_type_string.html" => [ - "doc/man3/SSL_alert_type_string.pod" - ], - "doc/html/man3/SSL_alloc_buffers.html" => [ - "doc/man3/SSL_alloc_buffers.pod" - ], - "doc/html/man3/SSL_check_chain.html" => [ - "doc/man3/SSL_check_chain.pod" - ], - "doc/html/man3/SSL_clear.html" => [ - "doc/man3/SSL_clear.pod" - ], - "doc/html/man3/SSL_connect.html" => [ - "doc/man3/SSL_connect.pod" - ], - "doc/html/man3/SSL_do_handshake.html" => [ - "doc/man3/SSL_do_handshake.pod" - ], - "doc/html/man3/SSL_export_keying_material.html" => [ - "doc/man3/SSL_export_keying_material.pod" - ], - "doc/html/man3/SSL_extension_supported.html" => [ - "doc/man3/SSL_extension_supported.pod" - ], - "doc/html/man3/SSL_free.html" => [ - "doc/man3/SSL_free.pod" - ], - "doc/html/man3/SSL_get0_connection.html" => [ - "doc/man3/SSL_get0_connection.pod" - ], - "doc/html/man3/SSL_get0_group_name.html" => [ - "doc/man3/SSL_get0_group_name.pod" - ], - "doc/html/man3/SSL_get0_peer_rpk.html" => [ - "doc/man3/SSL_get0_peer_rpk.pod" - ], - "doc/html/man3/SSL_get0_peer_scts.html" => [ - "doc/man3/SSL_get0_peer_scts.pod" - ], - "doc/html/man3/SSL_get1_builtin_sigalgs.html" => [ - "doc/man3/SSL_get1_builtin_sigalgs.pod" - ], - "doc/html/man3/SSL_get_SSL_CTX.html" => [ - "doc/man3/SSL_get_SSL_CTX.pod" - ], - "doc/html/man3/SSL_get_all_async_fds.html" => [ - "doc/man3/SSL_get_all_async_fds.pod" - ], - "doc/html/man3/SSL_get_certificate.html" => [ - "doc/man3/SSL_get_certificate.pod" - ], - "doc/html/man3/SSL_get_ciphers.html" => [ - "doc/man3/SSL_get_ciphers.pod" - ], - "doc/html/man3/SSL_get_client_random.html" => [ - "doc/man3/SSL_get_client_random.pod" - ], - "doc/html/man3/SSL_get_conn_close_info.html" => [ - "doc/man3/SSL_get_conn_close_info.pod" - ], - "doc/html/man3/SSL_get_current_cipher.html" => [ - "doc/man3/SSL_get_current_cipher.pod" - ], - "doc/html/man3/SSL_get_default_timeout.html" => [ - "doc/man3/SSL_get_default_timeout.pod" - ], - "doc/html/man3/SSL_get_error.html" => [ - "doc/man3/SSL_get_error.pod" - ], - "doc/html/man3/SSL_get_event_timeout.html" => [ - "doc/man3/SSL_get_event_timeout.pod" - ], - "doc/html/man3/SSL_get_extms_support.html" => [ - "doc/man3/SSL_get_extms_support.pod" - ], - "doc/html/man3/SSL_get_fd.html" => [ - "doc/man3/SSL_get_fd.pod" - ], - "doc/html/man3/SSL_get_handshake_rtt.html" => [ - "doc/man3/SSL_get_handshake_rtt.pod" - ], - "doc/html/man3/SSL_get_peer_cert_chain.html" => [ - "doc/man3/SSL_get_peer_cert_chain.pod" - ], - "doc/html/man3/SSL_get_peer_certificate.html" => [ - "doc/man3/SSL_get_peer_certificate.pod" - ], - "doc/html/man3/SSL_get_peer_signature_nid.html" => [ - "doc/man3/SSL_get_peer_signature_nid.pod" - ], - "doc/html/man3/SSL_get_peer_tmp_key.html" => [ - "doc/man3/SSL_get_peer_tmp_key.pod" - ], - "doc/html/man3/SSL_get_psk_identity.html" => [ - "doc/man3/SSL_get_psk_identity.pod" - ], - "doc/html/man3/SSL_get_rbio.html" => [ - "doc/man3/SSL_get_rbio.pod" - ], - "doc/html/man3/SSL_get_rpoll_descriptor.html" => [ - "doc/man3/SSL_get_rpoll_descriptor.pod" - ], - "doc/html/man3/SSL_get_session.html" => [ - "doc/man3/SSL_get_session.pod" - ], - "doc/html/man3/SSL_get_shared_sigalgs.html" => [ - "doc/man3/SSL_get_shared_sigalgs.pod" - ], - "doc/html/man3/SSL_get_stream_id.html" => [ - "doc/man3/SSL_get_stream_id.pod" - ], - "doc/html/man3/SSL_get_stream_read_state.html" => [ - "doc/man3/SSL_get_stream_read_state.pod" - ], - "doc/html/man3/SSL_get_value_uint.html" => [ - "doc/man3/SSL_get_value_uint.pod" - ], - "doc/html/man3/SSL_get_verify_result.html" => [ - "doc/man3/SSL_get_verify_result.pod" - ], - "doc/html/man3/SSL_get_version.html" => [ - "doc/man3/SSL_get_version.pod" - ], - "doc/html/man3/SSL_group_to_name.html" => [ - "doc/man3/SSL_group_to_name.pod" - ], - "doc/html/man3/SSL_handle_events.html" => [ - "doc/man3/SSL_handle_events.pod" - ], - "doc/html/man3/SSL_in_init.html" => [ - "doc/man3/SSL_in_init.pod" - ], - "doc/html/man3/SSL_inject_net_dgram.html" => [ - "doc/man3/SSL_inject_net_dgram.pod" - ], - "doc/html/man3/SSL_key_update.html" => [ - "doc/man3/SSL_key_update.pod" - ], - "doc/html/man3/SSL_library_init.html" => [ - "doc/man3/SSL_library_init.pod" - ], - "doc/html/man3/SSL_load_client_CA_file.html" => [ - "doc/man3/SSL_load_client_CA_file.pod" - ], - "doc/html/man3/SSL_new.html" => [ - "doc/man3/SSL_new.pod" - ], - "doc/html/man3/SSL_new_domain.html" => [ - "doc/man3/SSL_new_domain.pod" - ], - "doc/html/man3/SSL_new_listener.html" => [ - "doc/man3/SSL_new_listener.pod" - ], - "doc/html/man3/SSL_new_stream.html" => [ - "doc/man3/SSL_new_stream.pod" - ], - "doc/html/man3/SSL_pending.html" => [ - "doc/man3/SSL_pending.pod" - ], - "doc/html/man3/SSL_poll.html" => [ - "doc/man3/SSL_poll.pod" - ], - "doc/html/man3/SSL_read.html" => [ - "doc/man3/SSL_read.pod" - ], - "doc/html/man3/SSL_read_early_data.html" => [ - "doc/man3/SSL_read_early_data.pod" - ], - "doc/html/man3/SSL_rstate_string.html" => [ - "doc/man3/SSL_rstate_string.pod" - ], - "doc/html/man3/SSL_session_reused.html" => [ - "doc/man3/SSL_session_reused.pod" - ], - "doc/html/man3/SSL_set1_host.html" => [ - "doc/man3/SSL_set1_host.pod" - ], - "doc/html/man3/SSL_set1_initial_peer_addr.html" => [ - "doc/man3/SSL_set1_initial_peer_addr.pod" - ], - "doc/html/man3/SSL_set1_server_cert_type.html" => [ - "doc/man3/SSL_set1_server_cert_type.pod" - ], - "doc/html/man3/SSL_set_async_callback.html" => [ - "doc/man3/SSL_set_async_callback.pod" - ], - "doc/html/man3/SSL_set_bio.html" => [ - "doc/man3/SSL_set_bio.pod" - ], - "doc/html/man3/SSL_set_blocking_mode.html" => [ - "doc/man3/SSL_set_blocking_mode.pod" - ], - "doc/html/man3/SSL_set_connect_state.html" => [ - "doc/man3/SSL_set_connect_state.pod" - ], - "doc/html/man3/SSL_set_default_stream_mode.html" => [ - "doc/man3/SSL_set_default_stream_mode.pod" - ], - "doc/html/man3/SSL_set_fd.html" => [ - "doc/man3/SSL_set_fd.pod" - ], - "doc/html/man3/SSL_set_incoming_stream_policy.html" => [ - "doc/man3/SSL_set_incoming_stream_policy.pod" - ], - "doc/html/man3/SSL_set_quic_tls_cbs.html" => [ - "doc/man3/SSL_set_quic_tls_cbs.pod" - ], - "doc/html/man3/SSL_set_retry_verify.html" => [ - "doc/man3/SSL_set_retry_verify.pod" - ], - "doc/html/man3/SSL_set_session.html" => [ - "doc/man3/SSL_set_session.pod" - ], - "doc/html/man3/SSL_set_session_secret_cb.html" => [ - "doc/man3/SSL_set_session_secret_cb.pod" - ], - "doc/html/man3/SSL_set_shutdown.html" => [ - "doc/man3/SSL_set_shutdown.pod" - ], - "doc/html/man3/SSL_set_verify_result.html" => [ - "doc/man3/SSL_set_verify_result.pod" - ], - "doc/html/man3/SSL_shutdown.html" => [ - "doc/man3/SSL_shutdown.pod" - ], - "doc/html/man3/SSL_state_string.html" => [ - "doc/man3/SSL_state_string.pod" - ], - "doc/html/man3/SSL_stream_conclude.html" => [ - "doc/man3/SSL_stream_conclude.pod" - ], - "doc/html/man3/SSL_stream_reset.html" => [ - "doc/man3/SSL_stream_reset.pod" - ], - "doc/html/man3/SSL_want.html" => [ - "doc/man3/SSL_want.pod" - ], - "doc/html/man3/SSL_write.html" => [ - "doc/man3/SSL_write.pod" - ], - "doc/html/man3/TS_RESP_CTX_new.html" => [ - "doc/man3/TS_RESP_CTX_new.pod" - ], - "doc/html/man3/TS_VERIFY_CTX.html" => [ - "doc/man3/TS_VERIFY_CTX.pod" - ], - "doc/html/man3/UI_STRING.html" => [ - "doc/man3/UI_STRING.pod" - ], - "doc/html/man3/UI_UTIL_read_pw.html" => [ - "doc/man3/UI_UTIL_read_pw.pod" - ], - "doc/html/man3/UI_create_method.html" => [ - "doc/man3/UI_create_method.pod" - ], - "doc/html/man3/UI_new.html" => [ - "doc/man3/UI_new.pod" - ], - "doc/html/man3/X509V3_get_d2i.html" => [ - "doc/man3/X509V3_get_d2i.pod" - ], - "doc/html/man3/X509V3_set_ctx.html" => [ - "doc/man3/X509V3_set_ctx.pod" - ], - "doc/html/man3/X509_ACERT_add1_attr.html" => [ - "doc/man3/X509_ACERT_add1_attr.pod" - ], - "doc/html/man3/X509_ACERT_add_attr_nconf.html" => [ - "doc/man3/X509_ACERT_add_attr_nconf.pod" - ], - "doc/html/man3/X509_ACERT_get0_holder_baseCertId.html" => [ - "doc/man3/X509_ACERT_get0_holder_baseCertId.pod" - ], - "doc/html/man3/X509_ACERT_get_attr.html" => [ - "doc/man3/X509_ACERT_get_attr.pod" - ], - "doc/html/man3/X509_ACERT_print_ex.html" => [ - "doc/man3/X509_ACERT_print_ex.pod" - ], - "doc/html/man3/X509_ALGOR_dup.html" => [ - "doc/man3/X509_ALGOR_dup.pod" - ], - "doc/html/man3/X509_ATTRIBUTE.html" => [ - "doc/man3/X509_ATTRIBUTE.pod" - ], - "doc/html/man3/X509_CRL_get0_by_serial.html" => [ - "doc/man3/X509_CRL_get0_by_serial.pod" - ], - "doc/html/man3/X509_EXTENSION_set_object.html" => [ - "doc/man3/X509_EXTENSION_set_object.pod" - ], - "doc/html/man3/X509_LOOKUP.html" => [ - "doc/man3/X509_LOOKUP.pod" - ], - "doc/html/man3/X509_LOOKUP_hash_dir.html" => [ - "doc/man3/X509_LOOKUP_hash_dir.pod" - ], - "doc/html/man3/X509_LOOKUP_meth_new.html" => [ - "doc/man3/X509_LOOKUP_meth_new.pod" - ], - "doc/html/man3/X509_NAME_ENTRY_get_object.html" => [ - "doc/man3/X509_NAME_ENTRY_get_object.pod" - ], - "doc/html/man3/X509_NAME_add_entry_by_txt.html" => [ - "doc/man3/X509_NAME_add_entry_by_txt.pod" - ], - "doc/html/man3/X509_NAME_get0_der.html" => [ - "doc/man3/X509_NAME_get0_der.pod" - ], - "doc/html/man3/X509_NAME_get_index_by_NID.html" => [ - "doc/man3/X509_NAME_get_index_by_NID.pod" - ], - "doc/html/man3/X509_NAME_print_ex.html" => [ - "doc/man3/X509_NAME_print_ex.pod" - ], - "doc/html/man3/X509_PUBKEY_new.html" => [ - "doc/man3/X509_PUBKEY_new.pod" - ], - "doc/html/man3/X509_REQ_get_attr.html" => [ - "doc/man3/X509_REQ_get_attr.pod" - ], - "doc/html/man3/X509_REQ_get_extensions.html" => [ - "doc/man3/X509_REQ_get_extensions.pod" - ], - "doc/html/man3/X509_SIG_get0.html" => [ - "doc/man3/X509_SIG_get0.pod" - ], - "doc/html/man3/X509_STORE_CTX_get_by_subject.html" => [ - "doc/man3/X509_STORE_CTX_get_by_subject.pod" - ], - "doc/html/man3/X509_STORE_CTX_get_error.html" => [ - "doc/man3/X509_STORE_CTX_get_error.pod" - ], - "doc/html/man3/X509_STORE_CTX_new.html" => [ - "doc/man3/X509_STORE_CTX_new.pod" - ], - "doc/html/man3/X509_STORE_CTX_set_verify_cb.html" => [ - "doc/man3/X509_STORE_CTX_set_verify_cb.pod" - ], - "doc/html/man3/X509_STORE_add_cert.html" => [ - "doc/man3/X509_STORE_add_cert.pod" - ], - "doc/html/man3/X509_STORE_get0_param.html" => [ - "doc/man3/X509_STORE_get0_param.pod" - ], - "doc/html/man3/X509_STORE_new.html" => [ - "doc/man3/X509_STORE_new.pod" - ], - "doc/html/man3/X509_STORE_set_verify_cb_func.html" => [ - "doc/man3/X509_STORE_set_verify_cb_func.pod" - ], - "doc/html/man3/X509_VERIFY_PARAM_set_flags.html" => [ - "doc/man3/X509_VERIFY_PARAM_set_flags.pod" - ], - "doc/html/man3/X509_add_cert.html" => [ - "doc/man3/X509_add_cert.pod" - ], - "doc/html/man3/X509_check_ca.html" => [ - "doc/man3/X509_check_ca.pod" - ], - "doc/html/man3/X509_check_host.html" => [ - "doc/man3/X509_check_host.pod" - ], - "doc/html/man3/X509_check_issued.html" => [ - "doc/man3/X509_check_issued.pod" - ], - "doc/html/man3/X509_check_private_key.html" => [ - "doc/man3/X509_check_private_key.pod" - ], - "doc/html/man3/X509_check_purpose.html" => [ - "doc/man3/X509_check_purpose.pod" - ], - "doc/html/man3/X509_cmp.html" => [ - "doc/man3/X509_cmp.pod" - ], - "doc/html/man3/X509_cmp_time.html" => [ - "doc/man3/X509_cmp_time.pod" - ], - "doc/html/man3/X509_digest.html" => [ - "doc/man3/X509_digest.pod" - ], - "doc/html/man3/X509_dup.html" => [ - "doc/man3/X509_dup.pod" - ], - "doc/html/man3/X509_get0_distinguishing_id.html" => [ - "doc/man3/X509_get0_distinguishing_id.pod" - ], - "doc/html/man3/X509_get0_notBefore.html" => [ - "doc/man3/X509_get0_notBefore.pod" - ], - "doc/html/man3/X509_get0_signature.html" => [ - "doc/man3/X509_get0_signature.pod" - ], - "doc/html/man3/X509_get0_uids.html" => [ - "doc/man3/X509_get0_uids.pod" - ], - "doc/html/man3/X509_get_default_cert_file.html" => [ - "doc/man3/X509_get_default_cert_file.pod" - ], - "doc/html/man3/X509_get_extension_flags.html" => [ - "doc/man3/X509_get_extension_flags.pod" - ], - "doc/html/man3/X509_get_pubkey.html" => [ - "doc/man3/X509_get_pubkey.pod" - ], - "doc/html/man3/X509_get_serialNumber.html" => [ - "doc/man3/X509_get_serialNumber.pod" - ], - "doc/html/man3/X509_get_subject_name.html" => [ - "doc/man3/X509_get_subject_name.pod" - ], - "doc/html/man3/X509_get_version.html" => [ - "doc/man3/X509_get_version.pod" - ], - "doc/html/man3/X509_load_http.html" => [ - "doc/man3/X509_load_http.pod" - ], - "doc/html/man3/X509_new.html" => [ - "doc/man3/X509_new.pod" - ], - "doc/html/man3/X509_sign.html" => [ - "doc/man3/X509_sign.pod" - ], - "doc/html/man3/X509_verify.html" => [ - "doc/man3/X509_verify.pod" - ], - "doc/html/man3/X509_verify_cert.html" => [ - "doc/man3/X509_verify_cert.pod" - ], - "doc/html/man3/X509v3_get_ext_by_NID.html" => [ - "doc/man3/X509v3_get_ext_by_NID.pod" - ], - "doc/html/man3/b2i_PVK_bio_ex.html" => [ - "doc/man3/b2i_PVK_bio_ex.pod" - ], - "doc/html/man3/d2i_PKCS8PrivateKey_bio.html" => [ - "doc/man3/d2i_PKCS8PrivateKey_bio.pod" - ], - "doc/html/man3/d2i_PrivateKey.html" => [ - "doc/man3/d2i_PrivateKey.pod" - ], - "doc/html/man3/d2i_RSAPrivateKey.html" => [ - "doc/man3/d2i_RSAPrivateKey.pod" - ], - "doc/html/man3/d2i_SSL_SESSION.html" => [ - "doc/man3/d2i_SSL_SESSION.pod" - ], - "doc/html/man3/d2i_X509.html" => [ - "doc/man3/d2i_X509.pod" - ], - "doc/html/man3/i2d_CMS_bio_stream.html" => [ - "doc/man3/i2d_CMS_bio_stream.pod" - ], - "doc/html/man3/i2d_PKCS7_bio_stream.html" => [ - "doc/man3/i2d_PKCS7_bio_stream.pod" - ], - "doc/html/man3/i2d_re_X509_tbs.html" => [ - "doc/man3/i2d_re_X509_tbs.pod" - ], - "doc/html/man3/o2i_SCT_LIST.html" => [ - "doc/man3/o2i_SCT_LIST.pod" - ], - "doc/html/man3/s2i_ASN1_IA5STRING.html" => [ - "doc/man3/s2i_ASN1_IA5STRING.pod" - ], - "doc/html/man5/config.html" => [ - "doc/man5/config.pod" - ], - "doc/html/man5/fips_config.html" => [ - "doc/man5/fips_config.pod" - ], - "doc/html/man5/x509v3_config.html" => [ - "doc/man5/x509v3_config.pod" - ], - "doc/html/man7/EVP_ASYM_CIPHER-RSA.html" => [ - "doc/man7/EVP_ASYM_CIPHER-RSA.pod" - ], - "doc/html/man7/EVP_ASYM_CIPHER-SM2.html" => [ - "doc/man7/EVP_ASYM_CIPHER-SM2.pod" - ], - "doc/html/man7/EVP_CIPHER-AES.html" => [ - "doc/man7/EVP_CIPHER-AES.pod" - ], - "doc/html/man7/EVP_CIPHER-ARIA.html" => [ - "doc/man7/EVP_CIPHER-ARIA.pod" - ], - "doc/html/man7/EVP_CIPHER-BLOWFISH.html" => [ - "doc/man7/EVP_CIPHER-BLOWFISH.pod" - ], - "doc/html/man7/EVP_CIPHER-CAMELLIA.html" => [ - "doc/man7/EVP_CIPHER-CAMELLIA.pod" - ], - "doc/html/man7/EVP_CIPHER-CAST.html" => [ - "doc/man7/EVP_CIPHER-CAST.pod" - ], - "doc/html/man7/EVP_CIPHER-CHACHA.html" => [ - "doc/man7/EVP_CIPHER-CHACHA.pod" - ], - "doc/html/man7/EVP_CIPHER-DES.html" => [ - "doc/man7/EVP_CIPHER-DES.pod" - ], - "doc/html/man7/EVP_CIPHER-IDEA.html" => [ - "doc/man7/EVP_CIPHER-IDEA.pod" - ], - "doc/html/man7/EVP_CIPHER-NULL.html" => [ - "doc/man7/EVP_CIPHER-NULL.pod" - ], - "doc/html/man7/EVP_CIPHER-RC2.html" => [ - "doc/man7/EVP_CIPHER-RC2.pod" - ], - "doc/html/man7/EVP_CIPHER-RC4.html" => [ - "doc/man7/EVP_CIPHER-RC4.pod" - ], - "doc/html/man7/EVP_CIPHER-RC5.html" => [ - "doc/man7/EVP_CIPHER-RC5.pod" - ], - "doc/html/man7/EVP_CIPHER-SEED.html" => [ - "doc/man7/EVP_CIPHER-SEED.pod" - ], - "doc/html/man7/EVP_CIPHER-SM4.html" => [ - "doc/man7/EVP_CIPHER-SM4.pod" - ], - "doc/html/man7/EVP_KDF-ARGON2.html" => [ - "doc/man7/EVP_KDF-ARGON2.pod" - ], - "doc/html/man7/EVP_KDF-HKDF.html" => [ - "doc/man7/EVP_KDF-HKDF.pod" - ], - "doc/html/man7/EVP_KDF-HMAC-DRBG.html" => [ - "doc/man7/EVP_KDF-HMAC-DRBG.pod" - ], - "doc/html/man7/EVP_KDF-KB.html" => [ - "doc/man7/EVP_KDF-KB.pod" - ], - "doc/html/man7/EVP_KDF-KRB5KDF.html" => [ - "doc/man7/EVP_KDF-KRB5KDF.pod" - ], - "doc/html/man7/EVP_KDF-PBKDF1.html" => [ - "doc/man7/EVP_KDF-PBKDF1.pod" - ], - "doc/html/man7/EVP_KDF-PBKDF2.html" => [ - "doc/man7/EVP_KDF-PBKDF2.pod" - ], - "doc/html/man7/EVP_KDF-PKCS12KDF.html" => [ - "doc/man7/EVP_KDF-PKCS12KDF.pod" - ], - "doc/html/man7/EVP_KDF-PVKKDF.html" => [ - "doc/man7/EVP_KDF-PVKKDF.pod" - ], - "doc/html/man7/EVP_KDF-SCRYPT.html" => [ - "doc/man7/EVP_KDF-SCRYPT.pod" - ], - "doc/html/man7/EVP_KDF-SS.html" => [ - "doc/man7/EVP_KDF-SS.pod" - ], - "doc/html/man7/EVP_KDF-SSHKDF.html" => [ - "doc/man7/EVP_KDF-SSHKDF.pod" - ], - "doc/html/man7/EVP_KDF-TLS13_KDF.html" => [ - "doc/man7/EVP_KDF-TLS13_KDF.pod" - ], - "doc/html/man7/EVP_KDF-TLS1_PRF.html" => [ - "doc/man7/EVP_KDF-TLS1_PRF.pod" - ], - "doc/html/man7/EVP_KDF-X942-ASN1.html" => [ - "doc/man7/EVP_KDF-X942-ASN1.pod" - ], - "doc/html/man7/EVP_KDF-X942-CONCAT.html" => [ - "doc/man7/EVP_KDF-X942-CONCAT.pod" - ], - "doc/html/man7/EVP_KDF-X963.html" => [ - "doc/man7/EVP_KDF-X963.pod" - ], - "doc/html/man7/EVP_KEM-EC.html" => [ - "doc/man7/EVP_KEM-EC.pod" - ], - "doc/html/man7/EVP_KEM-ML-KEM.html" => [ - "doc/man7/EVP_KEM-ML-KEM.pod" - ], - "doc/html/man7/EVP_KEM-RSA.html" => [ - "doc/man7/EVP_KEM-RSA.pod" - ], - "doc/html/man7/EVP_KEM-X25519.html" => [ - "doc/man7/EVP_KEM-X25519.pod" - ], - "doc/html/man7/EVP_KEYEXCH-DH.html" => [ - "doc/man7/EVP_KEYEXCH-DH.pod" - ], - "doc/html/man7/EVP_KEYEXCH-ECDH.html" => [ - "doc/man7/EVP_KEYEXCH-ECDH.pod" - ], - "doc/html/man7/EVP_KEYEXCH-X25519.html" => [ - "doc/man7/EVP_KEYEXCH-X25519.pod" - ], - "doc/html/man7/EVP_MAC-BLAKE2.html" => [ - "doc/man7/EVP_MAC-BLAKE2.pod" - ], - "doc/html/man7/EVP_MAC-CMAC.html" => [ - "doc/man7/EVP_MAC-CMAC.pod" - ], - "doc/html/man7/EVP_MAC-GMAC.html" => [ - "doc/man7/EVP_MAC-GMAC.pod" - ], - "doc/html/man7/EVP_MAC-HMAC.html" => [ - "doc/man7/EVP_MAC-HMAC.pod" - ], - "doc/html/man7/EVP_MAC-KMAC.html" => [ - "doc/man7/EVP_MAC-KMAC.pod" - ], - "doc/html/man7/EVP_MAC-Poly1305.html" => [ - "doc/man7/EVP_MAC-Poly1305.pod" - ], - "doc/html/man7/EVP_MAC-Siphash.html" => [ - "doc/man7/EVP_MAC-Siphash.pod" - ], - "doc/html/man7/EVP_MD-BLAKE2.html" => [ - "doc/man7/EVP_MD-BLAKE2.pod" - ], - "doc/html/man7/EVP_MD-KECCAK.html" => [ - "doc/man7/EVP_MD-KECCAK.pod" - ], - "doc/html/man7/EVP_MD-MD2.html" => [ - "doc/man7/EVP_MD-MD2.pod" - ], - "doc/html/man7/EVP_MD-MD4.html" => [ - "doc/man7/EVP_MD-MD4.pod" - ], - "doc/html/man7/EVP_MD-MD5-SHA1.html" => [ - "doc/man7/EVP_MD-MD5-SHA1.pod" - ], - "doc/html/man7/EVP_MD-MD5.html" => [ - "doc/man7/EVP_MD-MD5.pod" - ], - "doc/html/man7/EVP_MD-MDC2.html" => [ - "doc/man7/EVP_MD-MDC2.pod" - ], - "doc/html/man7/EVP_MD-NULL.html" => [ - "doc/man7/EVP_MD-NULL.pod" - ], - "doc/html/man7/EVP_MD-RIPEMD160.html" => [ - "doc/man7/EVP_MD-RIPEMD160.pod" - ], - "doc/html/man7/EVP_MD-SHA1.html" => [ - "doc/man7/EVP_MD-SHA1.pod" - ], - "doc/html/man7/EVP_MD-SHA2.html" => [ - "doc/man7/EVP_MD-SHA2.pod" - ], - "doc/html/man7/EVP_MD-SHA3.html" => [ - "doc/man7/EVP_MD-SHA3.pod" - ], - "doc/html/man7/EVP_MD-SHAKE.html" => [ - "doc/man7/EVP_MD-SHAKE.pod" - ], - "doc/html/man7/EVP_MD-SM3.html" => [ - "doc/man7/EVP_MD-SM3.pod" - ], - "doc/html/man7/EVP_MD-WHIRLPOOL.html" => [ - "doc/man7/EVP_MD-WHIRLPOOL.pod" - ], - "doc/html/man7/EVP_MD-common.html" => [ - "doc/man7/EVP_MD-common.pod" - ], - "doc/html/man7/EVP_PKEY-DH.html" => [ - "doc/man7/EVP_PKEY-DH.pod" - ], - "doc/html/man7/EVP_PKEY-DSA.html" => [ - "doc/man7/EVP_PKEY-DSA.pod" - ], - "doc/html/man7/EVP_PKEY-EC.html" => [ - "doc/man7/EVP_PKEY-EC.pod" - ], - "doc/html/man7/EVP_PKEY-FFC.html" => [ - "doc/man7/EVP_PKEY-FFC.pod" - ], - "doc/html/man7/EVP_PKEY-HMAC.html" => [ - "doc/man7/EVP_PKEY-HMAC.pod" - ], - "doc/html/man7/EVP_PKEY-ML-DSA.html" => [ - "doc/man7/EVP_PKEY-ML-DSA.pod" - ], - "doc/html/man7/EVP_PKEY-ML-KEM.html" => [ - "doc/man7/EVP_PKEY-ML-KEM.pod" - ], - "doc/html/man7/EVP_PKEY-RSA.html" => [ - "doc/man7/EVP_PKEY-RSA.pod" - ], - "doc/html/man7/EVP_PKEY-SLH-DSA.html" => [ - "doc/man7/EVP_PKEY-SLH-DSA.pod" - ], - "doc/html/man7/EVP_PKEY-SM2.html" => [ - "doc/man7/EVP_PKEY-SM2.pod" - ], - "doc/html/man7/EVP_PKEY-X25519.html" => [ - "doc/man7/EVP_PKEY-X25519.pod" - ], - "doc/html/man7/EVP_RAND-CRNG-TEST.html" => [ - "doc/man7/EVP_RAND-CRNG-TEST.pod" - ], - "doc/html/man7/EVP_RAND-CTR-DRBG.html" => [ - "doc/man7/EVP_RAND-CTR-DRBG.pod" - ], - "doc/html/man7/EVP_RAND-HASH-DRBG.html" => [ - "doc/man7/EVP_RAND-HASH-DRBG.pod" - ], - "doc/html/man7/EVP_RAND-HMAC-DRBG.html" => [ - "doc/man7/EVP_RAND-HMAC-DRBG.pod" - ], - "doc/html/man7/EVP_RAND-JITTER.html" => [ - "doc/man7/EVP_RAND-JITTER.pod" - ], - "doc/html/man7/EVP_RAND-SEED-SRC.html" => [ - "doc/man7/EVP_RAND-SEED-SRC.pod" - ], - "doc/html/man7/EVP_RAND-TEST-RAND.html" => [ - "doc/man7/EVP_RAND-TEST-RAND.pod" - ], - "doc/html/man7/EVP_RAND.html" => [ - "doc/man7/EVP_RAND.pod" - ], - "doc/html/man7/EVP_SIGNATURE-DSA.html" => [ - "doc/man7/EVP_SIGNATURE-DSA.pod" - ], - "doc/html/man7/EVP_SIGNATURE-ECDSA.html" => [ - "doc/man7/EVP_SIGNATURE-ECDSA.pod" - ], - "doc/html/man7/EVP_SIGNATURE-ED25519.html" => [ - "doc/man7/EVP_SIGNATURE-ED25519.pod" - ], - "doc/html/man7/EVP_SIGNATURE-HMAC.html" => [ - "doc/man7/EVP_SIGNATURE-HMAC.pod" - ], - "doc/html/man7/EVP_SIGNATURE-ML-DSA.html" => [ - "doc/man7/EVP_SIGNATURE-ML-DSA.pod" - ], - "doc/html/man7/EVP_SIGNATURE-RSA.html" => [ - "doc/man7/EVP_SIGNATURE-RSA.pod" - ], - "doc/html/man7/EVP_SIGNATURE-SLH-DSA.html" => [ - "doc/man7/EVP_SIGNATURE-SLH-DSA.pod" - ], - "doc/html/man7/OSSL_PROVIDER-FIPS.html" => [ - "doc/man7/OSSL_PROVIDER-FIPS.pod" - ], - "doc/html/man7/OSSL_PROVIDER-base.html" => [ - "doc/man7/OSSL_PROVIDER-base.pod" - ], - "doc/html/man7/OSSL_PROVIDER-default.html" => [ - "doc/man7/OSSL_PROVIDER-default.pod" - ], - "doc/html/man7/OSSL_PROVIDER-legacy.html" => [ - "doc/man7/OSSL_PROVIDER-legacy.pod" - ], - "doc/html/man7/OSSL_PROVIDER-null.html" => [ - "doc/man7/OSSL_PROVIDER-null.pod" - ], - "doc/html/man7/OSSL_STORE-winstore.html" => [ - "doc/man7/OSSL_STORE-winstore.pod" - ], - "doc/html/man7/RAND.html" => [ - "doc/man7/RAND.pod" - ], - "doc/html/man7/RSA-PSS.html" => [ - "doc/man7/RSA-PSS.pod" - ], - "doc/html/man7/X25519.html" => [ - "doc/man7/X25519.pod" - ], - "doc/html/man7/bio.html" => [ - "doc/man7/bio.pod" - ], - "doc/html/man7/ct.html" => [ - "doc/man7/ct.pod" - ], - "doc/html/man7/des_modes.html" => [ - "doc/man7/des_modes.pod" - ], - "doc/html/man7/evp.html" => [ - "doc/man7/evp.pod" - ], - "doc/html/man7/fips_module.html" => [ - "doc/man7/fips_module.pod" - ], - "doc/html/man7/life_cycle-cipher.html" => [ - "doc/man7/life_cycle-cipher.pod" - ], - "doc/html/man7/life_cycle-digest.html" => [ - "doc/man7/life_cycle-digest.pod" - ], - "doc/html/man7/life_cycle-kdf.html" => [ - "doc/man7/life_cycle-kdf.pod" - ], - "doc/html/man7/life_cycle-mac.html" => [ - "doc/man7/life_cycle-mac.pod" - ], - "doc/html/man7/life_cycle-pkey.html" => [ - "doc/man7/life_cycle-pkey.pod" - ], - "doc/html/man7/life_cycle-rand.html" => [ - "doc/man7/life_cycle-rand.pod" - ], - "doc/html/man7/openssl-core.h.html" => [ - "doc/man7/openssl-core.h.pod" - ], - "doc/html/man7/openssl-core_dispatch.h.html" => [ - "doc/man7/openssl-core_dispatch.h.pod" - ], - "doc/html/man7/openssl-core_names.h.html" => [ - "doc/man7/openssl-core_names.h.pod" - ], - "doc/html/man7/openssl-env.html" => [ - "doc/man7/openssl-env.pod" - ], - "doc/html/man7/openssl-glossary.html" => [ - "doc/man7/openssl-glossary.pod" - ], - "doc/html/man7/openssl-qlog.html" => [ - "doc/man7/openssl-qlog.pod" - ], - "doc/html/man7/openssl-quic-concurrency.html" => [ - "doc/man7/openssl-quic-concurrency.pod" - ], - "doc/html/man7/openssl-quic.html" => [ - "doc/man7/openssl-quic.pod" - ], - "doc/html/man7/openssl-threads.html" => [ - "doc/man7/openssl-threads.pod" - ], - "doc/html/man7/openssl_user_macros.html" => [ - "doc/man7/openssl_user_macros.pod" - ], - "doc/html/man7/ossl-guide-introduction.html" => [ - "doc/man7/ossl-guide-introduction.pod" - ], - "doc/html/man7/ossl-guide-libcrypto-introduction.html" => [ - "doc/man7/ossl-guide-libcrypto-introduction.pod" - ], - "doc/html/man7/ossl-guide-libraries-introduction.html" => [ - "doc/man7/ossl-guide-libraries-introduction.pod" - ], - "doc/html/man7/ossl-guide-libssl-introduction.html" => [ - "doc/man7/ossl-guide-libssl-introduction.pod" - ], - "doc/html/man7/ossl-guide-migration.html" => [ - "doc/man7/ossl-guide-migration.pod" - ], - "doc/html/man7/ossl-guide-quic-client-block.html" => [ - "doc/man7/ossl-guide-quic-client-block.pod" - ], - "doc/html/man7/ossl-guide-quic-client-non-block.html" => [ - "doc/man7/ossl-guide-quic-client-non-block.pod" - ], - "doc/html/man7/ossl-guide-quic-introduction.html" => [ - "doc/man7/ossl-guide-quic-introduction.pod" - ], - "doc/html/man7/ossl-guide-quic-multi-stream.html" => [ - "doc/man7/ossl-guide-quic-multi-stream.pod" - ], - "doc/html/man7/ossl-guide-quic-server-block.html" => [ - "doc/man7/ossl-guide-quic-server-block.pod" - ], - "doc/html/man7/ossl-guide-quic-server-non-block.html" => [ - "doc/man7/ossl-guide-quic-server-non-block.pod" - ], - "doc/html/man7/ossl-guide-tls-client-block.html" => [ - "doc/man7/ossl-guide-tls-client-block.pod" - ], - "doc/html/man7/ossl-guide-tls-client-non-block.html" => [ - "doc/man7/ossl-guide-tls-client-non-block.pod" - ], - "doc/html/man7/ossl-guide-tls-introduction.html" => [ - "doc/man7/ossl-guide-tls-introduction.pod" - ], - "doc/html/man7/ossl-guide-tls-server-block.html" => [ - "doc/man7/ossl-guide-tls-server-block.pod" - ], - "doc/html/man7/ossl_store-file.html" => [ - "doc/man7/ossl_store-file.pod" - ], - "doc/html/man7/ossl_store.html" => [ - "doc/man7/ossl_store.pod" - ], - "doc/html/man7/passphrase-encoding.html" => [ - "doc/man7/passphrase-encoding.pod" - ], - "doc/html/man7/property.html" => [ - "doc/man7/property.pod" - ], - "doc/html/man7/provider-asym_cipher.html" => [ - "doc/man7/provider-asym_cipher.pod" - ], - "doc/html/man7/provider-base.html" => [ - "doc/man7/provider-base.pod" - ], - "doc/html/man7/provider-cipher.html" => [ - "doc/man7/provider-cipher.pod" - ], - "doc/html/man7/provider-decoder.html" => [ - "doc/man7/provider-decoder.pod" - ], - "doc/html/man7/provider-digest.html" => [ - "doc/man7/provider-digest.pod" - ], - "doc/html/man7/provider-encoder.html" => [ - "doc/man7/provider-encoder.pod" - ], - "doc/html/man7/provider-kdf.html" => [ - "doc/man7/provider-kdf.pod" - ], - "doc/html/man7/provider-kem.html" => [ - "doc/man7/provider-kem.pod" - ], - "doc/html/man7/provider-keyexch.html" => [ - "doc/man7/provider-keyexch.pod" - ], - "doc/html/man7/provider-keymgmt.html" => [ - "doc/man7/provider-keymgmt.pod" - ], - "doc/html/man7/provider-mac.html" => [ - "doc/man7/provider-mac.pod" - ], - "doc/html/man7/provider-object.html" => [ - "doc/man7/provider-object.pod" - ], - "doc/html/man7/provider-rand.html" => [ - "doc/man7/provider-rand.pod" - ], - "doc/html/man7/provider-signature.html" => [ - "doc/man7/provider-signature.pod" - ], - "doc/html/man7/provider-skeymgmt.html" => [ - "doc/man7/provider-skeymgmt.pod" - ], - "doc/html/man7/provider-storemgmt.html" => [ - "doc/man7/provider-storemgmt.pod" - ], - "doc/html/man7/provider.html" => [ - "doc/man7/provider.pod" - ], - "doc/html/man7/proxy-certificates.html" => [ - "doc/man7/proxy-certificates.pod" - ], - "doc/html/man7/x509.html" => [ - "doc/man7/x509.pod" - ], - "doc/man/man1/CA.pl.1" => [ - "doc/man1/CA.pl.pod" - ], - "doc/man/man1/openssl-asn1parse.1" => [ - "doc/man1/openssl-asn1parse.pod" - ], - "doc/man/man1/openssl-ca.1" => [ - "doc/man1/openssl-ca.pod" - ], - "doc/man/man1/openssl-ciphers.1" => [ - "doc/man1/openssl-ciphers.pod" - ], - "doc/man/man1/openssl-cmds.1" => [ - "doc/man1/openssl-cmds.pod" - ], - "doc/man/man1/openssl-cmp.1" => [ - "doc/man1/openssl-cmp.pod" - ], - "doc/man/man1/openssl-cms.1" => [ - "doc/man1/openssl-cms.pod" - ], - "doc/man/man1/openssl-crl.1" => [ - "doc/man1/openssl-crl.pod" - ], - "doc/man/man1/openssl-crl2pkcs7.1" => [ - "doc/man1/openssl-crl2pkcs7.pod" - ], - "doc/man/man1/openssl-dgst.1" => [ - "doc/man1/openssl-dgst.pod" - ], - "doc/man/man1/openssl-dhparam.1" => [ - "doc/man1/openssl-dhparam.pod" - ], - "doc/man/man1/openssl-dsa.1" => [ - "doc/man1/openssl-dsa.pod" - ], - "doc/man/man1/openssl-dsaparam.1" => [ - "doc/man1/openssl-dsaparam.pod" - ], - "doc/man/man1/openssl-ec.1" => [ - "doc/man1/openssl-ec.pod" - ], - "doc/man/man1/openssl-ecparam.1" => [ - "doc/man1/openssl-ecparam.pod" - ], - "doc/man/man1/openssl-enc.1" => [ - "doc/man1/openssl-enc.pod" - ], - "doc/man/man1/openssl-engine.1" => [ - "doc/man1/openssl-engine.pod" - ], - "doc/man/man1/openssl-errstr.1" => [ - "doc/man1/openssl-errstr.pod" - ], - "doc/man/man1/openssl-fipsinstall.1" => [ - "doc/man1/openssl-fipsinstall.pod" - ], - "doc/man/man1/openssl-format-options.1" => [ - "doc/man1/openssl-format-options.pod" - ], - "doc/man/man1/openssl-gendsa.1" => [ - "doc/man1/openssl-gendsa.pod" - ], - "doc/man/man1/openssl-genpkey.1" => [ - "doc/man1/openssl-genpkey.pod" - ], - "doc/man/man1/openssl-genrsa.1" => [ - "doc/man1/openssl-genrsa.pod" - ], - "doc/man/man1/openssl-info.1" => [ - "doc/man1/openssl-info.pod" - ], - "doc/man/man1/openssl-kdf.1" => [ - "doc/man1/openssl-kdf.pod" - ], - "doc/man/man1/openssl-list.1" => [ - "doc/man1/openssl-list.pod" - ], - "doc/man/man1/openssl-mac.1" => [ - "doc/man1/openssl-mac.pod" - ], - "doc/man/man1/openssl-namedisplay-options.1" => [ - "doc/man1/openssl-namedisplay-options.pod" - ], - "doc/man/man1/openssl-nseq.1" => [ - "doc/man1/openssl-nseq.pod" - ], - "doc/man/man1/openssl-ocsp.1" => [ - "doc/man1/openssl-ocsp.pod" - ], - "doc/man/man1/openssl-passphrase-options.1" => [ - "doc/man1/openssl-passphrase-options.pod" - ], - "doc/man/man1/openssl-passwd.1" => [ - "doc/man1/openssl-passwd.pod" - ], - "doc/man/man1/openssl-pkcs12.1" => [ - "doc/man1/openssl-pkcs12.pod" - ], - "doc/man/man1/openssl-pkcs7.1" => [ - "doc/man1/openssl-pkcs7.pod" - ], - "doc/man/man1/openssl-pkcs8.1" => [ - "doc/man1/openssl-pkcs8.pod" - ], - "doc/man/man1/openssl-pkey.1" => [ - "doc/man1/openssl-pkey.pod" - ], - "doc/man/man1/openssl-pkeyparam.1" => [ - "doc/man1/openssl-pkeyparam.pod" - ], - "doc/man/man1/openssl-pkeyutl.1" => [ - "doc/man1/openssl-pkeyutl.pod" - ], - "doc/man/man1/openssl-prime.1" => [ - "doc/man1/openssl-prime.pod" - ], - "doc/man/man1/openssl-rand.1" => [ - "doc/man1/openssl-rand.pod" - ], - "doc/man/man1/openssl-rehash.1" => [ - "doc/man1/openssl-rehash.pod" - ], - "doc/man/man1/openssl-req.1" => [ - "doc/man1/openssl-req.pod" - ], - "doc/man/man1/openssl-rsa.1" => [ - "doc/man1/openssl-rsa.pod" - ], - "doc/man/man1/openssl-rsautl.1" => [ - "doc/man1/openssl-rsautl.pod" - ], - "doc/man/man1/openssl-s_client.1" => [ - "doc/man1/openssl-s_client.pod" - ], - "doc/man/man1/openssl-s_server.1" => [ - "doc/man1/openssl-s_server.pod" - ], - "doc/man/man1/openssl-s_time.1" => [ - "doc/man1/openssl-s_time.pod" - ], - "doc/man/man1/openssl-sess_id.1" => [ - "doc/man1/openssl-sess_id.pod" - ], - "doc/man/man1/openssl-skeyutl.1" => [ - "doc/man1/openssl-skeyutl.pod" - ], - "doc/man/man1/openssl-smime.1" => [ - "doc/man1/openssl-smime.pod" - ], - "doc/man/man1/openssl-speed.1" => [ - "doc/man1/openssl-speed.pod" - ], - "doc/man/man1/openssl-spkac.1" => [ - "doc/man1/openssl-spkac.pod" - ], - "doc/man/man1/openssl-srp.1" => [ - "doc/man1/openssl-srp.pod" - ], - "doc/man/man1/openssl-storeutl.1" => [ - "doc/man1/openssl-storeutl.pod" - ], - "doc/man/man1/openssl-ts.1" => [ - "doc/man1/openssl-ts.pod" - ], - "doc/man/man1/openssl-verification-options.1" => [ - "doc/man1/openssl-verification-options.pod" - ], - "doc/man/man1/openssl-verify.1" => [ - "doc/man1/openssl-verify.pod" - ], - "doc/man/man1/openssl-version.1" => [ - "doc/man1/openssl-version.pod" - ], - "doc/man/man1/openssl-x509.1" => [ - "doc/man1/openssl-x509.pod" - ], - "doc/man/man1/openssl.1" => [ - "doc/man1/openssl.pod" - ], - "doc/man/man1/tsget.1" => [ - "doc/man1/tsget.pod" - ], - "doc/man/man3/ADMISSIONS.3" => [ - "doc/man3/ADMISSIONS.pod" - ], - "doc/man/man3/ASN1_EXTERN_FUNCS.3" => [ - "doc/man3/ASN1_EXTERN_FUNCS.pod" - ], - "doc/man/man3/ASN1_INTEGER_get_int64.3" => [ - "doc/man3/ASN1_INTEGER_get_int64.pod" - ], - "doc/man/man3/ASN1_INTEGER_new.3" => [ - "doc/man3/ASN1_INTEGER_new.pod" - ], - "doc/man/man3/ASN1_ITEM_lookup.3" => [ - "doc/man3/ASN1_ITEM_lookup.pod" - ], - "doc/man/man3/ASN1_OBJECT_new.3" => [ - "doc/man3/ASN1_OBJECT_new.pod" - ], - "doc/man/man3/ASN1_STRING_TABLE_add.3" => [ - "doc/man3/ASN1_STRING_TABLE_add.pod" - ], - "doc/man/man3/ASN1_STRING_length.3" => [ - "doc/man3/ASN1_STRING_length.pod" - ], - "doc/man/man3/ASN1_STRING_new.3" => [ - "doc/man3/ASN1_STRING_new.pod" - ], - "doc/man/man3/ASN1_STRING_print_ex.3" => [ - "doc/man3/ASN1_STRING_print_ex.pod" - ], - "doc/man/man3/ASN1_TIME_set.3" => [ - "doc/man3/ASN1_TIME_set.pod" - ], - "doc/man/man3/ASN1_TYPE_get.3" => [ - "doc/man3/ASN1_TYPE_get.pod" - ], - "doc/man/man3/ASN1_aux_cb.3" => [ - "doc/man3/ASN1_aux_cb.pod" - ], - "doc/man/man3/ASN1_generate_nconf.3" => [ - "doc/man3/ASN1_generate_nconf.pod" - ], - "doc/man/man3/ASN1_item_d2i_bio.3" => [ - "doc/man3/ASN1_item_d2i_bio.pod" - ], - "doc/man/man3/ASN1_item_new.3" => [ - "doc/man3/ASN1_item_new.pod" - ], - "doc/man/man3/ASN1_item_sign.3" => [ - "doc/man3/ASN1_item_sign.pod" - ], - "doc/man/man3/ASYNC_WAIT_CTX_new.3" => [ - "doc/man3/ASYNC_WAIT_CTX_new.pod" - ], - "doc/man/man3/ASYNC_start_job.3" => [ - "doc/man3/ASYNC_start_job.pod" - ], - "doc/man/man3/BF_encrypt.3" => [ - "doc/man3/BF_encrypt.pod" - ], - "doc/man/man3/BIO_ADDR.3" => [ - "doc/man3/BIO_ADDR.pod" - ], - "doc/man/man3/BIO_ADDRINFO.3" => [ - "doc/man3/BIO_ADDRINFO.pod" - ], - "doc/man/man3/BIO_connect.3" => [ - "doc/man3/BIO_connect.pod" - ], - "doc/man/man3/BIO_ctrl.3" => [ - "doc/man3/BIO_ctrl.pod" - ], - "doc/man/man3/BIO_f_base64.3" => [ - "doc/man3/BIO_f_base64.pod" - ], - "doc/man/man3/BIO_f_buffer.3" => [ - "doc/man3/BIO_f_buffer.pod" - ], - "doc/man/man3/BIO_f_cipher.3" => [ - "doc/man3/BIO_f_cipher.pod" - ], - "doc/man/man3/BIO_f_md.3" => [ - "doc/man3/BIO_f_md.pod" - ], - "doc/man/man3/BIO_f_null.3" => [ - "doc/man3/BIO_f_null.pod" - ], - "doc/man/man3/BIO_f_prefix.3" => [ - "doc/man3/BIO_f_prefix.pod" - ], - "doc/man/man3/BIO_f_readbuffer.3" => [ - "doc/man3/BIO_f_readbuffer.pod" - ], - "doc/man/man3/BIO_f_ssl.3" => [ - "doc/man3/BIO_f_ssl.pod" - ], - "doc/man/man3/BIO_find_type.3" => [ - "doc/man3/BIO_find_type.pod" - ], - "doc/man/man3/BIO_get_data.3" => [ - "doc/man3/BIO_get_data.pod" - ], - "doc/man/man3/BIO_get_ex_new_index.3" => [ - "doc/man3/BIO_get_ex_new_index.pod" - ], - "doc/man/man3/BIO_get_rpoll_descriptor.3" => [ - "doc/man3/BIO_get_rpoll_descriptor.pod" - ], - "doc/man/man3/BIO_meth_new.3" => [ - "doc/man3/BIO_meth_new.pod" - ], - "doc/man/man3/BIO_new.3" => [ - "doc/man3/BIO_new.pod" - ], - "doc/man/man3/BIO_new_CMS.3" => [ - "doc/man3/BIO_new_CMS.pod" - ], - "doc/man/man3/BIO_parse_hostserv.3" => [ - "doc/man3/BIO_parse_hostserv.pod" - ], - "doc/man/man3/BIO_printf.3" => [ - "doc/man3/BIO_printf.pod" - ], - "doc/man/man3/BIO_push.3" => [ - "doc/man3/BIO_push.pod" - ], - "doc/man/man3/BIO_read.3" => [ - "doc/man3/BIO_read.pod" - ], - "doc/man/man3/BIO_s_accept.3" => [ - "doc/man3/BIO_s_accept.pod" - ], - "doc/man/man3/BIO_s_bio.3" => [ - "doc/man3/BIO_s_bio.pod" - ], - "doc/man/man3/BIO_s_connect.3" => [ - "doc/man3/BIO_s_connect.pod" - ], - "doc/man/man3/BIO_s_core.3" => [ - "doc/man3/BIO_s_core.pod" - ], - "doc/man/man3/BIO_s_datagram.3" => [ - "doc/man3/BIO_s_datagram.pod" - ], - "doc/man/man3/BIO_s_dgram_pair.3" => [ - "doc/man3/BIO_s_dgram_pair.pod" - ], - "doc/man/man3/BIO_s_fd.3" => [ - "doc/man3/BIO_s_fd.pod" - ], - "doc/man/man3/BIO_s_file.3" => [ - "doc/man3/BIO_s_file.pod" - ], - "doc/man/man3/BIO_s_mem.3" => [ - "doc/man3/BIO_s_mem.pod" - ], - "doc/man/man3/BIO_s_null.3" => [ - "doc/man3/BIO_s_null.pod" - ], - "doc/man/man3/BIO_s_socket.3" => [ - "doc/man3/BIO_s_socket.pod" - ], - "doc/man/man3/BIO_sendmmsg.3" => [ - "doc/man3/BIO_sendmmsg.pod" - ], - "doc/man/man3/BIO_set_callback.3" => [ - "doc/man3/BIO_set_callback.pod" - ], - "doc/man/man3/BIO_should_retry.3" => [ - "doc/man3/BIO_should_retry.pod" - ], - "doc/man/man3/BIO_socket_wait.3" => [ - "doc/man3/BIO_socket_wait.pod" - ], - "doc/man/man3/BN_BLINDING_new.3" => [ - "doc/man3/BN_BLINDING_new.pod" - ], - "doc/man/man3/BN_CTX_new.3" => [ - "doc/man3/BN_CTX_new.pod" - ], - "doc/man/man3/BN_CTX_start.3" => [ - "doc/man3/BN_CTX_start.pod" - ], - "doc/man/man3/BN_add.3" => [ - "doc/man3/BN_add.pod" - ], - "doc/man/man3/BN_add_word.3" => [ - "doc/man3/BN_add_word.pod" - ], - "doc/man/man3/BN_bn2bin.3" => [ - "doc/man3/BN_bn2bin.pod" - ], - "doc/man/man3/BN_cmp.3" => [ - "doc/man3/BN_cmp.pod" - ], - "doc/man/man3/BN_copy.3" => [ - "doc/man3/BN_copy.pod" - ], - "doc/man/man3/BN_generate_prime.3" => [ - "doc/man3/BN_generate_prime.pod" - ], - "doc/man/man3/BN_mod_exp_mont.3" => [ - "doc/man3/BN_mod_exp_mont.pod" - ], - "doc/man/man3/BN_mod_inverse.3" => [ - "doc/man3/BN_mod_inverse.pod" - ], - "doc/man/man3/BN_mod_mul_montgomery.3" => [ - "doc/man3/BN_mod_mul_montgomery.pod" - ], - "doc/man/man3/BN_mod_mul_reciprocal.3" => [ - "doc/man3/BN_mod_mul_reciprocal.pod" - ], - "doc/man/man3/BN_new.3" => [ - "doc/man3/BN_new.pod" - ], - "doc/man/man3/BN_num_bytes.3" => [ - "doc/man3/BN_num_bytes.pod" - ], - "doc/man/man3/BN_rand.3" => [ - "doc/man3/BN_rand.pod" - ], - "doc/man/man3/BN_security_bits.3" => [ - "doc/man3/BN_security_bits.pod" - ], - "doc/man/man3/BN_set_bit.3" => [ - "doc/man3/BN_set_bit.pod" - ], - "doc/man/man3/BN_swap.3" => [ - "doc/man3/BN_swap.pod" - ], - "doc/man/man3/BN_zero.3" => [ - "doc/man3/BN_zero.pod" - ], - "doc/man/man3/BUF_MEM_new.3" => [ - "doc/man3/BUF_MEM_new.pod" - ], - "doc/man/man3/CMAC_CTX.3" => [ - "doc/man3/CMAC_CTX.pod" - ], - "doc/man/man3/CMS_EncryptedData_decrypt.3" => [ - "doc/man3/CMS_EncryptedData_decrypt.pod" - ], - "doc/man/man3/CMS_EncryptedData_encrypt.3" => [ - "doc/man3/CMS_EncryptedData_encrypt.pod" - ], - "doc/man/man3/CMS_EnvelopedData_create.3" => [ - "doc/man3/CMS_EnvelopedData_create.pod" - ], - "doc/man/man3/CMS_add0_cert.3" => [ - "doc/man3/CMS_add0_cert.pod" - ], - "doc/man/man3/CMS_add1_recipient_cert.3" => [ - "doc/man3/CMS_add1_recipient_cert.pod" - ], - "doc/man/man3/CMS_add1_signer.3" => [ - "doc/man3/CMS_add1_signer.pod" - ], - "doc/man/man3/CMS_compress.3" => [ - "doc/man3/CMS_compress.pod" - ], - "doc/man/man3/CMS_data_create.3" => [ - "doc/man3/CMS_data_create.pod" - ], - "doc/man/man3/CMS_decrypt.3" => [ - "doc/man3/CMS_decrypt.pod" - ], - "doc/man/man3/CMS_digest_create.3" => [ - "doc/man3/CMS_digest_create.pod" - ], - "doc/man/man3/CMS_encrypt.3" => [ - "doc/man3/CMS_encrypt.pod" - ], - "doc/man/man3/CMS_final.3" => [ - "doc/man3/CMS_final.pod" - ], - "doc/man/man3/CMS_get0_RecipientInfos.3" => [ - "doc/man3/CMS_get0_RecipientInfos.pod" - ], - "doc/man/man3/CMS_get0_SignerInfos.3" => [ - "doc/man3/CMS_get0_SignerInfos.pod" - ], - "doc/man/man3/CMS_get0_type.3" => [ - "doc/man3/CMS_get0_type.pod" - ], - "doc/man/man3/CMS_get1_ReceiptRequest.3" => [ - "doc/man3/CMS_get1_ReceiptRequest.pod" - ], - "doc/man/man3/CMS_sign.3" => [ - "doc/man3/CMS_sign.pod" - ], - "doc/man/man3/CMS_sign_receipt.3" => [ - "doc/man3/CMS_sign_receipt.pod" - ], - "doc/man/man3/CMS_signed_get_attr.3" => [ - "doc/man3/CMS_signed_get_attr.pod" - ], - "doc/man/man3/CMS_uncompress.3" => [ - "doc/man3/CMS_uncompress.pod" - ], - "doc/man/man3/CMS_verify.3" => [ - "doc/man3/CMS_verify.pod" - ], - "doc/man/man3/CMS_verify_receipt.3" => [ - "doc/man3/CMS_verify_receipt.pod" - ], - "doc/man/man3/COMP_CTX_new.3" => [ - "doc/man3/COMP_CTX_new.pod" - ], - "doc/man/man3/CONF_modules_free.3" => [ - "doc/man3/CONF_modules_free.pod" - ], - "doc/man/man3/CONF_modules_load_file.3" => [ - "doc/man3/CONF_modules_load_file.pod" - ], - "doc/man/man3/CRYPTO_THREAD_run_once.3" => [ - "doc/man3/CRYPTO_THREAD_run_once.pod" - ], - "doc/man/man3/CRYPTO_get_ex_new_index.3" => [ - "doc/man3/CRYPTO_get_ex_new_index.pod" - ], - "doc/man/man3/CRYPTO_memcmp.3" => [ - "doc/man3/CRYPTO_memcmp.pod" - ], - "doc/man/man3/CTLOG_STORE_get0_log_by_id.3" => [ - "doc/man3/CTLOG_STORE_get0_log_by_id.pod" - ], - "doc/man/man3/CTLOG_STORE_new.3" => [ - "doc/man3/CTLOG_STORE_new.pod" - ], - "doc/man/man3/CTLOG_new.3" => [ - "doc/man3/CTLOG_new.pod" - ], - "doc/man/man3/CT_POLICY_EVAL_CTX_new.3" => [ - "doc/man3/CT_POLICY_EVAL_CTX_new.pod" - ], - "doc/man/man3/DEFINE_STACK_OF.3" => [ - "doc/man3/DEFINE_STACK_OF.pod" - ], - "doc/man/man3/DES_random_key.3" => [ - "doc/man3/DES_random_key.pod" - ], - "doc/man/man3/DH_generate_key.3" => [ - "doc/man3/DH_generate_key.pod" - ], - "doc/man/man3/DH_generate_parameters.3" => [ - "doc/man3/DH_generate_parameters.pod" - ], - "doc/man/man3/DH_get0_pqg.3" => [ - "doc/man3/DH_get0_pqg.pod" - ], - "doc/man/man3/DH_get_1024_160.3" => [ - "doc/man3/DH_get_1024_160.pod" - ], - "doc/man/man3/DH_meth_new.3" => [ - "doc/man3/DH_meth_new.pod" - ], - "doc/man/man3/DH_new.3" => [ - "doc/man3/DH_new.pod" - ], - "doc/man/man3/DH_new_by_nid.3" => [ - "doc/man3/DH_new_by_nid.pod" - ], - "doc/man/man3/DH_set_method.3" => [ - "doc/man3/DH_set_method.pod" - ], - "doc/man/man3/DH_size.3" => [ - "doc/man3/DH_size.pod" - ], - "doc/man/man3/DSA_SIG_new.3" => [ - "doc/man3/DSA_SIG_new.pod" - ], - "doc/man/man3/DSA_do_sign.3" => [ - "doc/man3/DSA_do_sign.pod" - ], - "doc/man/man3/DSA_dup_DH.3" => [ - "doc/man3/DSA_dup_DH.pod" - ], - "doc/man/man3/DSA_generate_key.3" => [ - "doc/man3/DSA_generate_key.pod" - ], - "doc/man/man3/DSA_generate_parameters.3" => [ - "doc/man3/DSA_generate_parameters.pod" - ], - "doc/man/man3/DSA_get0_pqg.3" => [ - "doc/man3/DSA_get0_pqg.pod" - ], - "doc/man/man3/DSA_meth_new.3" => [ - "doc/man3/DSA_meth_new.pod" - ], - "doc/man/man3/DSA_new.3" => [ - "doc/man3/DSA_new.pod" - ], - "doc/man/man3/DSA_set_method.3" => [ - "doc/man3/DSA_set_method.pod" - ], - "doc/man/man3/DSA_sign.3" => [ - "doc/man3/DSA_sign.pod" - ], - "doc/man/man3/DSA_size.3" => [ - "doc/man3/DSA_size.pod" - ], - "doc/man/man3/DTLS_get_data_mtu.3" => [ - "doc/man3/DTLS_get_data_mtu.pod" - ], - "doc/man/man3/DTLS_set_timer_cb.3" => [ - "doc/man3/DTLS_set_timer_cb.pod" - ], - "doc/man/man3/DTLSv1_get_timeout.3" => [ - "doc/man3/DTLSv1_get_timeout.pod" - ], - "doc/man/man3/DTLSv1_handle_timeout.3" => [ - "doc/man3/DTLSv1_handle_timeout.pod" - ], - "doc/man/man3/DTLSv1_listen.3" => [ - "doc/man3/DTLSv1_listen.pod" - ], - "doc/man/man3/ECDSA_SIG_new.3" => [ - "doc/man3/ECDSA_SIG_new.pod" - ], - "doc/man/man3/ECDSA_sign.3" => [ - "doc/man3/ECDSA_sign.pod" - ], - "doc/man/man3/ECPKParameters_print.3" => [ - "doc/man3/ECPKParameters_print.pod" - ], - "doc/man/man3/EC_GFp_simple_method.3" => [ - "doc/man3/EC_GFp_simple_method.pod" - ], - "doc/man/man3/EC_GROUP_copy.3" => [ - "doc/man3/EC_GROUP_copy.pod" - ], - "doc/man/man3/EC_GROUP_new.3" => [ - "doc/man3/EC_GROUP_new.pod" - ], - "doc/man/man3/EC_KEY_get_enc_flags.3" => [ - "doc/man3/EC_KEY_get_enc_flags.pod" - ], - "doc/man/man3/EC_KEY_new.3" => [ - "doc/man3/EC_KEY_new.pod" - ], - "doc/man/man3/EC_POINT_add.3" => [ - "doc/man3/EC_POINT_add.pod" - ], - "doc/man/man3/EC_POINT_new.3" => [ - "doc/man3/EC_POINT_new.pod" - ], - "doc/man/man3/ENGINE_add.3" => [ - "doc/man3/ENGINE_add.pod" - ], - "doc/man/man3/ERR_GET_LIB.3" => [ - "doc/man3/ERR_GET_LIB.pod" - ], - "doc/man/man3/ERR_clear_error.3" => [ - "doc/man3/ERR_clear_error.pod" - ], - "doc/man/man3/ERR_error_string.3" => [ - "doc/man3/ERR_error_string.pod" - ], - "doc/man/man3/ERR_get_error.3" => [ - "doc/man3/ERR_get_error.pod" - ], - "doc/man/man3/ERR_load_crypto_strings.3" => [ - "doc/man3/ERR_load_crypto_strings.pod" - ], - "doc/man/man3/ERR_load_strings.3" => [ - "doc/man3/ERR_load_strings.pod" - ], - "doc/man/man3/ERR_new.3" => [ - "doc/man3/ERR_new.pod" - ], - "doc/man/man3/ERR_print_errors.3" => [ - "doc/man3/ERR_print_errors.pod" - ], - "doc/man/man3/ERR_put_error.3" => [ - "doc/man3/ERR_put_error.pod" - ], - "doc/man/man3/ERR_remove_state.3" => [ - "doc/man3/ERR_remove_state.pod" - ], - "doc/man/man3/ERR_set_mark.3" => [ - "doc/man3/ERR_set_mark.pod" - ], - "doc/man/man3/EVP_ASYM_CIPHER_free.3" => [ - "doc/man3/EVP_ASYM_CIPHER_free.pod" - ], - "doc/man/man3/EVP_BytesToKey.3" => [ - "doc/man3/EVP_BytesToKey.pod" - ], - "doc/man/man3/EVP_CIPHER_CTX_get_cipher_data.3" => [ - "doc/man3/EVP_CIPHER_CTX_get_cipher_data.pod" - ], - "doc/man/man3/EVP_CIPHER_CTX_get_original_iv.3" => [ - "doc/man3/EVP_CIPHER_CTX_get_original_iv.pod" - ], - "doc/man/man3/EVP_CIPHER_meth_new.3" => [ - "doc/man3/EVP_CIPHER_meth_new.pod" - ], - "doc/man/man3/EVP_DigestInit.3" => [ - "doc/man3/EVP_DigestInit.pod" - ], - "doc/man/man3/EVP_DigestSignInit.3" => [ - "doc/man3/EVP_DigestSignInit.pod" - ], - "doc/man/man3/EVP_DigestVerifyInit.3" => [ - "doc/man3/EVP_DigestVerifyInit.pod" - ], - "doc/man/man3/EVP_EncodeInit.3" => [ - "doc/man3/EVP_EncodeInit.pod" - ], - "doc/man/man3/EVP_EncryptInit.3" => [ - "doc/man3/EVP_EncryptInit.pod" - ], - "doc/man/man3/EVP_KDF.3" => [ - "doc/man3/EVP_KDF.pod" - ], - "doc/man/man3/EVP_KEM_free.3" => [ - "doc/man3/EVP_KEM_free.pod" - ], - "doc/man/man3/EVP_KEYEXCH_free.3" => [ - "doc/man3/EVP_KEYEXCH_free.pod" - ], - "doc/man/man3/EVP_KEYMGMT.3" => [ - "doc/man3/EVP_KEYMGMT.pod" - ], - "doc/man/man3/EVP_MAC.3" => [ - "doc/man3/EVP_MAC.pod" - ], - "doc/man/man3/EVP_MD_meth_new.3" => [ - "doc/man3/EVP_MD_meth_new.pod" - ], - "doc/man/man3/EVP_OpenInit.3" => [ - "doc/man3/EVP_OpenInit.pod" - ], - "doc/man/man3/EVP_PBE_CipherInit.3" => [ - "doc/man3/EVP_PBE_CipherInit.pod" - ], - "doc/man/man3/EVP_PKEY2PKCS8.3" => [ - "doc/man3/EVP_PKEY2PKCS8.pod" - ], - "doc/man/man3/EVP_PKEY_ASN1_METHOD.3" => [ - "doc/man3/EVP_PKEY_ASN1_METHOD.pod" - ], - "doc/man/man3/EVP_PKEY_CTX_ctrl.3" => [ - "doc/man3/EVP_PKEY_CTX_ctrl.pod" - ], - "doc/man/man3/EVP_PKEY_CTX_get0_libctx.3" => [ - "doc/man3/EVP_PKEY_CTX_get0_libctx.pod" - ], - "doc/man/man3/EVP_PKEY_CTX_get0_pkey.3" => [ - "doc/man3/EVP_PKEY_CTX_get0_pkey.pod" - ], - "doc/man/man3/EVP_PKEY_CTX_get_algor.3" => [ - "doc/man3/EVP_PKEY_CTX_get_algor.pod" - ], - "doc/man/man3/EVP_PKEY_CTX_new.3" => [ - "doc/man3/EVP_PKEY_CTX_new.pod" - ], - "doc/man/man3/EVP_PKEY_CTX_set1_pbe_pass.3" => [ - "doc/man3/EVP_PKEY_CTX_set1_pbe_pass.pod" - ], - "doc/man/man3/EVP_PKEY_CTX_set_hkdf_md.3" => [ - "doc/man3/EVP_PKEY_CTX_set_hkdf_md.pod" - ], - "doc/man/man3/EVP_PKEY_CTX_set_params.3" => [ - "doc/man3/EVP_PKEY_CTX_set_params.pod" - ], - "doc/man/man3/EVP_PKEY_CTX_set_rsa_pss_keygen_md.3" => [ - "doc/man3/EVP_PKEY_CTX_set_rsa_pss_keygen_md.pod" - ], - "doc/man/man3/EVP_PKEY_CTX_set_scrypt_N.3" => [ - "doc/man3/EVP_PKEY_CTX_set_scrypt_N.pod" - ], - "doc/man/man3/EVP_PKEY_CTX_set_tls1_prf_md.3" => [ - "doc/man3/EVP_PKEY_CTX_set_tls1_prf_md.pod" - ], - "doc/man/man3/EVP_PKEY_asn1_get_count.3" => [ - "doc/man3/EVP_PKEY_asn1_get_count.pod" - ], - "doc/man/man3/EVP_PKEY_check.3" => [ - "doc/man3/EVP_PKEY_check.pod" - ], - "doc/man/man3/EVP_PKEY_copy_parameters.3" => [ - "doc/man3/EVP_PKEY_copy_parameters.pod" - ], - "doc/man/man3/EVP_PKEY_decapsulate.3" => [ - "doc/man3/EVP_PKEY_decapsulate.pod" - ], - "doc/man/man3/EVP_PKEY_decrypt.3" => [ - "doc/man3/EVP_PKEY_decrypt.pod" - ], - "doc/man/man3/EVP_PKEY_derive.3" => [ - "doc/man3/EVP_PKEY_derive.pod" - ], - "doc/man/man3/EVP_PKEY_digestsign_supports_digest.3" => [ - "doc/man3/EVP_PKEY_digestsign_supports_digest.pod" - ], - "doc/man/man3/EVP_PKEY_encapsulate.3" => [ - "doc/man3/EVP_PKEY_encapsulate.pod" - ], - "doc/man/man3/EVP_PKEY_encrypt.3" => [ - "doc/man3/EVP_PKEY_encrypt.pod" - ], - "doc/man/man3/EVP_PKEY_fromdata.3" => [ - "doc/man3/EVP_PKEY_fromdata.pod" - ], - "doc/man/man3/EVP_PKEY_get_attr.3" => [ - "doc/man3/EVP_PKEY_get_attr.pod" - ], - "doc/man/man3/EVP_PKEY_get_default_digest_nid.3" => [ - "doc/man3/EVP_PKEY_get_default_digest_nid.pod" - ], - "doc/man/man3/EVP_PKEY_get_field_type.3" => [ - "doc/man3/EVP_PKEY_get_field_type.pod" - ], - "doc/man/man3/EVP_PKEY_get_group_name.3" => [ - "doc/man3/EVP_PKEY_get_group_name.pod" - ], - "doc/man/man3/EVP_PKEY_get_size.3" => [ - "doc/man3/EVP_PKEY_get_size.pod" - ], - "doc/man/man3/EVP_PKEY_gettable_params.3" => [ - "doc/man3/EVP_PKEY_gettable_params.pod" - ], - "doc/man/man3/EVP_PKEY_is_a.3" => [ - "doc/man3/EVP_PKEY_is_a.pod" - ], - "doc/man/man3/EVP_PKEY_keygen.3" => [ - "doc/man3/EVP_PKEY_keygen.pod" - ], - "doc/man/man3/EVP_PKEY_meth_get_count.3" => [ - "doc/man3/EVP_PKEY_meth_get_count.pod" - ], - "doc/man/man3/EVP_PKEY_meth_new.3" => [ - "doc/man3/EVP_PKEY_meth_new.pod" - ], - "doc/man/man3/EVP_PKEY_new.3" => [ - "doc/man3/EVP_PKEY_new.pod" - ], - "doc/man/man3/EVP_PKEY_print_private.3" => [ - "doc/man3/EVP_PKEY_print_private.pod" - ], - "doc/man/man3/EVP_PKEY_set1_RSA.3" => [ - "doc/man3/EVP_PKEY_set1_RSA.pod" - ], - "doc/man/man3/EVP_PKEY_set1_encoded_public_key.3" => [ - "doc/man3/EVP_PKEY_set1_encoded_public_key.pod" - ], - "doc/man/man3/EVP_PKEY_set_type.3" => [ - "doc/man3/EVP_PKEY_set_type.pod" - ], - "doc/man/man3/EVP_PKEY_settable_params.3" => [ - "doc/man3/EVP_PKEY_settable_params.pod" - ], - "doc/man/man3/EVP_PKEY_sign.3" => [ - "doc/man3/EVP_PKEY_sign.pod" - ], - "doc/man/man3/EVP_PKEY_todata.3" => [ - "doc/man3/EVP_PKEY_todata.pod" - ], - "doc/man/man3/EVP_PKEY_verify.3" => [ - "doc/man3/EVP_PKEY_verify.pod" - ], - "doc/man/man3/EVP_PKEY_verify_recover.3" => [ - "doc/man3/EVP_PKEY_verify_recover.pod" - ], - "doc/man/man3/EVP_RAND.3" => [ - "doc/man3/EVP_RAND.pod" - ], - "doc/man/man3/EVP_SIGNATURE.3" => [ - "doc/man3/EVP_SIGNATURE.pod" - ], - "doc/man/man3/EVP_SKEY.3" => [ - "doc/man3/EVP_SKEY.pod" - ], - "doc/man/man3/EVP_SKEYMGMT.3" => [ - "doc/man3/EVP_SKEYMGMT.pod" - ], - "doc/man/man3/EVP_SealInit.3" => [ - "doc/man3/EVP_SealInit.pod" - ], - "doc/man/man3/EVP_SignInit.3" => [ - "doc/man3/EVP_SignInit.pod" - ], - "doc/man/man3/EVP_VerifyInit.3" => [ - "doc/man3/EVP_VerifyInit.pod" - ], - "doc/man/man3/EVP_aes_128_gcm.3" => [ - "doc/man3/EVP_aes_128_gcm.pod" - ], - "doc/man/man3/EVP_aria_128_gcm.3" => [ - "doc/man3/EVP_aria_128_gcm.pod" - ], - "doc/man/man3/EVP_bf_cbc.3" => [ - "doc/man3/EVP_bf_cbc.pod" - ], - "doc/man/man3/EVP_blake2b512.3" => [ - "doc/man3/EVP_blake2b512.pod" - ], - "doc/man/man3/EVP_camellia_128_ecb.3" => [ - "doc/man3/EVP_camellia_128_ecb.pod" - ], - "doc/man/man3/EVP_cast5_cbc.3" => [ - "doc/man3/EVP_cast5_cbc.pod" - ], - "doc/man/man3/EVP_chacha20.3" => [ - "doc/man3/EVP_chacha20.pod" - ], - "doc/man/man3/EVP_des_cbc.3" => [ - "doc/man3/EVP_des_cbc.pod" - ], - "doc/man/man3/EVP_desx_cbc.3" => [ - "doc/man3/EVP_desx_cbc.pod" - ], - "doc/man/man3/EVP_idea_cbc.3" => [ - "doc/man3/EVP_idea_cbc.pod" - ], - "doc/man/man3/EVP_md2.3" => [ - "doc/man3/EVP_md2.pod" - ], - "doc/man/man3/EVP_md4.3" => [ - "doc/man3/EVP_md4.pod" - ], - "doc/man/man3/EVP_md5.3" => [ - "doc/man3/EVP_md5.pod" - ], - "doc/man/man3/EVP_mdc2.3" => [ - "doc/man3/EVP_mdc2.pod" - ], - "doc/man/man3/EVP_rc2_cbc.3" => [ - "doc/man3/EVP_rc2_cbc.pod" - ], - "doc/man/man3/EVP_rc4.3" => [ - "doc/man3/EVP_rc4.pod" - ], - "doc/man/man3/EVP_rc5_32_12_16_cbc.3" => [ - "doc/man3/EVP_rc5_32_12_16_cbc.pod" - ], - "doc/man/man3/EVP_ripemd160.3" => [ - "doc/man3/EVP_ripemd160.pod" - ], - "doc/man/man3/EVP_seed_cbc.3" => [ - "doc/man3/EVP_seed_cbc.pod" - ], - "doc/man/man3/EVP_set_default_properties.3" => [ - "doc/man3/EVP_set_default_properties.pod" - ], - "doc/man/man3/EVP_sha1.3" => [ - "doc/man3/EVP_sha1.pod" - ], - "doc/man/man3/EVP_sha224.3" => [ - "doc/man3/EVP_sha224.pod" - ], - "doc/man/man3/EVP_sha3_224.3" => [ - "doc/man3/EVP_sha3_224.pod" - ], - "doc/man/man3/EVP_sm3.3" => [ - "doc/man3/EVP_sm3.pod" - ], - "doc/man/man3/EVP_sm4_cbc.3" => [ - "doc/man3/EVP_sm4_cbc.pod" - ], - "doc/man/man3/EVP_whirlpool.3" => [ - "doc/man3/EVP_whirlpool.pod" - ], - "doc/man/man3/GENERAL_NAME.3" => [ - "doc/man3/GENERAL_NAME.pod" - ], - "doc/man/man3/HMAC.3" => [ - "doc/man3/HMAC.pod" - ], - "doc/man/man3/MD5.3" => [ - "doc/man3/MD5.pod" - ], - "doc/man/man3/MDC2_Init.3" => [ - "doc/man3/MDC2_Init.pod" - ], - "doc/man/man3/NCONF_new_ex.3" => [ - "doc/man3/NCONF_new_ex.pod" - ], - "doc/man/man3/OBJ_nid2obj.3" => [ - "doc/man3/OBJ_nid2obj.pod" - ], - "doc/man/man3/OCSP_REQUEST_new.3" => [ - "doc/man3/OCSP_REQUEST_new.pod" - ], - "doc/man/man3/OCSP_cert_to_id.3" => [ - "doc/man3/OCSP_cert_to_id.pod" - ], - "doc/man/man3/OCSP_request_add1_nonce.3" => [ - "doc/man3/OCSP_request_add1_nonce.pod" - ], - "doc/man/man3/OCSP_resp_find_status.3" => [ - "doc/man3/OCSP_resp_find_status.pod" - ], - "doc/man/man3/OCSP_response_status.3" => [ - "doc/man3/OCSP_response_status.pod" - ], - "doc/man/man3/OCSP_sendreq_new.3" => [ - "doc/man3/OCSP_sendreq_new.pod" - ], - "doc/man/man3/OPENSSL_Applink.3" => [ - "doc/man3/OPENSSL_Applink.pod" - ], - "doc/man/man3/OPENSSL_FILE.3" => [ - "doc/man3/OPENSSL_FILE.pod" - ], - "doc/man/man3/OPENSSL_LH_COMPFUNC.3" => [ - "doc/man3/OPENSSL_LH_COMPFUNC.pod" - ], - "doc/man/man3/OPENSSL_LH_stats.3" => [ - "doc/man3/OPENSSL_LH_stats.pod" - ], - "doc/man/man3/OPENSSL_config.3" => [ - "doc/man3/OPENSSL_config.pod" - ], - "doc/man/man3/OPENSSL_fork_prepare.3" => [ - "doc/man3/OPENSSL_fork_prepare.pod" - ], - "doc/man/man3/OPENSSL_gmtime.3" => [ - "doc/man3/OPENSSL_gmtime.pod" - ], - "doc/man/man3/OPENSSL_hexchar2int.3" => [ - "doc/man3/OPENSSL_hexchar2int.pod" - ], - "doc/man/man3/OPENSSL_ia32cap.3" => [ - "doc/man3/OPENSSL_ia32cap.pod" - ], - "doc/man/man3/OPENSSL_init_crypto.3" => [ - "doc/man3/OPENSSL_init_crypto.pod" - ], - "doc/man/man3/OPENSSL_init_ssl.3" => [ - "doc/man3/OPENSSL_init_ssl.pod" - ], - "doc/man/man3/OPENSSL_instrument_bus.3" => [ - "doc/man3/OPENSSL_instrument_bus.pod" - ], - "doc/man/man3/OPENSSL_load_builtin_modules.3" => [ - "doc/man3/OPENSSL_load_builtin_modules.pod" - ], - "doc/man/man3/OPENSSL_load_u16_le.3" => [ - "doc/man3/OPENSSL_load_u16_le.pod" - ], - "doc/man/man3/OPENSSL_malloc.3" => [ - "doc/man3/OPENSSL_malloc.pod" - ], - "doc/man/man3/OPENSSL_riscvcap.3" => [ - "doc/man3/OPENSSL_riscvcap.pod" - ], - "doc/man/man3/OPENSSL_s390xcap.3" => [ - "doc/man3/OPENSSL_s390xcap.pod" - ], - "doc/man/man3/OPENSSL_secure_malloc.3" => [ - "doc/man3/OPENSSL_secure_malloc.pod" - ], - "doc/man/man3/OPENSSL_strcasecmp.3" => [ - "doc/man3/OPENSSL_strcasecmp.pod" - ], - "doc/man/man3/OSSL_ALGORITHM.3" => [ - "doc/man3/OSSL_ALGORITHM.pod" - ], - "doc/man/man3/OSSL_CALLBACK.3" => [ - "doc/man3/OSSL_CALLBACK.pod" - ], - "doc/man/man3/OSSL_CMP_ATAV_set0.3" => [ - "doc/man3/OSSL_CMP_ATAV_set0.pod" - ], - "doc/man/man3/OSSL_CMP_CTX_new.3" => [ - "doc/man3/OSSL_CMP_CTX_new.pod" - ], - "doc/man/man3/OSSL_CMP_HDR_get0_transactionID.3" => [ - "doc/man3/OSSL_CMP_HDR_get0_transactionID.pod" - ], - "doc/man/man3/OSSL_CMP_ITAV_new_caCerts.3" => [ - "doc/man3/OSSL_CMP_ITAV_new_caCerts.pod" - ], - "doc/man/man3/OSSL_CMP_ITAV_set0.3" => [ - "doc/man3/OSSL_CMP_ITAV_set0.pod" - ], - "doc/man/man3/OSSL_CMP_MSG_get0_header.3" => [ - "doc/man3/OSSL_CMP_MSG_get0_header.pod" - ], - "doc/man/man3/OSSL_CMP_MSG_http_perform.3" => [ - "doc/man3/OSSL_CMP_MSG_http_perform.pod" - ], - "doc/man/man3/OSSL_CMP_SRV_CTX_new.3" => [ - "doc/man3/OSSL_CMP_SRV_CTX_new.pod" - ], - "doc/man/man3/OSSL_CMP_STATUSINFO_new.3" => [ - "doc/man3/OSSL_CMP_STATUSINFO_new.pod" - ], - "doc/man/man3/OSSL_CMP_exec_certreq.3" => [ - "doc/man3/OSSL_CMP_exec_certreq.pod" - ], - "doc/man/man3/OSSL_CMP_log_open.3" => [ - "doc/man3/OSSL_CMP_log_open.pod" - ], - "doc/man/man3/OSSL_CMP_validate_msg.3" => [ - "doc/man3/OSSL_CMP_validate_msg.pod" - ], - "doc/man/man3/OSSL_CORE_MAKE_FUNC.3" => [ - "doc/man3/OSSL_CORE_MAKE_FUNC.pod" - ], - "doc/man/man3/OSSL_CRMF_MSG_get0_tmpl.3" => [ - "doc/man3/OSSL_CRMF_MSG_get0_tmpl.pod" - ], - "doc/man/man3/OSSL_CRMF_MSG_set0_validity.3" => [ - "doc/man3/OSSL_CRMF_MSG_set0_validity.pod" - ], - "doc/man/man3/OSSL_CRMF_MSG_set1_regCtrl_regToken.3" => [ - "doc/man3/OSSL_CRMF_MSG_set1_regCtrl_regToken.pod" - ], - "doc/man/man3/OSSL_CRMF_MSG_set1_regInfo_certReq.3" => [ - "doc/man3/OSSL_CRMF_MSG_set1_regInfo_certReq.pod" - ], - "doc/man/man3/OSSL_CRMF_pbmp_new.3" => [ - "doc/man3/OSSL_CRMF_pbmp_new.pod" - ], - "doc/man/man3/OSSL_DECODER.3" => [ - "doc/man3/OSSL_DECODER.pod" - ], - "doc/man/man3/OSSL_DECODER_CTX.3" => [ - "doc/man3/OSSL_DECODER_CTX.pod" - ], - "doc/man/man3/OSSL_DECODER_CTX_new_for_pkey.3" => [ - "doc/man3/OSSL_DECODER_CTX_new_for_pkey.pod" - ], - "doc/man/man3/OSSL_DECODER_from_bio.3" => [ - "doc/man3/OSSL_DECODER_from_bio.pod" - ], - "doc/man/man3/OSSL_DISPATCH.3" => [ - "doc/man3/OSSL_DISPATCH.pod" - ], - "doc/man/man3/OSSL_ENCODER.3" => [ - "doc/man3/OSSL_ENCODER.pod" - ], - "doc/man/man3/OSSL_ENCODER_CTX.3" => [ - "doc/man3/OSSL_ENCODER_CTX.pod" - ], - "doc/man/man3/OSSL_ENCODER_CTX_new_for_pkey.3" => [ - "doc/man3/OSSL_ENCODER_CTX_new_for_pkey.pod" - ], - "doc/man/man3/OSSL_ENCODER_to_bio.3" => [ - "doc/man3/OSSL_ENCODER_to_bio.pod" - ], - "doc/man/man3/OSSL_ERR_STATE_save.3" => [ - "doc/man3/OSSL_ERR_STATE_save.pod" - ], - "doc/man/man3/OSSL_ESS_check_signing_certs.3" => [ - "doc/man3/OSSL_ESS_check_signing_certs.pod" - ], - "doc/man/man3/OSSL_GENERAL_NAMES_print.3" => [ - "doc/man3/OSSL_GENERAL_NAMES_print.pod" - ], - "doc/man/man3/OSSL_HPKE_CTX_new.3" => [ - "doc/man3/OSSL_HPKE_CTX_new.pod" - ], - "doc/man/man3/OSSL_HTTP_REQ_CTX.3" => [ - "doc/man3/OSSL_HTTP_REQ_CTX.pod" - ], - "doc/man/man3/OSSL_HTTP_parse_url.3" => [ - "doc/man3/OSSL_HTTP_parse_url.pod" - ], - "doc/man/man3/OSSL_HTTP_transfer.3" => [ - "doc/man3/OSSL_HTTP_transfer.pod" - ], - "doc/man/man3/OSSL_IETF_ATTR_SYNTAX.3" => [ - "doc/man3/OSSL_IETF_ATTR_SYNTAX.pod" - ], - "doc/man/man3/OSSL_IETF_ATTR_SYNTAX_print.3" => [ - "doc/man3/OSSL_IETF_ATTR_SYNTAX_print.pod" - ], - "doc/man/man3/OSSL_INDICATOR_set_callback.3" => [ - "doc/man3/OSSL_INDICATOR_set_callback.pod" - ], - "doc/man/man3/OSSL_ITEM.3" => [ - "doc/man3/OSSL_ITEM.pod" - ], - "doc/man/man3/OSSL_LIB_CTX.3" => [ - "doc/man3/OSSL_LIB_CTX.pod" - ], - "doc/man/man3/OSSL_LIB_CTX_set_conf_diagnostics.3" => [ - "doc/man3/OSSL_LIB_CTX_set_conf_diagnostics.pod" - ], - "doc/man/man3/OSSL_PARAM.3" => [ - "doc/man3/OSSL_PARAM.pod" - ], - "doc/man/man3/OSSL_PARAM_BLD.3" => [ - "doc/man3/OSSL_PARAM_BLD.pod" - ], - "doc/man/man3/OSSL_PARAM_allocate_from_text.3" => [ - "doc/man3/OSSL_PARAM_allocate_from_text.pod" - ], - "doc/man/man3/OSSL_PARAM_dup.3" => [ - "doc/man3/OSSL_PARAM_dup.pod" - ], - "doc/man/man3/OSSL_PARAM_int.3" => [ - "doc/man3/OSSL_PARAM_int.pod" - ], - "doc/man/man3/OSSL_PARAM_print_to_bio.3" => [ - "doc/man3/OSSL_PARAM_print_to_bio.pod" - ], - "doc/man/man3/OSSL_PROVIDER.3" => [ - "doc/man3/OSSL_PROVIDER.pod" - ], - "doc/man/man3/OSSL_QUIC_client_method.3" => [ - "doc/man3/OSSL_QUIC_client_method.pod" - ], - "doc/man/man3/OSSL_SELF_TEST_new.3" => [ - "doc/man3/OSSL_SELF_TEST_new.pod" - ], - "doc/man/man3/OSSL_SELF_TEST_set_callback.3" => [ - "doc/man3/OSSL_SELF_TEST_set_callback.pod" - ], - "doc/man/man3/OSSL_STORE_INFO.3" => [ - "doc/man3/OSSL_STORE_INFO.pod" - ], - "doc/man/man3/OSSL_STORE_LOADER.3" => [ - "doc/man3/OSSL_STORE_LOADER.pod" - ], - "doc/man/man3/OSSL_STORE_SEARCH.3" => [ - "doc/man3/OSSL_STORE_SEARCH.pod" - ], - "doc/man/man3/OSSL_STORE_attach.3" => [ - "doc/man3/OSSL_STORE_attach.pod" - ], - "doc/man/man3/OSSL_STORE_expect.3" => [ - "doc/man3/OSSL_STORE_expect.pod" - ], - "doc/man/man3/OSSL_STORE_open.3" => [ - "doc/man3/OSSL_STORE_open.pod" - ], - "doc/man/man3/OSSL_sleep.3" => [ - "doc/man3/OSSL_sleep.pod" - ], - "doc/man/man3/OSSL_trace_enabled.3" => [ - "doc/man3/OSSL_trace_enabled.pod" - ], - "doc/man/man3/OSSL_trace_get_category_num.3" => [ - "doc/man3/OSSL_trace_get_category_num.pod" - ], - "doc/man/man3/OSSL_trace_set_channel.3" => [ - "doc/man3/OSSL_trace_set_channel.pod" - ], - "doc/man/man3/OpenSSL_add_all_algorithms.3" => [ - "doc/man3/OpenSSL_add_all_algorithms.pod" - ], - "doc/man/man3/OpenSSL_version.3" => [ - "doc/man3/OpenSSL_version.pod" - ], - "doc/man/man3/PBMAC1_get1_pbkdf2_param.3" => [ - "doc/man3/PBMAC1_get1_pbkdf2_param.pod" - ], - "doc/man/man3/PEM_X509_INFO_read_bio_ex.3" => [ - "doc/man3/PEM_X509_INFO_read_bio_ex.pod" - ], - "doc/man/man3/PEM_bytes_read_bio.3" => [ - "doc/man3/PEM_bytes_read_bio.pod" - ], - "doc/man/man3/PEM_read.3" => [ - "doc/man3/PEM_read.pod" - ], - "doc/man/man3/PEM_read_CMS.3" => [ - "doc/man3/PEM_read_CMS.pod" - ], - "doc/man/man3/PEM_read_bio_PrivateKey.3" => [ - "doc/man3/PEM_read_bio_PrivateKey.pod" - ], - "doc/man/man3/PEM_read_bio_ex.3" => [ - "doc/man3/PEM_read_bio_ex.pod" - ], - "doc/man/man3/PEM_write_bio_CMS_stream.3" => [ - "doc/man3/PEM_write_bio_CMS_stream.pod" - ], - "doc/man/man3/PEM_write_bio_PKCS7_stream.3" => [ - "doc/man3/PEM_write_bio_PKCS7_stream.pod" - ], - "doc/man/man3/PKCS12_PBE_keyivgen.3" => [ - "doc/man3/PKCS12_PBE_keyivgen.pod" - ], - "doc/man/man3/PKCS12_SAFEBAG_create_cert.3" => [ - "doc/man3/PKCS12_SAFEBAG_create_cert.pod" - ], - "doc/man/man3/PKCS12_SAFEBAG_get0_attrs.3" => [ - "doc/man3/PKCS12_SAFEBAG_get0_attrs.pod" - ], - "doc/man/man3/PKCS12_SAFEBAG_get1_cert.3" => [ - "doc/man3/PKCS12_SAFEBAG_get1_cert.pod" - ], - "doc/man/man3/PKCS12_SAFEBAG_set0_attrs.3" => [ - "doc/man3/PKCS12_SAFEBAG_set0_attrs.pod" - ], - "doc/man/man3/PKCS12_add1_attr_by_NID.3" => [ - "doc/man3/PKCS12_add1_attr_by_NID.pod" - ], - "doc/man/man3/PKCS12_add_CSPName_asc.3" => [ - "doc/man3/PKCS12_add_CSPName_asc.pod" - ], - "doc/man/man3/PKCS12_add_cert.3" => [ - "doc/man3/PKCS12_add_cert.pod" - ], - "doc/man/man3/PKCS12_add_friendlyname_asc.3" => [ - "doc/man3/PKCS12_add_friendlyname_asc.pod" - ], - "doc/man/man3/PKCS12_add_localkeyid.3" => [ - "doc/man3/PKCS12_add_localkeyid.pod" - ], - "doc/man/man3/PKCS12_add_safe.3" => [ - "doc/man3/PKCS12_add_safe.pod" - ], - "doc/man/man3/PKCS12_create.3" => [ - "doc/man3/PKCS12_create.pod" - ], - "doc/man/man3/PKCS12_decrypt_skey.3" => [ - "doc/man3/PKCS12_decrypt_skey.pod" - ], - "doc/man/man3/PKCS12_gen_mac.3" => [ - "doc/man3/PKCS12_gen_mac.pod" - ], - "doc/man/man3/PKCS12_get_friendlyname.3" => [ - "doc/man3/PKCS12_get_friendlyname.pod" - ], - "doc/man/man3/PKCS12_init.3" => [ - "doc/man3/PKCS12_init.pod" - ], - "doc/man/man3/PKCS12_item_decrypt_d2i.3" => [ - "doc/man3/PKCS12_item_decrypt_d2i.pod" - ], - "doc/man/man3/PKCS12_key_gen_utf8_ex.3" => [ - "doc/man3/PKCS12_key_gen_utf8_ex.pod" - ], - "doc/man/man3/PKCS12_newpass.3" => [ - "doc/man3/PKCS12_newpass.pod" - ], - "doc/man/man3/PKCS12_pack_p7encdata.3" => [ - "doc/man3/PKCS12_pack_p7encdata.pod" - ], - "doc/man/man3/PKCS12_parse.3" => [ - "doc/man3/PKCS12_parse.pod" - ], - "doc/man/man3/PKCS5_PBE_keyivgen.3" => [ - "doc/man3/PKCS5_PBE_keyivgen.pod" - ], - "doc/man/man3/PKCS5_PBKDF2_HMAC.3" => [ - "doc/man3/PKCS5_PBKDF2_HMAC.pod" - ], - "doc/man/man3/PKCS7_decrypt.3" => [ - "doc/man3/PKCS7_decrypt.pod" - ], - "doc/man/man3/PKCS7_encrypt.3" => [ - "doc/man3/PKCS7_encrypt.pod" - ], - "doc/man/man3/PKCS7_get_octet_string.3" => [ - "doc/man3/PKCS7_get_octet_string.pod" - ], - "doc/man/man3/PKCS7_sign.3" => [ - "doc/man3/PKCS7_sign.pod" - ], - "doc/man/man3/PKCS7_sign_add_signer.3" => [ - "doc/man3/PKCS7_sign_add_signer.pod" - ], - "doc/man/man3/PKCS7_type_is_other.3" => [ - "doc/man3/PKCS7_type_is_other.pod" - ], - "doc/man/man3/PKCS7_verify.3" => [ - "doc/man3/PKCS7_verify.pod" - ], - "doc/man/man3/PKCS8_encrypt.3" => [ - "doc/man3/PKCS8_encrypt.pod" - ], - "doc/man/man3/PKCS8_pkey_add1_attr.3" => [ - "doc/man3/PKCS8_pkey_add1_attr.pod" - ], - "doc/man/man3/RAND_add.3" => [ - "doc/man3/RAND_add.pod" - ], - "doc/man/man3/RAND_bytes.3" => [ - "doc/man3/RAND_bytes.pod" - ], - "doc/man/man3/RAND_cleanup.3" => [ - "doc/man3/RAND_cleanup.pod" - ], - "doc/man/man3/RAND_egd.3" => [ - "doc/man3/RAND_egd.pod" - ], - "doc/man/man3/RAND_get0_primary.3" => [ - "doc/man3/RAND_get0_primary.pod" - ], - "doc/man/man3/RAND_load_file.3" => [ - "doc/man3/RAND_load_file.pod" - ], - "doc/man/man3/RAND_set_DRBG_type.3" => [ - "doc/man3/RAND_set_DRBG_type.pod" - ], - "doc/man/man3/RAND_set_rand_method.3" => [ - "doc/man3/RAND_set_rand_method.pod" - ], - "doc/man/man3/RC4_set_key.3" => [ - "doc/man3/RC4_set_key.pod" - ], - "doc/man/man3/RIPEMD160_Init.3" => [ - "doc/man3/RIPEMD160_Init.pod" - ], - "doc/man/man3/RSA_blinding_on.3" => [ - "doc/man3/RSA_blinding_on.pod" - ], - "doc/man/man3/RSA_check_key.3" => [ - "doc/man3/RSA_check_key.pod" - ], - "doc/man/man3/RSA_generate_key.3" => [ - "doc/man3/RSA_generate_key.pod" - ], - "doc/man/man3/RSA_get0_key.3" => [ - "doc/man3/RSA_get0_key.pod" - ], - "doc/man/man3/RSA_meth_new.3" => [ - "doc/man3/RSA_meth_new.pod" - ], - "doc/man/man3/RSA_new.3" => [ - "doc/man3/RSA_new.pod" - ], - "doc/man/man3/RSA_padding_add_PKCS1_type_1.3" => [ - "doc/man3/RSA_padding_add_PKCS1_type_1.pod" - ], - "doc/man/man3/RSA_print.3" => [ - "doc/man3/RSA_print.pod" - ], - "doc/man/man3/RSA_private_encrypt.3" => [ - "doc/man3/RSA_private_encrypt.pod" - ], - "doc/man/man3/RSA_public_encrypt.3" => [ - "doc/man3/RSA_public_encrypt.pod" - ], - "doc/man/man3/RSA_set_method.3" => [ - "doc/man3/RSA_set_method.pod" - ], - "doc/man/man3/RSA_sign.3" => [ - "doc/man3/RSA_sign.pod" - ], - "doc/man/man3/RSA_sign_ASN1_OCTET_STRING.3" => [ - "doc/man3/RSA_sign_ASN1_OCTET_STRING.pod" - ], - "doc/man/man3/RSA_size.3" => [ - "doc/man3/RSA_size.pod" - ], - "doc/man/man3/SCT_new.3" => [ - "doc/man3/SCT_new.pod" - ], - "doc/man/man3/SCT_print.3" => [ - "doc/man3/SCT_print.pod" - ], - "doc/man/man3/SCT_validate.3" => [ - "doc/man3/SCT_validate.pod" - ], - "doc/man/man3/SHA256_Init.3" => [ - "doc/man3/SHA256_Init.pod" - ], - "doc/man/man3/SMIME_read_ASN1.3" => [ - "doc/man3/SMIME_read_ASN1.pod" - ], - "doc/man/man3/SMIME_read_CMS.3" => [ - "doc/man3/SMIME_read_CMS.pod" - ], - "doc/man/man3/SMIME_read_PKCS7.3" => [ - "doc/man3/SMIME_read_PKCS7.pod" - ], - "doc/man/man3/SMIME_write_ASN1.3" => [ - "doc/man3/SMIME_write_ASN1.pod" - ], - "doc/man/man3/SMIME_write_CMS.3" => [ - "doc/man3/SMIME_write_CMS.pod" - ], - "doc/man/man3/SMIME_write_PKCS7.3" => [ - "doc/man3/SMIME_write_PKCS7.pod" - ], - "doc/man/man3/SRP_Calc_B.3" => [ - "doc/man3/SRP_Calc_B.pod" - ], - "doc/man/man3/SRP_VBASE_new.3" => [ - "doc/man3/SRP_VBASE_new.pod" - ], - "doc/man/man3/SRP_create_verifier.3" => [ - "doc/man3/SRP_create_verifier.pod" - ], - "doc/man/man3/SRP_user_pwd_new.3" => [ - "doc/man3/SRP_user_pwd_new.pod" - ], - "doc/man/man3/SSL_CIPHER_get_name.3" => [ - "doc/man3/SSL_CIPHER_get_name.pod" - ], - "doc/man/man3/SSL_COMP_add_compression_method.3" => [ - "doc/man3/SSL_COMP_add_compression_method.pod" - ], - "doc/man/man3/SSL_CONF_CTX_new.3" => [ - "doc/man3/SSL_CONF_CTX_new.pod" - ], - "doc/man/man3/SSL_CONF_CTX_set1_prefix.3" => [ - "doc/man3/SSL_CONF_CTX_set1_prefix.pod" - ], - "doc/man/man3/SSL_CONF_CTX_set_flags.3" => [ - "doc/man3/SSL_CONF_CTX_set_flags.pod" - ], - "doc/man/man3/SSL_CONF_CTX_set_ssl_ctx.3" => [ - "doc/man3/SSL_CONF_CTX_set_ssl_ctx.pod" - ], - "doc/man/man3/SSL_CONF_cmd.3" => [ - "doc/man3/SSL_CONF_cmd.pod" - ], - "doc/man/man3/SSL_CONF_cmd_argv.3" => [ - "doc/man3/SSL_CONF_cmd_argv.pod" - ], - "doc/man/man3/SSL_CTX_add1_chain_cert.3" => [ - "doc/man3/SSL_CTX_add1_chain_cert.pod" - ], - "doc/man/man3/SSL_CTX_add_extra_chain_cert.3" => [ - "doc/man3/SSL_CTX_add_extra_chain_cert.pod" - ], - "doc/man/man3/SSL_CTX_add_session.3" => [ - "doc/man3/SSL_CTX_add_session.pod" - ], - "doc/man/man3/SSL_CTX_config.3" => [ - "doc/man3/SSL_CTX_config.pod" - ], - "doc/man/man3/SSL_CTX_ctrl.3" => [ - "doc/man3/SSL_CTX_ctrl.pod" - ], - "doc/man/man3/SSL_CTX_dane_enable.3" => [ - "doc/man3/SSL_CTX_dane_enable.pod" - ], - "doc/man/man3/SSL_CTX_flush_sessions.3" => [ - "doc/man3/SSL_CTX_flush_sessions.pod" - ], - "doc/man/man3/SSL_CTX_free.3" => [ - "doc/man3/SSL_CTX_free.pod" - ], - "doc/man/man3/SSL_CTX_get0_param.3" => [ - "doc/man3/SSL_CTX_get0_param.pod" - ], - "doc/man/man3/SSL_CTX_get_verify_mode.3" => [ - "doc/man3/SSL_CTX_get_verify_mode.pod" - ], - "doc/man/man3/SSL_CTX_has_client_custom_ext.3" => [ - "doc/man3/SSL_CTX_has_client_custom_ext.pod" - ], - "doc/man/man3/SSL_CTX_load_verify_locations.3" => [ - "doc/man3/SSL_CTX_load_verify_locations.pod" - ], - "doc/man/man3/SSL_CTX_new.3" => [ - "doc/man3/SSL_CTX_new.pod" - ], - "doc/man/man3/SSL_CTX_sess_number.3" => [ - "doc/man3/SSL_CTX_sess_number.pod" - ], - "doc/man/man3/SSL_CTX_sess_set_cache_size.3" => [ - "doc/man3/SSL_CTX_sess_set_cache_size.pod" - ], - "doc/man/man3/SSL_CTX_sess_set_get_cb.3" => [ - "doc/man3/SSL_CTX_sess_set_get_cb.pod" - ], - "doc/man/man3/SSL_CTX_sessions.3" => [ - "doc/man3/SSL_CTX_sessions.pod" - ], - "doc/man/man3/SSL_CTX_set0_CA_list.3" => [ - "doc/man3/SSL_CTX_set0_CA_list.pod" - ], - "doc/man/man3/SSL_CTX_set1_cert_comp_preference.3" => [ - "doc/man3/SSL_CTX_set1_cert_comp_preference.pod" - ], - "doc/man/man3/SSL_CTX_set1_curves.3" => [ - "doc/man3/SSL_CTX_set1_curves.pod" - ], - "doc/man/man3/SSL_CTX_set1_sigalgs.3" => [ - "doc/man3/SSL_CTX_set1_sigalgs.pod" - ], - "doc/man/man3/SSL_CTX_set1_verify_cert_store.3" => [ - "doc/man3/SSL_CTX_set1_verify_cert_store.pod" - ], - "doc/man/man3/SSL_CTX_set_alpn_select_cb.3" => [ - "doc/man3/SSL_CTX_set_alpn_select_cb.pod" - ], - "doc/man/man3/SSL_CTX_set_cert_cb.3" => [ - "doc/man3/SSL_CTX_set_cert_cb.pod" - ], - "doc/man/man3/SSL_CTX_set_cert_store.3" => [ - "doc/man3/SSL_CTX_set_cert_store.pod" - ], - "doc/man/man3/SSL_CTX_set_cert_verify_callback.3" => [ - "doc/man3/SSL_CTX_set_cert_verify_callback.pod" - ], - "doc/man/man3/SSL_CTX_set_cipher_list.3" => [ - "doc/man3/SSL_CTX_set_cipher_list.pod" - ], - "doc/man/man3/SSL_CTX_set_client_cert_cb.3" => [ - "doc/man3/SSL_CTX_set_client_cert_cb.pod" - ], - "doc/man/man3/SSL_CTX_set_client_hello_cb.3" => [ - "doc/man3/SSL_CTX_set_client_hello_cb.pod" - ], - "doc/man/man3/SSL_CTX_set_ct_validation_callback.3" => [ - "doc/man3/SSL_CTX_set_ct_validation_callback.pod" - ], - "doc/man/man3/SSL_CTX_set_ctlog_list_file.3" => [ - "doc/man3/SSL_CTX_set_ctlog_list_file.pod" - ], - "doc/man/man3/SSL_CTX_set_default_passwd_cb.3" => [ - "doc/man3/SSL_CTX_set_default_passwd_cb.pod" - ], - "doc/man/man3/SSL_CTX_set_domain_flags.3" => [ - "doc/man3/SSL_CTX_set_domain_flags.pod" - ], - "doc/man/man3/SSL_CTX_set_generate_session_id.3" => [ - "doc/man3/SSL_CTX_set_generate_session_id.pod" - ], - "doc/man/man3/SSL_CTX_set_info_callback.3" => [ - "doc/man3/SSL_CTX_set_info_callback.pod" - ], - "doc/man/man3/SSL_CTX_set_keylog_callback.3" => [ - "doc/man3/SSL_CTX_set_keylog_callback.pod" - ], - "doc/man/man3/SSL_CTX_set_max_cert_list.3" => [ - "doc/man3/SSL_CTX_set_max_cert_list.pod" - ], - "doc/man/man3/SSL_CTX_set_min_proto_version.3" => [ - "doc/man3/SSL_CTX_set_min_proto_version.pod" - ], - "doc/man/man3/SSL_CTX_set_mode.3" => [ - "doc/man3/SSL_CTX_set_mode.pod" - ], - "doc/man/man3/SSL_CTX_set_msg_callback.3" => [ - "doc/man3/SSL_CTX_set_msg_callback.pod" - ], - "doc/man/man3/SSL_CTX_set_new_pending_conn_cb.3" => [ - "doc/man3/SSL_CTX_set_new_pending_conn_cb.pod" - ], - "doc/man/man3/SSL_CTX_set_num_tickets.3" => [ - "doc/man3/SSL_CTX_set_num_tickets.pod" - ], - "doc/man/man3/SSL_CTX_set_options.3" => [ - "doc/man3/SSL_CTX_set_options.pod" - ], - "doc/man/man3/SSL_CTX_set_psk_client_callback.3" => [ - "doc/man3/SSL_CTX_set_psk_client_callback.pod" - ], - "doc/man/man3/SSL_CTX_set_quiet_shutdown.3" => [ - "doc/man3/SSL_CTX_set_quiet_shutdown.pod" - ], - "doc/man/man3/SSL_CTX_set_read_ahead.3" => [ - "doc/man3/SSL_CTX_set_read_ahead.pod" - ], - "doc/man/man3/SSL_CTX_set_record_padding_callback.3" => [ - "doc/man3/SSL_CTX_set_record_padding_callback.pod" - ], - "doc/man/man3/SSL_CTX_set_security_level.3" => [ - "doc/man3/SSL_CTX_set_security_level.pod" - ], - "doc/man/man3/SSL_CTX_set_session_cache_mode.3" => [ - "doc/man3/SSL_CTX_set_session_cache_mode.pod" - ], - "doc/man/man3/SSL_CTX_set_session_id_context.3" => [ - "doc/man3/SSL_CTX_set_session_id_context.pod" - ], - "doc/man/man3/SSL_CTX_set_session_ticket_cb.3" => [ - "doc/man3/SSL_CTX_set_session_ticket_cb.pod" - ], - "doc/man/man3/SSL_CTX_set_split_send_fragment.3" => [ - "doc/man3/SSL_CTX_set_split_send_fragment.pod" - ], - "doc/man/man3/SSL_CTX_set_srp_password.3" => [ - "doc/man3/SSL_CTX_set_srp_password.pod" - ], - "doc/man/man3/SSL_CTX_set_ssl_version.3" => [ - "doc/man3/SSL_CTX_set_ssl_version.pod" - ], - "doc/man/man3/SSL_CTX_set_stateless_cookie_generate_cb.3" => [ - "doc/man3/SSL_CTX_set_stateless_cookie_generate_cb.pod" - ], - "doc/man/man3/SSL_CTX_set_timeout.3" => [ - "doc/man3/SSL_CTX_set_timeout.pod" - ], - "doc/man/man3/SSL_CTX_set_tlsext_servername_callback.3" => [ - "doc/man3/SSL_CTX_set_tlsext_servername_callback.pod" - ], - "doc/man/man3/SSL_CTX_set_tlsext_status_cb.3" => [ - "doc/man3/SSL_CTX_set_tlsext_status_cb.pod" - ], - "doc/man/man3/SSL_CTX_set_tlsext_ticket_key_cb.3" => [ - "doc/man3/SSL_CTX_set_tlsext_ticket_key_cb.pod" - ], - "doc/man/man3/SSL_CTX_set_tlsext_use_srtp.3" => [ - "doc/man3/SSL_CTX_set_tlsext_use_srtp.pod" - ], - "doc/man/man3/SSL_CTX_set_tmp_dh_callback.3" => [ - "doc/man3/SSL_CTX_set_tmp_dh_callback.pod" - ], - "doc/man/man3/SSL_CTX_set_tmp_ecdh.3" => [ - "doc/man3/SSL_CTX_set_tmp_ecdh.pod" - ], - "doc/man/man3/SSL_CTX_set_verify.3" => [ - "doc/man3/SSL_CTX_set_verify.pod" - ], - "doc/man/man3/SSL_CTX_use_certificate.3" => [ - "doc/man3/SSL_CTX_use_certificate.pod" - ], - "doc/man/man3/SSL_CTX_use_psk_identity_hint.3" => [ - "doc/man3/SSL_CTX_use_psk_identity_hint.pod" - ], - "doc/man/man3/SSL_CTX_use_serverinfo.3" => [ - "doc/man3/SSL_CTX_use_serverinfo.pod" - ], - "doc/man/man3/SSL_SESSION_free.3" => [ - "doc/man3/SSL_SESSION_free.pod" - ], - "doc/man/man3/SSL_SESSION_get0_cipher.3" => [ - "doc/man3/SSL_SESSION_get0_cipher.pod" - ], - "doc/man/man3/SSL_SESSION_get0_hostname.3" => [ - "doc/man3/SSL_SESSION_get0_hostname.pod" - ], - "doc/man/man3/SSL_SESSION_get0_id_context.3" => [ - "doc/man3/SSL_SESSION_get0_id_context.pod" - ], - "doc/man/man3/SSL_SESSION_get0_peer.3" => [ - "doc/man3/SSL_SESSION_get0_peer.pod" - ], - "doc/man/man3/SSL_SESSION_get_compress_id.3" => [ - "doc/man3/SSL_SESSION_get_compress_id.pod" - ], - "doc/man/man3/SSL_SESSION_get_protocol_version.3" => [ - "doc/man3/SSL_SESSION_get_protocol_version.pod" - ], - "doc/man/man3/SSL_SESSION_get_time.3" => [ - "doc/man3/SSL_SESSION_get_time.pod" - ], - "doc/man/man3/SSL_SESSION_has_ticket.3" => [ - "doc/man3/SSL_SESSION_has_ticket.pod" - ], - "doc/man/man3/SSL_SESSION_is_resumable.3" => [ - "doc/man3/SSL_SESSION_is_resumable.pod" - ], - "doc/man/man3/SSL_SESSION_print.3" => [ - "doc/man3/SSL_SESSION_print.pod" - ], - "doc/man/man3/SSL_SESSION_set1_id.3" => [ - "doc/man3/SSL_SESSION_set1_id.pod" - ], - "doc/man/man3/SSL_accept.3" => [ - "doc/man3/SSL_accept.pod" - ], - "doc/man/man3/SSL_accept_stream.3" => [ - "doc/man3/SSL_accept_stream.pod" - ], - "doc/man/man3/SSL_alert_type_string.3" => [ - "doc/man3/SSL_alert_type_string.pod" - ], - "doc/man/man3/SSL_alloc_buffers.3" => [ - "doc/man3/SSL_alloc_buffers.pod" - ], - "doc/man/man3/SSL_check_chain.3" => [ - "doc/man3/SSL_check_chain.pod" - ], - "doc/man/man3/SSL_clear.3" => [ - "doc/man3/SSL_clear.pod" - ], - "doc/man/man3/SSL_connect.3" => [ - "doc/man3/SSL_connect.pod" - ], - "doc/man/man3/SSL_do_handshake.3" => [ - "doc/man3/SSL_do_handshake.pod" - ], - "doc/man/man3/SSL_export_keying_material.3" => [ - "doc/man3/SSL_export_keying_material.pod" - ], - "doc/man/man3/SSL_extension_supported.3" => [ - "doc/man3/SSL_extension_supported.pod" - ], - "doc/man/man3/SSL_free.3" => [ - "doc/man3/SSL_free.pod" - ], - "doc/man/man3/SSL_get0_connection.3" => [ - "doc/man3/SSL_get0_connection.pod" - ], - "doc/man/man3/SSL_get0_group_name.3" => [ - "doc/man3/SSL_get0_group_name.pod" - ], - "doc/man/man3/SSL_get0_peer_rpk.3" => [ - "doc/man3/SSL_get0_peer_rpk.pod" - ], - "doc/man/man3/SSL_get0_peer_scts.3" => [ - "doc/man3/SSL_get0_peer_scts.pod" - ], - "doc/man/man3/SSL_get1_builtin_sigalgs.3" => [ - "doc/man3/SSL_get1_builtin_sigalgs.pod" - ], - "doc/man/man3/SSL_get_SSL_CTX.3" => [ - "doc/man3/SSL_get_SSL_CTX.pod" - ], - "doc/man/man3/SSL_get_all_async_fds.3" => [ - "doc/man3/SSL_get_all_async_fds.pod" - ], - "doc/man/man3/SSL_get_certificate.3" => [ - "doc/man3/SSL_get_certificate.pod" - ], - "doc/man/man3/SSL_get_ciphers.3" => [ - "doc/man3/SSL_get_ciphers.pod" - ], - "doc/man/man3/SSL_get_client_random.3" => [ - "doc/man3/SSL_get_client_random.pod" - ], - "doc/man/man3/SSL_get_conn_close_info.3" => [ - "doc/man3/SSL_get_conn_close_info.pod" - ], - "doc/man/man3/SSL_get_current_cipher.3" => [ - "doc/man3/SSL_get_current_cipher.pod" - ], - "doc/man/man3/SSL_get_default_timeout.3" => [ - "doc/man3/SSL_get_default_timeout.pod" - ], - "doc/man/man3/SSL_get_error.3" => [ - "doc/man3/SSL_get_error.pod" - ], - "doc/man/man3/SSL_get_event_timeout.3" => [ - "doc/man3/SSL_get_event_timeout.pod" - ], - "doc/man/man3/SSL_get_extms_support.3" => [ - "doc/man3/SSL_get_extms_support.pod" - ], - "doc/man/man3/SSL_get_fd.3" => [ - "doc/man3/SSL_get_fd.pod" - ], - "doc/man/man3/SSL_get_handshake_rtt.3" => [ - "doc/man3/SSL_get_handshake_rtt.pod" - ], - "doc/man/man3/SSL_get_peer_cert_chain.3" => [ - "doc/man3/SSL_get_peer_cert_chain.pod" - ], - "doc/man/man3/SSL_get_peer_certificate.3" => [ - "doc/man3/SSL_get_peer_certificate.pod" - ], - "doc/man/man3/SSL_get_peer_signature_nid.3" => [ - "doc/man3/SSL_get_peer_signature_nid.pod" - ], - "doc/man/man3/SSL_get_peer_tmp_key.3" => [ - "doc/man3/SSL_get_peer_tmp_key.pod" - ], - "doc/man/man3/SSL_get_psk_identity.3" => [ - "doc/man3/SSL_get_psk_identity.pod" - ], - "doc/man/man3/SSL_get_rbio.3" => [ - "doc/man3/SSL_get_rbio.pod" - ], - "doc/man/man3/SSL_get_rpoll_descriptor.3" => [ - "doc/man3/SSL_get_rpoll_descriptor.pod" - ], - "doc/man/man3/SSL_get_session.3" => [ - "doc/man3/SSL_get_session.pod" - ], - "doc/man/man3/SSL_get_shared_sigalgs.3" => [ - "doc/man3/SSL_get_shared_sigalgs.pod" - ], - "doc/man/man3/SSL_get_stream_id.3" => [ - "doc/man3/SSL_get_stream_id.pod" - ], - "doc/man/man3/SSL_get_stream_read_state.3" => [ - "doc/man3/SSL_get_stream_read_state.pod" - ], - "doc/man/man3/SSL_get_value_uint.3" => [ - "doc/man3/SSL_get_value_uint.pod" - ], - "doc/man/man3/SSL_get_verify_result.3" => [ - "doc/man3/SSL_get_verify_result.pod" - ], - "doc/man/man3/SSL_get_version.3" => [ - "doc/man3/SSL_get_version.pod" - ], - "doc/man/man3/SSL_group_to_name.3" => [ - "doc/man3/SSL_group_to_name.pod" - ], - "doc/man/man3/SSL_handle_events.3" => [ - "doc/man3/SSL_handle_events.pod" - ], - "doc/man/man3/SSL_in_init.3" => [ - "doc/man3/SSL_in_init.pod" - ], - "doc/man/man3/SSL_inject_net_dgram.3" => [ - "doc/man3/SSL_inject_net_dgram.pod" - ], - "doc/man/man3/SSL_key_update.3" => [ - "doc/man3/SSL_key_update.pod" - ], - "doc/man/man3/SSL_library_init.3" => [ - "doc/man3/SSL_library_init.pod" - ], - "doc/man/man3/SSL_load_client_CA_file.3" => [ - "doc/man3/SSL_load_client_CA_file.pod" - ], - "doc/man/man3/SSL_new.3" => [ - "doc/man3/SSL_new.pod" - ], - "doc/man/man3/SSL_new_domain.3" => [ - "doc/man3/SSL_new_domain.pod" - ], - "doc/man/man3/SSL_new_listener.3" => [ - "doc/man3/SSL_new_listener.pod" - ], - "doc/man/man3/SSL_new_stream.3" => [ - "doc/man3/SSL_new_stream.pod" - ], - "doc/man/man3/SSL_pending.3" => [ - "doc/man3/SSL_pending.pod" - ], - "doc/man/man3/SSL_poll.3" => [ - "doc/man3/SSL_poll.pod" - ], - "doc/man/man3/SSL_read.3" => [ - "doc/man3/SSL_read.pod" - ], - "doc/man/man3/SSL_read_early_data.3" => [ - "doc/man3/SSL_read_early_data.pod" - ], - "doc/man/man3/SSL_rstate_string.3" => [ - "doc/man3/SSL_rstate_string.pod" - ], - "doc/man/man3/SSL_session_reused.3" => [ - "doc/man3/SSL_session_reused.pod" - ], - "doc/man/man3/SSL_set1_host.3" => [ - "doc/man3/SSL_set1_host.pod" - ], - "doc/man/man3/SSL_set1_initial_peer_addr.3" => [ - "doc/man3/SSL_set1_initial_peer_addr.pod" - ], - "doc/man/man3/SSL_set1_server_cert_type.3" => [ - "doc/man3/SSL_set1_server_cert_type.pod" - ], - "doc/man/man3/SSL_set_async_callback.3" => [ - "doc/man3/SSL_set_async_callback.pod" - ], - "doc/man/man3/SSL_set_bio.3" => [ - "doc/man3/SSL_set_bio.pod" - ], - "doc/man/man3/SSL_set_blocking_mode.3" => [ - "doc/man3/SSL_set_blocking_mode.pod" - ], - "doc/man/man3/SSL_set_connect_state.3" => [ - "doc/man3/SSL_set_connect_state.pod" - ], - "doc/man/man3/SSL_set_default_stream_mode.3" => [ - "doc/man3/SSL_set_default_stream_mode.pod" - ], - "doc/man/man3/SSL_set_fd.3" => [ - "doc/man3/SSL_set_fd.pod" - ], - "doc/man/man3/SSL_set_incoming_stream_policy.3" => [ - "doc/man3/SSL_set_incoming_stream_policy.pod" - ], - "doc/man/man3/SSL_set_quic_tls_cbs.3" => [ - "doc/man3/SSL_set_quic_tls_cbs.pod" - ], - "doc/man/man3/SSL_set_retry_verify.3" => [ - "doc/man3/SSL_set_retry_verify.pod" - ], - "doc/man/man3/SSL_set_session.3" => [ - "doc/man3/SSL_set_session.pod" - ], - "doc/man/man3/SSL_set_session_secret_cb.3" => [ - "doc/man3/SSL_set_session_secret_cb.pod" - ], - "doc/man/man3/SSL_set_shutdown.3" => [ - "doc/man3/SSL_set_shutdown.pod" - ], - "doc/man/man3/SSL_set_verify_result.3" => [ - "doc/man3/SSL_set_verify_result.pod" - ], - "doc/man/man3/SSL_shutdown.3" => [ - "doc/man3/SSL_shutdown.pod" - ], - "doc/man/man3/SSL_state_string.3" => [ - "doc/man3/SSL_state_string.pod" - ], - "doc/man/man3/SSL_stream_conclude.3" => [ - "doc/man3/SSL_stream_conclude.pod" - ], - "doc/man/man3/SSL_stream_reset.3" => [ - "doc/man3/SSL_stream_reset.pod" - ], - "doc/man/man3/SSL_want.3" => [ - "doc/man3/SSL_want.pod" - ], - "doc/man/man3/SSL_write.3" => [ - "doc/man3/SSL_write.pod" - ], - "doc/man/man3/TS_RESP_CTX_new.3" => [ - "doc/man3/TS_RESP_CTX_new.pod" - ], - "doc/man/man3/TS_VERIFY_CTX.3" => [ - "doc/man3/TS_VERIFY_CTX.pod" - ], - "doc/man/man3/UI_STRING.3" => [ - "doc/man3/UI_STRING.pod" - ], - "doc/man/man3/UI_UTIL_read_pw.3" => [ - "doc/man3/UI_UTIL_read_pw.pod" - ], - "doc/man/man3/UI_create_method.3" => [ - "doc/man3/UI_create_method.pod" - ], - "doc/man/man3/UI_new.3" => [ - "doc/man3/UI_new.pod" - ], - "doc/man/man3/X509V3_get_d2i.3" => [ - "doc/man3/X509V3_get_d2i.pod" - ], - "doc/man/man3/X509V3_set_ctx.3" => [ - "doc/man3/X509V3_set_ctx.pod" - ], - "doc/man/man3/X509_ACERT_add1_attr.3" => [ - "doc/man3/X509_ACERT_add1_attr.pod" - ], - "doc/man/man3/X509_ACERT_add_attr_nconf.3" => [ - "doc/man3/X509_ACERT_add_attr_nconf.pod" - ], - "doc/man/man3/X509_ACERT_get0_holder_baseCertId.3" => [ - "doc/man3/X509_ACERT_get0_holder_baseCertId.pod" - ], - "doc/man/man3/X509_ACERT_get_attr.3" => [ - "doc/man3/X509_ACERT_get_attr.pod" - ], - "doc/man/man3/X509_ACERT_print_ex.3" => [ - "doc/man3/X509_ACERT_print_ex.pod" - ], - "doc/man/man3/X509_ALGOR_dup.3" => [ - "doc/man3/X509_ALGOR_dup.pod" - ], - "doc/man/man3/X509_ATTRIBUTE.3" => [ - "doc/man3/X509_ATTRIBUTE.pod" - ], - "doc/man/man3/X509_CRL_get0_by_serial.3" => [ - "doc/man3/X509_CRL_get0_by_serial.pod" - ], - "doc/man/man3/X509_EXTENSION_set_object.3" => [ - "doc/man3/X509_EXTENSION_set_object.pod" - ], - "doc/man/man3/X509_LOOKUP.3" => [ - "doc/man3/X509_LOOKUP.pod" - ], - "doc/man/man3/X509_LOOKUP_hash_dir.3" => [ - "doc/man3/X509_LOOKUP_hash_dir.pod" - ], - "doc/man/man3/X509_LOOKUP_meth_new.3" => [ - "doc/man3/X509_LOOKUP_meth_new.pod" - ], - "doc/man/man3/X509_NAME_ENTRY_get_object.3" => [ - "doc/man3/X509_NAME_ENTRY_get_object.pod" - ], - "doc/man/man3/X509_NAME_add_entry_by_txt.3" => [ - "doc/man3/X509_NAME_add_entry_by_txt.pod" - ], - "doc/man/man3/X509_NAME_get0_der.3" => [ - "doc/man3/X509_NAME_get0_der.pod" - ], - "doc/man/man3/X509_NAME_get_index_by_NID.3" => [ - "doc/man3/X509_NAME_get_index_by_NID.pod" - ], - "doc/man/man3/X509_NAME_print_ex.3" => [ - "doc/man3/X509_NAME_print_ex.pod" - ], - "doc/man/man3/X509_PUBKEY_new.3" => [ - "doc/man3/X509_PUBKEY_new.pod" - ], - "doc/man/man3/X509_REQ_get_attr.3" => [ - "doc/man3/X509_REQ_get_attr.pod" - ], - "doc/man/man3/X509_REQ_get_extensions.3" => [ - "doc/man3/X509_REQ_get_extensions.pod" - ], - "doc/man/man3/X509_SIG_get0.3" => [ - "doc/man3/X509_SIG_get0.pod" - ], - "doc/man/man3/X509_STORE_CTX_get_by_subject.3" => [ - "doc/man3/X509_STORE_CTX_get_by_subject.pod" - ], - "doc/man/man3/X509_STORE_CTX_get_error.3" => [ - "doc/man3/X509_STORE_CTX_get_error.pod" - ], - "doc/man/man3/X509_STORE_CTX_new.3" => [ - "doc/man3/X509_STORE_CTX_new.pod" - ], - "doc/man/man3/X509_STORE_CTX_set_verify_cb.3" => [ - "doc/man3/X509_STORE_CTX_set_verify_cb.pod" - ], - "doc/man/man3/X509_STORE_add_cert.3" => [ - "doc/man3/X509_STORE_add_cert.pod" - ], - "doc/man/man3/X509_STORE_get0_param.3" => [ - "doc/man3/X509_STORE_get0_param.pod" - ], - "doc/man/man3/X509_STORE_new.3" => [ - "doc/man3/X509_STORE_new.pod" - ], - "doc/man/man3/X509_STORE_set_verify_cb_func.3" => [ - "doc/man3/X509_STORE_set_verify_cb_func.pod" - ], - "doc/man/man3/X509_VERIFY_PARAM_set_flags.3" => [ - "doc/man3/X509_VERIFY_PARAM_set_flags.pod" - ], - "doc/man/man3/X509_add_cert.3" => [ - "doc/man3/X509_add_cert.pod" - ], - "doc/man/man3/X509_check_ca.3" => [ - "doc/man3/X509_check_ca.pod" - ], - "doc/man/man3/X509_check_host.3" => [ - "doc/man3/X509_check_host.pod" - ], - "doc/man/man3/X509_check_issued.3" => [ - "doc/man3/X509_check_issued.pod" - ], - "doc/man/man3/X509_check_private_key.3" => [ - "doc/man3/X509_check_private_key.pod" - ], - "doc/man/man3/X509_check_purpose.3" => [ - "doc/man3/X509_check_purpose.pod" - ], - "doc/man/man3/X509_cmp.3" => [ - "doc/man3/X509_cmp.pod" - ], - "doc/man/man3/X509_cmp_time.3" => [ - "doc/man3/X509_cmp_time.pod" - ], - "doc/man/man3/X509_digest.3" => [ - "doc/man3/X509_digest.pod" - ], - "doc/man/man3/X509_dup.3" => [ - "doc/man3/X509_dup.pod" - ], - "doc/man/man3/X509_get0_distinguishing_id.3" => [ - "doc/man3/X509_get0_distinguishing_id.pod" - ], - "doc/man/man3/X509_get0_notBefore.3" => [ - "doc/man3/X509_get0_notBefore.pod" - ], - "doc/man/man3/X509_get0_signature.3" => [ - "doc/man3/X509_get0_signature.pod" - ], - "doc/man/man3/X509_get0_uids.3" => [ - "doc/man3/X509_get0_uids.pod" - ], - "doc/man/man3/X509_get_default_cert_file.3" => [ - "doc/man3/X509_get_default_cert_file.pod" - ], - "doc/man/man3/X509_get_extension_flags.3" => [ - "doc/man3/X509_get_extension_flags.pod" - ], - "doc/man/man3/X509_get_pubkey.3" => [ - "doc/man3/X509_get_pubkey.pod" - ], - "doc/man/man3/X509_get_serialNumber.3" => [ - "doc/man3/X509_get_serialNumber.pod" - ], - "doc/man/man3/X509_get_subject_name.3" => [ - "doc/man3/X509_get_subject_name.pod" - ], - "doc/man/man3/X509_get_version.3" => [ - "doc/man3/X509_get_version.pod" - ], - "doc/man/man3/X509_load_http.3" => [ - "doc/man3/X509_load_http.pod" - ], - "doc/man/man3/X509_new.3" => [ - "doc/man3/X509_new.pod" - ], - "doc/man/man3/X509_sign.3" => [ - "doc/man3/X509_sign.pod" - ], - "doc/man/man3/X509_verify.3" => [ - "doc/man3/X509_verify.pod" - ], - "doc/man/man3/X509_verify_cert.3" => [ - "doc/man3/X509_verify_cert.pod" - ], - "doc/man/man3/X509v3_get_ext_by_NID.3" => [ - "doc/man3/X509v3_get_ext_by_NID.pod" - ], - "doc/man/man3/b2i_PVK_bio_ex.3" => [ - "doc/man3/b2i_PVK_bio_ex.pod" - ], - "doc/man/man3/d2i_PKCS8PrivateKey_bio.3" => [ - "doc/man3/d2i_PKCS8PrivateKey_bio.pod" - ], - "doc/man/man3/d2i_PrivateKey.3" => [ - "doc/man3/d2i_PrivateKey.pod" - ], - "doc/man/man3/d2i_RSAPrivateKey.3" => [ - "doc/man3/d2i_RSAPrivateKey.pod" - ], - "doc/man/man3/d2i_SSL_SESSION.3" => [ - "doc/man3/d2i_SSL_SESSION.pod" - ], - "doc/man/man3/d2i_X509.3" => [ - "doc/man3/d2i_X509.pod" - ], - "doc/man/man3/i2d_CMS_bio_stream.3" => [ - "doc/man3/i2d_CMS_bio_stream.pod" - ], - "doc/man/man3/i2d_PKCS7_bio_stream.3" => [ - "doc/man3/i2d_PKCS7_bio_stream.pod" - ], - "doc/man/man3/i2d_re_X509_tbs.3" => [ - "doc/man3/i2d_re_X509_tbs.pod" - ], - "doc/man/man3/o2i_SCT_LIST.3" => [ - "doc/man3/o2i_SCT_LIST.pod" - ], - "doc/man/man3/s2i_ASN1_IA5STRING.3" => [ - "doc/man3/s2i_ASN1_IA5STRING.pod" - ], - "doc/man/man5/config.5" => [ - "doc/man5/config.pod" - ], - "doc/man/man5/fips_config.5" => [ - "doc/man5/fips_config.pod" - ], - "doc/man/man5/x509v3_config.5" => [ - "doc/man5/x509v3_config.pod" - ], - "doc/man/man7/EVP_ASYM_CIPHER-RSA.7" => [ - "doc/man7/EVP_ASYM_CIPHER-RSA.pod" - ], - "doc/man/man7/EVP_ASYM_CIPHER-SM2.7" => [ - "doc/man7/EVP_ASYM_CIPHER-SM2.pod" - ], - "doc/man/man7/EVP_CIPHER-AES.7" => [ - "doc/man7/EVP_CIPHER-AES.pod" - ], - "doc/man/man7/EVP_CIPHER-ARIA.7" => [ - "doc/man7/EVP_CIPHER-ARIA.pod" - ], - "doc/man/man7/EVP_CIPHER-BLOWFISH.7" => [ - "doc/man7/EVP_CIPHER-BLOWFISH.pod" - ], - "doc/man/man7/EVP_CIPHER-CAMELLIA.7" => [ - "doc/man7/EVP_CIPHER-CAMELLIA.pod" - ], - "doc/man/man7/EVP_CIPHER-CAST.7" => [ - "doc/man7/EVP_CIPHER-CAST.pod" - ], - "doc/man/man7/EVP_CIPHER-CHACHA.7" => [ - "doc/man7/EVP_CIPHER-CHACHA.pod" - ], - "doc/man/man7/EVP_CIPHER-DES.7" => [ - "doc/man7/EVP_CIPHER-DES.pod" - ], - "doc/man/man7/EVP_CIPHER-IDEA.7" => [ - "doc/man7/EVP_CIPHER-IDEA.pod" - ], - "doc/man/man7/EVP_CIPHER-NULL.7" => [ - "doc/man7/EVP_CIPHER-NULL.pod" - ], - "doc/man/man7/EVP_CIPHER-RC2.7" => [ - "doc/man7/EVP_CIPHER-RC2.pod" - ], - "doc/man/man7/EVP_CIPHER-RC4.7" => [ - "doc/man7/EVP_CIPHER-RC4.pod" - ], - "doc/man/man7/EVP_CIPHER-RC5.7" => [ - "doc/man7/EVP_CIPHER-RC5.pod" - ], - "doc/man/man7/EVP_CIPHER-SEED.7" => [ - "doc/man7/EVP_CIPHER-SEED.pod" - ], - "doc/man/man7/EVP_CIPHER-SM4.7" => [ - "doc/man7/EVP_CIPHER-SM4.pod" - ], - "doc/man/man7/EVP_KDF-ARGON2.7" => [ - "doc/man7/EVP_KDF-ARGON2.pod" - ], - "doc/man/man7/EVP_KDF-HKDF.7" => [ - "doc/man7/EVP_KDF-HKDF.pod" - ], - "doc/man/man7/EVP_KDF-HMAC-DRBG.7" => [ - "doc/man7/EVP_KDF-HMAC-DRBG.pod" - ], - "doc/man/man7/EVP_KDF-KB.7" => [ - "doc/man7/EVP_KDF-KB.pod" - ], - "doc/man/man7/EVP_KDF-KRB5KDF.7" => [ - "doc/man7/EVP_KDF-KRB5KDF.pod" - ], - "doc/man/man7/EVP_KDF-PBKDF1.7" => [ - "doc/man7/EVP_KDF-PBKDF1.pod" - ], - "doc/man/man7/EVP_KDF-PBKDF2.7" => [ - "doc/man7/EVP_KDF-PBKDF2.pod" - ], - "doc/man/man7/EVP_KDF-PKCS12KDF.7" => [ - "doc/man7/EVP_KDF-PKCS12KDF.pod" - ], - "doc/man/man7/EVP_KDF-PVKKDF.7" => [ - "doc/man7/EVP_KDF-PVKKDF.pod" - ], - "doc/man/man7/EVP_KDF-SCRYPT.7" => [ - "doc/man7/EVP_KDF-SCRYPT.pod" - ], - "doc/man/man7/EVP_KDF-SS.7" => [ - "doc/man7/EVP_KDF-SS.pod" - ], - "doc/man/man7/EVP_KDF-SSHKDF.7" => [ - "doc/man7/EVP_KDF-SSHKDF.pod" - ], - "doc/man/man7/EVP_KDF-TLS13_KDF.7" => [ - "doc/man7/EVP_KDF-TLS13_KDF.pod" - ], - "doc/man/man7/EVP_KDF-TLS1_PRF.7" => [ - "doc/man7/EVP_KDF-TLS1_PRF.pod" - ], - "doc/man/man7/EVP_KDF-X942-ASN1.7" => [ - "doc/man7/EVP_KDF-X942-ASN1.pod" - ], - "doc/man/man7/EVP_KDF-X942-CONCAT.7" => [ - "doc/man7/EVP_KDF-X942-CONCAT.pod" - ], - "doc/man/man7/EVP_KDF-X963.7" => [ - "doc/man7/EVP_KDF-X963.pod" - ], - "doc/man/man7/EVP_KEM-EC.7" => [ - "doc/man7/EVP_KEM-EC.pod" - ], - "doc/man/man7/EVP_KEM-ML-KEM.7" => [ - "doc/man7/EVP_KEM-ML-KEM.pod" - ], - "doc/man/man7/EVP_KEM-RSA.7" => [ - "doc/man7/EVP_KEM-RSA.pod" - ], - "doc/man/man7/EVP_KEM-X25519.7" => [ - "doc/man7/EVP_KEM-X25519.pod" - ], - "doc/man/man7/EVP_KEYEXCH-DH.7" => [ - "doc/man7/EVP_KEYEXCH-DH.pod" - ], - "doc/man/man7/EVP_KEYEXCH-ECDH.7" => [ - "doc/man7/EVP_KEYEXCH-ECDH.pod" - ], - "doc/man/man7/EVP_KEYEXCH-X25519.7" => [ - "doc/man7/EVP_KEYEXCH-X25519.pod" - ], - "doc/man/man7/EVP_MAC-BLAKE2.7" => [ - "doc/man7/EVP_MAC-BLAKE2.pod" - ], - "doc/man/man7/EVP_MAC-CMAC.7" => [ - "doc/man7/EVP_MAC-CMAC.pod" - ], - "doc/man/man7/EVP_MAC-GMAC.7" => [ - "doc/man7/EVP_MAC-GMAC.pod" - ], - "doc/man/man7/EVP_MAC-HMAC.7" => [ - "doc/man7/EVP_MAC-HMAC.pod" - ], - "doc/man/man7/EVP_MAC-KMAC.7" => [ - "doc/man7/EVP_MAC-KMAC.pod" - ], - "doc/man/man7/EVP_MAC-Poly1305.7" => [ - "doc/man7/EVP_MAC-Poly1305.pod" - ], - "doc/man/man7/EVP_MAC-Siphash.7" => [ - "doc/man7/EVP_MAC-Siphash.pod" - ], - "doc/man/man7/EVP_MD-BLAKE2.7" => [ - "doc/man7/EVP_MD-BLAKE2.pod" - ], - "doc/man/man7/EVP_MD-KECCAK.7" => [ - "doc/man7/EVP_MD-KECCAK.pod" - ], - "doc/man/man7/EVP_MD-MD2.7" => [ - "doc/man7/EVP_MD-MD2.pod" - ], - "doc/man/man7/EVP_MD-MD4.7" => [ - "doc/man7/EVP_MD-MD4.pod" - ], - "doc/man/man7/EVP_MD-MD5-SHA1.7" => [ - "doc/man7/EVP_MD-MD5-SHA1.pod" - ], - "doc/man/man7/EVP_MD-MD5.7" => [ - "doc/man7/EVP_MD-MD5.pod" - ], - "doc/man/man7/EVP_MD-MDC2.7" => [ - "doc/man7/EVP_MD-MDC2.pod" - ], - "doc/man/man7/EVP_MD-NULL.7" => [ - "doc/man7/EVP_MD-NULL.pod" - ], - "doc/man/man7/EVP_MD-RIPEMD160.7" => [ - "doc/man7/EVP_MD-RIPEMD160.pod" - ], - "doc/man/man7/EVP_MD-SHA1.7" => [ - "doc/man7/EVP_MD-SHA1.pod" - ], - "doc/man/man7/EVP_MD-SHA2.7" => [ - "doc/man7/EVP_MD-SHA2.pod" - ], - "doc/man/man7/EVP_MD-SHA3.7" => [ - "doc/man7/EVP_MD-SHA3.pod" - ], - "doc/man/man7/EVP_MD-SHAKE.7" => [ - "doc/man7/EVP_MD-SHAKE.pod" - ], - "doc/man/man7/EVP_MD-SM3.7" => [ - "doc/man7/EVP_MD-SM3.pod" - ], - "doc/man/man7/EVP_MD-WHIRLPOOL.7" => [ - "doc/man7/EVP_MD-WHIRLPOOL.pod" - ], - "doc/man/man7/EVP_MD-common.7" => [ - "doc/man7/EVP_MD-common.pod" - ], - "doc/man/man7/EVP_PKEY-DH.7" => [ - "doc/man7/EVP_PKEY-DH.pod" - ], - "doc/man/man7/EVP_PKEY-DSA.7" => [ - "doc/man7/EVP_PKEY-DSA.pod" - ], - "doc/man/man7/EVP_PKEY-EC.7" => [ - "doc/man7/EVP_PKEY-EC.pod" - ], - "doc/man/man7/EVP_PKEY-FFC.7" => [ - "doc/man7/EVP_PKEY-FFC.pod" - ], - "doc/man/man7/EVP_PKEY-HMAC.7" => [ - "doc/man7/EVP_PKEY-HMAC.pod" - ], - "doc/man/man7/EVP_PKEY-ML-DSA.7" => [ - "doc/man7/EVP_PKEY-ML-DSA.pod" - ], - "doc/man/man7/EVP_PKEY-ML-KEM.7" => [ - "doc/man7/EVP_PKEY-ML-KEM.pod" - ], - "doc/man/man7/EVP_PKEY-RSA.7" => [ - "doc/man7/EVP_PKEY-RSA.pod" - ], - "doc/man/man7/EVP_PKEY-SLH-DSA.7" => [ - "doc/man7/EVP_PKEY-SLH-DSA.pod" - ], - "doc/man/man7/EVP_PKEY-SM2.7" => [ - "doc/man7/EVP_PKEY-SM2.pod" - ], - "doc/man/man7/EVP_PKEY-X25519.7" => [ - "doc/man7/EVP_PKEY-X25519.pod" - ], - "doc/man/man7/EVP_RAND-CRNG-TEST.7" => [ - "doc/man7/EVP_RAND-CRNG-TEST.pod" - ], - "doc/man/man7/EVP_RAND-CTR-DRBG.7" => [ - "doc/man7/EVP_RAND-CTR-DRBG.pod" - ], - "doc/man/man7/EVP_RAND-HASH-DRBG.7" => [ - "doc/man7/EVP_RAND-HASH-DRBG.pod" - ], - "doc/man/man7/EVP_RAND-HMAC-DRBG.7" => [ - "doc/man7/EVP_RAND-HMAC-DRBG.pod" - ], - "doc/man/man7/EVP_RAND-JITTER.7" => [ - "doc/man7/EVP_RAND-JITTER.pod" - ], - "doc/man/man7/EVP_RAND-SEED-SRC.7" => [ - "doc/man7/EVP_RAND-SEED-SRC.pod" - ], - "doc/man/man7/EVP_RAND-TEST-RAND.7" => [ - "doc/man7/EVP_RAND-TEST-RAND.pod" - ], - "doc/man/man7/EVP_RAND.7" => [ - "doc/man7/EVP_RAND.pod" - ], - "doc/man/man7/EVP_SIGNATURE-DSA.7" => [ - "doc/man7/EVP_SIGNATURE-DSA.pod" - ], - "doc/man/man7/EVP_SIGNATURE-ECDSA.7" => [ - "doc/man7/EVP_SIGNATURE-ECDSA.pod" - ], - "doc/man/man7/EVP_SIGNATURE-ED25519.7" => [ - "doc/man7/EVP_SIGNATURE-ED25519.pod" - ], - "doc/man/man7/EVP_SIGNATURE-HMAC.7" => [ - "doc/man7/EVP_SIGNATURE-HMAC.pod" - ], - "doc/man/man7/EVP_SIGNATURE-ML-DSA.7" => [ - "doc/man7/EVP_SIGNATURE-ML-DSA.pod" - ], - "doc/man/man7/EVP_SIGNATURE-RSA.7" => [ - "doc/man7/EVP_SIGNATURE-RSA.pod" - ], - "doc/man/man7/EVP_SIGNATURE-SLH-DSA.7" => [ - "doc/man7/EVP_SIGNATURE-SLH-DSA.pod" - ], - "doc/man/man7/OSSL_PROVIDER-FIPS.7" => [ - "doc/man7/OSSL_PROVIDER-FIPS.pod" - ], - "doc/man/man7/OSSL_PROVIDER-base.7" => [ - "doc/man7/OSSL_PROVIDER-base.pod" - ], - "doc/man/man7/OSSL_PROVIDER-default.7" => [ - "doc/man7/OSSL_PROVIDER-default.pod" - ], - "doc/man/man7/OSSL_PROVIDER-legacy.7" => [ - "doc/man7/OSSL_PROVIDER-legacy.pod" - ], - "doc/man/man7/OSSL_PROVIDER-null.7" => [ - "doc/man7/OSSL_PROVIDER-null.pod" - ], - "doc/man/man7/OSSL_STORE-winstore.7" => [ - "doc/man7/OSSL_STORE-winstore.pod" - ], - "doc/man/man7/RAND.7" => [ - "doc/man7/RAND.pod" - ], - "doc/man/man7/RSA-PSS.7" => [ - "doc/man7/RSA-PSS.pod" - ], - "doc/man/man7/X25519.7" => [ - "doc/man7/X25519.pod" - ], - "doc/man/man7/bio.7" => [ - "doc/man7/bio.pod" - ], - "doc/man/man7/ct.7" => [ - "doc/man7/ct.pod" - ], - "doc/man/man7/des_modes.7" => [ - "doc/man7/des_modes.pod" - ], - "doc/man/man7/evp.7" => [ - "doc/man7/evp.pod" - ], - "doc/man/man7/fips_module.7" => [ - "doc/man7/fips_module.pod" - ], - "doc/man/man7/life_cycle-cipher.7" => [ - "doc/man7/life_cycle-cipher.pod" - ], - "doc/man/man7/life_cycle-digest.7" => [ - "doc/man7/life_cycle-digest.pod" - ], - "doc/man/man7/life_cycle-kdf.7" => [ - "doc/man7/life_cycle-kdf.pod" - ], - "doc/man/man7/life_cycle-mac.7" => [ - "doc/man7/life_cycle-mac.pod" - ], - "doc/man/man7/life_cycle-pkey.7" => [ - "doc/man7/life_cycle-pkey.pod" - ], - "doc/man/man7/life_cycle-rand.7" => [ - "doc/man7/life_cycle-rand.pod" - ], - "doc/man/man7/openssl-core.h.7" => [ - "doc/man7/openssl-core.h.pod" - ], - "doc/man/man7/openssl-core_dispatch.h.7" => [ - "doc/man7/openssl-core_dispatch.h.pod" - ], - "doc/man/man7/openssl-core_names.h.7" => [ - "doc/man7/openssl-core_names.h.pod" - ], - "doc/man/man7/openssl-env.7" => [ - "doc/man7/openssl-env.pod" - ], - "doc/man/man7/openssl-glossary.7" => [ - "doc/man7/openssl-glossary.pod" - ], - "doc/man/man7/openssl-qlog.7" => [ - "doc/man7/openssl-qlog.pod" - ], - "doc/man/man7/openssl-quic-concurrency.7" => [ - "doc/man7/openssl-quic-concurrency.pod" - ], - "doc/man/man7/openssl-quic.7" => [ - "doc/man7/openssl-quic.pod" - ], - "doc/man/man7/openssl-threads.7" => [ - "doc/man7/openssl-threads.pod" - ], - "doc/man/man7/openssl_user_macros.7" => [ - "doc/man7/openssl_user_macros.pod" - ], - "doc/man/man7/ossl-guide-introduction.7" => [ - "doc/man7/ossl-guide-introduction.pod" - ], - "doc/man/man7/ossl-guide-libcrypto-introduction.7" => [ - "doc/man7/ossl-guide-libcrypto-introduction.pod" - ], - "doc/man/man7/ossl-guide-libraries-introduction.7" => [ - "doc/man7/ossl-guide-libraries-introduction.pod" - ], - "doc/man/man7/ossl-guide-libssl-introduction.7" => [ - "doc/man7/ossl-guide-libssl-introduction.pod" - ], - "doc/man/man7/ossl-guide-migration.7" => [ - "doc/man7/ossl-guide-migration.pod" - ], - "doc/man/man7/ossl-guide-quic-client-block.7" => [ - "doc/man7/ossl-guide-quic-client-block.pod" - ], - "doc/man/man7/ossl-guide-quic-client-non-block.7" => [ - "doc/man7/ossl-guide-quic-client-non-block.pod" - ], - "doc/man/man7/ossl-guide-quic-introduction.7" => [ - "doc/man7/ossl-guide-quic-introduction.pod" - ], - "doc/man/man7/ossl-guide-quic-multi-stream.7" => [ - "doc/man7/ossl-guide-quic-multi-stream.pod" - ], - "doc/man/man7/ossl-guide-quic-server-block.7" => [ - "doc/man7/ossl-guide-quic-server-block.pod" - ], - "doc/man/man7/ossl-guide-quic-server-non-block.7" => [ - "doc/man7/ossl-guide-quic-server-non-block.pod" - ], - "doc/man/man7/ossl-guide-tls-client-block.7" => [ - "doc/man7/ossl-guide-tls-client-block.pod" - ], - "doc/man/man7/ossl-guide-tls-client-non-block.7" => [ - "doc/man7/ossl-guide-tls-client-non-block.pod" - ], - "doc/man/man7/ossl-guide-tls-introduction.7" => [ - "doc/man7/ossl-guide-tls-introduction.pod" - ], - "doc/man/man7/ossl-guide-tls-server-block.7" => [ - "doc/man7/ossl-guide-tls-server-block.pod" - ], - "doc/man/man7/ossl_store-file.7" => [ - "doc/man7/ossl_store-file.pod" - ], - "doc/man/man7/ossl_store.7" => [ - "doc/man7/ossl_store.pod" - ], - "doc/man/man7/passphrase-encoding.7" => [ - "doc/man7/passphrase-encoding.pod" - ], - "doc/man/man7/property.7" => [ - "doc/man7/property.pod" - ], - "doc/man/man7/provider-asym_cipher.7" => [ - "doc/man7/provider-asym_cipher.pod" - ], - "doc/man/man7/provider-base.7" => [ - "doc/man7/provider-base.pod" - ], - "doc/man/man7/provider-cipher.7" => [ - "doc/man7/provider-cipher.pod" - ], - "doc/man/man7/provider-decoder.7" => [ - "doc/man7/provider-decoder.pod" - ], - "doc/man/man7/provider-digest.7" => [ - "doc/man7/provider-digest.pod" - ], - "doc/man/man7/provider-encoder.7" => [ - "doc/man7/provider-encoder.pod" - ], - "doc/man/man7/provider-kdf.7" => [ - "doc/man7/provider-kdf.pod" - ], - "doc/man/man7/provider-kem.7" => [ - "doc/man7/provider-kem.pod" - ], - "doc/man/man7/provider-keyexch.7" => [ - "doc/man7/provider-keyexch.pod" - ], - "doc/man/man7/provider-keymgmt.7" => [ - "doc/man7/provider-keymgmt.pod" - ], - "doc/man/man7/provider-mac.7" => [ - "doc/man7/provider-mac.pod" - ], - "doc/man/man7/provider-object.7" => [ - "doc/man7/provider-object.pod" - ], - "doc/man/man7/provider-rand.7" => [ - "doc/man7/provider-rand.pod" - ], - "doc/man/man7/provider-signature.7" => [ - "doc/man7/provider-signature.pod" - ], - "doc/man/man7/provider-skeymgmt.7" => [ - "doc/man7/provider-skeymgmt.pod" - ], - "doc/man/man7/provider-storemgmt.7" => [ - "doc/man7/provider-storemgmt.pod" - ], - "doc/man/man7/provider.7" => [ - "doc/man7/provider.pod" - ], - "doc/man/man7/proxy-certificates.7" => [ - "doc/man7/proxy-certificates.pod" - ], - "doc/man/man7/x509.7" => [ - "doc/man7/x509.pod" - ], - "doc/man1/openssl-asn1parse.pod" => [ - "doc/man1/openssl-asn1parse.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-ca.pod" => [ - "doc/man1/openssl-ca.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-ciphers.pod" => [ - "doc/man1/openssl-ciphers.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-cmds.pod" => [ - "doc/man1/openssl-cmds.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-cmp.pod" => [ - "doc/man1/openssl-cmp.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-cms.pod" => [ - "doc/man1/openssl-cms.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-crl.pod" => [ - "doc/man1/openssl-crl.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-crl2pkcs7.pod" => [ - "doc/man1/openssl-crl2pkcs7.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-dgst.pod" => [ - "doc/man1/openssl-dgst.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-dhparam.pod" => [ - "doc/man1/openssl-dhparam.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-dsa.pod" => [ - "doc/man1/openssl-dsa.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-dsaparam.pod" => [ - "doc/man1/openssl-dsaparam.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-ec.pod" => [ - "doc/man1/openssl-ec.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-ecparam.pod" => [ - "doc/man1/openssl-ecparam.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-enc.pod" => [ - "doc/man1/openssl-enc.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-engine.pod" => [ - "doc/man1/openssl-engine.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-errstr.pod" => [ - "doc/man1/openssl-errstr.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-fipsinstall.pod" => [ - "doc/man1/openssl-fipsinstall.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-gendsa.pod" => [ - "doc/man1/openssl-gendsa.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-genpkey.pod" => [ - "doc/man1/openssl-genpkey.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-genrsa.pod" => [ - "doc/man1/openssl-genrsa.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-info.pod" => [ - "doc/man1/openssl-info.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-kdf.pod" => [ - "doc/man1/openssl-kdf.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-list.pod" => [ - "doc/man1/openssl-list.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-mac.pod" => [ - "doc/man1/openssl-mac.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-nseq.pod" => [ - "doc/man1/openssl-nseq.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-ocsp.pod" => [ - "doc/man1/openssl-ocsp.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-passwd.pod" => [ - "doc/man1/openssl-passwd.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-pkcs12.pod" => [ - "doc/man1/openssl-pkcs12.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-pkcs7.pod" => [ - "doc/man1/openssl-pkcs7.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-pkcs8.pod" => [ - "doc/man1/openssl-pkcs8.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-pkey.pod" => [ - "doc/man1/openssl-pkey.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-pkeyparam.pod" => [ - "doc/man1/openssl-pkeyparam.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-pkeyutl.pod" => [ - "doc/man1/openssl-pkeyutl.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-prime.pod" => [ - "doc/man1/openssl-prime.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-rand.pod" => [ - "doc/man1/openssl-rand.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-rehash.pod" => [ - "doc/man1/openssl-rehash.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-req.pod" => [ - "doc/man1/openssl-req.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-rsa.pod" => [ - "doc/man1/openssl-rsa.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-rsautl.pod" => [ - "doc/man1/openssl-rsautl.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-s_client.pod" => [ - "doc/man1/openssl-s_client.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-s_server.pod" => [ - "doc/man1/openssl-s_server.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-s_time.pod" => [ - "doc/man1/openssl-s_time.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-sess_id.pod" => [ - "doc/man1/openssl-sess_id.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-skeyutl.pod" => [ - "doc/man1/openssl-skeyutl.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-smime.pod" => [ - "doc/man1/openssl-smime.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-speed.pod" => [ - "doc/man1/openssl-speed.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-spkac.pod" => [ - "doc/man1/openssl-spkac.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-srp.pod" => [ - "doc/man1/openssl-srp.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-storeutl.pod" => [ - "doc/man1/openssl-storeutl.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-ts.pod" => [ - "doc/man1/openssl-ts.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-verify.pod" => [ - "doc/man1/openssl-verify.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-version.pod" => [ - "doc/man1/openssl-version.pod.in", - "doc/perlvars.pm" - ], - "doc/man1/openssl-x509.pod" => [ - "doc/man1/openssl-x509.pod.in", - "doc/perlvars.pm" - ], - "doc/man7/openssl_user_macros.pod" => [ - "doc/man7/openssl_user_macros.pod.in" - ], - "engines/capi" => [ - "libcrypto" - ], - "engines/dasync" => [ - "libcrypto" - ], - "engines/devcrypto" => [ - "libcrypto" - ], - "engines/loader_attic" => [ - "libcrypto" - ], - "engines/ossltest" => [ - "libcrypto" - ], - "engines/padlock" => [ - "libcrypto" - ], - "exporters/OpenSSLConfig.cmake" => [ - "installdata.pm" - ], - "exporters/OpenSSLConfigVersion.cmake" => [ - "exporters/OpenSSLConfig.cmake", - "installdata.pm" - ], - "exporters/libcrypto.pc" => [ - "installdata.pm" - ], - "exporters/libssl.pc" => [ - "installdata.pm" - ], - "exporters/openssl.pc" => [ - "exporters/libcrypto.pc", - "exporters/libssl.pc", - "installdata.pm" - ], - "fuzz/acert-test" => [ - "libcrypto" - ], - "fuzz/asn1-test" => [ - "libcrypto", - "libssl" - ], - "fuzz/asn1parse-test" => [ - "libcrypto" - ], - "fuzz/bignum-test" => [ - "libcrypto" - ], - "fuzz/bndiv-test" => [ - "libcrypto" - ], - "fuzz/client-test" => [ - "libcrypto", - "libssl" - ], - "fuzz/cmp-test" => [ - "libcrypto.a" - ], - "fuzz/cms-test" => [ - "libcrypto" - ], - "fuzz/conf-test" => [ - "libcrypto" - ], - "fuzz/crl-test" => [ - "libcrypto" - ], - "fuzz/ct-test" => [ - "libcrypto" - ], - "fuzz/decoder-test" => [ - "libcrypto" - ], - "fuzz/dtlsclient-test" => [ - "libcrypto", - "libssl" - ], - "fuzz/dtlsserver-test" => [ - "libcrypto", - "libssl" - ], - "fuzz/hashtable-test" => [ - "libcrypto.a" - ], - "fuzz/ml-dsa-test" => [ - "libcrypto.a" - ], - "fuzz/ml-kem-test" => [ - "libcrypto.a" - ], - "fuzz/pem-test" => [ - "libcrypto.a" - ], - "fuzz/provider-test" => [ - "libcrypto" - ], - "fuzz/punycode-test" => [ - "libcrypto.a" - ], - "fuzz/quic-client-test" => [ - "libcrypto.a", - "libssl.a" - ], - "fuzz/quic-lcidm-test" => [ - "libcrypto.a", - "libssl.a" - ], - "fuzz/quic-rcidm-test" => [ - "libcrypto.a", - "libssl.a" - ], - "fuzz/quic-server-test" => [ - "libcrypto.a", - "libssl.a" - ], - "fuzz/quic-srtm-test" => [ - "libcrypto.a", - "libssl.a" - ], - "fuzz/server-test" => [ - "libcrypto", - "libssl" - ], - "fuzz/slh-dsa-test" => [ - "libcrypto.a" - ], - "fuzz/smime-test" => [ - "libcrypto", - "libssl" - ], - "fuzz/v3name-test" => [ - "libcrypto.a" - ], - "fuzz/x509-test" => [ - "libcrypto" - ], - "include/internal/param_names.h" => [ - "util/perl|OpenSSL/paramnames.pm" - ], - "include/openssl/core_names.h" => [ - "util/perl|OpenSSL/paramnames.pm" - ], - "libcrypto.ld" => [ - "configdata.pm", - "util/perl/OpenSSL/Ordinals.pm" - ], - "libcrypto.pc" => [ - "builddata.pm" - ], - "libssl" => [ - "libcrypto" - ], - "libssl.ld" => [ - "configdata.pm", - "util/perl/OpenSSL/Ordinals.pm" - ], - "libssl.pc" => [ - "builddata.pm" - ], - "openssl.pc" => [ - "builddata.pm", - "libcrypto.pc", - "libssl.pc" - ], - "providers/common/der/der_digests_gen.c" => [ - "providers/common/der/DIGESTS.asn1", - "providers/common/der/NIST.asn1", - "providers/common/der/oids_to_c.pm" - ], - "providers/common/der/der_dsa_gen.c" => [ - "providers/common/der/DSA.asn1", - "providers/common/der/oids_to_c.pm" - ], - "providers/common/der/der_ec_gen.c" => [ - "providers/common/der/EC.asn1", - "providers/common/der/oids_to_c.pm" - ], - "providers/common/der/der_ecx_gen.c" => [ - "providers/common/der/ECX.asn1", - "providers/common/der/oids_to_c.pm" - ], - "providers/common/der/der_ml_dsa_gen.c" => [ - "providers/common/der/ML_DSA.asn1", - "providers/common/der/oids_to_c.pm" - ], - "providers/common/der/der_rsa_gen.c" => [ - "providers/common/der/NIST.asn1", - "providers/common/der/RSA.asn1", - "providers/common/der/oids_to_c.pm" - ], - "providers/common/der/der_slh_dsa_gen.c" => [ - "providers/common/der/SLH_DSA.asn1", - "providers/common/der/oids_to_c.pm" - ], - "providers/common/der/der_wrap_gen.c" => [ - "providers/common/der/oids_to_c.pm", - "providers/common/der/wrap.asn1" - ], - "providers/common/der/libcommon-lib-der_digests_gen.o" => [ - "providers/common/include/prov/der_digests.h" - ], - "providers/common/der/libcommon-lib-der_dsa_gen.o" => [ - "providers/common/include/prov/der_dsa.h" - ], - "providers/common/der/libcommon-lib-der_dsa_key.o" => [ - "providers/common/include/prov/der_digests.h", - "providers/common/include/prov/der_dsa.h" - ], - "providers/common/der/libcommon-lib-der_dsa_sig.o" => [ - "providers/common/include/prov/der_digests.h", - "providers/common/include/prov/der_dsa.h" - ], - "providers/common/der/libcommon-lib-der_ec_gen.o" => [ - "providers/common/include/prov/der_ec.h" - ], - "providers/common/der/libcommon-lib-der_ec_key.o" => [ - "providers/common/include/prov/der_digests.h", - "providers/common/include/prov/der_ec.h" - ], - "providers/common/der/libcommon-lib-der_ec_sig.o" => [ - "providers/common/include/prov/der_digests.h", - "providers/common/include/prov/der_ec.h" - ], - "providers/common/der/libcommon-lib-der_ecx_gen.o" => [ - "providers/common/include/prov/der_ecx.h" - ], - "providers/common/der/libcommon-lib-der_ecx_key.o" => [ - "providers/common/include/prov/der_ecx.h" - ], - "providers/common/der/libcommon-lib-der_ml_dsa_gen.o" => [ - "providers/common/include/prov/der_ml_dsa.h" - ], - "providers/common/der/libcommon-lib-der_ml_dsa_key.o" => [ - "providers/common/include/prov/der_ml_dsa.h" - ], - "providers/common/der/libcommon-lib-der_rsa_gen.o" => [ - "providers/common/include/prov/der_rsa.h" - ], - "providers/common/der/libcommon-lib-der_rsa_key.o" => [ - "providers/common/include/prov/der_digests.h", - "providers/common/include/prov/der_rsa.h" - ], - "providers/common/der/libcommon-lib-der_slh_dsa_gen.o" => [ - "providers/common/include/prov/der_slh_dsa.h" - ], - "providers/common/der/libcommon-lib-der_slh_dsa_key.o" => [ - "providers/common/include/prov/der_slh_dsa.h" - ], - "providers/common/der/libcommon-lib-der_wrap_gen.o" => [ - "providers/common/include/prov/der_wrap.h" - ], - "providers/common/der/libdefault-lib-der_rsa_sig.o" => [ - "providers/common/include/prov/der_digests.h", - "providers/common/include/prov/der_rsa.h" - ], - "providers/common/include/prov/der_digests.h" => [ - "providers/common/der/DIGESTS.asn1", - "providers/common/der/NIST.asn1", - "providers/common/der/oids_to_c.pm" - ], - "providers/common/include/prov/der_dsa.h" => [ - "providers/common/der/DSA.asn1", - "providers/common/der/oids_to_c.pm" - ], - "providers/common/include/prov/der_ec.h" => [ - "providers/common/der/EC.asn1", - "providers/common/der/oids_to_c.pm" - ], - "providers/common/include/prov/der_ecx.h" => [ - "providers/common/der/ECX.asn1", - "providers/common/der/oids_to_c.pm" - ], - "providers/common/include/prov/der_ml_dsa.h" => [ - "providers/common/der/ML_DSA.asn1", - "providers/common/der/oids_to_c.pm" - ], - "providers/common/include/prov/der_rsa.h" => [ - "providers/common/der/NIST.asn1", - "providers/common/der/RSA.asn1", - "providers/common/der/oids_to_c.pm" - ], - "providers/common/include/prov/der_slh_dsa.h" => [ - "providers/common/der/SLH_DSA.asn1", - "providers/common/der/oids_to_c.pm" - ], - "providers/common/include/prov/der_wrap.h" => [ - "providers/common/der/oids_to_c.pm", - "providers/common/der/wrap.asn1" - ], - "providers/implementations/encode_decode/libdefault-lib-encode_key2any.o" => [ - "providers/common/include/prov/der_rsa.h" - ], - "providers/implementations/kdfs/libdefault-lib-x942kdf.o" => [ - "providers/common/include/prov/der_wrap.h" - ], - "providers/implementations/signature/libdefault-lib-dsa_sig.o" => [ - "providers/common/include/prov/der_dsa.h" - ], - "providers/implementations/signature/libdefault-lib-ecdsa_sig.o" => [ - "providers/common/include/prov/der_ec.h" - ], - "providers/implementations/signature/libdefault-lib-eddsa_sig.o" => [ - "providers/common/include/prov/der_ecx.h" - ], - "providers/implementations/signature/libdefault-lib-ml_dsa_sig.o" => [ - "providers/common/include/prov/der_ml_dsa.h" - ], - "providers/implementations/signature/libdefault-lib-rsa_sig.o" => [ - "providers/common/include/prov/der_rsa.h" - ], - "providers/implementations/signature/libdefault-lib-slh_dsa_sig.o" => [ - "providers/common/include/prov/der_slh_dsa.h" - ], - "providers/implementations/signature/sm2_sig.o" => [ - "providers/common/include/prov/der_sm2.h" - ], - "providers/legacy" => [ - "libcrypto", - "providers/liblegacy.a" - ], - "providers/libcommon.a" => [ - "libcrypto" - ], - "providers/libdefault.a" => [ - "providers/libcommon.a" - ], - "providers/liblegacy.a" => [ - "providers/libcommon.a" - ], - "test/aborttest" => [ - "libcrypto" - ], - "test/aesgcmtest" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/afalgtest" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/algorithmid_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/asn1_decode_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/asn1_dsa_internal_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/asn1_encode_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/asn1_internal_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/asn1_stable_parse_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/asn1_string_table_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/asn1_time_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/asynciotest" => [ - "libcrypto", - "libssl", - "test/libtestutil.a" - ], - "test/asynctest" => [ - "libcrypto" - ], - "test/bad_dtls_test" => [ - "libcrypto", - "libssl", - "test/libtestutil.a" - ], - "test/bftest" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/bio_addr_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/bio_base64_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/bio_callback_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/bio_core_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/bio_dgram_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/bio_enc_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/bio_memleak_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/bio_meth_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/bio_prefix_text" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/bio_pw_callback_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/bio_readbuffer_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/bio_tfo_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/bioprinttest" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/bn_internal_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/bntest" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/build_wincrypt_test" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_aes" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_asn1" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_asn1t" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_async" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_bio" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_blowfish" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_bn" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_buffer" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_byteorder" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_camellia" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_cast" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_cmac" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_cmp" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_cmp_util" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_cms" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_comp" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_conf" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_conf_api" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_configuration" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_conftypes" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_core" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_core_dispatch" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_core_names" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_core_object" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_crmf" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_crypto" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_cryptoerr_legacy" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_ct" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_decoder" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_des" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_dh" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_dsa" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_dtls1" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_e_os2" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_e_ostime" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_ebcdic" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_ec" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_ecdh" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_ecdsa" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_encoder" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_engine" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_ess" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_evp" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_fips_names" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_fipskey" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_hmac" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_hpke" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_http" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_indicator" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_kdf" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_lhash" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_macros" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_md4" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_md5" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_ml_kem" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_modes" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_obj_mac" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_objects" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_ocsp" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_opensslv" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_ossl_typ" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_param_build" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_params" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_pem" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_pem2" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_pkcs12" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_pkcs7" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_prov_ssl" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_provider" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_quic" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_rand" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_rc2" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_rc4" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_ripemd" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_rsa" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_safestack" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_seed" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_self_test" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_sha" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_srp" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_srtp" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_ssl" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_ssl2" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_sslerr_legacy" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_stack" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_store" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_symhacks" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_thread" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_tls1" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_ts" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_txt_db" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_types" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_ui" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_whrlpool" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_x509" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_x509_acert" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_x509_vfy" => [ - "libcrypto", - "libssl" - ], - "test/buildtest_c_x509v3" => [ - "libcrypto", - "libssl" - ], - "test/byteorder_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/ca_internals_test" => [ - "libssl", - "test/libtestutil.a" - ], - "test/casttest" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/cert_comp_test" => [ - "libcrypto.a", - "libssl.a", - "test/libtestutil.a" - ], - "test/chacha_internal_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/cipher_overhead_test" => [ - "libcrypto.a", - "libssl.a", - "test/libtestutil.a" - ], - "test/cipherbytes_test" => [ - "libcrypto", - "libssl", - "test/libtestutil.a" - ], - "test/cipherlist_test" => [ - "libcrypto", - "libssl", - "test/libtestutil.a" - ], - "test/ciphername_test" => [ - "libcrypto", - "libssl", - "test/libtestutil.a" - ], - "test/clienthellotest" => [ - "libcrypto", - "libssl", - "test/libtestutil.a" - ], - "test/cmactest" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/cmp_asn_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/cmp_client_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/cmp_ctx_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/cmp_hdr_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/cmp_msg_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/cmp_protect_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/cmp_server_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/cmp_status_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/cmp_vfy_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/cmsapitest" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/conf_include_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/confdump" => [ - "libcrypto" - ], - "test/constant_time_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/context_internal_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/crltest" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/ct_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/ctype_internal_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/curve448_internal_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/d2i_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/danetest" => [ - "libcrypto", - "libssl", - "test/libtestutil.a" - ], - "test/decoder_propq_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/defltfips_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/destest" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/dhtest" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/drbgtest" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/dsa_no_digest_size_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/dsatest" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/dtls_mtu_test" => [ - "libcrypto", - "libssl", - "test/libtestutil.a" - ], - "test/dtlstest" => [ - "libcrypto", - "libssl", - "test/libtestutil.a" - ], - "test/dtlsv1listentest" => [ - "libssl", - "test/libtestutil.a" - ], - "test/ec_internal_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/ecdsatest" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/ecstresstest" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/ectest" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/endecode_test" => [ - "libcrypto.a", - "providers/libcommon.a", - "providers/liblegacy.a", - "test/libtestutil.a" - ], - "test/endecoder_legacy_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/enginetest" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/errtest" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/evp_byname_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/evp_extra_test" => [ - "libcrypto.a", - "providers/libcommon.a", - "providers/liblegacy.a", - "test/libtestutil.a" - ], - "test/evp_extra_test2" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/evp_fetch_prov_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/evp_kdf_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/evp_libctx_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/evp_pkey_ctx_new_from_name" => [ - "libcrypto" - ], - "test/evp_pkey_dhkem_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/evp_pkey_dparams_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/evp_pkey_provided_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/evp_skey_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/evp_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/evp_xof_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/exdatatest" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/exptest" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/ext_internal_test" => [ - "libcrypto.a", - "libssl.a", - "test/libtestutil.a" - ], - "test/fatalerrtest" => [ - "libcrypto", - "libssl", - "test/libtestutil.a" - ], - "test/ffc_internal_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/fips_version_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/gmdifftest" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/hexstr_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/hmactest" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/hpke_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/http_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/ideatest" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/igetest" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/json_test" => [ - "libcrypto.a", - "libssl.a", - "test/libtestutil.a" - ], - "test/keymgmt_internal_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/lhash_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/libtestutil.a" => [ - "libcrypto" - ], - "test/list_test" => [ - "test/libtestutil.a" - ], - "test/localetest" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/mdc2_internal_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/mdc2test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/membio_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/memleaktest" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/ml_dsa_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/ml_kem_evp_extra_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/ml_kem_internal_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/modes_internal_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/namemap_internal_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/nodefltctxtest" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/ocspapitest" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/ossl_store_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/packettest" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/pairwise_fail_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/param_build_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/params_api_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/params_conversion_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/params_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/pbelutest" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/pbetest" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/pem_read_depr_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/pemtest" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/pkcs12_api_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/pkcs12_format_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/pkcs7_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/pkey_meth_kdf_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/pkey_meth_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/poly1305_internal_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/priority_queue_test" => [ - "libcrypto", - "libssl.a", - "test/libtestutil.a" - ], - "test/property_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/prov_config_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/provfetchtest" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/provider_default_search_path_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/provider_fallback_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/provider_internal_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/provider_pkey_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/provider_status_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/provider_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/punycode_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/quic_ackm_test" => [ - "libcrypto.a", - "libssl.a", - "test/libtestutil.a" - ], - "test/quic_cc_test" => [ - "libcrypto.a", - "libssl.a", - "test/libtestutil.a" - ], - "test/quic_cfq_test" => [ - "libcrypto.a", - "libssl.a", - "test/libtestutil.a" - ], - "test/quic_client_test" => [ - "libcrypto.a", - "libssl.a", - "test/libtestutil.a" - ], - "test/quic_fc_test" => [ - "libcrypto.a", - "libssl.a", - "test/libtestutil.a" - ], - "test/quic_fifd_test" => [ - "libcrypto.a", - "libssl.a", - "test/libtestutil.a" - ], - "test/quic_lcidm_test" => [ - "libcrypto.a", - "libssl.a", - "test/libtestutil.a" - ], - "test/quic_multistream_test" => [ - "libcrypto.a", - "libssl.a", - "test/libtestutil.a" - ], - "test/quic_newcid_test" => [ - "libcrypto.a", - "libssl.a", - "test/libtestutil.a" - ], - "test/quic_qlog_test" => [ - "libcrypto.a", - "libssl.a", - "test/libtestutil.a" - ], - "test/quic_radix_test" => [ - "libcrypto.a", - "libssl.a", - "test/libtestutil.a" - ], - "test/quic_rcidm_test" => [ - "libcrypto.a", - "libssl.a", - "test/libtestutil.a" - ], - "test/quic_record_test" => [ - "libcrypto.a", - "libssl.a", - "test/libtestutil.a" - ], - "test/quic_srt_gen_test" => [ - "libcrypto.a", - "libssl.a", - "test/libtestutil.a" - ], - "test/quic_srtm_test" => [ - "libcrypto.a", - "libssl.a", - "test/libtestutil.a" - ], - "test/quic_stream_test" => [ - "libcrypto.a", - "libssl.a", - "test/libtestutil.a" - ], - "test/quic_tserver_test" => [ - "libcrypto.a", - "libssl.a", - "test/libtestutil.a" - ], - "test/quic_txp_test" => [ - "libcrypto.a", - "libssl.a", - "test/libtestutil.a" - ], - "test/quic_txpim_test" => [ - "libcrypto.a", - "libssl.a", - "test/libtestutil.a" - ], - "test/quic_wire_test" => [ - "libcrypto.a", - "libssl.a", - "test/libtestutil.a" - ], - "test/quicapitest" => [ - "libcrypto.a", - "libssl.a", - "test/libtestutil.a" - ], - "test/quicfaultstest" => [ - "libcrypto.a", - "libssl.a", - "test/libtestutil.a" - ], - "test/rand_status_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/rand_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/rc2test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/rc4test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/rc5test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/rdcpu_sanitytest" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/recordlentest" => [ - "libcrypto", - "libssl", - "test/libtestutil.a" - ], - "test/rpktest" => [ - "libcrypto", - "libssl", - "test/libtestutil.a" - ], - "test/rsa_mp_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/rsa_sp800_56b_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/rsa_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/rsa_x931_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/safe_math_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/sanitytest" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/secmemtest" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/servername_test" => [ - "libcrypto", - "libssl", - "test/libtestutil.a" - ], - "test/sha_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/siphash_internal_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/slh_dsa_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/sm2_internal_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/sm3_internal_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/sm4_internal_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/sparse_array_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/srptest" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/ssl_cert_table_internal_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/ssl_ctx_test" => [ - "libcrypto", - "libssl", - "test/libtestutil.a" - ], - "test/ssl_handshake_rtt_test" => [ - "libcrypto.a", - "libssl.a", - "test/libtestutil.a" - ], - "test/ssl_old_test" => [ - "libcrypto.a", - "libssl.a", - "test/libtestutil.a" - ], - "test/ssl_test" => [ - "libcrypto", - "libssl", - "test/libtestutil.a" - ], - "test/ssl_test_ctx_test" => [ - "libcrypto", - "libssl", - "test/libtestutil.a" - ], - "test/sslapitest" => [ - "libcrypto.a", - "libssl.a", - "test/libtestutil.a" - ], - "test/sslbuffertest" => [ - "libcrypto", - "libssl", - "test/libtestutil.a" - ], - "test/sslcorrupttest" => [ - "libcrypto", - "libssl", - "test/libtestutil.a" - ], - "test/stack_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/strtoultest" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/sysdefaulttest" => [ - "libcrypto", - "libssl", - "test/libtestutil.a" - ], - "test/test_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/threadpool_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/threadstest" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/threadstest_fips" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/time_offset_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/time_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/timing_load_creds" => [ - "libcrypto.a" - ], - "test/tls13ccstest" => [ - "libcrypto", - "libssl", - "test/libtestutil.a" - ], - "test/tls13encryptiontest" => [ - "libcrypto.a", - "libssl.a", - "test/libtestutil.a" - ], - "test/tls13groupselection_test" => [ - "libcrypto", - "libssl", - "test/libtestutil.a" - ], - "test/tls13secretstest" => [ - "libcrypto", - "libssl", - "test/libtestutil.a" - ], - "test/trace_api_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/uitest" => [ - "libcrypto", - "libssl", - "test/libtestutil.a" - ], - "test/upcallstest" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/user_property_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/v3ext" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/v3nametest" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/verify_extra_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/versions" => [ - "libcrypto" - ], - "test/wpackettest" => [ - "libcrypto.a", - "libssl.a", - "test/libtestutil.a" - ], - "test/x509_acert_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/x509_check_cert_pkey_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/x509_dup_cert_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/x509_internal_test" => [ - "libcrypto.a", - "test/libtestutil.a" - ], - "test/x509_load_cert_file_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/x509_req_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/x509_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/x509_time_test" => [ - "libcrypto", - "test/libtestutil.a" - ], - "test/x509aux" => [ - "libcrypto", - "test/libtestutil.a" - ], - "util/wrap.pl" => [ - "configdata.pm" - ] - }, - "dirinfo" => { - "apps" => { - "deps" => [ - "apps/ca_internals_test-bin-ca.o" - ], - "products" => { - "bin" => [ - "apps/openssl", - "test/ca_internals_test" - ], - "script" => [ - "apps/CA.pl", - "apps/tsget.pl" - ] - } - }, - "apps/lib" => { - "deps" => [ - "apps/lib/openssl-bin-cmp_mock_srv.o", - "apps/lib/ca_internals_test-bin-app_libctx.o", - "apps/lib/ca_internals_test-bin-app_provider.o", - "apps/lib/ca_internals_test-bin-app_rand.o", - "apps/lib/ca_internals_test-bin-app_x509.o", - "apps/lib/ca_internals_test-bin-apps.o", - "apps/lib/ca_internals_test-bin-apps_ui.o", - "apps/lib/ca_internals_test-bin-engine.o", - "apps/lib/ca_internals_test-bin-fmt.o", - "apps/lib/cmp_client_test-bin-cmp_mock_srv.o", - "apps/lib/uitest-bin-apps_ui.o", - "apps/lib/libapps-lib-app_libctx.o", - "apps/lib/libapps-lib-app_params.o", - "apps/lib/libapps-lib-app_provider.o", - "apps/lib/libapps-lib-app_rand.o", - "apps/lib/libapps-lib-app_x509.o", - "apps/lib/libapps-lib-apps.o", - "apps/lib/libapps-lib-apps_opt_printf.o", - "apps/lib/libapps-lib-apps_ui.o", - "apps/lib/libapps-lib-columns.o", - "apps/lib/libapps-lib-engine.o", - "apps/lib/libapps-lib-engine_loader.o", - "apps/lib/libapps-lib-fmt.o", - "apps/lib/libapps-lib-http_server.o", - "apps/lib/libapps-lib-log.o", - "apps/lib/libapps-lib-names.o", - "apps/lib/libapps-lib-opt.o", - "apps/lib/libapps-lib-s_cb.o", - "apps/lib/libapps-lib-s_socket.o", - "apps/lib/libapps-lib-tlssrp_depr.o", - "apps/lib/libtestutil-lib-opt.o" - ], - "products" => { - "bin" => [ - "apps/openssl", - "test/ca_internals_test", - "test/cmp_client_test", - "test/uitest" - ], - "lib" => [ - "apps/libapps.a", - "test/libtestutil.a" - ] - } - }, - "crypto" => { - "deps" => [ - "crypto/asn1_time_test-bin-ctype.o", - "crypto/ca_internals_test-bin-ctype.o", - "crypto/packettest-bin-quic_vlint.o", - "crypto/tls13secretstest-bin-packet.o", - "crypto/tls13secretstest-bin-quic_vlint.o", - "crypto/legacy-dso-cpuid.o", - "crypto/legacy-dso-ctype.o", - "crypto/legacy-dso-x86_64cpuid.o", - "crypto/libcrypto-lib-asn1_dsa.o", - "crypto/libcrypto-lib-bsearch.o", - "crypto/libcrypto-lib-comp_methods.o", - "crypto/libcrypto-lib-context.o", - "crypto/libcrypto-lib-core_algorithm.o", - "crypto/libcrypto-lib-core_fetch.o", - "crypto/libcrypto-lib-core_namemap.o", - "crypto/libcrypto-lib-cpt_err.o", - "crypto/libcrypto-lib-cpuid.o", - "crypto/libcrypto-lib-cryptlib.o", - "crypto/libcrypto-lib-ctype.o", - "crypto/libcrypto-lib-cversion.o", - "crypto/libcrypto-lib-defaults.o", - "crypto/libcrypto-lib-der_writer.o", - "crypto/libcrypto-lib-deterministic_nonce.o", - "crypto/libcrypto-lib-ebcdic.o", - "crypto/libcrypto-lib-ex_data.o", - "crypto/libcrypto-lib-getenv.o", - "crypto/libcrypto-lib-indicator_core.o", - "crypto/libcrypto-lib-info.o", - "crypto/libcrypto-lib-init.o", - "crypto/libcrypto-lib-initthread.o", - "crypto/libcrypto-lib-mem.o", - "crypto/libcrypto-lib-mem_sec.o", - "crypto/libcrypto-lib-o_dir.o", - "crypto/libcrypto-lib-o_fopen.o", - "crypto/libcrypto-lib-o_init.o", - "crypto/libcrypto-lib-o_str.o", - "crypto/libcrypto-lib-o_time.o", - "crypto/libcrypto-lib-packet.o", - "crypto/libcrypto-lib-param_build.o", - "crypto/libcrypto-lib-param_build_set.o", - "crypto/libcrypto-lib-params.o", - "crypto/libcrypto-lib-params_dup.o", - "crypto/libcrypto-lib-params_from_text.o", - "crypto/libcrypto-lib-params_idx.o", - "crypto/libcrypto-lib-passphrase.o", - "crypto/libcrypto-lib-provider.o", - "crypto/libcrypto-lib-provider_child.o", - "crypto/libcrypto-lib-provider_conf.o", - "crypto/libcrypto-lib-provider_core.o", - "crypto/libcrypto-lib-provider_predefined.o", - "crypto/libcrypto-lib-punycode.o", - "crypto/libcrypto-lib-quic_vlint.o", - "crypto/libcrypto-lib-self_test_core.o", - "crypto/libcrypto-lib-sleep.o", - "crypto/libcrypto-lib-sparse_array.o", - "crypto/libcrypto-lib-ssl_err.o", - "crypto/libcrypto-lib-threads_lib.o", - "crypto/libcrypto-lib-threads_none.o", - "crypto/libcrypto-lib-threads_pthread.o", - "crypto/libcrypto-lib-threads_win.o", - "crypto/libcrypto-lib-time.o", - "crypto/libcrypto-lib-trace.o", - "crypto/libcrypto-lib-uid.o", - "crypto/libcrypto-lib-x86_64cpuid.o", - "crypto/libcrypto-shlib-asn1_dsa.o", - "crypto/libcrypto-shlib-bsearch.o", - "crypto/libcrypto-shlib-comp_methods.o", - "crypto/libcrypto-shlib-context.o", - "crypto/libcrypto-shlib-core_algorithm.o", - "crypto/libcrypto-shlib-core_fetch.o", - "crypto/libcrypto-shlib-core_namemap.o", - "crypto/libcrypto-shlib-cpt_err.o", - "crypto/libcrypto-shlib-cpuid.o", - "crypto/libcrypto-shlib-cryptlib.o", - "crypto/libcrypto-shlib-ctype.o", - "crypto/libcrypto-shlib-cversion.o", - "crypto/libcrypto-shlib-defaults.o", - "crypto/libcrypto-shlib-der_writer.o", - "crypto/libcrypto-shlib-deterministic_nonce.o", - "crypto/libcrypto-shlib-ebcdic.o", - "crypto/libcrypto-shlib-ex_data.o", - "crypto/libcrypto-shlib-getenv.o", - "crypto/libcrypto-shlib-indicator_core.o", - "crypto/libcrypto-shlib-info.o", - "crypto/libcrypto-shlib-init.o", - "crypto/libcrypto-shlib-initthread.o", - "crypto/libcrypto-shlib-mem.o", - "crypto/libcrypto-shlib-mem_sec.o", - "crypto/libcrypto-shlib-o_dir.o", - "crypto/libcrypto-shlib-o_fopen.o", - "crypto/libcrypto-shlib-o_init.o", - "crypto/libcrypto-shlib-o_str.o", - "crypto/libcrypto-shlib-o_time.o", - "crypto/libcrypto-shlib-packet.o", - "crypto/libcrypto-shlib-param_build.o", - "crypto/libcrypto-shlib-param_build_set.o", - "crypto/libcrypto-shlib-params.o", - "crypto/libcrypto-shlib-params_dup.o", - "crypto/libcrypto-shlib-params_from_text.o", - "crypto/libcrypto-shlib-params_idx.o", - "crypto/libcrypto-shlib-passphrase.o", - "crypto/libcrypto-shlib-provider.o", - "crypto/libcrypto-shlib-provider_child.o", - "crypto/libcrypto-shlib-provider_conf.o", - "crypto/libcrypto-shlib-provider_core.o", - "crypto/libcrypto-shlib-provider_predefined.o", - "crypto/libcrypto-shlib-punycode.o", - "crypto/libcrypto-shlib-quic_vlint.o", - "crypto/libcrypto-shlib-self_test_core.o", - "crypto/libcrypto-shlib-sleep.o", - "crypto/libcrypto-shlib-sparse_array.o", - "crypto/libcrypto-shlib-ssl_err.o", - "crypto/libcrypto-shlib-threads_lib.o", - "crypto/libcrypto-shlib-threads_none.o", - "crypto/libcrypto-shlib-threads_pthread.o", - "crypto/libcrypto-shlib-threads_win.o", - "crypto/libcrypto-shlib-time.o", - "crypto/libcrypto-shlib-trace.o", - "crypto/libcrypto-shlib-uid.o", - "crypto/libcrypto-shlib-x86_64cpuid.o", - "crypto/libssl-shlib-ctype.o", - "crypto/libssl-shlib-getenv.o", - "crypto/libssl-shlib-packet.o", - "crypto/libssl-shlib-quic_vlint.o", - "crypto/libssl-shlib-time.o" - ], - "products" => { - "bin" => [ - "test/asn1_time_test", - "test/ca_internals_test", - "test/packettest", - "test/tls13secretstest" - ], - "dso" => [ - "providers/legacy" - ], - "lib" => [ - "libcrypto", - "libssl" - ] - } - }, - "crypto/aes" => { - "deps" => [ - "crypto/aes/libcrypto-lib-aes-x86_64.o", - "crypto/aes/libcrypto-lib-aes_cfb.o", - "crypto/aes/libcrypto-lib-aes_ecb.o", - "crypto/aes/libcrypto-lib-aes_ige.o", - "crypto/aes/libcrypto-lib-aes_misc.o", - "crypto/aes/libcrypto-lib-aes_ofb.o", - "crypto/aes/libcrypto-lib-aes_wrap.o", - "crypto/aes/libcrypto-lib-aesni-mb-x86_64.o", - "crypto/aes/libcrypto-lib-aesni-sha1-x86_64.o", - "crypto/aes/libcrypto-lib-aesni-sha256-x86_64.o", - "crypto/aes/libcrypto-lib-aesni-x86_64.o", - "crypto/aes/libcrypto-lib-aesni-xts-avx512.o", - "crypto/aes/libcrypto-lib-bsaes-x86_64.o", - "crypto/aes/libcrypto-lib-vpaes-x86_64.o", - "crypto/aes/libcrypto-shlib-aes-x86_64.o", - "crypto/aes/libcrypto-shlib-aes_cfb.o", - "crypto/aes/libcrypto-shlib-aes_ecb.o", - "crypto/aes/libcrypto-shlib-aes_ige.o", - "crypto/aes/libcrypto-shlib-aes_misc.o", - "crypto/aes/libcrypto-shlib-aes_ofb.o", - "crypto/aes/libcrypto-shlib-aes_wrap.o", - "crypto/aes/libcrypto-shlib-aesni-mb-x86_64.o", - "crypto/aes/libcrypto-shlib-aesni-sha1-x86_64.o", - "crypto/aes/libcrypto-shlib-aesni-sha256-x86_64.o", - "crypto/aes/libcrypto-shlib-aesni-x86_64.o", - "crypto/aes/libcrypto-shlib-aesni-xts-avx512.o", - "crypto/aes/libcrypto-shlib-bsaes-x86_64.o", - "crypto/aes/libcrypto-shlib-vpaes-x86_64.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/asn1" => { - "deps" => [ - "crypto/asn1/asn1_time_test-bin-a_time.o", - "crypto/asn1/ca_internals_test-bin-a_time.o", - "crypto/asn1/libcrypto-lib-a_bitstr.o", - "crypto/asn1/libcrypto-lib-a_d2i_fp.o", - "crypto/asn1/libcrypto-lib-a_digest.o", - "crypto/asn1/libcrypto-lib-a_dup.o", - "crypto/asn1/libcrypto-lib-a_gentm.o", - "crypto/asn1/libcrypto-lib-a_i2d_fp.o", - "crypto/asn1/libcrypto-lib-a_int.o", - "crypto/asn1/libcrypto-lib-a_mbstr.o", - "crypto/asn1/libcrypto-lib-a_object.o", - "crypto/asn1/libcrypto-lib-a_octet.o", - "crypto/asn1/libcrypto-lib-a_print.o", - "crypto/asn1/libcrypto-lib-a_sign.o", - "crypto/asn1/libcrypto-lib-a_strex.o", - "crypto/asn1/libcrypto-lib-a_strnid.o", - "crypto/asn1/libcrypto-lib-a_time.o", - "crypto/asn1/libcrypto-lib-a_type.o", - "crypto/asn1/libcrypto-lib-a_utctm.o", - "crypto/asn1/libcrypto-lib-a_utf8.o", - "crypto/asn1/libcrypto-lib-a_verify.o", - "crypto/asn1/libcrypto-lib-ameth_lib.o", - "crypto/asn1/libcrypto-lib-asn1_err.o", - "crypto/asn1/libcrypto-lib-asn1_gen.o", - "crypto/asn1/libcrypto-lib-asn1_item_list.o", - "crypto/asn1/libcrypto-lib-asn1_lib.o", - "crypto/asn1/libcrypto-lib-asn1_parse.o", - "crypto/asn1/libcrypto-lib-asn_mime.o", - "crypto/asn1/libcrypto-lib-asn_moid.o", - "crypto/asn1/libcrypto-lib-asn_mstbl.o", - "crypto/asn1/libcrypto-lib-asn_pack.o", - "crypto/asn1/libcrypto-lib-bio_asn1.o", - "crypto/asn1/libcrypto-lib-bio_ndef.o", - "crypto/asn1/libcrypto-lib-d2i_param.o", - "crypto/asn1/libcrypto-lib-d2i_pr.o", - "crypto/asn1/libcrypto-lib-d2i_pu.o", - "crypto/asn1/libcrypto-lib-evp_asn1.o", - "crypto/asn1/libcrypto-lib-f_int.o", - "crypto/asn1/libcrypto-lib-f_string.o", - "crypto/asn1/libcrypto-lib-i2d_evp.o", - "crypto/asn1/libcrypto-lib-n_pkey.o", - "crypto/asn1/libcrypto-lib-nsseq.o", - "crypto/asn1/libcrypto-lib-p5_pbe.o", - "crypto/asn1/libcrypto-lib-p5_pbev2.o", - "crypto/asn1/libcrypto-lib-p5_scrypt.o", - "crypto/asn1/libcrypto-lib-p8_pkey.o", - "crypto/asn1/libcrypto-lib-t_bitst.o", - "crypto/asn1/libcrypto-lib-t_pkey.o", - "crypto/asn1/libcrypto-lib-t_spki.o", - "crypto/asn1/libcrypto-lib-tasn_dec.o", - "crypto/asn1/libcrypto-lib-tasn_enc.o", - "crypto/asn1/libcrypto-lib-tasn_fre.o", - "crypto/asn1/libcrypto-lib-tasn_new.o", - "crypto/asn1/libcrypto-lib-tasn_prn.o", - "crypto/asn1/libcrypto-lib-tasn_scn.o", - "crypto/asn1/libcrypto-lib-tasn_typ.o", - "crypto/asn1/libcrypto-lib-tasn_utl.o", - "crypto/asn1/libcrypto-lib-x_algor.o", - "crypto/asn1/libcrypto-lib-x_bignum.o", - "crypto/asn1/libcrypto-lib-x_info.o", - "crypto/asn1/libcrypto-lib-x_int64.o", - "crypto/asn1/libcrypto-lib-x_long.o", - "crypto/asn1/libcrypto-lib-x_pkey.o", - "crypto/asn1/libcrypto-lib-x_sig.o", - "crypto/asn1/libcrypto-lib-x_spki.o", - "crypto/asn1/libcrypto-lib-x_val.o", - "crypto/asn1/libcrypto-shlib-a_bitstr.o", - "crypto/asn1/libcrypto-shlib-a_d2i_fp.o", - "crypto/asn1/libcrypto-shlib-a_digest.o", - "crypto/asn1/libcrypto-shlib-a_dup.o", - "crypto/asn1/libcrypto-shlib-a_gentm.o", - "crypto/asn1/libcrypto-shlib-a_i2d_fp.o", - "crypto/asn1/libcrypto-shlib-a_int.o", - "crypto/asn1/libcrypto-shlib-a_mbstr.o", - "crypto/asn1/libcrypto-shlib-a_object.o", - "crypto/asn1/libcrypto-shlib-a_octet.o", - "crypto/asn1/libcrypto-shlib-a_print.o", - "crypto/asn1/libcrypto-shlib-a_sign.o", - "crypto/asn1/libcrypto-shlib-a_strex.o", - "crypto/asn1/libcrypto-shlib-a_strnid.o", - "crypto/asn1/libcrypto-shlib-a_time.o", - "crypto/asn1/libcrypto-shlib-a_type.o", - "crypto/asn1/libcrypto-shlib-a_utctm.o", - "crypto/asn1/libcrypto-shlib-a_utf8.o", - "crypto/asn1/libcrypto-shlib-a_verify.o", - "crypto/asn1/libcrypto-shlib-ameth_lib.o", - "crypto/asn1/libcrypto-shlib-asn1_err.o", - "crypto/asn1/libcrypto-shlib-asn1_gen.o", - "crypto/asn1/libcrypto-shlib-asn1_item_list.o", - "crypto/asn1/libcrypto-shlib-asn1_lib.o", - "crypto/asn1/libcrypto-shlib-asn1_parse.o", - "crypto/asn1/libcrypto-shlib-asn_mime.o", - "crypto/asn1/libcrypto-shlib-asn_moid.o", - "crypto/asn1/libcrypto-shlib-asn_mstbl.o", - "crypto/asn1/libcrypto-shlib-asn_pack.o", - "crypto/asn1/libcrypto-shlib-bio_asn1.o", - "crypto/asn1/libcrypto-shlib-bio_ndef.o", - "crypto/asn1/libcrypto-shlib-d2i_param.o", - "crypto/asn1/libcrypto-shlib-d2i_pr.o", - "crypto/asn1/libcrypto-shlib-d2i_pu.o", - "crypto/asn1/libcrypto-shlib-evp_asn1.o", - "crypto/asn1/libcrypto-shlib-f_int.o", - "crypto/asn1/libcrypto-shlib-f_string.o", - "crypto/asn1/libcrypto-shlib-i2d_evp.o", - "crypto/asn1/libcrypto-shlib-n_pkey.o", - "crypto/asn1/libcrypto-shlib-nsseq.o", - "crypto/asn1/libcrypto-shlib-p5_pbe.o", - "crypto/asn1/libcrypto-shlib-p5_pbev2.o", - "crypto/asn1/libcrypto-shlib-p5_scrypt.o", - "crypto/asn1/libcrypto-shlib-p8_pkey.o", - "crypto/asn1/libcrypto-shlib-t_bitst.o", - "crypto/asn1/libcrypto-shlib-t_pkey.o", - "crypto/asn1/libcrypto-shlib-t_spki.o", - "crypto/asn1/libcrypto-shlib-tasn_dec.o", - "crypto/asn1/libcrypto-shlib-tasn_enc.o", - "crypto/asn1/libcrypto-shlib-tasn_fre.o", - "crypto/asn1/libcrypto-shlib-tasn_new.o", - "crypto/asn1/libcrypto-shlib-tasn_prn.o", - "crypto/asn1/libcrypto-shlib-tasn_scn.o", - "crypto/asn1/libcrypto-shlib-tasn_typ.o", - "crypto/asn1/libcrypto-shlib-tasn_utl.o", - "crypto/asn1/libcrypto-shlib-x_algor.o", - "crypto/asn1/libcrypto-shlib-x_bignum.o", - "crypto/asn1/libcrypto-shlib-x_info.o", - "crypto/asn1/libcrypto-shlib-x_int64.o", - "crypto/asn1/libcrypto-shlib-x_long.o", - "crypto/asn1/libcrypto-shlib-x_pkey.o", - "crypto/asn1/libcrypto-shlib-x_sig.o", - "crypto/asn1/libcrypto-shlib-x_spki.o", - "crypto/asn1/libcrypto-shlib-x_val.o" - ], - "products" => { - "bin" => [ - "test/asn1_time_test", - "test/ca_internals_test" - ], - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/async" => { - "deps" => [ - "crypto/async/libcrypto-lib-async.o", - "crypto/async/libcrypto-lib-async_err.o", - "crypto/async/libcrypto-lib-async_wait.o", - "crypto/async/libcrypto-shlib-async.o", - "crypto/async/libcrypto-shlib-async_err.o", - "crypto/async/libcrypto-shlib-async_wait.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/async/arch" => { - "deps" => [ - "crypto/async/arch/libcrypto-lib-async_null.o", - "crypto/async/arch/libcrypto-lib-async_posix.o", - "crypto/async/arch/libcrypto-lib-async_win.o", - "crypto/async/arch/libcrypto-shlib-async_null.o", - "crypto/async/arch/libcrypto-shlib-async_posix.o", - "crypto/async/arch/libcrypto-shlib-async_win.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/bf" => { - "deps" => [ - "crypto/bf/libcrypto-lib-bf_cfb64.o", - "crypto/bf/libcrypto-lib-bf_ecb.o", - "crypto/bf/libcrypto-lib-bf_enc.o", - "crypto/bf/libcrypto-lib-bf_ofb64.o", - "crypto/bf/libcrypto-lib-bf_skey.o", - "crypto/bf/libcrypto-shlib-bf_cfb64.o", - "crypto/bf/libcrypto-shlib-bf_ecb.o", - "crypto/bf/libcrypto-shlib-bf_enc.o", - "crypto/bf/libcrypto-shlib-bf_ofb64.o", - "crypto/bf/libcrypto-shlib-bf_skey.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/bio" => { - "deps" => [ - "crypto/bio/libcrypto-lib-bf_buff.o", - "crypto/bio/libcrypto-lib-bf_lbuf.o", - "crypto/bio/libcrypto-lib-bf_nbio.o", - "crypto/bio/libcrypto-lib-bf_null.o", - "crypto/bio/libcrypto-lib-bf_prefix.o", - "crypto/bio/libcrypto-lib-bf_readbuff.o", - "crypto/bio/libcrypto-lib-bio_addr.o", - "crypto/bio/libcrypto-lib-bio_cb.o", - "crypto/bio/libcrypto-lib-bio_dump.o", - "crypto/bio/libcrypto-lib-bio_err.o", - "crypto/bio/libcrypto-lib-bio_lib.o", - "crypto/bio/libcrypto-lib-bio_meth.o", - "crypto/bio/libcrypto-lib-bio_print.o", - "crypto/bio/libcrypto-lib-bio_sock.o", - "crypto/bio/libcrypto-lib-bio_sock2.o", - "crypto/bio/libcrypto-lib-bss_acpt.o", - "crypto/bio/libcrypto-lib-bss_bio.o", - "crypto/bio/libcrypto-lib-bss_conn.o", - "crypto/bio/libcrypto-lib-bss_core.o", - "crypto/bio/libcrypto-lib-bss_dgram.o", - "crypto/bio/libcrypto-lib-bss_dgram_pair.o", - "crypto/bio/libcrypto-lib-bss_fd.o", - "crypto/bio/libcrypto-lib-bss_file.o", - "crypto/bio/libcrypto-lib-bss_log.o", - "crypto/bio/libcrypto-lib-bss_mem.o", - "crypto/bio/libcrypto-lib-bss_null.o", - "crypto/bio/libcrypto-lib-bss_sock.o", - "crypto/bio/libcrypto-lib-ossl_core_bio.o", - "crypto/bio/libcrypto-shlib-bf_buff.o", - "crypto/bio/libcrypto-shlib-bf_lbuf.o", - "crypto/bio/libcrypto-shlib-bf_nbio.o", - "crypto/bio/libcrypto-shlib-bf_null.o", - "crypto/bio/libcrypto-shlib-bf_prefix.o", - "crypto/bio/libcrypto-shlib-bf_readbuff.o", - "crypto/bio/libcrypto-shlib-bio_addr.o", - "crypto/bio/libcrypto-shlib-bio_cb.o", - "crypto/bio/libcrypto-shlib-bio_dump.o", - "crypto/bio/libcrypto-shlib-bio_err.o", - "crypto/bio/libcrypto-shlib-bio_lib.o", - "crypto/bio/libcrypto-shlib-bio_meth.o", - "crypto/bio/libcrypto-shlib-bio_print.o", - "crypto/bio/libcrypto-shlib-bio_sock.o", - "crypto/bio/libcrypto-shlib-bio_sock2.o", - "crypto/bio/libcrypto-shlib-bss_acpt.o", - "crypto/bio/libcrypto-shlib-bss_bio.o", - "crypto/bio/libcrypto-shlib-bss_conn.o", - "crypto/bio/libcrypto-shlib-bss_core.o", - "crypto/bio/libcrypto-shlib-bss_dgram.o", - "crypto/bio/libcrypto-shlib-bss_dgram_pair.o", - "crypto/bio/libcrypto-shlib-bss_fd.o", - "crypto/bio/libcrypto-shlib-bss_file.o", - "crypto/bio/libcrypto-shlib-bss_log.o", - "crypto/bio/libcrypto-shlib-bss_mem.o", - "crypto/bio/libcrypto-shlib-bss_null.o", - "crypto/bio/libcrypto-shlib-bss_sock.o", - "crypto/bio/libcrypto-shlib-ossl_core_bio.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/bn" => { - "deps" => [ - "crypto/bn/libcrypto-lib-bn_add.o", - "crypto/bn/libcrypto-lib-bn_blind.o", - "crypto/bn/libcrypto-lib-bn_const.o", - "crypto/bn/libcrypto-lib-bn_conv.o", - "crypto/bn/libcrypto-lib-bn_ctx.o", - "crypto/bn/libcrypto-lib-bn_depr.o", - "crypto/bn/libcrypto-lib-bn_dh.o", - "crypto/bn/libcrypto-lib-bn_div.o", - "crypto/bn/libcrypto-lib-bn_err.o", - "crypto/bn/libcrypto-lib-bn_exp.o", - "crypto/bn/libcrypto-lib-bn_exp2.o", - "crypto/bn/libcrypto-lib-bn_gcd.o", - "crypto/bn/libcrypto-lib-bn_gf2m.o", - "crypto/bn/libcrypto-lib-bn_intern.o", - "crypto/bn/libcrypto-lib-bn_kron.o", - "crypto/bn/libcrypto-lib-bn_lib.o", - "crypto/bn/libcrypto-lib-bn_mod.o", - "crypto/bn/libcrypto-lib-bn_mont.o", - "crypto/bn/libcrypto-lib-bn_mpi.o", - "crypto/bn/libcrypto-lib-bn_mul.o", - "crypto/bn/libcrypto-lib-bn_nist.o", - "crypto/bn/libcrypto-lib-bn_prime.o", - "crypto/bn/libcrypto-lib-bn_print.o", - "crypto/bn/libcrypto-lib-bn_rand.o", - "crypto/bn/libcrypto-lib-bn_recp.o", - "crypto/bn/libcrypto-lib-bn_rsa_fips186_4.o", - "crypto/bn/libcrypto-lib-bn_shift.o", - "crypto/bn/libcrypto-lib-bn_sqr.o", - "crypto/bn/libcrypto-lib-bn_sqrt.o", - "crypto/bn/libcrypto-lib-bn_srp.o", - "crypto/bn/libcrypto-lib-bn_word.o", - "crypto/bn/libcrypto-lib-bn_x931p.o", - "crypto/bn/libcrypto-lib-rsaz-2k-avx512.o", - "crypto/bn/libcrypto-lib-rsaz-2k-avxifma.o", - "crypto/bn/libcrypto-lib-rsaz-3k-avx512.o", - "crypto/bn/libcrypto-lib-rsaz-3k-avxifma.o", - "crypto/bn/libcrypto-lib-rsaz-4k-avx512.o", - "crypto/bn/libcrypto-lib-rsaz-4k-avxifma.o", - "crypto/bn/libcrypto-lib-rsaz-avx2.o", - "crypto/bn/libcrypto-lib-rsaz-x86_64.o", - "crypto/bn/libcrypto-lib-rsaz_exp.o", - "crypto/bn/libcrypto-lib-rsaz_exp_x2.o", - "crypto/bn/libcrypto-lib-x86_64-gf2m.o", - "crypto/bn/libcrypto-lib-x86_64-mont.o", - "crypto/bn/libcrypto-lib-x86_64-mont5.o", - "crypto/bn/libcrypto-shlib-bn_add.o", - "crypto/bn/libcrypto-shlib-bn_blind.o", - "crypto/bn/libcrypto-shlib-bn_const.o", - "crypto/bn/libcrypto-shlib-bn_conv.o", - "crypto/bn/libcrypto-shlib-bn_ctx.o", - "crypto/bn/libcrypto-shlib-bn_depr.o", - "crypto/bn/libcrypto-shlib-bn_dh.o", - "crypto/bn/libcrypto-shlib-bn_div.o", - "crypto/bn/libcrypto-shlib-bn_err.o", - "crypto/bn/libcrypto-shlib-bn_exp.o", - "crypto/bn/libcrypto-shlib-bn_exp2.o", - "crypto/bn/libcrypto-shlib-bn_gcd.o", - "crypto/bn/libcrypto-shlib-bn_gf2m.o", - "crypto/bn/libcrypto-shlib-bn_intern.o", - "crypto/bn/libcrypto-shlib-bn_kron.o", - "crypto/bn/libcrypto-shlib-bn_lib.o", - "crypto/bn/libcrypto-shlib-bn_mod.o", - "crypto/bn/libcrypto-shlib-bn_mont.o", - "crypto/bn/libcrypto-shlib-bn_mpi.o", - "crypto/bn/libcrypto-shlib-bn_mul.o", - "crypto/bn/libcrypto-shlib-bn_nist.o", - "crypto/bn/libcrypto-shlib-bn_prime.o", - "crypto/bn/libcrypto-shlib-bn_print.o", - "crypto/bn/libcrypto-shlib-bn_rand.o", - "crypto/bn/libcrypto-shlib-bn_recp.o", - "crypto/bn/libcrypto-shlib-bn_rsa_fips186_4.o", - "crypto/bn/libcrypto-shlib-bn_shift.o", - "crypto/bn/libcrypto-shlib-bn_sqr.o", - "crypto/bn/libcrypto-shlib-bn_sqrt.o", - "crypto/bn/libcrypto-shlib-bn_srp.o", - "crypto/bn/libcrypto-shlib-bn_word.o", - "crypto/bn/libcrypto-shlib-bn_x931p.o", - "crypto/bn/libcrypto-shlib-rsaz-2k-avx512.o", - "crypto/bn/libcrypto-shlib-rsaz-2k-avxifma.o", - "crypto/bn/libcrypto-shlib-rsaz-3k-avx512.o", - "crypto/bn/libcrypto-shlib-rsaz-3k-avxifma.o", - "crypto/bn/libcrypto-shlib-rsaz-4k-avx512.o", - "crypto/bn/libcrypto-shlib-rsaz-4k-avxifma.o", - "crypto/bn/libcrypto-shlib-rsaz-avx2.o", - "crypto/bn/libcrypto-shlib-rsaz-x86_64.o", - "crypto/bn/libcrypto-shlib-rsaz_exp.o", - "crypto/bn/libcrypto-shlib-rsaz_exp_x2.o", - "crypto/bn/libcrypto-shlib-x86_64-gf2m.o", - "crypto/bn/libcrypto-shlib-x86_64-mont.o", - "crypto/bn/libcrypto-shlib-x86_64-mont5.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/bn/asm" => { - "deps" => [ - "crypto/bn/asm/libcrypto-lib-x86_64-gcc.o", - "crypto/bn/asm/libcrypto-shlib-x86_64-gcc.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/buffer" => { - "deps" => [ - "crypto/buffer/libcrypto-lib-buf_err.o", - "crypto/buffer/libcrypto-lib-buffer.o", - "crypto/buffer/libcrypto-shlib-buf_err.o", - "crypto/buffer/libcrypto-shlib-buffer.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/camellia" => { - "deps" => [ - "crypto/camellia/libcrypto-lib-cmll-x86_64.o", - "crypto/camellia/libcrypto-lib-cmll_cfb.o", - "crypto/camellia/libcrypto-lib-cmll_ctr.o", - "crypto/camellia/libcrypto-lib-cmll_ecb.o", - "crypto/camellia/libcrypto-lib-cmll_misc.o", - "crypto/camellia/libcrypto-lib-cmll_ofb.o", - "crypto/camellia/libcrypto-shlib-cmll-x86_64.o", - "crypto/camellia/libcrypto-shlib-cmll_cfb.o", - "crypto/camellia/libcrypto-shlib-cmll_ctr.o", - "crypto/camellia/libcrypto-shlib-cmll_ecb.o", - "crypto/camellia/libcrypto-shlib-cmll_misc.o", - "crypto/camellia/libcrypto-shlib-cmll_ofb.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/cast" => { - "deps" => [ - "crypto/cast/libcrypto-lib-c_cfb64.o", - "crypto/cast/libcrypto-lib-c_ecb.o", - "crypto/cast/libcrypto-lib-c_enc.o", - "crypto/cast/libcrypto-lib-c_ofb64.o", - "crypto/cast/libcrypto-lib-c_skey.o", - "crypto/cast/libcrypto-shlib-c_cfb64.o", - "crypto/cast/libcrypto-shlib-c_ecb.o", - "crypto/cast/libcrypto-shlib-c_enc.o", - "crypto/cast/libcrypto-shlib-c_ofb64.o", - "crypto/cast/libcrypto-shlib-c_skey.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/chacha" => { - "deps" => [ - "crypto/chacha/libcrypto-lib-chacha-x86_64.o", - "crypto/chacha/libcrypto-shlib-chacha-x86_64.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/cmac" => { - "deps" => [ - "crypto/cmac/libcrypto-lib-cmac.o", - "crypto/cmac/libcrypto-shlib-cmac.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/cmp" => { - "deps" => [ - "crypto/cmp/libcrypto-lib-cmp_asn.o", - "crypto/cmp/libcrypto-lib-cmp_client.o", - "crypto/cmp/libcrypto-lib-cmp_ctx.o", - "crypto/cmp/libcrypto-lib-cmp_err.o", - "crypto/cmp/libcrypto-lib-cmp_genm.o", - "crypto/cmp/libcrypto-lib-cmp_hdr.o", - "crypto/cmp/libcrypto-lib-cmp_http.o", - "crypto/cmp/libcrypto-lib-cmp_msg.o", - "crypto/cmp/libcrypto-lib-cmp_protect.o", - "crypto/cmp/libcrypto-lib-cmp_server.o", - "crypto/cmp/libcrypto-lib-cmp_status.o", - "crypto/cmp/libcrypto-lib-cmp_util.o", - "crypto/cmp/libcrypto-lib-cmp_vfy.o", - "crypto/cmp/libcrypto-shlib-cmp_asn.o", - "crypto/cmp/libcrypto-shlib-cmp_client.o", - "crypto/cmp/libcrypto-shlib-cmp_ctx.o", - "crypto/cmp/libcrypto-shlib-cmp_err.o", - "crypto/cmp/libcrypto-shlib-cmp_genm.o", - "crypto/cmp/libcrypto-shlib-cmp_hdr.o", - "crypto/cmp/libcrypto-shlib-cmp_http.o", - "crypto/cmp/libcrypto-shlib-cmp_msg.o", - "crypto/cmp/libcrypto-shlib-cmp_protect.o", - "crypto/cmp/libcrypto-shlib-cmp_server.o", - "crypto/cmp/libcrypto-shlib-cmp_status.o", - "crypto/cmp/libcrypto-shlib-cmp_util.o", - "crypto/cmp/libcrypto-shlib-cmp_vfy.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/cms" => { - "deps" => [ - "crypto/cms/libcrypto-lib-cms_asn1.o", - "crypto/cms/libcrypto-lib-cms_att.o", - "crypto/cms/libcrypto-lib-cms_cd.o", - "crypto/cms/libcrypto-lib-cms_dd.o", - "crypto/cms/libcrypto-lib-cms_dh.o", - "crypto/cms/libcrypto-lib-cms_ec.o", - "crypto/cms/libcrypto-lib-cms_enc.o", - "crypto/cms/libcrypto-lib-cms_env.o", - "crypto/cms/libcrypto-lib-cms_err.o", - "crypto/cms/libcrypto-lib-cms_ess.o", - "crypto/cms/libcrypto-lib-cms_io.o", - "crypto/cms/libcrypto-lib-cms_kari.o", - "crypto/cms/libcrypto-lib-cms_lib.o", - "crypto/cms/libcrypto-lib-cms_pwri.o", - "crypto/cms/libcrypto-lib-cms_rsa.o", - "crypto/cms/libcrypto-lib-cms_sd.o", - "crypto/cms/libcrypto-lib-cms_smime.o", - "crypto/cms/libcrypto-shlib-cms_asn1.o", - "crypto/cms/libcrypto-shlib-cms_att.o", - "crypto/cms/libcrypto-shlib-cms_cd.o", - "crypto/cms/libcrypto-shlib-cms_dd.o", - "crypto/cms/libcrypto-shlib-cms_dh.o", - "crypto/cms/libcrypto-shlib-cms_ec.o", - "crypto/cms/libcrypto-shlib-cms_enc.o", - "crypto/cms/libcrypto-shlib-cms_env.o", - "crypto/cms/libcrypto-shlib-cms_err.o", - "crypto/cms/libcrypto-shlib-cms_ess.o", - "crypto/cms/libcrypto-shlib-cms_io.o", - "crypto/cms/libcrypto-shlib-cms_kari.o", - "crypto/cms/libcrypto-shlib-cms_lib.o", - "crypto/cms/libcrypto-shlib-cms_pwri.o", - "crypto/cms/libcrypto-shlib-cms_rsa.o", - "crypto/cms/libcrypto-shlib-cms_sd.o", - "crypto/cms/libcrypto-shlib-cms_smime.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/comp" => { - "deps" => [ - "crypto/comp/libcrypto-lib-c_brotli.o", - "crypto/comp/libcrypto-lib-c_zlib.o", - "crypto/comp/libcrypto-lib-c_zstd.o", - "crypto/comp/libcrypto-lib-comp_err.o", - "crypto/comp/libcrypto-lib-comp_lib.o", - "crypto/comp/libcrypto-shlib-c_brotli.o", - "crypto/comp/libcrypto-shlib-c_zlib.o", - "crypto/comp/libcrypto-shlib-c_zstd.o", - "crypto/comp/libcrypto-shlib-comp_err.o", - "crypto/comp/libcrypto-shlib-comp_lib.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/conf" => { - "deps" => [ - "crypto/conf/libcrypto-lib-conf_api.o", - "crypto/conf/libcrypto-lib-conf_def.o", - "crypto/conf/libcrypto-lib-conf_err.o", - "crypto/conf/libcrypto-lib-conf_lib.o", - "crypto/conf/libcrypto-lib-conf_mall.o", - "crypto/conf/libcrypto-lib-conf_mod.o", - "crypto/conf/libcrypto-lib-conf_sap.o", - "crypto/conf/libcrypto-lib-conf_ssl.o", - "crypto/conf/libcrypto-shlib-conf_api.o", - "crypto/conf/libcrypto-shlib-conf_def.o", - "crypto/conf/libcrypto-shlib-conf_err.o", - "crypto/conf/libcrypto-shlib-conf_lib.o", - "crypto/conf/libcrypto-shlib-conf_mall.o", - "crypto/conf/libcrypto-shlib-conf_mod.o", - "crypto/conf/libcrypto-shlib-conf_sap.o", - "crypto/conf/libcrypto-shlib-conf_ssl.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/crmf" => { - "deps" => [ - "crypto/crmf/libcrypto-lib-crmf_asn.o", - "crypto/crmf/libcrypto-lib-crmf_err.o", - "crypto/crmf/libcrypto-lib-crmf_lib.o", - "crypto/crmf/libcrypto-lib-crmf_pbm.o", - "crypto/crmf/libcrypto-shlib-crmf_asn.o", - "crypto/crmf/libcrypto-shlib-crmf_err.o", - "crypto/crmf/libcrypto-shlib-crmf_lib.o", - "crypto/crmf/libcrypto-shlib-crmf_pbm.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/ct" => { - "deps" => [ - "crypto/ct/libcrypto-lib-ct_b64.o", - "crypto/ct/libcrypto-lib-ct_err.o", - "crypto/ct/libcrypto-lib-ct_log.o", - "crypto/ct/libcrypto-lib-ct_oct.o", - "crypto/ct/libcrypto-lib-ct_policy.o", - "crypto/ct/libcrypto-lib-ct_prn.o", - "crypto/ct/libcrypto-lib-ct_sct.o", - "crypto/ct/libcrypto-lib-ct_sct_ctx.o", - "crypto/ct/libcrypto-lib-ct_vfy.o", - "crypto/ct/libcrypto-lib-ct_x509v3.o", - "crypto/ct/libcrypto-shlib-ct_b64.o", - "crypto/ct/libcrypto-shlib-ct_err.o", - "crypto/ct/libcrypto-shlib-ct_log.o", - "crypto/ct/libcrypto-shlib-ct_oct.o", - "crypto/ct/libcrypto-shlib-ct_policy.o", - "crypto/ct/libcrypto-shlib-ct_prn.o", - "crypto/ct/libcrypto-shlib-ct_sct.o", - "crypto/ct/libcrypto-shlib-ct_sct_ctx.o", - "crypto/ct/libcrypto-shlib-ct_vfy.o", - "crypto/ct/libcrypto-shlib-ct_x509v3.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/des" => { - "deps" => [ - "crypto/des/libcrypto-lib-cbc_cksm.o", - "crypto/des/libcrypto-lib-cbc_enc.o", - "crypto/des/libcrypto-lib-cfb64ede.o", - "crypto/des/libcrypto-lib-cfb64enc.o", - "crypto/des/libcrypto-lib-cfb_enc.o", - "crypto/des/libcrypto-lib-des_enc.o", - "crypto/des/libcrypto-lib-ecb3_enc.o", - "crypto/des/libcrypto-lib-ecb_enc.o", - "crypto/des/libcrypto-lib-fcrypt.o", - "crypto/des/libcrypto-lib-fcrypt_b.o", - "crypto/des/libcrypto-lib-ofb64ede.o", - "crypto/des/libcrypto-lib-ofb64enc.o", - "crypto/des/libcrypto-lib-ofb_enc.o", - "crypto/des/libcrypto-lib-pcbc_enc.o", - "crypto/des/libcrypto-lib-qud_cksm.o", - "crypto/des/libcrypto-lib-rand_key.o", - "crypto/des/libcrypto-lib-set_key.o", - "crypto/des/libcrypto-lib-str2key.o", - "crypto/des/libcrypto-lib-xcbc_enc.o", - "crypto/des/libcrypto-shlib-cbc_cksm.o", - "crypto/des/libcrypto-shlib-cbc_enc.o", - "crypto/des/libcrypto-shlib-cfb64ede.o", - "crypto/des/libcrypto-shlib-cfb64enc.o", - "crypto/des/libcrypto-shlib-cfb_enc.o", - "crypto/des/libcrypto-shlib-des_enc.o", - "crypto/des/libcrypto-shlib-ecb3_enc.o", - "crypto/des/libcrypto-shlib-ecb_enc.o", - "crypto/des/libcrypto-shlib-fcrypt.o", - "crypto/des/libcrypto-shlib-fcrypt_b.o", - "crypto/des/libcrypto-shlib-ofb64ede.o", - "crypto/des/libcrypto-shlib-ofb64enc.o", - "crypto/des/libcrypto-shlib-ofb_enc.o", - "crypto/des/libcrypto-shlib-pcbc_enc.o", - "crypto/des/libcrypto-shlib-qud_cksm.o", - "crypto/des/libcrypto-shlib-rand_key.o", - "crypto/des/libcrypto-shlib-set_key.o", - "crypto/des/libcrypto-shlib-str2key.o", - "crypto/des/libcrypto-shlib-xcbc_enc.o", - "crypto/des/liblegacy-lib-des_enc.o", - "crypto/des/liblegacy-lib-fcrypt_b.o" - ], - "products" => { - "lib" => [ - "libcrypto", - "providers/liblegacy.a" - ] - } - }, - "crypto/dh" => { - "deps" => [ - "crypto/dh/libcrypto-lib-dh_ameth.o", - "crypto/dh/libcrypto-lib-dh_asn1.o", - "crypto/dh/libcrypto-lib-dh_backend.o", - "crypto/dh/libcrypto-lib-dh_check.o", - "crypto/dh/libcrypto-lib-dh_depr.o", - "crypto/dh/libcrypto-lib-dh_err.o", - "crypto/dh/libcrypto-lib-dh_gen.o", - "crypto/dh/libcrypto-lib-dh_group_params.o", - "crypto/dh/libcrypto-lib-dh_kdf.o", - "crypto/dh/libcrypto-lib-dh_key.o", - "crypto/dh/libcrypto-lib-dh_lib.o", - "crypto/dh/libcrypto-lib-dh_meth.o", - "crypto/dh/libcrypto-lib-dh_pmeth.o", - "crypto/dh/libcrypto-lib-dh_prn.o", - "crypto/dh/libcrypto-lib-dh_rfc5114.o", - "crypto/dh/libcrypto-shlib-dh_ameth.o", - "crypto/dh/libcrypto-shlib-dh_asn1.o", - "crypto/dh/libcrypto-shlib-dh_backend.o", - "crypto/dh/libcrypto-shlib-dh_check.o", - "crypto/dh/libcrypto-shlib-dh_depr.o", - "crypto/dh/libcrypto-shlib-dh_err.o", - "crypto/dh/libcrypto-shlib-dh_gen.o", - "crypto/dh/libcrypto-shlib-dh_group_params.o", - "crypto/dh/libcrypto-shlib-dh_kdf.o", - "crypto/dh/libcrypto-shlib-dh_key.o", - "crypto/dh/libcrypto-shlib-dh_lib.o", - "crypto/dh/libcrypto-shlib-dh_meth.o", - "crypto/dh/libcrypto-shlib-dh_pmeth.o", - "crypto/dh/libcrypto-shlib-dh_prn.o", - "crypto/dh/libcrypto-shlib-dh_rfc5114.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/dsa" => { - "deps" => [ - "crypto/dsa/libcrypto-lib-dsa_ameth.o", - "crypto/dsa/libcrypto-lib-dsa_asn1.o", - "crypto/dsa/libcrypto-lib-dsa_backend.o", - "crypto/dsa/libcrypto-lib-dsa_check.o", - "crypto/dsa/libcrypto-lib-dsa_depr.o", - "crypto/dsa/libcrypto-lib-dsa_err.o", - "crypto/dsa/libcrypto-lib-dsa_gen.o", - "crypto/dsa/libcrypto-lib-dsa_key.o", - "crypto/dsa/libcrypto-lib-dsa_lib.o", - "crypto/dsa/libcrypto-lib-dsa_meth.o", - "crypto/dsa/libcrypto-lib-dsa_ossl.o", - "crypto/dsa/libcrypto-lib-dsa_pmeth.o", - "crypto/dsa/libcrypto-lib-dsa_prn.o", - "crypto/dsa/libcrypto-lib-dsa_sign.o", - "crypto/dsa/libcrypto-lib-dsa_vrf.o", - "crypto/dsa/libcrypto-shlib-dsa_ameth.o", - "crypto/dsa/libcrypto-shlib-dsa_asn1.o", - "crypto/dsa/libcrypto-shlib-dsa_backend.o", - "crypto/dsa/libcrypto-shlib-dsa_check.o", - "crypto/dsa/libcrypto-shlib-dsa_depr.o", - "crypto/dsa/libcrypto-shlib-dsa_err.o", - "crypto/dsa/libcrypto-shlib-dsa_gen.o", - "crypto/dsa/libcrypto-shlib-dsa_key.o", - "crypto/dsa/libcrypto-shlib-dsa_lib.o", - "crypto/dsa/libcrypto-shlib-dsa_meth.o", - "crypto/dsa/libcrypto-shlib-dsa_ossl.o", - "crypto/dsa/libcrypto-shlib-dsa_pmeth.o", - "crypto/dsa/libcrypto-shlib-dsa_prn.o", - "crypto/dsa/libcrypto-shlib-dsa_sign.o", - "crypto/dsa/libcrypto-shlib-dsa_vrf.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/dso" => { - "deps" => [ - "crypto/dso/libcrypto-lib-dso_dl.o", - "crypto/dso/libcrypto-lib-dso_dlfcn.o", - "crypto/dso/libcrypto-lib-dso_err.o", - "crypto/dso/libcrypto-lib-dso_lib.o", - "crypto/dso/libcrypto-lib-dso_openssl.o", - "crypto/dso/libcrypto-lib-dso_vms.o", - "crypto/dso/libcrypto-lib-dso_win32.o", - "crypto/dso/libcrypto-shlib-dso_dl.o", - "crypto/dso/libcrypto-shlib-dso_dlfcn.o", - "crypto/dso/libcrypto-shlib-dso_err.o", - "crypto/dso/libcrypto-shlib-dso_lib.o", - "crypto/dso/libcrypto-shlib-dso_openssl.o", - "crypto/dso/libcrypto-shlib-dso_vms.o", - "crypto/dso/libcrypto-shlib-dso_win32.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/ec" => { - "deps" => [ - "crypto/ec/libcrypto-lib-curve25519.o", - "crypto/ec/libcrypto-lib-ec2_oct.o", - "crypto/ec/libcrypto-lib-ec2_smpl.o", - "crypto/ec/libcrypto-lib-ec_ameth.o", - "crypto/ec/libcrypto-lib-ec_asn1.o", - "crypto/ec/libcrypto-lib-ec_backend.o", - "crypto/ec/libcrypto-lib-ec_check.o", - "crypto/ec/libcrypto-lib-ec_curve.o", - "crypto/ec/libcrypto-lib-ec_cvt.o", - "crypto/ec/libcrypto-lib-ec_deprecated.o", - "crypto/ec/libcrypto-lib-ec_err.o", - "crypto/ec/libcrypto-lib-ec_key.o", - "crypto/ec/libcrypto-lib-ec_kmeth.o", - "crypto/ec/libcrypto-lib-ec_lib.o", - "crypto/ec/libcrypto-lib-ec_mult.o", - "crypto/ec/libcrypto-lib-ec_oct.o", - "crypto/ec/libcrypto-lib-ec_pmeth.o", - "crypto/ec/libcrypto-lib-ec_print.o", - "crypto/ec/libcrypto-lib-ecdh_kdf.o", - "crypto/ec/libcrypto-lib-ecdh_ossl.o", - "crypto/ec/libcrypto-lib-ecdsa_ossl.o", - "crypto/ec/libcrypto-lib-ecdsa_sign.o", - "crypto/ec/libcrypto-lib-ecdsa_vrf.o", - "crypto/ec/libcrypto-lib-eck_prn.o", - "crypto/ec/libcrypto-lib-ecp_mont.o", - "crypto/ec/libcrypto-lib-ecp_nist.o", - "crypto/ec/libcrypto-lib-ecp_nistp224.o", - "crypto/ec/libcrypto-lib-ecp_nistp256.o", - "crypto/ec/libcrypto-lib-ecp_nistp384.o", - "crypto/ec/libcrypto-lib-ecp_nistp521.o", - "crypto/ec/libcrypto-lib-ecp_nistputil.o", - "crypto/ec/libcrypto-lib-ecp_nistz256-x86_64.o", - "crypto/ec/libcrypto-lib-ecp_nistz256.o", - "crypto/ec/libcrypto-lib-ecp_oct.o", - "crypto/ec/libcrypto-lib-ecp_smpl.o", - "crypto/ec/libcrypto-lib-ecx_backend.o", - "crypto/ec/libcrypto-lib-ecx_key.o", - "crypto/ec/libcrypto-lib-ecx_meth.o", - "crypto/ec/libcrypto-lib-x25519-x86_64.o", - "crypto/ec/libcrypto-shlib-curve25519.o", - "crypto/ec/libcrypto-shlib-ec2_oct.o", - "crypto/ec/libcrypto-shlib-ec2_smpl.o", - "crypto/ec/libcrypto-shlib-ec_ameth.o", - "crypto/ec/libcrypto-shlib-ec_asn1.o", - "crypto/ec/libcrypto-shlib-ec_backend.o", - "crypto/ec/libcrypto-shlib-ec_check.o", - "crypto/ec/libcrypto-shlib-ec_curve.o", - "crypto/ec/libcrypto-shlib-ec_cvt.o", - "crypto/ec/libcrypto-shlib-ec_deprecated.o", - "crypto/ec/libcrypto-shlib-ec_err.o", - "crypto/ec/libcrypto-shlib-ec_key.o", - "crypto/ec/libcrypto-shlib-ec_kmeth.o", - "crypto/ec/libcrypto-shlib-ec_lib.o", - "crypto/ec/libcrypto-shlib-ec_mult.o", - "crypto/ec/libcrypto-shlib-ec_oct.o", - "crypto/ec/libcrypto-shlib-ec_pmeth.o", - "crypto/ec/libcrypto-shlib-ec_print.o", - "crypto/ec/libcrypto-shlib-ecdh_kdf.o", - "crypto/ec/libcrypto-shlib-ecdh_ossl.o", - "crypto/ec/libcrypto-shlib-ecdsa_ossl.o", - "crypto/ec/libcrypto-shlib-ecdsa_sign.o", - "crypto/ec/libcrypto-shlib-ecdsa_vrf.o", - "crypto/ec/libcrypto-shlib-eck_prn.o", - "crypto/ec/libcrypto-shlib-ecp_mont.o", - "crypto/ec/libcrypto-shlib-ecp_nist.o", - "crypto/ec/libcrypto-shlib-ecp_nistp224.o", - "crypto/ec/libcrypto-shlib-ecp_nistp256.o", - "crypto/ec/libcrypto-shlib-ecp_nistp384.o", - "crypto/ec/libcrypto-shlib-ecp_nistp521.o", - "crypto/ec/libcrypto-shlib-ecp_nistputil.o", - "crypto/ec/libcrypto-shlib-ecp_nistz256-x86_64.o", - "crypto/ec/libcrypto-shlib-ecp_nistz256.o", - "crypto/ec/libcrypto-shlib-ecp_oct.o", - "crypto/ec/libcrypto-shlib-ecp_smpl.o", - "crypto/ec/libcrypto-shlib-ecx_backend.o", - "crypto/ec/libcrypto-shlib-ecx_key.o", - "crypto/ec/libcrypto-shlib-ecx_meth.o", - "crypto/ec/libcrypto-shlib-x25519-x86_64.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/ec/curve448" => { - "deps" => [ - "crypto/ec/curve448/libcrypto-lib-curve448.o", - "crypto/ec/curve448/libcrypto-lib-curve448_tables.o", - "crypto/ec/curve448/libcrypto-lib-eddsa.o", - "crypto/ec/curve448/libcrypto-lib-f_generic.o", - "crypto/ec/curve448/libcrypto-lib-scalar.o", - "crypto/ec/curve448/libcrypto-shlib-curve448.o", - "crypto/ec/curve448/libcrypto-shlib-curve448_tables.o", - "crypto/ec/curve448/libcrypto-shlib-eddsa.o", - "crypto/ec/curve448/libcrypto-shlib-f_generic.o", - "crypto/ec/curve448/libcrypto-shlib-scalar.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/ec/curve448/arch_32" => { - "deps" => [ - "crypto/ec/curve448/arch_32/libcrypto-lib-f_impl32.o", - "crypto/ec/curve448/arch_32/libcrypto-shlib-f_impl32.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/ec/curve448/arch_64" => { - "deps" => [ - "crypto/ec/curve448/arch_64/libcrypto-lib-f_impl64.o", - "crypto/ec/curve448/arch_64/libcrypto-shlib-f_impl64.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/encode_decode" => { - "deps" => [ - "crypto/encode_decode/libcrypto-lib-decoder_err.o", - "crypto/encode_decode/libcrypto-lib-decoder_lib.o", - "crypto/encode_decode/libcrypto-lib-decoder_meth.o", - "crypto/encode_decode/libcrypto-lib-decoder_pkey.o", - "crypto/encode_decode/libcrypto-lib-encoder_err.o", - "crypto/encode_decode/libcrypto-lib-encoder_lib.o", - "crypto/encode_decode/libcrypto-lib-encoder_meth.o", - "crypto/encode_decode/libcrypto-lib-encoder_pkey.o", - "crypto/encode_decode/libcrypto-shlib-decoder_err.o", - "crypto/encode_decode/libcrypto-shlib-decoder_lib.o", - "crypto/encode_decode/libcrypto-shlib-decoder_meth.o", - "crypto/encode_decode/libcrypto-shlib-decoder_pkey.o", - "crypto/encode_decode/libcrypto-shlib-encoder_err.o", - "crypto/encode_decode/libcrypto-shlib-encoder_lib.o", - "crypto/encode_decode/libcrypto-shlib-encoder_meth.o", - "crypto/encode_decode/libcrypto-shlib-encoder_pkey.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/engine" => { - "deps" => [ - "crypto/engine/libcrypto-lib-eng_all.o", - "crypto/engine/libcrypto-lib-eng_cnf.o", - "crypto/engine/libcrypto-lib-eng_ctrl.o", - "crypto/engine/libcrypto-lib-eng_dyn.o", - "crypto/engine/libcrypto-lib-eng_err.o", - "crypto/engine/libcrypto-lib-eng_fat.o", - "crypto/engine/libcrypto-lib-eng_init.o", - "crypto/engine/libcrypto-lib-eng_lib.o", - "crypto/engine/libcrypto-lib-eng_list.o", - "crypto/engine/libcrypto-lib-eng_openssl.o", - "crypto/engine/libcrypto-lib-eng_pkey.o", - "crypto/engine/libcrypto-lib-eng_rdrand.o", - "crypto/engine/libcrypto-lib-eng_table.o", - "crypto/engine/libcrypto-lib-tb_asnmth.o", - "crypto/engine/libcrypto-lib-tb_cipher.o", - "crypto/engine/libcrypto-lib-tb_dh.o", - "crypto/engine/libcrypto-lib-tb_digest.o", - "crypto/engine/libcrypto-lib-tb_dsa.o", - "crypto/engine/libcrypto-lib-tb_eckey.o", - "crypto/engine/libcrypto-lib-tb_pkmeth.o", - "crypto/engine/libcrypto-lib-tb_rand.o", - "crypto/engine/libcrypto-lib-tb_rsa.o", - "crypto/engine/libcrypto-shlib-eng_all.o", - "crypto/engine/libcrypto-shlib-eng_cnf.o", - "crypto/engine/libcrypto-shlib-eng_ctrl.o", - "crypto/engine/libcrypto-shlib-eng_dyn.o", - "crypto/engine/libcrypto-shlib-eng_err.o", - "crypto/engine/libcrypto-shlib-eng_fat.o", - "crypto/engine/libcrypto-shlib-eng_init.o", - "crypto/engine/libcrypto-shlib-eng_lib.o", - "crypto/engine/libcrypto-shlib-eng_list.o", - "crypto/engine/libcrypto-shlib-eng_openssl.o", - "crypto/engine/libcrypto-shlib-eng_pkey.o", - "crypto/engine/libcrypto-shlib-eng_rdrand.o", - "crypto/engine/libcrypto-shlib-eng_table.o", - "crypto/engine/libcrypto-shlib-tb_asnmth.o", - "crypto/engine/libcrypto-shlib-tb_cipher.o", - "crypto/engine/libcrypto-shlib-tb_dh.o", - "crypto/engine/libcrypto-shlib-tb_digest.o", - "crypto/engine/libcrypto-shlib-tb_dsa.o", - "crypto/engine/libcrypto-shlib-tb_eckey.o", - "crypto/engine/libcrypto-shlib-tb_pkmeth.o", - "crypto/engine/libcrypto-shlib-tb_rand.o", - "crypto/engine/libcrypto-shlib-tb_rsa.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/err" => { - "deps" => [ - "crypto/err/libcrypto-lib-err.o", - "crypto/err/libcrypto-lib-err_all.o", - "crypto/err/libcrypto-lib-err_all_legacy.o", - "crypto/err/libcrypto-lib-err_blocks.o", - "crypto/err/libcrypto-lib-err_mark.o", - "crypto/err/libcrypto-lib-err_prn.o", - "crypto/err/libcrypto-lib-err_save.o", - "crypto/err/libcrypto-shlib-err.o", - "crypto/err/libcrypto-shlib-err_all.o", - "crypto/err/libcrypto-shlib-err_all_legacy.o", - "crypto/err/libcrypto-shlib-err_blocks.o", - "crypto/err/libcrypto-shlib-err_mark.o", - "crypto/err/libcrypto-shlib-err_prn.o", - "crypto/err/libcrypto-shlib-err_save.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/ess" => { - "deps" => [ - "crypto/ess/libcrypto-lib-ess_asn1.o", - "crypto/ess/libcrypto-lib-ess_err.o", - "crypto/ess/libcrypto-lib-ess_lib.o", - "crypto/ess/libcrypto-shlib-ess_asn1.o", - "crypto/ess/libcrypto-shlib-ess_err.o", - "crypto/ess/libcrypto-shlib-ess_lib.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/evp" => { - "deps" => [ - "crypto/evp/libcrypto-lib-asymcipher.o", - "crypto/evp/libcrypto-lib-bio_b64.o", - "crypto/evp/libcrypto-lib-bio_enc.o", - "crypto/evp/libcrypto-lib-bio_md.o", - "crypto/evp/libcrypto-lib-bio_ok.o", - "crypto/evp/libcrypto-lib-c_allc.o", - "crypto/evp/libcrypto-lib-c_alld.o", - "crypto/evp/libcrypto-lib-cmeth_lib.o", - "crypto/evp/libcrypto-lib-ctrl_params_translate.o", - "crypto/evp/libcrypto-lib-dh_ctrl.o", - "crypto/evp/libcrypto-lib-dh_support.o", - "crypto/evp/libcrypto-lib-digest.o", - "crypto/evp/libcrypto-lib-dsa_ctrl.o", - "crypto/evp/libcrypto-lib-e_aes.o", - "crypto/evp/libcrypto-lib-e_aes_cbc_hmac_sha1.o", - "crypto/evp/libcrypto-lib-e_aes_cbc_hmac_sha256.o", - "crypto/evp/libcrypto-lib-e_aria.o", - "crypto/evp/libcrypto-lib-e_bf.o", - "crypto/evp/libcrypto-lib-e_camellia.o", - "crypto/evp/libcrypto-lib-e_cast.o", - "crypto/evp/libcrypto-lib-e_chacha20_poly1305.o", - "crypto/evp/libcrypto-lib-e_des.o", - "crypto/evp/libcrypto-lib-e_des3.o", - "crypto/evp/libcrypto-lib-e_idea.o", - "crypto/evp/libcrypto-lib-e_null.o", - "crypto/evp/libcrypto-lib-e_old.o", - "crypto/evp/libcrypto-lib-e_rc2.o", - "crypto/evp/libcrypto-lib-e_rc4.o", - "crypto/evp/libcrypto-lib-e_rc4_hmac_md5.o", - "crypto/evp/libcrypto-lib-e_rc5.o", - "crypto/evp/libcrypto-lib-e_seed.o", - "crypto/evp/libcrypto-lib-e_sm4.o", - "crypto/evp/libcrypto-lib-e_xcbc_d.o", - "crypto/evp/libcrypto-lib-ec_ctrl.o", - "crypto/evp/libcrypto-lib-ec_support.o", - "crypto/evp/libcrypto-lib-encode.o", - "crypto/evp/libcrypto-lib-evp_cnf.o", - "crypto/evp/libcrypto-lib-evp_enc.o", - "crypto/evp/libcrypto-lib-evp_err.o", - "crypto/evp/libcrypto-lib-evp_fetch.o", - "crypto/evp/libcrypto-lib-evp_key.o", - "crypto/evp/libcrypto-lib-evp_lib.o", - "crypto/evp/libcrypto-lib-evp_pbe.o", - "crypto/evp/libcrypto-lib-evp_pkey.o", - "crypto/evp/libcrypto-lib-evp_rand.o", - "crypto/evp/libcrypto-lib-evp_utils.o", - "crypto/evp/libcrypto-lib-exchange.o", - "crypto/evp/libcrypto-lib-kdf_lib.o", - "crypto/evp/libcrypto-lib-kdf_meth.o", - "crypto/evp/libcrypto-lib-kem.o", - "crypto/evp/libcrypto-lib-keymgmt_lib.o", - "crypto/evp/libcrypto-lib-keymgmt_meth.o", - "crypto/evp/libcrypto-lib-legacy_blake2.o", - "crypto/evp/libcrypto-lib-legacy_md4.o", - "crypto/evp/libcrypto-lib-legacy_md5.o", - "crypto/evp/libcrypto-lib-legacy_md5_sha1.o", - "crypto/evp/libcrypto-lib-legacy_ripemd.o", - "crypto/evp/libcrypto-lib-legacy_sha.o", - "crypto/evp/libcrypto-lib-legacy_wp.o", - "crypto/evp/libcrypto-lib-m_null.o", - "crypto/evp/libcrypto-lib-m_sigver.o", - "crypto/evp/libcrypto-lib-mac_lib.o", - "crypto/evp/libcrypto-lib-mac_meth.o", - "crypto/evp/libcrypto-lib-names.o", - "crypto/evp/libcrypto-lib-p5_crpt.o", - "crypto/evp/libcrypto-lib-p5_crpt2.o", - "crypto/evp/libcrypto-lib-p_dec.o", - "crypto/evp/libcrypto-lib-p_enc.o", - "crypto/evp/libcrypto-lib-p_legacy.o", - "crypto/evp/libcrypto-lib-p_lib.o", - "crypto/evp/libcrypto-lib-p_open.o", - "crypto/evp/libcrypto-lib-p_seal.o", - "crypto/evp/libcrypto-lib-p_sign.o", - "crypto/evp/libcrypto-lib-p_verify.o", - "crypto/evp/libcrypto-lib-pbe_scrypt.o", - "crypto/evp/libcrypto-lib-pmeth_check.o", - "crypto/evp/libcrypto-lib-pmeth_gn.o", - "crypto/evp/libcrypto-lib-pmeth_lib.o", - "crypto/evp/libcrypto-lib-s_lib.o", - "crypto/evp/libcrypto-lib-signature.o", - "crypto/evp/libcrypto-lib-skeymgmt_meth.o", - "crypto/evp/libcrypto-shlib-asymcipher.o", - "crypto/evp/libcrypto-shlib-bio_b64.o", - "crypto/evp/libcrypto-shlib-bio_enc.o", - "crypto/evp/libcrypto-shlib-bio_md.o", - "crypto/evp/libcrypto-shlib-bio_ok.o", - "crypto/evp/libcrypto-shlib-c_allc.o", - "crypto/evp/libcrypto-shlib-c_alld.o", - "crypto/evp/libcrypto-shlib-cmeth_lib.o", - "crypto/evp/libcrypto-shlib-ctrl_params_translate.o", - "crypto/evp/libcrypto-shlib-dh_ctrl.o", - "crypto/evp/libcrypto-shlib-dh_support.o", - "crypto/evp/libcrypto-shlib-digest.o", - "crypto/evp/libcrypto-shlib-dsa_ctrl.o", - "crypto/evp/libcrypto-shlib-e_aes.o", - "crypto/evp/libcrypto-shlib-e_aes_cbc_hmac_sha1.o", - "crypto/evp/libcrypto-shlib-e_aes_cbc_hmac_sha256.o", - "crypto/evp/libcrypto-shlib-e_aria.o", - "crypto/evp/libcrypto-shlib-e_bf.o", - "crypto/evp/libcrypto-shlib-e_camellia.o", - "crypto/evp/libcrypto-shlib-e_cast.o", - "crypto/evp/libcrypto-shlib-e_chacha20_poly1305.o", - "crypto/evp/libcrypto-shlib-e_des.o", - "crypto/evp/libcrypto-shlib-e_des3.o", - "crypto/evp/libcrypto-shlib-e_idea.o", - "crypto/evp/libcrypto-shlib-e_null.o", - "crypto/evp/libcrypto-shlib-e_old.o", - "crypto/evp/libcrypto-shlib-e_rc2.o", - "crypto/evp/libcrypto-shlib-e_rc4.o", - "crypto/evp/libcrypto-shlib-e_rc4_hmac_md5.o", - "crypto/evp/libcrypto-shlib-e_rc5.o", - "crypto/evp/libcrypto-shlib-e_seed.o", - "crypto/evp/libcrypto-shlib-e_sm4.o", - "crypto/evp/libcrypto-shlib-e_xcbc_d.o", - "crypto/evp/libcrypto-shlib-ec_ctrl.o", - "crypto/evp/libcrypto-shlib-ec_support.o", - "crypto/evp/libcrypto-shlib-encode.o", - "crypto/evp/libcrypto-shlib-evp_cnf.o", - "crypto/evp/libcrypto-shlib-evp_enc.o", - "crypto/evp/libcrypto-shlib-evp_err.o", - "crypto/evp/libcrypto-shlib-evp_fetch.o", - "crypto/evp/libcrypto-shlib-evp_key.o", - "crypto/evp/libcrypto-shlib-evp_lib.o", - "crypto/evp/libcrypto-shlib-evp_pbe.o", - "crypto/evp/libcrypto-shlib-evp_pkey.o", - "crypto/evp/libcrypto-shlib-evp_rand.o", - "crypto/evp/libcrypto-shlib-evp_utils.o", - "crypto/evp/libcrypto-shlib-exchange.o", - "crypto/evp/libcrypto-shlib-kdf_lib.o", - "crypto/evp/libcrypto-shlib-kdf_meth.o", - "crypto/evp/libcrypto-shlib-kem.o", - "crypto/evp/libcrypto-shlib-keymgmt_lib.o", - "crypto/evp/libcrypto-shlib-keymgmt_meth.o", - "crypto/evp/libcrypto-shlib-legacy_blake2.o", - "crypto/evp/libcrypto-shlib-legacy_md4.o", - "crypto/evp/libcrypto-shlib-legacy_md5.o", - "crypto/evp/libcrypto-shlib-legacy_md5_sha1.o", - "crypto/evp/libcrypto-shlib-legacy_ripemd.o", - "crypto/evp/libcrypto-shlib-legacy_sha.o", - "crypto/evp/libcrypto-shlib-legacy_wp.o", - "crypto/evp/libcrypto-shlib-m_null.o", - "crypto/evp/libcrypto-shlib-m_sigver.o", - "crypto/evp/libcrypto-shlib-mac_lib.o", - "crypto/evp/libcrypto-shlib-mac_meth.o", - "crypto/evp/libcrypto-shlib-names.o", - "crypto/evp/libcrypto-shlib-p5_crpt.o", - "crypto/evp/libcrypto-shlib-p5_crpt2.o", - "crypto/evp/libcrypto-shlib-p_dec.o", - "crypto/evp/libcrypto-shlib-p_enc.o", - "crypto/evp/libcrypto-shlib-p_legacy.o", - "crypto/evp/libcrypto-shlib-p_lib.o", - "crypto/evp/libcrypto-shlib-p_open.o", - "crypto/evp/libcrypto-shlib-p_seal.o", - "crypto/evp/libcrypto-shlib-p_sign.o", - "crypto/evp/libcrypto-shlib-p_verify.o", - "crypto/evp/libcrypto-shlib-pbe_scrypt.o", - "crypto/evp/libcrypto-shlib-pmeth_check.o", - "crypto/evp/libcrypto-shlib-pmeth_gn.o", - "crypto/evp/libcrypto-shlib-pmeth_lib.o", - "crypto/evp/libcrypto-shlib-s_lib.o", - "crypto/evp/libcrypto-shlib-signature.o", - "crypto/evp/libcrypto-shlib-skeymgmt_meth.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/ffc" => { - "deps" => [ - "crypto/ffc/libcrypto-lib-ffc_backend.o", - "crypto/ffc/libcrypto-lib-ffc_dh.o", - "crypto/ffc/libcrypto-lib-ffc_key_generate.o", - "crypto/ffc/libcrypto-lib-ffc_key_validate.o", - "crypto/ffc/libcrypto-lib-ffc_params.o", - "crypto/ffc/libcrypto-lib-ffc_params_generate.o", - "crypto/ffc/libcrypto-lib-ffc_params_validate.o", - "crypto/ffc/libcrypto-shlib-ffc_backend.o", - "crypto/ffc/libcrypto-shlib-ffc_dh.o", - "crypto/ffc/libcrypto-shlib-ffc_key_generate.o", - "crypto/ffc/libcrypto-shlib-ffc_key_validate.o", - "crypto/ffc/libcrypto-shlib-ffc_params.o", - "crypto/ffc/libcrypto-shlib-ffc_params_generate.o", - "crypto/ffc/libcrypto-shlib-ffc_params_validate.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/hashtable" => { - "deps" => [ - "crypto/hashtable/libcrypto-lib-hashfunc.o", - "crypto/hashtable/libcrypto-lib-hashtable.o", - "crypto/hashtable/libcrypto-shlib-hashfunc.o", - "crypto/hashtable/libcrypto-shlib-hashtable.o", - "crypto/hashtable/libssl-shlib-hashfunc.o" - ], - "products" => { - "lib" => [ - "libcrypto", - "libssl" - ] - } - }, - "crypto/hmac" => { - "deps" => [ - "crypto/hmac/libcrypto-lib-hmac.o", - "crypto/hmac/libcrypto-shlib-hmac.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/hpke" => { - "deps" => [ - "crypto/hpke/libcrypto-lib-hpke.o", - "crypto/hpke/libcrypto-lib-hpke_util.o", - "crypto/hpke/libcrypto-shlib-hpke.o", - "crypto/hpke/libcrypto-shlib-hpke_util.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/http" => { - "deps" => [ - "crypto/http/libcrypto-lib-http_client.o", - "crypto/http/libcrypto-lib-http_err.o", - "crypto/http/libcrypto-lib-http_lib.o", - "crypto/http/libcrypto-shlib-http_client.o", - "crypto/http/libcrypto-shlib-http_err.o", - "crypto/http/libcrypto-shlib-http_lib.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/kdf" => { - "deps" => [ - "crypto/kdf/libcrypto-lib-kdf_err.o", - "crypto/kdf/libcrypto-shlib-kdf_err.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/lhash" => { - "deps" => [ - "crypto/lhash/libcrypto-lib-lh_stats.o", - "crypto/lhash/libcrypto-lib-lhash.o", - "crypto/lhash/libcrypto-shlib-lh_stats.o", - "crypto/lhash/libcrypto-shlib-lhash.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/md4" => { - "deps" => [ - "crypto/md4/libcrypto-lib-md4_dgst.o", - "crypto/md4/libcrypto-lib-md4_one.o", - "crypto/md4/libcrypto-shlib-md4_dgst.o", - "crypto/md4/libcrypto-shlib-md4_one.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/md5" => { - "deps" => [ - "crypto/md5/libcrypto-lib-md5-x86_64.o", - "crypto/md5/libcrypto-lib-md5_dgst.o", - "crypto/md5/libcrypto-lib-md5_one.o", - "crypto/md5/libcrypto-lib-md5_sha1.o", - "crypto/md5/libcrypto-shlib-md5-x86_64.o", - "crypto/md5/libcrypto-shlib-md5_dgst.o", - "crypto/md5/libcrypto-shlib-md5_one.o", - "crypto/md5/libcrypto-shlib-md5_sha1.o", - "crypto/md5/liblegacy-lib-md5-x86_64.o", - "crypto/md5/liblegacy-lib-md5_dgst.o", - "crypto/md5/liblegacy-lib-md5_one.o", - "crypto/md5/liblegacy-lib-md5_sha1.o" - ], - "products" => { - "lib" => [ - "libcrypto", - "providers/liblegacy.a" - ] - } - }, - "crypto/ml_dsa" => { - "deps" => [ - "crypto/ml_dsa/libcrypto-lib-ml_dsa_encoders.o", - "crypto/ml_dsa/libcrypto-lib-ml_dsa_key.o", - "crypto/ml_dsa/libcrypto-lib-ml_dsa_key_compress.o", - "crypto/ml_dsa/libcrypto-lib-ml_dsa_matrix.o", - "crypto/ml_dsa/libcrypto-lib-ml_dsa_ntt.o", - "crypto/ml_dsa/libcrypto-lib-ml_dsa_params.o", - "crypto/ml_dsa/libcrypto-lib-ml_dsa_sample.o", - "crypto/ml_dsa/libcrypto-lib-ml_dsa_sign.o", - "crypto/ml_dsa/libcrypto-shlib-ml_dsa_encoders.o", - "crypto/ml_dsa/libcrypto-shlib-ml_dsa_key.o", - "crypto/ml_dsa/libcrypto-shlib-ml_dsa_key_compress.o", - "crypto/ml_dsa/libcrypto-shlib-ml_dsa_matrix.o", - "crypto/ml_dsa/libcrypto-shlib-ml_dsa_ntt.o", - "crypto/ml_dsa/libcrypto-shlib-ml_dsa_params.o", - "crypto/ml_dsa/libcrypto-shlib-ml_dsa_sample.o", - "crypto/ml_dsa/libcrypto-shlib-ml_dsa_sign.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/ml_kem" => { - "deps" => [ - "crypto/ml_kem/libcrypto-lib-ml_kem.o", - "crypto/ml_kem/libcrypto-shlib-ml_kem.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/modes" => { - "deps" => [ - "crypto/modes/libcrypto-lib-aes-gcm-avx512.o", - "crypto/modes/libcrypto-lib-aesni-gcm-x86_64.o", - "crypto/modes/libcrypto-lib-cbc128.o", - "crypto/modes/libcrypto-lib-ccm128.o", - "crypto/modes/libcrypto-lib-cfb128.o", - "crypto/modes/libcrypto-lib-ctr128.o", - "crypto/modes/libcrypto-lib-cts128.o", - "crypto/modes/libcrypto-lib-gcm128.o", - "crypto/modes/libcrypto-lib-ghash-x86_64.o", - "crypto/modes/libcrypto-lib-ocb128.o", - "crypto/modes/libcrypto-lib-ofb128.o", - "crypto/modes/libcrypto-lib-siv128.o", - "crypto/modes/libcrypto-lib-wrap128.o", - "crypto/modes/libcrypto-lib-xts128.o", - "crypto/modes/libcrypto-lib-xts128gb.o", - "crypto/modes/libcrypto-shlib-aes-gcm-avx512.o", - "crypto/modes/libcrypto-shlib-aesni-gcm-x86_64.o", - "crypto/modes/libcrypto-shlib-cbc128.o", - "crypto/modes/libcrypto-shlib-ccm128.o", - "crypto/modes/libcrypto-shlib-cfb128.o", - "crypto/modes/libcrypto-shlib-ctr128.o", - "crypto/modes/libcrypto-shlib-cts128.o", - "crypto/modes/libcrypto-shlib-gcm128.o", - "crypto/modes/libcrypto-shlib-ghash-x86_64.o", - "crypto/modes/libcrypto-shlib-ocb128.o", - "crypto/modes/libcrypto-shlib-ofb128.o", - "crypto/modes/libcrypto-shlib-siv128.o", - "crypto/modes/libcrypto-shlib-wrap128.o", - "crypto/modes/libcrypto-shlib-xts128.o", - "crypto/modes/libcrypto-shlib-xts128gb.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/objects" => { - "deps" => [ - "crypto/objects/libcrypto-lib-o_names.o", - "crypto/objects/libcrypto-lib-obj_dat.o", - "crypto/objects/libcrypto-lib-obj_err.o", - "crypto/objects/libcrypto-lib-obj_lib.o", - "crypto/objects/libcrypto-lib-obj_xref.o", - "crypto/objects/libcrypto-shlib-o_names.o", - "crypto/objects/libcrypto-shlib-obj_dat.o", - "crypto/objects/libcrypto-shlib-obj_err.o", - "crypto/objects/libcrypto-shlib-obj_lib.o", - "crypto/objects/libcrypto-shlib-obj_xref.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/ocsp" => { - "deps" => [ - "crypto/ocsp/libcrypto-lib-ocsp_asn.o", - "crypto/ocsp/libcrypto-lib-ocsp_cl.o", - "crypto/ocsp/libcrypto-lib-ocsp_err.o", - "crypto/ocsp/libcrypto-lib-ocsp_ext.o", - "crypto/ocsp/libcrypto-lib-ocsp_http.o", - "crypto/ocsp/libcrypto-lib-ocsp_lib.o", - "crypto/ocsp/libcrypto-lib-ocsp_prn.o", - "crypto/ocsp/libcrypto-lib-ocsp_srv.o", - "crypto/ocsp/libcrypto-lib-ocsp_vfy.o", - "crypto/ocsp/libcrypto-lib-v3_ocsp.o", - "crypto/ocsp/libcrypto-shlib-ocsp_asn.o", - "crypto/ocsp/libcrypto-shlib-ocsp_cl.o", - "crypto/ocsp/libcrypto-shlib-ocsp_err.o", - "crypto/ocsp/libcrypto-shlib-ocsp_ext.o", - "crypto/ocsp/libcrypto-shlib-ocsp_http.o", - "crypto/ocsp/libcrypto-shlib-ocsp_lib.o", - "crypto/ocsp/libcrypto-shlib-ocsp_prn.o", - "crypto/ocsp/libcrypto-shlib-ocsp_srv.o", - "crypto/ocsp/libcrypto-shlib-ocsp_vfy.o", - "crypto/ocsp/libcrypto-shlib-v3_ocsp.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/pem" => { - "deps" => [ - "crypto/pem/loader_attic-dso-pvkfmt.o", - "crypto/pem/libcrypto-lib-pem_all.o", - "crypto/pem/libcrypto-lib-pem_err.o", - "crypto/pem/libcrypto-lib-pem_info.o", - "crypto/pem/libcrypto-lib-pem_lib.o", - "crypto/pem/libcrypto-lib-pem_oth.o", - "crypto/pem/libcrypto-lib-pem_pk8.o", - "crypto/pem/libcrypto-lib-pem_pkey.o", - "crypto/pem/libcrypto-lib-pem_sign.o", - "crypto/pem/libcrypto-lib-pem_x509.o", - "crypto/pem/libcrypto-lib-pem_xaux.o", - "crypto/pem/libcrypto-lib-pvkfmt.o", - "crypto/pem/libcrypto-shlib-pem_all.o", - "crypto/pem/libcrypto-shlib-pem_err.o", - "crypto/pem/libcrypto-shlib-pem_info.o", - "crypto/pem/libcrypto-shlib-pem_lib.o", - "crypto/pem/libcrypto-shlib-pem_oth.o", - "crypto/pem/libcrypto-shlib-pem_pk8.o", - "crypto/pem/libcrypto-shlib-pem_pkey.o", - "crypto/pem/libcrypto-shlib-pem_sign.o", - "crypto/pem/libcrypto-shlib-pem_x509.o", - "crypto/pem/libcrypto-shlib-pem_xaux.o", - "crypto/pem/libcrypto-shlib-pvkfmt.o" - ], - "products" => { - "dso" => [ - "engines/loader_attic" - ], - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/pkcs12" => { - "deps" => [ - "crypto/pkcs12/libcrypto-lib-p12_add.o", - "crypto/pkcs12/libcrypto-lib-p12_asn.o", - "crypto/pkcs12/libcrypto-lib-p12_attr.o", - "crypto/pkcs12/libcrypto-lib-p12_crpt.o", - "crypto/pkcs12/libcrypto-lib-p12_crt.o", - "crypto/pkcs12/libcrypto-lib-p12_decr.o", - "crypto/pkcs12/libcrypto-lib-p12_init.o", - "crypto/pkcs12/libcrypto-lib-p12_key.o", - "crypto/pkcs12/libcrypto-lib-p12_kiss.o", - "crypto/pkcs12/libcrypto-lib-p12_mutl.o", - "crypto/pkcs12/libcrypto-lib-p12_npas.o", - "crypto/pkcs12/libcrypto-lib-p12_p8d.o", - "crypto/pkcs12/libcrypto-lib-p12_p8e.o", - "crypto/pkcs12/libcrypto-lib-p12_sbag.o", - "crypto/pkcs12/libcrypto-lib-p12_utl.o", - "crypto/pkcs12/libcrypto-lib-pk12err.o", - "crypto/pkcs12/libcrypto-shlib-p12_add.o", - "crypto/pkcs12/libcrypto-shlib-p12_asn.o", - "crypto/pkcs12/libcrypto-shlib-p12_attr.o", - "crypto/pkcs12/libcrypto-shlib-p12_crpt.o", - "crypto/pkcs12/libcrypto-shlib-p12_crt.o", - "crypto/pkcs12/libcrypto-shlib-p12_decr.o", - "crypto/pkcs12/libcrypto-shlib-p12_init.o", - "crypto/pkcs12/libcrypto-shlib-p12_key.o", - "crypto/pkcs12/libcrypto-shlib-p12_kiss.o", - "crypto/pkcs12/libcrypto-shlib-p12_mutl.o", - "crypto/pkcs12/libcrypto-shlib-p12_npas.o", - "crypto/pkcs12/libcrypto-shlib-p12_p8d.o", - "crypto/pkcs12/libcrypto-shlib-p12_p8e.o", - "crypto/pkcs12/libcrypto-shlib-p12_sbag.o", - "crypto/pkcs12/libcrypto-shlib-p12_utl.o", - "crypto/pkcs12/libcrypto-shlib-pk12err.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/pkcs7" => { - "deps" => [ - "crypto/pkcs7/libcrypto-lib-bio_pk7.o", - "crypto/pkcs7/libcrypto-lib-pk7_asn1.o", - "crypto/pkcs7/libcrypto-lib-pk7_attr.o", - "crypto/pkcs7/libcrypto-lib-pk7_doit.o", - "crypto/pkcs7/libcrypto-lib-pk7_lib.o", - "crypto/pkcs7/libcrypto-lib-pk7_mime.o", - "crypto/pkcs7/libcrypto-lib-pk7_smime.o", - "crypto/pkcs7/libcrypto-lib-pkcs7err.o", - "crypto/pkcs7/libcrypto-shlib-bio_pk7.o", - "crypto/pkcs7/libcrypto-shlib-pk7_asn1.o", - "crypto/pkcs7/libcrypto-shlib-pk7_attr.o", - "crypto/pkcs7/libcrypto-shlib-pk7_doit.o", - "crypto/pkcs7/libcrypto-shlib-pk7_lib.o", - "crypto/pkcs7/libcrypto-shlib-pk7_mime.o", - "crypto/pkcs7/libcrypto-shlib-pk7_smime.o", - "crypto/pkcs7/libcrypto-shlib-pkcs7err.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/poly1305" => { - "deps" => [ - "crypto/poly1305/libcrypto-lib-poly1305-x86_64.o", - "crypto/poly1305/libcrypto-lib-poly1305.o", - "crypto/poly1305/libcrypto-shlib-poly1305-x86_64.o", - "crypto/poly1305/libcrypto-shlib-poly1305.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/property" => { - "deps" => [ - "crypto/property/libcrypto-lib-defn_cache.o", - "crypto/property/libcrypto-lib-property.o", - "crypto/property/libcrypto-lib-property_err.o", - "crypto/property/libcrypto-lib-property_parse.o", - "crypto/property/libcrypto-lib-property_query.o", - "crypto/property/libcrypto-lib-property_string.o", - "crypto/property/libcrypto-shlib-defn_cache.o", - "crypto/property/libcrypto-shlib-property.o", - "crypto/property/libcrypto-shlib-property_err.o", - "crypto/property/libcrypto-shlib-property_parse.o", - "crypto/property/libcrypto-shlib-property_query.o", - "crypto/property/libcrypto-shlib-property_string.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/rand" => { - "deps" => [ - "crypto/rand/libcrypto-lib-prov_seed.o", - "crypto/rand/libcrypto-lib-rand_deprecated.o", - "crypto/rand/libcrypto-lib-rand_err.o", - "crypto/rand/libcrypto-lib-rand_lib.o", - "crypto/rand/libcrypto-lib-rand_meth.o", - "crypto/rand/libcrypto-lib-rand_pool.o", - "crypto/rand/libcrypto-lib-rand_uniform.o", - "crypto/rand/libcrypto-lib-randfile.o", - "crypto/rand/libcrypto-shlib-prov_seed.o", - "crypto/rand/libcrypto-shlib-rand_deprecated.o", - "crypto/rand/libcrypto-shlib-rand_err.o", - "crypto/rand/libcrypto-shlib-rand_lib.o", - "crypto/rand/libcrypto-shlib-rand_meth.o", - "crypto/rand/libcrypto-shlib-rand_pool.o", - "crypto/rand/libcrypto-shlib-rand_uniform.o", - "crypto/rand/libcrypto-shlib-randfile.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/rc2" => { - "deps" => [ - "crypto/rc2/libcrypto-lib-rc2_cbc.o", - "crypto/rc2/libcrypto-lib-rc2_ecb.o", - "crypto/rc2/libcrypto-lib-rc2_skey.o", - "crypto/rc2/libcrypto-lib-rc2cfb64.o", - "crypto/rc2/libcrypto-lib-rc2ofb64.o", - "crypto/rc2/libcrypto-shlib-rc2_cbc.o", - "crypto/rc2/libcrypto-shlib-rc2_ecb.o", - "crypto/rc2/libcrypto-shlib-rc2_skey.o", - "crypto/rc2/libcrypto-shlib-rc2cfb64.o", - "crypto/rc2/libcrypto-shlib-rc2ofb64.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/rc4" => { - "deps" => [ - "crypto/rc4/libcrypto-lib-rc4-md5-x86_64.o", - "crypto/rc4/libcrypto-lib-rc4-x86_64.o", - "crypto/rc4/libcrypto-shlib-rc4-md5-x86_64.o", - "crypto/rc4/libcrypto-shlib-rc4-x86_64.o", - "crypto/rc4/liblegacy-lib-rc4-md5-x86_64.o", - "crypto/rc4/liblegacy-lib-rc4-x86_64.o" - ], - "products" => { - "lib" => [ - "libcrypto", - "providers/liblegacy.a" - ] - } - }, - "crypto/ripemd" => { - "deps" => [ - "crypto/ripemd/libcrypto-lib-rmd_dgst.o", - "crypto/ripemd/libcrypto-lib-rmd_one.o", - "crypto/ripemd/libcrypto-shlib-rmd_dgst.o", - "crypto/ripemd/libcrypto-shlib-rmd_one.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/rsa" => { - "deps" => [ - "crypto/rsa/libcrypto-lib-rsa_ameth.o", - "crypto/rsa/libcrypto-lib-rsa_asn1.o", - "crypto/rsa/libcrypto-lib-rsa_backend.o", - "crypto/rsa/libcrypto-lib-rsa_chk.o", - "crypto/rsa/libcrypto-lib-rsa_crpt.o", - "crypto/rsa/libcrypto-lib-rsa_depr.o", - "crypto/rsa/libcrypto-lib-rsa_err.o", - "crypto/rsa/libcrypto-lib-rsa_gen.o", - "crypto/rsa/libcrypto-lib-rsa_lib.o", - "crypto/rsa/libcrypto-lib-rsa_meth.o", - "crypto/rsa/libcrypto-lib-rsa_mp.o", - "crypto/rsa/libcrypto-lib-rsa_mp_names.o", - "crypto/rsa/libcrypto-lib-rsa_none.o", - "crypto/rsa/libcrypto-lib-rsa_oaep.o", - "crypto/rsa/libcrypto-lib-rsa_ossl.o", - "crypto/rsa/libcrypto-lib-rsa_pk1.o", - "crypto/rsa/libcrypto-lib-rsa_pmeth.o", - "crypto/rsa/libcrypto-lib-rsa_prn.o", - "crypto/rsa/libcrypto-lib-rsa_pss.o", - "crypto/rsa/libcrypto-lib-rsa_saos.o", - "crypto/rsa/libcrypto-lib-rsa_schemes.o", - "crypto/rsa/libcrypto-lib-rsa_sign.o", - "crypto/rsa/libcrypto-lib-rsa_sp800_56b_check.o", - "crypto/rsa/libcrypto-lib-rsa_sp800_56b_gen.o", - "crypto/rsa/libcrypto-lib-rsa_x931.o", - "crypto/rsa/libcrypto-lib-rsa_x931g.o", - "crypto/rsa/libcrypto-shlib-rsa_ameth.o", - "crypto/rsa/libcrypto-shlib-rsa_asn1.o", - "crypto/rsa/libcrypto-shlib-rsa_backend.o", - "crypto/rsa/libcrypto-shlib-rsa_chk.o", - "crypto/rsa/libcrypto-shlib-rsa_crpt.o", - "crypto/rsa/libcrypto-shlib-rsa_depr.o", - "crypto/rsa/libcrypto-shlib-rsa_err.o", - "crypto/rsa/libcrypto-shlib-rsa_gen.o", - "crypto/rsa/libcrypto-shlib-rsa_lib.o", - "crypto/rsa/libcrypto-shlib-rsa_meth.o", - "crypto/rsa/libcrypto-shlib-rsa_mp.o", - "crypto/rsa/libcrypto-shlib-rsa_mp_names.o", - "crypto/rsa/libcrypto-shlib-rsa_none.o", - "crypto/rsa/libcrypto-shlib-rsa_oaep.o", - "crypto/rsa/libcrypto-shlib-rsa_ossl.o", - "crypto/rsa/libcrypto-shlib-rsa_pk1.o", - "crypto/rsa/libcrypto-shlib-rsa_pmeth.o", - "crypto/rsa/libcrypto-shlib-rsa_prn.o", - "crypto/rsa/libcrypto-shlib-rsa_pss.o", - "crypto/rsa/libcrypto-shlib-rsa_saos.o", - "crypto/rsa/libcrypto-shlib-rsa_schemes.o", - "crypto/rsa/libcrypto-shlib-rsa_sign.o", - "crypto/rsa/libcrypto-shlib-rsa_sp800_56b_check.o", - "crypto/rsa/libcrypto-shlib-rsa_sp800_56b_gen.o", - "crypto/rsa/libcrypto-shlib-rsa_x931.o", - "crypto/rsa/libcrypto-shlib-rsa_x931g.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/seed" => { - "deps" => [ - "crypto/seed/libcrypto-lib-seed.o", - "crypto/seed/libcrypto-lib-seed_cbc.o", - "crypto/seed/libcrypto-lib-seed_cfb.o", - "crypto/seed/libcrypto-lib-seed_ecb.o", - "crypto/seed/libcrypto-lib-seed_ofb.o", - "crypto/seed/libcrypto-shlib-seed.o", - "crypto/seed/libcrypto-shlib-seed_cbc.o", - "crypto/seed/libcrypto-shlib-seed_cfb.o", - "crypto/seed/libcrypto-shlib-seed_ecb.o", - "crypto/seed/libcrypto-shlib-seed_ofb.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/sha" => { - "deps" => [ - "crypto/sha/libcrypto-lib-keccak1600-x86_64.o", - "crypto/sha/libcrypto-lib-sha1-mb-x86_64.o", - "crypto/sha/libcrypto-lib-sha1-x86_64.o", - "crypto/sha/libcrypto-lib-sha1_one.o", - "crypto/sha/libcrypto-lib-sha1dgst.o", - "crypto/sha/libcrypto-lib-sha256-mb-x86_64.o", - "crypto/sha/libcrypto-lib-sha256-x86_64.o", - "crypto/sha/libcrypto-lib-sha256.o", - "crypto/sha/libcrypto-lib-sha3.o", - "crypto/sha/libcrypto-lib-sha512-x86_64.o", - "crypto/sha/libcrypto-lib-sha512.o", - "crypto/sha/libcrypto-shlib-keccak1600-x86_64.o", - "crypto/sha/libcrypto-shlib-sha1-mb-x86_64.o", - "crypto/sha/libcrypto-shlib-sha1-x86_64.o", - "crypto/sha/libcrypto-shlib-sha1_one.o", - "crypto/sha/libcrypto-shlib-sha1dgst.o", - "crypto/sha/libcrypto-shlib-sha256-mb-x86_64.o", - "crypto/sha/libcrypto-shlib-sha256-x86_64.o", - "crypto/sha/libcrypto-shlib-sha256.o", - "crypto/sha/libcrypto-shlib-sha3.o", - "crypto/sha/libcrypto-shlib-sha512-x86_64.o", - "crypto/sha/libcrypto-shlib-sha512.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/siphash" => { - "deps" => [ - "crypto/siphash/libcrypto-lib-siphash.o", - "crypto/siphash/libcrypto-shlib-siphash.o", - "crypto/siphash/libssl-shlib-siphash.o" - ], - "products" => { - "lib" => [ - "libcrypto", - "libssl" - ] - } - }, - "crypto/slh_dsa" => { - "deps" => [ - "crypto/slh_dsa/libcrypto-lib-slh_adrs.o", - "crypto/slh_dsa/libcrypto-lib-slh_dsa.o", - "crypto/slh_dsa/libcrypto-lib-slh_dsa_hash_ctx.o", - "crypto/slh_dsa/libcrypto-lib-slh_dsa_key.o", - "crypto/slh_dsa/libcrypto-lib-slh_fors.o", - "crypto/slh_dsa/libcrypto-lib-slh_hash.o", - "crypto/slh_dsa/libcrypto-lib-slh_hypertree.o", - "crypto/slh_dsa/libcrypto-lib-slh_params.o", - "crypto/slh_dsa/libcrypto-lib-slh_wots.o", - "crypto/slh_dsa/libcrypto-lib-slh_xmss.o", - "crypto/slh_dsa/libcrypto-shlib-slh_adrs.o", - "crypto/slh_dsa/libcrypto-shlib-slh_dsa.o", - "crypto/slh_dsa/libcrypto-shlib-slh_dsa_hash_ctx.o", - "crypto/slh_dsa/libcrypto-shlib-slh_dsa_key.o", - "crypto/slh_dsa/libcrypto-shlib-slh_fors.o", - "crypto/slh_dsa/libcrypto-shlib-slh_hash.o", - "crypto/slh_dsa/libcrypto-shlib-slh_hypertree.o", - "crypto/slh_dsa/libcrypto-shlib-slh_params.o", - "crypto/slh_dsa/libcrypto-shlib-slh_wots.o", - "crypto/slh_dsa/libcrypto-shlib-slh_xmss.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/srp" => { - "deps" => [ - "crypto/srp/libcrypto-lib-srp_lib.o", - "crypto/srp/libcrypto-lib-srp_vfy.o", - "crypto/srp/libcrypto-shlib-srp_lib.o", - "crypto/srp/libcrypto-shlib-srp_vfy.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/stack" => { - "deps" => [ - "crypto/stack/libcrypto-lib-stack.o", - "crypto/stack/libcrypto-shlib-stack.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/store" => { - "deps" => [ - "crypto/store/libcrypto-lib-store_err.o", - "crypto/store/libcrypto-lib-store_init.o", - "crypto/store/libcrypto-lib-store_lib.o", - "crypto/store/libcrypto-lib-store_meth.o", - "crypto/store/libcrypto-lib-store_register.o", - "crypto/store/libcrypto-lib-store_result.o", - "crypto/store/libcrypto-lib-store_strings.o", - "crypto/store/libcrypto-shlib-store_err.o", - "crypto/store/libcrypto-shlib-store_init.o", - "crypto/store/libcrypto-shlib-store_lib.o", - "crypto/store/libcrypto-shlib-store_meth.o", - "crypto/store/libcrypto-shlib-store_register.o", - "crypto/store/libcrypto-shlib-store_result.o", - "crypto/store/libcrypto-shlib-store_strings.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/thread" => { - "deps" => [ - "crypto/thread/libcrypto-lib-api.o", - "crypto/thread/libcrypto-lib-arch.o", - "crypto/thread/libcrypto-lib-internal.o", - "crypto/thread/libcrypto-shlib-api.o", - "crypto/thread/libcrypto-shlib-arch.o", - "crypto/thread/libcrypto-shlib-internal.o", - "crypto/thread/libssl-shlib-arch.o" - ], - "products" => { - "lib" => [ - "libcrypto", - "libssl" - ] - } - }, - "crypto/thread/arch" => { - "deps" => [ - "crypto/thread/arch/libcrypto-lib-thread_none.o", - "crypto/thread/arch/libcrypto-lib-thread_posix.o", - "crypto/thread/arch/libcrypto-lib-thread_win.o", - "crypto/thread/arch/libcrypto-shlib-thread_none.o", - "crypto/thread/arch/libcrypto-shlib-thread_posix.o", - "crypto/thread/arch/libcrypto-shlib-thread_win.o", - "crypto/thread/arch/libssl-shlib-thread_none.o", - "crypto/thread/arch/libssl-shlib-thread_posix.o", - "crypto/thread/arch/libssl-shlib-thread_win.o" - ], - "products" => { - "lib" => [ - "libcrypto", - "libssl" - ] - } - }, - "crypto/ts" => { - "deps" => [ - "crypto/ts/libcrypto-lib-ts_asn1.o", - "crypto/ts/libcrypto-lib-ts_conf.o", - "crypto/ts/libcrypto-lib-ts_err.o", - "crypto/ts/libcrypto-lib-ts_lib.o", - "crypto/ts/libcrypto-lib-ts_req_print.o", - "crypto/ts/libcrypto-lib-ts_req_utils.o", - "crypto/ts/libcrypto-lib-ts_rsp_print.o", - "crypto/ts/libcrypto-lib-ts_rsp_sign.o", - "crypto/ts/libcrypto-lib-ts_rsp_utils.o", - "crypto/ts/libcrypto-lib-ts_rsp_verify.o", - "crypto/ts/libcrypto-lib-ts_verify_ctx.o", - "crypto/ts/libcrypto-shlib-ts_asn1.o", - "crypto/ts/libcrypto-shlib-ts_conf.o", - "crypto/ts/libcrypto-shlib-ts_err.o", - "crypto/ts/libcrypto-shlib-ts_lib.o", - "crypto/ts/libcrypto-shlib-ts_req_print.o", - "crypto/ts/libcrypto-shlib-ts_req_utils.o", - "crypto/ts/libcrypto-shlib-ts_rsp_print.o", - "crypto/ts/libcrypto-shlib-ts_rsp_sign.o", - "crypto/ts/libcrypto-shlib-ts_rsp_utils.o", - "crypto/ts/libcrypto-shlib-ts_rsp_verify.o", - "crypto/ts/libcrypto-shlib-ts_verify_ctx.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/txt_db" => { - "deps" => [ - "crypto/txt_db/libcrypto-lib-txt_db.o", - "crypto/txt_db/libcrypto-shlib-txt_db.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/ui" => { - "deps" => [ - "crypto/ui/libcrypto-lib-ui_err.o", - "crypto/ui/libcrypto-lib-ui_lib.o", - "crypto/ui/libcrypto-lib-ui_null.o", - "crypto/ui/libcrypto-lib-ui_openssl.o", - "crypto/ui/libcrypto-lib-ui_util.o", - "crypto/ui/libcrypto-shlib-ui_err.o", - "crypto/ui/libcrypto-shlib-ui_lib.o", - "crypto/ui/libcrypto-shlib-ui_null.o", - "crypto/ui/libcrypto-shlib-ui_openssl.o", - "crypto/ui/libcrypto-shlib-ui_util.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/whrlpool" => { - "deps" => [ - "crypto/whrlpool/libcrypto-lib-wp-x86_64.o", - "crypto/whrlpool/libcrypto-lib-wp_dgst.o", - "crypto/whrlpool/libcrypto-shlib-wp-x86_64.o", - "crypto/whrlpool/libcrypto-shlib-wp_dgst.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "crypto/x509" => { - "deps" => [ - "crypto/x509/libcrypto-lib-by_dir.o", - "crypto/x509/libcrypto-lib-by_file.o", - "crypto/x509/libcrypto-lib-by_store.o", - "crypto/x509/libcrypto-lib-pcy_cache.o", - "crypto/x509/libcrypto-lib-pcy_data.o", - "crypto/x509/libcrypto-lib-pcy_lib.o", - "crypto/x509/libcrypto-lib-pcy_map.o", - "crypto/x509/libcrypto-lib-pcy_node.o", - "crypto/x509/libcrypto-lib-pcy_tree.o", - "crypto/x509/libcrypto-lib-t_acert.o", - "crypto/x509/libcrypto-lib-t_crl.o", - "crypto/x509/libcrypto-lib-t_req.o", - "crypto/x509/libcrypto-lib-t_x509.o", - "crypto/x509/libcrypto-lib-v3_aaa.o", - "crypto/x509/libcrypto-lib-v3_ac_tgt.o", - "crypto/x509/libcrypto-lib-v3_addr.o", - "crypto/x509/libcrypto-lib-v3_admis.o", - "crypto/x509/libcrypto-lib-v3_akeya.o", - "crypto/x509/libcrypto-lib-v3_akid.o", - "crypto/x509/libcrypto-lib-v3_asid.o", - "crypto/x509/libcrypto-lib-v3_attrdesc.o", - "crypto/x509/libcrypto-lib-v3_attrmap.o", - "crypto/x509/libcrypto-lib-v3_audit_id.o", - "crypto/x509/libcrypto-lib-v3_authattid.o", - "crypto/x509/libcrypto-lib-v3_battcons.o", - "crypto/x509/libcrypto-lib-v3_bcons.o", - "crypto/x509/libcrypto-lib-v3_bitst.o", - "crypto/x509/libcrypto-lib-v3_conf.o", - "crypto/x509/libcrypto-lib-v3_cpols.o", - "crypto/x509/libcrypto-lib-v3_crld.o", - "crypto/x509/libcrypto-lib-v3_enum.o", - "crypto/x509/libcrypto-lib-v3_extku.o", - "crypto/x509/libcrypto-lib-v3_genn.o", - "crypto/x509/libcrypto-lib-v3_group_ac.o", - "crypto/x509/libcrypto-lib-v3_ia5.o", - "crypto/x509/libcrypto-lib-v3_ind_iss.o", - "crypto/x509/libcrypto-lib-v3_info.o", - "crypto/x509/libcrypto-lib-v3_int.o", - "crypto/x509/libcrypto-lib-v3_iobo.o", - "crypto/x509/libcrypto-lib-v3_ist.o", - "crypto/x509/libcrypto-lib-v3_lib.o", - "crypto/x509/libcrypto-lib-v3_ncons.o", - "crypto/x509/libcrypto-lib-v3_no_ass.o", - "crypto/x509/libcrypto-lib-v3_no_rev_avail.o", - "crypto/x509/libcrypto-lib-v3_pci.o", - "crypto/x509/libcrypto-lib-v3_pcia.o", - "crypto/x509/libcrypto-lib-v3_pcons.o", - "crypto/x509/libcrypto-lib-v3_pku.o", - "crypto/x509/libcrypto-lib-v3_pmaps.o", - "crypto/x509/libcrypto-lib-v3_prn.o", - "crypto/x509/libcrypto-lib-v3_purp.o", - "crypto/x509/libcrypto-lib-v3_rolespec.o", - "crypto/x509/libcrypto-lib-v3_san.o", - "crypto/x509/libcrypto-lib-v3_sda.o", - "crypto/x509/libcrypto-lib-v3_single_use.o", - "crypto/x509/libcrypto-lib-v3_skid.o", - "crypto/x509/libcrypto-lib-v3_soa_id.o", - "crypto/x509/libcrypto-lib-v3_sxnet.o", - "crypto/x509/libcrypto-lib-v3_timespec.o", - "crypto/x509/libcrypto-lib-v3_tlsf.o", - "crypto/x509/libcrypto-lib-v3_usernotice.o", - "crypto/x509/libcrypto-lib-v3_utf8.o", - "crypto/x509/libcrypto-lib-v3_utl.o", - "crypto/x509/libcrypto-lib-v3err.o", - "crypto/x509/libcrypto-lib-x509_acert.o", - "crypto/x509/libcrypto-lib-x509_att.o", - "crypto/x509/libcrypto-lib-x509_cmp.o", - "crypto/x509/libcrypto-lib-x509_d2.o", - "crypto/x509/libcrypto-lib-x509_def.o", - "crypto/x509/libcrypto-lib-x509_err.o", - "crypto/x509/libcrypto-lib-x509_ext.o", - "crypto/x509/libcrypto-lib-x509_lu.o", - "crypto/x509/libcrypto-lib-x509_meth.o", - "crypto/x509/libcrypto-lib-x509_obj.o", - "crypto/x509/libcrypto-lib-x509_r2x.o", - "crypto/x509/libcrypto-lib-x509_req.o", - "crypto/x509/libcrypto-lib-x509_set.o", - "crypto/x509/libcrypto-lib-x509_trust.o", - "crypto/x509/libcrypto-lib-x509_txt.o", - "crypto/x509/libcrypto-lib-x509_v3.o", - "crypto/x509/libcrypto-lib-x509_vfy.o", - "crypto/x509/libcrypto-lib-x509_vpm.o", - "crypto/x509/libcrypto-lib-x509aset.o", - "crypto/x509/libcrypto-lib-x509cset.o", - "crypto/x509/libcrypto-lib-x509name.o", - "crypto/x509/libcrypto-lib-x509rset.o", - "crypto/x509/libcrypto-lib-x509spki.o", - "crypto/x509/libcrypto-lib-x509type.o", - "crypto/x509/libcrypto-lib-x_all.o", - "crypto/x509/libcrypto-lib-x_attrib.o", - "crypto/x509/libcrypto-lib-x_crl.o", - "crypto/x509/libcrypto-lib-x_exten.o", - "crypto/x509/libcrypto-lib-x_ietfatt.o", - "crypto/x509/libcrypto-lib-x_name.o", - "crypto/x509/libcrypto-lib-x_pubkey.o", - "crypto/x509/libcrypto-lib-x_req.o", - "crypto/x509/libcrypto-lib-x_x509.o", - "crypto/x509/libcrypto-lib-x_x509a.o", - "crypto/x509/libcrypto-shlib-by_dir.o", - "crypto/x509/libcrypto-shlib-by_file.o", - "crypto/x509/libcrypto-shlib-by_store.o", - "crypto/x509/libcrypto-shlib-pcy_cache.o", - "crypto/x509/libcrypto-shlib-pcy_data.o", - "crypto/x509/libcrypto-shlib-pcy_lib.o", - "crypto/x509/libcrypto-shlib-pcy_map.o", - "crypto/x509/libcrypto-shlib-pcy_node.o", - "crypto/x509/libcrypto-shlib-pcy_tree.o", - "crypto/x509/libcrypto-shlib-t_acert.o", - "crypto/x509/libcrypto-shlib-t_crl.o", - "crypto/x509/libcrypto-shlib-t_req.o", - "crypto/x509/libcrypto-shlib-t_x509.o", - "crypto/x509/libcrypto-shlib-v3_aaa.o", - "crypto/x509/libcrypto-shlib-v3_ac_tgt.o", - "crypto/x509/libcrypto-shlib-v3_addr.o", - "crypto/x509/libcrypto-shlib-v3_admis.o", - "crypto/x509/libcrypto-shlib-v3_akeya.o", - "crypto/x509/libcrypto-shlib-v3_akid.o", - "crypto/x509/libcrypto-shlib-v3_asid.o", - "crypto/x509/libcrypto-shlib-v3_attrdesc.o", - "crypto/x509/libcrypto-shlib-v3_attrmap.o", - "crypto/x509/libcrypto-shlib-v3_audit_id.o", - "crypto/x509/libcrypto-shlib-v3_authattid.o", - "crypto/x509/libcrypto-shlib-v3_battcons.o", - "crypto/x509/libcrypto-shlib-v3_bcons.o", - "crypto/x509/libcrypto-shlib-v3_bitst.o", - "crypto/x509/libcrypto-shlib-v3_conf.o", - "crypto/x509/libcrypto-shlib-v3_cpols.o", - "crypto/x509/libcrypto-shlib-v3_crld.o", - "crypto/x509/libcrypto-shlib-v3_enum.o", - "crypto/x509/libcrypto-shlib-v3_extku.o", - "crypto/x509/libcrypto-shlib-v3_genn.o", - "crypto/x509/libcrypto-shlib-v3_group_ac.o", - "crypto/x509/libcrypto-shlib-v3_ia5.o", - "crypto/x509/libcrypto-shlib-v3_ind_iss.o", - "crypto/x509/libcrypto-shlib-v3_info.o", - "crypto/x509/libcrypto-shlib-v3_int.o", - "crypto/x509/libcrypto-shlib-v3_iobo.o", - "crypto/x509/libcrypto-shlib-v3_ist.o", - "crypto/x509/libcrypto-shlib-v3_lib.o", - "crypto/x509/libcrypto-shlib-v3_ncons.o", - "crypto/x509/libcrypto-shlib-v3_no_ass.o", - "crypto/x509/libcrypto-shlib-v3_no_rev_avail.o", - "crypto/x509/libcrypto-shlib-v3_pci.o", - "crypto/x509/libcrypto-shlib-v3_pcia.o", - "crypto/x509/libcrypto-shlib-v3_pcons.o", - "crypto/x509/libcrypto-shlib-v3_pku.o", - "crypto/x509/libcrypto-shlib-v3_pmaps.o", - "crypto/x509/libcrypto-shlib-v3_prn.o", - "crypto/x509/libcrypto-shlib-v3_purp.o", - "crypto/x509/libcrypto-shlib-v3_rolespec.o", - "crypto/x509/libcrypto-shlib-v3_san.o", - "crypto/x509/libcrypto-shlib-v3_sda.o", - "crypto/x509/libcrypto-shlib-v3_single_use.o", - "crypto/x509/libcrypto-shlib-v3_skid.o", - "crypto/x509/libcrypto-shlib-v3_soa_id.o", - "crypto/x509/libcrypto-shlib-v3_sxnet.o", - "crypto/x509/libcrypto-shlib-v3_timespec.o", - "crypto/x509/libcrypto-shlib-v3_tlsf.o", - "crypto/x509/libcrypto-shlib-v3_usernotice.o", - "crypto/x509/libcrypto-shlib-v3_utf8.o", - "crypto/x509/libcrypto-shlib-v3_utl.o", - "crypto/x509/libcrypto-shlib-v3err.o", - "crypto/x509/libcrypto-shlib-x509_acert.o", - "crypto/x509/libcrypto-shlib-x509_att.o", - "crypto/x509/libcrypto-shlib-x509_cmp.o", - "crypto/x509/libcrypto-shlib-x509_d2.o", - "crypto/x509/libcrypto-shlib-x509_def.o", - "crypto/x509/libcrypto-shlib-x509_err.o", - "crypto/x509/libcrypto-shlib-x509_ext.o", - "crypto/x509/libcrypto-shlib-x509_lu.o", - "crypto/x509/libcrypto-shlib-x509_meth.o", - "crypto/x509/libcrypto-shlib-x509_obj.o", - "crypto/x509/libcrypto-shlib-x509_r2x.o", - "crypto/x509/libcrypto-shlib-x509_req.o", - "crypto/x509/libcrypto-shlib-x509_set.o", - "crypto/x509/libcrypto-shlib-x509_trust.o", - "crypto/x509/libcrypto-shlib-x509_txt.o", - "crypto/x509/libcrypto-shlib-x509_v3.o", - "crypto/x509/libcrypto-shlib-x509_vfy.o", - "crypto/x509/libcrypto-shlib-x509_vpm.o", - "crypto/x509/libcrypto-shlib-x509aset.o", - "crypto/x509/libcrypto-shlib-x509cset.o", - "crypto/x509/libcrypto-shlib-x509name.o", - "crypto/x509/libcrypto-shlib-x509rset.o", - "crypto/x509/libcrypto-shlib-x509spki.o", - "crypto/x509/libcrypto-shlib-x509type.o", - "crypto/x509/libcrypto-shlib-x_all.o", - "crypto/x509/libcrypto-shlib-x_attrib.o", - "crypto/x509/libcrypto-shlib-x_crl.o", - "crypto/x509/libcrypto-shlib-x_exten.o", - "crypto/x509/libcrypto-shlib-x_ietfatt.o", - "crypto/x509/libcrypto-shlib-x_name.o", - "crypto/x509/libcrypto-shlib-x_pubkey.o", - "crypto/x509/libcrypto-shlib-x_req.o", - "crypto/x509/libcrypto-shlib-x_x509.o", - "crypto/x509/libcrypto-shlib-x_x509a.o" - ], - "products" => { - "lib" => [ - "libcrypto" - ] - } - }, - "engines" => { - "products" => { - "dso" => [ - "engines/capi", - "engines/dasync", - "engines/devcrypto", - "engines/loader_attic", - "engines/ossltest", - "engines/padlock" - ] - } - }, - "fuzz" => { - "products" => { - "bin" => [ - "fuzz/acert-test", - "fuzz/asn1-test", - "fuzz/asn1parse-test", - "fuzz/bignum-test", - "fuzz/bndiv-test", - "fuzz/client-test", - "fuzz/cmp-test", - "fuzz/cms-test", - "fuzz/conf-test", - "fuzz/crl-test", - "fuzz/ct-test", - "fuzz/decoder-test", - "fuzz/dtlsclient-test", - "fuzz/dtlsserver-test", - "fuzz/hashtable-test", - "fuzz/ml-dsa-test", - "fuzz/ml-kem-test", - "fuzz/pem-test", - "fuzz/provider-test", - "fuzz/punycode-test", - "fuzz/quic-client-test", - "fuzz/quic-lcidm-test", - "fuzz/quic-rcidm-test", - "fuzz/quic-server-test", - "fuzz/quic-srtm-test", - "fuzz/server-test", - "fuzz/slh-dsa-test", - "fuzz/smime-test", - "fuzz/v3name-test", - "fuzz/x509-test" - ] - } - }, - "providers" => { - "deps" => [ - "providers/endecode_test-bin-legacyprov.o", - "providers/evp_extra_test-bin-legacyprov.o", - "providers/libcrypto-lib-baseprov.o", - "providers/libcrypto-lib-defltprov.o", - "providers/libcrypto-lib-nullprov.o", - "providers/libcrypto-lib-prov_running.o", - "providers/libdefault.a", - "providers/libcrypto-shlib-baseprov.o", - "providers/libcrypto-shlib-defltprov.o", - "providers/libcrypto-shlib-nullprov.o", - "providers/libcrypto-shlib-prov_running.o", - "providers/libdefault.a" - ], - "products" => { - "bin" => [ - "test/endecode_test", - "test/evp_extra_test" - ], - "dso" => [ - "providers/legacy" - ], - "lib" => [ - "libcrypto", - "providers/liblegacy.a" - ] - } - }, - "providers/common" => { - "deps" => [ - "providers/common/libcommon-lib-provider_ctx.o", - "providers/common/libcommon-lib-provider_err.o", - "providers/common/libdefault-lib-bio_prov.o", - "providers/common/libdefault-lib-capabilities.o", - "providers/common/libdefault-lib-digest_to_nid.o", - "providers/common/libdefault-lib-provider_seeding.o", - "providers/common/libdefault-lib-provider_util.o", - "providers/common/libdefault-lib-securitycheck.o", - "providers/common/libdefault-lib-securitycheck_default.o", - "providers/common/liblegacy-lib-provider_util.o" - ], - "products" => { - "lib" => [ - "providers/libcommon.a", - "providers/libdefault.a", - "providers/liblegacy.a" - ] - } - }, - "providers/common/der" => { - "deps" => [ - "providers/common/der/libcommon-lib-der_digests_gen.o", - "providers/common/der/libcommon-lib-der_dsa_gen.o", - "providers/common/der/libcommon-lib-der_dsa_key.o", - "providers/common/der/libcommon-lib-der_dsa_sig.o", - "providers/common/der/libcommon-lib-der_ec_gen.o", - "providers/common/der/libcommon-lib-der_ec_key.o", - "providers/common/der/libcommon-lib-der_ec_sig.o", - "providers/common/der/libcommon-lib-der_ecx_gen.o", - "providers/common/der/libcommon-lib-der_ecx_key.o", - "providers/common/der/libcommon-lib-der_ml_dsa_gen.o", - "providers/common/der/libcommon-lib-der_ml_dsa_key.o", - "providers/common/der/libcommon-lib-der_rsa_gen.o", - "providers/common/der/libcommon-lib-der_rsa_key.o", - "providers/common/der/libcommon-lib-der_slh_dsa_gen.o", - "providers/common/der/libcommon-lib-der_slh_dsa_key.o", - "providers/common/der/libcommon-lib-der_wrap_gen.o", - "providers/common/der/libdefault-lib-der_rsa_sig.o" - ], - "products" => { - "lib" => [ - "providers/libcommon.a", - "providers/libdefault.a" - ] - } - }, - "providers/implementations/asymciphers" => { - "deps" => [ - "providers/implementations/asymciphers/libdefault-lib-rsa_enc.o" - ], - "products" => { - "lib" => [ - "providers/libdefault.a" - ] - } - }, - "providers/implementations/ciphers" => { - "deps" => [ - "providers/implementations/ciphers/libcommon-lib-ciphercommon.o", - "providers/implementations/ciphers/libcommon-lib-ciphercommon_block.o", - "providers/implementations/ciphers/libcommon-lib-ciphercommon_ccm.o", - "providers/implementations/ciphers/libcommon-lib-ciphercommon_ccm_hw.o", - "providers/implementations/ciphers/libcommon-lib-ciphercommon_gcm.o", - "providers/implementations/ciphers/libcommon-lib-ciphercommon_gcm_hw.o", - "providers/implementations/ciphers/libcommon-lib-ciphercommon_hw.o", - "providers/implementations/ciphers/libdefault-lib-cipher_aes.o", - "providers/implementations/ciphers/libdefault-lib-cipher_aes_cbc_hmac_sha.o", - "providers/implementations/ciphers/libdefault-lib-cipher_aes_cbc_hmac_sha1_hw.o", - "providers/implementations/ciphers/libdefault-lib-cipher_aes_cbc_hmac_sha256_hw.o", - "providers/implementations/ciphers/libdefault-lib-cipher_aes_ccm.o", - "providers/implementations/ciphers/libdefault-lib-cipher_aes_ccm_hw.o", - "providers/implementations/ciphers/libdefault-lib-cipher_aes_gcm.o", - "providers/implementations/ciphers/libdefault-lib-cipher_aes_gcm_hw.o", - "providers/implementations/ciphers/libdefault-lib-cipher_aes_gcm_siv.o", - "providers/implementations/ciphers/libdefault-lib-cipher_aes_gcm_siv_hw.o", - "providers/implementations/ciphers/libdefault-lib-cipher_aes_gcm_siv_polyval.o", - "providers/implementations/ciphers/libdefault-lib-cipher_aes_hw.o", - "providers/implementations/ciphers/libdefault-lib-cipher_aes_ocb.o", - "providers/implementations/ciphers/libdefault-lib-cipher_aes_ocb_hw.o", - "providers/implementations/ciphers/libdefault-lib-cipher_aes_siv.o", - "providers/implementations/ciphers/libdefault-lib-cipher_aes_siv_hw.o", - "providers/implementations/ciphers/libdefault-lib-cipher_aes_wrp.o", - "providers/implementations/ciphers/libdefault-lib-cipher_aes_xts.o", - "providers/implementations/ciphers/libdefault-lib-cipher_aes_xts_fips.o", - "providers/implementations/ciphers/libdefault-lib-cipher_aes_xts_hw.o", - "providers/implementations/ciphers/libdefault-lib-cipher_camellia.o", - "providers/implementations/ciphers/libdefault-lib-cipher_camellia_hw.o", - "providers/implementations/ciphers/libdefault-lib-cipher_chacha20.o", - "providers/implementations/ciphers/libdefault-lib-cipher_chacha20_hw.o", - "providers/implementations/ciphers/libdefault-lib-cipher_chacha20_poly1305.o", - "providers/implementations/ciphers/libdefault-lib-cipher_chacha20_poly1305_hw.o", - "providers/implementations/ciphers/libdefault-lib-cipher_cts.o", - "providers/implementations/ciphers/libdefault-lib-cipher_null.o", - "providers/implementations/ciphers/libdefault-lib-cipher_tdes.o", - "providers/implementations/ciphers/libdefault-lib-cipher_tdes_common.o", - "providers/implementations/ciphers/libdefault-lib-cipher_tdes_default.o", - "providers/implementations/ciphers/libdefault-lib-cipher_tdes_default_hw.o", - "providers/implementations/ciphers/libdefault-lib-cipher_tdes_hw.o", - "providers/implementations/ciphers/libdefault-lib-cipher_tdes_wrap.o", - "providers/implementations/ciphers/libdefault-lib-cipher_tdes_wrap_hw.o", - "providers/implementations/ciphers/liblegacy-lib-cipher_blowfish.o", - "providers/implementations/ciphers/liblegacy-lib-cipher_blowfish_hw.o", - "providers/implementations/ciphers/liblegacy-lib-cipher_cast5.o", - "providers/implementations/ciphers/liblegacy-lib-cipher_cast5_hw.o", - "providers/implementations/ciphers/liblegacy-lib-cipher_des.o", - "providers/implementations/ciphers/liblegacy-lib-cipher_des_hw.o", - "providers/implementations/ciphers/liblegacy-lib-cipher_desx.o", - "providers/implementations/ciphers/liblegacy-lib-cipher_desx_hw.o", - "providers/implementations/ciphers/liblegacy-lib-cipher_rc2.o", - "providers/implementations/ciphers/liblegacy-lib-cipher_rc2_hw.o", - "providers/implementations/ciphers/liblegacy-lib-cipher_rc4.o", - "providers/implementations/ciphers/liblegacy-lib-cipher_rc4_hmac_md5.o", - "providers/implementations/ciphers/liblegacy-lib-cipher_rc4_hmac_md5_hw.o", - "providers/implementations/ciphers/liblegacy-lib-cipher_rc4_hw.o", - "providers/implementations/ciphers/liblegacy-lib-cipher_seed.o", - "providers/implementations/ciphers/liblegacy-lib-cipher_seed_hw.o", - "providers/implementations/ciphers/liblegacy-lib-cipher_tdes_common.o" - ], - "products" => { - "lib" => [ - "providers/libcommon.a", - "providers/libdefault.a", - "providers/liblegacy.a" - ] - } - }, - "providers/implementations/digests" => { - "deps" => [ - "providers/implementations/digests/libcommon-lib-digestcommon.o", - "providers/implementations/digests/libdefault-lib-blake2_prov.o", - "providers/implementations/digests/libdefault-lib-blake2b_prov.o", - "providers/implementations/digests/libdefault-lib-blake2s_prov.o", - "providers/implementations/digests/libdefault-lib-md5_prov.o", - "providers/implementations/digests/libdefault-lib-md5_sha1_prov.o", - "providers/implementations/digests/libdefault-lib-null_prov.o", - "providers/implementations/digests/libdefault-lib-ripemd_prov.o", - "providers/implementations/digests/libdefault-lib-sha2_prov.o", - "providers/implementations/digests/libdefault-lib-sha3_prov.o", - "providers/implementations/digests/liblegacy-lib-md4_prov.o", - "providers/implementations/digests/liblegacy-lib-ripemd_prov.o", - "providers/implementations/digests/liblegacy-lib-wp_prov.o" - ], - "products" => { - "lib" => [ - "providers/libcommon.a", - "providers/libdefault.a", - "providers/liblegacy.a" - ] - } - }, - "providers/implementations/encode_decode" => { - "deps" => [ - "providers/implementations/encode_decode/libdefault-lib-decode_der2key.o", - "providers/implementations/encode_decode/libdefault-lib-decode_epki2pki.o", - "providers/implementations/encode_decode/libdefault-lib-decode_msblob2key.o", - "providers/implementations/encode_decode/libdefault-lib-decode_pem2der.o", - "providers/implementations/encode_decode/libdefault-lib-decode_pvk2key.o", - "providers/implementations/encode_decode/libdefault-lib-decode_spki2typespki.o", - "providers/implementations/encode_decode/libdefault-lib-encode_key2any.o", - "providers/implementations/encode_decode/libdefault-lib-encode_key2blob.o", - "providers/implementations/encode_decode/libdefault-lib-encode_key2ms.o", - "providers/implementations/encode_decode/libdefault-lib-encode_key2text.o", - "providers/implementations/encode_decode/libdefault-lib-endecoder_common.o", - "providers/implementations/encode_decode/libdefault-lib-ml_common_codecs.o", - "providers/implementations/encode_decode/libdefault-lib-ml_dsa_codecs.o", - "providers/implementations/encode_decode/libdefault-lib-ml_kem_codecs.o" - ], - "products" => { - "lib" => [ - "providers/libdefault.a" - ] - } - }, - "providers/implementations/exchange" => { - "deps" => [ - "providers/implementations/exchange/libdefault-lib-dh_exch.o", - "providers/implementations/exchange/libdefault-lib-ecdh_exch.o", - "providers/implementations/exchange/libdefault-lib-ecx_exch.o", - "providers/implementations/exchange/libdefault-lib-kdf_exch.o" - ], - "products" => { - "lib" => [ - "providers/libdefault.a" - ] - } - }, - "providers/implementations/kdfs" => { - "deps" => [ - "providers/implementations/kdfs/libdefault-lib-argon2.o", - "providers/implementations/kdfs/libdefault-lib-hkdf.o", - "providers/implementations/kdfs/libdefault-lib-hmacdrbg_kdf.o", - "providers/implementations/kdfs/libdefault-lib-kbkdf.o", - "providers/implementations/kdfs/libdefault-lib-krb5kdf.o", - "providers/implementations/kdfs/libdefault-lib-pbkdf2.o", - "providers/implementations/kdfs/libdefault-lib-pbkdf2_fips.o", - "providers/implementations/kdfs/libdefault-lib-pkcs12kdf.o", - "providers/implementations/kdfs/libdefault-lib-scrypt.o", - "providers/implementations/kdfs/libdefault-lib-sshkdf.o", - "providers/implementations/kdfs/libdefault-lib-sskdf.o", - "providers/implementations/kdfs/libdefault-lib-tls1_prf.o", - "providers/implementations/kdfs/libdefault-lib-x942kdf.o", - "providers/implementations/kdfs/liblegacy-lib-pbkdf1.o", - "providers/implementations/kdfs/liblegacy-lib-pvkkdf.o" - ], - "products" => { - "lib" => [ - "providers/libdefault.a", - "providers/liblegacy.a" - ] - } - }, - "providers/implementations/kem" => { - "deps" => [ - "providers/implementations/kem/libdefault-lib-ec_kem.o", - "providers/implementations/kem/libdefault-lib-ecx_kem.o", - "providers/implementations/kem/libdefault-lib-kem_util.o", - "providers/implementations/kem/libdefault-lib-ml_kem_kem.o", - "providers/implementations/kem/libdefault-lib-mlx_kem.o", - "providers/implementations/kem/libdefault-lib-rsa_kem.o", - "providers/implementations/kem/libtemplate-lib-template_kem.o" - ], - "products" => { - "lib" => [ - "providers/libdefault.a", - "providers/libtemplate.a" - ] - } - }, - "providers/implementations/keymgmt" => { - "deps" => [ - "providers/implementations/keymgmt/libdefault-lib-dh_kmgmt.o", - "providers/implementations/keymgmt/libdefault-lib-dsa_kmgmt.o", - "providers/implementations/keymgmt/libdefault-lib-ec_kmgmt.o", - "providers/implementations/keymgmt/libdefault-lib-ecx_kmgmt.o", - "providers/implementations/keymgmt/libdefault-lib-kdf_legacy_kmgmt.o", - "providers/implementations/keymgmt/libdefault-lib-mac_legacy_kmgmt.o", - "providers/implementations/keymgmt/libdefault-lib-ml_dsa_kmgmt.o", - "providers/implementations/keymgmt/libdefault-lib-ml_kem_kmgmt.o", - "providers/implementations/keymgmt/libdefault-lib-mlx_kmgmt.o", - "providers/implementations/keymgmt/libdefault-lib-rsa_kmgmt.o", - "providers/implementations/keymgmt/libdefault-lib-slh_dsa_kmgmt.o", - "providers/implementations/keymgmt/libtemplate-lib-template_kmgmt.o" - ], - "products" => { - "lib" => [ - "providers/libdefault.a", - "providers/libtemplate.a" - ] - } - }, - "providers/implementations/macs" => { - "deps" => [ - "providers/implementations/macs/libdefault-lib-blake2b_mac.o", - "providers/implementations/macs/libdefault-lib-blake2s_mac.o", - "providers/implementations/macs/libdefault-lib-cmac_prov.o", - "providers/implementations/macs/libdefault-lib-gmac_prov.o", - "providers/implementations/macs/libdefault-lib-hmac_prov.o", - "providers/implementations/macs/libdefault-lib-kmac_prov.o", - "providers/implementations/macs/libdefault-lib-poly1305_prov.o", - "providers/implementations/macs/libdefault-lib-siphash_prov.o" - ], - "products" => { - "lib" => [ - "providers/libdefault.a" - ] - } - }, - "providers/implementations/rands" => { - "deps" => [ - "providers/implementations/rands/libdefault-lib-drbg.o", - "providers/implementations/rands/libdefault-lib-drbg_ctr.o", - "providers/implementations/rands/libdefault-lib-drbg_hash.o", - "providers/implementations/rands/libdefault-lib-drbg_hmac.o", - "providers/implementations/rands/libdefault-lib-seed_src.o", - "providers/implementations/rands/libdefault-lib-seed_src_jitter.o", - "providers/implementations/rands/libdefault-lib-test_rng.o" - ], - "products" => { - "lib" => [ - "providers/libdefault.a" - ] - } - }, - "providers/implementations/rands/seeding" => { - "deps" => [ - "providers/implementations/rands/seeding/libdefault-lib-rand_cpu_x86.o", - "providers/implementations/rands/seeding/libdefault-lib-rand_tsc.o", - "providers/implementations/rands/seeding/libdefault-lib-rand_unix.o", - "providers/implementations/rands/seeding/libdefault-lib-rand_win.o" - ], - "products" => { - "lib" => [ - "providers/libdefault.a" - ] - } - }, - "providers/implementations/signature" => { - "deps" => [ - "providers/implementations/signature/libdefault-lib-dsa_sig.o", - "providers/implementations/signature/libdefault-lib-ecdsa_sig.o", - "providers/implementations/signature/libdefault-lib-eddsa_sig.o", - "providers/implementations/signature/libdefault-lib-mac_legacy_sig.o", - "providers/implementations/signature/libdefault-lib-ml_dsa_sig.o", - "providers/implementations/signature/libdefault-lib-rsa_sig.o", - "providers/implementations/signature/libdefault-lib-slh_dsa_sig.o" - ], - "products" => { - "lib" => [ - "providers/libdefault.a" - ] - } - }, - "providers/implementations/skeymgmt" => { - "deps" => [ - "providers/implementations/skeymgmt/libdefault-lib-aes_skmgmt.o", - "providers/implementations/skeymgmt/libdefault-lib-generic.o" - ], - "products" => { - "lib" => [ - "providers/libdefault.a" - ] - } - }, - "providers/implementations/storemgmt" => { - "deps" => [ - "providers/implementations/storemgmt/libdefault-lib-file_store.o", - "providers/implementations/storemgmt/libdefault-lib-file_store_any2obj.o" - ], - "products" => { - "lib" => [ - "providers/libdefault.a" - ] - } - }, - "ssl" => { - "deps" => [ - "ssl/tls13secretstest-bin-tls13_enc.o", - "ssl/libssl-lib-bio_ssl.o", - "ssl/libssl-lib-d1_lib.o", - "ssl/libssl-lib-d1_msg.o", - "ssl/libssl-lib-d1_srtp.o", - "ssl/libssl-lib-methods.o", - "ssl/libssl-lib-pqueue.o", - "ssl/libssl-lib-priority_queue.o", - "ssl/libssl-lib-s3_enc.o", - "ssl/libssl-lib-s3_lib.o", - "ssl/libssl-lib-s3_msg.o", - "ssl/libssl-lib-ssl_asn1.o", - "ssl/libssl-lib-ssl_cert.o", - "ssl/libssl-lib-ssl_cert_comp.o", - "ssl/libssl-lib-ssl_ciph.o", - "ssl/libssl-lib-ssl_conf.o", - "ssl/libssl-lib-ssl_err_legacy.o", - "ssl/libssl-lib-ssl_init.o", - "ssl/libssl-lib-ssl_lib.o", - "ssl/libssl-lib-ssl_mcnf.o", - "ssl/libssl-lib-ssl_rsa.o", - "ssl/libssl-lib-ssl_rsa_legacy.o", - "ssl/libssl-lib-ssl_sess.o", - "ssl/libssl-lib-ssl_stat.o", - "ssl/libssl-lib-ssl_txt.o", - "ssl/libssl-lib-ssl_utst.o", - "ssl/libssl-lib-t1_enc.o", - "ssl/libssl-lib-t1_lib.o", - "ssl/libssl-lib-t1_trce.o", - "ssl/libssl-lib-tls13_enc.o", - "ssl/libssl-lib-tls_depr.o", - "ssl/libssl-lib-tls_srp.o", - "ssl/libssl-shlib-bio_ssl.o", - "ssl/libssl-shlib-d1_lib.o", - "ssl/libssl-shlib-d1_msg.o", - "ssl/libssl-shlib-d1_srtp.o", - "ssl/libssl-shlib-methods.o", - "ssl/libssl-shlib-pqueue.o", - "ssl/libssl-shlib-priority_queue.o", - "ssl/libssl-shlib-s3_enc.o", - "ssl/libssl-shlib-s3_lib.o", - "ssl/libssl-shlib-s3_msg.o", - "ssl/libssl-shlib-ssl_asn1.o", - "ssl/libssl-shlib-ssl_cert.o", - "ssl/libssl-shlib-ssl_cert_comp.o", - "ssl/libssl-shlib-ssl_ciph.o", - "ssl/libssl-shlib-ssl_conf.o", - "ssl/libssl-shlib-ssl_err_legacy.o", - "ssl/libssl-shlib-ssl_init.o", - "ssl/libssl-shlib-ssl_lib.o", - "ssl/libssl-shlib-ssl_mcnf.o", - "ssl/libssl-shlib-ssl_rsa.o", - "ssl/libssl-shlib-ssl_rsa_legacy.o", - "ssl/libssl-shlib-ssl_sess.o", - "ssl/libssl-shlib-ssl_stat.o", - "ssl/libssl-shlib-ssl_txt.o", - "ssl/libssl-shlib-ssl_utst.o", - "ssl/libssl-shlib-t1_enc.o", - "ssl/libssl-shlib-t1_lib.o", - "ssl/libssl-shlib-t1_trce.o", - "ssl/libssl-shlib-tls13_enc.o", - "ssl/libssl-shlib-tls_depr.o", - "ssl/libssl-shlib-tls_srp.o" - ], - "products" => { - "bin" => [ - "test/tls13secretstest" - ], - "lib" => [ - "libssl" - ] - } - }, - "ssl/quic" => { - "deps" => [ - "ssl/quic/libssl-lib-cc_newreno.o", - "ssl/quic/libssl-lib-json_enc.o", - "ssl/quic/libssl-lib-qlog.o", - "ssl/quic/libssl-lib-qlog_event_helpers.o", - "ssl/quic/libssl-lib-quic_ackm.o", - "ssl/quic/libssl-lib-quic_cfq.o", - "ssl/quic/libssl-lib-quic_channel.o", - "ssl/quic/libssl-lib-quic_demux.o", - "ssl/quic/libssl-lib-quic_engine.o", - "ssl/quic/libssl-lib-quic_fc.o", - "ssl/quic/libssl-lib-quic_fifd.o", - "ssl/quic/libssl-lib-quic_impl.o", - "ssl/quic/libssl-lib-quic_lcidm.o", - "ssl/quic/libssl-lib-quic_method.o", - "ssl/quic/libssl-lib-quic_obj.o", - "ssl/quic/libssl-lib-quic_port.o", - "ssl/quic/libssl-lib-quic_rcidm.o", - "ssl/quic/libssl-lib-quic_reactor.o", - "ssl/quic/libssl-lib-quic_reactor_wait_ctx.o", - "ssl/quic/libssl-lib-quic_record_rx.o", - "ssl/quic/libssl-lib-quic_record_shared.o", - "ssl/quic/libssl-lib-quic_record_tx.o", - "ssl/quic/libssl-lib-quic_record_util.o", - "ssl/quic/libssl-lib-quic_rstream.o", - "ssl/quic/libssl-lib-quic_rx_depack.o", - "ssl/quic/libssl-lib-quic_sf_list.o", - "ssl/quic/libssl-lib-quic_srt_gen.o", - "ssl/quic/libssl-lib-quic_srtm.o", - "ssl/quic/libssl-lib-quic_sstream.o", - "ssl/quic/libssl-lib-quic_statm.o", - "ssl/quic/libssl-lib-quic_stream_map.o", - "ssl/quic/libssl-lib-quic_thread_assist.o", - "ssl/quic/libssl-lib-quic_tls.o", - "ssl/quic/libssl-lib-quic_tls_api.o", - "ssl/quic/libssl-lib-quic_trace.o", - "ssl/quic/libssl-lib-quic_tserver.o", - "ssl/quic/libssl-lib-quic_txp.o", - "ssl/quic/libssl-lib-quic_txpim.o", - "ssl/quic/libssl-lib-quic_types.o", - "ssl/quic/libssl-lib-quic_wire.o", - "ssl/quic/libssl-lib-quic_wire_pkt.o", - "ssl/quic/libssl-lib-uint_set.o", - "ssl/quic/libssl-shlib-cc_newreno.o", - "ssl/quic/libssl-shlib-json_enc.o", - "ssl/quic/libssl-shlib-qlog.o", - "ssl/quic/libssl-shlib-qlog_event_helpers.o", - "ssl/quic/libssl-shlib-quic_ackm.o", - "ssl/quic/libssl-shlib-quic_cfq.o", - "ssl/quic/libssl-shlib-quic_channel.o", - "ssl/quic/libssl-shlib-quic_demux.o", - "ssl/quic/libssl-shlib-quic_engine.o", - "ssl/quic/libssl-shlib-quic_fc.o", - "ssl/quic/libssl-shlib-quic_fifd.o", - "ssl/quic/libssl-shlib-quic_impl.o", - "ssl/quic/libssl-shlib-quic_lcidm.o", - "ssl/quic/libssl-shlib-quic_method.o", - "ssl/quic/libssl-shlib-quic_obj.o", - "ssl/quic/libssl-shlib-quic_port.o", - "ssl/quic/libssl-shlib-quic_rcidm.o", - "ssl/quic/libssl-shlib-quic_reactor.o", - "ssl/quic/libssl-shlib-quic_reactor_wait_ctx.o", - "ssl/quic/libssl-shlib-quic_record_rx.o", - "ssl/quic/libssl-shlib-quic_record_shared.o", - "ssl/quic/libssl-shlib-quic_record_tx.o", - "ssl/quic/libssl-shlib-quic_record_util.o", - "ssl/quic/libssl-shlib-quic_rstream.o", - "ssl/quic/libssl-shlib-quic_rx_depack.o", - "ssl/quic/libssl-shlib-quic_sf_list.o", - "ssl/quic/libssl-shlib-quic_srt_gen.o", - "ssl/quic/libssl-shlib-quic_srtm.o", - "ssl/quic/libssl-shlib-quic_sstream.o", - "ssl/quic/libssl-shlib-quic_statm.o", - "ssl/quic/libssl-shlib-quic_stream_map.o", - "ssl/quic/libssl-shlib-quic_thread_assist.o", - "ssl/quic/libssl-shlib-quic_tls.o", - "ssl/quic/libssl-shlib-quic_tls_api.o", - "ssl/quic/libssl-shlib-quic_trace.o", - "ssl/quic/libssl-shlib-quic_tserver.o", - "ssl/quic/libssl-shlib-quic_txp.o", - "ssl/quic/libssl-shlib-quic_txpim.o", - "ssl/quic/libssl-shlib-quic_types.o", - "ssl/quic/libssl-shlib-quic_wire.o", - "ssl/quic/libssl-shlib-quic_wire_pkt.o", - "ssl/quic/libssl-shlib-uint_set.o" - ], - "products" => { - "lib" => [ - "libssl" - ] - } - }, - "ssl/record" => { - "deps" => [ - "ssl/record/libssl-lib-rec_layer_d1.o", - "ssl/record/libssl-lib-rec_layer_s3.o", - "ssl/record/libssl-shlib-rec_layer_d1.o", - "ssl/record/libssl-shlib-rec_layer_s3.o" - ], - "products" => { - "lib" => [ - "libssl" - ] - } - }, - "ssl/record/methods" => { - "deps" => [ - "ssl/record/methods/libssl-lib-dtls_meth.o", - "ssl/record/methods/libssl-lib-ktls_meth.o", - "ssl/record/methods/libssl-lib-ssl3_meth.o", - "ssl/record/methods/libssl-lib-tls13_meth.o", - "ssl/record/methods/libssl-lib-tls1_meth.o", - "ssl/record/methods/libssl-lib-tls_common.o", - "ssl/record/methods/libssl-lib-tls_multib.o", - "ssl/record/methods/libssl-lib-tlsany_meth.o", - "ssl/record/methods/libssl-shlib-dtls_meth.o", - "ssl/record/methods/libssl-shlib-ktls_meth.o", - "ssl/record/methods/libssl-shlib-ssl3_cbc.o", - "ssl/record/methods/libssl-shlib-ssl3_meth.o", - "ssl/record/methods/libssl-shlib-tls13_meth.o", - "ssl/record/methods/libssl-shlib-tls1_meth.o", - "ssl/record/methods/libssl-shlib-tls_common.o", - "ssl/record/methods/libssl-shlib-tls_multib.o", - "ssl/record/methods/libssl-shlib-tls_pad.o", - "ssl/record/methods/libssl-shlib-tlsany_meth.o", - "ssl/record/methods/libcommon-lib-tls_pad.o", - "ssl/record/methods/libdefault-lib-ssl3_cbc.o" - ], - "products" => { - "lib" => [ - "libssl", - "providers/libcommon.a", - "providers/libdefault.a" - ] - } - }, - "ssl/rio" => { - "deps" => [ - "ssl/rio/libssl-lib-poll_builder.o", - "ssl/rio/libssl-lib-poll_immediate.o", - "ssl/rio/libssl-lib-rio_notifier.o", - "ssl/rio/libssl-shlib-poll_builder.o", - "ssl/rio/libssl-shlib-poll_immediate.o", - "ssl/rio/libssl-shlib-rio_notifier.o" - ], - "products" => { - "lib" => [ - "libssl" - ] - } - }, - "ssl/statem" => { - "deps" => [ - "ssl/statem/libssl-lib-extensions.o", - "ssl/statem/libssl-lib-extensions_clnt.o", - "ssl/statem/libssl-lib-extensions_cust.o", - "ssl/statem/libssl-lib-extensions_srvr.o", - "ssl/statem/libssl-lib-statem.o", - "ssl/statem/libssl-lib-statem_clnt.o", - "ssl/statem/libssl-lib-statem_dtls.o", - "ssl/statem/libssl-lib-statem_lib.o", - "ssl/statem/libssl-lib-statem_srvr.o", - "ssl/statem/libssl-shlib-extensions.o", - "ssl/statem/libssl-shlib-extensions_clnt.o", - "ssl/statem/libssl-shlib-extensions_cust.o", - "ssl/statem/libssl-shlib-extensions_srvr.o", - "ssl/statem/libssl-shlib-statem.o", - "ssl/statem/libssl-shlib-statem_clnt.o", - "ssl/statem/libssl-shlib-statem_dtls.o", - "ssl/statem/libssl-shlib-statem_lib.o", - "ssl/statem/libssl-shlib-statem_srvr.o" - ], - "products" => { - "lib" => [ - "libssl" - ] - } - }, - "test/helpers" => { - "deps" => [ - "test/helpers/asynciotest-bin-ssltestlib.o", - "test/helpers/cmp_asn_test-bin-cmp_testlib.o", - "test/helpers/cmp_client_test-bin-cmp_testlib.o", - "test/helpers/cmp_ctx_test-bin-cmp_testlib.o", - "test/helpers/cmp_hdr_test-bin-cmp_testlib.o", - "test/helpers/cmp_msg_test-bin-cmp_testlib.o", - "test/helpers/cmp_protect_test-bin-cmp_testlib.o", - "test/helpers/cmp_server_test-bin-cmp_testlib.o", - "test/helpers/cmp_status_test-bin-cmp_testlib.o", - "test/helpers/cmp_vfy_test-bin-cmp_testlib.o", - "test/helpers/dtls_mtu_test-bin-ssltestlib.o", - "test/helpers/dtlstest-bin-ssltestlib.o", - "test/helpers/endecode_test-bin-predefined_dhparams.o", - "test/helpers/fatalerrtest-bin-ssltestlib.o", - "test/helpers/json_test-bin-noisydgrambio.o", - "test/helpers/json_test-bin-pktsplitbio.o", - "test/helpers/json_test-bin-quictestlib.o", - "test/helpers/json_test-bin-ssltestlib.o", - "test/helpers/pkcs12_api_test-bin-pkcs12.o", - "test/helpers/pkcs12_format_test-bin-pkcs12.o", - "test/helpers/quic_multistream_test-bin-noisydgrambio.o", - "test/helpers/quic_multistream_test-bin-pktsplitbio.o", - "test/helpers/quic_multistream_test-bin-quictestlib.o", - "test/helpers/quic_multistream_test-bin-ssltestlib.o", - "test/helpers/quic_newcid_test-bin-noisydgrambio.o", - "test/helpers/quic_newcid_test-bin-pktsplitbio.o", - "test/helpers/quic_newcid_test-bin-quictestlib.o", - "test/helpers/quic_newcid_test-bin-ssltestlib.o", - "test/helpers/quic_radix_test-bin-noisydgrambio.o", - "test/helpers/quic_radix_test-bin-pktsplitbio.o", - "test/helpers/quic_radix_test-bin-quictestlib.o", - "test/helpers/quic_radix_test-bin-ssltestlib.o", - "test/helpers/quic_srt_gen_test-bin-noisydgrambio.o", - "test/helpers/quic_srt_gen_test-bin-pktsplitbio.o", - "test/helpers/quic_srt_gen_test-bin-quictestlib.o", - "test/helpers/quic_srt_gen_test-bin-ssltestlib.o", - "test/helpers/quicapitest-bin-noisydgrambio.o", - "test/helpers/quicapitest-bin-pktsplitbio.o", - "test/helpers/quicapitest-bin-quictestlib.o", - "test/helpers/quicapitest-bin-ssltestlib.o", - "test/helpers/quicfaultstest-bin-noisydgrambio.o", - "test/helpers/quicfaultstest-bin-pktsplitbio.o", - "test/helpers/quicfaultstest-bin-quictestlib.o", - "test/helpers/quicfaultstest-bin-ssltestlib.o", - "test/helpers/recordlentest-bin-ssltestlib.o", - "test/helpers/rpktest-bin-ssltestlib.o", - "test/helpers/servername_test-bin-ssltestlib.o", - "test/helpers/ssl_handshake_rtt_test-bin-ssltestlib.o", - "test/helpers/ssl_old_test-bin-predefined_dhparams.o", - "test/helpers/ssl_test-bin-handshake.o", - "test/helpers/ssl_test-bin-handshake_srp.o", - "test/helpers/ssl_test-bin-ssl_test_ctx.o", - "test/helpers/ssl_test_ctx_test-bin-ssl_test_ctx.o", - "test/helpers/sslapitest-bin-ssltestlib.o", - "test/helpers/sslbuffertest-bin-ssltestlib.o", - "test/helpers/sslcorrupttest-bin-ssltestlib.o", - "test/helpers/tls13ccstest-bin-ssltestlib.o", - "test/helpers/tls13groupselection_test-bin-ssltestlib.o" - ], - "products" => { - "bin" => [ - "test/asynciotest", - "test/cmp_asn_test", - "test/cmp_client_test", - "test/cmp_ctx_test", - "test/cmp_hdr_test", - "test/cmp_msg_test", - "test/cmp_protect_test", - "test/cmp_server_test", - "test/cmp_status_test", - "test/cmp_vfy_test", - "test/dtls_mtu_test", - "test/dtlstest", - "test/endecode_test", - "test/fatalerrtest", - "test/json_test", - "test/pkcs12_api_test", - "test/pkcs12_format_test", - "test/quic_multistream_test", - "test/quic_newcid_test", - "test/quic_radix_test", - "test/quic_srt_gen_test", - "test/quicapitest", - "test/quicfaultstest", - "test/recordlentest", - "test/rpktest", - "test/servername_test", - "test/ssl_handshake_rtt_test", - "test/ssl_old_test", - "test/ssl_test", - "test/ssl_test_ctx_test", - "test/sslapitest", - "test/sslbuffertest", - "test/sslcorrupttest", - "test/tls13ccstest", - "test/tls13groupselection_test" - ] - } - }, - "test/radix" => { - "deps" => [ - "test/radix/quic_radix_test-bin-quic_radix.o" - ], - "products" => { - "bin" => [ - "test/quic_radix_test" - ] - } - }, - "test/testutil" => { - "deps" => [ - "test/testutil/libtestutil-lib-apps_shims.o", - "test/testutil/libtestutil-lib-basic_output.o", - "test/testutil/libtestutil-lib-cb.o", - "test/testutil/libtestutil-lib-compare.o", - "test/testutil/libtestutil-lib-driver.o", - "test/testutil/libtestutil-lib-fake_random.o", - "test/testutil/libtestutil-lib-format_output.o", - "test/testutil/libtestutil-lib-helper.o", - "test/testutil/libtestutil-lib-load.o", - "test/testutil/libtestutil-lib-main.o", - "test/testutil/libtestutil-lib-options.o", - "test/testutil/libtestutil-lib-output.o", - "test/testutil/libtestutil-lib-provider.o", - "test/testutil/libtestutil-lib-random.o", - "test/testutil/libtestutil-lib-stanza.o", - "test/testutil/libtestutil-lib-test_cleanup.o", - "test/testutil/libtestutil-lib-test_options.o", - "test/testutil/libtestutil-lib-tests.o", - "test/testutil/libtestutil-lib-testutil_init.o" - ], - "products" => { - "lib" => [ - "test/libtestutil.a" - ] - } - }, - "tools" => { - "products" => { - "script" => [ - "tools/c_rehash" - ] - } - }, - "util" => { - "products" => { - "script" => [ - "util/shlib_wrap.sh", - "util/wrap.pl" - ] - } - } - }, - "generate" => { - "OpenSSLConfig.cmake" => [ - "exporters/cmake/OpenSSLConfig.cmake.in" - ], - "OpenSSLConfigVersion.cmake" => [ - "exporters/cmake/OpenSSLConfigVersion.cmake.in" - ], - "apps/progs.c" => [ - "apps/progs.pl", - "\"-C\"", - "\$(APPS_OPENSSL)" - ], - "apps/progs.h" => [ - "apps/progs.pl", - "\"-H\"", - "\$(APPS_OPENSSL)" - ], - "builddata.pm" => [ - "util/mkinstallvars.pl", - "PREFIX=.", - "BINDIR=apps", - "APPLINKDIR=ms", - "LIBDIR=", - "INCLUDEDIR=include", - "\"INCLUDEDIR=\$(SRCDIR)/include\"", - "ENGINESDIR=engines", - "MODULESDIR=providers", - "\"VERSION=\$(VERSION)\"", - "\"LDLIBS=\$(LIB_EX_LIBS)\"" - ], - "crypto/aes/aes-586.S" => [ - "crypto/aes/asm/aes-586.pl" - ], - "crypto/aes/aes-armv4.S" => [ - "crypto/aes/asm/aes-armv4.pl" - ], - "crypto/aes/aes-c64xplus.S" => [ - "crypto/aes/asm/aes-c64xplus.pl" - ], - "crypto/aes/aes-ia64.s" => [ - "crypto/aes/asm/aes-ia64.S" - ], - "crypto/aes/aes-mips.S" => [ - "crypto/aes/asm/aes-mips.pl" - ], - "crypto/aes/aes-parisc.s" => [ - "crypto/aes/asm/aes-parisc.pl" - ], - "crypto/aes/aes-ppc.s" => [ - "crypto/aes/asm/aes-ppc.pl" - ], - "crypto/aes/aes-riscv32-zkn.s" => [ - "crypto/aes/asm/aes-riscv32-zkn.pl" - ], - "crypto/aes/aes-riscv64-zkn.s" => [ - "crypto/aes/asm/aes-riscv64-zkn.pl" - ], - "crypto/aes/aes-riscv64-zvbb-zvkg-zvkned.s" => [ - "crypto/aes/asm/aes-riscv64-zvbb-zvkg-zvkned.pl" - ], - "crypto/aes/aes-riscv64-zvkb-zvkned.s" => [ - "crypto/aes/asm/aes-riscv64-zvkb-zvkned.pl" - ], - "crypto/aes/aes-riscv64-zvkned.s" => [ - "crypto/aes/asm/aes-riscv64-zvkned.pl" - ], - "crypto/aes/aes-riscv64.s" => [ - "crypto/aes/asm/aes-riscv64.pl" - ], - "crypto/aes/aes-s390x.S" => [ - "crypto/aes/asm/aes-s390x.pl" - ], - "crypto/aes/aes-sparcv9.S" => [ - "crypto/aes/asm/aes-sparcv9.pl" - ], - "crypto/aes/aes-x86_64.s" => [ - "crypto/aes/asm/aes-x86_64.pl" - ], - "crypto/aes/aesfx-sparcv9.S" => [ - "crypto/aes/asm/aesfx-sparcv9.pl" - ], - "crypto/aes/aesni-mb-x86_64.s" => [ - "crypto/aes/asm/aesni-mb-x86_64.pl" - ], - "crypto/aes/aesni-sha1-x86_64.s" => [ - "crypto/aes/asm/aesni-sha1-x86_64.pl" - ], - "crypto/aes/aesni-sha256-x86_64.s" => [ - "crypto/aes/asm/aesni-sha256-x86_64.pl" - ], - "crypto/aes/aesni-x86.S" => [ - "crypto/aes/asm/aesni-x86.pl" - ], - "crypto/aes/aesni-x86_64.s" => [ - "crypto/aes/asm/aesni-x86_64.pl" - ], - "crypto/aes/aesni-xts-avx512.s" => [ - "crypto/aes/asm/aesni-xts-avx512.pl" - ], - "crypto/aes/aesp8-ppc.s" => [ - "crypto/aes/asm/aesp8-ppc.pl" - ], - "crypto/aes/aest4-sparcv9.S" => [ - "crypto/aes/asm/aest4-sparcv9.pl" - ], - "crypto/aes/aesv8-armx.S" => [ - "crypto/aes/asm/aesv8-armx.pl" - ], - "crypto/aes/bsaes-armv7.S" => [ - "crypto/aes/asm/bsaes-armv7.pl" - ], - "crypto/aes/bsaes-armv8.S" => [ - "crypto/aes/asm/bsaes-armv8.pl" - ], - "crypto/aes/bsaes-x86_64.s" => [ - "crypto/aes/asm/bsaes-x86_64.pl" - ], - "crypto/aes/vpaes-armv8.S" => [ - "crypto/aes/asm/vpaes-armv8.pl" - ], - "crypto/aes/vpaes-loongarch64.S" => [ - "crypto/aes/asm/vpaes-loongarch64.pl" - ], - "crypto/aes/vpaes-ppc.s" => [ - "crypto/aes/asm/vpaes-ppc.pl" - ], - "crypto/aes/vpaes-x86.S" => [ - "crypto/aes/asm/vpaes-x86.pl" - ], - "crypto/aes/vpaes-x86_64.s" => [ - "crypto/aes/asm/vpaes-x86_64.pl" - ], - "crypto/alphacpuid.s" => [ - "crypto/alphacpuid.pl" - ], - "crypto/arm64cpuid.S" => [ - "crypto/arm64cpuid.pl" - ], - "crypto/armv4cpuid.S" => [ - "crypto/armv4cpuid.pl" - ], - "crypto/bf/bf-586.S" => [ - "crypto/bf/asm/bf-586.pl" - ], - "crypto/bn/alpha-mont.S" => [ - "crypto/bn/asm/alpha-mont.pl" - ], - "crypto/bn/armv4-gf2m.S" => [ - "crypto/bn/asm/armv4-gf2m.pl" - ], - "crypto/bn/armv4-mont.S" => [ - "crypto/bn/asm/armv4-mont.pl" - ], - "crypto/bn/armv8-mont.S" => [ - "crypto/bn/asm/armv8-mont.pl" - ], - "crypto/bn/bn-586.S" => [ - "crypto/bn/asm/bn-586.pl" - ], - "crypto/bn/bn-ia64.s" => [ - "crypto/bn/asm/ia64.S" - ], - "crypto/bn/bn-mips.S" => [ - "crypto/bn/asm/mips.pl" - ], - "crypto/bn/bn-ppc.s" => [ - "crypto/bn/asm/ppc.pl" - ], - "crypto/bn/co-586.S" => [ - "crypto/bn/asm/co-586.pl" - ], - "crypto/bn/ia64-mont.s" => [ - "crypto/bn/asm/ia64-mont.pl" - ], - "crypto/bn/mips-mont.S" => [ - "crypto/bn/asm/mips-mont.pl" - ], - "crypto/bn/parisc-mont.s" => [ - "crypto/bn/asm/parisc-mont.pl" - ], - "crypto/bn/ppc-mont.s" => [ - "crypto/bn/asm/ppc-mont.pl" - ], - "crypto/bn/ppc64-mont-fixed.s" => [ - "crypto/bn/asm/ppc64-mont-fixed.pl" - ], - "crypto/bn/ppc64-mont.s" => [ - "crypto/bn/asm/ppc64-mont.pl" - ], - "crypto/bn/rsaz-2k-avx512.s" => [ - "crypto/bn/asm/rsaz-2k-avx512.pl" - ], - "crypto/bn/rsaz-2k-avxifma.s" => [ - "crypto/bn/asm/rsaz-2k-avxifma.pl" - ], - "crypto/bn/rsaz-3k-avx512.s" => [ - "crypto/bn/asm/rsaz-3k-avx512.pl" - ], - "crypto/bn/rsaz-3k-avxifma.s" => [ - "crypto/bn/asm/rsaz-3k-avxifma.pl" - ], - "crypto/bn/rsaz-4k-avx512.s" => [ - "crypto/bn/asm/rsaz-4k-avx512.pl" - ], - "crypto/bn/rsaz-4k-avxifma.s" => [ - "crypto/bn/asm/rsaz-4k-avxifma.pl" - ], - "crypto/bn/rsaz-avx2.s" => [ - "crypto/bn/asm/rsaz-avx2.pl" - ], - "crypto/bn/rsaz-x86_64.s" => [ - "crypto/bn/asm/rsaz-x86_64.pl" - ], - "crypto/bn/s390x-gf2m.s" => [ - "crypto/bn/asm/s390x-gf2m.pl" - ], - "crypto/bn/s390x-mont.S" => [ - "crypto/bn/asm/s390x-mont.pl" - ], - "crypto/bn/sparct4-mont.S" => [ - "crypto/bn/asm/sparct4-mont.pl" - ], - "crypto/bn/sparcv9-gf2m.S" => [ - "crypto/bn/asm/sparcv9-gf2m.pl" - ], - "crypto/bn/sparcv9-mont.S" => [ - "crypto/bn/asm/sparcv9-mont.pl" - ], - "crypto/bn/sparcv9a-mont.S" => [ - "crypto/bn/asm/sparcv9a-mont.pl" - ], - "crypto/bn/vis3-mont.S" => [ - "crypto/bn/asm/vis3-mont.pl" - ], - "crypto/bn/x86-gf2m.S" => [ - "crypto/bn/asm/x86-gf2m.pl" - ], - "crypto/bn/x86-mont.S" => [ - "crypto/bn/asm/x86-mont.pl" - ], - "crypto/bn/x86_64-gf2m.s" => [ - "crypto/bn/asm/x86_64-gf2m.pl" - ], - "crypto/bn/x86_64-mont.s" => [ - "crypto/bn/asm/x86_64-mont.pl" - ], - "crypto/bn/x86_64-mont5.s" => [ - "crypto/bn/asm/x86_64-mont5.pl" - ], - "crypto/buildinf.h" => [ - "util/mkbuildinf.pl", - "\"\$(CC)", - "\$(LIB_CFLAGS)", - "\$(CPPFLAGS_Q)\"", - "\"\$(PLATFORM)\"" - ], - "crypto/camellia/cmll-x86.S" => [ - "crypto/camellia/asm/cmll-x86.pl" - ], - "crypto/camellia/cmll-x86_64.s" => [ - "crypto/camellia/asm/cmll-x86_64.pl" - ], - "crypto/camellia/cmllt4-sparcv9.S" => [ - "crypto/camellia/asm/cmllt4-sparcv9.pl" - ], - "crypto/cast/cast-586.S" => [ - "crypto/cast/asm/cast-586.pl" - ], - "crypto/chacha/chacha-armv4.S" => [ - "crypto/chacha/asm/chacha-armv4.pl" - ], - "crypto/chacha/chacha-armv8-sve.S" => [ - "crypto/chacha/asm/chacha-armv8-sve.pl" - ], - "crypto/chacha/chacha-armv8.S" => [ - "crypto/chacha/asm/chacha-armv8.pl" - ], - "crypto/chacha/chacha-c64xplus.S" => [ - "crypto/chacha/asm/chacha-c64xplus.pl" - ], - "crypto/chacha/chacha-ia64.S" => [ - "crypto/chacha/asm/chacha-ia64.pl" - ], - "crypto/chacha/chacha-ia64.s" => [ - "crypto/chacha/chacha-ia64.S" - ], - "crypto/chacha/chacha-loongarch64.S" => [ - "crypto/chacha/asm/chacha-loongarch64.pl" - ], - "crypto/chacha/chacha-ppc.s" => [ - "crypto/chacha/asm/chacha-ppc.pl" - ], - "crypto/chacha/chacha-riscv64-v-zbb-zvkb.s" => [ - "crypto/chacha/asm/chacha-riscv64-v-zbb.pl", - "zvkb" - ], - "crypto/chacha/chacha-riscv64-v-zbb.s" => [ - "crypto/chacha/asm/chacha-riscv64-v-zbb.pl" - ], - "crypto/chacha/chacha-s390x.S" => [ - "crypto/chacha/asm/chacha-s390x.pl" - ], - "crypto/chacha/chacha-x86.S" => [ - "crypto/chacha/asm/chacha-x86.pl" - ], - "crypto/chacha/chacha-x86_64.s" => [ - "crypto/chacha/asm/chacha-x86_64.pl" - ], - "crypto/chacha/chachap10-ppc.s" => [ - "crypto/chacha/asm/chachap10-ppc.pl" - ], - "crypto/des/crypt586.S" => [ - "crypto/des/asm/crypt586.pl" - ], - "crypto/des/des-586.S" => [ - "crypto/des/asm/des-586.pl" - ], - "crypto/des/des_enc-sparc.S" => [ - "crypto/des/asm/des_enc.m4" - ], - "crypto/des/dest4-sparcv9.S" => [ - "crypto/des/asm/dest4-sparcv9.pl" - ], - "crypto/ec/ecp_nistp384-ppc64.s" => [ - "crypto/ec/asm/ecp_nistp384-ppc64.pl" - ], - "crypto/ec/ecp_nistp521-ppc64.s" => [ - "crypto/ec/asm/ecp_nistp521-ppc64.pl" - ], - "crypto/ec/ecp_nistz256-armv4.S" => [ - "crypto/ec/asm/ecp_nistz256-armv4.pl" - ], - "crypto/ec/ecp_nistz256-armv8.S" => [ - "crypto/ec/asm/ecp_nistz256-armv8.pl" - ], - "crypto/ec/ecp_nistz256-avx2.s" => [ - "crypto/ec/asm/ecp_nistz256-avx2.pl" - ], - "crypto/ec/ecp_nistz256-ppc64.s" => [ - "crypto/ec/asm/ecp_nistz256-ppc64.pl" - ], - "crypto/ec/ecp_nistz256-sparcv9.S" => [ - "crypto/ec/asm/ecp_nistz256-sparcv9.pl" - ], - "crypto/ec/ecp_nistz256-x86.S" => [ - "crypto/ec/asm/ecp_nistz256-x86.pl" - ], - "crypto/ec/ecp_nistz256-x86_64.s" => [ - "crypto/ec/asm/ecp_nistz256-x86_64.pl" - ], - "crypto/ec/x25519-ppc64.s" => [ - "crypto/ec/asm/x25519-ppc64.pl" - ], - "crypto/ec/x25519-x86_64.s" => [ - "crypto/ec/asm/x25519-x86_64.pl" - ], - "crypto/ia64cpuid.s" => [ - "crypto/ia64cpuid.S" - ], - "crypto/loongarch64cpuid.s" => [ - "crypto/loongarch64cpuid.pl" - ], - "crypto/md5/md5-586.S" => [ - "crypto/md5/asm/md5-586.pl" - ], - "crypto/md5/md5-aarch64.S" => [ - "crypto/md5/asm/md5-aarch64.pl" - ], - "crypto/md5/md5-loongarch64.S" => [ - "crypto/md5/asm/md5-loongarch64.pl" - ], - "crypto/md5/md5-sparcv9.S" => [ - "crypto/md5/asm/md5-sparcv9.pl" - ], - "crypto/md5/md5-x86_64.s" => [ - "crypto/md5/asm/md5-x86_64.pl" - ], - "crypto/modes/aes-gcm-armv8-unroll8_64.S" => [ - "crypto/modes/asm/aes-gcm-armv8-unroll8_64.pl" - ], - "crypto/modes/aes-gcm-armv8_64.S" => [ - "crypto/modes/asm/aes-gcm-armv8_64.pl" - ], - "crypto/modes/aes-gcm-avx512.s" => [ - "crypto/modes/asm/aes-gcm-avx512.pl" - ], - "crypto/modes/aes-gcm-ppc.s" => [ - "crypto/modes/asm/aes-gcm-ppc.pl" - ], - "crypto/modes/aes-gcm-riscv64-zvkb-zvkg-zvkned.s" => [ - "crypto/modes/asm/aes-gcm-riscv64-zvkb-zvkg-zvkned.pl" - ], - "crypto/modes/aesni-gcm-x86_64.s" => [ - "crypto/modes/asm/aesni-gcm-x86_64.pl" - ], - "crypto/modes/ghash-alpha.S" => [ - "crypto/modes/asm/ghash-alpha.pl" - ], - "crypto/modes/ghash-armv4.S" => [ - "crypto/modes/asm/ghash-armv4.pl" - ], - "crypto/modes/ghash-c64xplus.S" => [ - "crypto/modes/asm/ghash-c64xplus.pl" - ], - "crypto/modes/ghash-ia64.s" => [ - "crypto/modes/asm/ghash-ia64.pl" - ], - "crypto/modes/ghash-parisc.s" => [ - "crypto/modes/asm/ghash-parisc.pl" - ], - "crypto/modes/ghash-riscv64-zvkb-zvbc.s" => [ - "crypto/modes/asm/ghash-riscv64-zvkb-zvbc.pl" - ], - "crypto/modes/ghash-riscv64-zvkg.s" => [ - "crypto/modes/asm/ghash-riscv64-zvkg.pl" - ], - "crypto/modes/ghash-riscv64.s" => [ - "crypto/modes/asm/ghash-riscv64.pl" - ], - "crypto/modes/ghash-s390x.S" => [ - "crypto/modes/asm/ghash-s390x.pl" - ], - "crypto/modes/ghash-sparcv9.S" => [ - "crypto/modes/asm/ghash-sparcv9.pl" - ], - "crypto/modes/ghash-x86.S" => [ - "crypto/modes/asm/ghash-x86.pl" - ], - "crypto/modes/ghash-x86_64.s" => [ - "crypto/modes/asm/ghash-x86_64.pl" - ], - "crypto/modes/ghashp8-ppc.s" => [ - "crypto/modes/asm/ghashp8-ppc.pl" - ], - "crypto/modes/ghashv8-armx.S" => [ - "crypto/modes/asm/ghashv8-armx.pl" - ], - "crypto/params_idx.c" => [ - "crypto/params_idx.c.in" - ], - "crypto/pariscid.s" => [ - "crypto/pariscid.pl" - ], - "crypto/poly1305/poly1305-armv4.S" => [ - "crypto/poly1305/asm/poly1305-armv4.pl" - ], - "crypto/poly1305/poly1305-armv8.S" => [ - "crypto/poly1305/asm/poly1305-armv8.pl" - ], - "crypto/poly1305/poly1305-c64xplus.S" => [ - "crypto/poly1305/asm/poly1305-c64xplus.pl" - ], - "crypto/poly1305/poly1305-ia64.s" => [ - "crypto/poly1305/asm/poly1305-ia64.S" - ], - "crypto/poly1305/poly1305-mips.S" => [ - "crypto/poly1305/asm/poly1305-mips.pl" - ], - "crypto/poly1305/poly1305-ppc.s" => [ - "crypto/poly1305/asm/poly1305-ppc.pl" - ], - "crypto/poly1305/poly1305-ppcfp.s" => [ - "crypto/poly1305/asm/poly1305-ppcfp.pl" - ], - "crypto/poly1305/poly1305-s390x.S" => [ - "crypto/poly1305/asm/poly1305-s390x.pl" - ], - "crypto/poly1305/poly1305-sparcv9.S" => [ - "crypto/poly1305/asm/poly1305-sparcv9.pl" - ], - "crypto/poly1305/poly1305-x86.S" => [ - "crypto/poly1305/asm/poly1305-x86.pl" - ], - "crypto/poly1305/poly1305-x86_64.s" => [ - "crypto/poly1305/asm/poly1305-x86_64.pl" - ], - "crypto/ppccpuid.s" => [ - "crypto/ppccpuid.pl" - ], - "crypto/rc4/rc4-586.S" => [ - "crypto/rc4/asm/rc4-586.pl" - ], - "crypto/rc4/rc4-c64xplus.s" => [ - "crypto/rc4/asm/rc4-c64xplus.pl" - ], - "crypto/rc4/rc4-md5-x86_64.s" => [ - "crypto/rc4/asm/rc4-md5-x86_64.pl" - ], - "crypto/rc4/rc4-parisc.s" => [ - "crypto/rc4/asm/rc4-parisc.pl" - ], - "crypto/rc4/rc4-s390x.s" => [ - "crypto/rc4/asm/rc4-s390x.pl" - ], - "crypto/rc4/rc4-x86_64.s" => [ - "crypto/rc4/asm/rc4-x86_64.pl" - ], - "crypto/ripemd/rmd-586.S" => [ - "crypto/ripemd/asm/rmd-586.pl" - ], - "crypto/riscv32cpuid.s" => [ - "crypto/riscv32cpuid.pl" - ], - "crypto/riscv64cpuid.s" => [ - "crypto/riscv64cpuid.pl" - ], - "crypto/s390xcpuid.S" => [ - "crypto/s390xcpuid.pl" - ], - "crypto/sha/keccak1600-armv4.S" => [ - "crypto/sha/asm/keccak1600-armv4.pl" - ], - "crypto/sha/keccak1600-armv8.S" => [ - "crypto/sha/asm/keccak1600-armv8.pl" - ], - "crypto/sha/keccak1600-avx2.S" => [ - "crypto/sha/asm/keccak1600-avx2.pl" - ], - "crypto/sha/keccak1600-avx512.S" => [ - "crypto/sha/asm/keccak1600-avx512.pl" - ], - "crypto/sha/keccak1600-avx512vl.S" => [ - "crypto/sha/asm/keccak1600-avx512vl.pl" - ], - "crypto/sha/keccak1600-c64x.S" => [ - "crypto/sha/asm/keccak1600-c64x.pl" - ], - "crypto/sha/keccak1600-mmx.S" => [ - "crypto/sha/asm/keccak1600-mmx.pl" - ], - "crypto/sha/keccak1600-ppc64.s" => [ - "crypto/sha/asm/keccak1600-ppc64.pl" - ], - "crypto/sha/keccak1600-s390x.S" => [ - "crypto/sha/asm/keccak1600-s390x.pl" - ], - "crypto/sha/keccak1600-x86_64.s" => [ - "crypto/sha/asm/keccak1600-x86_64.pl" - ], - "crypto/sha/keccak1600p8-ppc.S" => [ - "crypto/sha/asm/keccak1600p8-ppc.pl" - ], - "crypto/sha/sha1-586.S" => [ - "crypto/sha/asm/sha1-586.pl" - ], - "crypto/sha/sha1-alpha.S" => [ - "crypto/sha/asm/sha1-alpha.pl" - ], - "crypto/sha/sha1-armv4-large.S" => [ - "crypto/sha/asm/sha1-armv4-large.pl" - ], - "crypto/sha/sha1-armv8.S" => [ - "crypto/sha/asm/sha1-armv8.pl" - ], - "crypto/sha/sha1-c64xplus.S" => [ - "crypto/sha/asm/sha1-c64xplus.pl" - ], - "crypto/sha/sha1-ia64.s" => [ - "crypto/sha/asm/sha1-ia64.pl" - ], - "crypto/sha/sha1-mb-x86_64.s" => [ - "crypto/sha/asm/sha1-mb-x86_64.pl" - ], - "crypto/sha/sha1-mips.S" => [ - "crypto/sha/asm/sha1-mips.pl" - ], - "crypto/sha/sha1-parisc.s" => [ - "crypto/sha/asm/sha1-parisc.pl" - ], - "crypto/sha/sha1-ppc.s" => [ - "crypto/sha/asm/sha1-ppc.pl" - ], - "crypto/sha/sha1-s390x.S" => [ - "crypto/sha/asm/sha1-s390x.pl" - ], - "crypto/sha/sha1-sparcv9.S" => [ - "crypto/sha/asm/sha1-sparcv9.pl" - ], - "crypto/sha/sha1-sparcv9a.S" => [ - "crypto/sha/asm/sha1-sparcv9a.pl" - ], - "crypto/sha/sha1-thumb.S" => [ - "crypto/sha/asm/sha1-thumb.pl" - ], - "crypto/sha/sha1-x86_64.s" => [ - "crypto/sha/asm/sha1-x86_64.pl" - ], - "crypto/sha/sha256-586.S" => [ - "crypto/sha/asm/sha256-586.pl" - ], - "crypto/sha/sha256-armv4.S" => [ - "crypto/sha/asm/sha256-armv4.pl" - ], - "crypto/sha/sha256-armv8.S" => [ - "crypto/sha/asm/sha512-armv8.pl" - ], - "crypto/sha/sha256-c64xplus.S" => [ - "crypto/sha/asm/sha256-c64xplus.pl" - ], - "crypto/sha/sha256-ia64.s" => [ - "crypto/sha/asm/sha512-ia64.pl" - ], - "crypto/sha/sha256-mb-x86_64.s" => [ - "crypto/sha/asm/sha256-mb-x86_64.pl" - ], - "crypto/sha/sha256-mips.S" => [ - "crypto/sha/asm/sha512-mips.pl" - ], - "crypto/sha/sha256-parisc.s" => [ - "crypto/sha/asm/sha512-parisc.pl" - ], - "crypto/sha/sha256-ppc.s" => [ - "crypto/sha/asm/sha512-ppc.pl" - ], - "crypto/sha/sha256-riscv64-zvkb-zvknha_or_zvknhb.S" => [ - "crypto/sha/asm/sha256-riscv64-zvkb-zvknha_or_zvknhb.pl" - ], - "crypto/sha/sha256-s390x.S" => [ - "crypto/sha/asm/sha512-s390x.pl" - ], - "crypto/sha/sha256-sparcv9.S" => [ - "crypto/sha/asm/sha512-sparcv9.pl" - ], - "crypto/sha/sha256-x86_64.s" => [ - "crypto/sha/asm/sha512-x86_64.pl" - ], - "crypto/sha/sha256p8-ppc.s" => [ - "crypto/sha/asm/sha512p8-ppc.pl" - ], - "crypto/sha/sha512-586.S" => [ - "crypto/sha/asm/sha512-586.pl" - ], - "crypto/sha/sha512-armv4.S" => [ - "crypto/sha/asm/sha512-armv4.pl" - ], - "crypto/sha/sha512-armv8.S" => [ - "crypto/sha/asm/sha512-armv8.pl" - ], - "crypto/sha/sha512-c64xplus.S" => [ - "crypto/sha/asm/sha512-c64xplus.pl" - ], - "crypto/sha/sha512-ia64.s" => [ - "crypto/sha/asm/sha512-ia64.pl" - ], - "crypto/sha/sha512-mips.S" => [ - "crypto/sha/asm/sha512-mips.pl" - ], - "crypto/sha/sha512-parisc.s" => [ - "crypto/sha/asm/sha512-parisc.pl" - ], - "crypto/sha/sha512-ppc.s" => [ - "crypto/sha/asm/sha512-ppc.pl" - ], - "crypto/sha/sha512-riscv64-zvkb-zvknhb.S" => [ - "crypto/sha/asm/sha512-riscv64-zvkb-zvknhb.pl" - ], - "crypto/sha/sha512-s390x.S" => [ - "crypto/sha/asm/sha512-s390x.pl" - ], - "crypto/sha/sha512-sparcv9.S" => [ - "crypto/sha/asm/sha512-sparcv9.pl" - ], - "crypto/sha/sha512-x86_64.s" => [ - "crypto/sha/asm/sha512-x86_64.pl" - ], - "crypto/sha/sha512p8-ppc.s" => [ - "crypto/sha/asm/sha512p8-ppc.pl" - ], - "crypto/uplink-ia64.s" => [ - "ms/uplink-ia64.pl" - ], - "crypto/uplink-x86.S" => [ - "ms/uplink-x86.pl" - ], - "crypto/uplink-x86_64.s" => [ - "ms/uplink-x86_64.pl" - ], - "crypto/whrlpool/wp-mmx.S" => [ - "crypto/whrlpool/asm/wp-mmx.pl" - ], - "crypto/whrlpool/wp-x86_64.s" => [ - "crypto/whrlpool/asm/wp-x86_64.pl" - ], - "crypto/x86_64cpuid.s" => [ - "crypto/x86_64cpuid.pl" - ], - "crypto/x86cpuid.S" => [ - "crypto/x86cpuid.pl" - ], - "doc/html/man1/CA.pl.html" => [ - "doc/man1/CA.pl.pod" - ], - "doc/html/man1/openssl-asn1parse.html" => [ - "doc/man1/openssl-asn1parse.pod" - ], - "doc/html/man1/openssl-ca.html" => [ - "doc/man1/openssl-ca.pod" - ], - "doc/html/man1/openssl-ciphers.html" => [ - "doc/man1/openssl-ciphers.pod" - ], - "doc/html/man1/openssl-cmds.html" => [ - "doc/man1/openssl-cmds.pod" - ], - "doc/html/man1/openssl-cmp.html" => [ - "doc/man1/openssl-cmp.pod" - ], - "doc/html/man1/openssl-cms.html" => [ - "doc/man1/openssl-cms.pod" - ], - "doc/html/man1/openssl-crl.html" => [ - "doc/man1/openssl-crl.pod" - ], - "doc/html/man1/openssl-crl2pkcs7.html" => [ - "doc/man1/openssl-crl2pkcs7.pod" - ], - "doc/html/man1/openssl-dgst.html" => [ - "doc/man1/openssl-dgst.pod" - ], - "doc/html/man1/openssl-dhparam.html" => [ - "doc/man1/openssl-dhparam.pod" - ], - "doc/html/man1/openssl-dsa.html" => [ - "doc/man1/openssl-dsa.pod" - ], - "doc/html/man1/openssl-dsaparam.html" => [ - "doc/man1/openssl-dsaparam.pod" - ], - "doc/html/man1/openssl-ec.html" => [ - "doc/man1/openssl-ec.pod" - ], - "doc/html/man1/openssl-ecparam.html" => [ - "doc/man1/openssl-ecparam.pod" - ], - "doc/html/man1/openssl-enc.html" => [ - "doc/man1/openssl-enc.pod" - ], - "doc/html/man1/openssl-engine.html" => [ - "doc/man1/openssl-engine.pod" - ], - "doc/html/man1/openssl-errstr.html" => [ - "doc/man1/openssl-errstr.pod" - ], - "doc/html/man1/openssl-fipsinstall.html" => [ - "doc/man1/openssl-fipsinstall.pod" - ], - "doc/html/man1/openssl-format-options.html" => [ - "doc/man1/openssl-format-options.pod" - ], - "doc/html/man1/openssl-gendsa.html" => [ - "doc/man1/openssl-gendsa.pod" - ], - "doc/html/man1/openssl-genpkey.html" => [ - "doc/man1/openssl-genpkey.pod" - ], - "doc/html/man1/openssl-genrsa.html" => [ - "doc/man1/openssl-genrsa.pod" - ], - "doc/html/man1/openssl-info.html" => [ - "doc/man1/openssl-info.pod" - ], - "doc/html/man1/openssl-kdf.html" => [ - "doc/man1/openssl-kdf.pod" - ], - "doc/html/man1/openssl-list.html" => [ - "doc/man1/openssl-list.pod" - ], - "doc/html/man1/openssl-mac.html" => [ - "doc/man1/openssl-mac.pod" - ], - "doc/html/man1/openssl-namedisplay-options.html" => [ - "doc/man1/openssl-namedisplay-options.pod" - ], - "doc/html/man1/openssl-nseq.html" => [ - "doc/man1/openssl-nseq.pod" - ], - "doc/html/man1/openssl-ocsp.html" => [ - "doc/man1/openssl-ocsp.pod" - ], - "doc/html/man1/openssl-passphrase-options.html" => [ - "doc/man1/openssl-passphrase-options.pod" - ], - "doc/html/man1/openssl-passwd.html" => [ - "doc/man1/openssl-passwd.pod" - ], - "doc/html/man1/openssl-pkcs12.html" => [ - "doc/man1/openssl-pkcs12.pod" - ], - "doc/html/man1/openssl-pkcs7.html" => [ - "doc/man1/openssl-pkcs7.pod" - ], - "doc/html/man1/openssl-pkcs8.html" => [ - "doc/man1/openssl-pkcs8.pod" - ], - "doc/html/man1/openssl-pkey.html" => [ - "doc/man1/openssl-pkey.pod" - ], - "doc/html/man1/openssl-pkeyparam.html" => [ - "doc/man1/openssl-pkeyparam.pod" - ], - "doc/html/man1/openssl-pkeyutl.html" => [ - "doc/man1/openssl-pkeyutl.pod" - ], - "doc/html/man1/openssl-prime.html" => [ - "doc/man1/openssl-prime.pod" - ], - "doc/html/man1/openssl-rand.html" => [ - "doc/man1/openssl-rand.pod" - ], - "doc/html/man1/openssl-rehash.html" => [ - "doc/man1/openssl-rehash.pod" - ], - "doc/html/man1/openssl-req.html" => [ - "doc/man1/openssl-req.pod" - ], - "doc/html/man1/openssl-rsa.html" => [ - "doc/man1/openssl-rsa.pod" - ], - "doc/html/man1/openssl-rsautl.html" => [ - "doc/man1/openssl-rsautl.pod" - ], - "doc/html/man1/openssl-s_client.html" => [ - "doc/man1/openssl-s_client.pod" - ], - "doc/html/man1/openssl-s_server.html" => [ - "doc/man1/openssl-s_server.pod" - ], - "doc/html/man1/openssl-s_time.html" => [ - "doc/man1/openssl-s_time.pod" - ], - "doc/html/man1/openssl-sess_id.html" => [ - "doc/man1/openssl-sess_id.pod" - ], - "doc/html/man1/openssl-skeyutl.html" => [ - "doc/man1/openssl-skeyutl.pod" - ], - "doc/html/man1/openssl-smime.html" => [ - "doc/man1/openssl-smime.pod" - ], - "doc/html/man1/openssl-speed.html" => [ - "doc/man1/openssl-speed.pod" - ], - "doc/html/man1/openssl-spkac.html" => [ - "doc/man1/openssl-spkac.pod" - ], - "doc/html/man1/openssl-srp.html" => [ - "doc/man1/openssl-srp.pod" - ], - "doc/html/man1/openssl-storeutl.html" => [ - "doc/man1/openssl-storeutl.pod" - ], - "doc/html/man1/openssl-ts.html" => [ - "doc/man1/openssl-ts.pod" - ], - "doc/html/man1/openssl-verification-options.html" => [ - "doc/man1/openssl-verification-options.pod" - ], - "doc/html/man1/openssl-verify.html" => [ - "doc/man1/openssl-verify.pod" - ], - "doc/html/man1/openssl-version.html" => [ - "doc/man1/openssl-version.pod" - ], - "doc/html/man1/openssl-x509.html" => [ - "doc/man1/openssl-x509.pod" - ], - "doc/html/man1/openssl.html" => [ - "doc/man1/openssl.pod" - ], - "doc/html/man1/tsget.html" => [ - "doc/man1/tsget.pod" - ], - "doc/html/man3/ADMISSIONS.html" => [ - "doc/man3/ADMISSIONS.pod" - ], - "doc/html/man3/ASN1_EXTERN_FUNCS.html" => [ - "doc/man3/ASN1_EXTERN_FUNCS.pod" - ], - "doc/html/man3/ASN1_INTEGER_get_int64.html" => [ - "doc/man3/ASN1_INTEGER_get_int64.pod" - ], - "doc/html/man3/ASN1_INTEGER_new.html" => [ - "doc/man3/ASN1_INTEGER_new.pod" - ], - "doc/html/man3/ASN1_ITEM_lookup.html" => [ - "doc/man3/ASN1_ITEM_lookup.pod" - ], - "doc/html/man3/ASN1_OBJECT_new.html" => [ - "doc/man3/ASN1_OBJECT_new.pod" - ], - "doc/html/man3/ASN1_STRING_TABLE_add.html" => [ - "doc/man3/ASN1_STRING_TABLE_add.pod" - ], - "doc/html/man3/ASN1_STRING_length.html" => [ - "doc/man3/ASN1_STRING_length.pod" - ], - "doc/html/man3/ASN1_STRING_new.html" => [ - "doc/man3/ASN1_STRING_new.pod" - ], - "doc/html/man3/ASN1_STRING_print_ex.html" => [ - "doc/man3/ASN1_STRING_print_ex.pod" - ], - "doc/html/man3/ASN1_TIME_set.html" => [ - "doc/man3/ASN1_TIME_set.pod" - ], - "doc/html/man3/ASN1_TYPE_get.html" => [ - "doc/man3/ASN1_TYPE_get.pod" - ], - "doc/html/man3/ASN1_aux_cb.html" => [ - "doc/man3/ASN1_aux_cb.pod" - ], - "doc/html/man3/ASN1_generate_nconf.html" => [ - "doc/man3/ASN1_generate_nconf.pod" - ], - "doc/html/man3/ASN1_item_d2i_bio.html" => [ - "doc/man3/ASN1_item_d2i_bio.pod" - ], - "doc/html/man3/ASN1_item_new.html" => [ - "doc/man3/ASN1_item_new.pod" - ], - "doc/html/man3/ASN1_item_sign.html" => [ - "doc/man3/ASN1_item_sign.pod" - ], - "doc/html/man3/ASYNC_WAIT_CTX_new.html" => [ - "doc/man3/ASYNC_WAIT_CTX_new.pod" - ], - "doc/html/man3/ASYNC_start_job.html" => [ - "doc/man3/ASYNC_start_job.pod" - ], - "doc/html/man3/BF_encrypt.html" => [ - "doc/man3/BF_encrypt.pod" - ], - "doc/html/man3/BIO_ADDR.html" => [ - "doc/man3/BIO_ADDR.pod" - ], - "doc/html/man3/BIO_ADDRINFO.html" => [ - "doc/man3/BIO_ADDRINFO.pod" - ], - "doc/html/man3/BIO_connect.html" => [ - "doc/man3/BIO_connect.pod" - ], - "doc/html/man3/BIO_ctrl.html" => [ - "doc/man3/BIO_ctrl.pod" - ], - "doc/html/man3/BIO_f_base64.html" => [ - "doc/man3/BIO_f_base64.pod" - ], - "doc/html/man3/BIO_f_buffer.html" => [ - "doc/man3/BIO_f_buffer.pod" - ], - "doc/html/man3/BIO_f_cipher.html" => [ - "doc/man3/BIO_f_cipher.pod" - ], - "doc/html/man3/BIO_f_md.html" => [ - "doc/man3/BIO_f_md.pod" - ], - "doc/html/man3/BIO_f_null.html" => [ - "doc/man3/BIO_f_null.pod" - ], - "doc/html/man3/BIO_f_prefix.html" => [ - "doc/man3/BIO_f_prefix.pod" - ], - "doc/html/man3/BIO_f_readbuffer.html" => [ - "doc/man3/BIO_f_readbuffer.pod" - ], - "doc/html/man3/BIO_f_ssl.html" => [ - "doc/man3/BIO_f_ssl.pod" - ], - "doc/html/man3/BIO_find_type.html" => [ - "doc/man3/BIO_find_type.pod" - ], - "doc/html/man3/BIO_get_data.html" => [ - "doc/man3/BIO_get_data.pod" - ], - "doc/html/man3/BIO_get_ex_new_index.html" => [ - "doc/man3/BIO_get_ex_new_index.pod" - ], - "doc/html/man3/BIO_get_rpoll_descriptor.html" => [ - "doc/man3/BIO_get_rpoll_descriptor.pod" - ], - "doc/html/man3/BIO_meth_new.html" => [ - "doc/man3/BIO_meth_new.pod" - ], - "doc/html/man3/BIO_new.html" => [ - "doc/man3/BIO_new.pod" - ], - "doc/html/man3/BIO_new_CMS.html" => [ - "doc/man3/BIO_new_CMS.pod" - ], - "doc/html/man3/BIO_parse_hostserv.html" => [ - "doc/man3/BIO_parse_hostserv.pod" - ], - "doc/html/man3/BIO_printf.html" => [ - "doc/man3/BIO_printf.pod" - ], - "doc/html/man3/BIO_push.html" => [ - "doc/man3/BIO_push.pod" - ], - "doc/html/man3/BIO_read.html" => [ - "doc/man3/BIO_read.pod" - ], - "doc/html/man3/BIO_s_accept.html" => [ - "doc/man3/BIO_s_accept.pod" - ], - "doc/html/man3/BIO_s_bio.html" => [ - "doc/man3/BIO_s_bio.pod" - ], - "doc/html/man3/BIO_s_connect.html" => [ - "doc/man3/BIO_s_connect.pod" - ], - "doc/html/man3/BIO_s_core.html" => [ - "doc/man3/BIO_s_core.pod" - ], - "doc/html/man3/BIO_s_datagram.html" => [ - "doc/man3/BIO_s_datagram.pod" - ], - "doc/html/man3/BIO_s_dgram_pair.html" => [ - "doc/man3/BIO_s_dgram_pair.pod" - ], - "doc/html/man3/BIO_s_fd.html" => [ - "doc/man3/BIO_s_fd.pod" - ], - "doc/html/man3/BIO_s_file.html" => [ - "doc/man3/BIO_s_file.pod" - ], - "doc/html/man3/BIO_s_mem.html" => [ - "doc/man3/BIO_s_mem.pod" - ], - "doc/html/man3/BIO_s_null.html" => [ - "doc/man3/BIO_s_null.pod" - ], - "doc/html/man3/BIO_s_socket.html" => [ - "doc/man3/BIO_s_socket.pod" - ], - "doc/html/man3/BIO_sendmmsg.html" => [ - "doc/man3/BIO_sendmmsg.pod" - ], - "doc/html/man3/BIO_set_callback.html" => [ - "doc/man3/BIO_set_callback.pod" - ], - "doc/html/man3/BIO_should_retry.html" => [ - "doc/man3/BIO_should_retry.pod" - ], - "doc/html/man3/BIO_socket_wait.html" => [ - "doc/man3/BIO_socket_wait.pod" - ], - "doc/html/man3/BN_BLINDING_new.html" => [ - "doc/man3/BN_BLINDING_new.pod" - ], - "doc/html/man3/BN_CTX_new.html" => [ - "doc/man3/BN_CTX_new.pod" - ], - "doc/html/man3/BN_CTX_start.html" => [ - "doc/man3/BN_CTX_start.pod" - ], - "doc/html/man3/BN_add.html" => [ - "doc/man3/BN_add.pod" - ], - "doc/html/man3/BN_add_word.html" => [ - "doc/man3/BN_add_word.pod" - ], - "doc/html/man3/BN_bn2bin.html" => [ - "doc/man3/BN_bn2bin.pod" - ], - "doc/html/man3/BN_cmp.html" => [ - "doc/man3/BN_cmp.pod" - ], - "doc/html/man3/BN_copy.html" => [ - "doc/man3/BN_copy.pod" - ], - "doc/html/man3/BN_generate_prime.html" => [ - "doc/man3/BN_generate_prime.pod" - ], - "doc/html/man3/BN_mod_exp_mont.html" => [ - "doc/man3/BN_mod_exp_mont.pod" - ], - "doc/html/man3/BN_mod_inverse.html" => [ - "doc/man3/BN_mod_inverse.pod" - ], - "doc/html/man3/BN_mod_mul_montgomery.html" => [ - "doc/man3/BN_mod_mul_montgomery.pod" - ], - "doc/html/man3/BN_mod_mul_reciprocal.html" => [ - "doc/man3/BN_mod_mul_reciprocal.pod" - ], - "doc/html/man3/BN_new.html" => [ - "doc/man3/BN_new.pod" - ], - "doc/html/man3/BN_num_bytes.html" => [ - "doc/man3/BN_num_bytes.pod" - ], - "doc/html/man3/BN_rand.html" => [ - "doc/man3/BN_rand.pod" - ], - "doc/html/man3/BN_security_bits.html" => [ - "doc/man3/BN_security_bits.pod" - ], - "doc/html/man3/BN_set_bit.html" => [ - "doc/man3/BN_set_bit.pod" - ], - "doc/html/man3/BN_swap.html" => [ - "doc/man3/BN_swap.pod" - ], - "doc/html/man3/BN_zero.html" => [ - "doc/man3/BN_zero.pod" - ], - "doc/html/man3/BUF_MEM_new.html" => [ - "doc/man3/BUF_MEM_new.pod" - ], - "doc/html/man3/CMAC_CTX.html" => [ - "doc/man3/CMAC_CTX.pod" - ], - "doc/html/man3/CMS_EncryptedData_decrypt.html" => [ - "doc/man3/CMS_EncryptedData_decrypt.pod" - ], - "doc/html/man3/CMS_EncryptedData_encrypt.html" => [ - "doc/man3/CMS_EncryptedData_encrypt.pod" - ], - "doc/html/man3/CMS_EnvelopedData_create.html" => [ - "doc/man3/CMS_EnvelopedData_create.pod" - ], - "doc/html/man3/CMS_add0_cert.html" => [ - "doc/man3/CMS_add0_cert.pod" - ], - "doc/html/man3/CMS_add1_recipient_cert.html" => [ - "doc/man3/CMS_add1_recipient_cert.pod" - ], - "doc/html/man3/CMS_add1_signer.html" => [ - "doc/man3/CMS_add1_signer.pod" - ], - "doc/html/man3/CMS_compress.html" => [ - "doc/man3/CMS_compress.pod" - ], - "doc/html/man3/CMS_data_create.html" => [ - "doc/man3/CMS_data_create.pod" - ], - "doc/html/man3/CMS_decrypt.html" => [ - "doc/man3/CMS_decrypt.pod" - ], - "doc/html/man3/CMS_digest_create.html" => [ - "doc/man3/CMS_digest_create.pod" - ], - "doc/html/man3/CMS_encrypt.html" => [ - "doc/man3/CMS_encrypt.pod" - ], - "doc/html/man3/CMS_final.html" => [ - "doc/man3/CMS_final.pod" - ], - "doc/html/man3/CMS_get0_RecipientInfos.html" => [ - "doc/man3/CMS_get0_RecipientInfos.pod" - ], - "doc/html/man3/CMS_get0_SignerInfos.html" => [ - "doc/man3/CMS_get0_SignerInfos.pod" - ], - "doc/html/man3/CMS_get0_type.html" => [ - "doc/man3/CMS_get0_type.pod" - ], - "doc/html/man3/CMS_get1_ReceiptRequest.html" => [ - "doc/man3/CMS_get1_ReceiptRequest.pod" - ], - "doc/html/man3/CMS_sign.html" => [ - "doc/man3/CMS_sign.pod" - ], - "doc/html/man3/CMS_sign_receipt.html" => [ - "doc/man3/CMS_sign_receipt.pod" - ], - "doc/html/man3/CMS_signed_get_attr.html" => [ - "doc/man3/CMS_signed_get_attr.pod" - ], - "doc/html/man3/CMS_uncompress.html" => [ - "doc/man3/CMS_uncompress.pod" - ], - "doc/html/man3/CMS_verify.html" => [ - "doc/man3/CMS_verify.pod" - ], - "doc/html/man3/CMS_verify_receipt.html" => [ - "doc/man3/CMS_verify_receipt.pod" - ], - "doc/html/man3/COMP_CTX_new.html" => [ - "doc/man3/COMP_CTX_new.pod" - ], - "doc/html/man3/CONF_modules_free.html" => [ - "doc/man3/CONF_modules_free.pod" - ], - "doc/html/man3/CONF_modules_load_file.html" => [ - "doc/man3/CONF_modules_load_file.pod" - ], - "doc/html/man3/CRYPTO_THREAD_run_once.html" => [ - "doc/man3/CRYPTO_THREAD_run_once.pod" - ], - "doc/html/man3/CRYPTO_get_ex_new_index.html" => [ - "doc/man3/CRYPTO_get_ex_new_index.pod" - ], - "doc/html/man3/CRYPTO_memcmp.html" => [ - "doc/man3/CRYPTO_memcmp.pod" - ], - "doc/html/man3/CTLOG_STORE_get0_log_by_id.html" => [ - "doc/man3/CTLOG_STORE_get0_log_by_id.pod" - ], - "doc/html/man3/CTLOG_STORE_new.html" => [ - "doc/man3/CTLOG_STORE_new.pod" - ], - "doc/html/man3/CTLOG_new.html" => [ - "doc/man3/CTLOG_new.pod" - ], - "doc/html/man3/CT_POLICY_EVAL_CTX_new.html" => [ - "doc/man3/CT_POLICY_EVAL_CTX_new.pod" - ], - "doc/html/man3/DEFINE_STACK_OF.html" => [ - "doc/man3/DEFINE_STACK_OF.pod" - ], - "doc/html/man3/DES_random_key.html" => [ - "doc/man3/DES_random_key.pod" - ], - "doc/html/man3/DH_generate_key.html" => [ - "doc/man3/DH_generate_key.pod" - ], - "doc/html/man3/DH_generate_parameters.html" => [ - "doc/man3/DH_generate_parameters.pod" - ], - "doc/html/man3/DH_get0_pqg.html" => [ - "doc/man3/DH_get0_pqg.pod" - ], - "doc/html/man3/DH_get_1024_160.html" => [ - "doc/man3/DH_get_1024_160.pod" - ], - "doc/html/man3/DH_meth_new.html" => [ - "doc/man3/DH_meth_new.pod" - ], - "doc/html/man3/DH_new.html" => [ - "doc/man3/DH_new.pod" - ], - "doc/html/man3/DH_new_by_nid.html" => [ - "doc/man3/DH_new_by_nid.pod" - ], - "doc/html/man3/DH_set_method.html" => [ - "doc/man3/DH_set_method.pod" - ], - "doc/html/man3/DH_size.html" => [ - "doc/man3/DH_size.pod" - ], - "doc/html/man3/DSA_SIG_new.html" => [ - "doc/man3/DSA_SIG_new.pod" - ], - "doc/html/man3/DSA_do_sign.html" => [ - "doc/man3/DSA_do_sign.pod" - ], - "doc/html/man3/DSA_dup_DH.html" => [ - "doc/man3/DSA_dup_DH.pod" - ], - "doc/html/man3/DSA_generate_key.html" => [ - "doc/man3/DSA_generate_key.pod" - ], - "doc/html/man3/DSA_generate_parameters.html" => [ - "doc/man3/DSA_generate_parameters.pod" - ], - "doc/html/man3/DSA_get0_pqg.html" => [ - "doc/man3/DSA_get0_pqg.pod" - ], - "doc/html/man3/DSA_meth_new.html" => [ - "doc/man3/DSA_meth_new.pod" - ], - "doc/html/man3/DSA_new.html" => [ - "doc/man3/DSA_new.pod" - ], - "doc/html/man3/DSA_set_method.html" => [ - "doc/man3/DSA_set_method.pod" - ], - "doc/html/man3/DSA_sign.html" => [ - "doc/man3/DSA_sign.pod" - ], - "doc/html/man3/DSA_size.html" => [ - "doc/man3/DSA_size.pod" - ], - "doc/html/man3/DTLS_get_data_mtu.html" => [ - "doc/man3/DTLS_get_data_mtu.pod" - ], - "doc/html/man3/DTLS_set_timer_cb.html" => [ - "doc/man3/DTLS_set_timer_cb.pod" - ], - "doc/html/man3/DTLSv1_get_timeout.html" => [ - "doc/man3/DTLSv1_get_timeout.pod" - ], - "doc/html/man3/DTLSv1_handle_timeout.html" => [ - "doc/man3/DTLSv1_handle_timeout.pod" - ], - "doc/html/man3/DTLSv1_listen.html" => [ - "doc/man3/DTLSv1_listen.pod" - ], - "doc/html/man3/ECDSA_SIG_new.html" => [ - "doc/man3/ECDSA_SIG_new.pod" - ], - "doc/html/man3/ECDSA_sign.html" => [ - "doc/man3/ECDSA_sign.pod" - ], - "doc/html/man3/ECPKParameters_print.html" => [ - "doc/man3/ECPKParameters_print.pod" - ], - "doc/html/man3/EC_GFp_simple_method.html" => [ - "doc/man3/EC_GFp_simple_method.pod" - ], - "doc/html/man3/EC_GROUP_copy.html" => [ - "doc/man3/EC_GROUP_copy.pod" - ], - "doc/html/man3/EC_GROUP_new.html" => [ - "doc/man3/EC_GROUP_new.pod" - ], - "doc/html/man3/EC_KEY_get_enc_flags.html" => [ - "doc/man3/EC_KEY_get_enc_flags.pod" - ], - "doc/html/man3/EC_KEY_new.html" => [ - "doc/man3/EC_KEY_new.pod" - ], - "doc/html/man3/EC_POINT_add.html" => [ - "doc/man3/EC_POINT_add.pod" - ], - "doc/html/man3/EC_POINT_new.html" => [ - "doc/man3/EC_POINT_new.pod" - ], - "doc/html/man3/ENGINE_add.html" => [ - "doc/man3/ENGINE_add.pod" - ], - "doc/html/man3/ERR_GET_LIB.html" => [ - "doc/man3/ERR_GET_LIB.pod" - ], - "doc/html/man3/ERR_clear_error.html" => [ - "doc/man3/ERR_clear_error.pod" - ], - "doc/html/man3/ERR_error_string.html" => [ - "doc/man3/ERR_error_string.pod" - ], - "doc/html/man3/ERR_get_error.html" => [ - "doc/man3/ERR_get_error.pod" - ], - "doc/html/man3/ERR_load_crypto_strings.html" => [ - "doc/man3/ERR_load_crypto_strings.pod" - ], - "doc/html/man3/ERR_load_strings.html" => [ - "doc/man3/ERR_load_strings.pod" - ], - "doc/html/man3/ERR_new.html" => [ - "doc/man3/ERR_new.pod" - ], - "doc/html/man3/ERR_print_errors.html" => [ - "doc/man3/ERR_print_errors.pod" - ], - "doc/html/man3/ERR_put_error.html" => [ - "doc/man3/ERR_put_error.pod" - ], - "doc/html/man3/ERR_remove_state.html" => [ - "doc/man3/ERR_remove_state.pod" - ], - "doc/html/man3/ERR_set_mark.html" => [ - "doc/man3/ERR_set_mark.pod" - ], - "doc/html/man3/EVP_ASYM_CIPHER_free.html" => [ - "doc/man3/EVP_ASYM_CIPHER_free.pod" - ], - "doc/html/man3/EVP_BytesToKey.html" => [ - "doc/man3/EVP_BytesToKey.pod" - ], - "doc/html/man3/EVP_CIPHER_CTX_get_cipher_data.html" => [ - "doc/man3/EVP_CIPHER_CTX_get_cipher_data.pod" - ], - "doc/html/man3/EVP_CIPHER_CTX_get_original_iv.html" => [ - "doc/man3/EVP_CIPHER_CTX_get_original_iv.pod" - ], - "doc/html/man3/EVP_CIPHER_meth_new.html" => [ - "doc/man3/EVP_CIPHER_meth_new.pod" - ], - "doc/html/man3/EVP_DigestInit.html" => [ - "doc/man3/EVP_DigestInit.pod" - ], - "doc/html/man3/EVP_DigestSignInit.html" => [ - "doc/man3/EVP_DigestSignInit.pod" - ], - "doc/html/man3/EVP_DigestVerifyInit.html" => [ - "doc/man3/EVP_DigestVerifyInit.pod" - ], - "doc/html/man3/EVP_EncodeInit.html" => [ - "doc/man3/EVP_EncodeInit.pod" - ], - "doc/html/man3/EVP_EncryptInit.html" => [ - "doc/man3/EVP_EncryptInit.pod" - ], - "doc/html/man3/EVP_KDF.html" => [ - "doc/man3/EVP_KDF.pod" - ], - "doc/html/man3/EVP_KEM_free.html" => [ - "doc/man3/EVP_KEM_free.pod" - ], - "doc/html/man3/EVP_KEYEXCH_free.html" => [ - "doc/man3/EVP_KEYEXCH_free.pod" - ], - "doc/html/man3/EVP_KEYMGMT.html" => [ - "doc/man3/EVP_KEYMGMT.pod" - ], - "doc/html/man3/EVP_MAC.html" => [ - "doc/man3/EVP_MAC.pod" - ], - "doc/html/man3/EVP_MD_meth_new.html" => [ - "doc/man3/EVP_MD_meth_new.pod" - ], - "doc/html/man3/EVP_OpenInit.html" => [ - "doc/man3/EVP_OpenInit.pod" - ], - "doc/html/man3/EVP_PBE_CipherInit.html" => [ - "doc/man3/EVP_PBE_CipherInit.pod" - ], - "doc/html/man3/EVP_PKEY2PKCS8.html" => [ - "doc/man3/EVP_PKEY2PKCS8.pod" - ], - "doc/html/man3/EVP_PKEY_ASN1_METHOD.html" => [ - "doc/man3/EVP_PKEY_ASN1_METHOD.pod" - ], - "doc/html/man3/EVP_PKEY_CTX_ctrl.html" => [ - "doc/man3/EVP_PKEY_CTX_ctrl.pod" - ], - "doc/html/man3/EVP_PKEY_CTX_get0_libctx.html" => [ - "doc/man3/EVP_PKEY_CTX_get0_libctx.pod" - ], - "doc/html/man3/EVP_PKEY_CTX_get0_pkey.html" => [ - "doc/man3/EVP_PKEY_CTX_get0_pkey.pod" - ], - "doc/html/man3/EVP_PKEY_CTX_get_algor.html" => [ - "doc/man3/EVP_PKEY_CTX_get_algor.pod" - ], - "doc/html/man3/EVP_PKEY_CTX_new.html" => [ - "doc/man3/EVP_PKEY_CTX_new.pod" - ], - "doc/html/man3/EVP_PKEY_CTX_set1_pbe_pass.html" => [ - "doc/man3/EVP_PKEY_CTX_set1_pbe_pass.pod" - ], - "doc/html/man3/EVP_PKEY_CTX_set_hkdf_md.html" => [ - "doc/man3/EVP_PKEY_CTX_set_hkdf_md.pod" - ], - "doc/html/man3/EVP_PKEY_CTX_set_params.html" => [ - "doc/man3/EVP_PKEY_CTX_set_params.pod" - ], - "doc/html/man3/EVP_PKEY_CTX_set_rsa_pss_keygen_md.html" => [ - "doc/man3/EVP_PKEY_CTX_set_rsa_pss_keygen_md.pod" - ], - "doc/html/man3/EVP_PKEY_CTX_set_scrypt_N.html" => [ - "doc/man3/EVP_PKEY_CTX_set_scrypt_N.pod" - ], - "doc/html/man3/EVP_PKEY_CTX_set_tls1_prf_md.html" => [ - "doc/man3/EVP_PKEY_CTX_set_tls1_prf_md.pod" - ], - "doc/html/man3/EVP_PKEY_asn1_get_count.html" => [ - "doc/man3/EVP_PKEY_asn1_get_count.pod" - ], - "doc/html/man3/EVP_PKEY_check.html" => [ - "doc/man3/EVP_PKEY_check.pod" - ], - "doc/html/man3/EVP_PKEY_copy_parameters.html" => [ - "doc/man3/EVP_PKEY_copy_parameters.pod" - ], - "doc/html/man3/EVP_PKEY_decapsulate.html" => [ - "doc/man3/EVP_PKEY_decapsulate.pod" - ], - "doc/html/man3/EVP_PKEY_decrypt.html" => [ - "doc/man3/EVP_PKEY_decrypt.pod" - ], - "doc/html/man3/EVP_PKEY_derive.html" => [ - "doc/man3/EVP_PKEY_derive.pod" - ], - "doc/html/man3/EVP_PKEY_digestsign_supports_digest.html" => [ - "doc/man3/EVP_PKEY_digestsign_supports_digest.pod" - ], - "doc/html/man3/EVP_PKEY_encapsulate.html" => [ - "doc/man3/EVP_PKEY_encapsulate.pod" - ], - "doc/html/man3/EVP_PKEY_encrypt.html" => [ - "doc/man3/EVP_PKEY_encrypt.pod" - ], - "doc/html/man3/EVP_PKEY_fromdata.html" => [ - "doc/man3/EVP_PKEY_fromdata.pod" - ], - "doc/html/man3/EVP_PKEY_get_attr.html" => [ - "doc/man3/EVP_PKEY_get_attr.pod" - ], - "doc/html/man3/EVP_PKEY_get_default_digest_nid.html" => [ - "doc/man3/EVP_PKEY_get_default_digest_nid.pod" - ], - "doc/html/man3/EVP_PKEY_get_field_type.html" => [ - "doc/man3/EVP_PKEY_get_field_type.pod" - ], - "doc/html/man3/EVP_PKEY_get_group_name.html" => [ - "doc/man3/EVP_PKEY_get_group_name.pod" - ], - "doc/html/man3/EVP_PKEY_get_size.html" => [ - "doc/man3/EVP_PKEY_get_size.pod" - ], - "doc/html/man3/EVP_PKEY_gettable_params.html" => [ - "doc/man3/EVP_PKEY_gettable_params.pod" - ], - "doc/html/man3/EVP_PKEY_is_a.html" => [ - "doc/man3/EVP_PKEY_is_a.pod" - ], - "doc/html/man3/EVP_PKEY_keygen.html" => [ - "doc/man3/EVP_PKEY_keygen.pod" - ], - "doc/html/man3/EVP_PKEY_meth_get_count.html" => [ - "doc/man3/EVP_PKEY_meth_get_count.pod" - ], - "doc/html/man3/EVP_PKEY_meth_new.html" => [ - "doc/man3/EVP_PKEY_meth_new.pod" - ], - "doc/html/man3/EVP_PKEY_new.html" => [ - "doc/man3/EVP_PKEY_new.pod" - ], - "doc/html/man3/EVP_PKEY_print_private.html" => [ - "doc/man3/EVP_PKEY_print_private.pod" - ], - "doc/html/man3/EVP_PKEY_set1_RSA.html" => [ - "doc/man3/EVP_PKEY_set1_RSA.pod" - ], - "doc/html/man3/EVP_PKEY_set1_encoded_public_key.html" => [ - "doc/man3/EVP_PKEY_set1_encoded_public_key.pod" - ], - "doc/html/man3/EVP_PKEY_set_type.html" => [ - "doc/man3/EVP_PKEY_set_type.pod" - ], - "doc/html/man3/EVP_PKEY_settable_params.html" => [ - "doc/man3/EVP_PKEY_settable_params.pod" - ], - "doc/html/man3/EVP_PKEY_sign.html" => [ - "doc/man3/EVP_PKEY_sign.pod" - ], - "doc/html/man3/EVP_PKEY_todata.html" => [ - "doc/man3/EVP_PKEY_todata.pod" - ], - "doc/html/man3/EVP_PKEY_verify.html" => [ - "doc/man3/EVP_PKEY_verify.pod" - ], - "doc/html/man3/EVP_PKEY_verify_recover.html" => [ - "doc/man3/EVP_PKEY_verify_recover.pod" - ], - "doc/html/man3/EVP_RAND.html" => [ - "doc/man3/EVP_RAND.pod" - ], - "doc/html/man3/EVP_SIGNATURE.html" => [ - "doc/man3/EVP_SIGNATURE.pod" - ], - "doc/html/man3/EVP_SKEY.html" => [ - "doc/man3/EVP_SKEY.pod" - ], - "doc/html/man3/EVP_SKEYMGMT.html" => [ - "doc/man3/EVP_SKEYMGMT.pod" - ], - "doc/html/man3/EVP_SealInit.html" => [ - "doc/man3/EVP_SealInit.pod" - ], - "doc/html/man3/EVP_SignInit.html" => [ - "doc/man3/EVP_SignInit.pod" - ], - "doc/html/man3/EVP_VerifyInit.html" => [ - "doc/man3/EVP_VerifyInit.pod" - ], - "doc/html/man3/EVP_aes_128_gcm.html" => [ - "doc/man3/EVP_aes_128_gcm.pod" - ], - "doc/html/man3/EVP_aria_128_gcm.html" => [ - "doc/man3/EVP_aria_128_gcm.pod" - ], - "doc/html/man3/EVP_bf_cbc.html" => [ - "doc/man3/EVP_bf_cbc.pod" - ], - "doc/html/man3/EVP_blake2b512.html" => [ - "doc/man3/EVP_blake2b512.pod" - ], - "doc/html/man3/EVP_camellia_128_ecb.html" => [ - "doc/man3/EVP_camellia_128_ecb.pod" - ], - "doc/html/man3/EVP_cast5_cbc.html" => [ - "doc/man3/EVP_cast5_cbc.pod" - ], - "doc/html/man3/EVP_chacha20.html" => [ - "doc/man3/EVP_chacha20.pod" - ], - "doc/html/man3/EVP_des_cbc.html" => [ - "doc/man3/EVP_des_cbc.pod" - ], - "doc/html/man3/EVP_desx_cbc.html" => [ - "doc/man3/EVP_desx_cbc.pod" - ], - "doc/html/man3/EVP_idea_cbc.html" => [ - "doc/man3/EVP_idea_cbc.pod" - ], - "doc/html/man3/EVP_md2.html" => [ - "doc/man3/EVP_md2.pod" - ], - "doc/html/man3/EVP_md4.html" => [ - "doc/man3/EVP_md4.pod" - ], - "doc/html/man3/EVP_md5.html" => [ - "doc/man3/EVP_md5.pod" - ], - "doc/html/man3/EVP_mdc2.html" => [ - "doc/man3/EVP_mdc2.pod" - ], - "doc/html/man3/EVP_rc2_cbc.html" => [ - "doc/man3/EVP_rc2_cbc.pod" - ], - "doc/html/man3/EVP_rc4.html" => [ - "doc/man3/EVP_rc4.pod" - ], - "doc/html/man3/EVP_rc5_32_12_16_cbc.html" => [ - "doc/man3/EVP_rc5_32_12_16_cbc.pod" - ], - "doc/html/man3/EVP_ripemd160.html" => [ - "doc/man3/EVP_ripemd160.pod" - ], - "doc/html/man3/EVP_seed_cbc.html" => [ - "doc/man3/EVP_seed_cbc.pod" - ], - "doc/html/man3/EVP_set_default_properties.html" => [ - "doc/man3/EVP_set_default_properties.pod" - ], - "doc/html/man3/EVP_sha1.html" => [ - "doc/man3/EVP_sha1.pod" - ], - "doc/html/man3/EVP_sha224.html" => [ - "doc/man3/EVP_sha224.pod" - ], - "doc/html/man3/EVP_sha3_224.html" => [ - "doc/man3/EVP_sha3_224.pod" - ], - "doc/html/man3/EVP_sm3.html" => [ - "doc/man3/EVP_sm3.pod" - ], - "doc/html/man3/EVP_sm4_cbc.html" => [ - "doc/man3/EVP_sm4_cbc.pod" - ], - "doc/html/man3/EVP_whirlpool.html" => [ - "doc/man3/EVP_whirlpool.pod" - ], - "doc/html/man3/GENERAL_NAME.html" => [ - "doc/man3/GENERAL_NAME.pod" - ], - "doc/html/man3/HMAC.html" => [ - "doc/man3/HMAC.pod" - ], - "doc/html/man3/MD5.html" => [ - "doc/man3/MD5.pod" - ], - "doc/html/man3/MDC2_Init.html" => [ - "doc/man3/MDC2_Init.pod" - ], - "doc/html/man3/NCONF_new_ex.html" => [ - "doc/man3/NCONF_new_ex.pod" - ], - "doc/html/man3/OBJ_nid2obj.html" => [ - "doc/man3/OBJ_nid2obj.pod" - ], - "doc/html/man3/OCSP_REQUEST_new.html" => [ - "doc/man3/OCSP_REQUEST_new.pod" - ], - "doc/html/man3/OCSP_cert_to_id.html" => [ - "doc/man3/OCSP_cert_to_id.pod" - ], - "doc/html/man3/OCSP_request_add1_nonce.html" => [ - "doc/man3/OCSP_request_add1_nonce.pod" - ], - "doc/html/man3/OCSP_resp_find_status.html" => [ - "doc/man3/OCSP_resp_find_status.pod" - ], - "doc/html/man3/OCSP_response_status.html" => [ - "doc/man3/OCSP_response_status.pod" - ], - "doc/html/man3/OCSP_sendreq_new.html" => [ - "doc/man3/OCSP_sendreq_new.pod" - ], - "doc/html/man3/OPENSSL_Applink.html" => [ - "doc/man3/OPENSSL_Applink.pod" - ], - "doc/html/man3/OPENSSL_FILE.html" => [ - "doc/man3/OPENSSL_FILE.pod" - ], - "doc/html/man3/OPENSSL_LH_COMPFUNC.html" => [ - "doc/man3/OPENSSL_LH_COMPFUNC.pod" - ], - "doc/html/man3/OPENSSL_LH_stats.html" => [ - "doc/man3/OPENSSL_LH_stats.pod" - ], - "doc/html/man3/OPENSSL_config.html" => [ - "doc/man3/OPENSSL_config.pod" - ], - "doc/html/man3/OPENSSL_fork_prepare.html" => [ - "doc/man3/OPENSSL_fork_prepare.pod" - ], - "doc/html/man3/OPENSSL_gmtime.html" => [ - "doc/man3/OPENSSL_gmtime.pod" - ], - "doc/html/man3/OPENSSL_hexchar2int.html" => [ - "doc/man3/OPENSSL_hexchar2int.pod" - ], - "doc/html/man3/OPENSSL_ia32cap.html" => [ - "doc/man3/OPENSSL_ia32cap.pod" - ], - "doc/html/man3/OPENSSL_init_crypto.html" => [ - "doc/man3/OPENSSL_init_crypto.pod" - ], - "doc/html/man3/OPENSSL_init_ssl.html" => [ - "doc/man3/OPENSSL_init_ssl.pod" - ], - "doc/html/man3/OPENSSL_instrument_bus.html" => [ - "doc/man3/OPENSSL_instrument_bus.pod" - ], - "doc/html/man3/OPENSSL_load_builtin_modules.html" => [ - "doc/man3/OPENSSL_load_builtin_modules.pod" - ], - "doc/html/man3/OPENSSL_load_u16_le.html" => [ - "doc/man3/OPENSSL_load_u16_le.pod" - ], - "doc/html/man3/OPENSSL_malloc.html" => [ - "doc/man3/OPENSSL_malloc.pod" - ], - "doc/html/man3/OPENSSL_riscvcap.html" => [ - "doc/man3/OPENSSL_riscvcap.pod" - ], - "doc/html/man3/OPENSSL_s390xcap.html" => [ - "doc/man3/OPENSSL_s390xcap.pod" - ], - "doc/html/man3/OPENSSL_secure_malloc.html" => [ - "doc/man3/OPENSSL_secure_malloc.pod" - ], - "doc/html/man3/OPENSSL_strcasecmp.html" => [ - "doc/man3/OPENSSL_strcasecmp.pod" - ], - "doc/html/man3/OSSL_ALGORITHM.html" => [ - "doc/man3/OSSL_ALGORITHM.pod" - ], - "doc/html/man3/OSSL_CALLBACK.html" => [ - "doc/man3/OSSL_CALLBACK.pod" - ], - "doc/html/man3/OSSL_CMP_ATAV_set0.html" => [ - "doc/man3/OSSL_CMP_ATAV_set0.pod" - ], - "doc/html/man3/OSSL_CMP_CTX_new.html" => [ - "doc/man3/OSSL_CMP_CTX_new.pod" - ], - "doc/html/man3/OSSL_CMP_HDR_get0_transactionID.html" => [ - "doc/man3/OSSL_CMP_HDR_get0_transactionID.pod" - ], - "doc/html/man3/OSSL_CMP_ITAV_new_caCerts.html" => [ - "doc/man3/OSSL_CMP_ITAV_new_caCerts.pod" - ], - "doc/html/man3/OSSL_CMP_ITAV_set0.html" => [ - "doc/man3/OSSL_CMP_ITAV_set0.pod" - ], - "doc/html/man3/OSSL_CMP_MSG_get0_header.html" => [ - "doc/man3/OSSL_CMP_MSG_get0_header.pod" - ], - "doc/html/man3/OSSL_CMP_MSG_http_perform.html" => [ - "doc/man3/OSSL_CMP_MSG_http_perform.pod" - ], - "doc/html/man3/OSSL_CMP_SRV_CTX_new.html" => [ - "doc/man3/OSSL_CMP_SRV_CTX_new.pod" - ], - "doc/html/man3/OSSL_CMP_STATUSINFO_new.html" => [ - "doc/man3/OSSL_CMP_STATUSINFO_new.pod" - ], - "doc/html/man3/OSSL_CMP_exec_certreq.html" => [ - "doc/man3/OSSL_CMP_exec_certreq.pod" - ], - "doc/html/man3/OSSL_CMP_log_open.html" => [ - "doc/man3/OSSL_CMP_log_open.pod" - ], - "doc/html/man3/OSSL_CMP_validate_msg.html" => [ - "doc/man3/OSSL_CMP_validate_msg.pod" - ], - "doc/html/man3/OSSL_CORE_MAKE_FUNC.html" => [ - "doc/man3/OSSL_CORE_MAKE_FUNC.pod" - ], - "doc/html/man3/OSSL_CRMF_MSG_get0_tmpl.html" => [ - "doc/man3/OSSL_CRMF_MSG_get0_tmpl.pod" - ], - "doc/html/man3/OSSL_CRMF_MSG_set0_validity.html" => [ - "doc/man3/OSSL_CRMF_MSG_set0_validity.pod" - ], - "doc/html/man3/OSSL_CRMF_MSG_set1_regCtrl_regToken.html" => [ - "doc/man3/OSSL_CRMF_MSG_set1_regCtrl_regToken.pod" - ], - "doc/html/man3/OSSL_CRMF_MSG_set1_regInfo_certReq.html" => [ - "doc/man3/OSSL_CRMF_MSG_set1_regInfo_certReq.pod" - ], - "doc/html/man3/OSSL_CRMF_pbmp_new.html" => [ - "doc/man3/OSSL_CRMF_pbmp_new.pod" - ], - "doc/html/man3/OSSL_DECODER.html" => [ - "doc/man3/OSSL_DECODER.pod" - ], - "doc/html/man3/OSSL_DECODER_CTX.html" => [ - "doc/man3/OSSL_DECODER_CTX.pod" - ], - "doc/html/man3/OSSL_DECODER_CTX_new_for_pkey.html" => [ - "doc/man3/OSSL_DECODER_CTX_new_for_pkey.pod" - ], - "doc/html/man3/OSSL_DECODER_from_bio.html" => [ - "doc/man3/OSSL_DECODER_from_bio.pod" - ], - "doc/html/man3/OSSL_DISPATCH.html" => [ - "doc/man3/OSSL_DISPATCH.pod" - ], - "doc/html/man3/OSSL_ENCODER.html" => [ - "doc/man3/OSSL_ENCODER.pod" - ], - "doc/html/man3/OSSL_ENCODER_CTX.html" => [ - "doc/man3/OSSL_ENCODER_CTX.pod" - ], - "doc/html/man3/OSSL_ENCODER_CTX_new_for_pkey.html" => [ - "doc/man3/OSSL_ENCODER_CTX_new_for_pkey.pod" - ], - "doc/html/man3/OSSL_ENCODER_to_bio.html" => [ - "doc/man3/OSSL_ENCODER_to_bio.pod" - ], - "doc/html/man3/OSSL_ERR_STATE_save.html" => [ - "doc/man3/OSSL_ERR_STATE_save.pod" - ], - "doc/html/man3/OSSL_ESS_check_signing_certs.html" => [ - "doc/man3/OSSL_ESS_check_signing_certs.pod" - ], - "doc/html/man3/OSSL_GENERAL_NAMES_print.html" => [ - "doc/man3/OSSL_GENERAL_NAMES_print.pod" - ], - "doc/html/man3/OSSL_HPKE_CTX_new.html" => [ - "doc/man3/OSSL_HPKE_CTX_new.pod" - ], - "doc/html/man3/OSSL_HTTP_REQ_CTX.html" => [ - "doc/man3/OSSL_HTTP_REQ_CTX.pod" - ], - "doc/html/man3/OSSL_HTTP_parse_url.html" => [ - "doc/man3/OSSL_HTTP_parse_url.pod" - ], - "doc/html/man3/OSSL_HTTP_transfer.html" => [ - "doc/man3/OSSL_HTTP_transfer.pod" - ], - "doc/html/man3/OSSL_IETF_ATTR_SYNTAX.html" => [ - "doc/man3/OSSL_IETF_ATTR_SYNTAX.pod" - ], - "doc/html/man3/OSSL_IETF_ATTR_SYNTAX_print.html" => [ - "doc/man3/OSSL_IETF_ATTR_SYNTAX_print.pod" - ], - "doc/html/man3/OSSL_INDICATOR_set_callback.html" => [ - "doc/man3/OSSL_INDICATOR_set_callback.pod" - ], - "doc/html/man3/OSSL_ITEM.html" => [ - "doc/man3/OSSL_ITEM.pod" - ], - "doc/html/man3/OSSL_LIB_CTX.html" => [ - "doc/man3/OSSL_LIB_CTX.pod" - ], - "doc/html/man3/OSSL_LIB_CTX_set_conf_diagnostics.html" => [ - "doc/man3/OSSL_LIB_CTX_set_conf_diagnostics.pod" - ], - "doc/html/man3/OSSL_PARAM.html" => [ - "doc/man3/OSSL_PARAM.pod" - ], - "doc/html/man3/OSSL_PARAM_BLD.html" => [ - "doc/man3/OSSL_PARAM_BLD.pod" - ], - "doc/html/man3/OSSL_PARAM_allocate_from_text.html" => [ - "doc/man3/OSSL_PARAM_allocate_from_text.pod" - ], - "doc/html/man3/OSSL_PARAM_dup.html" => [ - "doc/man3/OSSL_PARAM_dup.pod" - ], - "doc/html/man3/OSSL_PARAM_int.html" => [ - "doc/man3/OSSL_PARAM_int.pod" - ], - "doc/html/man3/OSSL_PARAM_print_to_bio.html" => [ - "doc/man3/OSSL_PARAM_print_to_bio.pod" - ], - "doc/html/man3/OSSL_PROVIDER.html" => [ - "doc/man3/OSSL_PROVIDER.pod" - ], - "doc/html/man3/OSSL_QUIC_client_method.html" => [ - "doc/man3/OSSL_QUIC_client_method.pod" - ], - "doc/html/man3/OSSL_SELF_TEST_new.html" => [ - "doc/man3/OSSL_SELF_TEST_new.pod" - ], - "doc/html/man3/OSSL_SELF_TEST_set_callback.html" => [ - "doc/man3/OSSL_SELF_TEST_set_callback.pod" - ], - "doc/html/man3/OSSL_STORE_INFO.html" => [ - "doc/man3/OSSL_STORE_INFO.pod" - ], - "doc/html/man3/OSSL_STORE_LOADER.html" => [ - "doc/man3/OSSL_STORE_LOADER.pod" - ], - "doc/html/man3/OSSL_STORE_SEARCH.html" => [ - "doc/man3/OSSL_STORE_SEARCH.pod" - ], - "doc/html/man3/OSSL_STORE_attach.html" => [ - "doc/man3/OSSL_STORE_attach.pod" - ], - "doc/html/man3/OSSL_STORE_expect.html" => [ - "doc/man3/OSSL_STORE_expect.pod" - ], - "doc/html/man3/OSSL_STORE_open.html" => [ - "doc/man3/OSSL_STORE_open.pod" - ], - "doc/html/man3/OSSL_sleep.html" => [ - "doc/man3/OSSL_sleep.pod" - ], - "doc/html/man3/OSSL_trace_enabled.html" => [ - "doc/man3/OSSL_trace_enabled.pod" - ], - "doc/html/man3/OSSL_trace_get_category_num.html" => [ - "doc/man3/OSSL_trace_get_category_num.pod" - ], - "doc/html/man3/OSSL_trace_set_channel.html" => [ - "doc/man3/OSSL_trace_set_channel.pod" - ], - "doc/html/man3/OpenSSL_add_all_algorithms.html" => [ - "doc/man3/OpenSSL_add_all_algorithms.pod" - ], - "doc/html/man3/OpenSSL_version.html" => [ - "doc/man3/OpenSSL_version.pod" - ], - "doc/html/man3/PBMAC1_get1_pbkdf2_param.html" => [ - "doc/man3/PBMAC1_get1_pbkdf2_param.pod" - ], - "doc/html/man3/PEM_X509_INFO_read_bio_ex.html" => [ - "doc/man3/PEM_X509_INFO_read_bio_ex.pod" - ], - "doc/html/man3/PEM_bytes_read_bio.html" => [ - "doc/man3/PEM_bytes_read_bio.pod" - ], - "doc/html/man3/PEM_read.html" => [ - "doc/man3/PEM_read.pod" - ], - "doc/html/man3/PEM_read_CMS.html" => [ - "doc/man3/PEM_read_CMS.pod" - ], - "doc/html/man3/PEM_read_bio_PrivateKey.html" => [ - "doc/man3/PEM_read_bio_PrivateKey.pod" - ], - "doc/html/man3/PEM_read_bio_ex.html" => [ - "doc/man3/PEM_read_bio_ex.pod" - ], - "doc/html/man3/PEM_write_bio_CMS_stream.html" => [ - "doc/man3/PEM_write_bio_CMS_stream.pod" - ], - "doc/html/man3/PEM_write_bio_PKCS7_stream.html" => [ - "doc/man3/PEM_write_bio_PKCS7_stream.pod" - ], - "doc/html/man3/PKCS12_PBE_keyivgen.html" => [ - "doc/man3/PKCS12_PBE_keyivgen.pod" - ], - "doc/html/man3/PKCS12_SAFEBAG_create_cert.html" => [ - "doc/man3/PKCS12_SAFEBAG_create_cert.pod" - ], - "doc/html/man3/PKCS12_SAFEBAG_get0_attrs.html" => [ - "doc/man3/PKCS12_SAFEBAG_get0_attrs.pod" - ], - "doc/html/man3/PKCS12_SAFEBAG_get1_cert.html" => [ - "doc/man3/PKCS12_SAFEBAG_get1_cert.pod" - ], - "doc/html/man3/PKCS12_SAFEBAG_set0_attrs.html" => [ - "doc/man3/PKCS12_SAFEBAG_set0_attrs.pod" - ], - "doc/html/man3/PKCS12_add1_attr_by_NID.html" => [ - "doc/man3/PKCS12_add1_attr_by_NID.pod" - ], - "doc/html/man3/PKCS12_add_CSPName_asc.html" => [ - "doc/man3/PKCS12_add_CSPName_asc.pod" - ], - "doc/html/man3/PKCS12_add_cert.html" => [ - "doc/man3/PKCS12_add_cert.pod" - ], - "doc/html/man3/PKCS12_add_friendlyname_asc.html" => [ - "doc/man3/PKCS12_add_friendlyname_asc.pod" - ], - "doc/html/man3/PKCS12_add_localkeyid.html" => [ - "doc/man3/PKCS12_add_localkeyid.pod" - ], - "doc/html/man3/PKCS12_add_safe.html" => [ - "doc/man3/PKCS12_add_safe.pod" - ], - "doc/html/man3/PKCS12_create.html" => [ - "doc/man3/PKCS12_create.pod" - ], - "doc/html/man3/PKCS12_decrypt_skey.html" => [ - "doc/man3/PKCS12_decrypt_skey.pod" - ], - "doc/html/man3/PKCS12_gen_mac.html" => [ - "doc/man3/PKCS12_gen_mac.pod" - ], - "doc/html/man3/PKCS12_get_friendlyname.html" => [ - "doc/man3/PKCS12_get_friendlyname.pod" - ], - "doc/html/man3/PKCS12_init.html" => [ - "doc/man3/PKCS12_init.pod" - ], - "doc/html/man3/PKCS12_item_decrypt_d2i.html" => [ - "doc/man3/PKCS12_item_decrypt_d2i.pod" - ], - "doc/html/man3/PKCS12_key_gen_utf8_ex.html" => [ - "doc/man3/PKCS12_key_gen_utf8_ex.pod" - ], - "doc/html/man3/PKCS12_newpass.html" => [ - "doc/man3/PKCS12_newpass.pod" - ], - "doc/html/man3/PKCS12_pack_p7encdata.html" => [ - "doc/man3/PKCS12_pack_p7encdata.pod" - ], - "doc/html/man3/PKCS12_parse.html" => [ - "doc/man3/PKCS12_parse.pod" - ], - "doc/html/man3/PKCS5_PBE_keyivgen.html" => [ - "doc/man3/PKCS5_PBE_keyivgen.pod" - ], - "doc/html/man3/PKCS5_PBKDF2_HMAC.html" => [ - "doc/man3/PKCS5_PBKDF2_HMAC.pod" - ], - "doc/html/man3/PKCS7_decrypt.html" => [ - "doc/man3/PKCS7_decrypt.pod" - ], - "doc/html/man3/PKCS7_encrypt.html" => [ - "doc/man3/PKCS7_encrypt.pod" - ], - "doc/html/man3/PKCS7_get_octet_string.html" => [ - "doc/man3/PKCS7_get_octet_string.pod" - ], - "doc/html/man3/PKCS7_sign.html" => [ - "doc/man3/PKCS7_sign.pod" - ], - "doc/html/man3/PKCS7_sign_add_signer.html" => [ - "doc/man3/PKCS7_sign_add_signer.pod" - ], - "doc/html/man3/PKCS7_type_is_other.html" => [ - "doc/man3/PKCS7_type_is_other.pod" - ], - "doc/html/man3/PKCS7_verify.html" => [ - "doc/man3/PKCS7_verify.pod" - ], - "doc/html/man3/PKCS8_encrypt.html" => [ - "doc/man3/PKCS8_encrypt.pod" - ], - "doc/html/man3/PKCS8_pkey_add1_attr.html" => [ - "doc/man3/PKCS8_pkey_add1_attr.pod" - ], - "doc/html/man3/RAND_add.html" => [ - "doc/man3/RAND_add.pod" - ], - "doc/html/man3/RAND_bytes.html" => [ - "doc/man3/RAND_bytes.pod" - ], - "doc/html/man3/RAND_cleanup.html" => [ - "doc/man3/RAND_cleanup.pod" - ], - "doc/html/man3/RAND_egd.html" => [ - "doc/man3/RAND_egd.pod" - ], - "doc/html/man3/RAND_get0_primary.html" => [ - "doc/man3/RAND_get0_primary.pod" - ], - "doc/html/man3/RAND_load_file.html" => [ - "doc/man3/RAND_load_file.pod" - ], - "doc/html/man3/RAND_set_DRBG_type.html" => [ - "doc/man3/RAND_set_DRBG_type.pod" - ], - "doc/html/man3/RAND_set_rand_method.html" => [ - "doc/man3/RAND_set_rand_method.pod" - ], - "doc/html/man3/RC4_set_key.html" => [ - "doc/man3/RC4_set_key.pod" - ], - "doc/html/man3/RIPEMD160_Init.html" => [ - "doc/man3/RIPEMD160_Init.pod" - ], - "doc/html/man3/RSA_blinding_on.html" => [ - "doc/man3/RSA_blinding_on.pod" - ], - "doc/html/man3/RSA_check_key.html" => [ - "doc/man3/RSA_check_key.pod" - ], - "doc/html/man3/RSA_generate_key.html" => [ - "doc/man3/RSA_generate_key.pod" - ], - "doc/html/man3/RSA_get0_key.html" => [ - "doc/man3/RSA_get0_key.pod" - ], - "doc/html/man3/RSA_meth_new.html" => [ - "doc/man3/RSA_meth_new.pod" - ], - "doc/html/man3/RSA_new.html" => [ - "doc/man3/RSA_new.pod" - ], - "doc/html/man3/RSA_padding_add_PKCS1_type_1.html" => [ - "doc/man3/RSA_padding_add_PKCS1_type_1.pod" - ], - "doc/html/man3/RSA_print.html" => [ - "doc/man3/RSA_print.pod" - ], - "doc/html/man3/RSA_private_encrypt.html" => [ - "doc/man3/RSA_private_encrypt.pod" - ], - "doc/html/man3/RSA_public_encrypt.html" => [ - "doc/man3/RSA_public_encrypt.pod" - ], - "doc/html/man3/RSA_set_method.html" => [ - "doc/man3/RSA_set_method.pod" - ], - "doc/html/man3/RSA_sign.html" => [ - "doc/man3/RSA_sign.pod" - ], - "doc/html/man3/RSA_sign_ASN1_OCTET_STRING.html" => [ - "doc/man3/RSA_sign_ASN1_OCTET_STRING.pod" - ], - "doc/html/man3/RSA_size.html" => [ - "doc/man3/RSA_size.pod" - ], - "doc/html/man3/SCT_new.html" => [ - "doc/man3/SCT_new.pod" - ], - "doc/html/man3/SCT_print.html" => [ - "doc/man3/SCT_print.pod" - ], - "doc/html/man3/SCT_validate.html" => [ - "doc/man3/SCT_validate.pod" - ], - "doc/html/man3/SHA256_Init.html" => [ - "doc/man3/SHA256_Init.pod" - ], - "doc/html/man3/SMIME_read_ASN1.html" => [ - "doc/man3/SMIME_read_ASN1.pod" - ], - "doc/html/man3/SMIME_read_CMS.html" => [ - "doc/man3/SMIME_read_CMS.pod" - ], - "doc/html/man3/SMIME_read_PKCS7.html" => [ - "doc/man3/SMIME_read_PKCS7.pod" - ], - "doc/html/man3/SMIME_write_ASN1.html" => [ - "doc/man3/SMIME_write_ASN1.pod" - ], - "doc/html/man3/SMIME_write_CMS.html" => [ - "doc/man3/SMIME_write_CMS.pod" - ], - "doc/html/man3/SMIME_write_PKCS7.html" => [ - "doc/man3/SMIME_write_PKCS7.pod" - ], - "doc/html/man3/SRP_Calc_B.html" => [ - "doc/man3/SRP_Calc_B.pod" - ], - "doc/html/man3/SRP_VBASE_new.html" => [ - "doc/man3/SRP_VBASE_new.pod" - ], - "doc/html/man3/SRP_create_verifier.html" => [ - "doc/man3/SRP_create_verifier.pod" - ], - "doc/html/man3/SRP_user_pwd_new.html" => [ - "doc/man3/SRP_user_pwd_new.pod" - ], - "doc/html/man3/SSL_CIPHER_get_name.html" => [ - "doc/man3/SSL_CIPHER_get_name.pod" - ], - "doc/html/man3/SSL_COMP_add_compression_method.html" => [ - "doc/man3/SSL_COMP_add_compression_method.pod" - ], - "doc/html/man3/SSL_CONF_CTX_new.html" => [ - "doc/man3/SSL_CONF_CTX_new.pod" - ], - "doc/html/man3/SSL_CONF_CTX_set1_prefix.html" => [ - "doc/man3/SSL_CONF_CTX_set1_prefix.pod" - ], - "doc/html/man3/SSL_CONF_CTX_set_flags.html" => [ - "doc/man3/SSL_CONF_CTX_set_flags.pod" - ], - "doc/html/man3/SSL_CONF_CTX_set_ssl_ctx.html" => [ - "doc/man3/SSL_CONF_CTX_set_ssl_ctx.pod" - ], - "doc/html/man3/SSL_CONF_cmd.html" => [ - "doc/man3/SSL_CONF_cmd.pod" - ], - "doc/html/man3/SSL_CONF_cmd_argv.html" => [ - "doc/man3/SSL_CONF_cmd_argv.pod" - ], - "doc/html/man3/SSL_CTX_add1_chain_cert.html" => [ - "doc/man3/SSL_CTX_add1_chain_cert.pod" - ], - "doc/html/man3/SSL_CTX_add_extra_chain_cert.html" => [ - "doc/man3/SSL_CTX_add_extra_chain_cert.pod" - ], - "doc/html/man3/SSL_CTX_add_session.html" => [ - "doc/man3/SSL_CTX_add_session.pod" - ], - "doc/html/man3/SSL_CTX_config.html" => [ - "doc/man3/SSL_CTX_config.pod" - ], - "doc/html/man3/SSL_CTX_ctrl.html" => [ - "doc/man3/SSL_CTX_ctrl.pod" - ], - "doc/html/man3/SSL_CTX_dane_enable.html" => [ - "doc/man3/SSL_CTX_dane_enable.pod" - ], - "doc/html/man3/SSL_CTX_flush_sessions.html" => [ - "doc/man3/SSL_CTX_flush_sessions.pod" - ], - "doc/html/man3/SSL_CTX_free.html" => [ - "doc/man3/SSL_CTX_free.pod" - ], - "doc/html/man3/SSL_CTX_get0_param.html" => [ - "doc/man3/SSL_CTX_get0_param.pod" - ], - "doc/html/man3/SSL_CTX_get_verify_mode.html" => [ - "doc/man3/SSL_CTX_get_verify_mode.pod" - ], - "doc/html/man3/SSL_CTX_has_client_custom_ext.html" => [ - "doc/man3/SSL_CTX_has_client_custom_ext.pod" - ], - "doc/html/man3/SSL_CTX_load_verify_locations.html" => [ - "doc/man3/SSL_CTX_load_verify_locations.pod" - ], - "doc/html/man3/SSL_CTX_new.html" => [ - "doc/man3/SSL_CTX_new.pod" - ], - "doc/html/man3/SSL_CTX_sess_number.html" => [ - "doc/man3/SSL_CTX_sess_number.pod" - ], - "doc/html/man3/SSL_CTX_sess_set_cache_size.html" => [ - "doc/man3/SSL_CTX_sess_set_cache_size.pod" - ], - "doc/html/man3/SSL_CTX_sess_set_get_cb.html" => [ - "doc/man3/SSL_CTX_sess_set_get_cb.pod" - ], - "doc/html/man3/SSL_CTX_sessions.html" => [ - "doc/man3/SSL_CTX_sessions.pod" - ], - "doc/html/man3/SSL_CTX_set0_CA_list.html" => [ - "doc/man3/SSL_CTX_set0_CA_list.pod" - ], - "doc/html/man3/SSL_CTX_set1_cert_comp_preference.html" => [ - "doc/man3/SSL_CTX_set1_cert_comp_preference.pod" - ], - "doc/html/man3/SSL_CTX_set1_curves.html" => [ - "doc/man3/SSL_CTX_set1_curves.pod" - ], - "doc/html/man3/SSL_CTX_set1_sigalgs.html" => [ - "doc/man3/SSL_CTX_set1_sigalgs.pod" - ], - "doc/html/man3/SSL_CTX_set1_verify_cert_store.html" => [ - "doc/man3/SSL_CTX_set1_verify_cert_store.pod" - ], - "doc/html/man3/SSL_CTX_set_alpn_select_cb.html" => [ - "doc/man3/SSL_CTX_set_alpn_select_cb.pod" - ], - "doc/html/man3/SSL_CTX_set_cert_cb.html" => [ - "doc/man3/SSL_CTX_set_cert_cb.pod" - ], - "doc/html/man3/SSL_CTX_set_cert_store.html" => [ - "doc/man3/SSL_CTX_set_cert_store.pod" - ], - "doc/html/man3/SSL_CTX_set_cert_verify_callback.html" => [ - "doc/man3/SSL_CTX_set_cert_verify_callback.pod" - ], - "doc/html/man3/SSL_CTX_set_cipher_list.html" => [ - "doc/man3/SSL_CTX_set_cipher_list.pod" - ], - "doc/html/man3/SSL_CTX_set_client_cert_cb.html" => [ - "doc/man3/SSL_CTX_set_client_cert_cb.pod" - ], - "doc/html/man3/SSL_CTX_set_client_hello_cb.html" => [ - "doc/man3/SSL_CTX_set_client_hello_cb.pod" - ], - "doc/html/man3/SSL_CTX_set_ct_validation_callback.html" => [ - "doc/man3/SSL_CTX_set_ct_validation_callback.pod" - ], - "doc/html/man3/SSL_CTX_set_ctlog_list_file.html" => [ - "doc/man3/SSL_CTX_set_ctlog_list_file.pod" - ], - "doc/html/man3/SSL_CTX_set_default_passwd_cb.html" => [ - "doc/man3/SSL_CTX_set_default_passwd_cb.pod" - ], - "doc/html/man3/SSL_CTX_set_domain_flags.html" => [ - "doc/man3/SSL_CTX_set_domain_flags.pod" - ], - "doc/html/man3/SSL_CTX_set_generate_session_id.html" => [ - "doc/man3/SSL_CTX_set_generate_session_id.pod" - ], - "doc/html/man3/SSL_CTX_set_info_callback.html" => [ - "doc/man3/SSL_CTX_set_info_callback.pod" - ], - "doc/html/man3/SSL_CTX_set_keylog_callback.html" => [ - "doc/man3/SSL_CTX_set_keylog_callback.pod" - ], - "doc/html/man3/SSL_CTX_set_max_cert_list.html" => [ - "doc/man3/SSL_CTX_set_max_cert_list.pod" - ], - "doc/html/man3/SSL_CTX_set_min_proto_version.html" => [ - "doc/man3/SSL_CTX_set_min_proto_version.pod" - ], - "doc/html/man3/SSL_CTX_set_mode.html" => [ - "doc/man3/SSL_CTX_set_mode.pod" - ], - "doc/html/man3/SSL_CTX_set_msg_callback.html" => [ - "doc/man3/SSL_CTX_set_msg_callback.pod" - ], - "doc/html/man3/SSL_CTX_set_new_pending_conn_cb.html" => [ - "doc/man3/SSL_CTX_set_new_pending_conn_cb.pod" - ], - "doc/html/man3/SSL_CTX_set_num_tickets.html" => [ - "doc/man3/SSL_CTX_set_num_tickets.pod" - ], - "doc/html/man3/SSL_CTX_set_options.html" => [ - "doc/man3/SSL_CTX_set_options.pod" - ], - "doc/html/man3/SSL_CTX_set_psk_client_callback.html" => [ - "doc/man3/SSL_CTX_set_psk_client_callback.pod" - ], - "doc/html/man3/SSL_CTX_set_quiet_shutdown.html" => [ - "doc/man3/SSL_CTX_set_quiet_shutdown.pod" - ], - "doc/html/man3/SSL_CTX_set_read_ahead.html" => [ - "doc/man3/SSL_CTX_set_read_ahead.pod" - ], - "doc/html/man3/SSL_CTX_set_record_padding_callback.html" => [ - "doc/man3/SSL_CTX_set_record_padding_callback.pod" - ], - "doc/html/man3/SSL_CTX_set_security_level.html" => [ - "doc/man3/SSL_CTX_set_security_level.pod" - ], - "doc/html/man3/SSL_CTX_set_session_cache_mode.html" => [ - "doc/man3/SSL_CTX_set_session_cache_mode.pod" - ], - "doc/html/man3/SSL_CTX_set_session_id_context.html" => [ - "doc/man3/SSL_CTX_set_session_id_context.pod" - ], - "doc/html/man3/SSL_CTX_set_session_ticket_cb.html" => [ - "doc/man3/SSL_CTX_set_session_ticket_cb.pod" - ], - "doc/html/man3/SSL_CTX_set_split_send_fragment.html" => [ - "doc/man3/SSL_CTX_set_split_send_fragment.pod" - ], - "doc/html/man3/SSL_CTX_set_srp_password.html" => [ - "doc/man3/SSL_CTX_set_srp_password.pod" - ], - "doc/html/man3/SSL_CTX_set_ssl_version.html" => [ - "doc/man3/SSL_CTX_set_ssl_version.pod" - ], - "doc/html/man3/SSL_CTX_set_stateless_cookie_generate_cb.html" => [ - "doc/man3/SSL_CTX_set_stateless_cookie_generate_cb.pod" - ], - "doc/html/man3/SSL_CTX_set_timeout.html" => [ - "doc/man3/SSL_CTX_set_timeout.pod" - ], - "doc/html/man3/SSL_CTX_set_tlsext_servername_callback.html" => [ - "doc/man3/SSL_CTX_set_tlsext_servername_callback.pod" - ], - "doc/html/man3/SSL_CTX_set_tlsext_status_cb.html" => [ - "doc/man3/SSL_CTX_set_tlsext_status_cb.pod" - ], - "doc/html/man3/SSL_CTX_set_tlsext_ticket_key_cb.html" => [ - "doc/man3/SSL_CTX_set_tlsext_ticket_key_cb.pod" - ], - "doc/html/man3/SSL_CTX_set_tlsext_use_srtp.html" => [ - "doc/man3/SSL_CTX_set_tlsext_use_srtp.pod" - ], - "doc/html/man3/SSL_CTX_set_tmp_dh_callback.html" => [ - "doc/man3/SSL_CTX_set_tmp_dh_callback.pod" - ], - "doc/html/man3/SSL_CTX_set_tmp_ecdh.html" => [ - "doc/man3/SSL_CTX_set_tmp_ecdh.pod" - ], - "doc/html/man3/SSL_CTX_set_verify.html" => [ - "doc/man3/SSL_CTX_set_verify.pod" - ], - "doc/html/man3/SSL_CTX_use_certificate.html" => [ - "doc/man3/SSL_CTX_use_certificate.pod" - ], - "doc/html/man3/SSL_CTX_use_psk_identity_hint.html" => [ - "doc/man3/SSL_CTX_use_psk_identity_hint.pod" - ], - "doc/html/man3/SSL_CTX_use_serverinfo.html" => [ - "doc/man3/SSL_CTX_use_serverinfo.pod" - ], - "doc/html/man3/SSL_SESSION_free.html" => [ - "doc/man3/SSL_SESSION_free.pod" - ], - "doc/html/man3/SSL_SESSION_get0_cipher.html" => [ - "doc/man3/SSL_SESSION_get0_cipher.pod" - ], - "doc/html/man3/SSL_SESSION_get0_hostname.html" => [ - "doc/man3/SSL_SESSION_get0_hostname.pod" - ], - "doc/html/man3/SSL_SESSION_get0_id_context.html" => [ - "doc/man3/SSL_SESSION_get0_id_context.pod" - ], - "doc/html/man3/SSL_SESSION_get0_peer.html" => [ - "doc/man3/SSL_SESSION_get0_peer.pod" - ], - "doc/html/man3/SSL_SESSION_get_compress_id.html" => [ - "doc/man3/SSL_SESSION_get_compress_id.pod" - ], - "doc/html/man3/SSL_SESSION_get_protocol_version.html" => [ - "doc/man3/SSL_SESSION_get_protocol_version.pod" - ], - "doc/html/man3/SSL_SESSION_get_time.html" => [ - "doc/man3/SSL_SESSION_get_time.pod" - ], - "doc/html/man3/SSL_SESSION_has_ticket.html" => [ - "doc/man3/SSL_SESSION_has_ticket.pod" - ], - "doc/html/man3/SSL_SESSION_is_resumable.html" => [ - "doc/man3/SSL_SESSION_is_resumable.pod" - ], - "doc/html/man3/SSL_SESSION_print.html" => [ - "doc/man3/SSL_SESSION_print.pod" - ], - "doc/html/man3/SSL_SESSION_set1_id.html" => [ - "doc/man3/SSL_SESSION_set1_id.pod" - ], - "doc/html/man3/SSL_accept.html" => [ - "doc/man3/SSL_accept.pod" - ], - "doc/html/man3/SSL_accept_stream.html" => [ - "doc/man3/SSL_accept_stream.pod" - ], - "doc/html/man3/SSL_alert_type_string.html" => [ - "doc/man3/SSL_alert_type_string.pod" - ], - "doc/html/man3/SSL_alloc_buffers.html" => [ - "doc/man3/SSL_alloc_buffers.pod" - ], - "doc/html/man3/SSL_check_chain.html" => [ - "doc/man3/SSL_check_chain.pod" - ], - "doc/html/man3/SSL_clear.html" => [ - "doc/man3/SSL_clear.pod" - ], - "doc/html/man3/SSL_connect.html" => [ - "doc/man3/SSL_connect.pod" - ], - "doc/html/man3/SSL_do_handshake.html" => [ - "doc/man3/SSL_do_handshake.pod" - ], - "doc/html/man3/SSL_export_keying_material.html" => [ - "doc/man3/SSL_export_keying_material.pod" - ], - "doc/html/man3/SSL_extension_supported.html" => [ - "doc/man3/SSL_extension_supported.pod" - ], - "doc/html/man3/SSL_free.html" => [ - "doc/man3/SSL_free.pod" - ], - "doc/html/man3/SSL_get0_connection.html" => [ - "doc/man3/SSL_get0_connection.pod" - ], - "doc/html/man3/SSL_get0_group_name.html" => [ - "doc/man3/SSL_get0_group_name.pod" - ], - "doc/html/man3/SSL_get0_peer_rpk.html" => [ - "doc/man3/SSL_get0_peer_rpk.pod" - ], - "doc/html/man3/SSL_get0_peer_scts.html" => [ - "doc/man3/SSL_get0_peer_scts.pod" - ], - "doc/html/man3/SSL_get1_builtin_sigalgs.html" => [ - "doc/man3/SSL_get1_builtin_sigalgs.pod" - ], - "doc/html/man3/SSL_get_SSL_CTX.html" => [ - "doc/man3/SSL_get_SSL_CTX.pod" - ], - "doc/html/man3/SSL_get_all_async_fds.html" => [ - "doc/man3/SSL_get_all_async_fds.pod" - ], - "doc/html/man3/SSL_get_certificate.html" => [ - "doc/man3/SSL_get_certificate.pod" - ], - "doc/html/man3/SSL_get_ciphers.html" => [ - "doc/man3/SSL_get_ciphers.pod" - ], - "doc/html/man3/SSL_get_client_random.html" => [ - "doc/man3/SSL_get_client_random.pod" - ], - "doc/html/man3/SSL_get_conn_close_info.html" => [ - "doc/man3/SSL_get_conn_close_info.pod" - ], - "doc/html/man3/SSL_get_current_cipher.html" => [ - "doc/man3/SSL_get_current_cipher.pod" - ], - "doc/html/man3/SSL_get_default_timeout.html" => [ - "doc/man3/SSL_get_default_timeout.pod" - ], - "doc/html/man3/SSL_get_error.html" => [ - "doc/man3/SSL_get_error.pod" - ], - "doc/html/man3/SSL_get_event_timeout.html" => [ - "doc/man3/SSL_get_event_timeout.pod" - ], - "doc/html/man3/SSL_get_extms_support.html" => [ - "doc/man3/SSL_get_extms_support.pod" - ], - "doc/html/man3/SSL_get_fd.html" => [ - "doc/man3/SSL_get_fd.pod" - ], - "doc/html/man3/SSL_get_handshake_rtt.html" => [ - "doc/man3/SSL_get_handshake_rtt.pod" - ], - "doc/html/man3/SSL_get_peer_cert_chain.html" => [ - "doc/man3/SSL_get_peer_cert_chain.pod" - ], - "doc/html/man3/SSL_get_peer_certificate.html" => [ - "doc/man3/SSL_get_peer_certificate.pod" - ], - "doc/html/man3/SSL_get_peer_signature_nid.html" => [ - "doc/man3/SSL_get_peer_signature_nid.pod" - ], - "doc/html/man3/SSL_get_peer_tmp_key.html" => [ - "doc/man3/SSL_get_peer_tmp_key.pod" - ], - "doc/html/man3/SSL_get_psk_identity.html" => [ - "doc/man3/SSL_get_psk_identity.pod" - ], - "doc/html/man3/SSL_get_rbio.html" => [ - "doc/man3/SSL_get_rbio.pod" - ], - "doc/html/man3/SSL_get_rpoll_descriptor.html" => [ - "doc/man3/SSL_get_rpoll_descriptor.pod" - ], - "doc/html/man3/SSL_get_session.html" => [ - "doc/man3/SSL_get_session.pod" - ], - "doc/html/man3/SSL_get_shared_sigalgs.html" => [ - "doc/man3/SSL_get_shared_sigalgs.pod" - ], - "doc/html/man3/SSL_get_stream_id.html" => [ - "doc/man3/SSL_get_stream_id.pod" - ], - "doc/html/man3/SSL_get_stream_read_state.html" => [ - "doc/man3/SSL_get_stream_read_state.pod" - ], - "doc/html/man3/SSL_get_value_uint.html" => [ - "doc/man3/SSL_get_value_uint.pod" - ], - "doc/html/man3/SSL_get_verify_result.html" => [ - "doc/man3/SSL_get_verify_result.pod" - ], - "doc/html/man3/SSL_get_version.html" => [ - "doc/man3/SSL_get_version.pod" - ], - "doc/html/man3/SSL_group_to_name.html" => [ - "doc/man3/SSL_group_to_name.pod" - ], - "doc/html/man3/SSL_handle_events.html" => [ - "doc/man3/SSL_handle_events.pod" - ], - "doc/html/man3/SSL_in_init.html" => [ - "doc/man3/SSL_in_init.pod" - ], - "doc/html/man3/SSL_inject_net_dgram.html" => [ - "doc/man3/SSL_inject_net_dgram.pod" - ], - "doc/html/man3/SSL_key_update.html" => [ - "doc/man3/SSL_key_update.pod" - ], - "doc/html/man3/SSL_library_init.html" => [ - "doc/man3/SSL_library_init.pod" - ], - "doc/html/man3/SSL_load_client_CA_file.html" => [ - "doc/man3/SSL_load_client_CA_file.pod" - ], - "doc/html/man3/SSL_new.html" => [ - "doc/man3/SSL_new.pod" - ], - "doc/html/man3/SSL_new_domain.html" => [ - "doc/man3/SSL_new_domain.pod" - ], - "doc/html/man3/SSL_new_listener.html" => [ - "doc/man3/SSL_new_listener.pod" - ], - "doc/html/man3/SSL_new_stream.html" => [ - "doc/man3/SSL_new_stream.pod" - ], - "doc/html/man3/SSL_pending.html" => [ - "doc/man3/SSL_pending.pod" - ], - "doc/html/man3/SSL_poll.html" => [ - "doc/man3/SSL_poll.pod" - ], - "doc/html/man3/SSL_read.html" => [ - "doc/man3/SSL_read.pod" - ], - "doc/html/man3/SSL_read_early_data.html" => [ - "doc/man3/SSL_read_early_data.pod" - ], - "doc/html/man3/SSL_rstate_string.html" => [ - "doc/man3/SSL_rstate_string.pod" - ], - "doc/html/man3/SSL_session_reused.html" => [ - "doc/man3/SSL_session_reused.pod" - ], - "doc/html/man3/SSL_set1_host.html" => [ - "doc/man3/SSL_set1_host.pod" - ], - "doc/html/man3/SSL_set1_initial_peer_addr.html" => [ - "doc/man3/SSL_set1_initial_peer_addr.pod" - ], - "doc/html/man3/SSL_set1_server_cert_type.html" => [ - "doc/man3/SSL_set1_server_cert_type.pod" - ], - "doc/html/man3/SSL_set_async_callback.html" => [ - "doc/man3/SSL_set_async_callback.pod" - ], - "doc/html/man3/SSL_set_bio.html" => [ - "doc/man3/SSL_set_bio.pod" - ], - "doc/html/man3/SSL_set_blocking_mode.html" => [ - "doc/man3/SSL_set_blocking_mode.pod" - ], - "doc/html/man3/SSL_set_connect_state.html" => [ - "doc/man3/SSL_set_connect_state.pod" - ], - "doc/html/man3/SSL_set_default_stream_mode.html" => [ - "doc/man3/SSL_set_default_stream_mode.pod" - ], - "doc/html/man3/SSL_set_fd.html" => [ - "doc/man3/SSL_set_fd.pod" - ], - "doc/html/man3/SSL_set_incoming_stream_policy.html" => [ - "doc/man3/SSL_set_incoming_stream_policy.pod" - ], - "doc/html/man3/SSL_set_quic_tls_cbs.html" => [ - "doc/man3/SSL_set_quic_tls_cbs.pod" - ], - "doc/html/man3/SSL_set_retry_verify.html" => [ - "doc/man3/SSL_set_retry_verify.pod" - ], - "doc/html/man3/SSL_set_session.html" => [ - "doc/man3/SSL_set_session.pod" - ], - "doc/html/man3/SSL_set_session_secret_cb.html" => [ - "doc/man3/SSL_set_session_secret_cb.pod" - ], - "doc/html/man3/SSL_set_shutdown.html" => [ - "doc/man3/SSL_set_shutdown.pod" - ], - "doc/html/man3/SSL_set_verify_result.html" => [ - "doc/man3/SSL_set_verify_result.pod" - ], - "doc/html/man3/SSL_shutdown.html" => [ - "doc/man3/SSL_shutdown.pod" - ], - "doc/html/man3/SSL_state_string.html" => [ - "doc/man3/SSL_state_string.pod" - ], - "doc/html/man3/SSL_stream_conclude.html" => [ - "doc/man3/SSL_stream_conclude.pod" - ], - "doc/html/man3/SSL_stream_reset.html" => [ - "doc/man3/SSL_stream_reset.pod" - ], - "doc/html/man3/SSL_want.html" => [ - "doc/man3/SSL_want.pod" - ], - "doc/html/man3/SSL_write.html" => [ - "doc/man3/SSL_write.pod" - ], - "doc/html/man3/TS_RESP_CTX_new.html" => [ - "doc/man3/TS_RESP_CTX_new.pod" - ], - "doc/html/man3/TS_VERIFY_CTX.html" => [ - "doc/man3/TS_VERIFY_CTX.pod" - ], - "doc/html/man3/UI_STRING.html" => [ - "doc/man3/UI_STRING.pod" - ], - "doc/html/man3/UI_UTIL_read_pw.html" => [ - "doc/man3/UI_UTIL_read_pw.pod" - ], - "doc/html/man3/UI_create_method.html" => [ - "doc/man3/UI_create_method.pod" - ], - "doc/html/man3/UI_new.html" => [ - "doc/man3/UI_new.pod" - ], - "doc/html/man3/X509V3_get_d2i.html" => [ - "doc/man3/X509V3_get_d2i.pod" - ], - "doc/html/man3/X509V3_set_ctx.html" => [ - "doc/man3/X509V3_set_ctx.pod" - ], - "doc/html/man3/X509_ACERT_add1_attr.html" => [ - "doc/man3/X509_ACERT_add1_attr.pod" - ], - "doc/html/man3/X509_ACERT_add_attr_nconf.html" => [ - "doc/man3/X509_ACERT_add_attr_nconf.pod" - ], - "doc/html/man3/X509_ACERT_get0_holder_baseCertId.html" => [ - "doc/man3/X509_ACERT_get0_holder_baseCertId.pod" - ], - "doc/html/man3/X509_ACERT_get_attr.html" => [ - "doc/man3/X509_ACERT_get_attr.pod" - ], - "doc/html/man3/X509_ACERT_print_ex.html" => [ - "doc/man3/X509_ACERT_print_ex.pod" - ], - "doc/html/man3/X509_ALGOR_dup.html" => [ - "doc/man3/X509_ALGOR_dup.pod" - ], - "doc/html/man3/X509_ATTRIBUTE.html" => [ - "doc/man3/X509_ATTRIBUTE.pod" - ], - "doc/html/man3/X509_CRL_get0_by_serial.html" => [ - "doc/man3/X509_CRL_get0_by_serial.pod" - ], - "doc/html/man3/X509_EXTENSION_set_object.html" => [ - "doc/man3/X509_EXTENSION_set_object.pod" - ], - "doc/html/man3/X509_LOOKUP.html" => [ - "doc/man3/X509_LOOKUP.pod" - ], - "doc/html/man3/X509_LOOKUP_hash_dir.html" => [ - "doc/man3/X509_LOOKUP_hash_dir.pod" - ], - "doc/html/man3/X509_LOOKUP_meth_new.html" => [ - "doc/man3/X509_LOOKUP_meth_new.pod" - ], - "doc/html/man3/X509_NAME_ENTRY_get_object.html" => [ - "doc/man3/X509_NAME_ENTRY_get_object.pod" - ], - "doc/html/man3/X509_NAME_add_entry_by_txt.html" => [ - "doc/man3/X509_NAME_add_entry_by_txt.pod" - ], - "doc/html/man3/X509_NAME_get0_der.html" => [ - "doc/man3/X509_NAME_get0_der.pod" - ], - "doc/html/man3/X509_NAME_get_index_by_NID.html" => [ - "doc/man3/X509_NAME_get_index_by_NID.pod" - ], - "doc/html/man3/X509_NAME_print_ex.html" => [ - "doc/man3/X509_NAME_print_ex.pod" - ], - "doc/html/man3/X509_PUBKEY_new.html" => [ - "doc/man3/X509_PUBKEY_new.pod" - ], - "doc/html/man3/X509_REQ_get_attr.html" => [ - "doc/man3/X509_REQ_get_attr.pod" - ], - "doc/html/man3/X509_REQ_get_extensions.html" => [ - "doc/man3/X509_REQ_get_extensions.pod" - ], - "doc/html/man3/X509_SIG_get0.html" => [ - "doc/man3/X509_SIG_get0.pod" - ], - "doc/html/man3/X509_STORE_CTX_get_by_subject.html" => [ - "doc/man3/X509_STORE_CTX_get_by_subject.pod" - ], - "doc/html/man3/X509_STORE_CTX_get_error.html" => [ - "doc/man3/X509_STORE_CTX_get_error.pod" - ], - "doc/html/man3/X509_STORE_CTX_new.html" => [ - "doc/man3/X509_STORE_CTX_new.pod" - ], - "doc/html/man3/X509_STORE_CTX_set_verify_cb.html" => [ - "doc/man3/X509_STORE_CTX_set_verify_cb.pod" - ], - "doc/html/man3/X509_STORE_add_cert.html" => [ - "doc/man3/X509_STORE_add_cert.pod" - ], - "doc/html/man3/X509_STORE_get0_param.html" => [ - "doc/man3/X509_STORE_get0_param.pod" - ], - "doc/html/man3/X509_STORE_new.html" => [ - "doc/man3/X509_STORE_new.pod" - ], - "doc/html/man3/X509_STORE_set_verify_cb_func.html" => [ - "doc/man3/X509_STORE_set_verify_cb_func.pod" - ], - "doc/html/man3/X509_VERIFY_PARAM_set_flags.html" => [ - "doc/man3/X509_VERIFY_PARAM_set_flags.pod" - ], - "doc/html/man3/X509_add_cert.html" => [ - "doc/man3/X509_add_cert.pod" - ], - "doc/html/man3/X509_check_ca.html" => [ - "doc/man3/X509_check_ca.pod" - ], - "doc/html/man3/X509_check_host.html" => [ - "doc/man3/X509_check_host.pod" - ], - "doc/html/man3/X509_check_issued.html" => [ - "doc/man3/X509_check_issued.pod" - ], - "doc/html/man3/X509_check_private_key.html" => [ - "doc/man3/X509_check_private_key.pod" - ], - "doc/html/man3/X509_check_purpose.html" => [ - "doc/man3/X509_check_purpose.pod" - ], - "doc/html/man3/X509_cmp.html" => [ - "doc/man3/X509_cmp.pod" - ], - "doc/html/man3/X509_cmp_time.html" => [ - "doc/man3/X509_cmp_time.pod" - ], - "doc/html/man3/X509_digest.html" => [ - "doc/man3/X509_digest.pod" - ], - "doc/html/man3/X509_dup.html" => [ - "doc/man3/X509_dup.pod" - ], - "doc/html/man3/X509_get0_distinguishing_id.html" => [ - "doc/man3/X509_get0_distinguishing_id.pod" - ], - "doc/html/man3/X509_get0_notBefore.html" => [ - "doc/man3/X509_get0_notBefore.pod" - ], - "doc/html/man3/X509_get0_signature.html" => [ - "doc/man3/X509_get0_signature.pod" - ], - "doc/html/man3/X509_get0_uids.html" => [ - "doc/man3/X509_get0_uids.pod" - ], - "doc/html/man3/X509_get_default_cert_file.html" => [ - "doc/man3/X509_get_default_cert_file.pod" - ], - "doc/html/man3/X509_get_extension_flags.html" => [ - "doc/man3/X509_get_extension_flags.pod" - ], - "doc/html/man3/X509_get_pubkey.html" => [ - "doc/man3/X509_get_pubkey.pod" - ], - "doc/html/man3/X509_get_serialNumber.html" => [ - "doc/man3/X509_get_serialNumber.pod" - ], - "doc/html/man3/X509_get_subject_name.html" => [ - "doc/man3/X509_get_subject_name.pod" - ], - "doc/html/man3/X509_get_version.html" => [ - "doc/man3/X509_get_version.pod" - ], - "doc/html/man3/X509_load_http.html" => [ - "doc/man3/X509_load_http.pod" - ], - "doc/html/man3/X509_new.html" => [ - "doc/man3/X509_new.pod" - ], - "doc/html/man3/X509_sign.html" => [ - "doc/man3/X509_sign.pod" - ], - "doc/html/man3/X509_verify.html" => [ - "doc/man3/X509_verify.pod" - ], - "doc/html/man3/X509_verify_cert.html" => [ - "doc/man3/X509_verify_cert.pod" - ], - "doc/html/man3/X509v3_get_ext_by_NID.html" => [ - "doc/man3/X509v3_get_ext_by_NID.pod" - ], - "doc/html/man3/b2i_PVK_bio_ex.html" => [ - "doc/man3/b2i_PVK_bio_ex.pod" - ], - "doc/html/man3/d2i_PKCS8PrivateKey_bio.html" => [ - "doc/man3/d2i_PKCS8PrivateKey_bio.pod" - ], - "doc/html/man3/d2i_PrivateKey.html" => [ - "doc/man3/d2i_PrivateKey.pod" - ], - "doc/html/man3/d2i_RSAPrivateKey.html" => [ - "doc/man3/d2i_RSAPrivateKey.pod" - ], - "doc/html/man3/d2i_SSL_SESSION.html" => [ - "doc/man3/d2i_SSL_SESSION.pod" - ], - "doc/html/man3/d2i_X509.html" => [ - "doc/man3/d2i_X509.pod" - ], - "doc/html/man3/i2d_CMS_bio_stream.html" => [ - "doc/man3/i2d_CMS_bio_stream.pod" - ], - "doc/html/man3/i2d_PKCS7_bio_stream.html" => [ - "doc/man3/i2d_PKCS7_bio_stream.pod" - ], - "doc/html/man3/i2d_re_X509_tbs.html" => [ - "doc/man3/i2d_re_X509_tbs.pod" - ], - "doc/html/man3/o2i_SCT_LIST.html" => [ - "doc/man3/o2i_SCT_LIST.pod" - ], - "doc/html/man3/s2i_ASN1_IA5STRING.html" => [ - "doc/man3/s2i_ASN1_IA5STRING.pod" - ], - "doc/html/man5/config.html" => [ - "doc/man5/config.pod" - ], - "doc/html/man5/fips_config.html" => [ - "doc/man5/fips_config.pod" - ], - "doc/html/man5/x509v3_config.html" => [ - "doc/man5/x509v3_config.pod" - ], - "doc/html/man7/EVP_ASYM_CIPHER-RSA.html" => [ - "doc/man7/EVP_ASYM_CIPHER-RSA.pod" - ], - "doc/html/man7/EVP_ASYM_CIPHER-SM2.html" => [ - "doc/man7/EVP_ASYM_CIPHER-SM2.pod" - ], - "doc/html/man7/EVP_CIPHER-AES.html" => [ - "doc/man7/EVP_CIPHER-AES.pod" - ], - "doc/html/man7/EVP_CIPHER-ARIA.html" => [ - "doc/man7/EVP_CIPHER-ARIA.pod" - ], - "doc/html/man7/EVP_CIPHER-BLOWFISH.html" => [ - "doc/man7/EVP_CIPHER-BLOWFISH.pod" - ], - "doc/html/man7/EVP_CIPHER-CAMELLIA.html" => [ - "doc/man7/EVP_CIPHER-CAMELLIA.pod" - ], - "doc/html/man7/EVP_CIPHER-CAST.html" => [ - "doc/man7/EVP_CIPHER-CAST.pod" - ], - "doc/html/man7/EVP_CIPHER-CHACHA.html" => [ - "doc/man7/EVP_CIPHER-CHACHA.pod" - ], - "doc/html/man7/EVP_CIPHER-DES.html" => [ - "doc/man7/EVP_CIPHER-DES.pod" - ], - "doc/html/man7/EVP_CIPHER-IDEA.html" => [ - "doc/man7/EVP_CIPHER-IDEA.pod" - ], - "doc/html/man7/EVP_CIPHER-NULL.html" => [ - "doc/man7/EVP_CIPHER-NULL.pod" - ], - "doc/html/man7/EVP_CIPHER-RC2.html" => [ - "doc/man7/EVP_CIPHER-RC2.pod" - ], - "doc/html/man7/EVP_CIPHER-RC4.html" => [ - "doc/man7/EVP_CIPHER-RC4.pod" - ], - "doc/html/man7/EVP_CIPHER-RC5.html" => [ - "doc/man7/EVP_CIPHER-RC5.pod" - ], - "doc/html/man7/EVP_CIPHER-SEED.html" => [ - "doc/man7/EVP_CIPHER-SEED.pod" - ], - "doc/html/man7/EVP_CIPHER-SM4.html" => [ - "doc/man7/EVP_CIPHER-SM4.pod" - ], - "doc/html/man7/EVP_KDF-ARGON2.html" => [ - "doc/man7/EVP_KDF-ARGON2.pod" - ], - "doc/html/man7/EVP_KDF-HKDF.html" => [ - "doc/man7/EVP_KDF-HKDF.pod" - ], - "doc/html/man7/EVP_KDF-HMAC-DRBG.html" => [ - "doc/man7/EVP_KDF-HMAC-DRBG.pod" - ], - "doc/html/man7/EVP_KDF-KB.html" => [ - "doc/man7/EVP_KDF-KB.pod" - ], - "doc/html/man7/EVP_KDF-KRB5KDF.html" => [ - "doc/man7/EVP_KDF-KRB5KDF.pod" - ], - "doc/html/man7/EVP_KDF-PBKDF1.html" => [ - "doc/man7/EVP_KDF-PBKDF1.pod" - ], - "doc/html/man7/EVP_KDF-PBKDF2.html" => [ - "doc/man7/EVP_KDF-PBKDF2.pod" - ], - "doc/html/man7/EVP_KDF-PKCS12KDF.html" => [ - "doc/man7/EVP_KDF-PKCS12KDF.pod" - ], - "doc/html/man7/EVP_KDF-PVKKDF.html" => [ - "doc/man7/EVP_KDF-PVKKDF.pod" - ], - "doc/html/man7/EVP_KDF-SCRYPT.html" => [ - "doc/man7/EVP_KDF-SCRYPT.pod" - ], - "doc/html/man7/EVP_KDF-SS.html" => [ - "doc/man7/EVP_KDF-SS.pod" - ], - "doc/html/man7/EVP_KDF-SSHKDF.html" => [ - "doc/man7/EVP_KDF-SSHKDF.pod" - ], - "doc/html/man7/EVP_KDF-TLS13_KDF.html" => [ - "doc/man7/EVP_KDF-TLS13_KDF.pod" - ], - "doc/html/man7/EVP_KDF-TLS1_PRF.html" => [ - "doc/man7/EVP_KDF-TLS1_PRF.pod" - ], - "doc/html/man7/EVP_KDF-X942-ASN1.html" => [ - "doc/man7/EVP_KDF-X942-ASN1.pod" - ], - "doc/html/man7/EVP_KDF-X942-CONCAT.html" => [ - "doc/man7/EVP_KDF-X942-CONCAT.pod" - ], - "doc/html/man7/EVP_KDF-X963.html" => [ - "doc/man7/EVP_KDF-X963.pod" - ], - "doc/html/man7/EVP_KEM-EC.html" => [ - "doc/man7/EVP_KEM-EC.pod" - ], - "doc/html/man7/EVP_KEM-ML-KEM.html" => [ - "doc/man7/EVP_KEM-ML-KEM.pod" - ], - "doc/html/man7/EVP_KEM-RSA.html" => [ - "doc/man7/EVP_KEM-RSA.pod" - ], - "doc/html/man7/EVP_KEM-X25519.html" => [ - "doc/man7/EVP_KEM-X25519.pod" - ], - "doc/html/man7/EVP_KEYEXCH-DH.html" => [ - "doc/man7/EVP_KEYEXCH-DH.pod" - ], - "doc/html/man7/EVP_KEYEXCH-ECDH.html" => [ - "doc/man7/EVP_KEYEXCH-ECDH.pod" - ], - "doc/html/man7/EVP_KEYEXCH-X25519.html" => [ - "doc/man7/EVP_KEYEXCH-X25519.pod" - ], - "doc/html/man7/EVP_MAC-BLAKE2.html" => [ - "doc/man7/EVP_MAC-BLAKE2.pod" - ], - "doc/html/man7/EVP_MAC-CMAC.html" => [ - "doc/man7/EVP_MAC-CMAC.pod" - ], - "doc/html/man7/EVP_MAC-GMAC.html" => [ - "doc/man7/EVP_MAC-GMAC.pod" - ], - "doc/html/man7/EVP_MAC-HMAC.html" => [ - "doc/man7/EVP_MAC-HMAC.pod" - ], - "doc/html/man7/EVP_MAC-KMAC.html" => [ - "doc/man7/EVP_MAC-KMAC.pod" - ], - "doc/html/man7/EVP_MAC-Poly1305.html" => [ - "doc/man7/EVP_MAC-Poly1305.pod" - ], - "doc/html/man7/EVP_MAC-Siphash.html" => [ - "doc/man7/EVP_MAC-Siphash.pod" - ], - "doc/html/man7/EVP_MD-BLAKE2.html" => [ - "doc/man7/EVP_MD-BLAKE2.pod" - ], - "doc/html/man7/EVP_MD-KECCAK.html" => [ - "doc/man7/EVP_MD-KECCAK.pod" - ], - "doc/html/man7/EVP_MD-MD2.html" => [ - "doc/man7/EVP_MD-MD2.pod" - ], - "doc/html/man7/EVP_MD-MD4.html" => [ - "doc/man7/EVP_MD-MD4.pod" - ], - "doc/html/man7/EVP_MD-MD5-SHA1.html" => [ - "doc/man7/EVP_MD-MD5-SHA1.pod" - ], - "doc/html/man7/EVP_MD-MD5.html" => [ - "doc/man7/EVP_MD-MD5.pod" - ], - "doc/html/man7/EVP_MD-MDC2.html" => [ - "doc/man7/EVP_MD-MDC2.pod" - ], - "doc/html/man7/EVP_MD-NULL.html" => [ - "doc/man7/EVP_MD-NULL.pod" - ], - "doc/html/man7/EVP_MD-RIPEMD160.html" => [ - "doc/man7/EVP_MD-RIPEMD160.pod" - ], - "doc/html/man7/EVP_MD-SHA1.html" => [ - "doc/man7/EVP_MD-SHA1.pod" - ], - "doc/html/man7/EVP_MD-SHA2.html" => [ - "doc/man7/EVP_MD-SHA2.pod" - ], - "doc/html/man7/EVP_MD-SHA3.html" => [ - "doc/man7/EVP_MD-SHA3.pod" - ], - "doc/html/man7/EVP_MD-SHAKE.html" => [ - "doc/man7/EVP_MD-SHAKE.pod" - ], - "doc/html/man7/EVP_MD-SM3.html" => [ - "doc/man7/EVP_MD-SM3.pod" - ], - "doc/html/man7/EVP_MD-WHIRLPOOL.html" => [ - "doc/man7/EVP_MD-WHIRLPOOL.pod" - ], - "doc/html/man7/EVP_MD-common.html" => [ - "doc/man7/EVP_MD-common.pod" - ], - "doc/html/man7/EVP_PKEY-DH.html" => [ - "doc/man7/EVP_PKEY-DH.pod" - ], - "doc/html/man7/EVP_PKEY-DSA.html" => [ - "doc/man7/EVP_PKEY-DSA.pod" - ], - "doc/html/man7/EVP_PKEY-EC.html" => [ - "doc/man7/EVP_PKEY-EC.pod" - ], - "doc/html/man7/EVP_PKEY-FFC.html" => [ - "doc/man7/EVP_PKEY-FFC.pod" - ], - "doc/html/man7/EVP_PKEY-HMAC.html" => [ - "doc/man7/EVP_PKEY-HMAC.pod" - ], - "doc/html/man7/EVP_PKEY-ML-DSA.html" => [ - "doc/man7/EVP_PKEY-ML-DSA.pod" - ], - "doc/html/man7/EVP_PKEY-ML-KEM.html" => [ - "doc/man7/EVP_PKEY-ML-KEM.pod" - ], - "doc/html/man7/EVP_PKEY-RSA.html" => [ - "doc/man7/EVP_PKEY-RSA.pod" - ], - "doc/html/man7/EVP_PKEY-SLH-DSA.html" => [ - "doc/man7/EVP_PKEY-SLH-DSA.pod" - ], - "doc/html/man7/EVP_PKEY-SM2.html" => [ - "doc/man7/EVP_PKEY-SM2.pod" - ], - "doc/html/man7/EVP_PKEY-X25519.html" => [ - "doc/man7/EVP_PKEY-X25519.pod" - ], - "doc/html/man7/EVP_RAND-CRNG-TEST.html" => [ - "doc/man7/EVP_RAND-CRNG-TEST.pod" - ], - "doc/html/man7/EVP_RAND-CTR-DRBG.html" => [ - "doc/man7/EVP_RAND-CTR-DRBG.pod" - ], - "doc/html/man7/EVP_RAND-HASH-DRBG.html" => [ - "doc/man7/EVP_RAND-HASH-DRBG.pod" - ], - "doc/html/man7/EVP_RAND-HMAC-DRBG.html" => [ - "doc/man7/EVP_RAND-HMAC-DRBG.pod" - ], - "doc/html/man7/EVP_RAND-JITTER.html" => [ - "doc/man7/EVP_RAND-JITTER.pod" - ], - "doc/html/man7/EVP_RAND-SEED-SRC.html" => [ - "doc/man7/EVP_RAND-SEED-SRC.pod" - ], - "doc/html/man7/EVP_RAND-TEST-RAND.html" => [ - "doc/man7/EVP_RAND-TEST-RAND.pod" - ], - "doc/html/man7/EVP_RAND.html" => [ - "doc/man7/EVP_RAND.pod" - ], - "doc/html/man7/EVP_SIGNATURE-DSA.html" => [ - "doc/man7/EVP_SIGNATURE-DSA.pod" - ], - "doc/html/man7/EVP_SIGNATURE-ECDSA.html" => [ - "doc/man7/EVP_SIGNATURE-ECDSA.pod" - ], - "doc/html/man7/EVP_SIGNATURE-ED25519.html" => [ - "doc/man7/EVP_SIGNATURE-ED25519.pod" - ], - "doc/html/man7/EVP_SIGNATURE-HMAC.html" => [ - "doc/man7/EVP_SIGNATURE-HMAC.pod" - ], - "doc/html/man7/EVP_SIGNATURE-ML-DSA.html" => [ - "doc/man7/EVP_SIGNATURE-ML-DSA.pod" - ], - "doc/html/man7/EVP_SIGNATURE-RSA.html" => [ - "doc/man7/EVP_SIGNATURE-RSA.pod" - ], - "doc/html/man7/EVP_SIGNATURE-SLH-DSA.html" => [ - "doc/man7/EVP_SIGNATURE-SLH-DSA.pod" - ], - "doc/html/man7/OSSL_PROVIDER-FIPS.html" => [ - "doc/man7/OSSL_PROVIDER-FIPS.pod" - ], - "doc/html/man7/OSSL_PROVIDER-base.html" => [ - "doc/man7/OSSL_PROVIDER-base.pod" - ], - "doc/html/man7/OSSL_PROVIDER-default.html" => [ - "doc/man7/OSSL_PROVIDER-default.pod" - ], - "doc/html/man7/OSSL_PROVIDER-legacy.html" => [ - "doc/man7/OSSL_PROVIDER-legacy.pod" - ], - "doc/html/man7/OSSL_PROVIDER-null.html" => [ - "doc/man7/OSSL_PROVIDER-null.pod" - ], - "doc/html/man7/OSSL_STORE-winstore.html" => [ - "doc/man7/OSSL_STORE-winstore.pod" - ], - "doc/html/man7/RAND.html" => [ - "doc/man7/RAND.pod" - ], - "doc/html/man7/RSA-PSS.html" => [ - "doc/man7/RSA-PSS.pod" - ], - "doc/html/man7/X25519.html" => [ - "doc/man7/X25519.pod" - ], - "doc/html/man7/bio.html" => [ - "doc/man7/bio.pod" - ], - "doc/html/man7/ct.html" => [ - "doc/man7/ct.pod" - ], - "doc/html/man7/des_modes.html" => [ - "doc/man7/des_modes.pod" - ], - "doc/html/man7/evp.html" => [ - "doc/man7/evp.pod" - ], - "doc/html/man7/fips_module.html" => [ - "doc/man7/fips_module.pod" - ], - "doc/html/man7/life_cycle-cipher.html" => [ - "doc/man7/life_cycle-cipher.pod" - ], - "doc/html/man7/life_cycle-digest.html" => [ - "doc/man7/life_cycle-digest.pod" - ], - "doc/html/man7/life_cycle-kdf.html" => [ - "doc/man7/life_cycle-kdf.pod" - ], - "doc/html/man7/life_cycle-mac.html" => [ - "doc/man7/life_cycle-mac.pod" - ], - "doc/html/man7/life_cycle-pkey.html" => [ - "doc/man7/life_cycle-pkey.pod" - ], - "doc/html/man7/life_cycle-rand.html" => [ - "doc/man7/life_cycle-rand.pod" - ], - "doc/html/man7/openssl-core.h.html" => [ - "doc/man7/openssl-core.h.pod" - ], - "doc/html/man7/openssl-core_dispatch.h.html" => [ - "doc/man7/openssl-core_dispatch.h.pod" - ], - "doc/html/man7/openssl-core_names.h.html" => [ - "doc/man7/openssl-core_names.h.pod" - ], - "doc/html/man7/openssl-env.html" => [ - "doc/man7/openssl-env.pod" - ], - "doc/html/man7/openssl-glossary.html" => [ - "doc/man7/openssl-glossary.pod" - ], - "doc/html/man7/openssl-qlog.html" => [ - "doc/man7/openssl-qlog.pod" - ], - "doc/html/man7/openssl-quic-concurrency.html" => [ - "doc/man7/openssl-quic-concurrency.pod" - ], - "doc/html/man7/openssl-quic.html" => [ - "doc/man7/openssl-quic.pod" - ], - "doc/html/man7/openssl-threads.html" => [ - "doc/man7/openssl-threads.pod" - ], - "doc/html/man7/openssl_user_macros.html" => [ - "doc/man7/openssl_user_macros.pod" - ], - "doc/html/man7/ossl-guide-introduction.html" => [ - "doc/man7/ossl-guide-introduction.pod" - ], - "doc/html/man7/ossl-guide-libcrypto-introduction.html" => [ - "doc/man7/ossl-guide-libcrypto-introduction.pod" - ], - "doc/html/man7/ossl-guide-libraries-introduction.html" => [ - "doc/man7/ossl-guide-libraries-introduction.pod" - ], - "doc/html/man7/ossl-guide-libssl-introduction.html" => [ - "doc/man7/ossl-guide-libssl-introduction.pod" - ], - "doc/html/man7/ossl-guide-migration.html" => [ - "doc/man7/ossl-guide-migration.pod" - ], - "doc/html/man7/ossl-guide-quic-client-block.html" => [ - "doc/man7/ossl-guide-quic-client-block.pod" - ], - "doc/html/man7/ossl-guide-quic-client-non-block.html" => [ - "doc/man7/ossl-guide-quic-client-non-block.pod" - ], - "doc/html/man7/ossl-guide-quic-introduction.html" => [ - "doc/man7/ossl-guide-quic-introduction.pod" - ], - "doc/html/man7/ossl-guide-quic-multi-stream.html" => [ - "doc/man7/ossl-guide-quic-multi-stream.pod" - ], - "doc/html/man7/ossl-guide-quic-server-block.html" => [ - "doc/man7/ossl-guide-quic-server-block.pod" - ], - "doc/html/man7/ossl-guide-quic-server-non-block.html" => [ - "doc/man7/ossl-guide-quic-server-non-block.pod" - ], - "doc/html/man7/ossl-guide-tls-client-block.html" => [ - "doc/man7/ossl-guide-tls-client-block.pod" - ], - "doc/html/man7/ossl-guide-tls-client-non-block.html" => [ - "doc/man7/ossl-guide-tls-client-non-block.pod" - ], - "doc/html/man7/ossl-guide-tls-introduction.html" => [ - "doc/man7/ossl-guide-tls-introduction.pod" - ], - "doc/html/man7/ossl-guide-tls-server-block.html" => [ - "doc/man7/ossl-guide-tls-server-block.pod" - ], - "doc/html/man7/ossl_store-file.html" => [ - "doc/man7/ossl_store-file.pod" - ], - "doc/html/man7/ossl_store.html" => [ - "doc/man7/ossl_store.pod" - ], - "doc/html/man7/passphrase-encoding.html" => [ - "doc/man7/passphrase-encoding.pod" - ], - "doc/html/man7/property.html" => [ - "doc/man7/property.pod" - ], - "doc/html/man7/provider-asym_cipher.html" => [ - "doc/man7/provider-asym_cipher.pod" - ], - "doc/html/man7/provider-base.html" => [ - "doc/man7/provider-base.pod" - ], - "doc/html/man7/provider-cipher.html" => [ - "doc/man7/provider-cipher.pod" - ], - "doc/html/man7/provider-decoder.html" => [ - "doc/man7/provider-decoder.pod" - ], - "doc/html/man7/provider-digest.html" => [ - "doc/man7/provider-digest.pod" - ], - "doc/html/man7/provider-encoder.html" => [ - "doc/man7/provider-encoder.pod" - ], - "doc/html/man7/provider-kdf.html" => [ - "doc/man7/provider-kdf.pod" - ], - "doc/html/man7/provider-kem.html" => [ - "doc/man7/provider-kem.pod" - ], - "doc/html/man7/provider-keyexch.html" => [ - "doc/man7/provider-keyexch.pod" - ], - "doc/html/man7/provider-keymgmt.html" => [ - "doc/man7/provider-keymgmt.pod" - ], - "doc/html/man7/provider-mac.html" => [ - "doc/man7/provider-mac.pod" - ], - "doc/html/man7/provider-object.html" => [ - "doc/man7/provider-object.pod" - ], - "doc/html/man7/provider-rand.html" => [ - "doc/man7/provider-rand.pod" - ], - "doc/html/man7/provider-signature.html" => [ - "doc/man7/provider-signature.pod" - ], - "doc/html/man7/provider-skeymgmt.html" => [ - "doc/man7/provider-skeymgmt.pod" - ], - "doc/html/man7/provider-storemgmt.html" => [ - "doc/man7/provider-storemgmt.pod" - ], - "doc/html/man7/provider.html" => [ - "doc/man7/provider.pod" - ], - "doc/html/man7/proxy-certificates.html" => [ - "doc/man7/proxy-certificates.pod" - ], - "doc/html/man7/x509.html" => [ - "doc/man7/x509.pod" - ], - "doc/man/man1/CA.pl.1" => [ - "doc/man1/CA.pl.pod" - ], - "doc/man/man1/openssl-asn1parse.1" => [ - "doc/man1/openssl-asn1parse.pod" - ], - "doc/man/man1/openssl-ca.1" => [ - "doc/man1/openssl-ca.pod" - ], - "doc/man/man1/openssl-ciphers.1" => [ - "doc/man1/openssl-ciphers.pod" - ], - "doc/man/man1/openssl-cmds.1" => [ - "doc/man1/openssl-cmds.pod" - ], - "doc/man/man1/openssl-cmp.1" => [ - "doc/man1/openssl-cmp.pod" - ], - "doc/man/man1/openssl-cms.1" => [ - "doc/man1/openssl-cms.pod" - ], - "doc/man/man1/openssl-crl.1" => [ - "doc/man1/openssl-crl.pod" - ], - "doc/man/man1/openssl-crl2pkcs7.1" => [ - "doc/man1/openssl-crl2pkcs7.pod" - ], - "doc/man/man1/openssl-dgst.1" => [ - "doc/man1/openssl-dgst.pod" - ], - "doc/man/man1/openssl-dhparam.1" => [ - "doc/man1/openssl-dhparam.pod" - ], - "doc/man/man1/openssl-dsa.1" => [ - "doc/man1/openssl-dsa.pod" - ], - "doc/man/man1/openssl-dsaparam.1" => [ - "doc/man1/openssl-dsaparam.pod" - ], - "doc/man/man1/openssl-ec.1" => [ - "doc/man1/openssl-ec.pod" - ], - "doc/man/man1/openssl-ecparam.1" => [ - "doc/man1/openssl-ecparam.pod" - ], - "doc/man/man1/openssl-enc.1" => [ - "doc/man1/openssl-enc.pod" - ], - "doc/man/man1/openssl-engine.1" => [ - "doc/man1/openssl-engine.pod" - ], - "doc/man/man1/openssl-errstr.1" => [ - "doc/man1/openssl-errstr.pod" - ], - "doc/man/man1/openssl-fipsinstall.1" => [ - "doc/man1/openssl-fipsinstall.pod" - ], - "doc/man/man1/openssl-format-options.1" => [ - "doc/man1/openssl-format-options.pod" - ], - "doc/man/man1/openssl-gendsa.1" => [ - "doc/man1/openssl-gendsa.pod" - ], - "doc/man/man1/openssl-genpkey.1" => [ - "doc/man1/openssl-genpkey.pod" - ], - "doc/man/man1/openssl-genrsa.1" => [ - "doc/man1/openssl-genrsa.pod" - ], - "doc/man/man1/openssl-info.1" => [ - "doc/man1/openssl-info.pod" - ], - "doc/man/man1/openssl-kdf.1" => [ - "doc/man1/openssl-kdf.pod" - ], - "doc/man/man1/openssl-list.1" => [ - "doc/man1/openssl-list.pod" - ], - "doc/man/man1/openssl-mac.1" => [ - "doc/man1/openssl-mac.pod" - ], - "doc/man/man1/openssl-namedisplay-options.1" => [ - "doc/man1/openssl-namedisplay-options.pod" - ], - "doc/man/man1/openssl-nseq.1" => [ - "doc/man1/openssl-nseq.pod" - ], - "doc/man/man1/openssl-ocsp.1" => [ - "doc/man1/openssl-ocsp.pod" - ], - "doc/man/man1/openssl-passphrase-options.1" => [ - "doc/man1/openssl-passphrase-options.pod" - ], - "doc/man/man1/openssl-passwd.1" => [ - "doc/man1/openssl-passwd.pod" - ], - "doc/man/man1/openssl-pkcs12.1" => [ - "doc/man1/openssl-pkcs12.pod" - ], - "doc/man/man1/openssl-pkcs7.1" => [ - "doc/man1/openssl-pkcs7.pod" - ], - "doc/man/man1/openssl-pkcs8.1" => [ - "doc/man1/openssl-pkcs8.pod" - ], - "doc/man/man1/openssl-pkey.1" => [ - "doc/man1/openssl-pkey.pod" - ], - "doc/man/man1/openssl-pkeyparam.1" => [ - "doc/man1/openssl-pkeyparam.pod" - ], - "doc/man/man1/openssl-pkeyutl.1" => [ - "doc/man1/openssl-pkeyutl.pod" - ], - "doc/man/man1/openssl-prime.1" => [ - "doc/man1/openssl-prime.pod" - ], - "doc/man/man1/openssl-rand.1" => [ - "doc/man1/openssl-rand.pod" - ], - "doc/man/man1/openssl-rehash.1" => [ - "doc/man1/openssl-rehash.pod" - ], - "doc/man/man1/openssl-req.1" => [ - "doc/man1/openssl-req.pod" - ], - "doc/man/man1/openssl-rsa.1" => [ - "doc/man1/openssl-rsa.pod" - ], - "doc/man/man1/openssl-rsautl.1" => [ - "doc/man1/openssl-rsautl.pod" - ], - "doc/man/man1/openssl-s_client.1" => [ - "doc/man1/openssl-s_client.pod" - ], - "doc/man/man1/openssl-s_server.1" => [ - "doc/man1/openssl-s_server.pod" - ], - "doc/man/man1/openssl-s_time.1" => [ - "doc/man1/openssl-s_time.pod" - ], - "doc/man/man1/openssl-sess_id.1" => [ - "doc/man1/openssl-sess_id.pod" - ], - "doc/man/man1/openssl-skeyutl.1" => [ - "doc/man1/openssl-skeyutl.pod" - ], - "doc/man/man1/openssl-smime.1" => [ - "doc/man1/openssl-smime.pod" - ], - "doc/man/man1/openssl-speed.1" => [ - "doc/man1/openssl-speed.pod" - ], - "doc/man/man1/openssl-spkac.1" => [ - "doc/man1/openssl-spkac.pod" - ], - "doc/man/man1/openssl-srp.1" => [ - "doc/man1/openssl-srp.pod" - ], - "doc/man/man1/openssl-storeutl.1" => [ - "doc/man1/openssl-storeutl.pod" - ], - "doc/man/man1/openssl-ts.1" => [ - "doc/man1/openssl-ts.pod" - ], - "doc/man/man1/openssl-verification-options.1" => [ - "doc/man1/openssl-verification-options.pod" - ], - "doc/man/man1/openssl-verify.1" => [ - "doc/man1/openssl-verify.pod" - ], - "doc/man/man1/openssl-version.1" => [ - "doc/man1/openssl-version.pod" - ], - "doc/man/man1/openssl-x509.1" => [ - "doc/man1/openssl-x509.pod" - ], - "doc/man/man1/openssl.1" => [ - "doc/man1/openssl.pod" - ], - "doc/man/man1/tsget.1" => [ - "doc/man1/tsget.pod" - ], - "doc/man/man3/ADMISSIONS.3" => [ - "doc/man3/ADMISSIONS.pod" - ], - "doc/man/man3/ASN1_EXTERN_FUNCS.3" => [ - "doc/man3/ASN1_EXTERN_FUNCS.pod" - ], - "doc/man/man3/ASN1_INTEGER_get_int64.3" => [ - "doc/man3/ASN1_INTEGER_get_int64.pod" - ], - "doc/man/man3/ASN1_INTEGER_new.3" => [ - "doc/man3/ASN1_INTEGER_new.pod" - ], - "doc/man/man3/ASN1_ITEM_lookup.3" => [ - "doc/man3/ASN1_ITEM_lookup.pod" - ], - "doc/man/man3/ASN1_OBJECT_new.3" => [ - "doc/man3/ASN1_OBJECT_new.pod" - ], - "doc/man/man3/ASN1_STRING_TABLE_add.3" => [ - "doc/man3/ASN1_STRING_TABLE_add.pod" - ], - "doc/man/man3/ASN1_STRING_length.3" => [ - "doc/man3/ASN1_STRING_length.pod" - ], - "doc/man/man3/ASN1_STRING_new.3" => [ - "doc/man3/ASN1_STRING_new.pod" - ], - "doc/man/man3/ASN1_STRING_print_ex.3" => [ - "doc/man3/ASN1_STRING_print_ex.pod" - ], - "doc/man/man3/ASN1_TIME_set.3" => [ - "doc/man3/ASN1_TIME_set.pod" - ], - "doc/man/man3/ASN1_TYPE_get.3" => [ - "doc/man3/ASN1_TYPE_get.pod" - ], - "doc/man/man3/ASN1_aux_cb.3" => [ - "doc/man3/ASN1_aux_cb.pod" - ], - "doc/man/man3/ASN1_generate_nconf.3" => [ - "doc/man3/ASN1_generate_nconf.pod" - ], - "doc/man/man3/ASN1_item_d2i_bio.3" => [ - "doc/man3/ASN1_item_d2i_bio.pod" - ], - "doc/man/man3/ASN1_item_new.3" => [ - "doc/man3/ASN1_item_new.pod" - ], - "doc/man/man3/ASN1_item_sign.3" => [ - "doc/man3/ASN1_item_sign.pod" - ], - "doc/man/man3/ASYNC_WAIT_CTX_new.3" => [ - "doc/man3/ASYNC_WAIT_CTX_new.pod" - ], - "doc/man/man3/ASYNC_start_job.3" => [ - "doc/man3/ASYNC_start_job.pod" - ], - "doc/man/man3/BF_encrypt.3" => [ - "doc/man3/BF_encrypt.pod" - ], - "doc/man/man3/BIO_ADDR.3" => [ - "doc/man3/BIO_ADDR.pod" - ], - "doc/man/man3/BIO_ADDRINFO.3" => [ - "doc/man3/BIO_ADDRINFO.pod" - ], - "doc/man/man3/BIO_connect.3" => [ - "doc/man3/BIO_connect.pod" - ], - "doc/man/man3/BIO_ctrl.3" => [ - "doc/man3/BIO_ctrl.pod" - ], - "doc/man/man3/BIO_f_base64.3" => [ - "doc/man3/BIO_f_base64.pod" - ], - "doc/man/man3/BIO_f_buffer.3" => [ - "doc/man3/BIO_f_buffer.pod" - ], - "doc/man/man3/BIO_f_cipher.3" => [ - "doc/man3/BIO_f_cipher.pod" - ], - "doc/man/man3/BIO_f_md.3" => [ - "doc/man3/BIO_f_md.pod" - ], - "doc/man/man3/BIO_f_null.3" => [ - "doc/man3/BIO_f_null.pod" - ], - "doc/man/man3/BIO_f_prefix.3" => [ - "doc/man3/BIO_f_prefix.pod" - ], - "doc/man/man3/BIO_f_readbuffer.3" => [ - "doc/man3/BIO_f_readbuffer.pod" - ], - "doc/man/man3/BIO_f_ssl.3" => [ - "doc/man3/BIO_f_ssl.pod" - ], - "doc/man/man3/BIO_find_type.3" => [ - "doc/man3/BIO_find_type.pod" - ], - "doc/man/man3/BIO_get_data.3" => [ - "doc/man3/BIO_get_data.pod" - ], - "doc/man/man3/BIO_get_ex_new_index.3" => [ - "doc/man3/BIO_get_ex_new_index.pod" - ], - "doc/man/man3/BIO_get_rpoll_descriptor.3" => [ - "doc/man3/BIO_get_rpoll_descriptor.pod" - ], - "doc/man/man3/BIO_meth_new.3" => [ - "doc/man3/BIO_meth_new.pod" - ], - "doc/man/man3/BIO_new.3" => [ - "doc/man3/BIO_new.pod" - ], - "doc/man/man3/BIO_new_CMS.3" => [ - "doc/man3/BIO_new_CMS.pod" - ], - "doc/man/man3/BIO_parse_hostserv.3" => [ - "doc/man3/BIO_parse_hostserv.pod" - ], - "doc/man/man3/BIO_printf.3" => [ - "doc/man3/BIO_printf.pod" - ], - "doc/man/man3/BIO_push.3" => [ - "doc/man3/BIO_push.pod" - ], - "doc/man/man3/BIO_read.3" => [ - "doc/man3/BIO_read.pod" - ], - "doc/man/man3/BIO_s_accept.3" => [ - "doc/man3/BIO_s_accept.pod" - ], - "doc/man/man3/BIO_s_bio.3" => [ - "doc/man3/BIO_s_bio.pod" - ], - "doc/man/man3/BIO_s_connect.3" => [ - "doc/man3/BIO_s_connect.pod" - ], - "doc/man/man3/BIO_s_core.3" => [ - "doc/man3/BIO_s_core.pod" - ], - "doc/man/man3/BIO_s_datagram.3" => [ - "doc/man3/BIO_s_datagram.pod" - ], - "doc/man/man3/BIO_s_dgram_pair.3" => [ - "doc/man3/BIO_s_dgram_pair.pod" - ], - "doc/man/man3/BIO_s_fd.3" => [ - "doc/man3/BIO_s_fd.pod" - ], - "doc/man/man3/BIO_s_file.3" => [ - "doc/man3/BIO_s_file.pod" - ], - "doc/man/man3/BIO_s_mem.3" => [ - "doc/man3/BIO_s_mem.pod" - ], - "doc/man/man3/BIO_s_null.3" => [ - "doc/man3/BIO_s_null.pod" - ], - "doc/man/man3/BIO_s_socket.3" => [ - "doc/man3/BIO_s_socket.pod" - ], - "doc/man/man3/BIO_sendmmsg.3" => [ - "doc/man3/BIO_sendmmsg.pod" - ], - "doc/man/man3/BIO_set_callback.3" => [ - "doc/man3/BIO_set_callback.pod" - ], - "doc/man/man3/BIO_should_retry.3" => [ - "doc/man3/BIO_should_retry.pod" - ], - "doc/man/man3/BIO_socket_wait.3" => [ - "doc/man3/BIO_socket_wait.pod" - ], - "doc/man/man3/BN_BLINDING_new.3" => [ - "doc/man3/BN_BLINDING_new.pod" - ], - "doc/man/man3/BN_CTX_new.3" => [ - "doc/man3/BN_CTX_new.pod" - ], - "doc/man/man3/BN_CTX_start.3" => [ - "doc/man3/BN_CTX_start.pod" - ], - "doc/man/man3/BN_add.3" => [ - "doc/man3/BN_add.pod" - ], - "doc/man/man3/BN_add_word.3" => [ - "doc/man3/BN_add_word.pod" - ], - "doc/man/man3/BN_bn2bin.3" => [ - "doc/man3/BN_bn2bin.pod" - ], - "doc/man/man3/BN_cmp.3" => [ - "doc/man3/BN_cmp.pod" - ], - "doc/man/man3/BN_copy.3" => [ - "doc/man3/BN_copy.pod" - ], - "doc/man/man3/BN_generate_prime.3" => [ - "doc/man3/BN_generate_prime.pod" - ], - "doc/man/man3/BN_mod_exp_mont.3" => [ - "doc/man3/BN_mod_exp_mont.pod" - ], - "doc/man/man3/BN_mod_inverse.3" => [ - "doc/man3/BN_mod_inverse.pod" - ], - "doc/man/man3/BN_mod_mul_montgomery.3" => [ - "doc/man3/BN_mod_mul_montgomery.pod" - ], - "doc/man/man3/BN_mod_mul_reciprocal.3" => [ - "doc/man3/BN_mod_mul_reciprocal.pod" - ], - "doc/man/man3/BN_new.3" => [ - "doc/man3/BN_new.pod" - ], - "doc/man/man3/BN_num_bytes.3" => [ - "doc/man3/BN_num_bytes.pod" - ], - "doc/man/man3/BN_rand.3" => [ - "doc/man3/BN_rand.pod" - ], - "doc/man/man3/BN_security_bits.3" => [ - "doc/man3/BN_security_bits.pod" - ], - "doc/man/man3/BN_set_bit.3" => [ - "doc/man3/BN_set_bit.pod" - ], - "doc/man/man3/BN_swap.3" => [ - "doc/man3/BN_swap.pod" - ], - "doc/man/man3/BN_zero.3" => [ - "doc/man3/BN_zero.pod" - ], - "doc/man/man3/BUF_MEM_new.3" => [ - "doc/man3/BUF_MEM_new.pod" - ], - "doc/man/man3/CMAC_CTX.3" => [ - "doc/man3/CMAC_CTX.pod" - ], - "doc/man/man3/CMS_EncryptedData_decrypt.3" => [ - "doc/man3/CMS_EncryptedData_decrypt.pod" - ], - "doc/man/man3/CMS_EncryptedData_encrypt.3" => [ - "doc/man3/CMS_EncryptedData_encrypt.pod" - ], - "doc/man/man3/CMS_EnvelopedData_create.3" => [ - "doc/man3/CMS_EnvelopedData_create.pod" - ], - "doc/man/man3/CMS_add0_cert.3" => [ - "doc/man3/CMS_add0_cert.pod" - ], - "doc/man/man3/CMS_add1_recipient_cert.3" => [ - "doc/man3/CMS_add1_recipient_cert.pod" - ], - "doc/man/man3/CMS_add1_signer.3" => [ - "doc/man3/CMS_add1_signer.pod" - ], - "doc/man/man3/CMS_compress.3" => [ - "doc/man3/CMS_compress.pod" - ], - "doc/man/man3/CMS_data_create.3" => [ - "doc/man3/CMS_data_create.pod" - ], - "doc/man/man3/CMS_decrypt.3" => [ - "doc/man3/CMS_decrypt.pod" - ], - "doc/man/man3/CMS_digest_create.3" => [ - "doc/man3/CMS_digest_create.pod" - ], - "doc/man/man3/CMS_encrypt.3" => [ - "doc/man3/CMS_encrypt.pod" - ], - "doc/man/man3/CMS_final.3" => [ - "doc/man3/CMS_final.pod" - ], - "doc/man/man3/CMS_get0_RecipientInfos.3" => [ - "doc/man3/CMS_get0_RecipientInfos.pod" - ], - "doc/man/man3/CMS_get0_SignerInfos.3" => [ - "doc/man3/CMS_get0_SignerInfos.pod" - ], - "doc/man/man3/CMS_get0_type.3" => [ - "doc/man3/CMS_get0_type.pod" - ], - "doc/man/man3/CMS_get1_ReceiptRequest.3" => [ - "doc/man3/CMS_get1_ReceiptRequest.pod" - ], - "doc/man/man3/CMS_sign.3" => [ - "doc/man3/CMS_sign.pod" - ], - "doc/man/man3/CMS_sign_receipt.3" => [ - "doc/man3/CMS_sign_receipt.pod" - ], - "doc/man/man3/CMS_signed_get_attr.3" => [ - "doc/man3/CMS_signed_get_attr.pod" - ], - "doc/man/man3/CMS_uncompress.3" => [ - "doc/man3/CMS_uncompress.pod" - ], - "doc/man/man3/CMS_verify.3" => [ - "doc/man3/CMS_verify.pod" - ], - "doc/man/man3/CMS_verify_receipt.3" => [ - "doc/man3/CMS_verify_receipt.pod" - ], - "doc/man/man3/COMP_CTX_new.3" => [ - "doc/man3/COMP_CTX_new.pod" - ], - "doc/man/man3/CONF_modules_free.3" => [ - "doc/man3/CONF_modules_free.pod" - ], - "doc/man/man3/CONF_modules_load_file.3" => [ - "doc/man3/CONF_modules_load_file.pod" - ], - "doc/man/man3/CRYPTO_THREAD_run_once.3" => [ - "doc/man3/CRYPTO_THREAD_run_once.pod" - ], - "doc/man/man3/CRYPTO_get_ex_new_index.3" => [ - "doc/man3/CRYPTO_get_ex_new_index.pod" - ], - "doc/man/man3/CRYPTO_memcmp.3" => [ - "doc/man3/CRYPTO_memcmp.pod" - ], - "doc/man/man3/CTLOG_STORE_get0_log_by_id.3" => [ - "doc/man3/CTLOG_STORE_get0_log_by_id.pod" - ], - "doc/man/man3/CTLOG_STORE_new.3" => [ - "doc/man3/CTLOG_STORE_new.pod" - ], - "doc/man/man3/CTLOG_new.3" => [ - "doc/man3/CTLOG_new.pod" - ], - "doc/man/man3/CT_POLICY_EVAL_CTX_new.3" => [ - "doc/man3/CT_POLICY_EVAL_CTX_new.pod" - ], - "doc/man/man3/DEFINE_STACK_OF.3" => [ - "doc/man3/DEFINE_STACK_OF.pod" - ], - "doc/man/man3/DES_random_key.3" => [ - "doc/man3/DES_random_key.pod" - ], - "doc/man/man3/DH_generate_key.3" => [ - "doc/man3/DH_generate_key.pod" - ], - "doc/man/man3/DH_generate_parameters.3" => [ - "doc/man3/DH_generate_parameters.pod" - ], - "doc/man/man3/DH_get0_pqg.3" => [ - "doc/man3/DH_get0_pqg.pod" - ], - "doc/man/man3/DH_get_1024_160.3" => [ - "doc/man3/DH_get_1024_160.pod" - ], - "doc/man/man3/DH_meth_new.3" => [ - "doc/man3/DH_meth_new.pod" - ], - "doc/man/man3/DH_new.3" => [ - "doc/man3/DH_new.pod" - ], - "doc/man/man3/DH_new_by_nid.3" => [ - "doc/man3/DH_new_by_nid.pod" - ], - "doc/man/man3/DH_set_method.3" => [ - "doc/man3/DH_set_method.pod" - ], - "doc/man/man3/DH_size.3" => [ - "doc/man3/DH_size.pod" - ], - "doc/man/man3/DSA_SIG_new.3" => [ - "doc/man3/DSA_SIG_new.pod" - ], - "doc/man/man3/DSA_do_sign.3" => [ - "doc/man3/DSA_do_sign.pod" - ], - "doc/man/man3/DSA_dup_DH.3" => [ - "doc/man3/DSA_dup_DH.pod" - ], - "doc/man/man3/DSA_generate_key.3" => [ - "doc/man3/DSA_generate_key.pod" - ], - "doc/man/man3/DSA_generate_parameters.3" => [ - "doc/man3/DSA_generate_parameters.pod" - ], - "doc/man/man3/DSA_get0_pqg.3" => [ - "doc/man3/DSA_get0_pqg.pod" - ], - "doc/man/man3/DSA_meth_new.3" => [ - "doc/man3/DSA_meth_new.pod" - ], - "doc/man/man3/DSA_new.3" => [ - "doc/man3/DSA_new.pod" - ], - "doc/man/man3/DSA_set_method.3" => [ - "doc/man3/DSA_set_method.pod" - ], - "doc/man/man3/DSA_sign.3" => [ - "doc/man3/DSA_sign.pod" - ], - "doc/man/man3/DSA_size.3" => [ - "doc/man3/DSA_size.pod" - ], - "doc/man/man3/DTLS_get_data_mtu.3" => [ - "doc/man3/DTLS_get_data_mtu.pod" - ], - "doc/man/man3/DTLS_set_timer_cb.3" => [ - "doc/man3/DTLS_set_timer_cb.pod" - ], - "doc/man/man3/DTLSv1_get_timeout.3" => [ - "doc/man3/DTLSv1_get_timeout.pod" - ], - "doc/man/man3/DTLSv1_handle_timeout.3" => [ - "doc/man3/DTLSv1_handle_timeout.pod" - ], - "doc/man/man3/DTLSv1_listen.3" => [ - "doc/man3/DTLSv1_listen.pod" - ], - "doc/man/man3/ECDSA_SIG_new.3" => [ - "doc/man3/ECDSA_SIG_new.pod" - ], - "doc/man/man3/ECDSA_sign.3" => [ - "doc/man3/ECDSA_sign.pod" - ], - "doc/man/man3/ECPKParameters_print.3" => [ - "doc/man3/ECPKParameters_print.pod" - ], - "doc/man/man3/EC_GFp_simple_method.3" => [ - "doc/man3/EC_GFp_simple_method.pod" - ], - "doc/man/man3/EC_GROUP_copy.3" => [ - "doc/man3/EC_GROUP_copy.pod" - ], - "doc/man/man3/EC_GROUP_new.3" => [ - "doc/man3/EC_GROUP_new.pod" - ], - "doc/man/man3/EC_KEY_get_enc_flags.3" => [ - "doc/man3/EC_KEY_get_enc_flags.pod" - ], - "doc/man/man3/EC_KEY_new.3" => [ - "doc/man3/EC_KEY_new.pod" - ], - "doc/man/man3/EC_POINT_add.3" => [ - "doc/man3/EC_POINT_add.pod" - ], - "doc/man/man3/EC_POINT_new.3" => [ - "doc/man3/EC_POINT_new.pod" - ], - "doc/man/man3/ENGINE_add.3" => [ - "doc/man3/ENGINE_add.pod" - ], - "doc/man/man3/ERR_GET_LIB.3" => [ - "doc/man3/ERR_GET_LIB.pod" - ], - "doc/man/man3/ERR_clear_error.3" => [ - "doc/man3/ERR_clear_error.pod" - ], - "doc/man/man3/ERR_error_string.3" => [ - "doc/man3/ERR_error_string.pod" - ], - "doc/man/man3/ERR_get_error.3" => [ - "doc/man3/ERR_get_error.pod" - ], - "doc/man/man3/ERR_load_crypto_strings.3" => [ - "doc/man3/ERR_load_crypto_strings.pod" - ], - "doc/man/man3/ERR_load_strings.3" => [ - "doc/man3/ERR_load_strings.pod" - ], - "doc/man/man3/ERR_new.3" => [ - "doc/man3/ERR_new.pod" - ], - "doc/man/man3/ERR_print_errors.3" => [ - "doc/man3/ERR_print_errors.pod" - ], - "doc/man/man3/ERR_put_error.3" => [ - "doc/man3/ERR_put_error.pod" - ], - "doc/man/man3/ERR_remove_state.3" => [ - "doc/man3/ERR_remove_state.pod" - ], - "doc/man/man3/ERR_set_mark.3" => [ - "doc/man3/ERR_set_mark.pod" - ], - "doc/man/man3/EVP_ASYM_CIPHER_free.3" => [ - "doc/man3/EVP_ASYM_CIPHER_free.pod" - ], - "doc/man/man3/EVP_BytesToKey.3" => [ - "doc/man3/EVP_BytesToKey.pod" - ], - "doc/man/man3/EVP_CIPHER_CTX_get_cipher_data.3" => [ - "doc/man3/EVP_CIPHER_CTX_get_cipher_data.pod" - ], - "doc/man/man3/EVP_CIPHER_CTX_get_original_iv.3" => [ - "doc/man3/EVP_CIPHER_CTX_get_original_iv.pod" - ], - "doc/man/man3/EVP_CIPHER_meth_new.3" => [ - "doc/man3/EVP_CIPHER_meth_new.pod" - ], - "doc/man/man3/EVP_DigestInit.3" => [ - "doc/man3/EVP_DigestInit.pod" - ], - "doc/man/man3/EVP_DigestSignInit.3" => [ - "doc/man3/EVP_DigestSignInit.pod" - ], - "doc/man/man3/EVP_DigestVerifyInit.3" => [ - "doc/man3/EVP_DigestVerifyInit.pod" - ], - "doc/man/man3/EVP_EncodeInit.3" => [ - "doc/man3/EVP_EncodeInit.pod" - ], - "doc/man/man3/EVP_EncryptInit.3" => [ - "doc/man3/EVP_EncryptInit.pod" - ], - "doc/man/man3/EVP_KDF.3" => [ - "doc/man3/EVP_KDF.pod" - ], - "doc/man/man3/EVP_KEM_free.3" => [ - "doc/man3/EVP_KEM_free.pod" - ], - "doc/man/man3/EVP_KEYEXCH_free.3" => [ - "doc/man3/EVP_KEYEXCH_free.pod" - ], - "doc/man/man3/EVP_KEYMGMT.3" => [ - "doc/man3/EVP_KEYMGMT.pod" - ], - "doc/man/man3/EVP_MAC.3" => [ - "doc/man3/EVP_MAC.pod" - ], - "doc/man/man3/EVP_MD_meth_new.3" => [ - "doc/man3/EVP_MD_meth_new.pod" - ], - "doc/man/man3/EVP_OpenInit.3" => [ - "doc/man3/EVP_OpenInit.pod" - ], - "doc/man/man3/EVP_PBE_CipherInit.3" => [ - "doc/man3/EVP_PBE_CipherInit.pod" - ], - "doc/man/man3/EVP_PKEY2PKCS8.3" => [ - "doc/man3/EVP_PKEY2PKCS8.pod" - ], - "doc/man/man3/EVP_PKEY_ASN1_METHOD.3" => [ - "doc/man3/EVP_PKEY_ASN1_METHOD.pod" - ], - "doc/man/man3/EVP_PKEY_CTX_ctrl.3" => [ - "doc/man3/EVP_PKEY_CTX_ctrl.pod" - ], - "doc/man/man3/EVP_PKEY_CTX_get0_libctx.3" => [ - "doc/man3/EVP_PKEY_CTX_get0_libctx.pod" - ], - "doc/man/man3/EVP_PKEY_CTX_get0_pkey.3" => [ - "doc/man3/EVP_PKEY_CTX_get0_pkey.pod" - ], - "doc/man/man3/EVP_PKEY_CTX_get_algor.3" => [ - "doc/man3/EVP_PKEY_CTX_get_algor.pod" - ], - "doc/man/man3/EVP_PKEY_CTX_new.3" => [ - "doc/man3/EVP_PKEY_CTX_new.pod" - ], - "doc/man/man3/EVP_PKEY_CTX_set1_pbe_pass.3" => [ - "doc/man3/EVP_PKEY_CTX_set1_pbe_pass.pod" - ], - "doc/man/man3/EVP_PKEY_CTX_set_hkdf_md.3" => [ - "doc/man3/EVP_PKEY_CTX_set_hkdf_md.pod" - ], - "doc/man/man3/EVP_PKEY_CTX_set_params.3" => [ - "doc/man3/EVP_PKEY_CTX_set_params.pod" - ], - "doc/man/man3/EVP_PKEY_CTX_set_rsa_pss_keygen_md.3" => [ - "doc/man3/EVP_PKEY_CTX_set_rsa_pss_keygen_md.pod" - ], - "doc/man/man3/EVP_PKEY_CTX_set_scrypt_N.3" => [ - "doc/man3/EVP_PKEY_CTX_set_scrypt_N.pod" - ], - "doc/man/man3/EVP_PKEY_CTX_set_tls1_prf_md.3" => [ - "doc/man3/EVP_PKEY_CTX_set_tls1_prf_md.pod" - ], - "doc/man/man3/EVP_PKEY_asn1_get_count.3" => [ - "doc/man3/EVP_PKEY_asn1_get_count.pod" - ], - "doc/man/man3/EVP_PKEY_check.3" => [ - "doc/man3/EVP_PKEY_check.pod" - ], - "doc/man/man3/EVP_PKEY_copy_parameters.3" => [ - "doc/man3/EVP_PKEY_copy_parameters.pod" - ], - "doc/man/man3/EVP_PKEY_decapsulate.3" => [ - "doc/man3/EVP_PKEY_decapsulate.pod" - ], - "doc/man/man3/EVP_PKEY_decrypt.3" => [ - "doc/man3/EVP_PKEY_decrypt.pod" - ], - "doc/man/man3/EVP_PKEY_derive.3" => [ - "doc/man3/EVP_PKEY_derive.pod" - ], - "doc/man/man3/EVP_PKEY_digestsign_supports_digest.3" => [ - "doc/man3/EVP_PKEY_digestsign_supports_digest.pod" - ], - "doc/man/man3/EVP_PKEY_encapsulate.3" => [ - "doc/man3/EVP_PKEY_encapsulate.pod" - ], - "doc/man/man3/EVP_PKEY_encrypt.3" => [ - "doc/man3/EVP_PKEY_encrypt.pod" - ], - "doc/man/man3/EVP_PKEY_fromdata.3" => [ - "doc/man3/EVP_PKEY_fromdata.pod" - ], - "doc/man/man3/EVP_PKEY_get_attr.3" => [ - "doc/man3/EVP_PKEY_get_attr.pod" - ], - "doc/man/man3/EVP_PKEY_get_default_digest_nid.3" => [ - "doc/man3/EVP_PKEY_get_default_digest_nid.pod" - ], - "doc/man/man3/EVP_PKEY_get_field_type.3" => [ - "doc/man3/EVP_PKEY_get_field_type.pod" - ], - "doc/man/man3/EVP_PKEY_get_group_name.3" => [ - "doc/man3/EVP_PKEY_get_group_name.pod" - ], - "doc/man/man3/EVP_PKEY_get_size.3" => [ - "doc/man3/EVP_PKEY_get_size.pod" - ], - "doc/man/man3/EVP_PKEY_gettable_params.3" => [ - "doc/man3/EVP_PKEY_gettable_params.pod" - ], - "doc/man/man3/EVP_PKEY_is_a.3" => [ - "doc/man3/EVP_PKEY_is_a.pod" - ], - "doc/man/man3/EVP_PKEY_keygen.3" => [ - "doc/man3/EVP_PKEY_keygen.pod" - ], - "doc/man/man3/EVP_PKEY_meth_get_count.3" => [ - "doc/man3/EVP_PKEY_meth_get_count.pod" - ], - "doc/man/man3/EVP_PKEY_meth_new.3" => [ - "doc/man3/EVP_PKEY_meth_new.pod" - ], - "doc/man/man3/EVP_PKEY_new.3" => [ - "doc/man3/EVP_PKEY_new.pod" - ], - "doc/man/man3/EVP_PKEY_print_private.3" => [ - "doc/man3/EVP_PKEY_print_private.pod" - ], - "doc/man/man3/EVP_PKEY_set1_RSA.3" => [ - "doc/man3/EVP_PKEY_set1_RSA.pod" - ], - "doc/man/man3/EVP_PKEY_set1_encoded_public_key.3" => [ - "doc/man3/EVP_PKEY_set1_encoded_public_key.pod" - ], - "doc/man/man3/EVP_PKEY_set_type.3" => [ - "doc/man3/EVP_PKEY_set_type.pod" - ], - "doc/man/man3/EVP_PKEY_settable_params.3" => [ - "doc/man3/EVP_PKEY_settable_params.pod" - ], - "doc/man/man3/EVP_PKEY_sign.3" => [ - "doc/man3/EVP_PKEY_sign.pod" - ], - "doc/man/man3/EVP_PKEY_todata.3" => [ - "doc/man3/EVP_PKEY_todata.pod" - ], - "doc/man/man3/EVP_PKEY_verify.3" => [ - "doc/man3/EVP_PKEY_verify.pod" - ], - "doc/man/man3/EVP_PKEY_verify_recover.3" => [ - "doc/man3/EVP_PKEY_verify_recover.pod" - ], - "doc/man/man3/EVP_RAND.3" => [ - "doc/man3/EVP_RAND.pod" - ], - "doc/man/man3/EVP_SIGNATURE.3" => [ - "doc/man3/EVP_SIGNATURE.pod" - ], - "doc/man/man3/EVP_SKEY.3" => [ - "doc/man3/EVP_SKEY.pod" - ], - "doc/man/man3/EVP_SKEYMGMT.3" => [ - "doc/man3/EVP_SKEYMGMT.pod" - ], - "doc/man/man3/EVP_SealInit.3" => [ - "doc/man3/EVP_SealInit.pod" - ], - "doc/man/man3/EVP_SignInit.3" => [ - "doc/man3/EVP_SignInit.pod" - ], - "doc/man/man3/EVP_VerifyInit.3" => [ - "doc/man3/EVP_VerifyInit.pod" - ], - "doc/man/man3/EVP_aes_128_gcm.3" => [ - "doc/man3/EVP_aes_128_gcm.pod" - ], - "doc/man/man3/EVP_aria_128_gcm.3" => [ - "doc/man3/EVP_aria_128_gcm.pod" - ], - "doc/man/man3/EVP_bf_cbc.3" => [ - "doc/man3/EVP_bf_cbc.pod" - ], - "doc/man/man3/EVP_blake2b512.3" => [ - "doc/man3/EVP_blake2b512.pod" - ], - "doc/man/man3/EVP_camellia_128_ecb.3" => [ - "doc/man3/EVP_camellia_128_ecb.pod" - ], - "doc/man/man3/EVP_cast5_cbc.3" => [ - "doc/man3/EVP_cast5_cbc.pod" - ], - "doc/man/man3/EVP_chacha20.3" => [ - "doc/man3/EVP_chacha20.pod" - ], - "doc/man/man3/EVP_des_cbc.3" => [ - "doc/man3/EVP_des_cbc.pod" - ], - "doc/man/man3/EVP_desx_cbc.3" => [ - "doc/man3/EVP_desx_cbc.pod" - ], - "doc/man/man3/EVP_idea_cbc.3" => [ - "doc/man3/EVP_idea_cbc.pod" - ], - "doc/man/man3/EVP_md2.3" => [ - "doc/man3/EVP_md2.pod" - ], - "doc/man/man3/EVP_md4.3" => [ - "doc/man3/EVP_md4.pod" - ], - "doc/man/man3/EVP_md5.3" => [ - "doc/man3/EVP_md5.pod" - ], - "doc/man/man3/EVP_mdc2.3" => [ - "doc/man3/EVP_mdc2.pod" - ], - "doc/man/man3/EVP_rc2_cbc.3" => [ - "doc/man3/EVP_rc2_cbc.pod" - ], - "doc/man/man3/EVP_rc4.3" => [ - "doc/man3/EVP_rc4.pod" - ], - "doc/man/man3/EVP_rc5_32_12_16_cbc.3" => [ - "doc/man3/EVP_rc5_32_12_16_cbc.pod" - ], - "doc/man/man3/EVP_ripemd160.3" => [ - "doc/man3/EVP_ripemd160.pod" - ], - "doc/man/man3/EVP_seed_cbc.3" => [ - "doc/man3/EVP_seed_cbc.pod" - ], - "doc/man/man3/EVP_set_default_properties.3" => [ - "doc/man3/EVP_set_default_properties.pod" - ], - "doc/man/man3/EVP_sha1.3" => [ - "doc/man3/EVP_sha1.pod" - ], - "doc/man/man3/EVP_sha224.3" => [ - "doc/man3/EVP_sha224.pod" - ], - "doc/man/man3/EVP_sha3_224.3" => [ - "doc/man3/EVP_sha3_224.pod" - ], - "doc/man/man3/EVP_sm3.3" => [ - "doc/man3/EVP_sm3.pod" - ], - "doc/man/man3/EVP_sm4_cbc.3" => [ - "doc/man3/EVP_sm4_cbc.pod" - ], - "doc/man/man3/EVP_whirlpool.3" => [ - "doc/man3/EVP_whirlpool.pod" - ], - "doc/man/man3/GENERAL_NAME.3" => [ - "doc/man3/GENERAL_NAME.pod" - ], - "doc/man/man3/HMAC.3" => [ - "doc/man3/HMAC.pod" - ], - "doc/man/man3/MD5.3" => [ - "doc/man3/MD5.pod" - ], - "doc/man/man3/MDC2_Init.3" => [ - "doc/man3/MDC2_Init.pod" - ], - "doc/man/man3/NCONF_new_ex.3" => [ - "doc/man3/NCONF_new_ex.pod" - ], - "doc/man/man3/OBJ_nid2obj.3" => [ - "doc/man3/OBJ_nid2obj.pod" - ], - "doc/man/man3/OCSP_REQUEST_new.3" => [ - "doc/man3/OCSP_REQUEST_new.pod" - ], - "doc/man/man3/OCSP_cert_to_id.3" => [ - "doc/man3/OCSP_cert_to_id.pod" - ], - "doc/man/man3/OCSP_request_add1_nonce.3" => [ - "doc/man3/OCSP_request_add1_nonce.pod" - ], - "doc/man/man3/OCSP_resp_find_status.3" => [ - "doc/man3/OCSP_resp_find_status.pod" - ], - "doc/man/man3/OCSP_response_status.3" => [ - "doc/man3/OCSP_response_status.pod" - ], - "doc/man/man3/OCSP_sendreq_new.3" => [ - "doc/man3/OCSP_sendreq_new.pod" - ], - "doc/man/man3/OPENSSL_Applink.3" => [ - "doc/man3/OPENSSL_Applink.pod" - ], - "doc/man/man3/OPENSSL_FILE.3" => [ - "doc/man3/OPENSSL_FILE.pod" - ], - "doc/man/man3/OPENSSL_LH_COMPFUNC.3" => [ - "doc/man3/OPENSSL_LH_COMPFUNC.pod" - ], - "doc/man/man3/OPENSSL_LH_stats.3" => [ - "doc/man3/OPENSSL_LH_stats.pod" - ], - "doc/man/man3/OPENSSL_config.3" => [ - "doc/man3/OPENSSL_config.pod" - ], - "doc/man/man3/OPENSSL_fork_prepare.3" => [ - "doc/man3/OPENSSL_fork_prepare.pod" - ], - "doc/man/man3/OPENSSL_gmtime.3" => [ - "doc/man3/OPENSSL_gmtime.pod" - ], - "doc/man/man3/OPENSSL_hexchar2int.3" => [ - "doc/man3/OPENSSL_hexchar2int.pod" - ], - "doc/man/man3/OPENSSL_ia32cap.3" => [ - "doc/man3/OPENSSL_ia32cap.pod" - ], - "doc/man/man3/OPENSSL_init_crypto.3" => [ - "doc/man3/OPENSSL_init_crypto.pod" - ], - "doc/man/man3/OPENSSL_init_ssl.3" => [ - "doc/man3/OPENSSL_init_ssl.pod" - ], - "doc/man/man3/OPENSSL_instrument_bus.3" => [ - "doc/man3/OPENSSL_instrument_bus.pod" - ], - "doc/man/man3/OPENSSL_load_builtin_modules.3" => [ - "doc/man3/OPENSSL_load_builtin_modules.pod" - ], - "doc/man/man3/OPENSSL_load_u16_le.3" => [ - "doc/man3/OPENSSL_load_u16_le.pod" - ], - "doc/man/man3/OPENSSL_malloc.3" => [ - "doc/man3/OPENSSL_malloc.pod" - ], - "doc/man/man3/OPENSSL_riscvcap.3" => [ - "doc/man3/OPENSSL_riscvcap.pod" - ], - "doc/man/man3/OPENSSL_s390xcap.3" => [ - "doc/man3/OPENSSL_s390xcap.pod" - ], - "doc/man/man3/OPENSSL_secure_malloc.3" => [ - "doc/man3/OPENSSL_secure_malloc.pod" - ], - "doc/man/man3/OPENSSL_strcasecmp.3" => [ - "doc/man3/OPENSSL_strcasecmp.pod" - ], - "doc/man/man3/OSSL_ALGORITHM.3" => [ - "doc/man3/OSSL_ALGORITHM.pod" - ], - "doc/man/man3/OSSL_CALLBACK.3" => [ - "doc/man3/OSSL_CALLBACK.pod" - ], - "doc/man/man3/OSSL_CMP_ATAV_set0.3" => [ - "doc/man3/OSSL_CMP_ATAV_set0.pod" - ], - "doc/man/man3/OSSL_CMP_CTX_new.3" => [ - "doc/man3/OSSL_CMP_CTX_new.pod" - ], - "doc/man/man3/OSSL_CMP_HDR_get0_transactionID.3" => [ - "doc/man3/OSSL_CMP_HDR_get0_transactionID.pod" - ], - "doc/man/man3/OSSL_CMP_ITAV_new_caCerts.3" => [ - "doc/man3/OSSL_CMP_ITAV_new_caCerts.pod" - ], - "doc/man/man3/OSSL_CMP_ITAV_set0.3" => [ - "doc/man3/OSSL_CMP_ITAV_set0.pod" - ], - "doc/man/man3/OSSL_CMP_MSG_get0_header.3" => [ - "doc/man3/OSSL_CMP_MSG_get0_header.pod" - ], - "doc/man/man3/OSSL_CMP_MSG_http_perform.3" => [ - "doc/man3/OSSL_CMP_MSG_http_perform.pod" - ], - "doc/man/man3/OSSL_CMP_SRV_CTX_new.3" => [ - "doc/man3/OSSL_CMP_SRV_CTX_new.pod" - ], - "doc/man/man3/OSSL_CMP_STATUSINFO_new.3" => [ - "doc/man3/OSSL_CMP_STATUSINFO_new.pod" - ], - "doc/man/man3/OSSL_CMP_exec_certreq.3" => [ - "doc/man3/OSSL_CMP_exec_certreq.pod" - ], - "doc/man/man3/OSSL_CMP_log_open.3" => [ - "doc/man3/OSSL_CMP_log_open.pod" - ], - "doc/man/man3/OSSL_CMP_validate_msg.3" => [ - "doc/man3/OSSL_CMP_validate_msg.pod" - ], - "doc/man/man3/OSSL_CORE_MAKE_FUNC.3" => [ - "doc/man3/OSSL_CORE_MAKE_FUNC.pod" - ], - "doc/man/man3/OSSL_CRMF_MSG_get0_tmpl.3" => [ - "doc/man3/OSSL_CRMF_MSG_get0_tmpl.pod" - ], - "doc/man/man3/OSSL_CRMF_MSG_set0_validity.3" => [ - "doc/man3/OSSL_CRMF_MSG_set0_validity.pod" - ], - "doc/man/man3/OSSL_CRMF_MSG_set1_regCtrl_regToken.3" => [ - "doc/man3/OSSL_CRMF_MSG_set1_regCtrl_regToken.pod" - ], - "doc/man/man3/OSSL_CRMF_MSG_set1_regInfo_certReq.3" => [ - "doc/man3/OSSL_CRMF_MSG_set1_regInfo_certReq.pod" - ], - "doc/man/man3/OSSL_CRMF_pbmp_new.3" => [ - "doc/man3/OSSL_CRMF_pbmp_new.pod" - ], - "doc/man/man3/OSSL_DECODER.3" => [ - "doc/man3/OSSL_DECODER.pod" - ], - "doc/man/man3/OSSL_DECODER_CTX.3" => [ - "doc/man3/OSSL_DECODER_CTX.pod" - ], - "doc/man/man3/OSSL_DECODER_CTX_new_for_pkey.3" => [ - "doc/man3/OSSL_DECODER_CTX_new_for_pkey.pod" - ], - "doc/man/man3/OSSL_DECODER_from_bio.3" => [ - "doc/man3/OSSL_DECODER_from_bio.pod" - ], - "doc/man/man3/OSSL_DISPATCH.3" => [ - "doc/man3/OSSL_DISPATCH.pod" - ], - "doc/man/man3/OSSL_ENCODER.3" => [ - "doc/man3/OSSL_ENCODER.pod" - ], - "doc/man/man3/OSSL_ENCODER_CTX.3" => [ - "doc/man3/OSSL_ENCODER_CTX.pod" - ], - "doc/man/man3/OSSL_ENCODER_CTX_new_for_pkey.3" => [ - "doc/man3/OSSL_ENCODER_CTX_new_for_pkey.pod" - ], - "doc/man/man3/OSSL_ENCODER_to_bio.3" => [ - "doc/man3/OSSL_ENCODER_to_bio.pod" - ], - "doc/man/man3/OSSL_ERR_STATE_save.3" => [ - "doc/man3/OSSL_ERR_STATE_save.pod" - ], - "doc/man/man3/OSSL_ESS_check_signing_certs.3" => [ - "doc/man3/OSSL_ESS_check_signing_certs.pod" - ], - "doc/man/man3/OSSL_GENERAL_NAMES_print.3" => [ - "doc/man3/OSSL_GENERAL_NAMES_print.pod" - ], - "doc/man/man3/OSSL_HPKE_CTX_new.3" => [ - "doc/man3/OSSL_HPKE_CTX_new.pod" - ], - "doc/man/man3/OSSL_HTTP_REQ_CTX.3" => [ - "doc/man3/OSSL_HTTP_REQ_CTX.pod" - ], - "doc/man/man3/OSSL_HTTP_parse_url.3" => [ - "doc/man3/OSSL_HTTP_parse_url.pod" - ], - "doc/man/man3/OSSL_HTTP_transfer.3" => [ - "doc/man3/OSSL_HTTP_transfer.pod" - ], - "doc/man/man3/OSSL_IETF_ATTR_SYNTAX.3" => [ - "doc/man3/OSSL_IETF_ATTR_SYNTAX.pod" - ], - "doc/man/man3/OSSL_IETF_ATTR_SYNTAX_print.3" => [ - "doc/man3/OSSL_IETF_ATTR_SYNTAX_print.pod" - ], - "doc/man/man3/OSSL_INDICATOR_set_callback.3" => [ - "doc/man3/OSSL_INDICATOR_set_callback.pod" - ], - "doc/man/man3/OSSL_ITEM.3" => [ - "doc/man3/OSSL_ITEM.pod" - ], - "doc/man/man3/OSSL_LIB_CTX.3" => [ - "doc/man3/OSSL_LIB_CTX.pod" - ], - "doc/man/man3/OSSL_LIB_CTX_set_conf_diagnostics.3" => [ - "doc/man3/OSSL_LIB_CTX_set_conf_diagnostics.pod" - ], - "doc/man/man3/OSSL_PARAM.3" => [ - "doc/man3/OSSL_PARAM.pod" - ], - "doc/man/man3/OSSL_PARAM_BLD.3" => [ - "doc/man3/OSSL_PARAM_BLD.pod" - ], - "doc/man/man3/OSSL_PARAM_allocate_from_text.3" => [ - "doc/man3/OSSL_PARAM_allocate_from_text.pod" - ], - "doc/man/man3/OSSL_PARAM_dup.3" => [ - "doc/man3/OSSL_PARAM_dup.pod" - ], - "doc/man/man3/OSSL_PARAM_int.3" => [ - "doc/man3/OSSL_PARAM_int.pod" - ], - "doc/man/man3/OSSL_PARAM_print_to_bio.3" => [ - "doc/man3/OSSL_PARAM_print_to_bio.pod" - ], - "doc/man/man3/OSSL_PROVIDER.3" => [ - "doc/man3/OSSL_PROVIDER.pod" - ], - "doc/man/man3/OSSL_QUIC_client_method.3" => [ - "doc/man3/OSSL_QUIC_client_method.pod" - ], - "doc/man/man3/OSSL_SELF_TEST_new.3" => [ - "doc/man3/OSSL_SELF_TEST_new.pod" - ], - "doc/man/man3/OSSL_SELF_TEST_set_callback.3" => [ - "doc/man3/OSSL_SELF_TEST_set_callback.pod" - ], - "doc/man/man3/OSSL_STORE_INFO.3" => [ - "doc/man3/OSSL_STORE_INFO.pod" - ], - "doc/man/man3/OSSL_STORE_LOADER.3" => [ - "doc/man3/OSSL_STORE_LOADER.pod" - ], - "doc/man/man3/OSSL_STORE_SEARCH.3" => [ - "doc/man3/OSSL_STORE_SEARCH.pod" - ], - "doc/man/man3/OSSL_STORE_attach.3" => [ - "doc/man3/OSSL_STORE_attach.pod" - ], - "doc/man/man3/OSSL_STORE_expect.3" => [ - "doc/man3/OSSL_STORE_expect.pod" - ], - "doc/man/man3/OSSL_STORE_open.3" => [ - "doc/man3/OSSL_STORE_open.pod" - ], - "doc/man/man3/OSSL_sleep.3" => [ - "doc/man3/OSSL_sleep.pod" - ], - "doc/man/man3/OSSL_trace_enabled.3" => [ - "doc/man3/OSSL_trace_enabled.pod" - ], - "doc/man/man3/OSSL_trace_get_category_num.3" => [ - "doc/man3/OSSL_trace_get_category_num.pod" - ], - "doc/man/man3/OSSL_trace_set_channel.3" => [ - "doc/man3/OSSL_trace_set_channel.pod" - ], - "doc/man/man3/OpenSSL_add_all_algorithms.3" => [ - "doc/man3/OpenSSL_add_all_algorithms.pod" - ], - "doc/man/man3/OpenSSL_version.3" => [ - "doc/man3/OpenSSL_version.pod" - ], - "doc/man/man3/PBMAC1_get1_pbkdf2_param.3" => [ - "doc/man3/PBMAC1_get1_pbkdf2_param.pod" - ], - "doc/man/man3/PEM_X509_INFO_read_bio_ex.3" => [ - "doc/man3/PEM_X509_INFO_read_bio_ex.pod" - ], - "doc/man/man3/PEM_bytes_read_bio.3" => [ - "doc/man3/PEM_bytes_read_bio.pod" - ], - "doc/man/man3/PEM_read.3" => [ - "doc/man3/PEM_read.pod" - ], - "doc/man/man3/PEM_read_CMS.3" => [ - "doc/man3/PEM_read_CMS.pod" - ], - "doc/man/man3/PEM_read_bio_PrivateKey.3" => [ - "doc/man3/PEM_read_bio_PrivateKey.pod" - ], - "doc/man/man3/PEM_read_bio_ex.3" => [ - "doc/man3/PEM_read_bio_ex.pod" - ], - "doc/man/man3/PEM_write_bio_CMS_stream.3" => [ - "doc/man3/PEM_write_bio_CMS_stream.pod" - ], - "doc/man/man3/PEM_write_bio_PKCS7_stream.3" => [ - "doc/man3/PEM_write_bio_PKCS7_stream.pod" - ], - "doc/man/man3/PKCS12_PBE_keyivgen.3" => [ - "doc/man3/PKCS12_PBE_keyivgen.pod" - ], - "doc/man/man3/PKCS12_SAFEBAG_create_cert.3" => [ - "doc/man3/PKCS12_SAFEBAG_create_cert.pod" - ], - "doc/man/man3/PKCS12_SAFEBAG_get0_attrs.3" => [ - "doc/man3/PKCS12_SAFEBAG_get0_attrs.pod" - ], - "doc/man/man3/PKCS12_SAFEBAG_get1_cert.3" => [ - "doc/man3/PKCS12_SAFEBAG_get1_cert.pod" - ], - "doc/man/man3/PKCS12_SAFEBAG_set0_attrs.3" => [ - "doc/man3/PKCS12_SAFEBAG_set0_attrs.pod" - ], - "doc/man/man3/PKCS12_add1_attr_by_NID.3" => [ - "doc/man3/PKCS12_add1_attr_by_NID.pod" - ], - "doc/man/man3/PKCS12_add_CSPName_asc.3" => [ - "doc/man3/PKCS12_add_CSPName_asc.pod" - ], - "doc/man/man3/PKCS12_add_cert.3" => [ - "doc/man3/PKCS12_add_cert.pod" - ], - "doc/man/man3/PKCS12_add_friendlyname_asc.3" => [ - "doc/man3/PKCS12_add_friendlyname_asc.pod" - ], - "doc/man/man3/PKCS12_add_localkeyid.3" => [ - "doc/man3/PKCS12_add_localkeyid.pod" - ], - "doc/man/man3/PKCS12_add_safe.3" => [ - "doc/man3/PKCS12_add_safe.pod" - ], - "doc/man/man3/PKCS12_create.3" => [ - "doc/man3/PKCS12_create.pod" - ], - "doc/man/man3/PKCS12_decrypt_skey.3" => [ - "doc/man3/PKCS12_decrypt_skey.pod" - ], - "doc/man/man3/PKCS12_gen_mac.3" => [ - "doc/man3/PKCS12_gen_mac.pod" - ], - "doc/man/man3/PKCS12_get_friendlyname.3" => [ - "doc/man3/PKCS12_get_friendlyname.pod" - ], - "doc/man/man3/PKCS12_init.3" => [ - "doc/man3/PKCS12_init.pod" - ], - "doc/man/man3/PKCS12_item_decrypt_d2i.3" => [ - "doc/man3/PKCS12_item_decrypt_d2i.pod" - ], - "doc/man/man3/PKCS12_key_gen_utf8_ex.3" => [ - "doc/man3/PKCS12_key_gen_utf8_ex.pod" - ], - "doc/man/man3/PKCS12_newpass.3" => [ - "doc/man3/PKCS12_newpass.pod" - ], - "doc/man/man3/PKCS12_pack_p7encdata.3" => [ - "doc/man3/PKCS12_pack_p7encdata.pod" - ], - "doc/man/man3/PKCS12_parse.3" => [ - "doc/man3/PKCS12_parse.pod" - ], - "doc/man/man3/PKCS5_PBE_keyivgen.3" => [ - "doc/man3/PKCS5_PBE_keyivgen.pod" - ], - "doc/man/man3/PKCS5_PBKDF2_HMAC.3" => [ - "doc/man3/PKCS5_PBKDF2_HMAC.pod" - ], - "doc/man/man3/PKCS7_decrypt.3" => [ - "doc/man3/PKCS7_decrypt.pod" - ], - "doc/man/man3/PKCS7_encrypt.3" => [ - "doc/man3/PKCS7_encrypt.pod" - ], - "doc/man/man3/PKCS7_get_octet_string.3" => [ - "doc/man3/PKCS7_get_octet_string.pod" - ], - "doc/man/man3/PKCS7_sign.3" => [ - "doc/man3/PKCS7_sign.pod" - ], - "doc/man/man3/PKCS7_sign_add_signer.3" => [ - "doc/man3/PKCS7_sign_add_signer.pod" - ], - "doc/man/man3/PKCS7_type_is_other.3" => [ - "doc/man3/PKCS7_type_is_other.pod" - ], - "doc/man/man3/PKCS7_verify.3" => [ - "doc/man3/PKCS7_verify.pod" - ], - "doc/man/man3/PKCS8_encrypt.3" => [ - "doc/man3/PKCS8_encrypt.pod" - ], - "doc/man/man3/PKCS8_pkey_add1_attr.3" => [ - "doc/man3/PKCS8_pkey_add1_attr.pod" - ], - "doc/man/man3/RAND_add.3" => [ - "doc/man3/RAND_add.pod" - ], - "doc/man/man3/RAND_bytes.3" => [ - "doc/man3/RAND_bytes.pod" - ], - "doc/man/man3/RAND_cleanup.3" => [ - "doc/man3/RAND_cleanup.pod" - ], - "doc/man/man3/RAND_egd.3" => [ - "doc/man3/RAND_egd.pod" - ], - "doc/man/man3/RAND_get0_primary.3" => [ - "doc/man3/RAND_get0_primary.pod" - ], - "doc/man/man3/RAND_load_file.3" => [ - "doc/man3/RAND_load_file.pod" - ], - "doc/man/man3/RAND_set_DRBG_type.3" => [ - "doc/man3/RAND_set_DRBG_type.pod" - ], - "doc/man/man3/RAND_set_rand_method.3" => [ - "doc/man3/RAND_set_rand_method.pod" - ], - "doc/man/man3/RC4_set_key.3" => [ - "doc/man3/RC4_set_key.pod" - ], - "doc/man/man3/RIPEMD160_Init.3" => [ - "doc/man3/RIPEMD160_Init.pod" - ], - "doc/man/man3/RSA_blinding_on.3" => [ - "doc/man3/RSA_blinding_on.pod" - ], - "doc/man/man3/RSA_check_key.3" => [ - "doc/man3/RSA_check_key.pod" - ], - "doc/man/man3/RSA_generate_key.3" => [ - "doc/man3/RSA_generate_key.pod" - ], - "doc/man/man3/RSA_get0_key.3" => [ - "doc/man3/RSA_get0_key.pod" - ], - "doc/man/man3/RSA_meth_new.3" => [ - "doc/man3/RSA_meth_new.pod" - ], - "doc/man/man3/RSA_new.3" => [ - "doc/man3/RSA_new.pod" - ], - "doc/man/man3/RSA_padding_add_PKCS1_type_1.3" => [ - "doc/man3/RSA_padding_add_PKCS1_type_1.pod" - ], - "doc/man/man3/RSA_print.3" => [ - "doc/man3/RSA_print.pod" - ], - "doc/man/man3/RSA_private_encrypt.3" => [ - "doc/man3/RSA_private_encrypt.pod" - ], - "doc/man/man3/RSA_public_encrypt.3" => [ - "doc/man3/RSA_public_encrypt.pod" - ], - "doc/man/man3/RSA_set_method.3" => [ - "doc/man3/RSA_set_method.pod" - ], - "doc/man/man3/RSA_sign.3" => [ - "doc/man3/RSA_sign.pod" - ], - "doc/man/man3/RSA_sign_ASN1_OCTET_STRING.3" => [ - "doc/man3/RSA_sign_ASN1_OCTET_STRING.pod" - ], - "doc/man/man3/RSA_size.3" => [ - "doc/man3/RSA_size.pod" - ], - "doc/man/man3/SCT_new.3" => [ - "doc/man3/SCT_new.pod" - ], - "doc/man/man3/SCT_print.3" => [ - "doc/man3/SCT_print.pod" - ], - "doc/man/man3/SCT_validate.3" => [ - "doc/man3/SCT_validate.pod" - ], - "doc/man/man3/SHA256_Init.3" => [ - "doc/man3/SHA256_Init.pod" - ], - "doc/man/man3/SMIME_read_ASN1.3" => [ - "doc/man3/SMIME_read_ASN1.pod" - ], - "doc/man/man3/SMIME_read_CMS.3" => [ - "doc/man3/SMIME_read_CMS.pod" - ], - "doc/man/man3/SMIME_read_PKCS7.3" => [ - "doc/man3/SMIME_read_PKCS7.pod" - ], - "doc/man/man3/SMIME_write_ASN1.3" => [ - "doc/man3/SMIME_write_ASN1.pod" - ], - "doc/man/man3/SMIME_write_CMS.3" => [ - "doc/man3/SMIME_write_CMS.pod" - ], - "doc/man/man3/SMIME_write_PKCS7.3" => [ - "doc/man3/SMIME_write_PKCS7.pod" - ], - "doc/man/man3/SRP_Calc_B.3" => [ - "doc/man3/SRP_Calc_B.pod" - ], - "doc/man/man3/SRP_VBASE_new.3" => [ - "doc/man3/SRP_VBASE_new.pod" - ], - "doc/man/man3/SRP_create_verifier.3" => [ - "doc/man3/SRP_create_verifier.pod" - ], - "doc/man/man3/SRP_user_pwd_new.3" => [ - "doc/man3/SRP_user_pwd_new.pod" - ], - "doc/man/man3/SSL_CIPHER_get_name.3" => [ - "doc/man3/SSL_CIPHER_get_name.pod" - ], - "doc/man/man3/SSL_COMP_add_compression_method.3" => [ - "doc/man3/SSL_COMP_add_compression_method.pod" - ], - "doc/man/man3/SSL_CONF_CTX_new.3" => [ - "doc/man3/SSL_CONF_CTX_new.pod" - ], - "doc/man/man3/SSL_CONF_CTX_set1_prefix.3" => [ - "doc/man3/SSL_CONF_CTX_set1_prefix.pod" - ], - "doc/man/man3/SSL_CONF_CTX_set_flags.3" => [ - "doc/man3/SSL_CONF_CTX_set_flags.pod" - ], - "doc/man/man3/SSL_CONF_CTX_set_ssl_ctx.3" => [ - "doc/man3/SSL_CONF_CTX_set_ssl_ctx.pod" - ], - "doc/man/man3/SSL_CONF_cmd.3" => [ - "doc/man3/SSL_CONF_cmd.pod" - ], - "doc/man/man3/SSL_CONF_cmd_argv.3" => [ - "doc/man3/SSL_CONF_cmd_argv.pod" - ], - "doc/man/man3/SSL_CTX_add1_chain_cert.3" => [ - "doc/man3/SSL_CTX_add1_chain_cert.pod" - ], - "doc/man/man3/SSL_CTX_add_extra_chain_cert.3" => [ - "doc/man3/SSL_CTX_add_extra_chain_cert.pod" - ], - "doc/man/man3/SSL_CTX_add_session.3" => [ - "doc/man3/SSL_CTX_add_session.pod" - ], - "doc/man/man3/SSL_CTX_config.3" => [ - "doc/man3/SSL_CTX_config.pod" - ], - "doc/man/man3/SSL_CTX_ctrl.3" => [ - "doc/man3/SSL_CTX_ctrl.pod" - ], - "doc/man/man3/SSL_CTX_dane_enable.3" => [ - "doc/man3/SSL_CTX_dane_enable.pod" - ], - "doc/man/man3/SSL_CTX_flush_sessions.3" => [ - "doc/man3/SSL_CTX_flush_sessions.pod" - ], - "doc/man/man3/SSL_CTX_free.3" => [ - "doc/man3/SSL_CTX_free.pod" - ], - "doc/man/man3/SSL_CTX_get0_param.3" => [ - "doc/man3/SSL_CTX_get0_param.pod" - ], - "doc/man/man3/SSL_CTX_get_verify_mode.3" => [ - "doc/man3/SSL_CTX_get_verify_mode.pod" - ], - "doc/man/man3/SSL_CTX_has_client_custom_ext.3" => [ - "doc/man3/SSL_CTX_has_client_custom_ext.pod" - ], - "doc/man/man3/SSL_CTX_load_verify_locations.3" => [ - "doc/man3/SSL_CTX_load_verify_locations.pod" - ], - "doc/man/man3/SSL_CTX_new.3" => [ - "doc/man3/SSL_CTX_new.pod" - ], - "doc/man/man3/SSL_CTX_sess_number.3" => [ - "doc/man3/SSL_CTX_sess_number.pod" - ], - "doc/man/man3/SSL_CTX_sess_set_cache_size.3" => [ - "doc/man3/SSL_CTX_sess_set_cache_size.pod" - ], - "doc/man/man3/SSL_CTX_sess_set_get_cb.3" => [ - "doc/man3/SSL_CTX_sess_set_get_cb.pod" - ], - "doc/man/man3/SSL_CTX_sessions.3" => [ - "doc/man3/SSL_CTX_sessions.pod" - ], - "doc/man/man3/SSL_CTX_set0_CA_list.3" => [ - "doc/man3/SSL_CTX_set0_CA_list.pod" - ], - "doc/man/man3/SSL_CTX_set1_cert_comp_preference.3" => [ - "doc/man3/SSL_CTX_set1_cert_comp_preference.pod" - ], - "doc/man/man3/SSL_CTX_set1_curves.3" => [ - "doc/man3/SSL_CTX_set1_curves.pod" - ], - "doc/man/man3/SSL_CTX_set1_sigalgs.3" => [ - "doc/man3/SSL_CTX_set1_sigalgs.pod" - ], - "doc/man/man3/SSL_CTX_set1_verify_cert_store.3" => [ - "doc/man3/SSL_CTX_set1_verify_cert_store.pod" - ], - "doc/man/man3/SSL_CTX_set_alpn_select_cb.3" => [ - "doc/man3/SSL_CTX_set_alpn_select_cb.pod" - ], - "doc/man/man3/SSL_CTX_set_cert_cb.3" => [ - "doc/man3/SSL_CTX_set_cert_cb.pod" - ], - "doc/man/man3/SSL_CTX_set_cert_store.3" => [ - "doc/man3/SSL_CTX_set_cert_store.pod" - ], - "doc/man/man3/SSL_CTX_set_cert_verify_callback.3" => [ - "doc/man3/SSL_CTX_set_cert_verify_callback.pod" - ], - "doc/man/man3/SSL_CTX_set_cipher_list.3" => [ - "doc/man3/SSL_CTX_set_cipher_list.pod" - ], - "doc/man/man3/SSL_CTX_set_client_cert_cb.3" => [ - "doc/man3/SSL_CTX_set_client_cert_cb.pod" - ], - "doc/man/man3/SSL_CTX_set_client_hello_cb.3" => [ - "doc/man3/SSL_CTX_set_client_hello_cb.pod" - ], - "doc/man/man3/SSL_CTX_set_ct_validation_callback.3" => [ - "doc/man3/SSL_CTX_set_ct_validation_callback.pod" - ], - "doc/man/man3/SSL_CTX_set_ctlog_list_file.3" => [ - "doc/man3/SSL_CTX_set_ctlog_list_file.pod" - ], - "doc/man/man3/SSL_CTX_set_default_passwd_cb.3" => [ - "doc/man3/SSL_CTX_set_default_passwd_cb.pod" - ], - "doc/man/man3/SSL_CTX_set_domain_flags.3" => [ - "doc/man3/SSL_CTX_set_domain_flags.pod" - ], - "doc/man/man3/SSL_CTX_set_generate_session_id.3" => [ - "doc/man3/SSL_CTX_set_generate_session_id.pod" - ], - "doc/man/man3/SSL_CTX_set_info_callback.3" => [ - "doc/man3/SSL_CTX_set_info_callback.pod" - ], - "doc/man/man3/SSL_CTX_set_keylog_callback.3" => [ - "doc/man3/SSL_CTX_set_keylog_callback.pod" - ], - "doc/man/man3/SSL_CTX_set_max_cert_list.3" => [ - "doc/man3/SSL_CTX_set_max_cert_list.pod" - ], - "doc/man/man3/SSL_CTX_set_min_proto_version.3" => [ - "doc/man3/SSL_CTX_set_min_proto_version.pod" - ], - "doc/man/man3/SSL_CTX_set_mode.3" => [ - "doc/man3/SSL_CTX_set_mode.pod" - ], - "doc/man/man3/SSL_CTX_set_msg_callback.3" => [ - "doc/man3/SSL_CTX_set_msg_callback.pod" - ], - "doc/man/man3/SSL_CTX_set_new_pending_conn_cb.3" => [ - "doc/man3/SSL_CTX_set_new_pending_conn_cb.pod" - ], - "doc/man/man3/SSL_CTX_set_num_tickets.3" => [ - "doc/man3/SSL_CTX_set_num_tickets.pod" - ], - "doc/man/man3/SSL_CTX_set_options.3" => [ - "doc/man3/SSL_CTX_set_options.pod" - ], - "doc/man/man3/SSL_CTX_set_psk_client_callback.3" => [ - "doc/man3/SSL_CTX_set_psk_client_callback.pod" - ], - "doc/man/man3/SSL_CTX_set_quiet_shutdown.3" => [ - "doc/man3/SSL_CTX_set_quiet_shutdown.pod" - ], - "doc/man/man3/SSL_CTX_set_read_ahead.3" => [ - "doc/man3/SSL_CTX_set_read_ahead.pod" - ], - "doc/man/man3/SSL_CTX_set_record_padding_callback.3" => [ - "doc/man3/SSL_CTX_set_record_padding_callback.pod" - ], - "doc/man/man3/SSL_CTX_set_security_level.3" => [ - "doc/man3/SSL_CTX_set_security_level.pod" - ], - "doc/man/man3/SSL_CTX_set_session_cache_mode.3" => [ - "doc/man3/SSL_CTX_set_session_cache_mode.pod" - ], - "doc/man/man3/SSL_CTX_set_session_id_context.3" => [ - "doc/man3/SSL_CTX_set_session_id_context.pod" - ], - "doc/man/man3/SSL_CTX_set_session_ticket_cb.3" => [ - "doc/man3/SSL_CTX_set_session_ticket_cb.pod" - ], - "doc/man/man3/SSL_CTX_set_split_send_fragment.3" => [ - "doc/man3/SSL_CTX_set_split_send_fragment.pod" - ], - "doc/man/man3/SSL_CTX_set_srp_password.3" => [ - "doc/man3/SSL_CTX_set_srp_password.pod" - ], - "doc/man/man3/SSL_CTX_set_ssl_version.3" => [ - "doc/man3/SSL_CTX_set_ssl_version.pod" - ], - "doc/man/man3/SSL_CTX_set_stateless_cookie_generate_cb.3" => [ - "doc/man3/SSL_CTX_set_stateless_cookie_generate_cb.pod" - ], - "doc/man/man3/SSL_CTX_set_timeout.3" => [ - "doc/man3/SSL_CTX_set_timeout.pod" - ], - "doc/man/man3/SSL_CTX_set_tlsext_servername_callback.3" => [ - "doc/man3/SSL_CTX_set_tlsext_servername_callback.pod" - ], - "doc/man/man3/SSL_CTX_set_tlsext_status_cb.3" => [ - "doc/man3/SSL_CTX_set_tlsext_status_cb.pod" - ], - "doc/man/man3/SSL_CTX_set_tlsext_ticket_key_cb.3" => [ - "doc/man3/SSL_CTX_set_tlsext_ticket_key_cb.pod" - ], - "doc/man/man3/SSL_CTX_set_tlsext_use_srtp.3" => [ - "doc/man3/SSL_CTX_set_tlsext_use_srtp.pod" - ], - "doc/man/man3/SSL_CTX_set_tmp_dh_callback.3" => [ - "doc/man3/SSL_CTX_set_tmp_dh_callback.pod" - ], - "doc/man/man3/SSL_CTX_set_tmp_ecdh.3" => [ - "doc/man3/SSL_CTX_set_tmp_ecdh.pod" - ], - "doc/man/man3/SSL_CTX_set_verify.3" => [ - "doc/man3/SSL_CTX_set_verify.pod" - ], - "doc/man/man3/SSL_CTX_use_certificate.3" => [ - "doc/man3/SSL_CTX_use_certificate.pod" - ], - "doc/man/man3/SSL_CTX_use_psk_identity_hint.3" => [ - "doc/man3/SSL_CTX_use_psk_identity_hint.pod" - ], - "doc/man/man3/SSL_CTX_use_serverinfo.3" => [ - "doc/man3/SSL_CTX_use_serverinfo.pod" - ], - "doc/man/man3/SSL_SESSION_free.3" => [ - "doc/man3/SSL_SESSION_free.pod" - ], - "doc/man/man3/SSL_SESSION_get0_cipher.3" => [ - "doc/man3/SSL_SESSION_get0_cipher.pod" - ], - "doc/man/man3/SSL_SESSION_get0_hostname.3" => [ - "doc/man3/SSL_SESSION_get0_hostname.pod" - ], - "doc/man/man3/SSL_SESSION_get0_id_context.3" => [ - "doc/man3/SSL_SESSION_get0_id_context.pod" - ], - "doc/man/man3/SSL_SESSION_get0_peer.3" => [ - "doc/man3/SSL_SESSION_get0_peer.pod" - ], - "doc/man/man3/SSL_SESSION_get_compress_id.3" => [ - "doc/man3/SSL_SESSION_get_compress_id.pod" - ], - "doc/man/man3/SSL_SESSION_get_protocol_version.3" => [ - "doc/man3/SSL_SESSION_get_protocol_version.pod" - ], - "doc/man/man3/SSL_SESSION_get_time.3" => [ - "doc/man3/SSL_SESSION_get_time.pod" - ], - "doc/man/man3/SSL_SESSION_has_ticket.3" => [ - "doc/man3/SSL_SESSION_has_ticket.pod" - ], - "doc/man/man3/SSL_SESSION_is_resumable.3" => [ - "doc/man3/SSL_SESSION_is_resumable.pod" - ], - "doc/man/man3/SSL_SESSION_print.3" => [ - "doc/man3/SSL_SESSION_print.pod" - ], - "doc/man/man3/SSL_SESSION_set1_id.3" => [ - "doc/man3/SSL_SESSION_set1_id.pod" - ], - "doc/man/man3/SSL_accept.3" => [ - "doc/man3/SSL_accept.pod" - ], - "doc/man/man3/SSL_accept_stream.3" => [ - "doc/man3/SSL_accept_stream.pod" - ], - "doc/man/man3/SSL_alert_type_string.3" => [ - "doc/man3/SSL_alert_type_string.pod" - ], - "doc/man/man3/SSL_alloc_buffers.3" => [ - "doc/man3/SSL_alloc_buffers.pod" - ], - "doc/man/man3/SSL_check_chain.3" => [ - "doc/man3/SSL_check_chain.pod" - ], - "doc/man/man3/SSL_clear.3" => [ - "doc/man3/SSL_clear.pod" - ], - "doc/man/man3/SSL_connect.3" => [ - "doc/man3/SSL_connect.pod" - ], - "doc/man/man3/SSL_do_handshake.3" => [ - "doc/man3/SSL_do_handshake.pod" - ], - "doc/man/man3/SSL_export_keying_material.3" => [ - "doc/man3/SSL_export_keying_material.pod" - ], - "doc/man/man3/SSL_extension_supported.3" => [ - "doc/man3/SSL_extension_supported.pod" - ], - "doc/man/man3/SSL_free.3" => [ - "doc/man3/SSL_free.pod" - ], - "doc/man/man3/SSL_get0_connection.3" => [ - "doc/man3/SSL_get0_connection.pod" - ], - "doc/man/man3/SSL_get0_group_name.3" => [ - "doc/man3/SSL_get0_group_name.pod" - ], - "doc/man/man3/SSL_get0_peer_rpk.3" => [ - "doc/man3/SSL_get0_peer_rpk.pod" - ], - "doc/man/man3/SSL_get0_peer_scts.3" => [ - "doc/man3/SSL_get0_peer_scts.pod" - ], - "doc/man/man3/SSL_get1_builtin_sigalgs.3" => [ - "doc/man3/SSL_get1_builtin_sigalgs.pod" - ], - "doc/man/man3/SSL_get_SSL_CTX.3" => [ - "doc/man3/SSL_get_SSL_CTX.pod" - ], - "doc/man/man3/SSL_get_all_async_fds.3" => [ - "doc/man3/SSL_get_all_async_fds.pod" - ], - "doc/man/man3/SSL_get_certificate.3" => [ - "doc/man3/SSL_get_certificate.pod" - ], - "doc/man/man3/SSL_get_ciphers.3" => [ - "doc/man3/SSL_get_ciphers.pod" - ], - "doc/man/man3/SSL_get_client_random.3" => [ - "doc/man3/SSL_get_client_random.pod" - ], - "doc/man/man3/SSL_get_conn_close_info.3" => [ - "doc/man3/SSL_get_conn_close_info.pod" - ], - "doc/man/man3/SSL_get_current_cipher.3" => [ - "doc/man3/SSL_get_current_cipher.pod" - ], - "doc/man/man3/SSL_get_default_timeout.3" => [ - "doc/man3/SSL_get_default_timeout.pod" - ], - "doc/man/man3/SSL_get_error.3" => [ - "doc/man3/SSL_get_error.pod" - ], - "doc/man/man3/SSL_get_event_timeout.3" => [ - "doc/man3/SSL_get_event_timeout.pod" - ], - "doc/man/man3/SSL_get_extms_support.3" => [ - "doc/man3/SSL_get_extms_support.pod" - ], - "doc/man/man3/SSL_get_fd.3" => [ - "doc/man3/SSL_get_fd.pod" - ], - "doc/man/man3/SSL_get_handshake_rtt.3" => [ - "doc/man3/SSL_get_handshake_rtt.pod" - ], - "doc/man/man3/SSL_get_peer_cert_chain.3" => [ - "doc/man3/SSL_get_peer_cert_chain.pod" - ], - "doc/man/man3/SSL_get_peer_certificate.3" => [ - "doc/man3/SSL_get_peer_certificate.pod" - ], - "doc/man/man3/SSL_get_peer_signature_nid.3" => [ - "doc/man3/SSL_get_peer_signature_nid.pod" - ], - "doc/man/man3/SSL_get_peer_tmp_key.3" => [ - "doc/man3/SSL_get_peer_tmp_key.pod" - ], - "doc/man/man3/SSL_get_psk_identity.3" => [ - "doc/man3/SSL_get_psk_identity.pod" - ], - "doc/man/man3/SSL_get_rbio.3" => [ - "doc/man3/SSL_get_rbio.pod" - ], - "doc/man/man3/SSL_get_rpoll_descriptor.3" => [ - "doc/man3/SSL_get_rpoll_descriptor.pod" - ], - "doc/man/man3/SSL_get_session.3" => [ - "doc/man3/SSL_get_session.pod" - ], - "doc/man/man3/SSL_get_shared_sigalgs.3" => [ - "doc/man3/SSL_get_shared_sigalgs.pod" - ], - "doc/man/man3/SSL_get_stream_id.3" => [ - "doc/man3/SSL_get_stream_id.pod" - ], - "doc/man/man3/SSL_get_stream_read_state.3" => [ - "doc/man3/SSL_get_stream_read_state.pod" - ], - "doc/man/man3/SSL_get_value_uint.3" => [ - "doc/man3/SSL_get_value_uint.pod" - ], - "doc/man/man3/SSL_get_verify_result.3" => [ - "doc/man3/SSL_get_verify_result.pod" - ], - "doc/man/man3/SSL_get_version.3" => [ - "doc/man3/SSL_get_version.pod" - ], - "doc/man/man3/SSL_group_to_name.3" => [ - "doc/man3/SSL_group_to_name.pod" - ], - "doc/man/man3/SSL_handle_events.3" => [ - "doc/man3/SSL_handle_events.pod" - ], - "doc/man/man3/SSL_in_init.3" => [ - "doc/man3/SSL_in_init.pod" - ], - "doc/man/man3/SSL_inject_net_dgram.3" => [ - "doc/man3/SSL_inject_net_dgram.pod" - ], - "doc/man/man3/SSL_key_update.3" => [ - "doc/man3/SSL_key_update.pod" - ], - "doc/man/man3/SSL_library_init.3" => [ - "doc/man3/SSL_library_init.pod" - ], - "doc/man/man3/SSL_load_client_CA_file.3" => [ - "doc/man3/SSL_load_client_CA_file.pod" - ], - "doc/man/man3/SSL_new.3" => [ - "doc/man3/SSL_new.pod" - ], - "doc/man/man3/SSL_new_domain.3" => [ - "doc/man3/SSL_new_domain.pod" - ], - "doc/man/man3/SSL_new_listener.3" => [ - "doc/man3/SSL_new_listener.pod" - ], - "doc/man/man3/SSL_new_stream.3" => [ - "doc/man3/SSL_new_stream.pod" - ], - "doc/man/man3/SSL_pending.3" => [ - "doc/man3/SSL_pending.pod" - ], - "doc/man/man3/SSL_poll.3" => [ - "doc/man3/SSL_poll.pod" - ], - "doc/man/man3/SSL_read.3" => [ - "doc/man3/SSL_read.pod" - ], - "doc/man/man3/SSL_read_early_data.3" => [ - "doc/man3/SSL_read_early_data.pod" - ], - "doc/man/man3/SSL_rstate_string.3" => [ - "doc/man3/SSL_rstate_string.pod" - ], - "doc/man/man3/SSL_session_reused.3" => [ - "doc/man3/SSL_session_reused.pod" - ], - "doc/man/man3/SSL_set1_host.3" => [ - "doc/man3/SSL_set1_host.pod" - ], - "doc/man/man3/SSL_set1_initial_peer_addr.3" => [ - "doc/man3/SSL_set1_initial_peer_addr.pod" - ], - "doc/man/man3/SSL_set1_server_cert_type.3" => [ - "doc/man3/SSL_set1_server_cert_type.pod" - ], - "doc/man/man3/SSL_set_async_callback.3" => [ - "doc/man3/SSL_set_async_callback.pod" - ], - "doc/man/man3/SSL_set_bio.3" => [ - "doc/man3/SSL_set_bio.pod" - ], - "doc/man/man3/SSL_set_blocking_mode.3" => [ - "doc/man3/SSL_set_blocking_mode.pod" - ], - "doc/man/man3/SSL_set_connect_state.3" => [ - "doc/man3/SSL_set_connect_state.pod" - ], - "doc/man/man3/SSL_set_default_stream_mode.3" => [ - "doc/man3/SSL_set_default_stream_mode.pod" - ], - "doc/man/man3/SSL_set_fd.3" => [ - "doc/man3/SSL_set_fd.pod" - ], - "doc/man/man3/SSL_set_incoming_stream_policy.3" => [ - "doc/man3/SSL_set_incoming_stream_policy.pod" - ], - "doc/man/man3/SSL_set_quic_tls_cbs.3" => [ - "doc/man3/SSL_set_quic_tls_cbs.pod" - ], - "doc/man/man3/SSL_set_retry_verify.3" => [ - "doc/man3/SSL_set_retry_verify.pod" - ], - "doc/man/man3/SSL_set_session.3" => [ - "doc/man3/SSL_set_session.pod" - ], - "doc/man/man3/SSL_set_session_secret_cb.3" => [ - "doc/man3/SSL_set_session_secret_cb.pod" - ], - "doc/man/man3/SSL_set_shutdown.3" => [ - "doc/man3/SSL_set_shutdown.pod" - ], - "doc/man/man3/SSL_set_verify_result.3" => [ - "doc/man3/SSL_set_verify_result.pod" - ], - "doc/man/man3/SSL_shutdown.3" => [ - "doc/man3/SSL_shutdown.pod" - ], - "doc/man/man3/SSL_state_string.3" => [ - "doc/man3/SSL_state_string.pod" - ], - "doc/man/man3/SSL_stream_conclude.3" => [ - "doc/man3/SSL_stream_conclude.pod" - ], - "doc/man/man3/SSL_stream_reset.3" => [ - "doc/man3/SSL_stream_reset.pod" - ], - "doc/man/man3/SSL_want.3" => [ - "doc/man3/SSL_want.pod" - ], - "doc/man/man3/SSL_write.3" => [ - "doc/man3/SSL_write.pod" - ], - "doc/man/man3/TS_RESP_CTX_new.3" => [ - "doc/man3/TS_RESP_CTX_new.pod" - ], - "doc/man/man3/TS_VERIFY_CTX.3" => [ - "doc/man3/TS_VERIFY_CTX.pod" - ], - "doc/man/man3/UI_STRING.3" => [ - "doc/man3/UI_STRING.pod" - ], - "doc/man/man3/UI_UTIL_read_pw.3" => [ - "doc/man3/UI_UTIL_read_pw.pod" - ], - "doc/man/man3/UI_create_method.3" => [ - "doc/man3/UI_create_method.pod" - ], - "doc/man/man3/UI_new.3" => [ - "doc/man3/UI_new.pod" - ], - "doc/man/man3/X509V3_get_d2i.3" => [ - "doc/man3/X509V3_get_d2i.pod" - ], - "doc/man/man3/X509V3_set_ctx.3" => [ - "doc/man3/X509V3_set_ctx.pod" - ], - "doc/man/man3/X509_ACERT_add1_attr.3" => [ - "doc/man3/X509_ACERT_add1_attr.pod" - ], - "doc/man/man3/X509_ACERT_add_attr_nconf.3" => [ - "doc/man3/X509_ACERT_add_attr_nconf.pod" - ], - "doc/man/man3/X509_ACERT_get0_holder_baseCertId.3" => [ - "doc/man3/X509_ACERT_get0_holder_baseCertId.pod" - ], - "doc/man/man3/X509_ACERT_get_attr.3" => [ - "doc/man3/X509_ACERT_get_attr.pod" - ], - "doc/man/man3/X509_ACERT_print_ex.3" => [ - "doc/man3/X509_ACERT_print_ex.pod" - ], - "doc/man/man3/X509_ALGOR_dup.3" => [ - "doc/man3/X509_ALGOR_dup.pod" - ], - "doc/man/man3/X509_ATTRIBUTE.3" => [ - "doc/man3/X509_ATTRIBUTE.pod" - ], - "doc/man/man3/X509_CRL_get0_by_serial.3" => [ - "doc/man3/X509_CRL_get0_by_serial.pod" - ], - "doc/man/man3/X509_EXTENSION_set_object.3" => [ - "doc/man3/X509_EXTENSION_set_object.pod" - ], - "doc/man/man3/X509_LOOKUP.3" => [ - "doc/man3/X509_LOOKUP.pod" - ], - "doc/man/man3/X509_LOOKUP_hash_dir.3" => [ - "doc/man3/X509_LOOKUP_hash_dir.pod" - ], - "doc/man/man3/X509_LOOKUP_meth_new.3" => [ - "doc/man3/X509_LOOKUP_meth_new.pod" - ], - "doc/man/man3/X509_NAME_ENTRY_get_object.3" => [ - "doc/man3/X509_NAME_ENTRY_get_object.pod" - ], - "doc/man/man3/X509_NAME_add_entry_by_txt.3" => [ - "doc/man3/X509_NAME_add_entry_by_txt.pod" - ], - "doc/man/man3/X509_NAME_get0_der.3" => [ - "doc/man3/X509_NAME_get0_der.pod" - ], - "doc/man/man3/X509_NAME_get_index_by_NID.3" => [ - "doc/man3/X509_NAME_get_index_by_NID.pod" - ], - "doc/man/man3/X509_NAME_print_ex.3" => [ - "doc/man3/X509_NAME_print_ex.pod" - ], - "doc/man/man3/X509_PUBKEY_new.3" => [ - "doc/man3/X509_PUBKEY_new.pod" - ], - "doc/man/man3/X509_REQ_get_attr.3" => [ - "doc/man3/X509_REQ_get_attr.pod" - ], - "doc/man/man3/X509_REQ_get_extensions.3" => [ - "doc/man3/X509_REQ_get_extensions.pod" - ], - "doc/man/man3/X509_SIG_get0.3" => [ - "doc/man3/X509_SIG_get0.pod" - ], - "doc/man/man3/X509_STORE_CTX_get_by_subject.3" => [ - "doc/man3/X509_STORE_CTX_get_by_subject.pod" - ], - "doc/man/man3/X509_STORE_CTX_get_error.3" => [ - "doc/man3/X509_STORE_CTX_get_error.pod" - ], - "doc/man/man3/X509_STORE_CTX_new.3" => [ - "doc/man3/X509_STORE_CTX_new.pod" - ], - "doc/man/man3/X509_STORE_CTX_set_verify_cb.3" => [ - "doc/man3/X509_STORE_CTX_set_verify_cb.pod" - ], - "doc/man/man3/X509_STORE_add_cert.3" => [ - "doc/man3/X509_STORE_add_cert.pod" - ], - "doc/man/man3/X509_STORE_get0_param.3" => [ - "doc/man3/X509_STORE_get0_param.pod" - ], - "doc/man/man3/X509_STORE_new.3" => [ - "doc/man3/X509_STORE_new.pod" - ], - "doc/man/man3/X509_STORE_set_verify_cb_func.3" => [ - "doc/man3/X509_STORE_set_verify_cb_func.pod" - ], - "doc/man/man3/X509_VERIFY_PARAM_set_flags.3" => [ - "doc/man3/X509_VERIFY_PARAM_set_flags.pod" - ], - "doc/man/man3/X509_add_cert.3" => [ - "doc/man3/X509_add_cert.pod" - ], - "doc/man/man3/X509_check_ca.3" => [ - "doc/man3/X509_check_ca.pod" - ], - "doc/man/man3/X509_check_host.3" => [ - "doc/man3/X509_check_host.pod" - ], - "doc/man/man3/X509_check_issued.3" => [ - "doc/man3/X509_check_issued.pod" - ], - "doc/man/man3/X509_check_private_key.3" => [ - "doc/man3/X509_check_private_key.pod" - ], - "doc/man/man3/X509_check_purpose.3" => [ - "doc/man3/X509_check_purpose.pod" - ], - "doc/man/man3/X509_cmp.3" => [ - "doc/man3/X509_cmp.pod" - ], - "doc/man/man3/X509_cmp_time.3" => [ - "doc/man3/X509_cmp_time.pod" - ], - "doc/man/man3/X509_digest.3" => [ - "doc/man3/X509_digest.pod" - ], - "doc/man/man3/X509_dup.3" => [ - "doc/man3/X509_dup.pod" - ], - "doc/man/man3/X509_get0_distinguishing_id.3" => [ - "doc/man3/X509_get0_distinguishing_id.pod" - ], - "doc/man/man3/X509_get0_notBefore.3" => [ - "doc/man3/X509_get0_notBefore.pod" - ], - "doc/man/man3/X509_get0_signature.3" => [ - "doc/man3/X509_get0_signature.pod" - ], - "doc/man/man3/X509_get0_uids.3" => [ - "doc/man3/X509_get0_uids.pod" - ], - "doc/man/man3/X509_get_default_cert_file.3" => [ - "doc/man3/X509_get_default_cert_file.pod" - ], - "doc/man/man3/X509_get_extension_flags.3" => [ - "doc/man3/X509_get_extension_flags.pod" - ], - "doc/man/man3/X509_get_pubkey.3" => [ - "doc/man3/X509_get_pubkey.pod" - ], - "doc/man/man3/X509_get_serialNumber.3" => [ - "doc/man3/X509_get_serialNumber.pod" - ], - "doc/man/man3/X509_get_subject_name.3" => [ - "doc/man3/X509_get_subject_name.pod" - ], - "doc/man/man3/X509_get_version.3" => [ - "doc/man3/X509_get_version.pod" - ], - "doc/man/man3/X509_load_http.3" => [ - "doc/man3/X509_load_http.pod" - ], - "doc/man/man3/X509_new.3" => [ - "doc/man3/X509_new.pod" - ], - "doc/man/man3/X509_sign.3" => [ - "doc/man3/X509_sign.pod" - ], - "doc/man/man3/X509_verify.3" => [ - "doc/man3/X509_verify.pod" - ], - "doc/man/man3/X509_verify_cert.3" => [ - "doc/man3/X509_verify_cert.pod" - ], - "doc/man/man3/X509v3_get_ext_by_NID.3" => [ - "doc/man3/X509v3_get_ext_by_NID.pod" - ], - "doc/man/man3/b2i_PVK_bio_ex.3" => [ - "doc/man3/b2i_PVK_bio_ex.pod" - ], - "doc/man/man3/d2i_PKCS8PrivateKey_bio.3" => [ - "doc/man3/d2i_PKCS8PrivateKey_bio.pod" - ], - "doc/man/man3/d2i_PrivateKey.3" => [ - "doc/man3/d2i_PrivateKey.pod" - ], - "doc/man/man3/d2i_RSAPrivateKey.3" => [ - "doc/man3/d2i_RSAPrivateKey.pod" - ], - "doc/man/man3/d2i_SSL_SESSION.3" => [ - "doc/man3/d2i_SSL_SESSION.pod" - ], - "doc/man/man3/d2i_X509.3" => [ - "doc/man3/d2i_X509.pod" - ], - "doc/man/man3/i2d_CMS_bio_stream.3" => [ - "doc/man3/i2d_CMS_bio_stream.pod" - ], - "doc/man/man3/i2d_PKCS7_bio_stream.3" => [ - "doc/man3/i2d_PKCS7_bio_stream.pod" - ], - "doc/man/man3/i2d_re_X509_tbs.3" => [ - "doc/man3/i2d_re_X509_tbs.pod" - ], - "doc/man/man3/o2i_SCT_LIST.3" => [ - "doc/man3/o2i_SCT_LIST.pod" - ], - "doc/man/man3/s2i_ASN1_IA5STRING.3" => [ - "doc/man3/s2i_ASN1_IA5STRING.pod" - ], - "doc/man/man5/config.5" => [ - "doc/man5/config.pod" - ], - "doc/man/man5/fips_config.5" => [ - "doc/man5/fips_config.pod" - ], - "doc/man/man5/x509v3_config.5" => [ - "doc/man5/x509v3_config.pod" - ], - "doc/man/man7/EVP_ASYM_CIPHER-RSA.7" => [ - "doc/man7/EVP_ASYM_CIPHER-RSA.pod" - ], - "doc/man/man7/EVP_ASYM_CIPHER-SM2.7" => [ - "doc/man7/EVP_ASYM_CIPHER-SM2.pod" - ], - "doc/man/man7/EVP_CIPHER-AES.7" => [ - "doc/man7/EVP_CIPHER-AES.pod" - ], - "doc/man/man7/EVP_CIPHER-ARIA.7" => [ - "doc/man7/EVP_CIPHER-ARIA.pod" - ], - "doc/man/man7/EVP_CIPHER-BLOWFISH.7" => [ - "doc/man7/EVP_CIPHER-BLOWFISH.pod" - ], - "doc/man/man7/EVP_CIPHER-CAMELLIA.7" => [ - "doc/man7/EVP_CIPHER-CAMELLIA.pod" - ], - "doc/man/man7/EVP_CIPHER-CAST.7" => [ - "doc/man7/EVP_CIPHER-CAST.pod" - ], - "doc/man/man7/EVP_CIPHER-CHACHA.7" => [ - "doc/man7/EVP_CIPHER-CHACHA.pod" - ], - "doc/man/man7/EVP_CIPHER-DES.7" => [ - "doc/man7/EVP_CIPHER-DES.pod" - ], - "doc/man/man7/EVP_CIPHER-IDEA.7" => [ - "doc/man7/EVP_CIPHER-IDEA.pod" - ], - "doc/man/man7/EVP_CIPHER-NULL.7" => [ - "doc/man7/EVP_CIPHER-NULL.pod" - ], - "doc/man/man7/EVP_CIPHER-RC2.7" => [ - "doc/man7/EVP_CIPHER-RC2.pod" - ], - "doc/man/man7/EVP_CIPHER-RC4.7" => [ - "doc/man7/EVP_CIPHER-RC4.pod" - ], - "doc/man/man7/EVP_CIPHER-RC5.7" => [ - "doc/man7/EVP_CIPHER-RC5.pod" - ], - "doc/man/man7/EVP_CIPHER-SEED.7" => [ - "doc/man7/EVP_CIPHER-SEED.pod" - ], - "doc/man/man7/EVP_CIPHER-SM4.7" => [ - "doc/man7/EVP_CIPHER-SM4.pod" - ], - "doc/man/man7/EVP_KDF-ARGON2.7" => [ - "doc/man7/EVP_KDF-ARGON2.pod" - ], - "doc/man/man7/EVP_KDF-HKDF.7" => [ - "doc/man7/EVP_KDF-HKDF.pod" - ], - "doc/man/man7/EVP_KDF-HMAC-DRBG.7" => [ - "doc/man7/EVP_KDF-HMAC-DRBG.pod" - ], - "doc/man/man7/EVP_KDF-KB.7" => [ - "doc/man7/EVP_KDF-KB.pod" - ], - "doc/man/man7/EVP_KDF-KRB5KDF.7" => [ - "doc/man7/EVP_KDF-KRB5KDF.pod" - ], - "doc/man/man7/EVP_KDF-PBKDF1.7" => [ - "doc/man7/EVP_KDF-PBKDF1.pod" - ], - "doc/man/man7/EVP_KDF-PBKDF2.7" => [ - "doc/man7/EVP_KDF-PBKDF2.pod" - ], - "doc/man/man7/EVP_KDF-PKCS12KDF.7" => [ - "doc/man7/EVP_KDF-PKCS12KDF.pod" - ], - "doc/man/man7/EVP_KDF-PVKKDF.7" => [ - "doc/man7/EVP_KDF-PVKKDF.pod" - ], - "doc/man/man7/EVP_KDF-SCRYPT.7" => [ - "doc/man7/EVP_KDF-SCRYPT.pod" - ], - "doc/man/man7/EVP_KDF-SS.7" => [ - "doc/man7/EVP_KDF-SS.pod" - ], - "doc/man/man7/EVP_KDF-SSHKDF.7" => [ - "doc/man7/EVP_KDF-SSHKDF.pod" - ], - "doc/man/man7/EVP_KDF-TLS13_KDF.7" => [ - "doc/man7/EVP_KDF-TLS13_KDF.pod" - ], - "doc/man/man7/EVP_KDF-TLS1_PRF.7" => [ - "doc/man7/EVP_KDF-TLS1_PRF.pod" - ], - "doc/man/man7/EVP_KDF-X942-ASN1.7" => [ - "doc/man7/EVP_KDF-X942-ASN1.pod" - ], - "doc/man/man7/EVP_KDF-X942-CONCAT.7" => [ - "doc/man7/EVP_KDF-X942-CONCAT.pod" - ], - "doc/man/man7/EVP_KDF-X963.7" => [ - "doc/man7/EVP_KDF-X963.pod" - ], - "doc/man/man7/EVP_KEM-EC.7" => [ - "doc/man7/EVP_KEM-EC.pod" - ], - "doc/man/man7/EVP_KEM-ML-KEM.7" => [ - "doc/man7/EVP_KEM-ML-KEM.pod" - ], - "doc/man/man7/EVP_KEM-RSA.7" => [ - "doc/man7/EVP_KEM-RSA.pod" - ], - "doc/man/man7/EVP_KEM-X25519.7" => [ - "doc/man7/EVP_KEM-X25519.pod" - ], - "doc/man/man7/EVP_KEYEXCH-DH.7" => [ - "doc/man7/EVP_KEYEXCH-DH.pod" - ], - "doc/man/man7/EVP_KEYEXCH-ECDH.7" => [ - "doc/man7/EVP_KEYEXCH-ECDH.pod" - ], - "doc/man/man7/EVP_KEYEXCH-X25519.7" => [ - "doc/man7/EVP_KEYEXCH-X25519.pod" - ], - "doc/man/man7/EVP_MAC-BLAKE2.7" => [ - "doc/man7/EVP_MAC-BLAKE2.pod" - ], - "doc/man/man7/EVP_MAC-CMAC.7" => [ - "doc/man7/EVP_MAC-CMAC.pod" - ], - "doc/man/man7/EVP_MAC-GMAC.7" => [ - "doc/man7/EVP_MAC-GMAC.pod" - ], - "doc/man/man7/EVP_MAC-HMAC.7" => [ - "doc/man7/EVP_MAC-HMAC.pod" - ], - "doc/man/man7/EVP_MAC-KMAC.7" => [ - "doc/man7/EVP_MAC-KMAC.pod" - ], - "doc/man/man7/EVP_MAC-Poly1305.7" => [ - "doc/man7/EVP_MAC-Poly1305.pod" - ], - "doc/man/man7/EVP_MAC-Siphash.7" => [ - "doc/man7/EVP_MAC-Siphash.pod" - ], - "doc/man/man7/EVP_MD-BLAKE2.7" => [ - "doc/man7/EVP_MD-BLAKE2.pod" - ], - "doc/man/man7/EVP_MD-KECCAK.7" => [ - "doc/man7/EVP_MD-KECCAK.pod" - ], - "doc/man/man7/EVP_MD-MD2.7" => [ - "doc/man7/EVP_MD-MD2.pod" - ], - "doc/man/man7/EVP_MD-MD4.7" => [ - "doc/man7/EVP_MD-MD4.pod" - ], - "doc/man/man7/EVP_MD-MD5-SHA1.7" => [ - "doc/man7/EVP_MD-MD5-SHA1.pod" - ], - "doc/man/man7/EVP_MD-MD5.7" => [ - "doc/man7/EVP_MD-MD5.pod" - ], - "doc/man/man7/EVP_MD-MDC2.7" => [ - "doc/man7/EVP_MD-MDC2.pod" - ], - "doc/man/man7/EVP_MD-NULL.7" => [ - "doc/man7/EVP_MD-NULL.pod" - ], - "doc/man/man7/EVP_MD-RIPEMD160.7" => [ - "doc/man7/EVP_MD-RIPEMD160.pod" - ], - "doc/man/man7/EVP_MD-SHA1.7" => [ - "doc/man7/EVP_MD-SHA1.pod" - ], - "doc/man/man7/EVP_MD-SHA2.7" => [ - "doc/man7/EVP_MD-SHA2.pod" - ], - "doc/man/man7/EVP_MD-SHA3.7" => [ - "doc/man7/EVP_MD-SHA3.pod" - ], - "doc/man/man7/EVP_MD-SHAKE.7" => [ - "doc/man7/EVP_MD-SHAKE.pod" - ], - "doc/man/man7/EVP_MD-SM3.7" => [ - "doc/man7/EVP_MD-SM3.pod" - ], - "doc/man/man7/EVP_MD-WHIRLPOOL.7" => [ - "doc/man7/EVP_MD-WHIRLPOOL.pod" - ], - "doc/man/man7/EVP_MD-common.7" => [ - "doc/man7/EVP_MD-common.pod" - ], - "doc/man/man7/EVP_PKEY-DH.7" => [ - "doc/man7/EVP_PKEY-DH.pod" - ], - "doc/man/man7/EVP_PKEY-DSA.7" => [ - "doc/man7/EVP_PKEY-DSA.pod" - ], - "doc/man/man7/EVP_PKEY-EC.7" => [ - "doc/man7/EVP_PKEY-EC.pod" - ], - "doc/man/man7/EVP_PKEY-FFC.7" => [ - "doc/man7/EVP_PKEY-FFC.pod" - ], - "doc/man/man7/EVP_PKEY-HMAC.7" => [ - "doc/man7/EVP_PKEY-HMAC.pod" - ], - "doc/man/man7/EVP_PKEY-ML-DSA.7" => [ - "doc/man7/EVP_PKEY-ML-DSA.pod" - ], - "doc/man/man7/EVP_PKEY-ML-KEM.7" => [ - "doc/man7/EVP_PKEY-ML-KEM.pod" - ], - "doc/man/man7/EVP_PKEY-RSA.7" => [ - "doc/man7/EVP_PKEY-RSA.pod" - ], - "doc/man/man7/EVP_PKEY-SLH-DSA.7" => [ - "doc/man7/EVP_PKEY-SLH-DSA.pod" - ], - "doc/man/man7/EVP_PKEY-SM2.7" => [ - "doc/man7/EVP_PKEY-SM2.pod" - ], - "doc/man/man7/EVP_PKEY-X25519.7" => [ - "doc/man7/EVP_PKEY-X25519.pod" - ], - "doc/man/man7/EVP_RAND-CRNG-TEST.7" => [ - "doc/man7/EVP_RAND-CRNG-TEST.pod" - ], - "doc/man/man7/EVP_RAND-CTR-DRBG.7" => [ - "doc/man7/EVP_RAND-CTR-DRBG.pod" - ], - "doc/man/man7/EVP_RAND-HASH-DRBG.7" => [ - "doc/man7/EVP_RAND-HASH-DRBG.pod" - ], - "doc/man/man7/EVP_RAND-HMAC-DRBG.7" => [ - "doc/man7/EVP_RAND-HMAC-DRBG.pod" - ], - "doc/man/man7/EVP_RAND-JITTER.7" => [ - "doc/man7/EVP_RAND-JITTER.pod" - ], - "doc/man/man7/EVP_RAND-SEED-SRC.7" => [ - "doc/man7/EVP_RAND-SEED-SRC.pod" - ], - "doc/man/man7/EVP_RAND-TEST-RAND.7" => [ - "doc/man7/EVP_RAND-TEST-RAND.pod" - ], - "doc/man/man7/EVP_RAND.7" => [ - "doc/man7/EVP_RAND.pod" - ], - "doc/man/man7/EVP_SIGNATURE-DSA.7" => [ - "doc/man7/EVP_SIGNATURE-DSA.pod" - ], - "doc/man/man7/EVP_SIGNATURE-ECDSA.7" => [ - "doc/man7/EVP_SIGNATURE-ECDSA.pod" - ], - "doc/man/man7/EVP_SIGNATURE-ED25519.7" => [ - "doc/man7/EVP_SIGNATURE-ED25519.pod" - ], - "doc/man/man7/EVP_SIGNATURE-HMAC.7" => [ - "doc/man7/EVP_SIGNATURE-HMAC.pod" - ], - "doc/man/man7/EVP_SIGNATURE-ML-DSA.7" => [ - "doc/man7/EVP_SIGNATURE-ML-DSA.pod" - ], - "doc/man/man7/EVP_SIGNATURE-RSA.7" => [ - "doc/man7/EVP_SIGNATURE-RSA.pod" - ], - "doc/man/man7/EVP_SIGNATURE-SLH-DSA.7" => [ - "doc/man7/EVP_SIGNATURE-SLH-DSA.pod" - ], - "doc/man/man7/OSSL_PROVIDER-FIPS.7" => [ - "doc/man7/OSSL_PROVIDER-FIPS.pod" - ], - "doc/man/man7/OSSL_PROVIDER-base.7" => [ - "doc/man7/OSSL_PROVIDER-base.pod" - ], - "doc/man/man7/OSSL_PROVIDER-default.7" => [ - "doc/man7/OSSL_PROVIDER-default.pod" - ], - "doc/man/man7/OSSL_PROVIDER-legacy.7" => [ - "doc/man7/OSSL_PROVIDER-legacy.pod" - ], - "doc/man/man7/OSSL_PROVIDER-null.7" => [ - "doc/man7/OSSL_PROVIDER-null.pod" - ], - "doc/man/man7/OSSL_STORE-winstore.7" => [ - "doc/man7/OSSL_STORE-winstore.pod" - ], - "doc/man/man7/RAND.7" => [ - "doc/man7/RAND.pod" - ], - "doc/man/man7/RSA-PSS.7" => [ - "doc/man7/RSA-PSS.pod" - ], - "doc/man/man7/X25519.7" => [ - "doc/man7/X25519.pod" - ], - "doc/man/man7/bio.7" => [ - "doc/man7/bio.pod" - ], - "doc/man/man7/ct.7" => [ - "doc/man7/ct.pod" - ], - "doc/man/man7/des_modes.7" => [ - "doc/man7/des_modes.pod" - ], - "doc/man/man7/evp.7" => [ - "doc/man7/evp.pod" - ], - "doc/man/man7/fips_module.7" => [ - "doc/man7/fips_module.pod" - ], - "doc/man/man7/life_cycle-cipher.7" => [ - "doc/man7/life_cycle-cipher.pod" - ], - "doc/man/man7/life_cycle-digest.7" => [ - "doc/man7/life_cycle-digest.pod" - ], - "doc/man/man7/life_cycle-kdf.7" => [ - "doc/man7/life_cycle-kdf.pod" - ], - "doc/man/man7/life_cycle-mac.7" => [ - "doc/man7/life_cycle-mac.pod" - ], - "doc/man/man7/life_cycle-pkey.7" => [ - "doc/man7/life_cycle-pkey.pod" - ], - "doc/man/man7/life_cycle-rand.7" => [ - "doc/man7/life_cycle-rand.pod" - ], - "doc/man/man7/openssl-core.h.7" => [ - "doc/man7/openssl-core.h.pod" - ], - "doc/man/man7/openssl-core_dispatch.h.7" => [ - "doc/man7/openssl-core_dispatch.h.pod" - ], - "doc/man/man7/openssl-core_names.h.7" => [ - "doc/man7/openssl-core_names.h.pod" - ], - "doc/man/man7/openssl-env.7" => [ - "doc/man7/openssl-env.pod" - ], - "doc/man/man7/openssl-glossary.7" => [ - "doc/man7/openssl-glossary.pod" - ], - "doc/man/man7/openssl-qlog.7" => [ - "doc/man7/openssl-qlog.pod" - ], - "doc/man/man7/openssl-quic-concurrency.7" => [ - "doc/man7/openssl-quic-concurrency.pod" - ], - "doc/man/man7/openssl-quic.7" => [ - "doc/man7/openssl-quic.pod" - ], - "doc/man/man7/openssl-threads.7" => [ - "doc/man7/openssl-threads.pod" - ], - "doc/man/man7/openssl_user_macros.7" => [ - "doc/man7/openssl_user_macros.pod" - ], - "doc/man/man7/ossl-guide-introduction.7" => [ - "doc/man7/ossl-guide-introduction.pod" - ], - "doc/man/man7/ossl-guide-libcrypto-introduction.7" => [ - "doc/man7/ossl-guide-libcrypto-introduction.pod" - ], - "doc/man/man7/ossl-guide-libraries-introduction.7" => [ - "doc/man7/ossl-guide-libraries-introduction.pod" - ], - "doc/man/man7/ossl-guide-libssl-introduction.7" => [ - "doc/man7/ossl-guide-libssl-introduction.pod" - ], - "doc/man/man7/ossl-guide-migration.7" => [ - "doc/man7/ossl-guide-migration.pod" - ], - "doc/man/man7/ossl-guide-quic-client-block.7" => [ - "doc/man7/ossl-guide-quic-client-block.pod" - ], - "doc/man/man7/ossl-guide-quic-client-non-block.7" => [ - "doc/man7/ossl-guide-quic-client-non-block.pod" - ], - "doc/man/man7/ossl-guide-quic-introduction.7" => [ - "doc/man7/ossl-guide-quic-introduction.pod" - ], - "doc/man/man7/ossl-guide-quic-multi-stream.7" => [ - "doc/man7/ossl-guide-quic-multi-stream.pod" - ], - "doc/man/man7/ossl-guide-quic-server-block.7" => [ - "doc/man7/ossl-guide-quic-server-block.pod" - ], - "doc/man/man7/ossl-guide-quic-server-non-block.7" => [ - "doc/man7/ossl-guide-quic-server-non-block.pod" - ], - "doc/man/man7/ossl-guide-tls-client-block.7" => [ - "doc/man7/ossl-guide-tls-client-block.pod" - ], - "doc/man/man7/ossl-guide-tls-client-non-block.7" => [ - "doc/man7/ossl-guide-tls-client-non-block.pod" - ], - "doc/man/man7/ossl-guide-tls-introduction.7" => [ - "doc/man7/ossl-guide-tls-introduction.pod" - ], - "doc/man/man7/ossl-guide-tls-server-block.7" => [ - "doc/man7/ossl-guide-tls-server-block.pod" - ], - "doc/man/man7/ossl_store-file.7" => [ - "doc/man7/ossl_store-file.pod" - ], - "doc/man/man7/ossl_store.7" => [ - "doc/man7/ossl_store.pod" - ], - "doc/man/man7/passphrase-encoding.7" => [ - "doc/man7/passphrase-encoding.pod" - ], - "doc/man/man7/property.7" => [ - "doc/man7/property.pod" - ], - "doc/man/man7/provider-asym_cipher.7" => [ - "doc/man7/provider-asym_cipher.pod" - ], - "doc/man/man7/provider-base.7" => [ - "doc/man7/provider-base.pod" - ], - "doc/man/man7/provider-cipher.7" => [ - "doc/man7/provider-cipher.pod" - ], - "doc/man/man7/provider-decoder.7" => [ - "doc/man7/provider-decoder.pod" - ], - "doc/man/man7/provider-digest.7" => [ - "doc/man7/provider-digest.pod" - ], - "doc/man/man7/provider-encoder.7" => [ - "doc/man7/provider-encoder.pod" - ], - "doc/man/man7/provider-kdf.7" => [ - "doc/man7/provider-kdf.pod" - ], - "doc/man/man7/provider-kem.7" => [ - "doc/man7/provider-kem.pod" - ], - "doc/man/man7/provider-keyexch.7" => [ - "doc/man7/provider-keyexch.pod" - ], - "doc/man/man7/provider-keymgmt.7" => [ - "doc/man7/provider-keymgmt.pod" - ], - "doc/man/man7/provider-mac.7" => [ - "doc/man7/provider-mac.pod" - ], - "doc/man/man7/provider-object.7" => [ - "doc/man7/provider-object.pod" - ], - "doc/man/man7/provider-rand.7" => [ - "doc/man7/provider-rand.pod" - ], - "doc/man/man7/provider-signature.7" => [ - "doc/man7/provider-signature.pod" - ], - "doc/man/man7/provider-skeymgmt.7" => [ - "doc/man7/provider-skeymgmt.pod" - ], - "doc/man/man7/provider-storemgmt.7" => [ - "doc/man7/provider-storemgmt.pod" - ], - "doc/man/man7/provider.7" => [ - "doc/man7/provider.pod" - ], - "doc/man/man7/proxy-certificates.7" => [ - "doc/man7/proxy-certificates.pod" - ], - "doc/man/man7/x509.7" => [ - "doc/man7/x509.pod" - ], - "doc/man1/openssl-asn1parse.pod" => [ - "doc/man1/openssl-asn1parse.pod.in" - ], - "doc/man1/openssl-ca.pod" => [ - "doc/man1/openssl-ca.pod.in" - ], - "doc/man1/openssl-ciphers.pod" => [ - "doc/man1/openssl-ciphers.pod.in" - ], - "doc/man1/openssl-cmds.pod" => [ - "doc/man1/openssl-cmds.pod.in" - ], - "doc/man1/openssl-cmp.pod" => [ - "doc/man1/openssl-cmp.pod.in" - ], - "doc/man1/openssl-cms.pod" => [ - "doc/man1/openssl-cms.pod.in" - ], - "doc/man1/openssl-crl.pod" => [ - "doc/man1/openssl-crl.pod.in" - ], - "doc/man1/openssl-crl2pkcs7.pod" => [ - "doc/man1/openssl-crl2pkcs7.pod.in" - ], - "doc/man1/openssl-dgst.pod" => [ - "doc/man1/openssl-dgst.pod.in" - ], - "doc/man1/openssl-dhparam.pod" => [ - "doc/man1/openssl-dhparam.pod.in" - ], - "doc/man1/openssl-dsa.pod" => [ - "doc/man1/openssl-dsa.pod.in" - ], - "doc/man1/openssl-dsaparam.pod" => [ - "doc/man1/openssl-dsaparam.pod.in" - ], - "doc/man1/openssl-ec.pod" => [ - "doc/man1/openssl-ec.pod.in" - ], - "doc/man1/openssl-ecparam.pod" => [ - "doc/man1/openssl-ecparam.pod.in" - ], - "doc/man1/openssl-enc.pod" => [ - "doc/man1/openssl-enc.pod.in" - ], - "doc/man1/openssl-engine.pod" => [ - "doc/man1/openssl-engine.pod.in" - ], - "doc/man1/openssl-errstr.pod" => [ - "doc/man1/openssl-errstr.pod.in" - ], - "doc/man1/openssl-fipsinstall.pod" => [ - "doc/man1/openssl-fipsinstall.pod.in" - ], - "doc/man1/openssl-gendsa.pod" => [ - "doc/man1/openssl-gendsa.pod.in" - ], - "doc/man1/openssl-genpkey.pod" => [ - "doc/man1/openssl-genpkey.pod.in" - ], - "doc/man1/openssl-genrsa.pod" => [ - "doc/man1/openssl-genrsa.pod.in" - ], - "doc/man1/openssl-info.pod" => [ - "doc/man1/openssl-info.pod.in" - ], - "doc/man1/openssl-kdf.pod" => [ - "doc/man1/openssl-kdf.pod.in" - ], - "doc/man1/openssl-list.pod" => [ - "doc/man1/openssl-list.pod.in" - ], - "doc/man1/openssl-mac.pod" => [ - "doc/man1/openssl-mac.pod.in" - ], - "doc/man1/openssl-nseq.pod" => [ - "doc/man1/openssl-nseq.pod.in" - ], - "doc/man1/openssl-ocsp.pod" => [ - "doc/man1/openssl-ocsp.pod.in" - ], - "doc/man1/openssl-passwd.pod" => [ - "doc/man1/openssl-passwd.pod.in" - ], - "doc/man1/openssl-pkcs12.pod" => [ - "doc/man1/openssl-pkcs12.pod.in" - ], - "doc/man1/openssl-pkcs7.pod" => [ - "doc/man1/openssl-pkcs7.pod.in" - ], - "doc/man1/openssl-pkcs8.pod" => [ - "doc/man1/openssl-pkcs8.pod.in" - ], - "doc/man1/openssl-pkey.pod" => [ - "doc/man1/openssl-pkey.pod.in" - ], - "doc/man1/openssl-pkeyparam.pod" => [ - "doc/man1/openssl-pkeyparam.pod.in" - ], - "doc/man1/openssl-pkeyutl.pod" => [ - "doc/man1/openssl-pkeyutl.pod.in" - ], - "doc/man1/openssl-prime.pod" => [ - "doc/man1/openssl-prime.pod.in" - ], - "doc/man1/openssl-rand.pod" => [ - "doc/man1/openssl-rand.pod.in" - ], - "doc/man1/openssl-rehash.pod" => [ - "doc/man1/openssl-rehash.pod.in" - ], - "doc/man1/openssl-req.pod" => [ - "doc/man1/openssl-req.pod.in" - ], - "doc/man1/openssl-rsa.pod" => [ - "doc/man1/openssl-rsa.pod.in" - ], - "doc/man1/openssl-rsautl.pod" => [ - "doc/man1/openssl-rsautl.pod.in" - ], - "doc/man1/openssl-s_client.pod" => [ - "doc/man1/openssl-s_client.pod.in" - ], - "doc/man1/openssl-s_server.pod" => [ - "doc/man1/openssl-s_server.pod.in" - ], - "doc/man1/openssl-s_time.pod" => [ - "doc/man1/openssl-s_time.pod.in" - ], - "doc/man1/openssl-sess_id.pod" => [ - "doc/man1/openssl-sess_id.pod.in" - ], - "doc/man1/openssl-skeyutl.pod" => [ - "doc/man1/openssl-skeyutl.pod.in" - ], - "doc/man1/openssl-smime.pod" => [ - "doc/man1/openssl-smime.pod.in" - ], - "doc/man1/openssl-speed.pod" => [ - "doc/man1/openssl-speed.pod.in" - ], - "doc/man1/openssl-spkac.pod" => [ - "doc/man1/openssl-spkac.pod.in" - ], - "doc/man1/openssl-srp.pod" => [ - "doc/man1/openssl-srp.pod.in" - ], - "doc/man1/openssl-storeutl.pod" => [ - "doc/man1/openssl-storeutl.pod.in" - ], - "doc/man1/openssl-ts.pod" => [ - "doc/man1/openssl-ts.pod.in" - ], - "doc/man1/openssl-verify.pod" => [ - "doc/man1/openssl-verify.pod.in" - ], - "doc/man1/openssl-version.pod" => [ - "doc/man1/openssl-version.pod.in" - ], - "doc/man1/openssl-x509.pod" => [ - "doc/man1/openssl-x509.pod.in" - ], - "doc/man7/openssl_user_macros.pod" => [ - "doc/man7/openssl_user_macros.pod.in" - ], - "engines/capi.ld" => [ - "util/engines.num" - ], - "engines/dasync.ld" => [ - "util/engines.num" - ], - "engines/devcrypto.ld" => [ - "util/engines.num" - ], - "engines/e_padlock-x86.S" => [ - "engines/asm/e_padlock-x86.pl" - ], - "engines/e_padlock-x86_64.s" => [ - "engines/asm/e_padlock-x86_64.pl" - ], - "engines/loader_attic.ld" => [ - "util/engines.num" - ], - "engines/ossltest.ld" => [ - "util/engines.num" - ], - "engines/padlock.ld" => [ - "util/engines.num" - ], - "exporters/OpenSSLConfig.cmake" => [ - "exporters/cmake/OpenSSLConfig.cmake.in" - ], - "exporters/OpenSSLConfigVersion.cmake" => [ - "exporters/cmake/OpenSSLConfigVersion.cmake.in" - ], - "exporters/libcrypto.pc" => [ - "exporters/pkg-config/libcrypto.pc.in" - ], - "exporters/libssl.pc" => [ - "exporters/pkg-config/libssl.pc.in" - ], - "exporters/openssl.pc" => [ - "exporters/pkg-config/openssl.pc.in" - ], - "include/crypto/bn_conf.h" => [ - "include/crypto/bn_conf.h.in" - ], - "include/crypto/dso_conf.h" => [ - "include/crypto/dso_conf.h.in" - ], - "include/internal/param_names.h" => [ - "include/internal/param_names.h.in" - ], - "include/openssl/asn1.h" => [ - "include/openssl/asn1.h.in" - ], - "include/openssl/asn1t.h" => [ - "include/openssl/asn1t.h.in" - ], - "include/openssl/bio.h" => [ - "include/openssl/bio.h.in" - ], - "include/openssl/cmp.h" => [ - "include/openssl/cmp.h.in" - ], - "include/openssl/cms.h" => [ - "include/openssl/cms.h.in" - ], - "include/openssl/comp.h" => [ - "include/openssl/comp.h.in" - ], - "include/openssl/conf.h" => [ - "include/openssl/conf.h.in" - ], - "include/openssl/configuration.h" => [ - "include/openssl/configuration.h.in" - ], - "include/openssl/core_names.h" => [ - "include/openssl/core_names.h.in" - ], - "include/openssl/crmf.h" => [ - "include/openssl/crmf.h.in" - ], - "include/openssl/crypto.h" => [ - "include/openssl/crypto.h.in" - ], - "include/openssl/ct.h" => [ - "include/openssl/ct.h.in" - ], - "include/openssl/err.h" => [ - "include/openssl/err.h.in" - ], - "include/openssl/ess.h" => [ - "include/openssl/ess.h.in" - ], - "include/openssl/fipskey.h" => [ - "include/openssl/fipskey.h.in" - ], - "include/openssl/lhash.h" => [ - "include/openssl/lhash.h.in" - ], - "include/openssl/ocsp.h" => [ - "include/openssl/ocsp.h.in" - ], - "include/openssl/opensslv.h" => [ - "include/openssl/opensslv.h.in" - ], - "include/openssl/pkcs12.h" => [ - "include/openssl/pkcs12.h.in" - ], - "include/openssl/pkcs7.h" => [ - "include/openssl/pkcs7.h.in" - ], - "include/openssl/safestack.h" => [ - "include/openssl/safestack.h.in" - ], - "include/openssl/srp.h" => [ - "include/openssl/srp.h.in" - ], - "include/openssl/ssl.h" => [ - "include/openssl/ssl.h.in" - ], - "include/openssl/ui.h" => [ - "include/openssl/ui.h.in" - ], - "include/openssl/x509.h" => [ - "include/openssl/x509.h.in" - ], - "include/openssl/x509_acert.h" => [ - "include/openssl/x509_acert.h.in" - ], - "include/openssl/x509_vfy.h" => [ - "include/openssl/x509_vfy.h.in" - ], - "include/openssl/x509v3.h" => [ - "include/openssl/x509v3.h.in" - ], - "installdata.pm" => [ - "util/mkinstallvars.pl", - "\"PREFIX=\$(INSTALLTOP)\"", - "BINDIR=bin", - "\"LIBDIR=\$(LIBDIR)\"", - "\"libdir=\$(libdir)\"", - "INCLUDEDIR=include", - "APPLINKDIR=include/openssl", - "\"ENGINESDIR=\$(ENGINESDIR)\"", - "\"MODULESDIR=\$(MODULESDIR)\"", - "\"PKGCONFIGDIR=\$(PKGCONFIGDIR)\"", - "\"CMAKECONFIGDIR=\$(CMAKECONFIGDIR)\"", - "\"LDLIBS=\$(LIB_EX_LIBS)\"", - "\"VERSION=\$(VERSION)\"" - ], - "libcrypto.ld" => [ - "util/libcrypto.num", - "libcrypto" - ], - "libcrypto.pc" => [ - "exporters/pkg-config/libcrypto.pc.in" - ], - "libssl.ld" => [ - "util/libssl.num", - "libssl" - ], - "libssl.pc" => [ - "exporters/pkg-config/libssl.pc.in" - ], - "openssl.pc" => [ - "exporters/pkg-config/openssl.pc.in" - ], - "providers/common/der/der_digests_gen.c" => [ - "providers/common/der/der_digests_gen.c.in" - ], - "providers/common/der/der_dsa_gen.c" => [ - "providers/common/der/der_dsa_gen.c.in" - ], - "providers/common/der/der_ec_gen.c" => [ - "providers/common/der/der_ec_gen.c.in" - ], - "providers/common/der/der_ecx_gen.c" => [ - "providers/common/der/der_ecx_gen.c.in" - ], - "providers/common/der/der_ml_dsa_gen.c" => [ - "providers/common/der/der_ml_dsa_gen.c.in" - ], - "providers/common/der/der_rsa_gen.c" => [ - "providers/common/der/der_rsa_gen.c.in" - ], - "providers/common/der/der_slh_dsa_gen.c" => [ - "providers/common/der/der_slh_dsa_gen.c.in" - ], - "providers/common/der/der_wrap_gen.c" => [ - "providers/common/der/der_wrap_gen.c.in" - ], - "providers/common/include/prov/der_digests.h" => [ - "providers/common/include/prov/der_digests.h.in" - ], - "providers/common/include/prov/der_dsa.h" => [ - "providers/common/include/prov/der_dsa.h.in" - ], - "providers/common/include/prov/der_ec.h" => [ - "providers/common/include/prov/der_ec.h.in" - ], - "providers/common/include/prov/der_ecx.h" => [ - "providers/common/include/prov/der_ecx.h.in" - ], - "providers/common/include/prov/der_ml_dsa.h" => [ - "providers/common/include/prov/der_ml_dsa.h.in" - ], - "providers/common/include/prov/der_rsa.h" => [ - "providers/common/include/prov/der_rsa.h.in" - ], - "providers/common/include/prov/der_slh_dsa.h" => [ - "providers/common/include/prov/der_slh_dsa.h.in" - ], - "providers/common/include/prov/der_wrap.h" => [ - "providers/common/include/prov/der_wrap.h.in" - ], - "providers/legacy.ld" => [ - "util/providers.num" - ], - "test/buildtest_aes.c" => [ - "test/generate_buildtest.pl", - "aes" - ], - "test/buildtest_asn1.c" => [ - "test/generate_buildtest.pl", - "asn1" - ], - "test/buildtest_asn1t.c" => [ - "test/generate_buildtest.pl", - "asn1t" - ], - "test/buildtest_async.c" => [ - "test/generate_buildtest.pl", - "async" - ], - "test/buildtest_bio.c" => [ - "test/generate_buildtest.pl", - "bio" - ], - "test/buildtest_blowfish.c" => [ - "test/generate_buildtest.pl", - "blowfish" - ], - "test/buildtest_bn.c" => [ - "test/generate_buildtest.pl", - "bn" - ], - "test/buildtest_buffer.c" => [ - "test/generate_buildtest.pl", - "buffer" - ], - "test/buildtest_byteorder.c" => [ - "test/generate_buildtest.pl", - "byteorder" - ], - "test/buildtest_camellia.c" => [ - "test/generate_buildtest.pl", - "camellia" - ], - "test/buildtest_cast.c" => [ - "test/generate_buildtest.pl", - "cast" - ], - "test/buildtest_cmac.c" => [ - "test/generate_buildtest.pl", - "cmac" - ], - "test/buildtest_cmp.c" => [ - "test/generate_buildtest.pl", - "cmp" - ], - "test/buildtest_cmp_util.c" => [ - "test/generate_buildtest.pl", - "cmp_util" - ], - "test/buildtest_cms.c" => [ - "test/generate_buildtest.pl", - "cms" - ], - "test/buildtest_comp.c" => [ - "test/generate_buildtest.pl", - "comp" - ], - "test/buildtest_conf.c" => [ - "test/generate_buildtest.pl", - "conf" - ], - "test/buildtest_conf_api.c" => [ - "test/generate_buildtest.pl", - "conf_api" - ], - "test/buildtest_configuration.c" => [ - "test/generate_buildtest.pl", - "configuration" - ], - "test/buildtest_conftypes.c" => [ - "test/generate_buildtest.pl", - "conftypes" - ], - "test/buildtest_core.c" => [ - "test/generate_buildtest.pl", - "core" - ], - "test/buildtest_core_dispatch.c" => [ - "test/generate_buildtest.pl", - "core_dispatch" - ], - "test/buildtest_core_names.c" => [ - "test/generate_buildtest.pl", - "core_names" - ], - "test/buildtest_core_object.c" => [ - "test/generate_buildtest.pl", - "core_object" - ], - "test/buildtest_crmf.c" => [ - "test/generate_buildtest.pl", - "crmf" - ], - "test/buildtest_crypto.c" => [ - "test/generate_buildtest.pl", - "crypto" - ], - "test/buildtest_cryptoerr_legacy.c" => [ - "test/generate_buildtest.pl", - "cryptoerr_legacy" - ], - "test/buildtest_ct.c" => [ - "test/generate_buildtest.pl", - "ct" - ], - "test/buildtest_decoder.c" => [ - "test/generate_buildtest.pl", - "decoder" - ], - "test/buildtest_des.c" => [ - "test/generate_buildtest.pl", - "des" - ], - "test/buildtest_dh.c" => [ - "test/generate_buildtest.pl", - "dh" - ], - "test/buildtest_dsa.c" => [ - "test/generate_buildtest.pl", - "dsa" - ], - "test/buildtest_dtls1.c" => [ - "test/generate_buildtest.pl", - "dtls1" - ], - "test/buildtest_e_os2.c" => [ - "test/generate_buildtest.pl", - "e_os2" - ], - "test/buildtest_e_ostime.c" => [ - "test/generate_buildtest.pl", - "e_ostime" - ], - "test/buildtest_ebcdic.c" => [ - "test/generate_buildtest.pl", - "ebcdic" - ], - "test/buildtest_ec.c" => [ - "test/generate_buildtest.pl", - "ec" - ], - "test/buildtest_ecdh.c" => [ - "test/generate_buildtest.pl", - "ecdh" - ], - "test/buildtest_ecdsa.c" => [ - "test/generate_buildtest.pl", - "ecdsa" - ], - "test/buildtest_encoder.c" => [ - "test/generate_buildtest.pl", - "encoder" - ], - "test/buildtest_engine.c" => [ - "test/generate_buildtest.pl", - "engine" - ], - "test/buildtest_ess.c" => [ - "test/generate_buildtest.pl", - "ess" - ], - "test/buildtest_evp.c" => [ - "test/generate_buildtest.pl", - "evp" - ], - "test/buildtest_fips_names.c" => [ - "test/generate_buildtest.pl", - "fips_names" - ], - "test/buildtest_fipskey.c" => [ - "test/generate_buildtest.pl", - "fipskey" - ], - "test/buildtest_hmac.c" => [ - "test/generate_buildtest.pl", - "hmac" - ], - "test/buildtest_hpke.c" => [ - "test/generate_buildtest.pl", - "hpke" - ], - "test/buildtest_http.c" => [ - "test/generate_buildtest.pl", - "http" - ], - "test/buildtest_indicator.c" => [ - "test/generate_buildtest.pl", - "indicator" - ], - "test/buildtest_kdf.c" => [ - "test/generate_buildtest.pl", - "kdf" - ], - "test/buildtest_lhash.c" => [ - "test/generate_buildtest.pl", - "lhash" - ], - "test/buildtest_macros.c" => [ - "test/generate_buildtest.pl", - "macros" - ], - "test/buildtest_md4.c" => [ - "test/generate_buildtest.pl", - "md4" - ], - "test/buildtest_md5.c" => [ - "test/generate_buildtest.pl", - "md5" - ], - "test/buildtest_ml_kem.c" => [ - "test/generate_buildtest.pl", - "ml_kem" - ], - "test/buildtest_modes.c" => [ - "test/generate_buildtest.pl", - "modes" - ], - "test/buildtest_obj_mac.c" => [ - "test/generate_buildtest.pl", - "obj_mac" - ], - "test/buildtest_objects.c" => [ - "test/generate_buildtest.pl", - "objects" - ], - "test/buildtest_ocsp.c" => [ - "test/generate_buildtest.pl", - "ocsp" - ], - "test/buildtest_opensslv.c" => [ - "test/generate_buildtest.pl", - "opensslv" - ], - "test/buildtest_ossl_typ.c" => [ - "test/generate_buildtest.pl", - "ossl_typ" - ], - "test/buildtest_param_build.c" => [ - "test/generate_buildtest.pl", - "param_build" - ], - "test/buildtest_params.c" => [ - "test/generate_buildtest.pl", - "params" - ], - "test/buildtest_pem.c" => [ - "test/generate_buildtest.pl", - "pem" - ], - "test/buildtest_pem2.c" => [ - "test/generate_buildtest.pl", - "pem2" - ], - "test/buildtest_pkcs12.c" => [ - "test/generate_buildtest.pl", - "pkcs12" - ], - "test/buildtest_pkcs7.c" => [ - "test/generate_buildtest.pl", - "pkcs7" - ], - "test/buildtest_prov_ssl.c" => [ - "test/generate_buildtest.pl", - "prov_ssl" - ], - "test/buildtest_provider.c" => [ - "test/generate_buildtest.pl", - "provider" - ], - "test/buildtest_quic.c" => [ - "test/generate_buildtest.pl", - "quic" - ], - "test/buildtest_rand.c" => [ - "test/generate_buildtest.pl", - "rand" - ], - "test/buildtest_rc2.c" => [ - "test/generate_buildtest.pl", - "rc2" - ], - "test/buildtest_rc4.c" => [ - "test/generate_buildtest.pl", - "rc4" - ], - "test/buildtest_ripemd.c" => [ - "test/generate_buildtest.pl", - "ripemd" - ], - "test/buildtest_rsa.c" => [ - "test/generate_buildtest.pl", - "rsa" - ], - "test/buildtest_safestack.c" => [ - "test/generate_buildtest.pl", - "safestack" - ], - "test/buildtest_seed.c" => [ - "test/generate_buildtest.pl", - "seed" - ], - "test/buildtest_self_test.c" => [ - "test/generate_buildtest.pl", - "self_test" - ], - "test/buildtest_sha.c" => [ - "test/generate_buildtest.pl", - "sha" - ], - "test/buildtest_srp.c" => [ - "test/generate_buildtest.pl", - "srp" - ], - "test/buildtest_srtp.c" => [ - "test/generate_buildtest.pl", - "srtp" - ], - "test/buildtest_ssl.c" => [ - "test/generate_buildtest.pl", - "ssl" - ], - "test/buildtest_ssl2.c" => [ - "test/generate_buildtest.pl", - "ssl2" - ], - "test/buildtest_sslerr_legacy.c" => [ - "test/generate_buildtest.pl", - "sslerr_legacy" - ], - "test/buildtest_stack.c" => [ - "test/generate_buildtest.pl", - "stack" - ], - "test/buildtest_store.c" => [ - "test/generate_buildtest.pl", - "store" - ], - "test/buildtest_symhacks.c" => [ - "test/generate_buildtest.pl", - "symhacks" - ], - "test/buildtest_thread.c" => [ - "test/generate_buildtest.pl", - "thread" - ], - "test/buildtest_tls1.c" => [ - "test/generate_buildtest.pl", - "tls1" - ], - "test/buildtest_ts.c" => [ - "test/generate_buildtest.pl", - "ts" - ], - "test/buildtest_txt_db.c" => [ - "test/generate_buildtest.pl", - "txt_db" - ], - "test/buildtest_types.c" => [ - "test/generate_buildtest.pl", - "types" - ], - "test/buildtest_ui.c" => [ - "test/generate_buildtest.pl", - "ui" - ], - "test/buildtest_whrlpool.c" => [ - "test/generate_buildtest.pl", - "whrlpool" - ], - "test/buildtest_x509.c" => [ - "test/generate_buildtest.pl", - "x509" - ], - "test/buildtest_x509_acert.c" => [ - "test/generate_buildtest.pl", - "x509_acert" - ], - "test/buildtest_x509_vfy.c" => [ - "test/generate_buildtest.pl", - "x509_vfy" - ], - "test/buildtest_x509v3.c" => [ - "test/generate_buildtest.pl", - "x509v3" - ], - "test/p_minimal.ld" => [ - "util/providers.num" - ], - "test/p_test.ld" => [ - "util/providers.num" - ], - "test/provider_internal_test.cnf" => [ - "test/provider_internal_test.cnf.in" - ] - }, - "htmldocs" => { - "man1" => [ - "doc/html/man1/CA.pl.html", - "doc/html/man1/openssl-asn1parse.html", - "doc/html/man1/openssl-ca.html", - "doc/html/man1/openssl-ciphers.html", - "doc/html/man1/openssl-cmds.html", - "doc/html/man1/openssl-cmp.html", - "doc/html/man1/openssl-cms.html", - "doc/html/man1/openssl-crl.html", - "doc/html/man1/openssl-crl2pkcs7.html", - "doc/html/man1/openssl-dgst.html", - "doc/html/man1/openssl-dhparam.html", - "doc/html/man1/openssl-dsa.html", - "doc/html/man1/openssl-dsaparam.html", - "doc/html/man1/openssl-ec.html", - "doc/html/man1/openssl-ecparam.html", - "doc/html/man1/openssl-enc.html", - "doc/html/man1/openssl-engine.html", - "doc/html/man1/openssl-errstr.html", - "doc/html/man1/openssl-fipsinstall.html", - "doc/html/man1/openssl-format-options.html", - "doc/html/man1/openssl-gendsa.html", - "doc/html/man1/openssl-genpkey.html", - "doc/html/man1/openssl-genrsa.html", - "doc/html/man1/openssl-info.html", - "doc/html/man1/openssl-kdf.html", - "doc/html/man1/openssl-list.html", - "doc/html/man1/openssl-mac.html", - "doc/html/man1/openssl-namedisplay-options.html", - "doc/html/man1/openssl-nseq.html", - "doc/html/man1/openssl-ocsp.html", - "doc/html/man1/openssl-passphrase-options.html", - "doc/html/man1/openssl-passwd.html", - "doc/html/man1/openssl-pkcs12.html", - "doc/html/man1/openssl-pkcs7.html", - "doc/html/man1/openssl-pkcs8.html", - "doc/html/man1/openssl-pkey.html", - "doc/html/man1/openssl-pkeyparam.html", - "doc/html/man1/openssl-pkeyutl.html", - "doc/html/man1/openssl-prime.html", - "doc/html/man1/openssl-rand.html", - "doc/html/man1/openssl-rehash.html", - "doc/html/man1/openssl-req.html", - "doc/html/man1/openssl-rsa.html", - "doc/html/man1/openssl-rsautl.html", - "doc/html/man1/openssl-s_client.html", - "doc/html/man1/openssl-s_server.html", - "doc/html/man1/openssl-s_time.html", - "doc/html/man1/openssl-sess_id.html", - "doc/html/man1/openssl-skeyutl.html", - "doc/html/man1/openssl-smime.html", - "doc/html/man1/openssl-speed.html", - "doc/html/man1/openssl-spkac.html", - "doc/html/man1/openssl-srp.html", - "doc/html/man1/openssl-storeutl.html", - "doc/html/man1/openssl-ts.html", - "doc/html/man1/openssl-verification-options.html", - "doc/html/man1/openssl-verify.html", - "doc/html/man1/openssl-version.html", - "doc/html/man1/openssl-x509.html", - "doc/html/man1/openssl.html", - "doc/html/man1/tsget.html" - ], - "man3" => [ - "doc/html/man3/ADMISSIONS.html", - "doc/html/man3/ASN1_EXTERN_FUNCS.html", - "doc/html/man3/ASN1_INTEGER_get_int64.html", - "doc/html/man3/ASN1_INTEGER_new.html", - "doc/html/man3/ASN1_ITEM_lookup.html", - "doc/html/man3/ASN1_OBJECT_new.html", - "doc/html/man3/ASN1_STRING_TABLE_add.html", - "doc/html/man3/ASN1_STRING_length.html", - "doc/html/man3/ASN1_STRING_new.html", - "doc/html/man3/ASN1_STRING_print_ex.html", - "doc/html/man3/ASN1_TIME_set.html", - "doc/html/man3/ASN1_TYPE_get.html", - "doc/html/man3/ASN1_aux_cb.html", - "doc/html/man3/ASN1_generate_nconf.html", - "doc/html/man3/ASN1_item_d2i_bio.html", - "doc/html/man3/ASN1_item_new.html", - "doc/html/man3/ASN1_item_sign.html", - "doc/html/man3/ASYNC_WAIT_CTX_new.html", - "doc/html/man3/ASYNC_start_job.html", - "doc/html/man3/BF_encrypt.html", - "doc/html/man3/BIO_ADDR.html", - "doc/html/man3/BIO_ADDRINFO.html", - "doc/html/man3/BIO_connect.html", - "doc/html/man3/BIO_ctrl.html", - "doc/html/man3/BIO_f_base64.html", - "doc/html/man3/BIO_f_buffer.html", - "doc/html/man3/BIO_f_cipher.html", - "doc/html/man3/BIO_f_md.html", - "doc/html/man3/BIO_f_null.html", - "doc/html/man3/BIO_f_prefix.html", - "doc/html/man3/BIO_f_readbuffer.html", - "doc/html/man3/BIO_f_ssl.html", - "doc/html/man3/BIO_find_type.html", - "doc/html/man3/BIO_get_data.html", - "doc/html/man3/BIO_get_ex_new_index.html", - "doc/html/man3/BIO_get_rpoll_descriptor.html", - "doc/html/man3/BIO_meth_new.html", - "doc/html/man3/BIO_new.html", - "doc/html/man3/BIO_new_CMS.html", - "doc/html/man3/BIO_parse_hostserv.html", - "doc/html/man3/BIO_printf.html", - "doc/html/man3/BIO_push.html", - "doc/html/man3/BIO_read.html", - "doc/html/man3/BIO_s_accept.html", - "doc/html/man3/BIO_s_bio.html", - "doc/html/man3/BIO_s_connect.html", - "doc/html/man3/BIO_s_core.html", - "doc/html/man3/BIO_s_datagram.html", - "doc/html/man3/BIO_s_dgram_pair.html", - "doc/html/man3/BIO_s_fd.html", - "doc/html/man3/BIO_s_file.html", - "doc/html/man3/BIO_s_mem.html", - "doc/html/man3/BIO_s_null.html", - "doc/html/man3/BIO_s_socket.html", - "doc/html/man3/BIO_sendmmsg.html", - "doc/html/man3/BIO_set_callback.html", - "doc/html/man3/BIO_should_retry.html", - "doc/html/man3/BIO_socket_wait.html", - "doc/html/man3/BN_BLINDING_new.html", - "doc/html/man3/BN_CTX_new.html", - "doc/html/man3/BN_CTX_start.html", - "doc/html/man3/BN_add.html", - "doc/html/man3/BN_add_word.html", - "doc/html/man3/BN_bn2bin.html", - "doc/html/man3/BN_cmp.html", - "doc/html/man3/BN_copy.html", - "doc/html/man3/BN_generate_prime.html", - "doc/html/man3/BN_mod_exp_mont.html", - "doc/html/man3/BN_mod_inverse.html", - "doc/html/man3/BN_mod_mul_montgomery.html", - "doc/html/man3/BN_mod_mul_reciprocal.html", - "doc/html/man3/BN_new.html", - "doc/html/man3/BN_num_bytes.html", - "doc/html/man3/BN_rand.html", - "doc/html/man3/BN_security_bits.html", - "doc/html/man3/BN_set_bit.html", - "doc/html/man3/BN_swap.html", - "doc/html/man3/BN_zero.html", - "doc/html/man3/BUF_MEM_new.html", - "doc/html/man3/CMAC_CTX.html", - "doc/html/man3/CMS_EncryptedData_decrypt.html", - "doc/html/man3/CMS_EncryptedData_encrypt.html", - "doc/html/man3/CMS_EnvelopedData_create.html", - "doc/html/man3/CMS_add0_cert.html", - "doc/html/man3/CMS_add1_recipient_cert.html", - "doc/html/man3/CMS_add1_signer.html", - "doc/html/man3/CMS_compress.html", - "doc/html/man3/CMS_data_create.html", - "doc/html/man3/CMS_decrypt.html", - "doc/html/man3/CMS_digest_create.html", - "doc/html/man3/CMS_encrypt.html", - "doc/html/man3/CMS_final.html", - "doc/html/man3/CMS_get0_RecipientInfos.html", - "doc/html/man3/CMS_get0_SignerInfos.html", - "doc/html/man3/CMS_get0_type.html", - "doc/html/man3/CMS_get1_ReceiptRequest.html", - "doc/html/man3/CMS_sign.html", - "doc/html/man3/CMS_sign_receipt.html", - "doc/html/man3/CMS_signed_get_attr.html", - "doc/html/man3/CMS_uncompress.html", - "doc/html/man3/CMS_verify.html", - "doc/html/man3/CMS_verify_receipt.html", - "doc/html/man3/COMP_CTX_new.html", - "doc/html/man3/CONF_modules_free.html", - "doc/html/man3/CONF_modules_load_file.html", - "doc/html/man3/CRYPTO_THREAD_run_once.html", - "doc/html/man3/CRYPTO_get_ex_new_index.html", - "doc/html/man3/CRYPTO_memcmp.html", - "doc/html/man3/CTLOG_STORE_get0_log_by_id.html", - "doc/html/man3/CTLOG_STORE_new.html", - "doc/html/man3/CTLOG_new.html", - "doc/html/man3/CT_POLICY_EVAL_CTX_new.html", - "doc/html/man3/DEFINE_STACK_OF.html", - "doc/html/man3/DES_random_key.html", - "doc/html/man3/DH_generate_key.html", - "doc/html/man3/DH_generate_parameters.html", - "doc/html/man3/DH_get0_pqg.html", - "doc/html/man3/DH_get_1024_160.html", - "doc/html/man3/DH_meth_new.html", - "doc/html/man3/DH_new.html", - "doc/html/man3/DH_new_by_nid.html", - "doc/html/man3/DH_set_method.html", - "doc/html/man3/DH_size.html", - "doc/html/man3/DSA_SIG_new.html", - "doc/html/man3/DSA_do_sign.html", - "doc/html/man3/DSA_dup_DH.html", - "doc/html/man3/DSA_generate_key.html", - "doc/html/man3/DSA_generate_parameters.html", - "doc/html/man3/DSA_get0_pqg.html", - "doc/html/man3/DSA_meth_new.html", - "doc/html/man3/DSA_new.html", - "doc/html/man3/DSA_set_method.html", - "doc/html/man3/DSA_sign.html", - "doc/html/man3/DSA_size.html", - "doc/html/man3/DTLS_get_data_mtu.html", - "doc/html/man3/DTLS_set_timer_cb.html", - "doc/html/man3/DTLSv1_get_timeout.html", - "doc/html/man3/DTLSv1_handle_timeout.html", - "doc/html/man3/DTLSv1_listen.html", - "doc/html/man3/ECDSA_SIG_new.html", - "doc/html/man3/ECDSA_sign.html", - "doc/html/man3/ECPKParameters_print.html", - "doc/html/man3/EC_GFp_simple_method.html", - "doc/html/man3/EC_GROUP_copy.html", - "doc/html/man3/EC_GROUP_new.html", - "doc/html/man3/EC_KEY_get_enc_flags.html", - "doc/html/man3/EC_KEY_new.html", - "doc/html/man3/EC_POINT_add.html", - "doc/html/man3/EC_POINT_new.html", - "doc/html/man3/ENGINE_add.html", - "doc/html/man3/ERR_GET_LIB.html", - "doc/html/man3/ERR_clear_error.html", - "doc/html/man3/ERR_error_string.html", - "doc/html/man3/ERR_get_error.html", - "doc/html/man3/ERR_load_crypto_strings.html", - "doc/html/man3/ERR_load_strings.html", - "doc/html/man3/ERR_new.html", - "doc/html/man3/ERR_print_errors.html", - "doc/html/man3/ERR_put_error.html", - "doc/html/man3/ERR_remove_state.html", - "doc/html/man3/ERR_set_mark.html", - "doc/html/man3/EVP_ASYM_CIPHER_free.html", - "doc/html/man3/EVP_BytesToKey.html", - "doc/html/man3/EVP_CIPHER_CTX_get_cipher_data.html", - "doc/html/man3/EVP_CIPHER_CTX_get_original_iv.html", - "doc/html/man3/EVP_CIPHER_meth_new.html", - "doc/html/man3/EVP_DigestInit.html", - "doc/html/man3/EVP_DigestSignInit.html", - "doc/html/man3/EVP_DigestVerifyInit.html", - "doc/html/man3/EVP_EncodeInit.html", - "doc/html/man3/EVP_EncryptInit.html", - "doc/html/man3/EVP_KDF.html", - "doc/html/man3/EVP_KEM_free.html", - "doc/html/man3/EVP_KEYEXCH_free.html", - "doc/html/man3/EVP_KEYMGMT.html", - "doc/html/man3/EVP_MAC.html", - "doc/html/man3/EVP_MD_meth_new.html", - "doc/html/man3/EVP_OpenInit.html", - "doc/html/man3/EVP_PBE_CipherInit.html", - "doc/html/man3/EVP_PKEY2PKCS8.html", - "doc/html/man3/EVP_PKEY_ASN1_METHOD.html", - "doc/html/man3/EVP_PKEY_CTX_ctrl.html", - "doc/html/man3/EVP_PKEY_CTX_get0_libctx.html", - "doc/html/man3/EVP_PKEY_CTX_get0_pkey.html", - "doc/html/man3/EVP_PKEY_CTX_get_algor.html", - "doc/html/man3/EVP_PKEY_CTX_new.html", - "doc/html/man3/EVP_PKEY_CTX_set1_pbe_pass.html", - "doc/html/man3/EVP_PKEY_CTX_set_hkdf_md.html", - "doc/html/man3/EVP_PKEY_CTX_set_params.html", - "doc/html/man3/EVP_PKEY_CTX_set_rsa_pss_keygen_md.html", - "doc/html/man3/EVP_PKEY_CTX_set_scrypt_N.html", - "doc/html/man3/EVP_PKEY_CTX_set_tls1_prf_md.html", - "doc/html/man3/EVP_PKEY_asn1_get_count.html", - "doc/html/man3/EVP_PKEY_check.html", - "doc/html/man3/EVP_PKEY_copy_parameters.html", - "doc/html/man3/EVP_PKEY_decapsulate.html", - "doc/html/man3/EVP_PKEY_decrypt.html", - "doc/html/man3/EVP_PKEY_derive.html", - "doc/html/man3/EVP_PKEY_digestsign_supports_digest.html", - "doc/html/man3/EVP_PKEY_encapsulate.html", - "doc/html/man3/EVP_PKEY_encrypt.html", - "doc/html/man3/EVP_PKEY_fromdata.html", - "doc/html/man3/EVP_PKEY_get_attr.html", - "doc/html/man3/EVP_PKEY_get_default_digest_nid.html", - "doc/html/man3/EVP_PKEY_get_field_type.html", - "doc/html/man3/EVP_PKEY_get_group_name.html", - "doc/html/man3/EVP_PKEY_get_size.html", - "doc/html/man3/EVP_PKEY_gettable_params.html", - "doc/html/man3/EVP_PKEY_is_a.html", - "doc/html/man3/EVP_PKEY_keygen.html", - "doc/html/man3/EVP_PKEY_meth_get_count.html", - "doc/html/man3/EVP_PKEY_meth_new.html", - "doc/html/man3/EVP_PKEY_new.html", - "doc/html/man3/EVP_PKEY_print_private.html", - "doc/html/man3/EVP_PKEY_set1_RSA.html", - "doc/html/man3/EVP_PKEY_set1_encoded_public_key.html", - "doc/html/man3/EVP_PKEY_set_type.html", - "doc/html/man3/EVP_PKEY_settable_params.html", - "doc/html/man3/EVP_PKEY_sign.html", - "doc/html/man3/EVP_PKEY_todata.html", - "doc/html/man3/EVP_PKEY_verify.html", - "doc/html/man3/EVP_PKEY_verify_recover.html", - "doc/html/man3/EVP_RAND.html", - "doc/html/man3/EVP_SIGNATURE.html", - "doc/html/man3/EVP_SKEY.html", - "doc/html/man3/EVP_SKEYMGMT.html", - "doc/html/man3/EVP_SealInit.html", - "doc/html/man3/EVP_SignInit.html", - "doc/html/man3/EVP_VerifyInit.html", - "doc/html/man3/EVP_aes_128_gcm.html", - "doc/html/man3/EVP_aria_128_gcm.html", - "doc/html/man3/EVP_bf_cbc.html", - "doc/html/man3/EVP_blake2b512.html", - "doc/html/man3/EVP_camellia_128_ecb.html", - "doc/html/man3/EVP_cast5_cbc.html", - "doc/html/man3/EVP_chacha20.html", - "doc/html/man3/EVP_des_cbc.html", - "doc/html/man3/EVP_desx_cbc.html", - "doc/html/man3/EVP_idea_cbc.html", - "doc/html/man3/EVP_md2.html", - "doc/html/man3/EVP_md4.html", - "doc/html/man3/EVP_md5.html", - "doc/html/man3/EVP_mdc2.html", - "doc/html/man3/EVP_rc2_cbc.html", - "doc/html/man3/EVP_rc4.html", - "doc/html/man3/EVP_rc5_32_12_16_cbc.html", - "doc/html/man3/EVP_ripemd160.html", - "doc/html/man3/EVP_seed_cbc.html", - "doc/html/man3/EVP_set_default_properties.html", - "doc/html/man3/EVP_sha1.html", - "doc/html/man3/EVP_sha224.html", - "doc/html/man3/EVP_sha3_224.html", - "doc/html/man3/EVP_sm3.html", - "doc/html/man3/EVP_sm4_cbc.html", - "doc/html/man3/EVP_whirlpool.html", - "doc/html/man3/GENERAL_NAME.html", - "doc/html/man3/HMAC.html", - "doc/html/man3/MD5.html", - "doc/html/man3/MDC2_Init.html", - "doc/html/man3/NCONF_new_ex.html", - "doc/html/man3/OBJ_nid2obj.html", - "doc/html/man3/OCSP_REQUEST_new.html", - "doc/html/man3/OCSP_cert_to_id.html", - "doc/html/man3/OCSP_request_add1_nonce.html", - "doc/html/man3/OCSP_resp_find_status.html", - "doc/html/man3/OCSP_response_status.html", - "doc/html/man3/OCSP_sendreq_new.html", - "doc/html/man3/OPENSSL_Applink.html", - "doc/html/man3/OPENSSL_FILE.html", - "doc/html/man3/OPENSSL_LH_COMPFUNC.html", - "doc/html/man3/OPENSSL_LH_stats.html", - "doc/html/man3/OPENSSL_config.html", - "doc/html/man3/OPENSSL_fork_prepare.html", - "doc/html/man3/OPENSSL_gmtime.html", - "doc/html/man3/OPENSSL_hexchar2int.html", - "doc/html/man3/OPENSSL_ia32cap.html", - "doc/html/man3/OPENSSL_init_crypto.html", - "doc/html/man3/OPENSSL_init_ssl.html", - "doc/html/man3/OPENSSL_instrument_bus.html", - "doc/html/man3/OPENSSL_load_builtin_modules.html", - "doc/html/man3/OPENSSL_load_u16_le.html", - "doc/html/man3/OPENSSL_malloc.html", - "doc/html/man3/OPENSSL_riscvcap.html", - "doc/html/man3/OPENSSL_s390xcap.html", - "doc/html/man3/OPENSSL_secure_malloc.html", - "doc/html/man3/OPENSSL_strcasecmp.html", - "doc/html/man3/OSSL_ALGORITHM.html", - "doc/html/man3/OSSL_CALLBACK.html", - "doc/html/man3/OSSL_CMP_ATAV_set0.html", - "doc/html/man3/OSSL_CMP_CTX_new.html", - "doc/html/man3/OSSL_CMP_HDR_get0_transactionID.html", - "doc/html/man3/OSSL_CMP_ITAV_new_caCerts.html", - "doc/html/man3/OSSL_CMP_ITAV_set0.html", - "doc/html/man3/OSSL_CMP_MSG_get0_header.html", - "doc/html/man3/OSSL_CMP_MSG_http_perform.html", - "doc/html/man3/OSSL_CMP_SRV_CTX_new.html", - "doc/html/man3/OSSL_CMP_STATUSINFO_new.html", - "doc/html/man3/OSSL_CMP_exec_certreq.html", - "doc/html/man3/OSSL_CMP_log_open.html", - "doc/html/man3/OSSL_CMP_validate_msg.html", - "doc/html/man3/OSSL_CORE_MAKE_FUNC.html", - "doc/html/man3/OSSL_CRMF_MSG_get0_tmpl.html", - "doc/html/man3/OSSL_CRMF_MSG_set0_validity.html", - "doc/html/man3/OSSL_CRMF_MSG_set1_regCtrl_regToken.html", - "doc/html/man3/OSSL_CRMF_MSG_set1_regInfo_certReq.html", - "doc/html/man3/OSSL_CRMF_pbmp_new.html", - "doc/html/man3/OSSL_DECODER.html", - "doc/html/man3/OSSL_DECODER_CTX.html", - "doc/html/man3/OSSL_DECODER_CTX_new_for_pkey.html", - "doc/html/man3/OSSL_DECODER_from_bio.html", - "doc/html/man3/OSSL_DISPATCH.html", - "doc/html/man3/OSSL_ENCODER.html", - "doc/html/man3/OSSL_ENCODER_CTX.html", - "doc/html/man3/OSSL_ENCODER_CTX_new_for_pkey.html", - "doc/html/man3/OSSL_ENCODER_to_bio.html", - "doc/html/man3/OSSL_ERR_STATE_save.html", - "doc/html/man3/OSSL_ESS_check_signing_certs.html", - "doc/html/man3/OSSL_GENERAL_NAMES_print.html", - "doc/html/man3/OSSL_HPKE_CTX_new.html", - "doc/html/man3/OSSL_HTTP_REQ_CTX.html", - "doc/html/man3/OSSL_HTTP_parse_url.html", - "doc/html/man3/OSSL_HTTP_transfer.html", - "doc/html/man3/OSSL_IETF_ATTR_SYNTAX.html", - "doc/html/man3/OSSL_IETF_ATTR_SYNTAX_print.html", - "doc/html/man3/OSSL_INDICATOR_set_callback.html", - "doc/html/man3/OSSL_ITEM.html", - "doc/html/man3/OSSL_LIB_CTX.html", - "doc/html/man3/OSSL_LIB_CTX_set_conf_diagnostics.html", - "doc/html/man3/OSSL_PARAM.html", - "doc/html/man3/OSSL_PARAM_BLD.html", - "doc/html/man3/OSSL_PARAM_allocate_from_text.html", - "doc/html/man3/OSSL_PARAM_dup.html", - "doc/html/man3/OSSL_PARAM_int.html", - "doc/html/man3/OSSL_PARAM_print_to_bio.html", - "doc/html/man3/OSSL_PROVIDER.html", - "doc/html/man3/OSSL_QUIC_client_method.html", - "doc/html/man3/OSSL_SELF_TEST_new.html", - "doc/html/man3/OSSL_SELF_TEST_set_callback.html", - "doc/html/man3/OSSL_STORE_INFO.html", - "doc/html/man3/OSSL_STORE_LOADER.html", - "doc/html/man3/OSSL_STORE_SEARCH.html", - "doc/html/man3/OSSL_STORE_attach.html", - "doc/html/man3/OSSL_STORE_expect.html", - "doc/html/man3/OSSL_STORE_open.html", - "doc/html/man3/OSSL_sleep.html", - "doc/html/man3/OSSL_trace_enabled.html", - "doc/html/man3/OSSL_trace_get_category_num.html", - "doc/html/man3/OSSL_trace_set_channel.html", - "doc/html/man3/OpenSSL_add_all_algorithms.html", - "doc/html/man3/OpenSSL_version.html", - "doc/html/man3/PBMAC1_get1_pbkdf2_param.html", - "doc/html/man3/PEM_X509_INFO_read_bio_ex.html", - "doc/html/man3/PEM_bytes_read_bio.html", - "doc/html/man3/PEM_read.html", - "doc/html/man3/PEM_read_CMS.html", - "doc/html/man3/PEM_read_bio_PrivateKey.html", - "doc/html/man3/PEM_read_bio_ex.html", - "doc/html/man3/PEM_write_bio_CMS_stream.html", - "doc/html/man3/PEM_write_bio_PKCS7_stream.html", - "doc/html/man3/PKCS12_PBE_keyivgen.html", - "doc/html/man3/PKCS12_SAFEBAG_create_cert.html", - "doc/html/man3/PKCS12_SAFEBAG_get0_attrs.html", - "doc/html/man3/PKCS12_SAFEBAG_get1_cert.html", - "doc/html/man3/PKCS12_SAFEBAG_set0_attrs.html", - "doc/html/man3/PKCS12_add1_attr_by_NID.html", - "doc/html/man3/PKCS12_add_CSPName_asc.html", - "doc/html/man3/PKCS12_add_cert.html", - "doc/html/man3/PKCS12_add_friendlyname_asc.html", - "doc/html/man3/PKCS12_add_localkeyid.html", - "doc/html/man3/PKCS12_add_safe.html", - "doc/html/man3/PKCS12_create.html", - "doc/html/man3/PKCS12_decrypt_skey.html", - "doc/html/man3/PKCS12_gen_mac.html", - "doc/html/man3/PKCS12_get_friendlyname.html", - "doc/html/man3/PKCS12_init.html", - "doc/html/man3/PKCS12_item_decrypt_d2i.html", - "doc/html/man3/PKCS12_key_gen_utf8_ex.html", - "doc/html/man3/PKCS12_newpass.html", - "doc/html/man3/PKCS12_pack_p7encdata.html", - "doc/html/man3/PKCS12_parse.html", - "doc/html/man3/PKCS5_PBE_keyivgen.html", - "doc/html/man3/PKCS5_PBKDF2_HMAC.html", - "doc/html/man3/PKCS7_decrypt.html", - "doc/html/man3/PKCS7_encrypt.html", - "doc/html/man3/PKCS7_get_octet_string.html", - "doc/html/man3/PKCS7_sign.html", - "doc/html/man3/PKCS7_sign_add_signer.html", - "doc/html/man3/PKCS7_type_is_other.html", - "doc/html/man3/PKCS7_verify.html", - "doc/html/man3/PKCS8_encrypt.html", - "doc/html/man3/PKCS8_pkey_add1_attr.html", - "doc/html/man3/RAND_add.html", - "doc/html/man3/RAND_bytes.html", - "doc/html/man3/RAND_cleanup.html", - "doc/html/man3/RAND_egd.html", - "doc/html/man3/RAND_get0_primary.html", - "doc/html/man3/RAND_load_file.html", - "doc/html/man3/RAND_set_DRBG_type.html", - "doc/html/man3/RAND_set_rand_method.html", - "doc/html/man3/RC4_set_key.html", - "doc/html/man3/RIPEMD160_Init.html", - "doc/html/man3/RSA_blinding_on.html", - "doc/html/man3/RSA_check_key.html", - "doc/html/man3/RSA_generate_key.html", - "doc/html/man3/RSA_get0_key.html", - "doc/html/man3/RSA_meth_new.html", - "doc/html/man3/RSA_new.html", - "doc/html/man3/RSA_padding_add_PKCS1_type_1.html", - "doc/html/man3/RSA_print.html", - "doc/html/man3/RSA_private_encrypt.html", - "doc/html/man3/RSA_public_encrypt.html", - "doc/html/man3/RSA_set_method.html", - "doc/html/man3/RSA_sign.html", - "doc/html/man3/RSA_sign_ASN1_OCTET_STRING.html", - "doc/html/man3/RSA_size.html", - "doc/html/man3/SCT_new.html", - "doc/html/man3/SCT_print.html", - "doc/html/man3/SCT_validate.html", - "doc/html/man3/SHA256_Init.html", - "doc/html/man3/SMIME_read_ASN1.html", - "doc/html/man3/SMIME_read_CMS.html", - "doc/html/man3/SMIME_read_PKCS7.html", - "doc/html/man3/SMIME_write_ASN1.html", - "doc/html/man3/SMIME_write_CMS.html", - "doc/html/man3/SMIME_write_PKCS7.html", - "doc/html/man3/SRP_Calc_B.html", - "doc/html/man3/SRP_VBASE_new.html", - "doc/html/man3/SRP_create_verifier.html", - "doc/html/man3/SRP_user_pwd_new.html", - "doc/html/man3/SSL_CIPHER_get_name.html", - "doc/html/man3/SSL_COMP_add_compression_method.html", - "doc/html/man3/SSL_CONF_CTX_new.html", - "doc/html/man3/SSL_CONF_CTX_set1_prefix.html", - "doc/html/man3/SSL_CONF_CTX_set_flags.html", - "doc/html/man3/SSL_CONF_CTX_set_ssl_ctx.html", - "doc/html/man3/SSL_CONF_cmd.html", - "doc/html/man3/SSL_CONF_cmd_argv.html", - "doc/html/man3/SSL_CTX_add1_chain_cert.html", - "doc/html/man3/SSL_CTX_add_extra_chain_cert.html", - "doc/html/man3/SSL_CTX_add_session.html", - "doc/html/man3/SSL_CTX_config.html", - "doc/html/man3/SSL_CTX_ctrl.html", - "doc/html/man3/SSL_CTX_dane_enable.html", - "doc/html/man3/SSL_CTX_flush_sessions.html", - "doc/html/man3/SSL_CTX_free.html", - "doc/html/man3/SSL_CTX_get0_param.html", - "doc/html/man3/SSL_CTX_get_verify_mode.html", - "doc/html/man3/SSL_CTX_has_client_custom_ext.html", - "doc/html/man3/SSL_CTX_load_verify_locations.html", - "doc/html/man3/SSL_CTX_new.html", - "doc/html/man3/SSL_CTX_sess_number.html", - "doc/html/man3/SSL_CTX_sess_set_cache_size.html", - "doc/html/man3/SSL_CTX_sess_set_get_cb.html", - "doc/html/man3/SSL_CTX_sessions.html", - "doc/html/man3/SSL_CTX_set0_CA_list.html", - "doc/html/man3/SSL_CTX_set1_cert_comp_preference.html", - "doc/html/man3/SSL_CTX_set1_curves.html", - "doc/html/man3/SSL_CTX_set1_sigalgs.html", - "doc/html/man3/SSL_CTX_set1_verify_cert_store.html", - "doc/html/man3/SSL_CTX_set_alpn_select_cb.html", - "doc/html/man3/SSL_CTX_set_cert_cb.html", - "doc/html/man3/SSL_CTX_set_cert_store.html", - "doc/html/man3/SSL_CTX_set_cert_verify_callback.html", - "doc/html/man3/SSL_CTX_set_cipher_list.html", - "doc/html/man3/SSL_CTX_set_client_cert_cb.html", - "doc/html/man3/SSL_CTX_set_client_hello_cb.html", - "doc/html/man3/SSL_CTX_set_ct_validation_callback.html", - "doc/html/man3/SSL_CTX_set_ctlog_list_file.html", - "doc/html/man3/SSL_CTX_set_default_passwd_cb.html", - "doc/html/man3/SSL_CTX_set_domain_flags.html", - "doc/html/man3/SSL_CTX_set_generate_session_id.html", - "doc/html/man3/SSL_CTX_set_info_callback.html", - "doc/html/man3/SSL_CTX_set_keylog_callback.html", - "doc/html/man3/SSL_CTX_set_max_cert_list.html", - "doc/html/man3/SSL_CTX_set_min_proto_version.html", - "doc/html/man3/SSL_CTX_set_mode.html", - "doc/html/man3/SSL_CTX_set_msg_callback.html", - "doc/html/man3/SSL_CTX_set_new_pending_conn_cb.html", - "doc/html/man3/SSL_CTX_set_num_tickets.html", - "doc/html/man3/SSL_CTX_set_options.html", - "doc/html/man3/SSL_CTX_set_psk_client_callback.html", - "doc/html/man3/SSL_CTX_set_quiet_shutdown.html", - "doc/html/man3/SSL_CTX_set_read_ahead.html", - "doc/html/man3/SSL_CTX_set_record_padding_callback.html", - "doc/html/man3/SSL_CTX_set_security_level.html", - "doc/html/man3/SSL_CTX_set_session_cache_mode.html", - "doc/html/man3/SSL_CTX_set_session_id_context.html", - "doc/html/man3/SSL_CTX_set_session_ticket_cb.html", - "doc/html/man3/SSL_CTX_set_split_send_fragment.html", - "doc/html/man3/SSL_CTX_set_srp_password.html", - "doc/html/man3/SSL_CTX_set_ssl_version.html", - "doc/html/man3/SSL_CTX_set_stateless_cookie_generate_cb.html", - "doc/html/man3/SSL_CTX_set_timeout.html", - "doc/html/man3/SSL_CTX_set_tlsext_servername_callback.html", - "doc/html/man3/SSL_CTX_set_tlsext_status_cb.html", - "doc/html/man3/SSL_CTX_set_tlsext_ticket_key_cb.html", - "doc/html/man3/SSL_CTX_set_tlsext_use_srtp.html", - "doc/html/man3/SSL_CTX_set_tmp_dh_callback.html", - "doc/html/man3/SSL_CTX_set_tmp_ecdh.html", - "doc/html/man3/SSL_CTX_set_verify.html", - "doc/html/man3/SSL_CTX_use_certificate.html", - "doc/html/man3/SSL_CTX_use_psk_identity_hint.html", - "doc/html/man3/SSL_CTX_use_serverinfo.html", - "doc/html/man3/SSL_SESSION_free.html", - "doc/html/man3/SSL_SESSION_get0_cipher.html", - "doc/html/man3/SSL_SESSION_get0_hostname.html", - "doc/html/man3/SSL_SESSION_get0_id_context.html", - "doc/html/man3/SSL_SESSION_get0_peer.html", - "doc/html/man3/SSL_SESSION_get_compress_id.html", - "doc/html/man3/SSL_SESSION_get_protocol_version.html", - "doc/html/man3/SSL_SESSION_get_time.html", - "doc/html/man3/SSL_SESSION_has_ticket.html", - "doc/html/man3/SSL_SESSION_is_resumable.html", - "doc/html/man3/SSL_SESSION_print.html", - "doc/html/man3/SSL_SESSION_set1_id.html", - "doc/html/man3/SSL_accept.html", - "doc/html/man3/SSL_accept_stream.html", - "doc/html/man3/SSL_alert_type_string.html", - "doc/html/man3/SSL_alloc_buffers.html", - "doc/html/man3/SSL_check_chain.html", - "doc/html/man3/SSL_clear.html", - "doc/html/man3/SSL_connect.html", - "doc/html/man3/SSL_do_handshake.html", - "doc/html/man3/SSL_export_keying_material.html", - "doc/html/man3/SSL_extension_supported.html", - "doc/html/man3/SSL_free.html", - "doc/html/man3/SSL_get0_connection.html", - "doc/html/man3/SSL_get0_group_name.html", - "doc/html/man3/SSL_get0_peer_rpk.html", - "doc/html/man3/SSL_get0_peer_scts.html", - "doc/html/man3/SSL_get1_builtin_sigalgs.html", - "doc/html/man3/SSL_get_SSL_CTX.html", - "doc/html/man3/SSL_get_all_async_fds.html", - "doc/html/man3/SSL_get_certificate.html", - "doc/html/man3/SSL_get_ciphers.html", - "doc/html/man3/SSL_get_client_random.html", - "doc/html/man3/SSL_get_conn_close_info.html", - "doc/html/man3/SSL_get_current_cipher.html", - "doc/html/man3/SSL_get_default_timeout.html", - "doc/html/man3/SSL_get_error.html", - "doc/html/man3/SSL_get_event_timeout.html", - "doc/html/man3/SSL_get_extms_support.html", - "doc/html/man3/SSL_get_fd.html", - "doc/html/man3/SSL_get_handshake_rtt.html", - "doc/html/man3/SSL_get_peer_cert_chain.html", - "doc/html/man3/SSL_get_peer_certificate.html", - "doc/html/man3/SSL_get_peer_signature_nid.html", - "doc/html/man3/SSL_get_peer_tmp_key.html", - "doc/html/man3/SSL_get_psk_identity.html", - "doc/html/man3/SSL_get_rbio.html", - "doc/html/man3/SSL_get_rpoll_descriptor.html", - "doc/html/man3/SSL_get_session.html", - "doc/html/man3/SSL_get_shared_sigalgs.html", - "doc/html/man3/SSL_get_stream_id.html", - "doc/html/man3/SSL_get_stream_read_state.html", - "doc/html/man3/SSL_get_value_uint.html", - "doc/html/man3/SSL_get_verify_result.html", - "doc/html/man3/SSL_get_version.html", - "doc/html/man3/SSL_group_to_name.html", - "doc/html/man3/SSL_handle_events.html", - "doc/html/man3/SSL_in_init.html", - "doc/html/man3/SSL_inject_net_dgram.html", - "doc/html/man3/SSL_key_update.html", - "doc/html/man3/SSL_library_init.html", - "doc/html/man3/SSL_load_client_CA_file.html", - "doc/html/man3/SSL_new.html", - "doc/html/man3/SSL_new_domain.html", - "doc/html/man3/SSL_new_listener.html", - "doc/html/man3/SSL_new_stream.html", - "doc/html/man3/SSL_pending.html", - "doc/html/man3/SSL_poll.html", - "doc/html/man3/SSL_read.html", - "doc/html/man3/SSL_read_early_data.html", - "doc/html/man3/SSL_rstate_string.html", - "doc/html/man3/SSL_session_reused.html", - "doc/html/man3/SSL_set1_host.html", - "doc/html/man3/SSL_set1_initial_peer_addr.html", - "doc/html/man3/SSL_set1_server_cert_type.html", - "doc/html/man3/SSL_set_async_callback.html", - "doc/html/man3/SSL_set_bio.html", - "doc/html/man3/SSL_set_blocking_mode.html", - "doc/html/man3/SSL_set_connect_state.html", - "doc/html/man3/SSL_set_default_stream_mode.html", - "doc/html/man3/SSL_set_fd.html", - "doc/html/man3/SSL_set_incoming_stream_policy.html", - "doc/html/man3/SSL_set_quic_tls_cbs.html", - "doc/html/man3/SSL_set_retry_verify.html", - "doc/html/man3/SSL_set_session.html", - "doc/html/man3/SSL_set_session_secret_cb.html", - "doc/html/man3/SSL_set_shutdown.html", - "doc/html/man3/SSL_set_verify_result.html", - "doc/html/man3/SSL_shutdown.html", - "doc/html/man3/SSL_state_string.html", - "doc/html/man3/SSL_stream_conclude.html", - "doc/html/man3/SSL_stream_reset.html", - "doc/html/man3/SSL_want.html", - "doc/html/man3/SSL_write.html", - "doc/html/man3/TS_RESP_CTX_new.html", - "doc/html/man3/TS_VERIFY_CTX.html", - "doc/html/man3/UI_STRING.html", - "doc/html/man3/UI_UTIL_read_pw.html", - "doc/html/man3/UI_create_method.html", - "doc/html/man3/UI_new.html", - "doc/html/man3/X509V3_get_d2i.html", - "doc/html/man3/X509V3_set_ctx.html", - "doc/html/man3/X509_ACERT_add1_attr.html", - "doc/html/man3/X509_ACERT_add_attr_nconf.html", - "doc/html/man3/X509_ACERT_get0_holder_baseCertId.html", - "doc/html/man3/X509_ACERT_get_attr.html", - "doc/html/man3/X509_ACERT_print_ex.html", - "doc/html/man3/X509_ALGOR_dup.html", - "doc/html/man3/X509_ATTRIBUTE.html", - "doc/html/man3/X509_CRL_get0_by_serial.html", - "doc/html/man3/X509_EXTENSION_set_object.html", - "doc/html/man3/X509_LOOKUP.html", - "doc/html/man3/X509_LOOKUP_hash_dir.html", - "doc/html/man3/X509_LOOKUP_meth_new.html", - "doc/html/man3/X509_NAME_ENTRY_get_object.html", - "doc/html/man3/X509_NAME_add_entry_by_txt.html", - "doc/html/man3/X509_NAME_get0_der.html", - "doc/html/man3/X509_NAME_get_index_by_NID.html", - "doc/html/man3/X509_NAME_print_ex.html", - "doc/html/man3/X509_PUBKEY_new.html", - "doc/html/man3/X509_REQ_get_attr.html", - "doc/html/man3/X509_REQ_get_extensions.html", - "doc/html/man3/X509_SIG_get0.html", - "doc/html/man3/X509_STORE_CTX_get_by_subject.html", - "doc/html/man3/X509_STORE_CTX_get_error.html", - "doc/html/man3/X509_STORE_CTX_new.html", - "doc/html/man3/X509_STORE_CTX_set_verify_cb.html", - "doc/html/man3/X509_STORE_add_cert.html", - "doc/html/man3/X509_STORE_get0_param.html", - "doc/html/man3/X509_STORE_new.html", - "doc/html/man3/X509_STORE_set_verify_cb_func.html", - "doc/html/man3/X509_VERIFY_PARAM_set_flags.html", - "doc/html/man3/X509_add_cert.html", - "doc/html/man3/X509_check_ca.html", - "doc/html/man3/X509_check_host.html", - "doc/html/man3/X509_check_issued.html", - "doc/html/man3/X509_check_private_key.html", - "doc/html/man3/X509_check_purpose.html", - "doc/html/man3/X509_cmp.html", - "doc/html/man3/X509_cmp_time.html", - "doc/html/man3/X509_digest.html", - "doc/html/man3/X509_dup.html", - "doc/html/man3/X509_get0_distinguishing_id.html", - "doc/html/man3/X509_get0_notBefore.html", - "doc/html/man3/X509_get0_signature.html", - "doc/html/man3/X509_get0_uids.html", - "doc/html/man3/X509_get_default_cert_file.html", - "doc/html/man3/X509_get_extension_flags.html", - "doc/html/man3/X509_get_pubkey.html", - "doc/html/man3/X509_get_serialNumber.html", - "doc/html/man3/X509_get_subject_name.html", - "doc/html/man3/X509_get_version.html", - "doc/html/man3/X509_load_http.html", - "doc/html/man3/X509_new.html", - "doc/html/man3/X509_sign.html", - "doc/html/man3/X509_verify.html", - "doc/html/man3/X509_verify_cert.html", - "doc/html/man3/X509v3_get_ext_by_NID.html", - "doc/html/man3/b2i_PVK_bio_ex.html", - "doc/html/man3/d2i_PKCS8PrivateKey_bio.html", - "doc/html/man3/d2i_PrivateKey.html", - "doc/html/man3/d2i_RSAPrivateKey.html", - "doc/html/man3/d2i_SSL_SESSION.html", - "doc/html/man3/d2i_X509.html", - "doc/html/man3/i2d_CMS_bio_stream.html", - "doc/html/man3/i2d_PKCS7_bio_stream.html", - "doc/html/man3/i2d_re_X509_tbs.html", - "doc/html/man3/o2i_SCT_LIST.html", - "doc/html/man3/s2i_ASN1_IA5STRING.html" - ], - "man5" => [ - "doc/html/man5/config.html", - "doc/html/man5/fips_config.html", - "doc/html/man5/x509v3_config.html" - ], - "man7" => [ - "doc/html/man7/EVP_ASYM_CIPHER-RSA.html", - "doc/html/man7/EVP_ASYM_CIPHER-SM2.html", - "doc/html/man7/EVP_CIPHER-AES.html", - "doc/html/man7/EVP_CIPHER-ARIA.html", - "doc/html/man7/EVP_CIPHER-BLOWFISH.html", - "doc/html/man7/EVP_CIPHER-CAMELLIA.html", - "doc/html/man7/EVP_CIPHER-CAST.html", - "doc/html/man7/EVP_CIPHER-CHACHA.html", - "doc/html/man7/EVP_CIPHER-DES.html", - "doc/html/man7/EVP_CIPHER-IDEA.html", - "doc/html/man7/EVP_CIPHER-NULL.html", - "doc/html/man7/EVP_CIPHER-RC2.html", - "doc/html/man7/EVP_CIPHER-RC4.html", - "doc/html/man7/EVP_CIPHER-RC5.html", - "doc/html/man7/EVP_CIPHER-SEED.html", - "doc/html/man7/EVP_CIPHER-SM4.html", - "doc/html/man7/EVP_KDF-ARGON2.html", - "doc/html/man7/EVP_KDF-HKDF.html", - "doc/html/man7/EVP_KDF-HMAC-DRBG.html", - "doc/html/man7/EVP_KDF-KB.html", - "doc/html/man7/EVP_KDF-KRB5KDF.html", - "doc/html/man7/EVP_KDF-PBKDF1.html", - "doc/html/man7/EVP_KDF-PBKDF2.html", - "doc/html/man7/EVP_KDF-PKCS12KDF.html", - "doc/html/man7/EVP_KDF-PVKKDF.html", - "doc/html/man7/EVP_KDF-SCRYPT.html", - "doc/html/man7/EVP_KDF-SS.html", - "doc/html/man7/EVP_KDF-SSHKDF.html", - "doc/html/man7/EVP_KDF-TLS13_KDF.html", - "doc/html/man7/EVP_KDF-TLS1_PRF.html", - "doc/html/man7/EVP_KDF-X942-ASN1.html", - "doc/html/man7/EVP_KDF-X942-CONCAT.html", - "doc/html/man7/EVP_KDF-X963.html", - "doc/html/man7/EVP_KEM-EC.html", - "doc/html/man7/EVP_KEM-ML-KEM.html", - "doc/html/man7/EVP_KEM-RSA.html", - "doc/html/man7/EVP_KEM-X25519.html", - "doc/html/man7/EVP_KEYEXCH-DH.html", - "doc/html/man7/EVP_KEYEXCH-ECDH.html", - "doc/html/man7/EVP_KEYEXCH-X25519.html", - "doc/html/man7/EVP_MAC-BLAKE2.html", - "doc/html/man7/EVP_MAC-CMAC.html", - "doc/html/man7/EVP_MAC-GMAC.html", - "doc/html/man7/EVP_MAC-HMAC.html", - "doc/html/man7/EVP_MAC-KMAC.html", - "doc/html/man7/EVP_MAC-Poly1305.html", - "doc/html/man7/EVP_MAC-Siphash.html", - "doc/html/man7/EVP_MD-BLAKE2.html", - "doc/html/man7/EVP_MD-KECCAK.html", - "doc/html/man7/EVP_MD-MD2.html", - "doc/html/man7/EVP_MD-MD4.html", - "doc/html/man7/EVP_MD-MD5-SHA1.html", - "doc/html/man7/EVP_MD-MD5.html", - "doc/html/man7/EVP_MD-MDC2.html", - "doc/html/man7/EVP_MD-NULL.html", - "doc/html/man7/EVP_MD-RIPEMD160.html", - "doc/html/man7/EVP_MD-SHA1.html", - "doc/html/man7/EVP_MD-SHA2.html", - "doc/html/man7/EVP_MD-SHA3.html", - "doc/html/man7/EVP_MD-SHAKE.html", - "doc/html/man7/EVP_MD-SM3.html", - "doc/html/man7/EVP_MD-WHIRLPOOL.html", - "doc/html/man7/EVP_MD-common.html", - "doc/html/man7/EVP_PKEY-DH.html", - "doc/html/man7/EVP_PKEY-DSA.html", - "doc/html/man7/EVP_PKEY-EC.html", - "doc/html/man7/EVP_PKEY-FFC.html", - "doc/html/man7/EVP_PKEY-HMAC.html", - "doc/html/man7/EVP_PKEY-ML-DSA.html", - "doc/html/man7/EVP_PKEY-ML-KEM.html", - "doc/html/man7/EVP_PKEY-RSA.html", - "doc/html/man7/EVP_PKEY-SLH-DSA.html", - "doc/html/man7/EVP_PKEY-SM2.html", - "doc/html/man7/EVP_PKEY-X25519.html", - "doc/html/man7/EVP_RAND-CRNG-TEST.html", - "doc/html/man7/EVP_RAND-CTR-DRBG.html", - "doc/html/man7/EVP_RAND-HASH-DRBG.html", - "doc/html/man7/EVP_RAND-HMAC-DRBG.html", - "doc/html/man7/EVP_RAND-JITTER.html", - "doc/html/man7/EVP_RAND-SEED-SRC.html", - "doc/html/man7/EVP_RAND-TEST-RAND.html", - "doc/html/man7/EVP_RAND.html", - "doc/html/man7/EVP_SIGNATURE-DSA.html", - "doc/html/man7/EVP_SIGNATURE-ECDSA.html", - "doc/html/man7/EVP_SIGNATURE-ED25519.html", - "doc/html/man7/EVP_SIGNATURE-HMAC.html", - "doc/html/man7/EVP_SIGNATURE-ML-DSA.html", - "doc/html/man7/EVP_SIGNATURE-RSA.html", - "doc/html/man7/EVP_SIGNATURE-SLH-DSA.html", - "doc/html/man7/OSSL_PROVIDER-FIPS.html", - "doc/html/man7/OSSL_PROVIDER-base.html", - "doc/html/man7/OSSL_PROVIDER-default.html", - "doc/html/man7/OSSL_PROVIDER-legacy.html", - "doc/html/man7/OSSL_PROVIDER-null.html", - "doc/html/man7/OSSL_STORE-winstore.html", - "doc/html/man7/RAND.html", - "doc/html/man7/RSA-PSS.html", - "doc/html/man7/X25519.html", - "doc/html/man7/bio.html", - "doc/html/man7/ct.html", - "doc/html/man7/des_modes.html", - "doc/html/man7/evp.html", - "doc/html/man7/fips_module.html", - "doc/html/man7/life_cycle-cipher.html", - "doc/html/man7/life_cycle-digest.html", - "doc/html/man7/life_cycle-kdf.html", - "doc/html/man7/life_cycle-mac.html", - "doc/html/man7/life_cycle-pkey.html", - "doc/html/man7/life_cycle-rand.html", - "doc/html/man7/openssl-core.h.html", - "doc/html/man7/openssl-core_dispatch.h.html", - "doc/html/man7/openssl-core_names.h.html", - "doc/html/man7/openssl-env.html", - "doc/html/man7/openssl-glossary.html", - "doc/html/man7/openssl-qlog.html", - "doc/html/man7/openssl-quic-concurrency.html", - "doc/html/man7/openssl-quic.html", - "doc/html/man7/openssl-threads.html", - "doc/html/man7/openssl_user_macros.html", - "doc/html/man7/ossl-guide-introduction.html", - "doc/html/man7/ossl-guide-libcrypto-introduction.html", - "doc/html/man7/ossl-guide-libraries-introduction.html", - "doc/html/man7/ossl-guide-libssl-introduction.html", - "doc/html/man7/ossl-guide-migration.html", - "doc/html/man7/ossl-guide-quic-client-block.html", - "doc/html/man7/ossl-guide-quic-client-non-block.html", - "doc/html/man7/ossl-guide-quic-introduction.html", - "doc/html/man7/ossl-guide-quic-multi-stream.html", - "doc/html/man7/ossl-guide-quic-server-block.html", - "doc/html/man7/ossl-guide-quic-server-non-block.html", - "doc/html/man7/ossl-guide-tls-client-block.html", - "doc/html/man7/ossl-guide-tls-client-non-block.html", - "doc/html/man7/ossl-guide-tls-introduction.html", - "doc/html/man7/ossl-guide-tls-server-block.html", - "doc/html/man7/ossl_store-file.html", - "doc/html/man7/ossl_store.html", - "doc/html/man7/passphrase-encoding.html", - "doc/html/man7/property.html", - "doc/html/man7/provider-asym_cipher.html", - "doc/html/man7/provider-base.html", - "doc/html/man7/provider-cipher.html", - "doc/html/man7/provider-decoder.html", - "doc/html/man7/provider-digest.html", - "doc/html/man7/provider-encoder.html", - "doc/html/man7/provider-kdf.html", - "doc/html/man7/provider-kem.html", - "doc/html/man7/provider-keyexch.html", - "doc/html/man7/provider-keymgmt.html", - "doc/html/man7/provider-mac.html", - "doc/html/man7/provider-object.html", - "doc/html/man7/provider-rand.html", - "doc/html/man7/provider-signature.html", - "doc/html/man7/provider-skeymgmt.html", - "doc/html/man7/provider-storemgmt.html", - "doc/html/man7/provider.html", - "doc/html/man7/proxy-certificates.html", - "doc/html/man7/x509.html" - ] - }, - "imagedocs" => { - "man7" => [ - "doc/man7/img/cipher.png", - "doc/man7/img/digest.png", - "doc/man7/img/kdf.png", - "doc/man7/img/mac.png", - "doc/man7/img/pkey.png", - "doc/man7/img/rand.png" - ] - }, - "includes" => { - "OpenSSLConfig.cmake" => [ - "." - ], - "OpenSSLConfigVersion.cmake" => [ - "." - ], - "apps/asn1parse.o" => [ - "apps" - ], - "apps/ca.o" => [ - "apps" - ], - "apps/ca_internals_test-bin-ca.o" => [ - "apps" - ], - "apps/ciphers.o" => [ - "apps" - ], - "apps/cmp.o" => [ - "apps" - ], - "apps/cms.o" => [ - "apps" - ], - "apps/crl.o" => [ - "apps" - ], - "apps/crl2pkcs7.o" => [ - "apps" - ], - "apps/dgst.o" => [ - "apps" - ], - "apps/dhparam.o" => [ - "apps" - ], - "apps/dsa.o" => [ - "apps" - ], - "apps/dsaparam.o" => [ - "apps" - ], - "apps/ec.o" => [ - "apps" - ], - "apps/ecparam.o" => [ - "apps" - ], - "apps/enc.o" => [ - "apps" - ], - "apps/engine.o" => [ - "apps" - ], - "apps/errstr.o" => [ - "apps" - ], - "apps/fipsinstall.o" => [ - "apps" - ], - "apps/gendsa.o" => [ - "apps" - ], - "apps/genpkey.o" => [ - "apps" - ], - "apps/genrsa.o" => [ - "apps" - ], - "apps/info.o" => [ - "apps" - ], - "apps/kdf.o" => [ - "apps" - ], - "apps/lib/cmp_client_test-bin-cmp_mock_srv.o" => [ - "apps" - ], - "apps/lib/cmp_mock_srv.o" => [ - "apps" - ], - "apps/lib/openssl-bin-cmp_mock_srv.o" => [ - "apps" - ], - "apps/libapps.a" => [ - ".", - "include", - "apps/include" - ], - "apps/list.o" => [ - "apps" - ], - "apps/mac.o" => [ - "apps" - ], - "apps/nseq.o" => [ - "apps" - ], - "apps/ocsp.o" => [ - "apps" - ], - "apps/openssl" => [ - ".", - "include", - "apps/include" - ], - "apps/openssl-bin-asn1parse.o" => [ - "apps" - ], - "apps/openssl-bin-ca.o" => [ - "apps" - ], - "apps/openssl-bin-ciphers.o" => [ - "apps" - ], - "apps/openssl-bin-cmp.o" => [ - "apps" - ], - "apps/openssl-bin-cms.o" => [ - "apps" - ], - "apps/openssl-bin-crl.o" => [ - "apps" - ], - "apps/openssl-bin-crl2pkcs7.o" => [ - "apps" - ], - "apps/openssl-bin-dgst.o" => [ - "apps" - ], - "apps/openssl-bin-dhparam.o" => [ - "apps" - ], - "apps/openssl-bin-dsa.o" => [ - "apps" - ], - "apps/openssl-bin-dsaparam.o" => [ - "apps" - ], - "apps/openssl-bin-ec.o" => [ - "apps" - ], - "apps/openssl-bin-ecparam.o" => [ - "apps" - ], - "apps/openssl-bin-enc.o" => [ - "apps" - ], - "apps/openssl-bin-engine.o" => [ - "apps" - ], - "apps/openssl-bin-errstr.o" => [ - "apps" - ], - "apps/openssl-bin-fipsinstall.o" => [ - "apps" - ], - "apps/openssl-bin-gendsa.o" => [ - "apps" - ], - "apps/openssl-bin-genpkey.o" => [ - "apps" - ], - "apps/openssl-bin-genrsa.o" => [ - "apps" - ], - "apps/openssl-bin-info.o" => [ - "apps" - ], - "apps/openssl-bin-kdf.o" => [ - "apps" - ], - "apps/openssl-bin-list.o" => [ - "apps" - ], - "apps/openssl-bin-mac.o" => [ - "apps" - ], - "apps/openssl-bin-nseq.o" => [ - "apps" - ], - "apps/openssl-bin-ocsp.o" => [ - "apps" - ], - "apps/openssl-bin-openssl.o" => [ - "apps" - ], - "apps/openssl-bin-passwd.o" => [ - "apps" - ], - "apps/openssl-bin-pkcs12.o" => [ - "apps" - ], - "apps/openssl-bin-pkcs7.o" => [ - "apps" - ], - "apps/openssl-bin-pkcs8.o" => [ - "apps" - ], - "apps/openssl-bin-pkey.o" => [ - "apps" - ], - "apps/openssl-bin-pkeyparam.o" => [ - "apps" - ], - "apps/openssl-bin-pkeyutl.o" => [ - "apps" - ], - "apps/openssl-bin-prime.o" => [ - "apps" - ], - "apps/openssl-bin-progs.o" => [ - "apps" - ], - "apps/openssl-bin-rand.o" => [ - "apps" - ], - "apps/openssl-bin-rehash.o" => [ - "apps" - ], - "apps/openssl-bin-req.o" => [ - "apps" - ], - "apps/openssl-bin-rsa.o" => [ - "apps" - ], - "apps/openssl-bin-rsautl.o" => [ - "apps" - ], - "apps/openssl-bin-s_client.o" => [ - "apps" - ], - "apps/openssl-bin-s_server.o" => [ - "apps" - ], - "apps/openssl-bin-s_time.o" => [ - "apps" - ], - "apps/openssl-bin-sess_id.o" => [ - "apps" - ], - "apps/openssl-bin-skeyutl.o" => [ - "apps" - ], - "apps/openssl-bin-smime.o" => [ - "apps" - ], - "apps/openssl-bin-speed.o" => [ - "apps" - ], - "apps/openssl-bin-spkac.o" => [ - "apps" - ], - "apps/openssl-bin-srp.o" => [ - "apps" - ], - "apps/openssl-bin-storeutl.o" => [ - "apps" - ], - "apps/openssl-bin-ts.o" => [ - "apps" - ], - "apps/openssl-bin-verify.o" => [ - "apps" - ], - "apps/openssl-bin-version.o" => [ - "apps" - ], - "apps/openssl-bin-x509.o" => [ - "apps" - ], - "apps/openssl.o" => [ - "apps" - ], - "apps/passwd.o" => [ - "apps" - ], - "apps/pkcs12.o" => [ - "apps" - ], - "apps/pkcs7.o" => [ - "apps" - ], - "apps/pkcs8.o" => [ - "apps" - ], - "apps/pkey.o" => [ - "apps" - ], - "apps/pkeyparam.o" => [ - "apps" - ], - "apps/pkeyutl.o" => [ - "apps" - ], - "apps/prime.o" => [ - "apps" - ], - "apps/progs.c" => [ - "." - ], - "apps/progs.o" => [ - "apps" - ], - "apps/rand.o" => [ - "apps" - ], - "apps/rehash.o" => [ - "apps" - ], - "apps/req.o" => [ - "apps" - ], - "apps/rsa.o" => [ - "apps" - ], - "apps/rsautl.o" => [ - "apps" - ], - "apps/s_client.o" => [ - "apps" - ], - "apps/s_server.o" => [ - "apps" - ], - "apps/s_time.o" => [ - "apps" - ], - "apps/sess_id.o" => [ - "apps" - ], - "apps/skeyutl.o" => [ - "apps" - ], - "apps/smime.o" => [ - "apps" - ], - "apps/speed.o" => [ - "apps" - ], - "apps/spkac.o" => [ - "apps" - ], - "apps/srp.o" => [ - "apps" - ], - "apps/storeutl.o" => [ - "apps" - ], - "apps/ts.o" => [ - "apps" - ], - "apps/verify.o" => [ - "apps" - ], - "apps/version.o" => [ - "apps" - ], - "apps/x509.o" => [ - "apps" - ], - "crypto/aes/aes-armv4.o" => [ - "crypto" - ], - "crypto/aes/aes-mips.o" => [ - "crypto" - ], - "crypto/aes/aes-s390x.o" => [ - "crypto" - ], - "crypto/aes/aes-sparcv9.o" => [ - "crypto" - ], - "crypto/aes/aesfx-sparcv9.o" => [ - "crypto" - ], - "crypto/aes/aest4-sparcv9.o" => [ - "crypto" - ], - "crypto/aes/aesv8-armx.o" => [ - "crypto" - ], - "crypto/aes/bsaes-armv7.o" => [ - "crypto" - ], - "crypto/aes/vpaes-armv8.o" => [ - "crypto" - ], - "crypto/aes/vpaes-loongarch64.o" => [ - "crypto" - ], - "crypto/arm64cpuid.o" => [ - "crypto" - ], - "crypto/armv4cpuid.o" => [ - "crypto" - ], - "crypto/bn/armv4-gf2m.o" => [ - "crypto" - ], - "crypto/bn/armv4-mont.o" => [ - "crypto" - ], - "crypto/bn/armv8-mont.o" => [ - "crypto" - ], - "crypto/bn/bn-mips.o" => [ - "crypto" - ], - "crypto/bn/bn_exp.o" => [ - "crypto" - ], - "crypto/bn/libcrypto-lib-bn_exp.o" => [ - "crypto" - ], - "crypto/bn/libcrypto-shlib-bn_exp.o" => [ - "crypto" - ], - "crypto/bn/mips-mont.o" => [ - "crypto" - ], - "crypto/bn/sparct4-mont.o" => [ - "crypto" - ], - "crypto/bn/sparcv9-gf2m.o" => [ - "crypto" - ], - "crypto/bn/sparcv9-mont.o" => [ - "crypto" - ], - "crypto/bn/sparcv9a-mont.o" => [ - "crypto" - ], - "crypto/bn/vis3-mont.o" => [ - "crypto" - ], - "crypto/camellia/cmllt4-sparcv9.o" => [ - "crypto" - ], - "crypto/chacha/chacha-armv4.o" => [ - "crypto" - ], - "crypto/chacha/chacha-armv8-sve.o" => [ - "crypto" - ], - "crypto/chacha/chacha-armv8.o" => [ - "crypto" - ], - "crypto/chacha/chacha-loongarch64.o" => [ - "crypto" - ], - "crypto/chacha/chacha-s390x.o" => [ - "crypto" - ], - "crypto/cpuid.o" => [ - "." - ], - "crypto/cversion.o" => [ - "crypto" - ], - "crypto/des/dest4-sparcv9.o" => [ - "crypto" - ], - "crypto/ec/ecp_nistp384.o" => [ - "crypto" - ], - "crypto/ec/ecp_nistp521.o" => [ - "crypto" - ], - "crypto/ec/ecp_nistz256-armv4.o" => [ - "crypto" - ], - "crypto/ec/ecp_nistz256-armv8.o" => [ - "crypto" - ], - "crypto/ec/ecp_nistz256-sparcv9.o" => [ - "crypto" - ], - "crypto/ec/ecp_s390x_nistp.o" => [ - "crypto" - ], - "crypto/ec/ecx_key.o" => [ - "crypto" - ], - "crypto/ec/ecx_meth.o" => [ - "crypto" - ], - "crypto/ec/ecx_s390x.o" => [ - "crypto" - ], - "crypto/ec/libcrypto-lib-ecp_nistp384.o" => [ - "crypto" - ], - "crypto/ec/libcrypto-lib-ecp_nistp521.o" => [ - "crypto" - ], - "crypto/ec/libcrypto-lib-ecx_key.o" => [ - "crypto" - ], - "crypto/ec/libcrypto-lib-ecx_meth.o" => [ - "crypto" - ], - "crypto/ec/libcrypto-shlib-ecp_nistp384.o" => [ - "crypto" - ], - "crypto/ec/libcrypto-shlib-ecp_nistp521.o" => [ - "crypto" - ], - "crypto/ec/libcrypto-shlib-ecx_key.o" => [ - "crypto" - ], - "crypto/ec/libcrypto-shlib-ecx_meth.o" => [ - "crypto" - ], - "crypto/evp/e_aes.o" => [ - "crypto", - "crypto/modes" - ], - "crypto/evp/e_aes_cbc_hmac_sha1.o" => [ - "crypto/modes" - ], - "crypto/evp/e_aes_cbc_hmac_sha256.o" => [ - "crypto/modes" - ], - "crypto/evp/e_aria.o" => [ - "crypto", - "crypto/modes" - ], - "crypto/evp/e_camellia.o" => [ - "crypto", - "crypto/modes" - ], - "crypto/evp/e_des.o" => [ - "crypto" - ], - "crypto/evp/e_des3.o" => [ - "crypto" - ], - "crypto/evp/e_sm4.o" => [ - "crypto", - "crypto/modes" - ], - "crypto/evp/libcrypto-lib-e_aes.o" => [ - "crypto", - "crypto/modes" - ], - "crypto/evp/libcrypto-lib-e_aes_cbc_hmac_sha1.o" => [ - "crypto/modes" - ], - "crypto/evp/libcrypto-lib-e_aes_cbc_hmac_sha256.o" => [ - "crypto/modes" - ], - "crypto/evp/libcrypto-lib-e_aria.o" => [ - "crypto", - "crypto/modes" - ], - "crypto/evp/libcrypto-lib-e_camellia.o" => [ - "crypto", - "crypto/modes" - ], - "crypto/evp/libcrypto-lib-e_des.o" => [ - "crypto" - ], - "crypto/evp/libcrypto-lib-e_des3.o" => [ - "crypto" - ], - "crypto/evp/libcrypto-lib-e_sm4.o" => [ - "crypto", - "crypto/modes" - ], - "crypto/evp/libcrypto-shlib-e_aes.o" => [ - "crypto", - "crypto/modes" - ], - "crypto/evp/libcrypto-shlib-e_aes_cbc_hmac_sha1.o" => [ - "crypto/modes" - ], - "crypto/evp/libcrypto-shlib-e_aes_cbc_hmac_sha256.o" => [ - "crypto/modes" - ], - "crypto/evp/libcrypto-shlib-e_aria.o" => [ - "crypto", - "crypto/modes" - ], - "crypto/evp/libcrypto-shlib-e_camellia.o" => [ - "crypto", - "crypto/modes" - ], - "crypto/evp/libcrypto-shlib-e_des.o" => [ - "crypto" - ], - "crypto/evp/libcrypto-shlib-e_des3.o" => [ - "crypto" - ], - "crypto/evp/libcrypto-shlib-e_sm4.o" => [ - "crypto", - "crypto/modes" - ], - "crypto/info.o" => [ - "crypto" - ], - "crypto/legacy-dso-cpuid.o" => [ - "." - ], - "crypto/libcrypto-lib-cpuid.o" => [ - "." - ], - "crypto/libcrypto-lib-cversion.o" => [ - "crypto" - ], - "crypto/libcrypto-lib-info.o" => [ - "crypto" - ], - "crypto/libcrypto-shlib-cpuid.o" => [ - "." - ], - "crypto/libcrypto-shlib-cversion.o" => [ - "crypto" - ], - "crypto/libcrypto-shlib-info.o" => [ - "crypto" - ], - "crypto/md5/md5-aarch64.o" => [ - "crypto" - ], - "crypto/md5/md5-loongarch64.o" => [ - "crypto" - ], - "crypto/md5/md5-sparcv9.o" => [ - "crypto" - ], - "crypto/modes/aes-gcm-armv8-unroll8_64.o" => [ - "crypto" - ], - "crypto/modes/aes-gcm-armv8_64.o" => [ - "crypto" - ], - "crypto/modes/gcm128.o" => [ - "crypto" - ], - "crypto/modes/ghash-armv4.o" => [ - "crypto" - ], - "crypto/modes/ghash-s390x.o" => [ - "crypto" - ], - "crypto/modes/ghash-sparcv9.o" => [ - "crypto" - ], - "crypto/modes/ghashv8-armx.o" => [ - "crypto" - ], - "crypto/modes/libcrypto-lib-gcm128.o" => [ - "crypto" - ], - "crypto/modes/libcrypto-shlib-gcm128.o" => [ - "crypto" - ], - "crypto/params_idx.c" => [ - "util/perl" - ], - "crypto/poly1305/poly1305-armv4.o" => [ - "crypto" - ], - "crypto/poly1305/poly1305-armv8.o" => [ - "crypto" - ], - "crypto/poly1305/poly1305-mips.o" => [ - "crypto" - ], - "crypto/poly1305/poly1305-s390x.o" => [ - "crypto" - ], - "crypto/poly1305/poly1305-sparcv9.o" => [ - "crypto" - ], - "crypto/s390xcpuid.o" => [ - "crypto" - ], - "crypto/sha/keccak1600-armv4.o" => [ - "crypto" - ], - "crypto/sha/keccak1600-armv8.o" => [ - "crypto" - ], - "crypto/sha/sha1-armv4-large.o" => [ - "crypto" - ], - "crypto/sha/sha1-armv8.o" => [ - "crypto" - ], - "crypto/sha/sha1-mips.o" => [ - "crypto" - ], - "crypto/sha/sha1-s390x.o" => [ - "crypto" - ], - "crypto/sha/sha1-sparcv9.o" => [ - "crypto" - ], - "crypto/sha/sha256-armv4.o" => [ - "crypto" - ], - "crypto/sha/sha256-armv8.o" => [ - "crypto" - ], - "crypto/sha/sha256-mips.o" => [ - "crypto" - ], - "crypto/sha/sha256-s390x.o" => [ - "crypto" - ], - "crypto/sha/sha256-sparcv9.o" => [ - "crypto" - ], - "crypto/sha/sha512-armv4.o" => [ - "crypto" - ], - "crypto/sha/sha512-armv8.o" => [ - "crypto" - ], - "crypto/sha/sha512-mips.o" => [ - "crypto" - ], - "crypto/sha/sha512-s390x.o" => [ - "crypto" - ], - "crypto/sha/sha512-sparcv9.o" => [ - "crypto" - ], - "doc/man1/openssl-asn1parse.pod" => [ - "doc" - ], - "doc/man1/openssl-ca.pod" => [ - "doc" - ], - "doc/man1/openssl-ciphers.pod" => [ - "doc" - ], - "doc/man1/openssl-cmds.pod" => [ - "doc" - ], - "doc/man1/openssl-cmp.pod" => [ - "doc" - ], - "doc/man1/openssl-cms.pod" => [ - "doc" - ], - "doc/man1/openssl-crl.pod" => [ - "doc" - ], - "doc/man1/openssl-crl2pkcs7.pod" => [ - "doc" - ], - "doc/man1/openssl-dgst.pod" => [ - "doc" - ], - "doc/man1/openssl-dhparam.pod" => [ - "doc" - ], - "doc/man1/openssl-dsa.pod" => [ - "doc" - ], - "doc/man1/openssl-dsaparam.pod" => [ - "doc" - ], - "doc/man1/openssl-ec.pod" => [ - "doc" - ], - "doc/man1/openssl-ecparam.pod" => [ - "doc" - ], - "doc/man1/openssl-enc.pod" => [ - "doc" - ], - "doc/man1/openssl-engine.pod" => [ - "doc" - ], - "doc/man1/openssl-errstr.pod" => [ - "doc" - ], - "doc/man1/openssl-fipsinstall.pod" => [ - "doc" - ], - "doc/man1/openssl-gendsa.pod" => [ - "doc" - ], - "doc/man1/openssl-genpkey.pod" => [ - "doc" - ], - "doc/man1/openssl-genrsa.pod" => [ - "doc" - ], - "doc/man1/openssl-info.pod" => [ - "doc" - ], - "doc/man1/openssl-kdf.pod" => [ - "doc" - ], - "doc/man1/openssl-list.pod" => [ - "doc" - ], - "doc/man1/openssl-mac.pod" => [ - "doc" - ], - "doc/man1/openssl-nseq.pod" => [ - "doc" - ], - "doc/man1/openssl-ocsp.pod" => [ - "doc" - ], - "doc/man1/openssl-passwd.pod" => [ - "doc" - ], - "doc/man1/openssl-pkcs12.pod" => [ - "doc" - ], - "doc/man1/openssl-pkcs7.pod" => [ - "doc" - ], - "doc/man1/openssl-pkcs8.pod" => [ - "doc" - ], - "doc/man1/openssl-pkey.pod" => [ - "doc" - ], - "doc/man1/openssl-pkeyparam.pod" => [ - "doc" - ], - "doc/man1/openssl-pkeyutl.pod" => [ - "doc" - ], - "doc/man1/openssl-prime.pod" => [ - "doc" - ], - "doc/man1/openssl-rand.pod" => [ - "doc" - ], - "doc/man1/openssl-rehash.pod" => [ - "doc" - ], - "doc/man1/openssl-req.pod" => [ - "doc" - ], - "doc/man1/openssl-rsa.pod" => [ - "doc" - ], - "doc/man1/openssl-rsautl.pod" => [ - "doc" - ], - "doc/man1/openssl-s_client.pod" => [ - "doc" - ], - "doc/man1/openssl-s_server.pod" => [ - "doc" - ], - "doc/man1/openssl-s_time.pod" => [ - "doc" - ], - "doc/man1/openssl-sess_id.pod" => [ - "doc" - ], - "doc/man1/openssl-skeyutl.pod" => [ - "doc" - ], - "doc/man1/openssl-smime.pod" => [ - "doc" - ], - "doc/man1/openssl-speed.pod" => [ - "doc" - ], - "doc/man1/openssl-spkac.pod" => [ - "doc" - ], - "doc/man1/openssl-srp.pod" => [ - "doc" - ], - "doc/man1/openssl-storeutl.pod" => [ - "doc" - ], - "doc/man1/openssl-ts.pod" => [ - "doc" - ], - "doc/man1/openssl-verify.pod" => [ - "doc" - ], - "doc/man1/openssl-version.pod" => [ - "doc" - ], - "doc/man1/openssl-x509.pod" => [ - "doc" - ], - "engines/capi" => [ - "include" - ], - "engines/dasync" => [ - "include" - ], - "engines/devcrypto" => [ - "include" - ], - "engines/loader_attic" => [ - "include" - ], - "engines/ossltest" => [ - "include" - ], - "engines/padlock" => [ - "include" - ], - "exporters/OpenSSLConfig.cmake" => [ - "." - ], - "exporters/OpenSSLConfigVersion.cmake" => [ - "." - ], - "exporters/libcrypto.pc" => [ - "." - ], - "exporters/libssl.pc" => [ - "." - ], - "exporters/openssl.pc" => [ - "." - ], - "fuzz/acert-test" => [ - "include" - ], - "fuzz/asn1-test" => [ - "include" - ], - "fuzz/asn1parse-test" => [ - "include" - ], - "fuzz/bignum-test" => [ - "include" - ], - "fuzz/bndiv-test" => [ - "include" - ], - "fuzz/client-test" => [ - "include" - ], - "fuzz/cmp-test" => [ - "include" - ], - "fuzz/cms-test" => [ - "include" - ], - "fuzz/conf-test" => [ - "include" - ], - "fuzz/crl-test" => [ - "include" - ], - "fuzz/ct-test" => [ - "include" - ], - "fuzz/decoder-test" => [ - "include" - ], - "fuzz/dtlsclient-test" => [ - "include" - ], - "fuzz/dtlsserver-test" => [ - "include" - ], - "fuzz/hashtable-test" => [ - "include" - ], - "fuzz/ml-dsa-test" => [ - "include" - ], - "fuzz/ml-kem-test" => [ - "include" - ], - "fuzz/pem-test" => [ - "include" - ], - "fuzz/provider-test" => [ - "include" - ], - "fuzz/punycode-test" => [ - "include" - ], - "fuzz/quic-client-test" => [ - "include" - ], - "fuzz/quic-lcidm-test" => [ - "include" - ], - "fuzz/quic-rcidm-test" => [ - "include" - ], - "fuzz/quic-server-test" => [ - "include" - ], - "fuzz/quic-srtm-test" => [ - "include" - ], - "fuzz/server-test" => [ - "include" - ], - "fuzz/slh-dsa-test" => [ - "include" - ], - "fuzz/smime-test" => [ - "include" - ], - "fuzz/v3name-test" => [ - "include" - ], - "fuzz/x509-test" => [ - "include" - ], - "include/internal/param_names.h" => [ - "util/perl" - ], - "include/openssl/core_names.h" => [ - "util/perl" - ], - "libcrypto" => [ - ".", - "include", - "providers/common/include", - "providers/implementations/include" - ], - "libcrypto.ld" => [ - ".", - "util/perl/OpenSSL" - ], - "libcrypto.pc" => [ - "." - ], - "libssl" => [ - ".", - "include" - ], - "libssl.ld" => [ - ".", - "util/perl/OpenSSL" - ], - "libssl.pc" => [ - "." - ], - "openssl.pc" => [ - "." - ], - "providers/common/der/der_digests_gen.c" => [ - "providers/common/der" - ], - "providers/common/der/der_digests_gen.o" => [ - "providers/common/include/prov" - ], - "providers/common/der/der_dsa_gen.c" => [ - "providers/common/der" - ], - "providers/common/der/der_dsa_gen.o" => [ - "providers/common/include/prov" - ], - "providers/common/der/der_dsa_key.o" => [ - "providers/common/include/prov" - ], - "providers/common/der/der_dsa_sig.o" => [ - "providers/common/include/prov" - ], - "providers/common/der/der_ec_gen.c" => [ - "providers/common/der" - ], - "providers/common/der/der_ec_gen.o" => [ - "providers/common/include/prov" - ], - "providers/common/der/der_ec_key.o" => [ - "providers/common/include/prov" - ], - "providers/common/der/der_ec_sig.o" => [ - "providers/common/include/prov" - ], - "providers/common/der/der_ecx_gen.c" => [ - "providers/common/der" - ], - "providers/common/der/der_ecx_gen.o" => [ - "providers/common/include/prov" - ], - "providers/common/der/der_ecx_key.o" => [ - "providers/common/include/prov" - ], - "providers/common/der/der_ml_dsa_gen.c" => [ - "providers/common/der" - ], - "providers/common/der/der_ml_dsa_gen.o" => [ - "providers/common/include/prov" - ], - "providers/common/der/der_ml_dsa_key.o" => [ - "providers/common/include/prov" - ], - "providers/common/der/der_rsa_gen.c" => [ - "providers/common/der" - ], - "providers/common/der/der_rsa_gen.o" => [ - "providers/common/include/prov" - ], - "providers/common/der/der_rsa_key.o" => [ - "providers/common/include/prov" - ], - "providers/common/der/der_rsa_sig.o" => [ - "providers/common/include/prov" - ], - "providers/common/der/der_slh_dsa_gen.c" => [ - "providers/common/der" - ], - "providers/common/der/der_slh_dsa_gen.o" => [ - "providers/common/include/prov" - ], - "providers/common/der/der_slh_dsa_key.o" => [ - "providers/common/include/prov" - ], - "providers/common/der/der_wrap_gen.c" => [ - "providers/common/der" - ], - "providers/common/der/der_wrap_gen.o" => [ - "providers/common/include/prov" - ], - "providers/common/der/libcommon-lib-der_digests_gen.o" => [ - "providers/common/include/prov" - ], - "providers/common/der/libcommon-lib-der_dsa_gen.o" => [ - "providers/common/include/prov" - ], - "providers/common/der/libcommon-lib-der_dsa_key.o" => [ - "providers/common/include/prov" - ], - "providers/common/der/libcommon-lib-der_dsa_sig.o" => [ - "providers/common/include/prov" - ], - "providers/common/der/libcommon-lib-der_ec_gen.o" => [ - "providers/common/include/prov" - ], - "providers/common/der/libcommon-lib-der_ec_key.o" => [ - "providers/common/include/prov" - ], - "providers/common/der/libcommon-lib-der_ec_sig.o" => [ - "providers/common/include/prov" - ], - "providers/common/der/libcommon-lib-der_ecx_gen.o" => [ - "providers/common/include/prov" - ], - "providers/common/der/libcommon-lib-der_ecx_key.o" => [ - "providers/common/include/prov" - ], - "providers/common/der/libcommon-lib-der_ml_dsa_gen.o" => [ - "providers/common/include/prov" - ], - "providers/common/der/libcommon-lib-der_ml_dsa_key.o" => [ - "providers/common/include/prov" - ], - "providers/common/der/libcommon-lib-der_rsa_gen.o" => [ - "providers/common/include/prov" - ], - "providers/common/der/libcommon-lib-der_rsa_key.o" => [ - "providers/common/include/prov" - ], - "providers/common/der/libcommon-lib-der_slh_dsa_gen.o" => [ - "providers/common/include/prov" - ], - "providers/common/der/libcommon-lib-der_slh_dsa_key.o" => [ - "providers/common/include/prov" - ], - "providers/common/der/libcommon-lib-der_wrap_gen.o" => [ - "providers/common/include/prov" - ], - "providers/common/der/libdefault-lib-der_rsa_sig.o" => [ - "providers/common/include/prov" - ], - "providers/common/include/prov/der_digests.h" => [ - "providers/common/der" - ], - "providers/common/include/prov/der_dsa.h" => [ - "providers/common/der" - ], - "providers/common/include/prov/der_ec.h" => [ - "providers/common/der" - ], - "providers/common/include/prov/der_ecx.h" => [ - "providers/common/der" - ], - "providers/common/include/prov/der_ml_dsa.h" => [ - "providers/common/der" - ], - "providers/common/include/prov/der_rsa.h" => [ - "providers/common/der" - ], - "providers/common/include/prov/der_slh_dsa.h" => [ - "providers/common/der" - ], - "providers/common/include/prov/der_wrap.h" => [ - "providers/common/der" - ], - "providers/implementations/encode_decode/encode_key2any.o" => [ - "providers/common/include/prov" - ], - "providers/implementations/encode_decode/libdefault-lib-encode_key2any.o" => [ - "providers/common/include/prov" - ], - "providers/implementations/kdfs/libdefault-lib-x942kdf.o" => [ - "providers/common/include/prov" - ], - "providers/implementations/kdfs/x942kdf.o" => [ - "providers/common/include/prov" - ], - "providers/implementations/signature/dsa_sig.o" => [ - "providers/common/include/prov" - ], - "providers/implementations/signature/ecdsa_sig.o" => [ - "providers/common/include/prov" - ], - "providers/implementations/signature/eddsa_sig.o" => [ - "providers/common/include/prov" - ], - "providers/implementations/signature/libdefault-lib-dsa_sig.o" => [ - "providers/common/include/prov" - ], - "providers/implementations/signature/libdefault-lib-ecdsa_sig.o" => [ - "providers/common/include/prov" - ], - "providers/implementations/signature/libdefault-lib-eddsa_sig.o" => [ - "providers/common/include/prov" - ], - "providers/implementations/signature/libdefault-lib-ml_dsa_sig.o" => [ - "providers/common/include/prov" - ], - "providers/implementations/signature/libdefault-lib-rsa_sig.o" => [ - "providers/common/include/prov" - ], - "providers/implementations/signature/libdefault-lib-slh_dsa_sig.o" => [ - "providers/common/include/prov" - ], - "providers/implementations/signature/ml_dsa_sig.o" => [ - "providers/common/include/prov" - ], - "providers/implementations/signature/rsa_sig.o" => [ - "providers/common/include/prov" - ], - "providers/implementations/signature/slh_dsa_sig.o" => [ - "providers/common/include/prov" - ], - "providers/implementations/signature/sm2_sig.o" => [ - "providers/common/include/prov" - ], - "providers/legacy" => [ - "include", - "providers/implementations/include", - "providers/common/include" - ], - "providers/libcommon.a" => [ - "crypto", - "include", - "providers/implementations/include", - "providers/common/include", - "providers/fips/include" - ], - "providers/libdefault.a" => [ - ".", - "crypto", - "include", - "providers/implementations/include", - "providers/common/include", - "providers/fips/include" - ], - "providers/libfips.a" => [ - ".", - "crypto", - "include", - "providers/implementations/include", - "providers/common/include", - "providers/fips/include" - ], - "providers/liblegacy.a" => [ - ".", - "crypto", - "include", - "providers/implementations/include", - "providers/common/include", - "providers/fips/include" - ], - "providers/libtemplate.a" => [ - "crypto", - "include", - "providers/implementations/include", - "providers/common/include", - "providers/fips/include" - ], - "test/aborttest" => [ - "include", - "apps/include" - ], - "test/aesgcmtest" => [ - "include", - "apps/include", - "." - ], - "test/afalgtest" => [ - "include", - "apps/include" - ], - "test/algorithmid_test" => [ - "include", - "apps/include" - ], - "test/asn1_decode_test" => [ - "include", - "apps/include" - ], - "test/asn1_dsa_internal_test" => [ - ".", - "include", - "apps/include" - ], - "test/asn1_encode_test" => [ - "include", - "apps/include" - ], - "test/asn1_internal_test" => [ - ".", - "include", - "apps/include" - ], - "test/asn1_stable_parse_test" => [ - "include", - "apps/include" - ], - "test/asn1_string_table_test" => [ - "include", - "apps/include" - ], - "test/asn1_time_test" => [ - "include", - "apps/include" - ], - "test/asynciotest" => [ - "include", - "apps/include" - ], - "test/asynctest" => [ - "include", - "apps/include" - ], - "test/bad_dtls_test" => [ - "include", - "apps/include" - ], - "test/bftest" => [ - "include", - "apps/include" - ], - "test/bio_addr_test" => [ - "include", - "apps/include" - ], - "test/bio_base64_test" => [ - "include", - "apps/include" - ], - "test/bio_callback_test" => [ - "include", - "apps/include" - ], - "test/bio_core_test" => [ - "include", - "apps/include" - ], - "test/bio_dgram_test" => [ - "include", - "apps/include", - "." - ], - "test/bio_enc_test" => [ - "include", - "apps/include" - ], - "test/bio_memleak_test" => [ - "include", - "apps/include" - ], - "test/bio_meth_test" => [ - "include", - "apps/include" - ], - "test/bio_prefix_text" => [ - ".", - "include", - "apps/include" - ], - "test/bio_pw_callback_test" => [ - "include", - "apps/include" - ], - "test/bio_readbuffer_test" => [ - "include", - "apps/include" - ], - "test/bio_tfo_test" => [ - "include", - "apps/include", - "." - ], - "test/bioprinttest" => [ - "include", - "apps/include" - ], - "test/bn_internal_test" => [ - ".", - "include", - "crypto/bn", - "apps/include" - ], - "test/bntest" => [ - "include", - "apps/include" - ], - "test/build_wincrypt_test" => [ - "include" - ], - "test/buildtest_c_aes" => [ - "include" - ], - "test/buildtest_c_asn1" => [ - "include" - ], - "test/buildtest_c_asn1t" => [ - "include" - ], - "test/buildtest_c_async" => [ - "include" - ], - "test/buildtest_c_bio" => [ - "include" - ], - "test/buildtest_c_blowfish" => [ - "include" - ], - "test/buildtest_c_bn" => [ - "include" - ], - "test/buildtest_c_buffer" => [ - "include" - ], - "test/buildtest_c_byteorder" => [ - "include" - ], - "test/buildtest_c_camellia" => [ - "include" - ], - "test/buildtest_c_cast" => [ - "include" - ], - "test/buildtest_c_cmac" => [ - "include" - ], - "test/buildtest_c_cmp" => [ - "include" - ], - "test/buildtest_c_cmp_util" => [ - "include" - ], - "test/buildtest_c_cms" => [ - "include" - ], - "test/buildtest_c_comp" => [ - "include" - ], - "test/buildtest_c_conf" => [ - "include" - ], - "test/buildtest_c_conf_api" => [ - "include" - ], - "test/buildtest_c_configuration" => [ - "include" - ], - "test/buildtest_c_conftypes" => [ - "include" - ], - "test/buildtest_c_core" => [ - "include" - ], - "test/buildtest_c_core_dispatch" => [ - "include" - ], - "test/buildtest_c_core_names" => [ - "include" - ], - "test/buildtest_c_core_object" => [ - "include" - ], - "test/buildtest_c_crmf" => [ - "include" - ], - "test/buildtest_c_crypto" => [ - "include" - ], - "test/buildtest_c_cryptoerr_legacy" => [ - "include" - ], - "test/buildtest_c_ct" => [ - "include" - ], - "test/buildtest_c_decoder" => [ - "include" - ], - "test/buildtest_c_des" => [ - "include" - ], - "test/buildtest_c_dh" => [ - "include" - ], - "test/buildtest_c_dsa" => [ - "include" - ], - "test/buildtest_c_dtls1" => [ - "include" - ], - "test/buildtest_c_e_os2" => [ - "include" - ], - "test/buildtest_c_e_ostime" => [ - "include" - ], - "test/buildtest_c_ebcdic" => [ - "include" - ], - "test/buildtest_c_ec" => [ - "include" - ], - "test/buildtest_c_ecdh" => [ - "include" - ], - "test/buildtest_c_ecdsa" => [ - "include" - ], - "test/buildtest_c_encoder" => [ - "include" - ], - "test/buildtest_c_engine" => [ - "include" - ], - "test/buildtest_c_ess" => [ - "include" - ], - "test/buildtest_c_evp" => [ - "include" - ], - "test/buildtest_c_fips_names" => [ - "include" - ], - "test/buildtest_c_fipskey" => [ - "include" - ], - "test/buildtest_c_hmac" => [ - "include" - ], - "test/buildtest_c_hpke" => [ - "include" - ], - "test/buildtest_c_http" => [ - "include" - ], - "test/buildtest_c_indicator" => [ - "include" - ], - "test/buildtest_c_kdf" => [ - "include" - ], - "test/buildtest_c_lhash" => [ - "include" - ], - "test/buildtest_c_macros" => [ - "include" - ], - "test/buildtest_c_md4" => [ - "include" - ], - "test/buildtest_c_md5" => [ - "include" - ], - "test/buildtest_c_ml_kem" => [ - "include" - ], - "test/buildtest_c_modes" => [ - "include" - ], - "test/buildtest_c_obj_mac" => [ - "include" - ], - "test/buildtest_c_objects" => [ - "include" - ], - "test/buildtest_c_ocsp" => [ - "include" - ], - "test/buildtest_c_opensslv" => [ - "include" - ], - "test/buildtest_c_ossl_typ" => [ - "include" - ], - "test/buildtest_c_param_build" => [ - "include" - ], - "test/buildtest_c_params" => [ - "include" - ], - "test/buildtest_c_pem" => [ - "include" - ], - "test/buildtest_c_pem2" => [ - "include" - ], - "test/buildtest_c_pkcs12" => [ - "include" - ], - "test/buildtest_c_pkcs7" => [ - "include" - ], - "test/buildtest_c_prov_ssl" => [ - "include" - ], - "test/buildtest_c_provider" => [ - "include" - ], - "test/buildtest_c_quic" => [ - "include" - ], - "test/buildtest_c_rand" => [ - "include" - ], - "test/buildtest_c_rc2" => [ - "include" - ], - "test/buildtest_c_rc4" => [ - "include" - ], - "test/buildtest_c_ripemd" => [ - "include" - ], - "test/buildtest_c_rsa" => [ - "include" - ], - "test/buildtest_c_safestack" => [ - "include" - ], - "test/buildtest_c_seed" => [ - "include" - ], - "test/buildtest_c_self_test" => [ - "include" - ], - "test/buildtest_c_sha" => [ - "include" - ], - "test/buildtest_c_srp" => [ - "include" - ], - "test/buildtest_c_srtp" => [ - "include" - ], - "test/buildtest_c_ssl" => [ - "include" - ], - "test/buildtest_c_ssl2" => [ - "include" - ], - "test/buildtest_c_sslerr_legacy" => [ - "include" - ], - "test/buildtest_c_stack" => [ - "include" - ], - "test/buildtest_c_store" => [ - "include" - ], - "test/buildtest_c_symhacks" => [ - "include" - ], - "test/buildtest_c_thread" => [ - "include" - ], - "test/buildtest_c_tls1" => [ - "include" - ], - "test/buildtest_c_ts" => [ - "include" - ], - "test/buildtest_c_txt_db" => [ - "include" - ], - "test/buildtest_c_types" => [ - "include" - ], - "test/buildtest_c_ui" => [ - "include" - ], - "test/buildtest_c_whrlpool" => [ - "include" - ], - "test/buildtest_c_x509" => [ - "include" - ], - "test/buildtest_c_x509_acert" => [ - "include" - ], - "test/buildtest_c_x509_vfy" => [ - "include" - ], - "test/buildtest_c_x509v3" => [ - "include" - ], - "test/byteorder_test" => [ - "include", - "apps/include" - ], - "test/ca_internals_test" => [ - ".", - "include", - "apps/include" - ], - "test/casttest" => [ - "include", - "apps/include" - ], - "test/cert_comp_test" => [ - "include", - "apps/include", - "." - ], - "test/chacha_internal_test" => [ - ".", - "include", - "apps/include" - ], - "test/cipher_overhead_test" => [ - ".", - "include", - "apps/include" - ], - "test/cipherbytes_test" => [ - "include", - "apps/include" - ], - "test/cipherlist_test" => [ - "include", - "apps/include" - ], - "test/ciphername_test" => [ - "include", - "apps/include" - ], - "test/clienthellotest" => [ - "include", - "apps/include" - ], - "test/cmactest" => [ - "include", - "apps/include" - ], - "test/cmp_asn_test" => [ - ".", - "include", - "apps/include" - ], - "test/cmp_client_test" => [ - ".", - "include", - "apps/include" - ], - "test/cmp_ctx_test" => [ - ".", - "include", - "apps/include" - ], - "test/cmp_hdr_test" => [ - ".", - "include", - "apps/include" - ], - "test/cmp_msg_test" => [ - ".", - "include", - "apps/include" - ], - "test/cmp_protect_test" => [ - ".", - "include", - "apps/include" - ], - "test/cmp_server_test" => [ - ".", - "include", - "apps/include" - ], - "test/cmp_status_test" => [ - ".", - "include", - "apps/include" - ], - "test/cmp_vfy_test" => [ - ".", - "include", - "apps/include" - ], - "test/cmsapitest" => [ - "include", - "apps/include" - ], - "test/conf_include_test" => [ - "include", - "apps/include" - ], - "test/confdump" => [ - "include", - "apps/include" - ], - "test/constant_time_test" => [ - "include", - "apps/include" - ], - "test/context_internal_test" => [ - ".", - "include", - "apps/include" - ], - "test/crltest" => [ - "include", - "apps/include" - ], - "test/ct_test" => [ - "include", - "apps/include" - ], - "test/ctype_internal_test" => [ - ".", - "include", - "apps/include" - ], - "test/curve448_internal_test" => [ - ".", - "include", - "apps/include", - "crypto/ec/curve448" - ], - "test/d2i_test" => [ - "include", - "apps/include" - ], - "test/danetest" => [ - "include", - "apps/include" - ], - "test/decoder_propq_test" => [ - ".", - "include", - "apps/include" - ], - "test/defltfips_test" => [ - "include", - "apps/include" - ], - "test/destest" => [ - "include", - "apps/include" - ], - "test/dhtest" => [ - "include", - "apps/include" - ], - "test/drbgtest" => [ - "include", - "apps/include", - "providers/common/include", - "providers/fips/include" - ], - "test/dsa_no_digest_size_test" => [ - "include", - "apps/include" - ], - "test/dsatest" => [ - "include", - "apps/include" - ], - "test/dtls_mtu_test" => [ - ".", - "include", - "apps/include" - ], - "test/dtlstest" => [ - "include", - "apps/include" - ], - "test/dtlsv1listentest" => [ - "include", - "apps/include" - ], - "test/ec_internal_test" => [ - "include", - "crypto/ec", - "apps/include" - ], - "test/ecdsatest" => [ - "include", - "apps/include" - ], - "test/ecstresstest" => [ - "include", - "apps/include" - ], - "test/ectest" => [ - "include", - "apps/include" - ], - "test/endecode_test" => [ - ".", - "include", - "apps/include", - "providers/common/include", - "providers/implementations/include" - ], - "test/endecoder_legacy_test" => [ - ".", - "include", - "apps/include" - ], - "test/enginetest" => [ - "include", - "apps/include" - ], - "test/errtest" => [ - "include", - "apps/include" - ], - "test/evp_byname_test" => [ - "include", - "apps/include" - ], - "test/evp_extra_test" => [ - "include", - "apps/include", - "providers/common/include", - "providers/implementations/include" - ], - "test/evp_extra_test2" => [ - "include", - "apps/include" - ], - "test/evp_fetch_prov_test" => [ - "include", - "apps/include" - ], - "test/evp_kdf_test" => [ - "include", - "apps/include" - ], - "test/evp_libctx_test" => [ - "include", - "apps/include" - ], - "test/evp_pkey_ctx_new_from_name" => [ - "include", - "apps/include" - ], - "test/evp_pkey_dhkem_test" => [ - "include", - "apps/include" - ], - "test/evp_pkey_dparams_test" => [ - "include", - "apps/include" - ], - "test/evp_pkey_provided_test" => [ - "include", - "apps/include" - ], - "test/evp_skey_test" => [ - "include", - "apps/include" - ], - "test/evp_test" => [ - "include", - "apps/include" - ], - "test/evp_xof_test" => [ - "include", - "apps/include" - ], - "test/exdatatest" => [ - "include", - "apps/include" - ], - "test/exptest" => [ - "include", - "apps/include" - ], - "test/ext_internal_test" => [ - ".", - "include", - "apps/include" - ], - "test/fatalerrtest" => [ - "include", - "apps/include" - ], - "test/ffc_internal_test" => [ - ".", - "include", - "apps/include" - ], - "test/fips_version_test" => [ - "include", - "apps/include" - ], - "test/gmdifftest" => [ - "include", - "apps/include" - ], - "test/helpers/asynciotest-bin-ssltestlib.o" => [ - ".", - "include" - ], - "test/helpers/cmp_asn_test-bin-cmp_testlib.o" => [ - ".", - "include", - "apps/include" - ], - "test/helpers/cmp_client_test-bin-cmp_testlib.o" => [ - ".", - "include", - "apps/include" - ], - "test/helpers/cmp_ctx_test-bin-cmp_testlib.o" => [ - ".", - "include", - "apps/include" - ], - "test/helpers/cmp_hdr_test-bin-cmp_testlib.o" => [ - ".", - "include", - "apps/include" - ], - "test/helpers/cmp_msg_test-bin-cmp_testlib.o" => [ - ".", - "include", - "apps/include" - ], - "test/helpers/cmp_protect_test-bin-cmp_testlib.o" => [ - ".", - "include", - "apps/include" - ], - "test/helpers/cmp_server_test-bin-cmp_testlib.o" => [ - ".", - "include", - "apps/include" - ], - "test/helpers/cmp_status_test-bin-cmp_testlib.o" => [ - ".", - "include", - "apps/include" - ], - "test/helpers/cmp_testlib.o" => [ - ".", - "include", - "apps/include" - ], - "test/helpers/cmp_vfy_test-bin-cmp_testlib.o" => [ - ".", - "include", - "apps/include" - ], - "test/helpers/dtls_mtu_test-bin-ssltestlib.o" => [ - ".", - "include" - ], - "test/helpers/dtlstest-bin-ssltestlib.o" => [ - ".", - "include" - ], - "test/helpers/fatalerrtest-bin-ssltestlib.o" => [ - ".", - "include" - ], - "test/helpers/handshake.o" => [ - ".", - "include" - ], - "test/helpers/json_test-bin-ssltestlib.o" => [ - ".", - "include" - ], - "test/helpers/pkcs12.o" => [ - ".", - "include" - ], - "test/helpers/pkcs12_api_test-bin-pkcs12.o" => [ - ".", - "include" - ], - "test/helpers/pkcs12_format_test-bin-pkcs12.o" => [ - ".", - "include" - ], - "test/helpers/quic_multistream_test-bin-ssltestlib.o" => [ - ".", - "include" - ], - "test/helpers/quic_newcid_test-bin-ssltestlib.o" => [ - ".", - "include" - ], - "test/helpers/quic_radix_test-bin-ssltestlib.o" => [ - ".", - "include" - ], - "test/helpers/quic_srt_gen_test-bin-ssltestlib.o" => [ - ".", - "include" - ], - "test/helpers/quicapitest-bin-ssltestlib.o" => [ - ".", - "include" - ], - "test/helpers/quicfaultstest-bin-ssltestlib.o" => [ - ".", - "include" - ], - "test/helpers/recordlentest-bin-ssltestlib.o" => [ - ".", - "include" - ], - "test/helpers/rpktest-bin-ssltestlib.o" => [ - ".", - "include" - ], - "test/helpers/servername_test-bin-ssltestlib.o" => [ - ".", - "include" - ], - "test/helpers/ssl_handshake_rtt_test-bin-ssltestlib.o" => [ - ".", - "include" - ], - "test/helpers/ssl_test-bin-handshake.o" => [ - ".", - "include" - ], - "test/helpers/ssl_test-bin-ssl_test_ctx.o" => [ - "include" - ], - "test/helpers/ssl_test_ctx.o" => [ - "include" - ], - "test/helpers/ssl_test_ctx_test-bin-ssl_test_ctx.o" => [ - "include" - ], - "test/helpers/sslapitest-bin-ssltestlib.o" => [ - ".", - "include" - ], - "test/helpers/sslbuffertest-bin-ssltestlib.o" => [ - ".", - "include" - ], - "test/helpers/sslcorrupttest-bin-ssltestlib.o" => [ - ".", - "include" - ], - "test/helpers/ssltestlib.o" => [ - ".", - "include" - ], - "test/helpers/tls13ccstest-bin-ssltestlib.o" => [ - ".", - "include" - ], - "test/helpers/tls13groupselection_test-bin-ssltestlib.o" => [ - ".", - "include" - ], - "test/hexstr_test" => [ - ".", - "include", - "apps/include" - ], - "test/hmactest" => [ - "include", - "apps/include" - ], - "test/hpke_test" => [ - "include", - "apps/include" - ], - "test/http_test" => [ - "include", - "apps/include" - ], - "test/ideatest" => [ - "include", - "apps/include" - ], - "test/igetest" => [ - "include", - "apps/include" - ], - "test/json_test" => [ - "include", - "apps/include" - ], - "test/keymgmt_internal_test" => [ - ".", - "include", - "apps/include" - ], - "test/lhash_test" => [ - "include", - "apps/include" - ], - "test/libtestutil.a" => [ - "include", - "apps/include", - "." - ], - "test/list_test" => [ - "include", - "apps/include" - ], - "test/localetest" => [ - "include", - "apps/include" - ], - "test/mdc2_internal_test" => [ - ".", - "include", - "apps/include" - ], - "test/mdc2test" => [ - "include", - "apps/include" - ], - "test/membio_test" => [ - "include", - "apps/include", - "." - ], - "test/memleaktest" => [ - "include", - "apps/include" - ], - "test/ml_dsa_test" => [ - "include", - "apps/include" - ], - "test/ml_kem_evp_extra_test" => [ - "include", - "apps/include" - ], - "test/ml_kem_internal_test" => [ - "include", - "apps/include" - ], - "test/modes_internal_test" => [ - ".", - "include", - "apps/include" - ], - "test/moduleloadtest" => [ - "include", - "apps/include" - ], - "test/namemap_internal_test" => [ - ".", - "include", - "apps/include" - ], - "test/nodefltctxtest" => [ - "include", - "apps/include" - ], - "test/ocspapitest" => [ - "include", - "apps/include" - ], - "test/ossl_store_test" => [ - "include", - "apps/include" - ], - "test/p_minimal" => [ - "include", - "." - ], - "test/p_test" => [ - "include", - "." - ], - "test/packettest" => [ - "include", - "apps/include" - ], - "test/pairwise_fail_test" => [ - "include", - "apps/include" - ], - "test/param_build_test" => [ - "include", - "apps/include" - ], - "test/params_api_test" => [ - "include", - "apps/include" - ], - "test/params_conversion_test" => [ - "include", - "apps/include" - ], - "test/params_test" => [ - ".", - "include", - "apps/include" - ], - "test/pbelutest" => [ - "include", - "apps/include" - ], - "test/pbetest" => [ - "include", - "apps/include" - ], - "test/pem_read_depr_test" => [ - "include", - "apps/include" - ], - "test/pemtest" => [ - "include", - "apps/include" - ], - "test/pkcs12_api_test" => [ - "include", - "apps/include" - ], - "test/pkcs12_format_test" => [ - "include", - "apps/include" - ], - "test/pkcs7_test" => [ - "include", - "apps/include" - ], - "test/pkey_meth_kdf_test" => [ - "include", - "apps/include" - ], - "test/pkey_meth_test" => [ - "include", - "apps/include" - ], - "test/poly1305_internal_test" => [ - ".", - "include", - "apps/include" - ], - "test/priority_queue_test" => [ - "include", - "apps/include" - ], - "test/property_test" => [ - ".", - "include", - "apps/include" - ], - "test/prov_config_test" => [ - "include", - "apps/include" - ], - "test/provfetchtest" => [ - "include", - "apps/include" - ], - "test/provider_default_search_path_test" => [ - "include", - "apps/include" - ], - "test/provider_fallback_test" => [ - "include", - "apps/include" - ], - "test/provider_internal_test" => [ - "include", - "apps/include", - "." - ], - "test/provider_pkey_test" => [ - "include", - "apps/include" - ], - "test/provider_status_test" => [ - "include", - "apps/include" - ], - "test/provider_test" => [ - "include", - "apps/include", - "." - ], - "test/punycode_test" => [ - "include", - "apps/include" - ], - "test/quic_ackm_test" => [ - "include", - "apps/include" - ], - "test/quic_cc_test" => [ - "include", - "apps/include" - ], - "test/quic_cfq_test" => [ - "include", - "apps/include" - ], - "test/quic_client_test" => [ - "include", - "apps/include" - ], - "test/quic_fc_test" => [ - "include", - "apps/include" - ], - "test/quic_fifd_test" => [ - "include", - "apps/include" - ], - "test/quic_lcidm_test" => [ - "include", - "apps/include" - ], - "test/quic_multistream_test" => [ - "include", - "apps/include" - ], - "test/quic_newcid_test" => [ - "include", - "apps/include", - "." - ], - "test/quic_qlog_test" => [ - "include", - "apps/include" - ], - "test/quic_radix_test" => [ - "include", - "apps/include" - ], - "test/quic_rcidm_test" => [ - "include", - "apps/include" - ], - "test/quic_record_test" => [ - "include", - "apps/include" - ], - "test/quic_srt_gen_test" => [ - "include", - "apps/include", - "." - ], - "test/quic_srtm_test" => [ - "include", - "apps/include" - ], - "test/quic_stream_test" => [ - "include", - "apps/include" - ], - "test/quic_tserver_test" => [ - "include", - "apps/include" - ], - "test/quic_txp_test" => [ - "include", - "apps/include" - ], - "test/quic_txpim_test" => [ - "include", - "apps/include" - ], - "test/quic_wire_test" => [ - "include", - "apps/include" - ], - "test/quicapitest" => [ - "include", - "apps/include" - ], - "test/quicfaultstest" => [ - "include", - "apps/include", - "." - ], - "test/rand_status_test" => [ - "include", - "apps/include" - ], - "test/rand_test" => [ - "include", - "apps/include" - ], - "test/rc2test" => [ - "include", - "apps/include" - ], - "test/rc4test" => [ - "include", - "apps/include" - ], - "test/rc5test" => [ - "include", - "apps/include" - ], - "test/rdcpu_sanitytest" => [ - "include", - "apps/include", - "crypto" - ], - "test/recordlentest" => [ - "include", - "apps/include" - ], - "test/rpktest" => [ - "include", - "apps/include", - "." - ], - "test/rsa_complex" => [ - "include", - "apps/include" - ], - "test/rsa_mp_test" => [ - "include", - "apps/include" - ], - "test/rsa_sp800_56b_test" => [ - ".", - "include", - "crypto/rsa", - "apps/include" - ], - "test/rsa_test" => [ - "include", - "apps/include" - ], - "test/rsa_x931_test" => [ - ".", - "include", - "apps/include" - ], - "test/safe_math_test" => [ - "include", - "apps/include" - ], - "test/sanitytest" => [ - "include", - "apps/include" - ], - "test/secmemtest" => [ - "include", - "apps/include" - ], - "test/servername_test" => [ - "include", - "apps/include" - ], - "test/sha_test" => [ - "include", - "apps/include" - ], - "test/shlibloadtest" => [ - "include", - "apps/include" - ], - "test/siphash_internal_test" => [ - ".", - "include", - "apps/include" - ], - "test/slh_dsa_test" => [ - "include", - "apps/include" - ], - "test/sm2_internal_test" => [ - "include", - "apps/include" - ], - "test/sm3_internal_test" => [ - "include", - "apps/include" - ], - "test/sm4_internal_test" => [ - ".", - "include", - "apps/include" - ], - "test/sparse_array_test" => [ - "include", - "apps/include" - ], - "test/srptest" => [ - "include", - "apps/include" - ], - "test/ssl_cert_table_internal_test" => [ - ".", - "include", - "apps/include" - ], - "test/ssl_ctx_test" => [ - "include", - "apps/include" - ], - "test/ssl_handshake_rtt_test" => [ - "include", - "apps/include", - "." - ], - "test/ssl_old_test" => [ - ".", - "include", - "apps/include" - ], - "test/ssl_test" => [ - "include", - "apps/include" - ], - "test/ssl_test_ctx_test" => [ - "include", - "apps/include" - ], - "test/sslapitest" => [ - "include", - "apps/include", - "providers/common/include", - "." - ], - "test/sslbuffertest" => [ - "include", - "apps/include" - ], - "test/sslcorrupttest" => [ - "include", - "apps/include" - ], - "test/stack_test" => [ - "include", - "apps/include" - ], - "test/strtoultest" => [ - "include", - "apps/include" - ], - "test/sysdefaulttest" => [ - "include", - "apps/include" - ], - "test/test_test" => [ - "include", - "apps/include" - ], - "test/threadpool_test" => [ - ".", - "include", - "apps/include" - ], - "test/threadstest" => [ - ".", - "include", - "apps/include" - ], - "test/threadstest_fips" => [ - "include", - "apps/include" - ], - "test/time_offset_test" => [ - "include", - "apps/include" - ], - "test/time_test" => [ - "include", - "apps/include" - ], - "test/timing_load_creds" => [ - "include" - ], - "test/tls13ccstest" => [ - "include", - "apps/include" - ], - "test/tls13encryptiontest" => [ - ".", - "include", - "apps/include" - ], - "test/tls13groupselection_test" => [ - "include", - "apps/include" - ], - "test/tls13secretstest" => [ - ".", - "include", - "apps/include" - ], - "test/trace_api_test" => [ - ".", - "include", - "apps/include" - ], - "test/uitest" => [ - ".", - "include", - "apps/include" - ], - "test/upcallstest" => [ - "include", - "apps/include" - ], - "test/user_property_test" => [ - "include", - "apps/include" - ], - "test/v3ext" => [ - "include", - "apps/include" - ], - "test/v3nametest" => [ - "include", - "apps/include" - ], - "test/verify_extra_test" => [ - "include", - "apps/include" - ], - "test/versions" => [ - "include", - "apps/include" - ], - "test/wpackettest" => [ - "include", - "apps/include" - ], - "test/x509_acert_test" => [ - "include", - "apps/include" - ], - "test/x509_check_cert_pkey_test" => [ - "include", - "apps/include" - ], - "test/x509_dup_cert_test" => [ - "include", - "apps/include" - ], - "test/x509_internal_test" => [ - ".", - "include", - "apps/include" - ], - "test/x509_load_cert_file_test" => [ - "include", - "apps/include" - ], - "test/x509_req_test" => [ - "include", - "apps/include" - ], - "test/x509_test" => [ - "include", - "apps/include" - ], - "test/x509_time_test" => [ - "include", - "apps/include" - ], - "test/x509aux" => [ - "include", - "apps/include" - ], - "util/wrap.pl" => [ - "." - ] - }, - "ldadd" => {}, - "libraries" => [ - "apps/libapps.a", - "libcrypto", - "libssl", - "providers/libcommon.a", - "providers/libdefault.a", - "providers/liblegacy.a", - "providers/libtemplate.a", - "test/libtestutil.a" - ], - "mandocs" => { - "man1" => [ - "doc/man/man1/CA.pl.1", - "doc/man/man1/openssl-asn1parse.1", - "doc/man/man1/openssl-ca.1", - "doc/man/man1/openssl-ciphers.1", - "doc/man/man1/openssl-cmds.1", - "doc/man/man1/openssl-cmp.1", - "doc/man/man1/openssl-cms.1", - "doc/man/man1/openssl-crl.1", - "doc/man/man1/openssl-crl2pkcs7.1", - "doc/man/man1/openssl-dgst.1", - "doc/man/man1/openssl-dhparam.1", - "doc/man/man1/openssl-dsa.1", - "doc/man/man1/openssl-dsaparam.1", - "doc/man/man1/openssl-ec.1", - "doc/man/man1/openssl-ecparam.1", - "doc/man/man1/openssl-enc.1", - "doc/man/man1/openssl-engine.1", - "doc/man/man1/openssl-errstr.1", - "doc/man/man1/openssl-fipsinstall.1", - "doc/man/man1/openssl-format-options.1", - "doc/man/man1/openssl-gendsa.1", - "doc/man/man1/openssl-genpkey.1", - "doc/man/man1/openssl-genrsa.1", - "doc/man/man1/openssl-info.1", - "doc/man/man1/openssl-kdf.1", - "doc/man/man1/openssl-list.1", - "doc/man/man1/openssl-mac.1", - "doc/man/man1/openssl-namedisplay-options.1", - "doc/man/man1/openssl-nseq.1", - "doc/man/man1/openssl-ocsp.1", - "doc/man/man1/openssl-passphrase-options.1", - "doc/man/man1/openssl-passwd.1", - "doc/man/man1/openssl-pkcs12.1", - "doc/man/man1/openssl-pkcs7.1", - "doc/man/man1/openssl-pkcs8.1", - "doc/man/man1/openssl-pkey.1", - "doc/man/man1/openssl-pkeyparam.1", - "doc/man/man1/openssl-pkeyutl.1", - "doc/man/man1/openssl-prime.1", - "doc/man/man1/openssl-rand.1", - "doc/man/man1/openssl-rehash.1", - "doc/man/man1/openssl-req.1", - "doc/man/man1/openssl-rsa.1", - "doc/man/man1/openssl-rsautl.1", - "doc/man/man1/openssl-s_client.1", - "doc/man/man1/openssl-s_server.1", - "doc/man/man1/openssl-s_time.1", - "doc/man/man1/openssl-sess_id.1", - "doc/man/man1/openssl-skeyutl.1", - "doc/man/man1/openssl-smime.1", - "doc/man/man1/openssl-speed.1", - "doc/man/man1/openssl-spkac.1", - "doc/man/man1/openssl-srp.1", - "doc/man/man1/openssl-storeutl.1", - "doc/man/man1/openssl-ts.1", - "doc/man/man1/openssl-verification-options.1", - "doc/man/man1/openssl-verify.1", - "doc/man/man1/openssl-version.1", - "doc/man/man1/openssl-x509.1", - "doc/man/man1/openssl.1", - "doc/man/man1/tsget.1" - ], - "man3" => [ - "doc/man/man3/ADMISSIONS.3", - "doc/man/man3/ASN1_EXTERN_FUNCS.3", - "doc/man/man3/ASN1_INTEGER_get_int64.3", - "doc/man/man3/ASN1_INTEGER_new.3", - "doc/man/man3/ASN1_ITEM_lookup.3", - "doc/man/man3/ASN1_OBJECT_new.3", - "doc/man/man3/ASN1_STRING_TABLE_add.3", - "doc/man/man3/ASN1_STRING_length.3", - "doc/man/man3/ASN1_STRING_new.3", - "doc/man/man3/ASN1_STRING_print_ex.3", - "doc/man/man3/ASN1_TIME_set.3", - "doc/man/man3/ASN1_TYPE_get.3", - "doc/man/man3/ASN1_aux_cb.3", - "doc/man/man3/ASN1_generate_nconf.3", - "doc/man/man3/ASN1_item_d2i_bio.3", - "doc/man/man3/ASN1_item_new.3", - "doc/man/man3/ASN1_item_sign.3", - "doc/man/man3/ASYNC_WAIT_CTX_new.3", - "doc/man/man3/ASYNC_start_job.3", - "doc/man/man3/BF_encrypt.3", - "doc/man/man3/BIO_ADDR.3", - "doc/man/man3/BIO_ADDRINFO.3", - "doc/man/man3/BIO_connect.3", - "doc/man/man3/BIO_ctrl.3", - "doc/man/man3/BIO_f_base64.3", - "doc/man/man3/BIO_f_buffer.3", - "doc/man/man3/BIO_f_cipher.3", - "doc/man/man3/BIO_f_md.3", - "doc/man/man3/BIO_f_null.3", - "doc/man/man3/BIO_f_prefix.3", - "doc/man/man3/BIO_f_readbuffer.3", - "doc/man/man3/BIO_f_ssl.3", - "doc/man/man3/BIO_find_type.3", - "doc/man/man3/BIO_get_data.3", - "doc/man/man3/BIO_get_ex_new_index.3", - "doc/man/man3/BIO_get_rpoll_descriptor.3", - "doc/man/man3/BIO_meth_new.3", - "doc/man/man3/BIO_new.3", - "doc/man/man3/BIO_new_CMS.3", - "doc/man/man3/BIO_parse_hostserv.3", - "doc/man/man3/BIO_printf.3", - "doc/man/man3/BIO_push.3", - "doc/man/man3/BIO_read.3", - "doc/man/man3/BIO_s_accept.3", - "doc/man/man3/BIO_s_bio.3", - "doc/man/man3/BIO_s_connect.3", - "doc/man/man3/BIO_s_core.3", - "doc/man/man3/BIO_s_datagram.3", - "doc/man/man3/BIO_s_dgram_pair.3", - "doc/man/man3/BIO_s_fd.3", - "doc/man/man3/BIO_s_file.3", - "doc/man/man3/BIO_s_mem.3", - "doc/man/man3/BIO_s_null.3", - "doc/man/man3/BIO_s_socket.3", - "doc/man/man3/BIO_sendmmsg.3", - "doc/man/man3/BIO_set_callback.3", - "doc/man/man3/BIO_should_retry.3", - "doc/man/man3/BIO_socket_wait.3", - "doc/man/man3/BN_BLINDING_new.3", - "doc/man/man3/BN_CTX_new.3", - "doc/man/man3/BN_CTX_start.3", - "doc/man/man3/BN_add.3", - "doc/man/man3/BN_add_word.3", - "doc/man/man3/BN_bn2bin.3", - "doc/man/man3/BN_cmp.3", - "doc/man/man3/BN_copy.3", - "doc/man/man3/BN_generate_prime.3", - "doc/man/man3/BN_mod_exp_mont.3", - "doc/man/man3/BN_mod_inverse.3", - "doc/man/man3/BN_mod_mul_montgomery.3", - "doc/man/man3/BN_mod_mul_reciprocal.3", - "doc/man/man3/BN_new.3", - "doc/man/man3/BN_num_bytes.3", - "doc/man/man3/BN_rand.3", - "doc/man/man3/BN_security_bits.3", - "doc/man/man3/BN_set_bit.3", - "doc/man/man3/BN_swap.3", - "doc/man/man3/BN_zero.3", - "doc/man/man3/BUF_MEM_new.3", - "doc/man/man3/CMAC_CTX.3", - "doc/man/man3/CMS_EncryptedData_decrypt.3", - "doc/man/man3/CMS_EncryptedData_encrypt.3", - "doc/man/man3/CMS_EnvelopedData_create.3", - "doc/man/man3/CMS_add0_cert.3", - "doc/man/man3/CMS_add1_recipient_cert.3", - "doc/man/man3/CMS_add1_signer.3", - "doc/man/man3/CMS_compress.3", - "doc/man/man3/CMS_data_create.3", - "doc/man/man3/CMS_decrypt.3", - "doc/man/man3/CMS_digest_create.3", - "doc/man/man3/CMS_encrypt.3", - "doc/man/man3/CMS_final.3", - "doc/man/man3/CMS_get0_RecipientInfos.3", - "doc/man/man3/CMS_get0_SignerInfos.3", - "doc/man/man3/CMS_get0_type.3", - "doc/man/man3/CMS_get1_ReceiptRequest.3", - "doc/man/man3/CMS_sign.3", - "doc/man/man3/CMS_sign_receipt.3", - "doc/man/man3/CMS_signed_get_attr.3", - "doc/man/man3/CMS_uncompress.3", - "doc/man/man3/CMS_verify.3", - "doc/man/man3/CMS_verify_receipt.3", - "doc/man/man3/COMP_CTX_new.3", - "doc/man/man3/CONF_modules_free.3", - "doc/man/man3/CONF_modules_load_file.3", - "doc/man/man3/CRYPTO_THREAD_run_once.3", - "doc/man/man3/CRYPTO_get_ex_new_index.3", - "doc/man/man3/CRYPTO_memcmp.3", - "doc/man/man3/CTLOG_STORE_get0_log_by_id.3", - "doc/man/man3/CTLOG_STORE_new.3", - "doc/man/man3/CTLOG_new.3", - "doc/man/man3/CT_POLICY_EVAL_CTX_new.3", - "doc/man/man3/DEFINE_STACK_OF.3", - "doc/man/man3/DES_random_key.3", - "doc/man/man3/DH_generate_key.3", - "doc/man/man3/DH_generate_parameters.3", - "doc/man/man3/DH_get0_pqg.3", - "doc/man/man3/DH_get_1024_160.3", - "doc/man/man3/DH_meth_new.3", - "doc/man/man3/DH_new.3", - "doc/man/man3/DH_new_by_nid.3", - "doc/man/man3/DH_set_method.3", - "doc/man/man3/DH_size.3", - "doc/man/man3/DSA_SIG_new.3", - "doc/man/man3/DSA_do_sign.3", - "doc/man/man3/DSA_dup_DH.3", - "doc/man/man3/DSA_generate_key.3", - "doc/man/man3/DSA_generate_parameters.3", - "doc/man/man3/DSA_get0_pqg.3", - "doc/man/man3/DSA_meth_new.3", - "doc/man/man3/DSA_new.3", - "doc/man/man3/DSA_set_method.3", - "doc/man/man3/DSA_sign.3", - "doc/man/man3/DSA_size.3", - "doc/man/man3/DTLS_get_data_mtu.3", - "doc/man/man3/DTLS_set_timer_cb.3", - "doc/man/man3/DTLSv1_get_timeout.3", - "doc/man/man3/DTLSv1_handle_timeout.3", - "doc/man/man3/DTLSv1_listen.3", - "doc/man/man3/ECDSA_SIG_new.3", - "doc/man/man3/ECDSA_sign.3", - "doc/man/man3/ECPKParameters_print.3", - "doc/man/man3/EC_GFp_simple_method.3", - "doc/man/man3/EC_GROUP_copy.3", - "doc/man/man3/EC_GROUP_new.3", - "doc/man/man3/EC_KEY_get_enc_flags.3", - "doc/man/man3/EC_KEY_new.3", - "doc/man/man3/EC_POINT_add.3", - "doc/man/man3/EC_POINT_new.3", - "doc/man/man3/ENGINE_add.3", - "doc/man/man3/ERR_GET_LIB.3", - "doc/man/man3/ERR_clear_error.3", - "doc/man/man3/ERR_error_string.3", - "doc/man/man3/ERR_get_error.3", - "doc/man/man3/ERR_load_crypto_strings.3", - "doc/man/man3/ERR_load_strings.3", - "doc/man/man3/ERR_new.3", - "doc/man/man3/ERR_print_errors.3", - "doc/man/man3/ERR_put_error.3", - "doc/man/man3/ERR_remove_state.3", - "doc/man/man3/ERR_set_mark.3", - "doc/man/man3/EVP_ASYM_CIPHER_free.3", - "doc/man/man3/EVP_BytesToKey.3", - "doc/man/man3/EVP_CIPHER_CTX_get_cipher_data.3", - "doc/man/man3/EVP_CIPHER_CTX_get_original_iv.3", - "doc/man/man3/EVP_CIPHER_meth_new.3", - "doc/man/man3/EVP_DigestInit.3", - "doc/man/man3/EVP_DigestSignInit.3", - "doc/man/man3/EVP_DigestVerifyInit.3", - "doc/man/man3/EVP_EncodeInit.3", - "doc/man/man3/EVP_EncryptInit.3", - "doc/man/man3/EVP_KDF.3", - "doc/man/man3/EVP_KEM_free.3", - "doc/man/man3/EVP_KEYEXCH_free.3", - "doc/man/man3/EVP_KEYMGMT.3", - "doc/man/man3/EVP_MAC.3", - "doc/man/man3/EVP_MD_meth_new.3", - "doc/man/man3/EVP_OpenInit.3", - "doc/man/man3/EVP_PBE_CipherInit.3", - "doc/man/man3/EVP_PKEY2PKCS8.3", - "doc/man/man3/EVP_PKEY_ASN1_METHOD.3", - "doc/man/man3/EVP_PKEY_CTX_ctrl.3", - "doc/man/man3/EVP_PKEY_CTX_get0_libctx.3", - "doc/man/man3/EVP_PKEY_CTX_get0_pkey.3", - "doc/man/man3/EVP_PKEY_CTX_get_algor.3", - "doc/man/man3/EVP_PKEY_CTX_new.3", - "doc/man/man3/EVP_PKEY_CTX_set1_pbe_pass.3", - "doc/man/man3/EVP_PKEY_CTX_set_hkdf_md.3", - "doc/man/man3/EVP_PKEY_CTX_set_params.3", - "doc/man/man3/EVP_PKEY_CTX_set_rsa_pss_keygen_md.3", - "doc/man/man3/EVP_PKEY_CTX_set_scrypt_N.3", - "doc/man/man3/EVP_PKEY_CTX_set_tls1_prf_md.3", - "doc/man/man3/EVP_PKEY_asn1_get_count.3", - "doc/man/man3/EVP_PKEY_check.3", - "doc/man/man3/EVP_PKEY_copy_parameters.3", - "doc/man/man3/EVP_PKEY_decapsulate.3", - "doc/man/man3/EVP_PKEY_decrypt.3", - "doc/man/man3/EVP_PKEY_derive.3", - "doc/man/man3/EVP_PKEY_digestsign_supports_digest.3", - "doc/man/man3/EVP_PKEY_encapsulate.3", - "doc/man/man3/EVP_PKEY_encrypt.3", - "doc/man/man3/EVP_PKEY_fromdata.3", - "doc/man/man3/EVP_PKEY_get_attr.3", - "doc/man/man3/EVP_PKEY_get_default_digest_nid.3", - "doc/man/man3/EVP_PKEY_get_field_type.3", - "doc/man/man3/EVP_PKEY_get_group_name.3", - "doc/man/man3/EVP_PKEY_get_size.3", - "doc/man/man3/EVP_PKEY_gettable_params.3", - "doc/man/man3/EVP_PKEY_is_a.3", - "doc/man/man3/EVP_PKEY_keygen.3", - "doc/man/man3/EVP_PKEY_meth_get_count.3", - "doc/man/man3/EVP_PKEY_meth_new.3", - "doc/man/man3/EVP_PKEY_new.3", - "doc/man/man3/EVP_PKEY_print_private.3", - "doc/man/man3/EVP_PKEY_set1_RSA.3", - "doc/man/man3/EVP_PKEY_set1_encoded_public_key.3", - "doc/man/man3/EVP_PKEY_set_type.3", - "doc/man/man3/EVP_PKEY_settable_params.3", - "doc/man/man3/EVP_PKEY_sign.3", - "doc/man/man3/EVP_PKEY_todata.3", - "doc/man/man3/EVP_PKEY_verify.3", - "doc/man/man3/EVP_PKEY_verify_recover.3", - "doc/man/man3/EVP_RAND.3", - "doc/man/man3/EVP_SIGNATURE.3", - "doc/man/man3/EVP_SKEY.3", - "doc/man/man3/EVP_SKEYMGMT.3", - "doc/man/man3/EVP_SealInit.3", - "doc/man/man3/EVP_SignInit.3", - "doc/man/man3/EVP_VerifyInit.3", - "doc/man/man3/EVP_aes_128_gcm.3", - "doc/man/man3/EVP_aria_128_gcm.3", - "doc/man/man3/EVP_bf_cbc.3", - "doc/man/man3/EVP_blake2b512.3", - "doc/man/man3/EVP_camellia_128_ecb.3", - "doc/man/man3/EVP_cast5_cbc.3", - "doc/man/man3/EVP_chacha20.3", - "doc/man/man3/EVP_des_cbc.3", - "doc/man/man3/EVP_desx_cbc.3", - "doc/man/man3/EVP_idea_cbc.3", - "doc/man/man3/EVP_md2.3", - "doc/man/man3/EVP_md4.3", - "doc/man/man3/EVP_md5.3", - "doc/man/man3/EVP_mdc2.3", - "doc/man/man3/EVP_rc2_cbc.3", - "doc/man/man3/EVP_rc4.3", - "doc/man/man3/EVP_rc5_32_12_16_cbc.3", - "doc/man/man3/EVP_ripemd160.3", - "doc/man/man3/EVP_seed_cbc.3", - "doc/man/man3/EVP_set_default_properties.3", - "doc/man/man3/EVP_sha1.3", - "doc/man/man3/EVP_sha224.3", - "doc/man/man3/EVP_sha3_224.3", - "doc/man/man3/EVP_sm3.3", - "doc/man/man3/EVP_sm4_cbc.3", - "doc/man/man3/EVP_whirlpool.3", - "doc/man/man3/GENERAL_NAME.3", - "doc/man/man3/HMAC.3", - "doc/man/man3/MD5.3", - "doc/man/man3/MDC2_Init.3", - "doc/man/man3/NCONF_new_ex.3", - "doc/man/man3/OBJ_nid2obj.3", - "doc/man/man3/OCSP_REQUEST_new.3", - "doc/man/man3/OCSP_cert_to_id.3", - "doc/man/man3/OCSP_request_add1_nonce.3", - "doc/man/man3/OCSP_resp_find_status.3", - "doc/man/man3/OCSP_response_status.3", - "doc/man/man3/OCSP_sendreq_new.3", - "doc/man/man3/OPENSSL_Applink.3", - "doc/man/man3/OPENSSL_FILE.3", - "doc/man/man3/OPENSSL_LH_COMPFUNC.3", - "doc/man/man3/OPENSSL_LH_stats.3", - "doc/man/man3/OPENSSL_config.3", - "doc/man/man3/OPENSSL_fork_prepare.3", - "doc/man/man3/OPENSSL_gmtime.3", - "doc/man/man3/OPENSSL_hexchar2int.3", - "doc/man/man3/OPENSSL_ia32cap.3", - "doc/man/man3/OPENSSL_init_crypto.3", - "doc/man/man3/OPENSSL_init_ssl.3", - "doc/man/man3/OPENSSL_instrument_bus.3", - "doc/man/man3/OPENSSL_load_builtin_modules.3", - "doc/man/man3/OPENSSL_load_u16_le.3", - "doc/man/man3/OPENSSL_malloc.3", - "doc/man/man3/OPENSSL_riscvcap.3", - "doc/man/man3/OPENSSL_s390xcap.3", - "doc/man/man3/OPENSSL_secure_malloc.3", - "doc/man/man3/OPENSSL_strcasecmp.3", - "doc/man/man3/OSSL_ALGORITHM.3", - "doc/man/man3/OSSL_CALLBACK.3", - "doc/man/man3/OSSL_CMP_ATAV_set0.3", - "doc/man/man3/OSSL_CMP_CTX_new.3", - "doc/man/man3/OSSL_CMP_HDR_get0_transactionID.3", - "doc/man/man3/OSSL_CMP_ITAV_new_caCerts.3", - "doc/man/man3/OSSL_CMP_ITAV_set0.3", - "doc/man/man3/OSSL_CMP_MSG_get0_header.3", - "doc/man/man3/OSSL_CMP_MSG_http_perform.3", - "doc/man/man3/OSSL_CMP_SRV_CTX_new.3", - "doc/man/man3/OSSL_CMP_STATUSINFO_new.3", - "doc/man/man3/OSSL_CMP_exec_certreq.3", - "doc/man/man3/OSSL_CMP_log_open.3", - "doc/man/man3/OSSL_CMP_validate_msg.3", - "doc/man/man3/OSSL_CORE_MAKE_FUNC.3", - "doc/man/man3/OSSL_CRMF_MSG_get0_tmpl.3", - "doc/man/man3/OSSL_CRMF_MSG_set0_validity.3", - "doc/man/man3/OSSL_CRMF_MSG_set1_regCtrl_regToken.3", - "doc/man/man3/OSSL_CRMF_MSG_set1_regInfo_certReq.3", - "doc/man/man3/OSSL_CRMF_pbmp_new.3", - "doc/man/man3/OSSL_DECODER.3", - "doc/man/man3/OSSL_DECODER_CTX.3", - "doc/man/man3/OSSL_DECODER_CTX_new_for_pkey.3", - "doc/man/man3/OSSL_DECODER_from_bio.3", - "doc/man/man3/OSSL_DISPATCH.3", - "doc/man/man3/OSSL_ENCODER.3", - "doc/man/man3/OSSL_ENCODER_CTX.3", - "doc/man/man3/OSSL_ENCODER_CTX_new_for_pkey.3", - "doc/man/man3/OSSL_ENCODER_to_bio.3", - "doc/man/man3/OSSL_ERR_STATE_save.3", - "doc/man/man3/OSSL_ESS_check_signing_certs.3", - "doc/man/man3/OSSL_GENERAL_NAMES_print.3", - "doc/man/man3/OSSL_HPKE_CTX_new.3", - "doc/man/man3/OSSL_HTTP_REQ_CTX.3", - "doc/man/man3/OSSL_HTTP_parse_url.3", - "doc/man/man3/OSSL_HTTP_transfer.3", - "doc/man/man3/OSSL_IETF_ATTR_SYNTAX.3", - "doc/man/man3/OSSL_IETF_ATTR_SYNTAX_print.3", - "doc/man/man3/OSSL_INDICATOR_set_callback.3", - "doc/man/man3/OSSL_ITEM.3", - "doc/man/man3/OSSL_LIB_CTX.3", - "doc/man/man3/OSSL_LIB_CTX_set_conf_diagnostics.3", - "doc/man/man3/OSSL_PARAM.3", - "doc/man/man3/OSSL_PARAM_BLD.3", - "doc/man/man3/OSSL_PARAM_allocate_from_text.3", - "doc/man/man3/OSSL_PARAM_dup.3", - "doc/man/man3/OSSL_PARAM_int.3", - "doc/man/man3/OSSL_PARAM_print_to_bio.3", - "doc/man/man3/OSSL_PROVIDER.3", - "doc/man/man3/OSSL_QUIC_client_method.3", - "doc/man/man3/OSSL_SELF_TEST_new.3", - "doc/man/man3/OSSL_SELF_TEST_set_callback.3", - "doc/man/man3/OSSL_STORE_INFO.3", - "doc/man/man3/OSSL_STORE_LOADER.3", - "doc/man/man3/OSSL_STORE_SEARCH.3", - "doc/man/man3/OSSL_STORE_attach.3", - "doc/man/man3/OSSL_STORE_expect.3", - "doc/man/man3/OSSL_STORE_open.3", - "doc/man/man3/OSSL_sleep.3", - "doc/man/man3/OSSL_trace_enabled.3", - "doc/man/man3/OSSL_trace_get_category_num.3", - "doc/man/man3/OSSL_trace_set_channel.3", - "doc/man/man3/OpenSSL_add_all_algorithms.3", - "doc/man/man3/OpenSSL_version.3", - "doc/man/man3/PBMAC1_get1_pbkdf2_param.3", - "doc/man/man3/PEM_X509_INFO_read_bio_ex.3", - "doc/man/man3/PEM_bytes_read_bio.3", - "doc/man/man3/PEM_read.3", - "doc/man/man3/PEM_read_CMS.3", - "doc/man/man3/PEM_read_bio_PrivateKey.3", - "doc/man/man3/PEM_read_bio_ex.3", - "doc/man/man3/PEM_write_bio_CMS_stream.3", - "doc/man/man3/PEM_write_bio_PKCS7_stream.3", - "doc/man/man3/PKCS12_PBE_keyivgen.3", - "doc/man/man3/PKCS12_SAFEBAG_create_cert.3", - "doc/man/man3/PKCS12_SAFEBAG_get0_attrs.3", - "doc/man/man3/PKCS12_SAFEBAG_get1_cert.3", - "doc/man/man3/PKCS12_SAFEBAG_set0_attrs.3", - "doc/man/man3/PKCS12_add1_attr_by_NID.3", - "doc/man/man3/PKCS12_add_CSPName_asc.3", - "doc/man/man3/PKCS12_add_cert.3", - "doc/man/man3/PKCS12_add_friendlyname_asc.3", - "doc/man/man3/PKCS12_add_localkeyid.3", - "doc/man/man3/PKCS12_add_safe.3", - "doc/man/man3/PKCS12_create.3", - "doc/man/man3/PKCS12_decrypt_skey.3", - "doc/man/man3/PKCS12_gen_mac.3", - "doc/man/man3/PKCS12_get_friendlyname.3", - "doc/man/man3/PKCS12_init.3", - "doc/man/man3/PKCS12_item_decrypt_d2i.3", - "doc/man/man3/PKCS12_key_gen_utf8_ex.3", - "doc/man/man3/PKCS12_newpass.3", - "doc/man/man3/PKCS12_pack_p7encdata.3", - "doc/man/man3/PKCS12_parse.3", - "doc/man/man3/PKCS5_PBE_keyivgen.3", - "doc/man/man3/PKCS5_PBKDF2_HMAC.3", - "doc/man/man3/PKCS7_decrypt.3", - "doc/man/man3/PKCS7_encrypt.3", - "doc/man/man3/PKCS7_get_octet_string.3", - "doc/man/man3/PKCS7_sign.3", - "doc/man/man3/PKCS7_sign_add_signer.3", - "doc/man/man3/PKCS7_type_is_other.3", - "doc/man/man3/PKCS7_verify.3", - "doc/man/man3/PKCS8_encrypt.3", - "doc/man/man3/PKCS8_pkey_add1_attr.3", - "doc/man/man3/RAND_add.3", - "doc/man/man3/RAND_bytes.3", - "doc/man/man3/RAND_cleanup.3", - "doc/man/man3/RAND_egd.3", - "doc/man/man3/RAND_get0_primary.3", - "doc/man/man3/RAND_load_file.3", - "doc/man/man3/RAND_set_DRBG_type.3", - "doc/man/man3/RAND_set_rand_method.3", - "doc/man/man3/RC4_set_key.3", - "doc/man/man3/RIPEMD160_Init.3", - "doc/man/man3/RSA_blinding_on.3", - "doc/man/man3/RSA_check_key.3", - "doc/man/man3/RSA_generate_key.3", - "doc/man/man3/RSA_get0_key.3", - "doc/man/man3/RSA_meth_new.3", - "doc/man/man3/RSA_new.3", - "doc/man/man3/RSA_padding_add_PKCS1_type_1.3", - "doc/man/man3/RSA_print.3", - "doc/man/man3/RSA_private_encrypt.3", - "doc/man/man3/RSA_public_encrypt.3", - "doc/man/man3/RSA_set_method.3", - "doc/man/man3/RSA_sign.3", - "doc/man/man3/RSA_sign_ASN1_OCTET_STRING.3", - "doc/man/man3/RSA_size.3", - "doc/man/man3/SCT_new.3", - "doc/man/man3/SCT_print.3", - "doc/man/man3/SCT_validate.3", - "doc/man/man3/SHA256_Init.3", - "doc/man/man3/SMIME_read_ASN1.3", - "doc/man/man3/SMIME_read_CMS.3", - "doc/man/man3/SMIME_read_PKCS7.3", - "doc/man/man3/SMIME_write_ASN1.3", - "doc/man/man3/SMIME_write_CMS.3", - "doc/man/man3/SMIME_write_PKCS7.3", - "doc/man/man3/SRP_Calc_B.3", - "doc/man/man3/SRP_VBASE_new.3", - "doc/man/man3/SRP_create_verifier.3", - "doc/man/man3/SRP_user_pwd_new.3", - "doc/man/man3/SSL_CIPHER_get_name.3", - "doc/man/man3/SSL_COMP_add_compression_method.3", - "doc/man/man3/SSL_CONF_CTX_new.3", - "doc/man/man3/SSL_CONF_CTX_set1_prefix.3", - "doc/man/man3/SSL_CONF_CTX_set_flags.3", - "doc/man/man3/SSL_CONF_CTX_set_ssl_ctx.3", - "doc/man/man3/SSL_CONF_cmd.3", - "doc/man/man3/SSL_CONF_cmd_argv.3", - "doc/man/man3/SSL_CTX_add1_chain_cert.3", - "doc/man/man3/SSL_CTX_add_extra_chain_cert.3", - "doc/man/man3/SSL_CTX_add_session.3", - "doc/man/man3/SSL_CTX_config.3", - "doc/man/man3/SSL_CTX_ctrl.3", - "doc/man/man3/SSL_CTX_dane_enable.3", - "doc/man/man3/SSL_CTX_flush_sessions.3", - "doc/man/man3/SSL_CTX_free.3", - "doc/man/man3/SSL_CTX_get0_param.3", - "doc/man/man3/SSL_CTX_get_verify_mode.3", - "doc/man/man3/SSL_CTX_has_client_custom_ext.3", - "doc/man/man3/SSL_CTX_load_verify_locations.3", - "doc/man/man3/SSL_CTX_new.3", - "doc/man/man3/SSL_CTX_sess_number.3", - "doc/man/man3/SSL_CTX_sess_set_cache_size.3", - "doc/man/man3/SSL_CTX_sess_set_get_cb.3", - "doc/man/man3/SSL_CTX_sessions.3", - "doc/man/man3/SSL_CTX_set0_CA_list.3", - "doc/man/man3/SSL_CTX_set1_cert_comp_preference.3", - "doc/man/man3/SSL_CTX_set1_curves.3", - "doc/man/man3/SSL_CTX_set1_sigalgs.3", - "doc/man/man3/SSL_CTX_set1_verify_cert_store.3", - "doc/man/man3/SSL_CTX_set_alpn_select_cb.3", - "doc/man/man3/SSL_CTX_set_cert_cb.3", - "doc/man/man3/SSL_CTX_set_cert_store.3", - "doc/man/man3/SSL_CTX_set_cert_verify_callback.3", - "doc/man/man3/SSL_CTX_set_cipher_list.3", - "doc/man/man3/SSL_CTX_set_client_cert_cb.3", - "doc/man/man3/SSL_CTX_set_client_hello_cb.3", - "doc/man/man3/SSL_CTX_set_ct_validation_callback.3", - "doc/man/man3/SSL_CTX_set_ctlog_list_file.3", - "doc/man/man3/SSL_CTX_set_default_passwd_cb.3", - "doc/man/man3/SSL_CTX_set_domain_flags.3", - "doc/man/man3/SSL_CTX_set_generate_session_id.3", - "doc/man/man3/SSL_CTX_set_info_callback.3", - "doc/man/man3/SSL_CTX_set_keylog_callback.3", - "doc/man/man3/SSL_CTX_set_max_cert_list.3", - "doc/man/man3/SSL_CTX_set_min_proto_version.3", - "doc/man/man3/SSL_CTX_set_mode.3", - "doc/man/man3/SSL_CTX_set_msg_callback.3", - "doc/man/man3/SSL_CTX_set_new_pending_conn_cb.3", - "doc/man/man3/SSL_CTX_set_num_tickets.3", - "doc/man/man3/SSL_CTX_set_options.3", - "doc/man/man3/SSL_CTX_set_psk_client_callback.3", - "doc/man/man3/SSL_CTX_set_quiet_shutdown.3", - "doc/man/man3/SSL_CTX_set_read_ahead.3", - "doc/man/man3/SSL_CTX_set_record_padding_callback.3", - "doc/man/man3/SSL_CTX_set_security_level.3", - "doc/man/man3/SSL_CTX_set_session_cache_mode.3", - "doc/man/man3/SSL_CTX_set_session_id_context.3", - "doc/man/man3/SSL_CTX_set_session_ticket_cb.3", - "doc/man/man3/SSL_CTX_set_split_send_fragment.3", - "doc/man/man3/SSL_CTX_set_srp_password.3", - "doc/man/man3/SSL_CTX_set_ssl_version.3", - "doc/man/man3/SSL_CTX_set_stateless_cookie_generate_cb.3", - "doc/man/man3/SSL_CTX_set_timeout.3", - "doc/man/man3/SSL_CTX_set_tlsext_servername_callback.3", - "doc/man/man3/SSL_CTX_set_tlsext_status_cb.3", - "doc/man/man3/SSL_CTX_set_tlsext_ticket_key_cb.3", - "doc/man/man3/SSL_CTX_set_tlsext_use_srtp.3", - "doc/man/man3/SSL_CTX_set_tmp_dh_callback.3", - "doc/man/man3/SSL_CTX_set_tmp_ecdh.3", - "doc/man/man3/SSL_CTX_set_verify.3", - "doc/man/man3/SSL_CTX_use_certificate.3", - "doc/man/man3/SSL_CTX_use_psk_identity_hint.3", - "doc/man/man3/SSL_CTX_use_serverinfo.3", - "doc/man/man3/SSL_SESSION_free.3", - "doc/man/man3/SSL_SESSION_get0_cipher.3", - "doc/man/man3/SSL_SESSION_get0_hostname.3", - "doc/man/man3/SSL_SESSION_get0_id_context.3", - "doc/man/man3/SSL_SESSION_get0_peer.3", - "doc/man/man3/SSL_SESSION_get_compress_id.3", - "doc/man/man3/SSL_SESSION_get_protocol_version.3", - "doc/man/man3/SSL_SESSION_get_time.3", - "doc/man/man3/SSL_SESSION_has_ticket.3", - "doc/man/man3/SSL_SESSION_is_resumable.3", - "doc/man/man3/SSL_SESSION_print.3", - "doc/man/man3/SSL_SESSION_set1_id.3", - "doc/man/man3/SSL_accept.3", - "doc/man/man3/SSL_accept_stream.3", - "doc/man/man3/SSL_alert_type_string.3", - "doc/man/man3/SSL_alloc_buffers.3", - "doc/man/man3/SSL_check_chain.3", - "doc/man/man3/SSL_clear.3", - "doc/man/man3/SSL_connect.3", - "doc/man/man3/SSL_do_handshake.3", - "doc/man/man3/SSL_export_keying_material.3", - "doc/man/man3/SSL_extension_supported.3", - "doc/man/man3/SSL_free.3", - "doc/man/man3/SSL_get0_connection.3", - "doc/man/man3/SSL_get0_group_name.3", - "doc/man/man3/SSL_get0_peer_rpk.3", - "doc/man/man3/SSL_get0_peer_scts.3", - "doc/man/man3/SSL_get1_builtin_sigalgs.3", - "doc/man/man3/SSL_get_SSL_CTX.3", - "doc/man/man3/SSL_get_all_async_fds.3", - "doc/man/man3/SSL_get_certificate.3", - "doc/man/man3/SSL_get_ciphers.3", - "doc/man/man3/SSL_get_client_random.3", - "doc/man/man3/SSL_get_conn_close_info.3", - "doc/man/man3/SSL_get_current_cipher.3", - "doc/man/man3/SSL_get_default_timeout.3", - "doc/man/man3/SSL_get_error.3", - "doc/man/man3/SSL_get_event_timeout.3", - "doc/man/man3/SSL_get_extms_support.3", - "doc/man/man3/SSL_get_fd.3", - "doc/man/man3/SSL_get_handshake_rtt.3", - "doc/man/man3/SSL_get_peer_cert_chain.3", - "doc/man/man3/SSL_get_peer_certificate.3", - "doc/man/man3/SSL_get_peer_signature_nid.3", - "doc/man/man3/SSL_get_peer_tmp_key.3", - "doc/man/man3/SSL_get_psk_identity.3", - "doc/man/man3/SSL_get_rbio.3", - "doc/man/man3/SSL_get_rpoll_descriptor.3", - "doc/man/man3/SSL_get_session.3", - "doc/man/man3/SSL_get_shared_sigalgs.3", - "doc/man/man3/SSL_get_stream_id.3", - "doc/man/man3/SSL_get_stream_read_state.3", - "doc/man/man3/SSL_get_value_uint.3", - "doc/man/man3/SSL_get_verify_result.3", - "doc/man/man3/SSL_get_version.3", - "doc/man/man3/SSL_group_to_name.3", - "doc/man/man3/SSL_handle_events.3", - "doc/man/man3/SSL_in_init.3", - "doc/man/man3/SSL_inject_net_dgram.3", - "doc/man/man3/SSL_key_update.3", - "doc/man/man3/SSL_library_init.3", - "doc/man/man3/SSL_load_client_CA_file.3", - "doc/man/man3/SSL_new.3", - "doc/man/man3/SSL_new_domain.3", - "doc/man/man3/SSL_new_listener.3", - "doc/man/man3/SSL_new_stream.3", - "doc/man/man3/SSL_pending.3", - "doc/man/man3/SSL_poll.3", - "doc/man/man3/SSL_read.3", - "doc/man/man3/SSL_read_early_data.3", - "doc/man/man3/SSL_rstate_string.3", - "doc/man/man3/SSL_session_reused.3", - "doc/man/man3/SSL_set1_host.3", - "doc/man/man3/SSL_set1_initial_peer_addr.3", - "doc/man/man3/SSL_set1_server_cert_type.3", - "doc/man/man3/SSL_set_async_callback.3", - "doc/man/man3/SSL_set_bio.3", - "doc/man/man3/SSL_set_blocking_mode.3", - "doc/man/man3/SSL_set_connect_state.3", - "doc/man/man3/SSL_set_default_stream_mode.3", - "doc/man/man3/SSL_set_fd.3", - "doc/man/man3/SSL_set_incoming_stream_policy.3", - "doc/man/man3/SSL_set_quic_tls_cbs.3", - "doc/man/man3/SSL_set_retry_verify.3", - "doc/man/man3/SSL_set_session.3", - "doc/man/man3/SSL_set_session_secret_cb.3", - "doc/man/man3/SSL_set_shutdown.3", - "doc/man/man3/SSL_set_verify_result.3", - "doc/man/man3/SSL_shutdown.3", - "doc/man/man3/SSL_state_string.3", - "doc/man/man3/SSL_stream_conclude.3", - "doc/man/man3/SSL_stream_reset.3", - "doc/man/man3/SSL_want.3", - "doc/man/man3/SSL_write.3", - "doc/man/man3/TS_RESP_CTX_new.3", - "doc/man/man3/TS_VERIFY_CTX.3", - "doc/man/man3/UI_STRING.3", - "doc/man/man3/UI_UTIL_read_pw.3", - "doc/man/man3/UI_create_method.3", - "doc/man/man3/UI_new.3", - "doc/man/man3/X509V3_get_d2i.3", - "doc/man/man3/X509V3_set_ctx.3", - "doc/man/man3/X509_ACERT_add1_attr.3", - "doc/man/man3/X509_ACERT_add_attr_nconf.3", - "doc/man/man3/X509_ACERT_get0_holder_baseCertId.3", - "doc/man/man3/X509_ACERT_get_attr.3", - "doc/man/man3/X509_ACERT_print_ex.3", - "doc/man/man3/X509_ALGOR_dup.3", - "doc/man/man3/X509_ATTRIBUTE.3", - "doc/man/man3/X509_CRL_get0_by_serial.3", - "doc/man/man3/X509_EXTENSION_set_object.3", - "doc/man/man3/X509_LOOKUP.3", - "doc/man/man3/X509_LOOKUP_hash_dir.3", - "doc/man/man3/X509_LOOKUP_meth_new.3", - "doc/man/man3/X509_NAME_ENTRY_get_object.3", - "doc/man/man3/X509_NAME_add_entry_by_txt.3", - "doc/man/man3/X509_NAME_get0_der.3", - "doc/man/man3/X509_NAME_get_index_by_NID.3", - "doc/man/man3/X509_NAME_print_ex.3", - "doc/man/man3/X509_PUBKEY_new.3", - "doc/man/man3/X509_REQ_get_attr.3", - "doc/man/man3/X509_REQ_get_extensions.3", - "doc/man/man3/X509_SIG_get0.3", - "doc/man/man3/X509_STORE_CTX_get_by_subject.3", - "doc/man/man3/X509_STORE_CTX_get_error.3", - "doc/man/man3/X509_STORE_CTX_new.3", - "doc/man/man3/X509_STORE_CTX_set_verify_cb.3", - "doc/man/man3/X509_STORE_add_cert.3", - "doc/man/man3/X509_STORE_get0_param.3", - "doc/man/man3/X509_STORE_new.3", - "doc/man/man3/X509_STORE_set_verify_cb_func.3", - "doc/man/man3/X509_VERIFY_PARAM_set_flags.3", - "doc/man/man3/X509_add_cert.3", - "doc/man/man3/X509_check_ca.3", - "doc/man/man3/X509_check_host.3", - "doc/man/man3/X509_check_issued.3", - "doc/man/man3/X509_check_private_key.3", - "doc/man/man3/X509_check_purpose.3", - "doc/man/man3/X509_cmp.3", - "doc/man/man3/X509_cmp_time.3", - "doc/man/man3/X509_digest.3", - "doc/man/man3/X509_dup.3", - "doc/man/man3/X509_get0_distinguishing_id.3", - "doc/man/man3/X509_get0_notBefore.3", - "doc/man/man3/X509_get0_signature.3", - "doc/man/man3/X509_get0_uids.3", - "doc/man/man3/X509_get_default_cert_file.3", - "doc/man/man3/X509_get_extension_flags.3", - "doc/man/man3/X509_get_pubkey.3", - "doc/man/man3/X509_get_serialNumber.3", - "doc/man/man3/X509_get_subject_name.3", - "doc/man/man3/X509_get_version.3", - "doc/man/man3/X509_load_http.3", - "doc/man/man3/X509_new.3", - "doc/man/man3/X509_sign.3", - "doc/man/man3/X509_verify.3", - "doc/man/man3/X509_verify_cert.3", - "doc/man/man3/X509v3_get_ext_by_NID.3", - "doc/man/man3/b2i_PVK_bio_ex.3", - "doc/man/man3/d2i_PKCS8PrivateKey_bio.3", - "doc/man/man3/d2i_PrivateKey.3", - "doc/man/man3/d2i_RSAPrivateKey.3", - "doc/man/man3/d2i_SSL_SESSION.3", - "doc/man/man3/d2i_X509.3", - "doc/man/man3/i2d_CMS_bio_stream.3", - "doc/man/man3/i2d_PKCS7_bio_stream.3", - "doc/man/man3/i2d_re_X509_tbs.3", - "doc/man/man3/o2i_SCT_LIST.3", - "doc/man/man3/s2i_ASN1_IA5STRING.3" - ], - "man5" => [ - "doc/man/man5/config.5", - "doc/man/man5/fips_config.5", - "doc/man/man5/x509v3_config.5" - ], - "man7" => [ - "doc/man/man7/EVP_ASYM_CIPHER-RSA.7", - "doc/man/man7/EVP_ASYM_CIPHER-SM2.7", - "doc/man/man7/EVP_CIPHER-AES.7", - "doc/man/man7/EVP_CIPHER-ARIA.7", - "doc/man/man7/EVP_CIPHER-BLOWFISH.7", - "doc/man/man7/EVP_CIPHER-CAMELLIA.7", - "doc/man/man7/EVP_CIPHER-CAST.7", - "doc/man/man7/EVP_CIPHER-CHACHA.7", - "doc/man/man7/EVP_CIPHER-DES.7", - "doc/man/man7/EVP_CIPHER-IDEA.7", - "doc/man/man7/EVP_CIPHER-NULL.7", - "doc/man/man7/EVP_CIPHER-RC2.7", - "doc/man/man7/EVP_CIPHER-RC4.7", - "doc/man/man7/EVP_CIPHER-RC5.7", - "doc/man/man7/EVP_CIPHER-SEED.7", - "doc/man/man7/EVP_CIPHER-SM4.7", - "doc/man/man7/EVP_KDF-ARGON2.7", - "doc/man/man7/EVP_KDF-HKDF.7", - "doc/man/man7/EVP_KDF-HMAC-DRBG.7", - "doc/man/man7/EVP_KDF-KB.7", - "doc/man/man7/EVP_KDF-KRB5KDF.7", - "doc/man/man7/EVP_KDF-PBKDF1.7", - "doc/man/man7/EVP_KDF-PBKDF2.7", - "doc/man/man7/EVP_KDF-PKCS12KDF.7", - "doc/man/man7/EVP_KDF-PVKKDF.7", - "doc/man/man7/EVP_KDF-SCRYPT.7", - "doc/man/man7/EVP_KDF-SS.7", - "doc/man/man7/EVP_KDF-SSHKDF.7", - "doc/man/man7/EVP_KDF-TLS13_KDF.7", - "doc/man/man7/EVP_KDF-TLS1_PRF.7", - "doc/man/man7/EVP_KDF-X942-ASN1.7", - "doc/man/man7/EVP_KDF-X942-CONCAT.7", - "doc/man/man7/EVP_KDF-X963.7", - "doc/man/man7/EVP_KEM-EC.7", - "doc/man/man7/EVP_KEM-ML-KEM.7", - "doc/man/man7/EVP_KEM-RSA.7", - "doc/man/man7/EVP_KEM-X25519.7", - "doc/man/man7/EVP_KEYEXCH-DH.7", - "doc/man/man7/EVP_KEYEXCH-ECDH.7", - "doc/man/man7/EVP_KEYEXCH-X25519.7", - "doc/man/man7/EVP_MAC-BLAKE2.7", - "doc/man/man7/EVP_MAC-CMAC.7", - "doc/man/man7/EVP_MAC-GMAC.7", - "doc/man/man7/EVP_MAC-HMAC.7", - "doc/man/man7/EVP_MAC-KMAC.7", - "doc/man/man7/EVP_MAC-Poly1305.7", - "doc/man/man7/EVP_MAC-Siphash.7", - "doc/man/man7/EVP_MD-BLAKE2.7", - "doc/man/man7/EVP_MD-KECCAK.7", - "doc/man/man7/EVP_MD-MD2.7", - "doc/man/man7/EVP_MD-MD4.7", - "doc/man/man7/EVP_MD-MD5-SHA1.7", - "doc/man/man7/EVP_MD-MD5.7", - "doc/man/man7/EVP_MD-MDC2.7", - "doc/man/man7/EVP_MD-NULL.7", - "doc/man/man7/EVP_MD-RIPEMD160.7", - "doc/man/man7/EVP_MD-SHA1.7", - "doc/man/man7/EVP_MD-SHA2.7", - "doc/man/man7/EVP_MD-SHA3.7", - "doc/man/man7/EVP_MD-SHAKE.7", - "doc/man/man7/EVP_MD-SM3.7", - "doc/man/man7/EVP_MD-WHIRLPOOL.7", - "doc/man/man7/EVP_MD-common.7", - "doc/man/man7/EVP_PKEY-DH.7", - "doc/man/man7/EVP_PKEY-DSA.7", - "doc/man/man7/EVP_PKEY-EC.7", - "doc/man/man7/EVP_PKEY-FFC.7", - "doc/man/man7/EVP_PKEY-HMAC.7", - "doc/man/man7/EVP_PKEY-ML-DSA.7", - "doc/man/man7/EVP_PKEY-ML-KEM.7", - "doc/man/man7/EVP_PKEY-RSA.7", - "doc/man/man7/EVP_PKEY-SLH-DSA.7", - "doc/man/man7/EVP_PKEY-SM2.7", - "doc/man/man7/EVP_PKEY-X25519.7", - "doc/man/man7/EVP_RAND-CRNG-TEST.7", - "doc/man/man7/EVP_RAND-CTR-DRBG.7", - "doc/man/man7/EVP_RAND-HASH-DRBG.7", - "doc/man/man7/EVP_RAND-HMAC-DRBG.7", - "doc/man/man7/EVP_RAND-JITTER.7", - "doc/man/man7/EVP_RAND-SEED-SRC.7", - "doc/man/man7/EVP_RAND-TEST-RAND.7", - "doc/man/man7/EVP_RAND.7", - "doc/man/man7/EVP_SIGNATURE-DSA.7", - "doc/man/man7/EVP_SIGNATURE-ECDSA.7", - "doc/man/man7/EVP_SIGNATURE-ED25519.7", - "doc/man/man7/EVP_SIGNATURE-HMAC.7", - "doc/man/man7/EVP_SIGNATURE-ML-DSA.7", - "doc/man/man7/EVP_SIGNATURE-RSA.7", - "doc/man/man7/EVP_SIGNATURE-SLH-DSA.7", - "doc/man/man7/OSSL_PROVIDER-FIPS.7", - "doc/man/man7/OSSL_PROVIDER-base.7", - "doc/man/man7/OSSL_PROVIDER-default.7", - "doc/man/man7/OSSL_PROVIDER-legacy.7", - "doc/man/man7/OSSL_PROVIDER-null.7", - "doc/man/man7/OSSL_STORE-winstore.7", - "doc/man/man7/RAND.7", - "doc/man/man7/RSA-PSS.7", - "doc/man/man7/X25519.7", - "doc/man/man7/bio.7", - "doc/man/man7/ct.7", - "doc/man/man7/des_modes.7", - "doc/man/man7/evp.7", - "doc/man/man7/fips_module.7", - "doc/man/man7/life_cycle-cipher.7", - "doc/man/man7/life_cycle-digest.7", - "doc/man/man7/life_cycle-kdf.7", - "doc/man/man7/life_cycle-mac.7", - "doc/man/man7/life_cycle-pkey.7", - "doc/man/man7/life_cycle-rand.7", - "doc/man/man7/openssl-core.h.7", - "doc/man/man7/openssl-core_dispatch.h.7", - "doc/man/man7/openssl-core_names.h.7", - "doc/man/man7/openssl-env.7", - "doc/man/man7/openssl-glossary.7", - "doc/man/man7/openssl-qlog.7", - "doc/man/man7/openssl-quic-concurrency.7", - "doc/man/man7/openssl-quic.7", - "doc/man/man7/openssl-threads.7", - "doc/man/man7/openssl_user_macros.7", - "doc/man/man7/ossl-guide-introduction.7", - "doc/man/man7/ossl-guide-libcrypto-introduction.7", - "doc/man/man7/ossl-guide-libraries-introduction.7", - "doc/man/man7/ossl-guide-libssl-introduction.7", - "doc/man/man7/ossl-guide-migration.7", - "doc/man/man7/ossl-guide-quic-client-block.7", - "doc/man/man7/ossl-guide-quic-client-non-block.7", - "doc/man/man7/ossl-guide-quic-introduction.7", - "doc/man/man7/ossl-guide-quic-multi-stream.7", - "doc/man/man7/ossl-guide-quic-server-block.7", - "doc/man/man7/ossl-guide-quic-server-non-block.7", - "doc/man/man7/ossl-guide-tls-client-block.7", - "doc/man/man7/ossl-guide-tls-client-non-block.7", - "doc/man/man7/ossl-guide-tls-introduction.7", - "doc/man/man7/ossl-guide-tls-server-block.7", - "doc/man/man7/ossl_store-file.7", - "doc/man/man7/ossl_store.7", - "doc/man/man7/passphrase-encoding.7", - "doc/man/man7/property.7", - "doc/man/man7/provider-asym_cipher.7", - "doc/man/man7/provider-base.7", - "doc/man/man7/provider-cipher.7", - "doc/man/man7/provider-decoder.7", - "doc/man/man7/provider-digest.7", - "doc/man/man7/provider-encoder.7", - "doc/man/man7/provider-kdf.7", - "doc/man/man7/provider-kem.7", - "doc/man/man7/provider-keyexch.7", - "doc/man/man7/provider-keymgmt.7", - "doc/man/man7/provider-mac.7", - "doc/man/man7/provider-object.7", - "doc/man/man7/provider-rand.7", - "doc/man/man7/provider-signature.7", - "doc/man/man7/provider-skeymgmt.7", - "doc/man/man7/provider-storemgmt.7", - "doc/man/man7/provider.7", - "doc/man/man7/proxy-certificates.7", - "doc/man/man7/x509.7" - ] - }, - "modules" => [ - "engines/capi", - "engines/dasync", - "engines/devcrypto", - "engines/loader_attic", - "engines/ossltest", - "engines/padlock", - "providers/legacy", - "test/p_minimal", - "test/p_test" - ], - "programs" => [ - "apps/openssl", - "fuzz/acert-test", - "fuzz/asn1-test", - "fuzz/asn1parse-test", - "fuzz/bignum-test", - "fuzz/bndiv-test", - "fuzz/client-test", - "fuzz/cmp-test", - "fuzz/cms-test", - "fuzz/conf-test", - "fuzz/crl-test", - "fuzz/ct-test", - "fuzz/decoder-test", - "fuzz/dtlsclient-test", - "fuzz/dtlsserver-test", - "fuzz/hashtable-test", - "fuzz/ml-dsa-test", - "fuzz/ml-kem-test", - "fuzz/pem-test", - "fuzz/provider-test", - "fuzz/punycode-test", - "fuzz/quic-client-test", - "fuzz/quic-lcidm-test", - "fuzz/quic-rcidm-test", - "fuzz/quic-server-test", - "fuzz/quic-srtm-test", - "fuzz/server-test", - "fuzz/slh-dsa-test", - "fuzz/smime-test", - "fuzz/v3name-test", - "fuzz/x509-test", - "test/aborttest", - "test/aesgcmtest", - "test/afalgtest", - "test/algorithmid_test", - "test/asn1_decode_test", - "test/asn1_dsa_internal_test", - "test/asn1_encode_test", - "test/asn1_internal_test", - "test/asn1_stable_parse_test", - "test/asn1_string_table_test", - "test/asn1_time_test", - "test/asynciotest", - "test/asynctest", - "test/bad_dtls_test", - "test/bftest", - "test/bio_addr_test", - "test/bio_base64_test", - "test/bio_callback_test", - "test/bio_core_test", - "test/bio_dgram_test", - "test/bio_enc_test", - "test/bio_memleak_test", - "test/bio_meth_test", - "test/bio_prefix_text", - "test/bio_pw_callback_test", - "test/bio_readbuffer_test", - "test/bio_tfo_test", - "test/bioprinttest", - "test/bn_internal_test", - "test/bntest", - "test/build_wincrypt_test", - "test/buildtest_c_aes", - "test/buildtest_c_asn1", - "test/buildtest_c_asn1t", - "test/buildtest_c_async", - "test/buildtest_c_bio", - "test/buildtest_c_blowfish", - "test/buildtest_c_bn", - "test/buildtest_c_buffer", - "test/buildtest_c_byteorder", - "test/buildtest_c_camellia", - "test/buildtest_c_cast", - "test/buildtest_c_cmac", - "test/buildtest_c_cmp", - "test/buildtest_c_cmp_util", - "test/buildtest_c_cms", - "test/buildtest_c_comp", - "test/buildtest_c_conf", - "test/buildtest_c_conf_api", - "test/buildtest_c_configuration", - "test/buildtest_c_conftypes", - "test/buildtest_c_core", - "test/buildtest_c_core_dispatch", - "test/buildtest_c_core_names", - "test/buildtest_c_core_object", - "test/buildtest_c_crmf", - "test/buildtest_c_crypto", - "test/buildtest_c_cryptoerr_legacy", - "test/buildtest_c_ct", - "test/buildtest_c_decoder", - "test/buildtest_c_des", - "test/buildtest_c_dh", - "test/buildtest_c_dsa", - "test/buildtest_c_dtls1", - "test/buildtest_c_e_os2", - "test/buildtest_c_e_ostime", - "test/buildtest_c_ebcdic", - "test/buildtest_c_ec", - "test/buildtest_c_ecdh", - "test/buildtest_c_ecdsa", - "test/buildtest_c_encoder", - "test/buildtest_c_engine", - "test/buildtest_c_ess", - "test/buildtest_c_evp", - "test/buildtest_c_fips_names", - "test/buildtest_c_fipskey", - "test/buildtest_c_hmac", - "test/buildtest_c_hpke", - "test/buildtest_c_http", - "test/buildtest_c_indicator", - "test/buildtest_c_kdf", - "test/buildtest_c_lhash", - "test/buildtest_c_macros", - "test/buildtest_c_md4", - "test/buildtest_c_md5", - "test/buildtest_c_ml_kem", - "test/buildtest_c_modes", - "test/buildtest_c_obj_mac", - "test/buildtest_c_objects", - "test/buildtest_c_ocsp", - "test/buildtest_c_opensslv", - "test/buildtest_c_ossl_typ", - "test/buildtest_c_param_build", - "test/buildtest_c_params", - "test/buildtest_c_pem", - "test/buildtest_c_pem2", - "test/buildtest_c_pkcs12", - "test/buildtest_c_pkcs7", - "test/buildtest_c_prov_ssl", - "test/buildtest_c_provider", - "test/buildtest_c_quic", - "test/buildtest_c_rand", - "test/buildtest_c_rc2", - "test/buildtest_c_rc4", - "test/buildtest_c_ripemd", - "test/buildtest_c_rsa", - "test/buildtest_c_safestack", - "test/buildtest_c_seed", - "test/buildtest_c_self_test", - "test/buildtest_c_sha", - "test/buildtest_c_srp", - "test/buildtest_c_srtp", - "test/buildtest_c_ssl", - "test/buildtest_c_ssl2", - "test/buildtest_c_sslerr_legacy", - "test/buildtest_c_stack", - "test/buildtest_c_store", - "test/buildtest_c_symhacks", - "test/buildtest_c_thread", - "test/buildtest_c_tls1", - "test/buildtest_c_ts", - "test/buildtest_c_txt_db", - "test/buildtest_c_types", - "test/buildtest_c_ui", - "test/buildtest_c_whrlpool", - "test/buildtest_c_x509", - "test/buildtest_c_x509_acert", - "test/buildtest_c_x509_vfy", - "test/buildtest_c_x509v3", - "test/byteorder_test", - "test/ca_internals_test", - "test/casttest", - "test/chacha_internal_test", - "test/cipher_overhead_test", - "test/cipherbytes_test", - "test/cipherlist_test", - "test/ciphername_test", - "test/clienthellotest", - "test/cmactest", - "test/cmp_asn_test", - "test/cmp_client_test", - "test/cmp_ctx_test", - "test/cmp_hdr_test", - "test/cmp_msg_test", - "test/cmp_protect_test", - "test/cmp_server_test", - "test/cmp_status_test", - "test/cmp_vfy_test", - "test/cmsapitest", - "test/conf_include_test", - "test/confdump", - "test/constant_time_test", - "test/context_internal_test", - "test/crltest", - "test/ct_test", - "test/ctype_internal_test", - "test/curve448_internal_test", - "test/d2i_test", - "test/danetest", - "test/decoder_propq_test", - "test/defltfips_test", - "test/destest", - "test/dhtest", - "test/drbgtest", - "test/dsa_no_digest_size_test", - "test/dsatest", - "test/dtls_mtu_test", - "test/dtlstest", - "test/dtlsv1listentest", - "test/ec_internal_test", - "test/ecdsatest", - "test/ecstresstest", - "test/ectest", - "test/endecode_test", - "test/endecoder_legacy_test", - "test/enginetest", - "test/errtest", - "test/evp_byname_test", - "test/evp_extra_test", - "test/evp_extra_test2", - "test/evp_fetch_prov_test", - "test/evp_kdf_test", - "test/evp_libctx_test", - "test/evp_pkey_ctx_new_from_name", - "test/evp_pkey_dhkem_test", - "test/evp_pkey_dparams_test", - "test/evp_pkey_provided_test", - "test/evp_skey_test", - "test/evp_test", - "test/evp_xof_test", - "test/exdatatest", - "test/exptest", - "test/ext_internal_test", - "test/fatalerrtest", - "test/ffc_internal_test", - "test/fips_version_test", - "test/gmdifftest", - "test/hexstr_test", - "test/hmactest", - "test/hpke_test", - "test/http_test", - "test/ideatest", - "test/igetest", - "test/json_test", - "test/keymgmt_internal_test", - "test/lhash_test", - "test/list_test", - "test/localetest", - "test/mdc2test", - "test/membio_test", - "test/memleaktest", - "test/ml_dsa_test", - "test/ml_kem_evp_extra_test", - "test/ml_kem_internal_test", - "test/modes_internal_test", - "test/moduleloadtest", - "test/namemap_internal_test", - "test/nodefltctxtest", - "test/ocspapitest", - "test/ossl_store_test", - "test/packettest", - "test/pairwise_fail_test", - "test/param_build_test", - "test/params_api_test", - "test/params_conversion_test", - "test/params_test", - "test/pbelutest", - "test/pbetest", - "test/pem_read_depr_test", - "test/pemtest", - "test/pkcs12_api_test", - "test/pkcs12_format_test", - "test/pkcs7_test", - "test/pkey_meth_kdf_test", - "test/pkey_meth_test", - "test/poly1305_internal_test", - "test/priority_queue_test", - "test/property_test", - "test/prov_config_test", - "test/provfetchtest", - "test/provider_default_search_path_test", - "test/provider_fallback_test", - "test/provider_internal_test", - "test/provider_pkey_test", - "test/provider_status_test", - "test/provider_test", - "test/punycode_test", - "test/quic_ackm_test", - "test/quic_cc_test", - "test/quic_cfq_test", - "test/quic_client_test", - "test/quic_fc_test", - "test/quic_fifd_test", - "test/quic_lcidm_test", - "test/quic_multistream_test", - "test/quic_newcid_test", - "test/quic_qlog_test", - "test/quic_radix_test", - "test/quic_rcidm_test", - "test/quic_record_test", - "test/quic_srt_gen_test", - "test/quic_srtm_test", - "test/quic_stream_test", - "test/quic_tserver_test", - "test/quic_txp_test", - "test/quic_txpim_test", - "test/quic_wire_test", - "test/quicapitest", - "test/quicfaultstest", - "test/rand_status_test", - "test/rand_test", - "test/rc2test", - "test/rc4test", - "test/rc5test", - "test/rdcpu_sanitytest", - "test/recordlentest", - "test/rpktest", - "test/rsa_complex", - "test/rsa_mp_test", - "test/rsa_sp800_56b_test", - "test/rsa_test", - "test/rsa_x931_test", - "test/safe_math_test", - "test/sanitytest", - "test/secmemtest", - "test/servername_test", - "test/sha_test", - "test/shlibloadtest", - "test/siphash_internal_test", - "test/slh_dsa_test", - "test/sparse_array_test", - "test/srptest", - "test/ssl_cert_table_internal_test", - "test/ssl_ctx_test", - "test/ssl_handshake_rtt_test", - "test/ssl_old_test", - "test/ssl_test", - "test/ssl_test_ctx_test", - "test/sslapitest", - "test/sslbuffertest", - "test/sslcorrupttest", - "test/stack_test", - "test/strtoultest", - "test/sysdefaulttest", - "test/test_test", - "test/threadpool_test", - "test/threadstest", - "test/threadstest_fips", - "test/time_offset_test", - "test/time_test", - "test/timing_load_creds", - "test/tls13ccstest", - "test/tls13encryptiontest", - "test/tls13groupselection_test", - "test/tls13secretstest", - "test/trace_api_test", - "test/uitest", - "test/upcallstest", - "test/user_property_test", - "test/v3ext", - "test/v3nametest", - "test/verify_extra_test", - "test/versions", - "test/wpackettest", - "test/x509_acert_test", - "test/x509_check_cert_pkey_test", - "test/x509_dup_cert_test", - "test/x509_internal_test", - "test/x509_load_cert_file_test", - "test/x509_req_test", - "test/x509_test", - "test/x509_time_test", - "test/x509aux" - ], - "scripts" => [ - "apps/CA.pl", - "apps/tsget.pl", - "tools/c_rehash", - "util/shlib_wrap.sh", - "util/wrap.pl" - ], - "shared_sources" => { - "libcrypto" => [ - "crypto/aes/libcrypto-shlib-aes-x86_64.o", - "crypto/aes/libcrypto-shlib-aes_cfb.o", - "crypto/aes/libcrypto-shlib-aes_ecb.o", - "crypto/aes/libcrypto-shlib-aes_ige.o", - "crypto/aes/libcrypto-shlib-aes_misc.o", - "crypto/aes/libcrypto-shlib-aes_ofb.o", - "crypto/aes/libcrypto-shlib-aes_wrap.o", - "crypto/aes/libcrypto-shlib-aesni-mb-x86_64.o", - "crypto/aes/libcrypto-shlib-aesni-sha1-x86_64.o", - "crypto/aes/libcrypto-shlib-aesni-sha256-x86_64.o", - "crypto/aes/libcrypto-shlib-aesni-x86_64.o", - "crypto/aes/libcrypto-shlib-aesni-xts-avx512.o", - "crypto/aes/libcrypto-shlib-bsaes-x86_64.o", - "crypto/aes/libcrypto-shlib-vpaes-x86_64.o", - "crypto/asn1/libcrypto-shlib-a_bitstr.o", - "crypto/asn1/libcrypto-shlib-a_d2i_fp.o", - "crypto/asn1/libcrypto-shlib-a_digest.o", - "crypto/asn1/libcrypto-shlib-a_dup.o", - "crypto/asn1/libcrypto-shlib-a_gentm.o", - "crypto/asn1/libcrypto-shlib-a_i2d_fp.o", - "crypto/asn1/libcrypto-shlib-a_int.o", - "crypto/asn1/libcrypto-shlib-a_mbstr.o", - "crypto/asn1/libcrypto-shlib-a_object.o", - "crypto/asn1/libcrypto-shlib-a_octet.o", - "crypto/asn1/libcrypto-shlib-a_print.o", - "crypto/asn1/libcrypto-shlib-a_sign.o", - "crypto/asn1/libcrypto-shlib-a_strex.o", - "crypto/asn1/libcrypto-shlib-a_strnid.o", - "crypto/asn1/libcrypto-shlib-a_time.o", - "crypto/asn1/libcrypto-shlib-a_type.o", - "crypto/asn1/libcrypto-shlib-a_utctm.o", - "crypto/asn1/libcrypto-shlib-a_utf8.o", - "crypto/asn1/libcrypto-shlib-a_verify.o", - "crypto/asn1/libcrypto-shlib-ameth_lib.o", - "crypto/asn1/libcrypto-shlib-asn1_err.o", - "crypto/asn1/libcrypto-shlib-asn1_gen.o", - "crypto/asn1/libcrypto-shlib-asn1_item_list.o", - "crypto/asn1/libcrypto-shlib-asn1_lib.o", - "crypto/asn1/libcrypto-shlib-asn1_parse.o", - "crypto/asn1/libcrypto-shlib-asn_mime.o", - "crypto/asn1/libcrypto-shlib-asn_moid.o", - "crypto/asn1/libcrypto-shlib-asn_mstbl.o", - "crypto/asn1/libcrypto-shlib-asn_pack.o", - "crypto/asn1/libcrypto-shlib-bio_asn1.o", - "crypto/asn1/libcrypto-shlib-bio_ndef.o", - "crypto/asn1/libcrypto-shlib-d2i_param.o", - "crypto/asn1/libcrypto-shlib-d2i_pr.o", - "crypto/asn1/libcrypto-shlib-d2i_pu.o", - "crypto/asn1/libcrypto-shlib-evp_asn1.o", - "crypto/asn1/libcrypto-shlib-f_int.o", - "crypto/asn1/libcrypto-shlib-f_string.o", - "crypto/asn1/libcrypto-shlib-i2d_evp.o", - "crypto/asn1/libcrypto-shlib-n_pkey.o", - "crypto/asn1/libcrypto-shlib-nsseq.o", - "crypto/asn1/libcrypto-shlib-p5_pbe.o", - "crypto/asn1/libcrypto-shlib-p5_pbev2.o", - "crypto/asn1/libcrypto-shlib-p5_scrypt.o", - "crypto/asn1/libcrypto-shlib-p8_pkey.o", - "crypto/asn1/libcrypto-shlib-t_bitst.o", - "crypto/asn1/libcrypto-shlib-t_pkey.o", - "crypto/asn1/libcrypto-shlib-t_spki.o", - "crypto/asn1/libcrypto-shlib-tasn_dec.o", - "crypto/asn1/libcrypto-shlib-tasn_enc.o", - "crypto/asn1/libcrypto-shlib-tasn_fre.o", - "crypto/asn1/libcrypto-shlib-tasn_new.o", - "crypto/asn1/libcrypto-shlib-tasn_prn.o", - "crypto/asn1/libcrypto-shlib-tasn_scn.o", - "crypto/asn1/libcrypto-shlib-tasn_typ.o", - "crypto/asn1/libcrypto-shlib-tasn_utl.o", - "crypto/asn1/libcrypto-shlib-x_algor.o", - "crypto/asn1/libcrypto-shlib-x_bignum.o", - "crypto/asn1/libcrypto-shlib-x_info.o", - "crypto/asn1/libcrypto-shlib-x_int64.o", - "crypto/asn1/libcrypto-shlib-x_long.o", - "crypto/asn1/libcrypto-shlib-x_pkey.o", - "crypto/asn1/libcrypto-shlib-x_sig.o", - "crypto/asn1/libcrypto-shlib-x_spki.o", - "crypto/asn1/libcrypto-shlib-x_val.o", - "crypto/async/arch/libcrypto-shlib-async_null.o", - "crypto/async/arch/libcrypto-shlib-async_posix.o", - "crypto/async/arch/libcrypto-shlib-async_win.o", - "crypto/async/libcrypto-shlib-async.o", - "crypto/async/libcrypto-shlib-async_err.o", - "crypto/async/libcrypto-shlib-async_wait.o", - "crypto/bf/libcrypto-shlib-bf_cfb64.o", - "crypto/bf/libcrypto-shlib-bf_ecb.o", - "crypto/bf/libcrypto-shlib-bf_enc.o", - "crypto/bf/libcrypto-shlib-bf_ofb64.o", - "crypto/bf/libcrypto-shlib-bf_skey.o", - "crypto/bio/libcrypto-shlib-bf_buff.o", - "crypto/bio/libcrypto-shlib-bf_lbuf.o", - "crypto/bio/libcrypto-shlib-bf_nbio.o", - "crypto/bio/libcrypto-shlib-bf_null.o", - "crypto/bio/libcrypto-shlib-bf_prefix.o", - "crypto/bio/libcrypto-shlib-bf_readbuff.o", - "crypto/bio/libcrypto-shlib-bio_addr.o", - "crypto/bio/libcrypto-shlib-bio_cb.o", - "crypto/bio/libcrypto-shlib-bio_dump.o", - "crypto/bio/libcrypto-shlib-bio_err.o", - "crypto/bio/libcrypto-shlib-bio_lib.o", - "crypto/bio/libcrypto-shlib-bio_meth.o", - "crypto/bio/libcrypto-shlib-bio_print.o", - "crypto/bio/libcrypto-shlib-bio_sock.o", - "crypto/bio/libcrypto-shlib-bio_sock2.o", - "crypto/bio/libcrypto-shlib-bss_acpt.o", - "crypto/bio/libcrypto-shlib-bss_bio.o", - "crypto/bio/libcrypto-shlib-bss_conn.o", - "crypto/bio/libcrypto-shlib-bss_core.o", - "crypto/bio/libcrypto-shlib-bss_dgram.o", - "crypto/bio/libcrypto-shlib-bss_dgram_pair.o", - "crypto/bio/libcrypto-shlib-bss_fd.o", - "crypto/bio/libcrypto-shlib-bss_file.o", - "crypto/bio/libcrypto-shlib-bss_log.o", - "crypto/bio/libcrypto-shlib-bss_mem.o", - "crypto/bio/libcrypto-shlib-bss_null.o", - "crypto/bio/libcrypto-shlib-bss_sock.o", - "crypto/bio/libcrypto-shlib-ossl_core_bio.o", - "crypto/bn/asm/libcrypto-shlib-x86_64-gcc.o", - "crypto/bn/libcrypto-shlib-bn_add.o", - "crypto/bn/libcrypto-shlib-bn_blind.o", - "crypto/bn/libcrypto-shlib-bn_const.o", - "crypto/bn/libcrypto-shlib-bn_conv.o", - "crypto/bn/libcrypto-shlib-bn_ctx.o", - "crypto/bn/libcrypto-shlib-bn_depr.o", - "crypto/bn/libcrypto-shlib-bn_dh.o", - "crypto/bn/libcrypto-shlib-bn_div.o", - "crypto/bn/libcrypto-shlib-bn_err.o", - "crypto/bn/libcrypto-shlib-bn_exp.o", - "crypto/bn/libcrypto-shlib-bn_exp2.o", - "crypto/bn/libcrypto-shlib-bn_gcd.o", - "crypto/bn/libcrypto-shlib-bn_gf2m.o", - "crypto/bn/libcrypto-shlib-bn_intern.o", - "crypto/bn/libcrypto-shlib-bn_kron.o", - "crypto/bn/libcrypto-shlib-bn_lib.o", - "crypto/bn/libcrypto-shlib-bn_mod.o", - "crypto/bn/libcrypto-shlib-bn_mont.o", - "crypto/bn/libcrypto-shlib-bn_mpi.o", - "crypto/bn/libcrypto-shlib-bn_mul.o", - "crypto/bn/libcrypto-shlib-bn_nist.o", - "crypto/bn/libcrypto-shlib-bn_prime.o", - "crypto/bn/libcrypto-shlib-bn_print.o", - "crypto/bn/libcrypto-shlib-bn_rand.o", - "crypto/bn/libcrypto-shlib-bn_recp.o", - "crypto/bn/libcrypto-shlib-bn_rsa_fips186_4.o", - "crypto/bn/libcrypto-shlib-bn_shift.o", - "crypto/bn/libcrypto-shlib-bn_sqr.o", - "crypto/bn/libcrypto-shlib-bn_sqrt.o", - "crypto/bn/libcrypto-shlib-bn_srp.o", - "crypto/bn/libcrypto-shlib-bn_word.o", - "crypto/bn/libcrypto-shlib-bn_x931p.o", - "crypto/bn/libcrypto-shlib-rsaz-2k-avx512.o", - "crypto/bn/libcrypto-shlib-rsaz-2k-avxifma.o", - "crypto/bn/libcrypto-shlib-rsaz-3k-avx512.o", - "crypto/bn/libcrypto-shlib-rsaz-3k-avxifma.o", - "crypto/bn/libcrypto-shlib-rsaz-4k-avx512.o", - "crypto/bn/libcrypto-shlib-rsaz-4k-avxifma.o", - "crypto/bn/libcrypto-shlib-rsaz-avx2.o", - "crypto/bn/libcrypto-shlib-rsaz-x86_64.o", - "crypto/bn/libcrypto-shlib-rsaz_exp.o", - "crypto/bn/libcrypto-shlib-rsaz_exp_x2.o", - "crypto/bn/libcrypto-shlib-x86_64-gf2m.o", - "crypto/bn/libcrypto-shlib-x86_64-mont.o", - "crypto/bn/libcrypto-shlib-x86_64-mont5.o", - "crypto/buffer/libcrypto-shlib-buf_err.o", - "crypto/buffer/libcrypto-shlib-buffer.o", - "crypto/camellia/libcrypto-shlib-cmll-x86_64.o", - "crypto/camellia/libcrypto-shlib-cmll_cfb.o", - "crypto/camellia/libcrypto-shlib-cmll_ctr.o", - "crypto/camellia/libcrypto-shlib-cmll_ecb.o", - "crypto/camellia/libcrypto-shlib-cmll_misc.o", - "crypto/camellia/libcrypto-shlib-cmll_ofb.o", - "crypto/cast/libcrypto-shlib-c_cfb64.o", - "crypto/cast/libcrypto-shlib-c_ecb.o", - "crypto/cast/libcrypto-shlib-c_enc.o", - "crypto/cast/libcrypto-shlib-c_ofb64.o", - "crypto/cast/libcrypto-shlib-c_skey.o", - "crypto/chacha/libcrypto-shlib-chacha-x86_64.o", - "crypto/cmac/libcrypto-shlib-cmac.o", - "crypto/cmp/libcrypto-shlib-cmp_asn.o", - "crypto/cmp/libcrypto-shlib-cmp_client.o", - "crypto/cmp/libcrypto-shlib-cmp_ctx.o", - "crypto/cmp/libcrypto-shlib-cmp_err.o", - "crypto/cmp/libcrypto-shlib-cmp_genm.o", - "crypto/cmp/libcrypto-shlib-cmp_hdr.o", - "crypto/cmp/libcrypto-shlib-cmp_http.o", - "crypto/cmp/libcrypto-shlib-cmp_msg.o", - "crypto/cmp/libcrypto-shlib-cmp_protect.o", - "crypto/cmp/libcrypto-shlib-cmp_server.o", - "crypto/cmp/libcrypto-shlib-cmp_status.o", - "crypto/cmp/libcrypto-shlib-cmp_util.o", - "crypto/cmp/libcrypto-shlib-cmp_vfy.o", - "crypto/cms/libcrypto-shlib-cms_asn1.o", - "crypto/cms/libcrypto-shlib-cms_att.o", - "crypto/cms/libcrypto-shlib-cms_cd.o", - "crypto/cms/libcrypto-shlib-cms_dd.o", - "crypto/cms/libcrypto-shlib-cms_dh.o", - "crypto/cms/libcrypto-shlib-cms_ec.o", - "crypto/cms/libcrypto-shlib-cms_enc.o", - "crypto/cms/libcrypto-shlib-cms_env.o", - "crypto/cms/libcrypto-shlib-cms_err.o", - "crypto/cms/libcrypto-shlib-cms_ess.o", - "crypto/cms/libcrypto-shlib-cms_io.o", - "crypto/cms/libcrypto-shlib-cms_kari.o", - "crypto/cms/libcrypto-shlib-cms_lib.o", - "crypto/cms/libcrypto-shlib-cms_pwri.o", - "crypto/cms/libcrypto-shlib-cms_rsa.o", - "crypto/cms/libcrypto-shlib-cms_sd.o", - "crypto/cms/libcrypto-shlib-cms_smime.o", - "crypto/comp/libcrypto-shlib-c_brotli.o", - "crypto/comp/libcrypto-shlib-c_zlib.o", - "crypto/comp/libcrypto-shlib-c_zstd.o", - "crypto/comp/libcrypto-shlib-comp_err.o", - "crypto/comp/libcrypto-shlib-comp_lib.o", - "crypto/conf/libcrypto-shlib-conf_api.o", - "crypto/conf/libcrypto-shlib-conf_def.o", - "crypto/conf/libcrypto-shlib-conf_err.o", - "crypto/conf/libcrypto-shlib-conf_lib.o", - "crypto/conf/libcrypto-shlib-conf_mall.o", - "crypto/conf/libcrypto-shlib-conf_mod.o", - "crypto/conf/libcrypto-shlib-conf_sap.o", - "crypto/conf/libcrypto-shlib-conf_ssl.o", - "crypto/crmf/libcrypto-shlib-crmf_asn.o", - "crypto/crmf/libcrypto-shlib-crmf_err.o", - "crypto/crmf/libcrypto-shlib-crmf_lib.o", - "crypto/crmf/libcrypto-shlib-crmf_pbm.o", - "crypto/ct/libcrypto-shlib-ct_b64.o", - "crypto/ct/libcrypto-shlib-ct_err.o", - "crypto/ct/libcrypto-shlib-ct_log.o", - "crypto/ct/libcrypto-shlib-ct_oct.o", - "crypto/ct/libcrypto-shlib-ct_policy.o", - "crypto/ct/libcrypto-shlib-ct_prn.o", - "crypto/ct/libcrypto-shlib-ct_sct.o", - "crypto/ct/libcrypto-shlib-ct_sct_ctx.o", - "crypto/ct/libcrypto-shlib-ct_vfy.o", - "crypto/ct/libcrypto-shlib-ct_x509v3.o", - "crypto/des/libcrypto-shlib-cbc_cksm.o", - "crypto/des/libcrypto-shlib-cbc_enc.o", - "crypto/des/libcrypto-shlib-cfb64ede.o", - "crypto/des/libcrypto-shlib-cfb64enc.o", - "crypto/des/libcrypto-shlib-cfb_enc.o", - "crypto/des/libcrypto-shlib-des_enc.o", - "crypto/des/libcrypto-shlib-ecb3_enc.o", - "crypto/des/libcrypto-shlib-ecb_enc.o", - "crypto/des/libcrypto-shlib-fcrypt.o", - "crypto/des/libcrypto-shlib-fcrypt_b.o", - "crypto/des/libcrypto-shlib-ofb64ede.o", - "crypto/des/libcrypto-shlib-ofb64enc.o", - "crypto/des/libcrypto-shlib-ofb_enc.o", - "crypto/des/libcrypto-shlib-pcbc_enc.o", - "crypto/des/libcrypto-shlib-qud_cksm.o", - "crypto/des/libcrypto-shlib-rand_key.o", - "crypto/des/libcrypto-shlib-set_key.o", - "crypto/des/libcrypto-shlib-str2key.o", - "crypto/des/libcrypto-shlib-xcbc_enc.o", - "crypto/dh/libcrypto-shlib-dh_ameth.o", - "crypto/dh/libcrypto-shlib-dh_asn1.o", - "crypto/dh/libcrypto-shlib-dh_backend.o", - "crypto/dh/libcrypto-shlib-dh_check.o", - "crypto/dh/libcrypto-shlib-dh_depr.o", - "crypto/dh/libcrypto-shlib-dh_err.o", - "crypto/dh/libcrypto-shlib-dh_gen.o", - "crypto/dh/libcrypto-shlib-dh_group_params.o", - "crypto/dh/libcrypto-shlib-dh_kdf.o", - "crypto/dh/libcrypto-shlib-dh_key.o", - "crypto/dh/libcrypto-shlib-dh_lib.o", - "crypto/dh/libcrypto-shlib-dh_meth.o", - "crypto/dh/libcrypto-shlib-dh_pmeth.o", - "crypto/dh/libcrypto-shlib-dh_prn.o", - "crypto/dh/libcrypto-shlib-dh_rfc5114.o", - "crypto/dsa/libcrypto-shlib-dsa_ameth.o", - "crypto/dsa/libcrypto-shlib-dsa_asn1.o", - "crypto/dsa/libcrypto-shlib-dsa_backend.o", - "crypto/dsa/libcrypto-shlib-dsa_check.o", - "crypto/dsa/libcrypto-shlib-dsa_depr.o", - "crypto/dsa/libcrypto-shlib-dsa_err.o", - "crypto/dsa/libcrypto-shlib-dsa_gen.o", - "crypto/dsa/libcrypto-shlib-dsa_key.o", - "crypto/dsa/libcrypto-shlib-dsa_lib.o", - "crypto/dsa/libcrypto-shlib-dsa_meth.o", - "crypto/dsa/libcrypto-shlib-dsa_ossl.o", - "crypto/dsa/libcrypto-shlib-dsa_pmeth.o", - "crypto/dsa/libcrypto-shlib-dsa_prn.o", - "crypto/dsa/libcrypto-shlib-dsa_sign.o", - "crypto/dsa/libcrypto-shlib-dsa_vrf.o", - "crypto/dso/libcrypto-shlib-dso_dl.o", - "crypto/dso/libcrypto-shlib-dso_dlfcn.o", - "crypto/dso/libcrypto-shlib-dso_err.o", - "crypto/dso/libcrypto-shlib-dso_lib.o", - "crypto/dso/libcrypto-shlib-dso_openssl.o", - "crypto/dso/libcrypto-shlib-dso_vms.o", - "crypto/dso/libcrypto-shlib-dso_win32.o", - "crypto/ec/curve448/arch_32/libcrypto-shlib-f_impl32.o", - "crypto/ec/curve448/arch_64/libcrypto-shlib-f_impl64.o", - "crypto/ec/curve448/libcrypto-shlib-curve448.o", - "crypto/ec/curve448/libcrypto-shlib-curve448_tables.o", - "crypto/ec/curve448/libcrypto-shlib-eddsa.o", - "crypto/ec/curve448/libcrypto-shlib-f_generic.o", - "crypto/ec/curve448/libcrypto-shlib-scalar.o", - "crypto/ec/libcrypto-shlib-curve25519.o", - "crypto/ec/libcrypto-shlib-ec2_oct.o", - "crypto/ec/libcrypto-shlib-ec2_smpl.o", - "crypto/ec/libcrypto-shlib-ec_ameth.o", - "crypto/ec/libcrypto-shlib-ec_asn1.o", - "crypto/ec/libcrypto-shlib-ec_backend.o", - "crypto/ec/libcrypto-shlib-ec_check.o", - "crypto/ec/libcrypto-shlib-ec_curve.o", - "crypto/ec/libcrypto-shlib-ec_cvt.o", - "crypto/ec/libcrypto-shlib-ec_deprecated.o", - "crypto/ec/libcrypto-shlib-ec_err.o", - "crypto/ec/libcrypto-shlib-ec_key.o", - "crypto/ec/libcrypto-shlib-ec_kmeth.o", - "crypto/ec/libcrypto-shlib-ec_lib.o", - "crypto/ec/libcrypto-shlib-ec_mult.o", - "crypto/ec/libcrypto-shlib-ec_oct.o", - "crypto/ec/libcrypto-shlib-ec_pmeth.o", - "crypto/ec/libcrypto-shlib-ec_print.o", - "crypto/ec/libcrypto-shlib-ecdh_kdf.o", - "crypto/ec/libcrypto-shlib-ecdh_ossl.o", - "crypto/ec/libcrypto-shlib-ecdsa_ossl.o", - "crypto/ec/libcrypto-shlib-ecdsa_sign.o", - "crypto/ec/libcrypto-shlib-ecdsa_vrf.o", - "crypto/ec/libcrypto-shlib-eck_prn.o", - "crypto/ec/libcrypto-shlib-ecp_mont.o", - "crypto/ec/libcrypto-shlib-ecp_nist.o", - "crypto/ec/libcrypto-shlib-ecp_nistp224.o", - "crypto/ec/libcrypto-shlib-ecp_nistp256.o", - "crypto/ec/libcrypto-shlib-ecp_nistp384.o", - "crypto/ec/libcrypto-shlib-ecp_nistp521.o", - "crypto/ec/libcrypto-shlib-ecp_nistputil.o", - "crypto/ec/libcrypto-shlib-ecp_nistz256-x86_64.o", - "crypto/ec/libcrypto-shlib-ecp_nistz256.o", - "crypto/ec/libcrypto-shlib-ecp_oct.o", - "crypto/ec/libcrypto-shlib-ecp_smpl.o", - "crypto/ec/libcrypto-shlib-ecx_backend.o", - "crypto/ec/libcrypto-shlib-ecx_key.o", - "crypto/ec/libcrypto-shlib-ecx_meth.o", - "crypto/ec/libcrypto-shlib-x25519-x86_64.o", - "crypto/encode_decode/libcrypto-shlib-decoder_err.o", - "crypto/encode_decode/libcrypto-shlib-decoder_lib.o", - "crypto/encode_decode/libcrypto-shlib-decoder_meth.o", - "crypto/encode_decode/libcrypto-shlib-decoder_pkey.o", - "crypto/encode_decode/libcrypto-shlib-encoder_err.o", - "crypto/encode_decode/libcrypto-shlib-encoder_lib.o", - "crypto/encode_decode/libcrypto-shlib-encoder_meth.o", - "crypto/encode_decode/libcrypto-shlib-encoder_pkey.o", - "crypto/engine/libcrypto-shlib-eng_all.o", - "crypto/engine/libcrypto-shlib-eng_cnf.o", - "crypto/engine/libcrypto-shlib-eng_ctrl.o", - "crypto/engine/libcrypto-shlib-eng_dyn.o", - "crypto/engine/libcrypto-shlib-eng_err.o", - "crypto/engine/libcrypto-shlib-eng_fat.o", - "crypto/engine/libcrypto-shlib-eng_init.o", - "crypto/engine/libcrypto-shlib-eng_lib.o", - "crypto/engine/libcrypto-shlib-eng_list.o", - "crypto/engine/libcrypto-shlib-eng_openssl.o", - "crypto/engine/libcrypto-shlib-eng_pkey.o", - "crypto/engine/libcrypto-shlib-eng_rdrand.o", - "crypto/engine/libcrypto-shlib-eng_table.o", - "crypto/engine/libcrypto-shlib-tb_asnmth.o", - "crypto/engine/libcrypto-shlib-tb_cipher.o", - "crypto/engine/libcrypto-shlib-tb_dh.o", - "crypto/engine/libcrypto-shlib-tb_digest.o", - "crypto/engine/libcrypto-shlib-tb_dsa.o", - "crypto/engine/libcrypto-shlib-tb_eckey.o", - "crypto/engine/libcrypto-shlib-tb_pkmeth.o", - "crypto/engine/libcrypto-shlib-tb_rand.o", - "crypto/engine/libcrypto-shlib-tb_rsa.o", - "crypto/err/libcrypto-shlib-err.o", - "crypto/err/libcrypto-shlib-err_all.o", - "crypto/err/libcrypto-shlib-err_all_legacy.o", - "crypto/err/libcrypto-shlib-err_blocks.o", - "crypto/err/libcrypto-shlib-err_mark.o", - "crypto/err/libcrypto-shlib-err_prn.o", - "crypto/err/libcrypto-shlib-err_save.o", - "crypto/ess/libcrypto-shlib-ess_asn1.o", - "crypto/ess/libcrypto-shlib-ess_err.o", - "crypto/ess/libcrypto-shlib-ess_lib.o", - "crypto/evp/libcrypto-shlib-asymcipher.o", - "crypto/evp/libcrypto-shlib-bio_b64.o", - "crypto/evp/libcrypto-shlib-bio_enc.o", - "crypto/evp/libcrypto-shlib-bio_md.o", - "crypto/evp/libcrypto-shlib-bio_ok.o", - "crypto/evp/libcrypto-shlib-c_allc.o", - "crypto/evp/libcrypto-shlib-c_alld.o", - "crypto/evp/libcrypto-shlib-cmeth_lib.o", - "crypto/evp/libcrypto-shlib-ctrl_params_translate.o", - "crypto/evp/libcrypto-shlib-dh_ctrl.o", - "crypto/evp/libcrypto-shlib-dh_support.o", - "crypto/evp/libcrypto-shlib-digest.o", - "crypto/evp/libcrypto-shlib-dsa_ctrl.o", - "crypto/evp/libcrypto-shlib-e_aes.o", - "crypto/evp/libcrypto-shlib-e_aes_cbc_hmac_sha1.o", - "crypto/evp/libcrypto-shlib-e_aes_cbc_hmac_sha256.o", - "crypto/evp/libcrypto-shlib-e_aria.o", - "crypto/evp/libcrypto-shlib-e_bf.o", - "crypto/evp/libcrypto-shlib-e_camellia.o", - "crypto/evp/libcrypto-shlib-e_cast.o", - "crypto/evp/libcrypto-shlib-e_chacha20_poly1305.o", - "crypto/evp/libcrypto-shlib-e_des.o", - "crypto/evp/libcrypto-shlib-e_des3.o", - "crypto/evp/libcrypto-shlib-e_idea.o", - "crypto/evp/libcrypto-shlib-e_null.o", - "crypto/evp/libcrypto-shlib-e_old.o", - "crypto/evp/libcrypto-shlib-e_rc2.o", - "crypto/evp/libcrypto-shlib-e_rc4.o", - "crypto/evp/libcrypto-shlib-e_rc4_hmac_md5.o", - "crypto/evp/libcrypto-shlib-e_rc5.o", - "crypto/evp/libcrypto-shlib-e_seed.o", - "crypto/evp/libcrypto-shlib-e_sm4.o", - "crypto/evp/libcrypto-shlib-e_xcbc_d.o", - "crypto/evp/libcrypto-shlib-ec_ctrl.o", - "crypto/evp/libcrypto-shlib-ec_support.o", - "crypto/evp/libcrypto-shlib-encode.o", - "crypto/evp/libcrypto-shlib-evp_cnf.o", - "crypto/evp/libcrypto-shlib-evp_enc.o", - "crypto/evp/libcrypto-shlib-evp_err.o", - "crypto/evp/libcrypto-shlib-evp_fetch.o", - "crypto/evp/libcrypto-shlib-evp_key.o", - "crypto/evp/libcrypto-shlib-evp_lib.o", - "crypto/evp/libcrypto-shlib-evp_pbe.o", - "crypto/evp/libcrypto-shlib-evp_pkey.o", - "crypto/evp/libcrypto-shlib-evp_rand.o", - "crypto/evp/libcrypto-shlib-evp_utils.o", - "crypto/evp/libcrypto-shlib-exchange.o", - "crypto/evp/libcrypto-shlib-kdf_lib.o", - "crypto/evp/libcrypto-shlib-kdf_meth.o", - "crypto/evp/libcrypto-shlib-kem.o", - "crypto/evp/libcrypto-shlib-keymgmt_lib.o", - "crypto/evp/libcrypto-shlib-keymgmt_meth.o", - "crypto/evp/libcrypto-shlib-legacy_blake2.o", - "crypto/evp/libcrypto-shlib-legacy_md4.o", - "crypto/evp/libcrypto-shlib-legacy_md5.o", - "crypto/evp/libcrypto-shlib-legacy_md5_sha1.o", - "crypto/evp/libcrypto-shlib-legacy_ripemd.o", - "crypto/evp/libcrypto-shlib-legacy_sha.o", - "crypto/evp/libcrypto-shlib-legacy_wp.o", - "crypto/evp/libcrypto-shlib-m_null.o", - "crypto/evp/libcrypto-shlib-m_sigver.o", - "crypto/evp/libcrypto-shlib-mac_lib.o", - "crypto/evp/libcrypto-shlib-mac_meth.o", - "crypto/evp/libcrypto-shlib-names.o", - "crypto/evp/libcrypto-shlib-p5_crpt.o", - "crypto/evp/libcrypto-shlib-p5_crpt2.o", - "crypto/evp/libcrypto-shlib-p_dec.o", - "crypto/evp/libcrypto-shlib-p_enc.o", - "crypto/evp/libcrypto-shlib-p_legacy.o", - "crypto/evp/libcrypto-shlib-p_lib.o", - "crypto/evp/libcrypto-shlib-p_open.o", - "crypto/evp/libcrypto-shlib-p_seal.o", - "crypto/evp/libcrypto-shlib-p_sign.o", - "crypto/evp/libcrypto-shlib-p_verify.o", - "crypto/evp/libcrypto-shlib-pbe_scrypt.o", - "crypto/evp/libcrypto-shlib-pmeth_check.o", - "crypto/evp/libcrypto-shlib-pmeth_gn.o", - "crypto/evp/libcrypto-shlib-pmeth_lib.o", - "crypto/evp/libcrypto-shlib-s_lib.o", - "crypto/evp/libcrypto-shlib-signature.o", - "crypto/evp/libcrypto-shlib-skeymgmt_meth.o", - "crypto/ffc/libcrypto-shlib-ffc_backend.o", - "crypto/ffc/libcrypto-shlib-ffc_dh.o", - "crypto/ffc/libcrypto-shlib-ffc_key_generate.o", - "crypto/ffc/libcrypto-shlib-ffc_key_validate.o", - "crypto/ffc/libcrypto-shlib-ffc_params.o", - "crypto/ffc/libcrypto-shlib-ffc_params_generate.o", - "crypto/ffc/libcrypto-shlib-ffc_params_validate.o", - "crypto/hashtable/libcrypto-shlib-hashfunc.o", - "crypto/hashtable/libcrypto-shlib-hashtable.o", - "crypto/hmac/libcrypto-shlib-hmac.o", - "crypto/hpke/libcrypto-shlib-hpke.o", - "crypto/hpke/libcrypto-shlib-hpke_util.o", - "crypto/http/libcrypto-shlib-http_client.o", - "crypto/http/libcrypto-shlib-http_err.o", - "crypto/http/libcrypto-shlib-http_lib.o", - "crypto/kdf/libcrypto-shlib-kdf_err.o", - "crypto/lhash/libcrypto-shlib-lh_stats.o", - "crypto/lhash/libcrypto-shlib-lhash.o", - "crypto/libcrypto-shlib-asn1_dsa.o", - "crypto/libcrypto-shlib-bsearch.o", - "crypto/libcrypto-shlib-comp_methods.o", - "crypto/libcrypto-shlib-context.o", - "crypto/libcrypto-shlib-core_algorithm.o", - "crypto/libcrypto-shlib-core_fetch.o", - "crypto/libcrypto-shlib-core_namemap.o", - "crypto/libcrypto-shlib-cpt_err.o", - "crypto/libcrypto-shlib-cpuid.o", - "crypto/libcrypto-shlib-cryptlib.o", - "crypto/libcrypto-shlib-ctype.o", - "crypto/libcrypto-shlib-cversion.o", - "crypto/libcrypto-shlib-defaults.o", - "crypto/libcrypto-shlib-der_writer.o", - "crypto/libcrypto-shlib-deterministic_nonce.o", - "crypto/libcrypto-shlib-ebcdic.o", - "crypto/libcrypto-shlib-ex_data.o", - "crypto/libcrypto-shlib-getenv.o", - "crypto/libcrypto-shlib-indicator_core.o", - "crypto/libcrypto-shlib-info.o", - "crypto/libcrypto-shlib-init.o", - "crypto/libcrypto-shlib-initthread.o", - "crypto/libcrypto-shlib-mem.o", - "crypto/libcrypto-shlib-mem_sec.o", - "crypto/libcrypto-shlib-o_dir.o", - "crypto/libcrypto-shlib-o_fopen.o", - "crypto/libcrypto-shlib-o_init.o", - "crypto/libcrypto-shlib-o_str.o", - "crypto/libcrypto-shlib-o_time.o", - "crypto/libcrypto-shlib-packet.o", - "crypto/libcrypto-shlib-param_build.o", - "crypto/libcrypto-shlib-param_build_set.o", - "crypto/libcrypto-shlib-params.o", - "crypto/libcrypto-shlib-params_dup.o", - "crypto/libcrypto-shlib-params_from_text.o", - "crypto/libcrypto-shlib-params_idx.o", - "crypto/libcrypto-shlib-passphrase.o", - "crypto/libcrypto-shlib-provider.o", - "crypto/libcrypto-shlib-provider_child.o", - "crypto/libcrypto-shlib-provider_conf.o", - "crypto/libcrypto-shlib-provider_core.o", - "crypto/libcrypto-shlib-provider_predefined.o", - "crypto/libcrypto-shlib-punycode.o", - "crypto/libcrypto-shlib-quic_vlint.o", - "crypto/libcrypto-shlib-self_test_core.o", - "crypto/libcrypto-shlib-sleep.o", - "crypto/libcrypto-shlib-sparse_array.o", - "crypto/libcrypto-shlib-ssl_err.o", - "crypto/libcrypto-shlib-threads_lib.o", - "crypto/libcrypto-shlib-threads_none.o", - "crypto/libcrypto-shlib-threads_pthread.o", - "crypto/libcrypto-shlib-threads_win.o", - "crypto/libcrypto-shlib-time.o", - "crypto/libcrypto-shlib-trace.o", - "crypto/libcrypto-shlib-uid.o", - "crypto/libcrypto-shlib-x86_64cpuid.o", - "crypto/md4/libcrypto-shlib-md4_dgst.o", - "crypto/md4/libcrypto-shlib-md4_one.o", - "crypto/md5/libcrypto-shlib-md5-x86_64.o", - "crypto/md5/libcrypto-shlib-md5_dgst.o", - "crypto/md5/libcrypto-shlib-md5_one.o", - "crypto/md5/libcrypto-shlib-md5_sha1.o", - "crypto/ml_dsa/libcrypto-shlib-ml_dsa_encoders.o", - "crypto/ml_dsa/libcrypto-shlib-ml_dsa_key.o", - "crypto/ml_dsa/libcrypto-shlib-ml_dsa_key_compress.o", - "crypto/ml_dsa/libcrypto-shlib-ml_dsa_matrix.o", - "crypto/ml_dsa/libcrypto-shlib-ml_dsa_ntt.o", - "crypto/ml_dsa/libcrypto-shlib-ml_dsa_params.o", - "crypto/ml_dsa/libcrypto-shlib-ml_dsa_sample.o", - "crypto/ml_dsa/libcrypto-shlib-ml_dsa_sign.o", - "crypto/ml_kem/libcrypto-shlib-ml_kem.o", - "crypto/modes/libcrypto-shlib-aes-gcm-avx512.o", - "crypto/modes/libcrypto-shlib-aesni-gcm-x86_64.o", - "crypto/modes/libcrypto-shlib-cbc128.o", - "crypto/modes/libcrypto-shlib-ccm128.o", - "crypto/modes/libcrypto-shlib-cfb128.o", - "crypto/modes/libcrypto-shlib-ctr128.o", - "crypto/modes/libcrypto-shlib-cts128.o", - "crypto/modes/libcrypto-shlib-gcm128.o", - "crypto/modes/libcrypto-shlib-ghash-x86_64.o", - "crypto/modes/libcrypto-shlib-ocb128.o", - "crypto/modes/libcrypto-shlib-ofb128.o", - "crypto/modes/libcrypto-shlib-siv128.o", - "crypto/modes/libcrypto-shlib-wrap128.o", - "crypto/modes/libcrypto-shlib-xts128.o", - "crypto/modes/libcrypto-shlib-xts128gb.o", - "crypto/objects/libcrypto-shlib-o_names.o", - "crypto/objects/libcrypto-shlib-obj_dat.o", - "crypto/objects/libcrypto-shlib-obj_err.o", - "crypto/objects/libcrypto-shlib-obj_lib.o", - "crypto/objects/libcrypto-shlib-obj_xref.o", - "crypto/ocsp/libcrypto-shlib-ocsp_asn.o", - "crypto/ocsp/libcrypto-shlib-ocsp_cl.o", - "crypto/ocsp/libcrypto-shlib-ocsp_err.o", - "crypto/ocsp/libcrypto-shlib-ocsp_ext.o", - "crypto/ocsp/libcrypto-shlib-ocsp_http.o", - "crypto/ocsp/libcrypto-shlib-ocsp_lib.o", - "crypto/ocsp/libcrypto-shlib-ocsp_prn.o", - "crypto/ocsp/libcrypto-shlib-ocsp_srv.o", - "crypto/ocsp/libcrypto-shlib-ocsp_vfy.o", - "crypto/ocsp/libcrypto-shlib-v3_ocsp.o", - "crypto/pem/libcrypto-shlib-pem_all.o", - "crypto/pem/libcrypto-shlib-pem_err.o", - "crypto/pem/libcrypto-shlib-pem_info.o", - "crypto/pem/libcrypto-shlib-pem_lib.o", - "crypto/pem/libcrypto-shlib-pem_oth.o", - "crypto/pem/libcrypto-shlib-pem_pk8.o", - "crypto/pem/libcrypto-shlib-pem_pkey.o", - "crypto/pem/libcrypto-shlib-pem_sign.o", - "crypto/pem/libcrypto-shlib-pem_x509.o", - "crypto/pem/libcrypto-shlib-pem_xaux.o", - "crypto/pem/libcrypto-shlib-pvkfmt.o", - "crypto/pkcs12/libcrypto-shlib-p12_add.o", - "crypto/pkcs12/libcrypto-shlib-p12_asn.o", - "crypto/pkcs12/libcrypto-shlib-p12_attr.o", - "crypto/pkcs12/libcrypto-shlib-p12_crpt.o", - "crypto/pkcs12/libcrypto-shlib-p12_crt.o", - "crypto/pkcs12/libcrypto-shlib-p12_decr.o", - "crypto/pkcs12/libcrypto-shlib-p12_init.o", - "crypto/pkcs12/libcrypto-shlib-p12_key.o", - "crypto/pkcs12/libcrypto-shlib-p12_kiss.o", - "crypto/pkcs12/libcrypto-shlib-p12_mutl.o", - "crypto/pkcs12/libcrypto-shlib-p12_npas.o", - "crypto/pkcs12/libcrypto-shlib-p12_p8d.o", - "crypto/pkcs12/libcrypto-shlib-p12_p8e.o", - "crypto/pkcs12/libcrypto-shlib-p12_sbag.o", - "crypto/pkcs12/libcrypto-shlib-p12_utl.o", - "crypto/pkcs12/libcrypto-shlib-pk12err.o", - "crypto/pkcs7/libcrypto-shlib-bio_pk7.o", - "crypto/pkcs7/libcrypto-shlib-pk7_asn1.o", - "crypto/pkcs7/libcrypto-shlib-pk7_attr.o", - "crypto/pkcs7/libcrypto-shlib-pk7_doit.o", - "crypto/pkcs7/libcrypto-shlib-pk7_lib.o", - "crypto/pkcs7/libcrypto-shlib-pk7_mime.o", - "crypto/pkcs7/libcrypto-shlib-pk7_smime.o", - "crypto/pkcs7/libcrypto-shlib-pkcs7err.o", - "crypto/poly1305/libcrypto-shlib-poly1305-x86_64.o", - "crypto/poly1305/libcrypto-shlib-poly1305.o", - "crypto/property/libcrypto-shlib-defn_cache.o", - "crypto/property/libcrypto-shlib-property.o", - "crypto/property/libcrypto-shlib-property_err.o", - "crypto/property/libcrypto-shlib-property_parse.o", - "crypto/property/libcrypto-shlib-property_query.o", - "crypto/property/libcrypto-shlib-property_string.o", - "crypto/rand/libcrypto-shlib-prov_seed.o", - "crypto/rand/libcrypto-shlib-rand_deprecated.o", - "crypto/rand/libcrypto-shlib-rand_err.o", - "crypto/rand/libcrypto-shlib-rand_lib.o", - "crypto/rand/libcrypto-shlib-rand_meth.o", - "crypto/rand/libcrypto-shlib-rand_pool.o", - "crypto/rand/libcrypto-shlib-rand_uniform.o", - "crypto/rand/libcrypto-shlib-randfile.o", - "crypto/rc2/libcrypto-shlib-rc2_cbc.o", - "crypto/rc2/libcrypto-shlib-rc2_ecb.o", - "crypto/rc2/libcrypto-shlib-rc2_skey.o", - "crypto/rc2/libcrypto-shlib-rc2cfb64.o", - "crypto/rc2/libcrypto-shlib-rc2ofb64.o", - "crypto/rc4/libcrypto-shlib-rc4-md5-x86_64.o", - "crypto/rc4/libcrypto-shlib-rc4-x86_64.o", - "crypto/ripemd/libcrypto-shlib-rmd_dgst.o", - "crypto/ripemd/libcrypto-shlib-rmd_one.o", - "crypto/rsa/libcrypto-shlib-rsa_ameth.o", - "crypto/rsa/libcrypto-shlib-rsa_asn1.o", - "crypto/rsa/libcrypto-shlib-rsa_backend.o", - "crypto/rsa/libcrypto-shlib-rsa_chk.o", - "crypto/rsa/libcrypto-shlib-rsa_crpt.o", - "crypto/rsa/libcrypto-shlib-rsa_depr.o", - "crypto/rsa/libcrypto-shlib-rsa_err.o", - "crypto/rsa/libcrypto-shlib-rsa_gen.o", - "crypto/rsa/libcrypto-shlib-rsa_lib.o", - "crypto/rsa/libcrypto-shlib-rsa_meth.o", - "crypto/rsa/libcrypto-shlib-rsa_mp.o", - "crypto/rsa/libcrypto-shlib-rsa_mp_names.o", - "crypto/rsa/libcrypto-shlib-rsa_none.o", - "crypto/rsa/libcrypto-shlib-rsa_oaep.o", - "crypto/rsa/libcrypto-shlib-rsa_ossl.o", - "crypto/rsa/libcrypto-shlib-rsa_pk1.o", - "crypto/rsa/libcrypto-shlib-rsa_pmeth.o", - "crypto/rsa/libcrypto-shlib-rsa_prn.o", - "crypto/rsa/libcrypto-shlib-rsa_pss.o", - "crypto/rsa/libcrypto-shlib-rsa_saos.o", - "crypto/rsa/libcrypto-shlib-rsa_schemes.o", - "crypto/rsa/libcrypto-shlib-rsa_sign.o", - "crypto/rsa/libcrypto-shlib-rsa_sp800_56b_check.o", - "crypto/rsa/libcrypto-shlib-rsa_sp800_56b_gen.o", - "crypto/rsa/libcrypto-shlib-rsa_x931.o", - "crypto/rsa/libcrypto-shlib-rsa_x931g.o", - "crypto/seed/libcrypto-shlib-seed.o", - "crypto/seed/libcrypto-shlib-seed_cbc.o", - "crypto/seed/libcrypto-shlib-seed_cfb.o", - "crypto/seed/libcrypto-shlib-seed_ecb.o", - "crypto/seed/libcrypto-shlib-seed_ofb.o", - "crypto/sha/libcrypto-shlib-keccak1600-x86_64.o", - "crypto/sha/libcrypto-shlib-sha1-mb-x86_64.o", - "crypto/sha/libcrypto-shlib-sha1-x86_64.o", - "crypto/sha/libcrypto-shlib-sha1_one.o", - "crypto/sha/libcrypto-shlib-sha1dgst.o", - "crypto/sha/libcrypto-shlib-sha256-mb-x86_64.o", - "crypto/sha/libcrypto-shlib-sha256-x86_64.o", - "crypto/sha/libcrypto-shlib-sha256.o", - "crypto/sha/libcrypto-shlib-sha3.o", - "crypto/sha/libcrypto-shlib-sha512-x86_64.o", - "crypto/sha/libcrypto-shlib-sha512.o", - "crypto/siphash/libcrypto-shlib-siphash.o", - "crypto/slh_dsa/libcrypto-shlib-slh_adrs.o", - "crypto/slh_dsa/libcrypto-shlib-slh_dsa.o", - "crypto/slh_dsa/libcrypto-shlib-slh_dsa_hash_ctx.o", - "crypto/slh_dsa/libcrypto-shlib-slh_dsa_key.o", - "crypto/slh_dsa/libcrypto-shlib-slh_fors.o", - "crypto/slh_dsa/libcrypto-shlib-slh_hash.o", - "crypto/slh_dsa/libcrypto-shlib-slh_hypertree.o", - "crypto/slh_dsa/libcrypto-shlib-slh_params.o", - "crypto/slh_dsa/libcrypto-shlib-slh_wots.o", - "crypto/slh_dsa/libcrypto-shlib-slh_xmss.o", - "crypto/srp/libcrypto-shlib-srp_lib.o", - "crypto/srp/libcrypto-shlib-srp_vfy.o", - "crypto/stack/libcrypto-shlib-stack.o", - "crypto/store/libcrypto-shlib-store_err.o", - "crypto/store/libcrypto-shlib-store_init.o", - "crypto/store/libcrypto-shlib-store_lib.o", - "crypto/store/libcrypto-shlib-store_meth.o", - "crypto/store/libcrypto-shlib-store_register.o", - "crypto/store/libcrypto-shlib-store_result.o", - "crypto/store/libcrypto-shlib-store_strings.o", - "crypto/thread/arch/libcrypto-shlib-thread_none.o", - "crypto/thread/arch/libcrypto-shlib-thread_posix.o", - "crypto/thread/arch/libcrypto-shlib-thread_win.o", - "crypto/thread/libcrypto-shlib-api.o", - "crypto/thread/libcrypto-shlib-arch.o", - "crypto/thread/libcrypto-shlib-internal.o", - "crypto/ts/libcrypto-shlib-ts_asn1.o", - "crypto/ts/libcrypto-shlib-ts_conf.o", - "crypto/ts/libcrypto-shlib-ts_err.o", - "crypto/ts/libcrypto-shlib-ts_lib.o", - "crypto/ts/libcrypto-shlib-ts_req_print.o", - "crypto/ts/libcrypto-shlib-ts_req_utils.o", - "crypto/ts/libcrypto-shlib-ts_rsp_print.o", - "crypto/ts/libcrypto-shlib-ts_rsp_sign.o", - "crypto/ts/libcrypto-shlib-ts_rsp_utils.o", - "crypto/ts/libcrypto-shlib-ts_rsp_verify.o", - "crypto/ts/libcrypto-shlib-ts_verify_ctx.o", - "crypto/txt_db/libcrypto-shlib-txt_db.o", - "crypto/ui/libcrypto-shlib-ui_err.o", - "crypto/ui/libcrypto-shlib-ui_lib.o", - "crypto/ui/libcrypto-shlib-ui_null.o", - "crypto/ui/libcrypto-shlib-ui_openssl.o", - "crypto/ui/libcrypto-shlib-ui_util.o", - "crypto/whrlpool/libcrypto-shlib-wp-x86_64.o", - "crypto/whrlpool/libcrypto-shlib-wp_dgst.o", - "crypto/x509/libcrypto-shlib-by_dir.o", - "crypto/x509/libcrypto-shlib-by_file.o", - "crypto/x509/libcrypto-shlib-by_store.o", - "crypto/x509/libcrypto-shlib-pcy_cache.o", - "crypto/x509/libcrypto-shlib-pcy_data.o", - "crypto/x509/libcrypto-shlib-pcy_lib.o", - "crypto/x509/libcrypto-shlib-pcy_map.o", - "crypto/x509/libcrypto-shlib-pcy_node.o", - "crypto/x509/libcrypto-shlib-pcy_tree.o", - "crypto/x509/libcrypto-shlib-t_acert.o", - "crypto/x509/libcrypto-shlib-t_crl.o", - "crypto/x509/libcrypto-shlib-t_req.o", - "crypto/x509/libcrypto-shlib-t_x509.o", - "crypto/x509/libcrypto-shlib-v3_aaa.o", - "crypto/x509/libcrypto-shlib-v3_ac_tgt.o", - "crypto/x509/libcrypto-shlib-v3_addr.o", - "crypto/x509/libcrypto-shlib-v3_admis.o", - "crypto/x509/libcrypto-shlib-v3_akeya.o", - "crypto/x509/libcrypto-shlib-v3_akid.o", - "crypto/x509/libcrypto-shlib-v3_asid.o", - "crypto/x509/libcrypto-shlib-v3_attrdesc.o", - "crypto/x509/libcrypto-shlib-v3_attrmap.o", - "crypto/x509/libcrypto-shlib-v3_audit_id.o", - "crypto/x509/libcrypto-shlib-v3_authattid.o", - "crypto/x509/libcrypto-shlib-v3_battcons.o", - "crypto/x509/libcrypto-shlib-v3_bcons.o", - "crypto/x509/libcrypto-shlib-v3_bitst.o", - "crypto/x509/libcrypto-shlib-v3_conf.o", - "crypto/x509/libcrypto-shlib-v3_cpols.o", - "crypto/x509/libcrypto-shlib-v3_crld.o", - "crypto/x509/libcrypto-shlib-v3_enum.o", - "crypto/x509/libcrypto-shlib-v3_extku.o", - "crypto/x509/libcrypto-shlib-v3_genn.o", - "crypto/x509/libcrypto-shlib-v3_group_ac.o", - "crypto/x509/libcrypto-shlib-v3_ia5.o", - "crypto/x509/libcrypto-shlib-v3_ind_iss.o", - "crypto/x509/libcrypto-shlib-v3_info.o", - "crypto/x509/libcrypto-shlib-v3_int.o", - "crypto/x509/libcrypto-shlib-v3_iobo.o", - "crypto/x509/libcrypto-shlib-v3_ist.o", - "crypto/x509/libcrypto-shlib-v3_lib.o", - "crypto/x509/libcrypto-shlib-v3_ncons.o", - "crypto/x509/libcrypto-shlib-v3_no_ass.o", - "crypto/x509/libcrypto-shlib-v3_no_rev_avail.o", - "crypto/x509/libcrypto-shlib-v3_pci.o", - "crypto/x509/libcrypto-shlib-v3_pcia.o", - "crypto/x509/libcrypto-shlib-v3_pcons.o", - "crypto/x509/libcrypto-shlib-v3_pku.o", - "crypto/x509/libcrypto-shlib-v3_pmaps.o", - "crypto/x509/libcrypto-shlib-v3_prn.o", - "crypto/x509/libcrypto-shlib-v3_purp.o", - "crypto/x509/libcrypto-shlib-v3_rolespec.o", - "crypto/x509/libcrypto-shlib-v3_san.o", - "crypto/x509/libcrypto-shlib-v3_sda.o", - "crypto/x509/libcrypto-shlib-v3_single_use.o", - "crypto/x509/libcrypto-shlib-v3_skid.o", - "crypto/x509/libcrypto-shlib-v3_soa_id.o", - "crypto/x509/libcrypto-shlib-v3_sxnet.o", - "crypto/x509/libcrypto-shlib-v3_timespec.o", - "crypto/x509/libcrypto-shlib-v3_tlsf.o", - "crypto/x509/libcrypto-shlib-v3_usernotice.o", - "crypto/x509/libcrypto-shlib-v3_utf8.o", - "crypto/x509/libcrypto-shlib-v3_utl.o", - "crypto/x509/libcrypto-shlib-v3err.o", - "crypto/x509/libcrypto-shlib-x509_acert.o", - "crypto/x509/libcrypto-shlib-x509_att.o", - "crypto/x509/libcrypto-shlib-x509_cmp.o", - "crypto/x509/libcrypto-shlib-x509_d2.o", - "crypto/x509/libcrypto-shlib-x509_def.o", - "crypto/x509/libcrypto-shlib-x509_err.o", - "crypto/x509/libcrypto-shlib-x509_ext.o", - "crypto/x509/libcrypto-shlib-x509_lu.o", - "crypto/x509/libcrypto-shlib-x509_meth.o", - "crypto/x509/libcrypto-shlib-x509_obj.o", - "crypto/x509/libcrypto-shlib-x509_r2x.o", - "crypto/x509/libcrypto-shlib-x509_req.o", - "crypto/x509/libcrypto-shlib-x509_set.o", - "crypto/x509/libcrypto-shlib-x509_trust.o", - "crypto/x509/libcrypto-shlib-x509_txt.o", - "crypto/x509/libcrypto-shlib-x509_v3.o", - "crypto/x509/libcrypto-shlib-x509_vfy.o", - "crypto/x509/libcrypto-shlib-x509_vpm.o", - "crypto/x509/libcrypto-shlib-x509aset.o", - "crypto/x509/libcrypto-shlib-x509cset.o", - "crypto/x509/libcrypto-shlib-x509name.o", - "crypto/x509/libcrypto-shlib-x509rset.o", - "crypto/x509/libcrypto-shlib-x509spki.o", - "crypto/x509/libcrypto-shlib-x509type.o", - "crypto/x509/libcrypto-shlib-x_all.o", - "crypto/x509/libcrypto-shlib-x_attrib.o", - "crypto/x509/libcrypto-shlib-x_crl.o", - "crypto/x509/libcrypto-shlib-x_exten.o", - "crypto/x509/libcrypto-shlib-x_ietfatt.o", - "crypto/x509/libcrypto-shlib-x_name.o", - "crypto/x509/libcrypto-shlib-x_pubkey.o", - "crypto/x509/libcrypto-shlib-x_req.o", - "crypto/x509/libcrypto-shlib-x_x509.o", - "crypto/x509/libcrypto-shlib-x_x509a.o", - "libcrypto.ld", - "providers/libcrypto-shlib-baseprov.o", - "providers/libcrypto-shlib-defltprov.o", - "providers/libcrypto-shlib-nullprov.o", - "providers/libcrypto-shlib-prov_running.o", - "providers/libdefault.a" - ], - "libssl" => [ - "crypto/hashtable/libssl-shlib-hashfunc.o", - "crypto/libssl-shlib-ctype.o", - "crypto/libssl-shlib-getenv.o", - "crypto/libssl-shlib-packet.o", - "crypto/libssl-shlib-quic_vlint.o", - "crypto/libssl-shlib-time.o", - "crypto/siphash/libssl-shlib-siphash.o", - "crypto/thread/arch/libssl-shlib-thread_none.o", - "crypto/thread/arch/libssl-shlib-thread_posix.o", - "crypto/thread/arch/libssl-shlib-thread_win.o", - "crypto/thread/libssl-shlib-arch.o", - "libssl.ld", - "ssl/libssl-shlib-bio_ssl.o", - "ssl/libssl-shlib-d1_lib.o", - "ssl/libssl-shlib-d1_msg.o", - "ssl/libssl-shlib-d1_srtp.o", - "ssl/libssl-shlib-methods.o", - "ssl/libssl-shlib-pqueue.o", - "ssl/libssl-shlib-priority_queue.o", - "ssl/libssl-shlib-s3_enc.o", - "ssl/libssl-shlib-s3_lib.o", - "ssl/libssl-shlib-s3_msg.o", - "ssl/libssl-shlib-ssl_asn1.o", - "ssl/libssl-shlib-ssl_cert.o", - "ssl/libssl-shlib-ssl_cert_comp.o", - "ssl/libssl-shlib-ssl_ciph.o", - "ssl/libssl-shlib-ssl_conf.o", - "ssl/libssl-shlib-ssl_err_legacy.o", - "ssl/libssl-shlib-ssl_init.o", - "ssl/libssl-shlib-ssl_lib.o", - "ssl/libssl-shlib-ssl_mcnf.o", - "ssl/libssl-shlib-ssl_rsa.o", - "ssl/libssl-shlib-ssl_rsa_legacy.o", - "ssl/libssl-shlib-ssl_sess.o", - "ssl/libssl-shlib-ssl_stat.o", - "ssl/libssl-shlib-ssl_txt.o", - "ssl/libssl-shlib-ssl_utst.o", - "ssl/libssl-shlib-t1_enc.o", - "ssl/libssl-shlib-t1_lib.o", - "ssl/libssl-shlib-t1_trce.o", - "ssl/libssl-shlib-tls13_enc.o", - "ssl/libssl-shlib-tls_depr.o", - "ssl/libssl-shlib-tls_srp.o", - "ssl/quic/libssl-shlib-cc_newreno.o", - "ssl/quic/libssl-shlib-json_enc.o", - "ssl/quic/libssl-shlib-qlog.o", - "ssl/quic/libssl-shlib-qlog_event_helpers.o", - "ssl/quic/libssl-shlib-quic_ackm.o", - "ssl/quic/libssl-shlib-quic_cfq.o", - "ssl/quic/libssl-shlib-quic_channel.o", - "ssl/quic/libssl-shlib-quic_demux.o", - "ssl/quic/libssl-shlib-quic_engine.o", - "ssl/quic/libssl-shlib-quic_fc.o", - "ssl/quic/libssl-shlib-quic_fifd.o", - "ssl/quic/libssl-shlib-quic_impl.o", - "ssl/quic/libssl-shlib-quic_lcidm.o", - "ssl/quic/libssl-shlib-quic_method.o", - "ssl/quic/libssl-shlib-quic_obj.o", - "ssl/quic/libssl-shlib-quic_port.o", - "ssl/quic/libssl-shlib-quic_rcidm.o", - "ssl/quic/libssl-shlib-quic_reactor.o", - "ssl/quic/libssl-shlib-quic_reactor_wait_ctx.o", - "ssl/quic/libssl-shlib-quic_record_rx.o", - "ssl/quic/libssl-shlib-quic_record_shared.o", - "ssl/quic/libssl-shlib-quic_record_tx.o", - "ssl/quic/libssl-shlib-quic_record_util.o", - "ssl/quic/libssl-shlib-quic_rstream.o", - "ssl/quic/libssl-shlib-quic_rx_depack.o", - "ssl/quic/libssl-shlib-quic_sf_list.o", - "ssl/quic/libssl-shlib-quic_srt_gen.o", - "ssl/quic/libssl-shlib-quic_srtm.o", - "ssl/quic/libssl-shlib-quic_sstream.o", - "ssl/quic/libssl-shlib-quic_statm.o", - "ssl/quic/libssl-shlib-quic_stream_map.o", - "ssl/quic/libssl-shlib-quic_thread_assist.o", - "ssl/quic/libssl-shlib-quic_tls.o", - "ssl/quic/libssl-shlib-quic_tls_api.o", - "ssl/quic/libssl-shlib-quic_trace.o", - "ssl/quic/libssl-shlib-quic_tserver.o", - "ssl/quic/libssl-shlib-quic_txp.o", - "ssl/quic/libssl-shlib-quic_txpim.o", - "ssl/quic/libssl-shlib-quic_types.o", - "ssl/quic/libssl-shlib-quic_wire.o", - "ssl/quic/libssl-shlib-quic_wire_pkt.o", - "ssl/quic/libssl-shlib-uint_set.o", - "ssl/record/libssl-shlib-rec_layer_d1.o", - "ssl/record/libssl-shlib-rec_layer_s3.o", - "ssl/record/methods/libssl-shlib-dtls_meth.o", - "ssl/record/methods/libssl-shlib-ktls_meth.o", - "ssl/record/methods/libssl-shlib-ssl3_cbc.o", - "ssl/record/methods/libssl-shlib-ssl3_meth.o", - "ssl/record/methods/libssl-shlib-tls13_meth.o", - "ssl/record/methods/libssl-shlib-tls1_meth.o", - "ssl/record/methods/libssl-shlib-tls_common.o", - "ssl/record/methods/libssl-shlib-tls_multib.o", - "ssl/record/methods/libssl-shlib-tls_pad.o", - "ssl/record/methods/libssl-shlib-tlsany_meth.o", - "ssl/rio/libssl-shlib-poll_builder.o", - "ssl/rio/libssl-shlib-poll_immediate.o", - "ssl/rio/libssl-shlib-rio_notifier.o", - "ssl/statem/libssl-shlib-extensions.o", - "ssl/statem/libssl-shlib-extensions_clnt.o", - "ssl/statem/libssl-shlib-extensions_cust.o", - "ssl/statem/libssl-shlib-extensions_srvr.o", - "ssl/statem/libssl-shlib-statem.o", - "ssl/statem/libssl-shlib-statem_clnt.o", - "ssl/statem/libssl-shlib-statem_dtls.o", - "ssl/statem/libssl-shlib-statem_lib.o", - "ssl/statem/libssl-shlib-statem_srvr.o" - ] - }, - "sources" => { - "apps/CA.pl" => [ - "apps/CA.pl.in" - ], - "apps/ca_internals_test-bin-ca.o" => [ - "apps/ca.c" - ], - "apps/lib/ca_internals_test-bin-app_libctx.o" => [ - "apps/lib/app_libctx.c" - ], - "apps/lib/ca_internals_test-bin-app_provider.o" => [ - "apps/lib/app_provider.c" - ], - "apps/lib/ca_internals_test-bin-app_rand.o" => [ - "apps/lib/app_rand.c" - ], - "apps/lib/ca_internals_test-bin-app_x509.o" => [ - "apps/lib/app_x509.c" - ], - "apps/lib/ca_internals_test-bin-apps.o" => [ - "apps/lib/apps.c" - ], - "apps/lib/ca_internals_test-bin-apps_ui.o" => [ - "apps/lib/apps_ui.c" - ], - "apps/lib/ca_internals_test-bin-engine.o" => [ - "apps/lib/engine.c" - ], - "apps/lib/ca_internals_test-bin-fmt.o" => [ - "apps/lib/fmt.c" - ], - "apps/lib/cmp_client_test-bin-cmp_mock_srv.o" => [ - "apps/lib/cmp_mock_srv.c" - ], - "apps/lib/libapps-lib-app_libctx.o" => [ - "apps/lib/app_libctx.c" - ], - "apps/lib/libapps-lib-app_params.o" => [ - "apps/lib/app_params.c" - ], - "apps/lib/libapps-lib-app_provider.o" => [ - "apps/lib/app_provider.c" - ], - "apps/lib/libapps-lib-app_rand.o" => [ - "apps/lib/app_rand.c" - ], - "apps/lib/libapps-lib-app_x509.o" => [ - "apps/lib/app_x509.c" - ], - "apps/lib/libapps-lib-apps.o" => [ - "apps/lib/apps.c" - ], - "apps/lib/libapps-lib-apps_opt_printf.o" => [ - "apps/lib/apps_opt_printf.c" - ], - "apps/lib/libapps-lib-apps_ui.o" => [ - "apps/lib/apps_ui.c" - ], - "apps/lib/libapps-lib-columns.o" => [ - "apps/lib/columns.c" - ], - "apps/lib/libapps-lib-engine.o" => [ - "apps/lib/engine.c" - ], - "apps/lib/libapps-lib-engine_loader.o" => [ - "apps/lib/engine_loader.c" - ], - "apps/lib/libapps-lib-fmt.o" => [ - "apps/lib/fmt.c" - ], - "apps/lib/libapps-lib-http_server.o" => [ - "apps/lib/http_server.c" - ], - "apps/lib/libapps-lib-log.o" => [ - "apps/lib/log.c" - ], - "apps/lib/libapps-lib-names.o" => [ - "apps/lib/names.c" - ], - "apps/lib/libapps-lib-opt.o" => [ - "apps/lib/opt.c" - ], - "apps/lib/libapps-lib-s_cb.o" => [ - "apps/lib/s_cb.c" - ], - "apps/lib/libapps-lib-s_socket.o" => [ - "apps/lib/s_socket.c" - ], - "apps/lib/libapps-lib-tlssrp_depr.o" => [ - "apps/lib/tlssrp_depr.c" - ], - "apps/lib/libtestutil-lib-opt.o" => [ - "apps/lib/opt.c" - ], - "apps/lib/openssl-bin-cmp_mock_srv.o" => [ - "apps/lib/cmp_mock_srv.c" - ], - "apps/lib/uitest-bin-apps_ui.o" => [ - "apps/lib/apps_ui.c" - ], - "apps/libapps.a" => [ - "apps/lib/libapps-lib-app_libctx.o", - "apps/lib/libapps-lib-app_params.o", - "apps/lib/libapps-lib-app_provider.o", - "apps/lib/libapps-lib-app_rand.o", - "apps/lib/libapps-lib-app_x509.o", - "apps/lib/libapps-lib-apps.o", - "apps/lib/libapps-lib-apps_opt_printf.o", - "apps/lib/libapps-lib-apps_ui.o", - "apps/lib/libapps-lib-columns.o", - "apps/lib/libapps-lib-engine.o", - "apps/lib/libapps-lib-engine_loader.o", - "apps/lib/libapps-lib-fmt.o", - "apps/lib/libapps-lib-http_server.o", - "apps/lib/libapps-lib-log.o", - "apps/lib/libapps-lib-names.o", - "apps/lib/libapps-lib-opt.o", - "apps/lib/libapps-lib-s_cb.o", - "apps/lib/libapps-lib-s_socket.o", - "apps/lib/libapps-lib-tlssrp_depr.o" - ], - "apps/openssl" => [ - "apps/lib/openssl-bin-cmp_mock_srv.o", - "apps/openssl-bin-asn1parse.o", - "apps/openssl-bin-ca.o", - "apps/openssl-bin-ciphers.o", - "apps/openssl-bin-cmp.o", - "apps/openssl-bin-cms.o", - "apps/openssl-bin-crl.o", - "apps/openssl-bin-crl2pkcs7.o", - "apps/openssl-bin-dgst.o", - "apps/openssl-bin-dhparam.o", - "apps/openssl-bin-dsa.o", - "apps/openssl-bin-dsaparam.o", - "apps/openssl-bin-ec.o", - "apps/openssl-bin-ecparam.o", - "apps/openssl-bin-enc.o", - "apps/openssl-bin-engine.o", - "apps/openssl-bin-errstr.o", - "apps/openssl-bin-fipsinstall.o", - "apps/openssl-bin-gendsa.o", - "apps/openssl-bin-genpkey.o", - "apps/openssl-bin-genrsa.o", - "apps/openssl-bin-info.o", - "apps/openssl-bin-kdf.o", - "apps/openssl-bin-list.o", - "apps/openssl-bin-mac.o", - "apps/openssl-bin-nseq.o", - "apps/openssl-bin-ocsp.o", - "apps/openssl-bin-openssl.o", - "apps/openssl-bin-passwd.o", - "apps/openssl-bin-pkcs12.o", - "apps/openssl-bin-pkcs7.o", - "apps/openssl-bin-pkcs8.o", - "apps/openssl-bin-pkey.o", - "apps/openssl-bin-pkeyparam.o", - "apps/openssl-bin-pkeyutl.o", - "apps/openssl-bin-prime.o", - "apps/openssl-bin-progs.o", - "apps/openssl-bin-rand.o", - "apps/openssl-bin-rehash.o", - "apps/openssl-bin-req.o", - "apps/openssl-bin-rsa.o", - "apps/openssl-bin-rsautl.o", - "apps/openssl-bin-s_client.o", - "apps/openssl-bin-s_server.o", - "apps/openssl-bin-s_time.o", - "apps/openssl-bin-sess_id.o", - "apps/openssl-bin-skeyutl.o", - "apps/openssl-bin-smime.o", - "apps/openssl-bin-speed.o", - "apps/openssl-bin-spkac.o", - "apps/openssl-bin-srp.o", - "apps/openssl-bin-storeutl.o", - "apps/openssl-bin-ts.o", - "apps/openssl-bin-verify.o", - "apps/openssl-bin-version.o", - "apps/openssl-bin-x509.o" - ], - "apps/openssl-bin-asn1parse.o" => [ - "apps/asn1parse.c" - ], - "apps/openssl-bin-ca.o" => [ - "apps/ca.c" - ], - "apps/openssl-bin-ciphers.o" => [ - "apps/ciphers.c" - ], - "apps/openssl-bin-cmp.o" => [ - "apps/cmp.c" - ], - "apps/openssl-bin-cms.o" => [ - "apps/cms.c" - ], - "apps/openssl-bin-crl.o" => [ - "apps/crl.c" - ], - "apps/openssl-bin-crl2pkcs7.o" => [ - "apps/crl2pkcs7.c" - ], - "apps/openssl-bin-dgst.o" => [ - "apps/dgst.c" - ], - "apps/openssl-bin-dhparam.o" => [ - "apps/dhparam.c" - ], - "apps/openssl-bin-dsa.o" => [ - "apps/dsa.c" - ], - "apps/openssl-bin-dsaparam.o" => [ - "apps/dsaparam.c" - ], - "apps/openssl-bin-ec.o" => [ - "apps/ec.c" - ], - "apps/openssl-bin-ecparam.o" => [ - "apps/ecparam.c" - ], - "apps/openssl-bin-enc.o" => [ - "apps/enc.c" - ], - "apps/openssl-bin-engine.o" => [ - "apps/engine.c" - ], - "apps/openssl-bin-errstr.o" => [ - "apps/errstr.c" - ], - "apps/openssl-bin-fipsinstall.o" => [ - "apps/fipsinstall.c" - ], - "apps/openssl-bin-gendsa.o" => [ - "apps/gendsa.c" - ], - "apps/openssl-bin-genpkey.o" => [ - "apps/genpkey.c" - ], - "apps/openssl-bin-genrsa.o" => [ - "apps/genrsa.c" - ], - "apps/openssl-bin-info.o" => [ - "apps/info.c" - ], - "apps/openssl-bin-kdf.o" => [ - "apps/kdf.c" - ], - "apps/openssl-bin-list.o" => [ - "apps/list.c" - ], - "apps/openssl-bin-mac.o" => [ - "apps/mac.c" - ], - "apps/openssl-bin-nseq.o" => [ - "apps/nseq.c" - ], - "apps/openssl-bin-ocsp.o" => [ - "apps/ocsp.c" - ], - "apps/openssl-bin-openssl.o" => [ - "apps/openssl.c" - ], - "apps/openssl-bin-passwd.o" => [ - "apps/passwd.c" - ], - "apps/openssl-bin-pkcs12.o" => [ - "apps/pkcs12.c" - ], - "apps/openssl-bin-pkcs7.o" => [ - "apps/pkcs7.c" - ], - "apps/openssl-bin-pkcs8.o" => [ - "apps/pkcs8.c" - ], - "apps/openssl-bin-pkey.o" => [ - "apps/pkey.c" - ], - "apps/openssl-bin-pkeyparam.o" => [ - "apps/pkeyparam.c" - ], - "apps/openssl-bin-pkeyutl.o" => [ - "apps/pkeyutl.c" - ], - "apps/openssl-bin-prime.o" => [ - "apps/prime.c" - ], - "apps/openssl-bin-progs.o" => [ - "apps/progs.c" - ], - "apps/openssl-bin-rand.o" => [ - "apps/rand.c" - ], - "apps/openssl-bin-rehash.o" => [ - "apps/rehash.c" - ], - "apps/openssl-bin-req.o" => [ - "apps/req.c" - ], - "apps/openssl-bin-rsa.o" => [ - "apps/rsa.c" - ], - "apps/openssl-bin-rsautl.o" => [ - "apps/rsautl.c" - ], - "apps/openssl-bin-s_client.o" => [ - "apps/s_client.c" - ], - "apps/openssl-bin-s_server.o" => [ - "apps/s_server.c" - ], - "apps/openssl-bin-s_time.o" => [ - "apps/s_time.c" - ], - "apps/openssl-bin-sess_id.o" => [ - "apps/sess_id.c" - ], - "apps/openssl-bin-skeyutl.o" => [ - "apps/skeyutl.c" - ], - "apps/openssl-bin-smime.o" => [ - "apps/smime.c" - ], - "apps/openssl-bin-speed.o" => [ - "apps/speed.c" - ], - "apps/openssl-bin-spkac.o" => [ - "apps/spkac.c" - ], - "apps/openssl-bin-srp.o" => [ - "apps/srp.c" - ], - "apps/openssl-bin-storeutl.o" => [ - "apps/storeutl.c" - ], - "apps/openssl-bin-ts.o" => [ - "apps/ts.c" - ], - "apps/openssl-bin-verify.o" => [ - "apps/verify.c" - ], - "apps/openssl-bin-version.o" => [ - "apps/version.c" - ], - "apps/openssl-bin-x509.o" => [ - "apps/x509.c" - ], - "apps/tsget.pl" => [ - "apps/tsget.in" - ], - "crypto/aes/libcrypto-lib-aes-x86_64.o" => [ - "crypto/aes/aes-x86_64.s" - ], - "crypto/aes/libcrypto-lib-aes_cfb.o" => [ - "crypto/aes/aes_cfb.c" - ], - "crypto/aes/libcrypto-lib-aes_ecb.o" => [ - "crypto/aes/aes_ecb.c" - ], - "crypto/aes/libcrypto-lib-aes_ige.o" => [ - "crypto/aes/aes_ige.c" - ], - "crypto/aes/libcrypto-lib-aes_misc.o" => [ - "crypto/aes/aes_misc.c" - ], - "crypto/aes/libcrypto-lib-aes_ofb.o" => [ - "crypto/aes/aes_ofb.c" - ], - "crypto/aes/libcrypto-lib-aes_wrap.o" => [ - "crypto/aes/aes_wrap.c" - ], - "crypto/aes/libcrypto-lib-aesni-mb-x86_64.o" => [ - "crypto/aes/aesni-mb-x86_64.s" - ], - "crypto/aes/libcrypto-lib-aesni-sha1-x86_64.o" => [ - "crypto/aes/aesni-sha1-x86_64.s" - ], - "crypto/aes/libcrypto-lib-aesni-sha256-x86_64.o" => [ - "crypto/aes/aesni-sha256-x86_64.s" - ], - "crypto/aes/libcrypto-lib-aesni-x86_64.o" => [ - "crypto/aes/aesni-x86_64.s" - ], - "crypto/aes/libcrypto-lib-aesni-xts-avx512.o" => [ - "crypto/aes/aesni-xts-avx512.s" - ], - "crypto/aes/libcrypto-lib-bsaes-x86_64.o" => [ - "crypto/aes/bsaes-x86_64.s" - ], - "crypto/aes/libcrypto-lib-vpaes-x86_64.o" => [ - "crypto/aes/vpaes-x86_64.s" - ], - "crypto/aes/libcrypto-shlib-aes-x86_64.o" => [ - "crypto/aes/aes-x86_64.s" - ], - "crypto/aes/libcrypto-shlib-aes_cfb.o" => [ - "crypto/aes/aes_cfb.c" - ], - "crypto/aes/libcrypto-shlib-aes_ecb.o" => [ - "crypto/aes/aes_ecb.c" - ], - "crypto/aes/libcrypto-shlib-aes_ige.o" => [ - "crypto/aes/aes_ige.c" - ], - "crypto/aes/libcrypto-shlib-aes_misc.o" => [ - "crypto/aes/aes_misc.c" - ], - "crypto/aes/libcrypto-shlib-aes_ofb.o" => [ - "crypto/aes/aes_ofb.c" - ], - "crypto/aes/libcrypto-shlib-aes_wrap.o" => [ - "crypto/aes/aes_wrap.c" - ], - "crypto/aes/libcrypto-shlib-aesni-mb-x86_64.o" => [ - "crypto/aes/aesni-mb-x86_64.s" - ], - "crypto/aes/libcrypto-shlib-aesni-sha1-x86_64.o" => [ - "crypto/aes/aesni-sha1-x86_64.s" - ], - "crypto/aes/libcrypto-shlib-aesni-sha256-x86_64.o" => [ - "crypto/aes/aesni-sha256-x86_64.s" - ], - "crypto/aes/libcrypto-shlib-aesni-x86_64.o" => [ - "crypto/aes/aesni-x86_64.s" - ], - "crypto/aes/libcrypto-shlib-aesni-xts-avx512.o" => [ - "crypto/aes/aesni-xts-avx512.s" - ], - "crypto/aes/libcrypto-shlib-bsaes-x86_64.o" => [ - "crypto/aes/bsaes-x86_64.s" - ], - "crypto/aes/libcrypto-shlib-vpaes-x86_64.o" => [ - "crypto/aes/vpaes-x86_64.s" - ], - "crypto/asn1/asn1_time_test-bin-a_time.o" => [ - "crypto/asn1/a_time.c" - ], - "crypto/asn1/ca_internals_test-bin-a_time.o" => [ - "crypto/asn1/a_time.c" - ], - "crypto/asn1/libcrypto-lib-a_bitstr.o" => [ - "crypto/asn1/a_bitstr.c" - ], - "crypto/asn1/libcrypto-lib-a_d2i_fp.o" => [ - "crypto/asn1/a_d2i_fp.c" - ], - "crypto/asn1/libcrypto-lib-a_digest.o" => [ - "crypto/asn1/a_digest.c" - ], - "crypto/asn1/libcrypto-lib-a_dup.o" => [ - "crypto/asn1/a_dup.c" - ], - "crypto/asn1/libcrypto-lib-a_gentm.o" => [ - "crypto/asn1/a_gentm.c" - ], - "crypto/asn1/libcrypto-lib-a_i2d_fp.o" => [ - "crypto/asn1/a_i2d_fp.c" - ], - "crypto/asn1/libcrypto-lib-a_int.o" => [ - "crypto/asn1/a_int.c" - ], - "crypto/asn1/libcrypto-lib-a_mbstr.o" => [ - "crypto/asn1/a_mbstr.c" - ], - "crypto/asn1/libcrypto-lib-a_object.o" => [ - "crypto/asn1/a_object.c" - ], - "crypto/asn1/libcrypto-lib-a_octet.o" => [ - "crypto/asn1/a_octet.c" - ], - "crypto/asn1/libcrypto-lib-a_print.o" => [ - "crypto/asn1/a_print.c" - ], - "crypto/asn1/libcrypto-lib-a_sign.o" => [ - "crypto/asn1/a_sign.c" - ], - "crypto/asn1/libcrypto-lib-a_strex.o" => [ - "crypto/asn1/a_strex.c" - ], - "crypto/asn1/libcrypto-lib-a_strnid.o" => [ - "crypto/asn1/a_strnid.c" - ], - "crypto/asn1/libcrypto-lib-a_time.o" => [ - "crypto/asn1/a_time.c" - ], - "crypto/asn1/libcrypto-lib-a_type.o" => [ - "crypto/asn1/a_type.c" - ], - "crypto/asn1/libcrypto-lib-a_utctm.o" => [ - "crypto/asn1/a_utctm.c" - ], - "crypto/asn1/libcrypto-lib-a_utf8.o" => [ - "crypto/asn1/a_utf8.c" - ], - "crypto/asn1/libcrypto-lib-a_verify.o" => [ - "crypto/asn1/a_verify.c" - ], - "crypto/asn1/libcrypto-lib-ameth_lib.o" => [ - "crypto/asn1/ameth_lib.c" - ], - "crypto/asn1/libcrypto-lib-asn1_err.o" => [ - "crypto/asn1/asn1_err.c" - ], - "crypto/asn1/libcrypto-lib-asn1_gen.o" => [ - "crypto/asn1/asn1_gen.c" - ], - "crypto/asn1/libcrypto-lib-asn1_item_list.o" => [ - "crypto/asn1/asn1_item_list.c" - ], - "crypto/asn1/libcrypto-lib-asn1_lib.o" => [ - "crypto/asn1/asn1_lib.c" - ], - "crypto/asn1/libcrypto-lib-asn1_parse.o" => [ - "crypto/asn1/asn1_parse.c" - ], - "crypto/asn1/libcrypto-lib-asn_mime.o" => [ - "crypto/asn1/asn_mime.c" - ], - "crypto/asn1/libcrypto-lib-asn_moid.o" => [ - "crypto/asn1/asn_moid.c" - ], - "crypto/asn1/libcrypto-lib-asn_mstbl.o" => [ - "crypto/asn1/asn_mstbl.c" - ], - "crypto/asn1/libcrypto-lib-asn_pack.o" => [ - "crypto/asn1/asn_pack.c" - ], - "crypto/asn1/libcrypto-lib-bio_asn1.o" => [ - "crypto/asn1/bio_asn1.c" - ], - "crypto/asn1/libcrypto-lib-bio_ndef.o" => [ - "crypto/asn1/bio_ndef.c" - ], - "crypto/asn1/libcrypto-lib-d2i_param.o" => [ - "crypto/asn1/d2i_param.c" - ], - "crypto/asn1/libcrypto-lib-d2i_pr.o" => [ - "crypto/asn1/d2i_pr.c" - ], - "crypto/asn1/libcrypto-lib-d2i_pu.o" => [ - "crypto/asn1/d2i_pu.c" - ], - "crypto/asn1/libcrypto-lib-evp_asn1.o" => [ - "crypto/asn1/evp_asn1.c" - ], - "crypto/asn1/libcrypto-lib-f_int.o" => [ - "crypto/asn1/f_int.c" - ], - "crypto/asn1/libcrypto-lib-f_string.o" => [ - "crypto/asn1/f_string.c" - ], - "crypto/asn1/libcrypto-lib-i2d_evp.o" => [ - "crypto/asn1/i2d_evp.c" - ], - "crypto/asn1/libcrypto-lib-n_pkey.o" => [ - "crypto/asn1/n_pkey.c" - ], - "crypto/asn1/libcrypto-lib-nsseq.o" => [ - "crypto/asn1/nsseq.c" - ], - "crypto/asn1/libcrypto-lib-p5_pbe.o" => [ - "crypto/asn1/p5_pbe.c" - ], - "crypto/asn1/libcrypto-lib-p5_pbev2.o" => [ - "crypto/asn1/p5_pbev2.c" - ], - "crypto/asn1/libcrypto-lib-p5_scrypt.o" => [ - "crypto/asn1/p5_scrypt.c" - ], - "crypto/asn1/libcrypto-lib-p8_pkey.o" => [ - "crypto/asn1/p8_pkey.c" - ], - "crypto/asn1/libcrypto-lib-t_bitst.o" => [ - "crypto/asn1/t_bitst.c" - ], - "crypto/asn1/libcrypto-lib-t_pkey.o" => [ - "crypto/asn1/t_pkey.c" - ], - "crypto/asn1/libcrypto-lib-t_spki.o" => [ - "crypto/asn1/t_spki.c" - ], - "crypto/asn1/libcrypto-lib-tasn_dec.o" => [ - "crypto/asn1/tasn_dec.c" - ], - "crypto/asn1/libcrypto-lib-tasn_enc.o" => [ - "crypto/asn1/tasn_enc.c" - ], - "crypto/asn1/libcrypto-lib-tasn_fre.o" => [ - "crypto/asn1/tasn_fre.c" - ], - "crypto/asn1/libcrypto-lib-tasn_new.o" => [ - "crypto/asn1/tasn_new.c" - ], - "crypto/asn1/libcrypto-lib-tasn_prn.o" => [ - "crypto/asn1/tasn_prn.c" - ], - "crypto/asn1/libcrypto-lib-tasn_scn.o" => [ - "crypto/asn1/tasn_scn.c" - ], - "crypto/asn1/libcrypto-lib-tasn_typ.o" => [ - "crypto/asn1/tasn_typ.c" - ], - "crypto/asn1/libcrypto-lib-tasn_utl.o" => [ - "crypto/asn1/tasn_utl.c" - ], - "crypto/asn1/libcrypto-lib-x_algor.o" => [ - "crypto/asn1/x_algor.c" - ], - "crypto/asn1/libcrypto-lib-x_bignum.o" => [ - "crypto/asn1/x_bignum.c" - ], - "crypto/asn1/libcrypto-lib-x_info.o" => [ - "crypto/asn1/x_info.c" - ], - "crypto/asn1/libcrypto-lib-x_int64.o" => [ - "crypto/asn1/x_int64.c" - ], - "crypto/asn1/libcrypto-lib-x_long.o" => [ - "crypto/asn1/x_long.c" - ], - "crypto/asn1/libcrypto-lib-x_pkey.o" => [ - "crypto/asn1/x_pkey.c" - ], - "crypto/asn1/libcrypto-lib-x_sig.o" => [ - "crypto/asn1/x_sig.c" - ], - "crypto/asn1/libcrypto-lib-x_spki.o" => [ - "crypto/asn1/x_spki.c" - ], - "crypto/asn1/libcrypto-lib-x_val.o" => [ - "crypto/asn1/x_val.c" - ], - "crypto/asn1/libcrypto-shlib-a_bitstr.o" => [ - "crypto/asn1/a_bitstr.c" - ], - "crypto/asn1/libcrypto-shlib-a_d2i_fp.o" => [ - "crypto/asn1/a_d2i_fp.c" - ], - "crypto/asn1/libcrypto-shlib-a_digest.o" => [ - "crypto/asn1/a_digest.c" - ], - "crypto/asn1/libcrypto-shlib-a_dup.o" => [ - "crypto/asn1/a_dup.c" - ], - "crypto/asn1/libcrypto-shlib-a_gentm.o" => [ - "crypto/asn1/a_gentm.c" - ], - "crypto/asn1/libcrypto-shlib-a_i2d_fp.o" => [ - "crypto/asn1/a_i2d_fp.c" - ], - "crypto/asn1/libcrypto-shlib-a_int.o" => [ - "crypto/asn1/a_int.c" - ], - "crypto/asn1/libcrypto-shlib-a_mbstr.o" => [ - "crypto/asn1/a_mbstr.c" - ], - "crypto/asn1/libcrypto-shlib-a_object.o" => [ - "crypto/asn1/a_object.c" - ], - "crypto/asn1/libcrypto-shlib-a_octet.o" => [ - "crypto/asn1/a_octet.c" - ], - "crypto/asn1/libcrypto-shlib-a_print.o" => [ - "crypto/asn1/a_print.c" - ], - "crypto/asn1/libcrypto-shlib-a_sign.o" => [ - "crypto/asn1/a_sign.c" - ], - "crypto/asn1/libcrypto-shlib-a_strex.o" => [ - "crypto/asn1/a_strex.c" - ], - "crypto/asn1/libcrypto-shlib-a_strnid.o" => [ - "crypto/asn1/a_strnid.c" - ], - "crypto/asn1/libcrypto-shlib-a_time.o" => [ - "crypto/asn1/a_time.c" - ], - "crypto/asn1/libcrypto-shlib-a_type.o" => [ - "crypto/asn1/a_type.c" - ], - "crypto/asn1/libcrypto-shlib-a_utctm.o" => [ - "crypto/asn1/a_utctm.c" - ], - "crypto/asn1/libcrypto-shlib-a_utf8.o" => [ - "crypto/asn1/a_utf8.c" - ], - "crypto/asn1/libcrypto-shlib-a_verify.o" => [ - "crypto/asn1/a_verify.c" - ], - "crypto/asn1/libcrypto-shlib-ameth_lib.o" => [ - "crypto/asn1/ameth_lib.c" - ], - "crypto/asn1/libcrypto-shlib-asn1_err.o" => [ - "crypto/asn1/asn1_err.c" - ], - "crypto/asn1/libcrypto-shlib-asn1_gen.o" => [ - "crypto/asn1/asn1_gen.c" - ], - "crypto/asn1/libcrypto-shlib-asn1_item_list.o" => [ - "crypto/asn1/asn1_item_list.c" - ], - "crypto/asn1/libcrypto-shlib-asn1_lib.o" => [ - "crypto/asn1/asn1_lib.c" - ], - "crypto/asn1/libcrypto-shlib-asn1_parse.o" => [ - "crypto/asn1/asn1_parse.c" - ], - "crypto/asn1/libcrypto-shlib-asn_mime.o" => [ - "crypto/asn1/asn_mime.c" - ], - "crypto/asn1/libcrypto-shlib-asn_moid.o" => [ - "crypto/asn1/asn_moid.c" - ], - "crypto/asn1/libcrypto-shlib-asn_mstbl.o" => [ - "crypto/asn1/asn_mstbl.c" - ], - "crypto/asn1/libcrypto-shlib-asn_pack.o" => [ - "crypto/asn1/asn_pack.c" - ], - "crypto/asn1/libcrypto-shlib-bio_asn1.o" => [ - "crypto/asn1/bio_asn1.c" - ], - "crypto/asn1/libcrypto-shlib-bio_ndef.o" => [ - "crypto/asn1/bio_ndef.c" - ], - "crypto/asn1/libcrypto-shlib-d2i_param.o" => [ - "crypto/asn1/d2i_param.c" - ], - "crypto/asn1/libcrypto-shlib-d2i_pr.o" => [ - "crypto/asn1/d2i_pr.c" - ], - "crypto/asn1/libcrypto-shlib-d2i_pu.o" => [ - "crypto/asn1/d2i_pu.c" - ], - "crypto/asn1/libcrypto-shlib-evp_asn1.o" => [ - "crypto/asn1/evp_asn1.c" - ], - "crypto/asn1/libcrypto-shlib-f_int.o" => [ - "crypto/asn1/f_int.c" - ], - "crypto/asn1/libcrypto-shlib-f_string.o" => [ - "crypto/asn1/f_string.c" - ], - "crypto/asn1/libcrypto-shlib-i2d_evp.o" => [ - "crypto/asn1/i2d_evp.c" - ], - "crypto/asn1/libcrypto-shlib-n_pkey.o" => [ - "crypto/asn1/n_pkey.c" - ], - "crypto/asn1/libcrypto-shlib-nsseq.o" => [ - "crypto/asn1/nsseq.c" - ], - "crypto/asn1/libcrypto-shlib-p5_pbe.o" => [ - "crypto/asn1/p5_pbe.c" - ], - "crypto/asn1/libcrypto-shlib-p5_pbev2.o" => [ - "crypto/asn1/p5_pbev2.c" - ], - "crypto/asn1/libcrypto-shlib-p5_scrypt.o" => [ - "crypto/asn1/p5_scrypt.c" - ], - "crypto/asn1/libcrypto-shlib-p8_pkey.o" => [ - "crypto/asn1/p8_pkey.c" - ], - "crypto/asn1/libcrypto-shlib-t_bitst.o" => [ - "crypto/asn1/t_bitst.c" - ], - "crypto/asn1/libcrypto-shlib-t_pkey.o" => [ - "crypto/asn1/t_pkey.c" - ], - "crypto/asn1/libcrypto-shlib-t_spki.o" => [ - "crypto/asn1/t_spki.c" - ], - "crypto/asn1/libcrypto-shlib-tasn_dec.o" => [ - "crypto/asn1/tasn_dec.c" - ], - "crypto/asn1/libcrypto-shlib-tasn_enc.o" => [ - "crypto/asn1/tasn_enc.c" - ], - "crypto/asn1/libcrypto-shlib-tasn_fre.o" => [ - "crypto/asn1/tasn_fre.c" - ], - "crypto/asn1/libcrypto-shlib-tasn_new.o" => [ - "crypto/asn1/tasn_new.c" - ], - "crypto/asn1/libcrypto-shlib-tasn_prn.o" => [ - "crypto/asn1/tasn_prn.c" - ], - "crypto/asn1/libcrypto-shlib-tasn_scn.o" => [ - "crypto/asn1/tasn_scn.c" - ], - "crypto/asn1/libcrypto-shlib-tasn_typ.o" => [ - "crypto/asn1/tasn_typ.c" - ], - "crypto/asn1/libcrypto-shlib-tasn_utl.o" => [ - "crypto/asn1/tasn_utl.c" - ], - "crypto/asn1/libcrypto-shlib-x_algor.o" => [ - "crypto/asn1/x_algor.c" - ], - "crypto/asn1/libcrypto-shlib-x_bignum.o" => [ - "crypto/asn1/x_bignum.c" - ], - "crypto/asn1/libcrypto-shlib-x_info.o" => [ - "crypto/asn1/x_info.c" - ], - "crypto/asn1/libcrypto-shlib-x_int64.o" => [ - "crypto/asn1/x_int64.c" - ], - "crypto/asn1/libcrypto-shlib-x_long.o" => [ - "crypto/asn1/x_long.c" - ], - "crypto/asn1/libcrypto-shlib-x_pkey.o" => [ - "crypto/asn1/x_pkey.c" - ], - "crypto/asn1/libcrypto-shlib-x_sig.o" => [ - "crypto/asn1/x_sig.c" - ], - "crypto/asn1/libcrypto-shlib-x_spki.o" => [ - "crypto/asn1/x_spki.c" - ], - "crypto/asn1/libcrypto-shlib-x_val.o" => [ - "crypto/asn1/x_val.c" - ], - "crypto/asn1_time_test-bin-ctype.o" => [ - "crypto/ctype.c" - ], - "crypto/async/arch/libcrypto-lib-async_null.o" => [ - "crypto/async/arch/async_null.c" - ], - "crypto/async/arch/libcrypto-lib-async_posix.o" => [ - "crypto/async/arch/async_posix.c" - ], - "crypto/async/arch/libcrypto-lib-async_win.o" => [ - "crypto/async/arch/async_win.c" - ], - "crypto/async/arch/libcrypto-shlib-async_null.o" => [ - "crypto/async/arch/async_null.c" - ], - "crypto/async/arch/libcrypto-shlib-async_posix.o" => [ - "crypto/async/arch/async_posix.c" - ], - "crypto/async/arch/libcrypto-shlib-async_win.o" => [ - "crypto/async/arch/async_win.c" - ], - "crypto/async/libcrypto-lib-async.o" => [ - "crypto/async/async.c" - ], - "crypto/async/libcrypto-lib-async_err.o" => [ - "crypto/async/async_err.c" - ], - "crypto/async/libcrypto-lib-async_wait.o" => [ - "crypto/async/async_wait.c" - ], - "crypto/async/libcrypto-shlib-async.o" => [ - "crypto/async/async.c" - ], - "crypto/async/libcrypto-shlib-async_err.o" => [ - "crypto/async/async_err.c" - ], - "crypto/async/libcrypto-shlib-async_wait.o" => [ - "crypto/async/async_wait.c" - ], - "crypto/bf/libcrypto-lib-bf_cfb64.o" => [ - "crypto/bf/bf_cfb64.c" - ], - "crypto/bf/libcrypto-lib-bf_ecb.o" => [ - "crypto/bf/bf_ecb.c" - ], - "crypto/bf/libcrypto-lib-bf_enc.o" => [ - "crypto/bf/bf_enc.c" - ], - "crypto/bf/libcrypto-lib-bf_ofb64.o" => [ - "crypto/bf/bf_ofb64.c" - ], - "crypto/bf/libcrypto-lib-bf_skey.o" => [ - "crypto/bf/bf_skey.c" - ], - "crypto/bf/libcrypto-shlib-bf_cfb64.o" => [ - "crypto/bf/bf_cfb64.c" - ], - "crypto/bf/libcrypto-shlib-bf_ecb.o" => [ - "crypto/bf/bf_ecb.c" - ], - "crypto/bf/libcrypto-shlib-bf_enc.o" => [ - "crypto/bf/bf_enc.c" - ], - "crypto/bf/libcrypto-shlib-bf_ofb64.o" => [ - "crypto/bf/bf_ofb64.c" - ], - "crypto/bf/libcrypto-shlib-bf_skey.o" => [ - "crypto/bf/bf_skey.c" - ], - "crypto/bio/libcrypto-lib-bf_buff.o" => [ - "crypto/bio/bf_buff.c" - ], - "crypto/bio/libcrypto-lib-bf_lbuf.o" => [ - "crypto/bio/bf_lbuf.c" - ], - "crypto/bio/libcrypto-lib-bf_nbio.o" => [ - "crypto/bio/bf_nbio.c" - ], - "crypto/bio/libcrypto-lib-bf_null.o" => [ - "crypto/bio/bf_null.c" - ], - "crypto/bio/libcrypto-lib-bf_prefix.o" => [ - "crypto/bio/bf_prefix.c" - ], - "crypto/bio/libcrypto-lib-bf_readbuff.o" => [ - "crypto/bio/bf_readbuff.c" - ], - "crypto/bio/libcrypto-lib-bio_addr.o" => [ - "crypto/bio/bio_addr.c" - ], - "crypto/bio/libcrypto-lib-bio_cb.o" => [ - "crypto/bio/bio_cb.c" - ], - "crypto/bio/libcrypto-lib-bio_dump.o" => [ - "crypto/bio/bio_dump.c" - ], - "crypto/bio/libcrypto-lib-bio_err.o" => [ - "crypto/bio/bio_err.c" - ], - "crypto/bio/libcrypto-lib-bio_lib.o" => [ - "crypto/bio/bio_lib.c" - ], - "crypto/bio/libcrypto-lib-bio_meth.o" => [ - "crypto/bio/bio_meth.c" - ], - "crypto/bio/libcrypto-lib-bio_print.o" => [ - "crypto/bio/bio_print.c" - ], - "crypto/bio/libcrypto-lib-bio_sock.o" => [ - "crypto/bio/bio_sock.c" - ], - "crypto/bio/libcrypto-lib-bio_sock2.o" => [ - "crypto/bio/bio_sock2.c" - ], - "crypto/bio/libcrypto-lib-bss_acpt.o" => [ - "crypto/bio/bss_acpt.c" - ], - "crypto/bio/libcrypto-lib-bss_bio.o" => [ - "crypto/bio/bss_bio.c" - ], - "crypto/bio/libcrypto-lib-bss_conn.o" => [ - "crypto/bio/bss_conn.c" - ], - "crypto/bio/libcrypto-lib-bss_core.o" => [ - "crypto/bio/bss_core.c" - ], - "crypto/bio/libcrypto-lib-bss_dgram.o" => [ - "crypto/bio/bss_dgram.c" - ], - "crypto/bio/libcrypto-lib-bss_dgram_pair.o" => [ - "crypto/bio/bss_dgram_pair.c" - ], - "crypto/bio/libcrypto-lib-bss_fd.o" => [ - "crypto/bio/bss_fd.c" - ], - "crypto/bio/libcrypto-lib-bss_file.o" => [ - "crypto/bio/bss_file.c" - ], - "crypto/bio/libcrypto-lib-bss_log.o" => [ - "crypto/bio/bss_log.c" - ], - "crypto/bio/libcrypto-lib-bss_mem.o" => [ - "crypto/bio/bss_mem.c" - ], - "crypto/bio/libcrypto-lib-bss_null.o" => [ - "crypto/bio/bss_null.c" - ], - "crypto/bio/libcrypto-lib-bss_sock.o" => [ - "crypto/bio/bss_sock.c" - ], - "crypto/bio/libcrypto-lib-ossl_core_bio.o" => [ - "crypto/bio/ossl_core_bio.c" - ], - "crypto/bio/libcrypto-shlib-bf_buff.o" => [ - "crypto/bio/bf_buff.c" - ], - "crypto/bio/libcrypto-shlib-bf_lbuf.o" => [ - "crypto/bio/bf_lbuf.c" - ], - "crypto/bio/libcrypto-shlib-bf_nbio.o" => [ - "crypto/bio/bf_nbio.c" - ], - "crypto/bio/libcrypto-shlib-bf_null.o" => [ - "crypto/bio/bf_null.c" - ], - "crypto/bio/libcrypto-shlib-bf_prefix.o" => [ - "crypto/bio/bf_prefix.c" - ], - "crypto/bio/libcrypto-shlib-bf_readbuff.o" => [ - "crypto/bio/bf_readbuff.c" - ], - "crypto/bio/libcrypto-shlib-bio_addr.o" => [ - "crypto/bio/bio_addr.c" - ], - "crypto/bio/libcrypto-shlib-bio_cb.o" => [ - "crypto/bio/bio_cb.c" - ], - "crypto/bio/libcrypto-shlib-bio_dump.o" => [ - "crypto/bio/bio_dump.c" - ], - "crypto/bio/libcrypto-shlib-bio_err.o" => [ - "crypto/bio/bio_err.c" - ], - "crypto/bio/libcrypto-shlib-bio_lib.o" => [ - "crypto/bio/bio_lib.c" - ], - "crypto/bio/libcrypto-shlib-bio_meth.o" => [ - "crypto/bio/bio_meth.c" - ], - "crypto/bio/libcrypto-shlib-bio_print.o" => [ - "crypto/bio/bio_print.c" - ], - "crypto/bio/libcrypto-shlib-bio_sock.o" => [ - "crypto/bio/bio_sock.c" - ], - "crypto/bio/libcrypto-shlib-bio_sock2.o" => [ - "crypto/bio/bio_sock2.c" - ], - "crypto/bio/libcrypto-shlib-bss_acpt.o" => [ - "crypto/bio/bss_acpt.c" - ], - "crypto/bio/libcrypto-shlib-bss_bio.o" => [ - "crypto/bio/bss_bio.c" - ], - "crypto/bio/libcrypto-shlib-bss_conn.o" => [ - "crypto/bio/bss_conn.c" - ], - "crypto/bio/libcrypto-shlib-bss_core.o" => [ - "crypto/bio/bss_core.c" - ], - "crypto/bio/libcrypto-shlib-bss_dgram.o" => [ - "crypto/bio/bss_dgram.c" - ], - "crypto/bio/libcrypto-shlib-bss_dgram_pair.o" => [ - "crypto/bio/bss_dgram_pair.c" - ], - "crypto/bio/libcrypto-shlib-bss_fd.o" => [ - "crypto/bio/bss_fd.c" - ], - "crypto/bio/libcrypto-shlib-bss_file.o" => [ - "crypto/bio/bss_file.c" - ], - "crypto/bio/libcrypto-shlib-bss_log.o" => [ - "crypto/bio/bss_log.c" - ], - "crypto/bio/libcrypto-shlib-bss_mem.o" => [ - "crypto/bio/bss_mem.c" - ], - "crypto/bio/libcrypto-shlib-bss_null.o" => [ - "crypto/bio/bss_null.c" - ], - "crypto/bio/libcrypto-shlib-bss_sock.o" => [ - "crypto/bio/bss_sock.c" - ], - "crypto/bio/libcrypto-shlib-ossl_core_bio.o" => [ - "crypto/bio/ossl_core_bio.c" - ], - "crypto/bn/asm/libcrypto-lib-x86_64-gcc.o" => [ - "crypto/bn/asm/x86_64-gcc.c" - ], - "crypto/bn/asm/libcrypto-shlib-x86_64-gcc.o" => [ - "crypto/bn/asm/x86_64-gcc.c" - ], - "crypto/bn/libcrypto-lib-bn_add.o" => [ - "crypto/bn/bn_add.c" - ], - "crypto/bn/libcrypto-lib-bn_blind.o" => [ - "crypto/bn/bn_blind.c" - ], - "crypto/bn/libcrypto-lib-bn_const.o" => [ - "crypto/bn/bn_const.c" - ], - "crypto/bn/libcrypto-lib-bn_conv.o" => [ - "crypto/bn/bn_conv.c" - ], - "crypto/bn/libcrypto-lib-bn_ctx.o" => [ - "crypto/bn/bn_ctx.c" - ], - "crypto/bn/libcrypto-lib-bn_depr.o" => [ - "crypto/bn/bn_depr.c" - ], - "crypto/bn/libcrypto-lib-bn_dh.o" => [ - "crypto/bn/bn_dh.c" - ], - "crypto/bn/libcrypto-lib-bn_div.o" => [ - "crypto/bn/bn_div.c" - ], - "crypto/bn/libcrypto-lib-bn_err.o" => [ - "crypto/bn/bn_err.c" - ], - "crypto/bn/libcrypto-lib-bn_exp.o" => [ - "crypto/bn/bn_exp.c" - ], - "crypto/bn/libcrypto-lib-bn_exp2.o" => [ - "crypto/bn/bn_exp2.c" - ], - "crypto/bn/libcrypto-lib-bn_gcd.o" => [ - "crypto/bn/bn_gcd.c" - ], - "crypto/bn/libcrypto-lib-bn_gf2m.o" => [ - "crypto/bn/bn_gf2m.c" - ], - "crypto/bn/libcrypto-lib-bn_intern.o" => [ - "crypto/bn/bn_intern.c" - ], - "crypto/bn/libcrypto-lib-bn_kron.o" => [ - "crypto/bn/bn_kron.c" - ], - "crypto/bn/libcrypto-lib-bn_lib.o" => [ - "crypto/bn/bn_lib.c" - ], - "crypto/bn/libcrypto-lib-bn_mod.o" => [ - "crypto/bn/bn_mod.c" - ], - "crypto/bn/libcrypto-lib-bn_mont.o" => [ - "crypto/bn/bn_mont.c" - ], - "crypto/bn/libcrypto-lib-bn_mpi.o" => [ - "crypto/bn/bn_mpi.c" - ], - "crypto/bn/libcrypto-lib-bn_mul.o" => [ - "crypto/bn/bn_mul.c" - ], - "crypto/bn/libcrypto-lib-bn_nist.o" => [ - "crypto/bn/bn_nist.c" - ], - "crypto/bn/libcrypto-lib-bn_prime.o" => [ - "crypto/bn/bn_prime.c" - ], - "crypto/bn/libcrypto-lib-bn_print.o" => [ - "crypto/bn/bn_print.c" - ], - "crypto/bn/libcrypto-lib-bn_rand.o" => [ - "crypto/bn/bn_rand.c" - ], - "crypto/bn/libcrypto-lib-bn_recp.o" => [ - "crypto/bn/bn_recp.c" - ], - "crypto/bn/libcrypto-lib-bn_rsa_fips186_4.o" => [ - "crypto/bn/bn_rsa_fips186_4.c" - ], - "crypto/bn/libcrypto-lib-bn_shift.o" => [ - "crypto/bn/bn_shift.c" - ], - "crypto/bn/libcrypto-lib-bn_sqr.o" => [ - "crypto/bn/bn_sqr.c" - ], - "crypto/bn/libcrypto-lib-bn_sqrt.o" => [ - "crypto/bn/bn_sqrt.c" - ], - "crypto/bn/libcrypto-lib-bn_srp.o" => [ - "crypto/bn/bn_srp.c" - ], - "crypto/bn/libcrypto-lib-bn_word.o" => [ - "crypto/bn/bn_word.c" - ], - "crypto/bn/libcrypto-lib-bn_x931p.o" => [ - "crypto/bn/bn_x931p.c" - ], - "crypto/bn/libcrypto-lib-rsaz-2k-avx512.o" => [ - "crypto/bn/rsaz-2k-avx512.s" - ], - "crypto/bn/libcrypto-lib-rsaz-2k-avxifma.o" => [ - "crypto/bn/rsaz-2k-avxifma.s" - ], - "crypto/bn/libcrypto-lib-rsaz-3k-avx512.o" => [ - "crypto/bn/rsaz-3k-avx512.s" - ], - "crypto/bn/libcrypto-lib-rsaz-3k-avxifma.o" => [ - "crypto/bn/rsaz-3k-avxifma.s" - ], - "crypto/bn/libcrypto-lib-rsaz-4k-avx512.o" => [ - "crypto/bn/rsaz-4k-avx512.s" - ], - "crypto/bn/libcrypto-lib-rsaz-4k-avxifma.o" => [ - "crypto/bn/rsaz-4k-avxifma.s" - ], - "crypto/bn/libcrypto-lib-rsaz-avx2.o" => [ - "crypto/bn/rsaz-avx2.s" - ], - "crypto/bn/libcrypto-lib-rsaz-x86_64.o" => [ - "crypto/bn/rsaz-x86_64.s" - ], - "crypto/bn/libcrypto-lib-rsaz_exp.o" => [ - "crypto/bn/rsaz_exp.c" - ], - "crypto/bn/libcrypto-lib-rsaz_exp_x2.o" => [ - "crypto/bn/rsaz_exp_x2.c" - ], - "crypto/bn/libcrypto-lib-x86_64-gf2m.o" => [ - "crypto/bn/x86_64-gf2m.s" - ], - "crypto/bn/libcrypto-lib-x86_64-mont.o" => [ - "crypto/bn/x86_64-mont.s" - ], - "crypto/bn/libcrypto-lib-x86_64-mont5.o" => [ - "crypto/bn/x86_64-mont5.s" - ], - "crypto/bn/libcrypto-shlib-bn_add.o" => [ - "crypto/bn/bn_add.c" - ], - "crypto/bn/libcrypto-shlib-bn_blind.o" => [ - "crypto/bn/bn_blind.c" - ], - "crypto/bn/libcrypto-shlib-bn_const.o" => [ - "crypto/bn/bn_const.c" - ], - "crypto/bn/libcrypto-shlib-bn_conv.o" => [ - "crypto/bn/bn_conv.c" - ], - "crypto/bn/libcrypto-shlib-bn_ctx.o" => [ - "crypto/bn/bn_ctx.c" - ], - "crypto/bn/libcrypto-shlib-bn_depr.o" => [ - "crypto/bn/bn_depr.c" - ], - "crypto/bn/libcrypto-shlib-bn_dh.o" => [ - "crypto/bn/bn_dh.c" - ], - "crypto/bn/libcrypto-shlib-bn_div.o" => [ - "crypto/bn/bn_div.c" - ], - "crypto/bn/libcrypto-shlib-bn_err.o" => [ - "crypto/bn/bn_err.c" - ], - "crypto/bn/libcrypto-shlib-bn_exp.o" => [ - "crypto/bn/bn_exp.c" - ], - "crypto/bn/libcrypto-shlib-bn_exp2.o" => [ - "crypto/bn/bn_exp2.c" - ], - "crypto/bn/libcrypto-shlib-bn_gcd.o" => [ - "crypto/bn/bn_gcd.c" - ], - "crypto/bn/libcrypto-shlib-bn_gf2m.o" => [ - "crypto/bn/bn_gf2m.c" - ], - "crypto/bn/libcrypto-shlib-bn_intern.o" => [ - "crypto/bn/bn_intern.c" - ], - "crypto/bn/libcrypto-shlib-bn_kron.o" => [ - "crypto/bn/bn_kron.c" - ], - "crypto/bn/libcrypto-shlib-bn_lib.o" => [ - "crypto/bn/bn_lib.c" - ], - "crypto/bn/libcrypto-shlib-bn_mod.o" => [ - "crypto/bn/bn_mod.c" - ], - "crypto/bn/libcrypto-shlib-bn_mont.o" => [ - "crypto/bn/bn_mont.c" - ], - "crypto/bn/libcrypto-shlib-bn_mpi.o" => [ - "crypto/bn/bn_mpi.c" - ], - "crypto/bn/libcrypto-shlib-bn_mul.o" => [ - "crypto/bn/bn_mul.c" - ], - "crypto/bn/libcrypto-shlib-bn_nist.o" => [ - "crypto/bn/bn_nist.c" - ], - "crypto/bn/libcrypto-shlib-bn_prime.o" => [ - "crypto/bn/bn_prime.c" - ], - "crypto/bn/libcrypto-shlib-bn_print.o" => [ - "crypto/bn/bn_print.c" - ], - "crypto/bn/libcrypto-shlib-bn_rand.o" => [ - "crypto/bn/bn_rand.c" - ], - "crypto/bn/libcrypto-shlib-bn_recp.o" => [ - "crypto/bn/bn_recp.c" - ], - "crypto/bn/libcrypto-shlib-bn_rsa_fips186_4.o" => [ - "crypto/bn/bn_rsa_fips186_4.c" - ], - "crypto/bn/libcrypto-shlib-bn_shift.o" => [ - "crypto/bn/bn_shift.c" - ], - "crypto/bn/libcrypto-shlib-bn_sqr.o" => [ - "crypto/bn/bn_sqr.c" - ], - "crypto/bn/libcrypto-shlib-bn_sqrt.o" => [ - "crypto/bn/bn_sqrt.c" - ], - "crypto/bn/libcrypto-shlib-bn_srp.o" => [ - "crypto/bn/bn_srp.c" - ], - "crypto/bn/libcrypto-shlib-bn_word.o" => [ - "crypto/bn/bn_word.c" - ], - "crypto/bn/libcrypto-shlib-bn_x931p.o" => [ - "crypto/bn/bn_x931p.c" - ], - "crypto/bn/libcrypto-shlib-rsaz-2k-avx512.o" => [ - "crypto/bn/rsaz-2k-avx512.s" - ], - "crypto/bn/libcrypto-shlib-rsaz-2k-avxifma.o" => [ - "crypto/bn/rsaz-2k-avxifma.s" - ], - "crypto/bn/libcrypto-shlib-rsaz-3k-avx512.o" => [ - "crypto/bn/rsaz-3k-avx512.s" - ], - "crypto/bn/libcrypto-shlib-rsaz-3k-avxifma.o" => [ - "crypto/bn/rsaz-3k-avxifma.s" - ], - "crypto/bn/libcrypto-shlib-rsaz-4k-avx512.o" => [ - "crypto/bn/rsaz-4k-avx512.s" - ], - "crypto/bn/libcrypto-shlib-rsaz-4k-avxifma.o" => [ - "crypto/bn/rsaz-4k-avxifma.s" - ], - "crypto/bn/libcrypto-shlib-rsaz-avx2.o" => [ - "crypto/bn/rsaz-avx2.s" - ], - "crypto/bn/libcrypto-shlib-rsaz-x86_64.o" => [ - "crypto/bn/rsaz-x86_64.s" - ], - "crypto/bn/libcrypto-shlib-rsaz_exp.o" => [ - "crypto/bn/rsaz_exp.c" - ], - "crypto/bn/libcrypto-shlib-rsaz_exp_x2.o" => [ - "crypto/bn/rsaz_exp_x2.c" - ], - "crypto/bn/libcrypto-shlib-x86_64-gf2m.o" => [ - "crypto/bn/x86_64-gf2m.s" - ], - "crypto/bn/libcrypto-shlib-x86_64-mont.o" => [ - "crypto/bn/x86_64-mont.s" - ], - "crypto/bn/libcrypto-shlib-x86_64-mont5.o" => [ - "crypto/bn/x86_64-mont5.s" - ], - "crypto/buffer/libcrypto-lib-buf_err.o" => [ - "crypto/buffer/buf_err.c" - ], - "crypto/buffer/libcrypto-lib-buffer.o" => [ - "crypto/buffer/buffer.c" - ], - "crypto/buffer/libcrypto-shlib-buf_err.o" => [ - "crypto/buffer/buf_err.c" - ], - "crypto/buffer/libcrypto-shlib-buffer.o" => [ - "crypto/buffer/buffer.c" - ], - "crypto/ca_internals_test-bin-ctype.o" => [ - "crypto/ctype.c" - ], - "crypto/camellia/libcrypto-lib-cmll-x86_64.o" => [ - "crypto/camellia/cmll-x86_64.s" - ], - "crypto/camellia/libcrypto-lib-cmll_cfb.o" => [ - "crypto/camellia/cmll_cfb.c" - ], - "crypto/camellia/libcrypto-lib-cmll_ctr.o" => [ - "crypto/camellia/cmll_ctr.c" - ], - "crypto/camellia/libcrypto-lib-cmll_ecb.o" => [ - "crypto/camellia/cmll_ecb.c" - ], - "crypto/camellia/libcrypto-lib-cmll_misc.o" => [ - "crypto/camellia/cmll_misc.c" - ], - "crypto/camellia/libcrypto-lib-cmll_ofb.o" => [ - "crypto/camellia/cmll_ofb.c" - ], - "crypto/camellia/libcrypto-shlib-cmll-x86_64.o" => [ - "crypto/camellia/cmll-x86_64.s" - ], - "crypto/camellia/libcrypto-shlib-cmll_cfb.o" => [ - "crypto/camellia/cmll_cfb.c" - ], - "crypto/camellia/libcrypto-shlib-cmll_ctr.o" => [ - "crypto/camellia/cmll_ctr.c" - ], - "crypto/camellia/libcrypto-shlib-cmll_ecb.o" => [ - "crypto/camellia/cmll_ecb.c" - ], - "crypto/camellia/libcrypto-shlib-cmll_misc.o" => [ - "crypto/camellia/cmll_misc.c" - ], - "crypto/camellia/libcrypto-shlib-cmll_ofb.o" => [ - "crypto/camellia/cmll_ofb.c" - ], - "crypto/cast/libcrypto-lib-c_cfb64.o" => [ - "crypto/cast/c_cfb64.c" - ], - "crypto/cast/libcrypto-lib-c_ecb.o" => [ - "crypto/cast/c_ecb.c" - ], - "crypto/cast/libcrypto-lib-c_enc.o" => [ - "crypto/cast/c_enc.c" - ], - "crypto/cast/libcrypto-lib-c_ofb64.o" => [ - "crypto/cast/c_ofb64.c" - ], - "crypto/cast/libcrypto-lib-c_skey.o" => [ - "crypto/cast/c_skey.c" - ], - "crypto/cast/libcrypto-shlib-c_cfb64.o" => [ - "crypto/cast/c_cfb64.c" - ], - "crypto/cast/libcrypto-shlib-c_ecb.o" => [ - "crypto/cast/c_ecb.c" - ], - "crypto/cast/libcrypto-shlib-c_enc.o" => [ - "crypto/cast/c_enc.c" - ], - "crypto/cast/libcrypto-shlib-c_ofb64.o" => [ - "crypto/cast/c_ofb64.c" - ], - "crypto/cast/libcrypto-shlib-c_skey.o" => [ - "crypto/cast/c_skey.c" - ], - "crypto/chacha/libcrypto-lib-chacha-x86_64.o" => [ - "crypto/chacha/chacha-x86_64.s" - ], - "crypto/chacha/libcrypto-shlib-chacha-x86_64.o" => [ - "crypto/chacha/chacha-x86_64.s" - ], - "crypto/cmac/libcrypto-lib-cmac.o" => [ - "crypto/cmac/cmac.c" - ], - "crypto/cmac/libcrypto-shlib-cmac.o" => [ - "crypto/cmac/cmac.c" - ], - "crypto/cmp/libcrypto-lib-cmp_asn.o" => [ - "crypto/cmp/cmp_asn.c" - ], - "crypto/cmp/libcrypto-lib-cmp_client.o" => [ - "crypto/cmp/cmp_client.c" - ], - "crypto/cmp/libcrypto-lib-cmp_ctx.o" => [ - "crypto/cmp/cmp_ctx.c" - ], - "crypto/cmp/libcrypto-lib-cmp_err.o" => [ - "crypto/cmp/cmp_err.c" - ], - "crypto/cmp/libcrypto-lib-cmp_genm.o" => [ - "crypto/cmp/cmp_genm.c" - ], - "crypto/cmp/libcrypto-lib-cmp_hdr.o" => [ - "crypto/cmp/cmp_hdr.c" - ], - "crypto/cmp/libcrypto-lib-cmp_http.o" => [ - "crypto/cmp/cmp_http.c" - ], - "crypto/cmp/libcrypto-lib-cmp_msg.o" => [ - "crypto/cmp/cmp_msg.c" - ], - "crypto/cmp/libcrypto-lib-cmp_protect.o" => [ - "crypto/cmp/cmp_protect.c" - ], - "crypto/cmp/libcrypto-lib-cmp_server.o" => [ - "crypto/cmp/cmp_server.c" - ], - "crypto/cmp/libcrypto-lib-cmp_status.o" => [ - "crypto/cmp/cmp_status.c" - ], - "crypto/cmp/libcrypto-lib-cmp_util.o" => [ - "crypto/cmp/cmp_util.c" - ], - "crypto/cmp/libcrypto-lib-cmp_vfy.o" => [ - "crypto/cmp/cmp_vfy.c" - ], - "crypto/cmp/libcrypto-shlib-cmp_asn.o" => [ - "crypto/cmp/cmp_asn.c" - ], - "crypto/cmp/libcrypto-shlib-cmp_client.o" => [ - "crypto/cmp/cmp_client.c" - ], - "crypto/cmp/libcrypto-shlib-cmp_ctx.o" => [ - "crypto/cmp/cmp_ctx.c" - ], - "crypto/cmp/libcrypto-shlib-cmp_err.o" => [ - "crypto/cmp/cmp_err.c" - ], - "crypto/cmp/libcrypto-shlib-cmp_genm.o" => [ - "crypto/cmp/cmp_genm.c" - ], - "crypto/cmp/libcrypto-shlib-cmp_hdr.o" => [ - "crypto/cmp/cmp_hdr.c" - ], - "crypto/cmp/libcrypto-shlib-cmp_http.o" => [ - "crypto/cmp/cmp_http.c" - ], - "crypto/cmp/libcrypto-shlib-cmp_msg.o" => [ - "crypto/cmp/cmp_msg.c" - ], - "crypto/cmp/libcrypto-shlib-cmp_protect.o" => [ - "crypto/cmp/cmp_protect.c" - ], - "crypto/cmp/libcrypto-shlib-cmp_server.o" => [ - "crypto/cmp/cmp_server.c" - ], - "crypto/cmp/libcrypto-shlib-cmp_status.o" => [ - "crypto/cmp/cmp_status.c" - ], - "crypto/cmp/libcrypto-shlib-cmp_util.o" => [ - "crypto/cmp/cmp_util.c" - ], - "crypto/cmp/libcrypto-shlib-cmp_vfy.o" => [ - "crypto/cmp/cmp_vfy.c" - ], - "crypto/cms/libcrypto-lib-cms_asn1.o" => [ - "crypto/cms/cms_asn1.c" - ], - "crypto/cms/libcrypto-lib-cms_att.o" => [ - "crypto/cms/cms_att.c" - ], - "crypto/cms/libcrypto-lib-cms_cd.o" => [ - "crypto/cms/cms_cd.c" - ], - "crypto/cms/libcrypto-lib-cms_dd.o" => [ - "crypto/cms/cms_dd.c" - ], - "crypto/cms/libcrypto-lib-cms_dh.o" => [ - "crypto/cms/cms_dh.c" - ], - "crypto/cms/libcrypto-lib-cms_ec.o" => [ - "crypto/cms/cms_ec.c" - ], - "crypto/cms/libcrypto-lib-cms_enc.o" => [ - "crypto/cms/cms_enc.c" - ], - "crypto/cms/libcrypto-lib-cms_env.o" => [ - "crypto/cms/cms_env.c" - ], - "crypto/cms/libcrypto-lib-cms_err.o" => [ - "crypto/cms/cms_err.c" - ], - "crypto/cms/libcrypto-lib-cms_ess.o" => [ - "crypto/cms/cms_ess.c" - ], - "crypto/cms/libcrypto-lib-cms_io.o" => [ - "crypto/cms/cms_io.c" - ], - "crypto/cms/libcrypto-lib-cms_kari.o" => [ - "crypto/cms/cms_kari.c" - ], - "crypto/cms/libcrypto-lib-cms_lib.o" => [ - "crypto/cms/cms_lib.c" - ], - "crypto/cms/libcrypto-lib-cms_pwri.o" => [ - "crypto/cms/cms_pwri.c" - ], - "crypto/cms/libcrypto-lib-cms_rsa.o" => [ - "crypto/cms/cms_rsa.c" - ], - "crypto/cms/libcrypto-lib-cms_sd.o" => [ - "crypto/cms/cms_sd.c" - ], - "crypto/cms/libcrypto-lib-cms_smime.o" => [ - "crypto/cms/cms_smime.c" - ], - "crypto/cms/libcrypto-shlib-cms_asn1.o" => [ - "crypto/cms/cms_asn1.c" - ], - "crypto/cms/libcrypto-shlib-cms_att.o" => [ - "crypto/cms/cms_att.c" - ], - "crypto/cms/libcrypto-shlib-cms_cd.o" => [ - "crypto/cms/cms_cd.c" - ], - "crypto/cms/libcrypto-shlib-cms_dd.o" => [ - "crypto/cms/cms_dd.c" - ], - "crypto/cms/libcrypto-shlib-cms_dh.o" => [ - "crypto/cms/cms_dh.c" - ], - "crypto/cms/libcrypto-shlib-cms_ec.o" => [ - "crypto/cms/cms_ec.c" - ], - "crypto/cms/libcrypto-shlib-cms_enc.o" => [ - "crypto/cms/cms_enc.c" - ], - "crypto/cms/libcrypto-shlib-cms_env.o" => [ - "crypto/cms/cms_env.c" - ], - "crypto/cms/libcrypto-shlib-cms_err.o" => [ - "crypto/cms/cms_err.c" - ], - "crypto/cms/libcrypto-shlib-cms_ess.o" => [ - "crypto/cms/cms_ess.c" - ], - "crypto/cms/libcrypto-shlib-cms_io.o" => [ - "crypto/cms/cms_io.c" - ], - "crypto/cms/libcrypto-shlib-cms_kari.o" => [ - "crypto/cms/cms_kari.c" - ], - "crypto/cms/libcrypto-shlib-cms_lib.o" => [ - "crypto/cms/cms_lib.c" - ], - "crypto/cms/libcrypto-shlib-cms_pwri.o" => [ - "crypto/cms/cms_pwri.c" - ], - "crypto/cms/libcrypto-shlib-cms_rsa.o" => [ - "crypto/cms/cms_rsa.c" - ], - "crypto/cms/libcrypto-shlib-cms_sd.o" => [ - "crypto/cms/cms_sd.c" - ], - "crypto/cms/libcrypto-shlib-cms_smime.o" => [ - "crypto/cms/cms_smime.c" - ], - "crypto/comp/libcrypto-lib-c_brotli.o" => [ - "crypto/comp/c_brotli.c" - ], - "crypto/comp/libcrypto-lib-c_zlib.o" => [ - "crypto/comp/c_zlib.c" - ], - "crypto/comp/libcrypto-lib-c_zstd.o" => [ - "crypto/comp/c_zstd.c" - ], - "crypto/comp/libcrypto-lib-comp_err.o" => [ - "crypto/comp/comp_err.c" - ], - "crypto/comp/libcrypto-lib-comp_lib.o" => [ - "crypto/comp/comp_lib.c" - ], - "crypto/comp/libcrypto-shlib-c_brotli.o" => [ - "crypto/comp/c_brotli.c" - ], - "crypto/comp/libcrypto-shlib-c_zlib.o" => [ - "crypto/comp/c_zlib.c" - ], - "crypto/comp/libcrypto-shlib-c_zstd.o" => [ - "crypto/comp/c_zstd.c" - ], - "crypto/comp/libcrypto-shlib-comp_err.o" => [ - "crypto/comp/comp_err.c" - ], - "crypto/comp/libcrypto-shlib-comp_lib.o" => [ - "crypto/comp/comp_lib.c" - ], - "crypto/conf/libcrypto-lib-conf_api.o" => [ - "crypto/conf/conf_api.c" - ], - "crypto/conf/libcrypto-lib-conf_def.o" => [ - "crypto/conf/conf_def.c" - ], - "crypto/conf/libcrypto-lib-conf_err.o" => [ - "crypto/conf/conf_err.c" - ], - "crypto/conf/libcrypto-lib-conf_lib.o" => [ - "crypto/conf/conf_lib.c" - ], - "crypto/conf/libcrypto-lib-conf_mall.o" => [ - "crypto/conf/conf_mall.c" - ], - "crypto/conf/libcrypto-lib-conf_mod.o" => [ - "crypto/conf/conf_mod.c" - ], - "crypto/conf/libcrypto-lib-conf_sap.o" => [ - "crypto/conf/conf_sap.c" - ], - "crypto/conf/libcrypto-lib-conf_ssl.o" => [ - "crypto/conf/conf_ssl.c" - ], - "crypto/conf/libcrypto-shlib-conf_api.o" => [ - "crypto/conf/conf_api.c" - ], - "crypto/conf/libcrypto-shlib-conf_def.o" => [ - "crypto/conf/conf_def.c" - ], - "crypto/conf/libcrypto-shlib-conf_err.o" => [ - "crypto/conf/conf_err.c" - ], - "crypto/conf/libcrypto-shlib-conf_lib.o" => [ - "crypto/conf/conf_lib.c" - ], - "crypto/conf/libcrypto-shlib-conf_mall.o" => [ - "crypto/conf/conf_mall.c" - ], - "crypto/conf/libcrypto-shlib-conf_mod.o" => [ - "crypto/conf/conf_mod.c" - ], - "crypto/conf/libcrypto-shlib-conf_sap.o" => [ - "crypto/conf/conf_sap.c" - ], - "crypto/conf/libcrypto-shlib-conf_ssl.o" => [ - "crypto/conf/conf_ssl.c" - ], - "crypto/crmf/libcrypto-lib-crmf_asn.o" => [ - "crypto/crmf/crmf_asn.c" - ], - "crypto/crmf/libcrypto-lib-crmf_err.o" => [ - "crypto/crmf/crmf_err.c" - ], - "crypto/crmf/libcrypto-lib-crmf_lib.o" => [ - "crypto/crmf/crmf_lib.c" - ], - "crypto/crmf/libcrypto-lib-crmf_pbm.o" => [ - "crypto/crmf/crmf_pbm.c" - ], - "crypto/crmf/libcrypto-shlib-crmf_asn.o" => [ - "crypto/crmf/crmf_asn.c" - ], - "crypto/crmf/libcrypto-shlib-crmf_err.o" => [ - "crypto/crmf/crmf_err.c" - ], - "crypto/crmf/libcrypto-shlib-crmf_lib.o" => [ - "crypto/crmf/crmf_lib.c" - ], - "crypto/crmf/libcrypto-shlib-crmf_pbm.o" => [ - "crypto/crmf/crmf_pbm.c" - ], - "crypto/ct/libcrypto-lib-ct_b64.o" => [ - "crypto/ct/ct_b64.c" - ], - "crypto/ct/libcrypto-lib-ct_err.o" => [ - "crypto/ct/ct_err.c" - ], - "crypto/ct/libcrypto-lib-ct_log.o" => [ - "crypto/ct/ct_log.c" - ], - "crypto/ct/libcrypto-lib-ct_oct.o" => [ - "crypto/ct/ct_oct.c" - ], - "crypto/ct/libcrypto-lib-ct_policy.o" => [ - "crypto/ct/ct_policy.c" - ], - "crypto/ct/libcrypto-lib-ct_prn.o" => [ - "crypto/ct/ct_prn.c" - ], - "crypto/ct/libcrypto-lib-ct_sct.o" => [ - "crypto/ct/ct_sct.c" - ], - "crypto/ct/libcrypto-lib-ct_sct_ctx.o" => [ - "crypto/ct/ct_sct_ctx.c" - ], - "crypto/ct/libcrypto-lib-ct_vfy.o" => [ - "crypto/ct/ct_vfy.c" - ], - "crypto/ct/libcrypto-lib-ct_x509v3.o" => [ - "crypto/ct/ct_x509v3.c" - ], - "crypto/ct/libcrypto-shlib-ct_b64.o" => [ - "crypto/ct/ct_b64.c" - ], - "crypto/ct/libcrypto-shlib-ct_err.o" => [ - "crypto/ct/ct_err.c" - ], - "crypto/ct/libcrypto-shlib-ct_log.o" => [ - "crypto/ct/ct_log.c" - ], - "crypto/ct/libcrypto-shlib-ct_oct.o" => [ - "crypto/ct/ct_oct.c" - ], - "crypto/ct/libcrypto-shlib-ct_policy.o" => [ - "crypto/ct/ct_policy.c" - ], - "crypto/ct/libcrypto-shlib-ct_prn.o" => [ - "crypto/ct/ct_prn.c" - ], - "crypto/ct/libcrypto-shlib-ct_sct.o" => [ - "crypto/ct/ct_sct.c" - ], - "crypto/ct/libcrypto-shlib-ct_sct_ctx.o" => [ - "crypto/ct/ct_sct_ctx.c" - ], - "crypto/ct/libcrypto-shlib-ct_vfy.o" => [ - "crypto/ct/ct_vfy.c" - ], - "crypto/ct/libcrypto-shlib-ct_x509v3.o" => [ - "crypto/ct/ct_x509v3.c" - ], - "crypto/des/libcrypto-lib-cbc_cksm.o" => [ - "crypto/des/cbc_cksm.c" - ], - "crypto/des/libcrypto-lib-cbc_enc.o" => [ - "crypto/des/cbc_enc.c" - ], - "crypto/des/libcrypto-lib-cfb64ede.o" => [ - "crypto/des/cfb64ede.c" - ], - "crypto/des/libcrypto-lib-cfb64enc.o" => [ - "crypto/des/cfb64enc.c" - ], - "crypto/des/libcrypto-lib-cfb_enc.o" => [ - "crypto/des/cfb_enc.c" - ], - "crypto/des/libcrypto-lib-des_enc.o" => [ - "crypto/des/des_enc.c" - ], - "crypto/des/libcrypto-lib-ecb3_enc.o" => [ - "crypto/des/ecb3_enc.c" - ], - "crypto/des/libcrypto-lib-ecb_enc.o" => [ - "crypto/des/ecb_enc.c" - ], - "crypto/des/libcrypto-lib-fcrypt.o" => [ - "crypto/des/fcrypt.c" - ], - "crypto/des/libcrypto-lib-fcrypt_b.o" => [ - "crypto/des/fcrypt_b.c" - ], - "crypto/des/libcrypto-lib-ofb64ede.o" => [ - "crypto/des/ofb64ede.c" - ], - "crypto/des/libcrypto-lib-ofb64enc.o" => [ - "crypto/des/ofb64enc.c" - ], - "crypto/des/libcrypto-lib-ofb_enc.o" => [ - "crypto/des/ofb_enc.c" - ], - "crypto/des/libcrypto-lib-pcbc_enc.o" => [ - "crypto/des/pcbc_enc.c" - ], - "crypto/des/libcrypto-lib-qud_cksm.o" => [ - "crypto/des/qud_cksm.c" - ], - "crypto/des/libcrypto-lib-rand_key.o" => [ - "crypto/des/rand_key.c" - ], - "crypto/des/libcrypto-lib-set_key.o" => [ - "crypto/des/set_key.c" - ], - "crypto/des/libcrypto-lib-str2key.o" => [ - "crypto/des/str2key.c" - ], - "crypto/des/libcrypto-lib-xcbc_enc.o" => [ - "crypto/des/xcbc_enc.c" - ], - "crypto/des/libcrypto-shlib-cbc_cksm.o" => [ - "crypto/des/cbc_cksm.c" - ], - "crypto/des/libcrypto-shlib-cbc_enc.o" => [ - "crypto/des/cbc_enc.c" - ], - "crypto/des/libcrypto-shlib-cfb64ede.o" => [ - "crypto/des/cfb64ede.c" - ], - "crypto/des/libcrypto-shlib-cfb64enc.o" => [ - "crypto/des/cfb64enc.c" - ], - "crypto/des/libcrypto-shlib-cfb_enc.o" => [ - "crypto/des/cfb_enc.c" - ], - "crypto/des/libcrypto-shlib-des_enc.o" => [ - "crypto/des/des_enc.c" - ], - "crypto/des/libcrypto-shlib-ecb3_enc.o" => [ - "crypto/des/ecb3_enc.c" - ], - "crypto/des/libcrypto-shlib-ecb_enc.o" => [ - "crypto/des/ecb_enc.c" - ], - "crypto/des/libcrypto-shlib-fcrypt.o" => [ - "crypto/des/fcrypt.c" - ], - "crypto/des/libcrypto-shlib-fcrypt_b.o" => [ - "crypto/des/fcrypt_b.c" - ], - "crypto/des/libcrypto-shlib-ofb64ede.o" => [ - "crypto/des/ofb64ede.c" - ], - "crypto/des/libcrypto-shlib-ofb64enc.o" => [ - "crypto/des/ofb64enc.c" - ], - "crypto/des/libcrypto-shlib-ofb_enc.o" => [ - "crypto/des/ofb_enc.c" - ], - "crypto/des/libcrypto-shlib-pcbc_enc.o" => [ - "crypto/des/pcbc_enc.c" - ], - "crypto/des/libcrypto-shlib-qud_cksm.o" => [ - "crypto/des/qud_cksm.c" - ], - "crypto/des/libcrypto-shlib-rand_key.o" => [ - "crypto/des/rand_key.c" - ], - "crypto/des/libcrypto-shlib-set_key.o" => [ - "crypto/des/set_key.c" - ], - "crypto/des/libcrypto-shlib-str2key.o" => [ - "crypto/des/str2key.c" - ], - "crypto/des/libcrypto-shlib-xcbc_enc.o" => [ - "crypto/des/xcbc_enc.c" - ], - "crypto/des/liblegacy-lib-des_enc.o" => [ - "crypto/des/des_enc.c" - ], - "crypto/des/liblegacy-lib-fcrypt_b.o" => [ - "crypto/des/fcrypt_b.c" - ], - "crypto/dh/libcrypto-lib-dh_ameth.o" => [ - "crypto/dh/dh_ameth.c" - ], - "crypto/dh/libcrypto-lib-dh_asn1.o" => [ - "crypto/dh/dh_asn1.c" - ], - "crypto/dh/libcrypto-lib-dh_backend.o" => [ - "crypto/dh/dh_backend.c" - ], - "crypto/dh/libcrypto-lib-dh_check.o" => [ - "crypto/dh/dh_check.c" - ], - "crypto/dh/libcrypto-lib-dh_depr.o" => [ - "crypto/dh/dh_depr.c" - ], - "crypto/dh/libcrypto-lib-dh_err.o" => [ - "crypto/dh/dh_err.c" - ], - "crypto/dh/libcrypto-lib-dh_gen.o" => [ - "crypto/dh/dh_gen.c" - ], - "crypto/dh/libcrypto-lib-dh_group_params.o" => [ - "crypto/dh/dh_group_params.c" - ], - "crypto/dh/libcrypto-lib-dh_kdf.o" => [ - "crypto/dh/dh_kdf.c" - ], - "crypto/dh/libcrypto-lib-dh_key.o" => [ - "crypto/dh/dh_key.c" - ], - "crypto/dh/libcrypto-lib-dh_lib.o" => [ - "crypto/dh/dh_lib.c" - ], - "crypto/dh/libcrypto-lib-dh_meth.o" => [ - "crypto/dh/dh_meth.c" - ], - "crypto/dh/libcrypto-lib-dh_pmeth.o" => [ - "crypto/dh/dh_pmeth.c" - ], - "crypto/dh/libcrypto-lib-dh_prn.o" => [ - "crypto/dh/dh_prn.c" - ], - "crypto/dh/libcrypto-lib-dh_rfc5114.o" => [ - "crypto/dh/dh_rfc5114.c" - ], - "crypto/dh/libcrypto-shlib-dh_ameth.o" => [ - "crypto/dh/dh_ameth.c" - ], - "crypto/dh/libcrypto-shlib-dh_asn1.o" => [ - "crypto/dh/dh_asn1.c" - ], - "crypto/dh/libcrypto-shlib-dh_backend.o" => [ - "crypto/dh/dh_backend.c" - ], - "crypto/dh/libcrypto-shlib-dh_check.o" => [ - "crypto/dh/dh_check.c" - ], - "crypto/dh/libcrypto-shlib-dh_depr.o" => [ - "crypto/dh/dh_depr.c" - ], - "crypto/dh/libcrypto-shlib-dh_err.o" => [ - "crypto/dh/dh_err.c" - ], - "crypto/dh/libcrypto-shlib-dh_gen.o" => [ - "crypto/dh/dh_gen.c" - ], - "crypto/dh/libcrypto-shlib-dh_group_params.o" => [ - "crypto/dh/dh_group_params.c" - ], - "crypto/dh/libcrypto-shlib-dh_kdf.o" => [ - "crypto/dh/dh_kdf.c" - ], - "crypto/dh/libcrypto-shlib-dh_key.o" => [ - "crypto/dh/dh_key.c" - ], - "crypto/dh/libcrypto-shlib-dh_lib.o" => [ - "crypto/dh/dh_lib.c" - ], - "crypto/dh/libcrypto-shlib-dh_meth.o" => [ - "crypto/dh/dh_meth.c" - ], - "crypto/dh/libcrypto-shlib-dh_pmeth.o" => [ - "crypto/dh/dh_pmeth.c" - ], - "crypto/dh/libcrypto-shlib-dh_prn.o" => [ - "crypto/dh/dh_prn.c" - ], - "crypto/dh/libcrypto-shlib-dh_rfc5114.o" => [ - "crypto/dh/dh_rfc5114.c" - ], - "crypto/dsa/libcrypto-lib-dsa_ameth.o" => [ - "crypto/dsa/dsa_ameth.c" - ], - "crypto/dsa/libcrypto-lib-dsa_asn1.o" => [ - "crypto/dsa/dsa_asn1.c" - ], - "crypto/dsa/libcrypto-lib-dsa_backend.o" => [ - "crypto/dsa/dsa_backend.c" - ], - "crypto/dsa/libcrypto-lib-dsa_check.o" => [ - "crypto/dsa/dsa_check.c" - ], - "crypto/dsa/libcrypto-lib-dsa_depr.o" => [ - "crypto/dsa/dsa_depr.c" - ], - "crypto/dsa/libcrypto-lib-dsa_err.o" => [ - "crypto/dsa/dsa_err.c" - ], - "crypto/dsa/libcrypto-lib-dsa_gen.o" => [ - "crypto/dsa/dsa_gen.c" - ], - "crypto/dsa/libcrypto-lib-dsa_key.o" => [ - "crypto/dsa/dsa_key.c" - ], - "crypto/dsa/libcrypto-lib-dsa_lib.o" => [ - "crypto/dsa/dsa_lib.c" - ], - "crypto/dsa/libcrypto-lib-dsa_meth.o" => [ - "crypto/dsa/dsa_meth.c" - ], - "crypto/dsa/libcrypto-lib-dsa_ossl.o" => [ - "crypto/dsa/dsa_ossl.c" - ], - "crypto/dsa/libcrypto-lib-dsa_pmeth.o" => [ - "crypto/dsa/dsa_pmeth.c" - ], - "crypto/dsa/libcrypto-lib-dsa_prn.o" => [ - "crypto/dsa/dsa_prn.c" - ], - "crypto/dsa/libcrypto-lib-dsa_sign.o" => [ - "crypto/dsa/dsa_sign.c" - ], - "crypto/dsa/libcrypto-lib-dsa_vrf.o" => [ - "crypto/dsa/dsa_vrf.c" - ], - "crypto/dsa/libcrypto-shlib-dsa_ameth.o" => [ - "crypto/dsa/dsa_ameth.c" - ], - "crypto/dsa/libcrypto-shlib-dsa_asn1.o" => [ - "crypto/dsa/dsa_asn1.c" - ], - "crypto/dsa/libcrypto-shlib-dsa_backend.o" => [ - "crypto/dsa/dsa_backend.c" - ], - "crypto/dsa/libcrypto-shlib-dsa_check.o" => [ - "crypto/dsa/dsa_check.c" - ], - "crypto/dsa/libcrypto-shlib-dsa_depr.o" => [ - "crypto/dsa/dsa_depr.c" - ], - "crypto/dsa/libcrypto-shlib-dsa_err.o" => [ - "crypto/dsa/dsa_err.c" - ], - "crypto/dsa/libcrypto-shlib-dsa_gen.o" => [ - "crypto/dsa/dsa_gen.c" - ], - "crypto/dsa/libcrypto-shlib-dsa_key.o" => [ - "crypto/dsa/dsa_key.c" - ], - "crypto/dsa/libcrypto-shlib-dsa_lib.o" => [ - "crypto/dsa/dsa_lib.c" - ], - "crypto/dsa/libcrypto-shlib-dsa_meth.o" => [ - "crypto/dsa/dsa_meth.c" - ], - "crypto/dsa/libcrypto-shlib-dsa_ossl.o" => [ - "crypto/dsa/dsa_ossl.c" - ], - "crypto/dsa/libcrypto-shlib-dsa_pmeth.o" => [ - "crypto/dsa/dsa_pmeth.c" - ], - "crypto/dsa/libcrypto-shlib-dsa_prn.o" => [ - "crypto/dsa/dsa_prn.c" - ], - "crypto/dsa/libcrypto-shlib-dsa_sign.o" => [ - "crypto/dsa/dsa_sign.c" - ], - "crypto/dsa/libcrypto-shlib-dsa_vrf.o" => [ - "crypto/dsa/dsa_vrf.c" - ], - "crypto/dso/libcrypto-lib-dso_dl.o" => [ - "crypto/dso/dso_dl.c" - ], - "crypto/dso/libcrypto-lib-dso_dlfcn.o" => [ - "crypto/dso/dso_dlfcn.c" - ], - "crypto/dso/libcrypto-lib-dso_err.o" => [ - "crypto/dso/dso_err.c" - ], - "crypto/dso/libcrypto-lib-dso_lib.o" => [ - "crypto/dso/dso_lib.c" - ], - "crypto/dso/libcrypto-lib-dso_openssl.o" => [ - "crypto/dso/dso_openssl.c" - ], - "crypto/dso/libcrypto-lib-dso_vms.o" => [ - "crypto/dso/dso_vms.c" - ], - "crypto/dso/libcrypto-lib-dso_win32.o" => [ - "crypto/dso/dso_win32.c" - ], - "crypto/dso/libcrypto-shlib-dso_dl.o" => [ - "crypto/dso/dso_dl.c" - ], - "crypto/dso/libcrypto-shlib-dso_dlfcn.o" => [ - "crypto/dso/dso_dlfcn.c" - ], - "crypto/dso/libcrypto-shlib-dso_err.o" => [ - "crypto/dso/dso_err.c" - ], - "crypto/dso/libcrypto-shlib-dso_lib.o" => [ - "crypto/dso/dso_lib.c" - ], - "crypto/dso/libcrypto-shlib-dso_openssl.o" => [ - "crypto/dso/dso_openssl.c" - ], - "crypto/dso/libcrypto-shlib-dso_vms.o" => [ - "crypto/dso/dso_vms.c" - ], - "crypto/dso/libcrypto-shlib-dso_win32.o" => [ - "crypto/dso/dso_win32.c" - ], - "crypto/ec/curve448/arch_32/libcrypto-lib-f_impl32.o" => [ - "crypto/ec/curve448/arch_32/f_impl32.c" - ], - "crypto/ec/curve448/arch_32/libcrypto-shlib-f_impl32.o" => [ - "crypto/ec/curve448/arch_32/f_impl32.c" - ], - "crypto/ec/curve448/arch_64/libcrypto-lib-f_impl64.o" => [ - "crypto/ec/curve448/arch_64/f_impl64.c" - ], - "crypto/ec/curve448/arch_64/libcrypto-shlib-f_impl64.o" => [ - "crypto/ec/curve448/arch_64/f_impl64.c" - ], - "crypto/ec/curve448/libcrypto-lib-curve448.o" => [ - "crypto/ec/curve448/curve448.c" - ], - "crypto/ec/curve448/libcrypto-lib-curve448_tables.o" => [ - "crypto/ec/curve448/curve448_tables.c" - ], - "crypto/ec/curve448/libcrypto-lib-eddsa.o" => [ - "crypto/ec/curve448/eddsa.c" - ], - "crypto/ec/curve448/libcrypto-lib-f_generic.o" => [ - "crypto/ec/curve448/f_generic.c" - ], - "crypto/ec/curve448/libcrypto-lib-scalar.o" => [ - "crypto/ec/curve448/scalar.c" - ], - "crypto/ec/curve448/libcrypto-shlib-curve448.o" => [ - "crypto/ec/curve448/curve448.c" - ], - "crypto/ec/curve448/libcrypto-shlib-curve448_tables.o" => [ - "crypto/ec/curve448/curve448_tables.c" - ], - "crypto/ec/curve448/libcrypto-shlib-eddsa.o" => [ - "crypto/ec/curve448/eddsa.c" - ], - "crypto/ec/curve448/libcrypto-shlib-f_generic.o" => [ - "crypto/ec/curve448/f_generic.c" - ], - "crypto/ec/curve448/libcrypto-shlib-scalar.o" => [ - "crypto/ec/curve448/scalar.c" - ], - "crypto/ec/libcrypto-lib-curve25519.o" => [ - "crypto/ec/curve25519.c" - ], - "crypto/ec/libcrypto-lib-ec2_oct.o" => [ - "crypto/ec/ec2_oct.c" - ], - "crypto/ec/libcrypto-lib-ec2_smpl.o" => [ - "crypto/ec/ec2_smpl.c" - ], - "crypto/ec/libcrypto-lib-ec_ameth.o" => [ - "crypto/ec/ec_ameth.c" - ], - "crypto/ec/libcrypto-lib-ec_asn1.o" => [ - "crypto/ec/ec_asn1.c" - ], - "crypto/ec/libcrypto-lib-ec_backend.o" => [ - "crypto/ec/ec_backend.c" - ], - "crypto/ec/libcrypto-lib-ec_check.o" => [ - "crypto/ec/ec_check.c" - ], - "crypto/ec/libcrypto-lib-ec_curve.o" => [ - "crypto/ec/ec_curve.c" - ], - "crypto/ec/libcrypto-lib-ec_cvt.o" => [ - "crypto/ec/ec_cvt.c" - ], - "crypto/ec/libcrypto-lib-ec_deprecated.o" => [ - "crypto/ec/ec_deprecated.c" - ], - "crypto/ec/libcrypto-lib-ec_err.o" => [ - "crypto/ec/ec_err.c" - ], - "crypto/ec/libcrypto-lib-ec_key.o" => [ - "crypto/ec/ec_key.c" - ], - "crypto/ec/libcrypto-lib-ec_kmeth.o" => [ - "crypto/ec/ec_kmeth.c" - ], - "crypto/ec/libcrypto-lib-ec_lib.o" => [ - "crypto/ec/ec_lib.c" - ], - "crypto/ec/libcrypto-lib-ec_mult.o" => [ - "crypto/ec/ec_mult.c" - ], - "crypto/ec/libcrypto-lib-ec_oct.o" => [ - "crypto/ec/ec_oct.c" - ], - "crypto/ec/libcrypto-lib-ec_pmeth.o" => [ - "crypto/ec/ec_pmeth.c" - ], - "crypto/ec/libcrypto-lib-ec_print.o" => [ - "crypto/ec/ec_print.c" - ], - "crypto/ec/libcrypto-lib-ecdh_kdf.o" => [ - "crypto/ec/ecdh_kdf.c" - ], - "crypto/ec/libcrypto-lib-ecdh_ossl.o" => [ - "crypto/ec/ecdh_ossl.c" - ], - "crypto/ec/libcrypto-lib-ecdsa_ossl.o" => [ - "crypto/ec/ecdsa_ossl.c" - ], - "crypto/ec/libcrypto-lib-ecdsa_sign.o" => [ - "crypto/ec/ecdsa_sign.c" - ], - "crypto/ec/libcrypto-lib-ecdsa_vrf.o" => [ - "crypto/ec/ecdsa_vrf.c" - ], - "crypto/ec/libcrypto-lib-eck_prn.o" => [ - "crypto/ec/eck_prn.c" - ], - "crypto/ec/libcrypto-lib-ecp_mont.o" => [ - "crypto/ec/ecp_mont.c" - ], - "crypto/ec/libcrypto-lib-ecp_nist.o" => [ - "crypto/ec/ecp_nist.c" - ], - "crypto/ec/libcrypto-lib-ecp_nistp224.o" => [ - "crypto/ec/ecp_nistp224.c" - ], - "crypto/ec/libcrypto-lib-ecp_nistp256.o" => [ - "crypto/ec/ecp_nistp256.c" - ], - "crypto/ec/libcrypto-lib-ecp_nistp384.o" => [ - "crypto/ec/ecp_nistp384.c" - ], - "crypto/ec/libcrypto-lib-ecp_nistp521.o" => [ - "crypto/ec/ecp_nistp521.c" - ], - "crypto/ec/libcrypto-lib-ecp_nistputil.o" => [ - "crypto/ec/ecp_nistputil.c" - ], - "crypto/ec/libcrypto-lib-ecp_nistz256-x86_64.o" => [ - "crypto/ec/ecp_nistz256-x86_64.s" - ], - "crypto/ec/libcrypto-lib-ecp_nistz256.o" => [ - "crypto/ec/ecp_nistz256.c" - ], - "crypto/ec/libcrypto-lib-ecp_oct.o" => [ - "crypto/ec/ecp_oct.c" - ], - "crypto/ec/libcrypto-lib-ecp_smpl.o" => [ - "crypto/ec/ecp_smpl.c" - ], - "crypto/ec/libcrypto-lib-ecx_backend.o" => [ - "crypto/ec/ecx_backend.c" - ], - "crypto/ec/libcrypto-lib-ecx_key.o" => [ - "crypto/ec/ecx_key.c" - ], - "crypto/ec/libcrypto-lib-ecx_meth.o" => [ - "crypto/ec/ecx_meth.c" - ], - "crypto/ec/libcrypto-lib-x25519-x86_64.o" => [ - "crypto/ec/x25519-x86_64.s" - ], - "crypto/ec/libcrypto-shlib-curve25519.o" => [ - "crypto/ec/curve25519.c" - ], - "crypto/ec/libcrypto-shlib-ec2_oct.o" => [ - "crypto/ec/ec2_oct.c" - ], - "crypto/ec/libcrypto-shlib-ec2_smpl.o" => [ - "crypto/ec/ec2_smpl.c" - ], - "crypto/ec/libcrypto-shlib-ec_ameth.o" => [ - "crypto/ec/ec_ameth.c" - ], - "crypto/ec/libcrypto-shlib-ec_asn1.o" => [ - "crypto/ec/ec_asn1.c" - ], - "crypto/ec/libcrypto-shlib-ec_backend.o" => [ - "crypto/ec/ec_backend.c" - ], - "crypto/ec/libcrypto-shlib-ec_check.o" => [ - "crypto/ec/ec_check.c" - ], - "crypto/ec/libcrypto-shlib-ec_curve.o" => [ - "crypto/ec/ec_curve.c" - ], - "crypto/ec/libcrypto-shlib-ec_cvt.o" => [ - "crypto/ec/ec_cvt.c" - ], - "crypto/ec/libcrypto-shlib-ec_deprecated.o" => [ - "crypto/ec/ec_deprecated.c" - ], - "crypto/ec/libcrypto-shlib-ec_err.o" => [ - "crypto/ec/ec_err.c" - ], - "crypto/ec/libcrypto-shlib-ec_key.o" => [ - "crypto/ec/ec_key.c" - ], - "crypto/ec/libcrypto-shlib-ec_kmeth.o" => [ - "crypto/ec/ec_kmeth.c" - ], - "crypto/ec/libcrypto-shlib-ec_lib.o" => [ - "crypto/ec/ec_lib.c" - ], - "crypto/ec/libcrypto-shlib-ec_mult.o" => [ - "crypto/ec/ec_mult.c" - ], - "crypto/ec/libcrypto-shlib-ec_oct.o" => [ - "crypto/ec/ec_oct.c" - ], - "crypto/ec/libcrypto-shlib-ec_pmeth.o" => [ - "crypto/ec/ec_pmeth.c" - ], - "crypto/ec/libcrypto-shlib-ec_print.o" => [ - "crypto/ec/ec_print.c" - ], - "crypto/ec/libcrypto-shlib-ecdh_kdf.o" => [ - "crypto/ec/ecdh_kdf.c" - ], - "crypto/ec/libcrypto-shlib-ecdh_ossl.o" => [ - "crypto/ec/ecdh_ossl.c" - ], - "crypto/ec/libcrypto-shlib-ecdsa_ossl.o" => [ - "crypto/ec/ecdsa_ossl.c" - ], - "crypto/ec/libcrypto-shlib-ecdsa_sign.o" => [ - "crypto/ec/ecdsa_sign.c" - ], - "crypto/ec/libcrypto-shlib-ecdsa_vrf.o" => [ - "crypto/ec/ecdsa_vrf.c" - ], - "crypto/ec/libcrypto-shlib-eck_prn.o" => [ - "crypto/ec/eck_prn.c" - ], - "crypto/ec/libcrypto-shlib-ecp_mont.o" => [ - "crypto/ec/ecp_mont.c" - ], - "crypto/ec/libcrypto-shlib-ecp_nist.o" => [ - "crypto/ec/ecp_nist.c" - ], - "crypto/ec/libcrypto-shlib-ecp_nistp224.o" => [ - "crypto/ec/ecp_nistp224.c" - ], - "crypto/ec/libcrypto-shlib-ecp_nistp256.o" => [ - "crypto/ec/ecp_nistp256.c" - ], - "crypto/ec/libcrypto-shlib-ecp_nistp384.o" => [ - "crypto/ec/ecp_nistp384.c" - ], - "crypto/ec/libcrypto-shlib-ecp_nistp521.o" => [ - "crypto/ec/ecp_nistp521.c" - ], - "crypto/ec/libcrypto-shlib-ecp_nistputil.o" => [ - "crypto/ec/ecp_nistputil.c" - ], - "crypto/ec/libcrypto-shlib-ecp_nistz256-x86_64.o" => [ - "crypto/ec/ecp_nistz256-x86_64.s" - ], - "crypto/ec/libcrypto-shlib-ecp_nistz256.o" => [ - "crypto/ec/ecp_nistz256.c" - ], - "crypto/ec/libcrypto-shlib-ecp_oct.o" => [ - "crypto/ec/ecp_oct.c" - ], - "crypto/ec/libcrypto-shlib-ecp_smpl.o" => [ - "crypto/ec/ecp_smpl.c" - ], - "crypto/ec/libcrypto-shlib-ecx_backend.o" => [ - "crypto/ec/ecx_backend.c" - ], - "crypto/ec/libcrypto-shlib-ecx_key.o" => [ - "crypto/ec/ecx_key.c" - ], - "crypto/ec/libcrypto-shlib-ecx_meth.o" => [ - "crypto/ec/ecx_meth.c" - ], - "crypto/ec/libcrypto-shlib-x25519-x86_64.o" => [ - "crypto/ec/x25519-x86_64.s" - ], - "crypto/encode_decode/libcrypto-lib-decoder_err.o" => [ - "crypto/encode_decode/decoder_err.c" - ], - "crypto/encode_decode/libcrypto-lib-decoder_lib.o" => [ - "crypto/encode_decode/decoder_lib.c" - ], - "crypto/encode_decode/libcrypto-lib-decoder_meth.o" => [ - "crypto/encode_decode/decoder_meth.c" - ], - "crypto/encode_decode/libcrypto-lib-decoder_pkey.o" => [ - "crypto/encode_decode/decoder_pkey.c" - ], - "crypto/encode_decode/libcrypto-lib-encoder_err.o" => [ - "crypto/encode_decode/encoder_err.c" - ], - "crypto/encode_decode/libcrypto-lib-encoder_lib.o" => [ - "crypto/encode_decode/encoder_lib.c" - ], - "crypto/encode_decode/libcrypto-lib-encoder_meth.o" => [ - "crypto/encode_decode/encoder_meth.c" - ], - "crypto/encode_decode/libcrypto-lib-encoder_pkey.o" => [ - "crypto/encode_decode/encoder_pkey.c" - ], - "crypto/encode_decode/libcrypto-shlib-decoder_err.o" => [ - "crypto/encode_decode/decoder_err.c" - ], - "crypto/encode_decode/libcrypto-shlib-decoder_lib.o" => [ - "crypto/encode_decode/decoder_lib.c" - ], - "crypto/encode_decode/libcrypto-shlib-decoder_meth.o" => [ - "crypto/encode_decode/decoder_meth.c" - ], - "crypto/encode_decode/libcrypto-shlib-decoder_pkey.o" => [ - "crypto/encode_decode/decoder_pkey.c" - ], - "crypto/encode_decode/libcrypto-shlib-encoder_err.o" => [ - "crypto/encode_decode/encoder_err.c" - ], - "crypto/encode_decode/libcrypto-shlib-encoder_lib.o" => [ - "crypto/encode_decode/encoder_lib.c" - ], - "crypto/encode_decode/libcrypto-shlib-encoder_meth.o" => [ - "crypto/encode_decode/encoder_meth.c" - ], - "crypto/encode_decode/libcrypto-shlib-encoder_pkey.o" => [ - "crypto/encode_decode/encoder_pkey.c" - ], - "crypto/engine/libcrypto-lib-eng_all.o" => [ - "crypto/engine/eng_all.c" - ], - "crypto/engine/libcrypto-lib-eng_cnf.o" => [ - "crypto/engine/eng_cnf.c" - ], - "crypto/engine/libcrypto-lib-eng_ctrl.o" => [ - "crypto/engine/eng_ctrl.c" - ], - "crypto/engine/libcrypto-lib-eng_dyn.o" => [ - "crypto/engine/eng_dyn.c" - ], - "crypto/engine/libcrypto-lib-eng_err.o" => [ - "crypto/engine/eng_err.c" - ], - "crypto/engine/libcrypto-lib-eng_fat.o" => [ - "crypto/engine/eng_fat.c" - ], - "crypto/engine/libcrypto-lib-eng_init.o" => [ - "crypto/engine/eng_init.c" - ], - "crypto/engine/libcrypto-lib-eng_lib.o" => [ - "crypto/engine/eng_lib.c" - ], - "crypto/engine/libcrypto-lib-eng_list.o" => [ - "crypto/engine/eng_list.c" - ], - "crypto/engine/libcrypto-lib-eng_openssl.o" => [ - "crypto/engine/eng_openssl.c" - ], - "crypto/engine/libcrypto-lib-eng_pkey.o" => [ - "crypto/engine/eng_pkey.c" - ], - "crypto/engine/libcrypto-lib-eng_rdrand.o" => [ - "crypto/engine/eng_rdrand.c" - ], - "crypto/engine/libcrypto-lib-eng_table.o" => [ - "crypto/engine/eng_table.c" - ], - "crypto/engine/libcrypto-lib-tb_asnmth.o" => [ - "crypto/engine/tb_asnmth.c" - ], - "crypto/engine/libcrypto-lib-tb_cipher.o" => [ - "crypto/engine/tb_cipher.c" - ], - "crypto/engine/libcrypto-lib-tb_dh.o" => [ - "crypto/engine/tb_dh.c" - ], - "crypto/engine/libcrypto-lib-tb_digest.o" => [ - "crypto/engine/tb_digest.c" - ], - "crypto/engine/libcrypto-lib-tb_dsa.o" => [ - "crypto/engine/tb_dsa.c" - ], - "crypto/engine/libcrypto-lib-tb_eckey.o" => [ - "crypto/engine/tb_eckey.c" - ], - "crypto/engine/libcrypto-lib-tb_pkmeth.o" => [ - "crypto/engine/tb_pkmeth.c" - ], - "crypto/engine/libcrypto-lib-tb_rand.o" => [ - "crypto/engine/tb_rand.c" - ], - "crypto/engine/libcrypto-lib-tb_rsa.o" => [ - "crypto/engine/tb_rsa.c" - ], - "crypto/engine/libcrypto-shlib-eng_all.o" => [ - "crypto/engine/eng_all.c" - ], - "crypto/engine/libcrypto-shlib-eng_cnf.o" => [ - "crypto/engine/eng_cnf.c" - ], - "crypto/engine/libcrypto-shlib-eng_ctrl.o" => [ - "crypto/engine/eng_ctrl.c" - ], - "crypto/engine/libcrypto-shlib-eng_dyn.o" => [ - "crypto/engine/eng_dyn.c" - ], - "crypto/engine/libcrypto-shlib-eng_err.o" => [ - "crypto/engine/eng_err.c" - ], - "crypto/engine/libcrypto-shlib-eng_fat.o" => [ - "crypto/engine/eng_fat.c" - ], - "crypto/engine/libcrypto-shlib-eng_init.o" => [ - "crypto/engine/eng_init.c" - ], - "crypto/engine/libcrypto-shlib-eng_lib.o" => [ - "crypto/engine/eng_lib.c" - ], - "crypto/engine/libcrypto-shlib-eng_list.o" => [ - "crypto/engine/eng_list.c" - ], - "crypto/engine/libcrypto-shlib-eng_openssl.o" => [ - "crypto/engine/eng_openssl.c" - ], - "crypto/engine/libcrypto-shlib-eng_pkey.o" => [ - "crypto/engine/eng_pkey.c" - ], - "crypto/engine/libcrypto-shlib-eng_rdrand.o" => [ - "crypto/engine/eng_rdrand.c" - ], - "crypto/engine/libcrypto-shlib-eng_table.o" => [ - "crypto/engine/eng_table.c" - ], - "crypto/engine/libcrypto-shlib-tb_asnmth.o" => [ - "crypto/engine/tb_asnmth.c" - ], - "crypto/engine/libcrypto-shlib-tb_cipher.o" => [ - "crypto/engine/tb_cipher.c" - ], - "crypto/engine/libcrypto-shlib-tb_dh.o" => [ - "crypto/engine/tb_dh.c" - ], - "crypto/engine/libcrypto-shlib-tb_digest.o" => [ - "crypto/engine/tb_digest.c" - ], - "crypto/engine/libcrypto-shlib-tb_dsa.o" => [ - "crypto/engine/tb_dsa.c" - ], - "crypto/engine/libcrypto-shlib-tb_eckey.o" => [ - "crypto/engine/tb_eckey.c" - ], - "crypto/engine/libcrypto-shlib-tb_pkmeth.o" => [ - "crypto/engine/tb_pkmeth.c" - ], - "crypto/engine/libcrypto-shlib-tb_rand.o" => [ - "crypto/engine/tb_rand.c" - ], - "crypto/engine/libcrypto-shlib-tb_rsa.o" => [ - "crypto/engine/tb_rsa.c" - ], - "crypto/err/libcrypto-lib-err.o" => [ - "crypto/err/err.c" - ], - "crypto/err/libcrypto-lib-err_all.o" => [ - "crypto/err/err_all.c" - ], - "crypto/err/libcrypto-lib-err_all_legacy.o" => [ - "crypto/err/err_all_legacy.c" - ], - "crypto/err/libcrypto-lib-err_blocks.o" => [ - "crypto/err/err_blocks.c" - ], - "crypto/err/libcrypto-lib-err_mark.o" => [ - "crypto/err/err_mark.c" - ], - "crypto/err/libcrypto-lib-err_prn.o" => [ - "crypto/err/err_prn.c" - ], - "crypto/err/libcrypto-lib-err_save.o" => [ - "crypto/err/err_save.c" - ], - "crypto/err/libcrypto-shlib-err.o" => [ - "crypto/err/err.c" - ], - "crypto/err/libcrypto-shlib-err_all.o" => [ - "crypto/err/err_all.c" - ], - "crypto/err/libcrypto-shlib-err_all_legacy.o" => [ - "crypto/err/err_all_legacy.c" - ], - "crypto/err/libcrypto-shlib-err_blocks.o" => [ - "crypto/err/err_blocks.c" - ], - "crypto/err/libcrypto-shlib-err_mark.o" => [ - "crypto/err/err_mark.c" - ], - "crypto/err/libcrypto-shlib-err_prn.o" => [ - "crypto/err/err_prn.c" - ], - "crypto/err/libcrypto-shlib-err_save.o" => [ - "crypto/err/err_save.c" - ], - "crypto/ess/libcrypto-lib-ess_asn1.o" => [ - "crypto/ess/ess_asn1.c" - ], - "crypto/ess/libcrypto-lib-ess_err.o" => [ - "crypto/ess/ess_err.c" - ], - "crypto/ess/libcrypto-lib-ess_lib.o" => [ - "crypto/ess/ess_lib.c" - ], - "crypto/ess/libcrypto-shlib-ess_asn1.o" => [ - "crypto/ess/ess_asn1.c" - ], - "crypto/ess/libcrypto-shlib-ess_err.o" => [ - "crypto/ess/ess_err.c" - ], - "crypto/ess/libcrypto-shlib-ess_lib.o" => [ - "crypto/ess/ess_lib.c" - ], - "crypto/evp/libcrypto-lib-asymcipher.o" => [ - "crypto/evp/asymcipher.c" - ], - "crypto/evp/libcrypto-lib-bio_b64.o" => [ - "crypto/evp/bio_b64.c" - ], - "crypto/evp/libcrypto-lib-bio_enc.o" => [ - "crypto/evp/bio_enc.c" - ], - "crypto/evp/libcrypto-lib-bio_md.o" => [ - "crypto/evp/bio_md.c" - ], - "crypto/evp/libcrypto-lib-bio_ok.o" => [ - "crypto/evp/bio_ok.c" - ], - "crypto/evp/libcrypto-lib-c_allc.o" => [ - "crypto/evp/c_allc.c" - ], - "crypto/evp/libcrypto-lib-c_alld.o" => [ - "crypto/evp/c_alld.c" - ], - "crypto/evp/libcrypto-lib-cmeth_lib.o" => [ - "crypto/evp/cmeth_lib.c" - ], - "crypto/evp/libcrypto-lib-ctrl_params_translate.o" => [ - "crypto/evp/ctrl_params_translate.c" - ], - "crypto/evp/libcrypto-lib-dh_ctrl.o" => [ - "crypto/evp/dh_ctrl.c" - ], - "crypto/evp/libcrypto-lib-dh_support.o" => [ - "crypto/evp/dh_support.c" - ], - "crypto/evp/libcrypto-lib-digest.o" => [ - "crypto/evp/digest.c" - ], - "crypto/evp/libcrypto-lib-dsa_ctrl.o" => [ - "crypto/evp/dsa_ctrl.c" - ], - "crypto/evp/libcrypto-lib-e_aes.o" => [ - "crypto/evp/e_aes.c" - ], - "crypto/evp/libcrypto-lib-e_aes_cbc_hmac_sha1.o" => [ - "crypto/evp/e_aes_cbc_hmac_sha1.c" - ], - "crypto/evp/libcrypto-lib-e_aes_cbc_hmac_sha256.o" => [ - "crypto/evp/e_aes_cbc_hmac_sha256.c" - ], - "crypto/evp/libcrypto-lib-e_aria.o" => [ - "crypto/evp/e_aria.c" - ], - "crypto/evp/libcrypto-lib-e_bf.o" => [ - "crypto/evp/e_bf.c" - ], - "crypto/evp/libcrypto-lib-e_camellia.o" => [ - "crypto/evp/e_camellia.c" - ], - "crypto/evp/libcrypto-lib-e_cast.o" => [ - "crypto/evp/e_cast.c" - ], - "crypto/evp/libcrypto-lib-e_chacha20_poly1305.o" => [ - "crypto/evp/e_chacha20_poly1305.c" - ], - "crypto/evp/libcrypto-lib-e_des.o" => [ - "crypto/evp/e_des.c" - ], - "crypto/evp/libcrypto-lib-e_des3.o" => [ - "crypto/evp/e_des3.c" - ], - "crypto/evp/libcrypto-lib-e_idea.o" => [ - "crypto/evp/e_idea.c" - ], - "crypto/evp/libcrypto-lib-e_null.o" => [ - "crypto/evp/e_null.c" - ], - "crypto/evp/libcrypto-lib-e_old.o" => [ - "crypto/evp/e_old.c" - ], - "crypto/evp/libcrypto-lib-e_rc2.o" => [ - "crypto/evp/e_rc2.c" - ], - "crypto/evp/libcrypto-lib-e_rc4.o" => [ - "crypto/evp/e_rc4.c" - ], - "crypto/evp/libcrypto-lib-e_rc4_hmac_md5.o" => [ - "crypto/evp/e_rc4_hmac_md5.c" - ], - "crypto/evp/libcrypto-lib-e_rc5.o" => [ - "crypto/evp/e_rc5.c" - ], - "crypto/evp/libcrypto-lib-e_seed.o" => [ - "crypto/evp/e_seed.c" - ], - "crypto/evp/libcrypto-lib-e_sm4.o" => [ - "crypto/evp/e_sm4.c" - ], - "crypto/evp/libcrypto-lib-e_xcbc_d.o" => [ - "crypto/evp/e_xcbc_d.c" - ], - "crypto/evp/libcrypto-lib-ec_ctrl.o" => [ - "crypto/evp/ec_ctrl.c" - ], - "crypto/evp/libcrypto-lib-ec_support.o" => [ - "crypto/evp/ec_support.c" - ], - "crypto/evp/libcrypto-lib-encode.o" => [ - "crypto/evp/encode.c" - ], - "crypto/evp/libcrypto-lib-evp_cnf.o" => [ - "crypto/evp/evp_cnf.c" - ], - "crypto/evp/libcrypto-lib-evp_enc.o" => [ - "crypto/evp/evp_enc.c" - ], - "crypto/evp/libcrypto-lib-evp_err.o" => [ - "crypto/evp/evp_err.c" - ], - "crypto/evp/libcrypto-lib-evp_fetch.o" => [ - "crypto/evp/evp_fetch.c" - ], - "crypto/evp/libcrypto-lib-evp_key.o" => [ - "crypto/evp/evp_key.c" - ], - "crypto/evp/libcrypto-lib-evp_lib.o" => [ - "crypto/evp/evp_lib.c" - ], - "crypto/evp/libcrypto-lib-evp_pbe.o" => [ - "crypto/evp/evp_pbe.c" - ], - "crypto/evp/libcrypto-lib-evp_pkey.o" => [ - "crypto/evp/evp_pkey.c" - ], - "crypto/evp/libcrypto-lib-evp_rand.o" => [ - "crypto/evp/evp_rand.c" - ], - "crypto/evp/libcrypto-lib-evp_utils.o" => [ - "crypto/evp/evp_utils.c" - ], - "crypto/evp/libcrypto-lib-exchange.o" => [ - "crypto/evp/exchange.c" - ], - "crypto/evp/libcrypto-lib-kdf_lib.o" => [ - "crypto/evp/kdf_lib.c" - ], - "crypto/evp/libcrypto-lib-kdf_meth.o" => [ - "crypto/evp/kdf_meth.c" - ], - "crypto/evp/libcrypto-lib-kem.o" => [ - "crypto/evp/kem.c" - ], - "crypto/evp/libcrypto-lib-keymgmt_lib.o" => [ - "crypto/evp/keymgmt_lib.c" - ], - "crypto/evp/libcrypto-lib-keymgmt_meth.o" => [ - "crypto/evp/keymgmt_meth.c" - ], - "crypto/evp/libcrypto-lib-legacy_blake2.o" => [ - "crypto/evp/legacy_blake2.c" - ], - "crypto/evp/libcrypto-lib-legacy_md4.o" => [ - "crypto/evp/legacy_md4.c" - ], - "crypto/evp/libcrypto-lib-legacy_md5.o" => [ - "crypto/evp/legacy_md5.c" - ], - "crypto/evp/libcrypto-lib-legacy_md5_sha1.o" => [ - "crypto/evp/legacy_md5_sha1.c" - ], - "crypto/evp/libcrypto-lib-legacy_ripemd.o" => [ - "crypto/evp/legacy_ripemd.c" - ], - "crypto/evp/libcrypto-lib-legacy_sha.o" => [ - "crypto/evp/legacy_sha.c" - ], - "crypto/evp/libcrypto-lib-legacy_wp.o" => [ - "crypto/evp/legacy_wp.c" - ], - "crypto/evp/libcrypto-lib-m_null.o" => [ - "crypto/evp/m_null.c" - ], - "crypto/evp/libcrypto-lib-m_sigver.o" => [ - "crypto/evp/m_sigver.c" - ], - "crypto/evp/libcrypto-lib-mac_lib.o" => [ - "crypto/evp/mac_lib.c" - ], - "crypto/evp/libcrypto-lib-mac_meth.o" => [ - "crypto/evp/mac_meth.c" - ], - "crypto/evp/libcrypto-lib-names.o" => [ - "crypto/evp/names.c" - ], - "crypto/evp/libcrypto-lib-p5_crpt.o" => [ - "crypto/evp/p5_crpt.c" - ], - "crypto/evp/libcrypto-lib-p5_crpt2.o" => [ - "crypto/evp/p5_crpt2.c" - ], - "crypto/evp/libcrypto-lib-p_dec.o" => [ - "crypto/evp/p_dec.c" - ], - "crypto/evp/libcrypto-lib-p_enc.o" => [ - "crypto/evp/p_enc.c" - ], - "crypto/evp/libcrypto-lib-p_legacy.o" => [ - "crypto/evp/p_legacy.c" - ], - "crypto/evp/libcrypto-lib-p_lib.o" => [ - "crypto/evp/p_lib.c" - ], - "crypto/evp/libcrypto-lib-p_open.o" => [ - "crypto/evp/p_open.c" - ], - "crypto/evp/libcrypto-lib-p_seal.o" => [ - "crypto/evp/p_seal.c" - ], - "crypto/evp/libcrypto-lib-p_sign.o" => [ - "crypto/evp/p_sign.c" - ], - "crypto/evp/libcrypto-lib-p_verify.o" => [ - "crypto/evp/p_verify.c" - ], - "crypto/evp/libcrypto-lib-pbe_scrypt.o" => [ - "crypto/evp/pbe_scrypt.c" - ], - "crypto/evp/libcrypto-lib-pmeth_check.o" => [ - "crypto/evp/pmeth_check.c" - ], - "crypto/evp/libcrypto-lib-pmeth_gn.o" => [ - "crypto/evp/pmeth_gn.c" - ], - "crypto/evp/libcrypto-lib-pmeth_lib.o" => [ - "crypto/evp/pmeth_lib.c" - ], - "crypto/evp/libcrypto-lib-s_lib.o" => [ - "crypto/evp/s_lib.c" - ], - "crypto/evp/libcrypto-lib-signature.o" => [ - "crypto/evp/signature.c" - ], - "crypto/evp/libcrypto-lib-skeymgmt_meth.o" => [ - "crypto/evp/skeymgmt_meth.c" - ], - "crypto/evp/libcrypto-shlib-asymcipher.o" => [ - "crypto/evp/asymcipher.c" - ], - "crypto/evp/libcrypto-shlib-bio_b64.o" => [ - "crypto/evp/bio_b64.c" - ], - "crypto/evp/libcrypto-shlib-bio_enc.o" => [ - "crypto/evp/bio_enc.c" - ], - "crypto/evp/libcrypto-shlib-bio_md.o" => [ - "crypto/evp/bio_md.c" - ], - "crypto/evp/libcrypto-shlib-bio_ok.o" => [ - "crypto/evp/bio_ok.c" - ], - "crypto/evp/libcrypto-shlib-c_allc.o" => [ - "crypto/evp/c_allc.c" - ], - "crypto/evp/libcrypto-shlib-c_alld.o" => [ - "crypto/evp/c_alld.c" - ], - "crypto/evp/libcrypto-shlib-cmeth_lib.o" => [ - "crypto/evp/cmeth_lib.c" - ], - "crypto/evp/libcrypto-shlib-ctrl_params_translate.o" => [ - "crypto/evp/ctrl_params_translate.c" - ], - "crypto/evp/libcrypto-shlib-dh_ctrl.o" => [ - "crypto/evp/dh_ctrl.c" - ], - "crypto/evp/libcrypto-shlib-dh_support.o" => [ - "crypto/evp/dh_support.c" - ], - "crypto/evp/libcrypto-shlib-digest.o" => [ - "crypto/evp/digest.c" - ], - "crypto/evp/libcrypto-shlib-dsa_ctrl.o" => [ - "crypto/evp/dsa_ctrl.c" - ], - "crypto/evp/libcrypto-shlib-e_aes.o" => [ - "crypto/evp/e_aes.c" - ], - "crypto/evp/libcrypto-shlib-e_aes_cbc_hmac_sha1.o" => [ - "crypto/evp/e_aes_cbc_hmac_sha1.c" - ], - "crypto/evp/libcrypto-shlib-e_aes_cbc_hmac_sha256.o" => [ - "crypto/evp/e_aes_cbc_hmac_sha256.c" - ], - "crypto/evp/libcrypto-shlib-e_aria.o" => [ - "crypto/evp/e_aria.c" - ], - "crypto/evp/libcrypto-shlib-e_bf.o" => [ - "crypto/evp/e_bf.c" - ], - "crypto/evp/libcrypto-shlib-e_camellia.o" => [ - "crypto/evp/e_camellia.c" - ], - "crypto/evp/libcrypto-shlib-e_cast.o" => [ - "crypto/evp/e_cast.c" - ], - "crypto/evp/libcrypto-shlib-e_chacha20_poly1305.o" => [ - "crypto/evp/e_chacha20_poly1305.c" - ], - "crypto/evp/libcrypto-shlib-e_des.o" => [ - "crypto/evp/e_des.c" - ], - "crypto/evp/libcrypto-shlib-e_des3.o" => [ - "crypto/evp/e_des3.c" - ], - "crypto/evp/libcrypto-shlib-e_idea.o" => [ - "crypto/evp/e_idea.c" - ], - "crypto/evp/libcrypto-shlib-e_null.o" => [ - "crypto/evp/e_null.c" - ], - "crypto/evp/libcrypto-shlib-e_old.o" => [ - "crypto/evp/e_old.c" - ], - "crypto/evp/libcrypto-shlib-e_rc2.o" => [ - "crypto/evp/e_rc2.c" - ], - "crypto/evp/libcrypto-shlib-e_rc4.o" => [ - "crypto/evp/e_rc4.c" - ], - "crypto/evp/libcrypto-shlib-e_rc4_hmac_md5.o" => [ - "crypto/evp/e_rc4_hmac_md5.c" - ], - "crypto/evp/libcrypto-shlib-e_rc5.o" => [ - "crypto/evp/e_rc5.c" - ], - "crypto/evp/libcrypto-shlib-e_seed.o" => [ - "crypto/evp/e_seed.c" - ], - "crypto/evp/libcrypto-shlib-e_sm4.o" => [ - "crypto/evp/e_sm4.c" - ], - "crypto/evp/libcrypto-shlib-e_xcbc_d.o" => [ - "crypto/evp/e_xcbc_d.c" - ], - "crypto/evp/libcrypto-shlib-ec_ctrl.o" => [ - "crypto/evp/ec_ctrl.c" - ], - "crypto/evp/libcrypto-shlib-ec_support.o" => [ - "crypto/evp/ec_support.c" - ], - "crypto/evp/libcrypto-shlib-encode.o" => [ - "crypto/evp/encode.c" - ], - "crypto/evp/libcrypto-shlib-evp_cnf.o" => [ - "crypto/evp/evp_cnf.c" - ], - "crypto/evp/libcrypto-shlib-evp_enc.o" => [ - "crypto/evp/evp_enc.c" - ], - "crypto/evp/libcrypto-shlib-evp_err.o" => [ - "crypto/evp/evp_err.c" - ], - "crypto/evp/libcrypto-shlib-evp_fetch.o" => [ - "crypto/evp/evp_fetch.c" - ], - "crypto/evp/libcrypto-shlib-evp_key.o" => [ - "crypto/evp/evp_key.c" - ], - "crypto/evp/libcrypto-shlib-evp_lib.o" => [ - "crypto/evp/evp_lib.c" - ], - "crypto/evp/libcrypto-shlib-evp_pbe.o" => [ - "crypto/evp/evp_pbe.c" - ], - "crypto/evp/libcrypto-shlib-evp_pkey.o" => [ - "crypto/evp/evp_pkey.c" - ], - "crypto/evp/libcrypto-shlib-evp_rand.o" => [ - "crypto/evp/evp_rand.c" - ], - "crypto/evp/libcrypto-shlib-evp_utils.o" => [ - "crypto/evp/evp_utils.c" - ], - "crypto/evp/libcrypto-shlib-exchange.o" => [ - "crypto/evp/exchange.c" - ], - "crypto/evp/libcrypto-shlib-kdf_lib.o" => [ - "crypto/evp/kdf_lib.c" - ], - "crypto/evp/libcrypto-shlib-kdf_meth.o" => [ - "crypto/evp/kdf_meth.c" - ], - "crypto/evp/libcrypto-shlib-kem.o" => [ - "crypto/evp/kem.c" - ], - "crypto/evp/libcrypto-shlib-keymgmt_lib.o" => [ - "crypto/evp/keymgmt_lib.c" - ], - "crypto/evp/libcrypto-shlib-keymgmt_meth.o" => [ - "crypto/evp/keymgmt_meth.c" - ], - "crypto/evp/libcrypto-shlib-legacy_blake2.o" => [ - "crypto/evp/legacy_blake2.c" - ], - "crypto/evp/libcrypto-shlib-legacy_md4.o" => [ - "crypto/evp/legacy_md4.c" - ], - "crypto/evp/libcrypto-shlib-legacy_md5.o" => [ - "crypto/evp/legacy_md5.c" - ], - "crypto/evp/libcrypto-shlib-legacy_md5_sha1.o" => [ - "crypto/evp/legacy_md5_sha1.c" - ], - "crypto/evp/libcrypto-shlib-legacy_ripemd.o" => [ - "crypto/evp/legacy_ripemd.c" - ], - "crypto/evp/libcrypto-shlib-legacy_sha.o" => [ - "crypto/evp/legacy_sha.c" - ], - "crypto/evp/libcrypto-shlib-legacy_wp.o" => [ - "crypto/evp/legacy_wp.c" - ], - "crypto/evp/libcrypto-shlib-m_null.o" => [ - "crypto/evp/m_null.c" - ], - "crypto/evp/libcrypto-shlib-m_sigver.o" => [ - "crypto/evp/m_sigver.c" - ], - "crypto/evp/libcrypto-shlib-mac_lib.o" => [ - "crypto/evp/mac_lib.c" - ], - "crypto/evp/libcrypto-shlib-mac_meth.o" => [ - "crypto/evp/mac_meth.c" - ], - "crypto/evp/libcrypto-shlib-names.o" => [ - "crypto/evp/names.c" - ], - "crypto/evp/libcrypto-shlib-p5_crpt.o" => [ - "crypto/evp/p5_crpt.c" - ], - "crypto/evp/libcrypto-shlib-p5_crpt2.o" => [ - "crypto/evp/p5_crpt2.c" - ], - "crypto/evp/libcrypto-shlib-p_dec.o" => [ - "crypto/evp/p_dec.c" - ], - "crypto/evp/libcrypto-shlib-p_enc.o" => [ - "crypto/evp/p_enc.c" - ], - "crypto/evp/libcrypto-shlib-p_legacy.o" => [ - "crypto/evp/p_legacy.c" - ], - "crypto/evp/libcrypto-shlib-p_lib.o" => [ - "crypto/evp/p_lib.c" - ], - "crypto/evp/libcrypto-shlib-p_open.o" => [ - "crypto/evp/p_open.c" - ], - "crypto/evp/libcrypto-shlib-p_seal.o" => [ - "crypto/evp/p_seal.c" - ], - "crypto/evp/libcrypto-shlib-p_sign.o" => [ - "crypto/evp/p_sign.c" - ], - "crypto/evp/libcrypto-shlib-p_verify.o" => [ - "crypto/evp/p_verify.c" - ], - "crypto/evp/libcrypto-shlib-pbe_scrypt.o" => [ - "crypto/evp/pbe_scrypt.c" - ], - "crypto/evp/libcrypto-shlib-pmeth_check.o" => [ - "crypto/evp/pmeth_check.c" - ], - "crypto/evp/libcrypto-shlib-pmeth_gn.o" => [ - "crypto/evp/pmeth_gn.c" - ], - "crypto/evp/libcrypto-shlib-pmeth_lib.o" => [ - "crypto/evp/pmeth_lib.c" - ], - "crypto/evp/libcrypto-shlib-s_lib.o" => [ - "crypto/evp/s_lib.c" - ], - "crypto/evp/libcrypto-shlib-signature.o" => [ - "crypto/evp/signature.c" - ], - "crypto/evp/libcrypto-shlib-skeymgmt_meth.o" => [ - "crypto/evp/skeymgmt_meth.c" - ], - "crypto/ffc/libcrypto-lib-ffc_backend.o" => [ - "crypto/ffc/ffc_backend.c" - ], - "crypto/ffc/libcrypto-lib-ffc_dh.o" => [ - "crypto/ffc/ffc_dh.c" - ], - "crypto/ffc/libcrypto-lib-ffc_key_generate.o" => [ - "crypto/ffc/ffc_key_generate.c" - ], - "crypto/ffc/libcrypto-lib-ffc_key_validate.o" => [ - "crypto/ffc/ffc_key_validate.c" - ], - "crypto/ffc/libcrypto-lib-ffc_params.o" => [ - "crypto/ffc/ffc_params.c" - ], - "crypto/ffc/libcrypto-lib-ffc_params_generate.o" => [ - "crypto/ffc/ffc_params_generate.c" - ], - "crypto/ffc/libcrypto-lib-ffc_params_validate.o" => [ - "crypto/ffc/ffc_params_validate.c" - ], - "crypto/ffc/libcrypto-shlib-ffc_backend.o" => [ - "crypto/ffc/ffc_backend.c" - ], - "crypto/ffc/libcrypto-shlib-ffc_dh.o" => [ - "crypto/ffc/ffc_dh.c" - ], - "crypto/ffc/libcrypto-shlib-ffc_key_generate.o" => [ - "crypto/ffc/ffc_key_generate.c" - ], - "crypto/ffc/libcrypto-shlib-ffc_key_validate.o" => [ - "crypto/ffc/ffc_key_validate.c" - ], - "crypto/ffc/libcrypto-shlib-ffc_params.o" => [ - "crypto/ffc/ffc_params.c" - ], - "crypto/ffc/libcrypto-shlib-ffc_params_generate.o" => [ - "crypto/ffc/ffc_params_generate.c" - ], - "crypto/ffc/libcrypto-shlib-ffc_params_validate.o" => [ - "crypto/ffc/ffc_params_validate.c" - ], - "crypto/hashtable/libcrypto-lib-hashfunc.o" => [ - "crypto/hashtable/hashfunc.c" - ], - "crypto/hashtable/libcrypto-lib-hashtable.o" => [ - "crypto/hashtable/hashtable.c" - ], - "crypto/hashtable/libcrypto-shlib-hashfunc.o" => [ - "crypto/hashtable/hashfunc.c" - ], - "crypto/hashtable/libcrypto-shlib-hashtable.o" => [ - "crypto/hashtable/hashtable.c" - ], - "crypto/hashtable/libssl-shlib-hashfunc.o" => [ - "crypto/hashtable/hashfunc.c" - ], - "crypto/hmac/libcrypto-lib-hmac.o" => [ - "crypto/hmac/hmac.c" - ], - "crypto/hmac/libcrypto-shlib-hmac.o" => [ - "crypto/hmac/hmac.c" - ], - "crypto/hpke/libcrypto-lib-hpke.o" => [ - "crypto/hpke/hpke.c" - ], - "crypto/hpke/libcrypto-lib-hpke_util.o" => [ - "crypto/hpke/hpke_util.c" - ], - "crypto/hpke/libcrypto-shlib-hpke.o" => [ - "crypto/hpke/hpke.c" - ], - "crypto/hpke/libcrypto-shlib-hpke_util.o" => [ - "crypto/hpke/hpke_util.c" - ], - "crypto/http/libcrypto-lib-http_client.o" => [ - "crypto/http/http_client.c" - ], - "crypto/http/libcrypto-lib-http_err.o" => [ - "crypto/http/http_err.c" - ], - "crypto/http/libcrypto-lib-http_lib.o" => [ - "crypto/http/http_lib.c" - ], - "crypto/http/libcrypto-shlib-http_client.o" => [ - "crypto/http/http_client.c" - ], - "crypto/http/libcrypto-shlib-http_err.o" => [ - "crypto/http/http_err.c" - ], - "crypto/http/libcrypto-shlib-http_lib.o" => [ - "crypto/http/http_lib.c" - ], - "crypto/kdf/libcrypto-lib-kdf_err.o" => [ - "crypto/kdf/kdf_err.c" - ], - "crypto/kdf/libcrypto-shlib-kdf_err.o" => [ - "crypto/kdf/kdf_err.c" - ], - "crypto/legacy-dso-cpuid.o" => [ - "crypto/cpuid.c" - ], - "crypto/legacy-dso-ctype.o" => [ - "crypto/ctype.c" - ], - "crypto/legacy-dso-x86_64cpuid.o" => [ - "crypto/x86_64cpuid.s" - ], - "crypto/lhash/libcrypto-lib-lh_stats.o" => [ - "crypto/lhash/lh_stats.c" - ], - "crypto/lhash/libcrypto-lib-lhash.o" => [ - "crypto/lhash/lhash.c" - ], - "crypto/lhash/libcrypto-shlib-lh_stats.o" => [ - "crypto/lhash/lh_stats.c" - ], - "crypto/lhash/libcrypto-shlib-lhash.o" => [ - "crypto/lhash/lhash.c" - ], - "crypto/libcrypto-lib-asn1_dsa.o" => [ - "crypto/asn1_dsa.c" - ], - "crypto/libcrypto-lib-bsearch.o" => [ - "crypto/bsearch.c" - ], - "crypto/libcrypto-lib-comp_methods.o" => [ - "crypto/comp_methods.c" - ], - "crypto/libcrypto-lib-context.o" => [ - "crypto/context.c" - ], - "crypto/libcrypto-lib-core_algorithm.o" => [ - "crypto/core_algorithm.c" - ], - "crypto/libcrypto-lib-core_fetch.o" => [ - "crypto/core_fetch.c" - ], - "crypto/libcrypto-lib-core_namemap.o" => [ - "crypto/core_namemap.c" - ], - "crypto/libcrypto-lib-cpt_err.o" => [ - "crypto/cpt_err.c" - ], - "crypto/libcrypto-lib-cpuid.o" => [ - "crypto/cpuid.c" - ], - "crypto/libcrypto-lib-cryptlib.o" => [ - "crypto/cryptlib.c" - ], - "crypto/libcrypto-lib-ctype.o" => [ - "crypto/ctype.c" - ], - "crypto/libcrypto-lib-cversion.o" => [ - "crypto/cversion.c" - ], - "crypto/libcrypto-lib-defaults.o" => [ - "crypto/defaults.c" - ], - "crypto/libcrypto-lib-der_writer.o" => [ - "crypto/der_writer.c" - ], - "crypto/libcrypto-lib-deterministic_nonce.o" => [ - "crypto/deterministic_nonce.c" - ], - "crypto/libcrypto-lib-ebcdic.o" => [ - "crypto/ebcdic.c" - ], - "crypto/libcrypto-lib-ex_data.o" => [ - "crypto/ex_data.c" - ], - "crypto/libcrypto-lib-getenv.o" => [ - "crypto/getenv.c" - ], - "crypto/libcrypto-lib-indicator_core.o" => [ - "crypto/indicator_core.c" - ], - "crypto/libcrypto-lib-info.o" => [ - "crypto/info.c" - ], - "crypto/libcrypto-lib-init.o" => [ - "crypto/init.c" - ], - "crypto/libcrypto-lib-initthread.o" => [ - "crypto/initthread.c" - ], - "crypto/libcrypto-lib-mem.o" => [ - "crypto/mem.c" - ], - "crypto/libcrypto-lib-mem_sec.o" => [ - "crypto/mem_sec.c" - ], - "crypto/libcrypto-lib-o_dir.o" => [ - "crypto/o_dir.c" - ], - "crypto/libcrypto-lib-o_fopen.o" => [ - "crypto/o_fopen.c" - ], - "crypto/libcrypto-lib-o_init.o" => [ - "crypto/o_init.c" - ], - "crypto/libcrypto-lib-o_str.o" => [ - "crypto/o_str.c" - ], - "crypto/libcrypto-lib-o_time.o" => [ - "crypto/o_time.c" - ], - "crypto/libcrypto-lib-packet.o" => [ - "crypto/packet.c" - ], - "crypto/libcrypto-lib-param_build.o" => [ - "crypto/param_build.c" - ], - "crypto/libcrypto-lib-param_build_set.o" => [ - "crypto/param_build_set.c" - ], - "crypto/libcrypto-lib-params.o" => [ - "crypto/params.c" - ], - "crypto/libcrypto-lib-params_dup.o" => [ - "crypto/params_dup.c" - ], - "crypto/libcrypto-lib-params_from_text.o" => [ - "crypto/params_from_text.c" - ], - "crypto/libcrypto-lib-params_idx.o" => [ - "crypto/params_idx.c" - ], - "crypto/libcrypto-lib-passphrase.o" => [ - "crypto/passphrase.c" - ], - "crypto/libcrypto-lib-provider.o" => [ - "crypto/provider.c" - ], - "crypto/libcrypto-lib-provider_child.o" => [ - "crypto/provider_child.c" - ], - "crypto/libcrypto-lib-provider_conf.o" => [ - "crypto/provider_conf.c" - ], - "crypto/libcrypto-lib-provider_core.o" => [ - "crypto/provider_core.c" - ], - "crypto/libcrypto-lib-provider_predefined.o" => [ - "crypto/provider_predefined.c" - ], - "crypto/libcrypto-lib-punycode.o" => [ - "crypto/punycode.c" - ], - "crypto/libcrypto-lib-quic_vlint.o" => [ - "crypto/quic_vlint.c" - ], - "crypto/libcrypto-lib-self_test_core.o" => [ - "crypto/self_test_core.c" - ], - "crypto/libcrypto-lib-sleep.o" => [ - "crypto/sleep.c" - ], - "crypto/libcrypto-lib-sparse_array.o" => [ - "crypto/sparse_array.c" - ], - "crypto/libcrypto-lib-ssl_err.o" => [ - "crypto/ssl_err.c" - ], - "crypto/libcrypto-lib-threads_lib.o" => [ - "crypto/threads_lib.c" - ], - "crypto/libcrypto-lib-threads_none.o" => [ - "crypto/threads_none.c" - ], - "crypto/libcrypto-lib-threads_pthread.o" => [ - "crypto/threads_pthread.c" - ], - "crypto/libcrypto-lib-threads_win.o" => [ - "crypto/threads_win.c" - ], - "crypto/libcrypto-lib-time.o" => [ - "crypto/time.c" - ], - "crypto/libcrypto-lib-trace.o" => [ - "crypto/trace.c" - ], - "crypto/libcrypto-lib-uid.o" => [ - "crypto/uid.c" - ], - "crypto/libcrypto-lib-x86_64cpuid.o" => [ - "crypto/x86_64cpuid.s" - ], - "crypto/libcrypto-shlib-asn1_dsa.o" => [ - "crypto/asn1_dsa.c" - ], - "crypto/libcrypto-shlib-bsearch.o" => [ - "crypto/bsearch.c" - ], - "crypto/libcrypto-shlib-comp_methods.o" => [ - "crypto/comp_methods.c" - ], - "crypto/libcrypto-shlib-context.o" => [ - "crypto/context.c" - ], - "crypto/libcrypto-shlib-core_algorithm.o" => [ - "crypto/core_algorithm.c" - ], - "crypto/libcrypto-shlib-core_fetch.o" => [ - "crypto/core_fetch.c" - ], - "crypto/libcrypto-shlib-core_namemap.o" => [ - "crypto/core_namemap.c" - ], - "crypto/libcrypto-shlib-cpt_err.o" => [ - "crypto/cpt_err.c" - ], - "crypto/libcrypto-shlib-cpuid.o" => [ - "crypto/cpuid.c" - ], - "crypto/libcrypto-shlib-cryptlib.o" => [ - "crypto/cryptlib.c" - ], - "crypto/libcrypto-shlib-ctype.o" => [ - "crypto/ctype.c" - ], - "crypto/libcrypto-shlib-cversion.o" => [ - "crypto/cversion.c" - ], - "crypto/libcrypto-shlib-defaults.o" => [ - "crypto/defaults.c" - ], - "crypto/libcrypto-shlib-der_writer.o" => [ - "crypto/der_writer.c" - ], - "crypto/libcrypto-shlib-deterministic_nonce.o" => [ - "crypto/deterministic_nonce.c" - ], - "crypto/libcrypto-shlib-ebcdic.o" => [ - "crypto/ebcdic.c" - ], - "crypto/libcrypto-shlib-ex_data.o" => [ - "crypto/ex_data.c" - ], - "crypto/libcrypto-shlib-getenv.o" => [ - "crypto/getenv.c" - ], - "crypto/libcrypto-shlib-indicator_core.o" => [ - "crypto/indicator_core.c" - ], - "crypto/libcrypto-shlib-info.o" => [ - "crypto/info.c" - ], - "crypto/libcrypto-shlib-init.o" => [ - "crypto/init.c" - ], - "crypto/libcrypto-shlib-initthread.o" => [ - "crypto/initthread.c" - ], - "crypto/libcrypto-shlib-mem.o" => [ - "crypto/mem.c" - ], - "crypto/libcrypto-shlib-mem_sec.o" => [ - "crypto/mem_sec.c" - ], - "crypto/libcrypto-shlib-o_dir.o" => [ - "crypto/o_dir.c" - ], - "crypto/libcrypto-shlib-o_fopen.o" => [ - "crypto/o_fopen.c" - ], - "crypto/libcrypto-shlib-o_init.o" => [ - "crypto/o_init.c" - ], - "crypto/libcrypto-shlib-o_str.o" => [ - "crypto/o_str.c" - ], - "crypto/libcrypto-shlib-o_time.o" => [ - "crypto/o_time.c" - ], - "crypto/libcrypto-shlib-packet.o" => [ - "crypto/packet.c" - ], - "crypto/libcrypto-shlib-param_build.o" => [ - "crypto/param_build.c" - ], - "crypto/libcrypto-shlib-param_build_set.o" => [ - "crypto/param_build_set.c" - ], - "crypto/libcrypto-shlib-params.o" => [ - "crypto/params.c" - ], - "crypto/libcrypto-shlib-params_dup.o" => [ - "crypto/params_dup.c" - ], - "crypto/libcrypto-shlib-params_from_text.o" => [ - "crypto/params_from_text.c" - ], - "crypto/libcrypto-shlib-params_idx.o" => [ - "crypto/params_idx.c" - ], - "crypto/libcrypto-shlib-passphrase.o" => [ - "crypto/passphrase.c" - ], - "crypto/libcrypto-shlib-provider.o" => [ - "crypto/provider.c" - ], - "crypto/libcrypto-shlib-provider_child.o" => [ - "crypto/provider_child.c" - ], - "crypto/libcrypto-shlib-provider_conf.o" => [ - "crypto/provider_conf.c" - ], - "crypto/libcrypto-shlib-provider_core.o" => [ - "crypto/provider_core.c" - ], - "crypto/libcrypto-shlib-provider_predefined.o" => [ - "crypto/provider_predefined.c" - ], - "crypto/libcrypto-shlib-punycode.o" => [ - "crypto/punycode.c" - ], - "crypto/libcrypto-shlib-quic_vlint.o" => [ - "crypto/quic_vlint.c" - ], - "crypto/libcrypto-shlib-self_test_core.o" => [ - "crypto/self_test_core.c" - ], - "crypto/libcrypto-shlib-sleep.o" => [ - "crypto/sleep.c" - ], - "crypto/libcrypto-shlib-sparse_array.o" => [ - "crypto/sparse_array.c" - ], - "crypto/libcrypto-shlib-ssl_err.o" => [ - "crypto/ssl_err.c" - ], - "crypto/libcrypto-shlib-threads_lib.o" => [ - "crypto/threads_lib.c" - ], - "crypto/libcrypto-shlib-threads_none.o" => [ - "crypto/threads_none.c" - ], - "crypto/libcrypto-shlib-threads_pthread.o" => [ - "crypto/threads_pthread.c" - ], - "crypto/libcrypto-shlib-threads_win.o" => [ - "crypto/threads_win.c" - ], - "crypto/libcrypto-shlib-time.o" => [ - "crypto/time.c" - ], - "crypto/libcrypto-shlib-trace.o" => [ - "crypto/trace.c" - ], - "crypto/libcrypto-shlib-uid.o" => [ - "crypto/uid.c" - ], - "crypto/libcrypto-shlib-x86_64cpuid.o" => [ - "crypto/x86_64cpuid.s" - ], - "crypto/libssl-shlib-ctype.o" => [ - "crypto/ctype.c" - ], - "crypto/libssl-shlib-getenv.o" => [ - "crypto/getenv.c" - ], - "crypto/libssl-shlib-packet.o" => [ - "crypto/packet.c" - ], - "crypto/libssl-shlib-quic_vlint.o" => [ - "crypto/quic_vlint.c" - ], - "crypto/libssl-shlib-time.o" => [ - "crypto/time.c" - ], - "crypto/md4/libcrypto-lib-md4_dgst.o" => [ - "crypto/md4/md4_dgst.c" - ], - "crypto/md4/libcrypto-lib-md4_one.o" => [ - "crypto/md4/md4_one.c" - ], - "crypto/md4/libcrypto-shlib-md4_dgst.o" => [ - "crypto/md4/md4_dgst.c" - ], - "crypto/md4/libcrypto-shlib-md4_one.o" => [ - "crypto/md4/md4_one.c" - ], - "crypto/md5/libcrypto-lib-md5-x86_64.o" => [ - "crypto/md5/md5-x86_64.s" - ], - "crypto/md5/libcrypto-lib-md5_dgst.o" => [ - "crypto/md5/md5_dgst.c" - ], - "crypto/md5/libcrypto-lib-md5_one.o" => [ - "crypto/md5/md5_one.c" - ], - "crypto/md5/libcrypto-lib-md5_sha1.o" => [ - "crypto/md5/md5_sha1.c" - ], - "crypto/md5/libcrypto-shlib-md5-x86_64.o" => [ - "crypto/md5/md5-x86_64.s" - ], - "crypto/md5/libcrypto-shlib-md5_dgst.o" => [ - "crypto/md5/md5_dgst.c" - ], - "crypto/md5/libcrypto-shlib-md5_one.o" => [ - "crypto/md5/md5_one.c" - ], - "crypto/md5/libcrypto-shlib-md5_sha1.o" => [ - "crypto/md5/md5_sha1.c" - ], - "crypto/md5/liblegacy-lib-md5-x86_64.o" => [ - "crypto/md5/md5-x86_64.s" - ], - "crypto/md5/liblegacy-lib-md5_dgst.o" => [ - "crypto/md5/md5_dgst.c" - ], - "crypto/md5/liblegacy-lib-md5_one.o" => [ - "crypto/md5/md5_one.c" - ], - "crypto/md5/liblegacy-lib-md5_sha1.o" => [ - "crypto/md5/md5_sha1.c" - ], - "crypto/ml_dsa/libcrypto-lib-ml_dsa_encoders.o" => [ - "crypto/ml_dsa/ml_dsa_encoders.c" - ], - "crypto/ml_dsa/libcrypto-lib-ml_dsa_key.o" => [ - "crypto/ml_dsa/ml_dsa_key.c" - ], - "crypto/ml_dsa/libcrypto-lib-ml_dsa_key_compress.o" => [ - "crypto/ml_dsa/ml_dsa_key_compress.c" - ], - "crypto/ml_dsa/libcrypto-lib-ml_dsa_matrix.o" => [ - "crypto/ml_dsa/ml_dsa_matrix.c" - ], - "crypto/ml_dsa/libcrypto-lib-ml_dsa_ntt.o" => [ - "crypto/ml_dsa/ml_dsa_ntt.c" - ], - "crypto/ml_dsa/libcrypto-lib-ml_dsa_params.o" => [ - "crypto/ml_dsa/ml_dsa_params.c" - ], - "crypto/ml_dsa/libcrypto-lib-ml_dsa_sample.o" => [ - "crypto/ml_dsa/ml_dsa_sample.c" - ], - "crypto/ml_dsa/libcrypto-lib-ml_dsa_sign.o" => [ - "crypto/ml_dsa/ml_dsa_sign.c" - ], - "crypto/ml_dsa/libcrypto-shlib-ml_dsa_encoders.o" => [ - "crypto/ml_dsa/ml_dsa_encoders.c" - ], - "crypto/ml_dsa/libcrypto-shlib-ml_dsa_key.o" => [ - "crypto/ml_dsa/ml_dsa_key.c" - ], - "crypto/ml_dsa/libcrypto-shlib-ml_dsa_key_compress.o" => [ - "crypto/ml_dsa/ml_dsa_key_compress.c" - ], - "crypto/ml_dsa/libcrypto-shlib-ml_dsa_matrix.o" => [ - "crypto/ml_dsa/ml_dsa_matrix.c" - ], - "crypto/ml_dsa/libcrypto-shlib-ml_dsa_ntt.o" => [ - "crypto/ml_dsa/ml_dsa_ntt.c" - ], - "crypto/ml_dsa/libcrypto-shlib-ml_dsa_params.o" => [ - "crypto/ml_dsa/ml_dsa_params.c" - ], - "crypto/ml_dsa/libcrypto-shlib-ml_dsa_sample.o" => [ - "crypto/ml_dsa/ml_dsa_sample.c" - ], - "crypto/ml_dsa/libcrypto-shlib-ml_dsa_sign.o" => [ - "crypto/ml_dsa/ml_dsa_sign.c" - ], - "crypto/ml_kem/libcrypto-lib-ml_kem.o" => [ - "crypto/ml_kem/ml_kem.c" - ], - "crypto/ml_kem/libcrypto-shlib-ml_kem.o" => [ - "crypto/ml_kem/ml_kem.c" - ], - "crypto/modes/libcrypto-lib-aes-gcm-avx512.o" => [ - "crypto/modes/aes-gcm-avx512.s" - ], - "crypto/modes/libcrypto-lib-aesni-gcm-x86_64.o" => [ - "crypto/modes/aesni-gcm-x86_64.s" - ], - "crypto/modes/libcrypto-lib-cbc128.o" => [ - "crypto/modes/cbc128.c" - ], - "crypto/modes/libcrypto-lib-ccm128.o" => [ - "crypto/modes/ccm128.c" - ], - "crypto/modes/libcrypto-lib-cfb128.o" => [ - "crypto/modes/cfb128.c" - ], - "crypto/modes/libcrypto-lib-ctr128.o" => [ - "crypto/modes/ctr128.c" - ], - "crypto/modes/libcrypto-lib-cts128.o" => [ - "crypto/modes/cts128.c" - ], - "crypto/modes/libcrypto-lib-gcm128.o" => [ - "crypto/modes/gcm128.c" - ], - "crypto/modes/libcrypto-lib-ghash-x86_64.o" => [ - "crypto/modes/ghash-x86_64.s" - ], - "crypto/modes/libcrypto-lib-ocb128.o" => [ - "crypto/modes/ocb128.c" - ], - "crypto/modes/libcrypto-lib-ofb128.o" => [ - "crypto/modes/ofb128.c" - ], - "crypto/modes/libcrypto-lib-siv128.o" => [ - "crypto/modes/siv128.c" - ], - "crypto/modes/libcrypto-lib-wrap128.o" => [ - "crypto/modes/wrap128.c" - ], - "crypto/modes/libcrypto-lib-xts128.o" => [ - "crypto/modes/xts128.c" - ], - "crypto/modes/libcrypto-lib-xts128gb.o" => [ - "crypto/modes/xts128gb.c" - ], - "crypto/modes/libcrypto-shlib-aes-gcm-avx512.o" => [ - "crypto/modes/aes-gcm-avx512.s" - ], - "crypto/modes/libcrypto-shlib-aesni-gcm-x86_64.o" => [ - "crypto/modes/aesni-gcm-x86_64.s" - ], - "crypto/modes/libcrypto-shlib-cbc128.o" => [ - "crypto/modes/cbc128.c" - ], - "crypto/modes/libcrypto-shlib-ccm128.o" => [ - "crypto/modes/ccm128.c" - ], - "crypto/modes/libcrypto-shlib-cfb128.o" => [ - "crypto/modes/cfb128.c" - ], - "crypto/modes/libcrypto-shlib-ctr128.o" => [ - "crypto/modes/ctr128.c" - ], - "crypto/modes/libcrypto-shlib-cts128.o" => [ - "crypto/modes/cts128.c" - ], - "crypto/modes/libcrypto-shlib-gcm128.o" => [ - "crypto/modes/gcm128.c" - ], - "crypto/modes/libcrypto-shlib-ghash-x86_64.o" => [ - "crypto/modes/ghash-x86_64.s" - ], - "crypto/modes/libcrypto-shlib-ocb128.o" => [ - "crypto/modes/ocb128.c" - ], - "crypto/modes/libcrypto-shlib-ofb128.o" => [ - "crypto/modes/ofb128.c" - ], - "crypto/modes/libcrypto-shlib-siv128.o" => [ - "crypto/modes/siv128.c" - ], - "crypto/modes/libcrypto-shlib-wrap128.o" => [ - "crypto/modes/wrap128.c" - ], - "crypto/modes/libcrypto-shlib-xts128.o" => [ - "crypto/modes/xts128.c" - ], - "crypto/modes/libcrypto-shlib-xts128gb.o" => [ - "crypto/modes/xts128gb.c" - ], - "crypto/objects/libcrypto-lib-o_names.o" => [ - "crypto/objects/o_names.c" - ], - "crypto/objects/libcrypto-lib-obj_dat.o" => [ - "crypto/objects/obj_dat.c" - ], - "crypto/objects/libcrypto-lib-obj_err.o" => [ - "crypto/objects/obj_err.c" - ], - "crypto/objects/libcrypto-lib-obj_lib.o" => [ - "crypto/objects/obj_lib.c" - ], - "crypto/objects/libcrypto-lib-obj_xref.o" => [ - "crypto/objects/obj_xref.c" - ], - "crypto/objects/libcrypto-shlib-o_names.o" => [ - "crypto/objects/o_names.c" - ], - "crypto/objects/libcrypto-shlib-obj_dat.o" => [ - "crypto/objects/obj_dat.c" - ], - "crypto/objects/libcrypto-shlib-obj_err.o" => [ - "crypto/objects/obj_err.c" - ], - "crypto/objects/libcrypto-shlib-obj_lib.o" => [ - "crypto/objects/obj_lib.c" - ], - "crypto/objects/libcrypto-shlib-obj_xref.o" => [ - "crypto/objects/obj_xref.c" - ], - "crypto/ocsp/libcrypto-lib-ocsp_asn.o" => [ - "crypto/ocsp/ocsp_asn.c" - ], - "crypto/ocsp/libcrypto-lib-ocsp_cl.o" => [ - "crypto/ocsp/ocsp_cl.c" - ], - "crypto/ocsp/libcrypto-lib-ocsp_err.o" => [ - "crypto/ocsp/ocsp_err.c" - ], - "crypto/ocsp/libcrypto-lib-ocsp_ext.o" => [ - "crypto/ocsp/ocsp_ext.c" - ], - "crypto/ocsp/libcrypto-lib-ocsp_http.o" => [ - "crypto/ocsp/ocsp_http.c" - ], - "crypto/ocsp/libcrypto-lib-ocsp_lib.o" => [ - "crypto/ocsp/ocsp_lib.c" - ], - "crypto/ocsp/libcrypto-lib-ocsp_prn.o" => [ - "crypto/ocsp/ocsp_prn.c" - ], - "crypto/ocsp/libcrypto-lib-ocsp_srv.o" => [ - "crypto/ocsp/ocsp_srv.c" - ], - "crypto/ocsp/libcrypto-lib-ocsp_vfy.o" => [ - "crypto/ocsp/ocsp_vfy.c" - ], - "crypto/ocsp/libcrypto-lib-v3_ocsp.o" => [ - "crypto/ocsp/v3_ocsp.c" - ], - "crypto/ocsp/libcrypto-shlib-ocsp_asn.o" => [ - "crypto/ocsp/ocsp_asn.c" - ], - "crypto/ocsp/libcrypto-shlib-ocsp_cl.o" => [ - "crypto/ocsp/ocsp_cl.c" - ], - "crypto/ocsp/libcrypto-shlib-ocsp_err.o" => [ - "crypto/ocsp/ocsp_err.c" - ], - "crypto/ocsp/libcrypto-shlib-ocsp_ext.o" => [ - "crypto/ocsp/ocsp_ext.c" - ], - "crypto/ocsp/libcrypto-shlib-ocsp_http.o" => [ - "crypto/ocsp/ocsp_http.c" - ], - "crypto/ocsp/libcrypto-shlib-ocsp_lib.o" => [ - "crypto/ocsp/ocsp_lib.c" - ], - "crypto/ocsp/libcrypto-shlib-ocsp_prn.o" => [ - "crypto/ocsp/ocsp_prn.c" - ], - "crypto/ocsp/libcrypto-shlib-ocsp_srv.o" => [ - "crypto/ocsp/ocsp_srv.c" - ], - "crypto/ocsp/libcrypto-shlib-ocsp_vfy.o" => [ - "crypto/ocsp/ocsp_vfy.c" - ], - "crypto/ocsp/libcrypto-shlib-v3_ocsp.o" => [ - "crypto/ocsp/v3_ocsp.c" - ], - "crypto/packettest-bin-quic_vlint.o" => [ - "crypto/quic_vlint.c" - ], - "crypto/pem/libcrypto-lib-pem_all.o" => [ - "crypto/pem/pem_all.c" - ], - "crypto/pem/libcrypto-lib-pem_err.o" => [ - "crypto/pem/pem_err.c" - ], - "crypto/pem/libcrypto-lib-pem_info.o" => [ - "crypto/pem/pem_info.c" - ], - "crypto/pem/libcrypto-lib-pem_lib.o" => [ - "crypto/pem/pem_lib.c" - ], - "crypto/pem/libcrypto-lib-pem_oth.o" => [ - "crypto/pem/pem_oth.c" - ], - "crypto/pem/libcrypto-lib-pem_pk8.o" => [ - "crypto/pem/pem_pk8.c" - ], - "crypto/pem/libcrypto-lib-pem_pkey.o" => [ - "crypto/pem/pem_pkey.c" - ], - "crypto/pem/libcrypto-lib-pem_sign.o" => [ - "crypto/pem/pem_sign.c" - ], - "crypto/pem/libcrypto-lib-pem_x509.o" => [ - "crypto/pem/pem_x509.c" - ], - "crypto/pem/libcrypto-lib-pem_xaux.o" => [ - "crypto/pem/pem_xaux.c" - ], - "crypto/pem/libcrypto-lib-pvkfmt.o" => [ - "crypto/pem/pvkfmt.c" - ], - "crypto/pem/libcrypto-shlib-pem_all.o" => [ - "crypto/pem/pem_all.c" - ], - "crypto/pem/libcrypto-shlib-pem_err.o" => [ - "crypto/pem/pem_err.c" - ], - "crypto/pem/libcrypto-shlib-pem_info.o" => [ - "crypto/pem/pem_info.c" - ], - "crypto/pem/libcrypto-shlib-pem_lib.o" => [ - "crypto/pem/pem_lib.c" - ], - "crypto/pem/libcrypto-shlib-pem_oth.o" => [ - "crypto/pem/pem_oth.c" - ], - "crypto/pem/libcrypto-shlib-pem_pk8.o" => [ - "crypto/pem/pem_pk8.c" - ], - "crypto/pem/libcrypto-shlib-pem_pkey.o" => [ - "crypto/pem/pem_pkey.c" - ], - "crypto/pem/libcrypto-shlib-pem_sign.o" => [ - "crypto/pem/pem_sign.c" - ], - "crypto/pem/libcrypto-shlib-pem_x509.o" => [ - "crypto/pem/pem_x509.c" - ], - "crypto/pem/libcrypto-shlib-pem_xaux.o" => [ - "crypto/pem/pem_xaux.c" - ], - "crypto/pem/libcrypto-shlib-pvkfmt.o" => [ - "crypto/pem/pvkfmt.c" - ], - "crypto/pem/loader_attic-dso-pvkfmt.o" => [ - "crypto/pem/pvkfmt.c" - ], - "crypto/pkcs12/libcrypto-lib-p12_add.o" => [ - "crypto/pkcs12/p12_add.c" - ], - "crypto/pkcs12/libcrypto-lib-p12_asn.o" => [ - "crypto/pkcs12/p12_asn.c" - ], - "crypto/pkcs12/libcrypto-lib-p12_attr.o" => [ - "crypto/pkcs12/p12_attr.c" - ], - "crypto/pkcs12/libcrypto-lib-p12_crpt.o" => [ - "crypto/pkcs12/p12_crpt.c" - ], - "crypto/pkcs12/libcrypto-lib-p12_crt.o" => [ - "crypto/pkcs12/p12_crt.c" - ], - "crypto/pkcs12/libcrypto-lib-p12_decr.o" => [ - "crypto/pkcs12/p12_decr.c" - ], - "crypto/pkcs12/libcrypto-lib-p12_init.o" => [ - "crypto/pkcs12/p12_init.c" - ], - "crypto/pkcs12/libcrypto-lib-p12_key.o" => [ - "crypto/pkcs12/p12_key.c" - ], - "crypto/pkcs12/libcrypto-lib-p12_kiss.o" => [ - "crypto/pkcs12/p12_kiss.c" - ], - "crypto/pkcs12/libcrypto-lib-p12_mutl.o" => [ - "crypto/pkcs12/p12_mutl.c" - ], - "crypto/pkcs12/libcrypto-lib-p12_npas.o" => [ - "crypto/pkcs12/p12_npas.c" - ], - "crypto/pkcs12/libcrypto-lib-p12_p8d.o" => [ - "crypto/pkcs12/p12_p8d.c" - ], - "crypto/pkcs12/libcrypto-lib-p12_p8e.o" => [ - "crypto/pkcs12/p12_p8e.c" - ], - "crypto/pkcs12/libcrypto-lib-p12_sbag.o" => [ - "crypto/pkcs12/p12_sbag.c" - ], - "crypto/pkcs12/libcrypto-lib-p12_utl.o" => [ - "crypto/pkcs12/p12_utl.c" - ], - "crypto/pkcs12/libcrypto-lib-pk12err.o" => [ - "crypto/pkcs12/pk12err.c" - ], - "crypto/pkcs12/libcrypto-shlib-p12_add.o" => [ - "crypto/pkcs12/p12_add.c" - ], - "crypto/pkcs12/libcrypto-shlib-p12_asn.o" => [ - "crypto/pkcs12/p12_asn.c" - ], - "crypto/pkcs12/libcrypto-shlib-p12_attr.o" => [ - "crypto/pkcs12/p12_attr.c" - ], - "crypto/pkcs12/libcrypto-shlib-p12_crpt.o" => [ - "crypto/pkcs12/p12_crpt.c" - ], - "crypto/pkcs12/libcrypto-shlib-p12_crt.o" => [ - "crypto/pkcs12/p12_crt.c" - ], - "crypto/pkcs12/libcrypto-shlib-p12_decr.o" => [ - "crypto/pkcs12/p12_decr.c" - ], - "crypto/pkcs12/libcrypto-shlib-p12_init.o" => [ - "crypto/pkcs12/p12_init.c" - ], - "crypto/pkcs12/libcrypto-shlib-p12_key.o" => [ - "crypto/pkcs12/p12_key.c" - ], - "crypto/pkcs12/libcrypto-shlib-p12_kiss.o" => [ - "crypto/pkcs12/p12_kiss.c" - ], - "crypto/pkcs12/libcrypto-shlib-p12_mutl.o" => [ - "crypto/pkcs12/p12_mutl.c" - ], - "crypto/pkcs12/libcrypto-shlib-p12_npas.o" => [ - "crypto/pkcs12/p12_npas.c" - ], - "crypto/pkcs12/libcrypto-shlib-p12_p8d.o" => [ - "crypto/pkcs12/p12_p8d.c" - ], - "crypto/pkcs12/libcrypto-shlib-p12_p8e.o" => [ - "crypto/pkcs12/p12_p8e.c" - ], - "crypto/pkcs12/libcrypto-shlib-p12_sbag.o" => [ - "crypto/pkcs12/p12_sbag.c" - ], - "crypto/pkcs12/libcrypto-shlib-p12_utl.o" => [ - "crypto/pkcs12/p12_utl.c" - ], - "crypto/pkcs12/libcrypto-shlib-pk12err.o" => [ - "crypto/pkcs12/pk12err.c" - ], - "crypto/pkcs7/libcrypto-lib-bio_pk7.o" => [ - "crypto/pkcs7/bio_pk7.c" - ], - "crypto/pkcs7/libcrypto-lib-pk7_asn1.o" => [ - "crypto/pkcs7/pk7_asn1.c" - ], - "crypto/pkcs7/libcrypto-lib-pk7_attr.o" => [ - "crypto/pkcs7/pk7_attr.c" - ], - "crypto/pkcs7/libcrypto-lib-pk7_doit.o" => [ - "crypto/pkcs7/pk7_doit.c" - ], - "crypto/pkcs7/libcrypto-lib-pk7_lib.o" => [ - "crypto/pkcs7/pk7_lib.c" - ], - "crypto/pkcs7/libcrypto-lib-pk7_mime.o" => [ - "crypto/pkcs7/pk7_mime.c" - ], - "crypto/pkcs7/libcrypto-lib-pk7_smime.o" => [ - "crypto/pkcs7/pk7_smime.c" - ], - "crypto/pkcs7/libcrypto-lib-pkcs7err.o" => [ - "crypto/pkcs7/pkcs7err.c" - ], - "crypto/pkcs7/libcrypto-shlib-bio_pk7.o" => [ - "crypto/pkcs7/bio_pk7.c" - ], - "crypto/pkcs7/libcrypto-shlib-pk7_asn1.o" => [ - "crypto/pkcs7/pk7_asn1.c" - ], - "crypto/pkcs7/libcrypto-shlib-pk7_attr.o" => [ - "crypto/pkcs7/pk7_attr.c" - ], - "crypto/pkcs7/libcrypto-shlib-pk7_doit.o" => [ - "crypto/pkcs7/pk7_doit.c" - ], - "crypto/pkcs7/libcrypto-shlib-pk7_lib.o" => [ - "crypto/pkcs7/pk7_lib.c" - ], - "crypto/pkcs7/libcrypto-shlib-pk7_mime.o" => [ - "crypto/pkcs7/pk7_mime.c" - ], - "crypto/pkcs7/libcrypto-shlib-pk7_smime.o" => [ - "crypto/pkcs7/pk7_smime.c" - ], - "crypto/pkcs7/libcrypto-shlib-pkcs7err.o" => [ - "crypto/pkcs7/pkcs7err.c" - ], - "crypto/poly1305/libcrypto-lib-poly1305-x86_64.o" => [ - "crypto/poly1305/poly1305-x86_64.s" - ], - "crypto/poly1305/libcrypto-lib-poly1305.o" => [ - "crypto/poly1305/poly1305.c" - ], - "crypto/poly1305/libcrypto-shlib-poly1305-x86_64.o" => [ - "crypto/poly1305/poly1305-x86_64.s" - ], - "crypto/poly1305/libcrypto-shlib-poly1305.o" => [ - "crypto/poly1305/poly1305.c" - ], - "crypto/property/libcrypto-lib-defn_cache.o" => [ - "crypto/property/defn_cache.c" - ], - "crypto/property/libcrypto-lib-property.o" => [ - "crypto/property/property.c" - ], - "crypto/property/libcrypto-lib-property_err.o" => [ - "crypto/property/property_err.c" - ], - "crypto/property/libcrypto-lib-property_parse.o" => [ - "crypto/property/property_parse.c" - ], - "crypto/property/libcrypto-lib-property_query.o" => [ - "crypto/property/property_query.c" - ], - "crypto/property/libcrypto-lib-property_string.o" => [ - "crypto/property/property_string.c" - ], - "crypto/property/libcrypto-shlib-defn_cache.o" => [ - "crypto/property/defn_cache.c" - ], - "crypto/property/libcrypto-shlib-property.o" => [ - "crypto/property/property.c" - ], - "crypto/property/libcrypto-shlib-property_err.o" => [ - "crypto/property/property_err.c" - ], - "crypto/property/libcrypto-shlib-property_parse.o" => [ - "crypto/property/property_parse.c" - ], - "crypto/property/libcrypto-shlib-property_query.o" => [ - "crypto/property/property_query.c" - ], - "crypto/property/libcrypto-shlib-property_string.o" => [ - "crypto/property/property_string.c" - ], - "crypto/rand/libcrypto-lib-prov_seed.o" => [ - "crypto/rand/prov_seed.c" - ], - "crypto/rand/libcrypto-lib-rand_deprecated.o" => [ - "crypto/rand/rand_deprecated.c" - ], - "crypto/rand/libcrypto-lib-rand_err.o" => [ - "crypto/rand/rand_err.c" - ], - "crypto/rand/libcrypto-lib-rand_lib.o" => [ - "crypto/rand/rand_lib.c" - ], - "crypto/rand/libcrypto-lib-rand_meth.o" => [ - "crypto/rand/rand_meth.c" - ], - "crypto/rand/libcrypto-lib-rand_pool.o" => [ - "crypto/rand/rand_pool.c" - ], - "crypto/rand/libcrypto-lib-rand_uniform.o" => [ - "crypto/rand/rand_uniform.c" - ], - "crypto/rand/libcrypto-lib-randfile.o" => [ - "crypto/rand/randfile.c" - ], - "crypto/rand/libcrypto-shlib-prov_seed.o" => [ - "crypto/rand/prov_seed.c" - ], - "crypto/rand/libcrypto-shlib-rand_deprecated.o" => [ - "crypto/rand/rand_deprecated.c" - ], - "crypto/rand/libcrypto-shlib-rand_err.o" => [ - "crypto/rand/rand_err.c" - ], - "crypto/rand/libcrypto-shlib-rand_lib.o" => [ - "crypto/rand/rand_lib.c" - ], - "crypto/rand/libcrypto-shlib-rand_meth.o" => [ - "crypto/rand/rand_meth.c" - ], - "crypto/rand/libcrypto-shlib-rand_pool.o" => [ - "crypto/rand/rand_pool.c" - ], - "crypto/rand/libcrypto-shlib-rand_uniform.o" => [ - "crypto/rand/rand_uniform.c" - ], - "crypto/rand/libcrypto-shlib-randfile.o" => [ - "crypto/rand/randfile.c" - ], - "crypto/rc2/libcrypto-lib-rc2_cbc.o" => [ - "crypto/rc2/rc2_cbc.c" - ], - "crypto/rc2/libcrypto-lib-rc2_ecb.o" => [ - "crypto/rc2/rc2_ecb.c" - ], - "crypto/rc2/libcrypto-lib-rc2_skey.o" => [ - "crypto/rc2/rc2_skey.c" - ], - "crypto/rc2/libcrypto-lib-rc2cfb64.o" => [ - "crypto/rc2/rc2cfb64.c" - ], - "crypto/rc2/libcrypto-lib-rc2ofb64.o" => [ - "crypto/rc2/rc2ofb64.c" - ], - "crypto/rc2/libcrypto-shlib-rc2_cbc.o" => [ - "crypto/rc2/rc2_cbc.c" - ], - "crypto/rc2/libcrypto-shlib-rc2_ecb.o" => [ - "crypto/rc2/rc2_ecb.c" - ], - "crypto/rc2/libcrypto-shlib-rc2_skey.o" => [ - "crypto/rc2/rc2_skey.c" - ], - "crypto/rc2/libcrypto-shlib-rc2cfb64.o" => [ - "crypto/rc2/rc2cfb64.c" - ], - "crypto/rc2/libcrypto-shlib-rc2ofb64.o" => [ - "crypto/rc2/rc2ofb64.c" - ], - "crypto/rc4/libcrypto-lib-rc4-md5-x86_64.o" => [ - "crypto/rc4/rc4-md5-x86_64.s" - ], - "crypto/rc4/libcrypto-lib-rc4-x86_64.o" => [ - "crypto/rc4/rc4-x86_64.s" - ], - "crypto/rc4/libcrypto-shlib-rc4-md5-x86_64.o" => [ - "crypto/rc4/rc4-md5-x86_64.s" - ], - "crypto/rc4/libcrypto-shlib-rc4-x86_64.o" => [ - "crypto/rc4/rc4-x86_64.s" - ], - "crypto/rc4/liblegacy-lib-rc4-md5-x86_64.o" => [ - "crypto/rc4/rc4-md5-x86_64.s" - ], - "crypto/rc4/liblegacy-lib-rc4-x86_64.o" => [ - "crypto/rc4/rc4-x86_64.s" - ], - "crypto/ripemd/libcrypto-lib-rmd_dgst.o" => [ - "crypto/ripemd/rmd_dgst.c" - ], - "crypto/ripemd/libcrypto-lib-rmd_one.o" => [ - "crypto/ripemd/rmd_one.c" - ], - "crypto/ripemd/libcrypto-shlib-rmd_dgst.o" => [ - "crypto/ripemd/rmd_dgst.c" - ], - "crypto/ripemd/libcrypto-shlib-rmd_one.o" => [ - "crypto/ripemd/rmd_one.c" - ], - "crypto/rsa/libcrypto-lib-rsa_ameth.o" => [ - "crypto/rsa/rsa_ameth.c" - ], - "crypto/rsa/libcrypto-lib-rsa_asn1.o" => [ - "crypto/rsa/rsa_asn1.c" - ], - "crypto/rsa/libcrypto-lib-rsa_backend.o" => [ - "crypto/rsa/rsa_backend.c" - ], - "crypto/rsa/libcrypto-lib-rsa_chk.o" => [ - "crypto/rsa/rsa_chk.c" - ], - "crypto/rsa/libcrypto-lib-rsa_crpt.o" => [ - "crypto/rsa/rsa_crpt.c" - ], - "crypto/rsa/libcrypto-lib-rsa_depr.o" => [ - "crypto/rsa/rsa_depr.c" - ], - "crypto/rsa/libcrypto-lib-rsa_err.o" => [ - "crypto/rsa/rsa_err.c" - ], - "crypto/rsa/libcrypto-lib-rsa_gen.o" => [ - "crypto/rsa/rsa_gen.c" - ], - "crypto/rsa/libcrypto-lib-rsa_lib.o" => [ - "crypto/rsa/rsa_lib.c" - ], - "crypto/rsa/libcrypto-lib-rsa_meth.o" => [ - "crypto/rsa/rsa_meth.c" - ], - "crypto/rsa/libcrypto-lib-rsa_mp.o" => [ - "crypto/rsa/rsa_mp.c" - ], - "crypto/rsa/libcrypto-lib-rsa_mp_names.o" => [ - "crypto/rsa/rsa_mp_names.c" - ], - "crypto/rsa/libcrypto-lib-rsa_none.o" => [ - "crypto/rsa/rsa_none.c" - ], - "crypto/rsa/libcrypto-lib-rsa_oaep.o" => [ - "crypto/rsa/rsa_oaep.c" - ], - "crypto/rsa/libcrypto-lib-rsa_ossl.o" => [ - "crypto/rsa/rsa_ossl.c" - ], - "crypto/rsa/libcrypto-lib-rsa_pk1.o" => [ - "crypto/rsa/rsa_pk1.c" - ], - "crypto/rsa/libcrypto-lib-rsa_pmeth.o" => [ - "crypto/rsa/rsa_pmeth.c" - ], - "crypto/rsa/libcrypto-lib-rsa_prn.o" => [ - "crypto/rsa/rsa_prn.c" - ], - "crypto/rsa/libcrypto-lib-rsa_pss.o" => [ - "crypto/rsa/rsa_pss.c" - ], - "crypto/rsa/libcrypto-lib-rsa_saos.o" => [ - "crypto/rsa/rsa_saos.c" - ], - "crypto/rsa/libcrypto-lib-rsa_schemes.o" => [ - "crypto/rsa/rsa_schemes.c" - ], - "crypto/rsa/libcrypto-lib-rsa_sign.o" => [ - "crypto/rsa/rsa_sign.c" - ], - "crypto/rsa/libcrypto-lib-rsa_sp800_56b_check.o" => [ - "crypto/rsa/rsa_sp800_56b_check.c" - ], - "crypto/rsa/libcrypto-lib-rsa_sp800_56b_gen.o" => [ - "crypto/rsa/rsa_sp800_56b_gen.c" - ], - "crypto/rsa/libcrypto-lib-rsa_x931.o" => [ - "crypto/rsa/rsa_x931.c" - ], - "crypto/rsa/libcrypto-lib-rsa_x931g.o" => [ - "crypto/rsa/rsa_x931g.c" - ], - "crypto/rsa/libcrypto-shlib-rsa_ameth.o" => [ - "crypto/rsa/rsa_ameth.c" - ], - "crypto/rsa/libcrypto-shlib-rsa_asn1.o" => [ - "crypto/rsa/rsa_asn1.c" - ], - "crypto/rsa/libcrypto-shlib-rsa_backend.o" => [ - "crypto/rsa/rsa_backend.c" - ], - "crypto/rsa/libcrypto-shlib-rsa_chk.o" => [ - "crypto/rsa/rsa_chk.c" - ], - "crypto/rsa/libcrypto-shlib-rsa_crpt.o" => [ - "crypto/rsa/rsa_crpt.c" - ], - "crypto/rsa/libcrypto-shlib-rsa_depr.o" => [ - "crypto/rsa/rsa_depr.c" - ], - "crypto/rsa/libcrypto-shlib-rsa_err.o" => [ - "crypto/rsa/rsa_err.c" - ], - "crypto/rsa/libcrypto-shlib-rsa_gen.o" => [ - "crypto/rsa/rsa_gen.c" - ], - "crypto/rsa/libcrypto-shlib-rsa_lib.o" => [ - "crypto/rsa/rsa_lib.c" - ], - "crypto/rsa/libcrypto-shlib-rsa_meth.o" => [ - "crypto/rsa/rsa_meth.c" - ], - "crypto/rsa/libcrypto-shlib-rsa_mp.o" => [ - "crypto/rsa/rsa_mp.c" - ], - "crypto/rsa/libcrypto-shlib-rsa_mp_names.o" => [ - "crypto/rsa/rsa_mp_names.c" - ], - "crypto/rsa/libcrypto-shlib-rsa_none.o" => [ - "crypto/rsa/rsa_none.c" - ], - "crypto/rsa/libcrypto-shlib-rsa_oaep.o" => [ - "crypto/rsa/rsa_oaep.c" - ], - "crypto/rsa/libcrypto-shlib-rsa_ossl.o" => [ - "crypto/rsa/rsa_ossl.c" - ], - "crypto/rsa/libcrypto-shlib-rsa_pk1.o" => [ - "crypto/rsa/rsa_pk1.c" - ], - "crypto/rsa/libcrypto-shlib-rsa_pmeth.o" => [ - "crypto/rsa/rsa_pmeth.c" - ], - "crypto/rsa/libcrypto-shlib-rsa_prn.o" => [ - "crypto/rsa/rsa_prn.c" - ], - "crypto/rsa/libcrypto-shlib-rsa_pss.o" => [ - "crypto/rsa/rsa_pss.c" - ], - "crypto/rsa/libcrypto-shlib-rsa_saos.o" => [ - "crypto/rsa/rsa_saos.c" - ], - "crypto/rsa/libcrypto-shlib-rsa_schemes.o" => [ - "crypto/rsa/rsa_schemes.c" - ], - "crypto/rsa/libcrypto-shlib-rsa_sign.o" => [ - "crypto/rsa/rsa_sign.c" - ], - "crypto/rsa/libcrypto-shlib-rsa_sp800_56b_check.o" => [ - "crypto/rsa/rsa_sp800_56b_check.c" - ], - "crypto/rsa/libcrypto-shlib-rsa_sp800_56b_gen.o" => [ - "crypto/rsa/rsa_sp800_56b_gen.c" - ], - "crypto/rsa/libcrypto-shlib-rsa_x931.o" => [ - "crypto/rsa/rsa_x931.c" - ], - "crypto/rsa/libcrypto-shlib-rsa_x931g.o" => [ - "crypto/rsa/rsa_x931g.c" - ], - "crypto/seed/libcrypto-lib-seed.o" => [ - "crypto/seed/seed.c" - ], - "crypto/seed/libcrypto-lib-seed_cbc.o" => [ - "crypto/seed/seed_cbc.c" - ], - "crypto/seed/libcrypto-lib-seed_cfb.o" => [ - "crypto/seed/seed_cfb.c" - ], - "crypto/seed/libcrypto-lib-seed_ecb.o" => [ - "crypto/seed/seed_ecb.c" - ], - "crypto/seed/libcrypto-lib-seed_ofb.o" => [ - "crypto/seed/seed_ofb.c" - ], - "crypto/seed/libcrypto-shlib-seed.o" => [ - "crypto/seed/seed.c" - ], - "crypto/seed/libcrypto-shlib-seed_cbc.o" => [ - "crypto/seed/seed_cbc.c" - ], - "crypto/seed/libcrypto-shlib-seed_cfb.o" => [ - "crypto/seed/seed_cfb.c" - ], - "crypto/seed/libcrypto-shlib-seed_ecb.o" => [ - "crypto/seed/seed_ecb.c" - ], - "crypto/seed/libcrypto-shlib-seed_ofb.o" => [ - "crypto/seed/seed_ofb.c" - ], - "crypto/sha/libcrypto-lib-keccak1600-x86_64.o" => [ - "crypto/sha/keccak1600-x86_64.s" - ], - "crypto/sha/libcrypto-lib-sha1-mb-x86_64.o" => [ - "crypto/sha/sha1-mb-x86_64.s" - ], - "crypto/sha/libcrypto-lib-sha1-x86_64.o" => [ - "crypto/sha/sha1-x86_64.s" - ], - "crypto/sha/libcrypto-lib-sha1_one.o" => [ - "crypto/sha/sha1_one.c" - ], - "crypto/sha/libcrypto-lib-sha1dgst.o" => [ - "crypto/sha/sha1dgst.c" - ], - "crypto/sha/libcrypto-lib-sha256-mb-x86_64.o" => [ - "crypto/sha/sha256-mb-x86_64.s" - ], - "crypto/sha/libcrypto-lib-sha256-x86_64.o" => [ - "crypto/sha/sha256-x86_64.s" - ], - "crypto/sha/libcrypto-lib-sha256.o" => [ - "crypto/sha/sha256.c" - ], - "crypto/sha/libcrypto-lib-sha3.o" => [ - "crypto/sha/sha3.c" - ], - "crypto/sha/libcrypto-lib-sha512-x86_64.o" => [ - "crypto/sha/sha512-x86_64.s" - ], - "crypto/sha/libcrypto-lib-sha512.o" => [ - "crypto/sha/sha512.c" - ], - "crypto/sha/libcrypto-shlib-keccak1600-x86_64.o" => [ - "crypto/sha/keccak1600-x86_64.s" - ], - "crypto/sha/libcrypto-shlib-sha1-mb-x86_64.o" => [ - "crypto/sha/sha1-mb-x86_64.s" - ], - "crypto/sha/libcrypto-shlib-sha1-x86_64.o" => [ - "crypto/sha/sha1-x86_64.s" - ], - "crypto/sha/libcrypto-shlib-sha1_one.o" => [ - "crypto/sha/sha1_one.c" - ], - "crypto/sha/libcrypto-shlib-sha1dgst.o" => [ - "crypto/sha/sha1dgst.c" - ], - "crypto/sha/libcrypto-shlib-sha256-mb-x86_64.o" => [ - "crypto/sha/sha256-mb-x86_64.s" - ], - "crypto/sha/libcrypto-shlib-sha256-x86_64.o" => [ - "crypto/sha/sha256-x86_64.s" - ], - "crypto/sha/libcrypto-shlib-sha256.o" => [ - "crypto/sha/sha256.c" - ], - "crypto/sha/libcrypto-shlib-sha3.o" => [ - "crypto/sha/sha3.c" - ], - "crypto/sha/libcrypto-shlib-sha512-x86_64.o" => [ - "crypto/sha/sha512-x86_64.s" - ], - "crypto/sha/libcrypto-shlib-sha512.o" => [ - "crypto/sha/sha512.c" - ], - "crypto/siphash/libcrypto-lib-siphash.o" => [ - "crypto/siphash/siphash.c" - ], - "crypto/siphash/libcrypto-shlib-siphash.o" => [ - "crypto/siphash/siphash.c" - ], - "crypto/siphash/libssl-shlib-siphash.o" => [ - "crypto/siphash/siphash.c" - ], - "crypto/slh_dsa/libcrypto-lib-slh_adrs.o" => [ - "crypto/slh_dsa/slh_adrs.c" - ], - "crypto/slh_dsa/libcrypto-lib-slh_dsa.o" => [ - "crypto/slh_dsa/slh_dsa.c" - ], - "crypto/slh_dsa/libcrypto-lib-slh_dsa_hash_ctx.o" => [ - "crypto/slh_dsa/slh_dsa_hash_ctx.c" - ], - "crypto/slh_dsa/libcrypto-lib-slh_dsa_key.o" => [ - "crypto/slh_dsa/slh_dsa_key.c" - ], - "crypto/slh_dsa/libcrypto-lib-slh_fors.o" => [ - "crypto/slh_dsa/slh_fors.c" - ], - "crypto/slh_dsa/libcrypto-lib-slh_hash.o" => [ - "crypto/slh_dsa/slh_hash.c" - ], - "crypto/slh_dsa/libcrypto-lib-slh_hypertree.o" => [ - "crypto/slh_dsa/slh_hypertree.c" - ], - "crypto/slh_dsa/libcrypto-lib-slh_params.o" => [ - "crypto/slh_dsa/slh_params.c" - ], - "crypto/slh_dsa/libcrypto-lib-slh_wots.o" => [ - "crypto/slh_dsa/slh_wots.c" - ], - "crypto/slh_dsa/libcrypto-lib-slh_xmss.o" => [ - "crypto/slh_dsa/slh_xmss.c" - ], - "crypto/slh_dsa/libcrypto-shlib-slh_adrs.o" => [ - "crypto/slh_dsa/slh_adrs.c" - ], - "crypto/slh_dsa/libcrypto-shlib-slh_dsa.o" => [ - "crypto/slh_dsa/slh_dsa.c" - ], - "crypto/slh_dsa/libcrypto-shlib-slh_dsa_hash_ctx.o" => [ - "crypto/slh_dsa/slh_dsa_hash_ctx.c" - ], - "crypto/slh_dsa/libcrypto-shlib-slh_dsa_key.o" => [ - "crypto/slh_dsa/slh_dsa_key.c" - ], - "crypto/slh_dsa/libcrypto-shlib-slh_fors.o" => [ - "crypto/slh_dsa/slh_fors.c" - ], - "crypto/slh_dsa/libcrypto-shlib-slh_hash.o" => [ - "crypto/slh_dsa/slh_hash.c" - ], - "crypto/slh_dsa/libcrypto-shlib-slh_hypertree.o" => [ - "crypto/slh_dsa/slh_hypertree.c" - ], - "crypto/slh_dsa/libcrypto-shlib-slh_params.o" => [ - "crypto/slh_dsa/slh_params.c" - ], - "crypto/slh_dsa/libcrypto-shlib-slh_wots.o" => [ - "crypto/slh_dsa/slh_wots.c" - ], - "crypto/slh_dsa/libcrypto-shlib-slh_xmss.o" => [ - "crypto/slh_dsa/slh_xmss.c" - ], - "crypto/srp/libcrypto-lib-srp_lib.o" => [ - "crypto/srp/srp_lib.c" - ], - "crypto/srp/libcrypto-lib-srp_vfy.o" => [ - "crypto/srp/srp_vfy.c" - ], - "crypto/srp/libcrypto-shlib-srp_lib.o" => [ - "crypto/srp/srp_lib.c" - ], - "crypto/srp/libcrypto-shlib-srp_vfy.o" => [ - "crypto/srp/srp_vfy.c" - ], - "crypto/stack/libcrypto-lib-stack.o" => [ - "crypto/stack/stack.c" - ], - "crypto/stack/libcrypto-shlib-stack.o" => [ - "crypto/stack/stack.c" - ], - "crypto/store/libcrypto-lib-store_err.o" => [ - "crypto/store/store_err.c" - ], - "crypto/store/libcrypto-lib-store_init.o" => [ - "crypto/store/store_init.c" - ], - "crypto/store/libcrypto-lib-store_lib.o" => [ - "crypto/store/store_lib.c" - ], - "crypto/store/libcrypto-lib-store_meth.o" => [ - "crypto/store/store_meth.c" - ], - "crypto/store/libcrypto-lib-store_register.o" => [ - "crypto/store/store_register.c" - ], - "crypto/store/libcrypto-lib-store_result.o" => [ - "crypto/store/store_result.c" - ], - "crypto/store/libcrypto-lib-store_strings.o" => [ - "crypto/store/store_strings.c" - ], - "crypto/store/libcrypto-shlib-store_err.o" => [ - "crypto/store/store_err.c" - ], - "crypto/store/libcrypto-shlib-store_init.o" => [ - "crypto/store/store_init.c" - ], - "crypto/store/libcrypto-shlib-store_lib.o" => [ - "crypto/store/store_lib.c" - ], - "crypto/store/libcrypto-shlib-store_meth.o" => [ - "crypto/store/store_meth.c" - ], - "crypto/store/libcrypto-shlib-store_register.o" => [ - "crypto/store/store_register.c" - ], - "crypto/store/libcrypto-shlib-store_result.o" => [ - "crypto/store/store_result.c" - ], - "crypto/store/libcrypto-shlib-store_strings.o" => [ - "crypto/store/store_strings.c" - ], - "crypto/thread/arch/libcrypto-lib-thread_none.o" => [ - "crypto/thread/arch/thread_none.c" - ], - "crypto/thread/arch/libcrypto-lib-thread_posix.o" => [ - "crypto/thread/arch/thread_posix.c" - ], - "crypto/thread/arch/libcrypto-lib-thread_win.o" => [ - "crypto/thread/arch/thread_win.c" - ], - "crypto/thread/arch/libcrypto-shlib-thread_none.o" => [ - "crypto/thread/arch/thread_none.c" - ], - "crypto/thread/arch/libcrypto-shlib-thread_posix.o" => [ - "crypto/thread/arch/thread_posix.c" - ], - "crypto/thread/arch/libcrypto-shlib-thread_win.o" => [ - "crypto/thread/arch/thread_win.c" - ], - "crypto/thread/arch/libssl-shlib-thread_none.o" => [ - "crypto/thread/arch/thread_none.c" - ], - "crypto/thread/arch/libssl-shlib-thread_posix.o" => [ - "crypto/thread/arch/thread_posix.c" - ], - "crypto/thread/arch/libssl-shlib-thread_win.o" => [ - "crypto/thread/arch/thread_win.c" - ], - "crypto/thread/libcrypto-lib-api.o" => [ - "crypto/thread/api.c" - ], - "crypto/thread/libcrypto-lib-arch.o" => [ - "crypto/thread/arch.c" - ], - "crypto/thread/libcrypto-lib-internal.o" => [ - "crypto/thread/internal.c" - ], - "crypto/thread/libcrypto-shlib-api.o" => [ - "crypto/thread/api.c" - ], - "crypto/thread/libcrypto-shlib-arch.o" => [ - "crypto/thread/arch.c" - ], - "crypto/thread/libcrypto-shlib-internal.o" => [ - "crypto/thread/internal.c" - ], - "crypto/thread/libssl-shlib-arch.o" => [ - "crypto/thread/arch.c" - ], - "crypto/tls13secretstest-bin-packet.o" => [ - "crypto/packet.c" - ], - "crypto/tls13secretstest-bin-quic_vlint.o" => [ - "crypto/quic_vlint.c" - ], - "crypto/ts/libcrypto-lib-ts_asn1.o" => [ - "crypto/ts/ts_asn1.c" - ], - "crypto/ts/libcrypto-lib-ts_conf.o" => [ - "crypto/ts/ts_conf.c" - ], - "crypto/ts/libcrypto-lib-ts_err.o" => [ - "crypto/ts/ts_err.c" - ], - "crypto/ts/libcrypto-lib-ts_lib.o" => [ - "crypto/ts/ts_lib.c" - ], - "crypto/ts/libcrypto-lib-ts_req_print.o" => [ - "crypto/ts/ts_req_print.c" - ], - "crypto/ts/libcrypto-lib-ts_req_utils.o" => [ - "crypto/ts/ts_req_utils.c" - ], - "crypto/ts/libcrypto-lib-ts_rsp_print.o" => [ - "crypto/ts/ts_rsp_print.c" - ], - "crypto/ts/libcrypto-lib-ts_rsp_sign.o" => [ - "crypto/ts/ts_rsp_sign.c" - ], - "crypto/ts/libcrypto-lib-ts_rsp_utils.o" => [ - "crypto/ts/ts_rsp_utils.c" - ], - "crypto/ts/libcrypto-lib-ts_rsp_verify.o" => [ - "crypto/ts/ts_rsp_verify.c" - ], - "crypto/ts/libcrypto-lib-ts_verify_ctx.o" => [ - "crypto/ts/ts_verify_ctx.c" - ], - "crypto/ts/libcrypto-shlib-ts_asn1.o" => [ - "crypto/ts/ts_asn1.c" - ], - "crypto/ts/libcrypto-shlib-ts_conf.o" => [ - "crypto/ts/ts_conf.c" - ], - "crypto/ts/libcrypto-shlib-ts_err.o" => [ - "crypto/ts/ts_err.c" - ], - "crypto/ts/libcrypto-shlib-ts_lib.o" => [ - "crypto/ts/ts_lib.c" - ], - "crypto/ts/libcrypto-shlib-ts_req_print.o" => [ - "crypto/ts/ts_req_print.c" - ], - "crypto/ts/libcrypto-shlib-ts_req_utils.o" => [ - "crypto/ts/ts_req_utils.c" - ], - "crypto/ts/libcrypto-shlib-ts_rsp_print.o" => [ - "crypto/ts/ts_rsp_print.c" - ], - "crypto/ts/libcrypto-shlib-ts_rsp_sign.o" => [ - "crypto/ts/ts_rsp_sign.c" - ], - "crypto/ts/libcrypto-shlib-ts_rsp_utils.o" => [ - "crypto/ts/ts_rsp_utils.c" - ], - "crypto/ts/libcrypto-shlib-ts_rsp_verify.o" => [ - "crypto/ts/ts_rsp_verify.c" - ], - "crypto/ts/libcrypto-shlib-ts_verify_ctx.o" => [ - "crypto/ts/ts_verify_ctx.c" - ], - "crypto/txt_db/libcrypto-lib-txt_db.o" => [ - "crypto/txt_db/txt_db.c" - ], - "crypto/txt_db/libcrypto-shlib-txt_db.o" => [ - "crypto/txt_db/txt_db.c" - ], - "crypto/ui/libcrypto-lib-ui_err.o" => [ - "crypto/ui/ui_err.c" - ], - "crypto/ui/libcrypto-lib-ui_lib.o" => [ - "crypto/ui/ui_lib.c" - ], - "crypto/ui/libcrypto-lib-ui_null.o" => [ - "crypto/ui/ui_null.c" - ], - "crypto/ui/libcrypto-lib-ui_openssl.o" => [ - "crypto/ui/ui_openssl.c" - ], - "crypto/ui/libcrypto-lib-ui_util.o" => [ - "crypto/ui/ui_util.c" - ], - "crypto/ui/libcrypto-shlib-ui_err.o" => [ - "crypto/ui/ui_err.c" - ], - "crypto/ui/libcrypto-shlib-ui_lib.o" => [ - "crypto/ui/ui_lib.c" - ], - "crypto/ui/libcrypto-shlib-ui_null.o" => [ - "crypto/ui/ui_null.c" - ], - "crypto/ui/libcrypto-shlib-ui_openssl.o" => [ - "crypto/ui/ui_openssl.c" - ], - "crypto/ui/libcrypto-shlib-ui_util.o" => [ - "crypto/ui/ui_util.c" - ], - "crypto/whrlpool/libcrypto-lib-wp-x86_64.o" => [ - "crypto/whrlpool/wp-x86_64.s" - ], - "crypto/whrlpool/libcrypto-lib-wp_dgst.o" => [ - "crypto/whrlpool/wp_dgst.c" - ], - "crypto/whrlpool/libcrypto-shlib-wp-x86_64.o" => [ - "crypto/whrlpool/wp-x86_64.s" - ], - "crypto/whrlpool/libcrypto-shlib-wp_dgst.o" => [ - "crypto/whrlpool/wp_dgst.c" - ], - "crypto/x509/libcrypto-lib-by_dir.o" => [ - "crypto/x509/by_dir.c" - ], - "crypto/x509/libcrypto-lib-by_file.o" => [ - "crypto/x509/by_file.c" - ], - "crypto/x509/libcrypto-lib-by_store.o" => [ - "crypto/x509/by_store.c" - ], - "crypto/x509/libcrypto-lib-pcy_cache.o" => [ - "crypto/x509/pcy_cache.c" - ], - "crypto/x509/libcrypto-lib-pcy_data.o" => [ - "crypto/x509/pcy_data.c" - ], - "crypto/x509/libcrypto-lib-pcy_lib.o" => [ - "crypto/x509/pcy_lib.c" - ], - "crypto/x509/libcrypto-lib-pcy_map.o" => [ - "crypto/x509/pcy_map.c" - ], - "crypto/x509/libcrypto-lib-pcy_node.o" => [ - "crypto/x509/pcy_node.c" - ], - "crypto/x509/libcrypto-lib-pcy_tree.o" => [ - "crypto/x509/pcy_tree.c" - ], - "crypto/x509/libcrypto-lib-t_acert.o" => [ - "crypto/x509/t_acert.c" - ], - "crypto/x509/libcrypto-lib-t_crl.o" => [ - "crypto/x509/t_crl.c" - ], - "crypto/x509/libcrypto-lib-t_req.o" => [ - "crypto/x509/t_req.c" - ], - "crypto/x509/libcrypto-lib-t_x509.o" => [ - "crypto/x509/t_x509.c" - ], - "crypto/x509/libcrypto-lib-v3_aaa.o" => [ - "crypto/x509/v3_aaa.c" - ], - "crypto/x509/libcrypto-lib-v3_ac_tgt.o" => [ - "crypto/x509/v3_ac_tgt.c" - ], - "crypto/x509/libcrypto-lib-v3_addr.o" => [ - "crypto/x509/v3_addr.c" - ], - "crypto/x509/libcrypto-lib-v3_admis.o" => [ - "crypto/x509/v3_admis.c" - ], - "crypto/x509/libcrypto-lib-v3_akeya.o" => [ - "crypto/x509/v3_akeya.c" - ], - "crypto/x509/libcrypto-lib-v3_akid.o" => [ - "crypto/x509/v3_akid.c" - ], - "crypto/x509/libcrypto-lib-v3_asid.o" => [ - "crypto/x509/v3_asid.c" - ], - "crypto/x509/libcrypto-lib-v3_attrdesc.o" => [ - "crypto/x509/v3_attrdesc.c" - ], - "crypto/x509/libcrypto-lib-v3_attrmap.o" => [ - "crypto/x509/v3_attrmap.c" - ], - "crypto/x509/libcrypto-lib-v3_audit_id.o" => [ - "crypto/x509/v3_audit_id.c" - ], - "crypto/x509/libcrypto-lib-v3_authattid.o" => [ - "crypto/x509/v3_authattid.c" - ], - "crypto/x509/libcrypto-lib-v3_battcons.o" => [ - "crypto/x509/v3_battcons.c" - ], - "crypto/x509/libcrypto-lib-v3_bcons.o" => [ - "crypto/x509/v3_bcons.c" - ], - "crypto/x509/libcrypto-lib-v3_bitst.o" => [ - "crypto/x509/v3_bitst.c" - ], - "crypto/x509/libcrypto-lib-v3_conf.o" => [ - "crypto/x509/v3_conf.c" - ], - "crypto/x509/libcrypto-lib-v3_cpols.o" => [ - "crypto/x509/v3_cpols.c" - ], - "crypto/x509/libcrypto-lib-v3_crld.o" => [ - "crypto/x509/v3_crld.c" - ], - "crypto/x509/libcrypto-lib-v3_enum.o" => [ - "crypto/x509/v3_enum.c" - ], - "crypto/x509/libcrypto-lib-v3_extku.o" => [ - "crypto/x509/v3_extku.c" - ], - "crypto/x509/libcrypto-lib-v3_genn.o" => [ - "crypto/x509/v3_genn.c" - ], - "crypto/x509/libcrypto-lib-v3_group_ac.o" => [ - "crypto/x509/v3_group_ac.c" - ], - "crypto/x509/libcrypto-lib-v3_ia5.o" => [ - "crypto/x509/v3_ia5.c" - ], - "crypto/x509/libcrypto-lib-v3_ind_iss.o" => [ - "crypto/x509/v3_ind_iss.c" - ], - "crypto/x509/libcrypto-lib-v3_info.o" => [ - "crypto/x509/v3_info.c" - ], - "crypto/x509/libcrypto-lib-v3_int.o" => [ - "crypto/x509/v3_int.c" - ], - "crypto/x509/libcrypto-lib-v3_iobo.o" => [ - "crypto/x509/v3_iobo.c" - ], - "crypto/x509/libcrypto-lib-v3_ist.o" => [ - "crypto/x509/v3_ist.c" - ], - "crypto/x509/libcrypto-lib-v3_lib.o" => [ - "crypto/x509/v3_lib.c" - ], - "crypto/x509/libcrypto-lib-v3_ncons.o" => [ - "crypto/x509/v3_ncons.c" - ], - "crypto/x509/libcrypto-lib-v3_no_ass.o" => [ - "crypto/x509/v3_no_ass.c" - ], - "crypto/x509/libcrypto-lib-v3_no_rev_avail.o" => [ - "crypto/x509/v3_no_rev_avail.c" - ], - "crypto/x509/libcrypto-lib-v3_pci.o" => [ - "crypto/x509/v3_pci.c" - ], - "crypto/x509/libcrypto-lib-v3_pcia.o" => [ - "crypto/x509/v3_pcia.c" - ], - "crypto/x509/libcrypto-lib-v3_pcons.o" => [ - "crypto/x509/v3_pcons.c" - ], - "crypto/x509/libcrypto-lib-v3_pku.o" => [ - "crypto/x509/v3_pku.c" - ], - "crypto/x509/libcrypto-lib-v3_pmaps.o" => [ - "crypto/x509/v3_pmaps.c" - ], - "crypto/x509/libcrypto-lib-v3_prn.o" => [ - "crypto/x509/v3_prn.c" - ], - "crypto/x509/libcrypto-lib-v3_purp.o" => [ - "crypto/x509/v3_purp.c" - ], - "crypto/x509/libcrypto-lib-v3_rolespec.o" => [ - "crypto/x509/v3_rolespec.c" - ], - "crypto/x509/libcrypto-lib-v3_san.o" => [ - "crypto/x509/v3_san.c" - ], - "crypto/x509/libcrypto-lib-v3_sda.o" => [ - "crypto/x509/v3_sda.c" - ], - "crypto/x509/libcrypto-lib-v3_single_use.o" => [ - "crypto/x509/v3_single_use.c" - ], - "crypto/x509/libcrypto-lib-v3_skid.o" => [ - "crypto/x509/v3_skid.c" - ], - "crypto/x509/libcrypto-lib-v3_soa_id.o" => [ - "crypto/x509/v3_soa_id.c" - ], - "crypto/x509/libcrypto-lib-v3_sxnet.o" => [ - "crypto/x509/v3_sxnet.c" - ], - "crypto/x509/libcrypto-lib-v3_timespec.o" => [ - "crypto/x509/v3_timespec.c" - ], - "crypto/x509/libcrypto-lib-v3_tlsf.o" => [ - "crypto/x509/v3_tlsf.c" - ], - "crypto/x509/libcrypto-lib-v3_usernotice.o" => [ - "crypto/x509/v3_usernotice.c" - ], - "crypto/x509/libcrypto-lib-v3_utf8.o" => [ - "crypto/x509/v3_utf8.c" - ], - "crypto/x509/libcrypto-lib-v3_utl.o" => [ - "crypto/x509/v3_utl.c" - ], - "crypto/x509/libcrypto-lib-v3err.o" => [ - "crypto/x509/v3err.c" - ], - "crypto/x509/libcrypto-lib-x509_acert.o" => [ - "crypto/x509/x509_acert.c" - ], - "crypto/x509/libcrypto-lib-x509_att.o" => [ - "crypto/x509/x509_att.c" - ], - "crypto/x509/libcrypto-lib-x509_cmp.o" => [ - "crypto/x509/x509_cmp.c" - ], - "crypto/x509/libcrypto-lib-x509_d2.o" => [ - "crypto/x509/x509_d2.c" - ], - "crypto/x509/libcrypto-lib-x509_def.o" => [ - "crypto/x509/x509_def.c" - ], - "crypto/x509/libcrypto-lib-x509_err.o" => [ - "crypto/x509/x509_err.c" - ], - "crypto/x509/libcrypto-lib-x509_ext.o" => [ - "crypto/x509/x509_ext.c" - ], - "crypto/x509/libcrypto-lib-x509_lu.o" => [ - "crypto/x509/x509_lu.c" - ], - "crypto/x509/libcrypto-lib-x509_meth.o" => [ - "crypto/x509/x509_meth.c" - ], - "crypto/x509/libcrypto-lib-x509_obj.o" => [ - "crypto/x509/x509_obj.c" - ], - "crypto/x509/libcrypto-lib-x509_r2x.o" => [ - "crypto/x509/x509_r2x.c" - ], - "crypto/x509/libcrypto-lib-x509_req.o" => [ - "crypto/x509/x509_req.c" - ], - "crypto/x509/libcrypto-lib-x509_set.o" => [ - "crypto/x509/x509_set.c" - ], - "crypto/x509/libcrypto-lib-x509_trust.o" => [ - "crypto/x509/x509_trust.c" - ], - "crypto/x509/libcrypto-lib-x509_txt.o" => [ - "crypto/x509/x509_txt.c" - ], - "crypto/x509/libcrypto-lib-x509_v3.o" => [ - "crypto/x509/x509_v3.c" - ], - "crypto/x509/libcrypto-lib-x509_vfy.o" => [ - "crypto/x509/x509_vfy.c" - ], - "crypto/x509/libcrypto-lib-x509_vpm.o" => [ - "crypto/x509/x509_vpm.c" - ], - "crypto/x509/libcrypto-lib-x509aset.o" => [ - "crypto/x509/x509aset.c" - ], - "crypto/x509/libcrypto-lib-x509cset.o" => [ - "crypto/x509/x509cset.c" - ], - "crypto/x509/libcrypto-lib-x509name.o" => [ - "crypto/x509/x509name.c" - ], - "crypto/x509/libcrypto-lib-x509rset.o" => [ - "crypto/x509/x509rset.c" - ], - "crypto/x509/libcrypto-lib-x509spki.o" => [ - "crypto/x509/x509spki.c" - ], - "crypto/x509/libcrypto-lib-x509type.o" => [ - "crypto/x509/x509type.c" - ], - "crypto/x509/libcrypto-lib-x_all.o" => [ - "crypto/x509/x_all.c" - ], - "crypto/x509/libcrypto-lib-x_attrib.o" => [ - "crypto/x509/x_attrib.c" - ], - "crypto/x509/libcrypto-lib-x_crl.o" => [ - "crypto/x509/x_crl.c" - ], - "crypto/x509/libcrypto-lib-x_exten.o" => [ - "crypto/x509/x_exten.c" - ], - "crypto/x509/libcrypto-lib-x_ietfatt.o" => [ - "crypto/x509/x_ietfatt.c" - ], - "crypto/x509/libcrypto-lib-x_name.o" => [ - "crypto/x509/x_name.c" - ], - "crypto/x509/libcrypto-lib-x_pubkey.o" => [ - "crypto/x509/x_pubkey.c" - ], - "crypto/x509/libcrypto-lib-x_req.o" => [ - "crypto/x509/x_req.c" - ], - "crypto/x509/libcrypto-lib-x_x509.o" => [ - "crypto/x509/x_x509.c" - ], - "crypto/x509/libcrypto-lib-x_x509a.o" => [ - "crypto/x509/x_x509a.c" - ], - "crypto/x509/libcrypto-shlib-by_dir.o" => [ - "crypto/x509/by_dir.c" - ], - "crypto/x509/libcrypto-shlib-by_file.o" => [ - "crypto/x509/by_file.c" - ], - "crypto/x509/libcrypto-shlib-by_store.o" => [ - "crypto/x509/by_store.c" - ], - "crypto/x509/libcrypto-shlib-pcy_cache.o" => [ - "crypto/x509/pcy_cache.c" - ], - "crypto/x509/libcrypto-shlib-pcy_data.o" => [ - "crypto/x509/pcy_data.c" - ], - "crypto/x509/libcrypto-shlib-pcy_lib.o" => [ - "crypto/x509/pcy_lib.c" - ], - "crypto/x509/libcrypto-shlib-pcy_map.o" => [ - "crypto/x509/pcy_map.c" - ], - "crypto/x509/libcrypto-shlib-pcy_node.o" => [ - "crypto/x509/pcy_node.c" - ], - "crypto/x509/libcrypto-shlib-pcy_tree.o" => [ - "crypto/x509/pcy_tree.c" - ], - "crypto/x509/libcrypto-shlib-t_acert.o" => [ - "crypto/x509/t_acert.c" - ], - "crypto/x509/libcrypto-shlib-t_crl.o" => [ - "crypto/x509/t_crl.c" - ], - "crypto/x509/libcrypto-shlib-t_req.o" => [ - "crypto/x509/t_req.c" - ], - "crypto/x509/libcrypto-shlib-t_x509.o" => [ - "crypto/x509/t_x509.c" - ], - "crypto/x509/libcrypto-shlib-v3_aaa.o" => [ - "crypto/x509/v3_aaa.c" - ], - "crypto/x509/libcrypto-shlib-v3_ac_tgt.o" => [ - "crypto/x509/v3_ac_tgt.c" - ], - "crypto/x509/libcrypto-shlib-v3_addr.o" => [ - "crypto/x509/v3_addr.c" - ], - "crypto/x509/libcrypto-shlib-v3_admis.o" => [ - "crypto/x509/v3_admis.c" - ], - "crypto/x509/libcrypto-shlib-v3_akeya.o" => [ - "crypto/x509/v3_akeya.c" - ], - "crypto/x509/libcrypto-shlib-v3_akid.o" => [ - "crypto/x509/v3_akid.c" - ], - "crypto/x509/libcrypto-shlib-v3_asid.o" => [ - "crypto/x509/v3_asid.c" - ], - "crypto/x509/libcrypto-shlib-v3_attrdesc.o" => [ - "crypto/x509/v3_attrdesc.c" - ], - "crypto/x509/libcrypto-shlib-v3_attrmap.o" => [ - "crypto/x509/v3_attrmap.c" - ], - "crypto/x509/libcrypto-shlib-v3_audit_id.o" => [ - "crypto/x509/v3_audit_id.c" - ], - "crypto/x509/libcrypto-shlib-v3_authattid.o" => [ - "crypto/x509/v3_authattid.c" - ], - "crypto/x509/libcrypto-shlib-v3_battcons.o" => [ - "crypto/x509/v3_battcons.c" - ], - "crypto/x509/libcrypto-shlib-v3_bcons.o" => [ - "crypto/x509/v3_bcons.c" - ], - "crypto/x509/libcrypto-shlib-v3_bitst.o" => [ - "crypto/x509/v3_bitst.c" - ], - "crypto/x509/libcrypto-shlib-v3_conf.o" => [ - "crypto/x509/v3_conf.c" - ], - "crypto/x509/libcrypto-shlib-v3_cpols.o" => [ - "crypto/x509/v3_cpols.c" - ], - "crypto/x509/libcrypto-shlib-v3_crld.o" => [ - "crypto/x509/v3_crld.c" - ], - "crypto/x509/libcrypto-shlib-v3_enum.o" => [ - "crypto/x509/v3_enum.c" - ], - "crypto/x509/libcrypto-shlib-v3_extku.o" => [ - "crypto/x509/v3_extku.c" - ], - "crypto/x509/libcrypto-shlib-v3_genn.o" => [ - "crypto/x509/v3_genn.c" - ], - "crypto/x509/libcrypto-shlib-v3_group_ac.o" => [ - "crypto/x509/v3_group_ac.c" - ], - "crypto/x509/libcrypto-shlib-v3_ia5.o" => [ - "crypto/x509/v3_ia5.c" - ], - "crypto/x509/libcrypto-shlib-v3_ind_iss.o" => [ - "crypto/x509/v3_ind_iss.c" - ], - "crypto/x509/libcrypto-shlib-v3_info.o" => [ - "crypto/x509/v3_info.c" - ], - "crypto/x509/libcrypto-shlib-v3_int.o" => [ - "crypto/x509/v3_int.c" - ], - "crypto/x509/libcrypto-shlib-v3_iobo.o" => [ - "crypto/x509/v3_iobo.c" - ], - "crypto/x509/libcrypto-shlib-v3_ist.o" => [ - "crypto/x509/v3_ist.c" - ], - "crypto/x509/libcrypto-shlib-v3_lib.o" => [ - "crypto/x509/v3_lib.c" - ], - "crypto/x509/libcrypto-shlib-v3_ncons.o" => [ - "crypto/x509/v3_ncons.c" - ], - "crypto/x509/libcrypto-shlib-v3_no_ass.o" => [ - "crypto/x509/v3_no_ass.c" - ], - "crypto/x509/libcrypto-shlib-v3_no_rev_avail.o" => [ - "crypto/x509/v3_no_rev_avail.c" - ], - "crypto/x509/libcrypto-shlib-v3_pci.o" => [ - "crypto/x509/v3_pci.c" - ], - "crypto/x509/libcrypto-shlib-v3_pcia.o" => [ - "crypto/x509/v3_pcia.c" - ], - "crypto/x509/libcrypto-shlib-v3_pcons.o" => [ - "crypto/x509/v3_pcons.c" - ], - "crypto/x509/libcrypto-shlib-v3_pku.o" => [ - "crypto/x509/v3_pku.c" - ], - "crypto/x509/libcrypto-shlib-v3_pmaps.o" => [ - "crypto/x509/v3_pmaps.c" - ], - "crypto/x509/libcrypto-shlib-v3_prn.o" => [ - "crypto/x509/v3_prn.c" - ], - "crypto/x509/libcrypto-shlib-v3_purp.o" => [ - "crypto/x509/v3_purp.c" - ], - "crypto/x509/libcrypto-shlib-v3_rolespec.o" => [ - "crypto/x509/v3_rolespec.c" - ], - "crypto/x509/libcrypto-shlib-v3_san.o" => [ - "crypto/x509/v3_san.c" - ], - "crypto/x509/libcrypto-shlib-v3_sda.o" => [ - "crypto/x509/v3_sda.c" - ], - "crypto/x509/libcrypto-shlib-v3_single_use.o" => [ - "crypto/x509/v3_single_use.c" - ], - "crypto/x509/libcrypto-shlib-v3_skid.o" => [ - "crypto/x509/v3_skid.c" - ], - "crypto/x509/libcrypto-shlib-v3_soa_id.o" => [ - "crypto/x509/v3_soa_id.c" - ], - "crypto/x509/libcrypto-shlib-v3_sxnet.o" => [ - "crypto/x509/v3_sxnet.c" - ], - "crypto/x509/libcrypto-shlib-v3_timespec.o" => [ - "crypto/x509/v3_timespec.c" - ], - "crypto/x509/libcrypto-shlib-v3_tlsf.o" => [ - "crypto/x509/v3_tlsf.c" - ], - "crypto/x509/libcrypto-shlib-v3_usernotice.o" => [ - "crypto/x509/v3_usernotice.c" - ], - "crypto/x509/libcrypto-shlib-v3_utf8.o" => [ - "crypto/x509/v3_utf8.c" - ], - "crypto/x509/libcrypto-shlib-v3_utl.o" => [ - "crypto/x509/v3_utl.c" - ], - "crypto/x509/libcrypto-shlib-v3err.o" => [ - "crypto/x509/v3err.c" - ], - "crypto/x509/libcrypto-shlib-x509_acert.o" => [ - "crypto/x509/x509_acert.c" - ], - "crypto/x509/libcrypto-shlib-x509_att.o" => [ - "crypto/x509/x509_att.c" - ], - "crypto/x509/libcrypto-shlib-x509_cmp.o" => [ - "crypto/x509/x509_cmp.c" - ], - "crypto/x509/libcrypto-shlib-x509_d2.o" => [ - "crypto/x509/x509_d2.c" - ], - "crypto/x509/libcrypto-shlib-x509_def.o" => [ - "crypto/x509/x509_def.c" - ], - "crypto/x509/libcrypto-shlib-x509_err.o" => [ - "crypto/x509/x509_err.c" - ], - "crypto/x509/libcrypto-shlib-x509_ext.o" => [ - "crypto/x509/x509_ext.c" - ], - "crypto/x509/libcrypto-shlib-x509_lu.o" => [ - "crypto/x509/x509_lu.c" - ], - "crypto/x509/libcrypto-shlib-x509_meth.o" => [ - "crypto/x509/x509_meth.c" - ], - "crypto/x509/libcrypto-shlib-x509_obj.o" => [ - "crypto/x509/x509_obj.c" - ], - "crypto/x509/libcrypto-shlib-x509_r2x.o" => [ - "crypto/x509/x509_r2x.c" - ], - "crypto/x509/libcrypto-shlib-x509_req.o" => [ - "crypto/x509/x509_req.c" - ], - "crypto/x509/libcrypto-shlib-x509_set.o" => [ - "crypto/x509/x509_set.c" - ], - "crypto/x509/libcrypto-shlib-x509_trust.o" => [ - "crypto/x509/x509_trust.c" - ], - "crypto/x509/libcrypto-shlib-x509_txt.o" => [ - "crypto/x509/x509_txt.c" - ], - "crypto/x509/libcrypto-shlib-x509_v3.o" => [ - "crypto/x509/x509_v3.c" - ], - "crypto/x509/libcrypto-shlib-x509_vfy.o" => [ - "crypto/x509/x509_vfy.c" - ], - "crypto/x509/libcrypto-shlib-x509_vpm.o" => [ - "crypto/x509/x509_vpm.c" - ], - "crypto/x509/libcrypto-shlib-x509aset.o" => [ - "crypto/x509/x509aset.c" - ], - "crypto/x509/libcrypto-shlib-x509cset.o" => [ - "crypto/x509/x509cset.c" - ], - "crypto/x509/libcrypto-shlib-x509name.o" => [ - "crypto/x509/x509name.c" - ], - "crypto/x509/libcrypto-shlib-x509rset.o" => [ - "crypto/x509/x509rset.c" - ], - "crypto/x509/libcrypto-shlib-x509spki.o" => [ - "crypto/x509/x509spki.c" - ], - "crypto/x509/libcrypto-shlib-x509type.o" => [ - "crypto/x509/x509type.c" - ], - "crypto/x509/libcrypto-shlib-x_all.o" => [ - "crypto/x509/x_all.c" - ], - "crypto/x509/libcrypto-shlib-x_attrib.o" => [ - "crypto/x509/x_attrib.c" - ], - "crypto/x509/libcrypto-shlib-x_crl.o" => [ - "crypto/x509/x_crl.c" - ], - "crypto/x509/libcrypto-shlib-x_exten.o" => [ - "crypto/x509/x_exten.c" - ], - "crypto/x509/libcrypto-shlib-x_ietfatt.o" => [ - "crypto/x509/x_ietfatt.c" - ], - "crypto/x509/libcrypto-shlib-x_name.o" => [ - "crypto/x509/x_name.c" - ], - "crypto/x509/libcrypto-shlib-x_pubkey.o" => [ - "crypto/x509/x_pubkey.c" - ], - "crypto/x509/libcrypto-shlib-x_req.o" => [ - "crypto/x509/x_req.c" - ], - "crypto/x509/libcrypto-shlib-x_x509.o" => [ - "crypto/x509/x_x509.c" - ], - "crypto/x509/libcrypto-shlib-x_x509a.o" => [ - "crypto/x509/x_x509a.c" - ], - "engines/capi" => [ - "engines/capi-dso-e_capi.o", - "engines/capi.ld" - ], - "engines/capi-dso-e_capi.o" => [ - "engines/e_capi.c" - ], - "engines/dasync" => [ - "engines/dasync-dso-e_dasync.o", - "engines/dasync.ld" - ], - "engines/dasync-dso-e_dasync.o" => [ - "engines/e_dasync.c" - ], - "engines/devcrypto" => [ - "engines/devcrypto-dso-e_devcrypto.o", - "engines/devcrypto.ld" - ], - "engines/devcrypto-dso-e_devcrypto.o" => [ - "engines/e_devcrypto.c" - ], - "engines/loader_attic" => [ - "crypto/pem/loader_attic-dso-pvkfmt.o", - "engines/loader_attic-dso-e_loader_attic.o", - "engines/loader_attic.ld" - ], - "engines/loader_attic-dso-e_loader_attic.o" => [ - "engines/e_loader_attic.c" - ], - "engines/ossltest" => [ - "engines/ossltest-dso-e_ossltest.o", - "engines/ossltest.ld" - ], - "engines/ossltest-dso-e_ossltest.o" => [ - "engines/e_ossltest.c" - ], - "engines/padlock" => [ - "engines/padlock-dso-e_padlock-x86_64.o", - "engines/padlock-dso-e_padlock.o", - "engines/padlock.ld" - ], - "engines/padlock-dso-e_padlock-x86_64.o" => [ - "engines/e_padlock-x86_64.s" - ], - "engines/padlock-dso-e_padlock.o" => [ - "engines/e_padlock.c" - ], - "fuzz/acert-test" => [ - "fuzz/acert-test-bin-acert.o", - "fuzz/acert-test-bin-test-corpus.o" - ], - "fuzz/acert-test-bin-acert.o" => [ - "fuzz/acert.c" - ], - "fuzz/acert-test-bin-test-corpus.o" => [ - "fuzz/test-corpus.c" - ], - "fuzz/asn1-test" => [ - "fuzz/asn1-test-bin-asn1.o", - "fuzz/asn1-test-bin-fuzz_rand.o", - "fuzz/asn1-test-bin-test-corpus.o" - ], - "fuzz/asn1-test-bin-asn1.o" => [ - "fuzz/asn1.c" - ], - "fuzz/asn1-test-bin-fuzz_rand.o" => [ - "fuzz/fuzz_rand.c" - ], - "fuzz/asn1-test-bin-test-corpus.o" => [ - "fuzz/test-corpus.c" - ], - "fuzz/asn1parse-test" => [ - "fuzz/asn1parse-test-bin-asn1parse.o", - "fuzz/asn1parse-test-bin-test-corpus.o" - ], - "fuzz/asn1parse-test-bin-asn1parse.o" => [ - "fuzz/asn1parse.c" - ], - "fuzz/asn1parse-test-bin-test-corpus.o" => [ - "fuzz/test-corpus.c" - ], - "fuzz/bignum-test" => [ - "fuzz/bignum-test-bin-bignum.o", - "fuzz/bignum-test-bin-test-corpus.o" - ], - "fuzz/bignum-test-bin-bignum.o" => [ - "fuzz/bignum.c" - ], - "fuzz/bignum-test-bin-test-corpus.o" => [ - "fuzz/test-corpus.c" - ], - "fuzz/bndiv-test" => [ - "fuzz/bndiv-test-bin-bndiv.o", - "fuzz/bndiv-test-bin-test-corpus.o" - ], - "fuzz/bndiv-test-bin-bndiv.o" => [ - "fuzz/bndiv.c" - ], - "fuzz/bndiv-test-bin-test-corpus.o" => [ - "fuzz/test-corpus.c" - ], - "fuzz/client-test" => [ - "fuzz/client-test-bin-client.o", - "fuzz/client-test-bin-fuzz_rand.o", - "fuzz/client-test-bin-test-corpus.o" - ], - "fuzz/client-test-bin-client.o" => [ - "fuzz/client.c" - ], - "fuzz/client-test-bin-fuzz_rand.o" => [ - "fuzz/fuzz_rand.c" - ], - "fuzz/client-test-bin-test-corpus.o" => [ - "fuzz/test-corpus.c" - ], - "fuzz/cmp-test" => [ - "fuzz/cmp-test-bin-cmp.o", - "fuzz/cmp-test-bin-fuzz_rand.o", - "fuzz/cmp-test-bin-test-corpus.o" - ], - "fuzz/cmp-test-bin-cmp.o" => [ - "fuzz/cmp.c" - ], - "fuzz/cmp-test-bin-fuzz_rand.o" => [ - "fuzz/fuzz_rand.c" - ], - "fuzz/cmp-test-bin-test-corpus.o" => [ - "fuzz/test-corpus.c" - ], - "fuzz/cms-test" => [ - "fuzz/cms-test-bin-cms.o", - "fuzz/cms-test-bin-test-corpus.o" - ], - "fuzz/cms-test-bin-cms.o" => [ - "fuzz/cms.c" - ], - "fuzz/cms-test-bin-test-corpus.o" => [ - "fuzz/test-corpus.c" - ], - "fuzz/conf-test" => [ - "fuzz/conf-test-bin-conf.o", - "fuzz/conf-test-bin-test-corpus.o" - ], - "fuzz/conf-test-bin-conf.o" => [ - "fuzz/conf.c" - ], - "fuzz/conf-test-bin-test-corpus.o" => [ - "fuzz/test-corpus.c" - ], - "fuzz/crl-test" => [ - "fuzz/crl-test-bin-crl.o", - "fuzz/crl-test-bin-test-corpus.o" - ], - "fuzz/crl-test-bin-crl.o" => [ - "fuzz/crl.c" - ], - "fuzz/crl-test-bin-test-corpus.o" => [ - "fuzz/test-corpus.c" - ], - "fuzz/ct-test" => [ - "fuzz/ct-test-bin-ct.o", - "fuzz/ct-test-bin-test-corpus.o" - ], - "fuzz/ct-test-bin-ct.o" => [ - "fuzz/ct.c" - ], - "fuzz/ct-test-bin-test-corpus.o" => [ - "fuzz/test-corpus.c" - ], - "fuzz/decoder-test" => [ - "fuzz/decoder-test-bin-decoder.o", - "fuzz/decoder-test-bin-fuzz_rand.o", - "fuzz/decoder-test-bin-test-corpus.o" - ], - "fuzz/decoder-test-bin-decoder.o" => [ - "fuzz/decoder.c" - ], - "fuzz/decoder-test-bin-fuzz_rand.o" => [ - "fuzz/fuzz_rand.c" - ], - "fuzz/decoder-test-bin-test-corpus.o" => [ - "fuzz/test-corpus.c" - ], - "fuzz/dtlsclient-test" => [ - "fuzz/dtlsclient-test-bin-dtlsclient.o", - "fuzz/dtlsclient-test-bin-fuzz_rand.o", - "fuzz/dtlsclient-test-bin-test-corpus.o" - ], - "fuzz/dtlsclient-test-bin-dtlsclient.o" => [ - "fuzz/dtlsclient.c" - ], - "fuzz/dtlsclient-test-bin-fuzz_rand.o" => [ - "fuzz/fuzz_rand.c" - ], - "fuzz/dtlsclient-test-bin-test-corpus.o" => [ - "fuzz/test-corpus.c" - ], - "fuzz/dtlsserver-test" => [ - "fuzz/dtlsserver-test-bin-dtlsserver.o", - "fuzz/dtlsserver-test-bin-fuzz_rand.o", - "fuzz/dtlsserver-test-bin-test-corpus.o" - ], - "fuzz/dtlsserver-test-bin-dtlsserver.o" => [ - "fuzz/dtlsserver.c" - ], - "fuzz/dtlsserver-test-bin-fuzz_rand.o" => [ - "fuzz/fuzz_rand.c" - ], - "fuzz/dtlsserver-test-bin-test-corpus.o" => [ - "fuzz/test-corpus.c" - ], - "fuzz/hashtable-test" => [ - "fuzz/hashtable-test-bin-fuzz_rand.o", - "fuzz/hashtable-test-bin-hashtable.o", - "fuzz/hashtable-test-bin-test-corpus.o" - ], - "fuzz/hashtable-test-bin-fuzz_rand.o" => [ - "fuzz/fuzz_rand.c" - ], - "fuzz/hashtable-test-bin-hashtable.o" => [ - "fuzz/hashtable.c" - ], - "fuzz/hashtable-test-bin-test-corpus.o" => [ - "fuzz/test-corpus.c" - ], - "fuzz/ml-dsa-test" => [ - "fuzz/ml-dsa-test-bin-fuzz_rand.o", - "fuzz/ml-dsa-test-bin-ml-dsa.o", - "fuzz/ml-dsa-test-bin-test-corpus.o" - ], - "fuzz/ml-dsa-test-bin-fuzz_rand.o" => [ - "fuzz/fuzz_rand.c" - ], - "fuzz/ml-dsa-test-bin-ml-dsa.o" => [ - "fuzz/ml-dsa.c" - ], - "fuzz/ml-dsa-test-bin-test-corpus.o" => [ - "fuzz/test-corpus.c" - ], - "fuzz/ml-kem-test" => [ - "fuzz/ml-kem-test-bin-fuzz_rand.o", - "fuzz/ml-kem-test-bin-ml-kem.o", - "fuzz/ml-kem-test-bin-test-corpus.o" - ], - "fuzz/ml-kem-test-bin-fuzz_rand.o" => [ - "fuzz/fuzz_rand.c" - ], - "fuzz/ml-kem-test-bin-ml-kem.o" => [ - "fuzz/ml-kem.c" - ], - "fuzz/ml-kem-test-bin-test-corpus.o" => [ - "fuzz/test-corpus.c" - ], - "fuzz/pem-test" => [ - "fuzz/pem-test-bin-pem.o", - "fuzz/pem-test-bin-test-corpus.o" - ], - "fuzz/pem-test-bin-pem.o" => [ - "fuzz/pem.c" - ], - "fuzz/pem-test-bin-test-corpus.o" => [ - "fuzz/test-corpus.c" - ], - "fuzz/provider-test" => [ - "fuzz/provider-test-bin-provider.o", - "fuzz/provider-test-bin-test-corpus.o" - ], - "fuzz/provider-test-bin-provider.o" => [ - "fuzz/provider.c" - ], - "fuzz/provider-test-bin-test-corpus.o" => [ - "fuzz/test-corpus.c" - ], - "fuzz/punycode-test" => [ - "fuzz/punycode-test-bin-punycode.o", - "fuzz/punycode-test-bin-test-corpus.o" - ], - "fuzz/punycode-test-bin-punycode.o" => [ - "fuzz/punycode.c" - ], - "fuzz/punycode-test-bin-test-corpus.o" => [ - "fuzz/test-corpus.c" - ], - "fuzz/quic-client-test" => [ - "fuzz/quic-client-test-bin-fuzz_rand.o", - "fuzz/quic-client-test-bin-quic-client.o", - "fuzz/quic-client-test-bin-test-corpus.o" - ], - "fuzz/quic-client-test-bin-fuzz_rand.o" => [ - "fuzz/fuzz_rand.c" - ], - "fuzz/quic-client-test-bin-quic-client.o" => [ - "fuzz/quic-client.c" - ], - "fuzz/quic-client-test-bin-test-corpus.o" => [ - "fuzz/test-corpus.c" - ], - "fuzz/quic-lcidm-test" => [ - "fuzz/quic-lcidm-test-bin-fuzz_rand.o", - "fuzz/quic-lcidm-test-bin-quic-lcidm.o", - "fuzz/quic-lcidm-test-bin-test-corpus.o" - ], - "fuzz/quic-lcidm-test-bin-fuzz_rand.o" => [ - "fuzz/fuzz_rand.c" - ], - "fuzz/quic-lcidm-test-bin-quic-lcidm.o" => [ - "fuzz/quic-lcidm.c" - ], - "fuzz/quic-lcidm-test-bin-test-corpus.o" => [ - "fuzz/test-corpus.c" - ], - "fuzz/quic-rcidm-test" => [ - "fuzz/quic-rcidm-test-bin-fuzz_rand.o", - "fuzz/quic-rcidm-test-bin-quic-rcidm.o", - "fuzz/quic-rcidm-test-bin-test-corpus.o" - ], - "fuzz/quic-rcidm-test-bin-fuzz_rand.o" => [ - "fuzz/fuzz_rand.c" - ], - "fuzz/quic-rcidm-test-bin-quic-rcidm.o" => [ - "fuzz/quic-rcidm.c" - ], - "fuzz/quic-rcidm-test-bin-test-corpus.o" => [ - "fuzz/test-corpus.c" - ], - "fuzz/quic-server-test" => [ - "fuzz/quic-server-test-bin-fuzz_rand.o", - "fuzz/quic-server-test-bin-quic-server.o", - "fuzz/quic-server-test-bin-test-corpus.o" - ], - "fuzz/quic-server-test-bin-fuzz_rand.o" => [ - "fuzz/fuzz_rand.c" - ], - "fuzz/quic-server-test-bin-quic-server.o" => [ - "fuzz/quic-server.c" - ], - "fuzz/quic-server-test-bin-test-corpus.o" => [ - "fuzz/test-corpus.c" - ], - "fuzz/quic-srtm-test" => [ - "fuzz/quic-srtm-test-bin-fuzz_rand.o", - "fuzz/quic-srtm-test-bin-quic-srtm.o", - "fuzz/quic-srtm-test-bin-test-corpus.o" - ], - "fuzz/quic-srtm-test-bin-fuzz_rand.o" => [ - "fuzz/fuzz_rand.c" - ], - "fuzz/quic-srtm-test-bin-quic-srtm.o" => [ - "fuzz/quic-srtm.c" - ], - "fuzz/quic-srtm-test-bin-test-corpus.o" => [ - "fuzz/test-corpus.c" - ], - "fuzz/server-test" => [ - "fuzz/server-test-bin-fuzz_rand.o", - "fuzz/server-test-bin-server.o", - "fuzz/server-test-bin-test-corpus.o" - ], - "fuzz/server-test-bin-fuzz_rand.o" => [ - "fuzz/fuzz_rand.c" - ], - "fuzz/server-test-bin-server.o" => [ - "fuzz/server.c" - ], - "fuzz/server-test-bin-test-corpus.o" => [ - "fuzz/test-corpus.c" - ], - "fuzz/slh-dsa-test" => [ - "fuzz/slh-dsa-test-bin-fuzz_rand.o", - "fuzz/slh-dsa-test-bin-slh-dsa.o", - "fuzz/slh-dsa-test-bin-test-corpus.o" - ], - "fuzz/slh-dsa-test-bin-fuzz_rand.o" => [ - "fuzz/fuzz_rand.c" - ], - "fuzz/slh-dsa-test-bin-slh-dsa.o" => [ - "fuzz/slh-dsa.c" - ], - "fuzz/slh-dsa-test-bin-test-corpus.o" => [ - "fuzz/test-corpus.c" - ], - "fuzz/smime-test" => [ - "fuzz/smime-test-bin-smime.o", - "fuzz/smime-test-bin-test-corpus.o" - ], - "fuzz/smime-test-bin-smime.o" => [ - "fuzz/smime.c" - ], - "fuzz/smime-test-bin-test-corpus.o" => [ - "fuzz/test-corpus.c" - ], - "fuzz/v3name-test" => [ - "fuzz/v3name-test-bin-test-corpus.o", - "fuzz/v3name-test-bin-v3name.o" - ], - "fuzz/v3name-test-bin-test-corpus.o" => [ - "fuzz/test-corpus.c" - ], - "fuzz/v3name-test-bin-v3name.o" => [ - "fuzz/v3name.c" - ], - "fuzz/x509-test" => [ - "fuzz/x509-test-bin-fuzz_rand.o", - "fuzz/x509-test-bin-test-corpus.o", - "fuzz/x509-test-bin-x509.o" - ], - "fuzz/x509-test-bin-fuzz_rand.o" => [ - "fuzz/fuzz_rand.c" - ], - "fuzz/x509-test-bin-test-corpus.o" => [ - "fuzz/test-corpus.c" - ], - "fuzz/x509-test-bin-x509.o" => [ - "fuzz/x509.c" - ], - "libcrypto" => [ - "crypto/aes/libcrypto-lib-aes-x86_64.o", - "crypto/aes/libcrypto-lib-aes_cfb.o", - "crypto/aes/libcrypto-lib-aes_ecb.o", - "crypto/aes/libcrypto-lib-aes_ige.o", - "crypto/aes/libcrypto-lib-aes_misc.o", - "crypto/aes/libcrypto-lib-aes_ofb.o", - "crypto/aes/libcrypto-lib-aes_wrap.o", - "crypto/aes/libcrypto-lib-aesni-mb-x86_64.o", - "crypto/aes/libcrypto-lib-aesni-sha1-x86_64.o", - "crypto/aes/libcrypto-lib-aesni-sha256-x86_64.o", - "crypto/aes/libcrypto-lib-aesni-x86_64.o", - "crypto/aes/libcrypto-lib-aesni-xts-avx512.o", - "crypto/aes/libcrypto-lib-bsaes-x86_64.o", - "crypto/aes/libcrypto-lib-vpaes-x86_64.o", - "crypto/asn1/libcrypto-lib-a_bitstr.o", - "crypto/asn1/libcrypto-lib-a_d2i_fp.o", - "crypto/asn1/libcrypto-lib-a_digest.o", - "crypto/asn1/libcrypto-lib-a_dup.o", - "crypto/asn1/libcrypto-lib-a_gentm.o", - "crypto/asn1/libcrypto-lib-a_i2d_fp.o", - "crypto/asn1/libcrypto-lib-a_int.o", - "crypto/asn1/libcrypto-lib-a_mbstr.o", - "crypto/asn1/libcrypto-lib-a_object.o", - "crypto/asn1/libcrypto-lib-a_octet.o", - "crypto/asn1/libcrypto-lib-a_print.o", - "crypto/asn1/libcrypto-lib-a_sign.o", - "crypto/asn1/libcrypto-lib-a_strex.o", - "crypto/asn1/libcrypto-lib-a_strnid.o", - "crypto/asn1/libcrypto-lib-a_time.o", - "crypto/asn1/libcrypto-lib-a_type.o", - "crypto/asn1/libcrypto-lib-a_utctm.o", - "crypto/asn1/libcrypto-lib-a_utf8.o", - "crypto/asn1/libcrypto-lib-a_verify.o", - "crypto/asn1/libcrypto-lib-ameth_lib.o", - "crypto/asn1/libcrypto-lib-asn1_err.o", - "crypto/asn1/libcrypto-lib-asn1_gen.o", - "crypto/asn1/libcrypto-lib-asn1_item_list.o", - "crypto/asn1/libcrypto-lib-asn1_lib.o", - "crypto/asn1/libcrypto-lib-asn1_parse.o", - "crypto/asn1/libcrypto-lib-asn_mime.o", - "crypto/asn1/libcrypto-lib-asn_moid.o", - "crypto/asn1/libcrypto-lib-asn_mstbl.o", - "crypto/asn1/libcrypto-lib-asn_pack.o", - "crypto/asn1/libcrypto-lib-bio_asn1.o", - "crypto/asn1/libcrypto-lib-bio_ndef.o", - "crypto/asn1/libcrypto-lib-d2i_param.o", - "crypto/asn1/libcrypto-lib-d2i_pr.o", - "crypto/asn1/libcrypto-lib-d2i_pu.o", - "crypto/asn1/libcrypto-lib-evp_asn1.o", - "crypto/asn1/libcrypto-lib-f_int.o", - "crypto/asn1/libcrypto-lib-f_string.o", - "crypto/asn1/libcrypto-lib-i2d_evp.o", - "crypto/asn1/libcrypto-lib-n_pkey.o", - "crypto/asn1/libcrypto-lib-nsseq.o", - "crypto/asn1/libcrypto-lib-p5_pbe.o", - "crypto/asn1/libcrypto-lib-p5_pbev2.o", - "crypto/asn1/libcrypto-lib-p5_scrypt.o", - "crypto/asn1/libcrypto-lib-p8_pkey.o", - "crypto/asn1/libcrypto-lib-t_bitst.o", - "crypto/asn1/libcrypto-lib-t_pkey.o", - "crypto/asn1/libcrypto-lib-t_spki.o", - "crypto/asn1/libcrypto-lib-tasn_dec.o", - "crypto/asn1/libcrypto-lib-tasn_enc.o", - "crypto/asn1/libcrypto-lib-tasn_fre.o", - "crypto/asn1/libcrypto-lib-tasn_new.o", - "crypto/asn1/libcrypto-lib-tasn_prn.o", - "crypto/asn1/libcrypto-lib-tasn_scn.o", - "crypto/asn1/libcrypto-lib-tasn_typ.o", - "crypto/asn1/libcrypto-lib-tasn_utl.o", - "crypto/asn1/libcrypto-lib-x_algor.o", - "crypto/asn1/libcrypto-lib-x_bignum.o", - "crypto/asn1/libcrypto-lib-x_info.o", - "crypto/asn1/libcrypto-lib-x_int64.o", - "crypto/asn1/libcrypto-lib-x_long.o", - "crypto/asn1/libcrypto-lib-x_pkey.o", - "crypto/asn1/libcrypto-lib-x_sig.o", - "crypto/asn1/libcrypto-lib-x_spki.o", - "crypto/asn1/libcrypto-lib-x_val.o", - "crypto/async/arch/libcrypto-lib-async_null.o", - "crypto/async/arch/libcrypto-lib-async_posix.o", - "crypto/async/arch/libcrypto-lib-async_win.o", - "crypto/async/libcrypto-lib-async.o", - "crypto/async/libcrypto-lib-async_err.o", - "crypto/async/libcrypto-lib-async_wait.o", - "crypto/bf/libcrypto-lib-bf_cfb64.o", - "crypto/bf/libcrypto-lib-bf_ecb.o", - "crypto/bf/libcrypto-lib-bf_enc.o", - "crypto/bf/libcrypto-lib-bf_ofb64.o", - "crypto/bf/libcrypto-lib-bf_skey.o", - "crypto/bio/libcrypto-lib-bf_buff.o", - "crypto/bio/libcrypto-lib-bf_lbuf.o", - "crypto/bio/libcrypto-lib-bf_nbio.o", - "crypto/bio/libcrypto-lib-bf_null.o", - "crypto/bio/libcrypto-lib-bf_prefix.o", - "crypto/bio/libcrypto-lib-bf_readbuff.o", - "crypto/bio/libcrypto-lib-bio_addr.o", - "crypto/bio/libcrypto-lib-bio_cb.o", - "crypto/bio/libcrypto-lib-bio_dump.o", - "crypto/bio/libcrypto-lib-bio_err.o", - "crypto/bio/libcrypto-lib-bio_lib.o", - "crypto/bio/libcrypto-lib-bio_meth.o", - "crypto/bio/libcrypto-lib-bio_print.o", - "crypto/bio/libcrypto-lib-bio_sock.o", - "crypto/bio/libcrypto-lib-bio_sock2.o", - "crypto/bio/libcrypto-lib-bss_acpt.o", - "crypto/bio/libcrypto-lib-bss_bio.o", - "crypto/bio/libcrypto-lib-bss_conn.o", - "crypto/bio/libcrypto-lib-bss_core.o", - "crypto/bio/libcrypto-lib-bss_dgram.o", - "crypto/bio/libcrypto-lib-bss_dgram_pair.o", - "crypto/bio/libcrypto-lib-bss_fd.o", - "crypto/bio/libcrypto-lib-bss_file.o", - "crypto/bio/libcrypto-lib-bss_log.o", - "crypto/bio/libcrypto-lib-bss_mem.o", - "crypto/bio/libcrypto-lib-bss_null.o", - "crypto/bio/libcrypto-lib-bss_sock.o", - "crypto/bio/libcrypto-lib-ossl_core_bio.o", - "crypto/bn/asm/libcrypto-lib-x86_64-gcc.o", - "crypto/bn/libcrypto-lib-bn_add.o", - "crypto/bn/libcrypto-lib-bn_blind.o", - "crypto/bn/libcrypto-lib-bn_const.o", - "crypto/bn/libcrypto-lib-bn_conv.o", - "crypto/bn/libcrypto-lib-bn_ctx.o", - "crypto/bn/libcrypto-lib-bn_depr.o", - "crypto/bn/libcrypto-lib-bn_dh.o", - "crypto/bn/libcrypto-lib-bn_div.o", - "crypto/bn/libcrypto-lib-bn_err.o", - "crypto/bn/libcrypto-lib-bn_exp.o", - "crypto/bn/libcrypto-lib-bn_exp2.o", - "crypto/bn/libcrypto-lib-bn_gcd.o", - "crypto/bn/libcrypto-lib-bn_gf2m.o", - "crypto/bn/libcrypto-lib-bn_intern.o", - "crypto/bn/libcrypto-lib-bn_kron.o", - "crypto/bn/libcrypto-lib-bn_lib.o", - "crypto/bn/libcrypto-lib-bn_mod.o", - "crypto/bn/libcrypto-lib-bn_mont.o", - "crypto/bn/libcrypto-lib-bn_mpi.o", - "crypto/bn/libcrypto-lib-bn_mul.o", - "crypto/bn/libcrypto-lib-bn_nist.o", - "crypto/bn/libcrypto-lib-bn_prime.o", - "crypto/bn/libcrypto-lib-bn_print.o", - "crypto/bn/libcrypto-lib-bn_rand.o", - "crypto/bn/libcrypto-lib-bn_recp.o", - "crypto/bn/libcrypto-lib-bn_rsa_fips186_4.o", - "crypto/bn/libcrypto-lib-bn_shift.o", - "crypto/bn/libcrypto-lib-bn_sqr.o", - "crypto/bn/libcrypto-lib-bn_sqrt.o", - "crypto/bn/libcrypto-lib-bn_srp.o", - "crypto/bn/libcrypto-lib-bn_word.o", - "crypto/bn/libcrypto-lib-bn_x931p.o", - "crypto/bn/libcrypto-lib-rsaz-2k-avx512.o", - "crypto/bn/libcrypto-lib-rsaz-2k-avxifma.o", - "crypto/bn/libcrypto-lib-rsaz-3k-avx512.o", - "crypto/bn/libcrypto-lib-rsaz-3k-avxifma.o", - "crypto/bn/libcrypto-lib-rsaz-4k-avx512.o", - "crypto/bn/libcrypto-lib-rsaz-4k-avxifma.o", - "crypto/bn/libcrypto-lib-rsaz-avx2.o", - "crypto/bn/libcrypto-lib-rsaz-x86_64.o", - "crypto/bn/libcrypto-lib-rsaz_exp.o", - "crypto/bn/libcrypto-lib-rsaz_exp_x2.o", - "crypto/bn/libcrypto-lib-x86_64-gf2m.o", - "crypto/bn/libcrypto-lib-x86_64-mont.o", - "crypto/bn/libcrypto-lib-x86_64-mont5.o", - "crypto/buffer/libcrypto-lib-buf_err.o", - "crypto/buffer/libcrypto-lib-buffer.o", - "crypto/camellia/libcrypto-lib-cmll-x86_64.o", - "crypto/camellia/libcrypto-lib-cmll_cfb.o", - "crypto/camellia/libcrypto-lib-cmll_ctr.o", - "crypto/camellia/libcrypto-lib-cmll_ecb.o", - "crypto/camellia/libcrypto-lib-cmll_misc.o", - "crypto/camellia/libcrypto-lib-cmll_ofb.o", - "crypto/cast/libcrypto-lib-c_cfb64.o", - "crypto/cast/libcrypto-lib-c_ecb.o", - "crypto/cast/libcrypto-lib-c_enc.o", - "crypto/cast/libcrypto-lib-c_ofb64.o", - "crypto/cast/libcrypto-lib-c_skey.o", - "crypto/chacha/libcrypto-lib-chacha-x86_64.o", - "crypto/cmac/libcrypto-lib-cmac.o", - "crypto/cmp/libcrypto-lib-cmp_asn.o", - "crypto/cmp/libcrypto-lib-cmp_client.o", - "crypto/cmp/libcrypto-lib-cmp_ctx.o", - "crypto/cmp/libcrypto-lib-cmp_err.o", - "crypto/cmp/libcrypto-lib-cmp_genm.o", - "crypto/cmp/libcrypto-lib-cmp_hdr.o", - "crypto/cmp/libcrypto-lib-cmp_http.o", - "crypto/cmp/libcrypto-lib-cmp_msg.o", - "crypto/cmp/libcrypto-lib-cmp_protect.o", - "crypto/cmp/libcrypto-lib-cmp_server.o", - "crypto/cmp/libcrypto-lib-cmp_status.o", - "crypto/cmp/libcrypto-lib-cmp_util.o", - "crypto/cmp/libcrypto-lib-cmp_vfy.o", - "crypto/cms/libcrypto-lib-cms_asn1.o", - "crypto/cms/libcrypto-lib-cms_att.o", - "crypto/cms/libcrypto-lib-cms_cd.o", - "crypto/cms/libcrypto-lib-cms_dd.o", - "crypto/cms/libcrypto-lib-cms_dh.o", - "crypto/cms/libcrypto-lib-cms_ec.o", - "crypto/cms/libcrypto-lib-cms_enc.o", - "crypto/cms/libcrypto-lib-cms_env.o", - "crypto/cms/libcrypto-lib-cms_err.o", - "crypto/cms/libcrypto-lib-cms_ess.o", - "crypto/cms/libcrypto-lib-cms_io.o", - "crypto/cms/libcrypto-lib-cms_kari.o", - "crypto/cms/libcrypto-lib-cms_lib.o", - "crypto/cms/libcrypto-lib-cms_pwri.o", - "crypto/cms/libcrypto-lib-cms_rsa.o", - "crypto/cms/libcrypto-lib-cms_sd.o", - "crypto/cms/libcrypto-lib-cms_smime.o", - "crypto/comp/libcrypto-lib-c_brotli.o", - "crypto/comp/libcrypto-lib-c_zlib.o", - "crypto/comp/libcrypto-lib-c_zstd.o", - "crypto/comp/libcrypto-lib-comp_err.o", - "crypto/comp/libcrypto-lib-comp_lib.o", - "crypto/conf/libcrypto-lib-conf_api.o", - "crypto/conf/libcrypto-lib-conf_def.o", - "crypto/conf/libcrypto-lib-conf_err.o", - "crypto/conf/libcrypto-lib-conf_lib.o", - "crypto/conf/libcrypto-lib-conf_mall.o", - "crypto/conf/libcrypto-lib-conf_mod.o", - "crypto/conf/libcrypto-lib-conf_sap.o", - "crypto/conf/libcrypto-lib-conf_ssl.o", - "crypto/crmf/libcrypto-lib-crmf_asn.o", - "crypto/crmf/libcrypto-lib-crmf_err.o", - "crypto/crmf/libcrypto-lib-crmf_lib.o", - "crypto/crmf/libcrypto-lib-crmf_pbm.o", - "crypto/ct/libcrypto-lib-ct_b64.o", - "crypto/ct/libcrypto-lib-ct_err.o", - "crypto/ct/libcrypto-lib-ct_log.o", - "crypto/ct/libcrypto-lib-ct_oct.o", - "crypto/ct/libcrypto-lib-ct_policy.o", - "crypto/ct/libcrypto-lib-ct_prn.o", - "crypto/ct/libcrypto-lib-ct_sct.o", - "crypto/ct/libcrypto-lib-ct_sct_ctx.o", - "crypto/ct/libcrypto-lib-ct_vfy.o", - "crypto/ct/libcrypto-lib-ct_x509v3.o", - "crypto/des/libcrypto-lib-cbc_cksm.o", - "crypto/des/libcrypto-lib-cbc_enc.o", - "crypto/des/libcrypto-lib-cfb64ede.o", - "crypto/des/libcrypto-lib-cfb64enc.o", - "crypto/des/libcrypto-lib-cfb_enc.o", - "crypto/des/libcrypto-lib-des_enc.o", - "crypto/des/libcrypto-lib-ecb3_enc.o", - "crypto/des/libcrypto-lib-ecb_enc.o", - "crypto/des/libcrypto-lib-fcrypt.o", - "crypto/des/libcrypto-lib-fcrypt_b.o", - "crypto/des/libcrypto-lib-ofb64ede.o", - "crypto/des/libcrypto-lib-ofb64enc.o", - "crypto/des/libcrypto-lib-ofb_enc.o", - "crypto/des/libcrypto-lib-pcbc_enc.o", - "crypto/des/libcrypto-lib-qud_cksm.o", - "crypto/des/libcrypto-lib-rand_key.o", - "crypto/des/libcrypto-lib-set_key.o", - "crypto/des/libcrypto-lib-str2key.o", - "crypto/des/libcrypto-lib-xcbc_enc.o", - "crypto/dh/libcrypto-lib-dh_ameth.o", - "crypto/dh/libcrypto-lib-dh_asn1.o", - "crypto/dh/libcrypto-lib-dh_backend.o", - "crypto/dh/libcrypto-lib-dh_check.o", - "crypto/dh/libcrypto-lib-dh_depr.o", - "crypto/dh/libcrypto-lib-dh_err.o", - "crypto/dh/libcrypto-lib-dh_gen.o", - "crypto/dh/libcrypto-lib-dh_group_params.o", - "crypto/dh/libcrypto-lib-dh_kdf.o", - "crypto/dh/libcrypto-lib-dh_key.o", - "crypto/dh/libcrypto-lib-dh_lib.o", - "crypto/dh/libcrypto-lib-dh_meth.o", - "crypto/dh/libcrypto-lib-dh_pmeth.o", - "crypto/dh/libcrypto-lib-dh_prn.o", - "crypto/dh/libcrypto-lib-dh_rfc5114.o", - "crypto/dsa/libcrypto-lib-dsa_ameth.o", - "crypto/dsa/libcrypto-lib-dsa_asn1.o", - "crypto/dsa/libcrypto-lib-dsa_backend.o", - "crypto/dsa/libcrypto-lib-dsa_check.o", - "crypto/dsa/libcrypto-lib-dsa_depr.o", - "crypto/dsa/libcrypto-lib-dsa_err.o", - "crypto/dsa/libcrypto-lib-dsa_gen.o", - "crypto/dsa/libcrypto-lib-dsa_key.o", - "crypto/dsa/libcrypto-lib-dsa_lib.o", - "crypto/dsa/libcrypto-lib-dsa_meth.o", - "crypto/dsa/libcrypto-lib-dsa_ossl.o", - "crypto/dsa/libcrypto-lib-dsa_pmeth.o", - "crypto/dsa/libcrypto-lib-dsa_prn.o", - "crypto/dsa/libcrypto-lib-dsa_sign.o", - "crypto/dsa/libcrypto-lib-dsa_vrf.o", - "crypto/dso/libcrypto-lib-dso_dl.o", - "crypto/dso/libcrypto-lib-dso_dlfcn.o", - "crypto/dso/libcrypto-lib-dso_err.o", - "crypto/dso/libcrypto-lib-dso_lib.o", - "crypto/dso/libcrypto-lib-dso_openssl.o", - "crypto/dso/libcrypto-lib-dso_vms.o", - "crypto/dso/libcrypto-lib-dso_win32.o", - "crypto/ec/curve448/arch_32/libcrypto-lib-f_impl32.o", - "crypto/ec/curve448/arch_64/libcrypto-lib-f_impl64.o", - "crypto/ec/curve448/libcrypto-lib-curve448.o", - "crypto/ec/curve448/libcrypto-lib-curve448_tables.o", - "crypto/ec/curve448/libcrypto-lib-eddsa.o", - "crypto/ec/curve448/libcrypto-lib-f_generic.o", - "crypto/ec/curve448/libcrypto-lib-scalar.o", - "crypto/ec/libcrypto-lib-curve25519.o", - "crypto/ec/libcrypto-lib-ec2_oct.o", - "crypto/ec/libcrypto-lib-ec2_smpl.o", - "crypto/ec/libcrypto-lib-ec_ameth.o", - "crypto/ec/libcrypto-lib-ec_asn1.o", - "crypto/ec/libcrypto-lib-ec_backend.o", - "crypto/ec/libcrypto-lib-ec_check.o", - "crypto/ec/libcrypto-lib-ec_curve.o", - "crypto/ec/libcrypto-lib-ec_cvt.o", - "crypto/ec/libcrypto-lib-ec_deprecated.o", - "crypto/ec/libcrypto-lib-ec_err.o", - "crypto/ec/libcrypto-lib-ec_key.o", - "crypto/ec/libcrypto-lib-ec_kmeth.o", - "crypto/ec/libcrypto-lib-ec_lib.o", - "crypto/ec/libcrypto-lib-ec_mult.o", - "crypto/ec/libcrypto-lib-ec_oct.o", - "crypto/ec/libcrypto-lib-ec_pmeth.o", - "crypto/ec/libcrypto-lib-ec_print.o", - "crypto/ec/libcrypto-lib-ecdh_kdf.o", - "crypto/ec/libcrypto-lib-ecdh_ossl.o", - "crypto/ec/libcrypto-lib-ecdsa_ossl.o", - "crypto/ec/libcrypto-lib-ecdsa_sign.o", - "crypto/ec/libcrypto-lib-ecdsa_vrf.o", - "crypto/ec/libcrypto-lib-eck_prn.o", - "crypto/ec/libcrypto-lib-ecp_mont.o", - "crypto/ec/libcrypto-lib-ecp_nist.o", - "crypto/ec/libcrypto-lib-ecp_nistp224.o", - "crypto/ec/libcrypto-lib-ecp_nistp256.o", - "crypto/ec/libcrypto-lib-ecp_nistp384.o", - "crypto/ec/libcrypto-lib-ecp_nistp521.o", - "crypto/ec/libcrypto-lib-ecp_nistputil.o", - "crypto/ec/libcrypto-lib-ecp_nistz256-x86_64.o", - "crypto/ec/libcrypto-lib-ecp_nistz256.o", - "crypto/ec/libcrypto-lib-ecp_oct.o", - "crypto/ec/libcrypto-lib-ecp_smpl.o", - "crypto/ec/libcrypto-lib-ecx_backend.o", - "crypto/ec/libcrypto-lib-ecx_key.o", - "crypto/ec/libcrypto-lib-ecx_meth.o", - "crypto/ec/libcrypto-lib-x25519-x86_64.o", - "crypto/encode_decode/libcrypto-lib-decoder_err.o", - "crypto/encode_decode/libcrypto-lib-decoder_lib.o", - "crypto/encode_decode/libcrypto-lib-decoder_meth.o", - "crypto/encode_decode/libcrypto-lib-decoder_pkey.o", - "crypto/encode_decode/libcrypto-lib-encoder_err.o", - "crypto/encode_decode/libcrypto-lib-encoder_lib.o", - "crypto/encode_decode/libcrypto-lib-encoder_meth.o", - "crypto/encode_decode/libcrypto-lib-encoder_pkey.o", - "crypto/engine/libcrypto-lib-eng_all.o", - "crypto/engine/libcrypto-lib-eng_cnf.o", - "crypto/engine/libcrypto-lib-eng_ctrl.o", - "crypto/engine/libcrypto-lib-eng_dyn.o", - "crypto/engine/libcrypto-lib-eng_err.o", - "crypto/engine/libcrypto-lib-eng_fat.o", - "crypto/engine/libcrypto-lib-eng_init.o", - "crypto/engine/libcrypto-lib-eng_lib.o", - "crypto/engine/libcrypto-lib-eng_list.o", - "crypto/engine/libcrypto-lib-eng_openssl.o", - "crypto/engine/libcrypto-lib-eng_pkey.o", - "crypto/engine/libcrypto-lib-eng_rdrand.o", - "crypto/engine/libcrypto-lib-eng_table.o", - "crypto/engine/libcrypto-lib-tb_asnmth.o", - "crypto/engine/libcrypto-lib-tb_cipher.o", - "crypto/engine/libcrypto-lib-tb_dh.o", - "crypto/engine/libcrypto-lib-tb_digest.o", - "crypto/engine/libcrypto-lib-tb_dsa.o", - "crypto/engine/libcrypto-lib-tb_eckey.o", - "crypto/engine/libcrypto-lib-tb_pkmeth.o", - "crypto/engine/libcrypto-lib-tb_rand.o", - "crypto/engine/libcrypto-lib-tb_rsa.o", - "crypto/err/libcrypto-lib-err.o", - "crypto/err/libcrypto-lib-err_all.o", - "crypto/err/libcrypto-lib-err_all_legacy.o", - "crypto/err/libcrypto-lib-err_blocks.o", - "crypto/err/libcrypto-lib-err_mark.o", - "crypto/err/libcrypto-lib-err_prn.o", - "crypto/err/libcrypto-lib-err_save.o", - "crypto/ess/libcrypto-lib-ess_asn1.o", - "crypto/ess/libcrypto-lib-ess_err.o", - "crypto/ess/libcrypto-lib-ess_lib.o", - "crypto/evp/libcrypto-lib-asymcipher.o", - "crypto/evp/libcrypto-lib-bio_b64.o", - "crypto/evp/libcrypto-lib-bio_enc.o", - "crypto/evp/libcrypto-lib-bio_md.o", - "crypto/evp/libcrypto-lib-bio_ok.o", - "crypto/evp/libcrypto-lib-c_allc.o", - "crypto/evp/libcrypto-lib-c_alld.o", - "crypto/evp/libcrypto-lib-cmeth_lib.o", - "crypto/evp/libcrypto-lib-ctrl_params_translate.o", - "crypto/evp/libcrypto-lib-dh_ctrl.o", - "crypto/evp/libcrypto-lib-dh_support.o", - "crypto/evp/libcrypto-lib-digest.o", - "crypto/evp/libcrypto-lib-dsa_ctrl.o", - "crypto/evp/libcrypto-lib-e_aes.o", - "crypto/evp/libcrypto-lib-e_aes_cbc_hmac_sha1.o", - "crypto/evp/libcrypto-lib-e_aes_cbc_hmac_sha256.o", - "crypto/evp/libcrypto-lib-e_aria.o", - "crypto/evp/libcrypto-lib-e_bf.o", - "crypto/evp/libcrypto-lib-e_camellia.o", - "crypto/evp/libcrypto-lib-e_cast.o", - "crypto/evp/libcrypto-lib-e_chacha20_poly1305.o", - "crypto/evp/libcrypto-lib-e_des.o", - "crypto/evp/libcrypto-lib-e_des3.o", - "crypto/evp/libcrypto-lib-e_idea.o", - "crypto/evp/libcrypto-lib-e_null.o", - "crypto/evp/libcrypto-lib-e_old.o", - "crypto/evp/libcrypto-lib-e_rc2.o", - "crypto/evp/libcrypto-lib-e_rc4.o", - "crypto/evp/libcrypto-lib-e_rc4_hmac_md5.o", - "crypto/evp/libcrypto-lib-e_rc5.o", - "crypto/evp/libcrypto-lib-e_seed.o", - "crypto/evp/libcrypto-lib-e_sm4.o", - "crypto/evp/libcrypto-lib-e_xcbc_d.o", - "crypto/evp/libcrypto-lib-ec_ctrl.o", - "crypto/evp/libcrypto-lib-ec_support.o", - "crypto/evp/libcrypto-lib-encode.o", - "crypto/evp/libcrypto-lib-evp_cnf.o", - "crypto/evp/libcrypto-lib-evp_enc.o", - "crypto/evp/libcrypto-lib-evp_err.o", - "crypto/evp/libcrypto-lib-evp_fetch.o", - "crypto/evp/libcrypto-lib-evp_key.o", - "crypto/evp/libcrypto-lib-evp_lib.o", - "crypto/evp/libcrypto-lib-evp_pbe.o", - "crypto/evp/libcrypto-lib-evp_pkey.o", - "crypto/evp/libcrypto-lib-evp_rand.o", - "crypto/evp/libcrypto-lib-evp_utils.o", - "crypto/evp/libcrypto-lib-exchange.o", - "crypto/evp/libcrypto-lib-kdf_lib.o", - "crypto/evp/libcrypto-lib-kdf_meth.o", - "crypto/evp/libcrypto-lib-kem.o", - "crypto/evp/libcrypto-lib-keymgmt_lib.o", - "crypto/evp/libcrypto-lib-keymgmt_meth.o", - "crypto/evp/libcrypto-lib-legacy_blake2.o", - "crypto/evp/libcrypto-lib-legacy_md4.o", - "crypto/evp/libcrypto-lib-legacy_md5.o", - "crypto/evp/libcrypto-lib-legacy_md5_sha1.o", - "crypto/evp/libcrypto-lib-legacy_ripemd.o", - "crypto/evp/libcrypto-lib-legacy_sha.o", - "crypto/evp/libcrypto-lib-legacy_wp.o", - "crypto/evp/libcrypto-lib-m_null.o", - "crypto/evp/libcrypto-lib-m_sigver.o", - "crypto/evp/libcrypto-lib-mac_lib.o", - "crypto/evp/libcrypto-lib-mac_meth.o", - "crypto/evp/libcrypto-lib-names.o", - "crypto/evp/libcrypto-lib-p5_crpt.o", - "crypto/evp/libcrypto-lib-p5_crpt2.o", - "crypto/evp/libcrypto-lib-p_dec.o", - "crypto/evp/libcrypto-lib-p_enc.o", - "crypto/evp/libcrypto-lib-p_legacy.o", - "crypto/evp/libcrypto-lib-p_lib.o", - "crypto/evp/libcrypto-lib-p_open.o", - "crypto/evp/libcrypto-lib-p_seal.o", - "crypto/evp/libcrypto-lib-p_sign.o", - "crypto/evp/libcrypto-lib-p_verify.o", - "crypto/evp/libcrypto-lib-pbe_scrypt.o", - "crypto/evp/libcrypto-lib-pmeth_check.o", - "crypto/evp/libcrypto-lib-pmeth_gn.o", - "crypto/evp/libcrypto-lib-pmeth_lib.o", - "crypto/evp/libcrypto-lib-s_lib.o", - "crypto/evp/libcrypto-lib-signature.o", - "crypto/evp/libcrypto-lib-skeymgmt_meth.o", - "crypto/ffc/libcrypto-lib-ffc_backend.o", - "crypto/ffc/libcrypto-lib-ffc_dh.o", - "crypto/ffc/libcrypto-lib-ffc_key_generate.o", - "crypto/ffc/libcrypto-lib-ffc_key_validate.o", - "crypto/ffc/libcrypto-lib-ffc_params.o", - "crypto/ffc/libcrypto-lib-ffc_params_generate.o", - "crypto/ffc/libcrypto-lib-ffc_params_validate.o", - "crypto/hashtable/libcrypto-lib-hashfunc.o", - "crypto/hashtable/libcrypto-lib-hashtable.o", - "crypto/hmac/libcrypto-lib-hmac.o", - "crypto/hpke/libcrypto-lib-hpke.o", - "crypto/hpke/libcrypto-lib-hpke_util.o", - "crypto/http/libcrypto-lib-http_client.o", - "crypto/http/libcrypto-lib-http_err.o", - "crypto/http/libcrypto-lib-http_lib.o", - "crypto/kdf/libcrypto-lib-kdf_err.o", - "crypto/lhash/libcrypto-lib-lh_stats.o", - "crypto/lhash/libcrypto-lib-lhash.o", - "crypto/libcrypto-lib-asn1_dsa.o", - "crypto/libcrypto-lib-bsearch.o", - "crypto/libcrypto-lib-comp_methods.o", - "crypto/libcrypto-lib-context.o", - "crypto/libcrypto-lib-core_algorithm.o", - "crypto/libcrypto-lib-core_fetch.o", - "crypto/libcrypto-lib-core_namemap.o", - "crypto/libcrypto-lib-cpt_err.o", - "crypto/libcrypto-lib-cpuid.o", - "crypto/libcrypto-lib-cryptlib.o", - "crypto/libcrypto-lib-ctype.o", - "crypto/libcrypto-lib-cversion.o", - "crypto/libcrypto-lib-defaults.o", - "crypto/libcrypto-lib-der_writer.o", - "crypto/libcrypto-lib-deterministic_nonce.o", - "crypto/libcrypto-lib-ebcdic.o", - "crypto/libcrypto-lib-ex_data.o", - "crypto/libcrypto-lib-getenv.o", - "crypto/libcrypto-lib-indicator_core.o", - "crypto/libcrypto-lib-info.o", - "crypto/libcrypto-lib-init.o", - "crypto/libcrypto-lib-initthread.o", - "crypto/libcrypto-lib-mem.o", - "crypto/libcrypto-lib-mem_sec.o", - "crypto/libcrypto-lib-o_dir.o", - "crypto/libcrypto-lib-o_fopen.o", - "crypto/libcrypto-lib-o_init.o", - "crypto/libcrypto-lib-o_str.o", - "crypto/libcrypto-lib-o_time.o", - "crypto/libcrypto-lib-packet.o", - "crypto/libcrypto-lib-param_build.o", - "crypto/libcrypto-lib-param_build_set.o", - "crypto/libcrypto-lib-params.o", - "crypto/libcrypto-lib-params_dup.o", - "crypto/libcrypto-lib-params_from_text.o", - "crypto/libcrypto-lib-params_idx.o", - "crypto/libcrypto-lib-passphrase.o", - "crypto/libcrypto-lib-provider.o", - "crypto/libcrypto-lib-provider_child.o", - "crypto/libcrypto-lib-provider_conf.o", - "crypto/libcrypto-lib-provider_core.o", - "crypto/libcrypto-lib-provider_predefined.o", - "crypto/libcrypto-lib-punycode.o", - "crypto/libcrypto-lib-quic_vlint.o", - "crypto/libcrypto-lib-self_test_core.o", - "crypto/libcrypto-lib-sleep.o", - "crypto/libcrypto-lib-sparse_array.o", - "crypto/libcrypto-lib-ssl_err.o", - "crypto/libcrypto-lib-threads_lib.o", - "crypto/libcrypto-lib-threads_none.o", - "crypto/libcrypto-lib-threads_pthread.o", - "crypto/libcrypto-lib-threads_win.o", - "crypto/libcrypto-lib-time.o", - "crypto/libcrypto-lib-trace.o", - "crypto/libcrypto-lib-uid.o", - "crypto/libcrypto-lib-x86_64cpuid.o", - "crypto/md4/libcrypto-lib-md4_dgst.o", - "crypto/md4/libcrypto-lib-md4_one.o", - "crypto/md5/libcrypto-lib-md5-x86_64.o", - "crypto/md5/libcrypto-lib-md5_dgst.o", - "crypto/md5/libcrypto-lib-md5_one.o", - "crypto/md5/libcrypto-lib-md5_sha1.o", - "crypto/ml_dsa/libcrypto-lib-ml_dsa_encoders.o", - "crypto/ml_dsa/libcrypto-lib-ml_dsa_key.o", - "crypto/ml_dsa/libcrypto-lib-ml_dsa_key_compress.o", - "crypto/ml_dsa/libcrypto-lib-ml_dsa_matrix.o", - "crypto/ml_dsa/libcrypto-lib-ml_dsa_ntt.o", - "crypto/ml_dsa/libcrypto-lib-ml_dsa_params.o", - "crypto/ml_dsa/libcrypto-lib-ml_dsa_sample.o", - "crypto/ml_dsa/libcrypto-lib-ml_dsa_sign.o", - "crypto/ml_kem/libcrypto-lib-ml_kem.o", - "crypto/modes/libcrypto-lib-aes-gcm-avx512.o", - "crypto/modes/libcrypto-lib-aesni-gcm-x86_64.o", - "crypto/modes/libcrypto-lib-cbc128.o", - "crypto/modes/libcrypto-lib-ccm128.o", - "crypto/modes/libcrypto-lib-cfb128.o", - "crypto/modes/libcrypto-lib-ctr128.o", - "crypto/modes/libcrypto-lib-cts128.o", - "crypto/modes/libcrypto-lib-gcm128.o", - "crypto/modes/libcrypto-lib-ghash-x86_64.o", - "crypto/modes/libcrypto-lib-ocb128.o", - "crypto/modes/libcrypto-lib-ofb128.o", - "crypto/modes/libcrypto-lib-siv128.o", - "crypto/modes/libcrypto-lib-wrap128.o", - "crypto/modes/libcrypto-lib-xts128.o", - "crypto/modes/libcrypto-lib-xts128gb.o", - "crypto/objects/libcrypto-lib-o_names.o", - "crypto/objects/libcrypto-lib-obj_dat.o", - "crypto/objects/libcrypto-lib-obj_err.o", - "crypto/objects/libcrypto-lib-obj_lib.o", - "crypto/objects/libcrypto-lib-obj_xref.o", - "crypto/ocsp/libcrypto-lib-ocsp_asn.o", - "crypto/ocsp/libcrypto-lib-ocsp_cl.o", - "crypto/ocsp/libcrypto-lib-ocsp_err.o", - "crypto/ocsp/libcrypto-lib-ocsp_ext.o", - "crypto/ocsp/libcrypto-lib-ocsp_http.o", - "crypto/ocsp/libcrypto-lib-ocsp_lib.o", - "crypto/ocsp/libcrypto-lib-ocsp_prn.o", - "crypto/ocsp/libcrypto-lib-ocsp_srv.o", - "crypto/ocsp/libcrypto-lib-ocsp_vfy.o", - "crypto/ocsp/libcrypto-lib-v3_ocsp.o", - "crypto/pem/libcrypto-lib-pem_all.o", - "crypto/pem/libcrypto-lib-pem_err.o", - "crypto/pem/libcrypto-lib-pem_info.o", - "crypto/pem/libcrypto-lib-pem_lib.o", - "crypto/pem/libcrypto-lib-pem_oth.o", - "crypto/pem/libcrypto-lib-pem_pk8.o", - "crypto/pem/libcrypto-lib-pem_pkey.o", - "crypto/pem/libcrypto-lib-pem_sign.o", - "crypto/pem/libcrypto-lib-pem_x509.o", - "crypto/pem/libcrypto-lib-pem_xaux.o", - "crypto/pem/libcrypto-lib-pvkfmt.o", - "crypto/pkcs12/libcrypto-lib-p12_add.o", - "crypto/pkcs12/libcrypto-lib-p12_asn.o", - "crypto/pkcs12/libcrypto-lib-p12_attr.o", - "crypto/pkcs12/libcrypto-lib-p12_crpt.o", - "crypto/pkcs12/libcrypto-lib-p12_crt.o", - "crypto/pkcs12/libcrypto-lib-p12_decr.o", - "crypto/pkcs12/libcrypto-lib-p12_init.o", - "crypto/pkcs12/libcrypto-lib-p12_key.o", - "crypto/pkcs12/libcrypto-lib-p12_kiss.o", - "crypto/pkcs12/libcrypto-lib-p12_mutl.o", - "crypto/pkcs12/libcrypto-lib-p12_npas.o", - "crypto/pkcs12/libcrypto-lib-p12_p8d.o", - "crypto/pkcs12/libcrypto-lib-p12_p8e.o", - "crypto/pkcs12/libcrypto-lib-p12_sbag.o", - "crypto/pkcs12/libcrypto-lib-p12_utl.o", - "crypto/pkcs12/libcrypto-lib-pk12err.o", - "crypto/pkcs7/libcrypto-lib-bio_pk7.o", - "crypto/pkcs7/libcrypto-lib-pk7_asn1.o", - "crypto/pkcs7/libcrypto-lib-pk7_attr.o", - "crypto/pkcs7/libcrypto-lib-pk7_doit.o", - "crypto/pkcs7/libcrypto-lib-pk7_lib.o", - "crypto/pkcs7/libcrypto-lib-pk7_mime.o", - "crypto/pkcs7/libcrypto-lib-pk7_smime.o", - "crypto/pkcs7/libcrypto-lib-pkcs7err.o", - "crypto/poly1305/libcrypto-lib-poly1305-x86_64.o", - "crypto/poly1305/libcrypto-lib-poly1305.o", - "crypto/property/libcrypto-lib-defn_cache.o", - "crypto/property/libcrypto-lib-property.o", - "crypto/property/libcrypto-lib-property_err.o", - "crypto/property/libcrypto-lib-property_parse.o", - "crypto/property/libcrypto-lib-property_query.o", - "crypto/property/libcrypto-lib-property_string.o", - "crypto/rand/libcrypto-lib-prov_seed.o", - "crypto/rand/libcrypto-lib-rand_deprecated.o", - "crypto/rand/libcrypto-lib-rand_err.o", - "crypto/rand/libcrypto-lib-rand_lib.o", - "crypto/rand/libcrypto-lib-rand_meth.o", - "crypto/rand/libcrypto-lib-rand_pool.o", - "crypto/rand/libcrypto-lib-rand_uniform.o", - "crypto/rand/libcrypto-lib-randfile.o", - "crypto/rc2/libcrypto-lib-rc2_cbc.o", - "crypto/rc2/libcrypto-lib-rc2_ecb.o", - "crypto/rc2/libcrypto-lib-rc2_skey.o", - "crypto/rc2/libcrypto-lib-rc2cfb64.o", - "crypto/rc2/libcrypto-lib-rc2ofb64.o", - "crypto/rc4/libcrypto-lib-rc4-md5-x86_64.o", - "crypto/rc4/libcrypto-lib-rc4-x86_64.o", - "crypto/ripemd/libcrypto-lib-rmd_dgst.o", - "crypto/ripemd/libcrypto-lib-rmd_one.o", - "crypto/rsa/libcrypto-lib-rsa_ameth.o", - "crypto/rsa/libcrypto-lib-rsa_asn1.o", - "crypto/rsa/libcrypto-lib-rsa_backend.o", - "crypto/rsa/libcrypto-lib-rsa_chk.o", - "crypto/rsa/libcrypto-lib-rsa_crpt.o", - "crypto/rsa/libcrypto-lib-rsa_depr.o", - "crypto/rsa/libcrypto-lib-rsa_err.o", - "crypto/rsa/libcrypto-lib-rsa_gen.o", - "crypto/rsa/libcrypto-lib-rsa_lib.o", - "crypto/rsa/libcrypto-lib-rsa_meth.o", - "crypto/rsa/libcrypto-lib-rsa_mp.o", - "crypto/rsa/libcrypto-lib-rsa_mp_names.o", - "crypto/rsa/libcrypto-lib-rsa_none.o", - "crypto/rsa/libcrypto-lib-rsa_oaep.o", - "crypto/rsa/libcrypto-lib-rsa_ossl.o", - "crypto/rsa/libcrypto-lib-rsa_pk1.o", - "crypto/rsa/libcrypto-lib-rsa_pmeth.o", - "crypto/rsa/libcrypto-lib-rsa_prn.o", - "crypto/rsa/libcrypto-lib-rsa_pss.o", - "crypto/rsa/libcrypto-lib-rsa_saos.o", - "crypto/rsa/libcrypto-lib-rsa_schemes.o", - "crypto/rsa/libcrypto-lib-rsa_sign.o", - "crypto/rsa/libcrypto-lib-rsa_sp800_56b_check.o", - "crypto/rsa/libcrypto-lib-rsa_sp800_56b_gen.o", - "crypto/rsa/libcrypto-lib-rsa_x931.o", - "crypto/rsa/libcrypto-lib-rsa_x931g.o", - "crypto/seed/libcrypto-lib-seed.o", - "crypto/seed/libcrypto-lib-seed_cbc.o", - "crypto/seed/libcrypto-lib-seed_cfb.o", - "crypto/seed/libcrypto-lib-seed_ecb.o", - "crypto/seed/libcrypto-lib-seed_ofb.o", - "crypto/sha/libcrypto-lib-keccak1600-x86_64.o", - "crypto/sha/libcrypto-lib-sha1-mb-x86_64.o", - "crypto/sha/libcrypto-lib-sha1-x86_64.o", - "crypto/sha/libcrypto-lib-sha1_one.o", - "crypto/sha/libcrypto-lib-sha1dgst.o", - "crypto/sha/libcrypto-lib-sha256-mb-x86_64.o", - "crypto/sha/libcrypto-lib-sha256-x86_64.o", - "crypto/sha/libcrypto-lib-sha256.o", - "crypto/sha/libcrypto-lib-sha3.o", - "crypto/sha/libcrypto-lib-sha512-x86_64.o", - "crypto/sha/libcrypto-lib-sha512.o", - "crypto/siphash/libcrypto-lib-siphash.o", - "crypto/slh_dsa/libcrypto-lib-slh_adrs.o", - "crypto/slh_dsa/libcrypto-lib-slh_dsa.o", - "crypto/slh_dsa/libcrypto-lib-slh_dsa_hash_ctx.o", - "crypto/slh_dsa/libcrypto-lib-slh_dsa_key.o", - "crypto/slh_dsa/libcrypto-lib-slh_fors.o", - "crypto/slh_dsa/libcrypto-lib-slh_hash.o", - "crypto/slh_dsa/libcrypto-lib-slh_hypertree.o", - "crypto/slh_dsa/libcrypto-lib-slh_params.o", - "crypto/slh_dsa/libcrypto-lib-slh_wots.o", - "crypto/slh_dsa/libcrypto-lib-slh_xmss.o", - "crypto/srp/libcrypto-lib-srp_lib.o", - "crypto/srp/libcrypto-lib-srp_vfy.o", - "crypto/stack/libcrypto-lib-stack.o", - "crypto/store/libcrypto-lib-store_err.o", - "crypto/store/libcrypto-lib-store_init.o", - "crypto/store/libcrypto-lib-store_lib.o", - "crypto/store/libcrypto-lib-store_meth.o", - "crypto/store/libcrypto-lib-store_register.o", - "crypto/store/libcrypto-lib-store_result.o", - "crypto/store/libcrypto-lib-store_strings.o", - "crypto/thread/arch/libcrypto-lib-thread_none.o", - "crypto/thread/arch/libcrypto-lib-thread_posix.o", - "crypto/thread/arch/libcrypto-lib-thread_win.o", - "crypto/thread/libcrypto-lib-api.o", - "crypto/thread/libcrypto-lib-arch.o", - "crypto/thread/libcrypto-lib-internal.o", - "crypto/ts/libcrypto-lib-ts_asn1.o", - "crypto/ts/libcrypto-lib-ts_conf.o", - "crypto/ts/libcrypto-lib-ts_err.o", - "crypto/ts/libcrypto-lib-ts_lib.o", - "crypto/ts/libcrypto-lib-ts_req_print.o", - "crypto/ts/libcrypto-lib-ts_req_utils.o", - "crypto/ts/libcrypto-lib-ts_rsp_print.o", - "crypto/ts/libcrypto-lib-ts_rsp_sign.o", - "crypto/ts/libcrypto-lib-ts_rsp_utils.o", - "crypto/ts/libcrypto-lib-ts_rsp_verify.o", - "crypto/ts/libcrypto-lib-ts_verify_ctx.o", - "crypto/txt_db/libcrypto-lib-txt_db.o", - "crypto/ui/libcrypto-lib-ui_err.o", - "crypto/ui/libcrypto-lib-ui_lib.o", - "crypto/ui/libcrypto-lib-ui_null.o", - "crypto/ui/libcrypto-lib-ui_openssl.o", - "crypto/ui/libcrypto-lib-ui_util.o", - "crypto/whrlpool/libcrypto-lib-wp-x86_64.o", - "crypto/whrlpool/libcrypto-lib-wp_dgst.o", - "crypto/x509/libcrypto-lib-by_dir.o", - "crypto/x509/libcrypto-lib-by_file.o", - "crypto/x509/libcrypto-lib-by_store.o", - "crypto/x509/libcrypto-lib-pcy_cache.o", - "crypto/x509/libcrypto-lib-pcy_data.o", - "crypto/x509/libcrypto-lib-pcy_lib.o", - "crypto/x509/libcrypto-lib-pcy_map.o", - "crypto/x509/libcrypto-lib-pcy_node.o", - "crypto/x509/libcrypto-lib-pcy_tree.o", - "crypto/x509/libcrypto-lib-t_acert.o", - "crypto/x509/libcrypto-lib-t_crl.o", - "crypto/x509/libcrypto-lib-t_req.o", - "crypto/x509/libcrypto-lib-t_x509.o", - "crypto/x509/libcrypto-lib-v3_aaa.o", - "crypto/x509/libcrypto-lib-v3_ac_tgt.o", - "crypto/x509/libcrypto-lib-v3_addr.o", - "crypto/x509/libcrypto-lib-v3_admis.o", - "crypto/x509/libcrypto-lib-v3_akeya.o", - "crypto/x509/libcrypto-lib-v3_akid.o", - "crypto/x509/libcrypto-lib-v3_asid.o", - "crypto/x509/libcrypto-lib-v3_attrdesc.o", - "crypto/x509/libcrypto-lib-v3_attrmap.o", - "crypto/x509/libcrypto-lib-v3_audit_id.o", - "crypto/x509/libcrypto-lib-v3_authattid.o", - "crypto/x509/libcrypto-lib-v3_battcons.o", - "crypto/x509/libcrypto-lib-v3_bcons.o", - "crypto/x509/libcrypto-lib-v3_bitst.o", - "crypto/x509/libcrypto-lib-v3_conf.o", - "crypto/x509/libcrypto-lib-v3_cpols.o", - "crypto/x509/libcrypto-lib-v3_crld.o", - "crypto/x509/libcrypto-lib-v3_enum.o", - "crypto/x509/libcrypto-lib-v3_extku.o", - "crypto/x509/libcrypto-lib-v3_genn.o", - "crypto/x509/libcrypto-lib-v3_group_ac.o", - "crypto/x509/libcrypto-lib-v3_ia5.o", - "crypto/x509/libcrypto-lib-v3_ind_iss.o", - "crypto/x509/libcrypto-lib-v3_info.o", - "crypto/x509/libcrypto-lib-v3_int.o", - "crypto/x509/libcrypto-lib-v3_iobo.o", - "crypto/x509/libcrypto-lib-v3_ist.o", - "crypto/x509/libcrypto-lib-v3_lib.o", - "crypto/x509/libcrypto-lib-v3_ncons.o", - "crypto/x509/libcrypto-lib-v3_no_ass.o", - "crypto/x509/libcrypto-lib-v3_no_rev_avail.o", - "crypto/x509/libcrypto-lib-v3_pci.o", - "crypto/x509/libcrypto-lib-v3_pcia.o", - "crypto/x509/libcrypto-lib-v3_pcons.o", - "crypto/x509/libcrypto-lib-v3_pku.o", - "crypto/x509/libcrypto-lib-v3_pmaps.o", - "crypto/x509/libcrypto-lib-v3_prn.o", - "crypto/x509/libcrypto-lib-v3_purp.o", - "crypto/x509/libcrypto-lib-v3_rolespec.o", - "crypto/x509/libcrypto-lib-v3_san.o", - "crypto/x509/libcrypto-lib-v3_sda.o", - "crypto/x509/libcrypto-lib-v3_single_use.o", - "crypto/x509/libcrypto-lib-v3_skid.o", - "crypto/x509/libcrypto-lib-v3_soa_id.o", - "crypto/x509/libcrypto-lib-v3_sxnet.o", - "crypto/x509/libcrypto-lib-v3_timespec.o", - "crypto/x509/libcrypto-lib-v3_tlsf.o", - "crypto/x509/libcrypto-lib-v3_usernotice.o", - "crypto/x509/libcrypto-lib-v3_utf8.o", - "crypto/x509/libcrypto-lib-v3_utl.o", - "crypto/x509/libcrypto-lib-v3err.o", - "crypto/x509/libcrypto-lib-x509_acert.o", - "crypto/x509/libcrypto-lib-x509_att.o", - "crypto/x509/libcrypto-lib-x509_cmp.o", - "crypto/x509/libcrypto-lib-x509_d2.o", - "crypto/x509/libcrypto-lib-x509_def.o", - "crypto/x509/libcrypto-lib-x509_err.o", - "crypto/x509/libcrypto-lib-x509_ext.o", - "crypto/x509/libcrypto-lib-x509_lu.o", - "crypto/x509/libcrypto-lib-x509_meth.o", - "crypto/x509/libcrypto-lib-x509_obj.o", - "crypto/x509/libcrypto-lib-x509_r2x.o", - "crypto/x509/libcrypto-lib-x509_req.o", - "crypto/x509/libcrypto-lib-x509_set.o", - "crypto/x509/libcrypto-lib-x509_trust.o", - "crypto/x509/libcrypto-lib-x509_txt.o", - "crypto/x509/libcrypto-lib-x509_v3.o", - "crypto/x509/libcrypto-lib-x509_vfy.o", - "crypto/x509/libcrypto-lib-x509_vpm.o", - "crypto/x509/libcrypto-lib-x509aset.o", - "crypto/x509/libcrypto-lib-x509cset.o", - "crypto/x509/libcrypto-lib-x509name.o", - "crypto/x509/libcrypto-lib-x509rset.o", - "crypto/x509/libcrypto-lib-x509spki.o", - "crypto/x509/libcrypto-lib-x509type.o", - "crypto/x509/libcrypto-lib-x_all.o", - "crypto/x509/libcrypto-lib-x_attrib.o", - "crypto/x509/libcrypto-lib-x_crl.o", - "crypto/x509/libcrypto-lib-x_exten.o", - "crypto/x509/libcrypto-lib-x_ietfatt.o", - "crypto/x509/libcrypto-lib-x_name.o", - "crypto/x509/libcrypto-lib-x_pubkey.o", - "crypto/x509/libcrypto-lib-x_req.o", - "crypto/x509/libcrypto-lib-x_x509.o", - "crypto/x509/libcrypto-lib-x_x509a.o", - "providers/libcrypto-lib-baseprov.o", - "providers/libcrypto-lib-defltprov.o", - "providers/libcrypto-lib-nullprov.o", - "providers/libcrypto-lib-prov_running.o", - "providers/libdefault.a" - ], - "libssl" => [ - "ssl/libssl-lib-bio_ssl.o", - "ssl/libssl-lib-d1_lib.o", - "ssl/libssl-lib-d1_msg.o", - "ssl/libssl-lib-d1_srtp.o", - "ssl/libssl-lib-methods.o", - "ssl/libssl-lib-pqueue.o", - "ssl/libssl-lib-priority_queue.o", - "ssl/libssl-lib-s3_enc.o", - "ssl/libssl-lib-s3_lib.o", - "ssl/libssl-lib-s3_msg.o", - "ssl/libssl-lib-ssl_asn1.o", - "ssl/libssl-lib-ssl_cert.o", - "ssl/libssl-lib-ssl_cert_comp.o", - "ssl/libssl-lib-ssl_ciph.o", - "ssl/libssl-lib-ssl_conf.o", - "ssl/libssl-lib-ssl_err_legacy.o", - "ssl/libssl-lib-ssl_init.o", - "ssl/libssl-lib-ssl_lib.o", - "ssl/libssl-lib-ssl_mcnf.o", - "ssl/libssl-lib-ssl_rsa.o", - "ssl/libssl-lib-ssl_rsa_legacy.o", - "ssl/libssl-lib-ssl_sess.o", - "ssl/libssl-lib-ssl_stat.o", - "ssl/libssl-lib-ssl_txt.o", - "ssl/libssl-lib-ssl_utst.o", - "ssl/libssl-lib-t1_enc.o", - "ssl/libssl-lib-t1_lib.o", - "ssl/libssl-lib-t1_trce.o", - "ssl/libssl-lib-tls13_enc.o", - "ssl/libssl-lib-tls_depr.o", - "ssl/libssl-lib-tls_srp.o", - "ssl/quic/libssl-lib-cc_newreno.o", - "ssl/quic/libssl-lib-json_enc.o", - "ssl/quic/libssl-lib-qlog.o", - "ssl/quic/libssl-lib-qlog_event_helpers.o", - "ssl/quic/libssl-lib-quic_ackm.o", - "ssl/quic/libssl-lib-quic_cfq.o", - "ssl/quic/libssl-lib-quic_channel.o", - "ssl/quic/libssl-lib-quic_demux.o", - "ssl/quic/libssl-lib-quic_engine.o", - "ssl/quic/libssl-lib-quic_fc.o", - "ssl/quic/libssl-lib-quic_fifd.o", - "ssl/quic/libssl-lib-quic_impl.o", - "ssl/quic/libssl-lib-quic_lcidm.o", - "ssl/quic/libssl-lib-quic_method.o", - "ssl/quic/libssl-lib-quic_obj.o", - "ssl/quic/libssl-lib-quic_port.o", - "ssl/quic/libssl-lib-quic_rcidm.o", - "ssl/quic/libssl-lib-quic_reactor.o", - "ssl/quic/libssl-lib-quic_reactor_wait_ctx.o", - "ssl/quic/libssl-lib-quic_record_rx.o", - "ssl/quic/libssl-lib-quic_record_shared.o", - "ssl/quic/libssl-lib-quic_record_tx.o", - "ssl/quic/libssl-lib-quic_record_util.o", - "ssl/quic/libssl-lib-quic_rstream.o", - "ssl/quic/libssl-lib-quic_rx_depack.o", - "ssl/quic/libssl-lib-quic_sf_list.o", - "ssl/quic/libssl-lib-quic_srt_gen.o", - "ssl/quic/libssl-lib-quic_srtm.o", - "ssl/quic/libssl-lib-quic_sstream.o", - "ssl/quic/libssl-lib-quic_statm.o", - "ssl/quic/libssl-lib-quic_stream_map.o", - "ssl/quic/libssl-lib-quic_thread_assist.o", - "ssl/quic/libssl-lib-quic_tls.o", - "ssl/quic/libssl-lib-quic_tls_api.o", - "ssl/quic/libssl-lib-quic_trace.o", - "ssl/quic/libssl-lib-quic_tserver.o", - "ssl/quic/libssl-lib-quic_txp.o", - "ssl/quic/libssl-lib-quic_txpim.o", - "ssl/quic/libssl-lib-quic_types.o", - "ssl/quic/libssl-lib-quic_wire.o", - "ssl/quic/libssl-lib-quic_wire_pkt.o", - "ssl/quic/libssl-lib-uint_set.o", - "ssl/record/libssl-lib-rec_layer_d1.o", - "ssl/record/libssl-lib-rec_layer_s3.o", - "ssl/record/methods/libssl-lib-dtls_meth.o", - "ssl/record/methods/libssl-lib-ktls_meth.o", - "ssl/record/methods/libssl-lib-ssl3_meth.o", - "ssl/record/methods/libssl-lib-tls13_meth.o", - "ssl/record/methods/libssl-lib-tls1_meth.o", - "ssl/record/methods/libssl-lib-tls_common.o", - "ssl/record/methods/libssl-lib-tls_multib.o", - "ssl/record/methods/libssl-lib-tlsany_meth.o", - "ssl/rio/libssl-lib-poll_builder.o", - "ssl/rio/libssl-lib-poll_immediate.o", - "ssl/rio/libssl-lib-rio_notifier.o", - "ssl/statem/libssl-lib-extensions.o", - "ssl/statem/libssl-lib-extensions_clnt.o", - "ssl/statem/libssl-lib-extensions_cust.o", - "ssl/statem/libssl-lib-extensions_srvr.o", - "ssl/statem/libssl-lib-statem.o", - "ssl/statem/libssl-lib-statem_clnt.o", - "ssl/statem/libssl-lib-statem_dtls.o", - "ssl/statem/libssl-lib-statem_lib.o", - "ssl/statem/libssl-lib-statem_srvr.o" - ], - "providers/common/der/libcommon-lib-der_digests_gen.o" => [ - "providers/common/der/der_digests_gen.c" - ], - "providers/common/der/libcommon-lib-der_dsa_gen.o" => [ - "providers/common/der/der_dsa_gen.c" - ], - "providers/common/der/libcommon-lib-der_dsa_key.o" => [ - "providers/common/der/der_dsa_key.c" - ], - "providers/common/der/libcommon-lib-der_dsa_sig.o" => [ - "providers/common/der/der_dsa_sig.c" - ], - "providers/common/der/libcommon-lib-der_ec_gen.o" => [ - "providers/common/der/der_ec_gen.c" - ], - "providers/common/der/libcommon-lib-der_ec_key.o" => [ - "providers/common/der/der_ec_key.c" - ], - "providers/common/der/libcommon-lib-der_ec_sig.o" => [ - "providers/common/der/der_ec_sig.c" - ], - "providers/common/der/libcommon-lib-der_ecx_gen.o" => [ - "providers/common/der/der_ecx_gen.c" - ], - "providers/common/der/libcommon-lib-der_ecx_key.o" => [ - "providers/common/der/der_ecx_key.c" - ], - "providers/common/der/libcommon-lib-der_ml_dsa_gen.o" => [ - "providers/common/der/der_ml_dsa_gen.c" - ], - "providers/common/der/libcommon-lib-der_ml_dsa_key.o" => [ - "providers/common/der/der_ml_dsa_key.c" - ], - "providers/common/der/libcommon-lib-der_rsa_gen.o" => [ - "providers/common/der/der_rsa_gen.c" - ], - "providers/common/der/libcommon-lib-der_rsa_key.o" => [ - "providers/common/der/der_rsa_key.c" - ], - "providers/common/der/libcommon-lib-der_slh_dsa_gen.o" => [ - "providers/common/der/der_slh_dsa_gen.c" - ], - "providers/common/der/libcommon-lib-der_slh_dsa_key.o" => [ - "providers/common/der/der_slh_dsa_key.c" - ], - "providers/common/der/libcommon-lib-der_wrap_gen.o" => [ - "providers/common/der/der_wrap_gen.c" - ], - "providers/common/der/libdefault-lib-der_rsa_sig.o" => [ - "providers/common/der/der_rsa_sig.c" - ], - "providers/common/libcommon-lib-provider_ctx.o" => [ - "providers/common/provider_ctx.c" - ], - "providers/common/libcommon-lib-provider_err.o" => [ - "providers/common/provider_err.c" - ], - "providers/common/libdefault-lib-bio_prov.o" => [ - "providers/common/bio_prov.c" - ], - "providers/common/libdefault-lib-capabilities.o" => [ - "providers/common/capabilities.c" - ], - "providers/common/libdefault-lib-digest_to_nid.o" => [ - "providers/common/digest_to_nid.c" - ], - "providers/common/libdefault-lib-provider_seeding.o" => [ - "providers/common/provider_seeding.c" - ], - "providers/common/libdefault-lib-provider_util.o" => [ - "providers/common/provider_util.c" - ], - "providers/common/libdefault-lib-securitycheck.o" => [ - "providers/common/securitycheck.c" - ], - "providers/common/libdefault-lib-securitycheck_default.o" => [ - "providers/common/securitycheck_default.c" - ], - "providers/common/liblegacy-lib-provider_util.o" => [ - "providers/common/provider_util.c" - ], - "providers/endecode_test-bin-legacyprov.o" => [ - "providers/legacyprov.c" - ], - "providers/evp_extra_test-bin-legacyprov.o" => [ - "providers/legacyprov.c" - ], - "providers/implementations/asymciphers/libdefault-lib-rsa_enc.o" => [ - "providers/implementations/asymciphers/rsa_enc.c" - ], - "providers/implementations/ciphers/libcommon-lib-ciphercommon.o" => [ - "providers/implementations/ciphers/ciphercommon.c" - ], - "providers/implementations/ciphers/libcommon-lib-ciphercommon_block.o" => [ - "providers/implementations/ciphers/ciphercommon_block.c" - ], - "providers/implementations/ciphers/libcommon-lib-ciphercommon_ccm.o" => [ - "providers/implementations/ciphers/ciphercommon_ccm.c" - ], - "providers/implementations/ciphers/libcommon-lib-ciphercommon_ccm_hw.o" => [ - "providers/implementations/ciphers/ciphercommon_ccm_hw.c" - ], - "providers/implementations/ciphers/libcommon-lib-ciphercommon_gcm.o" => [ - "providers/implementations/ciphers/ciphercommon_gcm.c" - ], - "providers/implementations/ciphers/libcommon-lib-ciphercommon_gcm_hw.o" => [ - "providers/implementations/ciphers/ciphercommon_gcm_hw.c" - ], - "providers/implementations/ciphers/libcommon-lib-ciphercommon_hw.o" => [ - "providers/implementations/ciphers/ciphercommon_hw.c" - ], - "providers/implementations/ciphers/libdefault-lib-cipher_aes.o" => [ - "providers/implementations/ciphers/cipher_aes.c" - ], - "providers/implementations/ciphers/libdefault-lib-cipher_aes_cbc_hmac_sha.o" => [ - "providers/implementations/ciphers/cipher_aes_cbc_hmac_sha.c" - ], - "providers/implementations/ciphers/libdefault-lib-cipher_aes_cbc_hmac_sha1_hw.o" => [ - "providers/implementations/ciphers/cipher_aes_cbc_hmac_sha1_hw.c" - ], - "providers/implementations/ciphers/libdefault-lib-cipher_aes_cbc_hmac_sha256_hw.o" => [ - "providers/implementations/ciphers/cipher_aes_cbc_hmac_sha256_hw.c" - ], - "providers/implementations/ciphers/libdefault-lib-cipher_aes_ccm.o" => [ - "providers/implementations/ciphers/cipher_aes_ccm.c" - ], - "providers/implementations/ciphers/libdefault-lib-cipher_aes_ccm_hw.o" => [ - "providers/implementations/ciphers/cipher_aes_ccm_hw.c" - ], - "providers/implementations/ciphers/libdefault-lib-cipher_aes_gcm.o" => [ - "providers/implementations/ciphers/cipher_aes_gcm.c" - ], - "providers/implementations/ciphers/libdefault-lib-cipher_aes_gcm_hw.o" => [ - "providers/implementations/ciphers/cipher_aes_gcm_hw.c" - ], - "providers/implementations/ciphers/libdefault-lib-cipher_aes_gcm_siv.o" => [ - "providers/implementations/ciphers/cipher_aes_gcm_siv.c" - ], - "providers/implementations/ciphers/libdefault-lib-cipher_aes_gcm_siv_hw.o" => [ - "providers/implementations/ciphers/cipher_aes_gcm_siv_hw.c" - ], - "providers/implementations/ciphers/libdefault-lib-cipher_aes_gcm_siv_polyval.o" => [ - "providers/implementations/ciphers/cipher_aes_gcm_siv_polyval.c" - ], - "providers/implementations/ciphers/libdefault-lib-cipher_aes_hw.o" => [ - "providers/implementations/ciphers/cipher_aes_hw.c" - ], - "providers/implementations/ciphers/libdefault-lib-cipher_aes_ocb.o" => [ - "providers/implementations/ciphers/cipher_aes_ocb.c" - ], - "providers/implementations/ciphers/libdefault-lib-cipher_aes_ocb_hw.o" => [ - "providers/implementations/ciphers/cipher_aes_ocb_hw.c" - ], - "providers/implementations/ciphers/libdefault-lib-cipher_aes_siv.o" => [ - "providers/implementations/ciphers/cipher_aes_siv.c" - ], - "providers/implementations/ciphers/libdefault-lib-cipher_aes_siv_hw.o" => [ - "providers/implementations/ciphers/cipher_aes_siv_hw.c" - ], - "providers/implementations/ciphers/libdefault-lib-cipher_aes_wrp.o" => [ - "providers/implementations/ciphers/cipher_aes_wrp.c" - ], - "providers/implementations/ciphers/libdefault-lib-cipher_aes_xts.o" => [ - "providers/implementations/ciphers/cipher_aes_xts.c" - ], - "providers/implementations/ciphers/libdefault-lib-cipher_aes_xts_fips.o" => [ - "providers/implementations/ciphers/cipher_aes_xts_fips.c" - ], - "providers/implementations/ciphers/libdefault-lib-cipher_aes_xts_hw.o" => [ - "providers/implementations/ciphers/cipher_aes_xts_hw.c" - ], - "providers/implementations/ciphers/libdefault-lib-cipher_camellia.o" => [ - "providers/implementations/ciphers/cipher_camellia.c" - ], - "providers/implementations/ciphers/libdefault-lib-cipher_camellia_hw.o" => [ - "providers/implementations/ciphers/cipher_camellia_hw.c" - ], - "providers/implementations/ciphers/libdefault-lib-cipher_chacha20.o" => [ - "providers/implementations/ciphers/cipher_chacha20.c" - ], - "providers/implementations/ciphers/libdefault-lib-cipher_chacha20_hw.o" => [ - "providers/implementations/ciphers/cipher_chacha20_hw.c" - ], - "providers/implementations/ciphers/libdefault-lib-cipher_chacha20_poly1305.o" => [ - "providers/implementations/ciphers/cipher_chacha20_poly1305.c" - ], - "providers/implementations/ciphers/libdefault-lib-cipher_chacha20_poly1305_hw.o" => [ - "providers/implementations/ciphers/cipher_chacha20_poly1305_hw.c" - ], - "providers/implementations/ciphers/libdefault-lib-cipher_cts.o" => [ - "providers/implementations/ciphers/cipher_cts.c" - ], - "providers/implementations/ciphers/libdefault-lib-cipher_null.o" => [ - "providers/implementations/ciphers/cipher_null.c" - ], - "providers/implementations/ciphers/libdefault-lib-cipher_tdes.o" => [ - "providers/implementations/ciphers/cipher_tdes.c" - ], - "providers/implementations/ciphers/libdefault-lib-cipher_tdes_common.o" => [ - "providers/implementations/ciphers/cipher_tdes_common.c" - ], - "providers/implementations/ciphers/libdefault-lib-cipher_tdes_default.o" => [ - "providers/implementations/ciphers/cipher_tdes_default.c" - ], - "providers/implementations/ciphers/libdefault-lib-cipher_tdes_default_hw.o" => [ - "providers/implementations/ciphers/cipher_tdes_default_hw.c" - ], - "providers/implementations/ciphers/libdefault-lib-cipher_tdes_hw.o" => [ - "providers/implementations/ciphers/cipher_tdes_hw.c" - ], - "providers/implementations/ciphers/libdefault-lib-cipher_tdes_wrap.o" => [ - "providers/implementations/ciphers/cipher_tdes_wrap.c" - ], - "providers/implementations/ciphers/libdefault-lib-cipher_tdes_wrap_hw.o" => [ - "providers/implementations/ciphers/cipher_tdes_wrap_hw.c" - ], - "providers/implementations/ciphers/liblegacy-lib-cipher_blowfish.o" => [ - "providers/implementations/ciphers/cipher_blowfish.c" - ], - "providers/implementations/ciphers/liblegacy-lib-cipher_blowfish_hw.o" => [ - "providers/implementations/ciphers/cipher_blowfish_hw.c" - ], - "providers/implementations/ciphers/liblegacy-lib-cipher_cast5.o" => [ - "providers/implementations/ciphers/cipher_cast5.c" - ], - "providers/implementations/ciphers/liblegacy-lib-cipher_cast5_hw.o" => [ - "providers/implementations/ciphers/cipher_cast5_hw.c" - ], - "providers/implementations/ciphers/liblegacy-lib-cipher_des.o" => [ - "providers/implementations/ciphers/cipher_des.c" - ], - "providers/implementations/ciphers/liblegacy-lib-cipher_des_hw.o" => [ - "providers/implementations/ciphers/cipher_des_hw.c" - ], - "providers/implementations/ciphers/liblegacy-lib-cipher_desx.o" => [ - "providers/implementations/ciphers/cipher_desx.c" - ], - "providers/implementations/ciphers/liblegacy-lib-cipher_desx_hw.o" => [ - "providers/implementations/ciphers/cipher_desx_hw.c" - ], - "providers/implementations/ciphers/liblegacy-lib-cipher_rc2.o" => [ - "providers/implementations/ciphers/cipher_rc2.c" - ], - "providers/implementations/ciphers/liblegacy-lib-cipher_rc2_hw.o" => [ - "providers/implementations/ciphers/cipher_rc2_hw.c" - ], - "providers/implementations/ciphers/liblegacy-lib-cipher_rc4.o" => [ - "providers/implementations/ciphers/cipher_rc4.c" - ], - "providers/implementations/ciphers/liblegacy-lib-cipher_rc4_hmac_md5.o" => [ - "providers/implementations/ciphers/cipher_rc4_hmac_md5.c" - ], - "providers/implementations/ciphers/liblegacy-lib-cipher_rc4_hmac_md5_hw.o" => [ - "providers/implementations/ciphers/cipher_rc4_hmac_md5_hw.c" - ], - "providers/implementations/ciphers/liblegacy-lib-cipher_rc4_hw.o" => [ - "providers/implementations/ciphers/cipher_rc4_hw.c" - ], - "providers/implementations/ciphers/liblegacy-lib-cipher_seed.o" => [ - "providers/implementations/ciphers/cipher_seed.c" - ], - "providers/implementations/ciphers/liblegacy-lib-cipher_seed_hw.o" => [ - "providers/implementations/ciphers/cipher_seed_hw.c" - ], - "providers/implementations/ciphers/liblegacy-lib-cipher_tdes_common.o" => [ - "providers/implementations/ciphers/cipher_tdes_common.c" - ], - "providers/implementations/digests/libcommon-lib-digestcommon.o" => [ - "providers/implementations/digests/digestcommon.c" - ], - "providers/implementations/digests/libdefault-lib-blake2_prov.o" => [ - "providers/implementations/digests/blake2_prov.c" - ], - "providers/implementations/digests/libdefault-lib-blake2b_prov.o" => [ - "providers/implementations/digests/blake2b_prov.c" - ], - "providers/implementations/digests/libdefault-lib-blake2s_prov.o" => [ - "providers/implementations/digests/blake2s_prov.c" - ], - "providers/implementations/digests/libdefault-lib-md5_prov.o" => [ - "providers/implementations/digests/md5_prov.c" - ], - "providers/implementations/digests/libdefault-lib-md5_sha1_prov.o" => [ - "providers/implementations/digests/md5_sha1_prov.c" - ], - "providers/implementations/digests/libdefault-lib-null_prov.o" => [ - "providers/implementations/digests/null_prov.c" - ], - "providers/implementations/digests/libdefault-lib-ripemd_prov.o" => [ - "providers/implementations/digests/ripemd_prov.c" - ], - "providers/implementations/digests/libdefault-lib-sha2_prov.o" => [ - "providers/implementations/digests/sha2_prov.c" - ], - "providers/implementations/digests/libdefault-lib-sha3_prov.o" => [ - "providers/implementations/digests/sha3_prov.c" - ], - "providers/implementations/digests/liblegacy-lib-md4_prov.o" => [ - "providers/implementations/digests/md4_prov.c" - ], - "providers/implementations/digests/liblegacy-lib-ripemd_prov.o" => [ - "providers/implementations/digests/ripemd_prov.c" - ], - "providers/implementations/digests/liblegacy-lib-wp_prov.o" => [ - "providers/implementations/digests/wp_prov.c" - ], - "providers/implementations/encode_decode/libdefault-lib-decode_der2key.o" => [ - "providers/implementations/encode_decode/decode_der2key.c" - ], - "providers/implementations/encode_decode/libdefault-lib-decode_epki2pki.o" => [ - "providers/implementations/encode_decode/decode_epki2pki.c" - ], - "providers/implementations/encode_decode/libdefault-lib-decode_msblob2key.o" => [ - "providers/implementations/encode_decode/decode_msblob2key.c" - ], - "providers/implementations/encode_decode/libdefault-lib-decode_pem2der.o" => [ - "providers/implementations/encode_decode/decode_pem2der.c" - ], - "providers/implementations/encode_decode/libdefault-lib-decode_pvk2key.o" => [ - "providers/implementations/encode_decode/decode_pvk2key.c" - ], - "providers/implementations/encode_decode/libdefault-lib-decode_spki2typespki.o" => [ - "providers/implementations/encode_decode/decode_spki2typespki.c" - ], - "providers/implementations/encode_decode/libdefault-lib-encode_key2any.o" => [ - "providers/implementations/encode_decode/encode_key2any.c" - ], - "providers/implementations/encode_decode/libdefault-lib-encode_key2blob.o" => [ - "providers/implementations/encode_decode/encode_key2blob.c" - ], - "providers/implementations/encode_decode/libdefault-lib-encode_key2ms.o" => [ - "providers/implementations/encode_decode/encode_key2ms.c" - ], - "providers/implementations/encode_decode/libdefault-lib-encode_key2text.o" => [ - "providers/implementations/encode_decode/encode_key2text.c" - ], - "providers/implementations/encode_decode/libdefault-lib-endecoder_common.o" => [ - "providers/implementations/encode_decode/endecoder_common.c" - ], - "providers/implementations/encode_decode/libdefault-lib-ml_common_codecs.o" => [ - "providers/implementations/encode_decode/ml_common_codecs.c" - ], - "providers/implementations/encode_decode/libdefault-lib-ml_dsa_codecs.o" => [ - "providers/implementations/encode_decode/ml_dsa_codecs.c" - ], - "providers/implementations/encode_decode/libdefault-lib-ml_kem_codecs.o" => [ - "providers/implementations/encode_decode/ml_kem_codecs.c" - ], - "providers/implementations/exchange/libdefault-lib-dh_exch.o" => [ - "providers/implementations/exchange/dh_exch.c" - ], - "providers/implementations/exchange/libdefault-lib-ecdh_exch.o" => [ - "providers/implementations/exchange/ecdh_exch.c" - ], - "providers/implementations/exchange/libdefault-lib-ecx_exch.o" => [ - "providers/implementations/exchange/ecx_exch.c" - ], - "providers/implementations/exchange/libdefault-lib-kdf_exch.o" => [ - "providers/implementations/exchange/kdf_exch.c" - ], - "providers/implementations/kdfs/libdefault-lib-argon2.o" => [ - "providers/implementations/kdfs/argon2.c" - ], - "providers/implementations/kdfs/libdefault-lib-hkdf.o" => [ - "providers/implementations/kdfs/hkdf.c" - ], - "providers/implementations/kdfs/libdefault-lib-hmacdrbg_kdf.o" => [ - "providers/implementations/kdfs/hmacdrbg_kdf.c" - ], - "providers/implementations/kdfs/libdefault-lib-kbkdf.o" => [ - "providers/implementations/kdfs/kbkdf.c" - ], - "providers/implementations/kdfs/libdefault-lib-krb5kdf.o" => [ - "providers/implementations/kdfs/krb5kdf.c" - ], - "providers/implementations/kdfs/libdefault-lib-pbkdf2.o" => [ - "providers/implementations/kdfs/pbkdf2.c" - ], - "providers/implementations/kdfs/libdefault-lib-pbkdf2_fips.o" => [ - "providers/implementations/kdfs/pbkdf2_fips.c" - ], - "providers/implementations/kdfs/libdefault-lib-pkcs12kdf.o" => [ - "providers/implementations/kdfs/pkcs12kdf.c" - ], - "providers/implementations/kdfs/libdefault-lib-scrypt.o" => [ - "providers/implementations/kdfs/scrypt.c" - ], - "providers/implementations/kdfs/libdefault-lib-sshkdf.o" => [ - "providers/implementations/kdfs/sshkdf.c" - ], - "providers/implementations/kdfs/libdefault-lib-sskdf.o" => [ - "providers/implementations/kdfs/sskdf.c" - ], - "providers/implementations/kdfs/libdefault-lib-tls1_prf.o" => [ - "providers/implementations/kdfs/tls1_prf.c" - ], - "providers/implementations/kdfs/libdefault-lib-x942kdf.o" => [ - "providers/implementations/kdfs/x942kdf.c" - ], - "providers/implementations/kdfs/liblegacy-lib-pbkdf1.o" => [ - "providers/implementations/kdfs/pbkdf1.c" - ], - "providers/implementations/kdfs/liblegacy-lib-pvkkdf.o" => [ - "providers/implementations/kdfs/pvkkdf.c" - ], - "providers/implementations/kem/libdefault-lib-ec_kem.o" => [ - "providers/implementations/kem/ec_kem.c" - ], - "providers/implementations/kem/libdefault-lib-ecx_kem.o" => [ - "providers/implementations/kem/ecx_kem.c" - ], - "providers/implementations/kem/libdefault-lib-kem_util.o" => [ - "providers/implementations/kem/kem_util.c" - ], - "providers/implementations/kem/libdefault-lib-ml_kem_kem.o" => [ - "providers/implementations/kem/ml_kem_kem.c" - ], - "providers/implementations/kem/libdefault-lib-mlx_kem.o" => [ - "providers/implementations/kem/mlx_kem.c" - ], - "providers/implementations/kem/libdefault-lib-rsa_kem.o" => [ - "providers/implementations/kem/rsa_kem.c" - ], - "providers/implementations/kem/libtemplate-lib-template_kem.o" => [ - "providers/implementations/kem/template_kem.c" - ], - "providers/implementations/keymgmt/libdefault-lib-dh_kmgmt.o" => [ - "providers/implementations/keymgmt/dh_kmgmt.c" - ], - "providers/implementations/keymgmt/libdefault-lib-dsa_kmgmt.o" => [ - "providers/implementations/keymgmt/dsa_kmgmt.c" - ], - "providers/implementations/keymgmt/libdefault-lib-ec_kmgmt.o" => [ - "providers/implementations/keymgmt/ec_kmgmt.c" - ], - "providers/implementations/keymgmt/libdefault-lib-ecx_kmgmt.o" => [ - "providers/implementations/keymgmt/ecx_kmgmt.c" - ], - "providers/implementations/keymgmt/libdefault-lib-kdf_legacy_kmgmt.o" => [ - "providers/implementations/keymgmt/kdf_legacy_kmgmt.c" - ], - "providers/implementations/keymgmt/libdefault-lib-mac_legacy_kmgmt.o" => [ - "providers/implementations/keymgmt/mac_legacy_kmgmt.c" - ], - "providers/implementations/keymgmt/libdefault-lib-ml_dsa_kmgmt.o" => [ - "providers/implementations/keymgmt/ml_dsa_kmgmt.c" - ], - "providers/implementations/keymgmt/libdefault-lib-ml_kem_kmgmt.o" => [ - "providers/implementations/keymgmt/ml_kem_kmgmt.c" - ], - "providers/implementations/keymgmt/libdefault-lib-mlx_kmgmt.o" => [ - "providers/implementations/keymgmt/mlx_kmgmt.c" - ], - "providers/implementations/keymgmt/libdefault-lib-rsa_kmgmt.o" => [ - "providers/implementations/keymgmt/rsa_kmgmt.c" - ], - "providers/implementations/keymgmt/libdefault-lib-slh_dsa_kmgmt.o" => [ - "providers/implementations/keymgmt/slh_dsa_kmgmt.c" - ], - "providers/implementations/keymgmt/libtemplate-lib-template_kmgmt.o" => [ - "providers/implementations/keymgmt/template_kmgmt.c" - ], - "providers/implementations/macs/libdefault-lib-blake2b_mac.o" => [ - "providers/implementations/macs/blake2b_mac.c" - ], - "providers/implementations/macs/libdefault-lib-blake2s_mac.o" => [ - "providers/implementations/macs/blake2s_mac.c" - ], - "providers/implementations/macs/libdefault-lib-cmac_prov.o" => [ - "providers/implementations/macs/cmac_prov.c" - ], - "providers/implementations/macs/libdefault-lib-gmac_prov.o" => [ - "providers/implementations/macs/gmac_prov.c" - ], - "providers/implementations/macs/libdefault-lib-hmac_prov.o" => [ - "providers/implementations/macs/hmac_prov.c" - ], - "providers/implementations/macs/libdefault-lib-kmac_prov.o" => [ - "providers/implementations/macs/kmac_prov.c" - ], - "providers/implementations/macs/libdefault-lib-poly1305_prov.o" => [ - "providers/implementations/macs/poly1305_prov.c" - ], - "providers/implementations/macs/libdefault-lib-siphash_prov.o" => [ - "providers/implementations/macs/siphash_prov.c" - ], - "providers/implementations/rands/libdefault-lib-drbg.o" => [ - "providers/implementations/rands/drbg.c" - ], - "providers/implementations/rands/libdefault-lib-drbg_ctr.o" => [ - "providers/implementations/rands/drbg_ctr.c" - ], - "providers/implementations/rands/libdefault-lib-drbg_hash.o" => [ - "providers/implementations/rands/drbg_hash.c" - ], - "providers/implementations/rands/libdefault-lib-drbg_hmac.o" => [ - "providers/implementations/rands/drbg_hmac.c" - ], - "providers/implementations/rands/libdefault-lib-seed_src.o" => [ - "providers/implementations/rands/seed_src.c" - ], - "providers/implementations/rands/libdefault-lib-seed_src_jitter.o" => [ - "providers/implementations/rands/seed_src_jitter.c" - ], - "providers/implementations/rands/libdefault-lib-test_rng.o" => [ - "providers/implementations/rands/test_rng.c" - ], - "providers/implementations/rands/seeding/libdefault-lib-rand_cpu_x86.o" => [ - "providers/implementations/rands/seeding/rand_cpu_x86.c" - ], - "providers/implementations/rands/seeding/libdefault-lib-rand_tsc.o" => [ - "providers/implementations/rands/seeding/rand_tsc.c" - ], - "providers/implementations/rands/seeding/libdefault-lib-rand_unix.o" => [ - "providers/implementations/rands/seeding/rand_unix.c" - ], - "providers/implementations/rands/seeding/libdefault-lib-rand_win.o" => [ - "providers/implementations/rands/seeding/rand_win.c" - ], - "providers/implementations/signature/libdefault-lib-dsa_sig.o" => [ - "providers/implementations/signature/dsa_sig.c" - ], - "providers/implementations/signature/libdefault-lib-ecdsa_sig.o" => [ - "providers/implementations/signature/ecdsa_sig.c" - ], - "providers/implementations/signature/libdefault-lib-eddsa_sig.o" => [ - "providers/implementations/signature/eddsa_sig.c" - ], - "providers/implementations/signature/libdefault-lib-mac_legacy_sig.o" => [ - "providers/implementations/signature/mac_legacy_sig.c" - ], - "providers/implementations/signature/libdefault-lib-ml_dsa_sig.o" => [ - "providers/implementations/signature/ml_dsa_sig.c" - ], - "providers/implementations/signature/libdefault-lib-rsa_sig.o" => [ - "providers/implementations/signature/rsa_sig.c" - ], - "providers/implementations/signature/libdefault-lib-slh_dsa_sig.o" => [ - "providers/implementations/signature/slh_dsa_sig.c" - ], - "providers/implementations/skeymgmt/libdefault-lib-aes_skmgmt.o" => [ - "providers/implementations/skeymgmt/aes_skmgmt.c" - ], - "providers/implementations/skeymgmt/libdefault-lib-generic.o" => [ - "providers/implementations/skeymgmt/generic.c" - ], - "providers/implementations/storemgmt/libdefault-lib-file_store.o" => [ - "providers/implementations/storemgmt/file_store.c" - ], - "providers/implementations/storemgmt/libdefault-lib-file_store_any2obj.o" => [ - "providers/implementations/storemgmt/file_store_any2obj.c" - ], - "providers/legacy" => [ - "crypto/legacy-dso-cpuid.o", - "crypto/legacy-dso-ctype.o", - "crypto/legacy-dso-x86_64cpuid.o", - "providers/legacy-dso-legacyprov.o", - "providers/legacy.ld" - ], - "providers/legacy-dso-legacyprov.o" => [ - "providers/legacyprov.c" - ], - "providers/libcommon.a" => [ - "providers/common/der/libcommon-lib-der_digests_gen.o", - "providers/common/der/libcommon-lib-der_dsa_gen.o", - "providers/common/der/libcommon-lib-der_dsa_key.o", - "providers/common/der/libcommon-lib-der_dsa_sig.o", - "providers/common/der/libcommon-lib-der_ec_gen.o", - "providers/common/der/libcommon-lib-der_ec_key.o", - "providers/common/der/libcommon-lib-der_ec_sig.o", - "providers/common/der/libcommon-lib-der_ecx_gen.o", - "providers/common/der/libcommon-lib-der_ecx_key.o", - "providers/common/der/libcommon-lib-der_ml_dsa_gen.o", - "providers/common/der/libcommon-lib-der_ml_dsa_key.o", - "providers/common/der/libcommon-lib-der_rsa_gen.o", - "providers/common/der/libcommon-lib-der_rsa_key.o", - "providers/common/der/libcommon-lib-der_slh_dsa_gen.o", - "providers/common/der/libcommon-lib-der_slh_dsa_key.o", - "providers/common/der/libcommon-lib-der_wrap_gen.o", - "providers/common/libcommon-lib-provider_ctx.o", - "providers/common/libcommon-lib-provider_err.o", - "providers/implementations/ciphers/libcommon-lib-ciphercommon.o", - "providers/implementations/ciphers/libcommon-lib-ciphercommon_block.o", - "providers/implementations/ciphers/libcommon-lib-ciphercommon_ccm.o", - "providers/implementations/ciphers/libcommon-lib-ciphercommon_ccm_hw.o", - "providers/implementations/ciphers/libcommon-lib-ciphercommon_gcm.o", - "providers/implementations/ciphers/libcommon-lib-ciphercommon_gcm_hw.o", - "providers/implementations/ciphers/libcommon-lib-ciphercommon_hw.o", - "providers/implementations/digests/libcommon-lib-digestcommon.o", - "ssl/record/methods/libcommon-lib-tls_pad.o" - ], - "providers/libcrypto-lib-baseprov.o" => [ - "providers/baseprov.c" - ], - "providers/libcrypto-lib-defltprov.o" => [ - "providers/defltprov.c" - ], - "providers/libcrypto-lib-nullprov.o" => [ - "providers/nullprov.c" - ], - "providers/libcrypto-lib-prov_running.o" => [ - "providers/prov_running.c" - ], - "providers/libcrypto-shlib-baseprov.o" => [ - "providers/baseprov.c" - ], - "providers/libcrypto-shlib-defltprov.o" => [ - "providers/defltprov.c" - ], - "providers/libcrypto-shlib-nullprov.o" => [ - "providers/nullprov.c" - ], - "providers/libcrypto-shlib-prov_running.o" => [ - "providers/prov_running.c" - ], - "providers/libdefault.a" => [ - "providers/common/der/libdefault-lib-der_rsa_sig.o", - "providers/common/libdefault-lib-bio_prov.o", - "providers/common/libdefault-lib-capabilities.o", - "providers/common/libdefault-lib-digest_to_nid.o", - "providers/common/libdefault-lib-provider_seeding.o", - "providers/common/libdefault-lib-provider_util.o", - "providers/common/libdefault-lib-securitycheck.o", - "providers/common/libdefault-lib-securitycheck_default.o", - "providers/implementations/asymciphers/libdefault-lib-rsa_enc.o", - "providers/implementations/ciphers/libdefault-lib-cipher_aes.o", - "providers/implementations/ciphers/libdefault-lib-cipher_aes_cbc_hmac_sha.o", - "providers/implementations/ciphers/libdefault-lib-cipher_aes_cbc_hmac_sha1_hw.o", - "providers/implementations/ciphers/libdefault-lib-cipher_aes_cbc_hmac_sha256_hw.o", - "providers/implementations/ciphers/libdefault-lib-cipher_aes_ccm.o", - "providers/implementations/ciphers/libdefault-lib-cipher_aes_ccm_hw.o", - "providers/implementations/ciphers/libdefault-lib-cipher_aes_gcm.o", - "providers/implementations/ciphers/libdefault-lib-cipher_aes_gcm_hw.o", - "providers/implementations/ciphers/libdefault-lib-cipher_aes_gcm_siv.o", - "providers/implementations/ciphers/libdefault-lib-cipher_aes_gcm_siv_hw.o", - "providers/implementations/ciphers/libdefault-lib-cipher_aes_gcm_siv_polyval.o", - "providers/implementations/ciphers/libdefault-lib-cipher_aes_hw.o", - "providers/implementations/ciphers/libdefault-lib-cipher_aes_ocb.o", - "providers/implementations/ciphers/libdefault-lib-cipher_aes_ocb_hw.o", - "providers/implementations/ciphers/libdefault-lib-cipher_aes_siv.o", - "providers/implementations/ciphers/libdefault-lib-cipher_aes_siv_hw.o", - "providers/implementations/ciphers/libdefault-lib-cipher_aes_wrp.o", - "providers/implementations/ciphers/libdefault-lib-cipher_aes_xts.o", - "providers/implementations/ciphers/libdefault-lib-cipher_aes_xts_fips.o", - "providers/implementations/ciphers/libdefault-lib-cipher_aes_xts_hw.o", - "providers/implementations/ciphers/libdefault-lib-cipher_camellia.o", - "providers/implementations/ciphers/libdefault-lib-cipher_camellia_hw.o", - "providers/implementations/ciphers/libdefault-lib-cipher_chacha20.o", - "providers/implementations/ciphers/libdefault-lib-cipher_chacha20_hw.o", - "providers/implementations/ciphers/libdefault-lib-cipher_chacha20_poly1305.o", - "providers/implementations/ciphers/libdefault-lib-cipher_chacha20_poly1305_hw.o", - "providers/implementations/ciphers/libdefault-lib-cipher_cts.o", - "providers/implementations/ciphers/libdefault-lib-cipher_null.o", - "providers/implementations/ciphers/libdefault-lib-cipher_tdes.o", - "providers/implementations/ciphers/libdefault-lib-cipher_tdes_common.o", - "providers/implementations/ciphers/libdefault-lib-cipher_tdes_default.o", - "providers/implementations/ciphers/libdefault-lib-cipher_tdes_default_hw.o", - "providers/implementations/ciphers/libdefault-lib-cipher_tdes_hw.o", - "providers/implementations/ciphers/libdefault-lib-cipher_tdes_wrap.o", - "providers/implementations/ciphers/libdefault-lib-cipher_tdes_wrap_hw.o", - "providers/implementations/digests/libdefault-lib-blake2_prov.o", - "providers/implementations/digests/libdefault-lib-blake2b_prov.o", - "providers/implementations/digests/libdefault-lib-blake2s_prov.o", - "providers/implementations/digests/libdefault-lib-md5_prov.o", - "providers/implementations/digests/libdefault-lib-md5_sha1_prov.o", - "providers/implementations/digests/libdefault-lib-null_prov.o", - "providers/implementations/digests/libdefault-lib-ripemd_prov.o", - "providers/implementations/digests/libdefault-lib-sha2_prov.o", - "providers/implementations/digests/libdefault-lib-sha3_prov.o", - "providers/implementations/encode_decode/libdefault-lib-decode_der2key.o", - "providers/implementations/encode_decode/libdefault-lib-decode_epki2pki.o", - "providers/implementations/encode_decode/libdefault-lib-decode_msblob2key.o", - "providers/implementations/encode_decode/libdefault-lib-decode_pem2der.o", - "providers/implementations/encode_decode/libdefault-lib-decode_pvk2key.o", - "providers/implementations/encode_decode/libdefault-lib-decode_spki2typespki.o", - "providers/implementations/encode_decode/libdefault-lib-encode_key2any.o", - "providers/implementations/encode_decode/libdefault-lib-encode_key2blob.o", - "providers/implementations/encode_decode/libdefault-lib-encode_key2ms.o", - "providers/implementations/encode_decode/libdefault-lib-encode_key2text.o", - "providers/implementations/encode_decode/libdefault-lib-endecoder_common.o", - "providers/implementations/encode_decode/libdefault-lib-ml_common_codecs.o", - "providers/implementations/encode_decode/libdefault-lib-ml_dsa_codecs.o", - "providers/implementations/encode_decode/libdefault-lib-ml_kem_codecs.o", - "providers/implementations/exchange/libdefault-lib-dh_exch.o", - "providers/implementations/exchange/libdefault-lib-ecdh_exch.o", - "providers/implementations/exchange/libdefault-lib-ecx_exch.o", - "providers/implementations/exchange/libdefault-lib-kdf_exch.o", - "providers/implementations/kdfs/libdefault-lib-argon2.o", - "providers/implementations/kdfs/libdefault-lib-hkdf.o", - "providers/implementations/kdfs/libdefault-lib-hmacdrbg_kdf.o", - "providers/implementations/kdfs/libdefault-lib-kbkdf.o", - "providers/implementations/kdfs/libdefault-lib-krb5kdf.o", - "providers/implementations/kdfs/libdefault-lib-pbkdf2.o", - "providers/implementations/kdfs/libdefault-lib-pbkdf2_fips.o", - "providers/implementations/kdfs/libdefault-lib-pkcs12kdf.o", - "providers/implementations/kdfs/libdefault-lib-scrypt.o", - "providers/implementations/kdfs/libdefault-lib-sshkdf.o", - "providers/implementations/kdfs/libdefault-lib-sskdf.o", - "providers/implementations/kdfs/libdefault-lib-tls1_prf.o", - "providers/implementations/kdfs/libdefault-lib-x942kdf.o", - "providers/implementations/kem/libdefault-lib-ec_kem.o", - "providers/implementations/kem/libdefault-lib-ecx_kem.o", - "providers/implementations/kem/libdefault-lib-kem_util.o", - "providers/implementations/kem/libdefault-lib-ml_kem_kem.o", - "providers/implementations/kem/libdefault-lib-mlx_kem.o", - "providers/implementations/kem/libdefault-lib-rsa_kem.o", - "providers/implementations/keymgmt/libdefault-lib-dh_kmgmt.o", - "providers/implementations/keymgmt/libdefault-lib-dsa_kmgmt.o", - "providers/implementations/keymgmt/libdefault-lib-ec_kmgmt.o", - "providers/implementations/keymgmt/libdefault-lib-ecx_kmgmt.o", - "providers/implementations/keymgmt/libdefault-lib-kdf_legacy_kmgmt.o", - "providers/implementations/keymgmt/libdefault-lib-mac_legacy_kmgmt.o", - "providers/implementations/keymgmt/libdefault-lib-ml_dsa_kmgmt.o", - "providers/implementations/keymgmt/libdefault-lib-ml_kem_kmgmt.o", - "providers/implementations/keymgmt/libdefault-lib-mlx_kmgmt.o", - "providers/implementations/keymgmt/libdefault-lib-rsa_kmgmt.o", - "providers/implementations/keymgmt/libdefault-lib-slh_dsa_kmgmt.o", - "providers/implementations/macs/libdefault-lib-blake2b_mac.o", - "providers/implementations/macs/libdefault-lib-blake2s_mac.o", - "providers/implementations/macs/libdefault-lib-cmac_prov.o", - "providers/implementations/macs/libdefault-lib-gmac_prov.o", - "providers/implementations/macs/libdefault-lib-hmac_prov.o", - "providers/implementations/macs/libdefault-lib-kmac_prov.o", - "providers/implementations/macs/libdefault-lib-poly1305_prov.o", - "providers/implementations/macs/libdefault-lib-siphash_prov.o", - "providers/implementations/rands/libdefault-lib-drbg.o", - "providers/implementations/rands/libdefault-lib-drbg_ctr.o", - "providers/implementations/rands/libdefault-lib-drbg_hash.o", - "providers/implementations/rands/libdefault-lib-drbg_hmac.o", - "providers/implementations/rands/libdefault-lib-seed_src.o", - "providers/implementations/rands/libdefault-lib-seed_src_jitter.o", - "providers/implementations/rands/libdefault-lib-test_rng.o", - "providers/implementations/rands/seeding/libdefault-lib-rand_cpu_x86.o", - "providers/implementations/rands/seeding/libdefault-lib-rand_tsc.o", - "providers/implementations/rands/seeding/libdefault-lib-rand_unix.o", - "providers/implementations/rands/seeding/libdefault-lib-rand_win.o", - "providers/implementations/signature/libdefault-lib-dsa_sig.o", - "providers/implementations/signature/libdefault-lib-ecdsa_sig.o", - "providers/implementations/signature/libdefault-lib-eddsa_sig.o", - "providers/implementations/signature/libdefault-lib-mac_legacy_sig.o", - "providers/implementations/signature/libdefault-lib-ml_dsa_sig.o", - "providers/implementations/signature/libdefault-lib-rsa_sig.o", - "providers/implementations/signature/libdefault-lib-slh_dsa_sig.o", - "providers/implementations/skeymgmt/libdefault-lib-aes_skmgmt.o", - "providers/implementations/skeymgmt/libdefault-lib-generic.o", - "providers/implementations/storemgmt/libdefault-lib-file_store.o", - "providers/implementations/storemgmt/libdefault-lib-file_store_any2obj.o", - "ssl/record/methods/libdefault-lib-ssl3_cbc.o" - ], - "providers/liblegacy-lib-prov_running.o" => [ - "providers/prov_running.c" - ], - "providers/liblegacy.a" => [ - "crypto/des/liblegacy-lib-des_enc.o", - "crypto/des/liblegacy-lib-fcrypt_b.o", - "crypto/md5/liblegacy-lib-md5-x86_64.o", - "crypto/md5/liblegacy-lib-md5_dgst.o", - "crypto/md5/liblegacy-lib-md5_one.o", - "crypto/md5/liblegacy-lib-md5_sha1.o", - "crypto/rc4/liblegacy-lib-rc4-md5-x86_64.o", - "crypto/rc4/liblegacy-lib-rc4-x86_64.o", - "providers/common/liblegacy-lib-provider_util.o", - "providers/implementations/ciphers/liblegacy-lib-cipher_blowfish.o", - "providers/implementations/ciphers/liblegacy-lib-cipher_blowfish_hw.o", - "providers/implementations/ciphers/liblegacy-lib-cipher_cast5.o", - "providers/implementations/ciphers/liblegacy-lib-cipher_cast5_hw.o", - "providers/implementations/ciphers/liblegacy-lib-cipher_des.o", - "providers/implementations/ciphers/liblegacy-lib-cipher_des_hw.o", - "providers/implementations/ciphers/liblegacy-lib-cipher_desx.o", - "providers/implementations/ciphers/liblegacy-lib-cipher_desx_hw.o", - "providers/implementations/ciphers/liblegacy-lib-cipher_rc2.o", - "providers/implementations/ciphers/liblegacy-lib-cipher_rc2_hw.o", - "providers/implementations/ciphers/liblegacy-lib-cipher_rc4.o", - "providers/implementations/ciphers/liblegacy-lib-cipher_rc4_hmac_md5.o", - "providers/implementations/ciphers/liblegacy-lib-cipher_rc4_hmac_md5_hw.o", - "providers/implementations/ciphers/liblegacy-lib-cipher_rc4_hw.o", - "providers/implementations/ciphers/liblegacy-lib-cipher_seed.o", - "providers/implementations/ciphers/liblegacy-lib-cipher_seed_hw.o", - "providers/implementations/ciphers/liblegacy-lib-cipher_tdes_common.o", - "providers/implementations/digests/liblegacy-lib-md4_prov.o", - "providers/implementations/digests/liblegacy-lib-ripemd_prov.o", - "providers/implementations/digests/liblegacy-lib-wp_prov.o", - "providers/implementations/kdfs/liblegacy-lib-pbkdf1.o", - "providers/implementations/kdfs/liblegacy-lib-pvkkdf.o", - "providers/liblegacy-lib-prov_running.o" - ], - "providers/libtemplate.a" => [ - "providers/implementations/kem/libtemplate-lib-template_kem.o", - "providers/implementations/keymgmt/libtemplate-lib-template_kmgmt.o" - ], - "ssl/libssl-lib-bio_ssl.o" => [ - "ssl/bio_ssl.c" - ], - "ssl/libssl-lib-d1_lib.o" => [ - "ssl/d1_lib.c" - ], - "ssl/libssl-lib-d1_msg.o" => [ - "ssl/d1_msg.c" - ], - "ssl/libssl-lib-d1_srtp.o" => [ - "ssl/d1_srtp.c" - ], - "ssl/libssl-lib-methods.o" => [ - "ssl/methods.c" - ], - "ssl/libssl-lib-pqueue.o" => [ - "ssl/pqueue.c" - ], - "ssl/libssl-lib-priority_queue.o" => [ - "ssl/priority_queue.c" - ], - "ssl/libssl-lib-s3_enc.o" => [ - "ssl/s3_enc.c" - ], - "ssl/libssl-lib-s3_lib.o" => [ - "ssl/s3_lib.c" - ], - "ssl/libssl-lib-s3_msg.o" => [ - "ssl/s3_msg.c" - ], - "ssl/libssl-lib-ssl_asn1.o" => [ - "ssl/ssl_asn1.c" - ], - "ssl/libssl-lib-ssl_cert.o" => [ - "ssl/ssl_cert.c" - ], - "ssl/libssl-lib-ssl_cert_comp.o" => [ - "ssl/ssl_cert_comp.c" - ], - "ssl/libssl-lib-ssl_ciph.o" => [ - "ssl/ssl_ciph.c" - ], - "ssl/libssl-lib-ssl_conf.o" => [ - "ssl/ssl_conf.c" - ], - "ssl/libssl-lib-ssl_err_legacy.o" => [ - "ssl/ssl_err_legacy.c" - ], - "ssl/libssl-lib-ssl_init.o" => [ - "ssl/ssl_init.c" - ], - "ssl/libssl-lib-ssl_lib.o" => [ - "ssl/ssl_lib.c" - ], - "ssl/libssl-lib-ssl_mcnf.o" => [ - "ssl/ssl_mcnf.c" - ], - "ssl/libssl-lib-ssl_rsa.o" => [ - "ssl/ssl_rsa.c" - ], - "ssl/libssl-lib-ssl_rsa_legacy.o" => [ - "ssl/ssl_rsa_legacy.c" - ], - "ssl/libssl-lib-ssl_sess.o" => [ - "ssl/ssl_sess.c" - ], - "ssl/libssl-lib-ssl_stat.o" => [ - "ssl/ssl_stat.c" - ], - "ssl/libssl-lib-ssl_txt.o" => [ - "ssl/ssl_txt.c" - ], - "ssl/libssl-lib-ssl_utst.o" => [ - "ssl/ssl_utst.c" - ], - "ssl/libssl-lib-t1_enc.o" => [ - "ssl/t1_enc.c" - ], - "ssl/libssl-lib-t1_lib.o" => [ - "ssl/t1_lib.c" - ], - "ssl/libssl-lib-t1_trce.o" => [ - "ssl/t1_trce.c" - ], - "ssl/libssl-lib-tls13_enc.o" => [ - "ssl/tls13_enc.c" - ], - "ssl/libssl-lib-tls_depr.o" => [ - "ssl/tls_depr.c" - ], - "ssl/libssl-lib-tls_srp.o" => [ - "ssl/tls_srp.c" - ], - "ssl/libssl-shlib-bio_ssl.o" => [ - "ssl/bio_ssl.c" - ], - "ssl/libssl-shlib-d1_lib.o" => [ - "ssl/d1_lib.c" - ], - "ssl/libssl-shlib-d1_msg.o" => [ - "ssl/d1_msg.c" - ], - "ssl/libssl-shlib-d1_srtp.o" => [ - "ssl/d1_srtp.c" - ], - "ssl/libssl-shlib-methods.o" => [ - "ssl/methods.c" - ], - "ssl/libssl-shlib-pqueue.o" => [ - "ssl/pqueue.c" - ], - "ssl/libssl-shlib-priority_queue.o" => [ - "ssl/priority_queue.c" - ], - "ssl/libssl-shlib-s3_enc.o" => [ - "ssl/s3_enc.c" - ], - "ssl/libssl-shlib-s3_lib.o" => [ - "ssl/s3_lib.c" - ], - "ssl/libssl-shlib-s3_msg.o" => [ - "ssl/s3_msg.c" - ], - "ssl/libssl-shlib-ssl_asn1.o" => [ - "ssl/ssl_asn1.c" - ], - "ssl/libssl-shlib-ssl_cert.o" => [ - "ssl/ssl_cert.c" - ], - "ssl/libssl-shlib-ssl_cert_comp.o" => [ - "ssl/ssl_cert_comp.c" - ], - "ssl/libssl-shlib-ssl_ciph.o" => [ - "ssl/ssl_ciph.c" - ], - "ssl/libssl-shlib-ssl_conf.o" => [ - "ssl/ssl_conf.c" - ], - "ssl/libssl-shlib-ssl_err_legacy.o" => [ - "ssl/ssl_err_legacy.c" - ], - "ssl/libssl-shlib-ssl_init.o" => [ - "ssl/ssl_init.c" - ], - "ssl/libssl-shlib-ssl_lib.o" => [ - "ssl/ssl_lib.c" - ], - "ssl/libssl-shlib-ssl_mcnf.o" => [ - "ssl/ssl_mcnf.c" - ], - "ssl/libssl-shlib-ssl_rsa.o" => [ - "ssl/ssl_rsa.c" - ], - "ssl/libssl-shlib-ssl_rsa_legacy.o" => [ - "ssl/ssl_rsa_legacy.c" - ], - "ssl/libssl-shlib-ssl_sess.o" => [ - "ssl/ssl_sess.c" - ], - "ssl/libssl-shlib-ssl_stat.o" => [ - "ssl/ssl_stat.c" - ], - "ssl/libssl-shlib-ssl_txt.o" => [ - "ssl/ssl_txt.c" - ], - "ssl/libssl-shlib-ssl_utst.o" => [ - "ssl/ssl_utst.c" - ], - "ssl/libssl-shlib-t1_enc.o" => [ - "ssl/t1_enc.c" - ], - "ssl/libssl-shlib-t1_lib.o" => [ - "ssl/t1_lib.c" - ], - "ssl/libssl-shlib-t1_trce.o" => [ - "ssl/t1_trce.c" - ], - "ssl/libssl-shlib-tls13_enc.o" => [ - "ssl/tls13_enc.c" - ], - "ssl/libssl-shlib-tls_depr.o" => [ - "ssl/tls_depr.c" - ], - "ssl/libssl-shlib-tls_srp.o" => [ - "ssl/tls_srp.c" - ], - "ssl/quic/libssl-lib-cc_newreno.o" => [ - "ssl/quic/cc_newreno.c" - ], - "ssl/quic/libssl-lib-json_enc.o" => [ - "ssl/quic/json_enc.c" - ], - "ssl/quic/libssl-lib-qlog.o" => [ - "ssl/quic/qlog.c" - ], - "ssl/quic/libssl-lib-qlog_event_helpers.o" => [ - "ssl/quic/qlog_event_helpers.c" - ], - "ssl/quic/libssl-lib-quic_ackm.o" => [ - "ssl/quic/quic_ackm.c" - ], - "ssl/quic/libssl-lib-quic_cfq.o" => [ - "ssl/quic/quic_cfq.c" - ], - "ssl/quic/libssl-lib-quic_channel.o" => [ - "ssl/quic/quic_channel.c" - ], - "ssl/quic/libssl-lib-quic_demux.o" => [ - "ssl/quic/quic_demux.c" - ], - "ssl/quic/libssl-lib-quic_engine.o" => [ - "ssl/quic/quic_engine.c" - ], - "ssl/quic/libssl-lib-quic_fc.o" => [ - "ssl/quic/quic_fc.c" - ], - "ssl/quic/libssl-lib-quic_fifd.o" => [ - "ssl/quic/quic_fifd.c" - ], - "ssl/quic/libssl-lib-quic_impl.o" => [ - "ssl/quic/quic_impl.c" - ], - "ssl/quic/libssl-lib-quic_lcidm.o" => [ - "ssl/quic/quic_lcidm.c" - ], - "ssl/quic/libssl-lib-quic_method.o" => [ - "ssl/quic/quic_method.c" - ], - "ssl/quic/libssl-lib-quic_obj.o" => [ - "ssl/quic/quic_obj.c" - ], - "ssl/quic/libssl-lib-quic_port.o" => [ - "ssl/quic/quic_port.c" - ], - "ssl/quic/libssl-lib-quic_rcidm.o" => [ - "ssl/quic/quic_rcidm.c" - ], - "ssl/quic/libssl-lib-quic_reactor.o" => [ - "ssl/quic/quic_reactor.c" - ], - "ssl/quic/libssl-lib-quic_reactor_wait_ctx.o" => [ - "ssl/quic/quic_reactor_wait_ctx.c" - ], - "ssl/quic/libssl-lib-quic_record_rx.o" => [ - "ssl/quic/quic_record_rx.c" - ], - "ssl/quic/libssl-lib-quic_record_shared.o" => [ - "ssl/quic/quic_record_shared.c" - ], - "ssl/quic/libssl-lib-quic_record_tx.o" => [ - "ssl/quic/quic_record_tx.c" - ], - "ssl/quic/libssl-lib-quic_record_util.o" => [ - "ssl/quic/quic_record_util.c" - ], - "ssl/quic/libssl-lib-quic_rstream.o" => [ - "ssl/quic/quic_rstream.c" - ], - "ssl/quic/libssl-lib-quic_rx_depack.o" => [ - "ssl/quic/quic_rx_depack.c" - ], - "ssl/quic/libssl-lib-quic_sf_list.o" => [ - "ssl/quic/quic_sf_list.c" - ], - "ssl/quic/libssl-lib-quic_srt_gen.o" => [ - "ssl/quic/quic_srt_gen.c" - ], - "ssl/quic/libssl-lib-quic_srtm.o" => [ - "ssl/quic/quic_srtm.c" - ], - "ssl/quic/libssl-lib-quic_sstream.o" => [ - "ssl/quic/quic_sstream.c" - ], - "ssl/quic/libssl-lib-quic_statm.o" => [ - "ssl/quic/quic_statm.c" - ], - "ssl/quic/libssl-lib-quic_stream_map.o" => [ - "ssl/quic/quic_stream_map.c" - ], - "ssl/quic/libssl-lib-quic_thread_assist.o" => [ - "ssl/quic/quic_thread_assist.c" - ], - "ssl/quic/libssl-lib-quic_tls.o" => [ - "ssl/quic/quic_tls.c" - ], - "ssl/quic/libssl-lib-quic_tls_api.o" => [ - "ssl/quic/quic_tls_api.c" - ], - "ssl/quic/libssl-lib-quic_trace.o" => [ - "ssl/quic/quic_trace.c" - ], - "ssl/quic/libssl-lib-quic_tserver.o" => [ - "ssl/quic/quic_tserver.c" - ], - "ssl/quic/libssl-lib-quic_txp.o" => [ - "ssl/quic/quic_txp.c" - ], - "ssl/quic/libssl-lib-quic_txpim.o" => [ - "ssl/quic/quic_txpim.c" - ], - "ssl/quic/libssl-lib-quic_types.o" => [ - "ssl/quic/quic_types.c" - ], - "ssl/quic/libssl-lib-quic_wire.o" => [ - "ssl/quic/quic_wire.c" - ], - "ssl/quic/libssl-lib-quic_wire_pkt.o" => [ - "ssl/quic/quic_wire_pkt.c" - ], - "ssl/quic/libssl-lib-uint_set.o" => [ - "ssl/quic/uint_set.c" - ], - "ssl/quic/libssl-shlib-cc_newreno.o" => [ - "ssl/quic/cc_newreno.c" - ], - "ssl/quic/libssl-shlib-json_enc.o" => [ - "ssl/quic/json_enc.c" - ], - "ssl/quic/libssl-shlib-qlog.o" => [ - "ssl/quic/qlog.c" - ], - "ssl/quic/libssl-shlib-qlog_event_helpers.o" => [ - "ssl/quic/qlog_event_helpers.c" - ], - "ssl/quic/libssl-shlib-quic_ackm.o" => [ - "ssl/quic/quic_ackm.c" - ], - "ssl/quic/libssl-shlib-quic_cfq.o" => [ - "ssl/quic/quic_cfq.c" - ], - "ssl/quic/libssl-shlib-quic_channel.o" => [ - "ssl/quic/quic_channel.c" - ], - "ssl/quic/libssl-shlib-quic_demux.o" => [ - "ssl/quic/quic_demux.c" - ], - "ssl/quic/libssl-shlib-quic_engine.o" => [ - "ssl/quic/quic_engine.c" - ], - "ssl/quic/libssl-shlib-quic_fc.o" => [ - "ssl/quic/quic_fc.c" - ], - "ssl/quic/libssl-shlib-quic_fifd.o" => [ - "ssl/quic/quic_fifd.c" - ], - "ssl/quic/libssl-shlib-quic_impl.o" => [ - "ssl/quic/quic_impl.c" - ], - "ssl/quic/libssl-shlib-quic_lcidm.o" => [ - "ssl/quic/quic_lcidm.c" - ], - "ssl/quic/libssl-shlib-quic_method.o" => [ - "ssl/quic/quic_method.c" - ], - "ssl/quic/libssl-shlib-quic_obj.o" => [ - "ssl/quic/quic_obj.c" - ], - "ssl/quic/libssl-shlib-quic_port.o" => [ - "ssl/quic/quic_port.c" - ], - "ssl/quic/libssl-shlib-quic_rcidm.o" => [ - "ssl/quic/quic_rcidm.c" - ], - "ssl/quic/libssl-shlib-quic_reactor.o" => [ - "ssl/quic/quic_reactor.c" - ], - "ssl/quic/libssl-shlib-quic_reactor_wait_ctx.o" => [ - "ssl/quic/quic_reactor_wait_ctx.c" - ], - "ssl/quic/libssl-shlib-quic_record_rx.o" => [ - "ssl/quic/quic_record_rx.c" - ], - "ssl/quic/libssl-shlib-quic_record_shared.o" => [ - "ssl/quic/quic_record_shared.c" - ], - "ssl/quic/libssl-shlib-quic_record_tx.o" => [ - "ssl/quic/quic_record_tx.c" - ], - "ssl/quic/libssl-shlib-quic_record_util.o" => [ - "ssl/quic/quic_record_util.c" - ], - "ssl/quic/libssl-shlib-quic_rstream.o" => [ - "ssl/quic/quic_rstream.c" - ], - "ssl/quic/libssl-shlib-quic_rx_depack.o" => [ - "ssl/quic/quic_rx_depack.c" - ], - "ssl/quic/libssl-shlib-quic_sf_list.o" => [ - "ssl/quic/quic_sf_list.c" - ], - "ssl/quic/libssl-shlib-quic_srt_gen.o" => [ - "ssl/quic/quic_srt_gen.c" - ], - "ssl/quic/libssl-shlib-quic_srtm.o" => [ - "ssl/quic/quic_srtm.c" - ], - "ssl/quic/libssl-shlib-quic_sstream.o" => [ - "ssl/quic/quic_sstream.c" - ], - "ssl/quic/libssl-shlib-quic_statm.o" => [ - "ssl/quic/quic_statm.c" - ], - "ssl/quic/libssl-shlib-quic_stream_map.o" => [ - "ssl/quic/quic_stream_map.c" - ], - "ssl/quic/libssl-shlib-quic_thread_assist.o" => [ - "ssl/quic/quic_thread_assist.c" - ], - "ssl/quic/libssl-shlib-quic_tls.o" => [ - "ssl/quic/quic_tls.c" - ], - "ssl/quic/libssl-shlib-quic_tls_api.o" => [ - "ssl/quic/quic_tls_api.c" - ], - "ssl/quic/libssl-shlib-quic_trace.o" => [ - "ssl/quic/quic_trace.c" - ], - "ssl/quic/libssl-shlib-quic_tserver.o" => [ - "ssl/quic/quic_tserver.c" - ], - "ssl/quic/libssl-shlib-quic_txp.o" => [ - "ssl/quic/quic_txp.c" - ], - "ssl/quic/libssl-shlib-quic_txpim.o" => [ - "ssl/quic/quic_txpim.c" - ], - "ssl/quic/libssl-shlib-quic_types.o" => [ - "ssl/quic/quic_types.c" - ], - "ssl/quic/libssl-shlib-quic_wire.o" => [ - "ssl/quic/quic_wire.c" - ], - "ssl/quic/libssl-shlib-quic_wire_pkt.o" => [ - "ssl/quic/quic_wire_pkt.c" - ], - "ssl/quic/libssl-shlib-uint_set.o" => [ - "ssl/quic/uint_set.c" - ], - "ssl/record/libssl-lib-rec_layer_d1.o" => [ - "ssl/record/rec_layer_d1.c" - ], - "ssl/record/libssl-lib-rec_layer_s3.o" => [ - "ssl/record/rec_layer_s3.c" - ], - "ssl/record/libssl-shlib-rec_layer_d1.o" => [ - "ssl/record/rec_layer_d1.c" - ], - "ssl/record/libssl-shlib-rec_layer_s3.o" => [ - "ssl/record/rec_layer_s3.c" - ], - "ssl/record/methods/libcommon-lib-tls_pad.o" => [ - "ssl/record/methods/tls_pad.c" - ], - "ssl/record/methods/libdefault-lib-ssl3_cbc.o" => [ - "ssl/record/methods/ssl3_cbc.c" - ], - "ssl/record/methods/libssl-lib-dtls_meth.o" => [ - "ssl/record/methods/dtls_meth.c" - ], - "ssl/record/methods/libssl-lib-ktls_meth.o" => [ - "ssl/record/methods/ktls_meth.c" - ], - "ssl/record/methods/libssl-lib-ssl3_meth.o" => [ - "ssl/record/methods/ssl3_meth.c" - ], - "ssl/record/methods/libssl-lib-tls13_meth.o" => [ - "ssl/record/methods/tls13_meth.c" - ], - "ssl/record/methods/libssl-lib-tls1_meth.o" => [ - "ssl/record/methods/tls1_meth.c" - ], - "ssl/record/methods/libssl-lib-tls_common.o" => [ - "ssl/record/methods/tls_common.c" - ], - "ssl/record/methods/libssl-lib-tls_multib.o" => [ - "ssl/record/methods/tls_multib.c" - ], - "ssl/record/methods/libssl-lib-tlsany_meth.o" => [ - "ssl/record/methods/tlsany_meth.c" - ], - "ssl/record/methods/libssl-shlib-dtls_meth.o" => [ - "ssl/record/methods/dtls_meth.c" - ], - "ssl/record/methods/libssl-shlib-ktls_meth.o" => [ - "ssl/record/methods/ktls_meth.c" - ], - "ssl/record/methods/libssl-shlib-ssl3_cbc.o" => [ - "ssl/record/methods/ssl3_cbc.c" - ], - "ssl/record/methods/libssl-shlib-ssl3_meth.o" => [ - "ssl/record/methods/ssl3_meth.c" - ], - "ssl/record/methods/libssl-shlib-tls13_meth.o" => [ - "ssl/record/methods/tls13_meth.c" - ], - "ssl/record/methods/libssl-shlib-tls1_meth.o" => [ - "ssl/record/methods/tls1_meth.c" - ], - "ssl/record/methods/libssl-shlib-tls_common.o" => [ - "ssl/record/methods/tls_common.c" - ], - "ssl/record/methods/libssl-shlib-tls_multib.o" => [ - "ssl/record/methods/tls_multib.c" - ], - "ssl/record/methods/libssl-shlib-tls_pad.o" => [ - "ssl/record/methods/tls_pad.c" - ], - "ssl/record/methods/libssl-shlib-tlsany_meth.o" => [ - "ssl/record/methods/tlsany_meth.c" - ], - "ssl/rio/libssl-lib-poll_builder.o" => [ - "ssl/rio/poll_builder.c" - ], - "ssl/rio/libssl-lib-poll_immediate.o" => [ - "ssl/rio/poll_immediate.c" - ], - "ssl/rio/libssl-lib-rio_notifier.o" => [ - "ssl/rio/rio_notifier.c" - ], - "ssl/rio/libssl-shlib-poll_builder.o" => [ - "ssl/rio/poll_builder.c" - ], - "ssl/rio/libssl-shlib-poll_immediate.o" => [ - "ssl/rio/poll_immediate.c" - ], - "ssl/rio/libssl-shlib-rio_notifier.o" => [ - "ssl/rio/rio_notifier.c" - ], - "ssl/statem/libssl-lib-extensions.o" => [ - "ssl/statem/extensions.c" - ], - "ssl/statem/libssl-lib-extensions_clnt.o" => [ - "ssl/statem/extensions_clnt.c" - ], - "ssl/statem/libssl-lib-extensions_cust.o" => [ - "ssl/statem/extensions_cust.c" - ], - "ssl/statem/libssl-lib-extensions_srvr.o" => [ - "ssl/statem/extensions_srvr.c" - ], - "ssl/statem/libssl-lib-statem.o" => [ - "ssl/statem/statem.c" - ], - "ssl/statem/libssl-lib-statem_clnt.o" => [ - "ssl/statem/statem_clnt.c" - ], - "ssl/statem/libssl-lib-statem_dtls.o" => [ - "ssl/statem/statem_dtls.c" - ], - "ssl/statem/libssl-lib-statem_lib.o" => [ - "ssl/statem/statem_lib.c" - ], - "ssl/statem/libssl-lib-statem_srvr.o" => [ - "ssl/statem/statem_srvr.c" - ], - "ssl/statem/libssl-shlib-extensions.o" => [ - "ssl/statem/extensions.c" - ], - "ssl/statem/libssl-shlib-extensions_clnt.o" => [ - "ssl/statem/extensions_clnt.c" - ], - "ssl/statem/libssl-shlib-extensions_cust.o" => [ - "ssl/statem/extensions_cust.c" - ], - "ssl/statem/libssl-shlib-extensions_srvr.o" => [ - "ssl/statem/extensions_srvr.c" - ], - "ssl/statem/libssl-shlib-statem.o" => [ - "ssl/statem/statem.c" - ], - "ssl/statem/libssl-shlib-statem_clnt.o" => [ - "ssl/statem/statem_clnt.c" - ], - "ssl/statem/libssl-shlib-statem_dtls.o" => [ - "ssl/statem/statem_dtls.c" - ], - "ssl/statem/libssl-shlib-statem_lib.o" => [ - "ssl/statem/statem_lib.c" - ], - "ssl/statem/libssl-shlib-statem_srvr.o" => [ - "ssl/statem/statem_srvr.c" - ], - "ssl/tls13secretstest-bin-tls13_enc.o" => [ - "ssl/tls13_enc.c" - ], - "test/aborttest" => [ - "test/aborttest-bin-aborttest.o" - ], - "test/aborttest-bin-aborttest.o" => [ - "test/aborttest.c" - ], - "test/aesgcmtest" => [ - "test/aesgcmtest-bin-aesgcmtest.o" - ], - "test/aesgcmtest-bin-aesgcmtest.o" => [ - "test/aesgcmtest.c" - ], - "test/afalgtest" => [ - "test/afalgtest-bin-afalgtest.o" - ], - "test/afalgtest-bin-afalgtest.o" => [ - "test/afalgtest.c" - ], - "test/algorithmid_test" => [ - "test/algorithmid_test-bin-algorithmid_test.o" - ], - "test/algorithmid_test-bin-algorithmid_test.o" => [ - "test/algorithmid_test.c" - ], - "test/asn1_decode_test" => [ - "test/asn1_decode_test-bin-asn1_decode_test.o" - ], - "test/asn1_decode_test-bin-asn1_decode_test.o" => [ - "test/asn1_decode_test.c" - ], - "test/asn1_dsa_internal_test" => [ - "test/asn1_dsa_internal_test-bin-asn1_dsa_internal_test.o" - ], - "test/asn1_dsa_internal_test-bin-asn1_dsa_internal_test.o" => [ - "test/asn1_dsa_internal_test.c" - ], - "test/asn1_encode_test" => [ - "test/asn1_encode_test-bin-asn1_encode_test.o" - ], - "test/asn1_encode_test-bin-asn1_encode_test.o" => [ - "test/asn1_encode_test.c" - ], - "test/asn1_internal_test" => [ - "test/asn1_internal_test-bin-asn1_internal_test.o" - ], - "test/asn1_internal_test-bin-asn1_internal_test.o" => [ - "test/asn1_internal_test.c" - ], - "test/asn1_stable_parse_test" => [ - "test/asn1_stable_parse_test-bin-asn1_stable_parse_test.o" - ], - "test/asn1_stable_parse_test-bin-asn1_stable_parse_test.o" => [ - "test/asn1_stable_parse_test.c" - ], - "test/asn1_string_table_test" => [ - "test/asn1_string_table_test-bin-asn1_string_table_test.o" - ], - "test/asn1_string_table_test-bin-asn1_string_table_test.o" => [ - "test/asn1_string_table_test.c" - ], - "test/asn1_time_test" => [ - "crypto/asn1/asn1_time_test-bin-a_time.o", - "crypto/asn1_time_test-bin-ctype.o", - "test/asn1_time_test-bin-asn1_time_test.o" - ], - "test/asn1_time_test-bin-asn1_time_test.o" => [ - "test/asn1_time_test.c" - ], - "test/asynciotest" => [ - "test/asynciotest-bin-asynciotest.o", - "test/helpers/asynciotest-bin-ssltestlib.o" - ], - "test/asynciotest-bin-asynciotest.o" => [ - "test/asynciotest.c" - ], - "test/asynctest" => [ - "test/asynctest-bin-asynctest.o" - ], - "test/asynctest-bin-asynctest.o" => [ - "test/asynctest.c" - ], - "test/bad_dtls_test" => [ - "test/bad_dtls_test-bin-bad_dtls_test.o" - ], - "test/bad_dtls_test-bin-bad_dtls_test.o" => [ - "test/bad_dtls_test.c" - ], - "test/bftest" => [ - "test/bftest-bin-bftest.o" - ], - "test/bftest-bin-bftest.o" => [ - "test/bftest.c" - ], - "test/bio_addr_test" => [ - "test/bio_addr_test-bin-bio_addr_test.o" - ], - "test/bio_addr_test-bin-bio_addr_test.o" => [ - "test/bio_addr_test.c" - ], - "test/bio_base64_test" => [ - "test/bio_base64_test-bin-bio_base64_test.o" - ], - "test/bio_base64_test-bin-bio_base64_test.o" => [ - "test/bio_base64_test.c" - ], - "test/bio_callback_test" => [ - "test/bio_callback_test-bin-bio_callback_test.o" - ], - "test/bio_callback_test-bin-bio_callback_test.o" => [ - "test/bio_callback_test.c" - ], - "test/bio_core_test" => [ - "test/bio_core_test-bin-bio_core_test.o" - ], - "test/bio_core_test-bin-bio_core_test.o" => [ - "test/bio_core_test.c" - ], - "test/bio_dgram_test" => [ - "test/bio_dgram_test-bin-bio_dgram_test.o" - ], - "test/bio_dgram_test-bin-bio_dgram_test.o" => [ - "test/bio_dgram_test.c" - ], - "test/bio_enc_test" => [ - "test/bio_enc_test-bin-bio_enc_test.o" - ], - "test/bio_enc_test-bin-bio_enc_test.o" => [ - "test/bio_enc_test.c" - ], - "test/bio_memleak_test" => [ - "test/bio_memleak_test-bin-bio_memleak_test.o" - ], - "test/bio_memleak_test-bin-bio_memleak_test.o" => [ - "test/bio_memleak_test.c" - ], - "test/bio_meth_test" => [ - "test/bio_meth_test-bin-bio_meth_test.o" - ], - "test/bio_meth_test-bin-bio_meth_test.o" => [ - "test/bio_meth_test.c" - ], - "test/bio_prefix_text" => [ - "test/bio_prefix_text-bin-bio_prefix_text.o" - ], - "test/bio_prefix_text-bin-bio_prefix_text.o" => [ - "test/bio_prefix_text.c" - ], - "test/bio_pw_callback_test" => [ - "test/bio_pw_callback_test-bin-bio_pw_callback_test.o" - ], - "test/bio_pw_callback_test-bin-bio_pw_callback_test.o" => [ - "test/bio_pw_callback_test.c" - ], - "test/bio_readbuffer_test" => [ - "test/bio_readbuffer_test-bin-bio_readbuffer_test.o" - ], - "test/bio_readbuffer_test-bin-bio_readbuffer_test.o" => [ - "test/bio_readbuffer_test.c" - ], - "test/bio_tfo_test" => [ - "test/bio_tfo_test-bin-bio_tfo_test.o" - ], - "test/bio_tfo_test-bin-bio_tfo_test.o" => [ - "test/bio_tfo_test.c" - ], - "test/bioprinttest" => [ - "test/bioprinttest-bin-bioprinttest.o" - ], - "test/bioprinttest-bin-bioprinttest.o" => [ - "test/bioprinttest.c" - ], - "test/bn_internal_test" => [ - "test/bn_internal_test-bin-bn_internal_test.o" - ], - "test/bn_internal_test-bin-bn_internal_test.o" => [ - "test/bn_internal_test.c" - ], - "test/bntest" => [ - "test/bntest-bin-bntest.o" - ], - "test/bntest-bin-bntest.o" => [ - "test/bntest.c" - ], - "test/build_wincrypt_test" => [ - "test/build_wincrypt_test-bin-build_wincrypt_test.o" - ], - "test/build_wincrypt_test-bin-build_wincrypt_test.o" => [ - "test/build_wincrypt_test.c" - ], - "test/buildtest_c_aes" => [ - "test/buildtest_c_aes-bin-buildtest_aes.o" - ], - "test/buildtest_c_aes-bin-buildtest_aes.o" => [ - "test/buildtest_aes.c" - ], - "test/buildtest_c_asn1" => [ - "test/buildtest_c_asn1-bin-buildtest_asn1.o" - ], - "test/buildtest_c_asn1-bin-buildtest_asn1.o" => [ - "test/buildtest_asn1.c" - ], - "test/buildtest_c_asn1t" => [ - "test/buildtest_c_asn1t-bin-buildtest_asn1t.o" - ], - "test/buildtest_c_asn1t-bin-buildtest_asn1t.o" => [ - "test/buildtest_asn1t.c" - ], - "test/buildtest_c_async" => [ - "test/buildtest_c_async-bin-buildtest_async.o" - ], - "test/buildtest_c_async-bin-buildtest_async.o" => [ - "test/buildtest_async.c" - ], - "test/buildtest_c_bio" => [ - "test/buildtest_c_bio-bin-buildtest_bio.o" - ], - "test/buildtest_c_bio-bin-buildtest_bio.o" => [ - "test/buildtest_bio.c" - ], - "test/buildtest_c_blowfish" => [ - "test/buildtest_c_blowfish-bin-buildtest_blowfish.o" - ], - "test/buildtest_c_blowfish-bin-buildtest_blowfish.o" => [ - "test/buildtest_blowfish.c" - ], - "test/buildtest_c_bn" => [ - "test/buildtest_c_bn-bin-buildtest_bn.o" - ], - "test/buildtest_c_bn-bin-buildtest_bn.o" => [ - "test/buildtest_bn.c" - ], - "test/buildtest_c_buffer" => [ - "test/buildtest_c_buffer-bin-buildtest_buffer.o" - ], - "test/buildtest_c_buffer-bin-buildtest_buffer.o" => [ - "test/buildtest_buffer.c" - ], - "test/buildtest_c_byteorder" => [ - "test/buildtest_c_byteorder-bin-buildtest_byteorder.o" - ], - "test/buildtest_c_byteorder-bin-buildtest_byteorder.o" => [ - "test/buildtest_byteorder.c" - ], - "test/buildtest_c_camellia" => [ - "test/buildtest_c_camellia-bin-buildtest_camellia.o" - ], - "test/buildtest_c_camellia-bin-buildtest_camellia.o" => [ - "test/buildtest_camellia.c" - ], - "test/buildtest_c_cast" => [ - "test/buildtest_c_cast-bin-buildtest_cast.o" - ], - "test/buildtest_c_cast-bin-buildtest_cast.o" => [ - "test/buildtest_cast.c" - ], - "test/buildtest_c_cmac" => [ - "test/buildtest_c_cmac-bin-buildtest_cmac.o" - ], - "test/buildtest_c_cmac-bin-buildtest_cmac.o" => [ - "test/buildtest_cmac.c" - ], - "test/buildtest_c_cmp" => [ - "test/buildtest_c_cmp-bin-buildtest_cmp.o" - ], - "test/buildtest_c_cmp-bin-buildtest_cmp.o" => [ - "test/buildtest_cmp.c" - ], - "test/buildtest_c_cmp_util" => [ - "test/buildtest_c_cmp_util-bin-buildtest_cmp_util.o" - ], - "test/buildtest_c_cmp_util-bin-buildtest_cmp_util.o" => [ - "test/buildtest_cmp_util.c" - ], - "test/buildtest_c_cms" => [ - "test/buildtest_c_cms-bin-buildtest_cms.o" - ], - "test/buildtest_c_cms-bin-buildtest_cms.o" => [ - "test/buildtest_cms.c" - ], - "test/buildtest_c_comp" => [ - "test/buildtest_c_comp-bin-buildtest_comp.o" - ], - "test/buildtest_c_comp-bin-buildtest_comp.o" => [ - "test/buildtest_comp.c" - ], - "test/buildtest_c_conf" => [ - "test/buildtest_c_conf-bin-buildtest_conf.o" - ], - "test/buildtest_c_conf-bin-buildtest_conf.o" => [ - "test/buildtest_conf.c" - ], - "test/buildtest_c_conf_api" => [ - "test/buildtest_c_conf_api-bin-buildtest_conf_api.o" - ], - "test/buildtest_c_conf_api-bin-buildtest_conf_api.o" => [ - "test/buildtest_conf_api.c" - ], - "test/buildtest_c_configuration" => [ - "test/buildtest_c_configuration-bin-buildtest_configuration.o" - ], - "test/buildtest_c_configuration-bin-buildtest_configuration.o" => [ - "test/buildtest_configuration.c" - ], - "test/buildtest_c_conftypes" => [ - "test/buildtest_c_conftypes-bin-buildtest_conftypes.o" - ], - "test/buildtest_c_conftypes-bin-buildtest_conftypes.o" => [ - "test/buildtest_conftypes.c" - ], - "test/buildtest_c_core" => [ - "test/buildtest_c_core-bin-buildtest_core.o" - ], - "test/buildtest_c_core-bin-buildtest_core.o" => [ - "test/buildtest_core.c" - ], - "test/buildtest_c_core_dispatch" => [ - "test/buildtest_c_core_dispatch-bin-buildtest_core_dispatch.o" - ], - "test/buildtest_c_core_dispatch-bin-buildtest_core_dispatch.o" => [ - "test/buildtest_core_dispatch.c" - ], - "test/buildtest_c_core_names" => [ - "test/buildtest_c_core_names-bin-buildtest_core_names.o" - ], - "test/buildtest_c_core_names-bin-buildtest_core_names.o" => [ - "test/buildtest_core_names.c" - ], - "test/buildtest_c_core_object" => [ - "test/buildtest_c_core_object-bin-buildtest_core_object.o" - ], - "test/buildtest_c_core_object-bin-buildtest_core_object.o" => [ - "test/buildtest_core_object.c" - ], - "test/buildtest_c_crmf" => [ - "test/buildtest_c_crmf-bin-buildtest_crmf.o" - ], - "test/buildtest_c_crmf-bin-buildtest_crmf.o" => [ - "test/buildtest_crmf.c" - ], - "test/buildtest_c_crypto" => [ - "test/buildtest_c_crypto-bin-buildtest_crypto.o" - ], - "test/buildtest_c_crypto-bin-buildtest_crypto.o" => [ - "test/buildtest_crypto.c" - ], - "test/buildtest_c_cryptoerr_legacy" => [ - "test/buildtest_c_cryptoerr_legacy-bin-buildtest_cryptoerr_legacy.o" - ], - "test/buildtest_c_cryptoerr_legacy-bin-buildtest_cryptoerr_legacy.o" => [ - "test/buildtest_cryptoerr_legacy.c" - ], - "test/buildtest_c_ct" => [ - "test/buildtest_c_ct-bin-buildtest_ct.o" - ], - "test/buildtest_c_ct-bin-buildtest_ct.o" => [ - "test/buildtest_ct.c" - ], - "test/buildtest_c_decoder" => [ - "test/buildtest_c_decoder-bin-buildtest_decoder.o" - ], - "test/buildtest_c_decoder-bin-buildtest_decoder.o" => [ - "test/buildtest_decoder.c" - ], - "test/buildtest_c_des" => [ - "test/buildtest_c_des-bin-buildtest_des.o" - ], - "test/buildtest_c_des-bin-buildtest_des.o" => [ - "test/buildtest_des.c" - ], - "test/buildtest_c_dh" => [ - "test/buildtest_c_dh-bin-buildtest_dh.o" - ], - "test/buildtest_c_dh-bin-buildtest_dh.o" => [ - "test/buildtest_dh.c" - ], - "test/buildtest_c_dsa" => [ - "test/buildtest_c_dsa-bin-buildtest_dsa.o" - ], - "test/buildtest_c_dsa-bin-buildtest_dsa.o" => [ - "test/buildtest_dsa.c" - ], - "test/buildtest_c_dtls1" => [ - "test/buildtest_c_dtls1-bin-buildtest_dtls1.o" - ], - "test/buildtest_c_dtls1-bin-buildtest_dtls1.o" => [ - "test/buildtest_dtls1.c" - ], - "test/buildtest_c_e_os2" => [ - "test/buildtest_c_e_os2-bin-buildtest_e_os2.o" - ], - "test/buildtest_c_e_os2-bin-buildtest_e_os2.o" => [ - "test/buildtest_e_os2.c" - ], - "test/buildtest_c_e_ostime" => [ - "test/buildtest_c_e_ostime-bin-buildtest_e_ostime.o" - ], - "test/buildtest_c_e_ostime-bin-buildtest_e_ostime.o" => [ - "test/buildtest_e_ostime.c" - ], - "test/buildtest_c_ebcdic" => [ - "test/buildtest_c_ebcdic-bin-buildtest_ebcdic.o" - ], - "test/buildtest_c_ebcdic-bin-buildtest_ebcdic.o" => [ - "test/buildtest_ebcdic.c" - ], - "test/buildtest_c_ec" => [ - "test/buildtest_c_ec-bin-buildtest_ec.o" - ], - "test/buildtest_c_ec-bin-buildtest_ec.o" => [ - "test/buildtest_ec.c" - ], - "test/buildtest_c_ecdh" => [ - "test/buildtest_c_ecdh-bin-buildtest_ecdh.o" - ], - "test/buildtest_c_ecdh-bin-buildtest_ecdh.o" => [ - "test/buildtest_ecdh.c" - ], - "test/buildtest_c_ecdsa" => [ - "test/buildtest_c_ecdsa-bin-buildtest_ecdsa.o" - ], - "test/buildtest_c_ecdsa-bin-buildtest_ecdsa.o" => [ - "test/buildtest_ecdsa.c" - ], - "test/buildtest_c_encoder" => [ - "test/buildtest_c_encoder-bin-buildtest_encoder.o" - ], - "test/buildtest_c_encoder-bin-buildtest_encoder.o" => [ - "test/buildtest_encoder.c" - ], - "test/buildtest_c_engine" => [ - "test/buildtest_c_engine-bin-buildtest_engine.o" - ], - "test/buildtest_c_engine-bin-buildtest_engine.o" => [ - "test/buildtest_engine.c" - ], - "test/buildtest_c_ess" => [ - "test/buildtest_c_ess-bin-buildtest_ess.o" - ], - "test/buildtest_c_ess-bin-buildtest_ess.o" => [ - "test/buildtest_ess.c" - ], - "test/buildtest_c_evp" => [ - "test/buildtest_c_evp-bin-buildtest_evp.o" - ], - "test/buildtest_c_evp-bin-buildtest_evp.o" => [ - "test/buildtest_evp.c" - ], - "test/buildtest_c_fips_names" => [ - "test/buildtest_c_fips_names-bin-buildtest_fips_names.o" - ], - "test/buildtest_c_fips_names-bin-buildtest_fips_names.o" => [ - "test/buildtest_fips_names.c" - ], - "test/buildtest_c_fipskey" => [ - "test/buildtest_c_fipskey-bin-buildtest_fipskey.o" - ], - "test/buildtest_c_fipskey-bin-buildtest_fipskey.o" => [ - "test/buildtest_fipskey.c" - ], - "test/buildtest_c_hmac" => [ - "test/buildtest_c_hmac-bin-buildtest_hmac.o" - ], - "test/buildtest_c_hmac-bin-buildtest_hmac.o" => [ - "test/buildtest_hmac.c" - ], - "test/buildtest_c_hpke" => [ - "test/buildtest_c_hpke-bin-buildtest_hpke.o" - ], - "test/buildtest_c_hpke-bin-buildtest_hpke.o" => [ - "test/buildtest_hpke.c" - ], - "test/buildtest_c_http" => [ - "test/buildtest_c_http-bin-buildtest_http.o" - ], - "test/buildtest_c_http-bin-buildtest_http.o" => [ - "test/buildtest_http.c" - ], - "test/buildtest_c_indicator" => [ - "test/buildtest_c_indicator-bin-buildtest_indicator.o" - ], - "test/buildtest_c_indicator-bin-buildtest_indicator.o" => [ - "test/buildtest_indicator.c" - ], - "test/buildtest_c_kdf" => [ - "test/buildtest_c_kdf-bin-buildtest_kdf.o" - ], - "test/buildtest_c_kdf-bin-buildtest_kdf.o" => [ - "test/buildtest_kdf.c" - ], - "test/buildtest_c_lhash" => [ - "test/buildtest_c_lhash-bin-buildtest_lhash.o" - ], - "test/buildtest_c_lhash-bin-buildtest_lhash.o" => [ - "test/buildtest_lhash.c" - ], - "test/buildtest_c_macros" => [ - "test/buildtest_c_macros-bin-buildtest_macros.o" - ], - "test/buildtest_c_macros-bin-buildtest_macros.o" => [ - "test/buildtest_macros.c" - ], - "test/buildtest_c_md4" => [ - "test/buildtest_c_md4-bin-buildtest_md4.o" - ], - "test/buildtest_c_md4-bin-buildtest_md4.o" => [ - "test/buildtest_md4.c" - ], - "test/buildtest_c_md5" => [ - "test/buildtest_c_md5-bin-buildtest_md5.o" - ], - "test/buildtest_c_md5-bin-buildtest_md5.o" => [ - "test/buildtest_md5.c" - ], - "test/buildtest_c_ml_kem" => [ - "test/buildtest_c_ml_kem-bin-buildtest_ml_kem.o" - ], - "test/buildtest_c_ml_kem-bin-buildtest_ml_kem.o" => [ - "test/buildtest_ml_kem.c" - ], - "test/buildtest_c_modes" => [ - "test/buildtest_c_modes-bin-buildtest_modes.o" - ], - "test/buildtest_c_modes-bin-buildtest_modes.o" => [ - "test/buildtest_modes.c" - ], - "test/buildtest_c_obj_mac" => [ - "test/buildtest_c_obj_mac-bin-buildtest_obj_mac.o" - ], - "test/buildtest_c_obj_mac-bin-buildtest_obj_mac.o" => [ - "test/buildtest_obj_mac.c" - ], - "test/buildtest_c_objects" => [ - "test/buildtest_c_objects-bin-buildtest_objects.o" - ], - "test/buildtest_c_objects-bin-buildtest_objects.o" => [ - "test/buildtest_objects.c" - ], - "test/buildtest_c_ocsp" => [ - "test/buildtest_c_ocsp-bin-buildtest_ocsp.o" - ], - "test/buildtest_c_ocsp-bin-buildtest_ocsp.o" => [ - "test/buildtest_ocsp.c" - ], - "test/buildtest_c_opensslv" => [ - "test/buildtest_c_opensslv-bin-buildtest_opensslv.o" - ], - "test/buildtest_c_opensslv-bin-buildtest_opensslv.o" => [ - "test/buildtest_opensslv.c" - ], - "test/buildtest_c_ossl_typ" => [ - "test/buildtest_c_ossl_typ-bin-buildtest_ossl_typ.o" - ], - "test/buildtest_c_ossl_typ-bin-buildtest_ossl_typ.o" => [ - "test/buildtest_ossl_typ.c" - ], - "test/buildtest_c_param_build" => [ - "test/buildtest_c_param_build-bin-buildtest_param_build.o" - ], - "test/buildtest_c_param_build-bin-buildtest_param_build.o" => [ - "test/buildtest_param_build.c" - ], - "test/buildtest_c_params" => [ - "test/buildtest_c_params-bin-buildtest_params.o" - ], - "test/buildtest_c_params-bin-buildtest_params.o" => [ - "test/buildtest_params.c" - ], - "test/buildtest_c_pem" => [ - "test/buildtest_c_pem-bin-buildtest_pem.o" - ], - "test/buildtest_c_pem-bin-buildtest_pem.o" => [ - "test/buildtest_pem.c" - ], - "test/buildtest_c_pem2" => [ - "test/buildtest_c_pem2-bin-buildtest_pem2.o" - ], - "test/buildtest_c_pem2-bin-buildtest_pem2.o" => [ - "test/buildtest_pem2.c" - ], - "test/buildtest_c_pkcs12" => [ - "test/buildtest_c_pkcs12-bin-buildtest_pkcs12.o" - ], - "test/buildtest_c_pkcs12-bin-buildtest_pkcs12.o" => [ - "test/buildtest_pkcs12.c" - ], - "test/buildtest_c_pkcs7" => [ - "test/buildtest_c_pkcs7-bin-buildtest_pkcs7.o" - ], - "test/buildtest_c_pkcs7-bin-buildtest_pkcs7.o" => [ - "test/buildtest_pkcs7.c" - ], - "test/buildtest_c_prov_ssl" => [ - "test/buildtest_c_prov_ssl-bin-buildtest_prov_ssl.o" - ], - "test/buildtest_c_prov_ssl-bin-buildtest_prov_ssl.o" => [ - "test/buildtest_prov_ssl.c" - ], - "test/buildtest_c_provider" => [ - "test/buildtest_c_provider-bin-buildtest_provider.o" - ], - "test/buildtest_c_provider-bin-buildtest_provider.o" => [ - "test/buildtest_provider.c" - ], - "test/buildtest_c_quic" => [ - "test/buildtest_c_quic-bin-buildtest_quic.o" - ], - "test/buildtest_c_quic-bin-buildtest_quic.o" => [ - "test/buildtest_quic.c" - ], - "test/buildtest_c_rand" => [ - "test/buildtest_c_rand-bin-buildtest_rand.o" - ], - "test/buildtest_c_rand-bin-buildtest_rand.o" => [ - "test/buildtest_rand.c" - ], - "test/buildtest_c_rc2" => [ - "test/buildtest_c_rc2-bin-buildtest_rc2.o" - ], - "test/buildtest_c_rc2-bin-buildtest_rc2.o" => [ - "test/buildtest_rc2.c" - ], - "test/buildtest_c_rc4" => [ - "test/buildtest_c_rc4-bin-buildtest_rc4.o" - ], - "test/buildtest_c_rc4-bin-buildtest_rc4.o" => [ - "test/buildtest_rc4.c" - ], - "test/buildtest_c_ripemd" => [ - "test/buildtest_c_ripemd-bin-buildtest_ripemd.o" - ], - "test/buildtest_c_ripemd-bin-buildtest_ripemd.o" => [ - "test/buildtest_ripemd.c" - ], - "test/buildtest_c_rsa" => [ - "test/buildtest_c_rsa-bin-buildtest_rsa.o" - ], - "test/buildtest_c_rsa-bin-buildtest_rsa.o" => [ - "test/buildtest_rsa.c" - ], - "test/buildtest_c_safestack" => [ - "test/buildtest_c_safestack-bin-buildtest_safestack.o" - ], - "test/buildtest_c_safestack-bin-buildtest_safestack.o" => [ - "test/buildtest_safestack.c" - ], - "test/buildtest_c_seed" => [ - "test/buildtest_c_seed-bin-buildtest_seed.o" - ], - "test/buildtest_c_seed-bin-buildtest_seed.o" => [ - "test/buildtest_seed.c" - ], - "test/buildtest_c_self_test" => [ - "test/buildtest_c_self_test-bin-buildtest_self_test.o" - ], - "test/buildtest_c_self_test-bin-buildtest_self_test.o" => [ - "test/buildtest_self_test.c" - ], - "test/buildtest_c_sha" => [ - "test/buildtest_c_sha-bin-buildtest_sha.o" - ], - "test/buildtest_c_sha-bin-buildtest_sha.o" => [ - "test/buildtest_sha.c" - ], - "test/buildtest_c_srp" => [ - "test/buildtest_c_srp-bin-buildtest_srp.o" - ], - "test/buildtest_c_srp-bin-buildtest_srp.o" => [ - "test/buildtest_srp.c" - ], - "test/buildtest_c_srtp" => [ - "test/buildtest_c_srtp-bin-buildtest_srtp.o" - ], - "test/buildtest_c_srtp-bin-buildtest_srtp.o" => [ - "test/buildtest_srtp.c" - ], - "test/buildtest_c_ssl" => [ - "test/buildtest_c_ssl-bin-buildtest_ssl.o" - ], - "test/buildtest_c_ssl-bin-buildtest_ssl.o" => [ - "test/buildtest_ssl.c" - ], - "test/buildtest_c_ssl2" => [ - "test/buildtest_c_ssl2-bin-buildtest_ssl2.o" - ], - "test/buildtest_c_ssl2-bin-buildtest_ssl2.o" => [ - "test/buildtest_ssl2.c" - ], - "test/buildtest_c_sslerr_legacy" => [ - "test/buildtest_c_sslerr_legacy-bin-buildtest_sslerr_legacy.o" - ], - "test/buildtest_c_sslerr_legacy-bin-buildtest_sslerr_legacy.o" => [ - "test/buildtest_sslerr_legacy.c" - ], - "test/buildtest_c_stack" => [ - "test/buildtest_c_stack-bin-buildtest_stack.o" - ], - "test/buildtest_c_stack-bin-buildtest_stack.o" => [ - "test/buildtest_stack.c" - ], - "test/buildtest_c_store" => [ - "test/buildtest_c_store-bin-buildtest_store.o" - ], - "test/buildtest_c_store-bin-buildtest_store.o" => [ - "test/buildtest_store.c" - ], - "test/buildtest_c_symhacks" => [ - "test/buildtest_c_symhacks-bin-buildtest_symhacks.o" - ], - "test/buildtest_c_symhacks-bin-buildtest_symhacks.o" => [ - "test/buildtest_symhacks.c" - ], - "test/buildtest_c_thread" => [ - "test/buildtest_c_thread-bin-buildtest_thread.o" - ], - "test/buildtest_c_thread-bin-buildtest_thread.o" => [ - "test/buildtest_thread.c" - ], - "test/buildtest_c_tls1" => [ - "test/buildtest_c_tls1-bin-buildtest_tls1.o" - ], - "test/buildtest_c_tls1-bin-buildtest_tls1.o" => [ - "test/buildtest_tls1.c" - ], - "test/buildtest_c_ts" => [ - "test/buildtest_c_ts-bin-buildtest_ts.o" - ], - "test/buildtest_c_ts-bin-buildtest_ts.o" => [ - "test/buildtest_ts.c" - ], - "test/buildtest_c_txt_db" => [ - "test/buildtest_c_txt_db-bin-buildtest_txt_db.o" - ], - "test/buildtest_c_txt_db-bin-buildtest_txt_db.o" => [ - "test/buildtest_txt_db.c" - ], - "test/buildtest_c_types" => [ - "test/buildtest_c_types-bin-buildtest_types.o" - ], - "test/buildtest_c_types-bin-buildtest_types.o" => [ - "test/buildtest_types.c" - ], - "test/buildtest_c_ui" => [ - "test/buildtest_c_ui-bin-buildtest_ui.o" - ], - "test/buildtest_c_ui-bin-buildtest_ui.o" => [ - "test/buildtest_ui.c" - ], - "test/buildtest_c_whrlpool" => [ - "test/buildtest_c_whrlpool-bin-buildtest_whrlpool.o" - ], - "test/buildtest_c_whrlpool-bin-buildtest_whrlpool.o" => [ - "test/buildtest_whrlpool.c" - ], - "test/buildtest_c_x509" => [ - "test/buildtest_c_x509-bin-buildtest_x509.o" - ], - "test/buildtest_c_x509-bin-buildtest_x509.o" => [ - "test/buildtest_x509.c" - ], - "test/buildtest_c_x509_acert" => [ - "test/buildtest_c_x509_acert-bin-buildtest_x509_acert.o" - ], - "test/buildtest_c_x509_acert-bin-buildtest_x509_acert.o" => [ - "test/buildtest_x509_acert.c" - ], - "test/buildtest_c_x509_vfy" => [ - "test/buildtest_c_x509_vfy-bin-buildtest_x509_vfy.o" - ], - "test/buildtest_c_x509_vfy-bin-buildtest_x509_vfy.o" => [ - "test/buildtest_x509_vfy.c" - ], - "test/buildtest_c_x509v3" => [ - "test/buildtest_c_x509v3-bin-buildtest_x509v3.o" - ], - "test/buildtest_c_x509v3-bin-buildtest_x509v3.o" => [ - "test/buildtest_x509v3.c" - ], - "test/byteorder_test" => [ - "test/byteorder_test-bin-byteorder_test.o" - ], - "test/byteorder_test-bin-byteorder_test.o" => [ - "test/byteorder_test.c" - ], - "test/ca_internals_test" => [ - "apps/ca_internals_test-bin-ca.o", - "apps/lib/ca_internals_test-bin-app_libctx.o", - "apps/lib/ca_internals_test-bin-app_provider.o", - "apps/lib/ca_internals_test-bin-app_rand.o", - "apps/lib/ca_internals_test-bin-app_x509.o", - "apps/lib/ca_internals_test-bin-apps.o", - "apps/lib/ca_internals_test-bin-apps_ui.o", - "apps/lib/ca_internals_test-bin-engine.o", - "apps/lib/ca_internals_test-bin-fmt.o", - "crypto/asn1/ca_internals_test-bin-a_time.o", - "crypto/ca_internals_test-bin-ctype.o", - "test/ca_internals_test-bin-ca_internals_test.o" - ], - "test/ca_internals_test-bin-ca_internals_test.o" => [ - "test/ca_internals_test.c" - ], - "test/casttest" => [ - "test/casttest-bin-casttest.o" - ], - "test/casttest-bin-casttest.o" => [ - "test/casttest.c" - ], - "test/chacha_internal_test" => [ - "test/chacha_internal_test-bin-chacha_internal_test.o" - ], - "test/chacha_internal_test-bin-chacha_internal_test.o" => [ - "test/chacha_internal_test.c" - ], - "test/cipher_overhead_test" => [ - "test/cipher_overhead_test-bin-cipher_overhead_test.o" - ], - "test/cipher_overhead_test-bin-cipher_overhead_test.o" => [ - "test/cipher_overhead_test.c" - ], - "test/cipherbytes_test" => [ - "test/cipherbytes_test-bin-cipherbytes_test.o" - ], - "test/cipherbytes_test-bin-cipherbytes_test.o" => [ - "test/cipherbytes_test.c" - ], - "test/cipherlist_test" => [ - "test/cipherlist_test-bin-cipherlist_test.o" - ], - "test/cipherlist_test-bin-cipherlist_test.o" => [ - "test/cipherlist_test.c" - ], - "test/ciphername_test" => [ - "test/ciphername_test-bin-ciphername_test.o" - ], - "test/ciphername_test-bin-ciphername_test.o" => [ - "test/ciphername_test.c" - ], - "test/clienthellotest" => [ - "test/clienthellotest-bin-clienthellotest.o" - ], - "test/clienthellotest-bin-clienthellotest.o" => [ - "test/clienthellotest.c" - ], - "test/cmactest" => [ - "test/cmactest-bin-cmactest.o" - ], - "test/cmactest-bin-cmactest.o" => [ - "test/cmactest.c" - ], - "test/cmp_asn_test" => [ - "test/cmp_asn_test-bin-cmp_asn_test.o", - "test/helpers/cmp_asn_test-bin-cmp_testlib.o" - ], - "test/cmp_asn_test-bin-cmp_asn_test.o" => [ - "test/cmp_asn_test.c" - ], - "test/cmp_client_test" => [ - "apps/lib/cmp_client_test-bin-cmp_mock_srv.o", - "test/cmp_client_test-bin-cmp_client_test.o", - "test/helpers/cmp_client_test-bin-cmp_testlib.o" - ], - "test/cmp_client_test-bin-cmp_client_test.o" => [ - "test/cmp_client_test.c" - ], - "test/cmp_ctx_test" => [ - "test/cmp_ctx_test-bin-cmp_ctx_test.o", - "test/helpers/cmp_ctx_test-bin-cmp_testlib.o" - ], - "test/cmp_ctx_test-bin-cmp_ctx_test.o" => [ - "test/cmp_ctx_test.c" - ], - "test/cmp_hdr_test" => [ - "test/cmp_hdr_test-bin-cmp_hdr_test.o", - "test/helpers/cmp_hdr_test-bin-cmp_testlib.o" - ], - "test/cmp_hdr_test-bin-cmp_hdr_test.o" => [ - "test/cmp_hdr_test.c" - ], - "test/cmp_msg_test" => [ - "test/cmp_msg_test-bin-cmp_msg_test.o", - "test/helpers/cmp_msg_test-bin-cmp_testlib.o" - ], - "test/cmp_msg_test-bin-cmp_msg_test.o" => [ - "test/cmp_msg_test.c" - ], - "test/cmp_protect_test" => [ - "test/cmp_protect_test-bin-cmp_protect_test.o", - "test/helpers/cmp_protect_test-bin-cmp_testlib.o" - ], - "test/cmp_protect_test-bin-cmp_protect_test.o" => [ - "test/cmp_protect_test.c" - ], - "test/cmp_server_test" => [ - "test/cmp_server_test-bin-cmp_server_test.o", - "test/helpers/cmp_server_test-bin-cmp_testlib.o" - ], - "test/cmp_server_test-bin-cmp_server_test.o" => [ - "test/cmp_server_test.c" - ], - "test/cmp_status_test" => [ - "test/cmp_status_test-bin-cmp_status_test.o", - "test/helpers/cmp_status_test-bin-cmp_testlib.o" - ], - "test/cmp_status_test-bin-cmp_status_test.o" => [ - "test/cmp_status_test.c" - ], - "test/cmp_vfy_test" => [ - "test/cmp_vfy_test-bin-cmp_vfy_test.o", - "test/helpers/cmp_vfy_test-bin-cmp_testlib.o" - ], - "test/cmp_vfy_test-bin-cmp_vfy_test.o" => [ - "test/cmp_vfy_test.c" - ], - "test/cmsapitest" => [ - "test/cmsapitest-bin-cmsapitest.o" - ], - "test/cmsapitest-bin-cmsapitest.o" => [ - "test/cmsapitest.c" - ], - "test/conf_include_test" => [ - "test/conf_include_test-bin-conf_include_test.o" - ], - "test/conf_include_test-bin-conf_include_test.o" => [ - "test/conf_include_test.c" - ], - "test/confdump" => [ - "test/confdump-bin-confdump.o" - ], - "test/confdump-bin-confdump.o" => [ - "test/confdump.c" - ], - "test/constant_time_test" => [ - "test/constant_time_test-bin-constant_time_test.o" - ], - "test/constant_time_test-bin-constant_time_test.o" => [ - "test/constant_time_test.c" - ], - "test/context_internal_test" => [ - "test/context_internal_test-bin-context_internal_test.o" - ], - "test/context_internal_test-bin-context_internal_test.o" => [ - "test/context_internal_test.c" - ], - "test/crltest" => [ - "test/crltest-bin-crltest.o" - ], - "test/crltest-bin-crltest.o" => [ - "test/crltest.c" - ], - "test/ct_test" => [ - "test/ct_test-bin-ct_test.o" - ], - "test/ct_test-bin-ct_test.o" => [ - "test/ct_test.c" - ], - "test/ctype_internal_test" => [ - "test/ctype_internal_test-bin-ctype_internal_test.o" - ], - "test/ctype_internal_test-bin-ctype_internal_test.o" => [ - "test/ctype_internal_test.c" - ], - "test/curve448_internal_test" => [ - "test/curve448_internal_test-bin-curve448_internal_test.o" - ], - "test/curve448_internal_test-bin-curve448_internal_test.o" => [ - "test/curve448_internal_test.c" - ], - "test/d2i_test" => [ - "test/d2i_test-bin-d2i_test.o" - ], - "test/d2i_test-bin-d2i_test.o" => [ - "test/d2i_test.c" - ], - "test/danetest" => [ - "test/danetest-bin-danetest.o" - ], - "test/danetest-bin-danetest.o" => [ - "test/danetest.c" - ], - "test/decoder_propq_test" => [ - "test/decoder_propq_test-bin-decoder_propq_test.o" - ], - "test/decoder_propq_test-bin-decoder_propq_test.o" => [ - "test/decoder_propq_test.c" - ], - "test/defltfips_test" => [ - "test/defltfips_test-bin-defltfips_test.o" - ], - "test/defltfips_test-bin-defltfips_test.o" => [ - "test/defltfips_test.c" - ], - "test/destest" => [ - "test/destest-bin-destest.o" - ], - "test/destest-bin-destest.o" => [ - "test/destest.c" - ], - "test/dhtest" => [ - "test/dhtest-bin-dhtest.o" - ], - "test/dhtest-bin-dhtest.o" => [ - "test/dhtest.c" - ], - "test/drbgtest" => [ - "test/drbgtest-bin-drbgtest.o" - ], - "test/drbgtest-bin-drbgtest.o" => [ - "test/drbgtest.c" - ], - "test/dsa_no_digest_size_test" => [ - "test/dsa_no_digest_size_test-bin-dsa_no_digest_size_test.o" - ], - "test/dsa_no_digest_size_test-bin-dsa_no_digest_size_test.o" => [ - "test/dsa_no_digest_size_test.c" - ], - "test/dsatest" => [ - "test/dsatest-bin-dsatest.o" - ], - "test/dsatest-bin-dsatest.o" => [ - "test/dsatest.c" - ], - "test/dtls_mtu_test" => [ - "test/dtls_mtu_test-bin-dtls_mtu_test.o", - "test/helpers/dtls_mtu_test-bin-ssltestlib.o" - ], - "test/dtls_mtu_test-bin-dtls_mtu_test.o" => [ - "test/dtls_mtu_test.c" - ], - "test/dtlstest" => [ - "test/dtlstest-bin-dtlstest.o", - "test/helpers/dtlstest-bin-ssltestlib.o" - ], - "test/dtlstest-bin-dtlstest.o" => [ - "test/dtlstest.c" - ], - "test/dtlsv1listentest" => [ - "test/dtlsv1listentest-bin-dtlsv1listentest.o" - ], - "test/dtlsv1listentest-bin-dtlsv1listentest.o" => [ - "test/dtlsv1listentest.c" - ], - "test/ec_internal_test" => [ - "test/ec_internal_test-bin-ec_internal_test.o" - ], - "test/ec_internal_test-bin-ec_internal_test.o" => [ - "test/ec_internal_test.c" - ], - "test/ecdsatest" => [ - "test/ecdsatest-bin-ecdsatest.o" - ], - "test/ecdsatest-bin-ecdsatest.o" => [ - "test/ecdsatest.c" - ], - "test/ecstresstest" => [ - "test/ecstresstest-bin-ecstresstest.o" - ], - "test/ecstresstest-bin-ecstresstest.o" => [ - "test/ecstresstest.c" - ], - "test/ectest" => [ - "test/ectest-bin-ectest.o" - ], - "test/ectest-bin-ectest.o" => [ - "test/ectest.c" - ], - "test/endecode_test" => [ - "providers/endecode_test-bin-legacyprov.o", - "test/endecode_test-bin-endecode_test.o", - "test/helpers/endecode_test-bin-predefined_dhparams.o" - ], - "test/endecode_test-bin-endecode_test.o" => [ - "test/endecode_test.c" - ], - "test/endecoder_legacy_test" => [ - "test/endecoder_legacy_test-bin-endecoder_legacy_test.o" - ], - "test/endecoder_legacy_test-bin-endecoder_legacy_test.o" => [ - "test/endecoder_legacy_test.c" - ], - "test/enginetest" => [ - "test/enginetest-bin-enginetest.o" - ], - "test/enginetest-bin-enginetest.o" => [ - "test/enginetest.c" - ], - "test/errtest" => [ - "test/errtest-bin-errtest.o" - ], - "test/errtest-bin-errtest.o" => [ - "test/errtest.c" - ], - "test/evp_byname_test" => [ - "test/evp_byname_test-bin-evp_byname_test.o" - ], - "test/evp_byname_test-bin-evp_byname_test.o" => [ - "test/evp_byname_test.c" - ], - "test/evp_extra_test" => [ - "providers/evp_extra_test-bin-legacyprov.o", - "test/evp_extra_test-bin-evp_extra_test.o", - "test/evp_extra_test-bin-fake_pipelineprov.o", - "test/evp_extra_test-bin-fake_rsaprov.o" - ], - "test/evp_extra_test-bin-evp_extra_test.o" => [ - "test/evp_extra_test.c" - ], - "test/evp_extra_test-bin-fake_pipelineprov.o" => [ - "test/fake_pipelineprov.c" - ], - "test/evp_extra_test-bin-fake_rsaprov.o" => [ - "test/fake_rsaprov.c" - ], - "test/evp_extra_test2" => [ - "test/evp_extra_test2-bin-evp_extra_test2.o", - "test/evp_extra_test2-bin-tls-provider.o" - ], - "test/evp_extra_test2-bin-evp_extra_test2.o" => [ - "test/evp_extra_test2.c" - ], - "test/evp_extra_test2-bin-tls-provider.o" => [ - "test/tls-provider.c" - ], - "test/evp_fetch_prov_test" => [ - "test/evp_fetch_prov_test-bin-evp_fetch_prov_test.o" - ], - "test/evp_fetch_prov_test-bin-evp_fetch_prov_test.o" => [ - "test/evp_fetch_prov_test.c" - ], - "test/evp_kdf_test" => [ - "test/evp_kdf_test-bin-evp_kdf_test.o" - ], - "test/evp_kdf_test-bin-evp_kdf_test.o" => [ - "test/evp_kdf_test.c" - ], - "test/evp_libctx_test" => [ - "test/evp_libctx_test-bin-evp_libctx_test.o" - ], - "test/evp_libctx_test-bin-evp_libctx_test.o" => [ - "test/evp_libctx_test.c" - ], - "test/evp_pkey_ctx_new_from_name" => [ - "test/evp_pkey_ctx_new_from_name-bin-evp_pkey_ctx_new_from_name.o" - ], - "test/evp_pkey_ctx_new_from_name-bin-evp_pkey_ctx_new_from_name.o" => [ - "test/evp_pkey_ctx_new_from_name.c" - ], - "test/evp_pkey_dhkem_test" => [ - "test/evp_pkey_dhkem_test-bin-evp_pkey_dhkem_test.o" - ], - "test/evp_pkey_dhkem_test-bin-evp_pkey_dhkem_test.o" => [ - "test/evp_pkey_dhkem_test.c" - ], - "test/evp_pkey_dparams_test" => [ - "test/evp_pkey_dparams_test-bin-evp_pkey_dparams_test.o" - ], - "test/evp_pkey_dparams_test-bin-evp_pkey_dparams_test.o" => [ - "test/evp_pkey_dparams_test.c" - ], - "test/evp_pkey_provided_test" => [ - "test/evp_pkey_provided_test-bin-evp_pkey_provided_test.o" - ], - "test/evp_pkey_provided_test-bin-evp_pkey_provided_test.o" => [ - "test/evp_pkey_provided_test.c" - ], - "test/evp_skey_test" => [ - "test/evp_skey_test-bin-evp_skey_test.o", - "test/evp_skey_test-bin-fake_cipherprov.o" - ], - "test/evp_skey_test-bin-evp_skey_test.o" => [ - "test/evp_skey_test.c" - ], - "test/evp_skey_test-bin-fake_cipherprov.o" => [ - "test/fake_cipherprov.c" - ], - "test/evp_test" => [ - "test/evp_test-bin-evp_test.o" - ], - "test/evp_test-bin-evp_test.o" => [ - "test/evp_test.c" - ], - "test/evp_xof_test" => [ - "test/evp_xof_test-bin-evp_xof_test.o" - ], - "test/evp_xof_test-bin-evp_xof_test.o" => [ - "test/evp_xof_test.c" - ], - "test/exdatatest" => [ - "test/exdatatest-bin-exdatatest.o" - ], - "test/exdatatest-bin-exdatatest.o" => [ - "test/exdatatest.c" - ], - "test/exptest" => [ - "test/exptest-bin-exptest.o" - ], - "test/exptest-bin-exptest.o" => [ - "test/exptest.c" - ], - "test/ext_internal_test" => [ - "test/ext_internal_test-bin-ext_internal_test.o" - ], - "test/ext_internal_test-bin-ext_internal_test.o" => [ - "test/ext_internal_test.c" - ], - "test/fatalerrtest" => [ - "test/fatalerrtest-bin-fatalerrtest.o", - "test/helpers/fatalerrtest-bin-ssltestlib.o" - ], - "test/fatalerrtest-bin-fatalerrtest.o" => [ - "test/fatalerrtest.c" - ], - "test/ffc_internal_test" => [ - "test/ffc_internal_test-bin-ffc_internal_test.o" - ], - "test/ffc_internal_test-bin-ffc_internal_test.o" => [ - "test/ffc_internal_test.c" - ], - "test/fips_version_test" => [ - "test/fips_version_test-bin-fips_version_test.o" - ], - "test/fips_version_test-bin-fips_version_test.o" => [ - "test/fips_version_test.c" - ], - "test/gmdifftest" => [ - "test/gmdifftest-bin-gmdifftest.o" - ], - "test/gmdifftest-bin-gmdifftest.o" => [ - "test/gmdifftest.c" - ], - "test/helpers/asynciotest-bin-ssltestlib.o" => [ - "test/helpers/ssltestlib.c" - ], - "test/helpers/cmp_asn_test-bin-cmp_testlib.o" => [ - "test/helpers/cmp_testlib.c" - ], - "test/helpers/cmp_client_test-bin-cmp_testlib.o" => [ - "test/helpers/cmp_testlib.c" - ], - "test/helpers/cmp_ctx_test-bin-cmp_testlib.o" => [ - "test/helpers/cmp_testlib.c" - ], - "test/helpers/cmp_hdr_test-bin-cmp_testlib.o" => [ - "test/helpers/cmp_testlib.c" - ], - "test/helpers/cmp_msg_test-bin-cmp_testlib.o" => [ - "test/helpers/cmp_testlib.c" - ], - "test/helpers/cmp_protect_test-bin-cmp_testlib.o" => [ - "test/helpers/cmp_testlib.c" - ], - "test/helpers/cmp_server_test-bin-cmp_testlib.o" => [ - "test/helpers/cmp_testlib.c" - ], - "test/helpers/cmp_status_test-bin-cmp_testlib.o" => [ - "test/helpers/cmp_testlib.c" - ], - "test/helpers/cmp_vfy_test-bin-cmp_testlib.o" => [ - "test/helpers/cmp_testlib.c" - ], - "test/helpers/dtls_mtu_test-bin-ssltestlib.o" => [ - "test/helpers/ssltestlib.c" - ], - "test/helpers/dtlstest-bin-ssltestlib.o" => [ - "test/helpers/ssltestlib.c" - ], - "test/helpers/endecode_test-bin-predefined_dhparams.o" => [ - "test/helpers/predefined_dhparams.c" - ], - "test/helpers/fatalerrtest-bin-ssltestlib.o" => [ - "test/helpers/ssltestlib.c" - ], - "test/helpers/json_test-bin-noisydgrambio.o" => [ - "test/helpers/noisydgrambio.c" - ], - "test/helpers/json_test-bin-pktsplitbio.o" => [ - "test/helpers/pktsplitbio.c" - ], - "test/helpers/json_test-bin-quictestlib.o" => [ - "test/helpers/quictestlib.c" - ], - "test/helpers/json_test-bin-ssltestlib.o" => [ - "test/helpers/ssltestlib.c" - ], - "test/helpers/pkcs12_api_test-bin-pkcs12.o" => [ - "test/helpers/pkcs12.c" - ], - "test/helpers/pkcs12_format_test-bin-pkcs12.o" => [ - "test/helpers/pkcs12.c" - ], - "test/helpers/quic_multistream_test-bin-noisydgrambio.o" => [ - "test/helpers/noisydgrambio.c" - ], - "test/helpers/quic_multistream_test-bin-pktsplitbio.o" => [ - "test/helpers/pktsplitbio.c" - ], - "test/helpers/quic_multistream_test-bin-quictestlib.o" => [ - "test/helpers/quictestlib.c" - ], - "test/helpers/quic_multistream_test-bin-ssltestlib.o" => [ - "test/helpers/ssltestlib.c" - ], - "test/helpers/quic_newcid_test-bin-noisydgrambio.o" => [ - "test/helpers/noisydgrambio.c" - ], - "test/helpers/quic_newcid_test-bin-pktsplitbio.o" => [ - "test/helpers/pktsplitbio.c" - ], - "test/helpers/quic_newcid_test-bin-quictestlib.o" => [ - "test/helpers/quictestlib.c" - ], - "test/helpers/quic_newcid_test-bin-ssltestlib.o" => [ - "test/helpers/ssltestlib.c" - ], - "test/helpers/quic_radix_test-bin-noisydgrambio.o" => [ - "test/helpers/noisydgrambio.c" - ], - "test/helpers/quic_radix_test-bin-pktsplitbio.o" => [ - "test/helpers/pktsplitbio.c" - ], - "test/helpers/quic_radix_test-bin-quictestlib.o" => [ - "test/helpers/quictestlib.c" - ], - "test/helpers/quic_radix_test-bin-ssltestlib.o" => [ - "test/helpers/ssltestlib.c" - ], - "test/helpers/quic_srt_gen_test-bin-noisydgrambio.o" => [ - "test/helpers/noisydgrambio.c" - ], - "test/helpers/quic_srt_gen_test-bin-pktsplitbio.o" => [ - "test/helpers/pktsplitbio.c" - ], - "test/helpers/quic_srt_gen_test-bin-quictestlib.o" => [ - "test/helpers/quictestlib.c" - ], - "test/helpers/quic_srt_gen_test-bin-ssltestlib.o" => [ - "test/helpers/ssltestlib.c" - ], - "test/helpers/quicapitest-bin-noisydgrambio.o" => [ - "test/helpers/noisydgrambio.c" - ], - "test/helpers/quicapitest-bin-pktsplitbio.o" => [ - "test/helpers/pktsplitbio.c" - ], - "test/helpers/quicapitest-bin-quictestlib.o" => [ - "test/helpers/quictestlib.c" - ], - "test/helpers/quicapitest-bin-ssltestlib.o" => [ - "test/helpers/ssltestlib.c" - ], - "test/helpers/quicfaultstest-bin-noisydgrambio.o" => [ - "test/helpers/noisydgrambio.c" - ], - "test/helpers/quicfaultstest-bin-pktsplitbio.o" => [ - "test/helpers/pktsplitbio.c" - ], - "test/helpers/quicfaultstest-bin-quictestlib.o" => [ - "test/helpers/quictestlib.c" - ], - "test/helpers/quicfaultstest-bin-ssltestlib.o" => [ - "test/helpers/ssltestlib.c" - ], - "test/helpers/recordlentest-bin-ssltestlib.o" => [ - "test/helpers/ssltestlib.c" - ], - "test/helpers/rpktest-bin-ssltestlib.o" => [ - "test/helpers/ssltestlib.c" - ], - "test/helpers/servername_test-bin-ssltestlib.o" => [ - "test/helpers/ssltestlib.c" - ], - "test/helpers/ssl_handshake_rtt_test-bin-ssltestlib.o" => [ - "test/helpers/ssltestlib.c" - ], - "test/helpers/ssl_old_test-bin-predefined_dhparams.o" => [ - "test/helpers/predefined_dhparams.c" - ], - "test/helpers/ssl_test-bin-handshake.o" => [ - "test/helpers/handshake.c" - ], - "test/helpers/ssl_test-bin-handshake_srp.o" => [ - "test/helpers/handshake_srp.c" - ], - "test/helpers/ssl_test-bin-ssl_test_ctx.o" => [ - "test/helpers/ssl_test_ctx.c" - ], - "test/helpers/ssl_test_ctx_test-bin-ssl_test_ctx.o" => [ - "test/helpers/ssl_test_ctx.c" - ], - "test/helpers/sslapitest-bin-ssltestlib.o" => [ - "test/helpers/ssltestlib.c" - ], - "test/helpers/sslbuffertest-bin-ssltestlib.o" => [ - "test/helpers/ssltestlib.c" - ], - "test/helpers/sslcorrupttest-bin-ssltestlib.o" => [ - "test/helpers/ssltestlib.c" - ], - "test/helpers/tls13ccstest-bin-ssltestlib.o" => [ - "test/helpers/ssltestlib.c" - ], - "test/helpers/tls13groupselection_test-bin-ssltestlib.o" => [ - "test/helpers/ssltestlib.c" - ], - "test/hexstr_test" => [ - "test/hexstr_test-bin-hexstr_test.o" - ], - "test/hexstr_test-bin-hexstr_test.o" => [ - "test/hexstr_test.c" - ], - "test/hmactest" => [ - "test/hmactest-bin-hmactest.o" - ], - "test/hmactest-bin-hmactest.o" => [ - "test/hmactest.c" - ], - "test/hpke_test" => [ - "test/hpke_test-bin-hpke_test.o" - ], - "test/hpke_test-bin-hpke_test.o" => [ - "test/hpke_test.c" - ], - "test/http_test" => [ - "test/http_test-bin-http_test.o" - ], - "test/http_test-bin-http_test.o" => [ - "test/http_test.c" - ], - "test/ideatest" => [ - "test/ideatest-bin-ideatest.o" - ], - "test/ideatest-bin-ideatest.o" => [ - "test/ideatest.c" - ], - "test/igetest" => [ - "test/igetest-bin-igetest.o" - ], - "test/igetest-bin-igetest.o" => [ - "test/igetest.c" - ], - "test/json_test" => [ - "test/helpers/json_test-bin-noisydgrambio.o", - "test/helpers/json_test-bin-pktsplitbio.o", - "test/helpers/json_test-bin-quictestlib.o", - "test/helpers/json_test-bin-ssltestlib.o", - "test/json_test-bin-json_test.o" - ], - "test/json_test-bin-json_test.o" => [ - "test/json_test.c" - ], - "test/keymgmt_internal_test" => [ - "test/keymgmt_internal_test-bin-keymgmt_internal_test.o" - ], - "test/keymgmt_internal_test-bin-keymgmt_internal_test.o" => [ - "test/keymgmt_internal_test.c" - ], - "test/lhash_test" => [ - "test/lhash_test-bin-lhash_test.o" - ], - "test/lhash_test-bin-lhash_test.o" => [ - "test/lhash_test.c" - ], - "test/libtestutil.a" => [ - "apps/lib/libtestutil-lib-opt.o", - "test/testutil/libtestutil-lib-apps_shims.o", - "test/testutil/libtestutil-lib-basic_output.o", - "test/testutil/libtestutil-lib-cb.o", - "test/testutil/libtestutil-lib-compare.o", - "test/testutil/libtestutil-lib-driver.o", - "test/testutil/libtestutil-lib-fake_random.o", - "test/testutil/libtestutil-lib-format_output.o", - "test/testutil/libtestutil-lib-helper.o", - "test/testutil/libtestutil-lib-load.o", - "test/testutil/libtestutil-lib-main.o", - "test/testutil/libtestutil-lib-options.o", - "test/testutil/libtestutil-lib-output.o", - "test/testutil/libtestutil-lib-provider.o", - "test/testutil/libtestutil-lib-random.o", - "test/testutil/libtestutil-lib-stanza.o", - "test/testutil/libtestutil-lib-test_cleanup.o", - "test/testutil/libtestutil-lib-test_options.o", - "test/testutil/libtestutil-lib-tests.o", - "test/testutil/libtestutil-lib-testutil_init.o" - ], - "test/list_test" => [ - "test/list_test-bin-list_test.o" - ], - "test/list_test-bin-list_test.o" => [ - "test/list_test.c" - ], - "test/localetest" => [ - "test/localetest-bin-localetest.o" - ], - "test/localetest-bin-localetest.o" => [ - "test/localetest.c" - ], - "test/mdc2test" => [ - "test/mdc2test-bin-mdc2test.o" - ], - "test/mdc2test-bin-mdc2test.o" => [ - "test/mdc2test.c" - ], - "test/membio_test" => [ - "test/membio_test-bin-membio_test.o" - ], - "test/membio_test-bin-membio_test.o" => [ - "test/membio_test.c" - ], - "test/memleaktest" => [ - "test/memleaktest-bin-memleaktest.o" - ], - "test/memleaktest-bin-memleaktest.o" => [ - "test/memleaktest.c" - ], - "test/ml_dsa_test" => [ - "test/ml_dsa_test-bin-ml_dsa_test.o" - ], - "test/ml_dsa_test-bin-ml_dsa_test.o" => [ - "test/ml_dsa_test.c" - ], - "test/ml_kem_evp_extra_test" => [ - "test/ml_kem_evp_extra_test-bin-ml_kem_evp_extra_test.o" - ], - "test/ml_kem_evp_extra_test-bin-ml_kem_evp_extra_test.o" => [ - "test/ml_kem_evp_extra_test.c" - ], - "test/ml_kem_internal_test" => [ - "test/ml_kem_internal_test-bin-ml_kem_internal_test.o" - ], - "test/ml_kem_internal_test-bin-ml_kem_internal_test.o" => [ - "test/ml_kem_internal_test.c" - ], - "test/modes_internal_test" => [ - "test/modes_internal_test-bin-modes_internal_test.o" - ], - "test/modes_internal_test-bin-modes_internal_test.o" => [ - "test/modes_internal_test.c" - ], - "test/moduleloadtest" => [ - "test/moduleloadtest-bin-moduleloadtest.o", - "test/moduleloadtest-bin-simpledynamic.o" - ], - "test/moduleloadtest-bin-moduleloadtest.o" => [ - "test/moduleloadtest.c" - ], - "test/moduleloadtest-bin-simpledynamic.o" => [ - "test/simpledynamic.c" - ], - "test/namemap_internal_test" => [ - "test/namemap_internal_test-bin-namemap_internal_test.o" - ], - "test/namemap_internal_test-bin-namemap_internal_test.o" => [ - "test/namemap_internal_test.c" - ], - "test/nodefltctxtest" => [ - "test/nodefltctxtest-bin-nodefltctxtest.o" - ], - "test/nodefltctxtest-bin-nodefltctxtest.o" => [ - "test/nodefltctxtest.c" - ], - "test/ocspapitest" => [ - "test/ocspapitest-bin-ocspapitest.o" - ], - "test/ocspapitest-bin-ocspapitest.o" => [ - "test/ocspapitest.c" - ], - "test/ossl_store_test" => [ - "test/ossl_store_test-bin-ossl_store_test.o" - ], - "test/ossl_store_test-bin-ossl_store_test.o" => [ - "test/ossl_store_test.c" - ], - "test/p_minimal" => [ - "test/p_minimal-dso-p_minimal.o", - "test/p_minimal.ld" - ], - "test/p_minimal-dso-p_minimal.o" => [ - "test/p_minimal.c" - ], - "test/p_test" => [ - "test/p_test-dso-p_test.o", - "test/p_test.ld" - ], - "test/p_test-dso-p_test.o" => [ - "test/p_test.c" - ], - "test/packettest" => [ - "crypto/packettest-bin-quic_vlint.o", - "test/packettest-bin-packettest.o" - ], - "test/packettest-bin-packettest.o" => [ - "test/packettest.c" - ], - "test/pairwise_fail_test" => [ - "test/pairwise_fail_test-bin-pairwise_fail_test.o" - ], - "test/pairwise_fail_test-bin-pairwise_fail_test.o" => [ - "test/pairwise_fail_test.c" - ], - "test/param_build_test" => [ - "test/param_build_test-bin-param_build_test.o" - ], - "test/param_build_test-bin-param_build_test.o" => [ - "test/param_build_test.c" - ], - "test/params_api_test" => [ - "test/params_api_test-bin-params_api_test.o" - ], - "test/params_api_test-bin-params_api_test.o" => [ - "test/params_api_test.c" - ], - "test/params_conversion_test" => [ - "test/params_conversion_test-bin-params_conversion_test.o" - ], - "test/params_conversion_test-bin-params_conversion_test.o" => [ - "test/params_conversion_test.c" - ], - "test/params_test" => [ - "test/params_test-bin-params_test.o" - ], - "test/params_test-bin-params_test.o" => [ - "test/params_test.c" - ], - "test/pbelutest" => [ - "test/pbelutest-bin-pbelutest.o" - ], - "test/pbelutest-bin-pbelutest.o" => [ - "test/pbelutest.c" - ], - "test/pbetest" => [ - "test/pbetest-bin-pbetest.o" - ], - "test/pbetest-bin-pbetest.o" => [ - "test/pbetest.c" - ], - "test/pem_read_depr_test" => [ - "test/pem_read_depr_test-bin-pem_read_depr_test.o" - ], - "test/pem_read_depr_test-bin-pem_read_depr_test.o" => [ - "test/pem_read_depr_test.c" - ], - "test/pemtest" => [ - "test/pemtest-bin-pemtest.o" - ], - "test/pemtest-bin-pemtest.o" => [ - "test/pemtest.c" - ], - "test/pkcs12_api_test" => [ - "test/helpers/pkcs12_api_test-bin-pkcs12.o", - "test/pkcs12_api_test-bin-pkcs12_api_test.o" - ], - "test/pkcs12_api_test-bin-pkcs12_api_test.o" => [ - "test/pkcs12_api_test.c" - ], - "test/pkcs12_format_test" => [ - "test/helpers/pkcs12_format_test-bin-pkcs12.o", - "test/pkcs12_format_test-bin-pkcs12_format_test.o" - ], - "test/pkcs12_format_test-bin-pkcs12_format_test.o" => [ - "test/pkcs12_format_test.c" - ], - "test/pkcs7_test" => [ - "test/pkcs7_test-bin-pkcs7_test.o" - ], - "test/pkcs7_test-bin-pkcs7_test.o" => [ - "test/pkcs7_test.c" - ], - "test/pkey_meth_kdf_test" => [ - "test/pkey_meth_kdf_test-bin-pkey_meth_kdf_test.o" - ], - "test/pkey_meth_kdf_test-bin-pkey_meth_kdf_test.o" => [ - "test/pkey_meth_kdf_test.c" - ], - "test/pkey_meth_test" => [ - "test/pkey_meth_test-bin-pkey_meth_test.o" - ], - "test/pkey_meth_test-bin-pkey_meth_test.o" => [ - "test/pkey_meth_test.c" - ], - "test/poly1305_internal_test" => [ - "test/poly1305_internal_test-bin-poly1305_internal_test.o" - ], - "test/poly1305_internal_test-bin-poly1305_internal_test.o" => [ - "test/poly1305_internal_test.c" - ], - "test/priority_queue_test" => [ - "test/priority_queue_test-bin-priority_queue_test.o" - ], - "test/priority_queue_test-bin-priority_queue_test.o" => [ - "test/priority_queue_test.c" - ], - "test/property_test" => [ - "test/property_test-bin-property_test.o" - ], - "test/property_test-bin-property_test.o" => [ - "test/property_test.c" - ], - "test/prov_config_test" => [ - "test/prov_config_test-bin-prov_config_test.o" - ], - "test/prov_config_test-bin-prov_config_test.o" => [ - "test/prov_config_test.c" - ], - "test/provfetchtest" => [ - "test/provfetchtest-bin-provfetchtest.o" - ], - "test/provfetchtest-bin-provfetchtest.o" => [ - "test/provfetchtest.c" - ], - "test/provider_default_search_path_test" => [ - "test/provider_default_search_path_test-bin-provider_default_search_path_test.o" - ], - "test/provider_default_search_path_test-bin-provider_default_search_path_test.o" => [ - "test/provider_default_search_path_test.c" - ], - "test/provider_fallback_test" => [ - "test/provider_fallback_test-bin-provider_fallback_test.o" - ], - "test/provider_fallback_test-bin-provider_fallback_test.o" => [ - "test/provider_fallback_test.c" - ], - "test/provider_internal_test" => [ - "test/provider_internal_test-bin-p_test.o", - "test/provider_internal_test-bin-provider_internal_test.o" - ], - "test/provider_internal_test-bin-p_test.o" => [ - "test/p_test.c" - ], - "test/provider_internal_test-bin-provider_internal_test.o" => [ - "test/provider_internal_test.c" - ], - "test/provider_pkey_test" => [ - "test/provider_pkey_test-bin-fake_rsaprov.o", - "test/provider_pkey_test-bin-provider_pkey_test.o" - ], - "test/provider_pkey_test-bin-fake_rsaprov.o" => [ - "test/fake_rsaprov.c" - ], - "test/provider_pkey_test-bin-provider_pkey_test.o" => [ - "test/provider_pkey_test.c" - ], - "test/provider_status_test" => [ - "test/provider_status_test-bin-provider_status_test.o" - ], - "test/provider_status_test-bin-provider_status_test.o" => [ - "test/provider_status_test.c" - ], - "test/provider_test" => [ - "test/provider_test-bin-p_test.o", - "test/provider_test-bin-provider_test.o" - ], - "test/provider_test-bin-p_test.o" => [ - "test/p_test.c" - ], - "test/provider_test-bin-provider_test.o" => [ - "test/provider_test.c" - ], - "test/punycode_test" => [ - "test/punycode_test-bin-punycode_test.o" - ], - "test/punycode_test-bin-punycode_test.o" => [ - "test/punycode_test.c" - ], - "test/quic_ackm_test" => [ - "test/quic_ackm_test-bin-cc_dummy.o", - "test/quic_ackm_test-bin-quic_ackm_test.o" - ], - "test/quic_ackm_test-bin-cc_dummy.o" => [ - "test/cc_dummy.c" - ], - "test/quic_ackm_test-bin-quic_ackm_test.o" => [ - "test/quic_ackm_test.c" - ], - "test/quic_cc_test" => [ - "test/quic_cc_test-bin-quic_cc_test.o" - ], - "test/quic_cc_test-bin-quic_cc_test.o" => [ - "test/quic_cc_test.c" - ], - "test/quic_cfq_test" => [ - "test/quic_cfq_test-bin-quic_cfq_test.o" - ], - "test/quic_cfq_test-bin-quic_cfq_test.o" => [ - "test/quic_cfq_test.c" - ], - "test/quic_client_test" => [ - "test/quic_client_test-bin-quic_client_test.o" - ], - "test/quic_client_test-bin-quic_client_test.o" => [ - "test/quic_client_test.c" - ], - "test/quic_fc_test" => [ - "test/quic_fc_test-bin-quic_fc_test.o" - ], - "test/quic_fc_test-bin-quic_fc_test.o" => [ - "test/quic_fc_test.c" - ], - "test/quic_fifd_test" => [ - "test/quic_fifd_test-bin-cc_dummy.o", - "test/quic_fifd_test-bin-quic_fifd_test.o" - ], - "test/quic_fifd_test-bin-cc_dummy.o" => [ - "test/cc_dummy.c" - ], - "test/quic_fifd_test-bin-quic_fifd_test.o" => [ - "test/quic_fifd_test.c" - ], - "test/quic_lcidm_test" => [ - "test/quic_lcidm_test-bin-quic_lcidm_test.o" - ], - "test/quic_lcidm_test-bin-quic_lcidm_test.o" => [ - "test/quic_lcidm_test.c" - ], - "test/quic_multistream_test" => [ - "test/helpers/quic_multistream_test-bin-noisydgrambio.o", - "test/helpers/quic_multistream_test-bin-pktsplitbio.o", - "test/helpers/quic_multistream_test-bin-quictestlib.o", - "test/helpers/quic_multistream_test-bin-ssltestlib.o", - "test/quic_multistream_test-bin-quic_multistream_test.o" - ], - "test/quic_multistream_test-bin-quic_multistream_test.o" => [ - "test/quic_multistream_test.c" - ], - "test/quic_newcid_test" => [ - "test/helpers/quic_newcid_test-bin-noisydgrambio.o", - "test/helpers/quic_newcid_test-bin-pktsplitbio.o", - "test/helpers/quic_newcid_test-bin-quictestlib.o", - "test/helpers/quic_newcid_test-bin-ssltestlib.o", - "test/quic_newcid_test-bin-quic_newcid_test.o" - ], - "test/quic_newcid_test-bin-quic_newcid_test.o" => [ - "test/quic_newcid_test.c" - ], - "test/quic_qlog_test" => [ - "test/quic_qlog_test-bin-quic_qlog_test.o" - ], - "test/quic_qlog_test-bin-quic_qlog_test.o" => [ - "test/quic_qlog_test.c" - ], - "test/quic_radix_test" => [ - "test/helpers/quic_radix_test-bin-noisydgrambio.o", - "test/helpers/quic_radix_test-bin-pktsplitbio.o", - "test/helpers/quic_radix_test-bin-quictestlib.o", - "test/helpers/quic_radix_test-bin-ssltestlib.o", - "test/radix/quic_radix_test-bin-quic_radix.o" - ], - "test/quic_rcidm_test" => [ - "test/quic_rcidm_test-bin-quic_rcidm_test.o" - ], - "test/quic_rcidm_test-bin-quic_rcidm_test.o" => [ - "test/quic_rcidm_test.c" - ], - "test/quic_record_test" => [ - "test/quic_record_test-bin-quic_record_test.o" - ], - "test/quic_record_test-bin-quic_record_test.o" => [ - "test/quic_record_test.c" - ], - "test/quic_srt_gen_test" => [ - "test/helpers/quic_srt_gen_test-bin-noisydgrambio.o", - "test/helpers/quic_srt_gen_test-bin-pktsplitbio.o", - "test/helpers/quic_srt_gen_test-bin-quictestlib.o", - "test/helpers/quic_srt_gen_test-bin-ssltestlib.o", - "test/quic_srt_gen_test-bin-quic_srt_gen_test.o" - ], - "test/quic_srt_gen_test-bin-quic_srt_gen_test.o" => [ - "test/quic_srt_gen_test.c" - ], - "test/quic_srtm_test" => [ - "test/quic_srtm_test-bin-quic_srtm_test.o" - ], - "test/quic_srtm_test-bin-quic_srtm_test.o" => [ - "test/quic_srtm_test.c" - ], - "test/quic_stream_test" => [ - "test/quic_stream_test-bin-quic_stream_test.o" - ], - "test/quic_stream_test-bin-quic_stream_test.o" => [ - "test/quic_stream_test.c" - ], - "test/quic_tserver_test" => [ - "test/quic_tserver_test-bin-quic_tserver_test.o" - ], - "test/quic_tserver_test-bin-quic_tserver_test.o" => [ - "test/quic_tserver_test.c" - ], - "test/quic_txp_test" => [ - "test/quic_txp_test-bin-cc_dummy.o", - "test/quic_txp_test-bin-quic_txp_test.o" - ], - "test/quic_txp_test-bin-cc_dummy.o" => [ - "test/cc_dummy.c" - ], - "test/quic_txp_test-bin-quic_txp_test.o" => [ - "test/quic_txp_test.c" - ], - "test/quic_txpim_test" => [ - "test/quic_txpim_test-bin-quic_txpim_test.o" - ], - "test/quic_txpim_test-bin-quic_txpim_test.o" => [ - "test/quic_txpim_test.c" - ], - "test/quic_wire_test" => [ - "test/quic_wire_test-bin-quic_wire_test.o" - ], - "test/quic_wire_test-bin-quic_wire_test.o" => [ - "test/quic_wire_test.c" - ], - "test/quicapitest" => [ - "test/helpers/quicapitest-bin-noisydgrambio.o", - "test/helpers/quicapitest-bin-pktsplitbio.o", - "test/helpers/quicapitest-bin-quictestlib.o", - "test/helpers/quicapitest-bin-ssltestlib.o", - "test/quicapitest-bin-quicapitest.o" - ], - "test/quicapitest-bin-quicapitest.o" => [ - "test/quicapitest.c" - ], - "test/quicfaultstest" => [ - "test/helpers/quicfaultstest-bin-noisydgrambio.o", - "test/helpers/quicfaultstest-bin-pktsplitbio.o", - "test/helpers/quicfaultstest-bin-quictestlib.o", - "test/helpers/quicfaultstest-bin-ssltestlib.o", - "test/quicfaultstest-bin-quicfaultstest.o" - ], - "test/quicfaultstest-bin-quicfaultstest.o" => [ - "test/quicfaultstest.c" - ], - "test/radix/quic_radix_test-bin-quic_radix.o" => [ - "test/radix/quic_radix.c" - ], - "test/rand_status_test" => [ - "test/rand_status_test-bin-rand_status_test.o" - ], - "test/rand_status_test-bin-rand_status_test.o" => [ - "test/rand_status_test.c" - ], - "test/rand_test" => [ - "test/rand_test-bin-rand_test.o" - ], - "test/rand_test-bin-rand_test.o" => [ - "test/rand_test.c" - ], - "test/rc2test" => [ - "test/rc2test-bin-rc2test.o" - ], - "test/rc2test-bin-rc2test.o" => [ - "test/rc2test.c" - ], - "test/rc4test" => [ - "test/rc4test-bin-rc4test.o" - ], - "test/rc4test-bin-rc4test.o" => [ - "test/rc4test.c" - ], - "test/rc5test" => [ - "test/rc5test-bin-rc5test.o" - ], - "test/rc5test-bin-rc5test.o" => [ - "test/rc5test.c" - ], - "test/rdcpu_sanitytest" => [ - "test/rdcpu_sanitytest-bin-rdcpu_sanitytest.o" - ], - "test/rdcpu_sanitytest-bin-rdcpu_sanitytest.o" => [ - "test/rdcpu_sanitytest.c" - ], - "test/recordlentest" => [ - "test/helpers/recordlentest-bin-ssltestlib.o", - "test/recordlentest-bin-recordlentest.o" - ], - "test/recordlentest-bin-recordlentest.o" => [ - "test/recordlentest.c" - ], - "test/rpktest" => [ - "test/helpers/rpktest-bin-ssltestlib.o", - "test/rpktest-bin-rpktest.o" - ], - "test/rpktest-bin-rpktest.o" => [ - "test/rpktest.c" - ], - "test/rsa_complex" => [ - "test/rsa_complex-bin-rsa_complex.o" - ], - "test/rsa_complex-bin-rsa_complex.o" => [ - "test/rsa_complex.c" - ], - "test/rsa_mp_test" => [ - "test/rsa_mp_test-bin-rsa_mp_test.o" - ], - "test/rsa_mp_test-bin-rsa_mp_test.o" => [ - "test/rsa_mp_test.c" - ], - "test/rsa_sp800_56b_test" => [ - "test/rsa_sp800_56b_test-bin-rsa_sp800_56b_test.o" - ], - "test/rsa_sp800_56b_test-bin-rsa_sp800_56b_test.o" => [ - "test/rsa_sp800_56b_test.c" - ], - "test/rsa_test" => [ - "test/rsa_test-bin-rsa_test.o" - ], - "test/rsa_test-bin-rsa_test.o" => [ - "test/rsa_test.c" - ], - "test/rsa_x931_test" => [ - "test/rsa_x931_test-bin-rsa_x931_test.o" - ], - "test/rsa_x931_test-bin-rsa_x931_test.o" => [ - "test/rsa_x931_test.c" - ], - "test/safe_math_test" => [ - "test/safe_math_test-bin-safe_math_test.o" - ], - "test/safe_math_test-bin-safe_math_test.o" => [ - "test/safe_math_test.c" - ], - "test/sanitytest" => [ - "test/sanitytest-bin-sanitytest.o" - ], - "test/sanitytest-bin-sanitytest.o" => [ - "test/sanitytest.c" - ], - "test/secmemtest" => [ - "test/secmemtest-bin-secmemtest.o" - ], - "test/secmemtest-bin-secmemtest.o" => [ - "test/secmemtest.c" - ], - "test/servername_test" => [ - "test/helpers/servername_test-bin-ssltestlib.o", - "test/servername_test-bin-servername_test.o" - ], - "test/servername_test-bin-servername_test.o" => [ - "test/servername_test.c" - ], - "test/sha_test" => [ - "test/sha_test-bin-sha_test.o" - ], - "test/sha_test-bin-sha_test.o" => [ - "test/sha_test.c" - ], - "test/shlibloadtest" => [ - "test/shlibloadtest-bin-shlibloadtest.o", - "test/shlibloadtest-bin-simpledynamic.o" - ], - "test/shlibloadtest-bin-shlibloadtest.o" => [ - "test/shlibloadtest.c" - ], - "test/shlibloadtest-bin-simpledynamic.o" => [ - "test/simpledynamic.c" - ], - "test/siphash_internal_test" => [ - "test/siphash_internal_test-bin-siphash_internal_test.o" - ], - "test/siphash_internal_test-bin-siphash_internal_test.o" => [ - "test/siphash_internal_test.c" - ], - "test/slh_dsa_test" => [ - "test/slh_dsa_test-bin-slh_dsa_test.o" - ], - "test/slh_dsa_test-bin-slh_dsa_test.o" => [ - "test/slh_dsa_test.c" - ], - "test/sparse_array_test" => [ - "test/sparse_array_test-bin-sparse_array_test.o" - ], - "test/sparse_array_test-bin-sparse_array_test.o" => [ - "test/sparse_array_test.c" - ], - "test/srptest" => [ - "test/srptest-bin-srptest.o" - ], - "test/srptest-bin-srptest.o" => [ - "test/srptest.c" - ], - "test/ssl_cert_table_internal_test" => [ - "test/ssl_cert_table_internal_test-bin-ssl_cert_table_internal_test.o" - ], - "test/ssl_cert_table_internal_test-bin-ssl_cert_table_internal_test.o" => [ - "test/ssl_cert_table_internal_test.c" - ], - "test/ssl_ctx_test" => [ - "test/ssl_ctx_test-bin-ssl_ctx_test.o" - ], - "test/ssl_ctx_test-bin-ssl_ctx_test.o" => [ - "test/ssl_ctx_test.c" - ], - "test/ssl_handshake_rtt_test" => [ - "test/helpers/ssl_handshake_rtt_test-bin-ssltestlib.o", - "test/ssl_handshake_rtt_test-bin-ssl_handshake_rtt_test.o" - ], - "test/ssl_handshake_rtt_test-bin-ssl_handshake_rtt_test.o" => [ - "test/ssl_handshake_rtt_test.c" - ], - "test/ssl_old_test" => [ - "test/helpers/ssl_old_test-bin-predefined_dhparams.o", - "test/ssl_old_test-bin-ssl_old_test.o" - ], - "test/ssl_old_test-bin-ssl_old_test.o" => [ - "test/ssl_old_test.c" - ], - "test/ssl_test" => [ - "test/helpers/ssl_test-bin-handshake.o", - "test/helpers/ssl_test-bin-handshake_srp.o", - "test/helpers/ssl_test-bin-ssl_test_ctx.o", - "test/ssl_test-bin-ssl_test.o" - ], - "test/ssl_test-bin-ssl_test.o" => [ - "test/ssl_test.c" - ], - "test/ssl_test_ctx_test" => [ - "test/helpers/ssl_test_ctx_test-bin-ssl_test_ctx.o", - "test/ssl_test_ctx_test-bin-ssl_test_ctx_test.o" - ], - "test/ssl_test_ctx_test-bin-ssl_test_ctx_test.o" => [ - "test/ssl_test_ctx_test.c" - ], - "test/sslapitest" => [ - "test/helpers/sslapitest-bin-ssltestlib.o", - "test/sslapitest-bin-filterprov.o", - "test/sslapitest-bin-sslapitest.o", - "test/sslapitest-bin-tls-provider.o" - ], - "test/sslapitest-bin-filterprov.o" => [ - "test/filterprov.c" - ], - "test/sslapitest-bin-sslapitest.o" => [ - "test/sslapitest.c" - ], - "test/sslapitest-bin-tls-provider.o" => [ - "test/tls-provider.c" - ], - "test/sslbuffertest" => [ - "test/helpers/sslbuffertest-bin-ssltestlib.o", - "test/sslbuffertest-bin-sslbuffertest.o" - ], - "test/sslbuffertest-bin-sslbuffertest.o" => [ - "test/sslbuffertest.c" - ], - "test/sslcorrupttest" => [ - "test/helpers/sslcorrupttest-bin-ssltestlib.o", - "test/sslcorrupttest-bin-sslcorrupttest.o" - ], - "test/sslcorrupttest-bin-sslcorrupttest.o" => [ - "test/sslcorrupttest.c" - ], - "test/stack_test" => [ - "test/stack_test-bin-stack_test.o" - ], - "test/stack_test-bin-stack_test.o" => [ - "test/stack_test.c" - ], - "test/strtoultest" => [ - "test/strtoultest-bin-strtoultest.o" - ], - "test/strtoultest-bin-strtoultest.o" => [ - "test/strtoultest.c" - ], - "test/sysdefaulttest" => [ - "test/sysdefaulttest-bin-sysdefaulttest.o" - ], - "test/sysdefaulttest-bin-sysdefaulttest.o" => [ - "test/sysdefaulttest.c" - ], - "test/test_test" => [ - "test/test_test-bin-test_test.o" - ], - "test/test_test-bin-test_test.o" => [ - "test/test_test.c" - ], - "test/testutil/libtestutil-lib-apps_shims.o" => [ - "test/testutil/apps_shims.c" - ], - "test/testutil/libtestutil-lib-basic_output.o" => [ - "test/testutil/basic_output.c" - ], - "test/testutil/libtestutil-lib-cb.o" => [ - "test/testutil/cb.c" - ], - "test/testutil/libtestutil-lib-compare.o" => [ - "test/testutil/compare.c" - ], - "test/testutil/libtestutil-lib-driver.o" => [ - "test/testutil/driver.c" - ], - "test/testutil/libtestutil-lib-fake_random.o" => [ - "test/testutil/fake_random.c" - ], - "test/testutil/libtestutil-lib-format_output.o" => [ - "test/testutil/format_output.c" - ], - "test/testutil/libtestutil-lib-helper.o" => [ - "test/testutil/helper.c" - ], - "test/testutil/libtestutil-lib-load.o" => [ - "test/testutil/load.c" - ], - "test/testutil/libtestutil-lib-main.o" => [ - "test/testutil/main.c" - ], - "test/testutil/libtestutil-lib-options.o" => [ - "test/testutil/options.c" - ], - "test/testutil/libtestutil-lib-output.o" => [ - "test/testutil/output.c" - ], - "test/testutil/libtestutil-lib-provider.o" => [ - "test/testutil/provider.c" - ], - "test/testutil/libtestutil-lib-random.o" => [ - "test/testutil/random.c" - ], - "test/testutil/libtestutil-lib-stanza.o" => [ - "test/testutil/stanza.c" - ], - "test/testutil/libtestutil-lib-test_cleanup.o" => [ - "test/testutil/test_cleanup.c" - ], - "test/testutil/libtestutil-lib-test_options.o" => [ - "test/testutil/test_options.c" - ], - "test/testutil/libtestutil-lib-tests.o" => [ - "test/testutil/tests.c" - ], - "test/testutil/libtestutil-lib-testutil_init.o" => [ - "test/testutil/testutil_init.c" - ], - "test/threadpool_test" => [ - "test/threadpool_test-bin-threadpool_test.o" - ], - "test/threadpool_test-bin-threadpool_test.o" => [ - "test/threadpool_test.c" - ], - "test/threadstest" => [ - "test/threadstest-bin-threadstest.o" - ], - "test/threadstest-bin-threadstest.o" => [ - "test/threadstest.c" - ], - "test/threadstest_fips" => [ - "test/threadstest_fips-bin-threadstest_fips.o" - ], - "test/threadstest_fips-bin-threadstest_fips.o" => [ - "test/threadstest_fips.c" - ], - "test/time_offset_test" => [ - "test/time_offset_test-bin-time_offset_test.o" - ], - "test/time_offset_test-bin-time_offset_test.o" => [ - "test/time_offset_test.c" - ], - "test/time_test" => [ - "test/time_test-bin-time_test.o" - ], - "test/time_test-bin-time_test.o" => [ - "test/time_test.c" - ], - "test/timing_load_creds" => [ - "test/timing_load_creds-bin-timing_load_creds.o" - ], - "test/timing_load_creds-bin-timing_load_creds.o" => [ - "test/timing_load_creds.c" - ], - "test/tls13ccstest" => [ - "test/helpers/tls13ccstest-bin-ssltestlib.o", - "test/tls13ccstest-bin-tls13ccstest.o" - ], - "test/tls13ccstest-bin-tls13ccstest.o" => [ - "test/tls13ccstest.c" - ], - "test/tls13encryptiontest" => [ - "test/tls13encryptiontest-bin-tls13encryptiontest.o" - ], - "test/tls13encryptiontest-bin-tls13encryptiontest.o" => [ - "test/tls13encryptiontest.c" - ], - "test/tls13groupselection_test" => [ - "test/helpers/tls13groupselection_test-bin-ssltestlib.o", - "test/tls13groupselection_test-bin-tls13groupselection_test.o" - ], - "test/tls13groupselection_test-bin-tls13groupselection_test.o" => [ - "test/tls13groupselection_test.c" - ], - "test/tls13secretstest" => [ - "crypto/tls13secretstest-bin-packet.o", - "crypto/tls13secretstest-bin-quic_vlint.o", - "ssl/tls13secretstest-bin-tls13_enc.o", - "test/tls13secretstest-bin-tls13secretstest.o" - ], - "test/tls13secretstest-bin-tls13secretstest.o" => [ - "test/tls13secretstest.c" - ], - "test/trace_api_test" => [ - "test/trace_api_test-bin-trace_api_test.o" - ], - "test/trace_api_test-bin-trace_api_test.o" => [ - "test/trace_api_test.c" - ], - "test/uitest" => [ - "apps/lib/uitest-bin-apps_ui.o", - "test/uitest-bin-uitest.o" - ], - "test/uitest-bin-uitest.o" => [ - "test/uitest.c" - ], - "test/upcallstest" => [ - "test/upcallstest-bin-upcallstest.o" - ], - "test/upcallstest-bin-upcallstest.o" => [ - "test/upcallstest.c" - ], - "test/user_property_test" => [ - "test/user_property_test-bin-user_property_test.o" - ], - "test/user_property_test-bin-user_property_test.o" => [ - "test/user_property_test.c" - ], - "test/v3ext" => [ - "test/v3ext-bin-v3ext.o" - ], - "test/v3ext-bin-v3ext.o" => [ - "test/v3ext.c" - ], - "test/v3nametest" => [ - "test/v3nametest-bin-v3nametest.o" - ], - "test/v3nametest-bin-v3nametest.o" => [ - "test/v3nametest.c" - ], - "test/verify_extra_test" => [ - "test/verify_extra_test-bin-verify_extra_test.o" - ], - "test/verify_extra_test-bin-verify_extra_test.o" => [ - "test/verify_extra_test.c" - ], - "test/versions" => [ - "test/versions-bin-versions.o" - ], - "test/versions-bin-versions.o" => [ - "test/versions.c" - ], - "test/wpackettest" => [ - "test/wpackettest-bin-wpackettest.o" - ], - "test/wpackettest-bin-wpackettest.o" => [ - "test/wpackettest.c" - ], - "test/x509_acert_test" => [ - "test/x509_acert_test-bin-x509_acert_test.o" - ], - "test/x509_acert_test-bin-x509_acert_test.o" => [ - "test/x509_acert_test.c" - ], - "test/x509_check_cert_pkey_test" => [ - "test/x509_check_cert_pkey_test-bin-x509_check_cert_pkey_test.o" - ], - "test/x509_check_cert_pkey_test-bin-x509_check_cert_pkey_test.o" => [ - "test/x509_check_cert_pkey_test.c" - ], - "test/x509_dup_cert_test" => [ - "test/x509_dup_cert_test-bin-x509_dup_cert_test.o" - ], - "test/x509_dup_cert_test-bin-x509_dup_cert_test.o" => [ - "test/x509_dup_cert_test.c" - ], - "test/x509_internal_test" => [ - "test/x509_internal_test-bin-x509_internal_test.o" - ], - "test/x509_internal_test-bin-x509_internal_test.o" => [ - "test/x509_internal_test.c" - ], - "test/x509_load_cert_file_test" => [ - "test/x509_load_cert_file_test-bin-x509_load_cert_file_test.o" - ], - "test/x509_load_cert_file_test-bin-x509_load_cert_file_test.o" => [ - "test/x509_load_cert_file_test.c" - ], - "test/x509_req_test" => [ - "test/x509_req_test-bin-x509_req_test.o" - ], - "test/x509_req_test-bin-x509_req_test.o" => [ - "test/x509_req_test.c" - ], - "test/x509_test" => [ - "test/x509_test-bin-x509_test.o" - ], - "test/x509_test-bin-x509_test.o" => [ - "test/x509_test.c" - ], - "test/x509_time_test" => [ - "test/x509_time_test-bin-x509_time_test.o" - ], - "test/x509_time_test-bin-x509_time_test.o" => [ - "test/x509_time_test.c" - ], - "test/x509aux" => [ - "test/x509aux-bin-x509aux.o" - ], - "test/x509aux-bin-x509aux.o" => [ - "test/x509aux.c" - ], - "tools/c_rehash" => [ - "tools/c_rehash.in" - ], - "util/shlib_wrap.sh" => [ - "util/shlib_wrap.sh.in" - ], - "util/wrap.pl" => [ - "util/wrap.pl.in" - ] - }, - "targets" => [] -); - -# Unexported, only used by OpenSSL::Test::Utils::available_protocols() -our %available_protocols = ( - tls => [ - "ssl3", - "tls1", - "tls1_1", - "tls1_2", - "tls1_3" -], - dtls => [ - "dtls1", - "dtls1_2" -], -); - -# The following data is only used when this files is use as a script -my @makevars = ( - "AR", - "ARFLAGS", - "AS", - "ASFLAGS", - "CC", - "CFLAGS", - "CPP", - "CPPDEFINES", - "CPPFLAGS", - "CPPINCLUDES", - "CROSS_COMPILE", - "CXX", - "CXXFLAGS", - "HASHBANGPERL", - "LD", - "LDFLAGS", - "LDLIBS", - "MT", - "MTFLAGS", - "OBJCOPY", - "PERL", - "RANLIB", - "RC", - "RCFLAGS", - "RM" -); -my %disabled_info = ( - "acvp-tests" => { - "macro" => "OPENSSL_NO_ACVP_TESTS" - }, - "afalgeng" => { - "macro" => "OPENSSL_NO_AFALGENG" - }, - "aria" => { - "macro" => "OPENSSL_NO_ARIA", - "skipped" => [ - "crypto/aria" - ] - }, - "asan" => { - "macro" => "OPENSSL_NO_ASAN" - }, - "brotli" => { - "macro" => "OPENSSL_NO_BROTLI" - }, - "brotli-dynamic" => { - "macro" => "OPENSSL_NO_BROTLI_DYNAMIC" - }, - "crypto-mdebug" => { - "macro" => "OPENSSL_NO_CRYPTO_MDEBUG" - }, - "crypto-mdebug-backtrace" => { - "macro" => "OPENSSL_NO_CRYPTO_MDEBUG_BACKTRACE" - }, - "demos" => { - "macro" => "OPENSSL_NO_DEMOS" - }, - "egd" => { - "macro" => "OPENSSL_NO_EGD" - }, - "external-tests" => { - "macro" => "OPENSSL_NO_EXTERNAL_TESTS" - }, - "fips-jitter" => { - "macro" => "OPENSSL_NO_FIPS_JITTER" - }, - "fips-post" => { - "macro" => "OPENSSL_NO_FIPS_POST" - }, - "fips-securitychecks" => { - "macro" => "OPENSSL_NO_FIPS_SECURITYCHECKS" - }, - "fuzz-afl" => { - "macro" => "OPENSSL_NO_FUZZ_AFL" - }, - "fuzz-libfuzzer" => { - "macro" => "OPENSSL_NO_FUZZ_LIBFUZZER" - }, - "h3demo" => { - "macro" => "OPENSSL_NO_H3DEMO" - }, - "hqinterop" => { - "macro" => "OPENSSL_NO_HQINTEROP" - }, - "idea" => { - "macro" => "OPENSSL_NO_IDEA", - "skipped" => [ - "crypto/idea" - ] - }, - "jitter" => { - "macro" => "OPENSSL_NO_JITTER" - }, - "md2" => { - "macro" => "OPENSSL_NO_MD2", - "skipped" => [ - "crypto/md2" - ] - }, - "mdc2" => { - "macro" => "OPENSSL_NO_MDC2", - "skipped" => [ - "crypto/mdc2" - ] - }, - "msan" => { - "macro" => "OPENSSL_NO_MSAN" - }, - "pie" => { - "macro" => "OPENSSL_NO_PIE" - }, - "rc5" => { - "macro" => "OPENSSL_NO_RC5", - "skipped" => [ - "crypto/rc5" - ] - }, - "sm2" => { - "macro" => "OPENSSL_NO_SM2", - "skipped" => [ - "crypto/sm2" - ] - }, - "sm3" => { - "macro" => "OPENSSL_NO_SM3", - "skipped" => [ - "crypto/sm3" - ] - }, - "sm4" => { - "macro" => "OPENSSL_NO_SM4", - "skipped" => [ - "crypto/sm4" - ] - }, - "ssl3" => { - "macro" => "OPENSSL_NO_SSL3" - }, - "ssl3-method" => { - "macro" => "OPENSSL_NO_SSL3_METHOD" - }, - "sslkeylog" => { - "macro" => "OPENSSL_NO_SSLKEYLOG" - }, - "tfo" => { - "macro" => "OPENSSL_NO_TFO" - }, - "trace" => { - "macro" => "OPENSSL_NO_TRACE" - }, - "ubsan" => { - "macro" => "OPENSSL_NO_UBSAN" - }, - "unit-test" => { - "macro" => "OPENSSL_NO_UNIT_TEST" - }, - "uplink" => { - "macro" => "OPENSSL_NO_UPLINK" - }, - "weak-ssl-ciphers" => { - "macro" => "OPENSSL_NO_WEAK_SSL_CIPHERS" - }, - "winstore" => { - "macro" => "OPENSSL_NO_WINSTORE" - }, - "zlib" => { - "macro" => "OPENSSL_NO_ZLIB" - }, - "zlib-dynamic" => { - "macro" => "OPENSSL_NO_ZLIB_DYNAMIC" - }, - "zstd" => { - "macro" => "OPENSSL_NO_ZSTD" - }, - "zstd-dynamic" => { - "macro" => "OPENSSL_NO_ZSTD_DYNAMIC" - } -); -my @user_crossable = qw( AR AS CC CXX CPP LD MT RANLIB RC ); - -# If run directly, we can give some answers, and even reconfigure -unless (caller) { - use Getopt::Long; - use File::Spec::Functions; - use File::Basename; - use File::Compare qw(compare_text); - use File::Copy; - use Pod::Usage; - - use lib '/usr/home/ngie/git/freebsd-src/worktree/main/crypto/openssl/util/perl'; - use OpenSSL::fallback '/usr/home/ngie/git/freebsd-src/worktree/main/crypto/openssl/external/perl/MODULES.txt'; - - my $here = dirname($0); - - if (scalar @ARGV == 0) { - # With no arguments, re-create the build file - # We do that in two steps, where the first step emits perl - # snippets. - - my $buildfile = $config{build_file}; - my $buildfile_template = "$buildfile.in"; - my @autowarntext = ( - 'WARNING: do not edit!', - "Generated by configdata.pm from " - .join(", ", @{$config{build_file_templates}}), - "via $buildfile_template" - ); - my %gendata = ( - config => \%config, - target => \%target, - disabled => \%disabled, - withargs => \%withargs, - unified_info => \%unified_info, - autowarntext => \@autowarntext, - ); - - use lib '.'; - use lib '/usr/home/ngie/git/freebsd-src/worktree/main/crypto/openssl/Configurations'; - use gentemplate; - - open my $buildfile_template_fh, ">$buildfile_template" - or die "Trying to create $buildfile_template: $!"; - foreach (@{$config{build_file_templates}}) { - copy($_, $buildfile_template_fh) - or die "Trying to copy $_ into $buildfile_template: $!"; - } - gentemplate(output => $buildfile_template_fh, %gendata); - close $buildfile_template_fh; - print 'Created ',$buildfile_template,"\n"; - - use OpenSSL::Template; - - my $prepend = <<'_____'; -use File::Spec::Functions; -use lib '/usr/home/ngie/git/freebsd-src/worktree/main/crypto/openssl/util/perl'; -use lib '/usr/home/ngie/git/freebsd-src/worktree/main/crypto/openssl/Configurations'; -use lib '.'; -use platform; -_____ - - my $tmpl; - open BUILDFILE, ">$buildfile.new" - or die "Trying to create $buildfile.new: $!"; - $tmpl = OpenSSL::Template->new(TYPE => 'FILE', - SOURCE => $buildfile_template); - $tmpl->fill_in(FILENAME => $_, - OUTPUT => \*BUILDFILE, - HASH => \%gendata, - PREPEND => $prepend, - # To ensure that global variables and functions - # defined in one template stick around for the - # next, making them combinable - PACKAGE => 'OpenSSL::safe') - or die $OpenSSL::Template::ERROR; - close BUILDFILE; - rename("$buildfile.new", $buildfile) - or die "Trying to rename $buildfile.new to $buildfile: $!"; - print 'Created ',$buildfile,"\n"; - - my $configuration_h = - catfile('include', 'openssl', 'configuration.h'); - my $configuration_h_in = - catfile($config{sourcedir}, 'include', 'openssl', 'configuration.h.in'); - open CONFIGURATION_H, ">${configuration_h}.new" - or die "Trying to create ${configuration_h}.new: $!"; - $tmpl = OpenSSL::Template->new(TYPE => 'FILE', - SOURCE => $configuration_h_in); - $tmpl->fill_in(FILENAME => $_, - OUTPUT => \*CONFIGURATION_H, - HASH => \%gendata, - PREPEND => $prepend, - # To ensure that global variables and functions - # defined in one template stick around for the - # next, making them combinable - PACKAGE => 'OpenSSL::safe') - or die $OpenSSL::Template::ERROR; - close CONFIGURATION_H; - - # When using stat() on Windows, we can get it to perform better by - # avoid some data. This doesn't affect the mtime field, so we're not - # losing anything... - ${^WIN32_SLOPPY_STAT} = 1; - - my $update_configuration_h = 0; - if (-f $configuration_h) { - my $configuration_h_mtime = (stat($configuration_h))[9]; - my $configuration_h_in_mtime = (stat($configuration_h_in))[9]; - - # If configuration.h.in was updated after the last configuration.h, - # or if configuration.h.new differs configuration.h, we update - # configuration.h - if ($configuration_h_mtime < $configuration_h_in_mtime - || compare_text("${configuration_h}.new", $configuration_h) != 0) { - $update_configuration_h = 1; - } else { - # If nothing has changed, let's just drop the new one and - # pretend like nothing happened - unlink "${configuration_h}.new" - } - } else { - $update_configuration_h = 1; - } - - if ($update_configuration_h) { - rename("${configuration_h}.new", $configuration_h) - or die "Trying to rename ${configuration_h}.new to $configuration_h: $!"; - print 'Created ',$configuration_h,"\n"; - } - - exit(0); - } - - my $dump = undef; - my $cmdline = undef; - my $options = undef; - my $target = undef; - my $envvars = undef; - my $makevars = undef; - my $buildparams = undef; - my $reconf = undef; - my $verbose = undef; - my $query = undef; - my $help = undef; - my $man = undef; - GetOptions('dump|d' => \$dump, - 'command-line|c' => \$cmdline, - 'options|o' => \$options, - 'target|t' => \$target, - 'environment|e' => \$envvars, - 'make-variables|m' => \$makevars, - 'build-parameters|b' => \$buildparams, - 'reconfigure|reconf|r' => \$reconf, - 'verbose|v' => \$verbose, - 'query|q=s' => \$query, - 'help' => \$help, - 'man' => \$man) - or die "Errors in command line arguments\n"; - - # We allow extra arguments with --query. That allows constructs like - # this: - # ./configdata.pm --query 'get_sources(@ARGV)' file1 file2 file3 - if (!$query && scalar @ARGV > 0) { - print STDERR <<"_____"; -Unrecognised arguments. -For more information, do '$0 --help' -_____ - exit(2); - } - - if ($help) { - pod2usage(-exitval => 0, - -verbose => 1); - } - if ($man) { - pod2usage(-exitval => 0, - -verbose => 2); - } - if ($dump || $cmdline) { - print "\nCommand line (with current working directory = $here):\n\n"; - print ' ',join(' ', - $config{PERL}, - catfile($config{sourcedir}, 'Configure'), - @{$config{perlargv}}), "\n"; - print "\nPerl information:\n\n"; - print ' ',$config{perl_cmd},"\n"; - print ' ',$config{perl_version},' for ',$config{perl_archname},"\n"; - } - if ($dump || $options) { - my $longest = 0; - my $longest2 = 0; - foreach my $what (@disablables) { - $longest = length($what) if $longest < length($what); - $longest2 = length($disabled{$what}) - if $disabled{$what} && $longest2 < length($disabled{$what}); - } - print "\nEnabled features:\n\n"; - foreach my $what (@disablables) { - print " $what\n" unless $disabled{$what}; - } - print "\nDisabled features:\n\n"; - foreach my $what (@disablables) { - if ($disabled{$what}) { - print " $what", ' ' x ($longest - length($what) + 1), - "[$disabled{$what}]", ' ' x ($longest2 - length($disabled{$what}) + 1); - print $disabled_info{$what}->{macro} - if $disabled_info{$what}->{macro}; - print ' (skip ', - join(', ', @{$disabled_info{$what}->{skipped}}), - ')' - if $disabled_info{$what}->{skipped}; - print "\n"; - } - } - } - if ($dump || $target) { - print "\nConfig target attributes:\n\n"; - foreach (sort keys %target) { - next if $_ =~ m|^_| || $_ eq 'template'; - my $quotify = sub { - map { - if (defined $_) { - (my $x = $_) =~ s|([\\\$\@"])|\\$1|g; "\"$x\"" - } else { - "undef"; - } - } @_; - }; - print ' ', $_, ' => '; - if (ref($target{$_}) eq "ARRAY") { - print '[ ', join(', ', $quotify->(@{$target{$_}})), " ],\n"; - } else { - print $quotify->($target{$_}), ",\n" - } - } - } - if ($dump || $envvars) { - print "\nRecorded environment:\n\n"; - foreach (sort keys %{$config{perlenv}}) { - print ' ',$_,' = ',($config{perlenv}->{$_} || ''),"\n"; - } - } - if ($dump || $makevars) { - print "\nMakevars:\n\n"; - foreach my $var (@makevars) { - my $prefix = ''; - $prefix = $config{CROSS_COMPILE} - if grep { $var eq $_ } @user_crossable; - $prefix //= ''; - print ' ',$var,' ' x (16 - length $var),'= ', - (ref $config{$var} eq 'ARRAY' - ? join(' ', @{$config{$var}}) - : $prefix.$config{$var}), - "\n" - if defined $config{$var}; - } - - my @buildfile = ($config{builddir}, $config{build_file}); - unshift @buildfile, $here - unless file_name_is_absolute($config{builddir}); - my $buildfile = canonpath(catdir(@buildfile)); - print <<"_____"; - -NOTE: These variables only represent the configuration view. The build file -template may have processed these variables further, please have a look at the -build file for more exact data: - $buildfile -_____ - } - if ($dump || $buildparams) { - my @buildfile = ($config{builddir}, $config{build_file}); - unshift @buildfile, $here - unless file_name_is_absolute($config{builddir}); - print "\nbuild file:\n\n"; - print " ", canonpath(catfile(@buildfile)),"\n"; - - print "\nbuild file templates:\n\n"; - foreach (@{$config{build_file_templates}}) { - my @tmpl = ($_); - unshift @tmpl, $here - unless file_name_is_absolute($config{sourcedir}); - print ' ',canonpath(catfile(@tmpl)),"\n"; - } - } - if ($reconf) { - if ($verbose) { - print 'Reconfiguring with: ', join(' ',@{$config{perlargv}}), "\n"; - foreach (sort keys %{$config{perlenv}}) { - print ' ',$_,' = ',($config{perlenv}->{$_} || ""),"\n"; - } - } - - chdir $here; - exec $^X,catfile($config{sourcedir}, 'Configure'),'reconf'; - } - if ($query) { - use OpenSSL::Config::Query; - - my $confquery = OpenSSL::Config::Query->new(info => \%unified_info, - config => \%config); - my $result = eval "\$confquery->$query"; - - # We may need a result class with a printing function at some point. - # Until then, we assume that we get a scalar, or a list or a hash table - # with scalar values and simply print them in some orderly fashion. - if (ref $result eq 'ARRAY') { - print "$_\n" foreach @$result; - } elsif (ref $result eq 'HASH') { - print "$_ : \\\n ", join(" \\\n ", @{$result->{$_}}), "\n" - foreach sort keys %$result; - } elsif (ref $result eq 'SCALAR') { - print "$$result\n"; - } - } -} - -1; - -__END__ - -=head1 NAME - -configdata.pm - configuration data for OpenSSL builds - -=head1 SYNOPSIS - -Interactive: - - perl configdata.pm [options] - -As data bank module: - - use configdata; - -=head1 DESCRIPTION - -This module can be used in two modes, interactively and as a module containing -all the data recorded by OpenSSL's Configure script. - -When used interactively, simply run it as any perl script. -If run with no arguments, it will rebuild the build file (Makefile or -corresponding). -With at least one option, it will instead get the information you ask for, or -re-run the configuration process. -See L</OPTIONS> below for more information. - -When loaded as a module, you get a few databanks with useful information to -perform build related tasks. The databanks are: - - %config Configured things. - %target The OpenSSL config target with all inheritances - resolved. - %disabled The features that are disabled. - @disablables The list of features that can be disabled. - %withargs All data given through --with-THING options. - %unified_info All information that was computed from the build.info - files. - -=head1 OPTIONS - -=over 4 - -=item B<--help> - -Print a brief help message and exit. - -=item B<--man> - -Print the manual page and exit. - -=item B<--dump> | B<-d> - -Print all relevant configuration data. This is equivalent to B<--command-line> -B<--options> B<--target> B<--environment> B<--make-variables> -B<--build-parameters>. - -=item B<--command-line> | B<-c> - -Print the current configuration command line. - -=item B<--options> | B<-o> - -Print the features, both enabled and disabled, and display defined macro and -skipped directories where applicable. - -=item B<--target> | B<-t> - -Print the config attributes for this config target. - -=item B<--environment> | B<-e> - -Print the environment variables and their values at the time of configuration. - -=item B<--make-variables> | B<-m> - -Print the main make variables generated in the current configuration - -=item B<--build-parameters> | B<-b> - -Print the build parameters, i.e. build file and build file templates. - -=item B<--reconfigure> | B<--reconf> | B<-r> - -Re-run the configuration process. - -=item B<--verbose> | B<-v> - -Verbose output. - -=back - -=cut - -EOF diff --git a/crypto/openssl/freebsd/dump_version_from_configdata.pl b/crypto/openssl/freebsd/dump_version_from_configdata.pl deleted file mode 100644 index b6137718ba54..000000000000 --- a/crypto/openssl/freebsd/dump_version_from_configdata.pl +++ /dev/null @@ -1,21 +0,0 @@ -#!/usr/bin/env perl -# -# This dumps out the values needed to generate manpages and other artifacts -# which include the release version/date. -# -# See also: `secure/lib/libcrypto/Makefile.version`. - -use Cwd qw(realpath); -use File::Basename qw(dirname); -use Time::Piece; - -use lib dirname(dirname(realpath($0))); - -use configdata qw(%config); - -$OPENSSL_DATE = Time::Piece->strptime($config{"release_date"}, "%d %b %Y")->strftime("%Y-%m-%d"); - -$OPENSSL_VER = "$config{'major'}.$config{'minor'}.$config{'patch'}"; - -print("OPENSSL_VER=\t${OPENSSL_VER}\n"); -print("OPENSSL_DATE=\t${OPENSSL_DATE}\n"); diff --git a/crypto/openssl/libcrypto.pc b/crypto/openssl/libcrypto.pc deleted file mode 100644 index 05ed0737f0f1..000000000000 --- a/crypto/openssl/libcrypto.pc +++ /dev/null @@ -1,13 +0,0 @@ -prefix=/usr -exec_prefix=${prefix} -libdir=${exec_prefix} -includedir=${prefix}/include ${prefix}/./include -enginesdir=${libdir}/engines -modulesdir=${libdir}/providers - -Name: OpenSSL-libcrypto -Description: OpenSSL cryptography library -Version: 3.5.4 -Libs: -L${libdir} -lcrypto -Libs.private: -pthread -Cflags: -I${prefix}/include -I${prefix}/./include diff --git a/crypto/openssl/libssl.pc b/crypto/openssl/libssl.pc deleted file mode 100644 index 10b330aaa098..000000000000 --- a/crypto/openssl/libssl.pc +++ /dev/null @@ -1,11 +0,0 @@ -prefix=/usr -exec_prefix=${prefix} -libdir=${exec_prefix} -includedir=${prefix}/include ${prefix}/./include - -Name: OpenSSL-libssl -Description: Secure Sockets Layer and cryptography libraries -Version: 3.5.4 -Requires.private: libcrypto -Libs: -L${libdir} -lssl -Cflags: -I${prefix}/include -I${prefix}/./include diff --git a/crypto/openssl/openssl.pc b/crypto/openssl/openssl.pc deleted file mode 100644 index 7a9c9fc22d45..000000000000 --- a/crypto/openssl/openssl.pc +++ /dev/null @@ -1,9 +0,0 @@ -prefix=/usr -exec_prefix=${prefix} -libdir=${exec_prefix} -includedir=${prefix}/include ${prefix}/./include - -Name: OpenSSL -Description: Secure Sockets Layer and cryptography libraries and tools -Version: 3.5.4 -Requires: libssl libcrypto diff --git a/crypto/openssl/util/wrap.pl b/crypto/openssl/util/wrap.pl deleted file mode 100755 index 1b536c1885ac..000000000000 --- a/crypto/openssl/util/wrap.pl +++ /dev/null @@ -1,133 +0,0 @@ -#! /usr/bin/env perl - -use strict; -use warnings; - -use File::Basename; -use File::Spec::Functions; - -BEGIN { - # This method corresponds exactly to 'use OpenSSL::Util', - # but allows us to use a platform specific file spec. - require '/usr/home/ngie/git/freebsd-src/worktree/main/crypto/openssl/util/perl/OpenSSL/Util.pm'; - OpenSSL::Util->import(); -} - -sub quote_cmd_win32 { - my $cmd = ""; - - foreach my $arg (@_) { - if ($arg =~ m{\A[\w,-./@]+\z}) { - $cmd .= $arg . q{ };; - } else { - $cmd .= q{"} . quote_arg_win32($arg) . q{" }; - } - } - return substr($cmd, 0, -1); -} - -sub quote_arg_win32 { - my ($arg) = @_; - my $val = ""; - - pos($arg) = 0; - while (1) { - return $val if (pos($arg) == length($arg)); - if ($arg =~ m{\G((?:(?>[\\]*)[^"\\]+)+)}ogc) { - $val .= $1; - } elsif ($arg =~ m{\G"}ogc) { - $val .= qq{\\"}; - } elsif ($arg =~ m{\G((?>[\\]+)(?="|\z))}ogc) { - $val .= qq{\\} x (2 * length($1)); - } else { - die sprintf("Internal error quoting: '%s'\n", $arg); - } - } -} - -my $there = canonpath(catdir(dirname($0), updir())); -my $std_engines = catdir($there, 'engines'); -my $std_providers = catdir($there, 'providers'); -my $std_openssl_conf = catdir($there, 'apps/openssl.cnf'); -my $unix_shlib_wrap = catfile($there, 'util/shlib_wrap.sh'); -my $std_openssl_conf_include; - -if ($ARGV[0] eq '-fips') { - $std_openssl_conf = '/usr/home/ngie/git/freebsd-src/worktree/main/crypto/openssl/test/fips-and-base.cnf'; - shift; - - $std_openssl_conf_include = catdir($there, 'providers'); -} - -if ($ARGV[0] eq '-jitter') { - $std_openssl_conf = '/usr/home/ngie/git/freebsd-src/worktree/main/crypto/openssl/test/default-and-jitter.cnf'; - shift; - - $std_openssl_conf_include = catdir($there, 'providers'); -} - - -local $ENV{OPENSSL_CONF_INCLUDE} = $std_openssl_conf_include - if defined $std_openssl_conf_include - &&($ENV{OPENSSL_CONF_INCLUDE} // '') eq '' - && -d $std_openssl_conf_include; -local $ENV{OPENSSL_ENGINES} = $std_engines - if ($ENV{OPENSSL_ENGINES} // '') eq '' && -d $std_engines; -local $ENV{OPENSSL_MODULES} = $std_providers - if ($ENV{OPENSSL_MODULES} // '') eq '' && -d $std_providers; -local $ENV{OPENSSL_CONF} = $std_openssl_conf - if ($ENV{OPENSSL_CONF} // '') eq '' && -f $std_openssl_conf; - -my $use_system = 0; -my @cmd; - -if ($^O eq 'VMS') { - # VMS needs the command to be appropriately quotified - @cmd = fixup_cmd(@ARGV); -} elsif (-x $unix_shlib_wrap) { - @cmd = ( $unix_shlib_wrap, @ARGV ); -} else { - # Hope for the best - @cmd = ( @ARGV ); -} - -# The exec() statement on MSWin32 doesn't seem to give back the exit code -# from the call, so we resort to using system() instead. -my $waitcode; -if ($^O eq 'MSWin32') { - $waitcode = system(quote_cmd_win32(@cmd)); -} else { - $waitcode = system @cmd; -} - -# According to documentation, -1 means that system() couldn't run the command, -# otherwise, the value is similar to the Unix wait() status value -# (exitcode << 8 | signalcode) -die "wrap.pl: Failed to execute '", join(' ', @cmd), "': $!\n" - if $waitcode == -1; - -# When the subprocess aborted on a signal, we simply raise the same signal. -kill(($? & 255) => $$) if ($? & 255) != 0; - -# If that didn't stop this script, mimic what Unix shells do, by -# converting the signal code to an exit code by setting the high bit. -# This only happens on Unix flavored operating systems, the others don't -# have this sort of signaling to date, and simply leave the low byte zero. -exit(($? & 255) | 128) if ($? & 255) != 0; - -# When not a signal, just shift down the subprocess exit code and use that. -my $exitcode = $? >> 8; - -# For VMS, perl recommendations is to emulate what the C library exit() does -# for all non-zero exit codes, except we set the error severity rather than -# success. -# Ref: https://perldoc.perl.org/perlport#exit -# https://perldoc.perl.org/perlvms#$? -if ($^O eq 'VMS' && $exitcode != 0) { - $exitcode = - 0x35a000 # C facility code - + ($exitcode * 8) # shift up to make space for the 3 severity bits - + 2 # Severity: E(rror) - + 0x10000000; # bit 28 set => the shell stays silent -} -exit($exitcode); diff --git a/etc/mtree/BSD.include.dist b/etc/mtree/BSD.include.dist index 454657183c58..ea333a38d889 100644 --- a/etc/mtree/BSD.include.dist +++ b/etc/mtree/BSD.include.dist @@ -127,8 +127,6 @@ .. agp .. - an - .. ciss .. evdev @@ -191,8 +189,6 @@ .. wg .. - wi - .. .. devdctl .. @@ -303,8 +299,6 @@ net80211 .. netgraph - atm - .. bluetooth include .. diff --git a/etc/mtree/BSD.tests.dist b/etc/mtree/BSD.tests.dist index e6a013f010de..f7a3b2a33703 100644 --- a/etc/mtree/BSD.tests.dist +++ b/etc/mtree/BSD.tests.dist @@ -520,6 +520,8 @@ .. secure lib + libcrypto + .. .. libexec .. @@ -833,6 +835,8 @@ .. gpt .. + label + .. mirror .. multipath @@ -1283,6 +1287,8 @@ .. pw .. + quot + .. rpcbind .. sa diff --git a/include/stdckdint.h b/include/stdckdint.h index af3074dded89..9cb877fe8198 100644 --- a/include/stdckdint.h +++ b/include/stdckdint.h @@ -13,7 +13,7 @@ #if __GNUC_PREREQ__(5, 1) || __has_builtin(__builtin_add_overflow) #define ckd_add(result, a, b) \ - (_Bool)__builtin_add_overflow((a), (b), (result)) + __builtin_add_overflow((a), (b), (result)) #else #define ckd_add(result, a, b) \ _Static_assert(0, "checked addition not supported") @@ -21,7 +21,7 @@ #if __GNUC_PREREQ__(5, 1) || __has_builtin(__builtin_sub_overflow) #define ckd_sub(result, a, b) \ - (_Bool)__builtin_sub_overflow((a), (b), (result)) + __builtin_sub_overflow((a), (b), (result)) #else #define ckd_sub(result, a, b) \ _Static_assert(0, "checked subtraction not supported") @@ -29,7 +29,7 @@ #if __GNUC_PREREQ__(5, 1) || __has_builtin(__builtin_mul_overflow) #define ckd_mul(result, a, b) \ - (_Bool)__builtin_mul_overflow((a), (b), (result)) + __builtin_mul_overflow((a), (b), (result)) #else #define ckd_mul(result, a, b) \ _Static_assert(0, "checked multiplication not supported") diff --git a/krb5/include/autoconf.h b/krb5/include/autoconf.h index ed0bf8cacc14..760aca79176b 100644 --- a/krb5/include/autoconf.h +++ b/krb5/include/autoconf.h @@ -691,7 +691,15 @@ #define STDC_HEADERS 1 /* Define to 1 if strerror_r returns char *. */ +#ifdef __linux__ +#include <features.h> +#endif +#ifdef __GLIBC__ +/* Bootstrapping on GNU/Linux */ +#define STRERROR_R_CHAR_P 1 +#else /* #undef STRERROR_R_CHAR_P */ +#endif /* Define if sys_errlist is defined in errno.h */ #define SYS_ERRLIST_DECLARED 1 diff --git a/lib/libarchive/tests/Makefile b/lib/libarchive/tests/Makefile index 07c5fe24dd30..930250d974c5 100644 --- a/lib/libarchive/tests/Makefile +++ b/lib/libarchive/tests/Makefile @@ -185,6 +185,7 @@ TESTS_SRCS= \ test_read_format_rar_overflow.c \ test_read_format_raw.c \ test_read_format_tar.c \ + test_read_format_tar_V_negative_size.c \ test_read_format_tar_concatenated.c \ test_read_format_tar_empty_filename.c \ test_read_format_tar_empty_pax.c \ @@ -607,6 +608,7 @@ ${PACKAGE}FILES+= test_read_format_rar5_decode_number_out_of_bounds_read.rar.uu ${PACKAGE}FILES+= test_read_format_rar5_different_solid_window_size.rar.uu ${PACKAGE}FILES+= test_read_format_rar5_different_window_size.rar.uu ${PACKAGE}FILES+= test_read_format_rar5_different_winsize_on_merge.rar.uu +${PACKAGE}FILES+= test_read_format_rar5_dirdata.rar.uu ${PACKAGE}FILES+= test_read_format_rar5_distance_overflow.rar.uu ${PACKAGE}FILES+= test_read_format_rar5_encrypted.rar.uu ${PACKAGE}FILES+= test_read_format_rar5_encrypted_filenames.rar.uu @@ -616,6 +618,7 @@ ${PACKAGE}FILES+= test_read_format_rar5_extra_field_version.rar.uu ${PACKAGE}FILES+= test_read_format_rar5_fileattr.rar.uu ${PACKAGE}FILES+= test_read_format_rar5_hardlink.rar.uu ${PACKAGE}FILES+= test_read_format_rar5_invalid_dict_reference.rar.uu +${PACKAGE}FILES+= test_read_format_rar5_invalid_hash_valid_htime_exfld.rar.uu ${PACKAGE}FILES+= test_read_format_rar5_leftshift1.rar.uu ${PACKAGE}FILES+= test_read_format_rar5_leftshift2.rar.uu ${PACKAGE}FILES+= test_read_format_rar5_multiarchive.part01.rar.uu @@ -633,6 +636,7 @@ ${PACKAGE}FILES+= test_read_format_rar5_multiarchive_solid.part04.rar.uu ${PACKAGE}FILES+= test_read_format_rar5_multiple_files.rar.uu ${PACKAGE}FILES+= test_read_format_rar5_multiple_files_solid.rar.uu ${PACKAGE}FILES+= test_read_format_rar5_nonempty_dir_stream.rar.uu +${PACKAGE}FILES+= test_read_format_rar5_only_crypt_exfld.rar.uu ${PACKAGE}FILES+= test_read_format_rar5_owner.rar.uu ${PACKAGE}FILES+= test_read_format_rar5_readtables_overflow.rar.uu ${PACKAGE}FILES+= test_read_format_rar5_sfx.exe.uu @@ -642,12 +646,14 @@ ${PACKAGE}FILES+= test_read_format_rar5_stored_manyfiles.rar.uu ${PACKAGE}FILES+= test_read_format_rar5_symlink.rar.uu ${PACKAGE}FILES+= test_read_format_rar5_truncated_huff.rar.uu ${PACKAGE}FILES+= test_read_format_rar5_unicode.rar.uu +${PACKAGE}FILES+= test_read_format_rar5_unsupported_exfld.rar.uu ${PACKAGE}FILES+= test_read_format_rar5_win32.rar.uu ${PACKAGE}FILES+= test_read_format_rar5_window_buf_and_size_desync.rar.uu ${PACKAGE}FILES+= test_read_format_raw.bufr.uu ${PACKAGE}FILES+= test_read_format_raw.data.Z.uu ${PACKAGE}FILES+= test_read_format_raw.data.gz.uu ${PACKAGE}FILES+= test_read_format_raw.data.uu +${PACKAGE}FILES+= test_read_format_tar_V_negative_size.tar.uu ${PACKAGE}FILES+= test_read_format_tar_concatenated.tar.uu ${PACKAGE}FILES+= test_read_format_tar_empty_filename.tar.uu ${PACKAGE}FILES+= test_read_format_tar_empty_with_gnulabel.tar.uu diff --git a/lib/libc/inet/inet_net_ntop.c b/lib/libc/inet/inet_net_ntop.c index 9d98dbb5ca99..30dd5c0571f2 100644 --- a/lib/libc/inet/inet_net_ntop.c +++ b/lib/libc/inet/inet_net_ntop.c @@ -1,20 +1,23 @@ -/*- - * SPDX-License-Identifier: ISC +/* $OpenBSD: inet_net_ntop.c,v 1.9 2019/07/03 03:24:04 deraadt Exp $ */ + +/* + * Copyright (c) 2012 by Gilles Chehade <gilles@openbsd.org> + * Copyright (c) 1996 by Internet Software Consortium. * - * Copyright (c) 2004 by Internet Systems Consortium, Inc. ("ISC") - * Copyright (c) 1996,1999 by Internet Software Consortium. + * SPDX-License-Identifier: ISC * * 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 ISC DISCLAIMS ALL WARRANTIES - * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF - * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL ISC 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. + * THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM DISCLAIMS + * ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES + * OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL INTERNET SOFTWARE + * CONSORTIUM 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. */ #include "port_before.h" @@ -31,18 +34,10 @@ #include "port_after.h" -#ifdef SPRINTF_CHAR -# define SPRINTF(x) strlen(sprintf/**/x) -#else -# define SPRINTF(x) ((size_t)sprintf x) -#endif - -static char * inet_net_ntop_ipv4(const u_char *src, int bits, char *dst, - size_t size); -static char * inet_net_ntop_ipv6(const u_char *src, int bits, char *dst, - size_t size); +static char *inet_net_ntop_ipv4(const u_char *, int, char *, size_t); +static char *inet_net_ntop_ipv6(const u_char *, int, char *, size_t); -/*% +/* * char * * inet_net_ntop(af, src, bits, dst, size) * convert network number from network to presentation format. @@ -66,7 +61,7 @@ inet_net_ntop(int af, const void *src, int bits, char *dst, size_t size) } } -/*% +/* * static char * * inet_net_ntop_ipv4(src, bits, dst, size) * convert IPv4 network number from network to presentation format. @@ -83,53 +78,63 @@ static char * inet_net_ntop_ipv4(const u_char *src, int bits, char *dst, size_t size) { char *odst = dst; - char *t; u_int m; int b; + char *ep; + int advance; + + ep = dst + size; + if (ep <= dst) + goto emsgsize; if (bits < 0 || bits > 32) { errno = EINVAL; return (NULL); } - if (bits == 0) { - if (size < sizeof "0") + if (ep - dst < sizeof "0") goto emsgsize; *dst++ = '0'; - size--; *dst = '\0'; } /* Format whole octets. */ for (b = bits / 8; b > 0; b--) { - if (size <= sizeof "255.") + if (ep - dst < sizeof "255.") + goto emsgsize; + advance = snprintf(dst, ep - dst, "%u", *src++); + if (advance <= 0 || advance >= ep - dst) goto emsgsize; - t = dst; - dst += SPRINTF((dst, "%u", *src++)); + dst += advance; if (b > 1) { + if (dst + 1 >= ep) + goto emsgsize; *dst++ = '.'; *dst = '\0'; } - size -= (size_t)(dst - t); } /* Format partial octet. */ b = bits % 8; if (b > 0) { - if (size <= sizeof ".255") + if (ep - dst < sizeof ".255") goto emsgsize; - t = dst; if (dst != odst) *dst++ = '.'; m = ((1 << b) - 1) << (8 - b); - dst += SPRINTF((dst, "%u", *src & m)); - size -= (size_t)(dst - t); + advance = snprintf(dst, ep - dst, "%u", *src & m); + if (advance <= 0 || advance >= ep - dst) + goto emsgsize; + dst += advance; } /* Format CIDR /width. */ - if (size <= sizeof "/32") + if (ep - dst < sizeof "/32") + goto emsgsize; + advance = snprintf(dst, ep - dst, "/%u", bits); + if (advance <= 0 || advance >= ep - dst) goto emsgsize; - dst += SPRINTF((dst, "/%u", bits)); + dst += advance; return (odst); emsgsize: @@ -137,132 +142,27 @@ inet_net_ntop_ipv4(const u_char *src, int bits, char *dst, size_t size) return (NULL); } -/*% - * static char * - * inet_net_ntop_ipv6(src, bits, fakebits, dst, size) - * convert IPv6 network number from network to presentation format. - * generates CIDR style result always. Picks the shortest representation - * unless the IP is really IPv4. - * always prints specified number of bits (bits). - * return: - * pointer to dst, or NULL if an error occurred (check errno). - * note: - * network byte order assumed. this means 192.5.5.240/28 has - * 0b11110000 in its fourth octet. - * author: - * Vadim Kogan (UCB), June 2001 - * Original version (IPv4) by Paul Vixie (ISC), July 1996 - */ - static char * -inet_net_ntop_ipv6(const u_char *src, int bits, char *dst, size_t size) { - u_int m; - int b; - int p; - int zero_s, zero_l, tmp_zero_s, tmp_zero_l; - int i; - int is_ipv4 = 0; - unsigned char inbuf[16]; - char outbuf[sizeof("xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:255.255.255.255/128")]; - char *cp; - int words; - u_char *s; +inet_net_ntop_ipv6(const u_char *src, int bits, char *dst, size_t size) +{ + int ret; + char buf[sizeof("xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:255:255:255:255/128")]; if (bits < 0 || bits > 128) { errno = EINVAL; return (NULL); } - cp = outbuf; - - if (bits == 0) { - *cp++ = ':'; - *cp++ = ':'; - *cp = '\0'; - } else { - /* Copy src to private buffer. Zero host part. */ - p = (bits + 7) / 8; - memcpy(inbuf, src, p); - memset(inbuf + p, 0, 16 - p); - b = bits % 8; - if (b != 0) { - m = ~0 << (8 - b); - inbuf[p-1] &= m; - } - - s = inbuf; - - /* how many words need to be displayed in output */ - words = (bits + 15) / 16; - if (words == 1) - words = 2; - - /* Find the longest substring of zero's */ - zero_s = zero_l = tmp_zero_s = tmp_zero_l = 0; - for (i = 0; i < (words * 2); i += 2) { - if ((s[i] | s[i+1]) == 0) { - if (tmp_zero_l == 0) - tmp_zero_s = i / 2; - tmp_zero_l++; - } else { - if (tmp_zero_l && zero_l < tmp_zero_l) { - zero_s = tmp_zero_s; - zero_l = tmp_zero_l; - tmp_zero_l = 0; - } - } - } - - if (tmp_zero_l && zero_l < tmp_zero_l) { - zero_s = tmp_zero_s; - zero_l = tmp_zero_l; - } - - if (zero_l != words && zero_s == 0 && ((zero_l == 6) || - ((zero_l == 5 && s[10] == 0xff && s[11] == 0xff) || - ((zero_l == 7 && s[14] != 0 && s[15] != 1))))) - is_ipv4 = 1; - - /* Format whole words. */ - for (p = 0; p < words; p++) { - if (zero_l != 0 && p >= zero_s && p < zero_s + zero_l) { - /* Time to skip some zeros */ - if (p == zero_s) - *cp++ = ':'; - if (p == words - 1) - *cp++ = ':'; - s++; - s++; - continue; - } + if (inet_ntop(AF_INET6, src, buf, size) == NULL) + return (NULL); - if (is_ipv4 && p > 5 ) { - *cp++ = (p == 6) ? ':' : '.'; - cp += SPRINTF((cp, "%u", *s++)); - /* we can potentially drop the last octet */ - if (p != 7 || bits > 120) { - *cp++ = '.'; - cp += SPRINTF((cp, "%u", *s++)); - } - } else { - if (cp != outbuf) - *cp++ = ':'; - cp += SPRINTF((cp, "%x", *s * 256 + s[1])); - s += 2; - } - } + ret = snprintf(dst, size, "%s/%d", buf, bits); + if (ret < 0 || ret >= size) { + errno = EMSGSIZE; + return (NULL); } - /* Format CIDR /width. */ - sprintf(cp, "/%u", bits); - if (strlen(outbuf) + 1 > size) - goto emsgsize; - strcpy(dst, outbuf); return (dst); - -emsgsize: - errno = EMSGSIZE; - return (NULL); } /* @@ -271,5 +171,3 @@ emsgsize: */ #undef inet_net_ntop __weak_reference(__inet_net_ntop, inet_net_ntop); - -/*! \file */ diff --git a/lib/libc/inet/inet_net_pton.c b/lib/libc/inet/inet_net_pton.c index d566a0e1d3c3..14c88eb72014 100644 --- a/lib/libc/inet/inet_net_pton.c +++ b/lib/libc/inet/inet_net_pton.c @@ -1,20 +1,23 @@ -/*- - * SPDX-License-Identifier: ISC +/* $OpenBSD: inet_net_pton.c,v 1.14 2022/12/27 17:10:06 jmc Exp $ */ + +/* + * Copyright (c) 2012 by Gilles Chehade <gilles@openbsd.org> + * Copyright (c) 1996,1999 by Internet Software Consortium. * - * Copyright (C) 2004, 2005, 2008 Internet Systems Consortium, Inc. ("ISC") - * Copyright (C) 1996, 1998, 1999, 2001, 2003 Internet Software Consortium. + * SPDX-License-Identifier: ISC * - * Permission to use, copy, modify, and/or distribute this software for any + * 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 ISC DISCLAIMS ALL WARRANTIES WITH - * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY - * AND FITNESS. IN NO EVENT SHALL ISC 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. + * THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM DISCLAIMS + * ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES + * OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL INTERNET SOFTWARE + * CONSORTIUM 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. */ #include "port_before.h" @@ -22,7 +25,6 @@ #include <sys/types.h> #include <sys/socket.h> #include <netinet/in.h> -#include <arpa/nameser.h> #include <arpa/inet.h> #include <assert.h> @@ -34,13 +36,37 @@ #include "port_after.h" -#ifdef SPRINTF_CHAR -# define SPRINTF(x) strlen(sprintf/**/x) -#else -# define SPRINTF(x) ((size_t)sprintf x) -#endif +static int inet_net_pton_ipv4(const char *, u_char *, size_t); +static int inet_net_pton_ipv6(const char *, u_char *, size_t); -/*% +/* + * static int + * inet_net_pton(af, src, dst, size) + * convert network number from presentation to network format. + * accepts hex octets, hex strings, decimal octets, and /CIDR. + * "size" is in bytes and describes "dst". + * return: + * number of bits, either imputed classfully or specified with /CIDR, + * or -1 if some failure occurred (check errno). ENOENT means it was + * not a valid network specification. + * author: + * Paul Vixie (ISC), June 1996 + */ +int +inet_net_pton(int af, const char *src, void *dst, size_t size) +{ + switch (af) { + case AF_INET: + return (inet_net_pton_ipv4(src, dst, size)); + case AF_INET6: + return (inet_net_pton_ipv6(src, dst, size)); + default: + errno = EAFNOSUPPORT; + return (-1); + } +} + +/* * static int * inet_net_pton_ipv4(src, dst, size) * convert IPv4 network number from presentation to network format. @@ -57,22 +83,24 @@ * Paul Vixie (ISC), June 1996 */ static int -inet_net_pton_ipv4(const char *src, u_char *dst, size_t size) { - static const char xdigits[] = "0123456789abcdef"; - static const char digits[] = "0123456789"; - int n, ch, tmp = 0, dirty, bits; +inet_net_pton_ipv4(const char *src, u_char *dst, size_t size) +{ + static const char + xdigits[] = "0123456789abcdef", + digits[] = "0123456789"; + int n, ch, tmp, dirty, bits; const u_char *odst = dst; - ch = *src++; + ch = (unsigned char)*src++; if (ch == '0' && (src[0] == 'x' || src[0] == 'X') - && isascii((unsigned char)(src[1])) - && isxdigit((unsigned char)(src[1]))) { + && isascii((unsigned char)src[1]) && isxdigit((unsigned char)src[1])) { /* Hexadecimal: Eat nybble string. */ - if (size <= 0U) + if (size == 0) goto emsgsize; - dirty = 0; - src++; /*%< skip x or X. */ - while ((ch = *src++) != '\0' && isascii(ch) && isxdigit(ch)) { + tmp = 0, dirty = 0; + src++; /* skip x or X. */ + while ((ch = (unsigned char)*src++) != '\0' && + isascii(ch) && isxdigit(ch)) { if (isupper(ch)) ch = tolower(ch); n = strchr(xdigits, ch) - xdigits; @@ -82,14 +110,14 @@ inet_net_pton_ipv4(const char *src, u_char *dst, size_t size) { else tmp = (tmp << 4) | n; if (++dirty == 2) { - if (size-- <= 0U) + if (size-- == 0) goto emsgsize; *dst++ = (u_char) tmp; dirty = 0; } } - if (dirty) { /*%< Odd trailing nybble? */ - if (size-- <= 0U) + if (dirty) { /* Odd trailing nybble? */ + if (size-- == 0) goto emsgsize; *dst++ = (u_char) (tmp << 4); } @@ -104,16 +132,16 @@ inet_net_pton_ipv4(const char *src, u_char *dst, size_t size) { tmp += n; if (tmp > 255) goto enoent; - } while ((ch = *src++) != '\0' && + } while ((ch = (unsigned char)*src++) != '\0' && isascii(ch) && isdigit(ch)); - if (size-- <= 0U) + if (size-- == 0) goto emsgsize; *dst++ = (u_char) tmp; if (ch == '\0' || ch == '/') break; if (ch != '.') goto enoent; - ch = *src++; + ch = (unsigned char)*src++; if (!isascii(ch) || !isdigit(ch)) goto enoent; } @@ -121,10 +149,10 @@ inet_net_pton_ipv4(const char *src, u_char *dst, size_t size) { goto enoent; bits = -1; - if (ch == '/' && isascii((unsigned char)(src[0])) && - isdigit((unsigned char)(src[0])) && dst > odst) { + if (ch == '/' && isascii((unsigned char)src[0]) && + isdigit((unsigned char)src[0]) && dst > odst) { /* CIDR width specifier. Nothing can follow it. */ - ch = *src++; /*%< Skip over the /. */ + ch = (unsigned char)*src++; /* Skip over the /. */ bits = 0; do { n = strchr(digits, ch) - digits; @@ -132,8 +160,9 @@ inet_net_pton_ipv4(const char *src, u_char *dst, size_t size) { bits *= 10; bits += n; if (bits > 32) - goto enoent; - } while ((ch = *src++) != '\0' && isascii(ch) && isdigit(ch)); + goto emsgsize; + } while ((ch = (unsigned char)*src++) != '\0' && + isascii(ch) && isdigit(ch)); if (ch != '\0') goto enoent; } @@ -147,29 +176,23 @@ inet_net_pton_ipv4(const char *src, u_char *dst, size_t size) { goto enoent; /* If no CIDR spec was given, infer width from net class. */ if (bits == -1) { - if (*odst >= 240) /*%< Class E */ + if (*odst >= 240) /* Class E */ bits = 32; - else if (*odst >= 224) /*%< Class D */ - bits = 8; - else if (*odst >= 192) /*%< Class C */ + else if (*odst >= 224) /* Class D */ + bits = 4; + else if (*odst >= 192) /* Class C */ bits = 24; - else if (*odst >= 128) /*%< Class B */ + else if (*odst >= 128) /* Class B */ bits = 16; - else /*%< Class A */ + else /* Class A */ bits = 8; /* If imputed mask is narrower than specified octets, widen. */ if (bits < ((dst - odst) * 8)) bits = (dst - odst) * 8; - /* - * If there are no additional bits specified for a class D - * address adjust bits to 4. - */ - if (bits == 8 && *odst == 224) - bits = 4; } /* Extend network to cover the actual mask. */ while (bits > ((dst - odst) * 8)) { - if (size-- <= 0U) + if (size-- == 0) goto emsgsize; *dst++ = '\0'; } @@ -184,222 +207,48 @@ inet_net_pton_ipv4(const char *src, u_char *dst, size_t size) { return (-1); } -static int -getbits(const char *src, int *bitsp) { - static const char digits[] = "0123456789"; - int n; - int val; - char ch; - - val = 0; - n = 0; - while ((ch = *src++) != '\0') { - const char *pch; - - pch = strchr(digits, ch); - if (pch != NULL) { - if (n++ != 0 && val == 0) /*%< no leading zeros */ - return (0); - val *= 10; - val += (pch - digits); - if (val > 128) /*%< range */ - return (0); - continue; - } - return (0); - } - if (n == 0) - return (0); - *bitsp = val; - return (1); -} static int -getv4(const char *src, u_char *dst, int *bitsp) { - static const char digits[] = "0123456789"; - u_char *odst = dst; - int n; - u_int val; - char ch; - - val = 0; - n = 0; - while ((ch = *src++) != '\0') { - const char *pch; +inet_net_pton_ipv6(const char *src, u_char *dst, size_t size) +{ + struct in6_addr in6; + int ret; + int bits; + size_t bytes; + char buf[INET6_ADDRSTRLEN + sizeof("/128")]; + char *sep; + const char *errstr; - pch = strchr(digits, ch); - if (pch != NULL) { - if (n++ != 0 && val == 0) /*%< no leading zeros */ - return (0); - val *= 10; - val += (pch - digits); - if (val > 255) /*%< range */ - return (0); - continue; - } - if (ch == '.' || ch == '/') { - if (dst - odst > 3) /*%< too many octets? */ - return (0); - *dst++ = val; - if (ch == '/') - return (getbits(src, bitsp)); - val = 0; - n = 0; - continue; - } - return (0); + if (strlcpy(buf, src, sizeof buf) >= sizeof buf) { + errno = EMSGSIZE; + return (-1); } - if (n == 0) - return (0); - if (dst - odst > 3) /*%< too many octets? */ - return (0); - *dst++ = val; - return (1); -} -static int -inet_net_pton_ipv6(const char *src, u_char *dst, size_t size) { - static const char xdigits_l[] = "0123456789abcdef", - xdigits_u[] = "0123456789ABCDEF"; - u_char tmp[NS_IN6ADDRSZ], *tp, *endp, *colonp; - const char *xdigits, *curtok; - int ch, saw_xdigit; - u_int val; - int digits; - int bits; - size_t bytes; - int words; - int ipv4; + sep = strchr(buf, '/'); + if (sep != NULL) + *sep++ = '\0'; - memset((tp = tmp), '\0', NS_IN6ADDRSZ); - endp = tp + NS_IN6ADDRSZ; - colonp = NULL; - /* Leading :: requires some special handling. */ - if (*src == ':') - if (*++src != ':') - goto enoent; - curtok = src; - saw_xdigit = 0; - val = 0; - digits = 0; - bits = -1; - ipv4 = 0; - while ((ch = *src++) != '\0') { - const char *pch; + ret = inet_pton(AF_INET6, buf, &in6); + if (ret != 1) + return (-1); - if ((pch = strchr((xdigits = xdigits_l), ch)) == NULL) - pch = strchr((xdigits = xdigits_u), ch); - if (pch != NULL) { - val <<= 4; - val |= (pch - xdigits); - if (++digits > 4) - goto enoent; - saw_xdigit = 1; - continue; - } - if (ch == ':') { - curtok = src; - if (!saw_xdigit) { - if (colonp) - goto enoent; - colonp = tp; - continue; - } else if (*src == '\0') - goto enoent; - if (tp + NS_INT16SZ > endp) - return (0); - *tp++ = (u_char) (val >> 8) & 0xff; - *tp++ = (u_char) val & 0xff; - saw_xdigit = 0; - digits = 0; - val = 0; - continue; - } - if (ch == '.' && ((tp + NS_INADDRSZ) <= endp) && - getv4(curtok, tp, &bits) > 0) { - tp += NS_INADDRSZ; - saw_xdigit = 0; - ipv4 = 1; - break; /*%< '\\0' was seen by inet_pton4(). */ - } - if (ch == '/' && getbits(src, &bits) > 0) - break; - goto enoent; - } - if (saw_xdigit) { - if (tp + NS_INT16SZ > endp) - goto enoent; - *tp++ = (u_char) (val >> 8) & 0xff; - *tp++ = (u_char) val & 0xff; - } - if (bits == -1) + if (sep == NULL) bits = 128; - - words = (bits + 15) / 16; - if (words < 2) - words = 2; - if (ipv4) - words = 8; - endp = tmp + 2 * words; - - if (colonp != NULL) { - /* - * Since some memmove()'s erroneously fail to handle - * overlapping regions, we'll do the shift by hand. - */ - const int n = tp - colonp; - int i; - - if (tp == endp) - goto enoent; - for (i = 1; i <= n; i++) { - endp[- i] = colonp[n - i]; - colonp[n - i] = 0; + else { + bits = strtonum(sep, 0, 128, &errstr); + if (errstr) { + errno = EINVAL; + return (-1); } - tp = endp; } - if (tp != endp) - goto enoent; bytes = (bits + 7) / 8; - if (bytes > size) - goto emsgsize; - memcpy(dst, tmp, bytes); - return (bits); - - enoent: - errno = ENOENT; - return (-1); - - emsgsize: - errno = EMSGSIZE; - return (-1); -} - -/*% - * int - * inet_net_pton(af, src, dst, size) - * convert network number from presentation to network format. - * accepts hex octets, hex strings, decimal octets, and /CIDR. - * "size" is in bytes and describes "dst". - * return: - * number of bits, either imputed classfully or specified with /CIDR, - * or -1 if some failure occurred (check errno). ENOENT means it was - * not a valid network specification. - * author: - * Paul Vixie (ISC), June 1996 - */ -int -inet_net_pton(int af, const char *src, void *dst, size_t size) { - switch (af) { - case AF_INET: - return (inet_net_pton_ipv4(src, dst, size)); - case AF_INET6: - return (inet_net_pton_ipv6(src, dst, size)); - default: - errno = EAFNOSUPPORT; + if (bytes > size) { + errno = EMSGSIZE; return (-1); } + memcpy(dst, &in6.s6_addr, bytes); + return (bits); } /* @@ -408,5 +257,3 @@ inet_net_pton(int af, const char *src, void *dst, size_t size) { */ #undef inet_net_pton __weak_reference(__inet_net_pton, inet_net_pton); - -/*! \file */ diff --git a/lib/libc/stdtime/strptime.3 b/lib/libc/stdtime/strptime.3 index 7df73d2d080a..9456fa757b85 100644 --- a/lib/libc/stdtime/strptime.3 +++ b/lib/libc/stdtime/strptime.3 @@ -171,7 +171,7 @@ is taken as noon. The .Fa %Z format specifier only accepts time zone abbreviations of the local time zone, -or the value "GMT". +and the values "GMT", "UTC", or "Z". This limitation is because of ambiguity due to of the over loading of time zone abbreviations. One such example is diff --git a/lib/libc/stdtime/strptime.c b/lib/libc/stdtime/strptime.c index 5f1293c7a267..375e49146639 100644 --- a/lib/libc/stdtime/strptime.c +++ b/lib/libc/stdtime/strptime.c @@ -546,7 +546,8 @@ label: zonestr[cp - buf] = '\0'; tzset(); if (0 == strcmp(zonestr, "GMT") || - 0 == strcmp(zonestr, "UTC")) { + 0 == strcmp(zonestr, "UTC") || + 0 == strcmp(zonestr, "Z")) { *GMTp = 1; } else if (0 == strcmp(zonestr, tzname[0])) { tm->tm_isdst = 0; diff --git a/lib/libc/tests/net/Makefile b/lib/libc/tests/net/Makefile index 24cff61e8d24..ec0668633508 100644 --- a/lib/libc/tests/net/Makefile +++ b/lib/libc/tests/net/Makefile @@ -4,8 +4,10 @@ ATF_TESTS_C+= ether_test ATF_TESTS_C+= eui64_aton_test ATF_TESTS_C+= eui64_ntoa_test ATF_TESTS_CXX+= link_addr_test +ATF_TESTS_CXX+= inet_net_test CXXSTD.link_addr_test= c++20 +CXXSTD.inet_net_test= c++20 CFLAGS+= -I${.CURDIR} diff --git a/lib/libc/tests/net/inet_net_test.cc b/lib/libc/tests/net/inet_net_test.cc new file mode 100644 index 000000000000..60b60b152eca --- /dev/null +++ b/lib/libc/tests/net/inet_net_test.cc @@ -0,0 +1,333 @@ +/* + * SPDX-License-Identifier: ISC + * + * Copyright (c) 2025 Lexi Winter <ivy@FreeBSD.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. + */ + +/* + * Tests for inet_net_pton() and inet_net_ntop(). + */ + +#include <sys/types.h> +#include <sys/socket.h> + +#include <netinet/in.h> +#include <arpa/inet.h> + +#include <ranges> +#include <string> +#include <vector> + +#include <atf-c++.hpp> + +using namespace std::literals; + +/* + * inet_net_ntop() and inet_net_pton() for IPv4. + */ +ATF_TEST_CASE_WITHOUT_HEAD(inet_net_inet4) +ATF_TEST_CASE_BODY(inet_net_inet4) +{ + /* + * Define a list of addresses we want to check. Each address is passed + * to inet_net_pton() to convert it to an in_addr, then we convert the + * in_addr back to a string and compare it with the expected value. We + * want to test over-long prefixes here (such as 10.0.0.1/8), so we also + * specify what the result is expected to be. + */ + + struct test_addr { + std::string input; + int bits; + std::string output; + }; + + auto test_addrs = std::vector<test_addr>{ + // Simple prefixes that fall on octet boundaries. + { "10.0.0.0/8", 8, "10/8" }, + { "10.1.0.0/16", 16, "10.1/16" }, + { "10.1.2.0/24", 24, "10.1.2/24" }, + { "10.1.2.3/32", 32, "10.1.2.3/32" }, + + // Simple prefixes with the short-form address. + { "10/8", 8, "10/8" }, + { "10.1/16", 16, "10.1/16" }, + { "10.1.2/24", 24, "10.1.2/24" }, + + // A prefix that doesn't fall on an octet boundary. + { "10.1.64/18", 18, "10.1.64/18" }, + + // An overlong prefix with bits that aren't part of the prefix. + { "10.0.0.1/8", 8, "10/8" }, + }; + + for (auto const &addr: test_addrs) { + /* + * Convert the input string to an in_addr + bits, and make + * sure the result produces the number of bits we expected. + */ + + auto in = in_addr{}; + auto bits = inet_net_pton(AF_INET, addr.input.c_str(), + &in, sizeof(in)); + ATF_REQUIRE(bits != -1); + ATF_REQUIRE_EQ(bits, addr.bits); + + /* + * Convert the in_addr back to a string + */ + + /* + * XXX: Should there be a constant for the size of the result + * buffer? For now, use ADDRSTRLEN + 3 ("/32") + 1 (NUL). + * + * Fill the buffer with 'Z', so we can check the result was + * properly terminated. + */ + auto strbuf = std::vector<char>(INET_ADDRSTRLEN + 3 + 1, 'Z'); + auto ret = inet_net_ntop(AF_INET, &in, bits, + strbuf.data(), strbuf.size()); + ATF_REQUIRE(ret != NULL); + ATF_REQUIRE_EQ(ret, strbuf.data()); + + /* Make sure the result was NUL-terminated and find the NUL */ + ATF_REQUIRE(strbuf.size() >= 1); + auto end = std::ranges::find(strbuf, '\0'); + ATF_REQUIRE(end != strbuf.end()); + + /* + * Check the result matches what we expect. Use a temporary + * string here instead of std::ranges::equal because this + * means ATF can print the mismatch. + */ + auto str = std::string(std::ranges::begin(strbuf), end); + ATF_REQUIRE_EQ(str, addr.output); + } +} + +/* + * inet_net_ntop() and inet_net_pton() for IPv6. + */ +ATF_TEST_CASE_WITHOUT_HEAD(inet_net_inet6) +ATF_TEST_CASE_BODY(inet_net_inet6) +{ + /* + * Define a list of addresses we want to check. Each address is + * passed to inet_net_pton() to convert it to an in6_addr, then we + * convert the in6_addr back to a string and compare it with the + * expected value. We want to test over-long prefixes here (such + * as 2001:db8::1/32), so we also specify what the result is + * expected to be. + */ + + struct test_addr { + std::string input; + int bits; + std::string output; + }; + + auto test_addrs = std::vector<test_addr>{ + // A prefix with a trailing :: + { "2001:db8::/32", 32, "2001:db8::/32" }, + + // A prefix with a leading ::. Note that the output is + // different from the input because inet_ntop() renders + // this prefix with an IPv4 suffix for legacy reasons. + { "::ffff:0:0/96", 96, "::ffff:0.0.0.0/96" }, + + // The same prefix but with the IPv4 legacy form as input. + { "::ffff:0.0.0.0/96", 96, "::ffff:0.0.0.0/96" }, + + // A prefix with an infix ::. + { "2001:db8::1/128", 128, "2001:db8::1/128" }, + + // A prefix with bits set which are outside the prefix; + // these should be silently ignored. + { "2001:db8:1:1:1:1:1:1/32", 32, "2001:db8::/32" }, + + // As above but with infix ::. + { "2001:db8::1/32", 32, "2001:db8::/32" }, + + // A prefix with only ::, commonly used to represent the + // entire address space. + { "::/0", 0, "::/0" }, + + // A single address with no ::. + { "2001:db8:1:1:1:1:1:1/128", 128, "2001:db8:1:1:1:1:1:1/128" }, + + // A prefix with no ::. + { "2001:db8:1:1:0:0:0:0/64", 64, "2001:db8:1:1::/64" }, + + // A prefix which isn't on a 16-bit boundary. + { "2001:db8:c000::/56", 56, "2001:db8:c000::/56" }, + + // A prefix which isn't on a nibble boundary. + { "2001:db8:c100::/57", 57, "2001:db8:c100::/57" }, + + // An address without a prefix length, which should be treated + // as a /128. + { "2001:db8::", 128, "2001:db8::/128" }, + { "2001:db8::1", 128, "2001:db8::1/128" }, + + // Test vectors provided in PR bin/289198. + { "fe80::1/64", 64, "fe80::/64" }, + { "fe80::f000:74ff:fe54:bed2/64", + 64, "fe80::/64" }, + { "ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff/64", + 64, "ffff:ffff:ffff:ffff::/64" }, + { "ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff", 128, + "ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff/128" }, + }; + + for (auto const &addr: test_addrs) { + /* + * Convert the input string to an in6_addr + bits, and make + * sure the result produces the number of bits we expected. + */ + + auto in6 = in6_addr{}; + errno = 0; + auto bits = inet_net_pton(AF_INET6, addr.input.c_str(), + &in6, sizeof(in6)); + ATF_REQUIRE(bits != -1); + ATF_REQUIRE_EQ(bits, addr.bits); + + /* + * Convert the in6_addr back to a string + */ + + /* + * XXX: Should there be a constant for the size of the result + * buffer? For now, use ADDRSTRLEN + 4 ("/128") + 1 (NUL). + * + * Fill the buffer with 'Z', so we can check the result was + * properly terminated. + */ + auto strbuf = std::vector<char>(INET6_ADDRSTRLEN + 4 + 1, 'Z'); + auto ret = inet_net_ntop(AF_INET6, &in6, bits, + strbuf.data(), strbuf.size()); + ATF_REQUIRE(ret != NULL); + ATF_REQUIRE_EQ(ret, strbuf.data()); + + /* Make sure the result was NUL-terminated and find the NUL */ + ATF_REQUIRE(strbuf.size() >= 1); + auto end = std::ranges::find(strbuf, '\0'); + ATF_REQUIRE(end != strbuf.end()); + + /* + * Check the result matches what we expect. Use a temporary + * string here instead of std::ranges::equal because this + * means ATF can print the mismatch. + */ + auto str = std::string(std::ranges::begin(strbuf), end); + ATF_REQUIRE_EQ(str, addr.output); + } +} + +ATF_TEST_CASE_WITHOUT_HEAD(inet_net_pton_invalid) +ATF_TEST_CASE_BODY(inet_net_pton_invalid) +{ + auto ret = int{}; + auto addr4 = in_addr{}; + auto str4 = "10.0.0.0"s; + auto addr6 = in6_addr{}; + auto str6 = "2001:db8::"s; + + /* Passing an address which is too short should be an error */ + ret = inet_net_pton(AF_INET6, str6.c_str(), &addr6, sizeof(addr6) - 1); + ATF_REQUIRE_EQ(ret, -1); + + ret = inet_net_pton(AF_INET, str4.c_str(), &addr4, sizeof(addr4) - 1); + ATF_REQUIRE_EQ(ret, -1); + + /* Test some generally invalid addresses. */ + auto invalid4 = std::vector<std::string>{ + // Prefix length too big + "10.0.0.0/33", + // Prefix length is negative + "10.0.0.0/-1", + // Prefix length is not a number + "10.0.0.0/foo", + // Input is not a network prefix + "this is not an IP address", + }; + + for (auto const &addr: invalid4) { + auto ret = inet_net_pton(AF_INET, addr.c_str(), &addr4, + sizeof(addr4)); + ATF_REQUIRE_EQ(ret, -1); + } + + auto invalid6 = std::vector<std::string>{ + // Prefix length too big + "2001:db8::/129", + // Prefix length is negative + "2001:db8::/-1", + // Prefix length is not a number + "2001:db8::/foo", + // Input is not a network prefix + "this is not an IP address", + }; + + for (auto const &addr: invalid6) { + auto ret = inet_net_pton(AF_INET6, addr.c_str(), &addr6, + sizeof(addr6)); + ATF_REQUIRE_EQ(ret, -1); + } +} + +ATF_TEST_CASE_WITHOUT_HEAD(inet_net_ntop_invalid) +ATF_TEST_CASE_BODY(inet_net_ntop_invalid) +{ + auto addr4 = in_addr{}; + auto addr6 = in6_addr{}; + auto strbuf = std::vector<char>(INET6_ADDRSTRLEN + 4 + 1); + + /* + * Passing a buffer which is too small should not overrun the buffer. + * Test this by initialising the buffer to 'Z', and only providing + * part of it to the function. + */ + + std::ranges::fill(strbuf, 'Z'); + auto ret = inet_net_ntop(AF_INET6, &addr6, 128, strbuf.data(), 1); + ATF_REQUIRE_EQ(ret, nullptr); + ATF_REQUIRE_EQ(strbuf[1], 'Z'); + + std::ranges::fill(strbuf, 'Z'); + ret = inet_net_ntop(AF_INET, &addr4, 32, strbuf.data(), 1); + ATF_REQUIRE_EQ(ret, nullptr); + ATF_REQUIRE_EQ(strbuf[1], 'Z'); + + /* Check that invalid prefix lengths return an error */ + + ret = inet_net_ntop(AF_INET6, &addr6, 129, strbuf.data(), strbuf.size()); + ATF_REQUIRE_EQ(ret, nullptr); + ret = inet_net_ntop(AF_INET6, &addr6, -1, strbuf.data(), strbuf.size()); + ATF_REQUIRE_EQ(ret, nullptr); + + ret = inet_net_ntop(AF_INET, &addr4, 33, strbuf.data(), strbuf.size()); + ATF_REQUIRE_EQ(ret, nullptr); + ret = inet_net_ntop(AF_INET, &addr4, -1, strbuf.data(), strbuf.size()); + ATF_REQUIRE_EQ(ret, nullptr); +} + +ATF_INIT_TEST_CASES(tcs) +{ + ATF_ADD_TEST_CASE(tcs, inet_net_inet4); + ATF_ADD_TEST_CASE(tcs, inet_net_inet6); + ATF_ADD_TEST_CASE(tcs, inet_net_pton_invalid); + ATF_ADD_TEST_CASE(tcs, inet_net_ntop_invalid); +} diff --git a/lib/libsys/kqueue.2 b/lib/libsys/kqueue.2 index 96c9b0222a37..a8ebabf02cf7 100644 --- a/lib/libsys/kqueue.2 +++ b/lib/libsys/kqueue.2 @@ -97,10 +97,37 @@ system call also creates a new kernel event queue, and additionally takes a .Fa flags argument, which is a bitwise-inclusive OR of the following flags: -.Bl -tag -width "KQUEUE_CLOEXEC" +.Bl -tag -width "KQUEUE_CPONFORK" .It Dv KQUEUE_CLOEXEC The returned file descriptor is automatically closed on .Xr execve 2 +.It Dv KQUEUE_CPONFORK +When this flag is set, the created kqueue is copied into +the child process on +.Xr fork 2 +calls. +The kqueue descriptor index of the new kqueue will be inherited by the child, +that is, the numeric value of the descriptor will remain the same. +.Pp +Copying is deep, that is, each registered event in the original kqueue is +copied (and not shared) into the new kqueue. +This is contrary to how other descriptor types are handled upon +.Xr fork 2 , +where the copied file descriptor references the same file object +as the source descriptor (shallow copy). +.Pp +By default, in other words, when the flag is not set, kqueues from +the parent are not copied on fork to the child process. +The corresponding file descriptor indeces are unused in the child. +.Pp +Registered events that reference file descriptors which are not +duplicated on fork, are not copied into the new kqueue. +For instance, if the event references a file descriptor opened with the +.Dv O_CLOEXEC +flag set, it is not copied. +Similarly, if event references a kqueue opened without the +.Dv KQUEUE_CPONFORK +flag, the event is not copied. .El .Pp The diff --git a/lib/libutil/mntopts.c b/lib/libutil/mntopts.c index 07d3dd6d98a3..4a064a086fd5 100644 --- a/lib/libutil/mntopts.c +++ b/lib/libutil/mntopts.c @@ -145,6 +145,18 @@ checkpath_allow_file(const char *path, char *resolved) return (0); } +static char * +prependdevtopath(const char *path, char *buf, u_long buflen) +{ + u_long len; + + if ((len = strlen(_PATH_DEV) + strlen(path) + 1) > buflen) + return NULL; + strncpy(buf, _PATH_DEV, len); + strncat(buf, path, len - sizeof(_PATH_DEV)); + return (buf); +} + /* * Get the mount point information for name. Name may be mount point name * or device name (with or without /dev/ preprended). @@ -153,19 +165,27 @@ struct statfs * getmntpoint(const char *name) { struct stat devstat, mntdevstat; - char device[sizeof(_PATH_DEV) - 1 + MNAMELEN]; - char *ddevname; + char *devname; struct statfs *mntbuf, *statfsp; - int i, mntsize, isdev; - u_long len; + int i, len, isdev, mntsize, mntfromnamesize; + char device[sizeof(_PATH_DEV) - 1 + MNAMELEN]; + u_long devlen; - if (stat(name, &devstat) != 0) + devlen = sizeof(device); + /* + * Note that stat(NULL, &statbuf) returns -1 (EBADF) which will + * cause us to return NULL if prependdevtopath() returns NULL. + */ + if (stat(name, &devstat) != 0 && + (name[0] != '/' && + stat(prependdevtopath(name, device, devlen), &devstat) != 0)) return (NULL); if (S_ISCHR(devstat.st_mode) || S_ISBLK(devstat.st_mode)) isdev = 1; else isdev = 0; mntsize = getmntinfo(&mntbuf, MNT_NOWAIT); + mntfromnamesize = sizeof(statfsp->f_mntfromname); for (i = 0; i < mntsize; i++) { statfsp = &mntbuf[i]; if (isdev == 0) { @@ -173,19 +193,20 @@ getmntpoint(const char *name) continue; return (statfsp); } - ddevname = statfsp->f_mntfromname; - if (*ddevname != '/') { - if ((len = strlen(_PATH_DEV) + strlen(ddevname) + 1) > - sizeof(statfsp->f_mntfromname) || - len > sizeof(device)) + devname = statfsp->f_mntfromname; + if (*devname == '/') { + if (stat(devname, &mntdevstat) != 0) + continue; + } else { + devname = prependdevtopath(devname, device, devlen); + if (devname == NULL || + (len = strlen(devname)) > mntfromnamesize) + continue; + if (stat(devname, &mntdevstat) != 0) continue; - strncpy(device, _PATH_DEV, len); - strncat(device, ddevname, len); - if (stat(device, &mntdevstat) == 0) - strncpy(statfsp->f_mntfromname, device, len); + strncpy(statfsp->f_mntfromname, devname, len); } - if (stat(ddevname, &mntdevstat) == 0 && - S_ISCHR(mntdevstat.st_mode) && + if (S_ISCHR(mntdevstat.st_mode) && mntdevstat.st_rdev == devstat.st_rdev) return (statfsp); } diff --git a/libexec/rc/rc.conf b/libexec/rc/rc.conf index b7cce777c4f6..ada9094360f6 100644 --- a/libexec/rc/rc.conf +++ b/libexec/rc/rc.conf @@ -24,7 +24,7 @@ : ${_localbase:="$(/sbin/sysctl -n user.localbase 2> /dev/null)"} : ${_localbase:="/usr/local"} -# rc_debug can't be set here without interferring with rc.subr's setting it +# rc_debug can't be set here without interfering with rc.subr's setting it # when the kenv variable rc.debug is set. #rc_debug="NO" # Set to YES to enable debugging output from rc.d rc_info="NO" # Enables display of informational messages at boot. @@ -707,6 +707,7 @@ osrelease_enable="YES" # Update /var/run/os-release on boot (or NO). osrelease_file="/var/run/os-release" # File to update for os-release. osrelease_perms="444" # Default permission for os-release file. dmesg_enable="YES" # Save dmesg(8) to /var/run/dmesg.boot +dmesg_umask="022" # Default umask for /var/run/dmesg.boot file. watchdogd_enable="NO" # Start the software watchdog daemon watchdogd_flags="" # Flags to watchdogd (if enabled) watchdogd_timeout="" # watchdogd timeout, overrides -t in watchdogd_flags diff --git a/libexec/rc/rc.d/dmesg b/libexec/rc/rc.d/dmesg index 51e35d5d4e80..736449f3b159 100755 --- a/libexec/rc/rc.d/dmesg +++ b/libexec/rc/rc.d/dmesg @@ -19,7 +19,7 @@ stop_cmd=":" do_dmesg() { rm -f ${dmesg_file} - ( umask 022 ; /sbin/dmesg $rc_flags > ${dmesg_file} ) + ( umask "${dmesg_umask}" ; /sbin/dmesg $rc_flags > ${dmesg_file} ) } load_rc_config $name diff --git a/libexec/rc/rc.d/hostapd b/libexec/rc/rc.d/hostapd index 264cb4ef476b..15b20c95c488 100755 --- a/libexec/rc/rc.d/hostapd +++ b/libexec/rc/rc.d/hostapd @@ -11,15 +11,6 @@ name="hostapd" desc="Authenticator for IEEE 802.11 networks" command=${hostapd_program} -start_postcmd="hostapd_poststart" - -hostapd_poststart() { - if [ -n "$ifn" ]; then - ifconfig ${ifn} down - sleep 2 - ifconfig ${ifn} up - fi -} ifn="$2" if [ -z "$ifn" ]; then diff --git a/release/Makefile b/release/Makefile index 13532097d56c..a777ded3c429 100644 --- a/release/Makefile +++ b/release/Makefile @@ -430,6 +430,8 @@ pkg-stage: dvd mkdir -p ${.OBJDIR}/dvd/packages/repos/ cp ${.CURDIR}/scripts/FreeBSD_install_cdrom.conf \ ${.OBJDIR}/dvd/packages/repos/ + echo "./packages/repos type=dir uname=root gname=wheel mode=0755" >> dvd/METALOG + echo "./packages/repos/FreeBSD_install_cdrom.conf type=file uname=root gname=wheel mode=0644" >> dvd/METALOG .endif touch ${.TARGET} diff --git a/release/Makefile.oracle b/release/Makefile.oracle index 3573f29b96c1..6d792cc9fd30 100644 --- a/release/Makefile.oracle +++ b/release/Makefile.oracle @@ -24,21 +24,28 @@ # Syncing to all sites should take 2-3 hours after this final step. ORACLE_BASENAME= ${OSRELEASE}-${BUILDDATE}${GITREV:C/^(.+)/-\1/} -ORACLE_PORTS_LIST= ftp/curl emulators/qemu@tools CLEANFILES+= cw-oracle-portinstall cw-oracle-portinstall: .PHONY -.if !exists(/usr/local/bin/curl) || !exists(/usr/local/bin/qemu-img) -. if !exists(${PORTSDIR}/Makefile) -. if !exists(/usr/local/sbin/pkg-static) +.if (!exists(/usr/local/bin/curl) || !exists(/usr/local/bin/qemu-img)) && !exists(${PORTSDIR}/Makefile) +. if !exists(/usr/local/sbin/pkg-static) env ASSUME_ALWAYS_YES=yes pkg bootstrap -yf -. endif - env ASSUME_ALWAYS_YES=yes pkg install -y ${ORACLE_PORTS_LIST} +. endif +.endif +.if !exists(/usr/local/bin/curl) +. if !exists(${PORTSDIR}/Makefile) + env ASSUME_ALWAYS_YES=yes pkg install -y ftp/curl . else env UNAME_r=${UNAME_r} make -C \ ${PORTSDIR}/ftp/curl \ BATCH=1 WRKDIRPREFIX=/tmp/ports DISTDIR=/tmp/distfiles \ all install clean +. endif +.endif +.if !exists(/usr/local/bin/qemu-img) +. if !exists(${PORTSDIR}/Makefile) + env ASSUME_ALWAYS_YES=yes pkg install -y emulators/qemu@tools +. else env UNAME_r=${UNAME_r} FLAVOR=tools make -C \ ${PORTSDIR}/emulators/qemu \ BATCH=1 WRKDIRPREFIX=/tmp/ports DISTDIR=/tmp/distfiles \ diff --git a/release/packages/ucl/caroot.ucl b/release/packages/ucl/caroot.ucl index e43c9d0771f2..f7d0dd8acb7f 100644 --- a/release/packages/ucl/caroot.ucl +++ b/release/packages/ucl/caroot.ucl @@ -4,6 +4,6 @@ deps { } } scripts: { - post-install = "/usr/sbin/certctl -D${PKG_ROOTDIR}/ rehash" - post-uninstall = "/usr/sbin/certctl -D${PKG_ROOTDIR}/ rehash" + post-install = "/usr/sbin/certctl -D${PKG_ROOTDIR}/ ${PKG_METALOG:+-U -M $PKG_METALOG} rehash" + post-uninstall = "/usr/sbin/certctl -D${PKG_ROOTDIR}/ ${PKG_METALOG:+-U -M $PKG_METALOG} rehash" } diff --git a/release/scripts/pkg-stage.sh b/release/scripts/pkg-stage.sh index f9216b52b088..6d460a83e1da 100755 --- a/release/scripts/pkg-stage.sh +++ b/release/scripts/pkg-stage.sh @@ -110,7 +110,7 @@ ${PKGCMD} repo ${PKG_REPODIR} if [ $NO_ROOT ]; then mtree -c -p $ROOTDIR | mtree -C -k type,mode,link,size | \ - grep '^./packages/' >> $ROOTDIR/METALOG + grep '^./packages[/ ]' >> $ROOTDIR/METALOG fi # Always exit '0', even if pkg(8) complains about conflicts. diff --git a/release/tools/vmimage.subr b/release/tools/vmimage.subr index c3c917dcd642..99e1936296e1 100644 --- a/release/tools/vmimage.subr +++ b/release/tools/vmimage.subr @@ -213,16 +213,6 @@ vm_extra_install_packages() { install -y -r ${PKG_REPO_NAME} $pkg done metalog_add_data ./var/db/pkg/local.sqlite - - # Add some database files which are created by pkg triggers; - # at some point in the future the tools which create these - # files should probably learn how to record them in METALOG - # (which would simplify no-root installworld as well). - metalog_add_data ./etc/login.conf.db - metalog_add_data ./etc/passwd - metalog_add_data ./etc/pwd.db - metalog_add_data ./etc/spwd.db 600 - metalog_add_data ./var/db/services.db else if [ -n "${WITHOUT_QEMU}" ]; then return 0 @@ -290,10 +280,42 @@ buildfs() { cat ${DESTDIR}/METALOG.pkg >> ${DESTDIR}/METALOG fi - # Sort METALOG file; makefs produces directories with 000 permissions - # if their contents are seen before the directories themselves. - env -i LC_COLLATE=C sort -u ${DESTDIR}/METALOG > ${DESTDIR}/METALOG.sorted - mv ${DESTDIR}/METALOG.sorted ${DESTDIR}/METALOG + if [ -n "${NO_ROOT}" ]; then + # Check for any directories in the staging tree which weren't + # recorded in METALOG, and record them now. This is a quick hack + # to avoid creating unusable VM images and should go away once + # the bugs which produce such unlogged directories are gone. + grep type=dir ${DESTDIR}/METALOG | + cut -f 1 -d ' ' | + sort -u > ${DESTDIR}/METALOG.dirs + ( cd ${DESTDIR} && find . -type d ) | + sort | + comm -23 - ${DESTDIR}/METALOG.dirs > ${DESTDIR}/METALOG.missingdirs + if [ -s ${DESTDIR}/METALOG.missingdirs ]; then + echo "WARNING: Directories exist but were not in METALOG" + cat ${DESTDIR}/METALOG.missingdirs + fi + while read DIR; do + metalog_add_data ${DIR} + done < ${DESTDIR}/METALOG.missingdirs + + if [ -z "${NOPKGBASE}" ]; then + # Add some database files which are created by pkg triggers; + # at some point in the future the tools which create these + # files should probably learn how to record them in METALOG + # (which would simplify no-root installworld as well). + metalog_add_data ./etc/login.conf.db + metalog_add_data ./etc/passwd + metalog_add_data ./etc/pwd.db + metalog_add_data ./etc/spwd.db 600 + metalog_add_data ./var/db/services.db + fi + + # Sort METALOG file; makefs produces directories with 000 permissions + # if their contents are seen before the directories themselves. + env -i LC_COLLATE=C sort -u ${DESTDIR}/METALOG > ${DESTDIR}/METALOG.sorted + mv ${DESTDIR}/METALOG.sorted ${DESTDIR}/METALOG + fi case "${VMFS}" in ufs) diff --git a/sbin/devd/snd.conf b/sbin/devd/snd.conf index cf9cd9e94191..a45f427f6c79 100644 --- a/sbin/devd/snd.conf +++ b/sbin/devd/snd.conf @@ -5,6 +5,9 @@ notify 0 { match "type" "IN"; match "cdev" "dsp[0-9]+"; + # Other audio servers or device switching commands can be used here + # instead of virtual_oss(8). + # # FIXME: We are hardcoding /dev/vdsp.ctl here, simply because it is a # common virtual_oss control device name. Until we find a proper way to # define control devices here, /dev/vdsp.ctl can be changed to the @@ -18,6 +21,6 @@ notify 0 { match "type" "OUT"; match "cdev" "dsp[0-9]+"; - # FIXME: See comment above. + # See comment above. action "/usr/sbin/virtual_oss_cmd /dev/vdsp.ctl -P /dev/$cdev"; }; diff --git a/sbin/geom/core/geom.c b/sbin/geom/core/geom.c index 496123f08274..2de696ce6a43 100644 --- a/sbin/geom/core/geom.c +++ b/sbin/geom/core/geom.c @@ -968,7 +968,7 @@ list_one_geom(struct ggeom *gp) xo_emit("{Tc:Providers}\n"); n = 1; LIST_FOREACH(pp, &gp->lg_provider, lg_provider) { - xo_emit("{T:/%u} ", n++); + xo_emit("{T:/%u}. ", n++); xo_open_instance("provider"); list_one_provider(pp, " "); xo_close_instance("provider"); @@ -980,7 +980,7 @@ list_one_geom(struct ggeom *gp) xo_emit("{Tc:Consumers}\n"); n = 1; LIST_FOREACH(cp, &gp->lg_consumer, lg_consumer) { - xo_emit("{T:/%u} ", n++); + xo_emit("{T:/%u}. ", n++); xo_open_instance("consumer"); list_one_consumer(cp, " "); xo_close_instance("consumer"); @@ -1189,10 +1189,11 @@ status_one_geom(struct ggeom *gp, int script, int name_len, int status_len) gotone = len = 0; xo_open_instance("status"); LIST_FOREACH(cp, &gp->lg_consumer, lg_consumer) { + if (cp->lg_provider == NULL) + continue; + cstate = status_one_consumer(cp, "state"); csyncr = status_one_consumer(cp, "synchronized"); - if (cstate == NULL && csyncr == NULL) - continue; if (!gotone || script) { if (!gotone) { xo_emit("{:name/%*s} {:status/%*s} ", @@ -1206,14 +1207,17 @@ status_one_geom(struct ggeom *gp, int script, int name_len, int status_len) xo_open_instance("components"); if (cstate != NULL && csyncr != NULL) { - xo_emit("{P:/%*s}{:compontent} ({:state}, {:synchronized})\n", + xo_emit("{P:/%*s}{:component} ({:state}, {:synchronized})\n", len, "", cp->lg_provider->lg_name, cstate, csyncr); } else if (cstate != NULL) { - xo_emit("{P:/%*s}{:compontent} ({:state})\n", + xo_emit("{P:/%*s}{:component} ({:state})\n", len, "", cp->lg_provider->lg_name, cstate); - } else { - xo_emit("{P:/%*s}{:compontent} ({:synchronized})\n", + } else if (csyncr != NULL) { + xo_emit("{P:/%*s}{:component} ({:synchronized})\n", len, "", cp->lg_provider->lg_name, csyncr); + } else { + xo_emit("{P:/%*s}{:component}\n", + len, "", cp->lg_provider->lg_name); } xo_close_instance("components"); gotone = 1; @@ -1224,7 +1228,7 @@ status_one_geom(struct ggeom *gp, int script, int name_len, int status_len) xo_emit("{:name/%*s} {:status/%*s} ", name_len, name, status_len, status); xo_open_list("components"); xo_open_instance("components"); - xo_emit("{P:/%*s}{d:compontent}\n", len, "", "N/A"); + xo_emit("{P:/%*s}{d:component}\n", len, "", "N/A"); xo_close_instance("components"); } xo_close_list("components"); @@ -1258,11 +1262,11 @@ status_one_geom_prs(struct ggeom *gp, int script, int name_len, int status_len) } gotone = len = 0; LIST_FOREACH(cp, &gp->lg_consumer, lg_consumer) { - cstate = status_one_consumer(cp, "state"); - csyncr = status_one_consumer(cp, "synchronized"); - if (cstate == NULL && csyncr == NULL) + if (cp->lg_provider == NULL) continue; + cstate = status_one_consumer(cp, "state"); + csyncr = status_one_consumer(cp, "synchronized"); if (!gotone || script) { if (!gotone) { xo_emit("{:name/%*s} {:status/%*s} ", @@ -1276,14 +1280,17 @@ status_one_geom_prs(struct ggeom *gp, int script, int name_len, int status_len) xo_open_instance("component"); if (cstate != NULL && csyncr != NULL) { - xo_emit("{P:/%*s}{:compontent} ({:state}, {:synchronized})\n", + xo_emit("{P:/%*s}{:component} ({:state}, {:synchronized})\n", len, "", cp->lg_provider->lg_name, cstate, csyncr); } else if (cstate != NULL) { - xo_emit("{P:/%*s}{:compontent} ({:state})\n", + xo_emit("{P:/%*s}{:component} ({:state})\n", len, "", cp->lg_provider->lg_name, cstate); - } else { - xo_emit("{P:/%*s}{:compontent} ({:synchronized})\n", + } else if (csyncr != NULL) { + xo_emit("{P:/%*s}{:component} ({:synchronized})\n", len, "", cp->lg_provider->lg_name, csyncr); + } else { + xo_emit("{P:/%*s}{:component}\n", + len, "", cp->lg_provider->lg_name); } xo_close_instance("component"); gotone = 1; @@ -1294,7 +1301,7 @@ status_one_geom_prs(struct ggeom *gp, int script, int name_len, int status_len) xo_emit("{:name/%*s} {:status/%*s} ", name_len, name, status_len, status); xo_open_list("components"); xo_open_instance("components"); - xo_emit("{P:/%*s}{d:compontent}\n", len, "", "N/A"); + xo_emit("{P:/%*s}{d:component}\n", len, "", "N/A"); xo_close_instance("components"); } xo_close_list("components"); diff --git a/secure/lib/libcrypto/Makefile b/secure/lib/libcrypto/Makefile index 5cb3f5a7c3fe..738de3479987 100644 --- a/secure/lib/libcrypto/Makefile +++ b/secure/lib/libcrypto/Makefile @@ -682,6 +682,9 @@ buildasm cleanasm: ${.TARGET:S/build/all/:S/asm$//} .endfor +HAS_TESTS= yes +SUBDIR.${MK_TESTS}= tests + .include <bsd.lib.mk> .if ${MACHINE} == "powerpc" diff --git a/secure/lib/libcrypto/Makefile.inc b/secure/lib/libcrypto/Makefile.inc index 4d5e9c68a1fe..5b281166df61 100644 --- a/secure/lib/libcrypto/Makefile.inc +++ b/secure/lib/libcrypto/Makefile.inc @@ -3,9 +3,6 @@ PACKAGE= openssl LIB_PACKAGE= -# OpenSSL version used for manual page generation -.include "Makefile.version" - LCRYPTO_SRC= ${SRCTOP}/crypto/openssl LCRYPTO_DOC= ${LCRYPTO_SRC}/doc @@ -15,10 +12,7 @@ CFLAGS+= -I${LCRYPTO_SRC}/providers/common/include CFLAGS+= -I${LCRYPTO_SRC}/providers/fips/include CFLAGS+= -I${LCRYPTO_SRC}/providers/implementations/include -.include "Makefile.common" +.SUFFIXES: .pc +.PATH.pc: ${LCRYPTO_SRC}/exporters -.for pcfile in ${PCFILES} -${pcfile}: ${pcfile}.in - sed -e 's,@openssl_ver@,${OPENSSL_VER},g' ${.ALLSRC} > ${.TARGET} -.endfor -CLEANFILES+= ${PCFILES} +.include "Makefile.common" diff --git a/secure/lib/libcrypto/Makefile.version b/secure/lib/libcrypto/Makefile.version deleted file mode 100644 index 81636b8adfe8..000000000000 --- a/secure/lib/libcrypto/Makefile.version +++ /dev/null @@ -1,2 +0,0 @@ -OPENSSL_VER= 3.5.4 -OPENSSL_DATE= 2025-09-30 diff --git a/secure/lib/libcrypto/tests/Makefile b/secure/lib/libcrypto/tests/Makefile new file mode 100644 index 000000000000..d309a1b1100c --- /dev/null +++ b/secure/lib/libcrypto/tests/Makefile @@ -0,0 +1,5 @@ +PACKAGE= tests + +ATF_TESTS_SH+= libcrypto_test + +.include <bsd.test.mk> diff --git a/secure/lib/libcrypto/tests/libcrypto_test.sh b/secure/lib/libcrypto/tests/libcrypto_test.sh new file mode 100755 index 000000000000..83ef1686089d --- /dev/null +++ b/secure/lib/libcrypto/tests/libcrypto_test.sh @@ -0,0 +1,40 @@ +# SPDX-License-Identifier: BSD-2-Clause +# +# Copyright (c) 2025 Enji Cooper + +atf_test_case legacy_provider +legacy_provider_head() { + atf_set "descr" "daemon should drop privileges" +} +legacy_provider_body() { + local passphrase="test" + local plaintext="test" + + export OPENSSL_CONF="$PWD/openssl.conf" + cat > "$OPENSSL_CONF" <<EOF +HOME = . + +openssl_conf = openssl_init + +[openssl_init] +providers = provider_sect + +# List of providers to load +[provider_sect] +default = default_sect +legacy = legacy_sect + +[default_sect] +activate = 1 + +[legacy_sect] +activate = 1 +EOF + + echo "$plaintext" | atf_check -s exit:0 -e empty -o not-empty \ + openssl rc4 -e -k "$passphrase" -a -pbkdf2 +} + +atf_init_test_cases() { + atf_add_test_case legacy_provider +} diff --git a/share/examples/bhyve/vmrun.sh b/share/examples/bhyve/vmrun.sh index 52935363023a..e0052e781dc0 100755 --- a/share/examples/bhyve/vmrun.sh +++ b/share/examples/bhyve/vmrun.sh @@ -268,8 +268,10 @@ fi if [ -z "$firmware" ]; then case ${platform} in amd64) - firmware="${efi_firmware}" - firmware_pkg="edk2-bhyve" + if [ ${efi_mode} -ne 0 ]; then + firmware="${efi_firmware}" + firmware_pkg="edk2-bhyve" + fi ;; arm64) firmware="${uboot_firmware}" diff --git a/share/man/man4/Makefile b/share/man/man4/Makefile index 6e076722c786..e94e832a3f94 100644 --- a/share/man/man4/Makefile +++ b/share/man/man4/Makefile @@ -69,6 +69,12 @@ MAN= aac.4 \ audit.4 \ auditpipe.4 \ aue.4 \ + ${_aw_gpio.4} \ + ${_aw_mmc.4} \ + ${_aw_rtc.4} \ + ${_aw_sid.4} \ + ${_aw_spi.4} \ + ${_aw_syscon.4} \ axe.4 \ axge.4 \ axp.4 \ @@ -962,6 +968,12 @@ _vmx.4= vmx.4 .if ${MACHINE_CPUARCH} == "arm" || ${MACHINE_CPUARCH} == "aarch64" || \ ${MACHINE_CPUARCH} == "riscv" +_aw_gpio.4= aw_gpio.4 +_aw_mmc.4= aw_mmc.4 +_aw_rtc.4= aw_rtc.4 +_aw_sid.4= aw_sid.4 +_aw_spi.4= aw_spi.4 +_aw_syscon.4= aw_syscon.4 _cgem.4= cgem.4 MLINKS+=cgem.4 if_cgem.4 .endif diff --git a/share/man/man4/man4.arm/aw_gpio.4 b/share/man/man4/aw_gpio.4 index ef9fc1fe2733..5cbc7562d9bd 100644 --- a/share/man/man4/man4.arm/aw_gpio.4 +++ b/share/man/man4/aw_gpio.4 @@ -23,7 +23,7 @@ .\" SUCH DAMAGE. .\" .Dd October 8, 2024 -.Dt AW_GPIO 4 arm +.Dt AW_GPIO 4 .Os .Sh NAME .Nm aw_gpio diff --git a/share/man/man4/man4.arm/aw_mmc.4 b/share/man/man4/aw_mmc.4 index e3f961fa5067..072835cce7c0 100644 --- a/share/man/man4/man4.arm/aw_mmc.4 +++ b/share/man/man4/aw_mmc.4 @@ -22,8 +22,8 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd Dec 25, 2017 -.Dt AW_MMC 4 arm +.Dd October 20, 2025 +.Dt AW_MMC 4 .Os .Sh NAME .Nm aw_mmc @@ -48,6 +48,8 @@ allwinner,sun5i-a13-mmc allwinner,sun7i-a20-mmc .It allwinner,sun50i-a64-mmc +.It +allwinner,sun20i-d1-mmc .El .Sh SYSCTL VARIABLES The following read-only variables are available via diff --git a/share/man/man4/man4.arm/aw_rtc.4 b/share/man/man4/aw_rtc.4 index 87212d85116c..1296cd41da68 100644 --- a/share/man/man4/man4.arm/aw_rtc.4 +++ b/share/man/man4/aw_rtc.4 @@ -23,7 +23,7 @@ .\" SUCH DAMAGE. .\" .Dd December 10, 2024 -.Dt AW_RTC 4 arm +.Dt AW_RTC 4 .Os .Sh NAME .Nm aw_rtc diff --git a/share/man/man4/man4.arm/aw_sid.4 b/share/man/man4/aw_sid.4 index 8b3691259f22..5cd2f3d5e072 100644 --- a/share/man/man4/man4.arm/aw_sid.4 +++ b/share/man/man4/aw_sid.4 @@ -25,7 +25,7 @@ .\" SUCH DAMAGE. .\" .Dd October 8, 2024 -.Dt AW_SID 4 arm +.Dt AW_SID 4 .Os .Sh NAME .Nm aw_sid diff --git a/share/man/man4/man4.arm/aw_spi.4 b/share/man/man4/aw_spi.4 index d0566a45b54b..f8985e1c16bb 100644 --- a/share/man/man4/man4.arm/aw_spi.4 +++ b/share/man/man4/aw_spi.4 @@ -23,7 +23,7 @@ .\" SUCH DAMAGE. .\" .Dd May 17, 2018 -.Dt AW_SPI 4 arm +.Dt AW_SPI 4 .Os .Sh NAME .Nm aw_spi diff --git a/share/man/man4/man4.arm/aw_syscon.4 b/share/man/man4/aw_syscon.4 index 97f01196a8a6..e32f329e489a 100644 --- a/share/man/man4/man4.arm/aw_syscon.4 +++ b/share/man/man4/aw_syscon.4 @@ -25,7 +25,7 @@ .\" SUCH DAMAGE. .\" .Dd November 11, 2024 -.Dt AW_SYSCON 4 arm +.Dt AW_SYSCON 4 .Os .Sh NAME .Nm aw_syscon diff --git a/share/man/man4/linprocfs.4 b/share/man/man4/linprocfs.4 index 53940d7c02b0..dcd1c642b409 100644 --- a/share/man/man4/linprocfs.4 +++ b/share/man/man4/linprocfs.4 @@ -9,7 +9,7 @@ .Nd Linux process file system .Sh SYNOPSIS .Bd -literal -linproc /compat/linux/proc linprocfs rw 0 0 +linprocfs /compat/linux/proc linprocfs rw 0 0 .Ed .Sh DESCRIPTION The Linux process file system, or @@ -138,7 +138,7 @@ To mount a file system on .Pa /compat/linux/proc : .Pp -.Dl "mount -t linprocfs linproc /compat/linux/proc" +.Dl "mount -t linprocfs linprocfs /compat/linux/proc" .Sh SEE ALSO .Xr mount 2 , .Xr unmount 2 , diff --git a/share/man/man4/linsysfs.4 b/share/man/man4/linsysfs.4 index 12729a814085..045e1af89173 100644 --- a/share/man/man4/linsysfs.4 +++ b/share/man/man4/linsysfs.4 @@ -9,7 +9,7 @@ .Nd Linux kernel objects file system .Sh SYNOPSIS .Bd -literal -linsys /compat/linux/sys linsysfs rw 0 0 +linsysfs /compat/linux/sys linsysfs rw 0 0 .Ed .Sh DESCRIPTION The @@ -66,7 +66,7 @@ The PCI device hierarchy node. .Sh EXAMPLES The most common usage follows: .Pp -.Dl "mount -t linsysfs linsys /compat/linux/sys" +.Dl "mount -t linsysfs linsysfs /compat/linux/sys" .Pp where .Pa /compat/linux/sys diff --git a/share/man/man4/man4.aarch64/Makefile b/share/man/man4/man4.aarch64/Makefile index 0e85aab8b770..f35558d69a33 100644 --- a/share/man/man4/man4.aarch64/Makefile +++ b/share/man/man4/man4.aarch64/Makefile @@ -14,12 +14,6 @@ MAN= \ # for all architectures, otherwise arm takes care of installing them. .if !empty(MAN_ARCH) && ${MAN_ARCH} != "all" MAN+= \ - aw_gpio.4 \ - aw_mmc.4 \ - aw_rtc.4 \ - aw_sid.4 \ - aw_spi.4 \ - aw_syscon.4 \ bcm283x_pwm.4 \ .endif diff --git a/share/man/man4/man4.arm/Makefile b/share/man/man4/man4.arm/Makefile index 6b046a1002a2..2be255ad913f 100644 --- a/share/man/man4/man4.arm/Makefile +++ b/share/man/man4/man4.arm/Makefile @@ -1,11 +1,5 @@ MAN= \ ar40xx.4 \ - aw_gpio.4 \ - aw_mmc.4 \ - aw_rtc.4 \ - aw_sid.4 \ - aw_spi.4 \ - aw_syscon.4 \ bcm283x_pwm.4 \ devcfg.4 \ imx6_ahci.4 \ diff --git a/share/man/man4/nvd.4 b/share/man/man4/nvd.4 index d5145939e409..1861fabc91d0 100644 --- a/share/man/man4/nvd.4 +++ b/share/man/man4/nvd.4 @@ -31,7 +31,7 @@ .\" .\" Author: Jim Harris <jimharris@FreeBSD.org> .\" -.Dd May 18, 2019 +.Dd October 2, 2025 .Dt NVD 4 .Os .Sh NAME @@ -72,6 +72,10 @@ Note that device nodes from the driver are not .Xr GEOM 4 disks and cannot be partitioned. +.Sh HARDWARE +The +.Nm +driver supports NVMe storage devices using NVMe namespaces. .Sh CONFIGURATION The .Nm diff --git a/share/man/man4/snd_dummy.4 b/share/man/man4/snd_dummy.4 index 2b9d26d318ef..172b8ed70729 100644 --- a/share/man/man4/snd_dummy.4 +++ b/share/man/man4/snd_dummy.4 @@ -27,7 +27,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd July 15, 2024 +.Dd October 22, 2025 .Dt SND_DUMMY 4 .Os .Sh NAME @@ -47,11 +47,22 @@ physical sound card. It is intended for testing, so that test programs do not need to rely on hardware being present in the machine in order to run. .Pp -The driver attaches as a regular PCM device, with two channels (one playback -and one recording), as well as a mixer. +The driver attaches as a regular +.Xr sound 4 +device, with two channels (one playback and one recording), as well as a mixer. .Pp Playback works by discarding all input, and recording by returning silence (zeros). +.Sh FILES +.Bl -tag -width "/dev/dsp.dummy" -compact +.It Pa /dev/dsp.dummy +Alias to the device's +.Pa /dev/dsp%d +file created by +.Xr sound 4 . +This makes it easy for tests to open the dummy devic when there are more +devices present in the system. +.El .Sh SEE ALSO .Xr sound 4 , .Xr loader.conf 5 , diff --git a/share/man/man5/src.conf.5 b/share/man/man5/src.conf.5 index 1bb609336532..bab2c3d84abf 100644 --- a/share/man/man5/src.conf.5 +++ b/share/man/man5/src.conf.5 @@ -1,5 +1,5 @@ .\" DO NOT EDIT-- this file is @generated by tools/build/options/makeman. -.Dd October 1, 2025 +.Dd October 22, 2025 .Dt SRC.CONF 5 .Os .Sh NAME @@ -956,12 +956,12 @@ Do not build LLVM's lld linker. Do not build the LLDB debugger. .Pp This is a default setting on -arm/armv7 and riscv/riscv64. +riscv/riscv64. .It Va WITH_LLDB Build the LLDB debugger. .Pp This is a default setting on -amd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc64 and powerpc/powerpc64le. +amd64/amd64, arm/armv7, arm64/aarch64, i386/i386, powerpc/powerpc64 and powerpc/powerpc64le. .It Va WITHOUT_LLD_BOOTSTRAP Do not build the LLD linker during the bootstrap phase of the build. diff --git a/share/man/man7/release.7 b/share/man/man7/release.7 index 05f80374926f..2493a34721bc 100644 --- a/share/man/man7/release.7 +++ b/share/man/man7/release.7 @@ -1,3 +1,6 @@ +.\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" .\" Copyright (c) 2002 Murray Stokely <murray@FreeBSD.org> .\" All rights reserved. .\" @@ -22,7 +25,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd September 11, 2025 +.Dd October 13, 2025 .Dt RELEASE 7 .Os .Sh NAME @@ -136,6 +139,8 @@ configuration file supports the following variables: .Bl -tag -width Ev .It Va CHROOTDIR The directory within which the release will be built. +Defaults to +.Pa /scratch . .It Va CHROOT_MAKEENV Additional .Xr make 1 @@ -636,6 +641,7 @@ Typically, one only needs to set .El .Sh FILES .Bl -tag -compact -width Pa +.It Pa /scratch .It Pa /usr/doc/Makefile .It Pa /usr/doc/share/mk/doc.project.mk .It Pa /usr/ports/Mk/bsd.port.mk @@ -688,16 +694,10 @@ the Raspberry Pi, exist in the directory corresponding to the .Va TARGET .Xr make 1 variable. -For example, to build an image for the Raspberry Pi: -.Bd -literal -offset indent -cd /usr/src/release -sh release.sh -c arm/RPI-B.conf -.Ed -.Pp -To build an image for the Raspberry Pi 3: +For example, to build an image for 64-bit Raspberry Pis: .Bd -literal -offset indent cd /usr/src/release -sh release.sh -c arm64/RPI3.conf +sh release.sh -c arm64/RPI.conf .Ed .Pp After running these commands, all prepared release files are available in the diff --git a/share/man/man9/Makefile b/share/man/man9/Makefile index 3bccc92572d6..52ec9be3ae02 100644 --- a/share/man/man9/Makefile +++ b/share/man/man9/Makefile @@ -2207,6 +2207,7 @@ MLINKS+=syscall_helper_register.9 syscall_helper_unregister.9 \ syscall_helper_register.9 SYSCALL_INIT_HELPER_COMPAT_F.9 \ syscall_helper_register.9 SYSCALL_INIT_HELPER_F.9 MLINKS+=sysctl.9 SYSCTL_DECL.9 \ + sysctl.9 SYSCTL_ADD_BOOL.9 \ sysctl.9 SYSCTL_ADD_CONST_STRING.9 \ sysctl.9 SYSCTL_ADD_INT.9 \ sysctl.9 SYSCTL_ADD_LONG.9 \ @@ -2233,6 +2234,7 @@ MLINKS+=sysctl.9 SYSCTL_DECL.9 \ sysctl.9 SYSCTL_ADD_UMA_CUR.9 \ sysctl.9 SYSCTL_ADD_UMA_MAX.9 \ sysctl.9 SYSCTL_ADD_UQUAD.9 \ + sysctl.9 SYSCTL_BOOL.9 \ sysctl.9 SYSCTL_CHILDREN.9 \ sysctl.9 SYSCTL_STATIC_CHILDREN.9 \ sysctl.9 SYSCTL_NODE_CHILDREN.9 \ diff --git a/share/man/man9/VOP_OPENCLOSE.9 b/share/man/man9/VOP_OPENCLOSE.9 index 9a4f7069962d..672f9faa92f5 100644 --- a/share/man/man9/VOP_OPENCLOSE.9 +++ b/share/man/man9/VOP_OPENCLOSE.9 @@ -26,7 +26,7 @@ .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" -.Dd December 2, 2009 +.Dd October 17, 2025 .Dt VOP_OPEN 9 .Os .Sh NAME @@ -78,6 +78,17 @@ The access mode is a set of flags, including .Dv FWRITE , .Dv O_NONBLOCK , .Dv O_APPEND . +.Pp +The thread +.Fa td +passed to +.Fn VOP_CLOSE +may be +.Ql NULL +if the last reference to the open file is released from a kernel context, e.g., +the destruction of a socket buffer containing the file reference in a +.Dv SCM_RIGHTS +message. .Sh LOCKS .Fn VOP_OPEN expects diff --git a/share/man/man9/uio.9 b/share/man/man9/uio.9 index e6240c4e51d3..b143eb6e8e62 100644 --- a/share/man/man9/uio.9 +++ b/share/man/man9/uio.9 @@ -23,7 +23,7 @@ .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" -.Dd March 11, 2017 +.Dd October 22, 2025 .Dt UIO 9 .Os .Sh NAME @@ -107,10 +107,14 @@ The I/O vector points into the kernel address space. Do not copy, already in object. .El .It Va uio_rw -The direction of the desired transfer, either -.Dv UIO_READ -or -.Dv UIO_WRITE . +The direction of the desired transfer. +The supported flags are: +.Bl -tag -width "UIO_WRITE" +.It Dv UIO_READ +Transfer data from the buffers into the I/O vectors. +.It Dv UIO_WRITE +Transfer data from the I/O vectors into the buffers. +.El .It Va uio_td The pointer to a .Vt "struct thread" diff --git a/share/misc/bsd-family-tree b/share/misc/bsd-family-tree index b1614c7eb409..b0502dfc7925 100644 --- a/share/misc/bsd-family-tree +++ b/share/misc/bsd-family-tree @@ -479,7 +479,7 @@ FreeBSD 5.2 | | | | | | | | | DragonFly 6.4.1 | | | | | DragonFly 6.4.2 | FreeBSD | | | | - | 14.3 | | | | + | 14.3 | | OpenBSD 7.8 | | | | | | FreeBSD 16 -current | NetBSD -current OpenBSD -current DragonFly -current | | | | | @@ -925,6 +925,7 @@ OpenBSD 7.7 2025-04-28 [OBD] DragonFly 6.4.1 2025-04-30 [DFB] DragonFly 6.4.2 2025-05-09 [DFB] FreeBSD 14.3 2025-06-10 [FBD] +OpenBSD 7.8 2025-10-22 [OBD] Bibliography ------------------------ diff --git a/share/misc/committers-src.dot b/share/misc/committers-src.dot index 6035dd031216..3f3e39635c55 100644 --- a/share/misc/committers-src.dot +++ b/share/misc/committers-src.dot @@ -188,6 +188,7 @@ fjoe [label="Max Khon\nfjoe@FreeBSD.org\n2001/08/06"] flz [label="Florent Thoumie\nflz@FreeBSD.org\n2006/03/30"] freqlabs [label="Ryan Moeller\nfreqlabs@FreeBSD.org\n2020/02/10"] fsu [label="Fedor Uporov\nfsu@FreeBSD.org\n2017/08/28"] +fuz [label="Robert Clausecker\nfuz@FreeBSD.org\n2025/10/21"] gabor [label="Gabor Kovesdan\ngabor@FreeBSD.org\n2010/02/02"] gad [label="Garance A. Drosehn\ngad@FreeBSD.org\n2000/10/27"] gallatin [label="Andrew Gallatin\ngallatin@FreeBSD.org\n1999/01/15"] @@ -789,6 +790,7 @@ markj -> bnovkov markj -> cem markj -> christos markj -> dougm +markj -> fuz markj -> igoro markj -> jfree markj -> lwhsu diff --git a/share/mk/bsd.man.mk b/share/mk/bsd.man.mk index 0a3594e05d94..1591a3e0905e 100644 --- a/share/mk/bsd.man.mk +++ b/share/mk/bsd.man.mk @@ -97,6 +97,14 @@ manlinksinstall: .PHONY all-man: +# Take groups from both MANGROUPS and MANGROUPS.yes, to allow syntax like +# MANGROUPS.${MK_FOO}=FOO. Sort and uniq the list of groups in case of +# duplicates. +.if defined(MANGROUPS) || defined(MANGROUPS.yes) +MANGROUPS:=${MANGROUPS} ${MANGROUPS.yes} +MANGROUPS:=${MANGROUPS:O:u} +.endif + .for __group in ${MANGROUPS} realmaninstall: realmaninstall-${__group} diff --git a/share/mk/src.opts.mk b/share/mk/src.opts.mk index 446f78a2acf3..e10455cd4e82 100644 --- a/share/mk/src.opts.mk +++ b/share/mk/src.opts.mk @@ -302,7 +302,7 @@ __DEFAULT_NO_OPTIONS+=FDT __DEFAULT_YES_OPTIONS+=FDT .endif -.if ${__T:Marm*} == "" && ${__T:Mriscv64*} == "" +.if ${__T:Mriscv64*} == "" __DEFAULT_YES_OPTIONS+=LLDB .else __DEFAULT_NO_OPTIONS+=LLDB diff --git a/stand/i386/boot2/Makefile b/stand/i386/boot2/Makefile index 313bb8030f3e..94dbd7af29d6 100644 --- a/stand/i386/boot2/Makefile +++ b/stand/i386/boot2/Makefile @@ -33,7 +33,8 @@ CFLAGS+=-fomit-frame-pointer \ CFLAGS.gcc+= -Os \ -fno-asynchronous-unwind-tables \ - --param max-inline-insns-single=100 + --param max-inline-insns-single=100 \ + --param min-pagesize=1024 CFLAGS.clang+= -Oz ${CLANG_OPT_SMALL} diff --git a/stand/i386/gptboot/Makefile b/stand/i386/gptboot/Makefile index a829be6c745d..366d82497819 100644 --- a/stand/i386/gptboot/Makefile +++ b/stand/i386/gptboot/Makefile @@ -34,7 +34,8 @@ CFLAGS+=-DBOOTPROG=\"gptboot\" \ -Wpointer-arith -Wshadow -Wstrict-prototypes -Wwrite-strings \ -Wno-pointer-sign -CFLAGS.gcc+= --param max-inline-insns-single=100 +CFLAGS.gcc+= --param max-inline-insns-single=100 \ + --param min-pagesize=1024 LD_FLAGS+=${LD_FLAGS_BIN} diff --git a/stand/i386/gptzfsboot/Makefile b/stand/i386/gptzfsboot/Makefile index 0b67ff8cdaf4..ebdd4958c5f2 100644 --- a/stand/i386/gptzfsboot/Makefile +++ b/stand/i386/gptzfsboot/Makefile @@ -46,7 +46,8 @@ CFLAGS.clang+= -Wno-tentative-definition-incomplete-type NO_WCAST_ALIGN= -CFLAGS.gcc+= --param max-inline-insns-single=100 +CFLAGS.gcc+= --param max-inline-insns-single=100 \ + --param min-pagesize=1024 LD_FLAGS+=${LD_FLAGS_BIN} diff --git a/stand/i386/isoboot/Makefile b/stand/i386/isoboot/Makefile index 0049e7fd3e0a..bf22e0f21d59 100644 --- a/stand/i386/isoboot/Makefile +++ b/stand/i386/isoboot/Makefile @@ -29,7 +29,8 @@ CFLAGS+=-DBOOTPROG=\"isoboot\" \ -Wpointer-arith -Wshadow -Wstrict-prototypes -Wwrite-strings \ -Wno-pointer-sign -CFLAGS.gcc+= --param max-inline-insns-single=100 +CFLAGS.gcc+= --param max-inline-insns-single=100 \ + --param min-pagesize=1024 CFLAGS.clang+= -Oz ${CLANG_OPT_SMALL} LD_FLAGS+=${LD_FLAGS_BIN} diff --git a/sys/amd64/include/vmm.h b/sys/amd64/include/vmm.h index 66d8991d36e8..ad67510fecf3 100644 --- a/sys/amd64/include/vmm.h +++ b/sys/amd64/include/vmm.h @@ -237,7 +237,7 @@ extern u_int vm_maxcpu; /* maximum virtual cpus */ int vm_create(const char *name, struct vm **retvm); struct vcpu *vm_alloc_vcpu(struct vm *vm, int vcpuid); void vm_disable_vcpu_creation(struct vm *vm); -void vm_slock_vcpus(struct vm *vm); +void vm_lock_vcpus(struct vm *vm); void vm_unlock_vcpus(struct vm *vm); void vm_destroy(struct vm *vm); int vm_reinit(struct vm *vm); @@ -362,6 +362,7 @@ enum vcpu_state { }; int vcpu_set_state(struct vcpu *vcpu, enum vcpu_state state, bool from_idle); +int vcpu_set_state_all(struct vm *vm, enum vcpu_state state); enum vcpu_state vcpu_get_state(struct vcpu *vcpu, int *hostcpu); static int __inline diff --git a/sys/amd64/pt/pt.c b/sys/amd64/pt/pt.c index c7b75767680a..6b2296de049c 100644 --- a/sys/amd64/pt/pt.c +++ b/sys/amd64/pt/pt.c @@ -42,15 +42,15 @@ */ #include <sys/systm.h> +#include <sys/bus.h> #include <sys/hwt.h> +#include <sys/interrupt.h> #include <sys/kernel.h> #include <sys/lock.h> #include <sys/malloc.h> #include <sys/module.h> #include <sys/mutex.h> -#include <sys/sdt.h> #include <sys/smp.h> -#include <sys/taskqueue.h> #include <vm/vm.h> #include <vm/vm_page.h> @@ -94,12 +94,7 @@ MALLOC_DEFINE(M_PT, "pt", "Intel Processor Trace"); -SDT_PROVIDER_DEFINE(pt); -SDT_PROBE_DEFINE(pt, , , topa__intr); - -TASKQUEUE_FAST_DEFINE_THREAD(pt); - -static void pt_send_buffer_record(void *arg, int pending __unused); +static void pt_send_buffer_record(void *arg); static int pt_topa_intr(struct trapframe *tf); /* @@ -122,29 +117,24 @@ struct pt_buffer { size_t size; struct mtx lock; /* Lock for fields below. */ vm_offset_t offset; - uint64_t wrap_count; - int curpage; }; struct pt_ctx { int id; struct pt_buffer buf; /* ToPA buffer metadata */ - struct task task; /* ToPA buffer notification task */ struct hwt_context *hwt_ctx; uint8_t *save_area; /* PT XSAVE area */ }; /* PT tracing contexts used for CPU mode. */ static struct pt_ctx *pt_pcpu_ctx; -enum pt_cpu_state { - PT_DISABLED = 0, - PT_STOPPED, - PT_ACTIVE -}; +enum pt_cpu_state { PT_INACTIVE = 0, PT_ACTIVE }; static struct pt_cpu { struct pt_ctx *ctx; /* active PT tracing context */ enum pt_cpu_state state; /* used as part of trace stop protocol */ + void *swi_cookie; /* Software interrupt handler context */ + int in_pcint_handler; } *pt_pcpu; /* @@ -199,31 +189,28 @@ static __inline void pt_update_buffer(struct pt_buffer *buf) { uint64_t reg; - int curpage; + uint64_t offset; /* Update buffer offset. */ reg = rdmsr(MSR_IA32_RTIT_OUTPUT_MASK_PTRS); - curpage = (reg & PT_TOPA_PAGE_MASK) >> PT_TOPA_PAGE_SHIFT; - mtx_lock_spin(&buf->lock); - /* Check if the output wrapped. */ - if (buf->curpage > curpage) - buf->wrap_count++; - buf->curpage = curpage; - buf->offset = reg >> 32; - mtx_unlock_spin(&buf->lock); - - dprintf("%s: wrap_cnt: %lu, curpage: %d, offset: %zu\n", __func__, - buf->wrap_count, buf->curpage, buf->offset); + offset = ((reg & PT_TOPA_PAGE_MASK) >> PT_TOPA_PAGE_SHIFT) * PAGE_SIZE; + offset += (reg >> 32); + + atomic_store_rel_64(&buf->offset, offset); } static __inline void pt_fill_buffer_record(int id, struct pt_buffer *buf, struct hwt_record_entry *rec) { + vm_offset_t offset; + + offset = atomic_load_acq_64(&buf->offset); + rec->record_type = HWT_RECORD_BUFFER; rec->buf_id = id; - rec->curpage = buf->curpage; - rec->offset = buf->offset + (buf->wrap_count * buf->size); + rec->curpage = offset / PAGE_SIZE; + rec->offset = offset & PAGE_MASK; } /* @@ -273,9 +260,9 @@ pt_cpu_start(void *dummy) MPASS(cpu->ctx != NULL); dprintf("%s: curcpu %d\n", __func__, curcpu); + pt_cpu_set_state(curcpu, PT_ACTIVE); load_cr4(rcr4() | CR4_XSAVE); wrmsr(MSR_IA32_RTIT_STATUS, 0); - pt_cpu_set_state(curcpu, PT_ACTIVE); pt_cpu_toggle_local(cpu->ctx->save_area, true); } @@ -291,16 +278,16 @@ pt_cpu_stop(void *dummy) struct pt_cpu *cpu; struct pt_ctx *ctx; - /* Shutdown may occur before PT gets properly configured. */ - if (pt_cpu_get_state(curcpu) == PT_DISABLED) - return; - cpu = &pt_pcpu[curcpu]; ctx = cpu->ctx; - MPASS(ctx != NULL); - dprintf("%s: curcpu %d\n", __func__, curcpu); - pt_cpu_set_state(curcpu, PT_STOPPED); + dprintf("%s: curcpu %d\n", __func__, curcpu); + /* Shutdown may occur before PT gets properly configured. */ + if (ctx == NULL) { + dprintf("%s: missing context on cpu %d; bailing\n", __func__, + curcpu); + return; + } pt_cpu_toggle_local(cpu->ctx->save_area, false); pt_update_buffer(&ctx->buf); } @@ -406,13 +393,11 @@ pt_init_ctx(struct pt_ctx *pt_ctx, struct hwt_vm *vm, int ctx_id) return (ENOMEM); dprintf("%s: preparing ToPA buffer\n", __func__); if (pt_topa_prepare(pt_ctx, vm) != 0) { - dprintf("%s: failed to prepare ToPA buffer\n", __func__); free(pt_ctx->save_area, M_PT); return (ENOMEM); } pt_ctx->id = ctx_id; - TASK_INIT(&pt_ctx->task, 0, pt_send_buffer_record, pt_ctx); return (0); } @@ -426,7 +411,6 @@ pt_deinit_ctx(struct pt_ctx *pt_ctx) if (pt_ctx->save_area != NULL) free(pt_ctx->save_area, M_PT); memset(pt_ctx, 0, sizeof(*pt_ctx)); - pt_ctx->buf.topa_hw = NULL; } /* @@ -519,7 +503,6 @@ pt_backend_configure(struct hwt_context *ctx, int cpu_id, int thread_id) XSTATE_XCOMP_BV_COMPACT; pt_ext->rtit_ctl |= RTIT_CTL_TRACEEN; pt_pcpu[cpu_id].ctx = pt_ctx; - pt_cpu_set_state(cpu_id, PT_STOPPED); return (0); } @@ -549,12 +532,19 @@ pt_backend_disable(struct hwt_context *ctx, int cpu_id) if (ctx->mode == HWT_MODE_CPU) return; - KASSERT(curcpu == cpu_id, ("%s: attempting to disable PT on another cpu", __func__)); + + cpu = &pt_pcpu[cpu_id]; + + dprintf("%s: waiting for cpu %d to exit interrupt handler\n", __func__, + cpu_id); + pt_cpu_set_state(cpu_id, PT_INACTIVE); + while (atomic_cmpset_int(&cpu->in_pcint_handler, 1, 0)) + ; + pt_cpu_stop(NULL); CPU_CLR(cpu_id, &ctx->cpu_map); - cpu = &pt_pcpu[cpu_id]; cpu->ctx = NULL; } @@ -564,14 +554,14 @@ pt_backend_disable(struct hwt_context *ctx, int cpu_id) static int pt_backend_enable_smp(struct hwt_context *ctx) { - dprintf("%s\n", __func__); + + KASSERT(ctx->mode == HWT_MODE_CPU, + ("%s: should only be used for CPU mode", __func__)); if (ctx->mode == HWT_MODE_CPU && atomic_swap_32(&cpu_mode_ctr, 1) != 0) return (-1); - KASSERT(ctx->mode == HWT_MODE_CPU, - ("%s: should only be used for CPU mode", __func__)); smp_rendezvous_cpus(ctx->cpu_map, NULL, pt_cpu_start, NULL, NULL); return (0); @@ -583,6 +573,7 @@ pt_backend_enable_smp(struct hwt_context *ctx) static int pt_backend_disable_smp(struct hwt_context *ctx) { + struct pt_cpu *cpu; dprintf("%s\n", __func__); if (ctx->mode == HWT_MODE_CPU && @@ -593,6 +584,14 @@ pt_backend_disable_smp(struct hwt_context *ctx) dprintf("%s: empty cpu map\n", __func__); return (-1); } + CPU_FOREACH_ISSET(cpu_id, &ctx->cpu_map) { + cpu = &pt_pcpu[cpu_id]; + dprintf("%s: waiting for cpu %d to exit interrupt handler\n", + __func__, cpu_id); + pt_cpu_set_state(cpu_id, PT_INACTIVE); + while (atomic_cmpset_int(&cpu->in_pcint_handler, 1, 0)) + ; + } smp_rendezvous_cpus(ctx->cpu_map, NULL, pt_cpu_stop, NULL, NULL); return (0); @@ -611,13 +610,13 @@ pt_backend_init(struct hwt_context *ctx) int error; dprintf("%s\n", __func__); - if (ctx->mode == HWT_MODE_CPU) { - TAILQ_FOREACH(hwt_cpu, &ctx->cpus, next) { - error = pt_init_ctx(&pt_pcpu_ctx[hwt_cpu->cpu_id], - hwt_cpu->vm, hwt_cpu->cpu_id); - if (error) - return (error); - } + if (ctx->mode != HWT_MODE_CPU) + return (0); + TAILQ_FOREACH(hwt_cpu, &ctx->cpus, next) { + error = pt_init_ctx(&pt_pcpu_ctx[hwt_cpu->cpu_id], hwt_cpu->vm, + hwt_cpu->cpu_id); + if (error) + return (error); } return (0); @@ -647,20 +646,16 @@ pt_backend_deinit(struct hwt_context *ctx) pt_deinit_ctx(pt_ctx); } } else { - CPU_FOREACH(cpu_id) { - if (!CPU_ISSET(cpu_id, &ctx->cpu_map)) + CPU_FOREACH_ISSET(cpu_id, &ctx->cpu_map) { + if (pt_pcpu[cpu_id].ctx == NULL) continue; - if (pt_pcpu[cpu_id].ctx != NULL) { - KASSERT(pt_pcpu[cpu_id].ctx == - &pt_pcpu_ctx[cpu_id], - ("%s: CPU mode tracing with non-cpu mode PT" - "context active", - __func__)); - pt_pcpu[cpu_id].ctx = NULL; - } - pt_ctx = &pt_pcpu_ctx[cpu_id]; - pt_deinit_ctx(pt_ctx); - memset(&pt_pcpu[cpu_id], 0, sizeof(struct pt_cpu)); + KASSERT(pt_pcpu[cpu_id].ctx == &pt_pcpu_ctx[cpu_id], + ("%s: CPU mode tracing with non-cpu mode PT" + "context active", + __func__)); + pt_deinit_ctx(pt_pcpu[cpu_id].ctx); + pt_pcpu[cpu_id].ctx = NULL; + atomic_set_int(&pt_pcpu[cpu_id].in_pcint_handler, 0); } } @@ -675,15 +670,15 @@ pt_backend_read(struct hwt_vm *vm, int *curpage, vm_offset_t *curpage_offset, uint64_t *data) { struct pt_buffer *buf; + uint64_t offset; if (vm->ctx->mode == HWT_MODE_THREAD) buf = &((struct pt_ctx *)vm->thr->private)->buf; else buf = &pt_pcpu[vm->cpu->cpu_id].ctx->buf; - mtx_lock_spin(&buf->lock); - *curpage = buf->curpage; - *curpage_offset = buf->offset + (buf->wrap_count * vm->ctx->bufsize); - mtx_unlock_spin(&buf->lock); + offset = atomic_load_acq_64(&buf->offset); + *curpage = offset / PAGE_SIZE; + *curpage_offset = offset & PAGE_MASK; return (0); } @@ -762,15 +757,13 @@ static struct hwt_backend backend = { * Used as a taskqueue routine from the ToPA interrupt handler. */ static void -pt_send_buffer_record(void *arg, int pending __unused) +pt_send_buffer_record(void *arg) { + struct pt_cpu *cpu = (struct pt_cpu *)arg; struct hwt_record_entry record; - struct pt_ctx *ctx = (struct pt_ctx *)arg; - /* Prepare buffer record. */ - mtx_lock_spin(&ctx->buf.lock); + struct pt_ctx *ctx = cpu->ctx; pt_fill_buffer_record(ctx->id, &ctx->buf, &record); - mtx_unlock_spin(&ctx->buf.lock); hwt_record_ctx(ctx->hwt_ctx, &record, M_ZERO | M_NOWAIT); } static void @@ -795,36 +788,40 @@ static int pt_topa_intr(struct trapframe *tf) { struct pt_buffer *buf; + struct pt_cpu *cpu; struct pt_ctx *ctx; uint64_t reg; - SDT_PROBE0(pt, , , topa__intr); - - if (pt_cpu_get_state(curcpu) != PT_ACTIVE) { - return (0); - } + cpu = &pt_pcpu[curcpu]; reg = rdmsr(MSR_IA_GLOBAL_STATUS); if ((reg & GLOBAL_STATUS_FLAG_TRACETOPAPMI) == 0) { - /* ACK spurious or leftover interrupt. */ pt_topa_status_clear(); + return (0); + } + + if (pt_cpu_get_state(curcpu) != PT_ACTIVE) { return (1); } + atomic_set_int(&cpu->in_pcint_handler, 1); - ctx = pt_pcpu[curcpu].ctx; + ctx = cpu->ctx; + KASSERT(ctx != NULL, + ("%s: cpu %d: ToPA PMI interrupt without an active context", + __func__, curcpu)); buf = &ctx->buf; KASSERT(buf->topa_hw != NULL, - ("%s: ToPA PMI interrupt with invalid buffer", __func__)); - + ("%s: cpu %d: ToPA PMI interrupt with invalid buffer", __func__, + curcpu)); pt_cpu_toggle_local(ctx->save_area, false); pt_update_buffer(buf); pt_topa_status_clear(); - taskqueue_enqueue_flags(taskqueue_pt, &ctx->task, - TASKQUEUE_FAIL_IF_PENDING); if (pt_cpu_get_state(curcpu) == PT_ACTIVE) { + swi_sched(cpu->swi_cookie, SWI_FROMNMI); pt_cpu_toggle_local(ctx->save_area, true); lapic_reenable_pcint(); } + atomic_set_int(&cpu->in_pcint_handler, 0); return (1); } @@ -839,7 +836,7 @@ static int pt_init(void) { u_int cp[4]; - int error; + int error, i; dprintf("pt: Enumerating part 1\n"); cpuid_count(CPUID_PT_LEAF, 0, cp); @@ -869,20 +866,38 @@ pt_init(void) pt_pcpu_ctx = mallocarray(mp_ncpus, sizeof(struct pt_ctx), M_PT, M_ZERO | M_WAITOK); + for (i = 0; i < mp_ncpus; i++) { + error = swi_add(&clk_intr_event, "pt", pt_send_buffer_record, + &pt_pcpu[i], SWI_CLOCK, INTR_MPSAFE, + &pt_pcpu[i].swi_cookie); + if (error != 0) { + dprintf( + "%s: failed to add interrupt handler for cpu: %d\n", + __func__, error); + goto err; + } + } + nmi_register_handler(pt_topa_intr); - if (!lapic_enable_pcint()) { - nmi_remove_handler(pt_topa_intr); - hwt_backend_unregister(&backend); - free(pt_pcpu, M_PT); - free(pt_pcpu_ctx, M_PT); - pt_pcpu = NULL; - pt_pcpu_ctx = NULL; + if (lapic_enable_pcint()) { + initialized = true; + return (0); + } else printf("pt: failed to setup interrupt line\n"); - return (error); +err: + nmi_remove_handler(pt_topa_intr); + hwt_backend_unregister(&backend); + + for (i = 0; i < mp_ncpus; i++) { + if (pt_pcpu[i].swi_cookie != 0) + swi_remove(pt_pcpu[i].swi_cookie); } - initialized = true; + free(pt_pcpu, M_PT); + free(pt_pcpu_ctx, M_PT); + pt_pcpu = NULL; + pt_pcpu_ctx = NULL; - return (0); + return (error); } /* @@ -941,14 +956,24 @@ pt_supported(void) static void pt_deinit(void) { + int i; + struct pt_cpu *cpu; + if (!initialized) return; nmi_remove_handler(pt_topa_intr); lapic_disable_pcint(); hwt_backend_unregister(&backend); + + for (i = 0; i < mp_ncpus; i++) { + cpu = &pt_pcpu[i]; + swi_remove(cpu->swi_cookie); + } + free(pt_pcpu, M_PT); free(pt_pcpu_ctx, M_PT); pt_pcpu = NULL; + pt_pcpu_ctx = NULL; initialized = false; } diff --git a/sys/amd64/sgx/sgx_linux.c b/sys/amd64/sgx/sgx_linux.c index 6ecef9207a38..d389edc1b2b0 100644 --- a/sys/amd64/sgx/sgx_linux.c +++ b/sys/amd64/sgx/sgx_linux.c @@ -92,16 +92,7 @@ out: return (error); } -static struct linux_ioctl_handler sgx_linux_handler = { - sgx_linux_ioctl, - SGX_LINUX_IOCTL_MIN, - SGX_LINUX_IOCTL_MAX, -}; - -SYSINIT(sgx_linux_register, SI_SUB_KLD, SI_ORDER_MIDDLE, - linux_ioctl_register_handler, &sgx_linux_handler); -SYSUNINIT(sgx_linux_unregister, SI_SUB_KLD, SI_ORDER_MIDDLE, - linux_ioctl_unregister_handler, &sgx_linux_handler); +LINUX_IOCTL_SET(sgx, SGX_LINUX_IOCTL_MIN, SGX_LINUX_IOCTL_MAX); static int sgx_linux_modevent(module_t mod, int type, void *data) diff --git a/sys/amd64/vmm/vmm.c b/sys/amd64/vmm/vmm.c index 2ac076551165..473887240b9b 100644 --- a/sys/amd64/vmm/vmm.c +++ b/sys/amd64/vmm/vmm.c @@ -562,9 +562,9 @@ vm_alloc_vcpu(struct vm *vm, int vcpuid) } void -vm_slock_vcpus(struct vm *vm) +vm_lock_vcpus(struct vm *vm) { - sx_slock(&vm->vcpus_init_lock); + sx_xlock(&vm->vcpus_init_lock); } void @@ -870,7 +870,7 @@ vm_assign_pptdev(struct vm *vm, int bus, int slot, int func) int vm_get_register(struct vcpu *vcpu, int reg, uint64_t *retval) { - + /* Negative values represent VM control structure fields. */ if (reg >= VM_REG_LAST) return (EINVAL); @@ -882,6 +882,7 @@ vm_set_register(struct vcpu *vcpu, int reg, uint64_t val) { int error; + /* Negative values represent VM control structure fields. */ if (reg >= VM_REG_LAST) return (EINVAL); @@ -990,6 +991,54 @@ save_guest_fpustate(struct vcpu *vcpu) static VMM_STAT(VCPU_IDLE_TICKS, "number of ticks vcpu was idle"); +/* + * Invoke the rendezvous function on the specified vcpu if applicable. Return + * true if the rendezvous is finished, false otherwise. + */ +static bool +vm_rendezvous(struct vcpu *vcpu) +{ + struct vm *vm = vcpu->vm; + int vcpuid; + + mtx_assert(&vcpu->vm->rendezvous_mtx, MA_OWNED); + KASSERT(vcpu->vm->rendezvous_func != NULL, + ("vm_rendezvous: no rendezvous pending")); + + /* 'rendezvous_req_cpus' must be a subset of 'active_cpus' */ + CPU_AND(&vm->rendezvous_req_cpus, &vm->rendezvous_req_cpus, + &vm->active_cpus); + + vcpuid = vcpu->vcpuid; + if (CPU_ISSET(vcpuid, &vm->rendezvous_req_cpus) && + !CPU_ISSET(vcpuid, &vm->rendezvous_done_cpus)) { + VMM_CTR0(vcpu, "Calling rendezvous func"); + (*vm->rendezvous_func)(vcpu, vm->rendezvous_arg); + CPU_SET(vcpuid, &vm->rendezvous_done_cpus); + } + if (CPU_CMP(&vm->rendezvous_req_cpus, + &vm->rendezvous_done_cpus) == 0) { + VMM_CTR0(vcpu, "Rendezvous completed"); + CPU_ZERO(&vm->rendezvous_req_cpus); + vm->rendezvous_func = NULL; + wakeup(&vm->rendezvous_func); + return (true); + } + return (false); +} + +static void +vcpu_wait_idle(struct vcpu *vcpu) +{ + KASSERT(vcpu->state != VCPU_IDLE, ("vcpu already idle")); + + vcpu->reqidle = 1; + vcpu_notify_event_locked(vcpu, false); + VMM_CTR1(vcpu, "vcpu state change from %s to " + "idle requested", vcpu_state2str(vcpu->state)); + msleep_spin(&vcpu->state, &vcpu->mtx, "vmstat", hz); +} + static int vcpu_set_state_locked(struct vcpu *vcpu, enum vcpu_state newstate, bool from_idle) @@ -1004,13 +1053,8 @@ vcpu_set_state_locked(struct vcpu *vcpu, enum vcpu_state newstate, * ioctl() operating on a vcpu at any point. */ if (from_idle) { - while (vcpu->state != VCPU_IDLE) { - vcpu->reqidle = 1; - vcpu_notify_event_locked(vcpu, false); - VMM_CTR1(vcpu, "vcpu state change from %s to " - "idle requested", vcpu_state2str(vcpu->state)); - msleep_spin(&vcpu->state, &vcpu->mtx, "vmstat", hz); - } + while (vcpu->state != VCPU_IDLE) + vcpu_wait_idle(vcpu); } else { KASSERT(vcpu->state != VCPU_IDLE, ("invalid transition from " "vcpu idle state")); @@ -1062,6 +1106,95 @@ vcpu_set_state_locked(struct vcpu *vcpu, enum vcpu_state newstate, return (0); } +/* + * Try to lock all of the vCPUs in the VM while taking care to avoid deadlocks + * with vm_smp_rendezvous(). + * + * The complexity here suggests that the rendezvous mechanism needs a rethink. + */ +int +vcpu_set_state_all(struct vm *vm, enum vcpu_state newstate) +{ + cpuset_t locked; + struct vcpu *vcpu; + int error, i; + uint16_t maxcpus; + + KASSERT(newstate != VCPU_IDLE, + ("vcpu_set_state_all: invalid target state %d", newstate)); + + error = 0; + CPU_ZERO(&locked); + maxcpus = vm->maxcpus; + + mtx_lock(&vm->rendezvous_mtx); +restart: + if (vm->rendezvous_func != NULL) { + /* + * If we have a pending rendezvous, then the initiator may be + * blocked waiting for other vCPUs to execute the callback. The + * current thread may be a vCPU thread so we must not block + * waiting for the initiator, otherwise we get a deadlock. + * Thus, execute the callback on behalf of any idle vCPUs. + */ + for (i = 0; i < maxcpus; i++) { + vcpu = vm_vcpu(vm, i); + if (vcpu == NULL) + continue; + vcpu_lock(vcpu); + if (vcpu->state == VCPU_IDLE) { + (void)vcpu_set_state_locked(vcpu, VCPU_FROZEN, + true); + CPU_SET(i, &locked); + } + if (CPU_ISSET(i, &locked)) { + /* + * We can safely execute the callback on this + * vCPU's behalf. + */ + vcpu_unlock(vcpu); + (void)vm_rendezvous(vcpu); + vcpu_lock(vcpu); + } + vcpu_unlock(vcpu); + } + } + + /* + * Now wait for remaining vCPUs to become idle. This may include the + * initiator of a rendezvous that is currently blocked on the rendezvous + * mutex. + */ + CPU_FOREACH_ISCLR(i, &locked) { + if (i >= maxcpus) + break; + vcpu = vm_vcpu(vm, i); + if (vcpu == NULL) + continue; + vcpu_lock(vcpu); + while (vcpu->state != VCPU_IDLE) { + mtx_unlock(&vm->rendezvous_mtx); + vcpu_wait_idle(vcpu); + vcpu_unlock(vcpu); + mtx_lock(&vm->rendezvous_mtx); + if (vm->rendezvous_func != NULL) + goto restart; + vcpu_lock(vcpu); + } + error = vcpu_set_state_locked(vcpu, newstate, true); + vcpu_unlock(vcpu); + if (error != 0) { + /* Roll back state changes. */ + CPU_FOREACH_ISSET(i, &locked) + (void)vcpu_set_state(vcpu, VCPU_IDLE, false); + break; + } + CPU_SET(i, &locked); + } + mtx_unlock(&vm->rendezvous_mtx); + return (error); +} + static void vcpu_require_state(struct vcpu *vcpu, enum vcpu_state newstate) { @@ -1083,36 +1216,23 @@ vcpu_require_state_locked(struct vcpu *vcpu, enum vcpu_state newstate) static int vm_handle_rendezvous(struct vcpu *vcpu) { - struct vm *vm = vcpu->vm; + struct vm *vm; struct thread *td; - int error, vcpuid; - error = 0; - vcpuid = vcpu->vcpuid; td = curthread; + vm = vcpu->vm; + mtx_lock(&vm->rendezvous_mtx); while (vm->rendezvous_func != NULL) { - /* 'rendezvous_req_cpus' must be a subset of 'active_cpus' */ - CPU_AND(&vm->rendezvous_req_cpus, &vm->rendezvous_req_cpus, &vm->active_cpus); - - if (CPU_ISSET(vcpuid, &vm->rendezvous_req_cpus) && - !CPU_ISSET(vcpuid, &vm->rendezvous_done_cpus)) { - VMM_CTR0(vcpu, "Calling rendezvous func"); - (*vm->rendezvous_func)(vcpu, vm->rendezvous_arg); - CPU_SET(vcpuid, &vm->rendezvous_done_cpus); - } - if (CPU_CMP(&vm->rendezvous_req_cpus, - &vm->rendezvous_done_cpus) == 0) { - VMM_CTR0(vcpu, "Rendezvous completed"); - CPU_ZERO(&vm->rendezvous_req_cpus); - vm->rendezvous_func = NULL; - wakeup(&vm->rendezvous_func); + if (vm_rendezvous(vcpu)) break; - } + VMM_CTR0(vcpu, "Wait for rendezvous completion"); mtx_sleep(&vm->rendezvous_func, &vm->rendezvous_mtx, 0, "vmrndv", hz); if (td_ast_pending(td, TDA_SUSPEND)) { + int error; + mtx_unlock(&vm->rendezvous_mtx); error = thread_check_susp(td, true); if (error != 0) diff --git a/sys/amd64/vmm/vmm_dev_machdep.c b/sys/amd64/vmm/vmm_dev_machdep.c index dfebc9dcadbf..b84be809ea24 100644 --- a/sys/amd64/vmm/vmm_dev_machdep.c +++ b/sys/amd64/vmm/vmm_dev_machdep.c @@ -124,12 +124,16 @@ const struct vmmdev_ioctl vmmdev_machdep_ioctls[] = { VMMDEV_IOCTL(VM_SET_KERNEMU_DEV, VMMDEV_IOCTL_LOCK_ONE_VCPU), VMMDEV_IOCTL(VM_BIND_PPTDEV, - VMMDEV_IOCTL_XLOCK_MEMSEGS | VMMDEV_IOCTL_LOCK_ALL_VCPUS), + VMMDEV_IOCTL_XLOCK_MEMSEGS | VMMDEV_IOCTL_LOCK_ALL_VCPUS | + VMMDEV_IOCTL_PRIV_CHECK_DRIVER), VMMDEV_IOCTL(VM_UNBIND_PPTDEV, - VMMDEV_IOCTL_XLOCK_MEMSEGS | VMMDEV_IOCTL_LOCK_ALL_VCPUS), + VMMDEV_IOCTL_XLOCK_MEMSEGS | VMMDEV_IOCTL_LOCK_ALL_VCPUS | + VMMDEV_IOCTL_PRIV_CHECK_DRIVER), - VMMDEV_IOCTL(VM_MAP_PPTDEV_MMIO, VMMDEV_IOCTL_LOCK_ALL_VCPUS), - VMMDEV_IOCTL(VM_UNMAP_PPTDEV_MMIO, VMMDEV_IOCTL_LOCK_ALL_VCPUS), + VMMDEV_IOCTL(VM_MAP_PPTDEV_MMIO, VMMDEV_IOCTL_LOCK_ALL_VCPUS | + VMMDEV_IOCTL_PRIV_CHECK_DRIVER), + VMMDEV_IOCTL(VM_UNMAP_PPTDEV_MMIO, VMMDEV_IOCTL_LOCK_ALL_VCPUS | + VMMDEV_IOCTL_PRIV_CHECK_DRIVER), #ifdef BHYVE_SNAPSHOT #ifdef COMPAT_FREEBSD13 VMMDEV_IOCTL(VM_SNAPSHOT_REQ_13, VMMDEV_IOCTL_LOCK_ALL_VCPUS), @@ -147,9 +151,9 @@ const struct vmmdev_ioctl vmmdev_machdep_ioctls[] = { VMMDEV_IOCTL(VM_LAPIC_LOCAL_IRQ, VMMDEV_IOCTL_MAYBE_ALLOC_VCPU), - VMMDEV_IOCTL(VM_PPTDEV_MSI, 0), - VMMDEV_IOCTL(VM_PPTDEV_MSIX, 0), - VMMDEV_IOCTL(VM_PPTDEV_DISABLE_MSIX, 0), + VMMDEV_IOCTL(VM_PPTDEV_MSI, VMMDEV_IOCTL_PRIV_CHECK_DRIVER), + VMMDEV_IOCTL(VM_PPTDEV_MSIX, VMMDEV_IOCTL_PRIV_CHECK_DRIVER), + VMMDEV_IOCTL(VM_PPTDEV_DISABLE_MSIX, VMMDEV_IOCTL_PRIV_CHECK_DRIVER), VMMDEV_IOCTL(VM_LAPIC_MSI, 0), VMMDEV_IOCTL(VM_IOAPIC_ASSERT_IRQ, 0), VMMDEV_IOCTL(VM_IOAPIC_DEASSERT_IRQ, 0), @@ -172,40 +176,13 @@ int vmmdev_machdep_ioctl(struct vm *vm, struct vcpu *vcpu, u_long cmd, caddr_t data, int fflag, struct thread *td) { - struct vm_seg_desc *vmsegdesc; - struct vm_run *vmrun; -#ifdef COMPAT_FREEBSD13 - struct vm_run_13 *vmrun_13; -#endif - struct vm_exception *vmexc; - struct vm_lapic_irq *vmirq; - struct vm_lapic_msi *vmmsi; - struct vm_ioapic_irq *ioapic_irq; - struct vm_isa_irq *isa_irq; - struct vm_isa_irq_trigger *isa_irq_trigger; - struct vm_pptdev *pptdev; - struct vm_pptdev_mmio *pptmmio; - struct vm_pptdev_msi *pptmsi; - struct vm_pptdev_msix *pptmsix; - struct vm_x2apic *x2apic; - struct vm_gpa_pte *gpapte; - struct vm_gla2gpa *gg; - struct vm_intinfo *vmii; - struct vm_rtc_time *rtctime; - struct vm_rtc_data *rtcdata; - struct vm_readwrite_kernemu_device *kernemu; -#ifdef BHYVE_SNAPSHOT - struct vm_snapshot_meta *snapshot_meta; -#ifdef COMPAT_FREEBSD13 - struct vm_snapshot_meta_13 *snapshot_13; -#endif -#endif int error; error = 0; switch (cmd) { case VM_RUN: { struct vm_exit *vme; + struct vm_run *vmrun; vmrun = (struct vm_run *)data; vme = vm_exitinfo(vcpu); @@ -243,6 +220,7 @@ vmmdev_machdep_ioctl(struct vm *vm, struct vcpu *vcpu, u_long cmd, caddr_t data, case VM_RUN_13: { struct vm_exit *vme; struct vm_exit_13 *vme_13; + struct vm_run_13 *vmrun_13; vmrun_13 = (struct vm_run_13 *)data; vme_13 = &vmrun_13->vm_exit; @@ -281,85 +259,123 @@ vmmdev_machdep_ioctl(struct vm *vm, struct vcpu *vcpu, u_long cmd, caddr_t data, break; } #endif - case VM_PPTDEV_MSI: + case VM_PPTDEV_MSI: { + struct vm_pptdev_msi *pptmsi; + pptmsi = (struct vm_pptdev_msi *)data; - error = ppt_setup_msi(vm, - pptmsi->bus, pptmsi->slot, pptmsi->func, - pptmsi->addr, pptmsi->msg, - pptmsi->numvec); + error = ppt_setup_msi(vm, pptmsi->bus, pptmsi->slot, + pptmsi->func, pptmsi->addr, pptmsi->msg, pptmsi->numvec); break; - case VM_PPTDEV_MSIX: + } + case VM_PPTDEV_MSIX: { + struct vm_pptdev_msix *pptmsix; + pptmsix = (struct vm_pptdev_msix *)data; - error = ppt_setup_msix(vm, - pptmsix->bus, pptmsix->slot, - pptmsix->func, pptmsix->idx, - pptmsix->addr, pptmsix->msg, - pptmsix->vector_control); + error = ppt_setup_msix(vm, pptmsix->bus, pptmsix->slot, + pptmsix->func, pptmsix->idx, pptmsix->addr, pptmsix->msg, + pptmsix->vector_control); break; - case VM_PPTDEV_DISABLE_MSIX: + } + case VM_PPTDEV_DISABLE_MSIX: { + struct vm_pptdev *pptdev; + pptdev = (struct vm_pptdev *)data; error = ppt_disable_msix(vm, pptdev->bus, pptdev->slot, - pptdev->func); + pptdev->func); break; - case VM_MAP_PPTDEV_MMIO: + } + case VM_MAP_PPTDEV_MMIO: { + struct vm_pptdev_mmio *pptmmio; + pptmmio = (struct vm_pptdev_mmio *)data; error = ppt_map_mmio(vm, pptmmio->bus, pptmmio->slot, - pptmmio->func, pptmmio->gpa, pptmmio->len, - pptmmio->hpa); + pptmmio->func, pptmmio->gpa, pptmmio->len, pptmmio->hpa); break; - case VM_UNMAP_PPTDEV_MMIO: + } + case VM_UNMAP_PPTDEV_MMIO: { + struct vm_pptdev_mmio *pptmmio; + pptmmio = (struct vm_pptdev_mmio *)data; error = ppt_unmap_mmio(vm, pptmmio->bus, pptmmio->slot, - pptmmio->func, pptmmio->gpa, pptmmio->len); + pptmmio->func, pptmmio->gpa, pptmmio->len); break; - case VM_BIND_PPTDEV: + } + case VM_BIND_PPTDEV: { + struct vm_pptdev *pptdev; + pptdev = (struct vm_pptdev *)data; error = vm_assign_pptdev(vm, pptdev->bus, pptdev->slot, - pptdev->func); + pptdev->func); break; - case VM_UNBIND_PPTDEV: + } + case VM_UNBIND_PPTDEV: { + struct vm_pptdev *pptdev; + pptdev = (struct vm_pptdev *)data; error = vm_unassign_pptdev(vm, pptdev->bus, pptdev->slot, - pptdev->func); + pptdev->func); break; - case VM_INJECT_EXCEPTION: + } + case VM_INJECT_EXCEPTION: { + struct vm_exception *vmexc; + vmexc = (struct vm_exception *)data; error = vm_inject_exception(vcpu, vmexc->vector, vmexc->error_code_valid, vmexc->error_code, vmexc->restart_instruction); break; + } case VM_INJECT_NMI: error = vm_inject_nmi(vcpu); break; - case VM_LAPIC_IRQ: + case VM_LAPIC_IRQ: { + struct vm_lapic_irq *vmirq; + vmirq = (struct vm_lapic_irq *)data; error = lapic_intr_edge(vcpu, vmirq->vector); break; - case VM_LAPIC_LOCAL_IRQ: + } + case VM_LAPIC_LOCAL_IRQ: { + struct vm_lapic_irq *vmirq; + vmirq = (struct vm_lapic_irq *)data; error = lapic_set_local_intr(vm, vcpu, vmirq->vector); break; - case VM_LAPIC_MSI: + } + case VM_LAPIC_MSI: { + struct vm_lapic_msi *vmmsi; + vmmsi = (struct vm_lapic_msi *)data; error = lapic_intr_msi(vm, vmmsi->addr, vmmsi->msg); break; - case VM_IOAPIC_ASSERT_IRQ: + } + case VM_IOAPIC_ASSERT_IRQ: { + struct vm_ioapic_irq *ioapic_irq; + ioapic_irq = (struct vm_ioapic_irq *)data; error = vioapic_assert_irq(vm, ioapic_irq->irq); break; - case VM_IOAPIC_DEASSERT_IRQ: + } + case VM_IOAPIC_DEASSERT_IRQ: { + struct vm_ioapic_irq *ioapic_irq; + ioapic_irq = (struct vm_ioapic_irq *)data; error = vioapic_deassert_irq(vm, ioapic_irq->irq); break; - case VM_IOAPIC_PULSE_IRQ: + } + case VM_IOAPIC_PULSE_IRQ: { + struct vm_ioapic_irq *ioapic_irq; + ioapic_irq = (struct vm_ioapic_irq *)data; error = vioapic_pulse_irq(vm, ioapic_irq->irq); break; + } case VM_IOAPIC_PINCOUNT: *(int *)data = vioapic_pincount(vm); break; case VM_SET_KERNEMU_DEV: case VM_GET_KERNEMU_DEV: { + struct vm_readwrite_kernemu_device *kernemu; mem_region_write_t mwrite; mem_region_read_t mread; int size; @@ -396,60 +412,86 @@ vmmdev_machdep_ioctl(struct vm *vm, struct vcpu *vcpu, u_long cmd, caddr_t data, error = mread(vcpu, kernemu->gpa, &kernemu->value, size, &arg); break; - } - case VM_ISA_ASSERT_IRQ: + } + case VM_ISA_ASSERT_IRQ: { + struct vm_isa_irq *isa_irq; + isa_irq = (struct vm_isa_irq *)data; error = vatpic_assert_irq(vm, isa_irq->atpic_irq); if (error == 0 && isa_irq->ioapic_irq != -1) error = vioapic_assert_irq(vm, isa_irq->ioapic_irq); break; - case VM_ISA_DEASSERT_IRQ: + } + case VM_ISA_DEASSERT_IRQ: { + struct vm_isa_irq *isa_irq; + isa_irq = (struct vm_isa_irq *)data; error = vatpic_deassert_irq(vm, isa_irq->atpic_irq); if (error == 0 && isa_irq->ioapic_irq != -1) error = vioapic_deassert_irq(vm, isa_irq->ioapic_irq); break; - case VM_ISA_PULSE_IRQ: + } + case VM_ISA_PULSE_IRQ: { + struct vm_isa_irq *isa_irq; + isa_irq = (struct vm_isa_irq *)data; error = vatpic_pulse_irq(vm, isa_irq->atpic_irq); if (error == 0 && isa_irq->ioapic_irq != -1) error = vioapic_pulse_irq(vm, isa_irq->ioapic_irq); break; - case VM_ISA_SET_IRQ_TRIGGER: + } + case VM_ISA_SET_IRQ_TRIGGER: { + struct vm_isa_irq_trigger *isa_irq_trigger; + isa_irq_trigger = (struct vm_isa_irq_trigger *)data; error = vatpic_set_irq_trigger(vm, isa_irq_trigger->atpic_irq, isa_irq_trigger->trigger); break; - case VM_SET_SEGMENT_DESCRIPTOR: + } + case VM_SET_SEGMENT_DESCRIPTOR: { + struct vm_seg_desc *vmsegdesc; + vmsegdesc = (struct vm_seg_desc *)data; - error = vm_set_seg_desc(vcpu, - vmsegdesc->regnum, - &vmsegdesc->desc); + error = vm_set_seg_desc(vcpu, vmsegdesc->regnum, + &vmsegdesc->desc); break; - case VM_GET_SEGMENT_DESCRIPTOR: + } + case VM_GET_SEGMENT_DESCRIPTOR: { + struct vm_seg_desc *vmsegdesc; + vmsegdesc = (struct vm_seg_desc *)data; - error = vm_get_seg_desc(vcpu, - vmsegdesc->regnum, - &vmsegdesc->desc); + error = vm_get_seg_desc(vcpu, vmsegdesc->regnum, + &vmsegdesc->desc); break; - case VM_SET_X2APIC_STATE: + } + case VM_SET_X2APIC_STATE: { + struct vm_x2apic *x2apic; + x2apic = (struct vm_x2apic *)data; error = vm_set_x2apic_state(vcpu, x2apic->state); break; - case VM_GET_X2APIC_STATE: + } + case VM_GET_X2APIC_STATE: { + struct vm_x2apic *x2apic; + x2apic = (struct vm_x2apic *)data; error = vm_get_x2apic_state(vcpu, &x2apic->state); break; - case VM_GET_GPA_PMAP: + } + case VM_GET_GPA_PMAP: { + struct vm_gpa_pte *gpapte; + gpapte = (struct vm_gpa_pte *)data; - pmap_get_mapping(vmspace_pmap(vm_vmspace(vm)), - gpapte->gpa, gpapte->pte, &gpapte->ptenum); - error = 0; + pmap_get_mapping(vmspace_pmap(vm_vmspace(vm)), gpapte->gpa, + gpapte->pte, &gpapte->ptenum); break; + } case VM_GET_HPET_CAPABILITIES: error = vhpet_getcap((struct vm_hpet_cap *)data); break; case VM_GLA2GPA: { + struct vm_gla2gpa *gg; + CTASSERT(PROT_READ == VM_PROT_READ); CTASSERT(PROT_WRITE == VM_PROT_WRITE); CTASSERT(PROT_EXEC == VM_PROT_EXECUTE); @@ -460,50 +502,76 @@ vmmdev_machdep_ioctl(struct vm *vm, struct vcpu *vcpu, u_long cmd, caddr_t data, ("%s: vm_gla2gpa unknown error %d", __func__, error)); break; } - case VM_GLA2GPA_NOFAULT: + case VM_GLA2GPA_NOFAULT: { + struct vm_gla2gpa *gg; + gg = (struct vm_gla2gpa *)data; error = vm_gla2gpa_nofault(vcpu, &gg->paging, gg->gla, gg->prot, &gg->gpa, &gg->fault); KASSERT(error == 0 || error == EFAULT, ("%s: vm_gla2gpa unknown error %d", __func__, error)); break; - case VM_SET_INTINFO: + } + case VM_SET_INTINFO: { + struct vm_intinfo *vmii; + vmii = (struct vm_intinfo *)data; error = vm_exit_intinfo(vcpu, vmii->info1); break; - case VM_GET_INTINFO: + } + case VM_GET_INTINFO: { + struct vm_intinfo *vmii; + vmii = (struct vm_intinfo *)data; error = vm_get_intinfo(vcpu, &vmii->info1, &vmii->info2); break; - case VM_RTC_WRITE: + } + case VM_RTC_WRITE: { + struct vm_rtc_data *rtcdata; + rtcdata = (struct vm_rtc_data *)data; error = vrtc_nvram_write(vm, rtcdata->offset, rtcdata->value); break; - case VM_RTC_READ: + } + case VM_RTC_READ: { + struct vm_rtc_data *rtcdata; + rtcdata = (struct vm_rtc_data *)data; error = vrtc_nvram_read(vm, rtcdata->offset, &rtcdata->value); break; - case VM_RTC_SETTIME: + } + case VM_RTC_SETTIME: { + struct vm_rtc_time *rtctime; + rtctime = (struct vm_rtc_time *)data; error = vrtc_set_time(vm, rtctime->secs); break; - case VM_RTC_GETTIME: - error = 0; + } + case VM_RTC_GETTIME: { + struct vm_rtc_time *rtctime; + rtctime = (struct vm_rtc_time *)data; rtctime->secs = vrtc_get_time(vm); break; + } case VM_RESTART_INSTRUCTION: error = vm_restart_instruction(vcpu); break; #ifdef BHYVE_SNAPSHOT - case VM_SNAPSHOT_REQ: + case VM_SNAPSHOT_REQ: { + struct vm_snapshot_meta *snapshot_meta; + snapshot_meta = (struct vm_snapshot_meta *)data; error = vm_snapshot_req(vm, snapshot_meta); break; + } #ifdef COMPAT_FREEBSD13 - case VM_SNAPSHOT_REQ_13: + case VM_SNAPSHOT_REQ_13: { + struct vm_snapshot_meta *snapshot_meta; + struct vm_snapshot_meta_13 *snapshot_13; + /* * The old structure just has an additional pointer at * the start that is ignored. @@ -513,6 +581,7 @@ vmmdev_machdep_ioctl(struct vm *vm, struct vcpu *vcpu, u_long cmd, caddr_t data, (struct vm_snapshot_meta *)&snapshot_13->dev_data; error = vm_snapshot_req(vm, snapshot_meta); break; + } #endif case VM_RESTORE_TIME: error = vm_restore_time(vm); diff --git a/sys/arm/allwinner/aw_sid.c b/sys/arm/allwinner/aw_sid.c index ba5faca33c5e..932c2f189e51 100644 --- a/sys/arm/allwinner/aw_sid.c +++ b/sys/arm/allwinner/aw_sid.c @@ -297,7 +297,7 @@ aw_sid_attach(device_t dev) /* Register ourself so device can resolve who we are */ OF_device_register_xref(OF_xref_from_node(node), dev); - for (i = 0; i < sc->sid_conf->nfuses ;i++) {\ + for (i = 0; i < sc->sid_conf->nfuses; i++) { SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), OID_AUTO, sc->sid_conf->efuses[i].name, diff --git a/sys/arm/arm/elf_machdep.c b/sys/arm/arm/elf_machdep.c index ea6437f320ce..881c4fcff475 100644 --- a/sys/arm/arm/elf_machdep.c +++ b/sys/arm/arm/elf_machdep.c @@ -106,7 +106,7 @@ struct sysentvec elf32_freebsd_sysvec = { }; INIT_SYSENTVEC(elf32_sysvec, &elf32_freebsd_sysvec); -static Elf32_Brandinfo freebsd_brand_info = { +static const Elf32_Brandinfo freebsd_brand_info = { .brand = ELFOSABI_FREEBSD, .machine = EM_ARM, .compat_3_brand = "FreeBSD", @@ -118,7 +118,7 @@ static Elf32_Brandinfo freebsd_brand_info = { .header_supported= elf32_arm_abi_supported, }; -SYSINIT(elf32, SI_SUB_EXEC, SI_ORDER_FIRST, +C_SYSINIT(elf32, SI_SUB_EXEC, SI_ORDER_FIRST, (sysinit_cfunc_t) elf32_insert_brand_entry, &freebsd_brand_info); diff --git a/sys/arm/conf/GENERIC b/sys/arm/conf/GENERIC index 7394f3842d43..22bb75993834 100644 --- a/sys/arm/conf/GENERIC +++ b/sys/arm/conf/GENERIC @@ -270,7 +270,3 @@ makeoptions MODULES_EXTRA+="dtb/nvidia" makeoptions MODULES_EXTRA+="dtb/rockchip" makeoptions MODULES_EXTRA+="dtb/rpi" makeoptions MODULES_EXTRA+="dtb/zynq" - -# SOC-specific modules -makeoptions MODULES_EXTRA+="allwinner" -makeoptions MODULES_EXTRA+="imx" diff --git a/sys/arm/conf/NOTES b/sys/arm/conf/NOTES index 920d721dc3ba..2bd41d911124 100644 --- a/sys/arm/conf/NOTES +++ b/sys/arm/conf/NOTES @@ -92,11 +92,6 @@ nodevice mps nodevice bnxt -# Build SOC-specific modules... - -makeoptions MODULES_EXTRA+="allwinner" -makeoptions MODULES_EXTRA+="imx" - # Build dtb files... makeoptions MODULES_EXTRA+="dtb/allwinner" diff --git a/sys/arm/include/ieeefp.h b/sys/arm/include/ieeefp.h index 57dd058b8a95..57719b883d58 100644 --- a/sys/arm/include/ieeefp.h +++ b/sys/arm/include/ieeefp.h @@ -49,4 +49,14 @@ typedef enum { #define fp_except_t int +/* Augment the userland declarations. */ +__BEGIN_DECLS +extern fp_rnd_t fpgetround(void); +extern fp_rnd_t fpsetround(fp_rnd_t); +extern fp_except_t fpgetmask(void); +extern fp_except_t fpsetmask(fp_except_t); +extern fp_except_t fpgetsticky(void); +extern fp_except_t fpsetsticky(fp_except_t); +__END_DECLS + #endif /* _MACHINE_IEEEFP_H_ */ diff --git a/sys/arm/ti/clk/ti_clkctrl.c b/sys/arm/ti/clk/ti_clkctrl.c index 72fa8548d4f8..06e558d140f2 100644 --- a/sys/arm/ti/clk/ti_clkctrl.c +++ b/sys/arm/ti/clk/ti_clkctrl.c @@ -284,9 +284,9 @@ create_clkctrl(struct ti_clkctrl_softc *sc, cell_t *reg, uint32_t index, uint32_ /* * Check out XX_CLKCTRL-INDEX(offset)-macro dance in - * sys/gnu/dts/dts/include/dt-bindings/clock/am3.h - * sys/gnu/dts/dts/include/dt-bindings/clock/am4.h - * sys/gnu/dts/dts/include/dt-bindings/clock/dra7.h + * sys/contrib/device-tree/include/dt-bindings/clock/am3.h + * sys/contrib/device-tree/include/dt-bindings/clock/am4.h + * sys/contrib/device-tree/include/dt-bindings/clock/dra7.h * reg[0] are in practice the same as the offset described in the dts. */ /* special_gdbclk_reg are 0 or 1 */ diff --git a/sys/arm/ti/ti_pruss.c b/sys/arm/ti/ti_pruss.c index 4e9f2022240c..bae1de9f2ddf 100644 --- a/sys/arm/ti/ti_pruss.c +++ b/sys/arm/ti/ti_pruss.c @@ -793,6 +793,7 @@ static const struct filterops ti_pruss_kq_read = { .f_isfd = 1, .f_detach = ti_pruss_irq_kqread_detach, .f_event = ti_pruss_irq_kqevent, + .f_copy = knote_triv_copy, }; static void diff --git a/sys/arm64/arm64/cpu_errata.c b/sys/arm64/arm64/cpu_errata.c index 989924bc0567..b876703a2a15 100644 --- a/sys/arm64/arm64/cpu_errata.c +++ b/sys/arm64/arm64/cpu_errata.c @@ -52,56 +52,11 @@ struct cpu_quirks { u_int flags; }; -static enum { - SSBD_FORCE_ON, - SSBD_FORCE_OFF, - SSBD_KERNEL, -} ssbd_method = SSBD_KERNEL; - -static cpu_quirk_install install_psci_bp_hardening; -static cpu_quirk_install install_ssbd_workaround; static cpu_quirk_install install_thunderx_bcast_tlbi_workaround; static struct cpu_quirks cpu_quirks[] = { { .midr_mask = CPU_IMPL_MASK | CPU_PART_MASK, - .midr_value = CPU_ID_RAW(CPU_IMPL_ARM, CPU_PART_CORTEX_A57,0,0), - .quirk_install = install_psci_bp_hardening, - .flags = CPU_QUIRK_POST_DEVICE, - }, - { - .midr_mask = CPU_IMPL_MASK | CPU_PART_MASK, - .midr_value = CPU_ID_RAW(CPU_IMPL_ARM, CPU_PART_CORTEX_A72,0,0), - .quirk_install = install_psci_bp_hardening, - .flags = CPU_QUIRK_POST_DEVICE, - }, - { - .midr_mask = CPU_IMPL_MASK | CPU_PART_MASK, - .midr_value = CPU_ID_RAW(CPU_IMPL_ARM, CPU_PART_CORTEX_A73,0,0), - .quirk_install = install_psci_bp_hardening, - .flags = CPU_QUIRK_POST_DEVICE, - }, - { - .midr_mask = CPU_IMPL_MASK | CPU_PART_MASK, - .midr_value = CPU_ID_RAW(CPU_IMPL_ARM, CPU_PART_CORTEX_A75,0,0), - .quirk_install = install_psci_bp_hardening, - .flags = CPU_QUIRK_POST_DEVICE, - }, - { - .midr_mask = CPU_IMPL_MASK | CPU_PART_MASK, - .midr_value = - CPU_ID_RAW(CPU_IMPL_CAVIUM, CPU_PART_THUNDERX2, 0,0), - .quirk_install = install_psci_bp_hardening, - .flags = CPU_QUIRK_POST_DEVICE, - }, - { - .midr_mask = 0, - .midr_value = 0, - .quirk_install = install_ssbd_workaround, - .flags = CPU_QUIRK_POST_DEVICE, - }, - { - .midr_mask = CPU_IMPL_MASK | CPU_PART_MASK, .midr_value = CPU_ID_RAW(CPU_IMPL_CAVIUM, CPU_PART_THUNDERX, 0, 0), .quirk_install = install_thunderx_bcast_tlbi_workaround, @@ -114,57 +69,6 @@ static struct cpu_quirks cpu_quirks[] = { }, }; -static void -install_psci_bp_hardening(void) -{ - /* SMCCC depends on PSCI. If PSCI is missing so is SMCCC */ - if (!psci_present) - return; - - if (smccc_arch_features(SMCCC_ARCH_WORKAROUND_1) != SMCCC_RET_SUCCESS) - return; - - PCPU_SET(bp_harden, smccc_arch_workaround_1); -} - -static void -install_ssbd_workaround(void) -{ - char *env; - - if (PCPU_GET(cpuid) == 0) { - env = kern_getenv("kern.cfg.ssbd"); - if (env != NULL) { - if (strcmp(env, "force-on") == 0) { - ssbd_method = SSBD_FORCE_ON; - } else if (strcmp(env, "force-off") == 0) { - ssbd_method = SSBD_FORCE_OFF; - } - } - } - - /* SMCCC depends on PSCI. If PSCI is missing so is SMCCC */ - if (!psci_present) - return; - - /* Enable the workaround on this CPU if it's enabled in the firmware */ - if (smccc_arch_features(SMCCC_ARCH_WORKAROUND_2) != SMCCC_RET_SUCCESS) - return; - - switch(ssbd_method) { - case SSBD_FORCE_ON: - smccc_arch_workaround_2(1); - break; - case SSBD_FORCE_OFF: - smccc_arch_workaround_2(0); - break; - case SSBD_KERNEL: - default: - PCPU_SET(ssbd, smccc_arch_workaround_2); - break; - } -} - /* * Workaround Cavium erratum 27456. * diff --git a/sys/arm64/arm64/elf32_machdep.c b/sys/arm64/arm64/elf32_machdep.c index 8f8a934ad520..4cb8ee5f57ef 100644 --- a/sys/arm64/arm64/elf32_machdep.c +++ b/sys/arm64/arm64/elf32_machdep.c @@ -210,7 +210,7 @@ freebsd32_fetch_syscall_args(struct thread *td) sa->code = *ap++; nap--; } else if (sa->code == SYS___syscall) { - sa->code = ap[1]; + sa->code = ap[_QUAD_LOWWORD]; nap -= 2; ap += 2; } diff --git a/sys/arm64/arm64/spec_workaround.c b/sys/arm64/arm64/spec_workaround.c new file mode 100644 index 000000000000..7f4f86cdb48c --- /dev/null +++ b/sys/arm64/arm64/spec_workaround.c @@ -0,0 +1,166 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2025 Arm Ltd + * Copyright (c) 2018 Andrew Turner + * + * This software was developed by SRI International and the University of + * Cambridge Computer Laboratory under DARPA/AFRL contract FA8750-10-C-0237 + * ("CTSRD"), as part of the DARPA CRASH research programme. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include <sys/param.h> +#include <sys/kernel.h> +#include <sys/pcpu.h> +#include <sys/systm.h> + +#include <machine/cpu.h> +#include <machine/cpu_feat.h> + +#include <dev/psci/psci.h> +#include <dev/psci/smccc.h> + +static enum { + SSBD_FORCE_ON, + SSBD_FORCE_OFF, + SSBD_KERNEL, +} ssbd_method = SSBD_KERNEL; + +struct psci_bp_hardening_impl { + u_int midr_mask; + u_int midr_value; +}; + +static struct psci_bp_hardening_impl psci_bp_hardening_impl[] = { + { + .midr_mask = CPU_IMPL_MASK | CPU_PART_MASK, + .midr_value = CPU_ID_RAW(CPU_IMPL_ARM, CPU_PART_CORTEX_A57,0,0), + }, + { + .midr_mask = CPU_IMPL_MASK | CPU_PART_MASK, + .midr_value = CPU_ID_RAW(CPU_IMPL_ARM, CPU_PART_CORTEX_A72,0,0), + }, + { + .midr_mask = CPU_IMPL_MASK | CPU_PART_MASK, + .midr_value = CPU_ID_RAW(CPU_IMPL_ARM, CPU_PART_CORTEX_A73,0,0), + }, + { + .midr_mask = CPU_IMPL_MASK | CPU_PART_MASK, + .midr_value = CPU_ID_RAW(CPU_IMPL_ARM, CPU_PART_CORTEX_A75,0,0), + }, + { + .midr_mask = CPU_IMPL_MASK | CPU_PART_MASK, + .midr_value = + CPU_ID_RAW(CPU_IMPL_CAVIUM, CPU_PART_THUNDERX2, 0,0), + } +}; + +static cpu_feat_en +psci_bp_hardening_check(const struct cpu_feat *feat __unused, u_int midr) +{ + size_t i; + + for (i = 0; i < nitems(psci_bp_hardening_impl); i++) { + if ((midr & psci_bp_hardening_impl[i].midr_mask) == + psci_bp_hardening_impl[i].midr_value) { + /* SMCCC depends on PSCI. If PSCI is missing so is SMCCC */ + if (!psci_present) + return (FEAT_ALWAYS_DISABLE); + + if (smccc_arch_features(SMCCC_ARCH_WORKAROUND_1) != + SMCCC_RET_SUCCESS) + return (FEAT_ALWAYS_DISABLE); + + return (FEAT_DEFAULT_ENABLE); + } + } + + return (FEAT_ALWAYS_DISABLE); +} + +static bool +psci_bp_hardening_enable(const struct cpu_feat *feat __unused, + cpu_feat_errata errata_status __unused, u_int *errata_list __unused, + u_int errata_count __unused) +{ + PCPU_SET(bp_harden, smccc_arch_workaround_1); + + return (true); +} + +CPU_FEAT(feat_csv2_missing, "Branch Predictor Hardening", + psci_bp_hardening_check, NULL, psci_bp_hardening_enable, NULL, + CPU_FEAT_AFTER_DEV | CPU_FEAT_PER_CPU); + +static cpu_feat_en +ssbd_workaround_check(const struct cpu_feat *feat __unused, u_int midr __unused) +{ + char *env; + + if (PCPU_GET(cpuid) == 0) { + env = kern_getenv("kern.cfg.ssbd"); + if (env != NULL) { + if (strcmp(env, "force-on") == 0) { + ssbd_method = SSBD_FORCE_ON; + } else if (strcmp(env, "force-off") == 0) { + ssbd_method = SSBD_FORCE_OFF; + } + } + } + + /* SMCCC depends on PSCI. If PSCI is missing so is SMCCC */ + if (!psci_present) + return (FEAT_ALWAYS_DISABLE); + + /* Enable the workaround on this CPU if it's enabled in the firmware */ + if (smccc_arch_features(SMCCC_ARCH_WORKAROUND_2) != SMCCC_RET_SUCCESS) + return (FEAT_ALWAYS_DISABLE); + + return (FEAT_DEFAULT_ENABLE); +} + +static bool +ssbd_workaround_enable(const struct cpu_feat *feat __unused, + cpu_feat_errata errata_status __unused, u_int *errata_list __unused, + u_int errata_count __unused) +{ + switch(ssbd_method) { + case SSBD_FORCE_ON: + smccc_arch_workaround_2(1); + break; + case SSBD_FORCE_OFF: + smccc_arch_workaround_2(0); + break; + case SSBD_KERNEL: + default: + PCPU_SET(ssbd, smccc_arch_workaround_2); + break; + } + + return (true); +} + +CPU_FEAT(feat_ssbs_missing, "Speculator Store Bypass Disable Workaround", + ssbd_workaround_check, NULL, ssbd_workaround_enable, NULL, + CPU_FEAT_AFTER_DEV | CPU_FEAT_PER_CPU); diff --git a/sys/arm64/include/vmm.h b/sys/arm64/include/vmm.h index 84b286a60b38..696a69669a2a 100644 --- a/sys/arm64/include/vmm.h +++ b/sys/arm64/include/vmm.h @@ -177,7 +177,7 @@ DECLARE_VMMOPS_FUNC(int, restore_tsc, (void *vcpui, uint64_t now)); int vm_create(const char *name, struct vm **retvm); struct vcpu *vm_alloc_vcpu(struct vm *vm, int vcpuid); void vm_disable_vcpu_creation(struct vm *vm); -void vm_slock_vcpus(struct vm *vm); +void vm_lock_vcpus(struct vm *vm); void vm_unlock_vcpus(struct vm *vm); void vm_destroy(struct vm *vm); int vm_reinit(struct vm *vm); diff --git a/sys/arm64/vmm/vmm.c b/sys/arm64/vmm/vmm.c index aeda689f3b1a..14ea26c3668c 100644 --- a/sys/arm64/vmm/vmm.c +++ b/sys/arm64/vmm/vmm.c @@ -469,9 +469,9 @@ vm_alloc_vcpu(struct vm *vm, int vcpuid) } void -vm_slock_vcpus(struct vm *vm) +vm_lock_vcpus(struct vm *vm) { - sx_slock(&vm->vcpus_init_lock); + sx_xlock(&vm->vcpus_init_lock); } void @@ -1279,8 +1279,7 @@ vcpu_get_state(struct vcpu *vcpu, int *hostcpu) int vm_get_register(struct vcpu *vcpu, int reg, uint64_t *retval) { - - if (reg >= VM_REG_LAST) + if (reg < 0 || reg >= VM_REG_LAST) return (EINVAL); return (vmmops_getreg(vcpu->cookie, reg, retval)); @@ -1291,7 +1290,7 @@ vm_set_register(struct vcpu *vcpu, int reg, uint64_t val) { int error; - if (reg >= VM_REG_LAST) + if (reg < 0 || reg >= VM_REG_LAST) return (EINVAL); error = vmmops_setreg(vcpu->cookie, reg, val); if (error || reg != VM_REG_GUEST_PC) diff --git a/sys/arm64/vmm/vmm_dev_machdep.c b/sys/arm64/vmm/vmm_dev_machdep.c index 926a74fa528b..29d14e1ba952 100644 --- a/sys/arm64/vmm/vmm_dev_machdep.c +++ b/sys/arm64/vmm/vmm_dev_machdep.c @@ -68,19 +68,13 @@ int vmmdev_machdep_ioctl(struct vm *vm, struct vcpu *vcpu, u_long cmd, caddr_t data, int fflag, struct thread *td) { - struct vm_run *vmrun; - struct vm_vgic_version *vgv; - struct vm_vgic_descr *vgic; - struct vm_irq *vi; - struct vm_exception *vmexc; - struct vm_gla2gpa *gg; - struct vm_msi *vmsi; int error; error = 0; switch (cmd) { case VM_RUN: { struct vm_exit *vme; + struct vm_run *vmrun; vmrun = (struct vm_run *)data; vme = vm_exitinfo(vcpu); @@ -94,41 +88,62 @@ vmmdev_machdep_ioctl(struct vm *vm, struct vcpu *vcpu, u_long cmd, caddr_t data, break; break; } - case VM_INJECT_EXCEPTION: + case VM_INJECT_EXCEPTION: { + struct vm_exception *vmexc; + vmexc = (struct vm_exception *)data; error = vm_inject_exception(vcpu, vmexc->esr, vmexc->far); break; - case VM_GLA2GPA_NOFAULT: + } + case VM_GLA2GPA_NOFAULT: { + struct vm_gla2gpa *gg; + gg = (struct vm_gla2gpa *)data; error = vm_gla2gpa_nofault(vcpu, &gg->paging, gg->gla, gg->prot, &gg->gpa, &gg->fault); KASSERT(error == 0 || error == EFAULT, ("%s: vm_gla2gpa unknown error %d", __func__, error)); break; - case VM_GET_VGIC_VERSION: + } + case VM_GET_VGIC_VERSION: { + struct vm_vgic_version *vgv; + vgv = (struct vm_vgic_version *)data; /* TODO: Query the vgic driver for this */ vgv->version = 3; vgv->flags = 0; error = 0; break; - case VM_ATTACH_VGIC: + } + case VM_ATTACH_VGIC: { + struct vm_vgic_descr *vgic; + vgic = (struct vm_vgic_descr *)data; error = vm_attach_vgic(vm, vgic); break; - case VM_RAISE_MSI: + } + case VM_RAISE_MSI: { + struct vm_msi *vmsi; + vmsi = (struct vm_msi *)data; error = vm_raise_msi(vm, vmsi->msg, vmsi->addr, vmsi->bus, vmsi->slot, vmsi->func); break; - case VM_ASSERT_IRQ: + } + case VM_ASSERT_IRQ: { + struct vm_irq *vi; + vi = (struct vm_irq *)data; error = vm_assert_irq(vm, vi->irq); break; - case VM_DEASSERT_IRQ: + } + case VM_DEASSERT_IRQ: { + struct vm_irq *vi; + vi = (struct vm_irq *)data; error = vm_deassert_irq(vm, vi->irq); break; + } default: error = ENOTTY; break; diff --git a/sys/cam/scsi/scsi_all.c b/sys/cam/scsi/scsi_all.c index 9c097f52d136..fd128e69f1f1 100644 --- a/sys/cam/scsi/scsi_all.c +++ b/sys/cam/scsi/scsi_all.c @@ -686,7 +686,7 @@ scsi_op_desc(uint16_t opcode, struct scsi_inquiry_data *inq_data) opmask = 1 << pd_type; for (j = 0; j < num_tables; j++) { - for (i = 0;i < num_ops[j] && table[j][i].opcode <= opcode; i++){ + for (i = 0; i < num_ops[j] && table[j][i].opcode <= opcode; i++) { if ((table[j][i].opcode == opcode) && ((table[j][i].opmask & opmask) != 0)) return(table[j][i].desc); diff --git a/sys/cam/scsi/scsi_enc_ses.c b/sys/cam/scsi/scsi_enc_ses.c index 435874a9874a..3a362eaf11a4 100644 --- a/sys/cam/scsi/scsi_enc_ses.c +++ b/sys/cam/scsi/scsi_enc_ses.c @@ -2302,7 +2302,7 @@ ses_print_addl_data_sas_type0(char *sesname, struct sbuf *sbp, sbuf_putc(sbp, '\n'); if (addl->proto_data.sasdev_phys == NULL) return; - for (i = 0;i < addl->proto_hdr.sas->base_hdr.num_phys;i++) { + for (i = 0; i < addl->proto_hdr.sas->base_hdr.num_phys; i++) { phy = &addl->proto_data.sasdev_phys[i]; sbuf_printf(sbp, "%s: phy %d:", sesname, i); if (ses_elm_sas_dev_phy_sata_dev(phy)) @@ -2349,7 +2349,7 @@ ses_print_addl_data_sas_type1(char *sesname, struct sbuf *sbp, sbuf_printf(sbp, "Expander: %d phys", num_phys); if (addl->proto_data.sasexp_phys == NULL) return; - for (i = 0;i < num_phys;i++) { + for (i = 0; i < num_phys; i++) { exp_phy = &addl->proto_data.sasexp_phys[i]; sbuf_printf(sbp, "%s: phy %d: connector %d other %d\n", sesname, i, exp_phy->connector_index, @@ -2360,7 +2360,7 @@ ses_print_addl_data_sas_type1(char *sesname, struct sbuf *sbp, sbuf_printf(sbp, "Port: %d phys", num_phys); if (addl->proto_data.sasport_phys == NULL) return; - for (i = 0;i < num_phys;i++) { + for (i = 0; i < num_phys; i++) { port_phy = &addl->proto_data.sasport_phys[i]; sbuf_printf(sbp, "%s: phy %d: id %d connector %d other %d\n", diff --git a/sys/cam/scsi/scsi_pass.c b/sys/cam/scsi/scsi_pass.c index c3587421c176..b44ab866dfe7 100644 --- a/sys/cam/scsi/scsi_pass.c +++ b/sys/cam/scsi/scsi_pass.c @@ -206,7 +206,8 @@ static struct cdevsw pass_cdevsw = { static const struct filterops passread_filtops = { .f_isfd = 1, .f_detach = passreadfiltdetach, - .f_event = passreadfilt + .f_event = passreadfilt, + .f_copy = knote_triv_copy, }; static MALLOC_DEFINE(M_SCSIPASS, "scsi_pass", "scsi passthrough buffers"); diff --git a/sys/cam/scsi/scsi_target.c b/sys/cam/scsi/scsi_target.c index 21c78e35dadc..39ce2bcea8f4 100644 --- a/sys/cam/scsi/scsi_target.c +++ b/sys/cam/scsi/scsi_target.c @@ -108,6 +108,7 @@ static const struct filterops targread_filtops = { .f_isfd = 1, .f_detach = targreadfiltdetach, .f_event = targreadfilt, + .f_copy = knote_triv_copy, }; static struct cdevsw targ_cdevsw = { diff --git a/sys/compat/linprocfs/linprocfs.c b/sys/compat/linprocfs/linprocfs.c index 95b212be1306..7ac48786c77b 100644 --- a/sys/compat/linprocfs/linprocfs.c +++ b/sys/compat/linprocfs/linprocfs.c @@ -2216,6 +2216,67 @@ linprocfs_dosysvipc_shm(PFS_FILL_ARGS) return (0); } +static int +linprocfs_doinotify(const char *sysctl, PFS_FILL_ARGS) +{ + size_t size; + int error, val; + + if (uio->uio_rw == UIO_READ) { + size = sizeof(val); + error = kernel_sysctlbyname(curthread, + __DECONST(void *, sysctl), &val, &size, NULL, 0, 0, 0); + if (error == 0) + sbuf_printf(sb, "%d\n", val); + } else { + char *endp, *newval; + long vall; + + sbuf_trim(sb); + sbuf_finish(sb); + newval = sbuf_data(sb); + vall = strtol(newval, &endp, 10); + if (vall < 0 || vall > INT_MAX || endp == newval || + *endp != '\0') + return (EINVAL); + val = (int)vall; + error = kernel_sysctlbyname(curthread, + __DECONST(void *, sysctl), NULL, NULL, + &val, sizeof(val), 0, 0); + } + return (error); +} + +/* + * Filler function for proc/sys/fs/inotify/max_queued_events + */ +static int +linprocfs_doinotify_max_queued_events(PFS_FILL_ARGS) +{ + return (linprocfs_doinotify("vfs.inotify.max_queued_events", + PFS_FILL_ARGNAMES)); +} + +/* + * Filler function for proc/sys/fs/inotify/max_user_instances + */ +static int +linprocfs_doinotify_max_user_instances(PFS_FILL_ARGS) +{ + return (linprocfs_doinotify("vfs.inotify.max_user_instances", + PFS_FILL_ARGNAMES)); +} + +/* + * Filler function for proc/sys/fs/inotify/max_user_watches + */ +static int +linprocfs_doinotify_max_user_watches(PFS_FILL_ARGS) +{ + return (linprocfs_doinotify("vfs.inotify.max_user_watches", + PFS_FILL_ARGNAMES)); +} + /* * Filler function for proc/sys/fs/mqueue/msg_default */ @@ -2313,9 +2374,7 @@ linprocfs_domqueue_queues_max(PFS_FILL_ARGS) static int linprocfs_init(PFS_INIT_ARGS) { - struct pfs_node *root; - struct pfs_node *dir; - struct pfs_node *sys; + struct pfs_node *dir, *fs, *root, *sys; root = pi->pi_root; @@ -2466,10 +2525,18 @@ linprocfs_init(PFS_INIT_ARGS) NULL, PFS_RD); /* /proc/sys/fs/... */ - pfs_create_dir(sys, &dir, "fs", NULL, NULL, NULL, 0); + pfs_create_dir(sys, &fs, "fs", NULL, NULL, NULL, 0); + + pfs_create_dir(fs, &dir, "inotify", NULL, NULL, NULL, 0); + pfs_create_file(dir, NULL, "max_queued_events", + &linprocfs_doinotify_max_queued_events, NULL, NULL, NULL, PFS_RDWR); + pfs_create_file(dir, NULL, "max_user_instances", + &linprocfs_doinotify_max_user_instances, NULL, NULL, NULL, PFS_RDWR); + pfs_create_file(dir, NULL, "max_user_watches", + &linprocfs_doinotify_max_user_watches, NULL, NULL, NULL, PFS_RDWR); /* /proc/sys/fs/mqueue/... */ - pfs_create_dir(dir, &dir, "mqueue", NULL, NULL, NULL, 0); + pfs_create_dir(fs, &dir, "mqueue", NULL, NULL, NULL, 0); pfs_create_file(dir, NULL, "msg_default", &linprocfs_domqueue_msg_default, NULL, NULL, NULL, PFS_RD); pfs_create_file(dir, NULL, "msgsize_default", diff --git a/sys/compat/linux/linux.c b/sys/compat/linux/linux.c index 61b207070963..a40f110634f7 100644 --- a/sys/compat/linux/linux.c +++ b/sys/compat/linux/linux.c @@ -578,8 +578,13 @@ bsd_to_linux_sockaddr(const struct sockaddr *sa, struct l_sockaddr **lsa, return (0); } +/* + * If sap is NULL, then osa points at already copied in linux sockaddr that + * should be edited in place. Otherwise memory is allocated, sockaddr + * copied in and returned in *sap. + */ int -linux_to_bsd_sockaddr(const struct l_sockaddr *osa, struct sockaddr **sap, +linux_to_bsd_sockaddr(struct l_sockaddr *osa, struct sockaddr **sap, socklen_t *len) { struct sockaddr *sa; @@ -609,10 +614,12 @@ linux_to_bsd_sockaddr(const struct l_sockaddr *osa, struct sockaddr **sap, } #endif - kosa = malloc(salen, M_SONAME, M_WAITOK); - - if ((error = copyin(osa, kosa, *len))) - goto out; + if (sap != NULL) { + kosa = malloc(salen, M_SONAME, M_WAITOK); + if ((error = copyin(osa, kosa, *len))) + goto out; + } else + kosa = osa; bdom = linux_to_bsd_domain(kosa->sa_family); if (bdom == AF_UNKNOWN) { @@ -686,12 +693,15 @@ linux_to_bsd_sockaddr(const struct l_sockaddr *osa, struct sockaddr **sap, sa->sa_family = bdom; sa->sa_len = salen; - *sap = sa; - *len = salen; + if (sap != NULL) { + *sap = sa; + *len = salen; + } return (0); out: - free(kosa, M_SONAME); + if (sap != NULL) + free(kosa, M_SONAME); return (error); } diff --git a/sys/compat/linux/linux_common.h b/sys/compat/linux/linux_common.h index 97f5a259f300..814c183b338a 100644 --- a/sys/compat/linux/linux_common.h +++ b/sys/compat/linux/linux_common.h @@ -43,7 +43,7 @@ sa_family_t bsd_to_linux_domain(sa_family_t domain); #define AF_UNKNOWN UINT8_MAX int bsd_to_linux_sockaddr(const struct sockaddr *sa, struct l_sockaddr **lsa, socklen_t len); -int linux_to_bsd_sockaddr(const struct l_sockaddr *lsa, +int linux_to_bsd_sockaddr(struct l_sockaddr *lsa, struct sockaddr **sap, socklen_t *len); void linux_to_bsd_poll_events(struct thread *td, int fd, short lev, short *bev); diff --git a/sys/compat/linux/linux_event.c b/sys/compat/linux/linux_event.c index e88791659f1f..fc3ef7c3e90a 100644 --- a/sys/compat/linux/linux_event.c +++ b/sys/compat/linux/linux_event.c @@ -104,7 +104,7 @@ static int epoll_create_common(struct thread *td, int flags) { - return (kern_kqueue(td, flags, NULL)); + return (kern_kqueue(td, flags, false, NULL)); } #ifdef LINUX_LEGACY_SYSCALLS diff --git a/sys/compat/linux/linux_ioctl.h b/sys/compat/linux/linux_ioctl.h index ccc25bc919ab..8345b7e4b719 100644 --- a/sys/compat/linux/linux_ioctl.h +++ b/sys/compat/linux/linux_ioctl.h @@ -823,4 +823,16 @@ int linux32_ioctl_register_handler(struct linux_ioctl_handler *h); int linux32_ioctl_unregister_handler(struct linux_ioctl_handler *h); #endif +#define LINUX_IOCTL_SET(n, low, high) \ +static linux_ioctl_function_t n##_linux_ioctl; \ +static struct linux_ioctl_handler n##_linux_handler = { \ + n##_linux_ioctl, \ + low, \ + high \ +}; \ +SYSINIT(n##_ioctl_register, SI_SUB_KLD, SI_ORDER_MIDDLE, \ + linux_ioctl_register_handler, &n##_linux_handler); \ +SYSUNINIT(n##_ioctl_unregister, SI_SUB_KLD, SI_ORDER_MIDDLE, \ + linux_ioctl_unregister_handler, &n##_linux_handler) + #endif /* !_LINUX_IOCTL_H_ */ diff --git a/sys/compat/linux/linux_socket.c b/sys/compat/linux/linux_socket.c index 0e07b0a60ced..b1a483ce611c 100644 --- a/sys/compat/linux/linux_socket.c +++ b/sys/compat/linux/linux_socket.c @@ -2146,7 +2146,8 @@ linux_setsockopt(struct thread *td, struct linux_setsockopt_args *args) return (ENOPROTOOPT); } - if (name == IPV6_NEXTHOP) { + switch (name) { + case IPV6_NEXTHOP: { len = args->optlen; error = linux_to_bsd_sockaddr(PTRIN(args->optval), &sa, &len); if (error != 0) @@ -2155,7 +2156,34 @@ linux_setsockopt(struct thread *td, struct linux_setsockopt_args *args) error = kern_setsockopt(td, args->s, level, name, sa, UIO_SYSSPACE, len); free(sa, M_SONAME); - } else { + break; + } + case MCAST_JOIN_GROUP: + case MCAST_LEAVE_GROUP: + case MCAST_JOIN_SOURCE_GROUP: + case MCAST_LEAVE_SOURCE_GROUP: { + struct group_source_req req; + size_t size; + + size = (name == MCAST_JOIN_SOURCE_GROUP || + name == MCAST_LEAVE_SOURCE_GROUP) ? + sizeof(struct group_source_req) : sizeof(struct group_req); + + if ((error = copyin(PTRIN(args->optval), &req, size))) + return (error); + len = sizeof(struct sockaddr_storage); + if ((error = linux_to_bsd_sockaddr( + (struct l_sockaddr *)&req.gsr_group, NULL, &len))) + return (error); + if (size == sizeof(struct group_source_req) && + (error = linux_to_bsd_sockaddr( + (struct l_sockaddr *)&req.gsr_source, NULL, &len))) + return (error); + error = kern_setsockopt(td, args->s, level, name, &req, + UIO_SYSSPACE, size); + break; + } + default: error = kern_setsockopt(td, args->s, level, name, PTRIN(args->optval), UIO_USERSPACE, args->optlen); } diff --git a/sys/compat/linuxkpi/common/include/linux/bitops.h b/sys/compat/linuxkpi/common/include/linux/bitops.h index 00dd1f9a1ec0..a5a7abd55287 100644 --- a/sys/compat/linuxkpi/common/include/linux/bitops.h +++ b/sys/compat/linuxkpi/common/include/linux/bitops.h @@ -37,13 +37,8 @@ #define BIT(nr) (1UL << (nr)) #define BIT_ULL(nr) (1ULL << (nr)) -#ifdef __LP64__ -#define BITS_PER_LONG 64 -#else -#define BITS_PER_LONG 32 -#endif - -#define BITS_PER_LONG_LONG 64 +#define BITS_PER_LONG (__SIZEOF_LONG__ * __CHAR_BIT__) +#define BITS_PER_LONG_LONG (__SIZEOF_LONG_LONG__ * __CHAR_BIT__) #define BITMAP_FIRST_WORD_MASK(start) (~0UL << ((start) % BITS_PER_LONG)) #define BITMAP_LAST_WORD_MASK(n) (~0UL >> (BITS_PER_LONG - (n))) diff --git a/sys/compat/linuxkpi/common/include/linux/compiler.h b/sys/compat/linuxkpi/common/include/linux/compiler.h index 948396144ad6..4146c829b936 100644 --- a/sys/compat/linuxkpi/common/include/linux/compiler.h +++ b/sys/compat/linuxkpi/common/include/linux/compiler.h @@ -31,6 +31,7 @@ #define _LINUXKPI_LINUX_COMPILER_H_ #include <sys/cdefs.h> +#include <sys/endian.h> #define __user #define __kernel @@ -79,6 +80,13 @@ #else #define __counted_by(_x) #endif +#if BYTE_ORDER == LITTLE_ENDIAN +#define __counted_by_le(_x) __counted_by(_x) +#define __counted_by_be(_x) +#else +#define __counted_by_le(_x) +#define __counted_by_be(_x) __counted_by(_x) +#endif #define likely(x) __builtin_expect(!!(x), 1) #define unlikely(x) __builtin_expect(!!(x), 0) diff --git a/sys/compat/linuxkpi/common/include/linux/device.h b/sys/compat/linuxkpi/common/include/linux/device.h index 7dd6340746d2..c291133e2e0b 100644 --- a/sys/compat/linuxkpi/common/include/linux/device.h +++ b/sys/compat/linuxkpi/common/include/linux/device.h @@ -92,6 +92,7 @@ struct device_driver { const struct dev_pm_ops *pm; void (*shutdown) (struct device *); + void (*coredump) (struct device *); }; struct device_type { diff --git a/sys/compat/linuxkpi/common/include/linux/etherdevice.h b/sys/compat/linuxkpi/common/include/linux/etherdevice.h index 1f2d6cf22d7e..b9a4951de8ac 100644 --- a/sys/compat/linuxkpi/common/include/linux/etherdevice.h +++ b/sys/compat/linuxkpi/common/include/linux/etherdevice.h @@ -27,6 +27,8 @@ #include <linux/types.h> #include <linux/device.h> +#include <linux/skbuff.h> +#include <linux/netdevice.h> #include <sys/random.h> #include <sys/libkern.h> @@ -137,4 +139,25 @@ device_get_mac_address(struct device *dev, char *dst) return (-ENOENT); } +/* Returns network byte order. */ +static inline uint16_t +eth_type_trans(struct sk_buff *skb, struct net_device *dev) +{ + pr_debug("%s: TODO\n", __func__); + return (htons(ETHERTYPE_8023)); +} + +static inline void +eth_hw_addr_set(struct net_device *dev, const u8 *addr) +{ + pr_debug("%s: TODO (if we want to)\n", __func__); +} + +static inline int +eth_platform_get_mac_address(struct device *dev __unused, u8 *addr __unused) +{ + pr_debug("%s: TODO\n", __func__); + return (-ENODEV); +} + #endif /* _LINUXKPI_LINUX_ETHERDEVICE_H_ */ diff --git a/sys/compat/linuxkpi/common/include/linux/fips.h b/sys/compat/linuxkpi/common/include/linux/fips.h new file mode 100644 index 000000000000..25c0c1fc1fa0 --- /dev/null +++ b/sys/compat/linuxkpi/common/include/linux/fips.h @@ -0,0 +1,12 @@ +/* + * Copyright (c) 2025 Bjoern A. Zeeb + * + * SPDX-License-Identifier: BSD-2-Clause + */ + +#ifndef _LINUXKPI_LINUX_FIPS_H +#define _LINUXKPI_LINUX_FIPS_H + +#define fips_enabled 0 + +#endif /* _LINUXKPI_LINUX_FIPS_H */ diff --git a/sys/compat/linuxkpi/common/include/linux/ieee80211.h b/sys/compat/linuxkpi/common/include/linux/ieee80211.h index 17041bb03ce8..ea8c0fc8ef5e 100644 --- a/sys/compat/linuxkpi/common/include/linux/ieee80211.h +++ b/sys/compat/linuxkpi/common/include/linux/ieee80211.h @@ -312,6 +312,7 @@ enum ieee80211_ac_numbers { #define IEEE80211_MLD_CAP_OP_MAX_SIMUL_LINKS 0xf #define IEEE80211_MLD_CAP_OP_TID_TO_LINK_MAP_NEG_SUPP 0x0060 #define IEEE80211_MLD_CAP_OP_TID_TO_LINK_MAP_NEG_SUPP_SAME 1 +#define IEEE80211_MLD_CAP_OP_LINK_RECONF_SUPPORT 0x2000 struct ieee80211_mcs_info { uint8_t rx_mask[IEEE80211_HT_MCS_MASK_LEN]; @@ -365,6 +366,7 @@ enum ieee80211_chanctx_change_flags { IEEE80211_CHANCTX_CHANGE_CHANNEL = BIT(4), IEEE80211_CHANCTX_CHANGE_PUNCTURING = BIT(5), IEEE80211_CHANCTX_CHANGE_MIN_DEF = BIT(6), + IEEE80211_CHANCTX_CHANGE_AP = BIT(7), }; enum ieee80211_frame_release_type { diff --git a/sys/compat/linuxkpi/common/include/linux/netdevice.h b/sys/compat/linuxkpi/common/include/linux/netdevice.h index 3b808a4a1749..cf27753bcb80 100644 --- a/sys/compat/linuxkpi/common/include/linux/netdevice.h +++ b/sys/compat/linuxkpi/common/include/linux/netdevice.h @@ -486,6 +486,21 @@ netdev_priv(const struct net_device *ndev) } /* -------------------------------------------------------------------------- */ + +static __inline void +netif_device_attach(struct net_device *ndev) +{ + pr_debug("%s: TODO\n", __func__); +} + +static __inline void +netif_device_detach(struct net_device *ndev) +{ + pr_debug("%s: TODO\n", __func__); +} + + +/* -------------------------------------------------------------------------- */ /* This is really rtnetlink and probably belongs elsewhere. */ #define rtnl_lock() do { } while(0) diff --git a/sys/compat/linuxkpi/common/include/linux/nl80211.h b/sys/compat/linuxkpi/common/include/linux/nl80211.h index f3979d3a2abc..845ffec4bcba 100644 --- a/sys/compat/linuxkpi/common/include/linux/nl80211.h +++ b/sys/compat/linuxkpi/common/include/linux/nl80211.h @@ -50,6 +50,7 @@ enum nl80211_feature_flags { NL80211_FEATURE_WFA_TPC_IE_IN_PROBES = BIT(15), NL80211_FEATURE_AP_SCAN = BIT(16), NL80211_FEATURE_ACTIVE_MONITOR = BIT(17), + NL80211_FEATURE_SAE = BIT(18), }; enum nl80211_pmsr_ftm_failure_flags { @@ -85,6 +86,7 @@ enum nl80211_reg_rule_flags { NL80211_RRF_NO_6GHZ_AFC_CLIENT = BIT(15), NL80211_RRF_PSD = BIT(16), NL80211_RRF_ALLOW_6GHZ_VLP_AP = BIT(17), + NL80211_RRF_ALLOW_20MHZ_ACTIVITY = BIT(18), }; #define NL80211_RRF_NO_HT40 (NL80211_RRF_NO_HT40MINUS|NL80211_RRF_NO_HT40PLUS) @@ -434,6 +436,14 @@ enum nl80211_hidden_ssid { NL80211_HIDDEN_SSID_NOT_IN_USE, }; +enum nl80211_external_auth_action { + NL80211_EXTERNAL_AUTH_START, +}; + +enum nl80211_rxmgmt_flags { + NL80211_RXMGMT_FLAG_EXTERNAL_AUTH = BIT(1), +}; + #define NL80211_TKIP_DATA_OFFSET_TX_MIC_KEY 16 #define NL80211_TKIP_DATA_OFFSET_RX_MIC_KEY 24 diff --git a/sys/compat/linuxkpi/common/include/linux/pci.h b/sys/compat/linuxkpi/common/include/linux/pci.h index ffc2be600c22..06336bf963d6 100644 --- a/sys/compat/linuxkpi/common/include/linux/pci.h +++ b/sys/compat/linuxkpi/common/include/linux/pci.h @@ -832,6 +832,19 @@ lkpi_pci_restore_state(struct pci_dev *pdev) #define pci_restore_state(dev) lkpi_pci_restore_state(dev) static inline int +linuxkpi_pci_enable_wake(struct pci_dev *pdev, pci_power_t state, bool ena) +{ + /* + * We do not currently support this in device.h either to + * check if the device is allowed to wake up in first place. + */ + pr_debug("%s: TODO\n", __func__); + return (0); +} +#define pci_enable_wake(dev, state, ena) \ + linuxkpi_pci_enable_wake(dev, state, ena) + +static inline int pci_reset_function(struct pci_dev *pdev) { diff --git a/sys/compat/linuxkpi/common/include/linux/platform_device.h b/sys/compat/linuxkpi/common/include/linux/platform_device.h index 6853e709cb70..dba79f5936cc 100644 --- a/sys/compat/linuxkpi/common/include/linux/platform_device.h +++ b/sys/compat/linuxkpi/common/include/linux/platform_device.h @@ -39,7 +39,7 @@ struct platform_device { }; struct platform_driver { - int (*remove)(struct platform_device *); + void (*remove)(struct platform_device *); struct device_driver driver; }; diff --git a/sys/compat/linuxkpi/common/include/linux/skbuff.h b/sys/compat/linuxkpi/common/include/linux/skbuff.h index 6e41c368a8b8..2e560a120e41 100644 --- a/sys/compat/linuxkpi/common/include/linux/skbuff.h +++ b/sys/compat/linuxkpi/common/include/linux/skbuff.h @@ -1159,6 +1159,9 @@ skb_cow_head(struct sk_buff *skb, unsigned int headroom) return (-1); } +/* Misplaced here really but sock comes from skbuff. */ +#define sk_pacing_shift_update(sock, n) + #define SKB_WITH_OVERHEAD(_s) \ (_s) - ALIGN(sizeof(struct skb_shared_info), CACHE_LINE_SIZE) diff --git a/sys/compat/linuxkpi/common/include/linux/soc/mediatek/mtk_wed.h b/sys/compat/linuxkpi/common/include/linux/soc/mediatek/mtk_wed.h index 903053e7f6e8..9f3a1ee4c139 100644 --- a/sys/compat/linuxkpi/common/include/linux/soc/mediatek/mtk_wed.h +++ b/sys/compat/linuxkpi/common/include/linux/soc/mediatek/mtk_wed.h @@ -1,54 +1,36 @@ /*- - * SPDX-License-Identifier: BSD-2-Clause - * - * Copyright (c) 2022-2023 Bjoern A. Zeeb - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. + * Copyright (c) 2022-2025 Bjoern A. Zeeb * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. + * SPDX-License-Identifier: BSD-2-Clause */ #ifndef _LINUXKPI_LINUX_SOC_MEDIATEK_MTK_WED_H #define _LINUXKPI_LINUX_SOC_MEDIATEK_MTK_WED_H +#include <linux/kernel.h> /* pr_debug */ + struct mtk_wed_device { }; #define WED_WO_STA_REC 0x6 -#define mtk_wed_device_start(_dev, _mask) do { } while(0) -#define mtk_wed_device_detach(_dev) do { } while(0) +#define mtk_wed_device_start(_dev, _mask) do { pr_debug("%s: TODO\n", __func__); } while(0) +#define mtk_wed_device_detach(_dev) do { pr_debug("%s: TODO\n", __func__); } while(0) #define mtk_wed_device_irq_get(_dev, _mask) 0 -#define mtk_wed_device_irq_set_mask(_dev, _mask) do { } while(0) -#define mtk_wed_device_update_msg(_dev, _id, _msg, _len) (-ENODEV) -#define mtk_wed_device_dma_reset(_dev) do {} while (0) +#define mtk_wed_device_irq_set_mask(_dev, _mask) do { pr_debug("%s: TODO\n", __func__); } while(0) +#define mtk_wed_device_update_msg(_dev, _id, _msg, _len) ({ pr_debug("%s: TODO\n", __func__); -ENODEV; }) +#define mtk_wed_device_dma_reset(_dev) do { pr_debug("%s: TODO\n", __func__); } while (0) #define mtk_wed_device_ppe_check(_dev, _skb, _reason, _entry) \ - do {} while (0) -#define mtk_wed_device_stop(_dev) do { } while(0) -#define mtk_wed_device_start_hw_rro(_dev, _mask, _b) do { } while(0) -#define mtk_wed_device_setup_tc(_dev, _ndev, _type, _tdata) (-EOPNOTSUPP) + do { pr_debug("%s: TODO\n", __func__); } while (0) +#define mtk_wed_device_stop(_dev) do { pr_debug("%s: TODO\n", __func__); } while(0) +#define mtk_wed_device_start_hw_rro(_dev, _mask, _b) do { pr_debug("%s: TODO\n", __func__); } while(0) +#define mtk_wed_device_setup_tc(_dev, _ndev, _type, _tdata) ({ pr_debug("%s: TODO\n", __func__); -EOPNOTSUPP; }) static inline bool mtk_wed_device_active(struct mtk_wed_device *dev __unused) { + pr_debug("%s: TODO\n", __func__); return (false); } @@ -56,6 +38,7 @@ static inline bool mtk_wed_get_rx_capa(struct mtk_wed_device *dev __unused) { + pr_debug("%s: TODO\n", __func__); return (false); } diff --git a/sys/compat/linuxkpi/common/include/net/cfg80211.h b/sys/compat/linuxkpi/common/include/net/cfg80211.h index 239b4a5ae7b8..f769cfdd4075 100644 --- a/sys/compat/linuxkpi/common/include/net/cfg80211.h +++ b/sys/compat/linuxkpi/common/include/net/cfg80211.h @@ -56,7 +56,7 @@ extern int linuxkpi_debug_80211; #define D80211_IMPROVE 0x2 #endif #define TODO(fmt, ...) if (linuxkpi_debug_80211 & D80211_TODO) \ - printf("%s:%d: XXX LKPI80211 TODO " fmt "\n", __func__, __LINE__, ##__VA_ARGS__) + printf("%s:%d: XXX LKPI80211 TODO " fmt "\n", __func__, __LINE__, ##__VA_ARGS__) #define IMPROVE(fmt, ...) if (linuxkpi_debug_80211 & D80211_IMPROVE) \ printf("%s:%d: XXX LKPI80211 IMPROVE " fmt "\n", __func__, __LINE__, ##__VA_ARGS__) @@ -260,6 +260,19 @@ enum ieee80211_vht_opmode { IEEE80211_OPMODE_NOTIF_RX_NSS_SHIFT = 4, }; +struct cfg80211_bss_ies { + uint8_t *data; + size_t len; +}; + +struct cfg80211_bss { + /* XXX TODO */ + struct cfg80211_bss_ies *ies; + struct cfg80211_bss_ies *beacon_ies; + uint64_t ts_boottime; + int32_t signal; +}; + struct cfg80211_connect_resp_params { /* XXX TODO */ uint8_t *bssid; @@ -267,7 +280,13 @@ struct cfg80211_connect_resp_params { const uint8_t *resp_ie; uint32_t req_ie_len; uint32_t resp_ie_len; - int status; + int status; + struct { + const uint8_t *addr; + const uint8_t *bssid; + struct cfg80211_bss *bss; + uint16_t status; + } links[IEEE80211_MLD_MAX_NUM_LINKS]; }; struct cfg80211_inform_bss { @@ -284,19 +303,12 @@ struct cfg80211_roam_info { uint32_t req_ie_len; uint32_t resp_ie_len; struct linuxkpi_ieee80211_channel *channel; -}; - -struct cfg80211_bss_ies { - uint8_t *data; - size_t len; -}; - -struct cfg80211_bss { - /* XXX TODO */ - struct cfg80211_bss_ies *ies; - struct cfg80211_bss_ies *beacon_ies; - - int32_t signal; + struct { + const uint8_t *addr; + const uint8_t *bssid; + struct cfg80211_bss *bss; + struct linuxkpi_ieee80211_channel *channel; + } links[IEEE80211_MLD_MAX_NUM_LINKS]; }; struct cfg80211_chan_def { @@ -404,6 +416,7 @@ struct cfg80211_scan_request { bool no_cck; bool scan_6ghz; bool duration_mandatory; + bool first_part; int8_t tsf_report_link_id; uint16_t duration; uint32_t flags; @@ -463,6 +476,24 @@ struct cfg80211_beacon_data { uint32_t assocresp_ies_len; }; +struct cfg80211_ap_update { + /* XXX TODO */ + struct cfg80211_beacon_data beacon; +}; + +struct cfg80211_crypto_settings { + /* XXX TODO */ + enum nl80211_wpa_versions wpa_versions; + uint32_t cipher_group; /* WLAN_CIPHER_SUITE_* */ + uint32_t *akm_suites; + uint32_t *ciphers_pairwise; + const uint8_t *sae_pwd; + const uint8_t *psk; + int n_akm_suites; + int n_ciphers_pairwise; + int sae_pwd_len; +}; + struct cfg80211_ap_settings { /* XXX TODO */ int auth_type, beacon_interval, dtim_period, hidden_ssid, inactivity_timeout; @@ -470,6 +501,7 @@ struct cfg80211_ap_settings { size_t ssid_len; struct cfg80211_beacon_data beacon; struct cfg80211_chan_def chandef; + struct cfg80211_crypto_settings crypto; }; struct cfg80211_bss_selection { @@ -484,23 +516,12 @@ struct cfg80211_bss_selection { } param; }; -struct cfg80211_crypto { /* XXX made up name */ - /* XXX TODO */ - enum nl80211_wpa_versions wpa_versions; - uint32_t cipher_group; /* WLAN_CIPHER_SUITE_* */ - uint32_t *akm_suites; - uint32_t *ciphers_pairwise; - const uint8_t *sae_pwd; - const uint8_t *psk; - int n_akm_suites; - int n_ciphers_pairwise; - int sae_pwd_len; -}; - struct cfg80211_connect_params { /* XXX TODO */ struct linuxkpi_ieee80211_channel *channel; + struct linuxkpi_ieee80211_channel *channel_hint; uint8_t *bssid; + uint8_t *bssid_hint; const uint8_t *ie; const uint8_t *ssid; uint32_t ie_len; @@ -509,7 +530,7 @@ struct cfg80211_connect_params { uint32_t key_len; int auth_type, key_idx, privacy, want_1x; struct cfg80211_bss_selection bss_select; - struct cfg80211_crypto crypto; + struct cfg80211_crypto_settings crypto; }; enum bss_param_flags { /* Used as bitflags. XXX FIXME values? */ @@ -538,6 +559,14 @@ struct cfg80211_mgmt_tx_params { int wait; }; +struct cfg80211_external_auth_params { + uint8_t bssid[ETH_ALEN]; + uint16_t status; + enum nl80211_external_auth_action action; + unsigned int key_mgmt_suite; + struct cfg80211_ssid ssid; +}; + struct cfg80211_pmk_conf { /* XXX TODO */ const uint8_t *pmk; @@ -548,6 +577,8 @@ struct cfg80211_pmksa { /* XXX TODO */ const uint8_t *bssid; const uint8_t *pmkid; + const uint8_t *ssid; + size_t ssid_len; }; struct station_del_parameters { @@ -961,6 +992,27 @@ struct cfg80211_set_hw_timestamp { bool enable; }; +struct survey_info { /* net80211::struct ieee80211_channel_survey */ + /* TODO FIXME */ + uint32_t filled; +#define SURVEY_INFO_TIME 0x0001 +#define SURVEY_INFO_TIME_RX 0x0002 +#define SURVEY_INFO_TIME_SCAN 0x0004 +#define SURVEY_INFO_TIME_TX 0x0008 +#define SURVEY_INFO_TIME_BSS_RX 0x0010 +#define SURVEY_INFO_TIME_BUSY 0x0020 +#define SURVEY_INFO_IN_USE 0x0040 +#define SURVEY_INFO_NOISE_DBM 0x0080 + uint32_t noise; + uint64_t time; + uint64_t time_bss_rx; + uint64_t time_busy; + uint64_t time_rx; + uint64_t time_scan; + uint64_t time_tx; + struct linuxkpi_ieee80211_channel *channel; +}; + enum wiphy_vendor_cmd_need_flags { WIPHY_VENDOR_CMD_NEED_NETDEV = 0x01, WIPHY_VENDOR_CMD_NEED_RUNNING = 0x02, @@ -1118,49 +1170,53 @@ struct wireless_dev { struct cfg80211_ops { /* XXX TODO */ struct wireless_dev *(*add_virtual_intf)(struct wiphy *, const char *, unsigned char, enum nl80211_iftype, struct vif_params *); - int (*del_virtual_intf)(struct wiphy *, struct wireless_dev *); - s32 (*change_virtual_intf)(struct wiphy *, struct net_device *, enum nl80211_iftype, struct vif_params *); - s32 (*scan)(struct wiphy *, struct cfg80211_scan_request *); - s32 (*set_wiphy_params)(struct wiphy *, u32); - s32 (*join_ibss)(struct wiphy *, struct net_device *, struct cfg80211_ibss_params *); - s32 (*leave_ibss)(struct wiphy *, struct net_device *); - s32 (*get_station)(struct wiphy *, struct net_device *, const u8 *, struct station_info *); - int (*dump_station)(struct wiphy *, struct net_device *, int, u8 *, struct station_info *); - s32 (*set_tx_power)(struct wiphy *, struct wireless_dev *, enum nl80211_tx_power_setting, s32); - s32 (*get_tx_power)(struct wiphy *, struct wireless_dev *, s32 *); - s32 (*add_key)(struct wiphy *, struct net_device *, u8, bool, const u8 *, struct key_params *); - s32 (*del_key)(struct wiphy *, struct net_device *, u8, bool, const u8 *); - s32 (*get_key)(struct wiphy *, struct net_device *, u8, bool, const u8 *, void *, void(*)(void *, struct key_params *)); - s32 (*set_default_key)(struct wiphy *, struct net_device *, u8, bool, bool); - s32 (*set_default_mgmt_key)(struct wiphy *, struct net_device *, u8); - s32 (*set_power_mgmt)(struct wiphy *, struct net_device *, bool, s32); - s32 (*connect)(struct wiphy *, struct net_device *, struct cfg80211_connect_params *); - s32 (*disconnect)(struct wiphy *, struct net_device *, u16); - s32 (*suspend)(struct wiphy *, struct cfg80211_wowlan *); - s32 (*resume)(struct wiphy *); - s32 (*set_pmksa)(struct wiphy *, struct net_device *, struct cfg80211_pmksa *); - s32 (*del_pmksa)(struct wiphy *, struct net_device *, struct cfg80211_pmksa *); - s32 (*flush_pmksa)(struct wiphy *, struct net_device *); - s32 (*start_ap)(struct wiphy *, struct net_device *, struct cfg80211_ap_settings *); - int (*stop_ap)(struct wiphy *, struct net_device *); - s32 (*change_beacon)(struct wiphy *, struct net_device *, struct cfg80211_beacon_data *); - int (*del_station)(struct wiphy *, struct net_device *, struct station_del_parameters *); - int (*change_station)(struct wiphy *, struct net_device *, const u8 *, struct station_parameters *); + int (*del_virtual_intf)(struct wiphy *, struct wireless_dev *); + int (*change_virtual_intf)(struct wiphy *, struct net_device *, enum nl80211_iftype, struct vif_params *); + int (*scan)(struct wiphy *, struct cfg80211_scan_request *); + int (*set_wiphy_params)(struct wiphy *, int, uint32_t); + int (*join_ibss)(struct wiphy *, struct net_device *, struct cfg80211_ibss_params *); + int (*leave_ibss)(struct wiphy *, struct net_device *); + int (*get_station)(struct wiphy *, struct net_device *, const uint8_t *, struct station_info *); + int (*dump_station)(struct wiphy *, struct net_device *, int, uint8_t *, struct station_info *); + int (*set_tx_power)(struct wiphy *, struct wireless_dev *, int, enum nl80211_tx_power_setting, int); + int (*get_tx_power)(struct wiphy *, struct wireless_dev *, int, unsigned int, int *); + int (*add_key)(struct wiphy *, struct net_device *, int, uint8_t, bool, const uint8_t *, struct key_params *); + int (*del_key)(struct wiphy *, struct net_device *, int, uint8_t, bool, const uint8_t *); + int (*get_key)(struct wiphy *, struct net_device *, int, uint8_t, bool, const uint8_t *, void *, void(*)(void *, struct key_params *)); + int (*set_default_key)(struct wiphy *, struct net_device *, int, uint8_t, bool, bool); + int (*set_default_mgmt_key)(struct wiphy *, struct net_device *, int, uint8_t); + int (*set_power_mgmt)(struct wiphy *, struct net_device *, bool, int); + int (*connect)(struct wiphy *, struct net_device *, struct cfg80211_connect_params *); + int (*disconnect)(struct wiphy *, struct net_device *, uint16_t); + int (*suspend)(struct wiphy *, struct cfg80211_wowlan *); + int (*resume)(struct wiphy *); + int (*set_pmksa)(struct wiphy *, struct net_device *, struct cfg80211_pmksa *); + int (*del_pmksa)(struct wiphy *, struct net_device *, struct cfg80211_pmksa *); + int (*flush_pmksa)(struct wiphy *, struct net_device *); + int (*start_ap)(struct wiphy *, struct net_device *, struct cfg80211_ap_settings *); + int (*stop_ap)(struct wiphy *, struct net_device *, unsigned int); + int (*change_beacon)(struct wiphy *, struct net_device *, struct cfg80211_ap_update *); + int (*del_station)(struct wiphy *, struct net_device *, struct station_del_parameters *); + int (*change_station)(struct wiphy *, struct net_device *, const uint8_t *, struct station_parameters *); int (*sched_scan_start)(struct wiphy *, struct net_device *, struct cfg80211_sched_scan_request *); - int (*sched_scan_stop)(struct wiphy *, struct net_device *, u64); + int (*sched_scan_stop)(struct wiphy *, struct net_device *, uint64_t); void (*update_mgmt_frame_registrations)(struct wiphy *, struct wireless_dev *, struct mgmt_frame_regs *); - int (*mgmt_tx)(struct wiphy *, struct wireless_dev *, struct cfg80211_mgmt_tx_params *, u64 *); - int (*cancel_remain_on_channel)(struct wiphy *, struct wireless_dev *, u64); - int (*get_channel)(struct wiphy *, struct wireless_dev *, struct cfg80211_chan_def *); - int (*crit_proto_start)(struct wiphy *, struct wireless_dev *, enum nl80211_crit_proto_id, u16); + int (*mgmt_tx)(struct wiphy *, struct wireless_dev *, struct cfg80211_mgmt_tx_params *, uint64_t *); + int (*cancel_remain_on_channel)(struct wiphy *, struct wireless_dev *, uint64_t); + int (*get_channel)(struct wiphy *, struct wireless_dev *, unsigned int, struct cfg80211_chan_def *); + int (*crit_proto_start)(struct wiphy *, struct wireless_dev *, enum nl80211_crit_proto_id, uint16_t); void (*crit_proto_stop)(struct wiphy *, struct wireless_dev *); - int (*tdls_oper)(struct wiphy *, struct net_device *, const u8 *, enum nl80211_tdls_operation); - int (*update_connect_params)(struct wiphy *, struct net_device *, struct cfg80211_connect_params *, u32); - int (*set_pmk)(struct wiphy *, struct net_device *, const struct cfg80211_pmk_conf *); - int (*del_pmk)(struct wiphy *, struct net_device *, const u8 *); - int (*remain_on_channel)(struct wiphy *, struct wireless_dev *, struct linuxkpi_ieee80211_channel *, unsigned int, u64 *); - int (*start_p2p_device)(struct wiphy *, struct wireless_dev *); - void (*stop_p2p_device)(struct wiphy *, struct wireless_dev *); + int (*tdls_oper)(struct wiphy *, struct net_device *, const uint8_t *, enum nl80211_tdls_operation); + int (*update_connect_params)(struct wiphy *, struct net_device *, struct cfg80211_connect_params *, uint32_t); + int (*set_pmk)(struct wiphy *, struct net_device *, const struct cfg80211_pmk_conf *); + int (*del_pmk)(struct wiphy *, struct net_device *, const uint8_t *); + int (*remain_on_channel)(struct wiphy *, struct wireless_dev *, struct linuxkpi_ieee80211_channel *, unsigned int, uint64_t *); + int (*start_p2p_device)(struct wiphy *, struct wireless_dev *); + void (*stop_p2p_device)(struct wiphy *, struct wireless_dev *); + int (*dump_survey)(struct wiphy *, struct net_device *, int, struct survey_info *); + int (*external_auth)(struct wiphy *, struct net_device *, struct cfg80211_external_auth_params *); + int (*set_cqm_rssi_range_config)(struct wiphy *, struct net_device *, int, int); + }; @@ -1179,6 +1235,8 @@ void linuxkpi_wiphy_delayed_work_queue(struct wiphy *, struct wiphy_delayed_work *, unsigned long); void linuxkpi_wiphy_delayed_work_cancel(struct wiphy *, struct wiphy_delayed_work *); +void linuxkpi_wiphy_delayed_work_flush(struct wiphy *, + struct wiphy_delayed_work *); int linuxkpi_regulatory_set_wiphy_regd_sync(struct wiphy *wiphy, struct linuxkpi_ieee80211_regdomain *regd); @@ -1247,6 +1305,21 @@ wiphy_rfkill_set_hw_state_reason(struct wiphy *wiphy, bool blocked, /* -------------------------------------------------------------------------- */ +static inline int +cfg80211_register_netdevice(struct net_device *ndev) +{ + TODO(); + return (-ENXIO); +} + +static inline void +cfg80211_unregister_netdevice(struct net_device *ndev) +{ + TODO(); +} + +/* -------------------------------------------------------------------------- */ + static inline struct cfg80211_bss * cfg80211_get_bss(struct wiphy *wiphy, struct linuxkpi_ieee80211_channel *chan, const uint8_t *bssid, const uint8_t *ssid, size_t ssid_len, @@ -1309,15 +1382,15 @@ reg_query_regdb_wmm(uint8_t *alpha2, uint32_t center_freq, return (-ENODATA); } -static __inline const u8 * -cfg80211_find_ie_match(uint32_t f, const u8 *ies, size_t ies_len, - const u8 *match, int x, int y) +static __inline const uint8_t * +cfg80211_find_ie_match(uint32_t f, const uint8_t *ies, size_t ies_len, + const uint8_t *match, int x, int y) { TODO(); return (NULL); } -static __inline const u8 * +static __inline const uint8_t * cfg80211_find_ie(uint8_t eid, const uint8_t *ie, uint32_t ielen) { TODO(); @@ -1339,6 +1412,36 @@ cfg80211_pmsr_report(struct wireless_dev *wdev, TODO(); } +static inline int +nl80211_chan_width_to_mhz(enum nl80211_chan_width width) +{ + switch (width) { + case NL80211_CHAN_WIDTH_5: + return (5); + break; + case NL80211_CHAN_WIDTH_10: + return (10); + break; + case NL80211_CHAN_WIDTH_20_NOHT: + case NL80211_CHAN_WIDTH_20: + return (20); + break; + case NL80211_CHAN_WIDTH_40: + return (40); + break; + case NL80211_CHAN_WIDTH_80: + case NL80211_CHAN_WIDTH_80P80: + return (80); + break; + case NL80211_CHAN_WIDTH_160: + return (160); + break; + case NL80211_CHAN_WIDTH_320: + return (320); + break; + } +} + static inline void cfg80211_chandef_create(struct cfg80211_chan_def *chandef, struct linuxkpi_ieee80211_channel *chan, enum nl80211_channel_type chan_type) @@ -1377,6 +1480,12 @@ cfg80211_chandef_valid(const struct cfg80211_chan_def *chandef) return (false); } +static inline int +cfg80211_chandef_get_width(const struct cfg80211_chan_def *chandef) +{ + return (nl80211_chan_width_to_mhz(chandef->width)); +} + static __inline bool cfg80211_chandef_dfs_usable(struct wiphy *wiphy, const struct cfg80211_chan_def *chandef) { @@ -1688,8 +1797,8 @@ cfg80211_disconnected(struct net_device *ndev, uint16_t reason, } static __inline int -cfg80211_get_p2p_attr(const u8 *ie, u32 ie_len, - enum ieee80211_p2p_attr_ids attr, u8 *p, size_t p_len) +cfg80211_get_p2p_attr(const uint8_t *ie, uint32_t ie_len, + enum ieee80211_p2p_attr_ids attr, uint8_t *p, size_t p_len) { TODO(); return (-1); @@ -1725,13 +1834,13 @@ cfg80211_inform_bss_data(struct wiphy *wiphy, static __inline void cfg80211_mgmt_tx_status(struct wireless_dev *wdev, uint64_t cookie, - const u8 *buf, size_t len, bool ack, gfp_t gfp) + const uint8_t *buf, size_t len, bool ack, gfp_t gfp) { TODO(); } static __inline void -cfg80211_michael_mic_failure(struct net_device *ndev, const uint8_t *addr, +cfg80211_michael_mic_failure(struct net_device *ndev, const uint8_t addr[ETH_ALEN], enum nl80211_key_type key_type, int _x, void *p, gfp_t gfp) { TODO(); @@ -1751,8 +1860,8 @@ cfg80211_del_sta(struct net_device *ndev, const uint8_t *addr, gfp_t gfp) } static __inline void -cfg80211_port_authorized(struct net_device *ndev, const uint8_t *bssid, - gfp_t gfp) +cfg80211_port_authorized(struct net_device *ndev, const uint8_t *addr, + const uint8_t *bitmap, uint8_t len, gfp_t gfp) { TODO(); } @@ -1935,7 +2044,7 @@ cfg80211_background_radar_event(struct wiphy *wiphy, TODO(); } -static __inline const u8 * +static __inline const uint8_t * cfg80211_find_ext_ie(uint8_t eid, const uint8_t *p, size_t len) { TODO(); @@ -2033,6 +2142,14 @@ cfg80211_get_iftype_ext_capa(struct wiphy *wiphy, enum nl80211_iftype iftype) return (NULL); } +static inline int +cfg80211_external_auth_request(struct net_device *ndev, + struct cfg80211_external_auth_params *params, gfp_t gfp) +{ + TODO(); + return (-ENXIO); +} + static inline uint16_t ieee80211_get_he_6ghz_capa(const struct ieee80211_supported_band *sband, enum nl80211_iftype iftype) @@ -2041,36 +2158,6 @@ ieee80211_get_he_6ghz_capa(const struct ieee80211_supported_band *sband, return (0); } -static inline int -nl80211_chan_width_to_mhz(enum nl80211_chan_width width) -{ - switch (width) { - case NL80211_CHAN_WIDTH_5: - return (5); - break; - case NL80211_CHAN_WIDTH_10: - return (10); - break; - case NL80211_CHAN_WIDTH_20_NOHT: - case NL80211_CHAN_WIDTH_20: - return (20); - break; - case NL80211_CHAN_WIDTH_40: - return (40); - break; - case NL80211_CHAN_WIDTH_80: - case NL80211_CHAN_WIDTH_80P80: - return (80); - break; - case NL80211_CHAN_WIDTH_160: - return (160); - break; - case NL80211_CHAN_WIDTH_320: - return (320); - break; - } -} - static __inline ssize_t wiphy_locked_debugfs_read(struct wiphy *wiphy, struct file *file, char *buf, size_t bufsize, const char __user *userbuf, size_t count, @@ -2093,6 +2180,13 @@ wiphy_locked_debugfs_write(struct wiphy *wiphy, struct file *file, return (-ENXIO); } +static inline void +cfg80211_cqm_rssi_notify(struct net_device *dev, + enum nl80211_cqm_rssi_threshold_event rssi_te, int32_t rssi, gfp_t gfp) +{ + TODO(); +} + /* -------------------------------------------------------------------------- */ static inline void @@ -2140,6 +2234,12 @@ wiphy_delayed_work_cancel(struct wiphy *wiphy, struct wiphy_delayed_work *wdwk) linuxkpi_wiphy_delayed_work_cancel(wiphy, wdwk); } +static inline void +wiphy_delayed_work_flush(struct wiphy *wiphy, struct wiphy_delayed_work *wdwk) +{ + linuxkpi_wiphy_delayed_work_flush(wiphy, wdwk); +} + /* -------------------------------------------------------------------------- */ #define wiphy_err(_wiphy, _fmt, ...) \ diff --git a/sys/compat/linuxkpi/common/include/net/mac80211.h b/sys/compat/linuxkpi/common/include/net/mac80211.h index 8de03410c6b6..523836b52a40 100644 --- a/sys/compat/linuxkpi/common/include/net/mac80211.h +++ b/sys/compat/linuxkpi/common/include/net/mac80211.h @@ -166,7 +166,7 @@ enum ieee80211_bss_changed { #define WLAN_AKM_SUITE_PSK_SHA256 WLAN_AKM_SUITE(6) /* TDLS 7 */ #define WLAN_AKM_SUITE_SAE WLAN_AKM_SUITE(8) -/* FToSAE 9 */ +#define WLAN_AKM_SUITE_FT_OVER_SAE WLAN_AKM_SUITE(9) /* AP peer key 10 */ /* 802.1x suite B 11 */ /* 802.1x suite B 384 12 */ @@ -857,7 +857,8 @@ struct ieee80211_vif_chanctx_switch { }; struct ieee80211_prep_tx_info { - u16 duration; + uint16_t duration; + uint16_t subtype; bool success; bool was_assoc; int link_id; @@ -904,27 +905,6 @@ struct linuxkpi_ieee80211_tim_ie { }; #define ieee80211_tim_ie linuxkpi_ieee80211_tim_ie -struct survey_info { /* net80211::struct ieee80211_channel_survey */ - /* TODO FIXME */ - uint32_t filled; -#define SURVEY_INFO_TIME 0x0001 -#define SURVEY_INFO_TIME_RX 0x0002 -#define SURVEY_INFO_TIME_SCAN 0x0004 -#define SURVEY_INFO_TIME_TX 0x0008 -#define SURVEY_INFO_TIME_BSS_RX 0x0010 -#define SURVEY_INFO_TIME_BUSY 0x0020 -#define SURVEY_INFO_IN_USE 0x0040 -#define SURVEY_INFO_NOISE_DBM 0x0080 - uint32_t noise; - uint64_t time; - uint64_t time_bss_rx; - uint64_t time_busy; - uint64_t time_rx; - uint64_t time_scan; - uint64_t time_tx; - struct ieee80211_channel *channel; -}; - enum ieee80211_iface_iter { IEEE80211_IFACE_ITER_NORMAL = BIT(0), IEEE80211_IFACE_ITER_RESUME_ALL = BIT(1), @@ -1553,6 +1533,15 @@ ieee80211_iter_chan_contexts_atomic(struct ieee80211_hw *hw, } static __inline void +ieee80211_iter_chan_contexts_mtx(struct ieee80211_hw *hw, + void (*iterfunc)(struct ieee80211_hw *, struct ieee80211_chanctx_conf *, void *), + void *arg) +{ + IMPROVE("XXX LKPI80211 TODO MTX\n"); + linuxkpi_ieee80211_iterate_chan_contexts(hw, iterfunc, arg); +} + +static __inline void ieee80211_iterate_stations_atomic(struct ieee80211_hw *hw, void (*iterfunc)(void *, struct ieee80211_sta *), void *arg) { @@ -2063,7 +2052,7 @@ ieee80211_tx_dequeue_ni(struct ieee80211_hw *hw, struct ieee80211_txq *txq) static __inline void ieee80211_update_mu_groups(struct ieee80211_vif *vif, - u_int _i, uint8_t *ms, uint8_t *up) + u_int link_id, const uint8_t *ms, const uint8_t *up) { TODO(); } diff --git a/sys/compat/linuxkpi/common/include/net/netmem.h b/sys/compat/linuxkpi/common/include/net/netmem.h new file mode 100644 index 000000000000..c8de09a2e8c2 --- /dev/null +++ b/sys/compat/linuxkpi/common/include/net/netmem.h @@ -0,0 +1,21 @@ +/*- + * Copyright (c) 2023-2025 Bjoern A. Zeeb + * + * SPDX-License-Identifier: BSD-2-Clause + */ + +#ifndef _LINUXKPI_NET_NETMEM_H +#define _LINUXKPI_NET_NETMEM_H + +struct page_pool; + +struct netmem_desc { + struct page_pool *pp; +}; + +#define pp_page_to_nmdesc(page) \ + (_Generic((page), \ + const struct page *: (const struct netmem_desc *)(page), \ + struct page *: (struct netmem_desc *)(page))) + +#endif /* _LINUXKPI_NET_NETMEM_H */ diff --git a/sys/compat/linuxkpi/common/include/net/page_pool.h b/sys/compat/linuxkpi/common/include/net/page_pool.h deleted file mode 100644 index 2dc8f74b31f3..000000000000 --- a/sys/compat/linuxkpi/common/include/net/page_pool.h +++ /dev/null @@ -1,119 +0,0 @@ -/*- - * Copyright (c) 2023 Bjoern A. Zeeb - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#ifndef _LINUXKPI_NET_PAGE_POOL_H -#define _LINUXKPI_NET_PAGE_POOL_H - -#include <linux/kernel.h> /* pr_debug */ -#include <linux/types.h> -#include <linux/dma-mapping.h> -#include <linux/netdevice.h> - -struct device; - -struct page_pool_params { - struct device *dev; - uint32_t flags; - uint32_t order; - uint32_t pool_size; - uint32_t max_len; - uint32_t offset; - int nid; /* NUMA */ - enum dma_data_direction dma_dir; - struct napi_struct *napi; -}; - -struct page_pool { -}; - -#define PP_FLAG_DMA_MAP BIT(0) -#define PP_FLAG_DMA_SYNC_DEV BIT(1) -#define PP_FLAG_PAGE_FRAG BIT(2) - -static inline struct page_pool * -page_pool_create(const struct page_pool_params *ppparams) -{ - - pr_debug("%s: TODO\n", __func__); - return (NULL); -} - -static inline void -page_pool_destroy(struct page_pool *ppool) -{ - - pr_debug("%s: TODO\n", __func__); -} - -static inline struct page * -page_pool_dev_alloc_frag(struct page_pool *ppool, uint32_t *offset, - size_t size) -{ - - pr_debug("%s: TODO\n", __func__); - return (NULL); -} - -static inline dma_addr_t -page_pool_get_dma_addr(struct page *page) -{ - - pr_debug("%s: TODO\n", __func__); - return (0); -} - -static inline enum dma_data_direction -page_pool_get_dma_dir(const struct page_pool *ppool) -{ - - pr_debug("%s: TODO\n", __func__); - return (DMA_BIDIRECTIONAL); -} - -static inline void -page_pool_put_full_page(struct page_pool *ppool, struct page *page, - bool allow_direct) -{ - - pr_debug("%s: TODO\n", __func__); -} - -static inline int -page_pool_ethtool_stats_get_count(void) -{ - - pr_debug("%s: TODO\n", __func__); - return (0); -} - -static inline uint8_t * -page_pool_ethtool_stats_get_strings(uint8_t *x) -{ - - pr_debug("%s: TODO\n", __func__); - return (x); -} - -#endif /* _LINUXKPI_NET_PAGE_POOL_H */ diff --git a/sys/compat/linuxkpi/common/include/net/page_pool/helpers.h b/sys/compat/linuxkpi/common/include/net/page_pool/helpers.h new file mode 100644 index 000000000000..3469c39c7757 --- /dev/null +++ b/sys/compat/linuxkpi/common/include/net/page_pool/helpers.h @@ -0,0 +1,79 @@ +/*- + * Copyright (c) 2023-2025 Bjoern A. Zeeb + * + * SPDX-License-Identifier: BSD-2-Clause + */ + +#ifndef _LINUXKPI_NET_PAGE_POOL_HELPERS_H +#define _LINUXKPI_NET_PAGE_POOL_HELPERS_H + +#include <linux/kernel.h> /* pr_debug */ +#include <linux/types.h> +#include <linux/dma-mapping.h> +#include <net/page_pool/types.h> + +static inline struct page_pool * +page_pool_create(const struct page_pool_params *ppparams) +{ + + pr_debug("%s: TODO\n", __func__); + return (NULL); +} + +static inline void +page_pool_destroy(struct page_pool *ppool) +{ + + pr_debug("%s: TODO\n", __func__); +} + +static inline struct page * +page_pool_dev_alloc_frag(struct page_pool *ppool, uint32_t *offset, + size_t size) +{ + + pr_debug("%s: TODO\n", __func__); + return (NULL); +} + +static inline dma_addr_t +page_pool_get_dma_addr(struct page *page) +{ + + pr_debug("%s: TODO\n", __func__); + return (0); +} + +static inline enum dma_data_direction +page_pool_get_dma_dir(const struct page_pool *ppool) +{ + + pr_debug("%s: TODO\n", __func__); + return (DMA_BIDIRECTIONAL); +} + +static inline void +page_pool_put_full_page(struct page_pool *ppool, struct page *page, + bool allow_direct) +{ + + pr_debug("%s: TODO\n", __func__); +} + +static inline int +page_pool_ethtool_stats_get_count(void) +{ + + pr_debug("%s: TODO\n", __func__); + return (0); +} + +static inline uint8_t * +page_pool_ethtool_stats_get_strings(uint8_t *x) +{ + + pr_debug("%s: TODO\n", __func__); + return (x); +} + +#endif /* _LINUXKPI_NET_PAGE_POOL_HELPERS_H */ diff --git a/sys/compat/linuxkpi/common/include/net/page_pool/types.h b/sys/compat/linuxkpi/common/include/net/page_pool/types.h new file mode 100644 index 000000000000..6747be50b9b2 --- /dev/null +++ b/sys/compat/linuxkpi/common/include/net/page_pool/types.h @@ -0,0 +1,36 @@ +/*- + * Copyright (c) 2023-2025 Bjoern A. Zeeb + * + * SPDX-License-Identifier: BSD-2-Clause + */ + +#ifndef _LINUXKPI_NET_PAGE_POOL_TYPES_H +#define _LINUXKPI_NET_PAGE_POOL_TYPES_H + +#include <linux/types.h> +#include <linux/dma-mapping.h> +#include <net/netmem.h> + +struct device; +struct napi_struct; + +struct page_pool_params { + struct device *dev; + uint32_t flags; + uint32_t order; + uint32_t pool_size; + uint32_t max_len; + uint32_t offset; + int nid; /* NUMA */ + enum dma_data_direction dma_dir; + struct napi_struct *napi; +}; + +struct page_pool { +}; + +#define PP_FLAG_DMA_MAP BIT(0) +#define PP_FLAG_DMA_SYNC_DEV BIT(1) +#define PP_FLAG_PAGE_FRAG BIT(2) + +#endif /* _LINUXKPI_NET_PAGE_POOL_TYPES_H */ diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index bc4b334de28e..0dc3b2631804 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -7833,7 +7833,7 @@ lkpi_wiphy_delayed_work_timer(struct timer_list *tl) struct wiphy_delayed_work *wdwk; wdwk = timer_container_of(wdwk, tl, timer); - wiphy_work_queue(wdwk->wiphy, &wdwk->work); + wiphy_work_queue(wdwk->wiphy, &wdwk->work); } void @@ -7858,6 +7858,16 @@ linuxkpi_wiphy_delayed_work_cancel(struct wiphy *wiphy, wiphy_work_cancel(wiphy, &wdwk->work); } +void +linuxkpi_wiphy_delayed_work_flush(struct wiphy *wiphy, + struct wiphy_delayed_work *wdwk) +{ + lockdep_assert_held(&wiphy->mtx); + + del_timer_sync(&wdwk->timer); + wiphy_work_flush(wiphy, &wdwk->work); +} + /* -------------------------------------------------------------------------- */ struct wiphy * diff --git a/sys/compat/linuxkpi/common/src/linux_80211_macops.c b/sys/compat/linuxkpi/common/src/linux_80211_macops.c index 1046b753574f..04f9f6d7e7fc 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211_macops.c +++ b/sys/compat/linuxkpi/common/src/linux_80211_macops.c @@ -42,7 +42,7 @@ if (linuxkpi_debug_80211 & D80211_TRACE_MO) \ printf("LKPI_80211_TRACE_MO %s:%d: %d %d %lu: " fmt "\n", \ __func__, __LINE__, curcpu, curthread->td_tid, \ - jiffies, __VA_ARGS__) + jiffies, ##__VA_ARGS__) #else #define LKPI_80211_TRACE_MO(...) do { } while(0) #endif diff --git a/sys/compat/linuxkpi/common/src/linux_compat.c b/sys/compat/linuxkpi/common/src/linux_compat.c index 458744a9fec6..ff0f477ea8cc 100644 --- a/sys/compat/linuxkpi/common/src/linux_compat.c +++ b/sys/compat/linuxkpi/common/src/linux_compat.c @@ -1171,12 +1171,14 @@ static const struct filterops linux_dev_kqfiltops_read = { .f_isfd = 1, .f_detach = linux_file_kqfilter_detach, .f_event = linux_file_kqfilter_read_event, + .f_copy = knote_triv_copy, }; static const struct filterops linux_dev_kqfiltops_write = { .f_isfd = 1, .f_detach = linux_file_kqfilter_detach, .f_event = linux_file_kqfilter_write_event, + .f_copy = knote_triv_copy, }; static void diff --git a/sys/conf/NOTES b/sys/conf/NOTES index a25ee8f6e1af..9944375c3615 100644 --- a/sys/conf/NOTES +++ b/sys/conf/NOTES @@ -2801,7 +2801,7 @@ options MAXFILES=999 # Random number generator # Alternative algorithm. -#options RANDOM_FENESTRASX +options RANDOM_FENESTRASX # Allow the CSPRNG algorithm to be loaded as a module. #options RANDOM_LOADABLE # Select this to allow high-rate but potentially expensive diff --git a/sys/conf/dtb.build.mk b/sys/conf/dtb.build.mk index 7eb0db5e8b80..f0cd8f8d515c 100644 --- a/sys/conf/dtb.build.mk +++ b/sys/conf/dtb.build.mk @@ -15,9 +15,10 @@ SYSDIR= ${S} .endif .for _dts in ${DTS} -# DTB for aarch64 needs to preserve the immediate parent of the .dts, because -# these DTS are vendored and should be installed into their vendored directory. -.if ${MACHINE_CPUARCH} == "aarch64" +# DTBs for aarch64 and riscv need to preserve the immediate parent of the .dts, +# because these DTS are vendored and should be installed into their vendored +# directories. +.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "riscv" DTB+= ${_dts:R:S/$/.dtb/} .else DTB+= ${_dts:T:R:S/$/.dtb/} @@ -54,7 +55,7 @@ _dtbinstall: # entries in the NO_ROOT case. test -d ${DESTDIR}${DTBDIR} || ${INSTALL} -d -o ${DTBOWN} -g ${DTBGRP} ${DESTDIR}${DTBDIR} .for _dtb in ${DTB} -.if ${MACHINE_CPUARCH} == "aarch64" +.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "riscv" # :H:T here to grab the vendor component of the DTB path in a way that # allows out-of-tree DTS builds, too. We make the assumption that # out-of-tree DTS will have a similar directory structure to in-tree, diff --git a/sys/conf/files.arm64 b/sys/conf/files.arm64 index 856ea3af1372..2f412fa3cb1b 100644 --- a/sys/conf/files.arm64 +++ b/sys/conf/files.arm64 @@ -73,6 +73,7 @@ arm64/arm64/pmap.c standard arm64/arm64/ptrace_machdep.c standard arm64/arm64/sdt_machdep.c optional kdtrace_hooks arm64/arm64/sigtramp.S standard +arm64/arm64/spec_workaround.c standard arm64/arm64/stack_machdep.c optional ddb | stack arm64/arm64/strcmp.S standard arm64/arm64/strncmp.S standard diff --git a/sys/conf/files.x86 b/sys/conf/files.x86 index 953da7dd1284..21a1b8046f12 100644 --- a/sys/conf/files.x86 +++ b/sys/conf/files.x86 @@ -311,6 +311,7 @@ dev/ntb/test/ntb_tool.c optional ntb_tool dev/nvram/nvram.c optional nvram isa dev/random/ivy.c optional rdrand_rng !random_loadable dev/random/nehemiah.c optional padlock_rng !random_loadable +dev/random/rdseed.c optional rdrand_rng !random_loadable dev/qat_c2xxx/qat.c optional qat_c2xxx dev/qat_c2xxx/qat_ae.c optional qat_c2xxx dev/qat_c2xxx/qat_c2xxx.c optional qat_c2xxx diff --git a/sys/contrib/libnv/bsd_nvpair.c b/sys/contrib/libnv/bsd_nvpair.c index c73bc2189121..b884dd260b84 100644 --- a/sys/contrib/libnv/bsd_nvpair.c +++ b/sys/contrib/libnv/bsd_nvpair.c @@ -985,13 +985,13 @@ nvpair_unpack_string_array(bool isbe __unused, nvpair_t *nvp, size = nvp->nvp_datasize; tmp = (const char *)ptr; for (ii = 0; ii < nvp->nvp_nitems; ii++) { - len = strnlen(tmp, size - 1) + 1; - size -= len; - if (tmp[len - 1] != '\0') { + if (size <= 0) { ERRNO_SET(EINVAL); return (NULL); } - if (size < 0) { + len = strnlen(tmp, size - 1) + 1; + size -= len; + if (tmp[len - 1] != '\0') { ERRNO_SET(EINVAL); return (NULL); } diff --git a/sys/contrib/openzfs/.github/workflows/scripts/qemu-2-start.sh b/sys/contrib/openzfs/.github/workflows/scripts/qemu-2-start.sh index 1c608348ffcd..422b3e9df388 100755 --- a/sys/contrib/openzfs/.github/workflows/scripts/qemu-2-start.sh +++ b/sys/contrib/openzfs/.github/workflows/scripts/qemu-2-start.sh @@ -121,7 +121,14 @@ case "$OS" in KSRC="$FREEBSD_SNAP/../amd64/$FreeBSD/src.txz" ;; freebsd15-0c) - FreeBSD="15.0-ALPHA3" + FreeBSD="15.0-ALPHA4" + OSNAME="FreeBSD $FreeBSD" + OSv="freebsd14.0" + URLxz="$FREEBSD_SNAP/$FreeBSD/amd64/Latest/FreeBSD-$FreeBSD-amd64-BASIC-CI-ufs.raw.xz" + KSRC="$FREEBSD_SNAP/../amd64/$FreeBSD/src.txz" + ;; + freebsd16-0c) + FreeBSD="16.0-CURRENT" OSNAME="FreeBSD $FreeBSD" OSv="freebsd14.0" URLxz="$FREEBSD_SNAP/$FreeBSD/amd64/Latest/FreeBSD-$FreeBSD-amd64-BASIC-CI-ufs.raw.xz" @@ -287,7 +294,7 @@ else while pidof /usr/bin/qemu-system-x86_64 >/dev/null; do ssh 2>/dev/null root@vm0 "uname -a" && break done - ssh root@vm0 "pkg install -y bash ca_root_nss git qemu-guest-agent python3 py311-cloud-init" + ssh root@vm0 "env IGNORE_OSVERSION=yes pkg install -y bash ca_root_nss git qemu-guest-agent python3 py311-cloud-init" ssh root@vm0 "chsh -s $BASH root" ssh root@vm0 'sysrc qemu_guest_agent_enable="YES"' ssh root@vm0 'sysrc cloudinit_enable="YES"' diff --git a/sys/contrib/openzfs/.github/workflows/zfs-qemu.yml b/sys/contrib/openzfs/.github/workflows/zfs-qemu.yml index 69349678d84c..3b164548f9be 100644 --- a/sys/contrib/openzfs/.github/workflows/zfs-qemu.yml +++ b/sys/contrib/openzfs/.github/workflows/zfs-qemu.yml @@ -68,7 +68,7 @@ jobs: # FreeBSD variants of 2025-06: # FreeBSD Release: freebsd13-5r, freebsd14-2r, freebsd14-3r # FreeBSD Stable: freebsd13-5s, freebsd14-3s - # FreeBSD Current: freebsd15-0c + # FreeBSD Current: freebsd15-0c, freebsd16-0c os: ${{ fromJson(needs.test-config.outputs.test_os) }} runs-on: ubuntu-24.04 steps: diff --git a/sys/contrib/openzfs/cmd/zdb/zdb.c b/sys/contrib/openzfs/cmd/zdb/zdb.c index 70a4ed46f263..1ffb8ebc70f2 100644 --- a/sys/contrib/openzfs/cmd/zdb/zdb.c +++ b/sys/contrib/openzfs/cmd/zdb/zdb.c @@ -106,11 +106,15 @@ extern boolean_t spa_mode_readable_spacemaps; extern uint_t zfs_reconstruct_indirect_combinations_max; extern uint_t zfs_btree_verify_intensity; +enum { + ARG_ALLOCATED = 256, + ARG_BLOCK_BIN_MODE, + ARG_BLOCK_CLASSES, +}; + static const char cmdname[] = "zdb"; uint8_t dump_opt[512]; -#define ALLOCATED_OPT 256 - typedef void object_viewer_t(objset_t *, uint64_t, void *data, size_t size); static uint64_t *zopt_metaslab = NULL; @@ -131,6 +135,20 @@ static objset_t *os; static boolean_t kernel_init_done; static boolean_t corruption_found = B_FALSE; +static enum { + BIN_AUTO = 0, + BIN_PSIZE, + BIN_LSIZE, + BIN_ASIZE, +} block_bin_mode = BIN_AUTO; + +static enum { + CLASS_NORMAL = 1 << 1, + CLASS_SPECIAL = 1 << 2, + CLASS_DEDUP = 1 << 3, + CLASS_OTHER = 1 << 4, +} block_classes = 0; + static void snprintf_blkptr_compact(char *, size_t, const blkptr_t *, boolean_t); static void mos_obj_refd(uint64_t); @@ -749,6 +767,12 @@ usage(void) (void) fprintf(stderr, " Options to control amount of output:\n"); (void) fprintf(stderr, " -b --block-stats " "block statistics\n"); + (void) fprintf(stderr, " --bin=(lsize|psize|asize) " + "bin blocks based on this size in all three columns\n"); + (void) fprintf(stderr, + " --class=(normal|special|dedup|other)[,...]\n" + " only consider blocks from " + "these allocation classes\n"); (void) fprintf(stderr, " -B --backup " "backup stream\n"); (void) fprintf(stderr, " -c --checksum " @@ -1694,7 +1718,7 @@ dump_metaslab(metaslab_t *msp) (u_longlong_t)msp->ms_id, (u_longlong_t)msp->ms_start, (u_longlong_t)space_map_object(sm), freebuf); - if (dump_opt[ALLOCATED_OPT] || + if (dump_opt[ARG_ALLOCATED] || (dump_opt['m'] > 2 && !dump_opt['L'])) { mutex_enter(&msp->ms_lock); VERIFY0(metaslab_load(msp)); @@ -1705,7 +1729,7 @@ dump_metaslab(metaslab_t *msp) dump_metaslab_stats(msp); } - if (dump_opt[ALLOCATED_OPT]) { + if (dump_opt[ARG_ALLOCATED]) { uint64_t off = msp->ms_start; zfs_range_tree_walk(msp->ms_allocatable, dump_allocated, &off); @@ -1726,7 +1750,7 @@ dump_metaslab(metaslab_t *msp) SPACE_MAP_HISTOGRAM_SIZE, sm->sm_shift); } - if (dump_opt[ALLOCATED_OPT] || + if (dump_opt[ARG_ALLOCATED] || (dump_opt['m'] > 2 && !dump_opt['L'])) { metaslab_unload(msp); mutex_exit(&msp->ms_lock); @@ -5814,6 +5838,34 @@ dump_size_histograms(zdb_cb_t *zcb) (void) printf("\nBlock Size Histogram\n"); + switch (block_bin_mode) { + case BIN_PSIZE: + printf("(note: all categories are binned by %s)\n", "psize"); + break; + case BIN_LSIZE: + printf("(note: all categories are binned by %s)\n", "lsize"); + break; + case BIN_ASIZE: + printf("(note: all categories are binned by %s)\n", "asize"); + break; + default: + printf("(note: all categories are binned separately)\n"); + break; + } + if (block_classes != 0) { + char buf[256] = ""; + if (block_classes & CLASS_NORMAL) + strlcat(buf, "\"normal\", ", sizeof (buf)); + if (block_classes & CLASS_SPECIAL) + strlcat(buf, "\"special\", ", sizeof (buf)); + if (block_classes & CLASS_DEDUP) + strlcat(buf, "\"dedup\", ", sizeof (buf)); + if (block_classes & CLASS_OTHER) + strlcat(buf, "\"other\", ", sizeof (buf)); + buf[strlen(buf)-2] = '\0'; + printf("(note: only blocks in these classes are counted: %s)\n", + buf); + } /* * Print the first line titles */ @@ -6162,29 +6214,85 @@ skipped: [BPE_GET_PSIZE(bp)]++; return; } + + if (block_classes != 0) { + spa_config_enter(zcb->zcb_spa, SCL_CONFIG, FTAG, RW_READER); + + uint64_t vdev = DVA_GET_VDEV(&bp->blk_dva[0]); + uint64_t offset = DVA_GET_OFFSET(&bp->blk_dva[0]); + vdev_t *vd = vdev_lookup_top(zcb->zcb_spa, vdev); + ASSERT(vd != NULL); + metaslab_t *ms = vd->vdev_ms[offset >> vd->vdev_ms_shift]; + ASSERT(ms != NULL); + metaslab_group_t *mg = ms->ms_group; + ASSERT(mg != NULL); + metaslab_class_t *mc = mg->mg_class; + ASSERT(mc != NULL); + + spa_config_exit(zcb->zcb_spa, SCL_CONFIG, FTAG); + + int class; + if (mc == spa_normal_class(zcb->zcb_spa)) { + class = CLASS_NORMAL; + } else if (mc == spa_special_class(zcb->zcb_spa)) { + class = CLASS_SPECIAL; + } else if (mc == spa_dedup_class(zcb->zcb_spa)) { + class = CLASS_DEDUP; + } else { + class = CLASS_OTHER; + } + + if (!(block_classes & class)) { + goto hist_skipped; + } + } + /* * The binning histogram bins by powers of two up to * SPA_MAXBLOCKSIZE rather than creating bins for * every possible blocksize found in the pool. */ - int bin = highbit64(BP_GET_PSIZE(bp)) - 1; + int bin; + + /* + * Binning strategy: each bin includes blocks up to and including + * the given size (excluding blocks that fit into the previous bin). + * This way, the "4K" bin includes blocks within the (2K; 4K] range. + */ +#define BIN(size) (highbit64((size) - 1)) + + switch (block_bin_mode) { + case BIN_PSIZE: bin = BIN(BP_GET_PSIZE(bp)); break; + case BIN_LSIZE: bin = BIN(BP_GET_LSIZE(bp)); break; + case BIN_ASIZE: bin = BIN(BP_GET_ASIZE(bp)); break; + case BIN_AUTO: break; + default: PANIC("bad block_bin_mode"); abort(); + } + + if (block_bin_mode == BIN_AUTO) + bin = BIN(BP_GET_PSIZE(bp)); zcb->zcb_psize_count[bin]++; zcb->zcb_psize_len[bin] += BP_GET_PSIZE(bp); zcb->zcb_psize_total += BP_GET_PSIZE(bp); - bin = highbit64(BP_GET_LSIZE(bp)) - 1; + if (block_bin_mode == BIN_AUTO) + bin = BIN(BP_GET_LSIZE(bp)); zcb->zcb_lsize_count[bin]++; zcb->zcb_lsize_len[bin] += BP_GET_LSIZE(bp); zcb->zcb_lsize_total += BP_GET_LSIZE(bp); - bin = highbit64(BP_GET_ASIZE(bp)) - 1; + if (block_bin_mode == BIN_AUTO) + bin = BIN(BP_GET_ASIZE(bp)); zcb->zcb_asize_count[bin]++; zcb->zcb_asize_len[bin] += BP_GET_ASIZE(bp); zcb->zcb_asize_total += BP_GET_ASIZE(bp); +#undef BIN + +hist_skipped: if (!do_claim) return; @@ -9426,7 +9534,11 @@ main(int argc, char **argv) {"livelist", no_argument, NULL, 'y'}, {"zstd-headers", no_argument, NULL, 'Z'}, {"allocated-map", no_argument, NULL, - ALLOCATED_OPT}, + ARG_ALLOCATED}, + {"bin", required_argument, NULL, + ARG_BLOCK_BIN_MODE}, + {"class", required_argument, NULL, + ARG_BLOCK_CLASSES}, {0, 0, 0, 0} }; @@ -9457,7 +9569,7 @@ main(int argc, char **argv) case 'u': case 'y': case 'Z': - case ALLOCATED_OPT: + case ARG_ALLOCATED: dump_opt[c]++; dump_all = 0; break; @@ -9540,6 +9652,59 @@ main(int argc, char **argv) case 'x': vn_dumpdir = optarg; break; + case ARG_BLOCK_BIN_MODE: + if (strcmp(optarg, "lsize") == 0) { + block_bin_mode = BIN_LSIZE; + } else if (strcmp(optarg, "psize") == 0) { + block_bin_mode = BIN_PSIZE; + } else if (strcmp(optarg, "asize") == 0) { + block_bin_mode = BIN_ASIZE; + } else { + (void) fprintf(stderr, + "--bin=\"%s\" must be one of \"lsize\", " + "\"psize\" or \"asize\"\n", optarg); + usage(); + } + break; + + case ARG_BLOCK_CLASSES: { + char *buf = strdup(optarg), *tok = buf, *next, + *save = NULL; + + while ((next = strtok_r(tok, ",", &save)) != NULL) { + tok = NULL; + + if (strcmp(next, "normal") == 0) { + block_classes |= CLASS_NORMAL; + } else if (strcmp(next, "special") == 0) { + block_classes |= CLASS_SPECIAL; + } else if (strcmp(next, "dedup") == 0) { + block_classes |= CLASS_DEDUP; + } else if (strcmp(next, "other") == 0) { + block_classes |= CLASS_OTHER; + } else { + (void) fprintf(stderr, + "--class=\"%s\" must be a " + "comma-separated list of either " + "\"normal\", \"special\", " + "\"asize\" or \"other\"; " + "got \"%s\"\n", + optarg, next); + usage(); + } + } + + if (block_classes == 0) { + (void) fprintf(stderr, + "--class= must be a comma-separated " + "list of either \"normal\", \"special\", " + "\"asize\" or \"other\"; got empty\n"); + usage(); + } + + free(buf); + break; + } default: usage(); break; diff --git a/sys/contrib/openzfs/cmd/zpool/zpool_vdev.c b/sys/contrib/openzfs/cmd/zpool/zpool_vdev.c index 088c0108e911..222b5524669e 100644 --- a/sys/contrib/openzfs/cmd/zpool/zpool_vdev.c +++ b/sys/contrib/openzfs/cmd/zpool/zpool_vdev.c @@ -270,14 +270,13 @@ is_spare(nvlist_t *config, const char *path) * draid* Virtual dRAID spare */ static nvlist_t * -make_leaf_vdev(nvlist_t *props, const char *arg, boolean_t is_primary) +make_leaf_vdev(const char *arg, boolean_t is_primary, uint64_t ashift) { char path[MAXPATHLEN]; struct stat64 statbuf; nvlist_t *vdev = NULL; const char *type = NULL; boolean_t wholedisk = B_FALSE; - uint64_t ashift = 0; int err; /* @@ -382,31 +381,6 @@ make_leaf_vdev(nvlist_t *props, const char *arg, boolean_t is_primary) (uint64_t)wholedisk) == 0); /* - * Override defaults if custom properties are provided. - */ - if (props != NULL) { - const char *value = NULL; - - if (nvlist_lookup_string(props, - zpool_prop_to_name(ZPOOL_PROP_ASHIFT), &value) == 0) { - if (zfs_nicestrtonum(NULL, value, &ashift) != 0) { - (void) fprintf(stderr, - gettext("ashift must be a number.\n")); - return (NULL); - } - if (ashift != 0 && - (ashift < ASHIFT_MIN || ashift > ASHIFT_MAX)) { - (void) fprintf(stderr, - gettext("invalid 'ashift=%" PRIu64 "' " - "property: only values between %" PRId32 " " - "and %" PRId32 " are allowed.\n"), - ashift, ASHIFT_MIN, ASHIFT_MAX); - return (NULL); - } - } - } - - /* * If the device is known to incorrectly report its physical sector * size explicitly provide the known correct value. */ @@ -1513,6 +1487,29 @@ construct_spec(nvlist_t *props, int argc, char **argv) const char *type, *fulltype; boolean_t is_log, is_special, is_dedup, is_spare; boolean_t seen_logs; + uint64_t ashift = 0; + + if (props != NULL) { + const char *value = NULL; + + if (nvlist_lookup_string(props, + zpool_prop_to_name(ZPOOL_PROP_ASHIFT), &value) == 0) { + if (zfs_nicestrtonum(NULL, value, &ashift) != 0) { + (void) fprintf(stderr, + gettext("ashift must be a number.\n")); + return (NULL); + } + if (ashift != 0 && + (ashift < ASHIFT_MIN || ashift > ASHIFT_MAX)) { + (void) fprintf(stderr, + gettext("invalid 'ashift=%" PRIu64 "' " + "property: only values between %" PRId32 " " + "and %" PRId32 " are allowed.\n"), + ashift, ASHIFT_MIN, ASHIFT_MAX); + return (NULL); + } + } + } top = NULL; toplevels = 0; @@ -1618,9 +1615,9 @@ construct_spec(nvlist_t *props, int argc, char **argv) children * sizeof (nvlist_t *)); if (child == NULL) zpool_no_memory(); - if ((nv = make_leaf_vdev(props, argv[c], + if ((nv = make_leaf_vdev(argv[c], !(is_log || is_special || is_dedup || - is_spare))) == NULL) { + is_spare), ashift)) == NULL) { for (c = 0; c < children - 1; c++) nvlist_free(child[c]); free(child); @@ -1684,6 +1681,10 @@ construct_spec(nvlist_t *props, int argc, char **argv) ZPOOL_CONFIG_ALLOCATION_BIAS, VDEV_ALLOC_BIAS_DEDUP) == 0); } + if (ashift > 0) { + fnvlist_add_uint64(nv, + ZPOOL_CONFIG_ASHIFT, ashift); + } if (strcmp(type, VDEV_TYPE_RAIDZ) == 0) { verify(nvlist_add_uint64(nv, ZPOOL_CONFIG_NPARITY, @@ -1711,8 +1712,9 @@ construct_spec(nvlist_t *props, int argc, char **argv) * We have a device. Pass off to make_leaf_vdev() to * construct the appropriate nvlist describing the vdev. */ - if ((nv = make_leaf_vdev(props, argv[0], !(is_log || - is_special || is_dedup || is_spare))) == NULL) + if ((nv = make_leaf_vdev(argv[0], !(is_log || + is_special || is_dedup || is_spare), + ashift)) == NULL) goto spec_out; verify(nvlist_add_uint64(nv, diff --git a/sys/contrib/openzfs/lib/libspl/include/sys/uio.h b/sys/contrib/openzfs/lib/libspl/include/sys/uio.h index 93aa4984d734..9ada482be000 100644 --- a/sys/contrib/openzfs/lib/libspl/include/sys/uio.h +++ b/sys/contrib/openzfs/lib/libspl/include/sys/uio.h @@ -41,6 +41,7 @@ #ifndef _LIBSPL_SYS_UIO_H #define _LIBSPL_SYS_UIO_H +#include <sys/sysmacros.h> #include <sys/types.h> #include_next <sys/uio.h> diff --git a/sys/contrib/openzfs/lib/libzfs/libzfs_status.c b/sys/contrib/openzfs/lib/libzfs/libzfs_status.c index bdddefb92165..a589ca6896f0 100644 --- a/sys/contrib/openzfs/lib/libzfs/libzfs_status.c +++ b/sys/contrib/openzfs/lib/libzfs/libzfs_status.c @@ -98,57 +98,57 @@ static const char *const zfs_msgid_table[] = { #define NMSGID (sizeof (zfs_msgid_table) / sizeof (zfs_msgid_table[0])) static int -vdev_missing(vdev_stat_t *vs, uint_t vsc) +vdev_missing(vdev_stat_t *vs, uint_t vsc, void *arg) { - (void) vsc; + (void) vsc, (void) arg; return (vs->vs_state == VDEV_STATE_CANT_OPEN && vs->vs_aux == VDEV_AUX_OPEN_FAILED); } static int -vdev_faulted(vdev_stat_t *vs, uint_t vsc) +vdev_faulted(vdev_stat_t *vs, uint_t vsc, void *arg) { - (void) vsc; + (void) vsc, (void) arg; return (vs->vs_state == VDEV_STATE_FAULTED); } static int -vdev_errors(vdev_stat_t *vs, uint_t vsc) +vdev_errors(vdev_stat_t *vs, uint_t vsc, void *arg) { - (void) vsc; + (void) vsc, (void) arg; return (vs->vs_state == VDEV_STATE_DEGRADED || vs->vs_read_errors != 0 || vs->vs_write_errors != 0 || vs->vs_checksum_errors != 0); } static int -vdev_broken(vdev_stat_t *vs, uint_t vsc) +vdev_broken(vdev_stat_t *vs, uint_t vsc, void *arg) { - (void) vsc; + (void) vsc, (void) arg; return (vs->vs_state == VDEV_STATE_CANT_OPEN); } static int -vdev_offlined(vdev_stat_t *vs, uint_t vsc) +vdev_offlined(vdev_stat_t *vs, uint_t vsc, void *arg) { - (void) vsc; + (void) vsc, (void) arg; return (vs->vs_state == VDEV_STATE_OFFLINE); } static int -vdev_removed(vdev_stat_t *vs, uint_t vsc) +vdev_removed(vdev_stat_t *vs, uint_t vsc, void *arg) { - (void) vsc; + (void) vsc, (void) arg; return (vs->vs_state == VDEV_STATE_REMOVED); } static int -vdev_non_native_ashift(vdev_stat_t *vs, uint_t vsc) +vdev_non_native_ashift(vdev_stat_t *vs, uint_t vsc, void *arg) { - if (getenv("ZPOOL_STATUS_NON_NATIVE_ASHIFT_IGNORE") != NULL) - return (0); + uint64_t ashift = *(uint64_t *)arg; return (VDEV_STAT_VALID(vs_physical_ashift, vsc) && + (ashift == 0 || vs->vs_configured_ashift < ashift) && vs->vs_configured_ashift < vs->vs_physical_ashift); } @@ -156,8 +156,8 @@ vdev_non_native_ashift(vdev_stat_t *vs, uint_t vsc) * Detect if any leaf devices that have seen errors or could not be opened. */ static boolean_t -find_vdev_problem(nvlist_t *vdev, int (*func)(vdev_stat_t *, uint_t), - boolean_t ignore_replacing) +find_vdev_problem(nvlist_t *vdev, int (*func)(vdev_stat_t *, uint_t, void *), + void *arg, boolean_t ignore_replacing) { nvlist_t **child; uint_t c, children; @@ -177,14 +177,16 @@ find_vdev_problem(nvlist_t *vdev, int (*func)(vdev_stat_t *, uint_t), if (nvlist_lookup_nvlist_array(vdev, ZPOOL_CONFIG_CHILDREN, &child, &children) == 0) { - for (c = 0; c < children; c++) - if (find_vdev_problem(child[c], func, ignore_replacing)) + for (c = 0; c < children; c++) { + if (find_vdev_problem(child[c], func, arg, + ignore_replacing)) return (B_TRUE); + } } else { uint_t vsc; vdev_stat_t *vs = (vdev_stat_t *)fnvlist_lookup_uint64_array( vdev, ZPOOL_CONFIG_VDEV_STATS, &vsc); - if (func(vs, vsc) != 0) + if (func(vs, vsc, arg) != 0) return (B_TRUE); } @@ -193,9 +195,11 @@ find_vdev_problem(nvlist_t *vdev, int (*func)(vdev_stat_t *, uint_t), */ if (nvlist_lookup_nvlist_array(vdev, ZPOOL_CONFIG_L2CACHE, &child, &children) == 0) { - for (c = 0; c < children; c++) - if (find_vdev_problem(child[c], func, ignore_replacing)) + for (c = 0; c < children; c++) { + if (find_vdev_problem(child[c], func, arg, + ignore_replacing)) return (B_TRUE); + } } return (B_FALSE); @@ -220,7 +224,7 @@ find_vdev_problem(nvlist_t *vdev, int (*func)(vdev_stat_t *, uint_t), */ static zpool_status_t check_status(nvlist_t *config, boolean_t isimport, - zpool_errata_t *erratap, const char *compat) + zpool_errata_t *erratap, const char *compat, uint64_t ashift) { pool_scan_stat_t *ps = NULL; uint_t vsc, psc; @@ -371,15 +375,15 @@ check_status(nvlist_t *config, boolean_t isimport, * Bad devices in non-replicated config. */ if (vs->vs_state == VDEV_STATE_CANT_OPEN && - find_vdev_problem(nvroot, vdev_faulted, B_TRUE)) + find_vdev_problem(nvroot, vdev_faulted, NULL, B_TRUE)) return (ZPOOL_STATUS_FAULTED_DEV_NR); if (vs->vs_state == VDEV_STATE_CANT_OPEN && - find_vdev_problem(nvroot, vdev_missing, B_TRUE)) + find_vdev_problem(nvroot, vdev_missing, NULL, B_TRUE)) return (ZPOOL_STATUS_MISSING_DEV_NR); if (vs->vs_state == VDEV_STATE_CANT_OPEN && - find_vdev_problem(nvroot, vdev_broken, B_TRUE)) + find_vdev_problem(nvroot, vdev_broken, NULL, B_TRUE)) return (ZPOOL_STATUS_CORRUPT_LABEL_NR); /* @@ -402,35 +406,37 @@ check_status(nvlist_t *config, boolean_t isimport, /* * Missing devices in a replicated config. */ - if (find_vdev_problem(nvroot, vdev_faulted, B_TRUE)) + if (find_vdev_problem(nvroot, vdev_faulted, NULL, B_TRUE)) return (ZPOOL_STATUS_FAULTED_DEV_R); - if (find_vdev_problem(nvroot, vdev_missing, B_TRUE)) + if (find_vdev_problem(nvroot, vdev_missing, NULL, B_TRUE)) return (ZPOOL_STATUS_MISSING_DEV_R); - if (find_vdev_problem(nvroot, vdev_broken, B_TRUE)) + if (find_vdev_problem(nvroot, vdev_broken, NULL, B_TRUE)) return (ZPOOL_STATUS_CORRUPT_LABEL_R); /* * Devices with errors */ - if (!isimport && find_vdev_problem(nvroot, vdev_errors, B_TRUE)) + if (!isimport && find_vdev_problem(nvroot, vdev_errors, NULL, B_TRUE)) return (ZPOOL_STATUS_FAILING_DEV); /* * Offlined devices */ - if (find_vdev_problem(nvroot, vdev_offlined, B_TRUE)) + if (find_vdev_problem(nvroot, vdev_offlined, NULL, B_TRUE)) return (ZPOOL_STATUS_OFFLINE_DEV); /* * Removed device */ - if (find_vdev_problem(nvroot, vdev_removed, B_TRUE)) + if (find_vdev_problem(nvroot, vdev_removed, NULL, B_TRUE)) return (ZPOOL_STATUS_REMOVED_DEV); /* * Suboptimal, but usable, ashift configuration. */ - if (find_vdev_problem(nvroot, vdev_non_native_ashift, B_FALSE)) + if (!isimport && + getenv("ZPOOL_STATUS_NON_NATIVE_ASHIFT_IGNORE") == NULL && + find_vdev_problem(nvroot, vdev_non_native_ashift, &ashift, B_FALSE)) return (ZPOOL_STATUS_NON_NATIVE_ASHIFT); /* @@ -510,8 +516,10 @@ zpool_get_status(zpool_handle_t *zhp, const char **msgid, ZFS_MAXPROPLEN, NULL, B_FALSE) != 0) compatibility[0] = '\0'; + uint64_t ashift = zpool_get_prop_int(zhp, ZPOOL_PROP_ASHIFT, NULL); + zpool_status_t ret = check_status(zhp->zpool_config, B_FALSE, errata, - compatibility); + compatibility, ashift); if (msgid != NULL) { if (ret >= NMSGID) @@ -526,7 +534,7 @@ zpool_status_t zpool_import_status(nvlist_t *config, const char **msgid, zpool_errata_t *errata) { - zpool_status_t ret = check_status(config, B_TRUE, errata, NULL); + zpool_status_t ret = check_status(config, B_TRUE, errata, NULL, 0); if (ret >= NMSGID) *msgid = NULL; diff --git a/sys/contrib/openzfs/lib/libzpool/kernel.c b/sys/contrib/openzfs/lib/libzpool/kernel.c index 8ed374627264..70eba5099119 100644 --- a/sys/contrib/openzfs/lib/libzpool/kernel.c +++ b/sys/contrib/openzfs/lib/libzpool/kernel.c @@ -23,6 +23,7 @@ * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2012, 2018 by Delphix. All rights reserved. * Copyright (c) 2016 Actifio, Inc. All rights reserved. + * Copyright (c) 2025, Klara, Inc. */ #include <assert.h> @@ -645,39 +646,60 @@ __dprintf(boolean_t dprint, const char *file, const char *func, * cmn_err() and panic() * ========================================================================= */ -static char ce_prefix[CE_IGNORE][10] = { "", "NOTICE: ", "WARNING: ", "" }; -static char ce_suffix[CE_IGNORE][2] = { "", "\n", "\n", "" }; -__attribute__((noreturn)) void -vpanic(const char *fmt, va_list adx) +static __attribute__((noreturn)) void +panic_stop_or_abort(void) { - (void) fprintf(stderr, "error: "); - (void) vfprintf(stderr, fmt, adx); - (void) fprintf(stderr, "\n"); + const char *stopenv = getenv("LIBZPOOL_PANIC_STOP"); + if (stopenv != NULL && atoi(stopenv)) { + fputs("libzpool: LIBZPOOL_PANIC_STOP is set, sending " + "SIGSTOP to process group\n", stderr); + fflush(stderr); + + kill(0, SIGSTOP); + + fputs("libzpool: continued after panic stop, " + "aborting\n", stderr); + } abort(); /* think of it as a "user-level crash dump" */ } -__attribute__((noreturn)) void -panic(const char *fmt, ...) +static void +vcmn_msg(int ce, const char *fmt, va_list adx) { - va_list adx; + switch (ce) { + case CE_IGNORE: + return; + case CE_CONT: + break; + case CE_NOTE: + fputs("libzpool: NOTICE: ", stderr); + break; + case CE_WARN: + fputs("libzpool: WARNING: ", stderr); + break; + case CE_PANIC: + fputs("libzpool: PANIC: ", stderr); + break; + default: + fputs("libzpool: [unknown severity %d]: ", stderr); + break; + } - va_start(adx, fmt); - vpanic(fmt, adx); - va_end(adx); + vfprintf(stderr, fmt, adx); + if (ce != CE_CONT) + fputc('\n', stderr); + fflush(stderr); } void vcmn_err(int ce, const char *fmt, va_list adx) { + vcmn_msg(ce, fmt, adx); + if (ce == CE_PANIC) - vpanic(fmt, adx); - if (ce != CE_NOTE) { /* suppress noise in userland stress testing */ - (void) fprintf(stderr, "%s", ce_prefix[ce]); - (void) vfprintf(stderr, fmt, adx); - (void) fprintf(stderr, "%s", ce_suffix[ce]); - } + panic_stop_or_abort(); } void @@ -690,6 +712,25 @@ cmn_err(int ce, const char *fmt, ...) va_end(adx); } +__attribute__((noreturn)) void +panic(const char *fmt, ...) +{ + va_list adx; + + va_start(adx, fmt); + vcmn_msg(CE_PANIC, fmt, adx); + va_end(adx); + + panic_stop_or_abort(); +} + +__attribute__((noreturn)) void +vpanic(const char *fmt, va_list adx) +{ + vcmn_msg(CE_PANIC, fmt, adx); + panic_stop_or_abort(); +} + /* * ========================================================================= * misc routines diff --git a/sys/contrib/openzfs/man/man8/zdb.8 b/sys/contrib/openzfs/man/man8/zdb.8 index c3290ea14769..f51e24fa849c 100644 --- a/sys/contrib/openzfs/man/man8/zdb.8 +++ b/sys/contrib/openzfs/man/man8/zdb.8 @@ -144,6 +144,20 @@ subcommand. Display statistics regarding the number, size .Pq logical, physical and allocated and deduplication of blocks. +.It Fl -bin Ns = Ns ( Li lsize Ns | Ns Li psize Ns | Ns Li asize ) +When used with +.Fl bb , +sort blocks into all three bins according to the given size (instead of binning +a block for each size separately). +.Pp +For instance, with +.Fl -bin Ns = Ns Li lsize , +a block with lsize of 16K and psize of 4K will be added to the 16K bin +in all three columns. +.It Fl -class Ns = Ns ( Li normal Ns | Ns Li special Ns | Ns Li dedup Ns | Ns Li other ) Ns Op , Ns … +When used with +.Fl bb , +only consider blocks from these allocation classes. .It Fl B , -backup Generate a backup stream, similar to .Nm zfs Cm send , diff --git a/sys/contrib/openzfs/module/os/freebsd/zfs/sysctl_os.c b/sys/contrib/openzfs/module/os/freebsd/zfs/sysctl_os.c index ace2360c032d..ebc2c0eeb6d2 100644 --- a/sys/contrib/openzfs/module/os/freebsd/zfs/sysctl_os.c +++ b/sys/contrib/openzfs/module/os/freebsd/zfs/sysctl_os.c @@ -163,6 +163,13 @@ param_set_arc_int(SYSCTL_HANDLER_ARGS) return (0); } +static void +warn_deprecated_sysctl(const char *old, const char *new) +{ + printf("WARNING: sysctl vfs.zfs.%s is deprecated. Use vfs.zfs.%s instead.\n", + old, new); +} + int param_set_arc_max(SYSCTL_HANDLER_ARGS) { @@ -185,12 +192,15 @@ param_set_arc_max(SYSCTL_HANDLER_ARGS) if (val != 0) zfs_arc_max = arc_c_max; + if (arg2 != 0) + warn_deprecated_sysctl("arc_max", "arc.max"); + return (0); } SYSCTL_PROC(_vfs_zfs, OID_AUTO, arc_max, CTLTYPE_ULONG | CTLFLAG_RWTUN | CTLFLAG_MPSAFE, - NULL, 0, param_set_arc_max, "LU", + NULL, 1, param_set_arc_max, "LU", "Maximum ARC size in bytes (LEGACY)"); int @@ -214,12 +224,15 @@ param_set_arc_min(SYSCTL_HANDLER_ARGS) if (val != 0) zfs_arc_min = arc_c_min; + if (arg2 != 0) + warn_deprecated_sysctl("arc_min", "arc.min"); + return (0); } SYSCTL_PROC(_vfs_zfs, OID_AUTO, arc_min, CTLTYPE_ULONG | CTLFLAG_RWTUN | CTLFLAG_MPSAFE, - NULL, 0, param_set_arc_min, "LU", + NULL, 1, param_set_arc_min, "LU", "Minimum ARC size in bytes (LEGACY)"); extern uint_t zfs_arc_free_target; @@ -242,6 +255,9 @@ param_set_arc_free_target(SYSCTL_HANDLER_ARGS) zfs_arc_free_target = val; + if (arg2 != 0) + warn_deprecated_sysctl("arc_free_target", "arc.free_target"); + return (0); } @@ -251,7 +267,7 @@ param_set_arc_free_target(SYSCTL_HANDLER_ARGS) */ SYSCTL_PROC(_vfs_zfs, OID_AUTO, arc_free_target, CTLTYPE_UINT | CTLFLAG_RW | CTLFLAG_MPSAFE, - NULL, 0, param_set_arc_free_target, "IU", + NULL, 1, param_set_arc_free_target, "IU", "Desired number of free pages below which ARC triggers reclaim" " (LEGACY)"); @@ -270,12 +286,15 @@ param_set_arc_no_grow_shift(SYSCTL_HANDLER_ARGS) arc_no_grow_shift = val; + if (arg2 != 0) + warn_deprecated_sysctl("arc_no_grow_shift", "arc.no_grow_shift"); + return (0); } SYSCTL_PROC(_vfs_zfs, OID_AUTO, arc_no_grow_shift, CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_MPSAFE, - NULL, 0, param_set_arc_no_grow_shift, "I", + NULL, 1, param_set_arc_no_grow_shift, "I", "log2(fraction of ARC which must be free to allow growing) (LEGACY)"); extern uint64_t l2arc_write_max; @@ -746,12 +765,15 @@ param_set_min_auto_ashift(SYSCTL_HANDLER_ARGS) zfs_vdev_min_auto_ashift = val; + if (arg2 != 0) + warn_deprecated_sysctl("min_auto_ashift", + "vdev.min_auto_ashift"); + return (0); } SYSCTL_PROC(_vfs_zfs, OID_AUTO, min_auto_ashift, - CTLTYPE_UINT | CTLFLAG_RWTUN | CTLFLAG_MPSAFE, - &zfs_vdev_min_auto_ashift, sizeof (zfs_vdev_min_auto_ashift), + CTLTYPE_UINT | CTLFLAG_RWTUN | CTLFLAG_MPSAFE, NULL, 1, param_set_min_auto_ashift, "IU", "Min ashift used when creating new top-level vdev. (LEGACY)"); @@ -771,12 +793,15 @@ param_set_max_auto_ashift(SYSCTL_HANDLER_ARGS) zfs_vdev_max_auto_ashift = val; + if (arg2 != 0) + warn_deprecated_sysctl("max_auto_ashift", + "vdev.max_auto_ashift"); + return (0); } SYSCTL_PROC(_vfs_zfs, OID_AUTO, max_auto_ashift, - CTLTYPE_UINT | CTLFLAG_RWTUN | CTLFLAG_MPSAFE, - &zfs_vdev_max_auto_ashift, sizeof (zfs_vdev_max_auto_ashift), + CTLTYPE_UINT | CTLFLAG_RWTUN | CTLFLAG_MPSAFE, NULL, 1, param_set_max_auto_ashift, "IU", "Max ashift used when optimizing for logical -> physical sector size on" " new top-level vdevs. (LEGACY)"); diff --git a/sys/contrib/openzfs/module/os/freebsd/zfs/zfs_ctldir.c b/sys/contrib/openzfs/module/os/freebsd/zfs/zfs_ctldir.c index 4de48e013ec4..d0a9c662e6f0 100644 --- a/sys/contrib/openzfs/module/os/freebsd/zfs/zfs_ctldir.c +++ b/sys/contrib/openzfs/module/os/freebsd/zfs/zfs_ctldir.c @@ -762,8 +762,7 @@ zfsctl_common_pathconf(struct vop_pathconf_args *ap) return (0); case _PC_MIN_HOLE_SIZE: - *ap->a_retval = (int)SPA_MINBLOCKSIZE; - return (0); + return (EINVAL); case _PC_ACL_EXTENDED: *ap->a_retval = 0; diff --git a/sys/contrib/openzfs/module/os/freebsd/zfs/zfs_vnops_os.c b/sys/contrib/openzfs/module/os/freebsd/zfs/zfs_vnops_os.c index 411225786089..f34a2fd37a77 100644 --- a/sys/contrib/openzfs/module/os/freebsd/zfs/zfs_vnops_os.c +++ b/sys/contrib/openzfs/module/os/freebsd/zfs/zfs_vnops_os.c @@ -4116,6 +4116,7 @@ zfs_pathconf(vnode_t *vp, int cmd, ulong_t *valp, cred_t *cr, { znode_t *zp; zfsvfs_t *zfsvfs; + uint_t blksize, iosize; int error; switch (cmd) { @@ -4127,8 +4128,20 @@ zfs_pathconf(vnode_t *vp, int cmd, ulong_t *valp, cred_t *cr, *valp = 64; return (0); case _PC_MIN_HOLE_SIZE: - *valp = (int)SPA_MINBLOCKSIZE; - return (0); + iosize = vp->v_mount->mnt_stat.f_iosize; + if (vp->v_type == VREG) { + zp = VTOZ(vp); + blksize = zp->z_blksz; + if (zp->z_size <= blksize) + blksize = MAX(blksize, iosize); + *valp = (int)blksize; + return (0); + } + if (vp->v_type == VDIR) { + *valp = (int)iosize; + return (0); + } + return (EINVAL); case _PC_ACL_EXTENDED: #if 0 /* POSIX ACLs are not implemented for ZFS on FreeBSD yet. */ zp = VTOZ(vp); @@ -4210,8 +4223,20 @@ zfs_getpages(struct vnode *vp, vm_page_t *ma, int count, int *rbehind, zfs_vmobject_wlock(object); (void) vm_page_grab_pages(object, OFF_TO_IDX(start), - VM_ALLOC_NORMAL | VM_ALLOC_WAITOK | VM_ALLOC_ZERO, + VM_ALLOC_NORMAL | VM_ALLOC_WAITOK, ma, count); + if (!vm_page_all_valid(ma[count - 1])) { + /* + * Later in this function, we copy DMU data to + * invalid pages only. The last page may not be + * entirely filled though, if the file does not + * end on a page boundary. Therefore, we zero + * that last page here to make sure it does not + * contain garbage after the end of file. + */ + ASSERT(vm_page_none_valid(ma[count - 1])); + vm_page_zero_invalid(ma[count - 1], FALSE); + } zfs_vmobject_wunlock(object); } if (blksz == zp->z_blksz) diff --git a/sys/contrib/openzfs/module/os/freebsd/zfs/zvol_os.c b/sys/contrib/openzfs/module/os/freebsd/zfs/zvol_os.c index 0dd2ecd7fd8d..3ddbfcb97184 100644 --- a/sys/contrib/openzfs/module/os/freebsd/zfs/zvol_os.c +++ b/sys/contrib/openzfs/module/os/freebsd/zfs/zvol_os.c @@ -183,6 +183,7 @@ static struct filterops zvol_filterops_vnode = { .f_isfd = 1, .f_detach = zvol_filter_detach, .f_event = zvol_filter_vnode, + .f_copy = knote_triv_copy, }; extern uint_t zfs_geom_probe_vdev_key; diff --git a/sys/contrib/openzfs/module/os/linux/zfs/zvol_os.c b/sys/contrib/openzfs/module/os/linux/zfs/zvol_os.c index 967a018640e1..4e66bee7744d 100644 --- a/sys/contrib/openzfs/module/os/linux/zfs/zvol_os.c +++ b/sys/contrib/openzfs/module/os/linux/zfs/zvol_os.c @@ -337,16 +337,14 @@ zvol_discard(zv_request_t *zvr) } /* - * Align the request to volume block boundaries when a secure erase is - * not required. This will prevent dnode_free_range() from zeroing out - * the unaligned parts which is slow (read-modify-write) and useless - * since we are not freeing any space by doing so. + * Align the request to volume block boundaries. This will prevent + * dnode_free_range() from zeroing out the unaligned parts which is + * slow (read-modify-write) and useless since we are not freeing any + * space by doing so. */ - if (!io_is_secure_erase(bio, rq)) { - start = P2ROUNDUP(start, zv->zv_volblocksize); - end = P2ALIGN_TYPED(end, zv->zv_volblocksize, uint64_t); - size = end - start; - } + start = P2ROUNDUP(start, zv->zv_volblocksize); + end = P2ALIGN_TYPED(end, zv->zv_volblocksize, uint64_t); + size = end - start; if (start >= end) goto unlock; @@ -467,6 +465,24 @@ zvol_read_task(void *arg) zv_request_task_free(task); } +/* + * Note: + * + * The kernel uses different enum names for the IO opcode, depending on the + * kernel version ('req_opf', 'req_op'). To sidestep this, use macros rather + * than inline functions for these checks. + */ +/* Should this IO go down the zvol write path? */ +#define ZVOL_OP_IS_WRITE(op) \ + (op == REQ_OP_WRITE || \ + op == REQ_OP_FLUSH || \ + op == REQ_OP_DISCARD) + +/* Is this IO type supported by zvols? */ +#define ZVOL_OP_IS_SUPPORTED(op) (op == REQ_OP_READ || ZVOL_OP_IS_WRITE(op)) + +/* Get the IO opcode */ +#define ZVOL_OP(bio, rq) (bio != NULL ? bio_op(bio) : req_op(rq)) /* * Process a BIO or request @@ -486,27 +502,32 @@ zvol_request_impl(zvol_state_t *zv, struct bio *bio, struct request *rq, uint64_t size = io_size(bio, rq); int rw; - if (rq != NULL) { - /* - * Flush & trim requests go down the zvol_write codepath. Or - * more specifically: - * - * If request is a write, or if it's op_is_sync() and not a - * read, or if it's a flush, or if it's a discard, then send the - * request down the write path. - */ - if (op_is_write(rq->cmd_flags) || - (op_is_sync(rq->cmd_flags) && req_op(rq) != REQ_OP_READ) || - req_op(rq) == REQ_OP_FLUSH || - op_is_discard(rq->cmd_flags)) { - rw = WRITE; - } else { - rw = READ; - } + if (unlikely(!ZVOL_OP_IS_SUPPORTED(ZVOL_OP(bio, rq)))) { + zfs_dbgmsg("Unsupported zvol %s, op=%d, flags=0x%x", + rq != NULL ? "request" : "BIO", + ZVOL_OP(bio, rq), + rq != NULL ? rq->cmd_flags : bio->bi_opf); + ASSERT(ZVOL_OP_IS_SUPPORTED(ZVOL_OP(bio, rq))); + zvol_end_io(bio, rq, SET_ERROR(ENOTSUPP)); + goto out; + } + + if (ZVOL_OP_IS_WRITE(ZVOL_OP(bio, rq))) { + rw = WRITE; } else { - rw = bio_data_dir(bio); + rw = READ; } + /* + * Sanity check + * + * If we're a BIO, check our rw matches the kernel's + * bio_data_dir(bio) rw. We need to check because we support fewer + * IO operations, and want to verify that what we think are reads and + * writes from those operations match what the kernel thinks. + */ + ASSERT(rq != NULL || rw == bio_data_dir(bio)); + if (unlikely(zv->zv_flags & ZVOL_REMOVING)) { zvol_end_io(bio, rq, SET_ERROR(ENXIO)); goto out; @@ -610,7 +631,7 @@ zvol_request_impl(zvol_state_t *zv, struct bio *bio, struct request *rq, * interfaces lack this functionality (they block waiting for * the i/o to complete). */ - if (io_is_discard(bio, rq) || io_is_secure_erase(bio, rq)) { + if (io_is_discard(bio, rq)) { if (force_sync) { zvol_discard(&zvr); } else { diff --git a/sys/contrib/openzfs/module/zfs/arc.c b/sys/contrib/openzfs/module/zfs/arc.c index b677f90280d7..dbb5e942e2e6 100644 --- a/sys/contrib/openzfs/module/zfs/arc.c +++ b/sys/contrib/openzfs/module/zfs/arc.c @@ -1157,7 +1157,7 @@ buf_fini(void) #if defined(_KERNEL) /* * Large allocations which do not require contiguous pages - * should be using vmem_free() in the linux kernel\ + * should be using vmem_free() in the linux kernel. */ vmem_free(buf_hash_table.ht_table, (buf_hash_table.ht_mask + 1) * sizeof (void *)); @@ -4651,10 +4651,10 @@ arc_flush_task(void *arg) arc_flush_impl(spa_guid, B_FALSE); arc_async_flush_remove(spa_guid, af->af_cache_level); - uint64_t elaspsed = NSEC2MSEC(gethrtime() - start_time); - if (elaspsed > 0) { + uint64_t elapsed = NSEC2MSEC(gethrtime() - start_time); + if (elapsed > 0) { zfs_dbgmsg("spa %llu arc flushed in %llu ms", - (u_longlong_t)spa_guid, (u_longlong_t)elaspsed); + (u_longlong_t)spa_guid, (u_longlong_t)elapsed); } } @@ -9152,7 +9152,7 @@ top: if (dev->l2ad_first) { /* * This is the first sweep through the device. There is - * nothing to evict. We have already trimmmed the + * nothing to evict. We have already trimmed the * whole device. */ goto out; @@ -10086,12 +10086,12 @@ l2arc_device_teardown(void *arg) kmem_free(remdev->l2ad_dev_hdr, remdev->l2ad_dev_hdr_asize); vmem_free(remdev, sizeof (l2arc_dev_t)); - uint64_t elaspsed = NSEC2MSEC(gethrtime() - start_time); - if (elaspsed > 0) { + uint64_t elapsed = NSEC2MSEC(gethrtime() - start_time); + if (elapsed > 0) { zfs_dbgmsg("spa %llu, vdev %llu removed in %llu ms", (u_longlong_t)rva->rva_spa_gid, (u_longlong_t)rva->rva_vdev_gid, - (u_longlong_t)elaspsed); + (u_longlong_t)elapsed); } if (rva->rva_async) diff --git a/sys/contrib/openzfs/tests/zfs-tests/cmd/mmap_seek.c b/sys/contrib/openzfs/tests/zfs-tests/cmd/mmap_seek.c index 45ba17e36c35..f46980cad111 100644 --- a/sys/contrib/openzfs/tests/zfs-tests/cmd/mmap_seek.c +++ b/sys/contrib/openzfs/tests/zfs-tests/cmd/mmap_seek.c @@ -47,25 +47,34 @@ #endif static void +seek_expect(int fd, off_t offset, int whence, off_t expect_offset) +{ + errno = 0; + off_t seek_offset = lseek(fd, offset, whence); + if (seek_offset == expect_offset) + return; + + int err = errno; + fprintf(stderr, "lseek(fd, %ld, SEEK_%s) = %ld (expected %ld)", + offset, (whence == SEEK_DATA ? "DATA" : "HOLE"), + seek_offset, expect_offset); + if (err != 0) + fprintf(stderr, " (errno %d [%s])\n", err, strerror(err)); + else + fputc('\n', stderr); + exit(2); +} + +static inline void seek_data(int fd, off_t offset, off_t expected) { - off_t data_offset = lseek(fd, offset, SEEK_DATA); - if (data_offset != expected) { - fprintf(stderr, "lseek(fd, %d, SEEK_DATA) = %d (expected %d)\n", - (int)offset, (int)data_offset, (int)expected); - exit(2); - } + seek_expect(fd, offset, SEEK_DATA, expected); } -static void +static inline void seek_hole(int fd, off_t offset, off_t expected) { - off_t hole_offset = lseek(fd, offset, SEEK_HOLE); - if (hole_offset != expected) { - fprintf(stderr, "lseek(fd, %d, SEEK_HOLE) = %d (expected %d)\n", - (int)offset, (int)hole_offset, (int)expected); - exit(2); - } + seek_expect(fd, offset, SEEK_HOLE, expected); } int diff --git a/sys/contrib/openzfs/tests/zfs-tests/tests/functional/cli_root/zpool_reopen/zpool_reopen_004_pos.ksh b/sys/contrib/openzfs/tests/zfs-tests/tests/functional/cli_root/zpool_reopen/zpool_reopen_004_pos.ksh index 2bd9f616170b..1a9774331ba1 100755 --- a/sys/contrib/openzfs/tests/zfs-tests/tests/functional/cli_root/zpool_reopen/zpool_reopen_004_pos.ksh +++ b/sys/contrib/openzfs/tests/zfs-tests/tests/functional/cli_root/zpool_reopen/zpool_reopen_004_pos.ksh @@ -47,6 +47,8 @@ function cleanup # bring back removed disk online for further tests insert_disk $REMOVED_DISK $scsi_host poolexists $TESTPOOL && destroy_pool $TESTPOOL + # Since the disk was offline during destroy, remove the label + zpool labelclear $DISK2 -f } log_assert "Testing zpool reopen with pool name as argument" diff --git a/sys/contrib/openzfs/tests/zfs-tests/tests/functional/zvol/zvol_misc/zvol_misc_trim.ksh b/sys/contrib/openzfs/tests/zfs-tests/tests/functional/zvol/zvol_misc/zvol_misc_trim.ksh index bb697b76a9f3..9de308c4a11a 100755 --- a/sys/contrib/openzfs/tests/zfs-tests/tests/functional/zvol/zvol_misc/zvol_misc_trim.ksh +++ b/sys/contrib/openzfs/tests/zfs-tests/tests/functional/zvol/zvol_misc/zvol_misc_trim.ksh @@ -41,6 +41,7 @@ # 5. TRIM the first 1MB and last 2MB of the 5MB block of data. # 6. Observe 2MB of used space on the zvol # 7. Verify the trimmed regions are zero'd on the zvol +# 8. Verify Secure Erase does not work on zvols (Linux only) verify_runnable "global" @@ -56,6 +57,7 @@ if is_linux ; then else trimcmd='blkdiscard' fi + secure_trimcmd="$trimcmd --secure" else # By default, FreeBSD 'trim' always does a dry-run. '-f' makes # it perform the actual operation. @@ -114,6 +116,11 @@ function do_test { log_must diff $datafile1 $datafile2 log_must rm $datafile1 $datafile2 + + # Secure erase should not work (Linux check only). + if [ -n "$secure_trimcmd" ] ; then + log_mustnot $secure_trimcmd $zvolpath + fi } log_assert "Verify that a ZFS volume can be TRIMed" diff --git a/sys/crypto/chacha20/chacha.c b/sys/crypto/chacha20/chacha.c index 52f7e18c651c..cb06003b0ecf 100644 --- a/sys/crypto/chacha20/chacha.c +++ b/sys/crypto/chacha20/chacha.c @@ -138,7 +138,7 @@ chacha_encrypt_bytes(chacha_ctx *x,const u8 *m,u8 *c,u32 bytes) for (;;) { if (bytes < 64) { #ifndef KEYSTREAM_ONLY - for (i = 0;i < bytes;++i) tmp[i] = m[i]; + for (i = 0; i < bytes; ++i) tmp[i] = m[i]; m = tmp; #endif ctarget = c; @@ -160,7 +160,7 @@ chacha_encrypt_bytes(chacha_ctx *x,const u8 *m,u8 *c,u32 bytes) x13 = j13; x14 = j14; x15 = j15; - for (i = 20;i > 0;i -= 2) { + for (i = 20; i > 0; i -= 2) { QUARTERROUND( x0, x4, x8,x12) QUARTERROUND( x1, x5, x9,x13) QUARTERROUND( x2, x6,x10,x14) @@ -240,7 +240,7 @@ chacha_encrypt_bytes(chacha_ctx *x,const u8 *m,u8 *c,u32 bytes) if (bytes <= 64) { if (bytes < 64) { - for (i = 0;i < bytes;++i) ctarget[i] = c[i]; + for (i = 0; i < bytes; ++i) ctarget[i] = c[i]; } x->input[12] = j12; x->input[13] = j13; diff --git a/sys/crypto/openssl/ossl_sha256.c b/sys/crypto/openssl/ossl_sha256.c index 4613a9409b44..50cb9739d114 100644 --- a/sys/crypto/openssl/ossl_sha256.c +++ b/sys/crypto/openssl/ossl_sha256.c @@ -74,11 +74,11 @@ ossl_sha256_init(void *c_) unsigned int nn; \ switch ((c)->md_len) \ { case SHA224_DIGEST_LENGTH: \ - for (nn=0;nn<SHA224_DIGEST_LENGTH/4;nn++) \ + for (nn=0; nn < SHA224_DIGEST_LENGTH / 4; nn++) \ { ll=(c)->h[nn]; (void)HOST_l2c(ll,(s)); } \ break; \ case SHA256_DIGEST_LENGTH: \ - for (nn=0;nn<SHA256_DIGEST_LENGTH/4;nn++) \ + for (nn=0; nn < SHA256_DIGEST_LENGTH / 4; nn++) \ { ll=(c)->h[nn]; (void)HOST_l2c(ll,(s)); } \ break; \ default: \ diff --git a/sys/dev/aac/aac_linux.c b/sys/dev/aac/aac_linux.c index 609315f50939..65008c562342 100644 --- a/sys/dev/aac/aac_linux.c +++ b/sys/dev/aac/aac_linux.c @@ -52,15 +52,7 @@ #define AAC_LINUX_IOCTL_MIN 0x0000 #define AAC_LINUX_IOCTL_MAX 0x21ff -static linux_ioctl_function_t aac_linux_ioctl; -static struct linux_ioctl_handler aac_linux_handler = {aac_linux_ioctl, - AAC_LINUX_IOCTL_MIN, - AAC_LINUX_IOCTL_MAX}; - -SYSINIT (aac_linux_register, SI_SUB_KLD, SI_ORDER_MIDDLE, - linux_ioctl_register_handler, &aac_linux_handler); -SYSUNINIT(aac_linux_unregister, SI_SUB_KLD, SI_ORDER_MIDDLE, - linux_ioctl_unregister_handler, &aac_linux_handler); +LINUX_IOCTL_SET(aac, AAC_LINUX_IOCTL_MIN, AAC_LINUX_IOCTL_MAX); static int aac_linux_modevent(module_t mod, int type, void *data) diff --git a/sys/dev/aacraid/aacraid_linux.c b/sys/dev/aacraid/aacraid_linux.c index 267dd84c65d5..6b6259ed7059 100644 --- a/sys/dev/aacraid/aacraid_linux.c +++ b/sys/dev/aacraid/aacraid_linux.c @@ -54,15 +54,7 @@ #define AAC_LINUX_IOCTL_MIN 0x0000 #define AAC_LINUX_IOCTL_MAX 0x21ff -static linux_ioctl_function_t aacraid_linux_ioctl; -static struct linux_ioctl_handler aacraid_linux_handler = {aacraid_linux_ioctl, - AAC_LINUX_IOCTL_MIN, - AAC_LINUX_IOCTL_MAX}; - -SYSINIT (aacraid_linux_register, SI_SUB_KLD, SI_ORDER_MIDDLE, - linux_ioctl_register_handler, &aacraid_linux_handler); -SYSUNINIT(aacraid_linux_unregister, SI_SUB_KLD, SI_ORDER_MIDDLE, - linux_ioctl_unregister_handler, &aacraid_linux_handler); +LINUX_IOCTL_SET(aacraid, AAC_LINUX_IOCTL_MIN, AAC_LINUX_IOCTL_MAX); static int aacraid_linux_modevent(module_t mod, int type, void *data) diff --git a/sys/dev/ahci/ahciem.c b/sys/dev/ahci/ahciem.c index c9e6c35f4233..012796aa5d6f 100644 --- a/sys/dev/ahci/ahciem.c +++ b/sys/dev/ahci/ahciem.c @@ -479,7 +479,7 @@ ahci_em_emulate_ses_on_led(device_t dev, union ccb *ccb) else ads->common.bytes[0] |= SES_OBJSTAT_NOTINSTALLED; if (ch->disablephy) - ads->common.bytes[3] |= SESCTL_DEVOFF; + ads->bytes[2] |= SESCTL_DEVOFF; ahci_putch(ch); } ccb->ccb_h.status = CAM_REQ_CMP; diff --git a/sys/dev/aic7xxx/aic79xx.c b/sys/dev/aic7xxx/aic79xx.c index 2b5015b20e41..cee45fa5cc8a 100644 --- a/sys/dev/aic7xxx/aic79xx.c +++ b/sys/dev/aic7xxx/aic79xx.c @@ -7788,8 +7788,8 @@ ahd_abort_scbs(struct ahd_softc *ahd, int target, char channel, } if (role != ROLE_TARGET) { - for (;i < maxtarget; i++) { - for (j = minlun;j < maxlun; j++) { + for (; i < maxtarget; i++) { + for (j = minlun; j < maxlun; j++) { u_int scbid; u_int tcl; diff --git a/sys/dev/aic7xxx/aic7xxx.c b/sys/dev/aic7xxx/aic7xxx.c index c09876e9f589..18f68b806948 100644 --- a/sys/dev/aic7xxx/aic7xxx.c +++ b/sys/dev/aic7xxx/aic7xxx.c @@ -5903,8 +5903,8 @@ ahc_abort_scbs(struct ahc_softc *ahc, int target, char channel, } if (role != ROLE_TARGET) { - for (;i < maxtarget; i++) { - for (j = minlun;j < maxlun; j++) { + for (; i < maxtarget; i++) { + for (j = minlun; j < maxlun; j++) { u_int scbid; u_int tcl; diff --git a/sys/dev/atkbdc/psm.c b/sys/dev/atkbdc/psm.c index 8563b5f93aa2..137758b104d3 100644 --- a/sys/dev/atkbdc/psm.c +++ b/sys/dev/atkbdc/psm.c @@ -5287,6 +5287,7 @@ static const struct filterops psmfiltops = { .f_isfd = 1, .f_detach = psmfilter_detach, .f_event = psmfilter, + .f_copy = knote_triv_copy, }; static int diff --git a/sys/dev/cyapa/cyapa.c b/sys/dev/cyapa/cyapa.c index ed755f992949..464b03c0ab64 100644 --- a/sys/dev/cyapa/cyapa.c +++ b/sys/dev/cyapa/cyapa.c @@ -1121,7 +1121,8 @@ static int cyapafilt(struct knote *, long); static const struct filterops cyapa_filtops = { .f_isfd = 1, .f_detach = cyapafiltdetach, - .f_event = cyapafilt + .f_event = cyapafilt, + .f_copy = knote_triv_copy, }; static int diff --git a/sys/dev/dc/if_dc.c b/sys/dev/dc/if_dc.c index bed74c3b6181..5c1d7ff30976 100644 --- a/sys/dev/dc/if_dc.c +++ b/sys/dev/dc/if_dc.c @@ -999,7 +999,7 @@ dc_setfilt_21143(struct dc_softc *sc) else DC_CLRBIT(sc, DC_NETCFG, DC_NETCFG_RX_ALLMULTI); - if_foreach_llmaddr(ifp, dc_hash_maddr_21143, sp); + if_foreach_llmaddr(ifp, dc_hash_maddr_21143, sc); if (if_getflags(ifp) & IFF_BROADCAST) { h = dc_mchash_le(sc, if_getbroadcastaddr(ifp)); diff --git a/sys/dev/enetc/if_enetc.c b/sys/dev/enetc/if_enetc.c index 808397b229a7..53002f9d73ce 100644 --- a/sys/dev/enetc/if_enetc.c +++ b/sys/dev/enetc/if_enetc.c @@ -848,7 +848,7 @@ enetc_hash_vid(uint16_t vid) bool bit; int i; - for (i = 0;i < 6;i++) { + for (i = 0; i < 6; i++) { bit = vid & BIT(i); bit ^= !!(vid & BIT(i + 6)); hash |= bit << i; @@ -1020,7 +1020,7 @@ enetc_msix_intr_assign(if_ctx_t ctx, int msix) ENETC_RBICR0_ICEN | ENETC_RBICR0_SET_ICPT(ENETC_RX_INTR_PKT_THR)); } vector = 0; - for (i = 0;i < sc->tx_num_queues; i++, vector++) { + for (i = 0; i < sc->tx_num_queues; i++, vector++) { tx_queue = &sc->tx_queues[i]; snprintf(irq_name, sizeof(irq_name), "txq%d", i); iflib_softirq_alloc_generic(ctx, &tx_queue->irq, @@ -1130,7 +1130,7 @@ enetc_isc_txd_encap(void *data, if_pkt_info_t ipi) } /* Now add remaining descriptors. */ - for (;i < ipi->ipi_nsegs; i++) { + for (; i < ipi->ipi_nsegs; i++) { desc = &queue->ring[pidx]; bzero(desc, sizeof(*desc)); desc->addr = segs[i].ds_addr; diff --git a/sys/dev/evdev/cdev.c b/sys/dev/evdev/cdev.c index 9fe1299a0937..dd4115cdfc71 100644 --- a/sys/dev/evdev/cdev.c +++ b/sys/dev/evdev/cdev.c @@ -96,6 +96,7 @@ static const struct filterops evdev_cdev_filterops = { .f_attach = NULL, .f_detach = evdev_kqdetach, .f_event = evdev_kqread, + .f_copy = knote_triv_copy, }; static int diff --git a/sys/dev/evdev/uinput.c b/sys/dev/evdev/uinput.c index 9ac9fee8a157..76a530479c02 100644 --- a/sys/dev/evdev/uinput.c +++ b/sys/dev/evdev/uinput.c @@ -104,6 +104,7 @@ static const struct filterops uinput_filterops = { .f_attach = NULL, .f_detach = uinput_kqdetach, .f_event = uinput_kqread, + .f_copy = knote_triv_copy, }; struct uinput_cdev_state diff --git a/sys/dev/gpio/gpioc.c b/sys/dev/gpio/gpioc.c index 6c6f79227166..517f7752daad 100644 --- a/sys/dev/gpio/gpioc.c +++ b/sys/dev/gpio/gpioc.c @@ -158,7 +158,8 @@ static const struct filterops gpioc_read_filterops = { .f_attach = NULL, .f_detach = gpioc_kqdetach, .f_event = gpioc_kqread, - .f_touch = NULL + .f_touch = NULL, + .f_copy = knote_triv_copy, }; static struct gpioc_pin_event * diff --git a/sys/dev/hid/hidraw.c b/sys/dev/hid/hidraw.c index 4855843cd265..5b5e9b58f8bd 100644 --- a/sys/dev/hid/hidraw.c +++ b/sys/dev/hid/hidraw.c @@ -182,6 +182,7 @@ static const struct filterops hidraw_filterops_read = { .f_isfd = 1, .f_detach = hidraw_kqdetach, .f_event = hidraw_kqread, + .f_copy = knote_triv_copy, }; static void diff --git a/sys/dev/hid/u2f.c b/sys/dev/hid/u2f.c index 08f1a5ceedba..e1f696d72f01 100644 --- a/sys/dev/hid/u2f.c +++ b/sys/dev/hid/u2f.c @@ -132,6 +132,7 @@ static struct filterops u2f_filterops_read = { .f_isfd = 1, .f_detach = u2f_kqdetach, .f_event = u2f_kqread, + .f_copy = knote_triv_copy, }; static int diff --git a/sys/dev/hptmv/entry.c b/sys/dev/hptmv/entry.c index 5c4718bf582f..f3d58f285b39 100644 --- a/sys/dev/hptmv/entry.c +++ b/sys/dev/hptmv/entry.c @@ -430,7 +430,7 @@ static void device_change(IAL_ADAPTER_T *pAdapter , MV_U8 channelIndex, int plug if(pVDev->pParent) { int iMember; - for(iMember = 0; iMember < pVDev->pParent->u.array.bArnMember; iMember++) + for (iMember = 0; iMember < pVDev->pParent->u.array.bArnMember; iMember++) if((PVDevice)pVDev->pParent->u.array.pMember[iMember] == pVDev) pVDev->pParent->u.array.pMember[iMember] = NULL; pVDev->pParent = NULL; @@ -984,7 +984,7 @@ fRegisterVdevice(IAL_ADAPTER_T *pAdapter) PVBus pVBus; int i,j; - for(i=0;i<MV_SATA_CHANNELS_NUM;i++) { + for (i = 0; i < MV_SATA_CHANNELS_NUM; i++) { pPhysical = &(pAdapter->VDevices[i]); pLogical = pPhysical; while (pLogical->pParent) pLogical = pLogical->pParent; @@ -1027,8 +1027,7 @@ GetSpareDisk(_VBUS_ARG PVDevice pArray) PVDevice pVDevice, pFind = NULL; int i; - for(i=0;i<MV_SATA_CHANNELS_NUM;i++) - { + for (i=0; i < MV_SATA_CHANNELS_NUM; i++) { pVDevice = &pAdapter->VDevices[i]; if(!pVDevice) continue; @@ -1356,7 +1355,7 @@ unregister: goto unregister; } - for (i=0; i<MAX_COMMAND_BLOCKS_FOR_EACH_VBUS; i++) { + for (i = 0; i < MAX_COMMAND_BLOCKS_FOR_EACH_VBUS; i++) { FreeCommand(_VBUS_P &(pAdapter->pCommandBlocks[i])); } @@ -1370,7 +1369,7 @@ unregister: memset((void *)pAdapter->pbus_dmamap, 0, sizeof(struct _BUS_DMAMAP) * MAX_QUEUE_COMM); pAdapter->pbus_dmamap_list = 0; - for (i=0; i < MAX_QUEUE_COMM; i++) { + for (i = 0; i < MAX_QUEUE_COMM; i++) { PBUS_DMAMAP pmap = &(pAdapter->pbus_dmamap[i]); pmap->pAdapter = pAdapter; dmamap_put(pmap); @@ -1398,7 +1397,7 @@ unregister: pAdapter->prdTableAlignedAddr = (PUCHAR)(((ULONG_PTR)pAdapter->prdTableAddr + 0x1f) & ~(ULONG_PTR)0x1fL); { PUCHAR PRDTable = pAdapter->prdTableAlignedAddr; - for (i=0; i<PRD_TABLES_FOR_VBUS; i++) + for (i = 0; i < PRD_TABLES_FOR_VBUS; i++) { /* KdPrint(("i=%d,pAdapter->pFreePRDLink=%p\n",i,pAdapter->pFreePRDLink)); */ FreePRDTable(pAdapter, PRDTable); @@ -1447,7 +1446,7 @@ unregister: } #ifdef SUPPORT_ARRAY - for(i = MAX_ARRAY_DEVICE - 1; i >= 0; i--) { + for (i = MAX_ARRAY_DEVICE - 1; i >= 0; i--) { pVDev = ArrayTables(i); mArFreeArrayTable(pVDev); } @@ -1467,7 +1466,7 @@ unregister: _vbus_p->nInstances = 1; fRegisterVdevice(pAdapter); - for (channel=0;channel<MV_SATA_CHANNELS_NUM;channel++) { + for (channel = 0; channel < MV_SATA_CHANNELS_NUM; channel++) { pVDev = _vbus_p->pVDevice[channel]; if (pVDev && pVDev->vf_online) fCheckBootable(pVDev); @@ -1567,7 +1566,7 @@ fResetActiveCommands(PVBus _vbus_p) { MV_SATA_ADAPTER *pMvSataAdapter = &((IAL_ADAPTER_T *)_vbus_p->OsExt)->mvSataAdapter; MV_U8 channel; - for (channel=0;channel< MV_SATA_CHANNELS_NUM;channel++) { + for (channel = 0; channel < MV_SATA_CHANNELS_NUM; channel++) { if (pMvSataAdapter->sataChannel[channel] && pMvSataAdapter->sataChannel[channel]->outstandingCommands) MvSataResetChannel(pMvSataAdapter,channel); } @@ -1590,7 +1589,7 @@ check_cmds: dataxfer_poll(); xor_poll(); #endif - for (channel=0;channel< MV_SATA_CHANNELS_NUM;channel++) { + for (channel = 0; channel < MV_SATA_CHANNELS_NUM; channel++) { pMvSataChannel = pMvSataAdapter->sataChannel[channel]; if (pMvSataChannel && pMvSataChannel->outstandingCommands) { @@ -1716,7 +1715,7 @@ fDeviceSendCommand(_VBUS_ARG PCommand pCmd) MV_BOOLEAN is48bit; MV_U8 channel; - int i=0; + int i = 0; DECLARE_BUFFER(FPSCAT_GATH, tmpSg); @@ -2141,7 +2140,7 @@ FlushAdapter(IAL_ADAPTER_T *pAdapter) hpt_printk(("flush all devices\n")); /* flush all devices */ - for (i=0; i<MAX_VDEVICE_PER_VBUS; i++) { + for (i = 0; i < MAX_VDEVICE_PER_VBUS; i++) { PVDevice pVDev = pAdapter->VBus.pVDevice[i]; if(pVDev) fFlushVDev(pVDev); } @@ -2174,7 +2173,7 @@ Check_Idle_Call(IAL_ADAPTER_T *pAdapter) { int i; PVDevice pArray; - for(i = 0; i < MAX_ARRAY_PER_VBUS; i++){ + for (i = 0; i < MAX_ARRAY_PER_VBUS; i++) { if ((pArray=ArrayTables(i))->u.array.dArStamp==0) continue; else if (pArray->u.array.rf_auto_rebuild) { @@ -2378,7 +2377,7 @@ hpt_free_ccb(union ccb **ccb_Q, union ccb *ccb) static void hpt_worker_thread(void) { - for(;;) { + for (;;) { mtx_lock(&DpcQueue_Lock); while (DpcQueue_First!=DpcQueue_Last) { ST_HPT_DPC p; @@ -2418,7 +2417,7 @@ static void hpt_worker_thread(void) mtx_lock(&pAdapter->lock); _vbus_p = &pAdapter->VBus; - for (i=0;i<MAX_ARRAY_PER_VBUS;i++) + for (i = 0; i < MAX_ARRAY_PER_VBUS; i++) { if ((pArray=ArrayTables(i))->u.array.dArStamp==0) continue; @@ -2472,7 +2471,7 @@ launch_worker_thread(void) int i; PVDevice pVDev; - for(i = 0; i < MAX_ARRAY_PER_VBUS; i++) + for (i = 0; i < MAX_ARRAY_PER_VBUS; i++) if ((pVDev=ArrayTables(i))->u.array.dArStamp==0) continue; else{ diff --git a/sys/dev/hptmv/gui_lib.c b/sys/dev/hptmv/gui_lib.c index d78fdcca69d2..f11044db733a 100644 --- a/sys/dev/hptmv/gui_lib.c +++ b/sys/dev/hptmv/gui_lib.c @@ -86,8 +86,7 @@ check_VDevice_valid(PVDevice p) while(pAdapter != NULL) { _vbus_p = &pAdapter->VBus; - for (i=0;i<MAX_ARRAY_PER_VBUS;i++) - { + for (i = 0; i<MAX_ARRAY_PER_VBUS; i++) { pVDevice=ArrayTables(i); if ((pVDevice->u.array.dArStamp != 0) && (pVDevice == p)) return 0; @@ -244,9 +243,9 @@ static void get_array_info(PVDevice pVDevice, PHPT_ARRAY_INFO pArrayInfo) if(pVDevice->u.array.pMember[i] != NULL) pArrayInfo->Members[pArrayInfo->nDisk++] = VDEV_TO_ID(pVDevice->u.array.pMember[i]); - for(i=pArrayInfo->nDisk; i<MAX_ARRAY_MEMBERS; i++) + for (i = pArrayInfo->nDisk; i < MAX_ARRAY_MEMBERS; i++) pArrayInfo->Members[i] = INVALID_DEVICEID; - } +} static void get_array_info_v2(PVDevice pVDevice, PHPT_ARRAY_INFO_V2 pArrayInfo) { @@ -266,7 +265,7 @@ static void get_array_info_v2(PVDevice pVDevice, PHPT_ARRAY_INFO_V2 pArrayInfo) if(pVDevice->u.array.pMember[i] != NULL) pArrayInfo->Members[pArrayInfo->nDisk++] = VDEV_TO_ID(pVDevice->u.array.pMember[i]); - for(i=pArrayInfo->nDisk; i<MAX_ARRAY_MEMBERS_V2; i++) + for (i = pArrayInfo->nDisk; i < MAX_ARRAY_MEMBERS_V2; i++) pArrayInfo->Members[i] = INVALID_DEVICEID; } #endif @@ -461,8 +460,7 @@ found: pInfo->IoPort = 0; pInfo->ControlPort = 0; - for (i=0; i<2 ;i++) - { + for (i = 0; i < 2; i++) { pInfo->Devices[i] = (DEVICEID)INVALID_DEVICEID; } diff --git a/sys/dev/hptmv/hptproc.c b/sys/dev/hptmv/hptproc.c index 38fe61ee7e04..328750d9034c 100644 --- a/sys/dev/hptmv/hptproc.c +++ b/sys/dev/hptmv/hptproc.c @@ -107,7 +107,7 @@ hpt_set_asc_info(IAL_ADAPTER_T *pAdapter, char *buffer,int length) return -EINVAL; } - for (i=0;i<MV_SATA_CHANNELS_NUM;i++) + for (i = 0; i < MV_SATA_CHANNELS_NUM; i++) if(i == ichan) goto rebuild; diff --git a/sys/dev/iommu/busdma_iommu.c b/sys/dev/iommu/busdma_iommu.c index 668ccf056463..82f73d469585 100644 --- a/sys/dev/iommu/busdma_iommu.c +++ b/sys/dev/iommu/busdma_iommu.c @@ -295,7 +295,6 @@ iommu_instantiate_ctx(struct iommu_unit *unit, device_t dev, bool rmrr) } else { iommu_free_ctx_locked(unit, ctx); } - ctx = NULL; } return (ctx); } @@ -303,6 +302,7 @@ iommu_instantiate_ctx(struct iommu_unit *unit, device_t dev, bool rmrr) struct iommu_ctx * iommu_get_dev_ctx(device_t dev) { + struct iommu_ctx *ctx; struct iommu_unit *unit; unit = iommu_find(dev, bootverbose); @@ -313,7 +313,10 @@ iommu_get_dev_ctx(device_t dev) return (NULL); iommu_unit_pre_instantiate_ctx(unit); - return (iommu_instantiate_ctx(unit, dev, false)); + ctx = iommu_instantiate_ctx(unit, dev, false); + if (ctx != NULL && (ctx->flags & IOMMU_CTX_DISABLED) != 0) + ctx = NULL; + return (ctx); } bus_dma_tag_t diff --git a/sys/dev/ipmi/ipmi_linux.c b/sys/dev/ipmi/ipmi_linux.c index 05eb30a0aa77..58872de12003 100644 --- a/sys/dev/ipmi/ipmi_linux.c +++ b/sys/dev/ipmi/ipmi_linux.c @@ -66,15 +66,7 @@ #define L_IPMICTL_SET_MY_LUN_CMD _IOW(IPMI_IOC_MAGIC, 19, unsigned int) #define L_IPMICTL_GET_MY_LUN_CMD _IOW(IPMI_IOC_MAGIC, 20, unsigned int) -static linux_ioctl_function_t ipmi_linux_ioctl; -static struct linux_ioctl_handler ipmi_linux_handler = {ipmi_linux_ioctl, - IPMI_LINUX_IOCTL_MIN, - IPMI_LINUX_IOCTL_MAX}; - -SYSINIT (ipmi_linux_register, SI_SUB_KLD, SI_ORDER_MIDDLE, - linux_ioctl_register_handler, &ipmi_linux_handler); -SYSUNINIT(ipmi_linux_unregister, SI_SUB_KLD, SI_ORDER_MIDDLE, - linux_ioctl_unregister_handler, &ipmi_linux_handler); +LINUX_IOCTL_SET(ipmi, IPMI_LINUX_IOCTL_MIN, IPMI_LINUX_IOCTL_MAX); static int ipmi_linux_modevent(module_t mod, int type, void *data) diff --git a/sys/dev/ixl/if_ixl.c b/sys/dev/ixl/if_ixl.c index 261f76055901..bfaf6cd69e58 100644 --- a/sys/dev/ixl/if_ixl.c +++ b/sys/dev/ixl/if_ixl.c @@ -1480,17 +1480,33 @@ ixl_if_multi_set(if_ctx_t ctx) struct ixl_pf *pf = iflib_get_softc(ctx); struct ixl_vsi *vsi = &pf->vsi; struct i40e_hw *hw = vsi->hw; + enum i40e_status_code status; int mcnt; + if_t ifp = iflib_get_ifp(ctx); IOCTL_DEBUGOUT("ixl_if_multi_set: begin"); /* Delete filters for removed multicast addresses */ ixl_del_multi(vsi, false); - mcnt = min(if_llmaddr_count(iflib_get_ifp(ctx)), MAX_MULTICAST_ADDR); + mcnt = min(if_llmaddr_count(ifp), MAX_MULTICAST_ADDR); if (__predict_false(mcnt == MAX_MULTICAST_ADDR)) { - i40e_aq_set_vsi_multicast_promiscuous(hw, + /* Check if promisc mode is already enabled, if yes return */ + if (vsi->flags & IXL_FLAGS_MC_PROMISC) + return; + + status = i40e_aq_set_vsi_multicast_promiscuous(hw, vsi->seid, TRUE, NULL); + if (status != I40E_SUCCESS) + if_printf(ifp, "Failed to enable multicast promiscuous " + "mode, status: %s\n", i40e_stat_str(hw, status)); + else { + if_printf(ifp, "Enabled multicast promiscuous mode\n"); + + /* Set the flag to track promiscuous mode */ + vsi->flags |= IXL_FLAGS_MC_PROMISC; + } + /* Delete all existing MC filters */ ixl_del_multi(vsi, true); return; } @@ -1693,6 +1709,13 @@ ixl_if_promisc_set(if_ctx_t ctx, int flags) return (err); err = i40e_aq_set_vsi_multicast_promiscuous(hw, vsi->seid, multi, NULL); + + /* Update the multicast promiscuous flag based on the new state */ + if (multi) + vsi->flags |= IXL_FLAGS_MC_PROMISC; + else + vsi->flags &= ~IXL_FLAGS_MC_PROMISC; + return (err); } diff --git a/sys/dev/ixl/ixl.h b/sys/dev/ixl/ixl.h index 95379448b570..ab0f38307d90 100644 --- a/sys/dev/ixl/ixl.h +++ b/sys/dev/ixl/ixl.h @@ -202,6 +202,7 @@ #define IXL_FLAGS_KEEP_TSO6 (1 << 1) #define IXL_FLAGS_USES_MSIX (1 << 2) #define IXL_FLAGS_IS_VF (1 << 3) +#define IXL_FLAGS_MC_PROMISC (1 << 4) #define IXL_VSI_IS_PF(v) ((v->flags & IXL_FLAGS_IS_VF) == 0) #define IXL_VSI_IS_VF(v) ((v->flags & IXL_FLAGS_IS_VF) != 0) diff --git a/sys/dev/ixl/ixl_pf_main.c b/sys/dev/ixl/ixl_pf_main.c index 1752efc02fff..b62619ced5cb 100644 --- a/sys/dev/ixl/ixl_pf_main.c +++ b/sys/dev/ixl/ixl_pf_main.c @@ -593,24 +593,29 @@ ixl_add_maddr(void *arg, struct sockaddr_dl *sdl, u_int cnt) * Routines for multicast and vlan filter management. * *********************************************************************/ + +/** + * ixl_add_multi - Add multicast filters to the hardware + * @vsi: The VSI structure + * + * In case number of multicast filters in the IFP exceeds 127 entries, + * multicast promiscuous mode will be enabled and the filters will be removed + * from the hardware + */ void ixl_add_multi(struct ixl_vsi *vsi) { if_t ifp = vsi->ifp; - struct i40e_hw *hw = vsi->hw; int mcnt = 0; struct ixl_add_maddr_arg cb_arg; IOCTL_DEBUGOUT("ixl_add_multi: begin"); - mcnt = if_llmaddr_count(ifp); - if (__predict_false(mcnt >= MAX_MULTICAST_ADDR)) { - i40e_aq_set_vsi_multicast_promiscuous(hw, - vsi->seid, TRUE, NULL); - /* delete all existing MC filters */ - ixl_del_multi(vsi, true); - return; - } + /* + * There is no need to check if the number of multicast addresses + * exceeds the MAX_MULTICAST_ADDR threshold and set promiscuous mode + * here, as all callers already handle this case. + */ cb_arg.vsi = vsi; LIST_INIT(&cb_arg.to_add); @@ -633,30 +638,103 @@ ixl_match_maddr(void *arg, struct sockaddr_dl *sdl, u_int cnt) return (0); } +/** + * ixl_dis_multi_promisc - Disable multicast promiscuous mode + * @vsi: The VSI structure + * @vsi_mcnt: Number of multicast filters in the VSI + * + * Disable multicast promiscuous mode based on number of entries in the IFP + * and the VSI, then re-add multicast filters. + * + */ +static void +ixl_dis_multi_promisc(struct ixl_vsi *vsi, int vsi_mcnt) +{ + struct ifnet *ifp = vsi->ifp; + struct i40e_hw *hw = vsi->hw; + int ifp_mcnt = 0; + enum i40e_status_code status; + + /* + * Check if multicast promiscuous mode was actually enabled. + * If promiscuous mode was not enabled, don't attempt to disable it. + * Also, don't disable if IFF_PROMISC or IFF_ALLMULTI is set. + */ + if (!(vsi->flags & IXL_FLAGS_MC_PROMISC) || + (if_getflags(ifp) & (IFF_PROMISC | IFF_ALLMULTI))) + return; + + ifp_mcnt = if_llmaddr_count(ifp); + /* + * Equal lists or empty ifp list mean the list has not been changed + * and in such case avoid disabling multicast promiscuous mode as it + * was not previously enabled. Case where multicast promiscuous mode has + * been enabled is when vsi_mcnt == 0 && ifp_mcnt > 0. + */ + if (ifp_mcnt == vsi_mcnt || ifp_mcnt == 0 || + ifp_mcnt >= MAX_MULTICAST_ADDR) + return; + + status = i40e_aq_set_vsi_multicast_promiscuous(hw, vsi->seid, + FALSE, NULL); + if (status != I40E_SUCCESS) { + if_printf(ifp, "Failed to disable multicast promiscuous " + "mode, status: %s\n", i40e_stat_str(hw, status)); + + return; + } + + /* Clear the flag since promiscuous mode is now disabled */ + vsi->flags &= ~IXL_FLAGS_MC_PROMISC; + if_printf(ifp, "Disabled multicast promiscuous mode\n"); + + ixl_add_multi(vsi); +} + +/** + * ixl_del_multi - Delete multicast filters from the hardware + * @vsi: The VSI structure + * @all: Bool to determine if all the multicast filters should be removed + * + * In case number of multicast filters in the IFP drops to 127 entries, + * multicast promiscuous mode will be disabled and the filters will be reapplied + * to the hardware. + */ void ixl_del_multi(struct ixl_vsi *vsi, bool all) { - struct ixl_ftl_head to_del; + int to_del_cnt = 0, vsi_mcnt = 0; if_t ifp = vsi->ifp; struct ixl_mac_filter *f, *fn; - int mcnt = 0; + struct ixl_ftl_head to_del; IOCTL_DEBUGOUT("ixl_del_multi: begin"); LIST_INIT(&to_del); /* Search for removed multicast addresses */ LIST_FOREACH_SAFE(f, &vsi->ftl, ftle, fn) { - if ((f->flags & IXL_FILTER_MC) == 0 || - (!all && (if_foreach_llmaddr(ifp, ixl_match_maddr, f) == 0))) + if ((f->flags & IXL_FILTER_MC) == 0) + continue; + + /* Count all the multicast filters in the VSI for comparison */ + vsi_mcnt++; + + if (!all && if_foreach_llmaddr(ifp, ixl_match_maddr, f) != 0) continue; LIST_REMOVE(f, ftle); LIST_INSERT_HEAD(&to_del, f, ftle); - mcnt++; + to_del_cnt++; } - if (mcnt > 0) - ixl_del_hw_filters(vsi, &to_del, mcnt); + if (to_del_cnt > 0) { + ixl_del_hw_filters(vsi, &to_del, to_del_cnt); + return; + } + + ixl_dis_multi_promisc(vsi, vsi_mcnt); + + IOCTL_DEBUGOUT("ixl_del_multi: end"); } void diff --git a/sys/dev/mfi/mfi_linux.c b/sys/dev/mfi/mfi_linux.c index 8ed8baa3858a..9541ff37336a 100644 --- a/sys/dev/mfi/mfi_linux.c +++ b/sys/dev/mfi/mfi_linux.c @@ -53,15 +53,7 @@ #define MFI_LINUX_IOCTL_MIN 0x4d00 #define MFI_LINUX_IOCTL_MAX 0x4d04 -static linux_ioctl_function_t mfi_linux_ioctl; -static struct linux_ioctl_handler mfi_linux_handler = {mfi_linux_ioctl, - MFI_LINUX_IOCTL_MIN, - MFI_LINUX_IOCTL_MAX}; - -SYSINIT (mfi_register, SI_SUB_KLD, SI_ORDER_MIDDLE, - linux_ioctl_register_handler, &mfi_linux_handler); -SYSUNINIT(mfi_unregister, SI_SUB_KLD, SI_ORDER_MIDDLE, - linux_ioctl_unregister_handler, &mfi_linux_handler); +LINUX_IOCTL_SET(mfi, MFI_LINUX_IOCTL_MIN, MFI_LINUX_IOCTL_MAX); static struct linux_device_handler mfi_device_handler = { "mfi", "megaraid_sas", "mfi0", "megaraid_sas_ioctl_node", -1, 0, 1}; diff --git a/sys/dev/mps/mps_sas.c b/sys/dev/mps/mps_sas.c index d69c8ea5fded..fa0f817ed67b 100644 --- a/sys/dev/mps/mps_sas.c +++ b/sys/dev/mps/mps_sas.c @@ -858,7 +858,7 @@ mps_detach_sas(struct mps_softc *sc) if (sassc->devq != NULL) cam_simq_free(sassc->devq); - for(i=0; i< sassc->maxtargets ;i++) { + for (i = 0; i < sassc->maxtargets; i++) { targ = &sassc->targets[i]; SLIST_FOREACH_SAFE(lun, &targ->luns, lun_link, lun_tmp) { free(lun, M_MPT2); @@ -3396,7 +3396,7 @@ mpssas_realloc_targets(struct mps_softc *sc, int maxtargets) * the allocated LUNs for each target and then the target buffer * itself. */ - for (i=0; i< maxtargets; i++) { + for (i = 0; i < maxtargets; i++) { targ = &sassc->targets[i]; SLIST_FOREACH_SAFE(lun, &targ->luns, lun_link, lun_tmp) { free(lun, M_MPT2); diff --git a/sys/dev/mpt/mpt_raid.c b/sys/dev/mpt/mpt_raid.c index 5ff08ffcf2b3..2b868f6ef070 100644 --- a/sys/dev/mpt/mpt_raid.c +++ b/sys/dev/mpt/mpt_raid.c @@ -830,7 +830,7 @@ mpt_is_raid_volume(struct mpt_softc *mpt, target_id_t tgt) } ioc_vol = mpt->ioc_page2->RaidVolume; ioc_last_vol = ioc_vol + mpt->ioc_page2->NumActiveVolumes; - for (;ioc_vol != ioc_last_vol; ioc_vol++) { + for (; ioc_vol != ioc_last_vol; ioc_vol++) { if (ioc_vol->VolumeID == tgt) { return (1); } @@ -1406,7 +1406,7 @@ mpt_refresh_raid_data(struct mpt_softc *mpt) ioc_vol = mpt->ioc_page2->RaidVolume; ioc_last_vol = ioc_vol + mpt->ioc_page2->NumActiveVolumes; - for (;ioc_vol != ioc_last_vol; ioc_vol++) { + for (; ioc_vol != ioc_last_vol; ioc_vol++) { struct mpt_raid_volume *mpt_vol; mpt_vol = mpt->raid_volumes + ioc_vol->VolumePageNumber; diff --git a/sys/dev/mrsas/mrsas_linux.c b/sys/dev/mrsas/mrsas_linux.c index d7d48740a204..b06788fffc82 100644 --- a/sys/dev/mrsas/mrsas_linux.c +++ b/sys/dev/mrsas/mrsas_linux.c @@ -67,15 +67,7 @@ #define MRSAS_LINUX_IOCTL_MIN 0x4d00 #define MRSAS_LINUX_IOCTL_MAX 0x4d01 -static linux_ioctl_function_t mrsas_linux_ioctl; -static struct linux_ioctl_handler mrsas_linux_handler = {mrsas_linux_ioctl, - MRSAS_LINUX_IOCTL_MIN, -MRSAS_LINUX_IOCTL_MAX}; - -SYSINIT(mrsas_register, SI_SUB_KLD, SI_ORDER_MIDDLE, - linux_ioctl_register_handler, &mrsas_linux_handler); -SYSUNINIT(mrsas_unregister, SI_SUB_KLD, SI_ORDER_MIDDLE, - linux_ioctl_unregister_handler, &mrsas_linux_handler); +LINUX_IOCTL_SET(mrsas, MRSAS_LINUX_IOCTL_MIN, MRSAS_LINUX_IOCTL_MAX); static struct linux_device_handler mrsas_device_handler = {"mrsas", "megaraid_sas", "mrsas0", "megaraid_sas_ioctl_node", -1, 0, 1}; diff --git a/sys/dev/netmap/netmap_freebsd.c b/sys/dev/netmap/netmap_freebsd.c index 8cc543d54c2e..9fb4370129f3 100644 --- a/sys/dev/netmap/netmap_freebsd.c +++ b/sys/dev/netmap/netmap_freebsd.c @@ -738,6 +738,7 @@ nm_os_extmem_create(unsigned long p, struct nmreq_pools_info *pi, int *perror) out_rem: vm_map_remove(kernel_map, e->kva, e->kva + e->size); + e->obj = NULL; /* reference consumed by vm_map_remove() */ out_rel: vm_object_deallocate(e->obj); e->obj = NULL; @@ -1406,19 +1407,34 @@ netmap_knwrite(struct knote *kn, long hint) return netmap_knrw(kn, hint, POLLOUT); } +static int +netmap_kncopy(struct knote *kn, struct proc *p1) +{ + struct netmap_priv_d *priv; + struct nm_selinfo *si; + + priv = kn->kn_hook; + si = priv->np_si[kn->kn_filter == EVFILT_WRITE ? NR_TX : NR_RX]; + NMG_LOCK(); + si->kqueue_users++; + NMG_UNLOCK(); + return (0); +} + static const struct filterops netmap_rfiltops = { .f_isfd = 1, .f_detach = netmap_knrdetach, .f_event = netmap_knread, + .f_copy = netmap_kncopy, }; static const struct filterops netmap_wfiltops = { .f_isfd = 1, .f_detach = netmap_knwdetach, .f_event = netmap_knwrite, + .f_copy = netmap_kncopy, }; - /* * This is called when a thread invokes kevent() to record * a change in the configuration of the kqueue(). diff --git a/sys/dev/nfe/if_nfe.c b/sys/dev/nfe/if_nfe.c index 4625c2616562..265181ef7ad0 100644 --- a/sys/dev/nfe/if_nfe.c +++ b/sys/dev/nfe/if_nfe.c @@ -2078,7 +2078,7 @@ nfe_rxeof(struct nfe_softc *sc, int count, int *rx_npktsp) bus_dmamap_sync(sc->rxq.rx_desc_tag, sc->rxq.rx_desc_map, BUS_DMASYNC_POSTREAD); - for (prog = 0;;NFE_INC(sc->rxq.cur, NFE_RX_RING_COUNT), vtag = 0) { + for (prog = 0; ; NFE_INC(sc->rxq.cur, NFE_RX_RING_COUNT), vtag = 0) { if (count <= 0) break; count--; @@ -2192,7 +2192,7 @@ nfe_jrxeof(struct nfe_softc *sc, int count, int *rx_npktsp) bus_dmamap_sync(sc->jrxq.jrx_desc_tag, sc->jrxq.jrx_desc_map, BUS_DMASYNC_POSTREAD); - for (prog = 0;;NFE_INC(sc->jrxq.jcur, NFE_JUMBO_RX_RING_COUNT), + for (prog = 0; ; NFE_INC(sc->jrxq.jcur, NFE_JUMBO_RX_RING_COUNT), vtag = 0) { if (count <= 0) break; diff --git a/sys/dev/null/null.c b/sys/dev/null/null.c index 8525eb9543c3..b5725de30bef 100644 --- a/sys/dev/null/null.c +++ b/sys/dev/null/null.c @@ -61,12 +61,14 @@ static int zero_ev(struct knote *kn, long hint); static const struct filterops one_fop = { .f_isfd = 1, - .f_event = one_ev + .f_event = one_ev, + .f_copy = knote_triv_copy, }; static const struct filterops zero_fop = { .f_isfd = 1, - .f_event = zero_ev + .f_event = zero_ev, + .f_copy = knote_triv_copy, }; static struct cdevsw full_cdevsw = { diff --git a/sys/dev/nvme/nvme_ctrlr.c b/sys/dev/nvme/nvme_ctrlr.c index 3a1894bf754d..f212759a5500 100644 --- a/sys/dev/nvme/nvme_ctrlr.c +++ b/sys/dev/nvme/nvme_ctrlr.c @@ -33,6 +33,7 @@ #include <sys/buf.h> #include <sys/bus.h> #include <sys/conf.h> +#include <sys/disk.h> #include <sys/ioccom.h> #include <sys/proc.h> #include <sys/smp.h> @@ -1254,6 +1255,24 @@ nvme_ctrlr_poll(struct nvme_controller *ctrlr) } /* + * Copy the NVME device's serial number to the provided buffer, which must be + * at least DISK_IDENT_SIZE bytes large. + */ +void +nvme_ctrlr_get_ident(const struct nvme_controller *ctrlr, uint8_t *sn) +{ + _Static_assert(NVME_SERIAL_NUMBER_LENGTH < DISK_IDENT_SIZE, + "NVME serial number too big for disk ident"); + + memmove(sn, ctrlr->cdata.sn, NVME_SERIAL_NUMBER_LENGTH); + sn[NVME_SERIAL_NUMBER_LENGTH] = '\0'; + for (int i = 0; sn[i] != '\0'; i++) { + if (sn[i] < 0x20 || sn[i] >= 0x80) + sn[i] = ' '; + } +} + +/* * Poll the single-vector interrupt case: num_io_queues will be 1 and * there's only a single vector. While we're polling, we mask further * interrupts in the controller. @@ -1495,6 +1514,11 @@ nvme_ctrlr_ioctl(struct cdev *cdev, u_long cmd, caddr_t arg, int flag, case NVME_GET_CONTROLLER_DATA: memcpy(arg, &ctrlr->cdata, sizeof(ctrlr->cdata)); break; + case DIOCGIDENT: { + uint8_t *sn = arg; + nvme_ctrlr_get_ident(ctrlr, sn); + break; + } /* Linux Compatible (see nvme_linux.h) */ case NVME_IOCTL_ID: td->td_retval[0] = 0xfffffffful; diff --git a/sys/dev/nvme/nvme_ns.c b/sys/dev/nvme/nvme_ns.c index e84d2066930e..a759181a8c16 100644 --- a/sys/dev/nvme/nvme_ns.c +++ b/sys/dev/nvme/nvme_ns.c @@ -88,6 +88,11 @@ nvme_ns_ioctl(struct cdev *cdev, u_long cmd, caddr_t arg, int flag, gnsid->nsid = ns->id; break; } + case DIOCGIDENT: { + uint8_t *sn = arg; + nvme_ctrlr_get_ident(ctrlr, sn); + break; + } case DIOCGMEDIASIZE: *(off_t *)arg = (off_t)nvme_ns_get_size(ns); break; diff --git a/sys/dev/nvme/nvme_private.h b/sys/dev/nvme/nvme_private.h index 52e9fcbbebcd..04a47d799350 100644 --- a/sys/dev/nvme/nvme_private.h +++ b/sys/dev/nvme/nvme_private.h @@ -563,6 +563,7 @@ void nvme_notify_new_controller(struct nvme_controller *ctrlr); void nvme_notify_ns(struct nvme_controller *ctrlr, int nsid); void nvme_ctrlr_shared_handler(void *arg); +void nvme_ctrlr_get_ident(const struct nvme_controller *ctrlr, uint8_t *sn); void nvme_ctrlr_poll(struct nvme_controller *ctrlr); int nvme_ctrlr_suspend(struct nvme_controller *ctrlr); diff --git a/sys/dev/ocs_fc/ocs_mgmt.c b/sys/dev/ocs_fc/ocs_mgmt.c index 726b499f28ba..5b7f6557c017 100644 --- a/sys/dev/ocs_fc/ocs_mgmt.c +++ b/sys/dev/ocs_fc/ocs_mgmt.c @@ -226,7 +226,7 @@ ocs_mgmt_get_list(ocs_t *ocs, ocs_textbuf_t *textbuf) ocs_mgmt_start_unnumbered_section(textbuf, "ocs"); - for (i=0;i<ARRAY_SIZE(mgmt_table);i++) { + for (i = 0; i < ARRAY_SIZE(mgmt_table); i++) { access = 0; if (mgmt_table[i].get_handler) { access |= MGMT_MODE_RD; @@ -305,7 +305,7 @@ ocs_mgmt_get(ocs_t *ocs, char *name, ocs_textbuf_t *textbuf) if (ocs_strncmp(name, qualifier, strlen(qualifier)) == 0) { char *unqualified_name = name + strlen(qualifier) + 1; - for (i=0;i<ARRAY_SIZE(mgmt_table);i++) { + for (i = 0; i < ARRAY_SIZE(mgmt_table); i++) { if (ocs_strcmp(unqualified_name, mgmt_table[i].name) == 0) { if (mgmt_table[i].get_handler) { mgmt_table[i].get_handler(ocs, name, textbuf); @@ -387,7 +387,7 @@ ocs_mgmt_set(ocs_t *ocs, char *name, char *value) char *unqualified_name = name + strlen(qualifier) +1; /* See if it's a value I can set */ - for (i=0;i<ARRAY_SIZE(mgmt_table);i++) { + for (i = 0; i < ARRAY_SIZE(mgmt_table); i++) { if (ocs_strcmp(unqualified_name, mgmt_table[i].name) == 0) { if (mgmt_table[i].set_handler) { return mgmt_table[i].set_handler(ocs, name, value); @@ -469,7 +469,7 @@ ocs_mgmt_exec(ocs_t *ocs, char *action, void *arg_in, char *unqualified_name = action + strlen(qualifier) +1; /* See if it's an action I can perform */ - for (i=0;i<ARRAY_SIZE(mgmt_table); i++) { + for (i = 0; i < ARRAY_SIZE(mgmt_table); i++) { if (ocs_strcmp(unqualified_name, mgmt_table[i].name) == 0) { if (mgmt_table[i].action_handler) { return mgmt_table[i].action_handler(ocs, action, arg_in, arg_in_length, @@ -527,7 +527,7 @@ ocs_mgmt_get_all(ocs_t *ocs, ocs_textbuf_t *textbuf) ocs_mgmt_start_unnumbered_section(textbuf, "ocs"); - for (i=0;i<ARRAY_SIZE(mgmt_table);i++) { + for (i = 0; i < ARRAY_SIZE(mgmt_table); i++) { if (mgmt_table[i].get_handler) { mgmt_table[i].get_handler(ocs, mgmt_table[i].name, textbuf); } else if (mgmt_table[i].action_handler) { @@ -1212,7 +1212,7 @@ get_sfp_a2(ocs_t *ocs, char *name, ocs_textbuf_t *textbuf) int buffer_remaining = (SFP_PAGE_SIZE * 3) + 1; int bytes_added; - for (i=0; i < bytes_read; i++) { + for (i = 0; i < bytes_read; i++) { bytes_added = ocs_snprintf(d, buffer_remaining, "%02x ", *s); ++s; d += bytes_added; @@ -2040,7 +2040,7 @@ get_profile_list(ocs_t *ocs, char *name, ocs_textbuf_t *textbuf) result_buf = ocs_malloc(ocs, BUFFER_SIZE, OCS_M_ZERO); bytes_left = BUFFER_SIZE; - for (i=0; i<result.list->num_descriptors; i++) { + for (i = 0; i < result.list->num_descriptors; i++) { sprintf(result_line, "0x%02x:%s\n", result.list->descriptors[i].profile_id, result.list->descriptors[i].profile_description); if (strlen(result_line) < bytes_left) { diff --git a/sys/dev/pci/controller/pci_n1sdp.c b/sys/dev/pci/controller/pci_n1sdp.c index 487041bc78e4..22f0ea27d45b 100644 --- a/sys/dev/pci/controller/pci_n1sdp.c +++ b/sys/dev/pci/controller/pci_n1sdp.c @@ -345,6 +345,17 @@ n1sdp_pcie_write_config(device_t dev, u_int bus, u_int slot, bus_space_write_4(t, h, offset & ~3, data); } +static int +n1sdp_pcie_acpi_request_feature(device_t pcib __unused, device_t dev __unused, + enum pci_feature feature __unused) +{ + /* + * HotPlug isn't supported on the N1SDP as it causes an interrupt storm + */ + return (EINVAL); +} + + static device_method_t n1sdp_pcie_acpi_methods[] = { DEVMETHOD(device_probe, n1sdp_pcie_acpi_probe), DEVMETHOD(device_attach, n1sdp_pcie_acpi_attach), @@ -352,6 +363,7 @@ static device_method_t n1sdp_pcie_acpi_methods[] = { /* pcib interface */ DEVMETHOD(pcib_read_config, n1sdp_pcie_read_config), DEVMETHOD(pcib_write_config, n1sdp_pcie_write_config), + DEVMETHOD(pcib_request_feature, n1sdp_pcie_acpi_request_feature), DEVMETHOD_END }; diff --git a/sys/dev/ppc/ppc.c b/sys/dev/ppc/ppc.c index 9870379e2eba..de75f4747709 100644 --- a/sys/dev/ppc/ppc.c +++ b/sys/dev/ppc/ppc.c @@ -1389,7 +1389,7 @@ ppc_exec_microseq(device_t dev, struct ppb_microseq **p_msq) /* let's suppose the next instr. is the same */ prefetch: - for (;mi->opcode == MS_OP_RASSERT; INCR_PC) + for (; mi->opcode == MS_OP_RASSERT; INCR_PC) w_reg(mi->arg[0].i, ppc, (char)mi->arg[1].i); if (mi->opcode == MS_OP_DELAY) { diff --git a/sys/dev/qat/qat_common/adf_freebsd_dev_processes.c b/sys/dev/qat/qat_common/adf_freebsd_dev_processes.c index 67e1d4ad2cab..c5b745bb78fb 100644 --- a/sys/dev/qat/qat_common/adf_freebsd_dev_processes.c +++ b/sys/dev/qat/qat_common/adf_freebsd_dev_processes.c @@ -89,6 +89,7 @@ static struct filterops adf_state_read_filterops = { .f_attach = NULL, .f_detach = adf_state_kqread_detach, .f_event = adf_state_kqread_event, + .f_copy = knote_triv_copy, }; static struct cdev *adf_processes_dev; diff --git a/sys/dev/random/fenestrasX/fx_pool.c b/sys/dev/random/fenestrasX/fx_pool.c index f4ad1e295d54..ec59b97a2070 100644 --- a/sys/dev/random/fenestrasX/fx_pool.c +++ b/sys/dev/random/fenestrasX/fx_pool.c @@ -167,9 +167,6 @@ static const struct fxrng_ent_char { [RANDOM_RANDOMDEV] = { .entc_cls = &fxrng_lo_push, }, - [RANDOM_PURE_OCTEON] = { - .entc_cls = &fxrng_hi_push, /* Could be made pull. */ - }, [RANDOM_PURE_SAFE] = { .entc_cls = &fxrng_hi_push, }, diff --git a/sys/dev/random/ivy.c b/sys/dev/random/ivy.c index fa1e4831f1b9..3eb0f261e6dc 100644 --- a/sys/dev/random/ivy.c +++ b/sys/dev/random/ivy.c @@ -1,6 +1,6 @@ /*- + * Copyright (c) 2013, 2025, David E. O'Brien <deo@NUXI.org> * Copyright (c) 2013 The FreeBSD Foundation - * Copyright (c) 2013 David E. O'Brien <obrien@NUXI.org> * Copyright (c) 2012 Konstantin Belousov <kib@FreeBSD.org> * All rights reserved. * @@ -48,7 +48,6 @@ #define RETRY_COUNT 10 -static bool has_rdrand, has_rdseed; static u_int random_ivy_read(void *, u_int); static const struct random_source random_ivy = { @@ -57,13 +56,7 @@ static const struct random_source random_ivy = { .rs_read = random_ivy_read }; -SYSCTL_NODE(_kern_random, OID_AUTO, rdrand, CTLFLAG_RW | CTLFLAG_MPSAFE, 0, - "rdrand (ivy) entropy source"); static bool acquire_independent_seed_samples = false; -SYSCTL_BOOL(_kern_random_rdrand, OID_AUTO, rdrand_independent_seed, - CTLFLAG_RWTUN, &acquire_independent_seed_samples, 0, - "If non-zero, use more expensive and slow, but safer, seeded samples " - "where RDSEED is not present."); static bool x86_rdrand_store(u_long *buf) @@ -99,45 +92,6 @@ x86_rdrand_store(u_long *buf) return (true); } -static bool -x86_rdseed_store(u_long *buf) -{ - u_long rndval; - int retry; - - retry = RETRY_COUNT; - __asm __volatile( - "1:\n\t" - "rdseed %1\n\t" /* read randomness into rndval */ - "jc 2f\n\t" /* CF is set on success, exit retry loop */ - "dec %0\n\t" /* otherwise, retry-- */ - "jne 1b\n\t" /* and loop if retries are not exhausted */ - "2:" - : "+r" (retry), "=r" (rndval) : : "cc"); - *buf = rndval; - return (retry != 0); -} - -static bool -x86_unimpl_store(u_long *buf __unused) -{ - - panic("%s called", __func__); -} - -DEFINE_IFUNC(static, bool, x86_rng_store, (u_long *buf)) -{ - has_rdrand = (cpu_feature2 & CPUID2_RDRAND); - has_rdseed = (cpu_stdext_feature & CPUID_STDEXT_RDSEED); - - if (has_rdseed) - return (x86_rdseed_store); - else if (has_rdrand) - return (x86_rdrand_store); - else - return (x86_unimpl_store); -} - /* It is required that buf length is a multiple of sizeof(u_long). */ static u_int random_ivy_read(void *buf, u_int c) @@ -148,7 +102,7 @@ random_ivy_read(void *buf, u_int c) KASSERT(c % sizeof(*b) == 0, ("partial read %d", c)); b = buf; for (count = c; count > 0; count -= sizeof(*b)) { - if (!x86_rng_store(&rndval)) + if (!x86_rdrand_store(&rndval)) break; *b++ = rndval; } @@ -158,18 +112,33 @@ random_ivy_read(void *buf, u_int c) static int rdrand_modevent(module_t mod, int type, void *unused) { + struct sysctl_ctx_list ctx; + struct sysctl_oid *o; + bool has_rdrand, has_rdseed; int error = 0; + has_rdrand = (cpu_feature2 & CPUID2_RDRAND); + has_rdseed = (cpu_stdext_feature & CPUID_STDEXT_RDSEED); + switch (type) { case MOD_LOAD: - if (has_rdrand || has_rdseed) { + if (has_rdrand && !has_rdseed) { + sysctl_ctx_init(&ctx); + o = SYSCTL_ADD_NODE(&ctx, SYSCTL_STATIC_CHILDREN(_kern_random), + OID_AUTO, "rdrand", CTLFLAG_RW | CTLFLAG_MPSAFE, 0, + "rdrand (ivy) entropy source"); + SYSCTL_ADD_BOOL(&ctx, SYSCTL_CHILDREN(o), OID_AUTO, + "rdrand_independent_seed", CTLFLAG_RDTUN, + &acquire_independent_seed_samples, 0, + "If non-zero, use more expensive and slow, but safer, seeded samples " + "where RDSEED is not present."); random_source_register(&random_ivy); printf("random: fast provider: \"%s\"\n", random_ivy.rs_ident); } break; case MOD_UNLOAD: - if (has_rdrand || has_rdseed) + if (has_rdrand && !has_rdseed) random_source_deregister(&random_ivy); break; diff --git a/sys/dev/random/random_harvestq.c b/sys/dev/random/random_harvestq.c index 2d7af254c52c..e38fd38c310b 100644 --- a/sys/dev/random/random_harvestq.c +++ b/sys/dev/random/random_harvestq.c @@ -661,11 +661,11 @@ static const char *random_source_descr[ENTROPYSOURCE] = { [RANDOM_UMA] = "UMA", [RANDOM_CALLOUT] = "CALLOUT", [RANDOM_RANDOMDEV] = "RANDOMDEV", /* ENVIRONMENTAL_END */ - [RANDOM_PURE_OCTEON] = "PURE_OCTEON", /* PURE_START */ - [RANDOM_PURE_SAFE] = "PURE_SAFE", + [RANDOM_PURE_SAFE] = "PURE_SAFE", /* PURE_START */ [RANDOM_PURE_GLXSB] = "PURE_GLXSB", [RANDOM_PURE_HIFN] = "PURE_HIFN", [RANDOM_PURE_RDRAND] = "PURE_RDRAND", + [RANDOM_PURE_RDSEED] = "PURE_RDSEED", [RANDOM_PURE_NEHEMIAH] = "PURE_NEHEMIAH", [RANDOM_PURE_RNDTEST] = "PURE_RNDTEST", [RANDOM_PURE_VIRTIO] = "PURE_VIRTIO", diff --git a/sys/dev/random/rdseed.c b/sys/dev/random/rdseed.c new file mode 100644 index 000000000000..af084aab4ed9 --- /dev/null +++ b/sys/dev/random/rdseed.c @@ -0,0 +1,169 @@ +/*- + * Copyright (c) 2013, 2025, David E. O'Brien <deo@NUXI.org> + * Copyright (c) 2013 The FreeBSD Foundation + * Copyright (c) 2012 Konstantin Belousov <kib@FreeBSD.org> + * All rights reserved. + * + * Portions of this software were developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer + * in this position and unchanged. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR + * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES + * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF + * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#include <sys/param.h> +#include <sys/kernel.h> +#include <sys/conf.h> +#include <sys/lock.h> +#include <sys/malloc.h> +#include <sys/module.h> +#include <sys/random.h> +#include <sys/sysctl.h> +#include <sys/systm.h> + +#include <machine/md_var.h> +#include <machine/specialreg.h> +#include <x86/ifunc.h> + +#include <dev/random/randomdev.h> + +#define RETRY_COUNT 10 + +static u_int random_rdseed_read(void *, u_int); + +static struct random_source random_rdseed = { + .rs_ident = "Intel Secure Key Seed", + .rs_source = RANDOM_PURE_RDSEED, + .rs_read = random_rdseed_read +}; + +SYSCTL_NODE(_kern_random, OID_AUTO, rdseed, CTLFLAG_RW, 0, + "rdseed (x86) entropy source"); +/* XXX: kern.random.rdseed.enabled=0 also disables RDRAND */ +static bool enabled = true; +SYSCTL_BOOL(_kern_random_rdseed, OID_AUTO, enabled, CTLFLAG_RDTUN, &enabled, 0, + "If zero, disable the use of RDSEED."); + +static bool +x86_rdseed_store(u_long *buf) +{ + u_long rndval; + int retry; + + retry = RETRY_COUNT; + __asm __volatile( + "1:\n\t" + "rdseed %1\n\t" /* read randomness into rndval */ + "jc 2f\n\t" /* CF is set on success, exit retry loop */ + "dec %0\n\t" /* otherwise, retry-- */ + "jne 1b\n\t" /* and loop if retries are not exhausted */ + "2:" + : "+r" (retry), "=r" (rndval) : : "cc"); + *buf = rndval; + return (retry != 0); +} + +/* It is required that buf length is a multiple of sizeof(u_long). */ +static u_int +random_rdseed_read(void *buf, u_int c) +{ + u_long *b, rndval; + u_int count; + + KASSERT(c % sizeof(*b) == 0, ("partial read %d", c)); + b = buf; + for (count = c; count > 0; count -= sizeof(*b)) { + if (!x86_rdseed_store(&rndval)) + break; + *b++ = rndval; + } + return (c - count); +} + +static int +rdseed_modevent(module_t mod, int type, void *unused) +{ + bool has_rdseed; + int error = 0; + + has_rdseed = (cpu_stdext_feature & CPUID_STDEXT_RDSEED); + + switch (type) { + case MOD_LOAD: + if (has_rdseed && enabled) { + random_source_register(&random_rdseed); + printf("random: fast provider: \"%s\"\n", random_rdseed.rs_ident); + } + break; + + case MOD_UNLOAD: + if (has_rdseed) + random_source_deregister(&random_rdseed); + break; + + case MOD_SHUTDOWN: + break; + + default: + error = EOPNOTSUPP; + break; + + } + + return (error); +} + +static moduledata_t rdseed_mod = { + "rdseed", + rdseed_modevent, + 0 +}; + +DECLARE_MODULE(rdseed, rdseed_mod, SI_SUB_RANDOM, SI_ORDER_FOURTH); +MODULE_VERSION(rdseed, 1); +MODULE_DEPEND(rdseed, random_harvestq, 1, 1, 1); + +/* + * Intel's RDSEED Entropy Assessment Report min-entropy claim is 0.6 Shannons + * per bit of data output. Rrefer to the following Entropy Source Validation + * (ESV) certificates: + * + * E#87: Junos OS Physical Entropy Source - Broadwell EP 10-Core Die + * Broadwell-EP-10 FCLGA2011 Intel(R) Xeon(R) E5-2620 V4 Processor + * https://csrc.nist.gov/projects/cryptographic-module-validation-program/entropy-validations/certificate/87 + * (URLs below omitted for brevity but follow same format.) + * + * E#121: Junos OS Physical Entropy Source - Intel Atom C3000 Series + * (Denverton) 16 Core Die with FCBGA1310 Package + * + * E#122: Junos OS Physical Entropy Source - Intel Xeon D-1500 Family + * (Broadwell) 8 Core Die with FCBGA1667 Package + * + * E#123: Junos OS Physical Entropy Source - Intel Xeon D-2100 Series + * (Skylake) 18 Core Die with FCBGA2518 Package + * + * E#141: Junos OS Physical Entropy Source - Intel Xeon D-10 Series + * (Ice Lake-D-10) Die with FCBGA2227 Package + * + * E#169: Junos OS Physical Entropy Source - Intel Xeon AWS-1000 v4 and + * E5 v4 (Broadwell EP) 15 Core Die with FCLGA2011 Package + */ diff --git a/sys/dev/smartpqi/smartpqi_event.c b/sys/dev/smartpqi/smartpqi_event.c index f000d9ce9db3..88dcf45dd08a 100644 --- a/sys/dev/smartpqi/smartpqi_event.c +++ b/sys/dev/smartpqi/smartpqi_event.c @@ -115,7 +115,7 @@ pqisrc_ack_all_events(void *arg1) pending_event = &softs->pending_events[0]; - for (i=0; i < PQI_NUM_SUPPORTED_EVENTS; i++) { + for (i = 0; i < PQI_NUM_SUPPORTED_EVENTS; i++) { if (pending_event->pending == true) { pending_event->pending = false; pqisrc_acknowledge_event(softs, pending_event); @@ -417,7 +417,7 @@ pqisrc_report_event_config(pqisrc_softstate_t *softs) softs->event_config.num_event_descriptors = MIN(event_config_p->num_event_descriptors, PQI_MAX_EVENT_DESCRIPTORS) ; - for (i=0; i < softs->event_config.num_event_descriptors ;i++){ + for (i = 0; i < softs->event_config.num_event_descriptors; i++) { softs->event_config.descriptors[i].event_type = event_config_p->descriptors[i].event_type; } @@ -477,7 +477,7 @@ pqisrc_set_event_config(pqisrc_softstate_t *softs) event_config_p->num_event_descriptors = softs->event_config.num_event_descriptors; - for (i=0; i < softs->event_config.num_event_descriptors ; i++){ + for (i = 0; i < softs->event_config.num_event_descriptors; i++) { event_config_p->descriptors[i].event_type = softs->event_config.descriptors[i].event_type; if( pqisrc_event_type_to_event_index(event_config_p->descriptors[i].event_type) != -1) diff --git a/sys/dev/smartpqi/smartpqi_queue.c b/sys/dev/smartpqi/smartpqi_queue.c index 2e80b01b5436..f05c951cd4f9 100644 --- a/sys/dev/smartpqi/smartpqi_queue.c +++ b/sys/dev/smartpqi/smartpqi_queue.c @@ -700,7 +700,7 @@ pqisrc_create_op_obq(pqisrc_softstate_t *softs, } else { int i = 0; DBG_WARN("Error Status Descriptors\n"); - for(i = 0; i < 4;i++) + for (i = 0; i < 4; i++) DBG_WARN(" %x ",admin_resp.resp_type.create_op_oq.status_desc[i]); } @@ -743,7 +743,7 @@ pqisrc_create_op_ibq(pqisrc_softstate_t *softs, } else { int i = 0; DBG_WARN("Error Status Decsriptors\n"); - for(i = 0; i < 4;i++) + for (i = 0; i < 4; i++) DBG_WARN(" %x ",admin_resp.resp_type.create_op_iq.status_desc[i]); } diff --git a/sys/dev/sound/dummy.c b/sys/dev/sound/dummy.c index 4df5b112d3f4..1f2d69708eec 100644 --- a/sys/dev/sound/dummy.c +++ b/sys/dev/sound/dummy.c @@ -346,6 +346,12 @@ dummy_attach(device_t dev) return (ENXIO); mixer_init(dev, &dummy_mixer_class, sc); + /* + * Create an alias so that tests do not need to guess which one is the + * dummy device if there are more devices present in the system. + */ + make_dev_alias(sc->info.dsp_dev, "dsp.dummy"); + return (0); } diff --git a/sys/dev/sound/pci/hda/hdac.c b/sys/dev/sound/pci/hda/hdac.c index 80028063bb0d..8a325c538b9b 100644 --- a/sys/dev/sound/pci/hda/hdac.c +++ b/sys/dev/sound/pci/hda/hdac.c @@ -170,6 +170,7 @@ static const struct { { HDA_NVIDIA_GF119, "NVIDIA GF119", 0, 0 }, { HDA_NVIDIA_GF110_1, "NVIDIA GF110", 0, HDAC_QUIRK_MSI }, { HDA_NVIDIA_GF110_2, "NVIDIA GF110", 0, HDAC_QUIRK_MSI }, + { HDA_ATI_RAVEN, "ATI Raven", 0, 0 }, { HDA_ATI_SB450, "ATI SB450", 0, 0 }, { HDA_ATI_SB600, "ATI SB600", 0, 0 }, { HDA_ATI_RS600, "ATI RS600", 0, 0 }, diff --git a/sys/dev/sound/pci/hda/hdac.h b/sys/dev/sound/pci/hda/hdac.h index c11e6b2d6810..8fb54108a833 100644 --- a/sys/dev/sound/pci/hda/hdac.h +++ b/sys/dev/sound/pci/hda/hdac.h @@ -154,6 +154,7 @@ /* ATI */ #define ATI_VENDORID 0x1002 +#define HDA_ATI_RAVEN HDA_MODEL_CONSTRUCT(ATI, 0x15de) #define HDA_ATI_SB450 HDA_MODEL_CONSTRUCT(ATI, 0x437b) #define HDA_ATI_SB600 HDA_MODEL_CONSTRUCT(ATI, 0x4383) #define HDA_ATI_RS600 HDA_MODEL_CONSTRUCT(ATI, 0x793b) diff --git a/sys/dev/sound/pcm/dsp.c b/sys/dev/sound/pcm/dsp.c index fe5576baf017..27d5b740b90b 100644 --- a/sys/dev/sound/pcm/dsp.c +++ b/sys/dev/sound/pcm/dsp.c @@ -83,15 +83,15 @@ static d_mmap_t dsp_mmap; static d_mmap_single_t dsp_mmap_single; struct cdevsw dsp_cdevsw = { - .d_version = D_VERSION, - .d_open = dsp_open, - .d_read = dsp_read, - .d_write = dsp_write, - .d_ioctl = dsp_ioctl, - .d_poll = dsp_poll, - .d_mmap = dsp_mmap, - .d_mmap_single = dsp_mmap_single, - .d_name = "dsp", + .d_version = D_VERSION, + .d_open = dsp_open, + .d_read = dsp_read, + .d_write = dsp_write, + .d_ioctl = dsp_ioctl, + .d_poll = dsp_poll, + .d_mmap = dsp_mmap, + .d_mmap_single = dsp_mmap_single, + .d_name = "dsp", }; static eventhandler_tag dsp_ehtag = NULL; diff --git a/sys/dev/sym/sym_hipd.c b/sys/dev/sym/sym_hipd.c index fa65d544e17d..b4e5c1075fb4 100644 --- a/sys/dev/sym/sym_hipd.c +++ b/sys/dev/sym/sym_hipd.c @@ -3266,7 +3266,7 @@ static void sym_init (hcb_p np, int reason) * Reinitialize usrwide. * Prepare sync negotiation according to actual SCSI bus mode. */ - for (i=0;i<SYM_CONF_MAX_TARGET;i++) { + for (i = 0; i < SYM_CONF_MAX_TARGET; i++) { tcb_p tp = &np->target[i]; tp->to_reset = 0; @@ -3715,7 +3715,7 @@ static void sym_log_hard_error(hcb_p np, u_short sist, u_char dstat) } printf ("%s: regdump:", sym_name(np)); - for (i=0; i<24;i++) + for (i = 0; i < 24; i++) printf (" %02x", (unsigned)INB_OFF(i)); printf (".\n"); @@ -5527,8 +5527,8 @@ static int sym_show_msg (u_char * msg) u_char i; printf ("%x",*msg); if (*msg==M_EXTENDED) { - for (i=1;i<8;i++) { - if (i-1>msg[1]) break; + for (i = 1; i < 8; i++) { + if (i - 1 > msg[1]) break; printf ("-%x",msg[i]); } return (i+1); @@ -6744,10 +6744,10 @@ restart_test: /* * Wait 'til done (with timeout) */ - for (i=0; i<SYM_SNOOP_TIMEOUT; i++) + for (i = 0; i < SYM_SNOOP_TIMEOUT; i++) if (INB(nc_istat) & (INTF|SIP|DIP)) break; - if (i>=SYM_SNOOP_TIMEOUT) { + if (i >= SYM_SNOOP_TIMEOUT) { printf ("CACHE TEST FAILED: timeout.\n"); return (0x20); } diff --git a/sys/dev/tdfx/tdfx_linux.c b/sys/dev/tdfx/tdfx_linux.c index f3410106bad2..777144d21bb6 100644 --- a/sys/dev/tdfx/tdfx_linux.c +++ b/sys/dev/tdfx/tdfx_linux.c @@ -42,7 +42,7 @@ LINUX_IOCTL_SET(tdfx, LINUX_IOCTL_TDFX_MIN, LINUX_IOCTL_TDFX_MAX); * Linux emulation IOCTL for /dev/tdfx */ static int -linux_ioctl_tdfx(struct thread *td, struct linux_ioctl_args* args) +tdfx_linux_ioctl(struct thread *td, struct linux_ioctl_args* args) { cap_rights_t rights; int error = 0; diff --git a/sys/dev/tdfx/tdfx_linux.h b/sys/dev/tdfx/tdfx_linux.h index b87cb41f38fe..9d012c12274b 100644 --- a/sys/dev/tdfx/tdfx_linux.h +++ b/sys/dev/tdfx/tdfx_linux.h @@ -35,18 +35,6 @@ #include <machine/../linux/linux_proto.h> #include <compat/linux/linux_ioctl.h> -/* - * This code was donated by Vladimir N. Silynaev to allow for defining - * ioctls within modules - */ -#define LINUX_IOCTL_SET(n,low,high) \ -static linux_ioctl_function_t linux_ioctl_##n; \ -static struct linux_ioctl_handler n##_handler = {linux_ioctl_##n, low, high}; \ -SYSINIT(n##register, SI_SUB_KLD, SI_ORDER_MIDDLE,\ -linux_ioctl_register_handler, &n##_handler); \ -SYSUNINIT(n##unregister, SI_SUB_KLD, SI_ORDER_MIDDLE,\ -linux_ioctl_unregister_handler, &n##_handler); - /* Values for /dev/3dfx */ /* Query IOCTLs */ #define LINUX_IOCTL_TDFX_QUERY_BOARDS 0x3302 diff --git a/sys/dev/tws/tws.c b/sys/dev/tws/tws.c index af151c8c4f06..fccd6689a6aa 100644 --- a/sys/dev/tws/tws.c +++ b/sys/dev/tws/tws.c @@ -311,7 +311,7 @@ attach_fail_4: if (sc->cmd_tag) bus_dma_tag_destroy(sc->cmd_tag); attach_fail_3: - for(i=0;i<sc->irqs;i++) { + for (i = 0; i < sc->irqs; i++) { if ( sc->irq_res[i] ){ if (bus_release_resource(sc->tws_dev, SYS_RES_IRQ, sc->irq_res_id[i], sc->irq_res[i])) @@ -369,7 +369,7 @@ tws_detach(device_t dev) tws_teardown_intr(sc); /* Release irq resource */ - for(i=0;i<sc->irqs;i++) { + for (i = 0; i < sc->irqs; i++) { if ( sc->irq_res[i] ){ if (bus_release_resource(sc->tws_dev, SYS_RES_IRQ, sc->irq_res_id[i], sc->irq_res[i])) @@ -402,7 +402,7 @@ tws_detach(device_t dev) TWS_TRACE(sc, "bus release mem resource", 0, sc->reg_res_id); } - for ( i=0; i< tws_queue_depth; i++) { + for (i = 0; i < tws_queue_depth; i++) { if (sc->reqs[i].dma_map) bus_dmamap_destroy(sc->data_tag, sc->reqs[i].dma_map); callout_drain(&sc->reqs[i].timeout); @@ -432,7 +432,7 @@ tws_setup_intr(struct tws_softc *sc, int irqs) { int i, error; - for(i=0;i<irqs;i++) { + for (i = 0; i < irqs; i++) { if (!(sc->intr_handle[i])) { if ((error = bus_setup_intr(sc->tws_dev, sc->irq_res[i], INTR_TYPE_CAM | INTR_MPSAFE, @@ -452,7 +452,7 @@ tws_teardown_intr(struct tws_softc *sc) { int i; - for(i=0;i<sc->irqs;i++) { + for (i = 0; i < sc->irqs; i++) { if (sc->intr_handle[i]) { bus_teardown_intr(sc->tws_dev, sc->irq_res[i], sc->intr_handle[i]); @@ -669,8 +669,7 @@ tws_init_reqs(struct tws_softc *sc, u_int32_t dma_mem_size) bzero(cmd_buf, dma_mem_size); TWS_TRACE_DEBUG(sc, "phy cmd", sc->dma_mem_phys, 0); mtx_lock(&sc->q_lock); - for ( i=0; i< tws_queue_depth; i++) - { + for (i = 0; i < tws_queue_depth; i++) { if (bus_dmamap_create(sc->data_tag, 0, &sc->reqs[i].dma_map)) { /* log a ENOMEM failure msg here */ mtx_unlock(&sc->q_lock); diff --git a/sys/dev/tws/tws_services.c b/sys/dev/tws/tws_services.c index da8bbacc39f7..e5c3d45c533f 100644 --- a/sys/dev/tws/tws_services.c +++ b/sys/dev/tws/tws_services.c @@ -200,7 +200,7 @@ tws_init_qs(struct tws_softc *sc) { mtx_lock(&sc->q_lock); - for(int i=0;i<TWS_MAX_QS;i++) { + for (int i = 0; i < TWS_MAX_QS; i++) { sc->q_head[i] = NULL; sc->q_tail[i] = NULL; } diff --git a/sys/dev/usb/controller/ehci_pci.c b/sys/dev/usb/controller/ehci_pci.c index d7298ab89df7..9550002e3b70 100644 --- a/sys/dev/usb/controller/ehci_pci.c +++ b/sys/dev/usb/controller/ehci_pci.c @@ -88,6 +88,7 @@ #define PCI_EHCI_VENDORID_NEC 0x1033 #define PCI_EHCI_VENDORID_OPTI 0x1045 #define PCI_EHCI_VENDORID_PHILIPS 0x1131 +#define PCI_EHCI_VENDORID_REALTEK 0x10ec #define PCI_EHCI_VENDORID_SIS 0x1039 #define PCI_EHCI_VENDORID_NVIDIA 0x12D2 #define PCI_EHCI_VENDORID_NVIDIA2 0x10DE @@ -218,6 +219,9 @@ ehci_pci_match(device_t self) case 0x15621131: return "Philips ISP156x USB 2.0 controller"; + case 0x816d10ec: + return ("Realtek RTL811x USB 2.0 controller"); + case 0x70021039: return "SiS 968 USB 2.0 controller"; @@ -402,6 +406,9 @@ ehci_pci_attach(device_t self) case PCI_EHCI_VENDORID_PHILIPS: sprintf(sc->sc_vendor, "Philips"); break; + case PCI_EHCI_VENDORID_REALTEK: + sprintf(sc->sc_vendor, "Realtek"); + break; case PCI_EHCI_VENDORID_SIS: sprintf(sc->sc_vendor, "SiS"); break; diff --git a/sys/dev/usb/usb_dev.c b/sys/dev/usb/usb_dev.c index 293b0c72587f..e58d6a674ec0 100644 --- a/sys/dev/usb/usb_dev.c +++ b/sys/dev/usb/usb_dev.c @@ -1231,12 +1231,14 @@ static const struct filterops usb_filtops_write = { .f_isfd = 1, .f_detach = usb_filter_detach, .f_event = usb_filter_write, + .f_copy = knote_triv_copy, }; static const struct filterops usb_filtops_read = { .f_isfd = 1, .f_detach = usb_filter_detach, .f_event = usb_filter_read, + .f_copy = knote_triv_copy, }; /* ARGSUSED */ diff --git a/sys/dev/vmm/vmm_dev.c b/sys/dev/vmm/vmm_dev.c index 460a508a60dc..ebbceb25b69e 100644 --- a/sys/dev/vmm/vmm_dev.c +++ b/sys/dev/vmm/vmm_dev.c @@ -14,6 +14,7 @@ #include <sys/kernel.h> #include <sys/malloc.h> #include <sys/mman.h> +#include <sys/priv.h> #include <sys/proc.h> #include <sys/queue.h> #include <sys/sx.h> @@ -120,18 +121,18 @@ vcpu_unlock_one(struct vcpu *vcpu) vcpu_set_state(vcpu, VCPU_IDLE, false); } +#ifndef __amd64__ static int -vcpu_lock_all(struct vmmdev_softc *sc) +vcpu_set_state_all(struct vm *vm, enum vcpu_state newstate) { struct vcpu *vcpu; int error; uint16_t i, j, maxcpus; error = 0; - vm_slock_vcpus(sc->vm); - maxcpus = vm_get_maxcpus(sc->vm); + maxcpus = vm_get_maxcpus(vm); for (i = 0; i < maxcpus; i++) { - vcpu = vm_vcpu(sc->vm, i); + vcpu = vm_vcpu(vm, i); if (vcpu == NULL) continue; error = vcpu_lock_one(vcpu); @@ -141,16 +142,32 @@ vcpu_lock_all(struct vmmdev_softc *sc) if (error) { for (j = 0; j < i; j++) { - vcpu = vm_vcpu(sc->vm, j); + vcpu = vm_vcpu(vm, j); if (vcpu == NULL) continue; vcpu_unlock_one(vcpu); } - vm_unlock_vcpus(sc->vm); } return (error); } +#endif + +static int +vcpu_lock_all(struct vmmdev_softc *sc) +{ + int error; + + /* + * Serialize vcpu_lock_all() callers. Individual vCPUs are not locked + * in a consistent order so we need to serialize to avoid deadlocks. + */ + vm_lock_vcpus(sc->vm); + error = vcpu_set_state_all(sc->vm, VCPU_FROZEN); + if (error != 0) + vm_unlock_vcpus(sc->vm); + return (error); +} static void vcpu_unlock_all(struct vmmdev_softc *sc) @@ -454,6 +471,12 @@ vmmdev_ioctl(struct cdev *cdev, u_long cmd, caddr_t data, int fflag, if (ioctl == NULL) return (ENOTTY); + if ((ioctl->flags & VMMDEV_IOCTL_PRIV_CHECK_DRIVER) != 0) { + error = priv_check(td, PRIV_DRIVER); + if (error != 0) + return (error); + } + if ((ioctl->flags & VMMDEV_IOCTL_XLOCK_MEMSEGS) != 0) vm_xlock_memsegs(sc->vm); else if ((ioctl->flags & VMMDEV_IOCTL_SLOCK_MEMSEGS) != 0) @@ -640,10 +663,10 @@ vmmdev_ioctl(struct cdev *cdev, u_long cmd, caddr_t data, int fflag, error = EINVAL; break; } - regvals = malloc(sizeof(regvals[0]) * vmregset->count, M_VMMDEV, - M_WAITOK); - regnums = malloc(sizeof(regnums[0]) * vmregset->count, M_VMMDEV, - M_WAITOK); + regvals = mallocarray(vmregset->count, sizeof(regvals[0]), + M_VMMDEV, M_WAITOK); + regnums = mallocarray(vmregset->count, sizeof(regnums[0]), + M_VMMDEV, M_WAITOK); error = copyin(vmregset->regnums, regnums, sizeof(regnums[0]) * vmregset->count); if (error == 0) @@ -666,10 +689,10 @@ vmmdev_ioctl(struct cdev *cdev, u_long cmd, caddr_t data, int fflag, error = EINVAL; break; } - regvals = malloc(sizeof(regvals[0]) * vmregset->count, M_VMMDEV, - M_WAITOK); - regnums = malloc(sizeof(regnums[0]) * vmregset->count, M_VMMDEV, - M_WAITOK); + regvals = mallocarray(vmregset->count, sizeof(regvals[0]), + M_VMMDEV, M_WAITOK); + regnums = mallocarray(vmregset->count, sizeof(regnums[0]), + M_VMMDEV, M_WAITOK); error = copyin(vmregset->regnums, regnums, sizeof(regnums[0]) * vmregset->count); if (error == 0) diff --git a/sys/dev/vmm/vmm_dev.h b/sys/dev/vmm/vmm_dev.h index 410066c49cf2..2881a7063565 100644 --- a/sys/dev/vmm/vmm_dev.h +++ b/sys/dev/vmm/vmm_dev.h @@ -44,6 +44,7 @@ struct vmmdev_ioctl { #define VMMDEV_IOCTL_LOCK_ALL_VCPUS 0x08 #define VMMDEV_IOCTL_ALLOC_VCPU 0x10 #define VMMDEV_IOCTL_MAYBE_ALLOC_VCPU 0x20 +#define VMMDEV_IOCTL_PRIV_CHECK_DRIVER 0x40 int flags; }; diff --git a/sys/fs/cuse/cuse.c b/sys/fs/cuse/cuse.c index d63a7d4691cf..b2524324584a 100644 --- a/sys/fs/cuse/cuse.c +++ b/sys/fs/cuse/cuse.c @@ -195,12 +195,14 @@ static const struct filterops cuse_client_kqfilter_read_ops = { .f_isfd = 1, .f_detach = cuse_client_kqfilter_read_detach, .f_event = cuse_client_kqfilter_read_event, + .f_copy = knote_triv_copy, }; static const struct filterops cuse_client_kqfilter_write_ops = { .f_isfd = 1, .f_detach = cuse_client_kqfilter_write_detach, .f_event = cuse_client_kqfilter_write_event, + .f_copy = knote_triv_copy, }; static d_open_t cuse_client_open; diff --git a/sys/fs/devfs/devfs_dir.c b/sys/fs/devfs/devfs_dir.c index 3dc87538017d..aad87606e738 100644 --- a/sys/fs/devfs/devfs_dir.c +++ b/sys/fs/devfs/devfs_dir.c @@ -162,7 +162,7 @@ int devfs_pathpath(const char *p1, const char *p2) { - for (;;p1++, p2++) { + for (;; p1++, p2++) { if (*p1 != *p2) { if (*p1 == '/' && *p2 == '\0') return (1); diff --git a/sys/fs/fuse/fuse_device.c b/sys/fs/fuse/fuse_device.c index 57b3559731f7..75bc0357571f 100644 --- a/sys/fs/fuse/fuse_device.c +++ b/sys/fs/fuse/fuse_device.c @@ -126,11 +126,13 @@ static const struct filterops fuse_device_rfiltops = { .f_isfd = 1, .f_detach = fuse_device_filt_detach, .f_event = fuse_device_filt_read, + .f_copy = knote_triv_copy, }; static const struct filterops fuse_device_wfiltops = { .f_isfd = 1, .f_event = fuse_device_filt_write, + .f_copy = knote_triv_copy, }; /**************************** diff --git a/sys/fs/nfs/nfs_commonsubs.c b/sys/fs/nfs/nfs_commonsubs.c index 7f5b29ca2085..8d506a5643a9 100644 --- a/sys/fs/nfs/nfs_commonsubs.c +++ b/sys/fs/nfs/nfs_commonsubs.c @@ -216,10 +216,17 @@ NFSD_VNET_DEFINE_STATIC(u_char *, nfsrv_dnsname) = NULL; * marked 0 in this array, the code will still work, just not quite as * efficiently.) */ -static int nfs_bigreply[NFSV42_NPROCS] = { 0, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, - 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 }; +static bool nfs_bigreply[NFSV42_NPROCS] = { + [NFSPROC_GETACL] = true, + [NFSPROC_GETEXTATTR] = true, + [NFSPROC_LISTEXTATTR] = true, + [NFSPROC_LOOKUP] = true, + [NFSPROC_READ] = true, + [NFSPROC_READDIR] = true, + [NFSPROC_READDIRPLUS] = true, + [NFSPROC_READDS] = true, + [NFSPROC_READLINK] = true, +}; /* local functions */ static int nfsrv_skipace(struct nfsrv_descript *nd, int *acesizep); @@ -232,6 +239,8 @@ static int nfsrv_getrefstr(struct nfsrv_descript *, u_char **, u_char **, static void nfsrv_refstrbigenough(int, u_char **, u_char **, int *); static uint32_t vtonfsv4_type(struct vattr *); static __enum_uint8(vtype) nfsv4tov_type(uint32_t, uint16_t *); +static void nfsv4_setsequence(struct nfsmount *, struct nfsrv_descript *, + struct nfsclsession *, bool, struct ucred *); static struct { int op; @@ -632,6 +641,7 @@ nfscl_fillsattr(struct nfsrv_descript *nd, struct vattr *vap, if ((flags & NFSSATTR_FULL) && vap->va_size != VNOVAL) NFSSETBIT_ATTRBIT(&attrbits, NFSATTRBIT_SIZE); if ((flags & NFSSATTR_FULL) && vap->va_flags != VNOVAL) { + NFSSETBIT_ATTRBIT(&attrbits, NFSATTRBIT_ARCHIVE); NFSSETBIT_ATTRBIT(&attrbits, NFSATTRBIT_HIDDEN); NFSSETBIT_ATTRBIT(&attrbits, NFSATTRBIT_SYSTEM); } @@ -1663,9 +1673,17 @@ nfsv4_loadattr(struct nfsrv_descript *nd, vnode_t vp, attrsum += NFSX_UNSIGNED; break; case NFSATTRBIT_ARCHIVE: - NFSM_DISSECT(tl, u_int32_t *, NFSX_UNSIGNED); - if (compare && !(*retcmpp)) - *retcmpp = NFSERR_ATTRNOTSUPP; + NFSM_DISSECT(tl, uint32_t *, NFSX_UNSIGNED); + if (compare) { + if (!(*retcmpp) && ((*tl == newnfs_true && + (nap->na_flags & UF_ARCHIVE) == 0) || + (*tl == newnfs_false && + (nap->na_flags & UF_ARCHIVE) != 0))) + *retcmpp = NFSERR_NOTSAME; + } else if (nap != NULL) { + if (*tl == newnfs_true) + nap->na_flags |= UF_ARCHIVE; + } attrsum += NFSX_UNSIGNED; break; case NFSATTRBIT_CANSETTIME: @@ -2795,6 +2813,7 @@ nfsv4_fillattr(struct nfsrv_descript *nd, struct mount *mp, vnode_t vp, if (!has_hiddensystem) { NFSCLRBIT_ATTRBIT(&attrbits, NFSATTRBIT_HIDDEN); NFSCLRBIT_ATTRBIT(&attrbits, NFSATTRBIT_SYSTEM); + NFSCLRBIT_ATTRBIT(&attrbits, NFSATTRBIT_ARCHIVE); } if (clone_blksize == 0) NFSCLRBIT_ATTRBIT(&attrbits, @@ -2879,6 +2898,14 @@ nfsv4_fillattr(struct nfsrv_descript *nd, struct mount *mp, vnode_t vp, *tl = txdr_unsigned(NFSV4ACE_SUPTYPES); retnum += NFSX_UNSIGNED; break; + case NFSATTRBIT_ARCHIVE: + NFSM_BUILD(tl, uint32_t *, NFSX_UNSIGNED); + if ((vap->va_flags & UF_ARCHIVE) != 0) + *tl = newnfs_true; + else + *tl = newnfs_false; + retnum += NFSX_UNSIGNED; + break; case NFSATTRBIT_CANSETTIME: NFSM_BUILD(tl, u_int32_t *, NFSX_UNSIGNED); if (fsinf.fs_properties & NFSV3FSINFO_CANSETTIME) @@ -5021,9 +5048,9 @@ nfsv4_seqsess_cacherep(uint32_t slotid, struct nfsslot *slots, int repstat, /* * Generate the xdr for an NFSv4.1 Sequence Operation. */ -void +static void nfsv4_setsequence(struct nfsmount *nmp, struct nfsrv_descript *nd, - struct nfsclsession *sep, int dont_replycache, struct ucred *cred) + struct nfsclsession *sep, bool dont_replycache, struct ucred *cred) { uint32_t *tl, slotseq = 0; int error, maxslot, slotpos; @@ -5054,7 +5081,7 @@ nfsv4_setsequence(struct nfsmount *nmp, struct nfsrv_descript *nd, *tl++ = txdr_unsigned(slotseq); *tl++ = txdr_unsigned(slotpos); *tl++ = txdr_unsigned(maxslot); - if (dont_replycache == 0) + if (!dont_replycache) *tl = newnfs_true; else *tl = newnfs_false; diff --git a/sys/fs/nfs/nfs_var.h b/sys/fs/nfs/nfs_var.h index 61083ecf2d66..16a76c060e78 100644 --- a/sys/fs/nfs/nfs_var.h +++ b/sys/fs/nfs/nfs_var.h @@ -361,8 +361,6 @@ int nfsv4_getipaddr(struct nfsrv_descript *, struct sockaddr_in *, int nfsv4_seqsession(uint32_t, uint32_t, uint32_t, struct nfsslot *, struct mbuf **, uint16_t); void nfsv4_seqsess_cacherep(uint32_t, struct nfsslot *, int, struct mbuf **); -void nfsv4_setsequence(struct nfsmount *, struct nfsrv_descript *, - struct nfsclsession *, int, struct ucred *); int nfsv4_sequencelookup(struct nfsmount *, struct nfsclsession *, int *, int *, uint32_t *, uint8_t *, bool); void nfsv4_freeslot(struct nfsclsession *, int, bool); diff --git a/sys/fs/nfs/nfsproto.h b/sys/fs/nfs/nfsproto.h index d628108bdc1a..13fec8a102a3 100644 --- a/sys/fs/nfs/nfsproto.h +++ b/sys/fs/nfs/nfsproto.h @@ -1135,6 +1135,7 @@ struct nfsv3_sattr { NFSATTRBM_RDATTRERROR | \ NFSATTRBM_ACL | \ NFSATTRBM_ACLSUPPORT | \ + NFSATTRBM_ARCHIVE | \ NFSATTRBM_CANSETTIME | \ NFSATTRBM_CASEINSENSITIVE | \ NFSATTRBM_CASEPRESERVING | \ @@ -1217,6 +1218,7 @@ struct nfsv3_sattr { #define NFSATTRBIT_SETABLE0 \ (NFSATTRBM_SIZE | \ NFSATTRBM_HIDDEN | \ + NFSATTRBM_ARCHIVE | \ NFSATTRBM_ACL) #define NFSATTRBIT_SETABLE1 \ (NFSATTRBM_MODE | \ @@ -1262,6 +1264,7 @@ struct nfsv3_sattr { NFSATTRBM_CHANGE | \ NFSATTRBM_SIZE | \ NFSATTRBM_FSID | \ + NFSATTRBM_ARCHIVE | \ NFSATTRBM_FILEID | \ NFSATTRBM_HIDDEN | \ NFSATTRBM_MAXREAD) @@ -1298,6 +1301,7 @@ struct nfsv3_sattr { NFSATTRBM_CHANGE | \ NFSATTRBM_SIZE | \ NFSATTRBM_FSID | \ + NFSATTRBM_ARCHIVE | \ NFSATTRBM_FILEID | \ NFSATTRBM_HIDDEN | \ NFSATTRBM_MAXREAD) diff --git a/sys/fs/nfsclient/nfs_clrpcops.c b/sys/fs/nfsclient/nfs_clrpcops.c index ad9404a18fc8..d3b83eb8b94b 100644 --- a/sys/fs/nfsclient/nfs_clrpcops.c +++ b/sys/fs/nfsclient/nfs_clrpcops.c @@ -4162,9 +4162,12 @@ nfsrpc_readdirplus(vnode_t vp, struct uio *uiop, nfsuint64 *cookiep, NFSATTRBIT_TIMECREATE)) NFSCLRBIT_ATTRBIT(&attrbits, NFSATTRBIT_TIMECREATE); if (!NFSISSET_ATTRBIT(&dnp->n_vattr.na_suppattr, + NFSATTRBIT_ARCHIVE) || + !NFSISSET_ATTRBIT(&dnp->n_vattr.na_suppattr, NFSATTRBIT_HIDDEN) || !NFSISSET_ATTRBIT(&dnp->n_vattr.na_suppattr, NFSATTRBIT_SYSTEM)) { + NFSCLRBIT_ATTRBIT(&attrbits, NFSATTRBIT_ARCHIVE); NFSCLRBIT_ATTRBIT(&attrbits, NFSATTRBIT_HIDDEN); NFSCLRBIT_ATTRBIT(&attrbits, NFSATTRBIT_SYSTEM); } diff --git a/sys/fs/nfsclient/nfs_clvnops.c b/sys/fs/nfsclient/nfs_clvnops.c index e9ae91e046e7..f80cf30669ca 100644 --- a/sys/fs/nfsclient/nfs_clvnops.c +++ b/sys/fs/nfsclient/nfs_clvnops.c @@ -1081,12 +1081,14 @@ nfs_setattr(struct vop_setattr_args *ap) #endif /* - * Only setting of UF_HIDDEN and UF_SYSTEM are supported and + * Only setting of UF_ARCHIVE, UF_HIDDEN and UF_SYSTEM are supported and * only for NFSv4 servers that support them. */ nmp = VFSTONFS(vp->v_mount); if (vap->va_flags != VNOVAL && (!NFSHASNFSV4(nmp) || - (vap->va_flags & ~(UF_HIDDEN | UF_SYSTEM)) != 0 || + (vap->va_flags & ~(UF_ARCHIVE | UF_HIDDEN | UF_SYSTEM)) != 0 || + ((vap->va_flags & UF_ARCHIVE) != 0 && + !NFSISSET_ATTRBIT(&np->n_vattr.na_suppattr, NFSATTRBIT_ARCHIVE)) || ((vap->va_flags & UF_HIDDEN) != 0 && !NFSISSET_ATTRBIT(&np->n_vattr.na_suppattr, NFSATTRBIT_HIDDEN)) || ((vap->va_flags & UF_SYSTEM) != 0 && @@ -4835,6 +4837,8 @@ nfs_pathconf(struct vop_pathconf_args *ap) break; case _PC_HAS_HIDDENSYSTEM: if (NFS_ISV4(vp) && NFSISSET_ATTRBIT(&np->n_vattr.na_suppattr, + NFSATTRBIT_ARCHIVE) && + NFSISSET_ATTRBIT(&np->n_vattr.na_suppattr, NFSATTRBIT_HIDDEN) && NFSISSET_ATTRBIT(&np->n_vattr.na_suppattr, NFSATTRBIT_SYSTEM)) diff --git a/sys/fs/nfsserver/nfs_nfsdport.c b/sys/fs/nfsserver/nfs_nfsdport.c index eb6ba285f8fe..9fe3f4426124 100644 --- a/sys/fs/nfsserver/nfs_nfsdport.c +++ b/sys/fs/nfsserver/nfs_nfsdport.c @@ -3193,7 +3193,8 @@ nfsv4_sattr(struct nfsrv_descript *nd, vnode_t vp, struct nfsvattr *nvap, bitpos = NFSATTRBIT_MAX; } else { bitpos = 0; - if (NFSISSET_ATTRBIT(attrbitp, NFSATTRBIT_HIDDEN) || + if (NFSISSET_ATTRBIT(attrbitp, NFSATTRBIT_ARCHIVE) || + NFSISSET_ATTRBIT(attrbitp, NFSATTRBIT_HIDDEN) || NFSISSET_ATTRBIT(attrbitp, NFSATTRBIT_SYSTEM)) nvap->na_flags = 0; } @@ -3226,9 +3227,11 @@ nfsv4_sattr(struct nfsrv_descript *nd, vnode_t vp, struct nfsvattr *nvap, attrsum += aclsize; break; case NFSATTRBIT_ARCHIVE: - NFSM_DISSECT(tl, u_int32_t *, NFSX_UNSIGNED); - if (!nd->nd_repstat) - nd->nd_repstat = NFSERR_ATTRNOTSUPP; + NFSM_DISSECT(tl, uint32_t *, NFSX_UNSIGNED); + if (nd->nd_repstat == 0) { + if (*tl == newnfs_true) + nvap->na_flags |= UF_ARCHIVE; + } attrsum += NFSX_UNSIGNED; break; case NFSATTRBIT_HIDDEN: diff --git a/sys/fs/nfsserver/nfs_nfsdserv.c b/sys/fs/nfsserver/nfs_nfsdserv.c index 921ea4887af1..6f3447f26620 100644 --- a/sys/fs/nfsserver/nfs_nfsdserv.c +++ b/sys/fs/nfsserver/nfs_nfsdserv.c @@ -436,6 +436,7 @@ nfsrvd_setattr(struct nfsrv_descript *nd, __unused int isdgram, /* For NFSv4, only va_uid and va_flags is used from nva2. */ NFSSETBIT_ATTRBIT(&retbits, NFSATTRBIT_OWNER); + NFSSETBIT_ATTRBIT(&retbits, NFSATTRBIT_ARCHIVE); NFSSETBIT_ATTRBIT(&retbits, NFSATTRBIT_HIDDEN); NFSSETBIT_ATTRBIT(&retbits, NFSATTRBIT_SYSTEM); preat_ret = nfsvno_getattr(vp, &nva2, nd, p, 1, &retbits); @@ -569,8 +570,15 @@ nfsrvd_setattr(struct nfsrv_descript *nd, __unused int isdgram, } } if (!nd->nd_repstat && - (NFSISSET_ATTRBIT(&attrbits, NFSATTRBIT_HIDDEN) || + (NFSISSET_ATTRBIT(&attrbits, NFSATTRBIT_ARCHIVE) || + NFSISSET_ATTRBIT(&attrbits, NFSATTRBIT_HIDDEN) || NFSISSET_ATTRBIT(&attrbits, NFSATTRBIT_SYSTEM))) { + if (NFSISSET_ATTRBIT(&attrbits, NFSATTRBIT_ARCHIVE)) { + if ((nva.na_flags & UF_ARCHIVE) != 0) + oldflags |= UF_ARCHIVE; + else + oldflags &= ~UF_ARCHIVE; + } if (NFSISSET_ATTRBIT(&attrbits, NFSATTRBIT_HIDDEN)) { if ((nva.na_flags & UF_HIDDEN) != 0) oldflags |= UF_HIDDEN; @@ -588,6 +596,8 @@ nfsrvd_setattr(struct nfsrv_descript *nd, __unused int isdgram, nd->nd_repstat = nfsvno_setattr(vp, &nva2, nd->nd_cred, p, exp); if (!nd->nd_repstat) { + if (NFSISSET_ATTRBIT(&attrbits, NFSATTRBIT_ARCHIVE)) + NFSSETBIT_ATTRBIT(&retbits, NFSATTRBIT_ARCHIVE); if (NFSISSET_ATTRBIT(&attrbits, NFSATTRBIT_HIDDEN)) NFSSETBIT_ATTRBIT(&retbits, NFSATTRBIT_HIDDEN); if (NFSISSET_ATTRBIT(&attrbits, NFSATTRBIT_SYSTEM)) diff --git a/sys/fs/udf/osta.c b/sys/fs/udf/osta.c index f79b86993367..1a083d8c26b1 100644 --- a/sys/fs/udf/osta.c +++ b/sys/fs/udf/osta.c @@ -383,7 +383,7 @@ int UDFTransName( int maxFilenameLen; /* Translate extension, and store it in ext. */ for(index = 0; index<EXT_SIZE && - extIndex + index +1 < udfLen; index++ ) { + extIndex + index +1 < udfLen; index++) { current = udfName[extIndex + index + 1]; if (IsIllegal(current) || !UnicodeIsPrint(current)) { @@ -432,7 +432,7 @@ int UDFTransName( /* Place a translated extension at end, if found. */ if (hasExt) { newName[newIndex++] = PERIOD; - for (index = 0;index < localExtIndex ;index++ ) { + for (index = 0; index < localExtIndex; index++) { newName[newIndex++] = ext[index]; } } diff --git a/sys/fs/unionfs/union_vnops.c b/sys/fs/unionfs/union_vnops.c index 26fa14603c85..66fee97a07d5 100644 --- a/sys/fs/unionfs/union_vnops.c +++ b/sys/fs/unionfs/union_vnops.c @@ -2208,7 +2208,6 @@ unionfs_lock_restart: vholdnz(tvp); VI_UNLOCK(vp); error = VOP_LOCK(tvp, flags); - vdrop(tvp); if (error == 0 && (lvp_locked || VTOUNIONFS(vp) == NULL)) { /* * After dropping the interlock above, there exists a window @@ -2234,6 +2233,7 @@ unionfs_lock_restart: unp = VTOUNIONFS(vp); if (unp == NULL || unp->un_uppervp != NULL) { VOP_UNLOCK(tvp); + vdrop(tvp); /* * If we previously held the lock, the upgrade may * have temporarily dropped the lock, in which case @@ -2249,6 +2249,7 @@ unionfs_lock_restart: goto unionfs_lock_restart; } } + vdrop(tvp); return (error); } @@ -2259,7 +2260,6 @@ unionfs_unlock(struct vop_unlock_args *ap) struct vnode *vp; struct vnode *tvp; struct unionfs_node *unp; - int error; KASSERT_UNIONFS_VNODE(ap->a_vp); @@ -2271,11 +2271,7 @@ unionfs_unlock(struct vop_unlock_args *ap) tvp = (unp->un_uppervp != NULL ? unp->un_uppervp : unp->un_lowervp); - vholdnz(tvp); - error = VOP_UNLOCK(tvp); - vdrop(tvp); - - return (error); + return (VOP_UNLOCK(tvp)); } static int diff --git a/sys/geom/geom_dev.c b/sys/geom/geom_dev.c index 27c65f15d5e3..db0bc77a752f 100644 --- a/sys/geom/geom_dev.c +++ b/sys/geom/geom_dev.c @@ -82,6 +82,7 @@ static const struct filterops gdev_filterops_vnode = { .f_isfd = 1, .f_detach = gdev_filter_detach, .f_event = gdev_filter_vnode, + .f_copy = knote_triv_copy, }; static struct cdevsw g_dev_cdevsw = { diff --git a/sys/i386/i386/elf_machdep.c b/sys/i386/i386/elf_machdep.c index 13769af0fbca..14c942942d08 100644 --- a/sys/i386/i386/elf_machdep.c +++ b/sys/i386/i386/elf_machdep.c @@ -92,7 +92,7 @@ struct sysentvec elf32_freebsd_sysvec = { }; INIT_SYSENTVEC(elf32_sysvec, &elf32_freebsd_sysvec); -static Elf32_Brandinfo freebsd_brand_info = { +static const Elf32_Brandinfo freebsd_brand_info = { .brand = ELFOSABI_FREEBSD, .machine = EM_386, .compat_3_brand = "FreeBSD", @@ -103,11 +103,11 @@ static Elf32_Brandinfo freebsd_brand_info = { .flags = BI_CAN_EXEC_DYN | BI_BRAND_NOTE }; -SYSINIT(elf32, SI_SUB_EXEC, SI_ORDER_FIRST, +C_SYSINIT(elf32, SI_SUB_EXEC, SI_ORDER_FIRST, (sysinit_cfunc_t) elf32_insert_brand_entry, &freebsd_brand_info); -static Elf32_Brandinfo freebsd_brand_oinfo = { +static const Elf32_Brandinfo freebsd_brand_oinfo = { .brand = ELFOSABI_FREEBSD, .machine = EM_386, .compat_3_brand = "FreeBSD", @@ -118,11 +118,11 @@ static Elf32_Brandinfo freebsd_brand_oinfo = { .flags = BI_CAN_EXEC_DYN | BI_BRAND_NOTE }; -SYSINIT(oelf32, SI_SUB_EXEC, SI_ORDER_ANY, +C_SYSINIT(oelf32, SI_SUB_EXEC, SI_ORDER_ANY, (sysinit_cfunc_t) elf32_insert_brand_entry, &freebsd_brand_oinfo); -static Elf32_Brandinfo kfreebsd_brand_info = { +static const Elf32_Brandinfo kfreebsd_brand_info = { .brand = ELFOSABI_FREEBSD, .machine = EM_386, .compat_3_brand = "FreeBSD", @@ -133,7 +133,7 @@ static Elf32_Brandinfo kfreebsd_brand_info = { .flags = BI_CAN_EXEC_DYN | BI_BRAND_NOTE_MANDATORY }; -SYSINIT(kelf32, SI_SUB_EXEC, SI_ORDER_ANY, +C_SYSINIT(kelf32, SI_SUB_EXEC, SI_ORDER_ANY, (sysinit_cfunc_t) elf32_insert_brand_entry, &kfreebsd_brand_info); diff --git a/sys/i386/i386/in_cksum_machdep.c b/sys/i386/i386/in_cksum_machdep.c index 27ab09d82da0..b658d85bc892 100644 --- a/sys/i386/i386/in_cksum_machdep.c +++ b/sys/i386/i386/in_cksum_machdep.c @@ -84,7 +84,7 @@ in_cksum_skip(struct mbuf *m, int len, int skip) } } - for (;m && len; m = m->m_next) { + for (; m && len; m = m->m_next) { if (m->m_len == 0) continue; w = mtod(m, u_short *); diff --git a/sys/i386/linux/linux_sysvec.c b/sys/i386/linux/linux_sysvec.c index 85877bf40997..14b5f64388d2 100644 --- a/sys/i386/linux/linux_sysvec.c +++ b/sys/i386/linux/linux_sysvec.c @@ -796,7 +796,7 @@ linux_vdso_reloc(char *mapping, Elf_Addr offset) } } -static Elf_Brandnote linux_brandnote = { +static const Elf_Brandnote linux_brandnote = { .hdr.n_namesz = sizeof(GNU_ABI_VENDOR), .hdr.n_descsz = 16, /* XXX at least 16 */ .hdr.n_type = 1, @@ -805,7 +805,7 @@ static Elf_Brandnote linux_brandnote = { .trans_osrel = linux_trans_osrel }; -static Elf32_Brandinfo linux_brand = { +static const Elf32_Brandinfo linux_brand = { .brand = ELFOSABI_LINUX, .machine = EM_386, .compat_3_brand = "Linux", @@ -816,7 +816,7 @@ static Elf32_Brandinfo linux_brand = { .flags = BI_CAN_EXEC_DYN | BI_BRAND_NOTE }; -static Elf32_Brandinfo linux_glibc2brand = { +static const Elf32_Brandinfo linux_glibc2brand = { .brand = ELFOSABI_LINUX, .machine = EM_386, .compat_3_brand = "Linux", @@ -827,7 +827,7 @@ static Elf32_Brandinfo linux_glibc2brand = { .flags = BI_CAN_EXEC_DYN | BI_BRAND_NOTE }; -static Elf32_Brandinfo linux_muslbrand = { +static const Elf32_Brandinfo linux_muslbrand = { .brand = ELFOSABI_LINUX, .machine = EM_386, .compat_3_brand = "Linux", @@ -839,7 +839,7 @@ static Elf32_Brandinfo linux_muslbrand = { LINUX_BI_FUTEX_REQUEUE }; -Elf32_Brandinfo *linux_brandlist[] = { +const Elf32_Brandinfo *linux_brandlist[] = { &linux_brand, &linux_glibc2brand, &linux_muslbrand, @@ -849,7 +849,7 @@ Elf32_Brandinfo *linux_brandlist[] = { static int linux_elf_modevent(module_t mod, int type, void *data) { - Elf32_Brandinfo **brandinfo; + const Elf32_Brandinfo **brandinfo; int error; struct linux_ioctl_handler **lihp; diff --git a/sys/kern/imgact_elf.c b/sys/kern/imgact_elf.c index c53707a1286c..779158b41221 100644 --- a/sys/kern/imgact_elf.c +++ b/sys/kern/imgact_elf.c @@ -231,7 +231,7 @@ static const Elf_Brandinfo *elf_brand_list[MAX_BRANDS]; #define aligned(a, t) (rounddown2((u_long)(a), sizeof(t)) == (u_long)(a)) -Elf_Brandnote __elfN(freebsd_brandnote) = { +const Elf_Brandnote __elfN(freebsd_brandnote) = { .hdr.n_namesz = sizeof(FREEBSD_ABI_VENDOR), .hdr.n_descsz = sizeof(int32_t), .hdr.n_type = NT_FREEBSD_ABI_TAG, @@ -254,7 +254,7 @@ __elfN(freebsd_trans_osrel)(const Elf_Note *note, int32_t *osrel) static int GNU_KFREEBSD_ABI_DESC = 3; -Elf_Brandnote __elfN(kfreebsd_brandnote) = { +const Elf_Brandnote __elfN(kfreebsd_brandnote) = { .hdr.n_namesz = sizeof(GNU_ABI_VENDOR), .hdr.n_descsz = 16, /* XXX at least 16 */ .hdr.n_type = 1, @@ -2831,7 +2831,7 @@ __elfN(parse_notes)(const struct image_params *imgp, const Elf_Note *checknote, } if ((const char *)note_end - (const char *)note < sizeof(Elf_Note)) { - uprintf("ELF note to short\n"); + uprintf("ELF note too short\n"); goto retf; } if (note->n_namesz != checknote->n_namesz || @@ -2839,9 +2839,9 @@ __elfN(parse_notes)(const struct image_params *imgp, const Elf_Note *checknote, note->n_type != checknote->n_type) goto nextnote; note_name = (const char *)(note + 1); - if (note_name + checknote->n_namesz >= - (const char *)note_end || strncmp(note_vendor, - note_name, checknote->n_namesz) != 0) + if (note_name + roundup2(note->n_namesz, ELF_NOTE_ROUNDSIZE) + + note->n_descsz >= (const char *)note_end || + strncmp(note_vendor, note_name, checknote->n_namesz) != 0) goto nextnote; if (cb(note, cb_arg, &res)) diff --git a/sys/kern/kern_descrip.c b/sys/kern/kern_descrip.c index 19118eb7f275..a71a601733e5 100644 --- a/sys/kern/kern_descrip.c +++ b/sys/kern/kern_descrip.c @@ -2486,7 +2486,7 @@ fdunshare(struct thread *td) if (refcount_load(&p->p_fd->fd_refcnt) == 1) return; - tmp = fdcopy(p->p_fd); + tmp = fdcopy(p->p_fd, p); fdescfree(td); p->p_fd = tmp; } @@ -2515,14 +2515,17 @@ pdunshare(struct thread *td) * this is to ease callers, not catch errors. */ struct filedesc * -fdcopy(struct filedesc *fdp) +fdcopy(struct filedesc *fdp, struct proc *p1) { struct filedesc *newfdp; struct filedescent *nfde, *ofde; + struct file *fp; int i, lastfile; + bool fork_pass; MPASS(fdp != NULL); + fork_pass = false; newfdp = fdinit(); FILEDESC_SLOCK(fdp); for (;;) { @@ -2533,10 +2536,35 @@ fdcopy(struct filedesc *fdp) fdgrowtable(newfdp, lastfile + 1); FILEDESC_SLOCK(fdp); } - /* copy all passable descriptors (i.e. not kqueue) */ + + /* + * Copy all passable descriptors (i.e. not kqueue), and + * prepare to handle copyable but not passable descriptors + * (kqueues). + * + * The pass to handle copying is performed after all passable + * files are installed into the new file descriptor's table, + * since kqueues need all referenced file descriptors already + * valid, including other kqueues. For the same reason the + * copying is done in two passes by itself, first installing + * not fully initialized ('empty') copyable files into the new + * fd table, and then giving the subsystems a second chance to + * really fill the copied file backing structure with the + * content. + */ newfdp->fd_freefile = fdp->fd_freefile; FILEDESC_FOREACH_FDE(fdp, i, ofde) { - if ((ofde->fde_file->f_ops->fo_flags & DFLAG_PASSABLE) == 0 || + const struct fileops *ops; + + ops = ofde->fde_file->f_ops; + fp = NULL; + if ((ops->fo_flags & DFLAG_FORK) != 0 && + (ofde->fde_flags & UF_FOCLOSE) == 0) { + if (ops->fo_fork(newfdp, ofde->fde_file, &fp, p1, + curthread) != 0) + continue; + fork_pass = true; + } else if ((ops->fo_flags & DFLAG_PASSABLE) == 0 || (ofde->fde_flags & UF_FOCLOSE) != 0 || !fhold(ofde->fde_file)) { if (newfdp->fd_freefile == fdp->fd_freefile) @@ -2545,11 +2573,30 @@ fdcopy(struct filedesc *fdp) } nfde = &newfdp->fd_ofiles[i]; *nfde = *ofde; + if (fp != NULL) + nfde->fde_file = fp; filecaps_copy(&ofde->fde_caps, &nfde->fde_caps, true); fdused_init(newfdp, i); } MPASS(newfdp->fd_freefile != -1); FILEDESC_SUNLOCK(fdp); + + /* + * Now handle copying kqueues, since all fds, including + * kqueues, are in place. + */ + if (__predict_false(fork_pass)) { + FILEDESC_FOREACH_FDE(newfdp, i, nfde) { + const struct fileops *ops; + + ops = nfde->fde_file->f_ops; + if ((ops->fo_flags & DFLAG_FORK) == 0 || + nfde->fde_file == NULL) + continue; + ops->fo_fork(newfdp, NULL, &nfde->fde_file, p1, + curthread); + } + } return (newfdp); } diff --git a/sys/kern/kern_devctl.c b/sys/kern/kern_devctl.c index a1696225df32..a37cb23efed8 100644 --- a/sys/kern/kern_devctl.c +++ b/sys/kern/kern_devctl.c @@ -130,6 +130,7 @@ static const struct filterops devctl_rfiltops = { .f_isfd = 1, .f_detach = filt_devctl_detach, .f_event = filt_devctl_read, + .f_copy = knote_triv_copy, }; static struct cdev *devctl_dev; diff --git a/sys/kern/kern_event.c b/sys/kern/kern_event.c index a6333d8011b1..1baa24d278bf 100644 --- a/sys/kern/kern_event.c +++ b/sys/kern/kern_event.c @@ -134,6 +134,7 @@ static fo_kqfilter_t kqueue_kqfilter; static fo_stat_t kqueue_stat; static fo_close_t kqueue_close; static fo_fill_kinfo_t kqueue_fill_kinfo; +static fo_fork_t kqueue_fork; static const struct fileops kqueueops = { .fo_read = invfo_rdwr, @@ -148,7 +149,9 @@ static const struct fileops kqueueops = { .fo_chown = invfo_chown, .fo_sendfile = invfo_sendfile, .fo_cmp = file_kcmp_generic, + .fo_fork = kqueue_fork, .fo_fill_kinfo = kqueue_fill_kinfo, + .fo_flags = DFLAG_FORK, }; static int knote_attach(struct knote *kn, struct kqueue *kq); @@ -176,6 +179,7 @@ static void filt_timerdetach(struct knote *kn); static void filt_timerstart(struct knote *kn, sbintime_t to); static void filt_timertouch(struct knote *kn, struct kevent *kev, u_long type); +static int filt_timercopy(struct knote *kn, struct proc *p1); static int filt_timervalidate(struct knote *kn, sbintime_t *to); static int filt_timer(struct knote *kn, long hint); static int filt_userattach(struct knote *kn); @@ -187,11 +191,13 @@ static void filt_usertouch(struct knote *kn, struct kevent *kev, static const struct filterops file_filtops = { .f_isfd = 1, .f_attach = filt_fileattach, + .f_copy = knote_triv_copy, }; static const struct filterops kqread_filtops = { .f_isfd = 1, .f_detach = filt_kqdetach, .f_event = filt_kqueue, + .f_copy = knote_triv_copy, }; /* XXX - move to kern_proc.c? */ static const struct filterops proc_filtops = { @@ -199,12 +205,14 @@ static const struct filterops proc_filtops = { .f_attach = filt_procattach, .f_detach = filt_procdetach, .f_event = filt_proc, + .f_copy = knote_triv_copy, }; static const struct filterops jail_filtops = { .f_isfd = 0, .f_attach = filt_jailattach, .f_detach = filt_jaildetach, .f_event = filt_jail, + .f_copy = knote_triv_copy, }; static const struct filterops timer_filtops = { .f_isfd = 0, @@ -212,12 +220,14 @@ static const struct filterops timer_filtops = { .f_detach = filt_timerdetach, .f_event = filt_timer, .f_touch = filt_timertouch, + .f_copy = filt_timercopy, }; static const struct filterops user_filtops = { .f_attach = filt_userattach, .f_detach = filt_userdetach, .f_event = filt_user, .f_touch = filt_usertouch, + .f_copy = knote_triv_copy, }; static uma_zone_t knote_zone; @@ -347,6 +357,7 @@ filt_nullattach(struct knote *kn) static const struct filterops null_filtops = { .f_isfd = 0, .f_attach = filt_nullattach, + .f_copy = knote_triv_copy, }; /* XXX - make SYSINIT to add these, and move into respective modules. */ @@ -940,6 +951,30 @@ filt_timerattach(struct knote *kn) return (0); } +static int +filt_timercopy(struct knote *kn, struct proc *p) +{ + struct kq_timer_cb_data *kc_src, *kc; + + if (atomic_fetchadd_int(&kq_ncallouts, 1) + 1 > kq_calloutmax) { + atomic_subtract_int(&kq_ncallouts, 1); + return (ENOMEM); + } + + kn->kn_status &= ~KN_DETACHED; + kc_src = kn->kn_ptr.p_v; + kn->kn_ptr.p_v = kc = malloc(sizeof(*kc), M_KQUEUE, M_WAITOK); + kc->kn = kn; + kc->p = p; + kc->flags = kc_src->flags & ~KQ_TIMER_CB_ENQUEUED; + kc->next = kc_src->next; + kc->to = kc_src->to; + kc->cpuid = PCPU_GET(cpuid); + callout_init(&kc->c, 1); + kqtimer_sched_callout(kc); + return (0); +} + static void filt_timerstart(struct knote *kn, sbintime_t to) { @@ -1151,7 +1186,7 @@ int sys_kqueue(struct thread *td, struct kqueue_args *uap) { - return (kern_kqueue(td, 0, NULL)); + return (kern_kqueue(td, 0, false, NULL)); } int @@ -1159,55 +1194,76 @@ sys_kqueuex(struct thread *td, struct kqueuex_args *uap) { int flags; - if ((uap->flags & ~(KQUEUE_CLOEXEC)) != 0) + if ((uap->flags & ~(KQUEUE_CLOEXEC | KQUEUE_CPONFORK)) != 0) return (EINVAL); flags = 0; if ((uap->flags & KQUEUE_CLOEXEC) != 0) flags |= O_CLOEXEC; - return (kern_kqueue(td, flags, NULL)); + return (kern_kqueue(td, flags, (uap->flags & KQUEUE_CPONFORK) != 0, + NULL)); } static void -kqueue_init(struct kqueue *kq) +kqueue_init(struct kqueue *kq, bool cponfork) { mtx_init(&kq->kq_lock, "kqueue", NULL, MTX_DEF | MTX_DUPOK); TAILQ_INIT(&kq->kq_head); knlist_init_mtx(&kq->kq_sel.si_note, &kq->kq_lock); TASK_INIT(&kq->kq_task, 0, kqueue_task, kq); + if (cponfork) + kq->kq_state |= KQ_CPONFORK; } -int -kern_kqueue(struct thread *td, int flags, struct filecaps *fcaps) +static int +kern_kqueue_alloc(struct thread *td, struct filedesc *fdp, int *fdip, + struct file **fpp, int flags, struct filecaps *fcaps, bool cponfork, + struct kqueue **kqp) { - struct filedesc *fdp; - struct kqueue *kq; - struct file *fp; struct ucred *cred; - int fd, error; + struct kqueue *kq; + int error; - fdp = td->td_proc->p_fd; cred = td->td_ucred; if (!chgkqcnt(cred->cr_ruidinfo, 1, lim_cur(td, RLIMIT_KQUEUES))) return (ENOMEM); - error = falloc_caps(td, &fp, &fd, flags, fcaps); + error = fdip != NULL ? falloc_caps(td, fpp, fdip, flags, fcaps) : + _falloc_noinstall(td, fpp, 1); if (error != 0) { chgkqcnt(cred->cr_ruidinfo, -1, 0); return (error); } /* An extra reference on `fp' has been held for us by falloc(). */ - kq = malloc(sizeof *kq, M_KQUEUE, M_WAITOK | M_ZERO); - kqueue_init(kq); + kq = malloc(sizeof(*kq), M_KQUEUE, M_WAITOK | M_ZERO); + kqueue_init(kq, cponfork); kq->kq_fdp = fdp; kq->kq_cred = crhold(cred); - FILEDESC_XLOCK(fdp); + if (fdip != NULL) + FILEDESC_XLOCK(fdp); TAILQ_INSERT_HEAD(&fdp->fd_kqlist, kq, kq_list); - FILEDESC_XUNLOCK(fdp); + if (fdip != NULL) + FILEDESC_XUNLOCK(fdp); + + finit(*fpp, FREAD | FWRITE, DTYPE_KQUEUE, kq, &kqueueops); + *kqp = kq; + return (0); +} + +int +kern_kqueue(struct thread *td, int flags, bool cponfork, struct filecaps *fcaps) +{ + struct kqueue *kq; + struct file *fp; + int fd, error; + + error = kern_kqueue_alloc(td, td->td_proc->p_fd, &fd, &fp, flags, + fcaps, cponfork, &kq); + if (error != 0) + return (error); - finit(fp, FREAD | FWRITE, DTYPE_KQUEUE, kq, &kqueueops); fdrop(fp, td); td->td_retval[0] = fd; @@ -1488,7 +1544,7 @@ kern_kevent_anonymous(struct thread *td, int nevents, struct kqueue kq = {}; int error; - kqueue_init(&kq); + kqueue_init(&kq, false); kq.kq_refcnt = 1; error = kqueue_kevent(&kq, td, nevents, nevents, k_ops, NULL); kqueue_drain(&kq, td); @@ -1576,7 +1632,7 @@ kqueue_fo_release(int filt) mtx_lock(&filterops_lock); KASSERT(sysfilt_ops[~filt].for_refcnt > 0, - ("filter object refcount not valid on release")); + ("filter object %d refcount not valid on release", filt)); sysfilt_ops[~filt].for_refcnt--; mtx_unlock(&filterops_lock); } @@ -1855,17 +1911,8 @@ done: } static int -kqueue_acquire(struct file *fp, struct kqueue **kqp) +kqueue_acquire_ref(struct kqueue *kq) { - int error; - struct kqueue *kq; - - error = 0; - - kq = fp->f_data; - if (fp->f_type != DTYPE_KQUEUE || kq == NULL) - return (EINVAL); - *kqp = kq; KQ_LOCK(kq); if ((kq->kq_state & KQ_CLOSING) == KQ_CLOSING) { KQ_UNLOCK(kq); @@ -1873,8 +1920,22 @@ kqueue_acquire(struct file *fp, struct kqueue **kqp) } kq->kq_refcnt++; KQ_UNLOCK(kq); + return (0); +} - return error; +static int +kqueue_acquire(struct file *fp, struct kqueue **kqp) +{ + struct kqueue *kq; + int error; + + kq = fp->f_data; + if (fp->f_type != DTYPE_KQUEUE || kq == NULL) + return (EINVAL); + error = kqueue_acquire_ref(kq); + if (error == 0) + *kqp = kq; + return (error); } static void @@ -2937,6 +2998,152 @@ noacquire: return (error); } +static int +kqueue_fork_alloc(struct filedesc *fdp, struct file *fp, struct file **fp1, + struct thread *td) +{ + struct kqueue *kq, *kq1; + int error; + + MPASS(fp->f_type == DTYPE_KQUEUE); + kq = fp->f_data; + if ((kq->kq_state & KQ_CPONFORK) == 0) + return (EOPNOTSUPP); + error = kqueue_acquire_ref(kq); + if (error != 0) + return (error); + error = kern_kqueue_alloc(td, fdp, NULL, fp1, 0, NULL, true, &kq1); + if (error == 0) { + kq1->kq_forksrc = kq; + (*fp1)->f_flag = fp->f_flag & (FREAD | FWRITE | FEXEC | + O_CLOEXEC | O_CLOFORK); + } else { + kqueue_release(kq, 0); + } + return (error); +} + +static void +kqueue_fork_copy_knote(struct kqueue *kq1, struct knote *kn, struct proc *p1, + struct filedesc *fdp) +{ + struct knote *kn1; + const struct filterops *fop; + int error; + + fop = kn->kn_fop; + if (fop->f_copy == NULL || (fop->f_isfd && + fdp->fd_files->fdt_ofiles[kn->kn_kevent.ident].fde_file == NULL)) + return; + error = kqueue_expand(kq1, fop, kn->kn_kevent.ident, M_WAITOK); + if (error != 0) + return; + + kn1 = knote_alloc(M_WAITOK); + *kn1 = *kn; + kn1->kn_status |= KN_DETACHED; + kn1->kn_status &= ~KN_QUEUED; + kn1->kn_kq = kq1; + error = fop->f_copy(kn1, p1); + if (error != 0) { + knote_free(kn1); + return; + } + (void)kqueue_fo_find(kn->kn_kevent.filter); + if (fop->f_isfd && !fhold(kn1->kn_fp)) { + fop->f_detach(kn1); + kqueue_fo_release(kn->kn_kevent.filter); + knote_free(kn1); + return; + } + if (kn->kn_knlist != NULL) + knlist_add(kn->kn_knlist, kn1, 0); + KQ_LOCK(kq1); + knote_attach(kn1, kq1); + kn1->kn_influx = 0; + if ((kn->kn_status & KN_QUEUED) != 0) + knote_enqueue(kn1); + KQ_UNLOCK(kq1); +} + +static void +kqueue_fork_copy_list(struct klist *knlist, struct knote *marker, + struct kqueue *kq, struct kqueue *kq1, struct proc *p1, + struct filedesc *fdp) +{ + struct knote *kn; + + KQ_OWNED(kq); + kn = SLIST_FIRST(knlist); + while (kn != NULL) { + if ((kn->kn_status & KN_DETACHED) != 0 || + (kn_in_flux(kn) && (kn->kn_status & KN_SCAN) == 0)) { + kn = SLIST_NEXT(kn, kn_link); + continue; + } + kn_enter_flux(kn); + SLIST_INSERT_AFTER(kn, marker, kn_link); + KQ_UNLOCK(kq); + kqueue_fork_copy_knote(kq1, kn, p1, fdp); + KQ_LOCK(kq); + kn_leave_flux(kn); + kn = SLIST_NEXT(marker, kn_link); + /* XXXKIB switch kn_link to LIST? */ + SLIST_REMOVE(knlist, marker, knote, kn_link); + } +} + +static int +kqueue_fork_copy(struct filedesc *fdp, struct file *fp, struct file *fp1, + struct proc *p1, struct thread *td) +{ + struct kqueue *kq, *kq1; + struct knote *marker; + int error, i; + + error = 0; + MPASS(fp == NULL); + MPASS(fp1->f_type == DTYPE_KQUEUE); + + kq1 = fp1->f_data; + kq = kq1->kq_forksrc; + marker = knote_alloc(M_WAITOK); + marker->kn_status = KN_MARKER; + + KQ_LOCK(kq); + for (i = 0; i < kq->kq_knlistsize; i++) { + kqueue_fork_copy_list(&kq->kq_knlist[i], marker, kq, kq1, + p1, fdp); + } + if (kq->kq_knhashmask != 0) { + for (i = 0; i <= kq->kq_knhashmask; i++) { + kqueue_fork_copy_list(&kq->kq_knhash[i], marker, kq, + kq1, p1, fdp); + } + } + kqueue_release(kq, 1); + kq1->kq_forksrc = NULL; + KQ_UNLOCK(kq); + + knote_free(marker); + return (error); +} + +static int +kqueue_fork(struct filedesc *fdp, struct file *fp, struct file **fp1, + struct proc *p1, struct thread *td) +{ + if (*fp1 == NULL) + return (kqueue_fork_alloc(fdp, fp, fp1, td)); + return (kqueue_fork_copy(fdp, fp, *fp1, p1, td)); +} + +int +knote_triv_copy(struct knote *kn __unused, struct proc *p1 __unused) +{ + return (0); +} + struct knote_status_export_bit { int kn_status_bit; int knt_status_bit; diff --git a/sys/kern/kern_exit.c b/sys/kern/kern_exit.c index ab8ed32ad189..c4b1c8201ff2 100644 --- a/sys/kern/kern_exit.c +++ b/sys/kern/kern_exit.c @@ -807,7 +807,7 @@ kern_abort2(struct thread *td, const char *why, int nargs, void **uargs) } if (nargs > 0) { sbuf_putc(sb, '('); - for (i = 0;i < nargs; i++) + for (i = 0; i < nargs; i++) sbuf_printf(sb, "%s%p", i == 0 ? "" : ", ", uargs[i]); sbuf_putc(sb, ')'); } diff --git a/sys/kern/kern_fork.c b/sys/kern/kern_fork.c index 7f6abae187b3..8b237b6dbd17 100644 --- a/sys/kern/kern_fork.c +++ b/sys/kern/kern_fork.c @@ -423,7 +423,7 @@ do_fork(struct thread *td, struct fork_req *fr, struct proc *p2, struct thread * pd = pdshare(p1->p_pd); else pd = pdcopy(p1->p_pd); - fd = fdcopy(p1->p_fd); + fd = fdcopy(p1->p_fd, p2); fdtol = NULL; } else { if (fr->fr_flags2 & FR2_SHARE_PATHS) diff --git a/sys/kern/kern_jail.c b/sys/kern/kern_jail.c index 3697d95fe0e5..267b60ffb5bc 100644 --- a/sys/kern/kern_jail.c +++ b/sys/kern/kern_jail.c @@ -1088,6 +1088,7 @@ kern_jail_set(struct thread *td, struct uio *optuio, int flags) else { if (!(flags & (JAIL_USE_DESC | JAIL_AT_DESC | JAIL_GET_DESC | JAIL_OWN_DESC))) { + error = EINVAL; vfs_opterror(opts, "unexpected desc"); goto done_errmsg; } @@ -2518,6 +2519,7 @@ kern_jail_get(struct thread *td, struct uio *optuio, int flags) } else if (error == 0) { if (!(flags & (JAIL_USE_DESC | JAIL_AT_DESC | JAIL_GET_DESC | JAIL_OWN_DESC))) { + error = EINVAL; vfs_opterror(opts, "unexpected desc"); goto done; } @@ -2909,12 +2911,6 @@ prison_remove(struct prison *pr) { sx_assert(&allprison_lock, SA_XLOCKED); mtx_assert(&pr->pr_mtx, MA_OWNED); - if (!prison_isalive(pr)) { - /* Silently ignore already-dying prisons. */ - mtx_unlock(&pr->pr_mtx); - sx_xunlock(&allprison_lock); - return; - } prison_deref(pr, PD_KILL | PD_DEREF | PD_LOCKED | PD_LIST_XLOCKED); } @@ -3461,12 +3457,17 @@ prison_deref(struct prison *pr, int flags) /* Kill the prison and its descendents. */ KASSERT(pr != &prison0, ("prison_deref trying to kill prison0")); - if (!(flags & PD_DEREF)) { - prison_hold(pr); - flags |= PD_DEREF; + if (!prison_isalive(pr)) { + /* Silently ignore already-dying prisons. */ + flags &= ~PD_KILL; + } else { + if (!(flags & PD_DEREF)) { + prison_hold(pr); + flags |= PD_DEREF; + } + flags = prison_lock_xlock(pr, flags); + prison_deref_kill(pr, &freeprison); } - flags = prison_lock_xlock(pr, flags); - prison_deref_kill(pr, &freeprison); } if (flags & PD_DEUREF) { /* Drop a user reference. */ diff --git a/sys/kern/kern_jaildesc.c b/sys/kern/kern_jaildesc.c index 3f322b271400..a564393d3366 100644 --- a/sys/kern/kern_jaildesc.c +++ b/sys/kern/kern_jaildesc.c @@ -344,6 +344,7 @@ static const struct filterops jaildesc_kqops = { .f_isfd = 1, .f_detach = jaildesc_kqops_detach, .f_event = jaildesc_kqops_event, + .f_copy = knote_triv_copy, }; static int diff --git a/sys/kern/kern_malloc.c b/sys/kern/kern_malloc.c index e919b15543b2..fcbfbe64f854 100644 --- a/sys/kern/kern_malloc.c +++ b/sys/kern/kern_malloc.c @@ -1302,7 +1302,7 @@ mallocinit(void *dummy) #endif align, UMA_ZONE_MALLOC); } - for (;i <= size; i+= KMEM_ZBASE) + for (; i <= size; i+= KMEM_ZBASE) kmemsize[i >> KMEM_ZSHIFT] = indx; } } diff --git a/sys/kern/kern_sig.c b/sys/kern/kern_sig.c index 21f765b17f62..a55f3c761449 100644 --- a/sys/kern/kern_sig.c +++ b/sys/kern/kern_sig.c @@ -124,6 +124,7 @@ const struct filterops sig_filtops = { .f_attach = filt_sigattach, .f_detach = filt_sigdetach, .f_event = filt_signal, + .f_copy = knote_triv_copy, }; static int kern_forcesigexit = 1; diff --git a/sys/kern/subr_devstat.c b/sys/kern/subr_devstat.c index 07a9cc0f57be..c4d0223d484f 100644 --- a/sys/kern/subr_devstat.c +++ b/sys/kern/subr_devstat.c @@ -415,7 +415,7 @@ sysctl_devstat(SYSCTL_HANDLER_ARGS) if (error != 0) return (error); - for (;nds != NULL;) { + while (nds != NULL) { error = SYSCTL_OUT(req, nds, sizeof(struct devstat)); if (error != 0) return (error); diff --git a/sys/kern/subr_kdb.c b/sys/kern/subr_kdb.c index 56264a96c9fa..909dd10a6e69 100644 --- a/sys/kern/subr_kdb.c +++ b/sys/kern/subr_kdb.c @@ -330,7 +330,7 @@ kdb_reboot(void) #define KEY_CRTLP 16 /* ^P */ #define KEY_CRTLR 18 /* ^R */ -/* States of th KDB "alternate break sequence" detecting state machine. */ +/* States of the KDB "alternate break sequence" detecting state machine. */ enum { KDB_ALT_BREAK_SEEN_NONE, KDB_ALT_BREAK_SEEN_CR, diff --git a/sys/kern/subr_log.c b/sys/kern/subr_log.c index 5380902e602f..aac35a56130e 100644 --- a/sys/kern/subr_log.c +++ b/sys/kern/subr_log.c @@ -79,6 +79,7 @@ static const struct filterops log_read_filterops = { .f_attach = NULL, .f_detach = logkqdetach, .f_event = logkqread, + .f_copy = knote_triv_copy, }; static struct logsoftc { diff --git a/sys/kern/subr_prf.c b/sys/kern/subr_prf.c index db0ceb17b9f0..e2070ae3f865 100644 --- a/sys/kern/subr_prf.c +++ b/sys/kern/subr_prf.c @@ -766,7 +766,7 @@ reswitch: switch (ch = (u_char)*fmt++) { PCHAR(hex2ascii(*up & 0x0f)); up++; if (width) - for (q=p;*q;q++) + for (q = p; *q; q++) PCHAR(*q); } break; diff --git a/sys/kern/sys_eventfd.c b/sys/kern/sys_eventfd.c index c2a0f67cae85..04ed107c933d 100644 --- a/sys/kern/sys_eventfd.c +++ b/sys/kern/sys_eventfd.c @@ -85,13 +85,16 @@ static int filt_eventfdwrite(struct knote *kn, long hint); static const struct filterops eventfd_rfiltops = { .f_isfd = 1, .f_detach = filt_eventfddetach, - .f_event = filt_eventfdread + .f_event = filt_eventfdread, + .f_copy = knote_triv_copy, }; + static const struct filterops eventfd_wfiltops = { .f_isfd = 1, .f_detach = filt_eventfddetach, - .f_event = filt_eventfdwrite + .f_event = filt_eventfdwrite, + .f_copy = knote_triv_copy, }; struct eventfd { diff --git a/sys/kern/sys_pipe.c b/sys/kern/sys_pipe.c index 57ebe8dc85f0..6531cea31423 100644 --- a/sys/kern/sys_pipe.c +++ b/sys/kern/sys_pipe.c @@ -181,20 +181,23 @@ static int filt_pipedump(struct proc *p, struct knote *kn, static const struct filterops pipe_nfiltops = { .f_isfd = 1, .f_detach = filt_pipedetach_notsup, - .f_event = filt_pipenotsup + .f_event = filt_pipenotsup, /* no userdump */ + .f_copy = knote_triv_copy, }; static const struct filterops pipe_rfiltops = { .f_isfd = 1, .f_detach = filt_pipedetach, .f_event = filt_piperead, .f_userdump = filt_pipedump, + .f_copy = knote_triv_copy, }; static const struct filterops pipe_wfiltops = { .f_isfd = 1, .f_detach = filt_pipedetach, .f_event = filt_pipewrite, .f_userdump = filt_pipedump, + .f_copy = knote_triv_copy, }; /* diff --git a/sys/kern/sys_procdesc.c b/sys/kern/sys_procdesc.c index acaf1241cb2e..c5db21544b0f 100644 --- a/sys/kern/sys_procdesc.c +++ b/sys/kern/sys_procdesc.c @@ -486,6 +486,7 @@ static const struct filterops procdesc_kqops = { .f_isfd = 1, .f_detach = procdesc_kqops_detach, .f_event = procdesc_kqops_event, + .f_copy = knote_triv_copy, }; static int diff --git a/sys/kern/tty.c b/sys/kern/tty.c index c8e2c561b7cf..067471eb949a 100644 --- a/sys/kern/tty.c +++ b/sys/kern/tty.c @@ -754,12 +754,14 @@ static const struct filterops tty_kqops_read = { .f_isfd = 1, .f_detach = tty_kqops_read_detach, .f_event = tty_kqops_read_event, + .f_copy = knote_triv_copy, }; static const struct filterops tty_kqops_write = { .f_isfd = 1, .f_detach = tty_kqops_write_detach, .f_event = tty_kqops_write_event, + .f_copy = knote_triv_copy, }; static int diff --git a/sys/kern/tty_pts.c b/sys/kern/tty_pts.c index 1291770a9ccb..2672935c2d89 100644 --- a/sys/kern/tty_pts.c +++ b/sys/kern/tty_pts.c @@ -491,11 +491,13 @@ static const struct filterops pts_kqops_read = { .f_isfd = 1, .f_detach = pts_kqops_read_detach, .f_event = pts_kqops_read_event, + .f_copy = knote_triv_copy, }; static const struct filterops pts_kqops_write = { .f_isfd = 1, .f_detach = pts_kqops_write_detach, .f_event = pts_kqops_write_event, + .f_copy = knote_triv_copy, }; static int diff --git a/sys/kern/uipc_mqueue.c b/sys/kern/uipc_mqueue.c index a8aec397b352..4c1bb1ff228e 100644 --- a/sys/kern/uipc_mqueue.c +++ b/sys/kern/uipc_mqueue.c @@ -281,11 +281,13 @@ static const struct filterops mq_rfiltops = { .f_isfd = 1, .f_detach = filt_mqdetach, .f_event = filt_mqread, + .f_copy = knote_triv_copy, }; static const struct filterops mq_wfiltops = { .f_isfd = 1, .f_detach = filt_mqdetach, .f_event = filt_mqwrite, + .f_copy = knote_triv_copy, }; /* diff --git a/sys/kern/uipc_socket.c b/sys/kern/uipc_socket.c index fe2d8d056062..eb9544628137 100644 --- a/sys/kern/uipc_socket.c +++ b/sys/kern/uipc_socket.c @@ -191,16 +191,19 @@ static const struct filterops soread_filtops = { .f_isfd = 1, .f_detach = filt_sordetach, .f_event = filt_soread, + .f_copy = knote_triv_copy, }; static const struct filterops sowrite_filtops = { .f_isfd = 1, .f_detach = filt_sowdetach, .f_event = filt_sowrite, + .f_copy = knote_triv_copy, }; static const struct filterops soempty_filtops = { .f_isfd = 1, .f_detach = filt_sowdetach, .f_event = filt_soempty, + .f_copy = knote_triv_copy, }; so_gen_t so_gencnt; /* generation count for sockets */ diff --git a/sys/kern/uipc_usrreq.c b/sys/kern/uipc_usrreq.c index c5fc1e84ce3f..807271488af2 100644 --- a/sys/kern/uipc_usrreq.c +++ b/sys/kern/uipc_usrreq.c @@ -1559,15 +1559,19 @@ restart: mc_init_m(&cmc, control); SOCK_RECVBUF_LOCK(so); - MPASS(!(sb->sb_state & SBS_CANTRCVMORE)); - - if (__predict_false(cmc.mc_len + sb->sb_ccc + - sb->sb_ctl > sb->sb_hiwat)) { + if (__predict_false( + (sb->sb_state & SBS_CANTRCVMORE) || + cmc.mc_len + sb->sb_ccc + sb->sb_ctl > + sb->sb_hiwat)) { /* - * Too bad, while unp_externalize() was - * failing, the other side had filled - * the buffer and we can't prepend data - * back. Losing data! + * While the lock was dropped and we + * were failing in unp_externalize(), + * the peer could has a) disconnected, + * b) filled the buffer so that we + * can't prepend data back. + * These are two edge conditions that + * we just can't handle, so lose the + * data and return the error. */ SOCK_RECVBUF_UNLOCK(so); SOCK_IO_RECV_UNLOCK(so); @@ -1851,11 +1855,13 @@ static const struct filterops uipc_write_filtops = { .f_isfd = 1, .f_detach = uipc_filt_sowdetach, .f_event = uipc_filt_sowrite, + .f_copy = knote_triv_copy, }; static const struct filterops uipc_empty_filtops = { .f_isfd = 1, .f_detach = uipc_filt_sowdetach, .f_event = uipc_filt_soempty, + .f_copy = knote_triv_copy, }; static int diff --git a/sys/kern/vfs_aio.c b/sys/kern/vfs_aio.c index e63fa4c01434..60916a9fbd32 100644 --- a/sys/kern/vfs_aio.c +++ b/sys/kern/vfs_aio.c @@ -345,12 +345,14 @@ static const struct filterops aio_filtops = { .f_attach = filt_aioattach, .f_detach = filt_aiodetach, .f_event = filt_aio, + .f_copy = knote_triv_copy, }; static const struct filterops lio_filtops = { .f_isfd = 0, .f_attach = filt_lioattach, .f_detach = filt_liodetach, - .f_event = filt_lio + .f_event = filt_lio, + .f_copy = knote_triv_copy, }; static eventhandler_tag exit_tag, exec_tag; diff --git a/sys/kern/vfs_cluster.c b/sys/kern/vfs_cluster.c index 2e397b8e9e8f..b674313993c4 100644 --- a/sys/kern/vfs_cluster.c +++ b/sys/kern/vfs_cluster.c @@ -260,8 +260,10 @@ cluster_read(struct vnode *vp, u_quad_t filesize, daddr_t lblkno, long size, */ while (lblkno < (origblkno + maxra)) { error = VOP_BMAP(vp, lblkno, NULL, &blkno, &ncontig, NULL); - if (error) + if (error) { + error = 0; break; + } if (blkno == -1) break; diff --git a/sys/kern/vfs_inotify.c b/sys/kern/vfs_inotify.c index b265a5ff3a62..e60d8426ee42 100644 --- a/sys/kern/vfs_inotify.c +++ b/sys/kern/vfs_inotify.c @@ -111,6 +111,7 @@ static const struct filterops inotify_rfiltops = { .f_isfd = 1, .f_detach = filt_inotifydetach, .f_event = filt_inotifyevent, + .f_copy = knote_triv_copy, }; static MALLOC_DEFINE(M_INOTIFY, "inotify", "inotify data structures"); diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index 73e110c05bc1..58975f7ac932 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -6545,6 +6545,7 @@ const struct filterops fs_filtops = { .f_attach = filt_fsattach, .f_detach = filt_fsdetach, .f_event = filt_fsevent, + .f_copy = knote_triv_copy, }; static int @@ -6624,24 +6625,28 @@ static int filt_vfsvnode(struct knote *kn, long hint); static void filt_vfsdetach(struct knote *kn); static int filt_vfsdump(struct proc *p, struct knote *kn, struct kinfo_knote *kin); +static int filt_vfscopy(struct knote *kn, struct proc *p1); static const struct filterops vfsread_filtops = { .f_isfd = 1, .f_detach = filt_vfsdetach, .f_event = filt_vfsread, .f_userdump = filt_vfsdump, + .f_copy = filt_vfscopy, }; static const struct filterops vfswrite_filtops = { .f_isfd = 1, .f_detach = filt_vfsdetach, .f_event = filt_vfswrite, .f_userdump = filt_vfsdump, + .f_copy = filt_vfscopy, }; static const struct filterops vfsvnode_filtops = { .f_isfd = 1, .f_detach = filt_vfsdetach, .f_event = filt_vfsvnode, .f_userdump = filt_vfsdump, + .f_copy = filt_vfscopy, }; static void @@ -6825,6 +6830,16 @@ filt_vfsdump(struct proc *p, struct knote *kn, struct kinfo_knote *kin) return (0); } +static int +filt_vfscopy(struct knote *kn, struct proc *p1) +{ + struct vnode *vp; + + vp = (struct vnode *)kn->kn_hook; + vhold(vp); + return (0); +} + int vfs_read_dirent(struct vop_readdir_args *ap, struct dirent *dp, off_t off) { diff --git a/sys/modules/Makefile b/sys/modules/Makefile index feb9778c23da..9bc743c0c6d1 100644 --- a/sys/modules/Makefile +++ b/sys/modules/Makefile @@ -173,6 +173,7 @@ SUBDIR= \ iflib \ ${_igc} \ imgact_binmisc \ + ${_imx} \ ${_intelspi} \ ${_io} \ ${_ioat} \ @@ -346,6 +347,7 @@ SUBDIR= \ rc4 \ ${_rdma} \ ${_rdrand_rng} \ + ${_rdseed_rng} \ re \ rl \ ${_rockchip} \ @@ -577,6 +579,7 @@ _mlx5ib= mlx5ib ${MACHINE_CPUARCH} == "i386" _ena= ena _gve= gve +_igc= igc # gcc13 and earlier lack __builtin_bitcountg used by linux emulation .if !(${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} < 140000) _iwlwifi= iwlwifi @@ -679,7 +682,9 @@ _irdma= irdma .if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "arm" || \ ${MACHINE_CPUARCH} == "riscv" .if !empty(OPT_FDT) +_allwinner= allwinner _if_cgem= if_cgem +_sdhci_fdt= sdhci_fdt .endif .endif @@ -712,7 +717,6 @@ _hyperv= hyperv _vf_i2c= vf_i2c .if !empty(OPT_FDT) -_allwinner= allwinner _dwwdt= dwwdt _enetc= enetc _felix= felix @@ -720,12 +724,8 @@ _rockchip= rockchip .endif .endif -.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "arm" || \ - ${MACHINE_CPUARCH} == "riscv" -.if !empty(OPT_FDT) -_sdhci_fdt= sdhci_fdt -.endif -_neta= neta +.if ${MACHINE_CPUARCH} == "arm" +_imx= imx .endif .if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64" @@ -747,7 +747,6 @@ _et= et _ftgpio= ftgpio _ftwd= ftwd _exca= exca -_igc= igc _io= io _itwd= itwd _ix= ix @@ -822,6 +821,7 @@ _nvram= nvram _padlock= padlock _padlock_rng= padlock_rng _rdrand_rng= rdrand_rng +_rdseed_rng= rdseed_rng .endif _pchtherm = pchtherm _s3= s3 @@ -923,7 +923,8 @@ _nvram+= powermac_nvram .if ${MACHINE_CPUARCH} == "arm" || ${MACHINE_CPUARCH} == "aarch64" _bcm283x_clkman= bcm283x_clkman -_bcm283x_pwm= bcm283x_pwm +_bcm283x_pwm= bcm283x_pwm +_neta= neta .endif .if ${MACHINE_CPUARCH} == "amd64" diff --git a/sys/modules/allwinner/aw_sid/Makefile b/sys/modules/allwinner/aw_sid/Makefile index 7d3dad68acb9..2679aa83d09d 100644 --- a/sys/modules/allwinner/aw_sid/Makefile +++ b/sys/modules/allwinner/aw_sid/Makefile @@ -7,6 +7,7 @@ SRCS+= \ bus_if.h \ clknode_if.h \ device_if.h \ - ofw_bus_if.h \ + nvmem_if.h \ + ofw_bus_if.h .include <bsd.kmod.mk> diff --git a/sys/modules/allwinner/aw_thermal/Makefile b/sys/modules/allwinner/aw_thermal/Makefile index 911e6406d947..924b09a3b3c8 100644 --- a/sys/modules/allwinner/aw_thermal/Makefile +++ b/sys/modules/allwinner/aw_thermal/Makefile @@ -7,6 +7,7 @@ SRCS+= \ bus_if.h \ clknode_if.h \ device_if.h \ - ofw_bus_if.h \ + nvmem_if.h \ + ofw_bus_if.h .include <bsd.kmod.mk> diff --git a/sys/modules/dtb/allwinner/Makefile b/sys/modules/dtb/allwinner/Makefile index 242ee5d974ad..2666e786a9df 100644 --- a/sys/modules/dtb/allwinner/Makefile +++ b/sys/modules/dtb/allwinner/Makefile @@ -65,7 +65,12 @@ DTSO= sun50i-a64-mmc0-disable.dtso \ sun50i-a64-timer.dtso \ sun50i-h5-opp.dtso \ sun50i-h5-nanopi-neo2-opp.dtso - +.elif ${MACHINE_CPUARCH} == "riscv" +DTS= \ + allwinner/sun20i-d1-dongshan-nezha-stu.dts \ + allwinner/sun20i-d1-lichee-rv.dts \ + allwinner/sun20i-d1-mangopi-mq-pro.dts \ + allwinner/sun20i-d1-nezha.dts .endif .include <bsd.dtb.mk> diff --git a/sys/modules/dtb/starfive/Makefile b/sys/modules/dtb/starfive/Makefile new file mode 100644 index 000000000000..2da30f0985c7 --- /dev/null +++ b/sys/modules/dtb/starfive/Makefile @@ -0,0 +1,7 @@ +DTS= \ + starfive/jh7110-pine64-star64.dts \ + starfive/jh7110-milkv-mars.dts \ + starfive/jh7110-starfive-visionfive-2-v1.3b.dts \ + starfive/jh7110-starfive-visionfive-2-v1.2a.dts + +.include <bsd.dtb.mk> diff --git a/sys/modules/rdrand_rng/Makefile b/sys/modules/rdrand_rng/Makefile index 7fa7a8bb8fb9..496fc863033f 100644 --- a/sys/modules/rdrand_rng/Makefile +++ b/sys/modules/rdrand_rng/Makefile @@ -6,9 +6,4 @@ SRCS+= bus_if.h device_if.h CFLAGS+= -I${SRCTOP}/sys -# ld.bfd doesn't support ifuncs invoked non-PIC -.if ${MACHINE_CPUARCH} == "i386" -CFLAGS.gcc= -fPIC -.endif - .include <bsd.kmod.mk> diff --git a/sys/modules/rdseed_rng/Makefile b/sys/modules/rdseed_rng/Makefile new file mode 100644 index 000000000000..6593505546dd --- /dev/null +++ b/sys/modules/rdseed_rng/Makefile @@ -0,0 +1,9 @@ +.PATH: ${SRCTOP}/sys/dev/random + +KMOD= rdseed_rng +SRCS= rdseed.c +SRCS+= bus_if.h device_if.h + +CFLAGS+= -I${SRCTOP}/sys + +.include <bsd.kmod.mk> diff --git a/sys/modules/zfs/zfs_config.h b/sys/modules/zfs/zfs_config.h index db1b6f33a8ef..3a17ed289235 100644 --- a/sys/modules/zfs/zfs_config.h +++ b/sys/modules/zfs/zfs_config.h @@ -843,7 +843,7 @@ /* #undef ZFS_DEVICE_MINOR */ /* Define the project alias string. */ -#define ZFS_META_ALIAS "zfs-2.4.99-95-FreeBSD_g5605a6d79" +#define ZFS_META_ALIAS "zfs-2.4.99-113-FreeBSD_g6ae99d269" /* Define the project author. */ #define ZFS_META_AUTHOR "OpenZFS" @@ -873,7 +873,7 @@ #define ZFS_META_NAME "zfs" /* Define the project release. */ -#define ZFS_META_RELEASE "95-FreeBSD_g5605a6d79" +#define ZFS_META_RELEASE "113-FreeBSD_g6ae99d269" /* Define the project version. */ #define ZFS_META_VERSION "2.4.99" diff --git a/sys/modules/zfs/zfs_gitrev.h b/sys/modules/zfs/zfs_gitrev.h index 8a1802f5480b..6f568754f61d 100644 --- a/sys/modules/zfs/zfs_gitrev.h +++ b/sys/modules/zfs/zfs_gitrev.h @@ -1 +1 @@ -#define ZFS_META_GITREV "zfs-2.4.99-95-g5605a6d79" +#define ZFS_META_GITREV "zfs-2.4.99-113-g6ae99d269" diff --git a/sys/net/bpf.c b/sys/net/bpf.c index a347dbe2eb73..f598733773d0 100644 --- a/sys/net/bpf.c +++ b/sys/net/bpf.c @@ -253,12 +253,14 @@ static const struct filterops bpfread_filtops = { .f_isfd = 1, .f_detach = filt_bpfdetach, .f_event = filt_bpfread, + .f_copy = knote_triv_copy, }; static const struct filterops bpfwrite_filtops = { .f_isfd = 1, .f_detach = filt_bpfdetach, .f_event = filt_bpfwrite, + .f_copy = knote_triv_copy, }; /* diff --git a/sys/net/if_tuntap.c b/sys/net/if_tuntap.c index c8dbb6aa8893..56bb90cce9bc 100644 --- a/sys/net/if_tuntap.c +++ b/sys/net/if_tuntap.c @@ -261,6 +261,7 @@ static const struct filterops tun_read_filterops = { .f_attach = NULL, .f_detach = tunkqdetach, .f_event = tunkqread, + .f_copy = knote_triv_copy, }; static const struct filterops tun_write_filterops = { @@ -268,6 +269,7 @@ static const struct filterops tun_write_filterops = { .f_attach = NULL, .f_detach = tunkqdetach, .f_event = tunkqwrite, + .f_copy = knote_triv_copy, }; static struct tuntap_driver { diff --git a/sys/net/if_vxlan.c b/sys/net/if_vxlan.c index 03184c1fb678..f3a8410a2258 100644 --- a/sys/net/if_vxlan.c +++ b/sys/net/if_vxlan.c @@ -2533,7 +2533,7 @@ vxlan_encap4(struct vxlan_softc *sc, const union vxlan_sockaddr *fvxlsa, ifp = sc->vxl_ifp; srcaddr = sc->vxl_src_addr.in4.sin_addr; - srcport = vxlan_pick_source_port(sc, m); + srcport = htons(vxlan_pick_source_port(sc, m)); dstaddr = fvxlsa->in4.sin_addr; dstport = fvxlsa->in4.sin_port; @@ -2644,7 +2644,7 @@ vxlan_encap6(struct vxlan_softc *sc, const union vxlan_sockaddr *fvxlsa, ifp = sc->vxl_ifp; srcaddr = &sc->vxl_src_addr.in6.sin6_addr; - srcport = vxlan_pick_source_port(sc, m); + srcport = htons(vxlan_pick_source_port(sc, m)); dstaddr = &fvxlsa->in6.sin6_addr; dstport = fvxlsa->in6.sin6_port; diff --git a/sys/netgraph/bluetooth/drivers/ubt/ng_ubt_rtl.c b/sys/netgraph/bluetooth/drivers/ubt/ng_ubt_rtl.c index 0181a67ac604..f35712cc8f69 100644 --- a/sys/netgraph/bluetooth/drivers/ubt/ng_ubt_rtl.c +++ b/sys/netgraph/bluetooth/drivers/ubt/ng_ubt_rtl.c @@ -81,9 +81,6 @@ const STRUCT_USB_HOST_ID ubt_rtl_devs[] = { USB_VPI(0x0bda, 0xb00c, 0) }, { USB_VPI(0x0bda, 0xc822, 0) }, - /* Realtek 8822CU Bluetooth devices */ - { USB_VPI(0x13d3, 0x3549, 0) }, - /* Realtek 8851BE Bluetooth devices */ { USB_VPI(0x13d3, 0x3600, 0) }, diff --git a/sys/netinet/in_mcast.c b/sys/netinet/in_mcast.c index f5b20c49ffd2..ba112afbf002 100644 --- a/sys/netinet/in_mcast.c +++ b/sys/netinet/in_mcast.c @@ -159,9 +159,6 @@ static struct ip_moptions * static int inp_get_source_filters(struct inpcb *, struct sockopt *); static int inp_join_group(struct inpcb *, struct sockopt *); static int inp_leave_group(struct inpcb *, struct sockopt *); -static struct ifnet * - inp_lookup_mcast_ifp(const struct inpcb *, - const struct sockaddr_in *, const struct in_addr); static int inp_block_unblock_source(struct inpcb *, struct sockopt *); static int inp_set_multicast_if(struct inpcb *, struct sockopt *); static int inp_set_source_filters(struct inpcb *, struct sockopt *); @@ -1832,69 +1829,55 @@ inp_getmoptions(struct inpcb *inp, struct sockopt *sopt) } /* - * Look up the ifnet to use for a multicast group membership, - * given the IPv4 address of an interface, and the IPv4 group address. - * - * This routine exists to support legacy multicast applications - * which do not understand that multicast memberships are scoped to - * specific physical links in the networking stack, or which need - * to join link-scope groups before IPv4 addresses are configured. - * - * Use this socket's current FIB number for any required FIB lookup. - * If ina is INADDR_ANY, look up the group address in the unicast FIB, - * and use its ifp; usually, this points to the default next-hop. - * - * If the FIB lookup fails, attempt to use the first non-loopback - * interface with multicast capability in the system as a - * last resort. The legacy IPv4 ASM API requires that we do - * this in order to allow groups to be joined when the routing - * table has not yet been populated during boot. - * - * Returns NULL if no ifp could be found, otherwise return referenced ifp. + * Look up the ifnet to join a multicast group membership via legacy + * IP_ADD_MEMBERSHIP or via more modern MCAST_JOIN_GROUP. * - * FUTURE: Implement IPv4 source-address selection. + * If the interface index was specified explicitly, just use it. If the + * address was specified (legacy), try to find matching interface. Else + * (index == 0 && no address) do a route lookup. If that fails for a modern + * MCAST_JOIN_GROUP return failure, for legacy IP_ADD_MEMBERSHIP find first + * multicast capable interface. */ static struct ifnet * -inp_lookup_mcast_ifp(const struct inpcb *inp, - const struct sockaddr_in *gsin, const struct in_addr ina) +inp_lookup_mcast_ifp(const struct inpcb *inp, const struct in_addr maddr, +const struct in_addr *ina, const u_int index) { struct ifnet *ifp; struct nhop_object *nh; NET_EPOCH_ASSERT(); - KASSERT(inp != NULL, ("%s: inp must not be NULL", __func__)); - KASSERT(gsin->sin_family == AF_INET, ("%s: not AF_INET", __func__)); - KASSERT(IN_MULTICAST(ntohl(gsin->sin_addr.s_addr)), - ("%s: not multicast", __func__)); - ifp = NULL; - if (!in_nullhost(ina)) { - INADDR_TO_IFP(ina, ifp); + if (index != 0) + return (ifnet_byindex_ref(index)); + + if (ina != NULL && !in_nullhost(*ina)) { + INADDR_TO_IFP(*ina, ifp); if (ifp != NULL) if_ref(ifp); - } else { - nh = fib4_lookup(inp->inp_inc.inc_fibnum, gsin->sin_addr, 0, NHR_NONE, 0); - if (nh != NULL) { - ifp = nh->nh_ifp; - if_ref(ifp); - } else { - struct in_ifaddr *ia; - struct ifnet *mifp; - - mifp = NULL; - CK_STAILQ_FOREACH(ia, &V_in_ifaddrhead, ia_link) { - mifp = ia->ia_ifp; - if (!(mifp->if_flags & IFF_LOOPBACK) && - (mifp->if_flags & IFF_MULTICAST)) { - ifp = mifp; - if_ref(ifp); - break; - } + return (ifp); + } + + nh = fib4_lookup(inp->inp_inc.inc_fibnum, maddr, 0, NHR_NONE, 0); + if (nh != NULL) { + ifp = nh->nh_ifp; + if_ref(ifp); + return (ifp); + } + + if (ina != NULL) { + struct in_ifaddr *ia; + + CK_STAILQ_FOREACH(ia, &V_in_ifaddrhead, ia_link) { + if (!(ia->ia_ifp->if_flags & IFF_LOOPBACK) && + (ia->ia_ifp->if_flags & IFF_MULTICAST)) { + ifp = ia->ia_ifp; + if_ref(ifp); + return (ifp); } } } - return (ifp); + return (NULL); } /* @@ -1926,13 +1909,13 @@ inp_join_group(struct inpcb *inp, struct sockopt *sopt) switch (sopt->sopt_name) { case IP_ADD_MEMBERSHIP: { struct ip_mreqn mreqn; + bool mreq; - if (sopt->sopt_valsize == sizeof(struct ip_mreqn)) - error = sooptcopyin(sopt, &mreqn, - sizeof(struct ip_mreqn), sizeof(struct ip_mreqn)); - else - error = sooptcopyin(sopt, &mreqn, - sizeof(struct ip_mreq), sizeof(struct ip_mreq)); + mreq = (sopt->sopt_valsize != sizeof(struct ip_mreqn)); + + error = sooptcopyin(sopt, &mreqn, + mreq ? sizeof(struct ip_mreq) : sizeof(struct ip_mreqn), + mreq ? sizeof(struct ip_mreq) : sizeof(struct ip_mreqn)); if (error) return (error); @@ -1943,12 +1926,9 @@ inp_join_group(struct inpcb *inp, struct sockopt *sopt) return (EINVAL); NET_EPOCH_ENTER(et); - if (sopt->sopt_valsize == sizeof(struct ip_mreqn) && - mreqn.imr_ifindex != 0) - ifp = ifnet_byindex_ref(mreqn.imr_ifindex); - else - ifp = inp_lookup_mcast_ifp(inp, &gsa->sin, - mreqn.imr_address); + ifp = inp_lookup_mcast_ifp(inp, mreqn.imr_multiaddr, + mreq ? &mreqn.imr_address : NULL, + mreq ? 0 : mreqn.imr_ifindex); NET_EPOCH_EXIT(et); break; } @@ -1971,8 +1951,8 @@ inp_join_group(struct inpcb *inp, struct sockopt *sopt) ssa->sin.sin_addr = mreqs.imr_sourceaddr; NET_EPOCH_ENTER(et); - ifp = inp_lookup_mcast_ifp(inp, &gsa->sin, - mreqs.imr_interface); + ifp = inp_lookup_mcast_ifp(inp, mreqs.imr_multiaddr, + &mreqs.imr_interface, 0); NET_EPOCH_EXIT(et); CTR3(KTR_IGMPV3, "%s: imr_interface = 0x%08x, ifp = %p", __func__, ntohl(mreqs.imr_interface.s_addr), ifp); @@ -2013,7 +1993,8 @@ inp_join_group(struct inpcb *inp, struct sockopt *sopt) return (EINVAL); NET_EPOCH_ENTER(et); - ifp = ifnet_byindex_ref(gsr.gsr_interface); + ifp = inp_lookup_mcast_ifp(inp, gsa->sin.sin_addr, NULL, + gsr.gsr_interface); NET_EPOCH_EXIT(et); if (ifp == NULL) return (EADDRNOTAVAIL); diff --git a/sys/netinet/in_pcb.c b/sys/netinet/in_pcb.c index dbe48242381d..712ff28768dc 100644 --- a/sys/netinet/in_pcb.c +++ b/sys/netinet/in_pcb.c @@ -2665,10 +2665,13 @@ in_pcbinshash(struct inpcb *inp) INP_PCBPORTHASH(inp->inp_lport, pcbinfo->ipi_porthashmask)]; /* - * Add entry to load balance group. - * Only do this if SO_REUSEPORT_LB is set. + * Ignore SO_REUSEPORT_LB if the socket is connected. Really this case + * should be an error, but for UDP sockets it is not, and some + * applications erroneously set it on connected UDP sockets, so we can't + * change this without breaking compatibility. */ - if ((inp->inp_socket->so_options & SO_REUSEPORT_LB) != 0) { + if (!connected && + (inp->inp_socket->so_options & SO_REUSEPORT_LB) != 0) { int error = in_pcbinslbgrouphash(inp, M_NODOM); if (error != 0) return (error); @@ -2770,6 +2773,10 @@ in_pcbrehash(struct inpcb *inp) connected = !in_nullhost(inp->inp_faddr); } + /* See the comment in in_pcbinshash(). */ + if (connected && (inp->inp_flags & INP_INLBGROUP) != 0) + in_pcbremlbgrouphash(inp); + /* * When rehashing, the caller must ensure that either the new or the old * foreign address was unspecified. diff --git a/sys/netinet/in_proto.c b/sys/netinet/in_proto.c index db46da6022c5..42a6cf0b5810 100644 --- a/sys/netinet/in_proto.c +++ b/sys/netinet/in_proto.c @@ -108,6 +108,8 @@ SYSCTL_NODE(_net_inet, IPPROTO_ICMP, icmp, CTLFLAG_RW | CTLFLAG_MPSAFE, 0, "ICMP"); SYSCTL_NODE(_net_inet, IPPROTO_UDP, udp, CTLFLAG_RW | CTLFLAG_MPSAFE, 0, "UDP"); +SYSCTL_NODE(_net_inet, IPPROTO_UDPLITE, udplite, CTLFLAG_RW | CTLFLAG_MPSAFE, 0, + "UDP-Lite"); SYSCTL_NODE(_net_inet, IPPROTO_TCP, tcp, CTLFLAG_RW | CTLFLAG_MPSAFE, 0, "TCP"); #if defined(SCTP) || defined(SCTP_SUPPORT) diff --git a/sys/netinet/libalias/alias_db.c b/sys/netinet/libalias/alias_db.c index c143d74a2f45..41f0a328daec 100644 --- a/sys/netinet/libalias/alias_db.c +++ b/sys/netinet/libalias/alias_db.c @@ -2181,7 +2181,7 @@ LibAliasInit(struct libalias *la) #undef malloc /* XXX: ugly */ la = malloc(sizeof *la, M_ALIAS, M_WAITOK | M_ZERO); #else - la = calloc(sizeof *la, 1); + la = calloc(1, sizeof *la); if (la == NULL) return (la); #endif diff --git a/sys/netinet/siftr.c b/sys/netinet/siftr.c index 374b5595fcbc..5b89ca026e85 100644 --- a/sys/netinet/siftr.c +++ b/sys/netinet/siftr.c @@ -519,7 +519,7 @@ siftr_pkt_manager_thread(void *arg) if (log_buf != NULL) { alq_post_flags(siftr_alq, log_buf, 0); } - for (;cnt > 0; cnt--) { + for (; cnt > 0; cnt--) { pkt_node = STAILQ_FIRST(&tmp_pkt_queue); STAILQ_REMOVE_HEAD(&tmp_pkt_queue, nodes); free(pkt_node, M_SIFTR_PKTNODE); diff --git a/sys/netinet/tcp_hpts_test.c b/sys/netinet/tcp_hpts_test.c index bab5827e0572..c5dc9cb5b03b 100644 --- a/sys/netinet/tcp_hpts_test.c +++ b/sys/netinet/tcp_hpts_test.c @@ -27,6 +27,7 @@ #include <tests/ktest.h> #include <sys/cdefs.h> +#include "opt_inet.h" #include <sys/param.h> #include <sys/bus.h> #include <sys/interrupt.h> @@ -119,6 +120,8 @@ SYSCTL_INT(_net_inet_tcp_hpts_test, OID_AUTO, exit_on_failure, CTLFLAG_RW, } \ } while (0) +#ifdef TCP_HPTS_KTEST + static void dump_hpts_entry(struct ktest_test_context *ctx, struct tcp_hpts_entry *hpts) { @@ -1658,5 +1661,22 @@ static const struct ktest_test_info tests[] = { KTEST_INFO(generation_count_validation), }; +#else /* TCP_HPTS_KTEST */ + +/* + * Stub to indicate that the TCP HPTS ktest is not enabled. + */ +KTEST_FUNC(module_load_without_tests) +{ + KTEST_LOG(ctx, "Warning: TCP HPTS ktest is not enabled"); + return (0); +} + +static const struct ktest_test_info tests[] = { + KTEST_INFO(module_load_without_tests), +}; + +#endif + KTEST_MODULE_DECLARE(ktest_tcphpts, tests); KTEST_MODULE_DEPEND(ktest_tcphpts, tcphpts); diff --git a/sys/netinet/tcp_input.c b/sys/netinet/tcp_input.c index dd27ec77c1af..2146b0cac48f 100644 --- a/sys/netinet/tcp_input.c +++ b/sys/netinet/tcp_input.c @@ -219,7 +219,7 @@ SYSCTL_INT(_net_inet_tcp, OID_AUTO, recvbuf_auto, CTLFLAG_VNET | CTLFLAG_RW, &VNET_NAME(tcp_do_autorcvbuf), 0, "Enable automatic receive buffer sizing"); -VNET_DEFINE(int, tcp_autorcvbuf_max) = 2*1024*1024; +VNET_DEFINE(int, tcp_autorcvbuf_max) = 8*1024*1024; SYSCTL_INT(_net_inet_tcp, OID_AUTO, recvbuf_max, CTLFLAG_VNET | CTLFLAG_RW, &VNET_NAME(tcp_autorcvbuf_max), 0, "Max size of automatic receive buffer"); diff --git a/sys/netinet/tcp_output.c b/sys/netinet/tcp_output.c index 2dfb7faf56e3..208f72c4661c 100644 --- a/sys/netinet/tcp_output.c +++ b/sys/netinet/tcp_output.c @@ -123,7 +123,7 @@ SYSCTL_INT(_net_inet_tcp, OID_AUTO, sendbuf_inc, CTLFLAG_VNET | CTLFLAG_RW, &VNET_NAME(tcp_autosndbuf_inc), 0, "Incrementor step size of automatic send buffer"); -VNET_DEFINE(int, tcp_autosndbuf_max) = 2*1024*1024; +VNET_DEFINE(int, tcp_autosndbuf_max) = 8*1024*1024; SYSCTL_INT(_net_inet_tcp, OID_AUTO, sendbuf_max, CTLFLAG_VNET | CTLFLAG_RW, &VNET_NAME(tcp_autosndbuf_max), 0, "Max size of automatic send buffer"); diff --git a/sys/netinet/tcp_stacks/bbr.c b/sys/netinet/tcp_stacks/bbr.c index 66983edcdd73..10383bc0801e 100644 --- a/sys/netinet/tcp_stacks/bbr.c +++ b/sys/netinet/tcp_stacks/bbr.c @@ -477,7 +477,7 @@ bbr_log_rtt_shrinks(struct tcp_bbr *bbr, uint32_t cts, uint32_t applied, uint16_t set); static struct bbr_sendmap * bbr_find_lowest_rsm(struct tcp_bbr *bbr); -static __inline uint32_t +static inline uint32_t bbr_get_rtt(struct tcp_bbr *bbr, int32_t rtt_type); static void bbr_log_to_start(struct tcp_bbr *bbr, uint32_t cts, uint32_t to, int32_t pacing_delay, @@ -1841,7 +1841,7 @@ bbr_counter_destroy(void) } -static __inline void +static inline void bbr_fill_in_logging_data(struct tcp_bbr *bbr, struct tcp_log_bbr *l, uint32_t cts) { memset(l, 0, sizeof(union tcp_log_stackspecific)); @@ -4206,7 +4206,7 @@ bbr_calc_thresh_tlp(struct tcpcb *tp, struct tcp_bbr *bbr, /* * Return one of three RTTs to use (in microseconds). */ -static __inline uint32_t +static inline uint32_t bbr_get_rtt(struct tcp_bbr *bbr, int32_t rtt_type) { uint32_t f_rtt; @@ -4370,7 +4370,7 @@ bbr_timeout_rack(struct tcpcb *tp, struct tcp_bbr *bbr, uint32_t cts) return (0); } -static __inline void +static inline void bbr_clone_rsm(struct tcp_bbr *bbr, struct bbr_sendmap *nrsm, struct bbr_sendmap *rsm, uint32_t start) { int idx; diff --git a/sys/netinet/tcp_stacks/rack.c b/sys/netinet/tcp_stacks/rack.c index c7962b57a69e..50077abdfd86 100644 --- a/sys/netinet/tcp_stacks/rack.c +++ b/sys/netinet/tcp_stacks/rack.c @@ -4730,7 +4730,7 @@ rack_make_timely_judgement(struct tcp_rack *rack, uint32_t rtt, int32_t rtt_diff return (timely_says); } -static __inline int +static inline int rack_in_gp_window(struct tcpcb *tp, struct rack_sendmap *rsm) { if (SEQ_GEQ(rsm->r_start, tp->gput_seq) && @@ -4767,7 +4767,7 @@ rack_in_gp_window(struct tcpcb *tp, struct rack_sendmap *rsm) return (0); } -static __inline void +static inline void rack_mark_in_gp_win(struct tcpcb *tp, struct rack_sendmap *rsm) { @@ -4784,7 +4784,7 @@ rack_mark_in_gp_win(struct tcpcb *tp, struct rack_sendmap *rsm) rsm->r_flags &= ~RACK_IN_GP_WIN; } -static __inline void +static inline void rack_clear_gp_marks(struct tcpcb *tp, struct tcp_rack *rack) { /* A GP measurement is ending, clear all marks on the send map*/ @@ -4802,7 +4802,7 @@ rack_clear_gp_marks(struct tcpcb *tp, struct tcp_rack *rack) } -static __inline void +static inline void rack_tend_gp_marks(struct tcpcb *tp, struct tcp_rack *rack) { struct rack_sendmap *rsm = NULL; @@ -6864,6 +6864,18 @@ rack_mark_lost(struct tcpcb *tp, } } +static inline void +rack_mark_nolonger_lost(struct tcp_rack *rack, struct rack_sendmap *rsm) +{ + KASSERT((rack->r_ctl.rc_considered_lost >= (rsm->r_end - rsm->r_start)), + ("rsm:%p rack:%p rc_considered_lost goes negative", rsm, rack)); + rsm->r_flags &= ~RACK_WAS_LOST; + if (rack->r_ctl.rc_considered_lost >= (rsm->r_end - rsm->r_start)) + rack->r_ctl.rc_considered_lost -= rsm->r_end - rsm->r_start; + else + rack->r_ctl.rc_considered_lost = 0; +} + /* * RACK Timer, here we simply do logging and house keeping. * the normal rack_output() function will call the @@ -7005,7 +7017,7 @@ rack_setup_offset_for_rsm(struct tcp_rack *rack, struct rack_sendmap *src_rsm, s rsm->orig_t_space = M_TRAILINGROOM(rsm->m); } -static __inline void +static inline void rack_clone_rsm(struct tcp_rack *rack, struct rack_sendmap *nrsm, struct rack_sendmap *rsm, uint32_t start) { @@ -8130,13 +8142,7 @@ rack_update_rsm(struct tcpcb *tp, struct tcp_rack *rack, * remove the lost desgination and reduce the * bytes considered lost. */ - rsm->r_flags &= ~RACK_WAS_LOST; - KASSERT((rack->r_ctl.rc_considered_lost >= (rsm->r_end - rsm->r_start)), - ("rsm:%p rack:%p rc_considered_lost goes negative", rsm, rack)); - if (rack->r_ctl.rc_considered_lost >= (rsm->r_end - rsm->r_start)) - rack->r_ctl.rc_considered_lost -= rsm->r_end - rsm->r_start; - else - rack->r_ctl.rc_considered_lost = 0; + rack_mark_nolonger_lost(rack, rsm); } idx = rsm->r_rtr_cnt - 1; rsm->r_tim_lastsent[idx] = ts; @@ -9492,6 +9498,11 @@ do_rest_ofb: if (rsm->r_flags & RACK_WAS_LOST) { int my_chg; + /* + * Note here we do not use our rack_mark_nolonger_lost() function + * since we are moving our data pointer around and the + * ack'ed side is already not considered lost. + */ my_chg = (nrsm->r_end - nrsm->r_start); KASSERT((rack->r_ctl.rc_considered_lost >= my_chg), ("rsm:%p rack:%p rc_considered_lost goes negative", rsm, rack)); @@ -9659,16 +9670,11 @@ do_rest_ofb: changed += (rsm->r_end - rsm->r_start); /* You get a count for acking a whole segment or more */ if (rsm->r_flags & RACK_WAS_LOST) { - int my_chg; - - my_chg = (rsm->r_end - rsm->r_start); - rsm->r_flags &= ~RACK_WAS_LOST; - KASSERT((rack->r_ctl.rc_considered_lost >= my_chg), - ("rsm:%p rack:%p rc_considered_lost goes negative", rsm, rack)); - if (my_chg <= rack->r_ctl.rc_considered_lost) - rack->r_ctl.rc_considered_lost -= my_chg; - else - rack->r_ctl.rc_considered_lost = 0; + /* + * Here we can use the inline function since + * the rsm is truly marked lost and now no longer lost. + */ + rack_mark_nolonger_lost(rack, rsm); } rack->r_ctl.rc_sacked += (rsm->r_end - rsm->r_start); if (rsm->r_in_tmap) /* should be true */ @@ -9851,6 +9857,10 @@ do_rest_ofb: if (rsm->r_flags & RACK_WAS_LOST) { int my_chg; + /* + * Note here we are using hookery again so we can't + * use our rack_mark_nolonger_lost() function. + */ my_chg = (nrsm->r_end - nrsm->r_start); KASSERT((rack->r_ctl.rc_considered_lost >= my_chg), ("rsm:%p rack:%p rc_considered_lost goes negative", rsm, rack)); @@ -9952,16 +9962,10 @@ do_rest_ofb: rack_update_rtt(tp, rack, rsm, to, cts, SACKED, 0); changed += (rsm->r_end - rsm->r_start); if (rsm->r_flags & RACK_WAS_LOST) { - int my_chg; - - my_chg = (rsm->r_end - rsm->r_start); - rsm->r_flags &= ~RACK_WAS_LOST; - KASSERT((rack->r_ctl.rc_considered_lost >= my_chg), - ("rsm:%p rack:%p rc_considered_lost goes negative", rsm, rack)); - if (my_chg <= rack->r_ctl.rc_considered_lost) - rack->r_ctl.rc_considered_lost -= my_chg; - else - rack->r_ctl.rc_considered_lost = 0; + /* + * Here it is safe to use our function. + */ + rack_mark_nolonger_lost(rack, rsm); } rack->r_ctl.rc_sacked += (rsm->r_end - rsm->r_start); @@ -10362,13 +10366,7 @@ more: * and yet before retransmitting we get an ack * which can happen due to reordering. */ - rsm->r_flags &= ~RACK_WAS_LOST; - KASSERT((rack->r_ctl.rc_considered_lost >= (rsm->r_end - rsm->r_start)), - ("rsm:%p rack:%p rc_considered_lost goes negative", rsm, rack)); - if (rack->r_ctl.rc_considered_lost >= (rsm->r_end - rsm->r_start)) - rack->r_ctl.rc_considered_lost -= rsm->r_end - rsm->r_start; - else - rack->r_ctl.rc_considered_lost = 0; + rack_mark_nolonger_lost(rack, rsm); } rack_log_map_chg(tp, rack, NULL, rsm, NULL, MAP_FREE, rsm->r_end, __LINE__); rack->r_ctl.rc_holes_rxt -= rsm->r_rtr_bytes; @@ -10476,12 +10474,7 @@ more: * which can happen due to reordering. In this * case its only a partial ack of the send. */ - KASSERT((rack->r_ctl.rc_considered_lost >= (th_ack - rsm->r_start)), - ("rsm:%p rack:%p rc_considered_lost goes negative th_ack:%u", rsm, rack, th_ack)); - if (rack->r_ctl.rc_considered_lost >= (th_ack - rsm->r_start)) - rack->r_ctl.rc_considered_lost -= th_ack - rsm->r_start; - else - rack->r_ctl.rc_considered_lost = 0; + rack_mark_nolonger_lost(rack, rsm); } /* * Clear the dup ack count for diff --git a/sys/netinet/tcp_subr.c b/sys/netinet/tcp_subr.c index c817c79881d6..b6f428b279b3 100644 --- a/sys/netinet/tcp_subr.c +++ b/sys/netinet/tcp_subr.c @@ -607,7 +607,7 @@ tcp_recv_udp_tunneled_packet(struct mbuf *m, int off, struct inpcb *inp, } } m->m_pkthdr.tcp_tun_port = port = uh->uh_sport; - bcopy(th, uh, m->m_len - off); + bcopy(th, uh, m->m_len - off - sizeof(struct udphdr)); m->m_len -= sizeof(struct udphdr); m->m_pkthdr.len -= sizeof(struct udphdr); /* diff --git a/sys/netinet/tcp_syncache.c b/sys/netinet/tcp_syncache.c index f842a5678fa1..3cb538f7054d 100644 --- a/sys/netinet/tcp_syncache.c +++ b/sys/netinet/tcp_syncache.c @@ -1046,6 +1046,8 @@ abort: * * On syncache_socket() success the newly created socket * has its underlying inp locked. + * + * *lsop is updated, if and only if 1 is returned. */ int syncache_expand(struct in_conninfo *inc, struct tcpopt *to, struct tcphdr *th, @@ -1094,12 +1096,14 @@ syncache_expand(struct in_conninfo *inc, struct tcpopt *to, struct tcphdr *th, */ SCH_UNLOCK(sch); TCPSTAT_INC(tcps_sc_spurcookie); - if ((s = tcp_log_addrs(inc, th, NULL, NULL))) + if ((s = tcp_log_addrs(inc, th, NULL, NULL))) { log(LOG_DEBUG, "%s; %s: Spurious ACK, " "segment rejected " "(syncookies disabled)\n", s, __func__); - goto failed; + free(s, M_TCPLOG); + } + return (0); } if (sch->sch_last_overflow < time_uptime - SYNCOOKIE_LIFETIME) { @@ -1109,12 +1113,14 @@ syncache_expand(struct in_conninfo *inc, struct tcpopt *to, struct tcphdr *th, */ SCH_UNLOCK(sch); TCPSTAT_INC(tcps_sc_spurcookie); - if ((s = tcp_log_addrs(inc, th, NULL, NULL))) + if ((s = tcp_log_addrs(inc, th, NULL, NULL))) { log(LOG_DEBUG, "%s; %s: Spurious ACK, " "segment rejected " "(no syncache entry)\n", s, __func__); - goto failed; + free(s, M_TCPLOG); + } + return (0); } SCH_UNLOCK(sch); } @@ -1128,11 +1134,13 @@ syncache_expand(struct in_conninfo *inc, struct tcpopt *to, struct tcphdr *th, TCPSTAT_INC(tcps_sc_recvcookie); } else { TCPSTAT_INC(tcps_sc_failcookie); - if ((s = tcp_log_addrs(inc, th, NULL, NULL))) + if ((s = tcp_log_addrs(inc, th, NULL, NULL))) { log(LOG_DEBUG, "%s; %s: Segment failed " "SYNCOOKIE authentication, segment rejected " "(probably spoofed)\n", s, __func__); - goto failed; + free(s, M_TCPLOG); + } + return (0); } #if defined(IPSEC_SUPPORT) || defined(TCP_SIGNATURE) /* If received ACK has MD5 signature, check it. */ @@ -1160,7 +1168,7 @@ syncache_expand(struct in_conninfo *inc, struct tcpopt *to, struct tcphdr *th, /* * If listening socket requested TCP digests, check that * received ACK has signature and it is correct. - * If not, drop the ACK and leave sc entry in th cache, + * If not, drop the ACK and leave sc entry in the cache, * because SYN was received with correct signature. */ if (sc->sc_flags & SCF_SIGNATURE) { @@ -1206,9 +1214,9 @@ syncache_expand(struct in_conninfo *inc, struct tcpopt *to, struct tcphdr *th, "%s; %s: SEG.TSval %u < TS.Recent %u, " "segment dropped\n", s, __func__, to->to_tsval, sc->sc_tsreflect); - free(s, M_TCPLOG); } SCH_UNLOCK(sch); + free(s, M_TCPLOG); return (-1); /* Do not send RST */ } @@ -1225,7 +1233,6 @@ syncache_expand(struct in_conninfo *inc, struct tcpopt *to, struct tcphdr *th, "expected, segment processed normally\n", s, __func__); free(s, M_TCPLOG); - s = NULL; } } @@ -1312,16 +1319,6 @@ syncache_expand(struct in_conninfo *inc, struct tcpopt *to, struct tcphdr *th, if (sc != &scs) syncache_free(sc); return (1); -failed: - if (sc != NULL) { - TCPSTATES_DEC(TCPS_SYN_RECEIVED); - if (sc != &scs) - syncache_free(sc); - } - if (s != NULL) - free(s, M_TCPLOG); - *lsop = NULL; - return (0); } static struct socket * diff --git a/sys/netinet/udp_usrreq.c b/sys/netinet/udp_usrreq.c index cea8a916679b..04d01099d54a 100644 --- a/sys/netinet/udp_usrreq.c +++ b/sys/netinet/udp_usrreq.c @@ -787,7 +787,8 @@ udplite_ctlinput(struct icmp *icmp) static int udp_pcblist(SYSCTL_HANDLER_ARGS) { - struct inpcb_iterator inpi = INP_ALL_ITERATOR(&V_udbinfo, + struct inpcbinfo *pcbinfo = udp_get_inpcbinfo(arg2); + struct inpcb_iterator inpi = INP_ALL_ITERATOR(pcbinfo, INPLOOKUP_RLOCKPCB); struct xinpgen xig; struct inpcb *inp; @@ -799,7 +800,7 @@ udp_pcblist(SYSCTL_HANDLER_ARGS) if (req->oldptr == 0) { int n; - n = V_udbinfo.ipi_count; + n = pcbinfo->ipi_count; n += imax(n / 8, 10); req->oldidx = 2 * (sizeof xig) + n * sizeof(struct xinpcb); return (0); @@ -810,8 +811,8 @@ udp_pcblist(SYSCTL_HANDLER_ARGS) bzero(&xig, sizeof(xig)); xig.xig_len = sizeof xig; - xig.xig_count = V_udbinfo.ipi_count; - xig.xig_gen = V_udbinfo.ipi_gencnt; + xig.xig_count = pcbinfo->ipi_count; + xig.xig_gen = pcbinfo->ipi_gencnt; xig.xig_sogen = so_gencnt; error = SYSCTL_OUT(req, &xig, sizeof xig); if (error) @@ -838,9 +839,9 @@ udp_pcblist(SYSCTL_HANDLER_ARGS) * that something happened while we were processing this * request, and it might be necessary to retry. */ - xig.xig_gen = V_udbinfo.ipi_gencnt; + xig.xig_gen = pcbinfo->ipi_gencnt; xig.xig_sogen = so_gencnt; - xig.xig_count = V_udbinfo.ipi_count; + xig.xig_count = pcbinfo->ipi_count; error = SYSCTL_OUT(req, &xig, sizeof xig); } @@ -848,10 +849,15 @@ udp_pcblist(SYSCTL_HANDLER_ARGS) } SYSCTL_PROC(_net_inet_udp, UDPCTL_PCBLIST, pcblist, - CTLTYPE_OPAQUE | CTLFLAG_RD | CTLFLAG_MPSAFE, NULL, 0, + CTLTYPE_OPAQUE | CTLFLAG_RD | CTLFLAG_MPSAFE, NULL, IPPROTO_UDP, udp_pcblist, "S,xinpcb", "List of active UDP sockets"); +SYSCTL_PROC(_net_inet_udplite, OID_AUTO, pcblist, + CTLTYPE_OPAQUE | CTLFLAG_RD | CTLFLAG_MPSAFE, NULL, IPPROTO_UDPLITE, + udp_pcblist, "S,xinpcb", + "List of active UDP-Lite sockets"); + #ifdef INET static int udp_getcred(SYSCTL_HANDLER_ARGS) diff --git a/sys/netinet/udp_var.h b/sys/netinet/udp_var.h index 3895f365db3c..3ae08fc0b8f0 100644 --- a/sys/netinet/udp_var.h +++ b/sys/netinet/udp_var.h @@ -147,6 +147,7 @@ void kmod_udpstat_inc(int statnum); } while (0) SYSCTL_DECL(_net_inet_udp); +SYSCTL_DECL(_net_inet_udplite); VNET_DECLARE(struct inpcbinfo, udbinfo); VNET_DECLARE(struct inpcbinfo, ulitecbinfo); diff --git a/sys/netpfil/ipfw/ip_dummynet.c b/sys/netpfil/ipfw/ip_dummynet.c index b3f52322425f..d522f9da0fbe 100644 --- a/sys/netpfil/ipfw/ip_dummynet.c +++ b/sys/netpfil/ipfw/ip_dummynet.c @@ -1150,7 +1150,7 @@ copy_data_helper(void *_o, void *_arg) return 0; /* not a pipe */ /* see if the object is within one of our ranges */ - for (;r < lim; r += 2) { + for (; r < lim; r += 2) { if (n < r[0] || n > r[1]) continue; /* Found a valid entry, copy and we are done */ @@ -1183,7 +1183,7 @@ copy_data_helper(void *_o, void *_arg) if (n >= DN_MAX_ID) return 0; /* see if the object is within one of our ranges */ - for (;r < lim; r += 2) { + for (; r < lim; r += 2) { if (n < r[0] || n > r[1]) continue; if (copy_flowset(a, fs, 0)) diff --git a/sys/netpfil/pf/pf.c b/sys/netpfil/pf/pf.c index d6fc24a23fe9..fd70fb1c8a36 100644 --- a/sys/netpfil/pf/pf.c +++ b/sys/netpfil/pf/pf.c @@ -5965,6 +5965,7 @@ pf_test_rule(struct pf_krule **rm, struct pf_kstate **sm, ctx.nat_pool = &(ctx.nr->rdr); } + *ctx.rm = &V_pf_default_rule; if (ctx.nr && ctx.nr->natpass) { r = ctx.nr; ruleset = *ctx.rsm; diff --git a/sys/netpfil/pf/pf_lb.c b/sys/netpfil/pf/pf_lb.c index fb1b121d0bc0..5d85e16f18e3 100644 --- a/sys/netpfil/pf/pf_lb.c +++ b/sys/netpfil/pf/pf_lb.c @@ -216,6 +216,7 @@ pf_match_translation_rule(int rs_num, struct pf_test_ctx *ctx, struct pf_krulese */ ctx->arsm = ctx->aruleset; } + break; } else { ctx->a = r; /* remember anchor */ ctx->aruleset = ruleset; /* and its ruleset */ diff --git a/sys/powerpc/powerpc/elf32_machdep.c b/sys/powerpc/powerpc/elf32_machdep.c index e1118713bff0..6b904c02ea15 100644 --- a/sys/powerpc/powerpc/elf32_machdep.c +++ b/sys/powerpc/powerpc/elf32_machdep.c @@ -143,7 +143,7 @@ struct sysentvec elf32_freebsd_sysvec = { }; INIT_SYSENTVEC(elf32_sysvec, &elf32_freebsd_sysvec); -static Elf32_Brandinfo freebsd_brand_info = { +static const Elf32_Brandinfo freebsd_brand_info = { .brand = ELFOSABI_FREEBSD, .machine = EM_PPC, .compat_3_brand = "FreeBSD", @@ -158,11 +158,11 @@ static Elf32_Brandinfo freebsd_brand_info = { .flags = BI_CAN_EXEC_DYN | BI_BRAND_NOTE }; -SYSINIT(elf32, SI_SUB_EXEC, SI_ORDER_FIRST, +C_SYSINIT(elf32, SI_SUB_EXEC, SI_ORDER_FIRST, (sysinit_cfunc_t) elf32_insert_brand_entry, &freebsd_brand_info); -static Elf32_Brandinfo freebsd_brand_oinfo = { +static const Elf32_Brandinfo freebsd_brand_oinfo = { .brand = ELFOSABI_FREEBSD, .machine = EM_PPC, .compat_3_brand = "FreeBSD", @@ -173,7 +173,7 @@ static Elf32_Brandinfo freebsd_brand_oinfo = { .flags = BI_CAN_EXEC_DYN | BI_BRAND_NOTE }; -SYSINIT(oelf32, SI_SUB_EXEC, SI_ORDER_ANY, +C_SYSINIT(oelf32, SI_SUB_EXEC, SI_ORDER_ANY, (sysinit_cfunc_t) elf32_insert_brand_entry, &freebsd_brand_oinfo); diff --git a/sys/powerpc/powerpc/elf64_machdep.c b/sys/powerpc/powerpc/elf64_machdep.c index a999f742caeb..0be40bed69cb 100644 --- a/sys/powerpc/powerpc/elf64_machdep.c +++ b/sys/powerpc/powerpc/elf64_machdep.c @@ -154,7 +154,7 @@ static bool ppc64_elfv1_header_match(const struct image_params *params, static bool ppc64_elfv2_header_match(const struct image_params *params, const int32_t *, const uint32_t *); -static Elf64_Brandinfo freebsd_brand_info_elfv1 = { +static const Elf64_Brandinfo freebsd_brand_info_elfv1 = { .brand = ELFOSABI_FREEBSD, .machine = EM_PPC64, .compat_3_brand = "FreeBSD", @@ -166,11 +166,11 @@ static Elf64_Brandinfo freebsd_brand_info_elfv1 = { .header_supported = &ppc64_elfv1_header_match }; -SYSINIT(elf64v1, SI_SUB_EXEC, SI_ORDER_ANY, +C_SYSINIT(elf64v1, SI_SUB_EXEC, SI_ORDER_ANY, (sysinit_cfunc_t) elf64_insert_brand_entry, &freebsd_brand_info_elfv1); -static Elf64_Brandinfo freebsd_brand_info_elfv2 = { +static const Elf64_Brandinfo freebsd_brand_info_elfv2 = { .brand = ELFOSABI_FREEBSD, .machine = EM_PPC64, .compat_3_brand = "FreeBSD", @@ -182,11 +182,11 @@ static Elf64_Brandinfo freebsd_brand_info_elfv2 = { .header_supported = &ppc64_elfv2_header_match }; -SYSINIT(elf64v2, SI_SUB_EXEC, SI_ORDER_ANY, +C_SYSINIT(elf64v2, SI_SUB_EXEC, SI_ORDER_ANY, (sysinit_cfunc_t) elf64_insert_brand_entry, &freebsd_brand_info_elfv2); -static Elf64_Brandinfo freebsd_brand_oinfo = { +static const Elf64_Brandinfo freebsd_brand_oinfo = { .brand = ELFOSABI_FREEBSD, .machine = EM_PPC64, .compat_3_brand = "FreeBSD", @@ -198,7 +198,7 @@ static Elf64_Brandinfo freebsd_brand_oinfo = { .header_supported = &ppc64_elfv1_header_match }; -SYSINIT(oelf64, SI_SUB_EXEC, SI_ORDER_ANY, +C_SYSINIT(oelf64, SI_SUB_EXEC, SI_ORDER_ANY, (sysinit_cfunc_t) elf64_insert_brand_entry, &freebsd_brand_oinfo); diff --git a/sys/riscv/conf/std.allwinner b/sys/riscv/conf/std.allwinner index 34fe195b01ba..ecd789f39963 100644 --- a/sys/riscv/conf/std.allwinner +++ b/sys/riscv/conf/std.allwinner @@ -17,4 +17,7 @@ device awg # Allwinner EMAC Gigabit Ethernet device musb # Mentor Graphics USB OTG controller +# DTBs +makeoptions MODULES_EXTRA+="dtb/allwinner" + files "../allwinner/files.allwinner" diff --git a/sys/riscv/conf/std.starfive b/sys/riscv/conf/std.starfive index 9bdb1af9e79c..6a0e56cc84bd 100644 --- a/sys/riscv/conf/std.starfive +++ b/sys/riscv/conf/std.starfive @@ -10,4 +10,7 @@ device eqos device dwmmc device dwmmc_starfive +# DTBs +makeoptions MODULES_EXTRA+="dtb/starfive" + files "../starfive/files.starfive" diff --git a/sys/riscv/include/vmm.h b/sys/riscv/include/vmm.h index bc00474ed0fd..e227dd825966 100644 --- a/sys/riscv/include/vmm.h +++ b/sys/riscv/include/vmm.h @@ -149,7 +149,7 @@ DECLARE_VMMOPS_FUNC(void, vmspace_free, (struct vmspace *vmspace)); int vm_create(const char *name, struct vm **retvm); struct vcpu *vm_alloc_vcpu(struct vm *vm, int vcpuid); void vm_disable_vcpu_creation(struct vm *vm); -void vm_slock_vcpus(struct vm *vm); +void vm_lock_vcpus(struct vm *vm); void vm_unlock_vcpus(struct vm *vm); void vm_destroy(struct vm *vm); int vm_reinit(struct vm *vm); diff --git a/sys/riscv/riscv/elf_machdep.c b/sys/riscv/riscv/elf_machdep.c index 67b1fcc4c1a9..5bd4af4c15f8 100644 --- a/sys/riscv/riscv/elf_machdep.c +++ b/sys/riscv/riscv/elf_machdep.c @@ -100,7 +100,7 @@ static struct sysentvec elf64_freebsd_sysvec = { }; INIT_SYSENTVEC(elf64_sysvec, &elf64_freebsd_sysvec); -static Elf64_Brandinfo freebsd_brand_info = { +static const Elf64_Brandinfo freebsd_brand_info = { .brand = ELFOSABI_FREEBSD, .machine = EM_RISCV, .compat_3_brand = "FreeBSD", @@ -110,7 +110,7 @@ static Elf64_Brandinfo freebsd_brand_info = { .brand_note = &elf64_freebsd_brandnote, .flags = BI_CAN_EXEC_DYN | BI_BRAND_NOTE }; -SYSINIT(elf64, SI_SUB_EXEC, SI_ORDER_FIRST, +C_SYSINIT(elf64, SI_SUB_EXEC, SI_ORDER_FIRST, (sysinit_cfunc_t)elf64_insert_brand_entry, &freebsd_brand_info); static void diff --git a/sys/riscv/vmm/vmm.c b/sys/riscv/vmm/vmm.c index 790dcc576507..24b4be89af48 100644 --- a/sys/riscv/vmm/vmm.c +++ b/sys/riscv/vmm/vmm.c @@ -346,9 +346,9 @@ vm_alloc_vcpu(struct vm *vm, int vcpuid) } void -vm_slock_vcpus(struct vm *vm) +vm_lock_vcpus(struct vm *vm) { - sx_slock(&vm->vcpus_init_lock); + sx_xlock(&vm->vcpus_init_lock); } void @@ -954,8 +954,7 @@ vcpu_get_state(struct vcpu *vcpu, int *hostcpu) int vm_get_register(struct vcpu *vcpu, int reg, uint64_t *retval) { - - if (reg >= VM_REG_LAST) + if (reg < 0 || reg >= VM_REG_LAST) return (EINVAL); return (vmmops_getreg(vcpu->cookie, reg, retval)); @@ -966,7 +965,7 @@ vm_set_register(struct vcpu *vcpu, int reg, uint64_t val) { int error; - if (reg >= VM_REG_LAST) + if (reg < 0 || reg >= VM_REG_LAST) return (EINVAL); error = vmmops_setreg(vcpu->cookie, reg, val); if (error || reg != VM_REG_GUEST_SEPC) diff --git a/sys/riscv/vmm/vmm_dev_machdep.c b/sys/riscv/vmm/vmm_dev_machdep.c index ba15d8dcd79e..c736b10dc9c0 100644 --- a/sys/riscv/vmm/vmm_dev_machdep.c +++ b/sys/riscv/vmm/vmm_dev_machdep.c @@ -67,18 +67,13 @@ int vmmdev_machdep_ioctl(struct vm *vm, struct vcpu *vcpu, u_long cmd, caddr_t data, int fflag, struct thread *td) { - struct vm_run *vmrun; - struct vm_aplic_descr *aplic; - struct vm_irq *vi; - struct vm_exception *vmexc; - struct vm_gla2gpa *gg; - struct vm_msi *vmsi; int error; error = 0; switch (cmd) { case VM_RUN: { struct vm_exit *vme; + struct vm_run *vmrun; vmrun = (struct vm_run *)data; vme = vm_exitinfo(vcpu); @@ -90,34 +85,52 @@ vmmdev_machdep_ioctl(struct vm *vm, struct vcpu *vcpu, u_long cmd, caddr_t data, error = copyout(vme, vmrun->vm_exit, sizeof(*vme)); break; } - case VM_INJECT_EXCEPTION: + case VM_INJECT_EXCEPTION: { + struct vm_exception *vmexc; + vmexc = (struct vm_exception *)data; error = vm_inject_exception(vcpu, vmexc->scause); break; - case VM_GLA2GPA_NOFAULT: + } + case VM_GLA2GPA_NOFAULT: { + struct vm_gla2gpa *gg; + gg = (struct vm_gla2gpa *)data; error = vm_gla2gpa_nofault(vcpu, &gg->paging, gg->gla, gg->prot, &gg->gpa, &gg->fault); KASSERT(error == 0 || error == EFAULT, ("%s: vm_gla2gpa unknown error %d", __func__, error)); break; - case VM_ATTACH_APLIC: + } + case VM_ATTACH_APLIC: { + struct vm_aplic_descr *aplic; + aplic = (struct vm_aplic_descr *)data; error = vm_attach_aplic(vm, aplic); break; - case VM_RAISE_MSI: + } + case VM_RAISE_MSI: { + struct vm_msi *vmsi; + vmsi = (struct vm_msi *)data; error = vm_raise_msi(vm, vmsi->msg, vmsi->addr, vmsi->bus, vmsi->slot, vmsi->func); break; - case VM_ASSERT_IRQ: + } + case VM_ASSERT_IRQ: { + struct vm_irq *vi; + vi = (struct vm_irq *)data; error = vm_assert_irq(vm, vi->irq); break; - case VM_DEASSERT_IRQ: + } + case VM_DEASSERT_IRQ: { + struct vm_irq *vi; + vi = (struct vm_irq *)data; error = vm_deassert_irq(vm, vi->irq); break; + } default: error = ENOTTY; break; diff --git a/sys/security/audit/audit_pipe.c b/sys/security/audit/audit_pipe.c index fb773fd04297..4d9815467e1a 100644 --- a/sys/security/audit/audit_pipe.c +++ b/sys/security/audit/audit_pipe.c @@ -243,6 +243,7 @@ static const struct filterops audit_pipe_read_filterops = { .f_attach = NULL, .f_detach = audit_pipe_kqdetach, .f_event = audit_pipe_kqread, + .f_copy = knote_triv_copy, }; /* diff --git a/sys/sys/ata.h b/sys/sys/ata.h index 5e9c2bcb9aa0..9ce822214f6d 100644 --- a/sys/sys/ata.h +++ b/sys/sys/ata.h @@ -347,8 +347,11 @@ struct ata_params { #define ATA_STATUS_BUSY 0x80 /* ATA Error Register */ +/* COMMAND TIMEOUT 0x01 */ #define ATA_ERROR_ABORT 0x04 #define ATA_ERROR_ID_NOT_FOUND 0x10 +/* UNCORRECTABLE ERROR 0x40 */ +/* INTERFACE CRC 0x80 */ /* ATA HPA Features */ #define ATA_HPA_FEAT_MAX_ADDR 0x00 diff --git a/sys/sys/event.h b/sys/sys/event.h index 084eaafcbdc0..ebbcdb703183 100644 --- a/sys/sys/event.h +++ b/sys/sys/event.h @@ -228,6 +228,7 @@ struct freebsd11_kevent32 { /* Flags for kqueuex(2) */ #define KQUEUE_CLOEXEC 0x00000001 /* close on exec */ +#define KQUEUE_CPONFORK 0x00000002 /* copy on fork */ struct knote; SLIST_HEAD(klist, knote); @@ -283,6 +284,7 @@ struct filterops { void (*f_touch)(struct knote *kn, struct kevent *kev, u_long type); int (*f_userdump)(struct proc *p, struct knote *kn, struct kinfo_knote *kin); + int (*f_copy)(struct knote *kn, struct proc *p1); }; /* @@ -346,6 +348,7 @@ struct rwlock; void knote(struct knlist *list, long hint, int lockflags); void knote_fork(struct knlist *list, int pid); +int knote_triv_copy(struct knote *kn, struct proc *p1); struct knlist *knlist_alloc(struct mtx *lock); void knlist_detach(struct knlist *knl); void knlist_add(struct knlist *knl, struct knote *kn, int islocked); diff --git a/sys/sys/eventvar.h b/sys/sys/eventvar.h index 7fec444447f9..7cb3269f1fdf 100644 --- a/sys/sys/eventvar.h +++ b/sys/sys/eventvar.h @@ -55,12 +55,14 @@ struct kqueue { #define KQ_CLOSING 0x10 #define KQ_TASKSCHED 0x20 /* task scheduled */ #define KQ_TASKDRAIN 0x40 /* waiting for task to drain */ +#define KQ_CPONFORK 0x80 int kq_knlistsize; /* size of knlist */ struct klist *kq_knlist; /* list of knotes */ u_long kq_knhashmask; /* size of knhash */ struct klist *kq_knhash; /* hash table for knotes */ struct task kq_task; struct ucred *kq_cred; + struct kqueue *kq_forksrc; }; #endif /* !_SYS_EVENTVAR_H_ */ diff --git a/sys/sys/file.h b/sys/sys/file.h index c44fd0f28929..e0195c7c6c2a 100644 --- a/sys/sys/file.h +++ b/sys/sys/file.h @@ -139,6 +139,8 @@ typedef int fo_fspacectl_t(struct file *fp, int cmd, off_t *offset, off_t *length, int flags, struct ucred *active_cred, struct thread *td); typedef int fo_cmp_t(struct file *fp, struct file *fp1, struct thread *td); +typedef int fo_fork_t(struct filedesc *fdp, struct file *fp, struct file **fp1, + struct proc *p1, struct thread *td); typedef int fo_spare_t(struct file *fp); typedef int fo_flags_t; @@ -163,12 +165,14 @@ struct fileops { fo_fallocate_t *fo_fallocate; fo_fspacectl_t *fo_fspacectl; fo_cmp_t *fo_cmp; + fo_fork_t *fo_fork; fo_spare_t *fo_spares[8]; /* Spare slots */ fo_flags_t fo_flags; /* DFLAG_* below */ }; #define DFLAG_PASSABLE 0x01 /* may be passed via unix sockets. */ #define DFLAG_SEEKABLE 0x02 /* seekable / nonsequential */ +#define DFLAG_FORK 0x04 /* copy on fork */ #endif /* _KERNEL */ #if defined(_KERNEL) || defined(_WANT_FILE) diff --git a/sys/sys/filedesc.h b/sys/sys/filedesc.h index 0a388c90de26..4817855443af 100644 --- a/sys/sys/filedesc.h +++ b/sys/sys/filedesc.h @@ -265,7 +265,7 @@ int fdcheckstd(struct thread *td); void fdclose(struct thread *td, struct file *fp, int idx); void fdcloseexec(struct thread *td); void fdsetugidsafety(struct thread *td); -struct filedesc *fdcopy(struct filedesc *fdp); +struct filedesc *fdcopy(struct filedesc *fdp, struct proc *p1); void fdunshare(struct thread *td); void fdescfree(struct thread *td); int fdlastfile(struct filedesc *fdp); diff --git a/sys/sys/imgact_elf.h b/sys/sys/imgact_elf.h index 9e2a233248b4..25ce7871ba7c 100644 --- a/sys/sys/imgact_elf.h +++ b/sys/sys/imgact_elf.h @@ -87,7 +87,7 @@ typedef struct { const char *interp_newpath; int flags; const Elf_Brandnote *brand_note; - bool (*header_supported)(const struct image_params *, + bool (*const header_supported)(const struct image_params *, const int32_t *, const uint32_t *); /* High 8 bits of flags is private to the ABI */ #define BI_CAN_EXEC_DYN 0x0001 @@ -132,8 +132,8 @@ bool __elfN(parse_notes)(const struct image_params *, const Elf_Note *, void __elfN(dump_thread)(struct thread *, void *, size_t *); extern int __elfN(fallback_brand); -extern Elf_Brandnote __elfN(freebsd_brandnote); -extern Elf_Brandnote __elfN(kfreebsd_brandnote); +extern const Elf_Brandnote __elfN(freebsd_brandnote); +extern const Elf_Brandnote __elfN(kfreebsd_brandnote); #endif /* _KERNEL */ #endif /* !_SYS_IMGACT_ELF_H_ */ diff --git a/sys/sys/param.h b/sys/sys/param.h index 8a71693cff3d..7cfa3c6aa4a8 100644 --- a/sys/sys/param.h +++ b/sys/sys/param.h @@ -74,7 +74,7 @@ * cannot include sys/param.h and should only be updated here. */ #undef __FreeBSD_version -#define __FreeBSD_version 1600001 +#define __FreeBSD_version 1600002 /* * __FreeBSD_kernel__ indicates that this system uses the kernel of FreeBSD, diff --git a/sys/sys/random.h b/sys/sys/random.h index 2a68f0c99b6d..af6b1e117423 100644 --- a/sys/sys/random.h +++ b/sys/sys/random.h @@ -89,11 +89,11 @@ enum random_entropy_source { RANDOM_ENVIRONMENTAL_END = RANDOM_RANDOMDEV, /* Fast hardware random-number sources from here on. */ RANDOM_PURE_START, - RANDOM_PURE_OCTEON = RANDOM_PURE_START, - RANDOM_PURE_SAFE, + RANDOM_PURE_SAFE = RANDOM_PURE_START, RANDOM_PURE_GLXSB, RANDOM_PURE_HIFN, RANDOM_PURE_RDRAND, + RANDOM_PURE_RDSEED, RANDOM_PURE_NEHEMIAH, RANDOM_PURE_RNDTEST, RANDOM_PURE_VIRTIO, diff --git a/sys/sys/sockbuf.h b/sys/sys/sockbuf.h index b4593f38f592..739723754b7d 100644 --- a/sys/sys/sockbuf.h +++ b/sys/sys/sockbuf.h @@ -62,7 +62,7 @@ #include <sys/_sx.h> #include <sys/_task.h> -#define SB_MAX (2*1024*1024) /* default for max chars in sockbuf */ +#define SB_MAX (8*1024*1024) /* default for max chars in sockbuf */ struct ktls_session; struct mbuf; diff --git a/sys/sys/sockopt.h b/sys/sys/sockopt.h index bfe12d8510d7..d2b0ff5ed2c8 100644 --- a/sys/sys/sockopt.h +++ b/sys/sys/sockopt.h @@ -57,8 +57,10 @@ struct sockopt { int sosetopt(struct socket *so, struct sockopt *sopt); int sogetopt(struct socket *so, struct sockopt *sopt); -int sooptcopyin(struct sockopt *sopt, void *buf, size_t len, size_t minlen); -int sooptcopyout(struct sockopt *sopt, const void *buf, size_t len); +int __result_use_check sooptcopyin(struct sockopt *sopt, void *buf, size_t len, + size_t minlen); +int __result_use_check sooptcopyout(struct sockopt *sopt, const void *buf, + size_t len); int soopt_getm(struct sockopt *sopt, struct mbuf **mp); int soopt_mcopyin(struct sockopt *sopt, struct mbuf *m); int soopt_mcopyout(struct sockopt *sopt, struct mbuf *m); diff --git a/sys/sys/syscallsubr.h b/sys/sys/syscallsubr.h index 8237165b84ce..d32690634059 100644 --- a/sys/sys/syscallsubr.h +++ b/sys/sys/syscallsubr.h @@ -211,7 +211,8 @@ int kern_kevent_fp(struct thread *td, struct file *fp, int nchanges, int nevents, struct kevent_copyops *k_ops, const struct timespec *timeout); int kern_kill(struct thread *td, pid_t pid, int signum); -int kern_kqueue(struct thread *td, int flags, struct filecaps *fcaps); +int kern_kqueue(struct thread *td, int flags, bool cponfork, + struct filecaps *fcaps); int kern_kldload(struct thread *td, const char *file, int *fileid); int kern_kldstat(struct thread *td, int fileid, struct kld_file_stat *stat); int kern_kldunload(struct thread *td, int fileid, int flags); diff --git a/sys/vm/vm_domainset.c b/sys/vm/vm_domainset.c index 9fa17da954f7..c25ed0cc2267 100644 --- a/sys/vm/vm_domainset.c +++ b/sys/vm/vm_domainset.c @@ -113,7 +113,6 @@ vm_domainset_iter_interleave(struct vm_domainset_iter *di, int *domain) int d; d = di->di_offset % di->di_domain->ds_cnt; - *di->di_iter = d; *domain = di->di_domain->ds_order[d]; } @@ -260,9 +259,14 @@ vm_domainset_iter_page_init(struct vm_domainset_iter *di, struct vm_object *obj, * are immutable and unsynchronized. Updates can race but pointer * loads are assumed to be atomic. */ - if (obj != NULL && obj->domain.dr_policy != NULL) + if (obj != NULL && obj->domain.dr_policy != NULL) { + /* + * This write lock protects non-atomic increments of the + * iterator index in vm_domainset_iter_rr(). + */ + VM_OBJECT_ASSERT_WLOCKED(obj); dr = &obj->domain; - else + } else dr = &curthread->td_domain; vm_domainset_iter_init(di, dr->dr_policy, &dr->dr_iter, obj, pindex); diff --git a/sys/vm/vm_glue.c b/sys/vm/vm_glue.c index e0f1807a1b32..18d789c59281 100644 --- a/sys/vm/vm_glue.c +++ b/sys/vm/vm_glue.c @@ -441,19 +441,16 @@ vm_thread_kstack_arena_release(void *arena, vmem_addr_t addr, vmem_size_t size) * Create the kernel stack for a new thread. */ static vm_offset_t -vm_thread_stack_create(struct domainset *ds, int pages) +vm_thread_stack_create(struct domainset *ds, int pages, int flags) { vm_page_t ma[KSTACK_MAX_PAGES]; struct vm_domainset_iter di; - int req = VM_ALLOC_NORMAL; - vm_object_t obj; + int req; vm_offset_t ks; int domain, i; - obj = vm_thread_kstack_size_to_obj(pages); - if (vm_ndomains > 1) - obj->domain.dr_policy = ds; - vm_domainset_iter_page_init(&di, obj, 0, &domain, &req); + vm_domainset_iter_policy_init(&di, ds, &domain, &flags); + req = malloc2vm_flags(flags); do { /* * Get a kernel virtual address for this thread's kstack. @@ -480,7 +477,7 @@ vm_thread_stack_create(struct domainset *ds, int pages) vm_page_valid(ma[i]); pmap_qenter(ks, ma, pages); return (ks); - } while (vm_domainset_iter_page(&di, obj, &domain, NULL) == 0); + } while (vm_domainset_iter_policy(&di, &domain) == 0); return (0); } @@ -532,15 +529,9 @@ vm_thread_new(struct thread *td, int pages) ks = 0; if (pages == kstack_pages && kstack_cache != NULL) ks = (vm_offset_t)uma_zalloc(kstack_cache, M_NOWAIT); - - /* - * Ensure that kstack objects can draw pages from any memory - * domain. Otherwise a local memory shortage can block a process - * swap-in. - */ if (ks == 0) ks = vm_thread_stack_create(DOMAINSET_PREF(PCPU_GET(domain)), - pages); + pages, M_NOWAIT); if (ks == 0) return (0); @@ -660,7 +651,8 @@ kstack_import(void *arg, void **store, int cnt, int domain, int flags) ds = DOMAINSET_PREF(domain); for (i = 0; i < cnt; i++) { - store[i] = (void *)vm_thread_stack_create(ds, kstack_pages); + store[i] = (void *)vm_thread_stack_create(ds, kstack_pages, + flags); if (store[i] == NULL) break; } diff --git a/sys/x86/acpica/acpi_apm.c b/sys/x86/acpica/acpi_apm.c index 8e5785cf0ed6..919f76949dd4 100644 --- a/sys/x86/acpica/acpi_apm.c +++ b/sys/x86/acpica/acpi_apm.c @@ -64,6 +64,7 @@ static const struct filterops apm_readfiltops = { .f_isfd = 1, .f_detach = apmreadfiltdetach, .f_event = apmreadfilt, + .f_copy = knote_triv_copy, }; static struct cdevsw apm_cdevsw = { diff --git a/sys/x86/iommu/amd_intrmap.c b/sys/x86/iommu/amd_intrmap.c index f8900fe0561f..cce4f57ca323 100644 --- a/sys/x86/iommu/amd_intrmap.c +++ b/sys/x86/iommu/amd_intrmap.c @@ -223,9 +223,9 @@ static struct amdiommu_ctx * amdiommu_ir_find(device_t src, uint16_t *ridp, bool *is_iommu) { devclass_t src_class; - device_t requester; struct amdiommu_unit *unit; struct amdiommu_ctx *ctx; + struct iommu_ctx *ioctx; uint32_t edte; uint16_t rid; uint8_t dte; @@ -255,10 +255,9 @@ amdiommu_ir_find(device_t src, uint16_t *ridp, bool *is_iommu) error = amdiommu_find_unit(src, &unit, &rid, &dte, &edte, bootverbose); if (error == 0) { - error = iommu_get_requester(src, &requester, &rid); - MPASS(error == 0); - ctx = amdiommu_get_ctx_for_dev(unit, src, - rid, 0, false /* XXXKIB */, false, dte, edte); + ioctx = iommu_instantiate_ctx(AMD2IOMMU(unit), src, false); + if (ioctx != NULL) + ctx = IOCTX2CTX(ioctx); } } if (ridp != NULL) diff --git a/tests/sys/geom/class/Makefile b/tests/sys/geom/class/Makefile index 3cf3a15273ac..c58ebc0f72a0 100644 --- a/tests/sys/geom/class/Makefile +++ b/tests/sys/geom/class/Makefile @@ -9,6 +9,7 @@ TESTS_SUBDIRS+= concat TESTS_SUBDIRS+= eli .endif TESTS_SUBDIRS+= gate +TESTS_SUBDIRS+= label TESTS_SUBDIRS+= mirror TESTS_SUBDIRS+= multipath TESTS_SUBDIRS+= nop diff --git a/tests/sys/geom/class/label/Makefile b/tests/sys/geom/class/label/Makefile new file mode 100644 index 000000000000..d0072a52c47c --- /dev/null +++ b/tests/sys/geom/class/label/Makefile @@ -0,0 +1,7 @@ +PACKAGE= tests + +TESTSDIR= ${TESTSBASE}/sys/geom/class/${.CURDIR:T} + +ATF_TESTS_SH+= basic + +.include <bsd.test.mk> diff --git a/tests/sys/geom/class/label/basic.sh b/tests/sys/geom/class/label/basic.sh new file mode 100755 index 000000000000..b67b41567c02 --- /dev/null +++ b/tests/sys/geom/class/label/basic.sh @@ -0,0 +1,59 @@ +#!/bin/sh +# +# SPDX-License-Identifier: BSD-2-Clause-FreeBSD +# +# Copyright (c) 2025 Brad Davis +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +# SUCH DAMAGE. +# + +class=label +. $(atf_get_srcdir)/../geom_subr.sh + +atf_test_case create cleanup +create_head() +{ + atf_set "descr" "Create and verify GEOM labels" + atf_set "require.user" "root" +} +create_body() +{ + geom_atf_test_setup + + f1=$(mktemp ${class}.XXXXXX) + atf_check truncate -s 32M "$f1" + attach_md md -t vnode -f "$f1" + + atf_check -s exit:0 -o match:"^Done." glabel create -v test "/dev/$md" + atf_check -s exit:0 -o match:"^label/test N/A $md$" glabel status "/dev/$md" + atf_check -s exit:0 -o match:"^/dev/label/test$" ls /dev/label/test + atf_check -s exit:0 glabel stop test +} +create_cleanup() +{ + geom_test_cleanup +} + +atf_init_test_cases() +{ + atf_add_test_case create +} diff --git a/tests/sys/netinet/carp.sh b/tests/sys/netinet/carp.sh index 2aae2854826e..568d2beaf914 100755 --- a/tests/sys/netinet/carp.sh +++ b/tests/sys/netinet/carp.sh @@ -215,6 +215,9 @@ unicast_v4_body() unicast_v4_cleanup() { + jexec carp_uni_v4_one killall routed + jexec carp_uni_v4_two killall routed + jexec carp_uni_v4_three killall routed vnet_cleanup } diff --git a/tests/sys/netinet/multicast-receive.c b/tests/sys/netinet/multicast-receive.c index 81d0f10f5cfe..62fc68200dd6 100644 --- a/tests/sys/netinet/multicast-receive.c +++ b/tests/sys/netinet/multicast-receive.c @@ -36,6 +36,7 @@ #include <stdio.h> #include <stdlib.h> #include <string.h> +#include <sysexits.h> #include <limits.h> #include <err.h> @@ -93,8 +94,9 @@ usage: .imr_multiaddr = maddr, .imr_interface = ifaddr, }; - assert(setsockopt(s, IPPROTO_IP, IP_ADD_MEMBERSHIP, &mreq, - sizeof(mreq)) == 0); + if (setsockopt(s, IPPROTO_IP, IP_ADD_MEMBERSHIP, &mreq, + sizeof(mreq)) != 0) + err(EX_OSERR, "setsockopt"); } else if (strcmp(argv[1], "ip_mreqn") == 0) { /* * ip_mreqn shall be used with index, but for testing @@ -105,8 +107,9 @@ usage: .imr_address = index ? (struct in_addr){ 0 } : ifaddr, .imr_ifindex = index ? ifindex : 0, }; - assert(setsockopt(s, IPPROTO_IP, IP_ADD_MEMBERSHIP, &mreqn, - sizeof(mreqn)) == 0); + if (setsockopt(s, IPPROTO_IP, IP_ADD_MEMBERSHIP, &mreqn, + sizeof(mreqn)) != 0) + err(EX_OSERR, "setsockopt"); } else if (strcmp(argv[1], "group_req") == 0) { if (!index) errx(1, "group_req expects index"); @@ -116,8 +119,9 @@ usage: gsa->sin_family = AF_INET; gsa->sin_len = sizeof(struct sockaddr_in); gsa->sin_addr = maddr; - assert(setsockopt(s, IPPROTO_IP, MCAST_JOIN_GROUP, &greq, - sizeof(greq)) == 0); + if (setsockopt(s, IPPROTO_IP, MCAST_JOIN_GROUP, &greq, + sizeof(greq)) != 0) + err(EX_OSERR, "setsockopt"); } else goto usage; diff --git a/tests/sys/netinet/multicast.sh b/tests/sys/netinet/multicast.sh index 273970d0f7ea..34094ff08705 100755 --- a/tests/sys/netinet/multicast.sh +++ b/tests/sys/netinet/multicast.sh @@ -79,6 +79,27 @@ IP_ADD_MEMBERSHIP_ip_mreq_body() 0.0.0.0 6676 233.252.0.1 6676 192.0.3.1 hello atf_check -s exit:0 sh -c "wait $pid; exit $?" atf_check -s exit:0 -o inline:"192.0.3.1:6676 hello\n" cat out + + # join group on the first multicast capable interface (epair1a) + multicast_join ip_mreq 0.0.0.0 + atf_check -s exit:0 -o empty \ + jexec mjail1 $(atf_get_srcdir)/multicast-send \ + 0.0.0.0 6676 233.252.0.1 6676 192.0.2.1 hello + atf_check -s exit:0 sh -c "wait $pid; exit $?" + atf_check -s exit:0 -o inline:"192.0.2.1:6676 hello\n" cat out + + # Set up the receiving jail so that first multicast capable interface + # is epair1a and default route points into epair2a. This will allow us + # to exercise both branches of inp_lookup_mcast_ifp(). + jexec mjail2 route add default 192.0.3.254 + + # join group on the interface determined by the route lookup + multicast_join ip_mreq 0.0.0.0 + atf_check -s exit:0 -o empty \ + jexec mjail1 $(atf_get_srcdir)/multicast-send \ + 0.0.0.0 6676 233.252.0.1 6676 192.0.3.1 hello + atf_check -s exit:0 sh -c "wait $pid; exit $?" + atf_check -s exit:0 -o inline:"192.0.3.1:6676 hello\n" cat out } IP_ADD_MEMBERSHIP_ip_mreq_cleanup() { @@ -111,6 +132,19 @@ IP_ADD_MEMBERSHIP_ip_mreqn_body() 0.0.0.0 6676 233.252.0.1 6676 ${epair2}a hello atf_check -s exit:0 sh -c "wait $pid; exit $?" atf_check -s exit:0 -o inline:"192.0.3.1:6676 hello\n" cat out + + # try to join group on the interface determined by the route lookup + atf_check -s exit:71 -e inline:"multicast-receive: setsockopt: Can't assign requested address\n" \ + jexec mjail2 $(atf_get_srcdir)/multicast-receive \ + ip_mreqn 233.252.0.1 6676 0 + # add route and try again + jexec mjail2 route add default 192.0.3.254 + multicast_join ip_mreqn 0 + atf_check -s exit:0 -o empty \ + jexec mjail1 $(atf_get_srcdir)/multicast-send \ + 0.0.0.0 6676 233.252.0.1 6676 192.0.3.1 hello + atf_check -s exit:0 sh -c "wait $pid; exit $?" + atf_check -s exit:0 -o inline:"192.0.3.1:6676 hello\n" cat out } IP_ADD_MEMBERSHIP_ip_mreqn_cleanup() { @@ -143,6 +177,19 @@ MCAST_JOIN_GROUP_body() 0.0.0.0 6676 233.252.0.1 6676 ${epair2}a hello atf_check -s exit:0 sh -c "wait $pid; exit $?" atf_check -s exit:0 -o inline:"192.0.3.1:6676 hello\n" cat out + + # try to join group on the interface determined by the route lookup + atf_check -s exit:71 -e inline:"multicast-receive: setsockopt: Can't assign requested address\n" \ + jexec mjail2 $(atf_get_srcdir)/multicast-receive \ + group_req 233.252.0.1 6676 0 + # add route and try again + jexec mjail2 route add default 192.0.3.254 + multicast_join group_req 0 + atf_check -s exit:0 -o empty \ + jexec mjail1 $(atf_get_srcdir)/multicast-send \ + 0.0.0.0 6676 233.252.0.1 6676 192.0.3.1 hello + atf_check -s exit:0 sh -c "wait $pid; exit $?" + atf_check -s exit:0 -o inline:"192.0.3.1:6676 hello\n" cat out } MCAST_JOIN_GROUP_cleanup() { diff --git a/tests/sys/netinet/so_reuseport_lb_test.c b/tests/sys/netinet/so_reuseport_lb_test.c index 0479bd070ca6..393a626af5a4 100644 --- a/tests/sys/netinet/so_reuseport_lb_test.c +++ b/tests/sys/netinet/so_reuseport_lb_test.c @@ -29,6 +29,8 @@ #include <sys/param.h> #include <sys/event.h> +#include <sys/filio.h> +#include <sys/ioccom.h> #include <sys/socket.h> #include <netinet/in.h> @@ -556,6 +558,150 @@ ATF_TC_BODY(connect_bound, tc) close(s); } +/* + * The kernel erroneously permits calling connect() on a UDP socket with + * SO_REUSEPORT_LB set. Verify that packets sent to the bound address are + * dropped unless they come from the connected address. + */ +ATF_TC_WITHOUT_HEAD(connect_udp); +ATF_TC_BODY(connect_udp, tc) +{ + struct sockaddr_in sin = { + .sin_family = AF_INET, + .sin_len = sizeof(sin), + .sin_addr = { htonl(INADDR_LOOPBACK) }, + }; + ssize_t n; + int error, len, s1, s2, s3; + char ch; + + s1 = socket(PF_INET, SOCK_DGRAM, 0); + ATF_REQUIRE(s1 >= 0); + s2 = socket(PF_INET, SOCK_DGRAM, 0); + ATF_REQUIRE(s2 >= 0); + s3 = socket(PF_INET, SOCK_DGRAM, 0); + ATF_REQUIRE(s3 >= 0); + + error = setsockopt(s1, SOL_SOCKET, SO_REUSEPORT_LB, (int[]){1}, + sizeof(int)); + ATF_REQUIRE_MSG(error == 0, + "setsockopt(SO_REUSEPORT_LB) failed: %s", strerror(errno)); + error = bind(s1, (struct sockaddr *)&sin, sizeof(sin)); + ATF_REQUIRE_MSG(error == 0, "bind() failed: %s", strerror(errno)); + + error = bind(s2, (struct sockaddr *)&sin, sizeof(sin)); + ATF_REQUIRE_MSG(error == 0, "bind() failed: %s", strerror(errno)); + + error = bind(s3, (struct sockaddr *)&sin, sizeof(sin)); + ATF_REQUIRE_MSG(error == 0, "bind() failed: %s", strerror(errno)); + + /* Connect to an address not owned by s2. */ + error = getsockname(s3, (struct sockaddr *)&sin, + (socklen_t[]){sizeof(sin)}); + ATF_REQUIRE(error == 0); + error = connect(s1, (struct sockaddr *)&sin, sizeof(sin)); + ATF_REQUIRE_MSG(error == 0, "connect() failed: %s", strerror(errno)); + + /* Try to send a packet to s1 from s2. */ + error = getsockname(s1, (struct sockaddr *)&sin, + (socklen_t[]){sizeof(sin)}); + ATF_REQUIRE(error == 0); + + ch = 42; + n = sendto(s2, &ch, sizeof(ch), 0, (struct sockaddr *)&sin, + sizeof(sin)); + ATF_REQUIRE(n == 1); + + /* Give the packet some time to arrive. */ + usleep(100000); + + /* s1 is connected to s3 and shouldn't receive from s2. */ + error = ioctl(s1, FIONREAD, &len); + ATF_REQUIRE(error == 0); + ATF_REQUIRE_MSG(len == 0, "unexpected data available"); + + /* ... but s3 can of course send to s1. */ + n = sendto(s3, &ch, sizeof(ch), 0, (struct sockaddr *)&sin, + sizeof(sin)); + ATF_REQUIRE(n == 1); + usleep(100000); + error = ioctl(s1, FIONREAD, &len); + ATF_REQUIRE(error == 0); + ATF_REQUIRE_MSG(len == 1, "expected data available"); +} + +/* + * The kernel erroneously permits calling connect() on a UDP socket with + * SO_REUSEPORT_LB set. Verify that packets sent to the bound address are + * dropped unless they come from the connected address. + */ +ATF_TC_WITHOUT_HEAD(connect_udp6); +ATF_TC_BODY(connect_udp6, tc) +{ + struct sockaddr_in6 sin6 = { + .sin6_family = AF_INET6, + .sin6_len = sizeof(sin6), + .sin6_addr = IN6ADDR_LOOPBACK_INIT, + }; + ssize_t n; + int error, len, s1, s2, s3; + char ch; + + s1 = socket(PF_INET6, SOCK_DGRAM, 0); + ATF_REQUIRE(s1 >= 0); + s2 = socket(PF_INET6, SOCK_DGRAM, 0); + ATF_REQUIRE(s2 >= 0); + s3 = socket(PF_INET6, SOCK_DGRAM, 0); + ATF_REQUIRE(s3 >= 0); + + error = setsockopt(s1, SOL_SOCKET, SO_REUSEPORT_LB, (int[]){1}, + sizeof(int)); + ATF_REQUIRE_MSG(error == 0, + "setsockopt(SO_REUSEPORT_LB) failed: %s", strerror(errno)); + error = bind(s1, (struct sockaddr *)&sin6, sizeof(sin6)); + ATF_REQUIRE_MSG(error == 0, "bind() failed: %s", strerror(errno)); + + error = bind(s2, (struct sockaddr *)&sin6, sizeof(sin6)); + ATF_REQUIRE_MSG(error == 0, "bind() failed: %s", strerror(errno)); + + error = bind(s3, (struct sockaddr *)&sin6, sizeof(sin6)); + ATF_REQUIRE_MSG(error == 0, "bind() failed: %s", strerror(errno)); + + /* Connect to an address not owned by s2. */ + error = getsockname(s3, (struct sockaddr *)&sin6, + (socklen_t[]){sizeof(sin6)}); + ATF_REQUIRE(error == 0); + error = connect(s1, (struct sockaddr *)&sin6, sizeof(sin6)); + ATF_REQUIRE_MSG(error == 0, "connect() failed: %s", strerror(errno)); + + /* Try to send a packet to s1 from s2. */ + error = getsockname(s1, (struct sockaddr *)&sin6, + (socklen_t[]){sizeof(sin6)}); + ATF_REQUIRE(error == 0); + + ch = 42; + n = sendto(s2, &ch, sizeof(ch), 0, (struct sockaddr *)&sin6, + sizeof(sin6)); + ATF_REQUIRE(n == 1); + + /* Give the packet some time to arrive. */ + usleep(100000); + + /* s1 is connected to s3 and shouldn't receive from s2. */ + error = ioctl(s1, FIONREAD, &len); + ATF_REQUIRE(error == 0); + ATF_REQUIRE_MSG(len == 0, "unexpected data available"); + + /* ... but s3 can of course send to s1. */ + n = sendto(s3, &ch, sizeof(ch), 0, (struct sockaddr *)&sin6, + sizeof(sin6)); + ATF_REQUIRE(n == 1); + usleep(100000); + error = ioctl(s1, FIONREAD, &len); + ATF_REQUIRE(error == 0); + ATF_REQUIRE_MSG(len == 1, "expected data available"); +} + ATF_TP_ADD_TCS(tp) { ATF_TP_ADD_TC(tp, basic_ipv4); @@ -566,6 +712,8 @@ ATF_TP_ADD_TCS(tp) ATF_TP_ADD_TC(tp, bind_without_listen); ATF_TP_ADD_TC(tp, connect_not_bound); ATF_TP_ADD_TC(tp, connect_bound); + ATF_TP_ADD_TC(tp, connect_udp); + ATF_TP_ADD_TC(tp, connect_udp6); return (atf_no_error()); } diff --git a/tests/sys/netpfil/pf/rdr.sh b/tests/sys/netpfil/pf/rdr.sh index 24b95b2047f4..b0f0e6d13d0f 100644 --- a/tests/sys/netpfil/pf/rdr.sh +++ b/tests/sys/netpfil/pf/rdr.sh @@ -338,6 +338,56 @@ natpass_cleanup() pft_cleanup } +atf_test_case "pr290177" "cleanup" +pr290177_head() +{ + atf_set descr 'Test PR290177' + atf_set require.user root +} + +pr290177_body() +{ + pft_init + + epair=$(vnet_mkepair) + + ifconfig ${epair}a 192.0.2.2/24 up + ifconfig ${epair}a inet alias 192.0.2.3/24 up + + vnet_mkjail alcatraz ${epair}b + jexec alcatraz ifconfig ${epair}b 192.0.2.1/24 up + jexec alcatraz ifconfig lo0 127.0.0.1/8 up + + # Sanity check + atf_check -s exit:0 -o ignore \ + ping -c 1 192.0.2.1 + + jexec alcatraz pfctl -e + pft_set_rules alcatraz \ + "table <white> { 192.0.2.2 }" \ + "no rdr inet proto tcp from <white> to any port 25" \ + "rdr pass inet proto tcp from any to any port 25 -> 127.0.0.1 port 2500" + + echo foo | jexec alcatraz nc -N -l 2500 & + sleep 1 + + reply=$(nc -w 3 -s 192.0.2.2 192.0.2.1 25) + if [ "${reply}" == "foo" ] + then + atf_fail "no rdr rule failed" + fi + reply=$(nc -w 3 -s 192.0.2.3 192.0.2.1 25) + if [ "${reply}" != "foo" ] + then + atf_fail "rdr rule failed" + fi +} + +pr290177_cleanup() +{ + pft_cleanup +} + atf_init_test_cases() { atf_add_test_case "natpass" @@ -345,4 +395,5 @@ atf_init_test_cases() atf_add_test_case "tcp_v6_pass" atf_add_test_case "srcport_compat" atf_add_test_case "srcport_pass" + atf_add_test_case "pr290177" } diff --git a/tests/sys/netpfil/pf/sctp.sh b/tests/sys/netpfil/pf/sctp.sh index 78055f5a9dd2..47bf40181b1b 100644 --- a/tests/sys/netpfil/pf/sctp.sh +++ b/tests/sys/netpfil/pf/sctp.sh @@ -29,9 +29,6 @@ sctp_init() { pft_init - if ! kldstat -q -m sctp; then - atf_skip "This test requires SCTP" - fi } atf_test_case "basic_v4" "cleanup" @@ -39,6 +36,7 @@ basic_v4_head() { atf_set descr 'Basic SCTP connection over IPv4 passthrough' atf_set require.user root + atf_set require.kmods sctp } basic_v4_body() @@ -112,6 +110,7 @@ basic_v6_head() { atf_set descr 'Basic SCTP connection over IPv6' atf_set require.user root + atf_set require.kmods sctp } basic_v6_body() @@ -186,6 +185,7 @@ reuse_head() { atf_set descr 'Test handling dumb clients that reuse source ports' atf_set require.user root + atf_set require.kmods sctp } reuse_body() @@ -244,6 +244,7 @@ abort_v4_head() { atf_set descr 'Test sending ABORT messages' atf_set require.user root + atf_set require.kmods sctp } abort_v4_body() @@ -302,6 +303,7 @@ abort_v6_head() { atf_set descr 'Test sending ABORT messages over IPv6' atf_set require.user root + atf_set require.kmods sctp } abort_v6_body() @@ -360,6 +362,7 @@ nat_v4_head() { atf_set descr 'Test NAT-ing SCTP over IPv4' atf_set require.user root + atf_set require.kmods sctp } nat_v4_body() @@ -412,6 +415,7 @@ nat_v6_head() { atf_set descr 'Test NAT-ing SCTP over IPv6' atf_set require.user root + atf_set require.kmods sctp } nat_v6_body() @@ -464,6 +468,7 @@ rdr_v4_head() { atf_set descr 'Test rdr SCTP over IPv4' atf_set require.user root + atf_set require.kmods sctp } rdr_v4_body() @@ -531,6 +536,7 @@ pfsync_head() { atf_set descr 'Test pfsync-ing SCTP connections' atf_set require.user root + atf_set require.kmods carp sctp } pfsync_body() @@ -563,10 +569,6 @@ pfsync_body() sctp_init pfsynct_init vnet_init_bridge - if ! kldstat -q -m carp - then - atf_skip "This test requires carp" - fi j="sctp:pfsync" @@ -722,6 +724,7 @@ timeout_head() { atf_set descr 'Test setting and retrieving timeout values' atf_set require.user root + atf_set require.kmods sctp } timeout_body() @@ -753,6 +756,7 @@ related_icmp_head() { atf_set descr 'Verify that ICMP messages related to an SCTP connection are allowed' atf_set require.user root + atf_set require.kmods sctp } related_icmp_body() diff --git a/tools/test/stress2/misc/kevent17.sh b/tools/test/stress2/misc/kevent17.sh new file mode 100755 index 000000000000..e7b8f1a0a00c --- /dev/null +++ b/tools/test/stress2/misc/kevent17.sh @@ -0,0 +1,176 @@ +#!/bin/sh + +# +# Copyright (c) 2025 Peter Holm <pho@FreeBSD.org> +# +# SPDX-License-Identifier: BSD-2-Clause +# + +# A kqueuex(KQUEUE_CPONFORK) test scenario +# Test scenario suggestion by: kib + +. ../default.cfg +[ `id -u ` -ne 0 ] && echo "Must be root!" && exit 1 + +dir=/tmp +odir=`pwd` +prog=$(basename "$0" .sh) +cd $dir +sed '1,/^EOF/d' < $odir/$0 > $dir/$prog.c +mycc -o $prog -Wall -Wextra -O0 -g $prog.c || exit 1 +rm -f $prog.c +cd $odir + +set -e +mount | grep "on $mntpoint " | grep -q /dev/md && umount -f $mntpoint +[ -c /dev/md$mdstart ] && mdconfig -d -u $mdstart +mdconfig -a -t swap -s 2g -u $mdstart +newfs $newfs_flags md$mdstart > /dev/null +mount /dev/md$mdstart $mntpoint +set +e + +(cd $odir/../testcases/swap; ./swap -t 5m -i 20 -h -l 100 > /dev/null) & +cd $mntpoint +$dir/$prog +s=$? +[ -f $prog.core -a $s -eq 0 ] && + { ls -l $prog.core; mv $prog.core /tmp; s=1; } +cd $odir +while pkill -9 swap; do :; done +wait + +for i in `jot 6`; do + mount | grep -q "on $mntpoint " || break + umount $mntpoint && break || sleep 10 +done +[ $i -eq 6 ] && exit 1 +mdconfig -d -u $mdstart +rm -rf $dir/$prog +exit $s + +EOF +#include <sys/param.h> +#include <sys/event.h> +#include <sys/mman.h> +#include <sys/stat.h> +#include <sys/wait.h> + +#include <machine/atomic.h> + +#include <err.h> +#include <errno.h> +#include <fcntl.h> +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#include <time.h> +#include <unistd.h> + +static volatile u_int *share; +static int loops; +static char *file = "file"; + +#define MAXLOOPS 100 +#define PARALLEL 1 +#define RUNTIME (2 * 60) +#define SYNC 0 + +static void +test(void) +{ + pid_t pid; + struct kevent ev[2]; + struct timespec ts; + int kq, fd, n; + + if ((fd = open(file, O_RDONLY, 0)) == -1) + err(1, "open(%s). %s:%d", file, __func__, __LINE__); + + atomic_add_int(&share[SYNC], 1); + while (share[SYNC] != PARALLEL) + usleep(10000); + + if ((kq = kqueuex(KQUEUE_CPONFORK)) < 0) + err(1, "kqueuex"); + + ts.tv_sec = 5; + ts.tv_nsec = 0; + n = 0; + EV_SET(&ev[n], fd, EVFILT_VNODE, EV_ADD | EV_ENABLE | EV_CLEAR, + NOTE_DELETE, 0, 0); + n++; + + if (kevent(kq, ev, n, NULL, 0, NULL) < 0) + err(1, "kevent()"); + if (loops >= MAXLOOPS) { /* start using fork(2) */ + if ((pid = fork()) == 0) { + n = kevent(kq, NULL, 0, ev, 1, &ts); + if (n == -1) + err(1, "kevent() in fork\n"); + close(fd); + close(kq); + _exit(0); + } + if (waitpid(pid, NULL, 0) != pid) + err(1, "waitpid(%d)\n", pid); + } + + n = kevent(kq, NULL, 0, ev, 1, &ts); + if (n == -1) + err(1, "kevent()"); + close(fd); + close(kq); + + _exit(0); +} + +int +main(void) +{ + pid_t pids[PARALLEL]; + size_t len; + time_t start; + int e, fd, i, status; + + e = 0; + len = PAGE_SIZE; + loops = 0; + if ((share = mmap(NULL, len, PROT_READ | PROT_WRITE, + MAP_ANON | MAP_SHARED, -1, 0)) == MAP_FAILED) + err(1, "mmap"); + + start = time(NULL); + while ((time(NULL) - start) < RUNTIME && e == 0) { + loops++; + if ((fd = open(file, O_CREAT | O_TRUNC | O_RDWR, 0660)) == + -1) + err(1, "open(%s)", file); + close(fd); + share[SYNC] = 0; + for (i = 0; i < PARALLEL; i++) { + + if ((pids[i] = fork()) == 0) + test(); + if (pids[i] == -1) + err(1, "fork()"); + } + while (share[SYNC] != PARALLEL) + usleep(10000); + if (unlink(file) == -1) + err(1, "unlink(%s). %s:%d\n", file, + __FILE__, __LINE__); + for (i = 0; i < PARALLEL; i++) { + if (waitpid(pids[i], &status, 0) == -1) + err(1, "waitpid(%d)", pids[i]); + if (status != 0) { + if (WIFSIGNALED(status)) + fprintf(stderr, + "pid %d exit signal %d\n", + pids[i], WTERMSIG(status)); + } + e += status == 0 ? 0 : 1; + } + } + + return (e); +} diff --git a/tools/test/stress2/misc/kevent18.sh b/tools/test/stress2/misc/kevent18.sh new file mode 100755 index 000000000000..1492c49e2921 --- /dev/null +++ b/tools/test/stress2/misc/kevent18.sh @@ -0,0 +1,152 @@ +#!/bin/sh + +# +# Copyright (c) 2025 Peter Holm <pho@FreeBSD.org> +# +# SPDX-License-Identifier: BSD-2-Clause +# + +# A kqueuex(KQUEUE_CPONFORK) test scenario + +# Sleeping thread seen in WiP code: +# https://people.freebsd.org/~pho/stress/log/log0615.txt + +. ../default.cfg + +[ `id -u ` -ne 0 ] && echo "Must be root!" && exit 1 +ulimit -k 5000 || { echo FAIL; exit 1; } + +odir=`pwd` +prog=$(basename "$0" .sh) + +cd /tmp +sed '1,/^EOF/d' < $odir/$0 > $prog.c +mycc -o $prog -Wall -Wextra -O2 -g $prog.c -lpthread || exit 1 +rm -f $prog.c +cd $odir + +mount | grep "on $mntpoint " | grep -q md$mdstart && umount -f $mntpoint +mdconfig -l | grep -q $mdstart && mdconfig -d -u $mdstart + +mdconfig -a -t swap -s 2g -u $mdstart +newfs $newfs_flags md$mdstart > /dev/null +mount /dev/md$mdstart $mntpoint +chmod 777 $mntpoint + +su $testuser -c "(cd $mntpoint; /tmp/$prog)" & +for i in `jot 99`; do + sleep 1 + kill -0 $! 2>/dev/null || break +done +pkill $prog +wait +umount -f $mntpoint + +while mount | grep -q $mntpoint; do + umount $mntpoint || sleep 1 +done +mdconfig -d -u $mdstart +rm -f /tmp/$prog + +exit 0 +EOF +#include <sys/types.h> +#include <sys/event.h> +#include <sys/mman.h> +#include <sys/wait.h> + +#include <err.h> +#include <errno.h> +#include <fcntl.h> +#include <pthread.h> +#include <sched.h> +#include <signal.h> +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#include <unistd.h> + +#define PARALLEL 64 + +static int fd; +static char path[80]; + +static void * +spin(void *arg __unused) +{ + int i; + + for (i= 0;; i++) { + snprintf(path, sizeof(path), "file.%06d.%d", getpid(), i); + fd = open(path, O_CREAT | O_TRUNC | O_RDWR, 0622); + if (fd == -1 && errno == ENOTDIR) + break; + if (fd == -1) + err(1, "open(%s)", path); + close(fd); + fd = 0; + unlink(path); + } + fprintf(stderr, "spin loops: %d\n", i + 1); + return (NULL); +} + +static void * +test(void *arg __unused) +{ + struct kevent ev; + struct timespec ts; + pid_t pid; + int i, kq, n; + + for (i = 0; i < 500000; i++) { + if ((kq = kqueuex(KQUEUE_CPONFORK)) < 0) + err(1, "kqueueex(KQUEUE_CPONFORK)"); + + n = 0; + memset(&ev, 0, sizeof(ev)); + EV_SET(&ev, fd, EVFILT_VNODE, EV_ADD | EV_ENABLE | EV_CLEAR, + NOTE_DELETE|NOTE_RENAME|NOTE_EXTEND, 0, 0); + n++; + + if ((pid = fork()) == 0) { + kevent(kq, &ev, n, NULL, 0, NULL); + _exit(0); + } + if (waitpid(pid, NULL, 0) != pid) + err(1, "waitpid(%d)", pid); + + kevent(kq, &ev, n, NULL, 0, NULL); + memset(&ev, 0, sizeof(ev)); + ts.tv_sec = 0; + ts.tv_nsec = 1000000; + if ((n = kevent(kq, NULL, 0, &ev, 1, &ts)) == -1) + err(1, "kevent()"); + + close(kq); + } + return (NULL); +} + +int +main(void) +{ + pthread_t cp[PARALLEL], sp; + int e, i; + + if ((e = pthread_create(&sp, NULL, spin, NULL)) != 0) + errc(1, e, "pthread_create"); + + for (i = 0; i < PARALLEL; i++) { + if ((e = pthread_create(&cp[i], NULL, test, NULL)) != 0) + errc(1, e, "pthread_create"); + } + + for (i = 0; i < PARALLEL; i++) + pthread_join(cp[i], NULL); + pthread_join(sp, NULL); + + close(fd); + + return (0); +} diff --git a/tools/test/stress2/misc/kevent19.sh b/tools/test/stress2/misc/kevent19.sh new file mode 100755 index 000000000000..0170fe0d93c8 --- /dev/null +++ b/tools/test/stress2/misc/kevent19.sh @@ -0,0 +1,187 @@ +#!/bin/sh + +# A kqueuex(KQUEUE_CPONFORK) test scenario + +set -u +prog=$(basename "$0" .sh) + +cat > /tmp/$prog.c <<EOF +/* \$Id: kqfork.c,v 1.4 2025/08/19 19:42:16 kostik Exp kostik $ */ + +#include <sys/param.h> +#include <sys/event.h> +#include <err.h> +#include <signal.h> +#include <stdbool.h> +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#include <unistd.h> + +#ifndef KQUEUE_CPONFORK +#define KQUEUE_CPONFORK 0x2 +#endif + +static pid_t pid_pipe_beat; +static pid_t pid_controller; + +static void +sighup_handler(int sig __unused) +{ + kill(pid_pipe_beat, SIGKILL); + _exit(1); +} + +static void +pipe_beat(int wp) +{ + static const char a[1] = { 'a' }; + ssize_t s; + + for (;;) { + sleep(1); + s = write(wp, a, 1); + if (s < 0) + err(1, "pipe write"); + if (s == 0) + errx(1, "short pipe write"); + } +} + +static void +worker(int kq, int rp) +{ + struct kevent ev[1]; + char a[1]; + ssize_t s; + int n; + + for (;;) { + n = kevent(kq, NULL, 0, ev, nitems(ev), NULL); + if (n == -1) { + kill(pid_controller, SIGHUP); + err(1, "kqueue"); + } + if (n == 0) + continue; // XXXKIB + switch (ev[0].filter) { + case EVFILT_TIMER: + printf("tick\n"); + break; + case EVFILT_READ: + if (ev[0].ident != (uintptr_t)rp) { + kill(pid_controller, SIGHUP); + errx(1, "unknown read ident %d\n", (int)ev[0].ident); + } + s = read(rp, a, sizeof(a)); + if (s == -1) { + kill(pid_controller, SIGHUP); + err(1, "read"); + } + if (s == 0) { + kill(pid_controller, SIGHUP); + errx(1, "EOF"); + } + printf("%c\n", a[0]); + break; + default: + kill(pid_controller, SIGHUP); + errx(1, "unknown fiter %d\n", ev[0].filter); + break; + } + } +} + +static void +usage(void) +{ + fprintf(stderr, "Usage: kqfork [fork]\n"); + exit(2); +} + +int +main(int argc, char *argv[]) +{ + struct kevent ev[2]; + struct sigaction sa; + int kq, n, pp[2]; + pid_t pid_worker; + bool do_fork; + + do_fork = false; + if (argc != 1 && argc != 2) + usage(); + if (argc == 2) { + if (strcmp(argv[1], "fork") != 0) + usage(); + do_fork = true; + } + + memset(&sa, 0, sizeof(sa)); + sa.sa_handler = sighup_handler; + if (sigaction(SIGHUP, &sa, NULL) == -1) + err(1, "sigaction(SIGHUP)"); + + memset(&sa, 0, sizeof(sa)); + sa.sa_flags = SA_NOCLDWAIT | SA_NOCLDSTOP; + sa.sa_handler = SIG_IGN; + if (sigaction(SIGCHLD, &sa, NULL) == -1) + err(1, "sigaction(SIGCHLD)"); + + if (pipe(pp) == -1) + err(1, "pipe"); + + pid_pipe_beat = fork(); + if (pid_pipe_beat == -1) + err(1, "fork"); + if (pid_pipe_beat == 0) { + close(pp[0]); + pipe_beat(pp[1]); + } + + kq = kqueuex(do_fork ? KQUEUE_CPONFORK : 0); + if (kq == -1) + err(1, "kqueuex"); + + EV_SET(&ev[0], 1, EVFILT_TIMER, EV_ADD, NOTE_SECONDS, 1, NULL); + EV_SET(&ev[1], pp[0], EVFILT_READ, EV_ADD, 0, 0, NULL); + n = kevent(kq, ev, nitems(ev), NULL, 0, NULL); + if (n == -1) { + kill(pid_pipe_beat, SIGKILL); + err(1, "kevent reg"); + } + if (n != 0) { + kill(pid_pipe_beat, SIGKILL); + errx(1, "kevent reg %d", n); + } + + pid_controller = getpid(); + + if (do_fork) { + pid_worker = fork(); + if (pid_worker == -1) { + kill(pid_pipe_beat, SIGKILL); + err(1, "fork"); + } + if (pid_worker == 0) { + close(pp[1]); + worker(kq, pp[0]); + } + + for (;;) + pause(); + } else { + worker(kq, pp[0]); + } + exit(0); // unreachable +} +EOF +cc -o /tmp/$prog -Wall -Wextra -O2 /tmp/$prog.c || exit 1 + +echo "--> No fork" +timeout 4s /tmp/$prog +echo "--> fork" +timeout 4s /tmp/$prog fork + +rm -f /tmp/$prog.c $prog +exit 0 diff --git a/tools/test/stress2/misc/unionfs20.sh b/tools/test/stress2/misc/unionfs20.sh new file mode 100755 index 000000000000..0c87bc0d80aa --- /dev/null +++ b/tools/test/stress2/misc/unionfs20.sh @@ -0,0 +1,206 @@ +#!/bin/sh + +# +# Copyright (c) 2025 Peter Holm <pho@FreeBSD.org> +# +# SPDX-License-Identifier: BSD-2-Clause +# + +# Bug 289700 - unionfs: page fault in unionfs_find_node_status when closing a file within a socket's receive buffer + +# "Fatal trap 12: page fault while in kernel mode" seen: +# https://people.freebsd.org/~pho/stress/log/log0618.txt + +. ../default.cfg + +prog=$(basename "$0" .sh) +here=`pwd` +log=/tmp/$prog.log +md1=$mdstart +md2=$((md1 + 1)) +mp1=/mnt$md1 +mp2=/mnt$md2 + +set -eu +mdconfig -l | grep -q md$md1 && mdconfig -d -u $md1 +mdconfig -l | grep -q md$md2 && mdconfig -d -u $md2 + +mdconfig -s 2g -u $md1 +newfs $newfs_flags /dev/md$md1 > /dev/null +mdconfig -s 2g -u $md2 +newfs $newfs_flags /dev/md$md2 > /dev/null + +mkdir -p $mp1 $mp2 +mount /dev/md$md1 $mp1 +mount /dev/md$md2 $mp2 +mount -t unionfs -o noatime $mp1 $mp2 +set +e + +cd /tmp +sed '1,/^EOF/d' < $here/$0 > $prog.c +mycc -o $prog -Wall -Wextra -O2 $prog.c +rm -f $prog.c +[ -d $RUNDIR ] || mkdir -p $RUNDIR +cd $RUNDIR + +n=3 +for i in `jot $n`; do + mkdir $mp2/d$i +done +(cd $here/../testcases/swap; ./swap -t 3m -i 20 -l 100 -h > /dev/null) & +sleep 2 +for i in `jot $n`; do + (cd $mp2/d$i; /tmp/$prog) & +done +while pgrep -q $prog; do sleep .5; done +while pkill swap; do :; done +wait + +cd $here +umount $mp2 # The unionfs mount +umount $mp2 +umount $mp1 + +mdconfig -d -u $md1 +mdconfig -d -u $md2 +rm -f /tmp/$prog +exit 0 +EOF +#include <sys/param.h> +#include <sys/mman.h> +#include <sys/socket.h> +#include <sys/uio.h> +#include <sys/wait.h> + +#include <stdio.h> +#include <errno.h> +#include <err.h> +#include <stdlib.h> +#include <time.h> +#include <unistd.h> +#include <fcntl.h> +#include <poll.h> +#include <stdatomic.h> +#include <string.h> + +#define PARALLEL 2 +#define SYNC 0 + +static int debug; +static _Atomic(int) *share; + +int +send_fd(int socket, int fd_to_send) +{ + struct cmsghdr *cmsg; + struct msghdr msg = {0}; + struct iovec iov; + char buf[1] = {0}; // dummy data + char cmsgbuf[CMSG_SPACE(sizeof(fd_to_send))]; + + memset(cmsgbuf, 0, sizeof(cmsgbuf)); + + iov.iov_base = buf; + iov.iov_len = sizeof(buf); + msg.msg_iov = &iov; + msg.msg_iovlen = 1; + + msg.msg_control = cmsgbuf; + msg.msg_controllen = sizeof(cmsgbuf); + + cmsg = CMSG_FIRSTHDR(&msg); + cmsg->cmsg_level = SOL_SOCKET; + cmsg->cmsg_type = SCM_RIGHTS; + cmsg->cmsg_len = CMSG_LEN(sizeof(fd_to_send)); + + memcpy(CMSG_DATA(cmsg), &fd_to_send, sizeof(fd_to_send)); + + return (sendmsg(socket, &msg, 0)); +} + +int +recv_fd(int socket) +{ + struct cmsghdr *cmsg; + struct msghdr msg = {0}; + struct iovec iov; + char buf[1]; + int received_fd; + char cmsgbuf[CMSG_SPACE(sizeof(received_fd))]; + + memset(cmsgbuf, 0, sizeof(cmsgbuf)); + + iov.iov_base = buf; + iov.iov_len = sizeof(buf); + msg.msg_iov = &iov; + msg.msg_iovlen = 1; + + msg.msg_control = cmsgbuf; + msg.msg_controllen = sizeof(cmsgbuf); + + if (recvmsg(socket, &msg, 0) < 0) + err(1, "recvmsg()"); + + cmsg = CMSG_FIRSTHDR(&msg); + if (cmsg == NULL || cmsg->cmsg_len != CMSG_LEN(sizeof(received_fd))) { + fprintf(stderr, "No passed fd\n"); + return (-1); + } + + if (cmsg->cmsg_level != SOL_SOCKET || cmsg->cmsg_type != SCM_RIGHTS) { + fprintf(stderr, "Invalid cmsg_level or cmsg_type\n"); + return (-1); + } + + memcpy(&received_fd, CMSG_DATA(cmsg), sizeof(received_fd)); + return (received_fd); +} + +int +main(void) +{ + pid_t pid; + time_t start; + size_t len; + int fd, pair[2], status; + + fd = -1; + len = PAGE_SIZE; + if ((share = mmap(NULL, len, PROT_READ | PROT_WRITE, + MAP_ANON | MAP_SHARED, -1, 0)) == MAP_FAILED) + err(1, "mmap"); + + if (socketpair(AF_LOCAL, SOCK_DGRAM, 0, pair) == -1) + err(1, "socketpair"); + + start = time(NULL); + while (time(NULL) - start < 180) { + share[SYNC] = 0; + if ((pid = fork()) == -1) + err(1, "fork"); + if (pid == 0) { + close(pair[0]); + atomic_fetch_add(&share[SYNC], 1); + while (share[SYNC] != PARALLEL) + usleep(1000); + // Not calling recv_fd() triggers the issue +// fd = recv_fd(pair[1]); + if (debug) + fprintf(stderr, "Received fd=%d\n", fd); + _exit(0); + } + fd = open("foo", O_RDWR|O_CREAT|O_TRUNC, 0666); + if (fd == -1) + err(1, "open"); + if (debug) + fprintf(stderr, "Sending fd=%d\n", fd); + atomic_fetch_add(&share[SYNC], 1); + while (share[SYNC] != PARALLEL) + usleep(1000); + send_fd(pair[0], fd); + usleep(arc4random() % 1000); + wait(&status); + close(fd); + unlink("foo"); + } +} diff --git a/tools/tools/git/mfc-candidates.lua b/tools/tools/git/mfc-candidates.lua index a1420dc726da..cbf7dcb3a257 100755 --- a/tools/tools/git/mfc-candidates.lua +++ b/tools/tools/git/mfc-candidates.lua @@ -117,7 +117,7 @@ end local function usage(from_branch, to_branch, author) local script_name = arg[0]:match("([^/]+)$") - print(script_name .. " [-ah] [-f from_branch] [-t to_branch] [-u user] [-X exclude_file] [path ...]") + print(script_name .. " [-ah] [-F git-show-fmt] [-f from_branch] [-t to_branch] [-u user] [-X exclude_file] [path ...]") print() params(from_branch, to_branch, author) end @@ -162,6 +162,7 @@ local function main() local do_help = false local exclude_file = nil + local gitshowfmt = '%h %s' local i = 1 while i <= #arg and arg[i] do local opt = arg[i] @@ -181,6 +182,9 @@ local function main() i = i + 1 elseif opt == "-v" then verbose = verbose + 1 + elseif opt == "-F" then + gitshowfmt = arg[i + 1] + i = i + 1 elseif opt == "-X" then exclude_file = arg[i + 1] i = i + 1 @@ -217,7 +221,7 @@ local function main() -- Print the result for _, hash in ipairs(result_hashes) do - print(exec_command("git show --pretty='%h %s' --no-patch " .. hash)) + print(exec_command("git show --pretty='" .. gitshowfmt .. "' --no-patch " .. hash)) end end diff --git a/tools/tools/nanobsd/rescue/Files/root/ZFS_Create.txt b/tools/tools/nanobsd/rescue/Files/root/ZFS_Create.txt index 1f475c957c0c..ece050bfab55 100644 --- a/tools/tools/nanobsd/rescue/Files/root/ZFS_Create.txt +++ b/tools/tools/nanobsd/rescue/Files/root/ZFS_Create.txt @@ -25,10 +25,10 @@ zfs_load="YES" vfs.root.mountfrom="zfs:boot/ROOT/root" #ZFS optional vm.kmem_size="8G" -vfs.zfs.arc_min="1G" -vfs.zfs.arc_max="2G" -vfs.zfs.prefetch_disable="1" -vfs.zfs.zil_disable=1 +vfs.zfs.arc.min="1G" +vfs.zfs.arc.max="2G" +vfs.zfs.prefetch.disable="1" +vfs.zfs.zil.replay_disable=1 vfs.zfs.zio.use_uma=0 #Power savings hw.pci.do_power_nodriver=3 diff --git a/tools/tools/netrate/tcpp/README b/tools/tools/netrate/tcpp/README index 6817bdf8ca25..ec0313a62eb8 100644 --- a/tools/tools/netrate/tcpp/README +++ b/tools/tools/netrate/tcpp/README @@ -84,7 +84,7 @@ In my testing, I use loader.conf entries of: kern.ipc.maxsockets=1000000 net.inet.tcp.maxtcptw=3000000 -kern.ipc.somaxconn=49152 +kern.ipc.soacceptqueue=49152 kern.ipc.nmbjumbo16=262144 kern.ipc.nmbjumbo9=262144 kern.ipc.nmbjumbop=262144 diff --git a/tools/tools/sysdoc/tunables.mdoc b/tools/tools/sysdoc/tunables.mdoc index 20b59f450cf2..397fe632322d 100644 --- a/tools/tools/sysdoc/tunables.mdoc +++ b/tools/tools/sysdoc/tunables.mdoc @@ -806,7 +806,7 @@ kern.ipc.nsfbufs kern.ipc.numopensockets --- -kern.ipc.somaxconn +kern.ipc.soacceptqueue int The maximum pending socket connection queue size. diff --git a/usr.bin/bsdcat/Makefile b/usr.bin/bsdcat/Makefile index 032207217be6..06081fc2b2f8 100644 --- a/usr.bin/bsdcat/Makefile +++ b/usr.bin/bsdcat/Makefile @@ -11,7 +11,7 @@ BSDCAT_VERSION_STRING!= sed -n '/define.*ARCHIVE_VERSION_ONLY_STRING/{s,[^0-9.], SRCS= bsdcat.c cmdline.c .PATH: ${_LIBARCHIVEDIR}/libarchive_fe -SRCS+= err.c +SRCS+= lafe_err.c CFLAGS+= -DBSDCAT_VERSION_STRING=\"${BSDCAT_VERSION_STRING}\" CFLAGS+= -DPLATFORM_CONFIG_H=\"${_LIBARCHIVECONFDIR}/config_freebsd.h\" diff --git a/usr.bin/calendar/calendars/calendar.freebsd b/usr.bin/calendar/calendars/calendar.freebsd index b6e18083e24b..b85f2f1dee35 100644 --- a/usr.bin/calendar/calendars/calendar.freebsd +++ b/usr.bin/calendar/calendars/calendar.freebsd @@ -175,6 +175,7 @@ 04/22 Jakub Klama <jceel@FreeBSD.org> born in Blachownia, Silesia, Poland, 1989 04/25 Richard Gallamore <ultima@FreeBSD.org> born in Kissimmee, Florida, United States, 1987 04/26 Rene Ladan <rene@FreeBSD.org> born in Geldrop, the Netherlands, 1980 +04/27 Jose Luis Duran <jlduran@FreeBSD.org> born in Panama City, Panama, 1978 04/28 Oleg Bulyzhin <oleg@FreeBSD.org> born in Kharkov, USSR, 1976 04/28 Andriy Voskoboinyk <avos@FreeBSD.org> born in Bila Tserkva, Ukraine, 1992 04/28 Nuno Teixeira <eduardo@FreeBSD.org> born in Aveiro, Portugal, 1974 diff --git a/usr.bin/cpio/Makefile b/usr.bin/cpio/Makefile index 46fe36d8c18e..31b25e4199da 100644 --- a/usr.bin/cpio/Makefile +++ b/usr.bin/cpio/Makefile @@ -11,7 +11,7 @@ BSDCPIO_VERSION_STRING!= sed -n '/define.*ARCHIVE_VERSION_ONLY_STRING/{s,[^0-9.] SRCS= cpio.c cmdline.c .PATH: ${_LIBARCHIVEDIR}/libarchive_fe -SRCS+= err.c line_reader.c passphrase.c +SRCS+= lafe_err.c line_reader.c passphrase.c CFLAGS+= -DBSDCPIO_VERSION_STRING=\"${BSDCPIO_VERSION_STRING}\" CFLAGS+= -DPLATFORM_CONFIG_H=\"${_LIBARCHIVECONFDIR}/config_freebsd.h\" diff --git a/usr.bin/cpio/tests/Makefile b/usr.bin/cpio/tests/Makefile index 9e1028c7eb58..ee4da15bc7e4 100644 --- a/usr.bin/cpio/tests/Makefile +++ b/usr.bin/cpio/tests/Makefile @@ -26,7 +26,7 @@ CFLAGS.test_utils.c+= -Wno-cast-align CPIO_SRCS= cmdline.c .PATH: ${_LIBARCHIVEDIR}/libarchive_fe -CPIO_SRCS+= err.c +CPIO_SRCS+= lafe_err.c .PATH: ${_LIBARCHIVEDIR}/cpio/test TESTS_SRCS= \ diff --git a/usr.bin/find/find.c b/usr.bin/find/find.c index 8b24ecd6a306..2247ae86a94b 100644 --- a/usr.bin/find/find.c +++ b/usr.bin/find/find.c @@ -211,7 +211,7 @@ find_execute(PLAN *plan, char *paths[]) } if (showinfo) { - fprintf(stderr, "Scanning: %s/%s\n", entry->fts_path, entry->fts_name); + fprintf(stderr, "Scanning: %s\n", entry->fts_path); fprintf(stderr, "Scanned: %zu\n\n", counter); showinfo = 0; } diff --git a/usr.bin/mkimg/mkimg.c b/usr.bin/mkimg/mkimg.c index a7409b686560..27b79b82ca02 100644 --- a/usr.bin/mkimg/mkimg.c +++ b/usr.bin/mkimg/mkimg.c @@ -142,8 +142,10 @@ static void usage(const char *why) { - warnx("error: %s", why); - fputc('\n', stderr); + if (why != NULL) { + warnx("error: %s", why); + fputc('\n', stderr); + } fprintf(stderr, "usage: %s <options>\n", getprogname()); fprintf(stderr, " options:\n"); @@ -171,19 +173,19 @@ usage(const char *why) print_schemes(1); fputc('\n', stderr); fprintf(stderr, " partition specification:\n"); - fprintf(stderr, "\t<t>[/<l>]::<size>[:[+]<offset>]\t- " + fprintf(stderr, "\t<type>[/<label>]::<size>[:[+]<offset>]\t- " "empty partition of given size and\n\t\t\t\t\t" " optional relative or absolute offset\n"); - fprintf(stderr, "\t<t>[/<l>]:=<file>[:[+]offset]\t- partition " + fprintf(stderr, "\t<type>[/<label>]:=<file>[:[+]offset]\t- partition " "content and size are\n\t\t\t\t\t" " determined by the named file and\n" "\t\t\t\t\t optional relative or absolute offset\n"); - fprintf(stderr, "\t<t>[/<l>]:-<cmd>\t\t- partition content and size " + fprintf(stderr, "\t<type>[/<label>]:-<cmd>\t\t- partition content and size " "are taken\n\t\t\t\t\t from the output of the command to run\n"); fprintf(stderr, "\t-\t\t\t\t- unused partition entry\n"); fprintf(stderr, "\t where:\n"); - fprintf(stderr, "\t\t<t>\t- scheme neutral partition type\n"); - fprintf(stderr, "\t\t<l>\t- optional scheme-dependent partition " + fprintf(stderr, "\t\t<type>\t- scheme neutral partition type\n"); + fprintf(stderr, "\t\t<label>\t- optional scheme-dependent partition " "label\n"); exit(EX_USAGE); @@ -564,7 +566,7 @@ main(int argc, char *argv[]) bcfd = -1; outfd = 1; /* Write to stdout by default */ - while ((c = getopt_long(argc, argv, "a:b:c:C:f:o:p:s:t:vyH:P:S:T:", + while ((c = getopt_long(argc, argv, "a:b:c:C:f:ho:p:s:t:vyH:P:S:T:", longopts, NULL)) != -1) { switch (c) { case 'a': /* ACTIVE PARTITION, if supported */ @@ -596,6 +598,9 @@ main(int argc, char *argv[]) if (error) errc(EX_DATAERR, error, "format"); break; + case 'h': /* HELP */ + usage(NULL); + break; case 'o': /* OUTPUT FILE */ if (outfd != 1) usage("multiple output files given"); diff --git a/usr.bin/ncurses/Makefile b/usr.bin/ncurses/Makefile index 33001e6ab568..1ed8a2d9a915 100644 --- a/usr.bin/ncurses/Makefile +++ b/usr.bin/ncurses/Makefile @@ -1,4 +1,4 @@ -PACKAGE= runtime +PACKAGE= ncurses .include <bsd.own.mk> .include "${SRCTOP}/lib/ncurses/config.mk" diff --git a/usr.bin/netstat/inet.c b/usr.bin/netstat/inet.c index 5f36b1599cad..dee245b63a87 100644 --- a/usr.bin/netstat/inet.c +++ b/usr.bin/netstat/inet.c @@ -83,7 +83,7 @@ static void inetprint(const char *, struct in_addr *, int, const char *, int, const int); #endif #ifdef INET6 -static int udp_done, tcp_done, sdp_done; +static int udp_done, udplite_done, tcp_done, sdp_done; #endif /* INET6 */ static int @@ -100,6 +100,9 @@ pcblist_sysctl(int proto, const char *name, char **bufp) case IPPROTO_UDP: mibvar = "net.inet.udp.pcblist"; break; + case IPPROTO_UDPLITE: + mibvar = "net.inet.udplite.pcblist"; + break; default: mibvar = "net.inet.raw.pcblist"; break; @@ -222,11 +225,18 @@ protopr(u_long off, const char *name, int af1, int proto) udp_done = 1; #endif break; + case IPPROTO_UDPLITE: +#ifdef INET6 + if (udplite_done != 0) + return; + else + udplite_done = 1; +#endif + break; } if (!pcblist_sysctl(proto, name, &buf)) return; - if (istcp && (cflag || Cflag)) { fnamelen = strlen("Stack"); cnamelen = strlen("CC"); @@ -318,18 +328,18 @@ protopr(u_long off, const char *name, int af1, int proto) "Proto", "Listen", "Local Address"); else if (Tflag) xo_emit((Aflag && !Wflag) ? - "{T:/%-5.5s} {T:/%-6.6s} {T:/%-6.6s} {T:/%-6.6s} {T:/%-18.18s} {T:/%s}" : + "{T:/%-9.9s} {T:/%-6.6s} {T:/%-6.6s} {T:/%-6.6s} {T:/%-18.18s} {T:/%s}" : ((!Wflag || af1 == AF_INET) ? - "{T:/%-5.5s} {T:/%-6.6s} {T:/%-6.6s} {T:/%-6.6s} {T:/%-22.22s} {T:/%s}" : - "{T:/%-5.5s} {T:/%-6.6s} {T:/%-6.6s} {T:/%-6.6s} {T:/%-45.45s} {T:/%s}"), + "{T:/%-9.9s} {T:/%-6.6s} {T:/%-6.6s} {T:/%-6.6s} {T:/%-22.22s} {T:/%s}" : + "{T:/%-9.9s} {T:/%-6.6s} {T:/%-6.6s} {T:/%-6.6s} {T:/%-45.45s} {T:/%s}"), "Proto", "Rexmit", "OOORcv", "0-win", "Local Address", "Foreign Address"); else { xo_emit((Aflag && !Wflag) ? - "{T:/%-5.5s} {T:/%-6.6s} {T:/%-6.6s} {T:/%-18.18s} {T:/%-18.18s}" : + "{T:/%-9.9s} {T:/%-6.6s} {T:/%-6.6s} {T:/%-18.18s} {T:/%-18.18s}" : ((!Wflag || af1 == AF_INET) ? - "{T:/%-5.5s} {T:/%-6.6s} {T:/%-6.6s} {T:/%-22.22s} {T:/%-22.22s}" : - "{T:/%-5.5s} {T:/%-6.6s} {T:/%-6.6s} {T:/%-45.45s} {T:/%-45.45s}"), + "{T:/%-9.9s} {T:/%-6.6s} {T:/%-6.6s} {T:/%-22.22s} {T:/%-22.22s}" : + "{T:/%-9.9s} {T:/%-6.6s} {T:/%-6.6s} {T:/%-45.45s} {T:/%-45.45s}"), "Proto", "Recv-Q", "Send-Q", "Local Address", "Foreign Address"); if (!xflag && !Rflag) @@ -382,9 +392,14 @@ protopr(u_long off, const char *name, int af1, int proto) vchar = ((inp->inp_vflag & INP_IPV4) != 0) ? "4" : ""; if (istcp && (tp->t_flags & TF_TOE) != 0) - xo_emit("{:protocol/%-3.3s%-2.2s/%s%s} ", "toe", vchar); - else - xo_emit("{:protocol/%-3.3s%-2.2s/%s%s} ", name, vchar); + xo_emit("{:protocol/%-3.3s%-6.6s/%s%s} ", "toe", vchar); + else { + int len; + + len = max (2, 9 - strlen(name)); + xo_emit("{:protocol/%.7s%-*.*s/%s%s} ", name, len, len, + vchar); + } if (Lflag) { char buf1[33]; diff --git a/usr.bin/netstat/main.c b/usr.bin/netstat/main.c index e8f657006982..79830049948a 100644 --- a/usr.bin/netstat/main.c +++ b/usr.bin/netstat/main.c @@ -83,6 +83,8 @@ static struct protox { tcp_stats, NULL, "tcp", 1, IPPROTO_TCP }, { -1 , N_UDPSTAT, 1, protopr, udp_stats, NULL, "udp", 1, IPPROTO_UDP }, + { -1, -1, 1, protopr, + NULL, NULL, "udplite", 1, IPPROTO_UDPLITE }, #ifdef SCTP { -1, N_SCTPSTAT, 1, sctp_protopr, sctp_stats, NULL, "sctp", 1, IPPROTO_SCTP }, @@ -131,6 +133,8 @@ static struct protox ip6protox[] = { tcp_stats, NULL, "tcp", 1, IPPROTO_TCP }, { -1 , N_UDPSTAT, 1, protopr, udp_stats, NULL, "udp", 1, IPPROTO_UDP }, + { -1, -1, 1, protopr, + NULL, NULL, "udplite", 1, IPPROTO_UDPLITE }, { -1 , N_IP6STAT, 1, protopr, ip6_stats, ip6_ifstats, "ip6", 1, IPPROTO_RAW }, { -1 , N_ICMP6STAT, 1, protopr, diff --git a/usr.bin/sockstat/main.c b/usr.bin/sockstat/main.c index d1ea6b1bc958..07663e54534d 100644 --- a/usr.bin/sockstat/main.c +++ b/usr.bin/sockstat/main.c @@ -108,7 +108,8 @@ static bool show_path_state = false; /* * Default protocols to use if no -P was defined. */ -static const char *default_protos[] = {"sctp", "tcp", "udp", "divert" }; +static const char *default_protos[] = {"sctp", "tcp", "udp", "udplite", + "divert" }; static size_t default_numprotos = nitems(default_protos); static int *protos; /* protocols to use */ @@ -626,6 +627,10 @@ gather_inet(int proto) varname = "net.inet.udp.pcblist"; protoname = "udp"; break; + case IPPROTO_UDPLITE: + varname = "net.inet.udplite.pcblist"; + protoname = "udplite"; + break; case IPPROTO_DIVERT: varname = "net.inet.divert.pcblist"; protoname = "div"; @@ -674,6 +679,7 @@ gather_inet(int proto) protoname = xtp->t_flags & TF_TOE ? "toe" : "tcp"; break; case IPPROTO_UDP: + case IPPROTO_UDPLITE: case IPPROTO_DIVERT: xip = (struct xinpcb *)xig; if (!check_ksize(xip->xi_len, struct xinpcb)) @@ -1196,7 +1202,9 @@ calculate_sock_column_widths(struct col_widths *cw, struct sock *s) first = true; len = strlen(s->protoname); - if (s->vflag & (INP_IPV4 | INP_IPV6)) + if (s->vflag & INP_IPV4) + len += 1; + if (s->vflag & INP_IPV6) len += 1; cw->proto = MAX(cw->proto, len); diff --git a/usr.bin/tar/Makefile b/usr.bin/tar/Makefile index 9260315fb30b..8b0d3e4a6cf0 100644 --- a/usr.bin/tar/Makefile +++ b/usr.bin/tar/Makefile @@ -17,7 +17,7 @@ SRCS= bsdtar.c \ write.c .PATH: ${_LIBARCHIVEDIR}/libarchive_fe -SRCS+= err.c \ +SRCS+= lafe_err.c \ line_reader.c \ passphrase.c diff --git a/usr.bin/tar/tests/Makefile b/usr.bin/tar/tests/Makefile index 929f8127f9b3..116425b0621f 100644 --- a/usr.bin/tar/tests/Makefile +++ b/usr.bin/tar/tests/Makefile @@ -27,6 +27,7 @@ TESTS_SRCS= \ test_0.c \ test_basic.c \ test_copy.c \ + test_crlf_mtree.c \ test_empty_mtree.c \ test_extract_tar_bz2.c \ test_extract_tar_grz.c \ diff --git a/usr.bin/unzip/Makefile b/usr.bin/unzip/Makefile index 2db5e9ac4c99..63f49a203685 100644 --- a/usr.bin/unzip/Makefile +++ b/usr.bin/unzip/Makefile @@ -12,7 +12,7 @@ BSDUNZIP_VERSION_STRING!= sed -n '/define.*ARCHIVE_VERSION_ONLY_STRING/{s,[^0-9. SRCS= bsdunzip.c .PATH: ${_LIBARCHIVEDIR}/libarchive_fe -SRCS+= cmdline.c err.c passphrase.c +SRCS+= cmdline.c lafe_err.c passphrase.c CFLAGS+= -DBSDUNZIP_VERSION_STRING=\"${BSDUNZIP_VERSION_STRING}\" CFLAGS+= -DPLATFORM_CONFIG_H=\"${_LIBARCHIVECONFDIR}/config_freebsd.h\" diff --git a/usr.bin/unzip/tests/Makefile b/usr.bin/unzip/tests/Makefile index 404a546410e4..fada172b1bd7 100644 --- a/usr.bin/unzip/tests/Makefile +++ b/usr.bin/unzip/tests/Makefile @@ -23,7 +23,7 @@ CFLAGS+= -I${_LIBARCHIVEDIR}/libarchive_fe -I${_LIBARCHIVEDIR}/test_utils CFLAGS.test_utils.c+= -Wno-cast-align .PATH: ${_LIBARCHIVEDIR}/libarchive_fe -UNZIP_SRCS+= err.c +UNZIP_SRCS+= lafe_err.c .PATH: ${_LIBARCHIVEDIR}/unzip/test TESTS_SRCS= \ diff --git a/usr.sbin/arp/arp.c b/usr.sbin/arp/arp.c index ee4236b5299b..055ef2ffe225 100644 --- a/usr.sbin/arp/arp.c +++ b/usr.sbin/arp/arp.c @@ -81,7 +81,6 @@ static int get(char *host); static int file(char *name); static struct rt_msghdr *rtmsg(int cmd, struct sockaddr_in *dst, struct sockaddr_dl *sdl); -static int get_ether_addr(in_addr_t ipaddr, struct ether_addr *hwaddr); static int set_rtsock(struct sockaddr_in *dst, struct sockaddr_dl *sdl_m, char *host); @@ -143,7 +142,8 @@ main(int argc, char *argv[]) if (!func) func = F_GET; if (opts.rifname) { - if (func != F_GET && func != F_SET && !(func == F_DELETE && opts.aflag)) + if (func != F_GET && func != F_SET && func != F_REPLACE && + !(func == F_DELETE && opts.aflag)) xo_errx(1, "-i not applicable to this operation"); if ((opts.rifindex = if_nametoindex(opts.rifname)) == 0) { if (errno == ENXIO) @@ -273,7 +273,6 @@ getaddr(char *host) return (&reply); } -int valid_type(int type); /* * Returns true if the type is a valid one for ARP. */ @@ -357,11 +356,14 @@ set(int argc, char **argv) } ea = (struct ether_addr *)LLADDR(&sdl_m); if ((opts.flags & RTF_ANNOUNCE) && !strcmp(eaddr, "auto")) { - if (!get_ether_addr(dst->sin_addr.s_addr, ea)) { + uint32_t ifindex; + if (!get_ifinfo(dst->sin_addr.s_addr, ea, &ifindex)) { xo_warnx("no interface found for %s", - inet_ntoa(dst->sin_addr)); + inet_ntoa(dst->sin_addr)); return (1); } + if (opts.rifindex == 0) + opts.rifindex = ifindex; sdl_m.sdl_alen = ETHER_ADDR_LEN; } else { struct ether_addr *ea1 = ether_aton(eaddr); @@ -375,7 +377,7 @@ set(int argc, char **argv) } } #ifndef WITHOUT_NETLINK - return (set_nl(opts.rifindex, dst, &sdl_m, host)); + return (set_nl(dst, &sdl_m, host)); #else return (set_rtsock(dst, &sdl_m, host)); #endif @@ -522,7 +524,7 @@ delete(char *host) #ifdef WITHOUT_NETLINK return (delete_rtsock(host)); #else - return (delete_nl(0, host)); + return (delete_nl(host)); #endif } @@ -819,11 +821,11 @@ doit: } /* - * get_ether_addr - get the hardware address of an interface on the - * same subnet as ipaddr. + * get_ifinfo - get the hardware address and if_index of an interface + * on the same subnet as ipaddr. */ -static int -get_ether_addr(in_addr_t ipaddr, struct ether_addr *hwaddr) +int +get_ifinfo(in_addr_t ipaddr, struct ether_addr *hwaddr, uint32_t *pifindex) { struct ifaddrs *ifa, *ifd, *ifas = NULL; in_addr_t ina, mask; @@ -862,7 +864,13 @@ get_ether_addr(in_addr_t ipaddr, struct ether_addr *hwaddr) } if (ifa == NULL) goto done; - + if (pifindex != NULL) + *pifindex = if_nametoindex(ifa->ifa_name); + if (hwaddr == NULL) { + /* ether addr is not required */ + retval = ETHER_ADDR_LEN; + goto done; + } /* * Now scan through again looking for a link-level address * for this interface. diff --git a/usr.sbin/arp/arp.h b/usr.sbin/arp/arp.h index 487863be43e7..512a238df425 100644 --- a/usr.sbin/arp/arp.h +++ b/usr.sbin/arp/arp.h @@ -2,8 +2,8 @@ #define _USR_SBIN_ARP_ARP_H_ int valid_type(int type); +int get_ifinfo(in_addr_t ipaddr, struct ether_addr *hwaddr, uint32_t *pifindex); struct sockaddr_in *getaddr(char *host); -int print_entries_nl(uint32_t ifindex, struct in_addr addr); struct arp_opts { bool aflag; @@ -11,13 +11,12 @@ struct arp_opts { time_t expire_time; int flags; char *rifname; - unsigned int rifindex; + uint32_t rifindex; }; extern struct arp_opts opts; int print_entries_nl(uint32_t ifindex, struct in_addr addr); -int delete_nl(uint32_t ifindex, char *host); -int set_nl(uint32_t ifindex, struct sockaddr_in *dst, struct sockaddr_dl *sdl, - char *host); +int delete_nl(char *host); +int set_nl(struct sockaddr_in *dst, struct sockaddr_dl *sdl, char *host); #endif diff --git a/usr.sbin/arp/arp_netlink.c b/usr.sbin/arp/arp_netlink.c index db1ef775dea2..34f21cf96f4f 100644 --- a/usr.sbin/arp/arp_netlink.c +++ b/usr.sbin/arp/arp_netlink.c @@ -79,13 +79,15 @@ get_link_info(struct snl_state *ss, uint32_t ifindex, static bool -has_l2(struct snl_state *ss, uint32_t ifindex) +has_l2(struct snl_state *ss, uint32_t ifindex, uint32_t *pflags) { struct snl_parsed_link_simple link = {}; + *pflags = 0; if (!get_link_info(ss, ifindex, &link)) return (false); + *pflags = link.ifi_flags; return (valid_type(link.ifi_type) != 0); } @@ -104,6 +106,7 @@ static int guess_ifindex(struct snl_state *ss, uint32_t fibnum, struct in_addr addr) { struct snl_writer nw; + uint32_t ifindex, ifflags; snl_init_writer(ss, &nw); @@ -133,9 +136,16 @@ guess_ifindex(struct snl_state *ss, uint32_t fibnum, struct in_addr addr) return (0); /* Check if the interface is of supported type */ - if (has_l2(ss, r.rta_oif)) + if (has_l2(ss, r.rta_oif, &ifflags)) return (r.rta_oif); + /* Check if we are doing proxy arp for P2P interface */ + if (ifflags & IFF_POINTOPOINT) { + /* Guess interface by dst prefix */ + if (get_ifinfo(addr.s_addr, NULL, &ifindex)) + return (ifindex); + } + /* Check the case when we matched the loopback route for P2P */ snl_init_writer(ss, &nw); hdr = snl_create_msg_request(&nw, RTM_GETNEXTHOP); @@ -326,11 +336,12 @@ print_entries_nl(uint32_t ifindex, struct in_addr addr) } int -delete_nl(uint32_t ifindex, char *host) +delete_nl(char *host) { struct snl_state ss = {}; struct snl_writer nw; struct sockaddr_in *dst; + uint32_t ifindex = opts.rifindex; dst = getaddr(host); if (dst == NULL) @@ -375,10 +386,11 @@ delete_nl(uint32_t ifindex, char *host) } int -set_nl(uint32_t ifindex, struct sockaddr_in *dst, struct sockaddr_dl *sdl, char *host) +set_nl(struct sockaddr_in *dst, struct sockaddr_dl *sdl, char *host) { struct snl_state ss = {}; struct snl_writer nw; + uint32_t ifindex = opts.rifindex; nl_init_socket(&ss); diff --git a/usr.sbin/bluetooth/rtlbtfw/main.c b/usr.sbin/bluetooth/rtlbtfw/main.c index e87a98036265..280045a6aa25 100644 --- a/usr.sbin/bluetooth/rtlbtfw/main.c +++ b/usr.sbin/bluetooth/rtlbtfw/main.c @@ -64,9 +64,6 @@ static struct rtlbt_devid rtlbt_list[] = { { .vendor_id = 0x0bda, .product_id = 0xb00c }, { .vendor_id = 0x0bda, .product_id = 0xc822 }, - /* Realtek 8822CU Bluetooth devices */ - { .vendor_id = 0x13d3, .product_id = 0x3549 }, - /* Realtek 8851BE Bluetooth devices */ { .vendor_id = 0x13d3, .product_id = 0x3600 }, diff --git a/usr.sbin/bluetooth/rtlbtfw/rtlbtfw.conf b/usr.sbin/bluetooth/rtlbtfw/rtlbtfw.conf index 61ae53db8f39..2ef56d2af93a 100644 --- a/usr.sbin/bluetooth/rtlbtfw/rtlbtfw.conf +++ b/usr.sbin/bluetooth/rtlbtfw/rtlbtfw.conf @@ -36,16 +36,6 @@ notify 100 { action "/usr/sbin/rtlbtfw -d $cdev -f /usr/local/share/rtlbt-firmware"; }; -# Realtek 8822CU Bluetooth devices -notify 100 { - match "system" "USB"; - match "subsystem" "DEVICE"; - match "type" "ATTACH"; - match "vendor" "0x13d3"; - match "product" "0x3549"; - action "/usr/sbin/rtlbtfw -d $cdev -f /usr/local/share/rtlbt-firmware"; -}; - # Realtek 8851BE Bluetooth devices notify 100 { match "system" "USB"; diff --git a/usr.sbin/bsdinstall/Makefile b/usr.sbin/bsdinstall/Makefile index e5bb3197fa05..5d7be97ed7cf 100644 --- a/usr.sbin/bsdinstall/Makefile +++ b/usr.sbin/bsdinstall/Makefile @@ -22,7 +22,8 @@ REVISION?= ${_REVISION} .if ${BRANCH} == CURRENT || ${BRANCH} == STABLE SUBURL= base_latest -.elif ${BRANCH} == RELEASE +.elif ${BRANCH} == RELEASE || ${BRANCH:C/[0-9]+$//} == BETA || \ + ${BRANCH:C/[0-9]+$//} == RC SUBURL= base_release_${REVISION:C/[0-9]+\.//} .else .warning Invalid branch "${BRANCH}" diff --git a/usr.sbin/bsdinstall/scripts/auto b/usr.sbin/bsdinstall/scripts/auto index 8058b1a41dbf..5fefc07e4c07 100755 --- a/usr.sbin/bsdinstall/scripts/auto +++ b/usr.sbin/bsdinstall/scripts/auto @@ -73,7 +73,7 @@ msg_yes="YES" # error [$msg] # # Display generic error message when a script fails. An optional message -# argument can preceed the generic message. User is given the choice of +# argument can precede the generic message. User is given the choice of # restarting the installer or exiting. # error() diff --git a/usr.sbin/bsdinstall/scripts/bootconfig b/usr.sbin/bsdinstall/scripts/bootconfig index 6736e78b450a..9c188c1d8a91 100755 --- a/usr.sbin/bsdinstall/scripts/bootconfig +++ b/usr.sbin/bsdinstall/scripts/bootconfig @@ -163,7 +163,7 @@ if [ -n "$(awk '{if ($2=="/boot/efi") printf("%s\n",$1);}' $PATH_FSTAB)" ]; then rmdir "${mntpt}" fi - # Try to set the UEFI NV BootXXXX variables to recod the boot location + # Try to set the UEFI NV BootXXXX variables to record the boot location if [ "$BSDINSTALL_CONFIGCURRENT" ] && [ "$ARCHBOOTNAME" != ia32 ]; then update_uefi_bootentry fi diff --git a/usr.sbin/bsdinstall/scripts/jail b/usr.sbin/bsdinstall/scripts/jail index 3b1b2ee98fff..e4238ac0a687 100755 --- a/usr.sbin/bsdinstall/scripts/jail +++ b/usr.sbin/bsdinstall/scripts/jail @@ -45,7 +45,7 @@ user_env_vars="BSDINSTALL_DISTSITE DISTRIBUTIONS" # error [$msg] # # Display generic error message when a script fails. An optional message -# argument can preceed the generic message. User is given the choice of +# argument can precede the generic message. User is given the choice of # restarting the installer or exiting. # error() { @@ -79,7 +79,7 @@ distbase() { : ${DISTRIBUTIONS="base.txz"}; export DISTRIBUTIONS if [ -f $BSDINSTALL_DISTDIR/MANIFEST ]; then - DISTMENU=`cut -f 4,5,6 $BSDINSTALL_DISTDIR/MANIFEST | grep -v -e ^kernel -e ^base` + DISTMENU=$(cut -f 1,5,6 $BSDINSTALL_DISTDIR/MANIFEST | grep -v -e ^kernel -e ^base | sed -E 's/\.txz//g') if [ ! "$nonInteractive" == "YES" ] then diff --git a/usr.sbin/bsdinstall/scripts/keymap b/usr.sbin/bsdinstall/scripts/keymap index 6f4060c0772e..669a1062df95 100755 --- a/usr.sbin/bsdinstall/scripts/keymap +++ b/usr.sbin/bsdinstall/scripts/keymap @@ -216,7 +216,7 @@ while :; do n=$( eval f_dialog_menutag2index_with_help \ \"\$menu_choice\" $menu_list ) - # Turn that number ithe name of the keymap struct + # Turn that number into the name of the keymap struct k=$( set -- $KEYMAPS; eval echo \"\${$(( $n - 2))}\" ) # Get actual keymap setting while we update $keymap and $KEYMAPFILE diff --git a/usr.sbin/bsdinstall/scripts/script b/usr.sbin/bsdinstall/scripts/script index 00ded5f8e24d..21da2ea7c366 100755 --- a/usr.sbin/bsdinstall/scripts/script +++ b/usr.sbin/bsdinstall/scripts/script @@ -144,7 +144,7 @@ else # # Work around this in an extremely lame way for the specific # case of EFI system partitions only. This *ONLY WORKS* if - # /boot/efi is empty and does not handle analagous problems on + # /boot/efi is empty and does not handle analogous problems on # other systems (ARM, PPC64). tar -xf "$BSDINSTALL_DISTDIR/$set" -C $BSDINSTALL_CHROOT --exclude boot/efi mkdir -p $BSDINSTALL_CHROOT/boot/efi diff --git a/usr.sbin/bsdinstall/scripts/zfsboot b/usr.sbin/bsdinstall/scripts/zfsboot index 95cbba3fa131..9ea6ec3a4ac9 100755 --- a/usr.sbin/bsdinstall/scripts/zfsboot +++ b/usr.sbin/bsdinstall/scripts/zfsboot @@ -255,7 +255,7 @@ msg_encrypt_disks="Encrypt Disks?" msg_encrypt_disks_help="Use geli(8) to encrypt all data partitions" msg_error="Error" msg_force_4k_sectors="Force 4K Sectors?" -msg_force_4k_sectors_help="Align partitions to 4K sector boundries and set vfs.zfs.vdev.min_auto_ashift=12" +msg_force_4k_sectors_help="Align partitions to 4K sector boundaries and set vfs.zfs.vdev.min_auto_ashift=12" msg_freebsd_installer="$OSNAME Installer" msg_geli_password="Enter a strong passphrase, used to protect your encryption keys. You will be required to enter this passphrase each time the system is booted" msg_geli_setup="Initializing encryption on selected disks,\n this will take several seconds per disk" diff --git a/usr.sbin/pmcstat/pmcpl_callgraph.c b/usr.sbin/pmcstat/pmcpl_callgraph.c index ade99464a4a3..63684f800bdc 100644 --- a/usr.sbin/pmcstat/pmcpl_callgraph.c +++ b/usr.sbin/pmcstat/pmcpl_callgraph.c @@ -362,7 +362,7 @@ pmcpl_cg_process(struct pmcstat_process *pp, struct pmcstat_pmcrecord *pmcr, * - Find the function that overlaps the return address. * - If found: use the start address of the function. * If not found (say an object's symbol table is not present or - * is incomplete), round down to th gprof bucket granularity. + * is incomplete), round down to the gprof bucket granularity. * - Convert return virtual address to an offset in the image. * - Look for a child with the same {offset,image} tuple, * inserting one if needed. diff --git a/usr.sbin/quot/Makefile b/usr.sbin/quot/Makefile index ed8360ae938e..2f32c8f2df8b 100644 --- a/usr.sbin/quot/Makefile +++ b/usr.sbin/quot/Makefile @@ -1,7 +1,9 @@ +.include <src.opts.mk> + PROG= quot MAN= quot.8 -LIBADD= ufs - -WARNS?= 2 +LIBADD= ufs util +HAS_TESTS= +SUBDIR.${MK_TESTS}= tests .include <bsd.prog.mk> diff --git a/usr.sbin/quot/quot.8 b/usr.sbin/quot/quot.8 index 81abe28b41d5..32e666e2a863 100644 --- a/usr.sbin/quot/quot.8 +++ b/usr.sbin/quot/quot.8 @@ -27,7 +27,7 @@ .\" OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF .\" ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" -.Dd February 8, 1994 +.Dd October 15, 2025 .Dt QUOT 8 .Os .Sh NAME @@ -35,7 +35,7 @@ .Nd display disk space occupied by each user .Sh SYNOPSIS .Nm -.Op Fl cfhknv +.Op Fl cfknv .Op Fl a | Ar filesystem ... .Sh DESCRIPTION The @@ -53,11 +53,6 @@ number of files in this category, and aggregate total of blocks in files with this or lower size. .It Fl f For each user, display count of files and space occupied. -.It Fl h -Estimate the number of blocks in each file based on its size. -Despite that this does not give the correct results (it does not -account for the holes in files), this option is not any faster -and thus is discouraged. .It Fl k Force the numbers to be reported in kilobyte counts. By default, all sizes are reported in 512-byte block counts. diff --git a/usr.sbin/quot/quot.c b/usr.sbin/quot/quot.c index 4152c498371a..5dda36ac8499 100644 --- a/usr.sbin/quot/quot.c +++ b/usr.sbin/quot/quot.c @@ -32,19 +32,21 @@ */ #include <sys/param.h> -#include <sys/stdint.h> #include <sys/mount.h> #include <sys/disklabel.h> #include <ufs/ufs/dinode.h> #include <ufs/ffs/fs.h> #include <err.h> +#include <errno.h> #include <fcntl.h> #include <fstab.h> -#include <errno.h> #include <libufs.h> +#include <mntopts.h> #include <paths.h> #include <pwd.h> +#include <stdbool.h> +#include <stdint.h> #include <stdio.h> #include <stdlib.h> #include <string.h> @@ -52,16 +54,16 @@ #include <unistd.h> /* some flags of what to do: */ -static char estimate; -static char count; -static char unused; -static void (*func)(int, struct fs *, char *); +static bool all; +static bool count; +static bool noname; +static bool unused; +static void (*func)(int, struct fs *); static long blocksize; static char *header; static int headerlen; static union dinode *get_inode(int, struct fs *, ino_t); -static int virtualblocks(struct fs *, union dinode *); static int isfree(struct fs *, union dinode *); static void inituser(void); static void usrrehash(void); @@ -69,9 +71,9 @@ static struct user *user(uid_t); static int cmpusers(const void *, const void *); static void uses(uid_t, daddr_t, time_t); static void initfsizes(void); -static void dofsizes(int, struct fs *, char *); -static void douser(int, struct fs *, char *); -static void donames(int, struct fs *, char *); +static void dofsizes(int, struct fs *); +static void douser(int, struct fs *); +static void donames(int, struct fs *); static void usage(void); static void quot(char *, char *); @@ -86,11 +88,7 @@ static void quot(char *, char *); * Due to the size of modern disks, we must cast intermediate * values to 64 bits to prevent potential overflows. */ -#ifdef COMPAT -#define SIZE(n) (n) -#else -#define SIZE(n) ((int)(((quad_t)(n) * 512 + blocksize - 1)/blocksize)) -#endif +#define SIZE(n) ((int)(((intmax_t)(n) * 512 + blocksize - 1) / blocksize)) #define INOCNT(fs) ((fs)->fs_ipg) #define INOSZ(fs) \ @@ -104,29 +102,26 @@ static void quot(char *, char *); static union dinode * get_inode(int fd, struct fs *super, ino_t ino) { - static caddr_t ipbuf; + static union dinode *ipbuf; static struct cg *cgp; static ino_t last; - static int cg; + static unsigned long cg; struct ufs2_dinode *di2; + off_t off; if (fd < 0) { /* flush cache */ - if (ipbuf) { - free(ipbuf); - ipbuf = 0; - if (super != NULL && super->fs_magic == FS_UFS2_MAGIC) { - free(cgp); - cgp = 0; - } - } - return 0; + free(ipbuf); + ipbuf = NULL; + free(cgp); + cgp = NULL; + return (NULL); } - if (!ipbuf || ino < last || ino >= last + INOCNT(super)) { + if (ipbuf == NULL || ino < last || ino >= last + INOCNT(super)) { if (super->fs_magic == FS_UFS2_MAGIC && - (!cgp || cg != ino_to_cg(super, ino))) { + (cgp == NULL || cg != ino_to_cg(super, ino))) { cg = ino_to_cg(super, ino); - if (!cgp && !(cgp = malloc(super->fs_cgsize))) + if (cgp == NULL && (cgp = malloc(super->fs_cgsize)) == NULL) errx(1, "allocate cg"); if (lseek(fd, (off_t)cgtod(super, cg) << super->fs_fshift, 0) < 0) err(1, "lseek cg"); @@ -135,12 +130,12 @@ get_inode(int fd, struct fs *super, ino_t ino) if (!cg_chkmagic(cgp)) errx(1, "cg has bad magic"); } - if (!ipbuf - && !(ipbuf = malloc(INOSZ(super)))) + if (ipbuf == NULL && (ipbuf = malloc(INOSZ(super))) == NULL) errx(1, "allocate inodes"); last = rounddown(ino, INOCNT(super)); - if (lseek(fd, (off_t)ino_to_fsba(super, last) << super->fs_fshift, 0) < (off_t)0 - || read(fd, ipbuf, INOSZ(super)) != (ssize_t)INOSZ(super)) + off = (off_t)ino_to_fsba(super, last) << super->fs_fshift; + if (lseek(fd, off, SEEK_SET) != off || + read(fd, ipbuf, INOSZ(super)) != (ssize_t)INOSZ(super)) err(1, "read inodes"); } @@ -150,55 +145,13 @@ get_inode(int fd, struct fs *super, ino_t ino) di2 = &((struct ufs2_dinode *)ipbuf)[ino % INOCNT(super)]; /* If the inode is unused, it might be unallocated too, so zero it. */ if (isclr(cg_inosused(cgp), ino % super->fs_ipg)) - bzero(di2, sizeof (*di2)); + memset(di2, 0, sizeof(*di2)); return ((union dinode *)di2); } -#ifdef COMPAT -#define actualblocks(fs, dp) (DIP(fs, dp, di_blocks) / 2) -#else -#define actualblocks(fs, dp) DIP(fs, dp, di_blocks) -#endif - -static int virtualblocks(struct fs *super, union dinode *dp) -{ - off_t nblk, sz; - - sz = DIP(super, dp, di_size); -#ifdef COMPAT - if (lblkno(super,sz) >= UFS_NDADDR) { - nblk = blkroundup(super,sz); - if (sz == nblk) - nblk += super->fs_bsize; - } - - return sz / 1024; - -#else /* COMPAT */ - - if (lblkno(super,sz) >= UFS_NDADDR) { - nblk = blkroundup(super,sz); - sz = lblkno(super,nblk); - sz = (sz - UFS_NDADDR + NINDIR(super) - 1) / NINDIR(super); - while (sz > 0) { - nblk += sz * super->fs_bsize; - /* sz - 1 rounded up */ - sz = (sz - 1 + NINDIR(super) - 1) / NINDIR(super); - } - } else - nblk = fragroundup(super,sz); - - return nblk / 512; -#endif /* COMPAT */ -} - static int isfree(struct fs *super, union dinode *dp) { -#ifdef COMPAT - return (DIP(super, dp, di_mode) & IFMT) == 0; -#else /* COMPAT */ - switch (DIP(super, dp, di_mode) & IFMT) { case IFIFO: case IFLNK: /* should check FASTSYMLINK? */ @@ -214,7 +167,6 @@ isfree(struct fs *super, union dinode *dp) default: errx(1, "unknown IFMT 0%o", DIP(super, dp, di_mode) & IFMT); } -#endif } static struct user { @@ -226,21 +178,20 @@ static struct user { daddr_t spc60; daddr_t spc90; } *users; -static int nusers; +static unsigned int nusers; static void inituser(void) { - int i; struct user *usr; + unsigned int i; - if (!nusers) { + if (nusers == 0) { nusers = 8; - if (!(users = - (struct user *)calloc(nusers,sizeof(struct user)))) + if ((users = calloc(nusers, sizeof(*users))) == NULL) errx(1, "allocate users"); } else { - for (usr = users, i = nusers; --i >= 0; usr++) { + for (usr = users, i = nusers; i-- > 0; usr++) { usr->space = usr->spc30 = usr->spc60 = usr->spc90 = 0; usr->count = 0; } @@ -250,19 +201,18 @@ inituser(void) static void usrrehash(void) { - int i; struct user *usr, *usrn; struct user *svusr; + unsigned int i; svusr = users; - nusers <<= 1; - if (!(users = (struct user *)calloc(nusers,sizeof(struct user)))) + nusers *= 2; + if ((users = calloc(nusers, sizeof(*users))) == NULL) errx(1, "allocate users"); - for (usr = svusr, i = nusers >> 1; --i >= 0; usr++) { - for (usrn = users + (usr->uid&(nusers - 1)); usrn->name; - usrn--) { + for (usr = svusr, i = nusers / 2; i-- > 0; usr++) { + for (usrn = users + usr->uid % nusers; usrn->name; usrn--) { if (usrn <= users) - usrn = users + nusers; + usrn += nusers; } *usrn = *usr; } @@ -272,33 +222,24 @@ static struct user * user(uid_t uid) { struct user *usr; - int i; struct passwd *pwd; + unsigned int i; while (1) { - for (usr = users + (uid&(nusers - 1)), i = nusers; --i >= 0; - usr--) { - if (!usr->name) { + for (usr = users + uid % nusers, i = nusers; i-- > 0; usr--) { + if (usr->name == NULL) { usr->uid = uid; - - if (!(pwd = getpwuid(uid))) { - if ((usr->name = (char *)malloc(7))) - sprintf(usr->name,"#%d",uid); - } else { - if ((usr->name = (char *) - malloc(strlen(pwd->pw_name) + 1))) - strcpy(usr->name,pwd->pw_name); - } - if (!usr->name) + if (noname || (pwd = getpwuid(uid)) == NULL) + asprintf(&usr->name, "#%u", uid); + else + usr->name = strdup(pwd->pw_name); + if (usr->name == NULL) errx(1, "allocate users"); - - return usr; - - } else if (usr->uid == uid) - return usr; - + } + if (usr->uid == uid) + return (usr); if (usr <= users) - usr = users + nusers; + usr += nusers; } usrrehash(); } @@ -307,15 +248,16 @@ user(uid_t uid) static int cmpusers(const void *v1, const void *v2) { - const struct user *u1, *u2; - u1 = (const struct user *)v1; - u2 = (const struct user *)v2; + const struct user *u1 = v1, *u2 = v2; - return u2->space - u1->space; + return (u2->space > u1->space ? 1 : + u2->space < u1->space ? -1 : + u1->uid > u2->uid ? 1 : + u1->uid < u2->uid ? -1 : 0); } -#define sortusers(users) (qsort((users),nusers,sizeof(struct user), \ - cmpusers)) +#define sortusers(users) \ + qsort((users), nusers, sizeof(struct user), cmpusers) static void uses(uid_t uid, daddr_t blks, time_t act) @@ -338,12 +280,8 @@ uses(uid_t uid, daddr_t blks, time_t act) usr->spc30 += blks; } -#ifdef COMPAT -#define FSZCNT 500 -#else -#define FSZCNT 512 -#endif -struct fsizes { +#define FSZCNT 512U +static struct fsizes { struct fsizes *fsz_next; daddr_t fsz_first, fsz_last; ino_t fsz_count[FSZCNT]; @@ -354,10 +292,10 @@ static void initfsizes(void) { struct fsizes *fp; - int i; + unsigned int i; for (fp = fsizes; fp; fp = fp->fsz_next) { - for (i = FSZCNT; --i >= 0;) { + for (i = FSZCNT; i-- > 0;) { fp->fsz_count[i] = 0; fp->fsz_sz[i] = 0; } @@ -365,79 +303,55 @@ initfsizes(void) } static void -dofsizes(int fd, struct fs *super, char *name) +dofsizes(int fd, struct fs *super) { ino_t inode, maxino; union dinode *dp; daddr_t sz, ksz; struct fsizes *fp, **fsp; - int i; + unsigned int i; maxino = super->fs_ncg * super->fs_ipg - 1; -#ifdef COMPAT - if (!(fsizes = (struct fsizes *)malloc(sizeof(struct fsizes)))) - errx(1, "allocate fsize structure"); -#endif /* COMPAT */ for (inode = 0; inode < maxino; inode++) { - errno = 0; - if ((dp = get_inode(fd,super,inode)) -#ifdef COMPAT - && ((DIP(super, dp, di_mode) & IFMT) == IFREG - || (DIP(super, dp, di_mode) & IFMT) == IFDIR) -#else /* COMPAT */ - && !isfree(super, dp) -#endif /* COMPAT */ - ) { - sz = estimate ? virtualblocks(super, dp) : - actualblocks(super, dp); -#ifdef COMPAT - if (sz >= FSZCNT) { - fsizes->fsz_count[FSZCNT-1]++; - fsizes->fsz_sz[FSZCNT-1] += sz; - } else { - fsizes->fsz_count[sz]++; - fsizes->fsz_sz[sz] += sz; - } -#else /* COMPAT */ + if ((dp = get_inode(fd, super, inode)) != NULL && + !isfree(super, dp)) { + sz = DIP(super, dp, di_blocks); ksz = SIZE(sz); for (fsp = &fsizes; (fp = *fsp); fsp = &fp->fsz_next) { if (ksz < fp->fsz_last) break; } - if (!fp || ksz < fp->fsz_first) { - if (!(fp = (struct fsizes *) - malloc(sizeof(struct fsizes)))) + if (fp == NULL || ksz < fp->fsz_first) { + if ((fp = malloc(sizeof(*fp))) == NULL) errx(1, "allocate fsize structure"); fp->fsz_next = *fsp; *fsp = fp; fp->fsz_first = rounddown(ksz, FSZCNT); fp->fsz_last = fp->fsz_first + FSZCNT; - for (i = FSZCNT; --i >= 0;) { + for (i = FSZCNT; i-- > 0;) { fp->fsz_count[i] = 0; fp->fsz_sz[i] = 0; } } fp->fsz_count[ksz % FSZCNT]++; fp->fsz_sz[ksz % FSZCNT] += sz; -#endif /* COMPAT */ - } else if (errno) { - err(1, "%s", name); } } sz = 0; - for (fp = fsizes; fp; fp = fp->fsz_next) { + for (fp = fsizes; fp != NULL; fp = fp->fsz_next) { for (i = 0; i < FSZCNT; i++) { - if (fp->fsz_count[i]) + if (fp->fsz_count[i] != 0) { printf("%jd\t%jd\t%d\n", (intmax_t)(fp->fsz_first + i), (intmax_t)fp->fsz_count[i], SIZE(sz += fp->fsz_sz[i])); + } } } } static void -douser(int fd, struct fs *super, char *name) +douser(int fd, struct fs *super) { ino_t inode, maxino; struct user *usr, *usrs; @@ -446,38 +360,35 @@ douser(int fd, struct fs *super, char *name) maxino = super->fs_ncg * super->fs_ipg - 1; for (inode = 0; inode < maxino; inode++) { - errno = 0; - if ((dp = get_inode(fd,super,inode)) - && !isfree(super, dp)) + if ((dp = get_inode(fd, super, inode)) != NULL && + !isfree(super, dp)) { uses(DIP(super, dp, di_uid), - estimate ? virtualblocks(super, dp) : - actualblocks(super, dp), + DIP(super, dp, di_blocks), DIP(super, dp, di_atime)); - else if (errno) { - err(1, "%s", name); } } - if (!(usrs = (struct user *)malloc(nusers * sizeof(struct user)))) + if ((usrs = malloc(nusers * sizeof(*usrs))) == NULL) errx(1, "allocate users"); - bcopy(users,usrs,nusers * sizeof(struct user)); + memcpy(usrs, users, nusers * sizeof(*usrs)); sortusers(usrs); for (usr = usrs, n = nusers; --n >= 0 && usr->count; usr++) { - printf("%5d",SIZE(usr->space)); + printf("%5d", SIZE(usr->space)); if (count) - printf("\t%5ld",usr->count); - printf("\t%-8s",usr->name); - if (unused) + printf("\t%5ld", usr->count); + printf("\t%-8s", usr->name); + if (unused) { printf("\t%5d\t%5d\t%5d", - SIZE(usr->spc30), - SIZE(usr->spc60), - SIZE(usr->spc90)); + SIZE(usr->spc30), + SIZE(usr->spc60), + SIZE(usr->spc90)); + } printf("\n"); } free(usrs); } static void -donames(int fd, struct fs *super, char *name) +donames(int fd, struct fs *super) { int c; ino_t maxino; @@ -488,18 +399,18 @@ donames(int fd, struct fs *super, char *name) /* first skip the name of the filesystem */ while ((c = getchar()) != EOF && (c < '0' || c > '9')) while ((c = getchar()) != EOF && c != '\n'); - ungetc(c,stdin); + ungetc(c, stdin); while (scanf("%ju", &inode) == 1) { if (inode > maxino) { warnx("illegal inode %ju", inode); return; } - errno = 0; - if ((dp = get_inode(fd,super,inode)) - && !isfree(super, dp)) { - printf("%s\t",user(DIP(super, dp, di_uid))->name); + if ((dp = get_inode(fd, super, inode)) != NULL && + !isfree(super, dp)) { + printf("%s\t", user(DIP(super, dp, di_uid))->name); /* now skip whitespace */ - while ((c = getchar()) == ' ' || c == '\t'); + while ((c = getchar()) == ' ' || c == '\t') + /* nothing */; /* and print out the remainder of the input line */ while (c != EOF && c != '\n') { putchar(c); @@ -507,11 +418,9 @@ donames(int fd, struct fs *super, char *name) } putchar('\n'); } else { - if (errno) { - err(1, "%s", name); - } /* skip this line */ - while ((c = getchar()) != EOF && c != '\n'); + while ((c = getchar()) != EOF && c != '\n') + /* nothing */; } if (c == EOF) break; @@ -521,11 +430,7 @@ donames(int fd, struct fs *super, char *name) static void usage(void) { -#ifdef COMPAT - fprintf(stderr, "usage: quot [-cfhnv] [-a | filesystem ...]\n"); -#else /* COMPAT */ - fprintf(stderr, "usage: quot [-cfhknv] [-a | filesystem ...]\n"); -#endif /* COMPAT */ + fprintf(stderr, "usage: quot [-cfknv] [-a | filesystem ...]\n"); exit(1); } @@ -538,7 +443,7 @@ quot(char *name, char *mp) get_inode(-1, NULL, 0); /* flush cache */ inituser(); initfsizes(); - if ((fd = open(name,0)) < 0) { + if ((fd = open(name, 0)) < 0) { warn("%s", name); close(fd); return; @@ -555,11 +460,11 @@ quot(char *name, char *mp) close(fd); return; } - printf("%s:",name); + printf("%s:", name); if (mp) - printf(" (%s)",mp); + printf(" (%s)", mp); putchar('\n'); - (*func)(fd, fs, name); + (*func)(fd, fs); free(fs); close(fd); } @@ -567,40 +472,36 @@ quot(char *name, char *mp) int main(int argc, char *argv[]) { - char all = 0; struct statfs *mp; - struct fstab *fs; - int cnt; - int ch; + int ch, cnt; func = douser; -#ifndef COMPAT - header = getbsize(&headerlen,&blocksize); -#endif - while ((ch = getopt(argc, argv, "acfhknv")) != -1) { + header = getbsize(&headerlen, &blocksize); + while ((ch = getopt(argc, argv, "acfhkNnv")) != -1) { switch (ch) { case 'a': - all = 1; + all = true; break; case 'c': func = dofsizes; break; case 'f': - count = 1; + count = true; break; case 'h': - estimate = 1; + /* ignored for backward compatibility */ break; -#ifndef COMPAT case 'k': blocksize = 1024; break; -#endif /* COMPAT */ + case 'N': + noname = true; + break; case 'n': func = donames; break; case 'v': - unused = 1; + unused = true; break; default: usage(); @@ -613,18 +514,16 @@ main(int argc, char *argv[]) usage(); if (all) { - cnt = getmntinfo(&mp,MNT_NOWAIT); - for (; --cnt >= 0; mp++) { - if (!strncmp(mp->f_fstypename, "ufs", MFSNAMELEN)) + for (cnt = getmntinfo(&mp, MNT_NOWAIT); --cnt >= 0; mp++) + if (strncmp(mp->f_fstypename, "ufs", MFSNAMELEN) == 0) quot(mp->f_mntfromname, mp->f_mntonname); - } } - while (--argc >= 0) { - if ((fs = getfsfile(*argv)) != NULL) - quot(fs->fs_spec, 0); + while (argc-- > 0) { + if ((mp = getmntpoint(*argv)) != NULL) + quot(mp->f_mntfromname, mp->f_mntonname); else - quot(*argv,0); + quot(*argv, 0); argv++; } - return 0; + return (0); } diff --git a/usr.sbin/quot/tests/Makefile b/usr.sbin/quot/tests/Makefile new file mode 100644 index 000000000000..d4e64691f905 --- /dev/null +++ b/usr.sbin/quot/tests/Makefile @@ -0,0 +1,4 @@ +PACKAGE= tests +ATF_TESTS_SH= quot_test + +.include <bsd.test.mk> diff --git a/usr.sbin/quot/tests/quot_test.sh b/usr.sbin/quot/tests/quot_test.sh new file mode 100644 index 000000000000..21088d162a53 --- /dev/null +++ b/usr.sbin/quot/tests/quot_test.sh @@ -0,0 +1,102 @@ +# +# Copyright (c) 2025 Dag-Erling Smørgrav <des@FreeBSD.org> +# +# SPDX-License-Identifier: BSD-2-Clause +# + +# Create and mount a UFS filesystem on a small memory disk +quot_setup() +{ + atf_check -o save:dev mdconfig -t malloc -s 16M + local dev=$(cat dev) + atf_check -o ignore newfs "$@" /dev/$dev + atf_check mkdir mnt + local mnt=$(realpath mnt) + atf_check mount /dev/$dev "$mnt" + echo "/dev/$dev: ($mnt)" >expect + printf "%5d\t%5d\t%-8s\n" 8 2 "#0" >>expect +} + +# Create a directory owned by a given UID +quot_adduid() +{ + local uid=$1 + atf_check install -d -o $uid -g 0 mnt/$uid + printf "%5d\t%5d\t%-8s\n" 4 1 "#$uid" >>expect +} + +# Perform the tests +quot_test() +{ + local dev=$(cat dev) + # Create inodes owned by a large number of users to exercise + # hash collisions and rehashing. The code uses an open hash + # table that starts out with only 8 entries and doubles every + # time it fills up. + local uid + for uid in $(seq 1 32); do + quot_adduid $uid + done + # Also create inodes owned by users with long UIDs, up to the + # highest possible value (2^32 - 2, because chown(2) and + # friends interpret 2^32 - 1 as “leave unchanged”). + local shift + for shift in $(seq 6 32); do + quot_adduid $(((1 << shift) - 2)) + done + # Since quot operates directly on the underlying device, not + # on the mounted filesystem, we remount read-only to ensure + # that everything gets flushed to the memory disk. + atf_check mount -ur /dev/$dev + atf_check -o file:expect quot -fkN /dev/$dev + atf_check -o file:expect quot -fkN $(realpath mnt) +} + +# Unmount and release the memory disk +quot_cleanup() +{ + if [ -d mnt ]; then + umount mnt || true + fi + if [ -f dev ]; then + mdconfig -d -u $(cat dev) || true + fi +} + +atf_test_case ufs1 cleanup +ufs1_head() +{ + atf_set descr "Test quot on UFS1" + atf_set require.user root +} +ufs1_body() +{ + quot_setup -O1 + quot_test +} +ufs1_cleanup() +{ + quot_cleanup +} + +atf_test_case ufs2 cleanup +ufs2_head() +{ + atf_set descr "Test quot on UFS2" + atf_set require.user root +} +ufs2_body() +{ + quot_setup -O2 + quot_test +} +ufs2_cleanup() +{ + quot_cleanup +} + +atf_init_test_cases() +{ + atf_add_test_case ufs1 + atf_add_test_case ufs2 +} diff --git a/usr.sbin/sndctl/sndctl.c b/usr.sbin/sndctl/sndctl.c index 156c845481c5..6977f0ab0ebe 100644 --- a/usr.sbin/sndctl/sndctl.c +++ b/usr.sbin/sndctl/sndctl.c @@ -830,6 +830,8 @@ mod_play_vchans(struct snd_dev *dp, void *arg) if (dp->from_user) return (-1); + if (!dp->play.pchans) + return (0); snprintf(buf, sizeof(buf), "dev.pcm.%d.play.vchans", dp->unit); @@ -873,6 +875,8 @@ mod_rec_vchans(struct snd_dev *dp, void *arg) if (dp->from_user) return (-1); + if (!dp->rec.pchans) + return (0); snprintf(buf, sizeof(buf), "dev.pcm.%d.rec.vchans", dp->unit); diff --git a/usr.sbin/virtual_oss/virtual_bt_speaker/bt_speaker.c b/usr.sbin/virtual_oss/virtual_bt_speaker/bt_speaker.c index c61eaf1c338d..0e406cccca21 100644 --- a/usr.sbin/virtual_oss/virtual_bt_speaker/bt_speaker.c +++ b/usr.sbin/virtual_oss/virtual_bt_speaker/bt_speaker.c @@ -47,7 +47,6 @@ #include "avdtp_signal.h" #include "bt.h" -#include "utils.h" static int (*bt_receive_f)(struct bt_config *, void *, int, int); static int (*avdtpACPHandlePacket_f)(struct bt_config *cfg); diff --git a/usr.sbin/virtual_oss/virtual_oss/int.h b/usr.sbin/virtual_oss/virtual_oss/int.h index b3cc573ba8a9..69a943832074 100644 --- a/usr.sbin/virtual_oss/virtual_oss/int.h +++ b/usr.sbin/virtual_oss/virtual_oss/int.h @@ -318,9 +318,6 @@ extern void vclient_rx_equalizer(struct virtual_client *, int64_t *, size_t); extern int vclient_eq_alloc(struct virtual_client *); extern void vclient_eq_free(struct virtual_client *); -/* Internal utilities */ -extern int bt_speaker_main(int argc, char **argv); - /* Internal compressor */ extern void voss_compressor(int64_t *, double *, const struct virtual_compressor *, const unsigned, const unsigned, const int64_t); diff --git a/usr.sbin/virtual_oss/virtual_oss/main.c b/usr.sbin/virtual_oss/virtual_oss/main.c index 3f7fb84ce4c6..afa4ad0727ca 100644 --- a/usr.sbin/virtual_oss/virtual_oss/main.c +++ b/usr.sbin/virtual_oss/virtual_oss/main.c @@ -48,7 +48,6 @@ #include "backend.h" #include "int.h" -#include "utils.h" #include "virtual_oss.h" pthread_mutex_t atomic_mtx; diff --git a/usr.sbin/virtual_oss/virtual_oss/utils.h b/usr.sbin/virtual_oss/virtual_oss/utils.h deleted file mode 100644 index f0998dc75dae..000000000000 --- a/usr.sbin/virtual_oss/virtual_oss/utils.h +++ /dev/null @@ -1,31 +0,0 @@ -/*- - * Copyright (c) 2019 Hans Petter Selasky - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#ifndef _VIRTUAL_UTILS_H_ -#define _VIRTUAL_UTILS_H_ - -int bt_speaker_main(int argc, char **argv); - -#endif /* _VIRTUAL_UTILS_H_ */ |