From 656af8cadc9d234d45cf63836eec68f6a60a5661 Mon Sep 17 00:00:00 2001 From: Lukas Schauer Date: Sat, 13 Jan 2018 23:06:32 +0100 Subject: [PATCH] don't fail on nested json array in challenge info --- dehydrated | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/dehydrated b/dehydrated index 1f8a311..3675d3d 100755 --- a/dehydrated +++ b/dehydrated @@ -651,14 +651,14 @@ sign_csr() { fi challenges="$(printf '%s\n' "${response}" | sed -n 's/.*\("challenges":[^\[]*\[[^]]*]\).*/\1/p')" - repl=$'\n''{' # fix syntax highlighting in Vim - challenge="$(printf "%s" "${challenges//\{/${repl}}" | grep \""${CHALLENGETYPE}"\")" + challenge="$(<<<"${challenges}" _sed -e 's/^[^\[]+\[(.+)\]$/\1/' -e 's/\}(, (\{)|(\]))/}\'$'\n''\2/g' | grep \""${CHALLENGETYPE}"\")" + challenge_token="$(printf '%s' "${challenge}" | get_json_string_value token | _sed 's/[^A-Za-z0-9_\-]/_/g')" if [[ ${API} -eq 1 ]]; then challenge_uri="$(printf '%s' "${challenge}" | get_json_string_value uri)" else challenge_uri="$(printf '%s' "${challenge}" | get_json_string_value url)" - fi + fi if [[ -z "${challenge_token}" ]] || [[ -z "${challenge_uri}" ]]; then _exiterr "Can't retrieve challenges (${response})" -- 2.47.2