Provided by: dpdk-doc_24.11.2-2_all bug

NAME

       rte_cfgfile.h

SYNOPSIS

       #include <stddef.h>

   Data Structures
       struct rte_cfgfile_entry
       struct rte_cfgfile_parameters

   Macros
       #define CFG_DEFAULT_COMMENT_CHARACTER   ';'

   Functions
       struct rte_cfgfile * rte_cfgfile_load (const char *filename, int flags)
       struct rte_cfgfile * rte_cfgfile_load_with_params (const char *filename, int flags, const struct
           rte_cfgfile_parameters *params)
       struct rte_cfgfile * rte_cfgfile_create (int flags)
       int rte_cfgfile_add_section (struct rte_cfgfile *cfg, const char *sectionname)
       int rte_cfgfile_add_entry (struct rte_cfgfile *cfg, const char *sectionname, const char *entryname, const
           char *entryvalue)
       int rte_cfgfile_set_entry (struct rte_cfgfile *cfg, const char *sectionname, const char *entryname, const
           char *entryvalue)
       int rte_cfgfile_save (struct rte_cfgfile *cfg, const char *filename)
       int rte_cfgfile_num_sections (struct rte_cfgfile *cfg, const char *sec_name, size_t length)
       int rte_cfgfile_sections (struct rte_cfgfile *cfg, char *sections[], int max_sections)
       int rte_cfgfile_has_section (struct rte_cfgfile *cfg, const char *sectionname)
       int rte_cfgfile_section_num_entries (struct rte_cfgfile *cfg, const char *sectionname)
       int rte_cfgfile_section_num_entries_by_index (struct rte_cfgfile *cfg, char *sectionname, int index)
       int rte_cfgfile_section_entries (struct rte_cfgfile *cfg, const char *sectionname, struct
           rte_cfgfile_entry *entries, int max_entries)
       int rte_cfgfile_section_entries_by_index (struct rte_cfgfile *cfg, int index, char *sectionname, struct
           rte_cfgfile_entry *entries, int max_entries)
       const char * rte_cfgfile_get_entry (struct rte_cfgfile *cfg, const char *sectionname, const char
           *entryname)
       int rte_cfgfile_has_entry (struct rte_cfgfile *cfg, const char *sectionname, const char *entryname)
       int rte_cfgfile_close (struct rte_cfgfile *cfg)

Detailed Description

       Configuration File management.

       This library allows reading application defined parameters from standard format configuration file.

       Definition in file rte_cfgfile.h.

Macro Definition Documentation

   #define CFG_DEFAULT_COMMENT_CHARACTER   ';'
       Defines the default comment character used for parsing config files.

       Definition at line 63 of file rte_cfgfile.h.

Enumeration Type Documentation

   anonymous enum
       cfgfile load operation flags

       Enumerator

       CFG_FLAG_GLOBAL_SECTION
              Indicates that the file supports key value entries before the first defined section. These entries
              can be accessed in the 'GLOBAL' section.

       CFG_FLAG_EMPTY_VALUES
              Indicates that file supports key value entries where the value can be zero length (e.g., 'key=').

       Definition at line 46 of file rte_cfgfile.h.

Function Documentation

   struct rte_cfgfile * rte_cfgfile_load (const char * filename, int flags)
       Open config file.

       Parameters
           filename Config file name.
           flags Config file flags.

       Returns
           Handle to configuration file on success, NULL otherwise.

   struct   rte_cfgfile  *  rte_cfgfile_load_with_params  (const  char  *  filename,  int  flags,  const  struct
       rte_cfgfile_parameters * params)
       Open config file with specified optional parameters.

       Parameters
           filename Config file name
           flags Config file flags
           params Additional configuration attributes. Must be configured with desired values prior to  invoking
           this API.

       Returns
           Handle to configuration file on success, NULL otherwise

   struct rte_cfgfile * rte_cfgfile_create (int flags)
       Create new cfgfile instance with empty sections and entries

       Parameters
           flags

           • CFG_FLAG_GLOBAL_SECTION Indicates that the file supports key value entries before the first defined
             section. These entries can be accessed in the 'GLOBAL' section.

           • CFG_FLAG_EMPTY_VALUES  Indicates  that  file supports key value entries where the value can be zero
             length (e.g., 'key=').

       Returns
           Handle to cfgfile instance on success, NULL otherwise

   int rte_cfgfile_add_section (struct rte_cfgfile * cfg, const char * sectionname)
       Add section in cfgfile instance.

       Parameters
           cfg Pointer to the cfgfile structure.
           sectionname Section name which will be add to cfgfile.

       Returns
           0 on success, -ENOMEM if can't add section

   int rte_cfgfile_add_entry (struct rte_cfgfile * cfg, const char * sectionname, const char * entryname,  const
       char * entryvalue)
       Add entry to specified section in cfgfile instance.

       Parameters
           cfg Pointer to the cfgfile structure.
           sectionname Given section name to add an entry.
           entryname Entry name to add.
           entryvalue Entry value to add.

       Returns
           0 on success, -EEXIST if entry already exist, -EINVAL if bad argument

   int  rte_cfgfile_set_entry (struct rte_cfgfile * cfg, const char * sectionname, const char * entryname, const
       char * entryvalue)
       Update value of specified entry name in given section in config file

       Parameters
           cfg Config file
           sectionname Section name
           entryname Entry name to look for the value change
           entryvalue New entry value. Can be also an empty string if CFG_FLAG_EMPTY_VALUES = 1

       Returns
           0 on success, -EINVAL if bad argument

   int rte_cfgfile_save (struct rte_cfgfile * cfg, const char * filename)
       Save object cfgfile to file on disc

       Parameters
           cfg Config file structure
           filename File name to save data

       Returns
           0 on success, errno otherwise

   int rte_cfgfile_num_sections (struct rte_cfgfile * cfg, const char * sec_name, size_t length)
       Get number of sections in config file.

       Parameters
           cfg Config file.
           sec_name Section name.
           length Maximum section name length.

       Returns
           Number of sections.

   int rte_cfgfile_sections (struct rte_cfgfile * cfg, char * sections[], int max_sections)
       Get name of all config file sections.

       Fills in the array sections with the name of  all  the  sections  in  the  file  (up  to  the  number  of
       max_sections sections).

       Parameters
           cfg Config file.
           sections  Array  containing  section  names  after  successful invocation. Each element of this array
           should be preallocated by the user with at least CFG_NAME_LEN characters.
           max_sections Maximum number of section names to be stored in sections array.

       Returns
           Number of populated sections names.

   int rte_cfgfile_has_section (struct rte_cfgfile * cfg, const char * sectionname)
       Check if given section exists in config file.

       Parameters
           cfg Config file.
           sectionname Section name.

       Returns
           TRUE (value different than 0) if section exists, FALSE (value 0) otherwise.

   int rte_cfgfile_section_num_entries (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.

       Parameters
           cfg Config file.
           sectionname Section name.

       Returns
           Number of entries in section on success, -1 otherwise.

   int rte_cfgfile_section_num_entries_by_index (struct rte_cfgfile * cfg, char * sectionname, int index)
       Get number of entries in given config file section.

       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.

       Parameters
           cfg Config file.
           sectionname Section name.
           index Section index.

       Returns
           Number of entries in section on success, -1 otherwise.

   int rte_cfgfile_section_entries (struct rte_cfgfile * cfg, const char * sectionname, struct rte_cfgfile_entry
       * entries, int max_entries)
       Get section entries as key-value pairs.

       If multiple sections have the given name, this function operates on the first one.

       Parameters
           cfg Config file.
           sectionname Section name.
           entries  Pre-allocated  array of at least max_entries entries where the section entries are stored as
           key-value pair after successful invocation.
           max_entries Maximum number of section entries to be stored in entries array.

       Returns
           Number of entries populated on success, -1 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 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.

       Parameters
           cfg Config file.
           index Section index.
           sectionname Pre-allocated string of at least CFG_NAME_LEN characters where the section name is stored
           after successful invocation.
           entries Pre-allocated array of at least max_entries entries where the section entries are  stored  as
           key-value pair after successful invocation.
           max_entries Maximum number of section entries to be stored in entries array.

       Returns
           Number of entries populated on success, -1 otherwise.

   const  char  *  rte_cfgfile_get_entry  (struct  rte_cfgfile  *  cfg,  const  char * sectionname, const char *
       entryname)
       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.

       Parameters
           cfg Config file.
           sectionname Section name.
           entryname Entry name.

       Returns
           Entry value on success, NULL otherwise.

   int rte_cfgfile_has_entry (struct rte_cfgfile * cfg, const char * sectionname, const char * entryname)
       Check if given entry exists in named config file section.

       If multiple sections have the given name, this function operates on the first one.

       Parameters
           cfg Config file.
           sectionname Section name.
           entryname Entry name.

       Returns
           TRUE (value different than 0) if entry exists, FALSE (value 0) otherwise.

   int rte_cfgfile_close (struct rte_cfgfile * cfg)
       Close config file.

       Parameters
           cfg Config file.

       Returns
           0 on success, -1 otherwise.

Author

       Generated automatically by Doxygen for DPDK from the source code.

DPDK                                             Version 24.11.2                                rte_cfgfile.h(3)