---
 Shorewall/install.sh |   29 ++++++++++++++++++++++++++---
 Shorewall/lib.base   |    2 ++
 Shorewall/shorewall  |    1 +
 3 files changed, 29 insertions(+), 3 deletions(-)

diff --git a/Shorewall/install.sh b/Shorewall/install.sh
index eb85984..e6663a6 100755
--- a/Shorewall/install.sh
+++ b/Shorewall/install.sh
@@ -177,12 +177,14 @@ if [ -n "$BASE" ]; then
     [ -n ${ETC:=${BASE}/etc/} ]
     [ -n ${SBIN:=${BASE}/sbin/} ]
     [ -n ${SHARE:=${BASE}/share/} ]
+    [ -n ${LIBEXEC:=${BASE}/libexec/} ]
     [ -n ${VAR:=${BASE}/var/lib/} ]
     [ -n ${MANDIR:=${BASE}/share/man} ]
 else
     [ -n ${ETC:=/etc/} ]
     [ -n ${SBIN:=/sbin/} ]
     [ -n ${SHARE:=/usr/share/} ]
+    [ -n ${LIBEXEC:=/usr/libexec/} ]
     [ -n ${VAR:=/var/lib/} ]
     [ -n ${MANDIR:=/usr/share/man} ]
 fi
@@ -236,6 +238,22 @@ case "$SHARE" in
        ;;
 esac
 
+case "$LIBEXEC" in
+    /*/)
+       ;;
+    /*)
+       LIBEXEC=$LIBEXEC/
+       ;;
+    *)
+       if [ -n "$BASE" ]; then
+           LIBEXEC=$BASE/$LIBEXEC/
+       else
+           echo "ERROR: LIBEXEC must contain an absolute path name" >&2
+           exit 1
+       fi
+       ;;
+esac
+
 case "$VAR" in
     /*/)
        ;;
@@ -255,6 +273,7 @@ esac
 ETC=$(echo $ETC | sed "s'//'/'g")
 SBIN=$(echo $SBIN | sed "s'//'/'g")
 SHARE=$(echo $SHARE | sed "s'//'/'g")
+LIBEXEC=$(echo $LIBEXEC | sed "s'//'/'g")
 VAR=$(echo $VAR | sed "s'//'/'g")
 
 PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin:/usr/local/sbin
@@ -351,15 +370,18 @@ if [ -n "${DESTDIR}${OWNERSHIP}" ]; then
     chmod 755 ${DESTDIR}/etc
 fi
 #
-# Create ${ETC}shorewall, ${SHARE}shorewall and ${VAR}shorewall if needed
+# Create ${ETC}shorewall, ${SHARE}shorewall, ${LIBEXEC}shorewall and
+# ${VAR}shorewall if needed
 #
 mkdir -p ${DESTDIR}${ETC}shorewall
 mkdir -p ${DESTDIR}${SHARE}shorewall
+mkdir -p ${DESTDIR}${LIBEXEC}shorewall
 mkdir -p ${DESTDIR}${SHARE}shorewall/configfiles
 mkdir -p ${DESTDIR}${VAR}shorewall
 
 chmod 755 ${DESTDIR}${ETC}shorewall
 chmod 755 ${DESTDIR}${SHARE}shorewall
+chmod 755 ${DESTDIR}${LIBEXEC}shorewall
 chmod 755 ${DESTDIR}${SHARE}shorewall/configfiles
 
 if [ -n "$DESTDIR" ]; then
@@ -953,12 +975,13 @@ cd ..
 export ETC
 export SBIN
 export SHARE
+export LIBEXEC
 export VAR
 
 perl -i -e '
 
 while ( <> ) {
-   for my $var qw( ETC SBIN SHARE VAR ) {
+   for my $var qw( ETC SBIN SHARE LIBEXEC VAR ) {
       if ( /^$var=/ ) {
          $_ = "g_" . lc( $var ) . "=" . $ENV{$var} . "\n";
       }
@@ -973,7 +996,7 @@ my \$done = 0;
 
 while ( <> ) {
    unless ( \$done ) {
-      for my \$var qw( ETC SBIN SHARE VAR ) {
+      for my \$var qw( ETC SBIN SHARE LIBEXEC VAR ) {
          if ( /\$var(?:\\s*)=(?:\\s*)(.*);/ ) {
             s/\$1/'\$ENV{\$var}'/;
             \$done = \$var eq 'VAR';
diff --git a/Shorewall/lib.base b/Shorewall/lib.base
index 7369c7e..a926f01 100644
--- a/Shorewall/lib.base
+++ b/Shorewall/lib.base
@@ -32,6 +32,7 @@
 ETC=/etc/
 SBIN=/sbin/
 SHARE=/usr/share/
+LIBEXEC=/usr/libexec/
 VAR=/var/lib/
 
 SHOREWALL_LIBVERSION=40407
@@ -39,6 +40,7 @@ SHOREWALL_CAPVERSION=40417
 
 [ -n "${VARDIR:=${g_var}shorewall}" ]
 [ -n "${SHAREDIR:=${g_share}shorewall}" ]
+[ -n "${LIBEXECDIR:=${g_libexec}shorewall}" ]
 [ -n "${CONFDIR:=${g_etc}shorewall}" ]
 
 #
diff --git a/Shorewall/shorewall b/Shorewall/shorewall
index 18cf56c..0ced9e8 100755
--- a/Shorewall/shorewall
+++ b/Shorewall/shorewall
@@ -32,6 +32,7 @@
 ETC=/etc/
 SBIN=/sbin/
 SHARE=/usr/share/
+LIBEXEC=/usr/libexec
 VAR=/var/lib/
 #
 # Set the configuration variables from shorewall.conf
-- 
1.7.4


------------------------------------------------------------------------------
Colocation vs. Managed Hosting
A question and answer guide to determining the best fit
for your organization - today and in the future.
http://p.sf.net/sfu/internap-sfd2d
_______________________________________________
Shorewall-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/shorewall-devel

Reply via email to