This commit is contained in:
Marc Beninca 2024-09-01 21:00:03 +02:00
parent e41d0e976f
commit c2b3a78617
Signed by: marc.beninca
GPG key ID: 9C7613450C80C24F

View file

@ -199,6 +199,36 @@ _spcd_txt_pick() {
# │ functions │ # │ functions │
# ╰───────────╯ # ╰───────────╯
spcd_ca() {
local index name value
local grep="\(After\|Before\|Issuer\|Signature Algorithm\|Subject:\)"
case "${1}" in
"list")
while true; do
index=$((index + 1))
name="SPCD_CA_${index}"
eval "value=\"\${name}\""
[ -n "${value}" ] || break
echo "${name} ="
echo "${value}" |
openssl x509 -noout -text |
grep "${grep}"
done
;;
"write")
local root="${2}"
while true; do
index=$((index + 1))
name="SPCD_CA_${index}"
eval "value=\"\${name}\""
[ -n "${value}" ] || break
spcd_os_write "${root}/${index}.crt" "${value}"
done
;;
*) ;;
esac
}
spcd_dns() { spcd_dns() {
local index name value local index name value
case "${1}" in case "${1}" in
@ -243,19 +273,6 @@ spcd_error_os() {
exit "${_SPCD_ERROR_OS}" exit "${_SPCD_ERROR_OS}"
} }
# ╭───────────┬─────────╮
# │ functions │ openssl │
# ╰───────────┴─────────╯
spcd_openssl_x509() {
if [ -f "${1}" ]; then
openssl x509 \
-in "${1}" \
-noout -text |
grep "\(After\|Before\|Issuer\|Signature A\|Subject:\)"
fi
}
# ╭───────────┬────╮ # ╭───────────┬────╮
# │ functions │ os │ # │ functions │ os │
# ╰───────────┴────╯ # ╰───────────┴────╯
@ -463,6 +480,7 @@ SPCD_PM_ZYPPER="zypper"
# ╰──────┴─────────────╯ # ╰──────┴─────────────╯
spcd_step__environment_defaults_print() { spcd_step__environment_defaults_print() {
spcd_ca "list"
spcd_dns "list" spcd_dns "list"
set -- \ set -- \
"GIT_RWX" \ "GIT_RWX" \
@ -1171,7 +1189,7 @@ spcd_step__ca_install_package() {
spcd_step__ca_write_certificates() { spcd_step__ca_write_certificates() {
spcd_step "Write certificates" spcd_step "Write certificates"
local root index text path local root
case "${SPCD_OS_ID}" in case "${SPCD_OS_ID}" in
"${SPCD_OS_ALMA}" | "${SPCD_OS_FEDORA}" | "${SPCD_OS_ROCKY}") "${SPCD_OS_ALMA}" | "${SPCD_OS_FEDORA}" | "${SPCD_OS_ROCKY}")
root="/etc/pki/ca-trust/source/anchors" root="/etc/pki/ca-trust/source/anchors"
@ -1188,15 +1206,7 @@ spcd_step__ca_write_certificates() {
*) ;; *) ;;
esac esac
spcd_os_mkdir "${root}" spcd_os_mkdir "${root}"
while true; do spcd_ca "write" "${root}"
index=$((index + 1))
eval "text=\"\${SPCD_CA_${index}}\""
[ -n "${text}" ] || break
path="${root}/${index}.crt"
spcd_split
spcd_os_write "${path}" "${text}"
spcd_openssl_x509 "${path}"
done
} }
spcd_step__ca_update_certificates() { spcd_step__ca_update_certificates() {