diff options
author | Corey Farrell <git@cfware.com> | 2017-12-12 13:55:12 -0500 |
---|---|---|
committer | Corey Farrell <git@cfware.com> | 2017-12-15 10:18:52 -0500 |
commit | 957709e1e824e221254599e4ad8445e3839ce535 (patch) | |
tree | 87f5e5481c78e21219025ac36033ee3106428fc3 /apps/app_agent_pool.c | |
parent | 5d49e2e3297c3af800eb68b74972d2b38c0eb8de (diff) |
aco: Minimize use of regex.
Remove nearly all use of regex from ACO users. Still remaining:
* app_confbridge has a legitamate use of option name regex.
* ast_sorcery_object_fields_register is implemented with regex, all
callers use simple prefix based regex. I haven't decided the best
way to fix this in both 13/15 and master.
Change-Id: Ib5ed478218d8a661ace4d2eaaea98b59a897974b
Diffstat (limited to 'apps/app_agent_pool.c')
-rw-r--r-- | apps/app_agent_pool.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/apps/app_agent_pool.c b/apps/app_agent_pool.c index 6a8c3955b..3c2ea3870 100644 --- a/apps/app_agent_pool.c +++ b/apps/app_agent_pool.c @@ -455,11 +455,17 @@ struct agents_cfg { struct ao2_container *agents; }; +static const char *agent_type_blacklist[] = { + "general", + "agents", + NULL, +}; + static struct aco_type agent_type = { .type = ACO_ITEM, .name = "agent-id", - .category_match = ACO_BLACKLIST, - .category = "^(general|agents)$", + .category_match = ACO_BLACKLIST_ARRAY, + .category = (const char *)agent_type_blacklist, .item_alloc = agent_cfg_alloc, .item_find = agent_cfg_find, .item_offset = offsetof(struct agents_cfg, agents), @@ -471,8 +477,8 @@ static struct aco_type *agent_types[] = ACO_TYPES(&agent_type); static struct aco_type general_type = { .type = ACO_GLOBAL, .name = "global", - .category_match = ACO_WHITELIST, - .category = "^general$", + .category_match = ACO_WHITELIST_EXACT, + .category = "general", }; static struct aco_file agents_conf = { |