aboutsummaryrefslogtreecommitdiffstats
path: root/channels
diff options
context:
space:
mode:
authormarkster <markster@f38db490-d61c-443f-a65b-d21fe96a405b>2003-10-22 04:19:22 +0000
committermarkster <markster@f38db490-d61c-443f-a65b-d21fe96a405b>2003-10-22 04:19:22 +0000
commit92e363e120efc41ff4c41d1d95c10abcc3c4ae00 (patch)
treec33b0c2a57f99a4ef37d15450772f9cd43b81092 /channels
parentae1b60fa81280f633dc8dd4bd169ef0207c73d87 (diff)
Add language supporrt for SIP (bug #411)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@1656 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels')
-rwxr-xr-xchannels/chan_sip.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/channels/chan_sip.c b/channels/chan_sip.c
index 998ac8217..d6269be54 100755
--- a/channels/chan_sip.c
+++ b/channels/chan_sip.c
@@ -278,6 +278,7 @@ struct sip_user {
char callerid[80];
char methods[80];
char accountcode[20];
+ char language[MAX_LANGUAGE];
unsigned int callgroup;
unsigned int pickupgroup;
int nat;
@@ -3910,6 +3911,7 @@ static int check_user(struct sip_pvt *p, struct sip_request *req, char *cmd, cha
strncpy(p->peersecret, user->secret, sizeof(p->peersecret) - 1);
strncpy(p->peermd5secret, user->md5secret, sizeof(p->peermd5secret) - 1);
strncpy(p->accountcode, user->accountcode, sizeof(p->accountcode) -1);
+ strncpy(p->language, user->language, sizeof(p->language) -1);
p->canreinvite = user->canreinvite;
p->amaflags = user->amaflags;
p->callgroup = user->callgroup;
@@ -5630,6 +5632,7 @@ static struct sip_user *build_user(char *name, struct ast_variable *v)
user->canreinvite = REINVITE_INVITE;
/* JK02: set default context */
strcpy(user->context, context);
+ strcpy(user->language, language);
while(v) {
if (!strcasecmp(v->name, "context")) {
strncpy(user->context, v->value, sizeof(user->context));
@@ -5667,6 +5670,8 @@ static struct sip_user *build_user(char *name, struct ast_variable *v)
user->callgroup = ast_get_group(v->value);
} else if (!strcasecmp(v->name, "pickupgroup")) {
user->pickupgroup = ast_get_group(v->value);
+ } else if (!strcasecmp(v->name, "language")) {
+ strncpy(user->language, v->value, sizeof(user->language)-1);
} else if (!strcasecmp(v->name, "accountcode")) {
strncpy(user->accountcode, v->value, sizeof(user->accountcode)-1);
} else if (!strcasecmp(v->name, "incominglimit")) {