diff --git a/client/install_client.sh b/client/install_client.sh index 488d1f1..c62e138 100755 --- a/client/install_client.sh +++ b/client/install_client.sh @@ -244,11 +244,16 @@ register_peer_on_server() { SERVER_RESPONSE_RAW="$response" - SERVER_STATUS="$(echo "$response" | awk -F= '/^STATUS=/{print $2; exit}')" - CLIENT_ADDRESS="$(echo "$response" | awk -F= '/^CLIENT_ADDRESS=/{print $2; exit}')" - SERVER_PUBLIC_KEY="$(echo "$response" | awk -F= '/^SERVER_PUBLIC_KEY=/{print $2; exit}')" - SERVER_ENDPOINT="$(echo "$response" | awk -F= '/^SERVER_ENDPOINT=/{print $2; exit}')" - SERVER_DNS_REMOTE="$(echo "$response" | awk -F= '/^SERVER_DNS=/{print $2; exit}')" + kv_get() { + local key="$1" + printf '%s\n' "$response" | sed -n "s/^${key}=//p" | head -n1 + } + + SERVER_STATUS="$(kv_get STATUS)" + CLIENT_ADDRESS="$(kv_get CLIENT_ADDRESS)" + SERVER_PUBLIC_KEY="$(kv_get SERVER_PUBLIC_KEY)" + SERVER_ENDPOINT="$(kv_get SERVER_ENDPOINT)" + SERVER_DNS_REMOTE="$(kv_get SERVER_DNS)" [[ -n "$SERVER_PUBLIC_KEY" ]] || die "Сервер не вернул SERVER_PUBLIC_KEY" [[ -n "$CLIENT_ADDRESS" ]] || die "Сервер не вернул CLIENT_ADDRESS"