X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Fnfs.c;h=e4d12e342a6e6b275b38b956c84ea93acceef465;hb=a68d919b6d2cf26f0626e520d9c1e5869dd1a7ac;hp=81f07937eb5f3c315c87756ac378df420ee24ea8;hpb=838af4cdc6c8674ed3e14a95fea172118c707a85;p=collectd.git diff --git a/src/nfs.c b/src/nfs.c index 81f07937..e4d12e34 100644 --- a/src/nfs.c +++ b/src/nfs.c @@ -24,13 +24,8 @@ #include "common.h" #include "plugin.h" -#define MODULE_NAME "nfs" - -/* #if defined(KERNEL_LINUX) || defined(HAVE_LIBKSTAT) */ -#if KERNEL_LINUX -# define NFS_HAVE_READ 1 -#else -# define NFS_HAVE_READ 0 +#if !KERNEL_LINUX +# error "No applicable input method." #endif /* @@ -78,17 +73,6 @@ Number Procedures Procedures 21 commit */ -static data_source_t procedure_dsrc[1] = -{ - {"value", DS_TYPE_COUNTER, 0, 4294967295.0} -}; - -static data_set_t procedure_ds = -{ - "nfs_procedure", 1, procedure_dsrc -}; - -#if NFS_HAVE_READ static const char *nfs2_procedures_names[] = { "null", @@ -203,25 +187,24 @@ static void nfs_procedures_submit (const char *plugin_instance, vl.values = values; vl.values_len = 1; - vl.time = time (NULL); - strcpy (vl.host, hostname_g); - strcpy (vl.plugin, "nfs"); - strncpy (vl.plugin_instance, plugin_instance, + sstrncpy (vl.host, hostname_g, sizeof (vl.host)); + sstrncpy (vl.plugin, "nfs", sizeof (vl.plugin)); + sstrncpy (vl.plugin_instance, plugin_instance, sizeof (vl.plugin_instance)); + sstrncpy (vl.type, "nfs_procedure", sizeof (vl.type)); for (i = 0; i < len; i++) { values[0].counter = val[i]; - strncpy (vl.type_instance, names[i], + sstrncpy (vl.type_instance, names[i], sizeof (vl.type_instance)); DEBUG ("%s-%s/nfs_procedure-%s = %llu", vl.plugin, vl.plugin_instance, vl.type_instance, val[i]); - plugin_dispatch_values ("nfs_procedure", &vl); + plugin_dispatch_values (&vl); } } /* void nfs_procedures_submit */ -#if KERNEL_LINUX static void nfs_read_stats_file (FILE *fh, char *inst) { char buffer[BUFSIZE]; @@ -257,16 +240,16 @@ static void nfs_read_stats_file (FILE *fh, char *inst) continue; } - snprintf (plugin_instance, sizeof (plugin_instance), + ssnprintf (plugin_instance, sizeof (plugin_instance), "v2%s", inst); - plugin_instance[DATA_MAX_NAME_LEN - 1] = '\0'; values = (unsigned long long *) malloc (nfs2_procedures_names_num * sizeof (unsigned long long)); if (values == NULL) { + char errbuf[1024]; ERROR ("nfs plugin: malloc " "failed: %s", - strerror (errno)); + sstrerror (errno, errbuf, sizeof (errbuf))); continue; } @@ -293,16 +276,16 @@ static void nfs_read_stats_file (FILE *fh, char *inst) continue; } - snprintf (plugin_instance, sizeof (plugin_instance), + ssnprintf (plugin_instance, sizeof (plugin_instance), "v3%s", inst); - plugin_instance[DATA_MAX_NAME_LEN - 1] = '\0'; values = (unsigned long long *) malloc (nfs3_procedures_names_num * sizeof (unsigned long long)); if (values == NULL) { + char errbuf[1024]; ERROR ("nfs plugin: malloc " "failed: %s", - strerror (errno)); + sstrerror (errno, errbuf, sizeof (errbuf))); continue; } @@ -317,7 +300,6 @@ static void nfs_read_stats_file (FILE *fh, char *inst) } } /* while (fgets (buffer, BUFSIZE, fh) != NULL) */ } /* void nfs_read_stats_file */ -#endif /* defined(KERNEL_LINUX) */ #undef BUFSIZE #if HAVE_LIBKSTAT && 0 @@ -350,7 +332,6 @@ static void nfs2_read_kstat (kstat_t *ksp, char *inst) static int nfs_read (void) { -#if KERNEL_LINUX FILE *fh; if ((fh = fopen ("/proc/net/rpc/nfs", "r")) != NULL) @@ -365,9 +346,7 @@ static int nfs_read (void) fclose (fh); } -/* #endif defined(KERNEL_LINUX) */ - -#elif HAVE_LIBKSTAT && 0 +#if HAVE_LIBKSTAT && 0 if (nfs2_ksp_client != NULL) nfs2_read_kstat (nfs2_ksp_client, "client"); if (nfs2_ksp_server != NULL) @@ -376,15 +355,8 @@ static int nfs_read (void) return (0); } -#endif /* NFS_HAVE_READ */ void module_register (void) { - plugin_register_data_set (&procedure_ds); - -#if NFS_HAVE_READ plugin_register_read ("nfs", nfs_read); -#endif -} - -#undef MODULE_NAME +} /* void module_register */