diff --git a/src/email.c b/src/email.c
index 6838eade148ca29c343e0cf0b71c97e5b5b238a5..b5d8acfdf15bb19b1c80b3970a4c765bfb13ca4f 100644 (file)
--- a/src/email.c
+++ b/src/email.c
/* 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
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;