[Patch for 2.4] make "cfg_dir=" ignore hidden files
Bjoern Beutel
bjoern-beutel at arcor.de
Thu Jun 8 13:12:22 CEST 2006
Hello,
when editing my Nagios configuration using Emacs, I sometimes can't restart Nagios
because it reports an error about an ill-formed .cfg file.
The reason is that Emacs creates a lock for each file that has been changed
but not yet saved. For example, the lock for "dir/my_file.cfg" is a symbolic link
named "dir/.#my_file.cfg". When "dir" is included by "cfg_dir=", Nagios tries
to read the symbolic link, complains and exits.
The patch below solves the problem by making "cfg_dir=" ignore hidden files.
Björn Beutel
diff -Naur nagios-2.4/xdata/xodtemplate.c nagios-2.4.new/xdata/xodtemplate.c
--- nagios-2.4/xdata/xodtemplate.c 2006-01-12 16:13:08.000000000 +0000
+++ nagios-2.4.new/xdata/xodtemplate.c 2006-06-08 10:39:13.000000000 +0000
@@ -385,9 +385,9 @@
snprintf(file,sizeof(file),"%s/%s",dirname,dirfile->d_name);
file[sizeof(file)-1]='\x0';
- /* process this if it's a config file... */
+ /* process this if it's a non-hidden config file... */
x=strlen(dirfile->d_name);
- if(x>4 && !strcmp(dirfile->d_name+(x-4),".cfg")){
+ if(x>4 && dirfile->d_name[0] != '.' && !strcmp(dirfile->d_name+(x-4),".cfg")){
#ifdef _DIRENT_HAVE_D_TYPE
/* only process normal files and symlinks */
More information about the Developers
mailing list