Merge remote branch 'powdahound/master'
[collectd.git] / src / snmp.c
index ee40263..fdb7c65 100644 (file)
@@ -655,8 +655,9 @@ static int csnmp_config_add_host (oconfig_item_t *ci)
   if (hd->interval != 0)
     cb_interval.tv_sec = (time_t) hd->interval;
 
-  status = plugin_register_complex_read (cb_name, csnmp_read_host,
-      /* interval = */ &cb_interval, /* user_data = */ &cb_data);
+  status = plugin_register_complex_read (/* group = */ NULL, cb_name,
+      csnmp_read_host, /* interval = */ &cb_interval,
+      /* user_data = */ &cb_data);
   if (status != 0)
   {
     ERROR ("snmp plugin: Registering complex read function failed.");
@@ -818,9 +819,9 @@ static value_t csnmp_value_list_to_value (struct variable_list *vl, int type,
       ret.gauge = (scale * tmp_signed) + shift;
   }
   else if (type == DS_TYPE_DERIVE)
-    ret.derive = (derive_t) temp;
+    ret.derive = (derive_t) tmp_signed;
   else if (type == DS_TYPE_ABSOLUTE)
-    ret.absolute = (absolute_t) temp;
+    ret.absolute = (absolute_t) tmp_unsigned;
   else
   {
     ERROR ("snmp plugin: csnmp_value_list_to_value: Unknown data source "
@@ -1127,7 +1128,7 @@ static int csnmp_dispatch_table (host_definition_t *host, data_definition_t *dat
       char temp[DATA_MAX_NAME_LEN];
 
       if (instance_list_ptr == NULL)
-       ssnprintf (temp, sizeof (temp), "%u", (uint32_t) subid);
+       ssnprintf (temp, sizeof (temp), "%"PRIu32, (uint32_t) subid);
       else
        sstrncpy (temp, instance_list_ptr->instance, sizeof (temp));