view release on metacpan or search on metacpan
Changes.Alien-Base view on Meta::CPAN
0.023 Mon Sep 14, 2015
- Fixed typo in FAQ
- Updated FAQ Alien::gmake example to require Alien::gmake 0.11
- Otherwise a production release identical to the 0.22_01 release
0.022_01 Fri Jul 31, 2015
- Add support for ALIEN_INSTALL_TYPE environment variable
0.022 Mon Jul 20, 2015
- Correction for the section "How do I specify a minumum or exact version
requirement for packages that use pkg-config?" in the FAQ.
0.021_01 Wed Jul 15, 2015
- Added a default %{pkg_config} helper
- Fixed bug introduced in 0.016_01 where using --destdir or $ENV{DESTDIR}
would break the "./Build install" command.
0.021 Wed Jul 15, 2015
- Fixed bug where upgrading to 0.020 could break Alien modules installed
before the upgrade. You do not need to re-install your Alien modules,
destdir_ffi_filter
Same as destdir_filter except applies to build_ffi instead of build.
digest
This properties contains the cryptographic digests (if any) that
should be used when verifying any fetched and downloaded files. It is
a hash reference where the key is the filename and the value is an
array reference containing a pair of values, the first being the
algorithm ('SHA256' is recommended) and the second is the actual
digest. The special filename * may be specified to indicate that any
downloaded file should match that digest. If there are both real
filenames and the * placeholder, the real filenames will be used for
filenames that match and any other files will use the placeholder.
Example:
$build->meta_prop->{digest} = {
'foo-1.00.tar.gz' => [ SHA256 => '9feac593aa49a44eb837de52513a57736457f1ea70078346c60f0bfc5f24f2c1' ],
'foo-1.01.tar.gz' => [ SHA256 => '6bbde6a7f10ae5924cf74afc26ff5b7bc4b4f9dfd85c6b534c51bd254697b9e7' ],
'*' => [ SHA256 => '33a20aae3df6ecfbe812b48082926d55391be4a57d858d35753ab1334b9fddb3' ],
download_rule
my $rule = $build->download_rule;
This returns install rule as a string. This is determined by the
environment and should be one of:
warn
Warn only if fetching via non secure source (secure sources include
https, and bundled files, may include other encrypted protocols in
the future).
digest
Require that any downloaded source package have a cryptographic
signature in the alienfile and that signature matches what was
downloaded.
encrypt
Require that any downloaded source package is fetched via secure
source.
digest_or_encrypt
Require that any downloaded source package is either fetched via a
secure source or has a cryptographic signature in the alienfile and
that signature matches what was downloaded.
digest_and_encrypt
Require that any downloaded source package is both fetched via a
secure source and has a cryptographic signature in the alienfile and
that signature matches what was downloaded.
The current default is warn, but in the near future this will be
upgraded to digest_or_encrypt.
set_prefix
$build->set_prefix($prefix);
Set the final (unstaged) prefix. This is normally only called by
corpus/alien_build_plugin_fetch_wget/record/old.json view on Meta::CPAN
{"-k --content-disposition -S http://localhost/corpus/alien_build_plugin_fetch_wget/dir/foo-1.01.tar":{"stderr":"--2021-05-12 00:10:35-- http://localhost/corpus/alien_build_plugin_fetch_wget/dir/foo-1.01.tar\nResolving localhost (localhost)... ::1, ...
corpus/alien_build_plugin_fetch_wget/record/old.yml view on Meta::CPAN
--no-use-server-timestamps don't set the local file's timestamp by
the one on the server
-S, --server-response print server response
--spider don't download anything
-T, --timeout=SECONDS set all timeout values to SECONDS
--dns-timeout=SECS set the DNS lookup timeout to SECS
--connect-timeout=SECS set the connect timeout to SECS
--read-timeout=SECS set the read timeout to SECS
-w, --wait=SECONDS wait SECONDS between retrievals
--waitretry=SECONDS wait 1..SECONDS between retries of a retrieval
--random-wait wait from 0.5*WAIT...1.5*WAIT secs between retrievals
--no-proxy explicitly turn off proxy
-Q, --quota=NUMBER set retrieval quota to NUMBER
--bind-address=ADDRESS bind to ADDRESS (hostname or IP) on local host
--limit-rate=RATE limit download rate to RATE
--no-dns-cache disable caching DNS lookups
--restrict-file-names=OS restrict chars in file names to ones OS allows
--ignore-case ignore case when matching files/directories
-4, --inet4-only connect only to IPv4 addresses
-6, --inet6-only connect only to IPv6 addresses
--prefer-family=FAMILY connect first to addresses of specified family,
corpus/alien_build_plugin_fetch_wget/record/old.yml view on Meta::CPAN
--body-data=STRING send STRING as data. --method MUST be set
--body-file=FILE send contents of FILE. --method MUST be set
--content-disposition honor the Content-Disposition header when
choosing local file names (EXPERIMENTAL)
--content-on-error output the received content on server errors
--auth-no-challenge send Basic HTTP authentication information
without first waiting for the server's
challenge
HTTPS (SSL/TLS) options:
--secure-protocol=PR choose secure protocol, one of auto, SSLv2,
SSLv3, TLSv1, TLSv1_1, TLSv1_2 and PFS
--https-only only follow secure HTTPS links
--no-check-certificate don't validate the server's certificate
--certificate=FILE client certificate file
--certificate-type=TYPE client certificate type, PEM or DER
--private-key=FILE private key file
--private-key-type=TYPE private key type, PEM or DER
--ca-certificate=FILE file with the bundle of CAs
--ca-directory=DIR directory where hash list of CAs is stored
--crl-file=FILE file with bundle of CRLs
--pinnedpubkey=FILE/HASHES Public key (PEM/DER) file, or any number
of base64 encoded sha256 hashes preceded by
'sha256//' and separated by ';', to verify
peer against
--ciphers=STR Set the priority string (GnuTLS) or cipher list string (OpenSSL) directly.
Use with care. This option overrides --secure-protocol.
The format and syntax of this string depend on the specific SSL/TLS engine.
HSTS options:
--no-hsts disable HSTS
--hsts-file path of HSTS database (will override default)
FTP options:
--ftp-user=USER set ftp user to USER
--ftp-password=PASS set ftp password to PASS
--no-remove-listing don't remove '.listing' files
--no-glob turn off FTP file name globbing
corpus/alien_build_plugin_fetch_wget/record/old.yml view on Meta::CPAN
Connecting to localhost (localhost)|::1|:42643... failed: Connection refused.
Connecting to localhost (localhost)|127.0.0.1|:42643... connected.
HTTP request sent, awaiting response...
HTTP/1.0 404 Not Found
Date: Wed, 12 May 2021 06:10:35 GMT
Server: HTTP::Server::PSGI
Content-Type: text/plain
Content-Length: 9
2021-05-12 00:10:35 ERROR 404: Not Found.
Converted links in 0 files in 0 seconds.
stdout: ''
-k --content-disposition -S http://localhost/corpus/alien_build_plugin_fetch_wget/dir/foo-1.01.tar:
exit: 0
files:
foo-1.01.tar: "content:foo-1.01\n"
stderr: |
--2021-05-12 00:10:35-- http://localhost/corpus/alien_build_plugin_fetch_wget/dir/foo-1.01.tar
Resolving localhost (localhost)... ::1, 127.0.0.1
Connecting to localhost (localhost)|::1|:42643... failed: Connection refused.
Connecting to localhost (localhost)|127.0.0.1|:42643... connected.
corpus/alien_build_plugin_fetch_wget/record/old.yml view on Meta::CPAN
Content-Type: application/x-tar
Content-Length: 17
Last-Modified: Sun, 02 May 2021 15:41:03 GMT
Length: 17 [application/x-tar]
Saving to: âÂÂfoo-1.01.tarâÂÂ
0K 100% 1.65M=0s
2021-05-12 00:10:35 (1.65 MB/s) - âÂÂfoo-1.01.tarâ saved [17/17]
Converted links in 0 files in 0 seconds.
stdout: ''
-k --content-disposition -S http://localhost/corpus/alien_build_plugin_fetch_wget/dir/html_test.html:
exit: 0
files:
html_test.html: "<html><head><title>Hello World</title></head><body><p>Hello World</p></body></html>\n"
stderr: |
--2021-05-12 00:10:35-- http://localhost/corpus/alien_build_plugin_fetch_wget/dir/html_test.html
Resolving localhost (localhost)... ::1, 127.0.0.1
Connecting to localhost (localhost)|::1|:42643... failed: Connection refused.
Connecting to localhost (localhost)|127.0.0.1|:42643... connected.
corpus/alien_build_plugin_fetch_wget/record/old.yml view on Meta::CPAN
Content-Length: 84
Last-Modified: Wed, 12 May 2021 04:39:27 GMT
Length: 84 [text/html]
Saving to: âÂÂhtml_test.htmlâÂÂ
0K 100% 9.79M=0s
2021-05-12 00:10:35 (9.79 MB/s) - âÂÂhtml_test.htmlâ saved [84/84]
Converting links in html_test.html... nothing to do.
Converted links in 1 files in 0 seconds.
stdout: ''
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/debug/html/man3/BIO_reset.html
x64-windows/debug/html/man3/BIO_retry_type.html
x64-windows/debug/html/man3/BIO_rw_filename.html
x64-windows/debug/html/man3/BIO_s_accept.html
x64-windows/debug/html/man3/BIO_s_bio.html
x64-windows/debug/html/man3/BIO_s_connect.html
x64-windows/debug/html/man3/BIO_s_fd.html
x64-windows/debug/html/man3/BIO_s_file.html
x64-windows/debug/html/man3/BIO_s_mem.html
x64-windows/debug/html/man3/BIO_s_null.html
x64-windows/debug/html/man3/BIO_s_secmem.html
x64-windows/debug/html/man3/BIO_s_socket.html
x64-windows/debug/html/man3/BIO_seek.html
x64-windows/debug/html/man3/BIO_set_accept_bios.html
x64-windows/debug/html/man3/BIO_set_accept_ip_family.html
x64-windows/debug/html/man3/BIO_set_accept_name.html
x64-windows/debug/html/man3/BIO_set_accept_port.html
x64-windows/debug/html/man3/BIO_set_bind_mode.html
x64-windows/debug/html/man3/BIO_set_buffer_read_data.html
x64-windows/debug/html/man3/BIO_set_buffer_size.html
x64-windows/debug/html/man3/BIO_set_callback.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/debug/html/man3/BN_BLINDING_lock.html
x64-windows/debug/html/man3/BN_BLINDING_new.html
x64-windows/debug/html/man3/BN_BLINDING_set_current_thread.html
x64-windows/debug/html/man3/BN_BLINDING_set_flags.html
x64-windows/debug/html/man3/BN_BLINDING_unlock.html
x64-windows/debug/html/man3/BN_BLINDING_update.html
x64-windows/debug/html/man3/BN_CTX_end.html
x64-windows/debug/html/man3/BN_CTX_free.html
x64-windows/debug/html/man3/BN_CTX_get.html
x64-windows/debug/html/man3/BN_CTX_new.html
x64-windows/debug/html/man3/BN_CTX_secure_new.html
x64-windows/debug/html/man3/BN_CTX_start.html
x64-windows/debug/html/man3/BN_GENCB_call.html
x64-windows/debug/html/man3/BN_GENCB_free.html
x64-windows/debug/html/man3/BN_GENCB_get_arg.html
x64-windows/debug/html/man3/BN_GENCB_new.html
x64-windows/debug/html/man3/BN_GENCB_set.html
x64-windows/debug/html/man3/BN_GENCB_set_old.html
x64-windows/debug/html/man3/BN_MONT_CTX_copy.html
x64-windows/debug/html/man3/BN_MONT_CTX_free.html
x64-windows/debug/html/man3/BN_MONT_CTX_new.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/debug/html/man3/BN_print.html
x64-windows/debug/html/man3/BN_print_fp.html
x64-windows/debug/html/man3/BN_priv_rand.html
x64-windows/debug/html/man3/BN_priv_rand_range.html
x64-windows/debug/html/man3/BN_pseudo_rand.html
x64-windows/debug/html/man3/BN_pseudo_rand_range.html
x64-windows/debug/html/man3/BN_rand.html
x64-windows/debug/html/man3/BN_rand_range.html
x64-windows/debug/html/man3/BN_rshift.html
x64-windows/debug/html/man3/BN_rshift1.html
x64-windows/debug/html/man3/BN_secure_new.html
x64-windows/debug/html/man3/BN_security_bits.html
x64-windows/debug/html/man3/BN_set_bit.html
x64-windows/debug/html/man3/BN_set_word.html
x64-windows/debug/html/man3/BN_sqr.html
x64-windows/debug/html/man3/BN_sub.html
x64-windows/debug/html/man3/BN_sub_word.html
x64-windows/debug/html/man3/BN_swap.html
x64-windows/debug/html/man3/BN_to_ASN1_ENUMERATED.html
x64-windows/debug/html/man3/BN_to_ASN1_INTEGER.html
x64-windows/debug/html/man3/BN_to_montgomery.html
x64-windows/debug/html/man3/BN_ucmp.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/debug/html/man3/CRYPTO_malloc.html
x64-windows/debug/html/man3/CRYPTO_mem_ctrl.html
x64-windows/debug/html/man3/CRYPTO_mem_debug_pop.html
x64-windows/debug/html/man3/CRYPTO_mem_debug_push.html
x64-windows/debug/html/man3/CRYPTO_mem_leaks.html
x64-windows/debug/html/man3/CRYPTO_mem_leaks_cb.html
x64-windows/debug/html/man3/CRYPTO_mem_leaks_fp.html
x64-windows/debug/html/man3/CRYPTO_memcmp.html
x64-windows/debug/html/man3/CRYPTO_new_ex_data.html
x64-windows/debug/html/man3/CRYPTO_realloc.html
x64-windows/debug/html/man3/CRYPTO_secure_clear_free.html
x64-windows/debug/html/man3/CRYPTO_secure_free.html
x64-windows/debug/html/man3/CRYPTO_secure_malloc.html
x64-windows/debug/html/man3/CRYPTO_secure_malloc_done.html
x64-windows/debug/html/man3/CRYPTO_secure_malloc_init.html
x64-windows/debug/html/man3/CRYPTO_secure_malloc_initialized.html
x64-windows/debug/html/man3/CRYPTO_secure_used.html
x64-windows/debug/html/man3/CRYPTO_secure_zalloc.html
x64-windows/debug/html/man3/CRYPTO_set_ex_data.html
x64-windows/debug/html/man3/CRYPTO_set_mem_debug.html
x64-windows/debug/html/man3/CRYPTO_set_mem_functions.html
x64-windows/debug/html/man3/CRYPTO_strdup.html
x64-windows/debug/html/man3/CRYPTO_strndup.html
x64-windows/debug/html/man3/CRYPTO_zalloc.html
x64-windows/debug/html/man3/CTLOG_STORE_free.html
x64-windows/debug/html/man3/CTLOG_STORE_get0_log_by_id.html
x64-windows/debug/html/man3/CTLOG_STORE_load_default_file.html
x64-windows/debug/html/man3/CTLOG_STORE_load_file.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/debug/html/man3/DH_meth_set_bn_mod_exp.html
x64-windows/debug/html/man3/DH_meth_set_compute_key.html
x64-windows/debug/html/man3/DH_meth_set_finish.html
x64-windows/debug/html/man3/DH_meth_set_flags.html
x64-windows/debug/html/man3/DH_meth_set_generate_key.html
x64-windows/debug/html/man3/DH_meth_set_generate_params.html
x64-windows/debug/html/man3/DH_meth_set_init.html
x64-windows/debug/html/man3/DH_new.html
x64-windows/debug/html/man3/DH_new_by_nid.html
x64-windows/debug/html/man3/DH_new_method.html
x64-windows/debug/html/man3/DH_security_bits.html
x64-windows/debug/html/man3/DH_set0_key.html
x64-windows/debug/html/man3/DH_set0_pqg.html
x64-windows/debug/html/man3/DH_set_default_method.html
x64-windows/debug/html/man3/DH_set_ex_data.html
x64-windows/debug/html/man3/DH_set_flags.html
x64-windows/debug/html/man3/DH_set_length.html
x64-windows/debug/html/man3/DH_set_method.html
x64-windows/debug/html/man3/DH_size.html
x64-windows/debug/html/man3/DH_test_flags.html
x64-windows/debug/html/man3/DHparams_print.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/debug/html/man3/DSA_meth_set_keygen.html
x64-windows/debug/html/man3/DSA_meth_set_mod_exp.html
x64-windows/debug/html/man3/DSA_meth_set_paramgen.html
x64-windows/debug/html/man3/DSA_meth_set_sign.html
x64-windows/debug/html/man3/DSA_meth_set_sign_setup.html
x64-windows/debug/html/man3/DSA_meth_set_verify.html
x64-windows/debug/html/man3/DSA_new.html
x64-windows/debug/html/man3/DSA_new_method.html
x64-windows/debug/html/man3/DSA_print.html
x64-windows/debug/html/man3/DSA_print_fp.html
x64-windows/debug/html/man3/DSA_security_bits.html
x64-windows/debug/html/man3/DSA_set0_key.html
x64-windows/debug/html/man3/DSA_set0_pqg.html
x64-windows/debug/html/man3/DSA_set_default_method.html
x64-windows/debug/html/man3/DSA_set_ex_data.html
x64-windows/debug/html/man3/DSA_set_flags.html
x64-windows/debug/html/man3/DSA_set_method.html
x64-windows/debug/html/man3/DSA_sign.html
x64-windows/debug/html/man3/DSA_sign_setup.html
x64-windows/debug/html/man3/DSA_size.html
x64-windows/debug/html/man3/DSA_test_flags.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/debug/html/man3/EVP_PKEY_CTX_new_id.html
x64-windows/debug/html/man3/EVP_PKEY_CTX_set0_dh_kdf_oid.html
x64-windows/debug/html/man3/EVP_PKEY_CTX_set0_dh_kdf_ukm.html
x64-windows/debug/html/man3/EVP_PKEY_CTX_set0_ecdh_kdf_ukm.html
x64-windows/debug/html/man3/EVP_PKEY_CTX_set0_rsa_oaep_label.html
x64-windows/debug/html/man3/EVP_PKEY_CTX_set1_hkdf_key.html
x64-windows/debug/html/man3/EVP_PKEY_CTX_set1_hkdf_salt.html
x64-windows/debug/html/man3/EVP_PKEY_CTX_set1_id.html
x64-windows/debug/html/man3/EVP_PKEY_CTX_set1_pbe_pass.html
x64-windows/debug/html/man3/EVP_PKEY_CTX_set1_scrypt_salt.html
x64-windows/debug/html/man3/EVP_PKEY_CTX_set1_tls1_prf_secret.html
x64-windows/debug/html/man3/EVP_PKEY_CTX_set_app_data.html
x64-windows/debug/html/man3/EVP_PKEY_CTX_set_cb.html
x64-windows/debug/html/man3/EVP_PKEY_CTX_set_dh_kdf_md.html
x64-windows/debug/html/man3/EVP_PKEY_CTX_set_dh_kdf_outlen.html
x64-windows/debug/html/man3/EVP_PKEY_CTX_set_dh_kdf_type.html
x64-windows/debug/html/man3/EVP_PKEY_CTX_set_dh_nid.html
x64-windows/debug/html/man3/EVP_PKEY_CTX_set_dh_pad.html
x64-windows/debug/html/man3/EVP_PKEY_CTX_set_dh_paramgen_generator.html
x64-windows/debug/html/man3/EVP_PKEY_CTX_set_dh_paramgen_prime_len.html
x64-windows/debug/html/man3/EVP_PKEY_CTX_set_dh_paramgen_subprime_len.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/debug/html/man3/EVP_PKEY_asn1_set_ctrl.html
x64-windows/debug/html/man3/EVP_PKEY_asn1_set_free.html
x64-windows/debug/html/man3/EVP_PKEY_asn1_set_get_priv_key.html
x64-windows/debug/html/man3/EVP_PKEY_asn1_set_get_pub_key.html
x64-windows/debug/html/man3/EVP_PKEY_asn1_set_item.html
x64-windows/debug/html/man3/EVP_PKEY_asn1_set_param.html
x64-windows/debug/html/man3/EVP_PKEY_asn1_set_param_check.html
x64-windows/debug/html/man3/EVP_PKEY_asn1_set_private.html
x64-windows/debug/html/man3/EVP_PKEY_asn1_set_public.html
x64-windows/debug/html/man3/EVP_PKEY_asn1_set_public_check.html
x64-windows/debug/html/man3/EVP_PKEY_asn1_set_security_bits.html
x64-windows/debug/html/man3/EVP_PKEY_asn1_set_set_priv_key.html
x64-windows/debug/html/man3/EVP_PKEY_asn1_set_set_pub_key.html
x64-windows/debug/html/man3/EVP_PKEY_asn1_set_siginf.html
x64-windows/debug/html/man3/EVP_PKEY_assign_DH.html
x64-windows/debug/html/man3/EVP_PKEY_assign_DSA.html
x64-windows/debug/html/man3/EVP_PKEY_assign_EC_KEY.html
x64-windows/debug/html/man3/EVP_PKEY_assign_POLY1305.html
x64-windows/debug/html/man3/EVP_PKEY_assign_RSA.html
x64-windows/debug/html/man3/EVP_PKEY_assign_SIPHASH.html
x64-windows/debug/html/man3/EVP_PKEY_base_id.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/debug/html/man3/EVP_PKEY_new_mac_key.html
x64-windows/debug/html/man3/EVP_PKEY_new_raw_private_key.html
x64-windows/debug/html/man3/EVP_PKEY_new_raw_public_key.html
x64-windows/debug/html/man3/EVP_PKEY_param_check.html
x64-windows/debug/html/man3/EVP_PKEY_paramgen.html
x64-windows/debug/html/man3/EVP_PKEY_paramgen_init.html
x64-windows/debug/html/man3/EVP_PKEY_print_params.html
x64-windows/debug/html/man3/EVP_PKEY_print_private.html
x64-windows/debug/html/man3/EVP_PKEY_print_public.html
x64-windows/debug/html/man3/EVP_PKEY_public_check.html
x64-windows/debug/html/man3/EVP_PKEY_security_bits.html
x64-windows/debug/html/man3/EVP_PKEY_set1_DH.html
x64-windows/debug/html/man3/EVP_PKEY_set1_DSA.html
x64-windows/debug/html/man3/EVP_PKEY_set1_EC_KEY.html
x64-windows/debug/html/man3/EVP_PKEY_set1_RSA.html
x64-windows/debug/html/man3/EVP_PKEY_set1_engine.html
x64-windows/debug/html/man3/EVP_PKEY_set_alias_type.html
x64-windows/debug/html/man3/EVP_PKEY_sign.html
x64-windows/debug/html/man3/EVP_PKEY_sign_init.html
x64-windows/debug/html/man3/EVP_PKEY_size.html
x64-windows/debug/html/man3/EVP_PKEY_type.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/debug/html/man3/OPENSSL_instrument_bus.html
x64-windows/debug/html/man3/OPENSSL_instrument_bus2.html
x64-windows/debug/html/man3/OPENSSL_load_builtin_modules.html
x64-windows/debug/html/man3/OPENSSL_malloc.html
x64-windows/debug/html/man3/OPENSSL_malloc_init.html
x64-windows/debug/html/man3/OPENSSL_mem_debug_pop.html
x64-windows/debug/html/man3/OPENSSL_mem_debug_push.html
x64-windows/debug/html/man3/OPENSSL_memdup.html
x64-windows/debug/html/man3/OPENSSL_no_config.html
x64-windows/debug/html/man3/OPENSSL_realloc.html
x64-windows/debug/html/man3/OPENSSL_secure_actual_size.html
x64-windows/debug/html/man3/OPENSSL_secure_clear_free.html
x64-windows/debug/html/man3/OPENSSL_secure_free.html
x64-windows/debug/html/man3/OPENSSL_secure_malloc.html
x64-windows/debug/html/man3/OPENSSL_secure_zalloc.html
x64-windows/debug/html/man3/OPENSSL_strdup.html
x64-windows/debug/html/man3/OPENSSL_strlcat.html
x64-windows/debug/html/man3/OPENSSL_strlcpy.html
x64-windows/debug/html/man3/OPENSSL_strndup.html
x64-windows/debug/html/man3/OPENSSL_thread_stop.html
x64-windows/debug/html/man3/OPENSSL_zalloc.html
x64-windows/debug/html/man3/OSSL_STORE_CTX.html
x64-windows/debug/html/man3/OSSL_STORE_INFO.html
x64-windows/debug/html/man3/OSSL_STORE_INFO_free.html
x64-windows/debug/html/man3/OSSL_STORE_INFO_get0_CERT.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/debug/html/man3/PBE2PARAM_free.html
x64-windows/debug/html/man3/PBE2PARAM_new.html
x64-windows/debug/html/man3/PBEPARAM_free.html
x64-windows/debug/html/man3/PBEPARAM_new.html
x64-windows/debug/html/man3/PBKDF2PARAM_free.html
x64-windows/debug/html/man3/PBKDF2PARAM_new.html
x64-windows/debug/html/man3/PEM_FLAG_EAY_COMPATIBLE.html
x64-windows/debug/html/man3/PEM_FLAG_ONLY_B64.html
x64-windows/debug/html/man3/PEM_FLAG_SECURE.html
x64-windows/debug/html/man3/PEM_bytes_read_bio.html
x64-windows/debug/html/man3/PEM_bytes_read_bio_secmem.html
x64-windows/debug/html/man3/PEM_do_header.html
x64-windows/debug/html/man3/PEM_get_EVP_CIPHER_INFO.html
x64-windows/debug/html/man3/PEM_read.html
x64-windows/debug/html/man3/PEM_read_CMS.html
x64-windows/debug/html/man3/PEM_read_DHparams.html
x64-windows/debug/html/man3/PEM_read_DSAPrivateKey.html
x64-windows/debug/html/man3/PEM_read_DSA_PUBKEY.html
x64-windows/debug/html/man3/PEM_read_DSAparams.html
x64-windows/debug/html/man3/PEM_read_ECPKParameters.html
x64-windows/debug/html/man3/PEM_read_ECPrivateKey.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/debug/html/man3/RAND_DRBG_get0_master.html
x64-windows/debug/html/man3/RAND_DRBG_get0_private.html
x64-windows/debug/html/man3/RAND_DRBG_get0_public.html
x64-windows/debug/html/man3/RAND_DRBG_get_entropy_fn.html
x64-windows/debug/html/man3/RAND_DRBG_get_ex_data.html
x64-windows/debug/html/man3/RAND_DRBG_get_ex_new_index.html
x64-windows/debug/html/man3/RAND_DRBG_get_nonce_fn.html
x64-windows/debug/html/man3/RAND_DRBG_instantiate.html
x64-windows/debug/html/man3/RAND_DRBG_new.html
x64-windows/debug/html/man3/RAND_DRBG_reseed.html
x64-windows/debug/html/man3/RAND_DRBG_secure_new.html
x64-windows/debug/html/man3/RAND_DRBG_set.html
x64-windows/debug/html/man3/RAND_DRBG_set_callbacks.html
x64-windows/debug/html/man3/RAND_DRBG_set_defaults.html
x64-windows/debug/html/man3/RAND_DRBG_set_ex_data.html
x64-windows/debug/html/man3/RAND_DRBG_set_reseed_defaults.html
x64-windows/debug/html/man3/RAND_DRBG_set_reseed_interval.html
x64-windows/debug/html/man3/RAND_DRBG_set_reseed_time_interval.html
x64-windows/debug/html/man3/RAND_DRBG_uninstantiate.html
x64-windows/debug/html/man3/RAND_OpenSSL.html
x64-windows/debug/html/man3/RAND_add.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/debug/html/man3/RSA_padding_check_PKCS1_type_1.html
x64-windows/debug/html/man3/RSA_padding_check_PKCS1_type_2.html
x64-windows/debug/html/man3/RSA_padding_check_SSLv23.html
x64-windows/debug/html/man3/RSA_padding_check_none.html
x64-windows/debug/html/man3/RSA_print.html
x64-windows/debug/html/man3/RSA_print_fp.html
x64-windows/debug/html/man3/RSA_private_decrypt.html
x64-windows/debug/html/man3/RSA_private_encrypt.html
x64-windows/debug/html/man3/RSA_public_decrypt.html
x64-windows/debug/html/man3/RSA_public_encrypt.html
x64-windows/debug/html/man3/RSA_security_bits.html
x64-windows/debug/html/man3/RSA_set0_crt_params.html
x64-windows/debug/html/man3/RSA_set0_factors.html
x64-windows/debug/html/man3/RSA_set0_key.html
x64-windows/debug/html/man3/RSA_set0_multi_prime_params.html
x64-windows/debug/html/man3/RSA_set_default_method.html
x64-windows/debug/html/man3/RSA_set_ex_data.html
x64-windows/debug/html/man3/RSA_set_flags.html
x64-windows/debug/html/man3/RSA_set_method.html
x64-windows/debug/html/man3/RSA_sign.html
x64-windows/debug/html/man3/RSA_sign_ASN1_OCTET_STRING.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/debug/html/man3/SSL_CTX_dane_set_flags.html
x64-windows/debug/html/man3/SSL_CTX_decrypt_session_ticket_fn.html
x64-windows/debug/html/man3/SSL_CTX_disable_ct.html
x64-windows/debug/html/man3/SSL_CTX_enable_ct.html
x64-windows/debug/html/man3/SSL_CTX_flush_sessions.html
x64-windows/debug/html/man3/SSL_CTX_free.html
x64-windows/debug/html/man3/SSL_CTX_generate_session_ticket_fn.html
x64-windows/debug/html/man3/SSL_CTX_get0_CA_list.html
x64-windows/debug/html/man3/SSL_CTX_get0_chain_certs.html
x64-windows/debug/html/man3/SSL_CTX_get0_param.html
x64-windows/debug/html/man3/SSL_CTX_get0_security_ex_data.html
x64-windows/debug/html/man3/SSL_CTX_get_cert_store.html
x64-windows/debug/html/man3/SSL_CTX_get_ciphers.html
x64-windows/debug/html/man3/SSL_CTX_get_client_CA_list.html
x64-windows/debug/html/man3/SSL_CTX_get_client_cert_cb.html
x64-windows/debug/html/man3/SSL_CTX_get_default_passwd_cb.html
x64-windows/debug/html/man3/SSL_CTX_get_default_passwd_cb_userdata.html
x64-windows/debug/html/man3/SSL_CTX_get_default_read_ahead.html
x64-windows/debug/html/man3/SSL_CTX_get_ex_data.html
x64-windows/debug/html/man3/SSL_CTX_get_info_callback.html
x64-windows/debug/html/man3/SSL_CTX_get_keylog_callback.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/debug/html/man3/SSL_CTX_get_max_early_data.html
x64-windows/debug/html/man3/SSL_CTX_get_max_proto_version.html
x64-windows/debug/html/man3/SSL_CTX_get_min_proto_version.html
x64-windows/debug/html/man3/SSL_CTX_get_mode.html
x64-windows/debug/html/man3/SSL_CTX_get_num_tickets.html
x64-windows/debug/html/man3/SSL_CTX_get_options.html
x64-windows/debug/html/man3/SSL_CTX_get_quiet_shutdown.html
x64-windows/debug/html/man3/SSL_CTX_get_read_ahead.html
x64-windows/debug/html/man3/SSL_CTX_get_record_padding_callback_arg.html
x64-windows/debug/html/man3/SSL_CTX_get_recv_max_early_data.html
x64-windows/debug/html/man3/SSL_CTX_get_security_callback.html
x64-windows/debug/html/man3/SSL_CTX_get_security_level.html
x64-windows/debug/html/man3/SSL_CTX_get_session_cache_mode.html
x64-windows/debug/html/man3/SSL_CTX_get_timeout.html
x64-windows/debug/html/man3/SSL_CTX_get_tlsext_status_arg.html
x64-windows/debug/html/man3/SSL_CTX_get_tlsext_status_cb.html
x64-windows/debug/html/man3/SSL_CTX_get_tlsext_status_type.html
x64-windows/debug/html/man3/SSL_CTX_get_verify_callback.html
x64-windows/debug/html/man3/SSL_CTX_get_verify_depth.html
x64-windows/debug/html/man3/SSL_CTX_get_verify_mode.html
x64-windows/debug/html/man3/SSL_CTX_has_client_custom_ext.html
x64-windows/debug/html/man3/SSL_CTX_keylog_cb_func.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/debug/html/man3/SSL_CTX_sess_number.html
x64-windows/debug/html/man3/SSL_CTX_sess_set_cache_size.html
x64-windows/debug/html/man3/SSL_CTX_sess_set_get_cb.html
x64-windows/debug/html/man3/SSL_CTX_sess_set_new_cb.html
x64-windows/debug/html/man3/SSL_CTX_sess_set_remove_cb.html
x64-windows/debug/html/man3/SSL_CTX_sess_timeouts.html
x64-windows/debug/html/man3/SSL_CTX_sessions.html
x64-windows/debug/html/man3/SSL_CTX_set0_CA_list.html
x64-windows/debug/html/man3/SSL_CTX_set0_chain.html
x64-windows/debug/html/man3/SSL_CTX_set0_chain_cert_store.html
x64-windows/debug/html/man3/SSL_CTX_set0_security_ex_data.html
x64-windows/debug/html/man3/SSL_CTX_set0_verify_cert_store.html
x64-windows/debug/html/man3/SSL_CTX_set1_cert_store.html
x64-windows/debug/html/man3/SSL_CTX_set1_chain.html
x64-windows/debug/html/man3/SSL_CTX_set1_chain_cert_store.html
x64-windows/debug/html/man3/SSL_CTX_set1_client_sigalgs.html
x64-windows/debug/html/man3/SSL_CTX_set1_client_sigalgs_list.html
x64-windows/debug/html/man3/SSL_CTX_set1_curves.html
x64-windows/debug/html/man3/SSL_CTX_set1_curves_list.html
x64-windows/debug/html/man3/SSL_CTX_set1_groups.html
x64-windows/debug/html/man3/SSL_CTX_set1_groups_list.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/debug/html/man3/SSL_CTX_set_post_handshake_auth.html
x64-windows/debug/html/man3/SSL_CTX_set_psk_client_callback.html
x64-windows/debug/html/man3/SSL_CTX_set_psk_find_session_callback.html
x64-windows/debug/html/man3/SSL_CTX_set_psk_server_callback.html
x64-windows/debug/html/man3/SSL_CTX_set_psk_use_session_callback.html
x64-windows/debug/html/man3/SSL_CTX_set_quiet_shutdown.html
x64-windows/debug/html/man3/SSL_CTX_set_read_ahead.html
x64-windows/debug/html/man3/SSL_CTX_set_record_padding_callback.html
x64-windows/debug/html/man3/SSL_CTX_set_record_padding_callback_arg.html
x64-windows/debug/html/man3/SSL_CTX_set_recv_max_early_data.html
x64-windows/debug/html/man3/SSL_CTX_set_security_callback.html
x64-windows/debug/html/man3/SSL_CTX_set_security_level.html
x64-windows/debug/html/man3/SSL_CTX_set_session_cache_mode.html
x64-windows/debug/html/man3/SSL_CTX_set_session_id_context.html
x64-windows/debug/html/man3/SSL_CTX_set_session_ticket_cb.html
x64-windows/debug/html/man3/SSL_CTX_set_split_send_fragment.html
x64-windows/debug/html/man3/SSL_CTX_set_ssl_version.html
x64-windows/debug/html/man3/SSL_CTX_set_stateless_cookie_generate_cb.html
x64-windows/debug/html/man3/SSL_CTX_set_stateless_cookie_verify_cb.html
x64-windows/debug/html/man3/SSL_CTX_set_timeout.html
x64-windows/debug/html/man3/SSL_CTX_set_tlsext_max_fragment_length.html
x64-windows/debug/html/man3/SSL_CTX_set_tlsext_servername_arg.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/debug/html/man3/SSL_get0_CA_list.html
x64-windows/debug/html/man3/SSL_get0_alpn_selected.html
x64-windows/debug/html/man3/SSL_get0_chain_certs.html
x64-windows/debug/html/man3/SSL_get0_dane_authority.html
x64-windows/debug/html/man3/SSL_get0_dane_tlsa.html
x64-windows/debug/html/man3/SSL_get0_next_proto_negotiated.html
x64-windows/debug/html/man3/SSL_get0_param.html
x64-windows/debug/html/man3/SSL_get0_peer_CA_list.html
x64-windows/debug/html/man3/SSL_get0_peer_scts.html
x64-windows/debug/html/man3/SSL_get0_peername.html
x64-windows/debug/html/man3/SSL_get0_security_ex_data.html
x64-windows/debug/html/man3/SSL_get0_session.html
x64-windows/debug/html/man3/SSL_get0_verified_chain.html
x64-windows/debug/html/man3/SSL_get1_curves.html
x64-windows/debug/html/man3/SSL_get1_groups.html
x64-windows/debug/html/man3/SSL_get1_session.html
x64-windows/debug/html/man3/SSL_get1_supported_ciphers.html
x64-windows/debug/html/man3/SSL_get_SSL_CTX.html
x64-windows/debug/html/man3/SSL_get_all_async_fds.html
x64-windows/debug/html/man3/SSL_get_changed_async_fds.html
x64-windows/debug/html/man3/SSL_get_cipher.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/debug/html/man3/SSL_get_peer_tmp_key.html
x64-windows/debug/html/man3/SSL_get_pending_cipher.html
x64-windows/debug/html/man3/SSL_get_psk_identity.html
x64-windows/debug/html/man3/SSL_get_psk_identity_hint.html
x64-windows/debug/html/man3/SSL_get_quiet_shutdown.html
x64-windows/debug/html/man3/SSL_get_rbio.html
x64-windows/debug/html/man3/SSL_get_read_ahead.html
x64-windows/debug/html/man3/SSL_get_record_padding_callback_arg.html
x64-windows/debug/html/man3/SSL_get_recv_max_early_data.html
x64-windows/debug/html/man3/SSL_get_rfd.html
x64-windows/debug/html/man3/SSL_get_secure_renegotiation_support.html
x64-windows/debug/html/man3/SSL_get_security_callback.html
x64-windows/debug/html/man3/SSL_get_security_level.html
x64-windows/debug/html/man3/SSL_get_selected_srtp_profile.html
x64-windows/debug/html/man3/SSL_get_server_random.html
x64-windows/debug/html/man3/SSL_get_server_tmp_key.html
x64-windows/debug/html/man3/SSL_get_servername.html
x64-windows/debug/html/man3/SSL_get_servername_type.html
x64-windows/debug/html/man3/SSL_get_session.html
x64-windows/debug/html/man3/SSL_get_shared_ciphers.html
x64-windows/debug/html/man3/SSL_get_shared_curve.html
x64-windows/debug/html/man3/SSL_get_shared_group.html
x64-windows/debug/html/man3/SSL_get_shared_sigalgs.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/debug/html/man3/SSL_renegotiate_pending.html
x64-windows/debug/html/man3/SSL_rstate_string.html
x64-windows/debug/html/man3/SSL_rstate_string_long.html
x64-windows/debug/html/man3/SSL_select_current_cert.html
x64-windows/debug/html/man3/SSL_select_next_proto.html
x64-windows/debug/html/man3/SSL_session_reused.html
x64-windows/debug/html/man3/SSL_set0_CA_list.html
x64-windows/debug/html/man3/SSL_set0_chain.html
x64-windows/debug/html/man3/SSL_set0_chain_cert_store.html
x64-windows/debug/html/man3/SSL_set0_rbio.html
x64-windows/debug/html/man3/SSL_set0_security_ex_data.html
x64-windows/debug/html/man3/SSL_set0_verify_cert_store.html
x64-windows/debug/html/man3/SSL_set0_wbio.html
x64-windows/debug/html/man3/SSL_set1_chain.html
x64-windows/debug/html/man3/SSL_set1_chain_cert_store.html
x64-windows/debug/html/man3/SSL_set1_client_sigalgs.html
x64-windows/debug/html/man3/SSL_set1_client_sigalgs_list.html
x64-windows/debug/html/man3/SSL_set1_curves.html
x64-windows/debug/html/man3/SSL_set1_curves_list.html
x64-windows/debug/html/man3/SSL_set1_groups.html
x64-windows/debug/html/man3/SSL_set1_groups_list.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/debug/html/man3/SSL_set_psk_client_callback.html
x64-windows/debug/html/man3/SSL_set_psk_find_session_callback.html
x64-windows/debug/html/man3/SSL_set_psk_server_callback.html
x64-windows/debug/html/man3/SSL_set_psk_use_session_callback.html
x64-windows/debug/html/man3/SSL_set_quiet_shutdown.html
x64-windows/debug/html/man3/SSL_set_read_ahead.html
x64-windows/debug/html/man3/SSL_set_record_padding_callback.html
x64-windows/debug/html/man3/SSL_set_record_padding_callback_arg.html
x64-windows/debug/html/man3/SSL_set_recv_max_early_data.html
x64-windows/debug/html/man3/SSL_set_rfd.html
x64-windows/debug/html/man3/SSL_set_security_callback.html
x64-windows/debug/html/man3/SSL_set_security_level.html
x64-windows/debug/html/man3/SSL_set_session.html
x64-windows/debug/html/man3/SSL_set_session_id_context.html
x64-windows/debug/html/man3/SSL_set_shutdown.html
x64-windows/debug/html/man3/SSL_set_split_send_fragment.html
x64-windows/debug/html/man3/SSL_set_ssl_method.html
x64-windows/debug/html/man3/SSL_set_time.html
x64-windows/debug/html/man3/SSL_set_timeout.html
x64-windows/debug/html/man3/SSL_set_tlsext_host_name.html
x64-windows/debug/html/man3/SSL_set_tlsext_max_fragment_length.html
x64-windows/debug/html/man3/SSL_set_tlsext_status_ocsp_resp.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/html/man3/BIO_reset.html
x64-windows/html/man3/BIO_retry_type.html
x64-windows/html/man3/BIO_rw_filename.html
x64-windows/html/man3/BIO_s_accept.html
x64-windows/html/man3/BIO_s_bio.html
x64-windows/html/man3/BIO_s_connect.html
x64-windows/html/man3/BIO_s_fd.html
x64-windows/html/man3/BIO_s_file.html
x64-windows/html/man3/BIO_s_mem.html
x64-windows/html/man3/BIO_s_null.html
x64-windows/html/man3/BIO_s_secmem.html
x64-windows/html/man3/BIO_s_socket.html
x64-windows/html/man3/BIO_seek.html
x64-windows/html/man3/BIO_set_accept_bios.html
x64-windows/html/man3/BIO_set_accept_ip_family.html
x64-windows/html/man3/BIO_set_accept_name.html
x64-windows/html/man3/BIO_set_accept_port.html
x64-windows/html/man3/BIO_set_bind_mode.html
x64-windows/html/man3/BIO_set_buffer_read_data.html
x64-windows/html/man3/BIO_set_buffer_size.html
x64-windows/html/man3/BIO_set_callback.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/html/man3/BN_BLINDING_lock.html
x64-windows/html/man3/BN_BLINDING_new.html
x64-windows/html/man3/BN_BLINDING_set_current_thread.html
x64-windows/html/man3/BN_BLINDING_set_flags.html
x64-windows/html/man3/BN_BLINDING_unlock.html
x64-windows/html/man3/BN_BLINDING_update.html
x64-windows/html/man3/BN_CTX_end.html
x64-windows/html/man3/BN_CTX_free.html
x64-windows/html/man3/BN_CTX_get.html
x64-windows/html/man3/BN_CTX_new.html
x64-windows/html/man3/BN_CTX_secure_new.html
x64-windows/html/man3/BN_CTX_start.html
x64-windows/html/man3/BN_GENCB_call.html
x64-windows/html/man3/BN_GENCB_free.html
x64-windows/html/man3/BN_GENCB_get_arg.html
x64-windows/html/man3/BN_GENCB_new.html
x64-windows/html/man3/BN_GENCB_set.html
x64-windows/html/man3/BN_GENCB_set_old.html
x64-windows/html/man3/BN_MONT_CTX_copy.html
x64-windows/html/man3/BN_MONT_CTX_free.html
x64-windows/html/man3/BN_MONT_CTX_new.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/html/man3/BN_print.html
x64-windows/html/man3/BN_print_fp.html
x64-windows/html/man3/BN_priv_rand.html
x64-windows/html/man3/BN_priv_rand_range.html
x64-windows/html/man3/BN_pseudo_rand.html
x64-windows/html/man3/BN_pseudo_rand_range.html
x64-windows/html/man3/BN_rand.html
x64-windows/html/man3/BN_rand_range.html
x64-windows/html/man3/BN_rshift.html
x64-windows/html/man3/BN_rshift1.html
x64-windows/html/man3/BN_secure_new.html
x64-windows/html/man3/BN_security_bits.html
x64-windows/html/man3/BN_set_bit.html
x64-windows/html/man3/BN_set_word.html
x64-windows/html/man3/BN_sqr.html
x64-windows/html/man3/BN_sub.html
x64-windows/html/man3/BN_sub_word.html
x64-windows/html/man3/BN_swap.html
x64-windows/html/man3/BN_to_ASN1_ENUMERATED.html
x64-windows/html/man3/BN_to_ASN1_INTEGER.html
x64-windows/html/man3/BN_to_montgomery.html
x64-windows/html/man3/BN_ucmp.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/html/man3/CRYPTO_malloc.html
x64-windows/html/man3/CRYPTO_mem_ctrl.html
x64-windows/html/man3/CRYPTO_mem_debug_pop.html
x64-windows/html/man3/CRYPTO_mem_debug_push.html
x64-windows/html/man3/CRYPTO_mem_leaks.html
x64-windows/html/man3/CRYPTO_mem_leaks_cb.html
x64-windows/html/man3/CRYPTO_mem_leaks_fp.html
x64-windows/html/man3/CRYPTO_memcmp.html
x64-windows/html/man3/CRYPTO_new_ex_data.html
x64-windows/html/man3/CRYPTO_realloc.html
x64-windows/html/man3/CRYPTO_secure_clear_free.html
x64-windows/html/man3/CRYPTO_secure_free.html
x64-windows/html/man3/CRYPTO_secure_malloc.html
x64-windows/html/man3/CRYPTO_secure_malloc_done.html
x64-windows/html/man3/CRYPTO_secure_malloc_init.html
x64-windows/html/man3/CRYPTO_secure_malloc_initialized.html
x64-windows/html/man3/CRYPTO_secure_used.html
x64-windows/html/man3/CRYPTO_secure_zalloc.html
x64-windows/html/man3/CRYPTO_set_ex_data.html
x64-windows/html/man3/CRYPTO_set_mem_debug.html
x64-windows/html/man3/CRYPTO_set_mem_functions.html
x64-windows/html/man3/CRYPTO_strdup.html
x64-windows/html/man3/CRYPTO_strndup.html
x64-windows/html/man3/CRYPTO_zalloc.html
x64-windows/html/man3/CTLOG_STORE_free.html
x64-windows/html/man3/CTLOG_STORE_get0_log_by_id.html
x64-windows/html/man3/CTLOG_STORE_load_default_file.html
x64-windows/html/man3/CTLOG_STORE_load_file.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/html/man3/DH_meth_set_bn_mod_exp.html
x64-windows/html/man3/DH_meth_set_compute_key.html
x64-windows/html/man3/DH_meth_set_finish.html
x64-windows/html/man3/DH_meth_set_flags.html
x64-windows/html/man3/DH_meth_set_generate_key.html
x64-windows/html/man3/DH_meth_set_generate_params.html
x64-windows/html/man3/DH_meth_set_init.html
x64-windows/html/man3/DH_new.html
x64-windows/html/man3/DH_new_by_nid.html
x64-windows/html/man3/DH_new_method.html
x64-windows/html/man3/DH_security_bits.html
x64-windows/html/man3/DH_set0_key.html
x64-windows/html/man3/DH_set0_pqg.html
x64-windows/html/man3/DH_set_default_method.html
x64-windows/html/man3/DH_set_ex_data.html
x64-windows/html/man3/DH_set_flags.html
x64-windows/html/man3/DH_set_length.html
x64-windows/html/man3/DH_set_method.html
x64-windows/html/man3/DH_size.html
x64-windows/html/man3/DH_test_flags.html
x64-windows/html/man3/DHparams_print.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/html/man3/DSA_meth_set_keygen.html
x64-windows/html/man3/DSA_meth_set_mod_exp.html
x64-windows/html/man3/DSA_meth_set_paramgen.html
x64-windows/html/man3/DSA_meth_set_sign.html
x64-windows/html/man3/DSA_meth_set_sign_setup.html
x64-windows/html/man3/DSA_meth_set_verify.html
x64-windows/html/man3/DSA_new.html
x64-windows/html/man3/DSA_new_method.html
x64-windows/html/man3/DSA_print.html
x64-windows/html/man3/DSA_print_fp.html
x64-windows/html/man3/DSA_security_bits.html
x64-windows/html/man3/DSA_set0_key.html
x64-windows/html/man3/DSA_set0_pqg.html
x64-windows/html/man3/DSA_set_default_method.html
x64-windows/html/man3/DSA_set_ex_data.html
x64-windows/html/man3/DSA_set_flags.html
x64-windows/html/man3/DSA_set_method.html
x64-windows/html/man3/DSA_sign.html
x64-windows/html/man3/DSA_sign_setup.html
x64-windows/html/man3/DSA_size.html
x64-windows/html/man3/DSA_test_flags.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/html/man3/EVP_PKEY_CTX_new_id.html
x64-windows/html/man3/EVP_PKEY_CTX_set0_dh_kdf_oid.html
x64-windows/html/man3/EVP_PKEY_CTX_set0_dh_kdf_ukm.html
x64-windows/html/man3/EVP_PKEY_CTX_set0_ecdh_kdf_ukm.html
x64-windows/html/man3/EVP_PKEY_CTX_set0_rsa_oaep_label.html
x64-windows/html/man3/EVP_PKEY_CTX_set1_hkdf_key.html
x64-windows/html/man3/EVP_PKEY_CTX_set1_hkdf_salt.html
x64-windows/html/man3/EVP_PKEY_CTX_set1_id.html
x64-windows/html/man3/EVP_PKEY_CTX_set1_pbe_pass.html
x64-windows/html/man3/EVP_PKEY_CTX_set1_scrypt_salt.html
x64-windows/html/man3/EVP_PKEY_CTX_set1_tls1_prf_secret.html
x64-windows/html/man3/EVP_PKEY_CTX_set_app_data.html
x64-windows/html/man3/EVP_PKEY_CTX_set_cb.html
x64-windows/html/man3/EVP_PKEY_CTX_set_dh_kdf_md.html
x64-windows/html/man3/EVP_PKEY_CTX_set_dh_kdf_outlen.html
x64-windows/html/man3/EVP_PKEY_CTX_set_dh_kdf_type.html
x64-windows/html/man3/EVP_PKEY_CTX_set_dh_nid.html
x64-windows/html/man3/EVP_PKEY_CTX_set_dh_pad.html
x64-windows/html/man3/EVP_PKEY_CTX_set_dh_paramgen_generator.html
x64-windows/html/man3/EVP_PKEY_CTX_set_dh_paramgen_prime_len.html
x64-windows/html/man3/EVP_PKEY_CTX_set_dh_paramgen_subprime_len.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/html/man3/EVP_PKEY_asn1_set_ctrl.html
x64-windows/html/man3/EVP_PKEY_asn1_set_free.html
x64-windows/html/man3/EVP_PKEY_asn1_set_get_priv_key.html
x64-windows/html/man3/EVP_PKEY_asn1_set_get_pub_key.html
x64-windows/html/man3/EVP_PKEY_asn1_set_item.html
x64-windows/html/man3/EVP_PKEY_asn1_set_param.html
x64-windows/html/man3/EVP_PKEY_asn1_set_param_check.html
x64-windows/html/man3/EVP_PKEY_asn1_set_private.html
x64-windows/html/man3/EVP_PKEY_asn1_set_public.html
x64-windows/html/man3/EVP_PKEY_asn1_set_public_check.html
x64-windows/html/man3/EVP_PKEY_asn1_set_security_bits.html
x64-windows/html/man3/EVP_PKEY_asn1_set_set_priv_key.html
x64-windows/html/man3/EVP_PKEY_asn1_set_set_pub_key.html
x64-windows/html/man3/EVP_PKEY_asn1_set_siginf.html
x64-windows/html/man3/EVP_PKEY_assign_DH.html
x64-windows/html/man3/EVP_PKEY_assign_DSA.html
x64-windows/html/man3/EVP_PKEY_assign_EC_KEY.html
x64-windows/html/man3/EVP_PKEY_assign_POLY1305.html
x64-windows/html/man3/EVP_PKEY_assign_RSA.html
x64-windows/html/man3/EVP_PKEY_assign_SIPHASH.html
x64-windows/html/man3/EVP_PKEY_base_id.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/html/man3/EVP_PKEY_new_mac_key.html
x64-windows/html/man3/EVP_PKEY_new_raw_private_key.html
x64-windows/html/man3/EVP_PKEY_new_raw_public_key.html
x64-windows/html/man3/EVP_PKEY_param_check.html
x64-windows/html/man3/EVP_PKEY_paramgen.html
x64-windows/html/man3/EVP_PKEY_paramgen_init.html
x64-windows/html/man3/EVP_PKEY_print_params.html
x64-windows/html/man3/EVP_PKEY_print_private.html
x64-windows/html/man3/EVP_PKEY_print_public.html
x64-windows/html/man3/EVP_PKEY_public_check.html
x64-windows/html/man3/EVP_PKEY_security_bits.html
x64-windows/html/man3/EVP_PKEY_set1_DH.html
x64-windows/html/man3/EVP_PKEY_set1_DSA.html
x64-windows/html/man3/EVP_PKEY_set1_EC_KEY.html
x64-windows/html/man3/EVP_PKEY_set1_RSA.html
x64-windows/html/man3/EVP_PKEY_set1_engine.html
x64-windows/html/man3/EVP_PKEY_set_alias_type.html
x64-windows/html/man3/EVP_PKEY_sign.html
x64-windows/html/man3/EVP_PKEY_sign_init.html
x64-windows/html/man3/EVP_PKEY_size.html
x64-windows/html/man3/EVP_PKEY_type.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/html/man3/OPENSSL_instrument_bus.html
x64-windows/html/man3/OPENSSL_instrument_bus2.html
x64-windows/html/man3/OPENSSL_load_builtin_modules.html
x64-windows/html/man3/OPENSSL_malloc.html
x64-windows/html/man3/OPENSSL_malloc_init.html
x64-windows/html/man3/OPENSSL_mem_debug_pop.html
x64-windows/html/man3/OPENSSL_mem_debug_push.html
x64-windows/html/man3/OPENSSL_memdup.html
x64-windows/html/man3/OPENSSL_no_config.html
x64-windows/html/man3/OPENSSL_realloc.html
x64-windows/html/man3/OPENSSL_secure_actual_size.html
x64-windows/html/man3/OPENSSL_secure_clear_free.html
x64-windows/html/man3/OPENSSL_secure_free.html
x64-windows/html/man3/OPENSSL_secure_malloc.html
x64-windows/html/man3/OPENSSL_secure_zalloc.html
x64-windows/html/man3/OPENSSL_strdup.html
x64-windows/html/man3/OPENSSL_strlcat.html
x64-windows/html/man3/OPENSSL_strlcpy.html
x64-windows/html/man3/OPENSSL_strndup.html
x64-windows/html/man3/OPENSSL_thread_stop.html
x64-windows/html/man3/OPENSSL_zalloc.html
x64-windows/html/man3/OSSL_STORE_CTX.html
x64-windows/html/man3/OSSL_STORE_INFO.html
x64-windows/html/man3/OSSL_STORE_INFO_free.html
x64-windows/html/man3/OSSL_STORE_INFO_get0_CERT.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/html/man3/PBE2PARAM_free.html
x64-windows/html/man3/PBE2PARAM_new.html
x64-windows/html/man3/PBEPARAM_free.html
x64-windows/html/man3/PBEPARAM_new.html
x64-windows/html/man3/PBKDF2PARAM_free.html
x64-windows/html/man3/PBKDF2PARAM_new.html
x64-windows/html/man3/PEM_FLAG_EAY_COMPATIBLE.html
x64-windows/html/man3/PEM_FLAG_ONLY_B64.html
x64-windows/html/man3/PEM_FLAG_SECURE.html
x64-windows/html/man3/PEM_bytes_read_bio.html
x64-windows/html/man3/PEM_bytes_read_bio_secmem.html
x64-windows/html/man3/PEM_do_header.html
x64-windows/html/man3/PEM_get_EVP_CIPHER_INFO.html
x64-windows/html/man3/PEM_read.html
x64-windows/html/man3/PEM_read_CMS.html
x64-windows/html/man3/PEM_read_DHparams.html
x64-windows/html/man3/PEM_read_DSAPrivateKey.html
x64-windows/html/man3/PEM_read_DSA_PUBKEY.html
x64-windows/html/man3/PEM_read_DSAparams.html
x64-windows/html/man3/PEM_read_ECPKParameters.html
x64-windows/html/man3/PEM_read_ECPrivateKey.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/html/man3/RAND_DRBG_get0_master.html
x64-windows/html/man3/RAND_DRBG_get0_private.html
x64-windows/html/man3/RAND_DRBG_get0_public.html
x64-windows/html/man3/RAND_DRBG_get_entropy_fn.html
x64-windows/html/man3/RAND_DRBG_get_ex_data.html
x64-windows/html/man3/RAND_DRBG_get_ex_new_index.html
x64-windows/html/man3/RAND_DRBG_get_nonce_fn.html
x64-windows/html/man3/RAND_DRBG_instantiate.html
x64-windows/html/man3/RAND_DRBG_new.html
x64-windows/html/man3/RAND_DRBG_reseed.html
x64-windows/html/man3/RAND_DRBG_secure_new.html
x64-windows/html/man3/RAND_DRBG_set.html
x64-windows/html/man3/RAND_DRBG_set_callbacks.html
x64-windows/html/man3/RAND_DRBG_set_defaults.html
x64-windows/html/man3/RAND_DRBG_set_ex_data.html
x64-windows/html/man3/RAND_DRBG_set_reseed_defaults.html
x64-windows/html/man3/RAND_DRBG_set_reseed_interval.html
x64-windows/html/man3/RAND_DRBG_set_reseed_time_interval.html
x64-windows/html/man3/RAND_DRBG_uninstantiate.html
x64-windows/html/man3/RAND_OpenSSL.html
x64-windows/html/man3/RAND_add.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/html/man3/RSA_padding_check_PKCS1_type_1.html
x64-windows/html/man3/RSA_padding_check_PKCS1_type_2.html
x64-windows/html/man3/RSA_padding_check_SSLv23.html
x64-windows/html/man3/RSA_padding_check_none.html
x64-windows/html/man3/RSA_print.html
x64-windows/html/man3/RSA_print_fp.html
x64-windows/html/man3/RSA_private_decrypt.html
x64-windows/html/man3/RSA_private_encrypt.html
x64-windows/html/man3/RSA_public_decrypt.html
x64-windows/html/man3/RSA_public_encrypt.html
x64-windows/html/man3/RSA_security_bits.html
x64-windows/html/man3/RSA_set0_crt_params.html
x64-windows/html/man3/RSA_set0_factors.html
x64-windows/html/man3/RSA_set0_key.html
x64-windows/html/man3/RSA_set0_multi_prime_params.html
x64-windows/html/man3/RSA_set_default_method.html
x64-windows/html/man3/RSA_set_ex_data.html
x64-windows/html/man3/RSA_set_flags.html
x64-windows/html/man3/RSA_set_method.html
x64-windows/html/man3/RSA_sign.html
x64-windows/html/man3/RSA_sign_ASN1_OCTET_STRING.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/html/man3/SSL_CTX_dane_set_flags.html
x64-windows/html/man3/SSL_CTX_decrypt_session_ticket_fn.html
x64-windows/html/man3/SSL_CTX_disable_ct.html
x64-windows/html/man3/SSL_CTX_enable_ct.html
x64-windows/html/man3/SSL_CTX_flush_sessions.html
x64-windows/html/man3/SSL_CTX_free.html
x64-windows/html/man3/SSL_CTX_generate_session_ticket_fn.html
x64-windows/html/man3/SSL_CTX_get0_CA_list.html
x64-windows/html/man3/SSL_CTX_get0_chain_certs.html
x64-windows/html/man3/SSL_CTX_get0_param.html
x64-windows/html/man3/SSL_CTX_get0_security_ex_data.html
x64-windows/html/man3/SSL_CTX_get_cert_store.html
x64-windows/html/man3/SSL_CTX_get_ciphers.html
x64-windows/html/man3/SSL_CTX_get_client_CA_list.html
x64-windows/html/man3/SSL_CTX_get_client_cert_cb.html
x64-windows/html/man3/SSL_CTX_get_default_passwd_cb.html
x64-windows/html/man3/SSL_CTX_get_default_passwd_cb_userdata.html
x64-windows/html/man3/SSL_CTX_get_default_read_ahead.html
x64-windows/html/man3/SSL_CTX_get_ex_data.html
x64-windows/html/man3/SSL_CTX_get_info_callback.html
x64-windows/html/man3/SSL_CTX_get_keylog_callback.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/html/man3/SSL_CTX_get_max_early_data.html
x64-windows/html/man3/SSL_CTX_get_max_proto_version.html
x64-windows/html/man3/SSL_CTX_get_min_proto_version.html
x64-windows/html/man3/SSL_CTX_get_mode.html
x64-windows/html/man3/SSL_CTX_get_num_tickets.html
x64-windows/html/man3/SSL_CTX_get_options.html
x64-windows/html/man3/SSL_CTX_get_quiet_shutdown.html
x64-windows/html/man3/SSL_CTX_get_read_ahead.html
x64-windows/html/man3/SSL_CTX_get_record_padding_callback_arg.html
x64-windows/html/man3/SSL_CTX_get_recv_max_early_data.html
x64-windows/html/man3/SSL_CTX_get_security_callback.html
x64-windows/html/man3/SSL_CTX_get_security_level.html
x64-windows/html/man3/SSL_CTX_get_session_cache_mode.html
x64-windows/html/man3/SSL_CTX_get_timeout.html
x64-windows/html/man3/SSL_CTX_get_tlsext_status_arg.html
x64-windows/html/man3/SSL_CTX_get_tlsext_status_cb.html
x64-windows/html/man3/SSL_CTX_get_tlsext_status_type.html
x64-windows/html/man3/SSL_CTX_get_verify_callback.html
x64-windows/html/man3/SSL_CTX_get_verify_depth.html
x64-windows/html/man3/SSL_CTX_get_verify_mode.html
x64-windows/html/man3/SSL_CTX_has_client_custom_ext.html
x64-windows/html/man3/SSL_CTX_keylog_cb_func.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/html/man3/SSL_CTX_sess_number.html
x64-windows/html/man3/SSL_CTX_sess_set_cache_size.html
x64-windows/html/man3/SSL_CTX_sess_set_get_cb.html
x64-windows/html/man3/SSL_CTX_sess_set_new_cb.html
x64-windows/html/man3/SSL_CTX_sess_set_remove_cb.html
x64-windows/html/man3/SSL_CTX_sess_timeouts.html
x64-windows/html/man3/SSL_CTX_sessions.html
x64-windows/html/man3/SSL_CTX_set0_CA_list.html
x64-windows/html/man3/SSL_CTX_set0_chain.html
x64-windows/html/man3/SSL_CTX_set0_chain_cert_store.html
x64-windows/html/man3/SSL_CTX_set0_security_ex_data.html
x64-windows/html/man3/SSL_CTX_set0_verify_cert_store.html
x64-windows/html/man3/SSL_CTX_set1_cert_store.html
x64-windows/html/man3/SSL_CTX_set1_chain.html
x64-windows/html/man3/SSL_CTX_set1_chain_cert_store.html
x64-windows/html/man3/SSL_CTX_set1_client_sigalgs.html
x64-windows/html/man3/SSL_CTX_set1_client_sigalgs_list.html
x64-windows/html/man3/SSL_CTX_set1_curves.html
x64-windows/html/man3/SSL_CTX_set1_curves_list.html
x64-windows/html/man3/SSL_CTX_set1_groups.html
x64-windows/html/man3/SSL_CTX_set1_groups_list.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/html/man3/SSL_CTX_set_post_handshake_auth.html
x64-windows/html/man3/SSL_CTX_set_psk_client_callback.html
x64-windows/html/man3/SSL_CTX_set_psk_find_session_callback.html
x64-windows/html/man3/SSL_CTX_set_psk_server_callback.html
x64-windows/html/man3/SSL_CTX_set_psk_use_session_callback.html
x64-windows/html/man3/SSL_CTX_set_quiet_shutdown.html
x64-windows/html/man3/SSL_CTX_set_read_ahead.html
x64-windows/html/man3/SSL_CTX_set_record_padding_callback.html
x64-windows/html/man3/SSL_CTX_set_record_padding_callback_arg.html
x64-windows/html/man3/SSL_CTX_set_recv_max_early_data.html
x64-windows/html/man3/SSL_CTX_set_security_callback.html
x64-windows/html/man3/SSL_CTX_set_security_level.html
x64-windows/html/man3/SSL_CTX_set_session_cache_mode.html
x64-windows/html/man3/SSL_CTX_set_session_id_context.html
x64-windows/html/man3/SSL_CTX_set_session_ticket_cb.html
x64-windows/html/man3/SSL_CTX_set_split_send_fragment.html
x64-windows/html/man3/SSL_CTX_set_ssl_version.html
x64-windows/html/man3/SSL_CTX_set_stateless_cookie_generate_cb.html
x64-windows/html/man3/SSL_CTX_set_stateless_cookie_verify_cb.html
x64-windows/html/man3/SSL_CTX_set_timeout.html
x64-windows/html/man3/SSL_CTX_set_tlsext_max_fragment_length.html
x64-windows/html/man3/SSL_CTX_set_tlsext_servername_arg.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/html/man3/SSL_get0_CA_list.html
x64-windows/html/man3/SSL_get0_alpn_selected.html
x64-windows/html/man3/SSL_get0_chain_certs.html
x64-windows/html/man3/SSL_get0_dane_authority.html
x64-windows/html/man3/SSL_get0_dane_tlsa.html
x64-windows/html/man3/SSL_get0_next_proto_negotiated.html
x64-windows/html/man3/SSL_get0_param.html
x64-windows/html/man3/SSL_get0_peer_CA_list.html
x64-windows/html/man3/SSL_get0_peer_scts.html
x64-windows/html/man3/SSL_get0_peername.html
x64-windows/html/man3/SSL_get0_security_ex_data.html
x64-windows/html/man3/SSL_get0_session.html
x64-windows/html/man3/SSL_get0_verified_chain.html
x64-windows/html/man3/SSL_get1_curves.html
x64-windows/html/man3/SSL_get1_groups.html
x64-windows/html/man3/SSL_get1_session.html
x64-windows/html/man3/SSL_get1_supported_ciphers.html
x64-windows/html/man3/SSL_get_SSL_CTX.html
x64-windows/html/man3/SSL_get_all_async_fds.html
x64-windows/html/man3/SSL_get_changed_async_fds.html
x64-windows/html/man3/SSL_get_cipher.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/html/man3/SSL_get_peer_tmp_key.html
x64-windows/html/man3/SSL_get_pending_cipher.html
x64-windows/html/man3/SSL_get_psk_identity.html
x64-windows/html/man3/SSL_get_psk_identity_hint.html
x64-windows/html/man3/SSL_get_quiet_shutdown.html
x64-windows/html/man3/SSL_get_rbio.html
x64-windows/html/man3/SSL_get_read_ahead.html
x64-windows/html/man3/SSL_get_record_padding_callback_arg.html
x64-windows/html/man3/SSL_get_recv_max_early_data.html
x64-windows/html/man3/SSL_get_rfd.html
x64-windows/html/man3/SSL_get_secure_renegotiation_support.html
x64-windows/html/man3/SSL_get_security_callback.html
x64-windows/html/man3/SSL_get_security_level.html
x64-windows/html/man3/SSL_get_selected_srtp_profile.html
x64-windows/html/man3/SSL_get_server_random.html
x64-windows/html/man3/SSL_get_server_tmp_key.html
x64-windows/html/man3/SSL_get_servername.html
x64-windows/html/man3/SSL_get_servername_type.html
x64-windows/html/man3/SSL_get_session.html
x64-windows/html/man3/SSL_get_shared_ciphers.html
x64-windows/html/man3/SSL_get_shared_curve.html
x64-windows/html/man3/SSL_get_shared_group.html
x64-windows/html/man3/SSL_get_shared_sigalgs.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/html/man3/SSL_renegotiate_pending.html
x64-windows/html/man3/SSL_rstate_string.html
x64-windows/html/man3/SSL_rstate_string_long.html
x64-windows/html/man3/SSL_select_current_cert.html
x64-windows/html/man3/SSL_select_next_proto.html
x64-windows/html/man3/SSL_session_reused.html
x64-windows/html/man3/SSL_set0_CA_list.html
x64-windows/html/man3/SSL_set0_chain.html
x64-windows/html/man3/SSL_set0_chain_cert_store.html
x64-windows/html/man3/SSL_set0_rbio.html
x64-windows/html/man3/SSL_set0_security_ex_data.html
x64-windows/html/man3/SSL_set0_verify_cert_store.html
x64-windows/html/man3/SSL_set0_wbio.html
x64-windows/html/man3/SSL_set1_chain.html
x64-windows/html/man3/SSL_set1_chain_cert_store.html
x64-windows/html/man3/SSL_set1_client_sigalgs.html
x64-windows/html/man3/SSL_set1_client_sigalgs_list.html
x64-windows/html/man3/SSL_set1_curves.html
x64-windows/html/man3/SSL_set1_curves_list.html
x64-windows/html/man3/SSL_set1_groups.html
x64-windows/html/man3/SSL_set1_groups_list.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/html/man3/SSL_set_psk_client_callback.html
x64-windows/html/man3/SSL_set_psk_find_session_callback.html
x64-windows/html/man3/SSL_set_psk_server_callback.html
x64-windows/html/man3/SSL_set_psk_use_session_callback.html
x64-windows/html/man3/SSL_set_quiet_shutdown.html
x64-windows/html/man3/SSL_set_read_ahead.html
x64-windows/html/man3/SSL_set_record_padding_callback.html
x64-windows/html/man3/SSL_set_record_padding_callback_arg.html
x64-windows/html/man3/SSL_set_recv_max_early_data.html
x64-windows/html/man3/SSL_set_rfd.html
x64-windows/html/man3/SSL_set_security_callback.html
x64-windows/html/man3/SSL_set_security_level.html
x64-windows/html/man3/SSL_set_session.html
x64-windows/html/man3/SSL_set_session_id_context.html
x64-windows/html/man3/SSL_set_shutdown.html
x64-windows/html/man3/SSL_set_split_send_fragment.html
x64-windows/html/man3/SSL_set_ssl_method.html
x64-windows/html/man3/SSL_set_time.html
x64-windows/html/man3/SSL_set_timeout.html
x64-windows/html/man3/SSL_set_tlsext_host_name.html
x64-windows/html/man3/SSL_set_tlsext_max_fragment_length.html
x64-windows/html/man3/SSL_set_tlsext_status_ocsp_resp.html
corpus/vcpkg/r2/installed/vcpkg/status view on Meta::CPAN
Multi-Arch: same
Description: OpenSSL support
Type: Port
Status: install ok installed
Package: libressl
Version: 2.9.1-2
Architecture: x64-windows
Multi-Arch: same
Abi: faa3fe00496397545d489c14b1a14c25143d91bd
Description: LibreSSL is a version of the TLS/crypto stack forked from OpenSSL in 2014, with goals of modernizing the codebase, improving security, and applying best practice development processes.
Type: Port
Status: install ok installed
Package: libffi
Version: 3.3
Architecture: x86-windows
Multi-Arch: same
Abi: 26fac73eca7ab28cad695055b44f461dace1fc39
Description: Portable, high level programming interface to various calling conventions
Type: Port
example/bzip2.alienfile view on Meta::CPAN
printf("version = '%s'\n", BZ2_bzlibVersion());
return 0;
}
},
);
# in addition to the library, we require that the bzip2 command
# is also available.
plugin 'Probe::CommandLine' => (
command => 'bzip2',
secondary => 1,
);
share {
# items in the share block relate to building the package
# from source. It is called share because it will be
# installed into a dist level share directory in your
# perl lib.
# The Build::MSYS plugin just makes sure that Alien::MSYS
example/curl.alienfile view on Meta::CPAN
# libpkgconf, pkg-config, PkgConfig,pm), to determine
# if the system already provides the library. In addition,
# it gets the version, cflags and libs during either a
# "system" or "share" install.
plugin 'PkgConfig' => 'libcurl';
# in addition to the library, we require that the xz command
# is also available.
plugin 'Probe::CommandLine' => (
command => 'curl',
secondary => 1,
);
share {
# items in the share block relate to building the package
# from source. It is called share because it will be
# installed into a dist level share directory in your
# perl lib.
# The Download negotiator picks the best method for
example/openssl.alienfile view on Meta::CPAN
plugin 'PkgConfig' => (
pkg_name => 'openssl',
);
share {
# when building OpenSSL from source we have a few challenges.
# - AB uses Net::SSLeay (via HTTP::Tiny) by default when downloading https URLs
# - Net::SSLeay requires OpenSSL
# - We can download OpenSSL from FTP, but that is susceptible to man-in-the-middle attacks
# (and that is a bad look for a security product)
# Solution:
# - try downloading with curl or wget via the 'bootstrap_ssl' option.
# - if that doesn't work, fallback on FTP
# - don't attempt FTP transfer if ALIEN_OPENSSL_FTP is set to 0
start_url 'https://www.openssl.org/source/';
plugin Download => (
version => qr/^openssl-([0-9\.]+[a-z]*)\.tar\.gz$/,
bootstrap_ssl => 1,
example/xz.alienfile view on Meta::CPAN
# libpkgconf, pkg-config, PkgConfig,pm), to determine
# if the system already provides the library. In addition,
# it gets the version, cflags and libs during either a
# "system" or "share" install.
plugin 'PkgConfig' => 'liblzma';
# in addition to the library, we require that the xz command
# is also available.
plugin 'Probe::CommandLine' => (
command => 'xz',
secondary => 1,
);
share {
# items in the share block relate to building the package
# from source. It is called share because it will be
# installed into a dist level share directory in your
# perl lib.
# The Download negotiator picks the best method for
lib/Alien/Base.pm view on Meta::CPAN
behaviour to the C<< <=> >> and C<cmp> operators.
=head2 install_type
my $install_type = Alien::MyLibrary->install_type;
my $bool = Alien::MyLibrary->install_type($install_type);
Returns the install type that was used when C<Alien::MyLibrary> was
installed.
If a type is provided (the second form in the synopsis)
returns true if the actual install type matches.
For this use case it is recommended to use C<is_system_install>
or C<is_share_install> instead as these are less prone to
typographical errors.
Types include:
=over 4
=item system
lib/Alien/Base/Wrapper.pm view on Meta::CPAN
This module acts as a wrapper around one or more L<Alien> modules. It is designed to work
with L<Alien::Base> based aliens, but it should work with any L<Alien> which uses the same
essential API.
In the first example (from the command line), this class acts as a wrapper around the
compiler and linker that Perl is configured to use. It takes the normal compiler and
linker flags and adds the flags provided by the Aliens specified, and then executes the
command. It will print the command to the console so that you can see exactly what is
happening.
In the second example (from Makefile.PL non-dynamic), this class is used to generate the
appropriate L<ExtUtils::MakeMaker> (EUMM) arguments needed to C<WriteMakefile>.
In the third example (from Makefile.PL dynamic), we do a quick check to see if the simple
linker flag C<-lfoo> will work, if so we use that. If not, we use a wrapper around the
compiler and linker that will use the alien flags that are known at build time. The
problem that this form attempts to solve is that compiler and linker flags typically
need to be determined at I<configure> time, when a distribution is installed, meaning
if you are going to use an L<Alien> module then it needs to be a configure prerequisite,
even if the library is already installed and easily detected on the operating system.
lib/Alien/Build.pm view on Meta::CPAN
die "download failed";
}
sub fetch
{
my $self = shift;
my $url = $_[0] || $self->meta_prop->{start_url};
my $secure = 0;
if(defined $url && ($url =~ /^(https|file):/ || $url !~ /:/))
{
# considered secure when either https or a local file
$secure = 1;
}
elsif(!defined $url)
{
$self->log("warning: undefined url in fetch");
}
else
{
$self->log("warning: attempting to fetch a non-TLS or bundled URL: @{[ $url ]}");
}
die "insecure fetch is not allowed" if $self->download_rule =~ /^(encrypt|digest_and_encrypt)$/ && !$secure;
my $file = $self->_call_hook( 'fetch' => @_ );
$secure = 0;
if(ref($file) ne 'HASH')
{
$self->log("warning: fetch returned non-hash reference");
}
elsif(!defined $file->{protocol})
{
$self->log("warning: fetch did not return a protocol");
}
elsif($file->{protocol} !~ /^(https|file)$/)
{
$self->log("warning: fetch did not use a secure protocol: @{[ $file->{protocol} ]}");
}
else
{
$secure = 1;
}
die "insecure fetch is not allowed" if $self->download_rule =~ /^(encrypt|digest_and_encrypt)$/ && !$secure;
$file;
}
sub check_digest
{
my($self, $file) = @_;
return '' unless $self->meta_prop->{check_digest};
lib/Alien/Build.pm view on Meta::CPAN
tmp => 0,
};
$checked_digest = $self->meta->call_hook( check_digest => $self, $file, $algo, $expected )
}
if(!defined $detail->{protocol})
{
$self->log("warning: extract did not receive protocol details for $archive") unless $checked_digest;
}
elsif($detail->{protocol} !~ /^(https|file)$/)
{
$self->log("warning: extracting from a file that was fetched via insecure protocol @{[ $detail->{protocol} ]}") unless $checked_digest ;
}
else
{
$encrypted_fetch = 1;
}
}
else
{
$self->log("warning: extract received no download details for $archive");
}
if($self->download_rule eq 'digest')
{
die "required digest missing for $archive" unless $checked_digest;
}
elsif($self->download_rule eq 'encrypt')
{
die "file was fetched insecurely for $archive" unless $encrypted_fetch;
}
elsif($self->download_rule eq 'digest_or_encrypt')
{
die "file was fetched insecurely and required digest missing for $archive" unless $checked_digest || $encrypted_fetch;
}
elsif($self->download_rule eq 'digest_and_encrypt')
{
die "file was fetched insecurely and required digest missing for $archive" unless $checked_digest || $encrypted_fetch;
die "required digest missing for $archive" unless $checked_digest;
die "file was fetched insecurely for $archive" unless $encrypted_fetch;
}
elsif($self->download_rule eq 'warn')
{
unless($checked_digest || $encrypted_fetch)
{
$self->log("!!! NOTICE OF FUTURE CHANGE IN BEHAVIOR !!!");
$self->log("a future version of Alien::Build will die here by default with this exception: file was fetched insecurely and required digest missing for $archive");
$self->log("!!! NOTICE OF FUTURE CHANGE IN BEHAVIOR !!!");
}
}
else
{
die "internal error, unknown download rule: @{[ $self->download_rule ]}";
}
}
lib/Alien/Build.pm view on Meta::CPAN
=item destdir_ffi_filter
Same as C<destdir_filter> except applies to C<build_ffi> instead of C<build>.
=item digest
This properties contains the cryptographic digests (if any) that should
be used when verifying any fetched and downloaded files. It is a hash
reference where the key is the filename and the value is an array
reference containing a pair of values, the first being the algorithm
('SHA256' is recommended) and the second is the actual digest. The
special filename C<*> may be specified to indicate that any downloaded
file should match that digest. If there are both real filenames and
the C<*> placeholder, the real filenames will be used for filenames
that match and any other files will use the placeholder. Example:
$build->meta_prop->{digest} = {
'foo-1.00.tar.gz' => [ SHA256 => '9feac593aa49a44eb837de52513a57736457f1ea70078346c60f0bfc5f24f2c1' ],
'foo-1.01.tar.gz' => [ SHA256 => '6bbde6a7f10ae5924cf74afc26ff5b7bc4b4f9dfd85c6b534c51bd254697b9e7' ],
'*' => [ SHA256 => '33a20aae3df6ecfbe812b48082926d55391be4a57d858d35753ab1334b9fddb3' ],
};
lib/Alien/Build.pm view on Meta::CPAN
my $rule = $build->download_rule;
This returns install rule as a string. This is determined by the environment
and should be one of:
=over 4
=item C<warn>
Warn only if fetching via non secure source (secure sources include C<https>,
and bundled files, may include other encrypted protocols in the future).
=item C<digest>
Require that any downloaded source package have a cryptographic signature in
the L<alienfile> and that signature matches what was downloaded.
=item C<encrypt>
Require that any downloaded source package is fetched via secure source.
=item C<digest_or_encrypt>
Require that any downloaded source package is B<either> fetched via a secure source
B<or> has a cryptographic signature in the L<alienfile> and that signature matches
what was downloaded.
=item C<digest_and_encrypt>
Require that any downloaded source package is B<both> fetched via a secure source
B<and> has a cryptographic signature in the L<alienfile> and that signature matches
what was downloaded.
=back
The current default is C<warn>, but in the near future this will be upgraded to
C<digest_or_encrypt>.
=head2 set_prefix
lib/Alien/Build/Interpolate.pm view on Meta::CPAN
=head2 interpolate
my $string = $intr->interpolate($template, $build);
my $string = $intr->interpolate($template);
This takes a template and fills in the appropriate values of any helpers used
in the template.
[version 2.58]
If you pass in an L<Alien::Build> instance as the second argument, you can use
properties as well as helpers in the template. Example:
my $patch = $intr->template("%{.install.patch}/foo-%{.runtime.version}.patch", $build);
=head2 requires
my %requires = $intr->requires($template);
This returns a hash of modules required in order to execute the given template.
The keys are the module names and the values are the versions. Version will be
lib/Alien/Build/MM.pm view on Meta::CPAN
sub mm_install
{
# NOTE: older versions of the Alien::Build::MM documentation
# didn't include this method, so anything that this method
# does has to be optional
my($self, $mm, @rest) = @_;
my $section = do {
package
MY;
$mm->SUPER::install(@rest);
};
return
".NOTPARALLEL : \n\n"
. ".NO_PARALLEL : \n\n"
. "install :: alien_clean_install\n\n"
. $section;
}
sub import
{
my(undef, @args) = @_;
foreach my $arg (@args)
{
if($arg eq 'cmd')
{
package main;
lib/Alien/Build/Manual.pod view on Meta::CPAN
=item L<Alien::Build::Manual::FAQ>
Frequently Asked Questions about L<Alien::Build>.
=item L<Alien::Build::Manual::PluginAuthor>
L<Alien::Build> plugin author documentation â or how to extend L<Alien::Build> with the plugin system.
=item L<Alien::Build::Manual::Security>
Documents some of the challenges and configuration tools related to security of L<Alien>s.
=back
=head1 SEE ALSO
=over 4
=item L<Alien::Base>
=item L<Alien::Build>
lib/Alien/Build/Manual/AlienAuthor.pod view on Meta::CPAN
version 2.84
=head1 SYNOPSIS
perldoc Alien::Build::Manual::AlienAuthor
=head1 DESCRIPTION
B<Note>: Please read the entire document before you get started in
writing your own L<alienfile>. The section on dynamic vs. static
libraries will likely save you a lot of grief if you read it now!
This document is intended to teach L<Alien> authors how to build their
own L<Alien> distribution using L<Alien::Build> and L<Alien::Base>.
Such an L<Alien> distribution consists of three essential parts:
=over 4
=item An L<alienfile>
lib/Alien/Build/Manual/AlienAuthor.pod view on Meta::CPAN
There is a lot going on here, so lets decode it a little bit. An
L<alienfile> is just some Perl with some alien specific sugar. The
first line
use alienfile;
imports the sugar into the L<alienfile>. It also is a flag for the
reader to see that this is an L<alienfile> and not some other kind of
Perl script.
The second line is the probe directive:
probe [ 'pkg-config --exists libfoo' ];
is used to see if the library is already installed on the target system.
If C<pkg-config> is in the path, and if libfoo is installed, this should
exit with a success (0) and tell L<Alien::Build> to use the system
library. If either C<pkg-config> in the PATH, or if libfoo is not
installed, then it will exist with non-success (!= 0) and tells
L<Alien::Build> to download and build from source.
lib/Alien/Build/Manual/AlienAuthor.pod view on Meta::CPAN
=head2 A note about dynamic vs. static libraries
If you are using your L<Alien> to build an XS module, it is important
that you use static libraries if possible. If you have a package that
refuses to build a static library, then you can use L<Alien::Role::Dino>.
Actually let me back up a minute. For a C<share> install it is best
to use static libraries to build your XS extension. This is because
if your L<Alien> is ever upgraded to a new version it can break your
existing XS modules. For a C<system> install shared libraries are
usually best because you can often get security patches without having
to re-build anything in perl land.
If you looked closely at the "Using commands" and "Using plugins"
sections above, you may notice that we went out of our way where
possible to tell Autotools to build only static libraries using the
C<--disable-shared> command. The Autoconf plugin also does this by
default.
Sometimes though you will have a package that builds both, or maybe
you I<want> both static and dynamic libraries to work with XS and FFI.
For that case, there is the L<Alien::Build::Plugin::Gather::IsolateDynamic>
plugin.
use alienfile;
lib/Alien/Build/Manual/FAQ.pod view on Meta::CPAN
# Compilation failed in require at /home/cip/perl5/lib/perl5/Test/Alien.pm line 414.
# BEGIN failed--compilation aborted at /home/cip/perl5/lib/perl5/Test/Alien.pm line 414.
t/acme_alien_dontpanic2.t ....... Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/6 subtests
t/acme_alien_dontpanic2__ffi.t .. ok
This error happened at test time for the Alien, but depending on your environment and Alien it might
happen later and the actual diagnostic wording might vary.
This is usually because your XS or Alien tries to use dynamic libraries instead of static ones.
Please consult the section about dynamic vs. static libraries in L<Alien::Build::Manual::AlienAuthor>.
The TL;DR is that L<Alien::Build::Plugin::Gather::IsolateDynamic> might help.
If you are the Alien author and the package you are alienizing doesn't have a static option you can
use L<Alien::Role::Dino>, but please note the extended set of caveats!
=head2 599 Internal Exception errors downloading packages from the internet
Alien::Build::Plugin::Fetch::HTTPTiny> 599 Internal Exception fetching http://dist.libuv.org/dist/v1.15.0
Alien::Build::Plugin::Fetch::HTTPTiny> exception: IO::Socket::SSL 1.42 must be installed for https support
Alien::Build::Plugin::Fetch::HTTPTiny> exception: Net::SSLeay 1.49 must be installed for https support
Alien::Build::Plugin::Fetch::HTTPTiny> An attempt at a SSL URL https was made, but your HTTP::Tiny does not appear to be able to use https.
lib/Alien/Build/Manual/FAQ.pod view on Meta::CPAN
start_url => 'http://example.org/dist';
...
};
do this:
share {
start_url => 'https://example.org/dist';
};
If the website is going to redirect to a secure URL anyway.
The "599 Internal Exception" indicates an "internal" exception from L<HTTP::Tiny> and is not a real
HTTP status code or error. This could mean a number of different problems, but most frequently
indicates that a SSL request was made without the required modules (L<Net::SSLeay> and
L<IO::Socket::SSL>). Normally the L<Alien::Build::Plugin::Download::Negotiate>
and L<Alien::Build::Plugin::Fetch::HTTPTiny> will make sure that the appropriate modules are added
to your prerequisites for you if you specify a C<https> URL. Some websites allow an initial request
from C<http> but then redirect to C<https>. If you can it is better to specify C<https>, if you
cannot, then you can instead use the C<ssl> property on either of those two plugins.
lib/Alien/Build/Manual/FAQ.pod view on Meta::CPAN
Alien::Build> see see https://metacpan.org/pod/Alien::Build::Manual::FAQ#Network-fetch-is-turned-off
This is because your environment is setup not to install aliens that require the network. You
can turn network fetch back on by setting C<ALIEN_INSTALL_NETWORK> to true, or by unsetting it.
This environment variable is designed for environments that don't ever want to install aliens that
require downloading source packages over the internet.
=head2 I would really prefer you not download stuff off the internet
The idea of L<Alien> is to download missing packages and build them automatically to make installing
easier. Some people may not like this, or may even have security requirements that they not download
random package over the internet (caveat, downloading random stuff off of CPAN may not be any safer,
so make sure you audit all of the open source software that you use appropriately). Another reason
you may not want to download from the internet is if you are packaging up an alien for an operating
system vendor, which will always want to use the system version of a library. In that situation you
don't want L<Alien::Build> to go off and download something from the internet because the probe failed
for some reason.
This is easy to take care of, simply set C<ALIEN_INSTALL_TYPE> to C<system> and a build from source
code will never be attempted. On systems that do not provide system versions of the library or tool
you will get an error, allowing you to install the library, and retry the alien install. You can
lib/Alien/Build/Manual/PluginAuthor.pod view on Meta::CPAN
}
=head2 Hooks
The remainder of this document is a reference for the hooks that you
can register. Generally speaking you can register any hook that you
like, but some care must be taken as some hooks have default behavior
that will be overridden when you register a hook. The hooks are
presented in alphabetical order. The execution order is shown
in the flowchart above (if you are browsing the HTML version of this
document), or the Perlish pseudo code in the synopsis section.
=head1 HOOKS
=head2 build hook
$meta->register_hook( build => sub {
my($build) = @_;
...
});
lib/Alien/Build/Manual/PluginAuthor.pod view on Meta::CPAN
base => $base,
content => $content,
protocol => $protocol, # AB 2.60 optional, but recommended
};
[version 2.60]
For all of these responses C<$protocol> is optional, since it was not part
of the original spec, however it is strongly recommended that you include
this field, because future versions of L<Alien::Build> will use this to
determine if a file was downloaded securely (that is via a secure protocol
such as SSL).
Some plugins (like L<decode plugins |Alien::Build::Plugin::Decode>) trans
late a file hash from one type to another, they should maintain the
C<$protocol> from the old to the new representation of the file.
=head2 gather_ffi hook
$meta->register_hook( gather_ffi => sub {
my($build) = @_;
lib/Alien/Build/Manual/Security.pod view on Meta::CPAN
You are rightly concerned that an L<Alien> might be downloading something random
off the internet. This manual will describe some of the real risks and go over
how you can mitigate them.
=head2 no warranty
L<Alien::Build> provides L<Alien> authors with tools to add external non-Perl
dependencies to CPAN modules. It is open source software that is entirely
volunteer driven, meaning the people writing this software are not getting
compensated monetarily for the work. As such, we do our best not to
intentionally introduce security vulnerabilities into our modules, or their
dependencies. But it is also not our responsibility either. If you are
operating in an environment where you need absolute security, you need to
carefully audit I<all> of the software that you use.
=head2 L<Alien::Build> vs. L<CPAN>
I suppose you could argue that L<Alien::Build> based L<Alien>s and L<Alien>s
in general are inherently less secure than the the Perl modules on L<CPAN>
that don't download random stuff off the internet. Worse yet, L<Alien>s
might be downloading from insecure sources like C<http> or C<ftp>.
This argument falls apart pretty quickly when you realize that
=over 4
=item 1
Perl modules from L<CPAN> are in fact random stuff off the internet.
Most modules, when installed execute a C<Makefile.PL> which can execute
completely arbitrary Perl code. Without a proper audit or firewalls
that L<CPAN> code could be making connections to insecure sources
like C<http> if they are not themselves doing something nefarious.
=item 2
By default, the most frequently used L<CPAN> client L<App::cpanminus|cpanm>
uses C<http> to fetch L<CPAN> modules. So unless you have specifically
configured it to connect to a secure source you are downloading
even more random stuff than usual off the internet.
=back
The TL;DR is that if you are using a Perl module, whether it be
C<Foo::PP>, C<Foo::XS> or C<Alien::libfoo> and you are concerned about
security you need to audit all of your Perl modules, not just the L<Alien>
ones.
=head2 Restricting L<Alien::Build> by environment
Okay, granted you need to audit software for security regardless of
if it is L<Alien>, you still don't like the idea of downloading external
dependencies and you can't firewall just the L<CPAN> module installs.
L<Alien::Build> based L<Alien>s respect a number of environment variables
that at least give you some control over how aggresive L<Alien::Build>
will be at fetching random stuff off the internet.
=over 4
=item C<ALIEN_DOWNLOAD_RULE>
This environment variable configures how L<Alien::Build> will deal
with insecure protocols and files that do not include a cryptographic
signature.
Part of the design of the L<Alien::Build> system is that it typically
tries to download the latest version of a package instead of a fixed
version, so that the L<Alien> doesn't need to be updated when a new
alienized package is released. This means that we frequently have
to rely on TLS or bundled alienized packages to ensure that the
alienized package is fetched securely.
Recently (as of L<Alien::Build> 2.59) we started supporting cryptographic
signatures defined in L<alienfile>s, but they are not yet very common,
and they only really work when a single alienized package URL is hard
coded into the L<alienfile> instead of the more typical mode of operation
where the latest version is downloaded.
=over 4
=item warn
This mode will warn you if an L<Alien::Build> based L<Alien> attempts
to fetch a alienized package insecurely. It will also warn you if
a package doesn't have a cryptographic signature. Neither of these
things wild stop the L<Alien> from being installed.
This is unfortunately currently the default mode of L<Alien::Build>,
for historical reasons. Once plugins and L<Alien>s are updated to
either use secure fetch (TLS or bundled alienized packages), or
cryptographic signatures, the default will be changed to
C<digest_or_encrypt>.
=item digest_or_encrypt
This mode will require that before an alienized package is extracted
that it is either fetched via a secure protocol (C<http> or C<file>),
or the package matches a cryptographic signature.
This will likely be the default for L<Alien::Build> in the near future,
but it doesn't hurt to set it now, if you don't mind submitting
tickets to L<Alien>s or L<plugins|Alien::Build::Plugin> that don't
support this mode yet.
=back
=item C<ALIEN_INSTALL_NETWORK>
lib/Alien/Build/Manual/Security.pod view on Meta::CPAN
Note that this is definitely best effort. If the L<Alien> author makes
a mistake or is malicious they could override these environment variables
inside the C<Makefile.PL>, so you still need to audit any software to
ensure that it doesn't fetch source off the internet.
=head2 Security Related Plugins
There are a number of plugins that give the user or installer control
over how L<Alien::Build> behaves, and may be useful for rudimentary
security.
=over 4
=item L<Alien::Build::Plugin::Fetch::Prompt>
This plugin will prompt before fetching any remote files. This only
really works when you are installing L<Alien>s interactively.
=item L<Alien::Build::Plugin::Fetch::HostAllowList>
lib/Alien/Build/Manual/Security.pod view on Meta::CPAN
=head2 local configuration
You can configure the way L<Alien::Build> based L<Alien>s are installed with the
local configuration file C<~/.alienbuild/rc.pl>. See L<Alien::Build::rc> for
details.
=head1 CAVEATS
This whole document is caveats, but if you haven't gotten it by now then,
fundamentally if you need to use Perl modules securely then you need to
audit the code for security vulnerabilities. If you think that the security
of L<Alien::Build> and the L<Alien>s that depend on it, then I<patches welcome>.
=head1 SEE ALSO
=over 4
=item L<Alien::Build::Manual>
Other L<Alien::Build> manuals.
lib/Alien/Build/Plugin/Core/Download.pm view on Meta::CPAN
$build->log("candidate *$pick");
$build->log("candidate $_") for @other;
if(@exclude)
{
if(@exclude > 8)
{
splice @exclude, 7;
push @exclude, '...';
}
$build->log("excluded insecure URLs:");
$build->log($_) for @exclude;
}
$res = $build->fetch($pick);
if($version)
{
$version =~ s/\.+$//;
$build->log("setting version based on archive to $version");
$build->runtime_prop->{version} = $version;
lib/Alien/Build/Plugin/PkgConfig/PP.pm view on Meta::CPAN
require PkgConfig;
my $pkg = PkgConfig->find($name, search_path => [@PKG_CONFIG_PATH]);
if($pkg->errmsg)
{
$build->log("Trying to load the pkg-config information from the source code build");
$build->log("of your package failed");
$build->log("You are currently using the pure-perl implementation of pkg-config");
$build->log("(AB Plugin is named PkgConfig::PP, which uses PkgConfig.pm");
$build->log("It may work better with the real pkg-config.");
$build->log("Try installing your OS' version of pkg-config or unset ALIEN_BUILD_PKG_CONFIG");
die "second load of PkgConfig.pm @{[ $name ]} failed: @{[ $pkg->errmsg ]}"
}
my %prop;
$prop{cflags} = _cleanup scalar $pkg->get_cflags;
$prop{libs} = _cleanup scalar $pkg->get_ldflags;
$prop{version} = $pkg->pkg_version;
$pkg = PkgConfig->find($name, static => 1, search_path => [@PKG_CONFIG_PATH]);
$prop{cflags_static} = _cleanup scalar $pkg->get_cflags;
$prop{libs_static} = _cleanup scalar $pkg->get_ldflags;
$build->runtime_prop->{alt}->{$name} = \%prop;
}
lib/Alien/Build/Plugin/Probe/CommandLine.pm view on Meta::CPAN
# ABSTRACT: Probe for tools or commands already available
our $VERSION = '2.84'; # VERSION
has '+command' => sub { Carp::croak "@{[ __PACKAGE__ ]} requires command property" };
has 'args' => [];
has 'secondary' => 0;
has 'match' => undef;
has 'match_stderr' => undef;
has 'version' => undef;
lib/Alien/Build/Plugin/Probe/CommandLine.pm view on Meta::CPAN
die "CommandLine probe found version $found_version, but at least $atleast_version is required.";
}
}
}
}
$build->runtime_prop->{command} = $self->command;
'system';
};
if($self->secondary)
{
$meta->around_hook(
probe => sub {
my $orig = shift;
my $build = shift;
my $type = $orig->($build, @_);
return $type unless $type eq 'system';
$check->($build);
},
);
lib/Alien/Build/Plugin/Probe/CommandLine.pm view on Meta::CPAN
=head1 PROPERTIES
=head2 command
The name of the command.
=head2 args
The arguments to pass to the command.
=head2 secondary
If you are using another probe plugin (such as L<Alien::Build::Plugin::Probe::CBuilder> or
L<Alien::Build::Plugin::PkgConfig::Negotiate>) to detect the existence of a library, but
also need a program to exist, then you should set secondary to a true value. For example
when you need both:
use alienfile;
# requires both liblzma library and xz program
plugin 'PkgConfig' => 'liblzma';
plugin 'Probe::CommandLine' => (
command => 'xz',
secondary => 1,
);
When you don't:
use alienfile;
plugin 'Probe::CommandLine' => (
command => 'gzip',
secondary => 0, # default
);
=head2 match
Regular expression for which the program output should match.
=head2 match_stderr
Regular expression for which the program standard error should match.
lib/Test/Alien/Build.pm view on Meta::CPAN
my $build = alienfile;
# is the same as
my $build = alienfile filename => 'alienfile';
and
my $build = alienfile q{ use alienfile ... };
# is the same as
my $build = alienfile source => q{ use alienfile ... };
Except for the second abbreviated form sets the line number before feeding the source into L<Alien::Build>
so that you will get diagnostics with the correct line numbers.
=over 4
=item source
The source for the alienfile as a string. You must specify one of C<source> or C<filename>.
=item filename
lib/alienfile.pm view on Meta::CPAN
'%{make}',
'%{make} install',
];
};
=head1 DESCRIPTION
An alienfile is a recipe used by L<Alien::Build> to, probe for system libraries or download from the internet, and build source
for those libraries. This document acts as reference for the alienfile system, but if you are starting out writing your own Alien
you should read L<Alien::Build::Manual::AlienAuthor>, which will teach you how to write your own complete Alien using alienfile +
L<Alien::Build> + L<ExtUtils::MakeMaker>. Special attention should be taken to the section "a note about dynamic vs. static
libraries".
=head1 DIRECTIVES
=head2 requires
"any" requirement (either share or system):
requires $module;
requires $module => $version;
spellcheck.ini view on Meta::CPAN
[Perl]
skip_sections = contributors
skip_sections = author
skip_sections = copyright and license
skip_sections = thanks
[StopWords]
word = unixy
word = umake
word = tar.exe
t/alien_build__download_rule.t view on Meta::CPAN
alienfile_skip_if_missing_prereqs;
alien_install_type_is 'share';
alien_download_ok;
alien_extract_ok;
is
\@warnings,
bag {
item match qr/warning: attempting to fetch a non-TLS or bundled URL/;
item match qr/warning: fetch did not use a secure protocol/;
item match qr/warning: extracting from a file that was fetched via insecure protocol/;
etc;
},
'expected warnings';
};
subtest 'just tls' => sub {
@warnings = ();
t/alien_build__download_rule.t view on Meta::CPAN
};
alienfile_skip_if_missing_prereqs;
alien_install_type_is 'share';
alien_download_ok;
alien_extract_ok;
is
\@warnings,
array {
all_items mismatch qr/warning: (attempting to fetch a non-TLS or bundled URL|fetch did not use a secure protocol|extracting from a file that was fetched via insecure protocol)/;
etc;
},
'no unexpected warnings';
};
subtest 'tls and digest' => sub {
@warnings = ();
t/alien_build__download_rule.t view on Meta::CPAN
};
alienfile_skip_if_missing_prereqs;
alien_install_type_is 'share';
alien_download_ok;
alien_extract_ok;
is
\@warnings,
array {
all_items mismatch qr/warning: (attempting to fetch a non-TLS or bundled URL|fetch did not use a secure protocol|extracting from a file that was fetched via insecure protocol)/;
etc;
},
'no unexpected warnings';
};
subtest 'just digest' => sub {
@warnings = ();
t/alien_build__download_rule.t view on Meta::CPAN
alienfile_skip_if_missing_prereqs;
alien_install_type_is 'share';
alien_download_ok;
alien_extract_ok;
is
\@warnings,
bag {
item match qr/warning: attempting to fetch a non-TLS or bundled URL/;
item match qr/warning: fetch did not use a secure protocol/;
all_items mismatch qr/warning: extracting from a file that was fetched via insecure protocol/;
etc;
},
'expected warnings';
};
};
alien_subtest 'digest' => sub {
t/alien_build__download_rule.t view on Meta::CPAN
};
};
alienfile_skip_if_missing_prereqs;
alien_install_type_is 'share';
my($out, $exception) = capture_merged {
dies { $build->download }
};
like $exception, qr/^insecure fetch is not allowed/;
};
subtest 'no tls response' => sub {
my $build = alienfile_ok q{
use alienfile;
probe sub { 'share' };
share {
start_url 'https://foo.bar.baz';
t/alien_build__download_rule.t view on Meta::CPAN
};
};
alienfile_skip_if_missing_prereqs;
alien_install_type_is 'share';
my($out, $exception) = capture_merged {
dies { $build->download }
};
like $exception, qr/^insecure fetch is not allowed/;
};
};
alien_subtest 'digest_or_encrypt' => sub {
local $Alien::Build::VERSION = $Alien::Build::VERSION || '2.60';
local $ENV{ALIEN_DOWNLOAD_RULE} = 'digest_or_encrypt';
t/alien_build__download_rule.t view on Meta::CPAN
};
alienfile_skip_if_missing_prereqs;
alien_install_type_is 'share';
alien_download_ok;
my($out, $exception) = capture_merged {
dies { $build->extract }
};
like $exception, qr/^file was fetched insecurely and required digest missing for/;
};
};
alien_subtest 'digest_and_encrypt' => sub {
local $Alien::Build::VERSION = $Alien::Build::VERSION || '2.60';
local $ENV{ALIEN_DOWNLOAD_RULE} = 'digest_and_encrypt';
t/alien_build__download_rule.t view on Meta::CPAN
};
};
alienfile_skip_if_missing_prereqs;
alien_install_type_is 'share';
my($out, $exception) = capture_merged {
dies { $build->download }
};
like $exception, qr/^insecure fetch is not allowed/;
};
subtest 'just tls' => sub {
my $build = alienfile_ok q{
use alienfile;
probe sub { 'share' };
share {
start_url 'https://foo.bar.baz';
t/alien_build__download_rule.t view on Meta::CPAN
};
};
alienfile_skip_if_missing_prereqs;
alien_install_type_is 'share';
my($out, $exception) = capture_merged {
dies { $build->download }
};
like $exception, qr/^insecure fetch is not allowed/;
};
};
done_testing;
t/alien_build_plugin_fetch_netftp.t view on Meta::CPAN
my $log = path('t/bin/ftpd.log');
if(-r $log)
{
note($log->slurp);
}
skip_all ftp_error;
}
note "url = $url";
# FTP is inherently insecure. This test usually only runs in CI
# against a ftp server running on localhost
local $ENV{ALIEN_DOWNLOAD_RULE} = 'warn';
my $plugin = Alien::Build::Plugin::Fetch::NetFTP->new( url => $url );
my $build = alienfile filename => 'corpus/blank/alienfile';
my $meta = $build->meta;
$plugin->init($meta);
t/alien_build_plugin_probe_commandline.t view on Meta::CPAN
my($build) = build(command => 'foo', args => [1,2,3], match => qr// );
is cap { $build->probe }, 'system', 'is system';
is $called, 1, 'was called';
is \@args, [1,2,3], 'args are passed in';
};
subtest 'secondary' => sub {
my $lib = 0;
my $run = 0;
my $guard = system_fake
'foo' => sub { $run = 1; return 0 },
;
subtest 'libs + command okay' => sub {
$lib = 0;
$run = 0;
my($build) = build(command => 'foo', secondary => 1, match => qr//, sub {
my($build, $meta) = @_;
$meta->register_hook(probe => sub {
$lib = 1;
'system';
});
});
is(cap { $build->probe }, 'system');
is $run, 1, 'run';
is $lib, 1, 'lib';
};
subtest 'libs ok + command bad' => sub {
$lib = 0;
$run = 0;
my($build) = build(command => 'bar', secondary => 1, match => qr//, sub {
my($build, $meta) = @_;
$meta->register_hook(probe => sub {
$lib = 1;
'system';
});
});
is(cap { $build->probe }, 'share');
is $lib, 1, 'lib';
};
subtest 'libs bad + command okay' => sub {
$lib = 0;
$run = 0;
my($build) = build(command => 'foo', secondary => 1, match => qr//, sub {
my($build, $meta) = @_;
$meta->register_hook(probe => sub {
$lib = 1;
'share';
});
});
is(cap { $build->probe }, 'share');
is $run, 0, 'run';
is $lib, 1, 'lib';
};
subtest 'libs bad + command bad' => sub {
$lib = 0;
$run = 0;
my($build) = build(command => 'bar', secondary => 1, match => qr//, sub {
my($build, $meta) = @_;
$meta->register_hook(probe => sub {
$lib = 1;
'share';
});
});
is(cap { $build->probe }, 'share');
is $run, 0, 'run';
is $lib, 1, 'lib';
t/alienfile.t view on Meta::CPAN
return 42;
};
build [];
};
};
};
like $@, qr/before build is not allowed in sys block/, 'not allowed in sys block';
};
subtest 'before second argument must be a code ref' => sub {
eval {
alienfile q{
use alienfile;
share {
before 'build' => 1;
build [];
};
t/alienfile.t view on Meta::CPAN
return 42;
};
build [];
};
};
};
like $@, qr/after build is not allowed in sys block/, 'not allowed in sys block';
};
subtest 'after second argument must be a code ref' => sub {
eval {
alienfile q{
use alienfile;
share {
after 'build' => 1;
build [];
};