summaryrefslogtreecommitdiff
path: root/include/asterisk/config_options.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/asterisk/config_options.h')
-rw-r--r--include/asterisk/config_options.h18
1 files changed, 15 insertions, 3 deletions
diff --git a/include/asterisk/config_options.h b/include/asterisk/config_options.h
index f4c3db188..420eb97dd 100644
--- a/include/asterisk/config_options.h
+++ b/include/asterisk/config_options.h
@@ -40,18 +40,30 @@ struct aco_type_internal;
enum aco_type_t {
ACO_GLOBAL,
ACO_ITEM,
+ ACO_IGNORE,
};
-/*! \brief Whether a category regex is a blackist or a whitelist */
+/*! Type of category matching to perform */
enum aco_category_op {
+ /*! Regex based blacklist. */
ACO_BLACKLIST = 0,
+ /*! Regex based whitelist. */
ACO_WHITELIST,
+ /*! Blacklist with a single string matched with strcasecmp. */
+ ACO_BLACKLIST_EXACT,
+ /*! Whitelist with a single string matched with strcasecmp. */
+ ACO_WHITELIST_EXACT,
+ /*! Blacklist with a NULL terminated array of strings matched with strcasecmp. */
+ ACO_BLACKLIST_ARRAY,
+ /*! Whitelist with a NULL terminated array of strings matched with strcasecmp. */
+ ACO_WHITELIST_ARRAY,
};
/*! \brief What kind of matching should be done on an option name */
enum aco_matchtype {
ACO_EXACT = 1,
ACO_REGEX,
+ ACO_PREFIX,
};
/*! Callback functions for option parsing via aco_process_config() */
@@ -772,11 +784,11 @@ intptr_t aco_option_get_argument(const struct aco_option *option, unsigned int p
* VA_NARGS(one, two, three) -> v
* VA_NARGS1(one, two, three, 8, 7, 6, 5, 4, 3, 2, 1, 0) ->
* VA_NARGS1( _1, _2, _3, _4, _5, _6, _7, _8, N, ... ) N -> 3
- *
+ *
* Note that VA_NARGS *does not* work when there are no arguments passed. Pasting an empty
* __VA_ARGS__ with a comma like ", ##__VA_ARGS__" will delete the leading comma, but it
* does not work when __VA_ARGS__ is the first argument. Instead, 1 is returned instead of 0:
- *
+ *
* VA_NARGS() -> v
* VA_NARGS1( , 8, 7, 6, 5, 4, 3, 2, 1, 0) ->
* VA_NARGS1(_1, _2, _3, _4, _5, _6, _7, _8, N) -> 1