subdir('meson' / 'libsodium') # Libsodium-based signers
subdir('meson' / 'libcrypto') # OpenSSL-based signers
subdir('meson' / 'libssl') # OpenSSL libssl
+subdir('meson' / 'libssl-engines') # OpenSSL libssl engines
subdir('meson' / 'gnutls') # GnuTLS
subdir('meson' / 'dot') # DNS over TLS
subdir('meson' / 'ipcipher') # IPCipher
--- /dev/null
+conf.set(
+ 'OPENSSL_NO_ENGINE',
+ true,
+ description: 'Disable engine support in libssl.cc',
+)
has,
description: 'Have OpenSSL libssl SSL_CTX_set_min_proto_version',
)
- conf.set(
- 'OPENSSL_NO_ENGINE',
- true,
- description: 'Disable engine support for auth in libssl.cc',
- )
endif
conf.set('HAVE_LIBSSL', dep_libssl.found(), description: 'OpenSSL libssl')
subdir('meson' / 'libsodium') # Libsodium
subdir('meson' / 'libcrypto') # OpenSSL libcrypto
subdir('meson' / 'libssl') # OpenSSL libssl
+subdir('meson' / 'libssl-engines') # OpenSSL libssl engines
subdir('meson' / 'libssl-providers') # OpenSSL libssl providers
subdir('meson' / 'libsnmp') # SNMP
subdir('meson' / 'clock-gettime') # Clock_gettime
--- /dev/null
+opt_libssl_engines = get_option('tls-libssl-engines')
+
+if opt_libssl_engines
+ opt_libssl = get_option('tls-libssl')
+ if not opt_libssl.allowed()
+ error('OpenSSL TLS engines requested but libssl is not enabled')
+ endif
+
+ summary('OpenSSL libssl engines', true, bool_yn: true, section: 'Crypto')
+else
+ conf.set('OPENSSL_NO_ENGINE', true, description: 'OpenSSL libssl engines')
+ summary('OpenSSL libssl engines', false, bool_yn: true, section: 'Crypto')
+endif
option('hardening-fortify-source', type: 'combo', choices: ['auto', 'disabled', '1', '2', '3'], value: '2', description: 'Source fortification level')
option('ipcipher', type: 'feature', value: 'auto', description: 'IPCipher')
option('tls-libssl', type: 'feature', value: 'auto', description: 'OpenSSL-based TLS')
+option('tls-libssl-engines', type: 'boolean', value: false, description: 'OpenSSL-based TLS with TLS engines')
option('tls-libssl-providers', type: 'boolean', value: false, description: 'OpenSSL-based TLS with TLS providers')
option('dns-over-tls', type: 'feature', value: 'auto', description: 'DNS over TLS (requires GnuTLS or OpenSSL)')
option('dns-over-https', type: 'feature', value: 'auto', description: 'DNS over HTTP/2 (requires GnuTLS or OpenSSL)')
subdir('meson' / 'libsodium') # Libsodium-based signers
subdir('meson' / 'libcrypto') # OpenSSL-based signers
subdir('meson' / 'libssl') # OpenSSL libssl
+subdir('meson' / 'libssl-engines') # OpenSSL libssl engines
subdir('meson' / 'libsnmp') # SNMP
subdir('meson' / 'dot') # DNS over TLS
subdir('meson' / 'clock-gettime') # Clock_gettime