diff options
author | markster <markster@f38db490-d61c-443f-a65b-d21fe96a405b> | 2003-10-24 18:22:45 +0000 |
---|---|---|
committer | markster <markster@f38db490-d61c-443f-a65b-d21fe96a405b> | 2003-10-24 18:22:45 +0000 |
commit | 326a85e10f52280b2facbb2936bed81a60ee2e9f (patch) | |
tree | 0cee71625b74db3e52196edbf5ae8d49fab2ff14 /channels/chan_zap.c | |
parent | 4c81f60757b61bfcddaa882380c485e42bf392cf (diff) |
Check that there really is a tag
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@1663 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels/chan_zap.c')
-rwxr-xr-x | channels/chan_zap.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/channels/chan_zap.c b/channels/chan_zap.c index 1fb850963..2391734eb 100755 --- a/channels/chan_zap.c +++ b/channels/chan_zap.c @@ -188,6 +188,8 @@ static int amaflags = 0; static int adsi = 0; +static int numbufs = 4; + #ifdef ZAPATA_PRI static int minunused = 2; static int minidle = 0; @@ -659,7 +661,7 @@ static int alloc_sub(struct zt_pvt *p, int x) if (!res) { bi.txbufpolicy = ZT_POLICY_IMMEDIATE; bi.rxbufpolicy = ZT_POLICY_IMMEDIATE; - bi.numbufs = 4; + bi.numbufs = numbufs; res = ioctl(p->subs[x].zfd, ZT_SET_BUFINFO, &bi); if (res < 0) { ast_log(LOG_WARNING, "Unable to set buffer policy on channel %d\n", x); @@ -5116,7 +5118,7 @@ static struct zt_pvt *mkintf(int channel, int signalling, int radio) if (!res) { bi.txbufpolicy = ZT_POLICY_IMMEDIATE; bi.rxbufpolicy = ZT_POLICY_IMMEDIATE; - bi.numbufs = 4; + bi.numbufs = numbufs; res = ioctl(tmp->subs[SUB_REAL].zfd, ZT_SET_BUFINFO, &bi); if (res < 0) { ast_log(LOG_WARNING, "Unable to set buffer policy on channel %d\n", channel); @@ -5301,7 +5303,7 @@ static struct zt_pvt *chandup(struct zt_pvt *src) if (!res) { bi.txbufpolicy = ZT_POLICY_IMMEDIATE; bi.rxbufpolicy = ZT_POLICY_IMMEDIATE; - bi.numbufs = 4; + bi.numbufs = numbufs; res = ioctl(p->subs[SUB_REAL].zfd, ZT_SET_BUFINFO, &bi); if (res < 0) { ast_log(LOG_WARNING, "Unable to set buffer policy on dup channel\n"); @@ -6267,7 +6269,7 @@ static int start_pri(struct zt_pri *pri) } bi.txbufpolicy = ZT_POLICY_IMMEDIATE; bi.rxbufpolicy = ZT_POLICY_IMMEDIATE; - bi.numbufs = 8; + bi.numbufs = 16; bi.bufsize = 1024; if (ioctl(pri->fd, ZT_SET_BUFINFO, &bi)) { ast_log(LOG_ERROR, "Unable to set appropriate buffering on channel %d\n", x); @@ -6781,6 +6783,8 @@ int load_module() strncpy(musicclass, v->value, sizeof(musicclass)-1); } else if (!strcasecmp(v->name, "stripmsd")) { stripmsd = atoi(v->value); + } else if (!strcasecmp(v->name, "jitterbuffers")) { + numbufs = atoi(v->value); } else if (!strcasecmp(v->name, "group")) { cur_group = ast_get_group(v->value); } else if (!strcasecmp(v->name, "callgroup")) { @@ -7319,6 +7323,8 @@ static int reload_zt(void) ast_mutex_unlock(&iflock); return -1; } + } else if (!strcasecmp(v->name, "jitterbuffers")) { + numbufs = atoi(v->value); } else if (!strcasecmp(v->name, "minunused")) { minunused = atoi(v->value); } else if (!strcasecmp(v->name, "idleext")) { |