> Subject: [ndctl PATCH 3/7] util/parse-config: refactor filter_conf_files into > util/ > > Move filter_conf() into util/parse-configs.c as filter_conf_files() so that > it can be > reused by the config parser in daxctl. > > Cc: QI Fuli <[email protected]> > Signed-off-by: Vishal Verma <[email protected]> > --- > ndctl/lib/libndctl.c | 19 ++----------------- > util/parse-configs.h | 4 ++++ > util/parse-configs.c | 16 ++++++++++++++++ > daxctl/lib/Makefile.am | 2 ++ > ndctl/lib/Makefile.am | 2 ++ > 5 files changed, 26 insertions(+), 17 deletions(-) > > diff --git a/ndctl/lib/libndctl.c b/ndctl/lib/libndctl.c index > db2e38b..a01ac80 > 100644 > --- a/ndctl/lib/libndctl.c > +++ b/ndctl/lib/libndctl.c > @@ -25,6 +25,7 @@ > #include <util/size.h> > #include <util/sysfs.h> > #include <util/strbuf.h> > +#include <util/parse-configs.h> > #include <ndctl/libndctl.h> > #include <ndctl/namespace.h> > #include <daxctl/libdaxctl.h> > @@ -266,22 +267,6 @@ NDCTL_EXPORT void ndctl_set_userdata(struct > ndctl_ctx *ctx, void *userdata) > ctx->userdata = userdata; > } > > -static int filter_conf(const struct dirent *dir) -{ > - if (!dir) > - return 0; > - > - if (dir->d_type == DT_REG) { > - const char *ext = strrchr(dir->d_name, '.'); > - if ((!ext) || (ext == dir->d_name)) > - return 0; > - if (strcmp(ext, ".conf") == 0) > - return 1; > - } > - > - return 0; > -} > - > NDCTL_EXPORT void ndctl_set_configs(struct ndctl_ctx **ctx, char *conf_dir) > { > struct dirent **namelist; > @@ -291,7 +276,7 @@ NDCTL_EXPORT void ndctl_set_configs(struct ndctl_ctx > **ctx, char *conf_dir) > if ((!ctx) || (!conf_dir)) > return; > > - rc = scandir(conf_dir, &namelist, filter_conf, alphasort); > + rc = scandir(conf_dir, &namelist, filter_conf_files, alphasort); > if (rc == -1) { > perror("scandir"); > return; > diff --git a/util/parse-configs.h b/util/parse-configs.h index > f70f58f..491aebb > 100644 > --- a/util/parse-configs.h > +++ b/util/parse-configs.h > @@ -1,8 +1,10 @@ > // SPDX-License-Identifier: GPL-2.0 > // Copyright (C) 2021, FUJITSU LIMITED. ALL rights reserved. > > +#include <dirent.h> > #include <stdbool.h> > #include <stdint.h> > +#include <string.h> > #include <util/util.h> > > enum parse_conf_type { > @@ -11,6 +13,8 @@ enum parse_conf_type { > MONITOR_CALLBACK, > }; > > +int filter_conf_files(const struct dirent *dir); > + > struct config; > typedef int parse_conf_cb(const struct config *, const char *config_file); > > diff --git a/util/parse-configs.c b/util/parse-configs.c index > 44dcff4..72c4913 > 100644 > --- a/util/parse-configs.c > +++ b/util/parse-configs.c > @@ -6,6 +6,22 @@ > #include <util/strbuf.h> > #include <util/iniparser.h> > > +int filter_conf_files(const struct dirent *dir) { > + if (!dir) > + return 0; > + > + if (dir->d_type == DT_REG) { > + const char *ext = strrchr(dir->d_name, '.'); > + if ((!ext) || (ext == dir->d_name)) > + return 0; > + if (strcmp(ext, ".conf") == 0) > + return 1; > + } > + > + return 0; > +} > + > static void set_str_val(const char **value, const char *val) { > struct strbuf buf = STRBUF_INIT; > diff --git a/daxctl/lib/Makefile.am b/daxctl/lib/Makefile.am index > 25efd83..db2351e 100644 > --- a/daxctl/lib/Makefile.am > +++ b/daxctl/lib/Makefile.am > @@ -15,6 +15,8 @@ libdaxctl_la_SOURCES =\ > ../../util/sysfs.h \ > ../../util/log.c \ > ../../util/log.h \ > + ../../util/parse-configs.h \ > + ../../util/parse-configs.c \ > libdaxctl.c > > libdaxctl_la_LIBADD =\ > diff --git a/ndctl/lib/Makefile.am b/ndctl/lib/Makefile.am index > f741c44..8020eb4 100644 > --- a/ndctl/lib/Makefile.am > +++ b/ndctl/lib/Makefile.am > @@ -19,6 +19,8 @@ libndctl_la_SOURCES =\ > ../../util/wrapper.c \ > ../../util/usage.c \ > ../../util/fletcher.h \ > + ../../util/parse-configs.h \ > + ../../util/parse-configs.c \ > dimm.c \ > inject.c \ > nfit.c \ > -- > 2.31.1
Looks good to me. Thank you very much. QI
