333 fi
334 eval '_dbh_function=${_dbh_called[1]}'
335 eval '_dbh_lineno=${_dbh_called[0]}'
336 printf "%-40s " "$_dbh_file:${_dbh_function}:${_dbh_lineno}" 337}
338
339_debug() {
333 fi
334 eval '_dbh_function=${_dbh_called[1]}'
335 eval '_dbh_lineno=${_dbh_called[0]}'
336 printf "%-40s " "$_dbh_file:${_dbh_function}:${_dbh_lineno}" 337}
338
339_debug() {
333 fi
334 eval '_dbh_function=${_dbh_called[1]}'
335 eval '_dbh_lineno=${_dbh_called[0]}'
336 printf "%-40s " "$_dbh_file:${_dbh_function}:${_dbh_lineno}" 337}
338
339_debug() {
5337 if [ -z "$Le_Keylength" ]; then
5338 Le_Keylength=2048
5339 fi
5340 issue "$Le_Webroot" "$Le_Domain" "$Le_Alt" "$Le_Keylength" "$Le_RealCertPath" "$Le_RealKeyPath" "$Le_RealCACertPath" "$Le_ReloadCmd" "$Le_RealFullChainPath" "$Le_PreHook" "$Le_PostHook" "$Le_RenewHook" "$Le_LocalAddress" "$Le_ChallengeAlias" "$Le_Preferred_Chain" "$Le_Valid_From" "$Le_Valid_To"5341 res="$?"
5342 if [ "$res" != "0" ]; then
5343 return "$res"
5337 if [ -z "$Le_Keylength" ]; then
5338 Le_Keylength=2048
5339 fi
5340 issue "$Le_Webroot" "$Le_Domain" "$Le_Alt" "$Le_Keylength" "$Le_RealCertPath" "$Le_RealKeyPath" "$Le_RealCACertPath" "$Le_ReloadCmd" "$Le_RealFullChainPath" "$Le_PreHook" "$Le_PostHook" "$Le_RenewHook" "$Le_LocalAddress" "$Le_ChallengeAlias" "$Le_Preferred_Chain" "$Le_Valid_From" "$Le_Valid_To"5341 res="$?"
5342 if [ "$res" != "0" ]; then
5343 return "$res"
5337 if [ -z "$Le_Keylength" ]; then
5338 Le_Keylength=2048
5339 fi
5340 issue "$Le_Webroot" "$Le_Domain" "$Le_Alt" "$Le_Keylength" "$Le_RealCertPath" "$Le_RealKeyPath" "$Le_RealCACertPath" "$Le_ReloadCmd" "$Le_RealFullChainPath" "$Le_PreHook" "$Le_PostHook" "$Le_RenewHook" "$Le_LocalAddress" "$Le_ChallengeAlias" "$Le_Preferred_Chain" "$Le_Valid_From" "$Le_Valid_To"5341 res="$?"
5342 if [ "$res" != "0" ]; then
5343 return "$res"
5337 if [ -z "$Le_Keylength" ]; then
5338 Le_Keylength=2048
5339 fi
5340 issue "$Le_Webroot" "$Le_Domain" "$Le_Alt" "$Le_Keylength" "$Le_RealCertPath" "$Le_RealKeyPath" "$Le_RealCACertPath" "$Le_ReloadCmd" "$Le_RealFullChainPath" "$Le_PreHook" "$Le_PostHook" "$Le_RenewHook" "$Le_LocalAddress" "$Le_ChallengeAlias" "$Le_Preferred_Chain" "$Le_Valid_From" "$Le_Valid_To"5341 res="$?"
5342 if [ "$res" != "0" ]; then
5343 return "$res"
5337 if [ -z "$Le_Keylength" ]; then
5338 Le_Keylength=2048
5339 fi
5340 issue "$Le_Webroot" "$Le_Domain" "$Le_Alt" "$Le_Keylength" "$Le_RealCertPath" "$Le_RealKeyPath" "$Le_RealCACertPath" "$Le_ReloadCmd" "$Le_RealFullChainPath" "$Le_PreHook" "$Le_PostHook" "$Le_RenewHook" "$Le_LocalAddress" "$Le_ChallengeAlias" "$Le_Preferred_Chain" "$Le_Valid_From" "$Le_Valid_To"5341 res="$?"
5342 if [ "$res" != "0" ]; then
5343 return "$res"
5337 if [ -z "$Le_Keylength" ]; then
5338 Le_Keylength=2048
5339 fi
5340 issue "$Le_Webroot" "$Le_Domain" "$Le_Alt" "$Le_Keylength" "$Le_RealCertPath" "$Le_RealKeyPath" "$Le_RealCACertPath" "$Le_ReloadCmd" "$Le_RealFullChainPath" "$Le_PreHook" "$Le_PostHook" "$Le_RenewHook" "$Le_LocalAddress" "$Le_ChallengeAlias" "$Le_Preferred_Chain" "$Le_Valid_From" "$Le_Valid_To"5341 res="$?"
5342 if [ "$res" != "0" ]; then
5343 return "$res"
5337 if [ -z "$Le_Keylength" ]; then
5338 Le_Keylength=2048
5339 fi
5340 issue "$Le_Webroot" "$Le_Domain" "$Le_Alt" "$Le_Keylength" "$Le_RealCertPath" "$Le_RealKeyPath" "$Le_RealCACertPath" "$Le_ReloadCmd" "$Le_RealFullChainPath" "$Le_PreHook" "$Le_PostHook" "$Le_RenewHook" "$Le_LocalAddress" "$Le_ChallengeAlias" "$Le_Preferred_Chain" "$Le_Valid_From" "$Le_Valid_To"5341 res="$?"
5342 if [ "$res" != "0" ]; then
5343 return "$res"
5337 if [ -z "$Le_Keylength" ]; then
5338 Le_Keylength=2048
5339 fi
5340 issue "$Le_Webroot" "$Le_Domain" "$Le_Alt" "$Le_Keylength" "$Le_RealCertPath" "$Le_RealKeyPath" "$Le_RealCACertPath" "$Le_ReloadCmd" "$Le_RealFullChainPath" "$Le_PreHook" "$Le_PostHook" "$Le_RenewHook" "$Le_LocalAddress" "$Le_ChallengeAlias" "$Le_Preferred_Chain" "$Le_Valid_From" "$Le_Valid_To"5341 res="$?"
5342 if [ "$res" != "0" ]; then
5343 return "$res"
4436
4437 _savedomainconf "Le_Keylength" "$_key_length"
4438
4439 vlist="$Le_Vlist"4440 _cleardomainconf "Le_Vlist"
4441 _info "Getting domain auth token for each domain"
4442 sep='#'
3625 _reg_length="$1"
3626 _eab_id="$2"
3627 _eab_hmac_key="$3"
3628 _debug3 _regAccount "$_regAccount"3629 _initAPI
3630
3631 mkdir -p "$CA_DIR"
3534 )
3535 fi
3536
3537 if [ "$_X_IS_RENEW" = "1" ] && _hasfield "$Le_Webroot" "$W_DNS"; then3538 _err "$_DNS_MANUAL_ERR"
3539 fi
3540
A variable has been referenced that is not known to have been assigned earlier in the script. Double-check that the variable has indeed been assigned before being referenced and that it does not contain any typos.
Note: This issue only triggers for variables with lowercase characters in their name (foo
and kFOO
but not FOO
) due to the standard convention of using lowercase variable names for unexported, local variables.
Exceptions
The checker intentionally does not attempt to figure out runtime or dynamic assignments like with source "$(date +%F).sh"
or eval var=value
.
If you know for a fact that the variable is set, you can use ${var:?}
to fail if the variable is unset (or empty), initialize it to a default value if uninitialized with : "${var:=}"
, or explicitly initialize/declare it with var=""
or declare var
. You can also disable this issue by using a // skipcq: SH-2154
pragma.
References
POSIX - Parameter expansion: * https://stackoverflow.com/a/16753536/2309247 * http://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3chap02.html#tag180602