Browse Source

Merge pull request #393 from Neilpang/dev

Dev
neil 8 years ago
parent
commit
40a3ae04b6
3 changed files with 20 additions and 24 deletions
  1. 2 1
      .travis.yml
  2. 17 20
      acme.sh
  3. 1 3
      dnsapi/dns_nsupdate.sh

+ 2 - 1
.travis.yml

@@ -15,9 +15,10 @@ addons:
 script:
   - curl -sSL $SHFMT_URL -o ~/shfmt
   - chmod +x ~/shfmt
+  - ~/shfmt -l -w -i 2 .
+  - git diff --exit-code && echo "shfmt OK"
   - shellcheck -V
   - shellcheck -e SC2021,SC2126,SC2034 **/*.sh && echo "shellcheck OK"
-  - ~/shfmt -l -w -i 2 . && echo "shfmt OK" || git diff --exit-code || (echo "Run shfmt to fix the formatting issues" && false)
   - cd ..
   - curl -sSL https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-amd64.zip -o ngrok-stable-linux-amd64.zip && unzip ngrok-stable-linux-amd64.zip && export NGROK_BIN="$(pwd)/ngrok"
   - git clone https://github.com/Neilpang/acmetest.git && cp -r acme.sh acmetest/ && cd acmetest

+ 17 - 20
acme.sh

@@ -1325,7 +1325,7 @@ _clear_conf() {
   _sdkey="$2"
   if [ "$_c_c_f" ]; then
     _conf_data="$(cat "$_c_c_f")"
-    echo "$_conf_data" | sed "s/^$_sdkey *=.*$//" > "$_c_c_f"
+    echo "$_conf_data" | sed "s/^$_sdkey *=.*$//" >"$_c_c_f"
   else
     _err "config file is empty, can not clear"
   fi
@@ -1423,32 +1423,29 @@ _startserver() {
   #for centos ncat
   if _contains "$nchelp" "nmap.org"; then
     _debug "Using ncat: nmap.org"
+    if ! _exec "printf \"%s\r\n\r\n%s\" \"HTTP/1.1 200 OK\" \"$content\" | $_NC \"$Le_HTTPPort\" >&2"; then
+      _exec_err
+      return 1
+    fi
     if [ "$DEBUG" ]; then
-      if printf "%s\r\n\r\n%s" "HTTP/1.1 200 OK" "$content" | $_NC "$Le_HTTPPort"; then
-        return
-      fi
-    else
-      if printf "%s\r\n\r\n%s" "HTTP/1.1 200 OK" "$content" | $_NC "$Le_HTTPPort" >/dev/null 2>&1; then
-        return
-      fi
+      _exec_err
     fi
-    _err "ncat listen error."
+    return
   fi
 
   #  while true ; do
-  if [ "$DEBUG" ]; then
-    if ! printf "%s\r\n\r\n%s" "HTTP/1.1 200 OK" "$content" | $_NC -p "$Le_HTTPPort"; then
-      printf "%s\r\n\r\n%s" "HTTP/1.1 200 OK" "$content" | $_NC "$Le_HTTPPort"
-    fi
-  else
-    if ! printf "%s\r\n\r\n%s" "HTTP/1.1 200 OK" "$content" | $_NC -p "$Le_HTTPPort" >/dev/null 2>&1; then
-      printf "%s\r\n\r\n%s" "HTTP/1.1 200 OK" "$content" | $_NC "$Le_HTTPPort" >/dev/null 2>&1
-    fi
+  if ! _exec "printf \"%s\r\n\r\n%s\" \"HTTP/1.1 200 OK\" \"$content\" | $_NC -p \"$Le_HTTPPort\" >&2"; then
+    _exec "printf \"%s\r\n\r\n%s\" \"HTTP/1.1 200 OK\" \"$content\" | $_NC \"$Le_HTTPPort\" >&2"
   fi
+
   if [ "$?" != "0" ]; then
     _err "nc listen error."
+    _exec_err
     exit 1
   fi
+  if [ "$DEBUG" ]; then
+    _exec_err
+  fi
   #  done
 }
 
@@ -1781,14 +1778,14 @@ _exec() {
   fi
 
   if [ "$_EXEC_TEMP_ERR" ]; then
-    "$@" 2>"$_EXEC_TEMP_ERR"
+    eval "$@ 2>>$_EXEC_TEMP_ERR"
   else
-    "$@"
+    eval "$@"
   fi
 }
 
 _exec_err() {
-  [ "$_EXEC_TEMP_ERR" ] && _err "$(cat "$_EXEC_TEMP_ERR")"
+  [ "$_EXEC_TEMP_ERR" ] && _err "$(cat "$_EXEC_TEMP_ERR")" && echo "" >"$_EXEC_TEMP_ERR"
 }
 
 _apachePath() {

+ 1 - 3
dnsapi/dns_nsupdate.sh

@@ -1,6 +1,5 @@
 #!/usr/bin/env sh
 
-
 ########  Public functions #####################
 
 #Usage: dns_nsupdate_add   _acme-challenge.www.domain.com   "XKrxpRBosdIKFzxW_CT3KLZNf6q0HG9i01zxXp5CPBs"
@@ -22,7 +21,7 @@ EOF
     _err "error updating domain"
     return 1
   fi
-  
+
   return 0
 }
 
@@ -45,7 +44,6 @@ EOF
   return 0
 }
 
-
 ####################  Private functions bellow ##################################
 
 _checkKeyFile() {