X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=lib%2Flibrte_cfgfile%2Frte_cfgfile.h;h=f649836c63235fa74f56edd1beae5633a1a5c117;hb=99c12dcca65d;hp=d44378266fadd3fff511ba2ce2ad5d2fed5162c1;hpb=ca743ea84ee1fe59dec991d1ea766e9525675c0c;p=dpdk.git diff --git a/lib/librte_cfgfile/rte_cfgfile.h b/lib/librte_cfgfile/rte_cfgfile.h index d44378266f..f649836c63 100644 --- a/lib/librte_cfgfile/rte_cfgfile.h +++ b/lib/librte_cfgfile/rte_cfgfile.h @@ -72,7 +72,7 @@ struct rte_cfgfile_entry { * @param flags * Config file flags, Reserved for future use. Must be set to 0. * @return -* Handle to configuration file +* Handle to configuration file on success, NULL otherwise */ struct rte_cfgfile *rte_cfgfile_load(const char *filename, int flags); @@ -126,6 +126,9 @@ int rte_cfgfile_has_section(struct rte_cfgfile *cfg, const char *sectionname); /** * Get number of entries in given config file section * +* If multiple sections have the given name this function operates on the +* first one. +* * @param cfg * Config file * @param sectionname @@ -138,6 +141,9 @@ int rte_cfgfile_section_num_entries(struct rte_cfgfile *cfg, /** Get section entries as key-value pairs * +* If multiple sections have the given name this function operates on the +* first one. +* * @param cfg * Config file * @param sectionname @@ -155,8 +161,38 @@ int rte_cfgfile_section_entries(struct rte_cfgfile *cfg, struct rte_cfgfile_entry *entries, int max_entries); +/** Get section entries as key-value pairs +* +* The index of a section is the same as the index of its name in the +* result of rte_cfgfile_sections. This API can be used when there are +* multiple sections with the same name. +* +* @param cfg +* Config file +* @param index +* Section index +* @param sectionname +* Pre-allocated string of at least CFG_NAME_LEN characters where the +* section name is stored after successful invocation. +* @param entries +* Pre-allocated array of at least max_entries entries where the section +* entries are stored as key-value pair after successful invocation +* @param max_entries +* Maximum number of section entries to be stored in entries array +* @return +* Number of entries populated on success, negative error code otherwise +*/ +int rte_cfgfile_section_entries_by_index(struct rte_cfgfile *cfg, + int index, + char *sectionname, + struct rte_cfgfile_entry *entries, + int max_entries); + /** Get value of the named entry in named config file section * +* If multiple sections have the given name this function operates on the +* first one. +* * @param cfg * Config file * @param sectionname @@ -172,6 +208,9 @@ const char *rte_cfgfile_get_entry(struct rte_cfgfile *cfg, /** Check if given entry exists in named config file section * +* If multiple sections have the given name this function operates on the +* first one. +* * @param cfg * Config file * @param sectionname