As suggested by seanbright, the PSEUDO_CHAN_LEN in

app_chanspy should be set at load time, not at compile
time, since dahdi_chan_name is determined at load time.

Also changed the next_unique_id_to_use to have the 
static qualifier.

Also added the dahdi_chan_name_len variable so that
strlen(dahdi_chan_name) isn't necessary. Thanks to
seanbright for the suggestion.



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@133169 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Mark Michelson
2008-07-23 19:39:47 +00:00
parent 9482af686b
commit 252c5728fc
4 changed files with 17 additions and 7 deletions

View File

@@ -58,11 +58,6 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
/* "Zap/pseudo" is ten characters.
* "DAHDI/pseudo" is twelve characters.
*/
#ifdef HAVE_ZAPTEL
#define PSEUDO_CHAN_LEN 10
#else
#define PSEUDO_CHAN_LEN 12
#endif
static const char *tdesc = "Listen to a channel, and optionally whisper into it";
static const char *app_chan = "ChanSpy";
@@ -151,7 +146,14 @@ AST_APP_OPTIONS(spy_opts, {
AST_APP_OPTION_ARG('r', OPTION_RECORD, OPT_ARG_RECORD),
});
int next_unique_id_to_use = 0;
static int next_unique_id_to_use = 0;
static int PSEUDO_CHAN_LEN;
static void determine_pseudo_chan_len(void)
{
PSEUDO_CHAN_LEN = dahdi_chan_name_len + strlen("/pseudo");
}
struct chanspy_translation_helper {
/* spy data */
@@ -863,6 +865,7 @@ static int load_module(void)
{
int res = 0;
determine_pseudo_chan_len();
res |= ast_register_application(app_chan, chanspy_exec, tdesc, desc_chan);
res |= ast_register_application(app_ext, extenspy_exec, tdesc, desc_ext);