Checking modification against a file can not detect a removing file in
"/etc/kdump/post.d/ /etc/kdump/pre.d/". Hence for pre.d/post.d, resorting to
modified time of directory.
Signed-off-by: Pingfan Liu <piliu(a)redhat.com>
---
kdumpctl | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/kdumpctl b/kdumpctl
index 5f1c956..6e3ef74 100755
--- a/kdumpctl
+++ b/kdumpctl
@@ -339,6 +339,7 @@ check_files_modified()
EXTRA_BINS=`grep ^kdump_post $KDUMP_CONFIG_FILE | cut -d\ -f2`
CHECK_FILES=`grep ^kdump_pre $KDUMP_CONFIG_FILE | cut -d\ -f2`
+ HOOKS_DIR="/etc/kdump/post.d/ /etc/kdump/pre.d/"
if [ -d /etc/kdump/post.d ]; then
for file in /etc/kdump/post.d/*; do
if [ -x "$file" ]; then
@@ -361,7 +362,7 @@ check_files_modified()
fi
CORE_COLLECTOR=`grep ^core_collector $KDUMP_CONFIG_FILE | cut -d\ -f2`
CORE_COLLECTOR=`type -P $CORE_COLLECTOR`
- EXTRA_BINS="$EXTRA_BINS $CHECK_FILES $POST_FILES $PRE_FILES"
+ EXTRA_BINS="$EXTRA_BINS $CHECK_FILES"
CHECK_FILES=`grep ^extra_bins $KDUMP_CONFIG_FILE | cut -d\ -f2-`
EXTRA_BINS="$EXTRA_BINS $CHECK_FILES"
files="$KDUMP_CONFIG_FILE $kdump_kernel $EXTRA_BINS $CORE_COLLECTOR"
@@ -389,10 +390,11 @@ check_files_modified()
done
fi
- check_exist "$files" && check_executable "$EXTRA_BINS"
+ check_exist "$files" && check_executable "$EXTRA_BINS $PRE_FILES
$POST_FILES"
[ $? -ne 0 ] && return 2
- for file in $files; do
+ check_list="$files $HOOKS_DIR"
+ for file in $check_list; do
if [ -e "$file" ]; then
time_stamp=`stat -c "%Y" $file`
if [ "$time_stamp" -gt "$image_time" ]; then
--
2.7.5