{
pdss1 = (class Pdss1 *)port;
/* check out correct stack and id */
- if (pdss1->p_m_mISDNport == mISDNport
- && (pdss1->p_m_d_l3id & MISDN_PID_CRVAL_MASK) == (pid & MISDN_PID_CRVAL_MASK))
+ if (pdss1->p_m_mISDNport == mISDNport)
{
- /* found port, the message belongs to */
- break;
+ if (pdss1->p_m_d_l3id & MISDN_PID_CR_FLAG)
+ {
+ /* local callref, so match value only */
+ if ((pdss1->p_m_d_l3id & MISDN_PID_CRVAL_MASK) == (pid & MISDN_PID_CRVAL_MASK))
+ break; // found
+ } else
+ {
+ /* remote callref, ref + channel id */
+ if (pdss1->p_m_d_l3id == pid)
+ break; // found
+ }
}
}
port = port->next;
case MT_L2ESTABLISH:
l1l2l3_trace_header(mISDNport, NULL, L2_ESTABLISH_IND, DIRECTION_IN);
+ add_trace("tei", NULL, "%d", l3m->pid);
end_trace();
if ((!mISDNport->ntmode || mISDNport->ptp) && l3m->pid < 127)
{
case MT_L2RELEASE:
l1l2l3_trace_header(mISDNport, NULL, L2_RELEASE_IND, DIRECTION_IN);
+ add_trace("tei", NULL, "%d", l3m->pid);
end_trace();
if ((!mISDNport->ntmode || mISDNport->ptp) && l3m->pid < 127)
{
PDEBUG(DEBUG_ISDN, "the L2 establish timer expired, we try to establish the link portnum=%d.\n", mISDNport->portnum);
mISDNport->ml3->to_layer3(mISDNport->ml3, MT_L2ESTABLISH, 0, NULL);
l1l2l3_trace_header(mISDNport, NULL, L2_ESTABLISH_REQ, DIRECTION_OUT);
+ add_trace("tei", NULL, "%d", 0);
end_trace();
time(&mISDNport->l2establish);
return(1);
mISDN_write(mISDNdevice, &act, mISDN_HEADER_LEN+act.len, TIMEOUT_1SEC);
}
l1l2l3_trace_header(mISDNport, NULL, L2_ESTABLISH_REQ, DIRECTION_OUT);
+ add_trace("tei", NULL, "%d", 0);
end_trace();
time(&mISDNport->l2establish);
return(1);
{
mISDNport->ml3->to_layer3(mISDNport->ml3, MT_L2ESTABLISH, 0, NULL);
l1l2l3_trace_header(mISDNport, NULL, L2_ESTABLISH_REQ, DIRECTION_OUT);
+ add_trace("tei", NULL, "%d", 0);
end_trace();
time(&mISDNport->l2establish);
}