[PATCH][MISDNUSER] Parse channel information from CALL PROCEEDING message too in mISDNcapid
"Maciej S. Szmigiero" <[email protected]> Sun, 13 Mar 2016 00:23:11 +0100
| Newsgroups | gmane.linux.isdn.i4l.user |
|---|---|
| Message-ID | <[email protected]> |
According to Q.931 (05/98) on user-originated calls that did not select a particular B channel in a SETUP message the selected B channel is sent in a first message returned by the network in a response to the SETUP message. This Recommendation explicitly mentions SETUP ACKNOWLEDGE or CALL PROCEEDING as examples of such response messages, however mISDNcapid code ignored channel indication in CALL PROCEEDING messages. This resulted in a no channel selected error on outgoing calls on exchanges that reply with CALL PROCEEDING to SETUP. Signed-off-by: Maciej S. Szmigiero <[email protected]> --- capi20/lplci.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/capi20/lplci.c b/capi20/lplci.c index 0370c41ba67c..e2b389150c82 100644 --- a/capi20/lplci.c +++ b/capi20/lplci.c @@ -2168,6 +2168,11 @@ void lPLCI_l3l4(struct lPLCI *lp, int pr, struct mc_buf *mc) lPLCIInfoIndIE(lp, IE_DISPLAY, CAPI_INFOMASK_DISPLAY, mc); lPLCIInfoIndIE(lp, IE_PROGRESS, CAPI_INFOMASK_PROGRESS | CAPI_INFOMASK_EARLYB3, mc); lPLCIInfoIndIE(lp, IE_CHANNEL_ID, CAPI_INFOMASK_CHANNELID, mc); + ret = plci_parse_channel_id(lp, mc); + if (ret < -1) { + wprint("%s: Got channel coding error in %s (%d)\n", CAPIobjIDstr(&lp->cobj), + _mi_msg_type2str(pr), ret); + } } break; case MT_ALERTING: