summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOlle Johansson <oej@edvina.net>2009-09-07 16:26:04 +0000
committerOlle Johansson <oej@edvina.net>2009-09-07 16:26:04 +0000
commit3b8cec9d32f092b4a656c9b292e695e39e557148 (patch)
tree59de3a178cfd8f6eb51d5b1a52913e4762955836
parent320b514b183c4bc721ae4c3024b59fbf073fc758 (diff)
Move global_regcontext into the sip_cfg structure
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@216834 65c4cc65-6c06-0410-ace0-fbb531ad65f3
-rw-r--r--channels/chan_sip.c22
1 files changed, 11 insertions, 11 deletions
diff --git a/channels/chan_sip.c b/channels/chan_sip.c
index 41570e65b..ea4aede59 100644
--- a/channels/chan_sip.c
+++ b/channels/chan_sip.c
@@ -1183,6 +1183,7 @@ struct sip_settings {
int callevents; /*!< Whether we send manager events or not */
int regextenonqualify; /*!< Whether to add/remove regexten when qualifying peers */
int matchexterniplocally; /*!< Match externip/externhost setting against localnet setting */
+ char regcontext[AST_MAX_CONTEXT]; /*!< Context for auto-extensions */
unsigned int disallowed_methods; /*!< methods that we should never try to use */
int notifyringing; /*!< Send notifications on ringing */
int notifyhold; /*!< Send notifications on hold */
@@ -1223,7 +1224,6 @@ static unsigned int global_cos_video; /*!< 802.1p class of service for video RT
static unsigned int global_cos_text; /*!< 802.1p class of service for text RTP packets */
static unsigned int recordhistory; /*!< Record SIP history. Off by default */
static unsigned int dumphistory; /*!< Dump history to verbose before destroying SIP dialog */
-static char global_regcontext[AST_MAX_CONTEXT]; /*!< Context for auto-extensions */
static char global_useragent[AST_MAX_EXTENSION]; /*!< Useragent for the SIP channel */
static char global_sdpsession[AST_MAX_EXTENSION]; /*!< SDP session name for the SIP channel */
static char global_sdpowner[AST_MAX_EXTENSION]; /*!< SDP owner name for the SIP channel */
@@ -4561,11 +4561,11 @@ static void register_peer_exten(struct sip_peer *peer, int onoff)
char *stringp, *ext, *context;
struct pbx_find_info q = { .stacklen = 0 };
- /* XXX note that global_regcontext is both a global 'enable' flag and
+ /* XXX note that sip_cfg.regcontext is both a global 'enable' flag and
* the name of the global regexten context, if not specified
* individually.
*/
- if (ast_strlen_zero(global_regcontext))
+ if (ast_strlen_zero(sip_cfg.regcontext))
return;
ast_copy_string(multi, S_OR(peer->regexten, peer->name), sizeof(multi));
@@ -4578,7 +4578,7 @@ static void register_peer_exten(struct sip_peer *peer, int onoff)
continue;
}
} else {
- context = global_regcontext;
+ context = sip_cfg.regcontext;
}
if (onoff) {
if (!ast_exists_extension(NULL, context, ext, 1, NULL)) {
@@ -15640,7 +15640,7 @@ static char *_sip_show_peer(int type, int fd, struct mansession *s, const struct
ast_cli(fd, " Defaddr->IP : %s Port %d\n", ast_inet_ntoa(peer->defaddr.sin_addr), ntohs(peer->defaddr.sin_port));
ast_cli(fd, " Prim.Transp. : %s\n", get_transport(peer->socket.type));
ast_cli(fd, " Allowed.Trsp : %s\n", get_transport_list(peer->transports));
- if (!ast_strlen_zero(global_regcontext))
+ if (!ast_strlen_zero(sip_cfg.regcontext))
ast_cli(fd, " Reg. exten : %s\n", peer->regexten);
ast_cli(fd, " Def. Username: %s\n", peer->username);
ast_cli(fd, " SIP Options : ");
@@ -15740,7 +15740,7 @@ static char *_sip_show_peer(int type, int fd, struct mansession *s, const struct
astman_append(s, "Address-IP: %s\r\nAddress-Port: %d\r\n", peer->addr.sin_addr.s_addr ? ast_inet_ntoa(peer->addr.sin_addr) : "", ntohs(peer->addr.sin_port));
astman_append(s, "Default-addr-IP: %s\r\nDefault-addr-port: %d\r\n", ast_inet_ntoa(peer->defaddr.sin_addr), ntohs(peer->defaddr.sin_port));
astman_append(s, "Default-Username: %s\r\n", peer->username);
- if (!ast_strlen_zero(global_regcontext))
+ if (!ast_strlen_zero(sip_cfg.regcontext))
astman_append(s, "RegExtension: %s\r\n", peer->regexten);
astman_append(s, "Codecs: ");
ast_getformatname_multiple(codec_buf, sizeof(codec_buf) -1, peer->capability);
@@ -16168,7 +16168,7 @@ static char *sip_show_settings(struct ast_cli_entry *e, int cmd, struct ast_cli_
ast_cli(a->fd, " User Agent: %s\n", global_useragent);
ast_cli(a->fd, " SDP Session Name: %s\n", ast_strlen_zero(global_sdpsession) ? "-" : global_sdpsession);
ast_cli(a->fd, " SDP Owner Name: %s\n", ast_strlen_zero(global_sdpowner) ? "-" : global_sdpowner);
- ast_cli(a->fd, " Reg. context: %s\n", S_OR(global_regcontext, "(not set)"));
+ ast_cli(a->fd, " Reg. context: %s\n", S_OR(sip_cfg.regcontext, "(not set)"));
ast_cli(a->fd, " Regexten on Qualify: %s\n", cli_yesno(sip_cfg.regextenonqualify));
ast_cli(a->fd, " Caller ID: %s\n", default_callerid);
ast_cli(a->fd, " From: Domain: %s\n", default_fromdomain);
@@ -24760,8 +24760,8 @@ static int reload_config(enum channelreloadreason reason)
default_tls_cfg.cafile = ast_strdup("");
default_tls_cfg.capath = ast_strdup("");
- /* Initialize copy of current global_regcontext for later use in removing stale contexts */
- ast_copy_string(oldcontexts, global_regcontext, sizeof(oldcontexts));
+ /* Initialize copy of current sip_cfg.regcontext for later use in removing stale contexts */
+ ast_copy_string(oldcontexts, sip_cfg.regcontext, sizeof(oldcontexts));
oldregcontext = oldcontexts;
/* Clear all flags before setting default values */
@@ -24805,7 +24805,7 @@ static int reload_config(enum channelreloadreason reason)
/* Reset channel settings to default before re-configuring */
sip_cfg.allow_external_domains = DEFAULT_ALLOW_EXT_DOM; /* Allow external invites */
- global_regcontext[0] = '\0';
+ sip_cfg.regcontext[0] = '\0';
sip_cfg.regextenonqualify = DEFAULT_REGEXTENONQUALIFY;
sip_cfg.notifyringing = DEFAULT_NOTIFYRINGING;
sip_cfg.notifycid = DEFAULT_NOTIFYCID;
@@ -25046,7 +25046,7 @@ static int reload_config(enum channelreloadreason reason)
ast_copy_string(used_context, context, sizeof(used_context));
ast_context_find_or_create(NULL, NULL, context, "SIP");
}
- ast_copy_string(global_regcontext, v->value, sizeof(global_regcontext));
+ ast_copy_string(sip_cfg.regcontext, v->value, sizeof(sip_cfg.regcontext));
} else if (!strcasecmp(v->name, "regextenonqualify")) {
sip_cfg.regextenonqualify = ast_true(v->value);
} else if (!strcasecmp(v->name, "callerid")) {