static int parse_line (char *buffer) /* {{{ */
{
- char *fields[256];
- int fields_num;
-
- fields[0] = "PUTVAL";
- fields_num = strsplit (buffer, fields + 1, STATIC_ARRAY_SIZE(fields) - 1);
-
- if (strcasecmp (fields[1], "putval") == 0)
- return (handle_putval (stdout, fields + 1, fields_num));
+ if (strncasecmp ("PUTVAL", buffer, strlen ("PUTVAL")) == 0)
+ return (handle_putval (stdout, buffer));
+#if !COLLECT_DEBUG
+#error "TODO: PUTNOTIF"
else if (strcasecmp (fields[1], "putnotif") == 0)
return (handle_putnotif (stdout, fields + 1, fields_num));
-
- /* compatibility code */
- return (handle_putval (stdout, fields, fields_num + 1));
+#endif
+ else
+ {
+ /* For backwards compatibility */
+ char tmp[1220];
+ /* Let's annoy the user a bit.. */
+ INFO ("exec plugin: Prepending `PUTVAL' to this line: %s", buffer);
+ ssnprintf (tmp, sizeof (tmp), "PUTVAL %s", buffer);
+ return (handle_putval (stdout, tmp));
+ }
} /* int parse_line }}} */
static void *exec_read_one (void *arg) /* {{{ */
if (meta->type == NM_TYPE_STRING)
fprintf (fh, "%s: %s\n", meta->name, meta->value_string);
else if (meta->type == NM_TYPE_SIGNED_INT)
- fprintf (fh, "%s: %lli\n", meta->name, meta->value_signed_int);
+ fprintf (fh, "%s: %"PRIi64"\n", meta->name, meta->value_signed_int);
else if (meta->type == NM_TYPE_UNSIGNED_INT)
- fprintf (fh, "%s: %llu\n", meta->name, meta->value_unsigned_int);
+ fprintf (fh, "%s: %"PRIu64"\n", meta->name, meta->value_unsigned_int);
else if (meta->type == NM_TYPE_DOUBLE)
fprintf (fh, "%s: %e\n", meta->name, meta->value_double);
else if (meta->type == NM_TYPE_BOOLEAN)
pln->pl = pl;
memcpy (&pln->n, n, sizeof (notification_t));
+
+ /* Set the `meta' member to NULL, otherwise `plugin_notification_meta_copy'
+ * will run into an endless loop. */
+ pln->n.meta = NULL;
plugin_notification_meta_copy (&pln->n, n);
pthread_attr_init (&attr);