email plugin: Prevent a segfault in read_line ().
[collectd.git] / src / email.c
index 9fd05ba..c1e139e 100644 (file)
@@ -211,7 +211,7 @@ static int email_config (char *key, char *value)
        }
        else if (0 == strcasecmp (key, "SocketPerms")) {
                /* the user is responsible for providing reasonable values */
-               sock_perms = (int)strtol (value, NULL, 0);
+               sock_perms = (int)strtol (value, NULL, 8);
        }
        else if (0 == strcasecmp (key, "MaxConns")) {
                long int tmp = strtol (value, NULL, 0);
@@ -332,7 +332,7 @@ char *read_line (collector_t *src)
                        break;
        }
 
-       if ('\n' != src->buffer[i]) {
+       if (i == src->idx) {
                fd_set fdset;
        
                ssize_t len = 0;
@@ -369,7 +369,7 @@ char *read_line (collector_t *src)
                                break;
                }
 
-               if ('\n' != src->buffer[i]) {
+               if (i == src->idx) {
                        ret = (char *)smalloc (1);
 
                        ret[0] = '\0';