Merge "Fix file:// not working as return code is 0 and not 200, as fixed beforehand...
authorFlorian Forster <octo@collectd.org>
Fri, 25 Nov 2011 09:48:22 +0000 (10:48 +0100)
committerGerrit Code Review <gerrit2@huhu.verplant.org>
Fri, 25 Nov 2011 09:48:22 +0000 (10:48 +0100)
src/interface.c

index 1ba6c8c..9aae5ae 100644 (file)
@@ -141,11 +141,17 @@ static int interface_init (void)
        {
                if (strncmp (ksp_chain->ks_class, "net", 3))
                        continue;
+               /* Ignore kstat entry if not the regular statistic set. This
+                * avoids problems with "bogus" interfaces, such as
+                * "wrsmd<num>" */
+               if (strncmp (ksp_chain->ks_name, ksp_chain->ks_module,
+                                       strlen (ksp_chain->ks_module)) != 0)
+                       continue;
                if (ksp_chain->ks_type != KSTAT_TYPE_NAMED)
                        continue;
                if (kstat_read (kc, ksp_chain, NULL) == -1)
                        continue;
-               if ((val = get_kstat_value (ksp_chain, "obytes")) == -1LL)
+               if ((val = get_kstat_value (ksp_chain, "ifspeed")) == -1LL)
                        continue;
                ksp[numif++] = ksp_chain;
        }