dect
/
asterisk
Archived
13
0
Fork 0

Log spandsp's fax debug output to the FAX logger level.

Review: https://reviewboard.asterisk.org/r/658



git-svn-id: http://svn.digium.com/svn/asterisk/trunk@264953 f38db490-d61c-443f-a65b-d21fe96a405b
This commit is contained in:
mmichelson 2010-05-21 15:15:58 +00:00
parent ed87841315
commit e8592e128a
4 changed files with 29 additions and 1 deletions

View File

@ -256,4 +256,15 @@ unsigned int ast_fax_maxrate(void);
/*! \brief convert an ast_fax_state to a string */
const char *ast_fax_state_to_str(enum ast_fax_state state);
/*!
* \brief Log message at FAX or recommended level
*
* The first four parameters can be represented with Asterisk's
* LOG_* levels. In other words, this function may be called
* like
*
* ast_fax_log(LOG_DEBUG, msg);
*/
void ast_fax_log(int level, const char *file, const int line, const char *function, const char *msg);
#endif

View File

@ -101,6 +101,8 @@ struct ast_fax_debug_info {
struct ast_dsp *dsp;
};
static int fax_logger_level = -1;
/*! \brief maximum buckets for res_fax ao2 containers */
#define FAX_MAXBUCKETS 10
@ -448,6 +450,15 @@ const char *ast_fax_state_to_str(enum ast_fax_state state)
}
}
void ast_fax_log(int level, const char *file, const int line, const char *function, const char *msg)
{
if (fax_logger_level != -1) {
ast_log_dynamic_level(fax_logger_level, "%s", msg);
} else {
ast_log(level, file, line, function, "%s", msg);
}
}
/*! \brief convert a rate string to a rate */
static int fax_rate_str_to_int(const char *ratestr)
{
@ -2195,6 +2206,10 @@ static int unload_module(void)
ast_log(LOG_WARNING, "failed to unregister '%s'\n", app_receivefax);
}
if (fax_logger_level != -1) {
ast_logger_unregister_level("FAX");
}
ao2_ref(faxregistry.container, -1);
return 0;
@ -2231,6 +2246,7 @@ static int load_module(void)
}
ast_cli_register_multiple(fax_cli, ARRAY_LEN(fax_cli));
res = ast_custom_function_register(&acf_faxopt);
fax_logger_level = ast_logger_register_level("FAX");
return res;
}

View File

@ -6,6 +6,7 @@
LINKER_SYMBOL_PREFIXast_fax_minrate;
LINKER_SYMBOL_PREFIXast_fax_maxrate;
LINKER_SYMBOL_PREFIXast_fax_state_to_str;
LINKER_SYMBOL_PREFIXast_fax_log;
local:
*;
};

View File

@ -366,7 +366,7 @@ static void spandsp_log(int level, const char *msg)
} else if (level == SPAN_LOG_WARNING) {
ast_log(LOG_WARNING, "%s", msg);
} else {
ast_log(LOG_DEBUG, "%s", msg);
ast_fax_log(LOG_DEBUG, msg);
}
}