From: Allain Legacy <allain.legacy@windriver.com>
To: <cristian.dumitrescu@intel.com>, <bruce.richardson@intel.com>
Cc: <dev@dpdk.org>, <yuanhan.liu@linux.intel.com>,
<thomas.monjalon@6wind.com>
Subject: [dpdk-dev] [PATCH v5 0/6] librte_cfgfile enhancements
Date: Fri, 31 Mar 2017 09:51:57 -0400 [thread overview]
Message-ID: <20170331135203.117461-1-allain.legacy@windriver.com> (raw)
In-Reply-To: <20170330185407.61220-1-allain.legacy@windriver.com>
This patchset includes some minor enhancements that we have developped for
our DPDK application. We would like to contribute them upstream to help
ease adoption of the DPDK by anyone looking for this type of
functionality. The commit logs on each patch should be self-sufficient in
explaining the intent and purpose.
v2:
* Added unit tests for the cfgfile library in the initial patch of the
series and then added additional tests in subsequent patches where
appropriate. These will not run unless the following config parameter is
set and additional packages are installed (e.g., libarchive-dev):
CONFIG_RTE_APP_TEST_RESOURCE_TAR=y
* Reworked the configurable comment character patch to allow specifying a
different character at runtime rather than build time. Used a separate
API to avoid affecting existing users or users that choose not to
leverage the extended API. Used a "parameters" structure to pass
additional arguments rather than adding more arguments to the function to
allow expansion in the future with minimal impact on existing users.
* Dropped the patch to initialize the cfg structure because the segfault
that this was trying to address was already fixed by 2 earlier commits
which we did not have in our development environment. I realized this
while trying to add unit tests to catch the segfault case.
* Fixed the doxygen comments related to the RTE_CFG_GLOBAL_SECTION patch
* Added an additional patch to allow parsing a key with an empty value
(i.e., "key="). I realized that I had forgotten to include this in my
first patchset.
v3:
* Incorporated review feedback to validate comment chars
* Incorporated review feedback to keep flags as standalone argument instead
of grouping it within the new params argument for comment characters
* Incorporated review feedback to remove the params initialization function
and instead require users to initialize all fields to defaults on their
own.
* Incorported review feedback to require a flag to allow empty value
strings
* Adjusted unit tests to accommodate above changes.
* Reworded commit title to fix typo "unamed"
* NOTE: This patchset version was incomplete on dpdk.org because of an
email spam filter issue.
v4:
* Changed flag defines to unnamed enum
* Removed comment references to rte_cfgfile_init_params() since it was
removed from the implementation
* Moved field comments to above definition instead of below in the
rte_cfgfile_parameters definition
v5:
* Removed stray @param notation in rte_cfgfile.h file
* Updated rte_cfgfile_version.map file to add new public API
Allain Legacy (5):
test: basic unit tests for cfgfile
cfgfile: add support for global properties section
cfgfile: add support for configurable comment character
cfgfile: use strnlen to constrain memchr search
cfgfile: add support for empty value string
Joseph Richard (1):
cfgfile: increase local buffer size for max name and value
MAINTAINERS | 1 +
lib/librte_cfgfile/rte_cfgfile.c | 102 +++++++-
lib/librte_cfgfile/rte_cfgfile.h | 44 +++-
lib/librte_cfgfile/rte_cfgfile_version.map | 7 +
test/test/Makefile | 2 +
test/test/test_cfgfile.c | 322 ++++++++++++++++++++++++
test/test/test_cfgfiles/etc/empty.ini | 0
test/test/test_cfgfiles/etc/empty_key_value.ini | 3 +
test/test/test_cfgfiles/etc/invalid_section.ini | 3 +
test/test/test_cfgfiles/etc/line_too_long.ini | 3 +
test/test/test_cfgfiles/etc/missing_section.ini | 2 +
test/test/test_cfgfiles/etc/sample1.ini | 12 +
test/test/test_cfgfiles/etc/sample2.ini | 12 +
13 files changed, 503 insertions(+), 10 deletions(-)
create mode 100644 test/test/test_cfgfile.c
create mode 100644 test/test/test_cfgfiles/etc/empty.ini
create mode 100644 test/test/test_cfgfiles/etc/empty_key_value.ini
create mode 100644 test/test/test_cfgfiles/etc/invalid_section.ini
create mode 100644 test/test/test_cfgfiles/etc/line_too_long.ini
create mode 100644 test/test/test_cfgfiles/etc/missing_section.ini
create mode 100644 test/test/test_cfgfiles/etc/sample1.ini
create mode 100644 test/test/test_cfgfiles/etc/sample2.ini
--
2.12.1
next prev parent reply other threads:[~2017-03-31 13:52 UTC|newest]
Thread overview: 81+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-03-02 19:29 [dpdk-dev] [PATCH 0/5] librte_cfgfile enhancement Allain Legacy
2017-03-02 19:29 ` [dpdk-dev] [PATCH 1/5] cfgfile: configurable comment character Allain Legacy
2017-03-02 21:10 ` Bruce Richardson
2017-03-02 21:22 ` Legacy, Allain
2017-03-03 0:53 ` Yuanhan Liu
2017-03-03 11:17 ` Dumitrescu, Cristian
2017-03-03 11:31 ` Legacy, Allain
2017-03-03 12:07 ` Dumitrescu, Cristian
2017-03-03 12:14 ` Legacy, Allain
2017-03-03 12:17 ` Dumitrescu, Cristian
2017-03-03 12:18 ` Legacy, Allain
2017-03-03 12:52 ` Dumitrescu, Cristian
2017-03-03 12:10 ` Bruce Richardson
2017-03-03 12:17 ` Legacy, Allain
2017-03-03 13:10 ` Bruce Richardson
2017-03-02 19:29 ` [dpdk-dev] [PATCH 2/5] cfgfile: cfg object not initialized after allocation Allain Legacy
2017-03-02 19:29 ` [dpdk-dev] [PATCH 3/5] cfgfile: add support for unamed global section Allain Legacy
2017-03-03 10:53 ` Dumitrescu, Cristian
2017-03-03 11:03 ` Legacy, Allain
2017-03-03 11:06 ` Dumitrescu, Cristian
2017-03-03 11:15 ` Legacy, Allain
2017-03-03 11:18 ` Dumitrescu, Cristian
2017-03-02 19:29 ` [dpdk-dev] [PATCH 4/5] cfgfile: use strnlen to constrain memchr search Allain Legacy
2017-03-02 19:29 ` [dpdk-dev] [PATCH 5/5] cfgfile: increase local buffer size for max name and value Allain Legacy
2017-03-09 13:46 ` Wiles, Keith
2017-03-09 15:16 ` Legacy, Allain
2017-03-09 15:23 ` Wiles, Keith
2017-03-09 13:10 ` [dpdk-dev] [PATCH v2 0/6] librte_cfgfile enhancements Allain Legacy
2017-03-09 13:10 ` [dpdk-dev] [PATCH v2 1/6] test: basic unit tests for cfgfile Allain Legacy
2017-03-09 13:10 ` [dpdk-dev] [PATCH v2 2/6] cfgfile: add support for unamed global section Allain Legacy
2017-03-09 13:10 ` [dpdk-dev] [PATCH v2 3/6] cfgfile: configurable comment character Allain Legacy
2017-03-27 11:19 ` Dumitrescu, Cristian
2017-03-09 13:10 ` [dpdk-dev] [PATCH v2 4/6] cfgfile: use strnlen to constrain memchr search Allain Legacy
2017-03-09 13:10 ` [dpdk-dev] [PATCH v2 5/6] cfgfile: increase local buffer size for max name and value Allain Legacy
2017-03-09 13:11 ` [dpdk-dev] [PATCH v2 6/6] cfgfile: add support for empty value string Allain Legacy
2017-03-27 10:54 ` Dumitrescu, Cristian
2017-03-27 11:12 ` Legacy, Allain
2017-03-27 11:24 ` Dumitrescu, Cristian
2017-03-27 11:15 ` Legacy, Allain
2017-03-28 8:29 ` [dpdk-dev] [PATCH v2 0/6] librte_cfgfile enhancements Thomas Monjalon
2017-03-28 9:18 ` Bruce Richardson
2017-03-28 9:22 ` Bruce Richardson
2017-03-28 9:41 ` Thomas Monjalon
2017-03-28 9:58 ` Dumitrescu, Cristian
2017-03-28 10:12 ` Thomas Monjalon
2017-03-28 10:20 ` Dumitrescu, Cristian
2017-03-28 15:24 ` Bruce Richardson
2017-03-28 15:41 ` Thomas Monjalon
2017-03-28 15:42 ` Bruce Richardson
2017-03-28 16:44 ` [dpdk-dev] [PATCH v3 " Allain Legacy
2017-03-28 16:44 ` [dpdk-dev] [PATCH v3 1/6] test: basic unit tests for cfgfile Allain Legacy
2017-03-28 16:44 ` [dpdk-dev] [PATCH v3 3/6] cfgfile: add support for configurable comment character Allain Legacy
2017-03-28 16:44 ` [dpdk-dev] [PATCH v3 4/6] cfgfile: use strnlen to constrain memchr search Allain Legacy
2017-03-28 16:44 ` [dpdk-dev] [PATCH v3 6/6] cfgfile: add support for empty value string Allain Legacy
2017-03-30 18:54 ` [dpdk-dev] [PATCH v4 0/6] librte_cfgfile enhancements Allain Legacy
2017-03-30 18:54 ` [dpdk-dev] [PATCH v4 1/6] test: basic unit tests for cfgfile Allain Legacy
2017-03-30 18:54 ` [dpdk-dev] [PATCH v4 2/6] cfgfile: add support for global properties section Allain Legacy
2017-03-30 18:54 ` [dpdk-dev] [PATCH v4 3/6] cfgfile: add support for configurable comment character Allain Legacy
2017-03-31 10:08 ` Thomas Monjalon
2017-03-31 11:08 ` Legacy, Allain
2017-03-30 18:54 ` [dpdk-dev] [PATCH v4 4/6] cfgfile: use strnlen to constrain memchr search Allain Legacy
2017-03-30 18:54 ` [dpdk-dev] [PATCH v4 5/6] cfgfile: increase local buffer size for max name and value Allain Legacy
2017-03-30 18:54 ` [dpdk-dev] [PATCH v4 6/6] cfgfile: add support for empty value string Allain Legacy
2017-03-31 8:57 ` [dpdk-dev] [PATCH v4 0/6] librte_cfgfile enhancements Dumitrescu, Cristian
2017-03-31 13:51 ` Allain Legacy [this message]
2017-03-31 13:51 ` [dpdk-dev] [PATCH v5 1/6] test: basic unit tests for cfgfile Allain Legacy
2017-03-31 13:51 ` [dpdk-dev] [PATCH v5 2/6] cfgfile: add support for global properties section Allain Legacy
2017-03-31 13:52 ` [dpdk-dev] [PATCH v5 3/6] cfgfile: add support for configurable comment character Allain Legacy
2017-03-31 13:52 ` [dpdk-dev] [PATCH v5 4/6] cfgfile: use strnlen to constrain memchr search Allain Legacy
2017-03-31 13:52 ` [dpdk-dev] [PATCH v5 5/6] cfgfile: increase local buffer size for max name and value Allain Legacy
2017-03-31 13:52 ` [dpdk-dev] [PATCH v5 6/6] cfgfile: add support for empty value string Allain Legacy
2017-04-04 14:23 ` [dpdk-dev] [PATCH v5 0/6] librte_cfgfile enhancements Thomas Monjalon
[not found] ` <20170329004737.44249-1-allain.legacy@windriver.com>
2017-03-29 0:47 ` [dpdk-dev] [PATCH v3 1/6] test: basic unit tests for cfgfile Allain Legacy
2017-03-29 0:47 ` [dpdk-dev] [PATCH v3 3/6] cfgfile: add support for configurable comment character Allain Legacy
2017-03-29 9:22 ` Dumitrescu, Cristian
2017-03-29 11:31 ` Legacy, Allain
2017-03-29 0:47 ` [dpdk-dev] [PATCH v3 5/6] cfgfile: increase local buffer size for max name and value Allain Legacy
[not found] ` <20170329004737.44249-7-allain.legacy@windriver.com>
2017-03-29 9:31 ` [dpdk-dev] [PATCH v3 6/6] cfgfile: add support for empty value string Dumitrescu, Cristian
2017-03-29 11:33 ` Legacy, Allain
[not found] ` <20170329004737.44249-3-allain.legacy@windriver.com>
2017-03-29 9:33 ` [dpdk-dev] [PATCH v3 2/6] cfgfile: add support for global properties section Dumitrescu, Cristian
2017-03-29 11:35 ` Legacy, Allain
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20170331135203.117461-1-allain.legacy@windriver.com \
--to=allain.legacy@windriver.com \
--cc=bruce.richardson@intel.com \
--cc=cristian.dumitrescu@intel.com \
--cc=dev@dpdk.org \
--cc=thomas.monjalon@6wind.com \
--cc=yuanhan.liu@linux.intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).