ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/i-scream/projects/cms/source/ihost/libstatgrab/disk_stat.c
(Generate patch)

Comparing projects/cms/source/ihost/libstatgrab/disk_stat.c (file contents):
Revision 1.7 by tdb, Sat May 18 18:15:56 2002 UTC vs.
Revision 1.11 by tdb, Tue May 21 16:47:12 2002 UTC

# Line 1 | Line 1
1   /*
2   * i-scream central monitoring system
3 + * http://www.i-scream.org.uk
4   * Copyright (C) 2000-2002 i-scream
5   *
6   * This program is free software; you can redistribute it and/or
# Line 116 | Line 117 | char *get_disk_stats(){
117          }
118  
119   #endif
120 < #ifdef linux
121 <        if ((f=fopen("/etc/mtab", "r" ))==NULL){
120 > #ifdef LINUX
121 >        if ((f=setmntent("/etc/mtab", "r" ))==NULL){
122                  errf("Failed to open mounts (%m)");
123                  return NULL;
124          }
# Line 153 | Line 154 | char *get_disk_stats(){
154                  sd_ptr->next_disk=sd;
155                  sd=sd_ptr;
156          }
157 +
158 +        if ((endmntent(f)) != 0) {
159 +                errf("Failed to close file (%m)");
160 +                return NULL;
161 +        }
162 +
163   #endif
164   #ifdef FREEBSD
165          nummnt=getmntinfo(&mp , MNT_LOCAL);
# Line 193 | Line 200 | char *get_disk_stats(){
200          sd_ptr=sd;
201          xml_disk_stats=strdup("<disk>");
202          
203 <        while(sd_ptr!=NULL){
203 >        for(counter=0;sd_ptr!=NULL;counter++){
204                  xml_disk_stats_ptr=xml_disk_stats;
205                  if((xml_disk_stats=strf("%s<p%d name=\"%s\" mount=\"%s\" kbytes=\"%ld\" used=\"%ld\" avail=\"%ld\" totalinodes=\"%ld\" freeinodes=\"%ld\"></p%d>", xml_disk_stats, counter, sd_ptr->disk->device_name, sd_ptr->disk->mnt_point, sd_ptr->disk->size, sd_ptr->disk->used, sd_ptr->disk->avail, sd_ptr->disk->t_inodes, sd_ptr->disk->f_inodes, counter)) == NULL){
206                          errf("strf failed (%m)");
# Line 201 | Line 208 | char *get_disk_stats(){
208                  }
209                  free(xml_disk_stats_ptr);
210                  sd_ptr=sd_ptr->next_disk;
204                counter++;
211          }
212          xml_disk_stats_ptr=xml_disk_stats;
213          xml_disk_stats=strf("%s</disk>",xml_disk_stats);

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines