From 98f7a469293f24a6d31ebdb67c27f49bc22fb6cb Mon Sep 17 00:00:00 2001 From: Andreas Granig Date: Mon, 11 May 2015 11:52:58 +0200 Subject: [PATCH] MT#12901 Read creds from ~/.ngcp-api Check for 600 perms and read creds from there if all fine Change-Id: I7b9b7ea210e34841da6f993bb761d48751795828 --- tools_bin/ngcp-api-delete | 4 ++++ tools_bin/ngcp-api-get | 6 +++++- tools_bin/ngcp-api-patch | 4 ++++ tools_bin/ngcp-api-post | 4 ++++ tools_bin/ngcp-api-put | 4 ++++ tools_bin/ngcp-api-tools | 15 +++++++++++++++ 6 files changed, 36 insertions(+), 1 deletion(-) create mode 100644 tools_bin/ngcp-api-tools diff --git a/tools_bin/ngcp-api-delete b/tools_bin/ngcp-api-delete index 9bd0817e0e..3adb6da861 100755 --- a/tools_bin/ngcp-api-delete +++ b/tools_bin/ngcp-api-delete @@ -1,5 +1,8 @@ #!/bin/sh CURL="/usr/bin/curl" +CREDS="$HOME/.ngcp-api" +TOOLS="/usr/bin/ngcp-api-tools" +-f "$TOOLS" && . "$TOOLS" usage () { cat << EOF @@ -14,6 +17,7 @@ EOF exit 1 } +test -z "$APIUSER" && -f "$TOOLS" && importcreds test -z "$APIUSER" && APIUSER="administrator:administrator" HEADERS="-H 'Connection: close'" diff --git a/tools_bin/ngcp-api-get b/tools_bin/ngcp-api-get index 2e345614de..1893135058 100755 --- a/tools_bin/ngcp-api-get +++ b/tools_bin/ngcp-api-get @@ -1,5 +1,8 @@ -#!/bin/sh +#!/bin/bash CURL="/usr/bin/curl" +CREDS="$HOME/.ngcp-api" +TOOLS="/usr/bin/ngcp-api-tools" +-f "$TOOLS" && . "$TOOLS" usage () { cat << EOF @@ -14,6 +17,7 @@ EOF exit 1 } +test -z "$APIUSER" && -f "$TOOLS" && importcreds test -z "$APIUSER" && APIUSER="administrator:administrator" HEADERS="-H 'Connection: close'" diff --git a/tools_bin/ngcp-api-patch b/tools_bin/ngcp-api-patch index ef90eff180..1869a2b8fa 100755 --- a/tools_bin/ngcp-api-patch +++ b/tools_bin/ngcp-api-patch @@ -1,5 +1,8 @@ #!/bin/sh CURL="/usr/bin/curl" +CREDS="$HOME/.ngcp-api" +TOOLS="/usr/bin/ngcp-api-tools" +-f "$TOOLS" && . "$TOOLS" usage () { cat << EOF @@ -16,6 +19,7 @@ EOF exit 1 } +test -z "$APIUSER" && -f "$TOOLS" && importcreds test -z "$APIUSER" && APIUSER="administrator:administrator" INPUT="-T -" CTYPE="application/json-patch+json" diff --git a/tools_bin/ngcp-api-post b/tools_bin/ngcp-api-post index d2918ff863..8c2af100e9 100755 --- a/tools_bin/ngcp-api-post +++ b/tools_bin/ngcp-api-post @@ -1,5 +1,8 @@ #!/bin/sh CURL="/usr/bin/curl" +CREDS="$HOME/.ngcp-api" +TOOLS="/usr/bin/ngcp-api-tools" +-f "$TOOLS" && . "$TOOLS" usage () { cat << EOF @@ -15,6 +18,7 @@ EOF exit 1 } +test -z "$APIUSER" && -f "$TOOLS" && importcreds test -z "$APIUSER" && APIUSER="administrator:administrator" INPUT="-T -" diff --git a/tools_bin/ngcp-api-put b/tools_bin/ngcp-api-put index c553b358dc..67129d0e6f 100755 --- a/tools_bin/ngcp-api-put +++ b/tools_bin/ngcp-api-put @@ -1,5 +1,8 @@ #!/bin/sh CURL="/usr/bin/curl" +CREDS="$HOME/.ngcp-api" +TOOLS="/usr/bin/ngcp-api-tools" +-f "$TOOLS" && . "$TOOLS" usage () { cat << EOF @@ -15,6 +18,7 @@ EOF exit 1 } +test -z "$APIUSER" && -f "$TOOLS" && importcreds test -z "$APIUSER" && APIUSER="administrator:administrator" INPUT="-T -" diff --git a/tools_bin/ngcp-api-tools b/tools_bin/ngcp-api-tools new file mode 100644 index 0000000000..6f2d0e69b7 --- /dev/null +++ b/tools_bin/ngcp-api-tools @@ -0,0 +1,15 @@ +importcreds () { + if [ -f "$CREDS" ]; then + echo "$CREDS present, checking perms" + set +e; stat "$CREDS" | grep 'Access: (0600' 1>/dev/null; r=$?; set -e + if [ "$r" = "0" ]; then + echo "$CREDS permissions ok" + . "$CREDS" + else + echo "$CREDS must have permissions 600" + exit 1 + fi + fi +} + +