From: Alexis de Talhouët Date: Wed, 8 Jun 2016 21:05:39 +0000 (-0400) Subject: Bug 6030 - "karaf" script invokes /bin/sh but requires /bin/bash functions X-Git-Tag: release/boron~143 X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=commitdiff_plain;h=ddeacdd4072121c423f478316c5cc00192f9312b Bug 6030 - "karaf" script invokes /bin/sh but requires /bin/bash functions The bin/karaf script uses the "local" command which is a shell builtin of bash and similar shells, but is not required for POSIX-compliance in sh. On most flavors of linux, this resolves to bash or dash which probably runs in a restricted environment after checking to see that its $0 is sh. But on Solaris's /bin/sh is actually ksh93 for backwards compatibility. Change-Id: Ifdd0e9fe798e881df01e7d2b586bc7e7142c0730 Signed-off-by: Alexis de Talhouët --- diff --git a/karaf/opendaylight-karaf-resources/src/main/resources/bin/instance b/karaf/opendaylight-karaf-resources/src/main/resources/bin/instance old mode 100644 new mode 100755 index 32a8854be5..ca6f33439b --- a/karaf/opendaylight-karaf-resources/src/main/resources/bin/instance +++ b/karaf/opendaylight-karaf-resources/src/main/resources/bin/instance @@ -162,7 +162,7 @@ setupNativePath() { } pathCanonical() { - local dst="${1}" + dst="${1}" while [ -h "${dst}" ] ; do ls=`ls -ld "${dst}"` link=`expr "$ls" : '.*-> \(.*\)$'` @@ -172,8 +172,8 @@ pathCanonical() { dst="`dirname "${dst}"`/$link" fi done - local bas=`basename "${dst}"` - local dir=`dirname "${dst}"` + bas=`basename "${dst}"` + dir=`dirname "${dst}"` if [ "$bas" != "$dir" ]; then dst="`pathCanonical "$dir"`/$bas" fi diff --git a/karaf/opendaylight-karaf-resources/src/main/resources/bin/karaf b/karaf/opendaylight-karaf-resources/src/main/resources/bin/karaf index 53906c6b3f..58392996e9 100755 --- a/karaf/opendaylight-karaf-resources/src/main/resources/bin/karaf +++ b/karaf/opendaylight-karaf-resources/src/main/resources/bin/karaf @@ -169,7 +169,7 @@ setupNativePath() { } pathCanonical() { - local dst="${1}" + dst="${1}" while [ -h "${dst}" ] ; do ls=`ls -ld "${dst}"` link=`expr "$ls" : '.*-> \(.*\)$'` @@ -179,8 +179,8 @@ pathCanonical() { dst="`dirname "${dst}"`/$link" fi done - local bas=`basename "${dst}"` - local dir=`dirname "${dst}"` + bas=`basename "${dst}"` + dir=`dirname "${dst}"` if [ "$bas" != "$dir" ]; then dst="`pathCanonical "$dir"`/$bas" fi