diff --git a/libs/openzap/src/isdn/Q931ie.c b/libs/openzap/src/isdn/Q931ie.c index 23e4f010ed..d3cea9936f 100644 --- a/libs/openzap/src/isdn/Q931ie.c +++ b/libs/openzap/src/isdn/Q931ie.c @@ -1029,7 +1029,12 @@ L3INT Q931Uie_Cause(Q931_TrunkInfo_t *pTrunk, Q931mes_Generic *pMsg, L3UCHAR * I pie->Value = IBuf[Octet+Off] & 0x7f; Octet++; - Q931IESizeTest(Q931E_CAUSE); + /* Consume optional Diagnostic bytes */ + while (Q931MoreIE()) { + Off++; + }; + + Q931IESizeTest(Q931E_CAUSE); Q931SetIE(*pIE, *OOff);