diff --git a/src/irq.c b/src/irq.c
index 792ac346fa83c3e0ac9df24c1844c2e0325e0d79..0492c814919308b2452c43a75eb3d50442984136 100644 (file)
--- a/src/irq.c
+++ b/src/irq.c
vl.values = values;
vl.values_len = 1;
- vl.time = time (NULL);
- strcpy (vl.host, hostname_g);
- strcpy (vl.plugin, "irq");
- strcpy (vl.type, "irq");
+ sstrncpy (vl.host, hostname_g, sizeof (vl.host));
+ sstrncpy (vl.plugin, "irq", sizeof (vl.plugin));
+ sstrncpy (vl.type, "irq", sizeof (vl.type));
status = ssnprintf (vl.type_instance, sizeof (vl.type_instance),
"%u", irq);
FILE *fh;
char buffer[BUFSIZE];
unsigned int irq;
- unsigned int irq_value;
- long value;
+ unsigned long long irq_value;
+ unsigned long long value;
char *endptr;
int i;
for (i = 1; i < fields_num; i++)
{
errno = 0;
- value = strtol (fields[i], &endptr, 10);
+ value = strtoull (fields[i], &endptr, 10);
if ((*endptr != '\0') || (errno != 0))
break;