[Nagiosplug-checkins] CVS: nagiosplug/plugins check_disk.c,1.14,1.15

Karl DeBisschop kdebisschop at users.sourceforge.net
Wed Mar 19 05:00:05 CET 2003


Update of /cvsroot/nagiosplug/nagiosplug/plugins
In directory sc8-pr-cvs1:/tmp/cvs-serv9244/plugins

Modified Files:
	check_disk.c 
Log Message:
check_disk working with mountlist.c

Index: check_disk.c
===================================================================
RCS file: /cvsroot/nagiosplug/nagiosplug/plugins/check_disk.c,v
retrieving revision 1.14
retrieving revision 1.15
diff -C2 -r1.14 -r1.15
*** check_disk.c	18 Mar 2003 07:48:44 -0000	1.14
--- check_disk.c	19 Mar 2003 12:59:38 -0000	1.15
***************
*** 64,67 ****
--- 64,68 ----
  #include <stdarg.h>
  #include "../lib/fsusage.h"
+ #include "../lib/mountlist.h"
  
  /* If nonzero, show inode information. */
***************
*** 147,150 ****
--- 148,153 ----
  int display_mntp = FALSE;
  
+ /* Linked list of mounted filesystems. */
+ static struct mount_entry *mount_list;
  
  int
***************
*** 163,166 ****
--- 166,170 ----
  	char *output = "";
  
+   struct mount_entry *me;
  	struct fs_usage fsp;
  	char *disk;
***************
*** 169,182 ****
  		usage ("Could not parse arguments\n");
  
! 	get_fs_usage (path, disk, &fsp);
  
- 	usp = (fsp.fsu_blocks - fsp.fsu_bavail) / fsp.fsu_blocks;
- 	disk_result = check_disk (usp, fsp.fsu_bavail);
- 	result = disk_result;
- 	asprintf (&output, "%llu of %llu kB (%2.0f%%) free (%d-byte blocks)",
- 	          fsp.fsu_bavail*fsp.fsu_blocksize/1024,
- 	          fsp.fsu_blocks*fsp.fsu_blocksize/1024,
- 	          (double)fsp.fsu_bavail*100/fsp.fsu_blocks,
- 	          fsp.fsu_blocksize);
  
  	terminate (result, "DISK %s %s\n", state_text (result), output);
--- 173,195 ----
  		usage ("Could not parse arguments\n");
  
! 	mount_list = read_filesystem_list (0);
! 
!   for (me = mount_list; me; me = me->me_next) {
! 		get_fs_usage (me->me_mountdir, me->me_devname, &fsp);
! 		if (fsp.fsu_blocks && strcmp ("none", me->me_mountdir)) {
! 			usp = (fsp.fsu_blocks - fsp.fsu_bavail) * 100 / fsp.fsu_blocks;
! 			disk_result = check_disk (usp, fsp.fsu_bavail);
! 			result = max_state (disk_result, result);
! 			asprintf (&output, "%s %llu of %llu kB (%2.0f%%) free (%d-byte blocks) on %s (%s) %d\n",
! 			          output,
! 			          fsp.fsu_bavail*fsp.fsu_blocksize/1024,
! 			          fsp.fsu_blocks*fsp.fsu_blocksize/1024,
! 			          (double)fsp.fsu_bavail*100/fsp.fsu_blocks,
! 			          fsp.fsu_blocksize,
! 			          me->me_mountdir,
! 			          me->me_type, usp);
! 		}
! 	}
  
  
  	terminate (result, "DISK %s %s\n", state_text (result), output);





More information about the Commits mailing list