diff options
author | rmudgett <rmudgett@f38db490-d61c-443f-a65b-d21fe96a405b> | 2010-07-16 20:18:54 +0000 |
---|---|---|
committer | rmudgett <rmudgett@f38db490-d61c-443f-a65b-d21fe96a405b> | 2010-07-16 20:18:54 +0000 |
commit | f51274d7b17b1aa91ce5724ae28bf12b574ec4e4 (patch) | |
tree | eb5588fc484923ba914595457581b7d922d648c6 | |
parent | bcc7c2c4c8e38f7f765bc6a3f6ca58d40100210e (diff) |
priexclusive in chan_dahdi.conf ignored when reloading dahdi module
During a reload, the priexclusive and outsignalling parameters are not
read in from the config file as intended. Unfortunately, they get set to
defaults as a result. This patch makes sure that they do not get set to
defaults during a reload.
(closes issue #17441)
Reported by: mtryfoss
Patches:
issue17441_v1.4.patch uploaded by rmudgett (license 664)
issue17441_v1.6.2.patch uploaded by rmudgett (license 664)
issue17441_trunk.patch uploaded by rmudgett (license 664)
Tested by: rmudgett
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@277419 f38db490-d61c-443f-a65b-d21fe96a405b
-rw-r--r-- | channels/chan_dahdi.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/channels/chan_dahdi.c b/channels/chan_dahdi.c index 6111b160b..b5960143f 100644 --- a/channels/chan_dahdi.c +++ b/channels/chan_dahdi.c @@ -7856,6 +7856,8 @@ static struct dahdi_pvt *mkintf(int channel, const struct dahdi_chan_conf *conf, return NULL; } } + tmp->outsigmod = conf->chan.outsigmod; + #ifdef HAVE_PRI if ((chan_sig == SIG_PRI) || (chan_sig == SIG_GR303FXOKS) || (chan_sig == SIG_GR303FXSKS)) { int offset; @@ -7970,6 +7972,8 @@ static struct dahdi_pvt *mkintf(int channel, const struct dahdi_chan_conf *conf, tmp->pri = &pris[span]; tmp->prioffset = offset; tmp->call = NULL; + + tmp->priexclusive = conf->chan.priexclusive; } else { ast_log(LOG_ERROR, "Channel %d is reserved for D-channel.\n", offset); destroy_dahdi_pvt(&tmp); @@ -8076,7 +8080,6 @@ static struct dahdi_pvt *mkintf(int channel, const struct dahdi_chan_conf *conf, tmp->immediate = conf->chan.immediate; tmp->transfertobusy = conf->chan.transfertobusy; tmp->sig = chan_sig; - tmp->outsigmod = conf->chan.outsigmod; tmp->ringt_base = ringt_base; tmp->firstradio = 0; if ((chan_sig == SIG_FXOKS) || (chan_sig == SIG_FXOLS) || (chan_sig == SIG_FXOGS)) @@ -8121,7 +8124,6 @@ static struct dahdi_pvt *mkintf(int channel, const struct dahdi_chan_conf *conf, tmp->dahditrcallerid = conf->chan.dahditrcallerid; tmp->restrictcid = conf->chan.restrictcid; tmp->use_callingpres = conf->chan.use_callingpres; - tmp->priexclusive = conf->chan.priexclusive; if (tmp->usedistinctiveringdetection) { if (!tmp->use_callerid) { ast_log(LOG_NOTICE, "Distinctive Ring detect requires 'usecallerid' be on\n"); |