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

Comparing projects/libstatgrab/src/libstatgrab/os_info.c (file contents):
Revision 1.3 by tdb, Fri Feb 28 22:59:35 2003 UTC vs.
Revision 1.4 by pajs, Fri Mar 7 13:20:46 2003 UTC

# Line 22 | Line 22
22   #include "config.h"
23   #endif
24  
25 #include <stdio.h>
25   #include <sys/utsname.h>
26   #include "statgrab.h"
27   #ifdef SOLARIS
28   #include <kstat.h>
29   #include <time.h>
30   #endif
31 + #ifdef LINUX
32 + #include <stdio.h>
33 + #endif
34  
35   general_stat_t *get_general_stats(){
36  
37          static general_stat_t general_stat;    
38 +        static struct utsname os;
39  
40 <        struct utsname os;
40 > #ifdef SOLARIS
41          time_t boottime,curtime;
42          kstat_ctl_t *kc;
43          kstat_t *ksp;
44          kstat_named_t *kn;
45 + #endif
46 + #ifdef LINUX
47 +        FILE *f;
48 + #endif
49  
50          if((uname(&os)) < 0){
51                  return NULL;
# Line 51 | Line 58 | general_stat_t *get_general_stats(){
58          general_stat.hostname = os.nodename;
59  
60          /* get uptime */
61 + #ifdef SOLARIS
62          if ((kc = kstat_open()) == NULL) {
63                  return NULL;
64          }
# Line 69 | Line 77 | general_stat_t *get_general_stats(){
77  
78          time(&curtime);
79          general_stat.uptime = curtime - boottime;
80 + #endif
81 + #ifdef LINUX
82 +        if ((f=fopen("/proc/uptime", "r")) == NULL) {
83 +                return NULL;
84 +        }
85 +        if((fscanf(f,"%lu %*d",&general_stat.uptime)) != 1){
86 +                return NULL;
87 +        }
88 +        fclose(f);
89 + #endif
90  
91          return &general_stat;
92          

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines