add a small new function to retrieve variables from a config
authorLuigi Rizzo <rizzo@icir.org>
Fri, 16 Nov 2007 10:07:24 +0000 (10:07 +0000)
committerLuigi Rizzo <rizzo@icir.org>
Fri, 16 Nov 2007 10:07:24 +0000 (10:07 +0000)
once we have a pointer to the category.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89322 65c4cc65-6c06-0410-ace0-fbb531ad65f3

include/asterisk/config.h
main/config.c

index ea36099..ab67fb2 100644 (file)
@@ -132,6 +132,13 @@ char *ast_category_browse(struct ast_config *config, const char *prev);
  */
 struct ast_variable *ast_variable_browse(const struct ast_config *config, const char *category);
 
+/*!
+ * \brief given a pointer to a category, return the root variable.
+ * This is equivalent to ast_variable_browse(), but more efficient if we
+ * already have the struct ast_category * (e.g. from ast_category_get())
+ */
+struct ast_variable *ast_category_first(struct ast_category *cat);
+
 /*! 
  * \brief Gets a variable 
  * \param config which (opened) config to use
index 134add8..27c34ec 100644 (file)
@@ -587,6 +587,12 @@ static struct ast_category *next_available_category(struct ast_category *cat)
        return cat;
 }
 
+/*! return the first var of a category */
+struct ast_variable *ast_category_first(struct ast_category *cat)
+{
+       return (cat) ? cat->root : NULL;
+}
+
 struct ast_variable *ast_category_root(struct ast_config *config, char *cat)
 {
        struct ast_category *category = ast_category_get(config, cat);