Experimental RSS code.
[monky] / src / common.c
index 8621a76..233a2b3 100644 (file)
@@ -7,8 +7,6 @@
  */
 
 #include "conky.h"
-#include "remoted.h"
-#include "remotec.h"
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
@@ -27,7 +25,7 @@ double get_time()
 {
        struct timeval tv;
        gettimeofday(&tv, 0);
-       return tv.tv_sec + tv.tv_usec / 1000000.0;
+       return tv.tv_sec + (tv.tv_usec / 1000000.0);
 }
 
 FILE *open_file(const char *file, int *reported)
@@ -35,7 +33,7 @@ FILE *open_file(const char *file, int *reported)
        FILE *fp = fopen(file, "r");
        if (!fp) {
                if (!reported || *reported == 0) {
-                       CRIT_ERR("can't open %s: %s", file, strerror(errno));
+                       ERR("can't open %s: %s", file, strerror(errno));
                        if (reported)
                                *reported = 1;
                }
@@ -129,6 +127,11 @@ struct net_stat *get_net_stat(const char *dev)
        return 0;
 }
 
+void clear_net_stats (void)
+{
+  memset (netstats, 0, sizeof(netstats));
+}
+
 void format_seconds(char *buf, unsigned int n, long t)
 {
        if (t >= 24 * 60 * 60)  /* hours necessary when there are days? */
@@ -157,6 +160,7 @@ static double last_meminfo_update;
 static double last_fs_update;
 
 unsigned long long need_mask;
+#define NEED(a) ((need_mask & (1 << a)) && ((info.mask & (1 << a)) == 0))
 
 void update_stuff()
 {
@@ -167,7 +171,7 @@ void update_stuff()
                need_mask |= 1 << INFO_BUFFERS;
 
        /* clear speeds and up status in case device was removed and doesn't get
-        * updated */
+          updated */
 
        for (i = 0; i < 16; i++) {
                if (netstats[i].dev) {
@@ -178,8 +182,6 @@ void update_stuff()
        }
 
        prepare_update();
-       /* client(); this is approximately where the client should be called */
-#define NEED(a) ((need_mask & (1 << a)) && ((info.mask & (1 << a)) == 0))
 
        if (NEED(INFO_UPTIME))
                update_uptime();
@@ -205,38 +207,67 @@ void update_stuff()
        if (NEED(INFO_MAIL))
                update_mail_count();
 
-       if (NEED(INFO_TOP))
-               update_top();
+#if defined(__linux__)
+       if (NEED(INFO_I8K))
+               update_i8k();
+#endif /* __linux__ */
+       
+#ifdef MPD
+       if (NEED(INFO_MPD))
+               update_mpd();
+#endif
 
-#ifdef MLDONKEY
-       if (NEED(INFO_MLDONKEY))
-               get_mldonkey_status(&mlconfig, &mlinfo);
+#ifdef XMMS2
+       if (NEED(INFO_XMMS2))
+               update_xmms2();
 #endif
 
-#ifdef SETI
-       if (NEED(INFO_SETI))
-               update_seti();
+#ifdef AUDACIOUS
+       if (NEED(INFO_AUDACIOUS))
+               update_audacious();
 #endif
 
-#ifdef MPD
-       if (NEED(INFO_MPD))
-               update_mpd();
+#ifdef BMPX
+       if (NEED(INFO_BMPX))
+                update_bmpx();
 #endif
 
        if (NEED(INFO_LOADAVG))
                update_load_average();
 
-       if ((NEED(INFO_MEM) || NEED(INFO_BUFFERS)) &&
+
+       if ((NEED(INFO_MEM) || NEED(INFO_BUFFERS) || NEED(INFO_TOP)) &&
            current_update_time - last_meminfo_update > 6.9) {
                update_meminfo();
-               if (no_buffers)
+               if (no_buffers) {
                        info.mem -= info.bufmem;
+               }
                last_meminfo_update = current_update_time;
        }
 
+       if (NEED(INFO_TOP))
+               update_top();
+
        /* update_fs_stat() won't do anything if there aren't fs -things */
        if (NEED(INFO_FS) && current_update_time - last_fs_update > 12.9) {
                update_fs_stats();
                last_fs_update = current_update_time;
        }
+#ifdef TCP_PORT_MONITOR
+       if (NEED(INFO_TCP_PORT_MONITOR))
+               update_tcp_port_monitor_collection( info.p_tcp_port_monitor_collection );
+#endif
+       if (NEED(INFO_ENTROPY))
+               update_entropy();
+}
+
+int round_to_int(float f)
+{
+    int intval = (int)f;
+    double delta = f - intval;
+    if (!(delta < 0.5)) {
+        ++intval;
+    }
+
+    return intval;
 }