Simplify requirements for PKI, CA and vars file

Prioritise $EASYRSA_NO_VARS above other vars file detection.

Rename $pki_is_required to $require_pki

Re-establish; Do not require PKI, CA or vars for command 'upgrade'.

Signed-off-by: Richard T Bonhomme <tincantech@protonmail.com>
This commit is contained in:
Richard T Bonhomme 2023-07-02 21:10:10 +01:00
parent 232f9f6b8d
commit 444444595e
No known key found for this signature in database
GPG Key ID: 2D767DB92FB6C246

View File

@ -5432,7 +5432,10 @@ vars_setup() {
# Find vars # Find vars
# Explicit user defined vars file: # Explicit user defined vars file:
if [ "$EASYRSA_VARS_FILE" ]; then if [ "$EASYRSA_NO_VARS" ]; then
: # ok
elif [ "$EASYRSA_VARS_FILE" ]; then
if [ -e "$EASYRSA_VARS_FILE" ]; then if [ -e "$EASYRSA_VARS_FILE" ]; then
vars="$EASYRSA_VARS_FILE" vars="$EASYRSA_VARS_FILE"
user_vars_true=1 user_vars_true=1
@ -5517,7 +5520,7 @@ The 'vars' file was not found:
;; ;;
*) *)
# For init-pki, skip this check # For init-pki, skip this check
if [ "$pki_is_required" ]; then if [ "$require_pki" ]; then
[ "$e_pki_vars" ] && print "Found: $pki_vars" [ "$e_pki_vars" ] && print "Found: $pki_vars"
[ "$e_easy_vars" ] && print "Found: $easy_vars" [ "$e_easy_vars" ] && print "Found: $easy_vars"
[ "$e_pwd_vars" ] && print "Found: $pwd_vars" [ "$e_pwd_vars" ] && print "Found: $pwd_vars"
@ -5542,9 +5545,11 @@ Priority should be given to your PKI vars file:
fi fi
# If EASYRSA_NO_VARS is defined then do not use vars # If EASYRSA_NO_VARS is defined then do not use vars
# If no_pki_required then located vars files are not # If PKI is not required then located vars files are
# required # not required
if [ "$EASYRSA_NO_VARS" ] || [ "$no_pki_required" ]; then if [ "$EASYRSA_NO_VARS" ]; then
: # ok
elif [ ! "$require_pki" ]; then
: # ok : # ok
# If a vars file was located then source it # If a vars file was located then source it
@ -5683,8 +5688,7 @@ verify_working_env() {
install_data_to_pki x509-types-only install_data_to_pki x509-types-only
# For commands which 'require a PKI' and PKI exists # For commands which 'require a PKI' and PKI exists
if [ "$pki_is_required" ] # && [ -d "$EASYRSA_PKI" ] if [ "$require_pki" ]; then
then
# Verify PKI is initialised # Verify PKI is initialised
verify_pki_init verify_pki_init
@ -6633,15 +6637,16 @@ done
cmd="$1" cmd="$1"
[ "$1" ] && shift # scrape off command [ "$1" ] && shift # scrape off command
# Establish PKI and CA initialisation requirements
# This avoids unnecessary warnings and notices # This avoids unnecessary warnings and notices
case "$cmd" in case "$cmd" in
init-pki|clean-all|""|help|-h|--help|--usage|version) init-pki|clean-all|\
no_pki_required=1 help|-h|--help|--usage|\
unset -v pki_is_required require_ca version|upgrade|'')
unset -v require_pki require_ca
;; ;;
*) *)
pki_is_required=1 require_pki=1
unset -v no_pki_required
case "$cmd" in case "$cmd" in
gen-req|gen-dh|build-ca) gen-req|gen-dh|build-ca)
unset -v require_ca unset -v require_ca