summaryrefslogtreecommitdiff
path: root/main/logger.c
diff options
context:
space:
mode:
authorKevin P. Fleming <kpfleming@digium.com>2010-05-19 15:29:28 +0000
committerKevin P. Fleming <kpfleming@digium.com>2010-05-19 15:29:28 +0000
commite77efbc12e4ed62423a3c93db9d55e0346cf059c (patch)
tree00839f9270516fc21cf94153dbe5ab7c913f65ed /main/logger.c
parenta8a1961be703188e82845054691d433456b0ebcd (diff)
Add ability for logger channels to include *all* levels.
Now that Asterisk modules can dynamically create and destroy logger levels on demand, it's useful to be able to configure a logger channel (console, file, whatever) to be able to accept log messages from *all* levels, even levels created dynamically. This patch adds support for this, by allowing the '*' level name to be used in logger.conf. Review: https://reviewboard.asterisk.org/r/663/ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@264160 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'main/logger.c')
-rw-r--r--main/logger.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/main/logger.c b/main/logger.c
index 0038c5f44..3b66854a1 100644
--- a/main/logger.c
+++ b/main/logger.c
@@ -214,14 +214,14 @@ static unsigned int make_components(const char *s, int lineno)
unsigned int x;
while ((w = strsep(&stringp, ","))) {
- int found = 0;
-
w = ast_skip_blanks(w);
- for (x = 0; x < ARRAY_LEN(levels); x++) {
+ if (!strcmp(w, "*")) {
+ res = 0xFFFF;
+ break;
+ } else for (x = 0; x < ARRAY_LEN(levels); x++) {
if (levels[x] && !strcasecmp(w, levels[x])) {
res |= (1 << x);
- found = 1;
break;
}
}