From 4038a99261a91fa90310f024d53eb3dc2ed18a94 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Pavel=20K=C3=A1cha?= <ph@cesnet.cz>
Date: Fri, 27 Nov 2015 15:50:57 +0100
Subject: [PATCH] Improved filer startscript compatibility with RHEL/SUSE and
 with no-LSB distros

---
 .../contrib/warden_filer/warden_filer_receiver    | 15 ++++++++++++---
 warden3/contrib/warden_filer/warden_filer_sender  | 15 ++++++++++++---
 2 files changed, 24 insertions(+), 6 deletions(-)
 mode change 100755 => 100644 warden3/contrib/warden_filer/warden_filer_receiver
 mode change 100755 => 100644 warden3/contrib/warden_filer/warden_filer_sender

diff --git a/warden3/contrib/warden_filer/warden_filer_receiver b/warden3/contrib/warden_filer/warden_filer_receiver
old mode 100755
new mode 100644
index a0ded37..4ecebfb
--- a/warden3/contrib/warden_filer/warden_filer_receiver
+++ b/warden3/contrib/warden_filer/warden_filer_receiver
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
 #
 ### BEGIN INIT INFO
 # Provides:          warden_filer_receiver
@@ -18,8 +18,17 @@ SERVICE_NAME="${DAEMON_NAME}_${FUNC}"
 PID=/var/run/"$DAEMON_NAME"/"$FUNC".pid
 CONFIG=/etc/"$DAEMON_NAME".cfg
 
-test -f /etc/default/"$SERVICE_NAME" && . /etc/default/"$SERVICE_NAME"
-. /lib/lsb/init-functions
+# Try Debian & Fedora/RHEL/Suse sysconfig
+for n in default sysconfig; do
+	[ -f /etc/$n/"$SERVICE_NAME" ] && . /etc/$n/"$SERVICE_NAME"
+done
+
+# Fallback
+function log_daemon_msg () { echo -n "$@"; }
+function log_end_msg () { [ $1 -eq 0 ] && echo " OK" || echo " Failed"; }
+function status_of_proc () { [ -f "$PID" ] && ps u -p $(<"$PID") || echo "$PID not found."; }
+
+[ -f /lib/lsb/init-functions ] && . /lib/lsb/init-functions
 
 ACTION="$1"
 
diff --git a/warden3/contrib/warden_filer/warden_filer_sender b/warden3/contrib/warden_filer/warden_filer_sender
old mode 100755
new mode 100644
index 725eafa..358c3fe
--- a/warden3/contrib/warden_filer/warden_filer_sender
+++ b/warden3/contrib/warden_filer/warden_filer_sender
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
 #
 ### BEGIN INIT INFO
 # Provides:          warden_filer_sender
@@ -18,8 +18,17 @@ SERVICE_NAME="${DAEMON_NAME}_${FUNC}"
 PID=/var/run/"$DAEMON_NAME"/"$FUNC".pid
 CONFIG=/etc/"$DAEMON_NAME".cfg
 
-test -f /etc/default/"$SERVICE_NAME" && . /etc/default/"$SERVICE_NAME"
-. /lib/lsb/init-functions
+# Try Debian & Fedora/RHEL/Suse sysconfig
+for n in default sysconfig; do
+	[ -f /etc/$n/"$SERVICE_NAME" ] && . /etc/$n/"$SERVICE_NAME"
+done
+
+# Fallback
+function log_daemon_msg () { echo -n "$@"; }
+function log_end_msg () { [ $1 -eq 0 ] && echo " OK" || echo " Failed"; }
+function status_of_proc () { [ -f "$PID" ] && ps u -p $(<"$PID") || echo "$PID not found."; }
+
+[ -f /lib/lsb/init-functions ] && . /lib/lsb/init-functions
 
 ACTION="$1"
 
-- 
GitLab