|
|
|
@ -95,6 +95,7 @@ struct ast_channel
|
|
|
|
|
#include "asterisk/inline_api.h"
|
|
|
|
|
#include "asterisk/endian.h"
|
|
|
|
|
#include "asterisk/ast_expr.h"
|
|
|
|
|
#include "asterisk/extconf.h"
|
|
|
|
|
|
|
|
|
|
/* logger.h */
|
|
|
|
|
|
|
|
|
@ -2691,8 +2692,6 @@ static int static_config = 0;
|
|
|
|
|
static int write_protect_config = 1;
|
|
|
|
|
static int autofallthrough_config = 0;
|
|
|
|
|
static int clearglobalvars_config = 0;
|
|
|
|
|
/*! Go no deeper than this through includes (not counting loops) */
|
|
|
|
|
#define AST_PBX_MAX_STACK 128
|
|
|
|
|
static void pbx_substitute_variables_helper(struct ast_channel *c,const char *cp1,char *cp2,int count);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -4233,20 +4232,6 @@ struct ast_app;
|
|
|
|
|
#else
|
|
|
|
|
#define EXT_DATA_SIZE 8192
|
|
|
|
|
#endif
|
|
|
|
|
/*!
|
|
|
|
|
* When looking up extensions, we can have different requests
|
|
|
|
|
* identified by the 'action' argument, as follows.
|
|
|
|
|
* Note that the coding is such that the low 4 bits are the
|
|
|
|
|
* third argument to extension_match_core.
|
|
|
|
|
*/
|
|
|
|
|
enum ext_match_t {
|
|
|
|
|
E_MATCHMORE = 0x00, /* extension can match but only with more 'digits' */
|
|
|
|
|
E_CANMATCH = 0x01, /* extension can match with or without more 'digits' */
|
|
|
|
|
E_MATCH = 0x02, /* extension is an exact match */
|
|
|
|
|
E_MATCH_MASK = 0x03, /* mask for the argument to extension_match_core() */
|
|
|
|
|
E_SPAWN = 0x12, /* want to spawn an extension. Requires exact match */
|
|
|
|
|
E_FINDLABEL = 0x22 /* returns the priority for a given label. Requires exact match */
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
#ifdef NOT_ANYMORE
|
|
|
|
|
static AST_RWLIST_HEAD_STATIC(switches, ast_switch);
|
|
|
|
@ -4773,22 +4758,6 @@ static struct ast_context *ast_context_find(const char *name)
|
|
|
|
|
return tmp;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* request and result for pbx_find_extension */
|
|
|
|
|
struct pbx_find_info {
|
|
|
|
|
#if 0
|
|
|
|
|
const char *context;
|
|
|
|
|
const char *exten;
|
|
|
|
|
int priority;
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
char *incstack[AST_PBX_MAX_STACK]; /* filled during the search */
|
|
|
|
|
int stacklen; /* modified during the search */
|
|
|
|
|
int status; /* set on return */
|
|
|
|
|
struct ast_switch *swo; /* set on return */
|
|
|
|
|
const char *data; /* set on return */
|
|
|
|
|
const char *foundcontext; /* set on return */
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
* Internal function for ast_extension_{match|close}
|
|
|
|
|
* return 0 on no-match, 1 on match, 2 on early match.
|
|
|
|
@ -6219,9 +6188,7 @@ static void ast_merge_contexts_and_delete(struct ast_context **extcontexts, cons
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void localized_merge_contexts_and_delete(struct ast_context **extcontexts, const char *registrar);
|
|
|
|
|
|
|
|
|
|
void localized_merge_contexts_and_delete(struct ast_context **extcontexts, const char *registrar)
|
|
|
|
|
void localized_merge_contexts_and_delete(struct ast_context **extcontexts, void *tab, const char *registrar)
|
|
|
|
|
{
|
|
|
|
|
ast_merge_contexts_and_delete(extcontexts, registrar);
|
|
|
|
|
}
|
|
|
|
|