summaryrefslogtreecommitdiffstats
path: root/meta/recipes-connectivity/openssl/files/environment.d-openssl.sh
diff options
context:
space:
mode:
authorChangqing Li <changqing.li@windriver.com>2025-04-28 13:53:07 +0800
committerSteve Sakoman <steve@sakoman.com>2025-05-02 08:20:12 -0700
commit18206fc2dba1684bc96efecf95c65450f9577203 (patch)
treecc7e48cb9fc750986ddb99e8aad5e0e513ad5551 /meta/recipes-connectivity/openssl/files/environment.d-openssl.sh
parent397d432a62c265f481cf1ac4d9c760504d9eb9f5 (diff)
downloadpoky-18206fc2dba1684bc96efecf95c65450f9577203.tar.gz
buildtools-tarball: Make buildtools respects host CA certificates
To adapt user network enviroment, buildtools should first try to use the user configured envs like SSL_CERT_FILE/CURL_CA_BUNDLE/..., if these envs is not set, then use the auto-detected ca file and ca path, and finally use the CA certificates in buildtools. nativesdk-openssl set OPENSSLDIR as "/not/builtin", need set SSL_CERT_FILE/SSL_CERT_DIR to work nativesdk-curl don't set default ca file, need SSL_CERT_FILE/SSL_CERT_DIR or CURL_CA_BUNDLE/CURL_CA_PATH to work nativesdk-git actually use libcurl, and GIT_SSL_CAPATH/GIT_SSL_CAINFO also works nativesdk-python3-requests will use cacert.pem under python module certifi by default, need to set REQUESTS_CA_BUNDLE (From OE-Core rev: 0653b96bac6d0800dc5154557706a323418808be) Signed-off-by: Changqing Li <changqing.li@windriver.com> Signed-off-by: Steve Sakoman <steve@sakoman.com>
Diffstat (limited to 'meta/recipes-connectivity/openssl/files/environment.d-openssl.sh')
-rw-r--r--meta/recipes-connectivity/openssl/files/environment.d-openssl.sh25
1 files changed, 20 insertions, 5 deletions
diff --git a/meta/recipes-connectivity/openssl/files/environment.d-openssl.sh b/meta/recipes-connectivity/openssl/files/environment.d-openssl.sh
index 6cb82d7386..c635be8aca 100644
--- a/meta/recipes-connectivity/openssl/files/environment.d-openssl.sh
+++ b/meta/recipes-connectivity/openssl/files/environment.d-openssl.sh
@@ -1,8 +1,23 @@
1export OPENSSL_CONF="$OECORE_NATIVE_SYSROOT/usr/lib/ssl/openssl.cnf" 1export OPENSSL_CONF="$OECORE_NATIVE_SYSROOT/usr/lib/ssl/openssl.cnf"
2if [ -e "${OECORE_NATIVE_SYSROOT}/etc/ssl/certs/ca-certificates.crt" ];then
3 export SSL_CERT_DIR="$OECORE_NATIVE_SYSROOT/usr/lib/ssl/certs"
4 export SSL_CERT_FILE="$OECORE_NATIVE_SYSROOT/usr/lib/ssl/certs/ca-certificates.crt"
5 export BB_ENV_PASSTHROUGH_ADDITIONS="${BB_ENV_PASSTHROUGH_ADDITIONS:-} SSL_CERT_DIR SSL_CERT_FILE"
6fi
7export OPENSSL_MODULES="$OECORE_NATIVE_SYSROOT/usr/lib/ossl-modules/" 2export OPENSSL_MODULES="$OECORE_NATIVE_SYSROOT/usr/lib/ossl-modules/"
8export OPENSSL_ENGINES="$OECORE_NATIVE_SYSROOT/usr/lib/engines-3" 3export OPENSSL_ENGINES="$OECORE_NATIVE_SYSROOT/usr/lib/engines-3"
4
5# Respect host env SSL_CERT_FILE/SSL_CERT_DIR first, then auto-detected host cert, then cert in buildtools
6# CAFILE/CAPATH is auto-deteced when source buildtools
7if [ -z "$SSL_CERT_FILE" ]; then
8 if [ -n "$CAFILE" ];then
9 export SSL_CERT_FILE="$CAFILE"
10 elif [ -e "${OECORE_NATIVE_SYSROOT}/etc/ssl/certs/ca-certificates.crt" ];then
11 export SSL_CERT_FILE="$OECORE_NATIVE_SYSROOT/usr/lib/ssl/certs/ca-certificates.crt"
12 fi
13fi
14
15if [ -z "$SSL_CERT_DIR" ]; then
16 if [ -n "$CAPATH" ];then
17 export SSL_CERT_DIR="$CAPATH"
18 elif [ -e "${OECORE_NATIVE_SYSROOT}/etc/ssl/certs/ca-certificates.crt" ];then
19 export SSL_CERT_DIR="$OECORE_NATIVE_SYSROOT/usr/lib/ssl/certs"
20 fi
21fi
22
23export BB_ENV_PASSTHROUGH_ADDITIONS="${BB_ENV_PASSTHROUGH_ADDITIONS:-} SSL_CERT_DIR SSL_CERT_FILE"