summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonathan Rose <jrose@digium.com>2011-06-06 19:15:10 +0000
committerJonathan Rose <jrose@digium.com>2011-06-06 19:15:10 +0000
commit4ab3825fe4703d2e747c45befa92240b6424b2db (patch)
treeff194970867860a6d9745cf3804b33dea3dc2c27
parentc8548bad22d2f9644c9d03b6a6121e59d7afe131 (diff)
Merged revisions 322069 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8 ........ r322069 | jrose | 2011-06-06 14:07:56 -0500 (Mon, 06 Jun 2011) | 8 lines Fixes level toggling for logger set levels since it was reversed (closes issue ASTERISK-17850) Reported by: Luke H Tested by: jrose, Luke H Review: https://reviewboard.asterisk.org/r/1244/ ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@322070 65c4cc65-6c06-0410-ace0-fbb531ad65f3
-rw-r--r--include/asterisk/logger.h5
-rw-r--r--main/asterisk.c9
2 files changed, 12 insertions, 2 deletions
diff --git a/include/asterisk/logger.h b/include/asterisk/logger.h
index 91824d704..322214e73 100644
--- a/include/asterisk/logger.h
+++ b/include/asterisk/logger.h
@@ -98,7 +98,10 @@ void ast_console_puts_mutable(const char *string, int level);
void ast_console_toggle_mute(int fd, int silent);
/*!
- * \since 1.6.1
+ * \brief enables or disables logging of a specified level to the console
+ * fd specifies the index of the console receiving the level change
+ * level specifies the index of the logging level being toggled
+ * state indicates whether logging will be on or off (0 for off, 1 for on)
*/
void ast_console_toggle_loglevel(int fd, int level, int state);
diff --git a/main/asterisk.c b/main/asterisk.c
index d9e3868c6..7b93294ca 100644
--- a/main/asterisk.c
+++ b/main/asterisk.c
@@ -1087,12 +1087,19 @@ int ast_safe_system(const char *s)
return res;
}
+/*!
+ * \brief enable or disable a logging level to a specified console
+ */
void ast_console_toggle_loglevel(int fd, int level, int state)
{
int x;
for (x = 0;x < AST_MAX_CONNECTS; x++) {
if (fd == consoles[x].fd) {
- consoles[x].levels[level] = state;
+ /*
+ * Since the logging occurs when levels are false, set to
+ * flipped iinput because this function accepts 0 as off and 1 as on
+ */
+ consoles[x].levels[level] = state ? 0 : 1;
return;
}
}