aboutsummaryrefslogtreecommitdiffstats
path: root/channels/chan_dahdi.c
diff options
context:
space:
mode:
authorrmudgett <rmudgett@f38db490-d61c-443f-a65b-d21fe96a405b>2010-05-05 22:22:14 +0000
committerrmudgett <rmudgett@f38db490-d61c-443f-a65b-d21fe96a405b>2010-05-05 22:22:14 +0000
commit88c9dfe3a5efe6ffaa4a033f74a393f4a62e50ed (patch)
treea5d7dd5d2bf728ab653fdd85a113604c3bc78b60 /channels/chan_dahdi.c
parent76e8815fc13aa2b08cc3cee468915fd61e56d60e (diff)
Avoid a crash on SS7 channels.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@261405 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels/chan_dahdi.c')
-rw-r--r--channels/chan_dahdi.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/channels/chan_dahdi.c b/channels/chan_dahdi.c
index 73ef3dcff..3c48be7a3 100644
--- a/channels/chan_dahdi.c
+++ b/channels/chan_dahdi.c
@@ -12083,9 +12083,9 @@ static struct dahdi_pvt *mkintf(int channel, const struct dahdi_chan_conf *conf,
if (!here) {
tmp->locallyblocked = tmp->remotelyblocked = 0;
- switch (chan_sig) {
+ switch (tmp->sig) {
+#if defined(HAVE_PRI)
case SIG_PRI_LIB_HANDLE_CASES:
- case SIG_SS7:
tmp->inservice = 0;
#if defined(HAVE_PRI_SERVICE_MESSAGES)
((struct sig_pri_chan *) tmp->sig_pvt)->service_status = 0;
@@ -12117,6 +12117,12 @@ static struct dahdi_pvt *mkintf(int channel, const struct dahdi_chan_conf *conf,
}
#endif /* defined(HAVE_PRI_SERVICE_MESSAGES) */
break;
+#endif /* defined(HAVE_PRI) */
+#if defined(HAVE_SS7)
+ case SIG_SS7:
+ tmp->inservice = 0;
+ break;
+#endif /* defined(HAVE_SS7) */
default:
/* We default to in service on protocols that don't have a reset */
tmp->inservice = 1;