Code

sensors plugin: SENSORS_HAVE_READ unification
[collectd.git] / src / email.c
index 6838eade148ca29c343e0cf0b71c97e5b5b238a5..b5d8acfdf15bb19b1c80b3970a4c765bfb13ca4f 100644 (file)
 /* 256 bytes ought to be enough for anybody ;-) */
 #define BUFSIZE 256
 
-#define SOCK_PATH "/tmp/.collectd-email"
+#ifndef COLLECTD_SOCKET_PREFIX
+# define COLLECTD_SOCKET_PREFIX "/tmp/.collectd-"
+#endif /* COLLECTD_SOCKET_PREFIX */
+
+#define SOCK_PATH COLLECTD_SOCKET_PREFIX"email"
 #define MAX_CONNS 5
+#define MAX_CONNS_LIMIT 16384
 
 /*
  * Private data structures
@@ -205,8 +210,17 @@ static int email_config (char *key, char *value)
        else if (0 == strcasecmp (key, "MaxConns")) {
                long int tmp = strtol (value, NULL, 0);
 
-               if (INT_MAX < tmp) {
-                       max_conns = INT_MAX;
+               if (tmp < 1) {
+                       fprintf (stderr, "email plugin: `MaxConns' was set to invalid "
+                                       "value %li, will use default %i.\n",
+                                       tmp, MAX_CONNS);
+                       max_conns = MAX_CONNS;
+               }
+               else if (tmp > MAX_CONNS_LIMIT) {
+                       fprintf (stderr, "email plugin: `MaxConns' was set to invalid "
+                                       "value %li, will use hardcoded limit %i.\n",
+                                       tmp, MAX_CONNS_LIMIT);
+                       max_conns = MAX_CONNS_LIMIT;
                }
                else {
                        max_conns = (int)tmp;