X-Git-Url: http://git.eversberg.eu/gitweb.cgi?p=lcr.git;a=blobdiff_plain;f=dss1.cpp;h=4a3f3a63bac2945e242c8728672a0469fe529fc4;hp=87f49cd6aa59ac14dcf03c30b3d669e398beb343;hb=6552bc36271c4926a8ac5615f4f84f7391034732;hpb=54d34cda7a6f0d9bd3ff22d529ce69ff2c004bd3 diff --git a/dss1.cpp b/dss1.cpp index 87f49cd..4a3f3a6 100644 --- a/dss1.cpp +++ b/dss1.cpp @@ -164,7 +164,7 @@ int Pdss1::received_first_reply_to_setup(unsigned long prim, int channel, int ex end_trace(); /* activate our exclusive channel */ - bchannel_event(p_m_mISDNport, p_m_b_index, B_EVENT_ACTIVATE); + bchannel_event(p_m_mISDNport, p_m_b_index, B_EVENT_USE); } else if (p_m_b_channel) { @@ -185,7 +185,7 @@ int Pdss1::received_first_reply_to_setup(unsigned long prim, int channel, int ex add_trace("connect", "channel", "%d", p_m_b_channel); end_trace(); p_m_b_exclusive = 1; // we are done - bchannel_event(p_m_mISDNport, p_m_b_index, B_EVENT_ACTIVATE); + bchannel_event(p_m_mISDNport, p_m_b_index, B_EVENT_USE); return(0); } @@ -212,7 +212,7 @@ int Pdss1::received_first_reply_to_setup(unsigned long prim, int channel, int ex end_trace(); /* activate channel given by remote */ - bchannel_event(p_m_mISDNport, p_m_b_index, B_EVENT_ACTIVATE); + bchannel_event(p_m_mISDNport, p_m_b_index, B_EVENT_USE); } else if (p_m_b_reserve) { @@ -248,7 +248,7 @@ int Pdss1::received_first_reply_to_setup(unsigned long prim, int channel, int ex end_trace(); /* activate channel given by remote */ - bchannel_event(p_m_mISDNport, p_m_b_index, B_EVENT_ACTIVATE); + bchannel_event(p_m_mISDNport, p_m_b_index, B_EVENT_USE); } else { /*** we sent 'no channel available' ***/ @@ -277,7 +277,7 @@ int Pdss1::received_first_reply_to_setup(unsigned long prim, int channel, int ex p_m_b_exclusive = 1; // we are done /* activate channel given by remote */ - bchannel_event(p_m_mISDNport, p_m_b_index, B_EVENT_ACTIVATE); + bchannel_event(p_m_mISDNport, p_m_b_index, B_EVENT_USE); return(0); } @@ -312,7 +312,7 @@ int Pdss1::received_first_reply_to_setup(unsigned long prim, int channel, int ex p_m_b_exclusive = 1; // we are done /* activate channel given by remote */ - bchannel_event(p_m_mISDNport, p_m_b_index, B_EVENT_ACTIVATE); + bchannel_event(p_m_mISDNport, p_m_b_index, B_EVENT_USE); } return(0); @@ -731,12 +731,12 @@ void Pdss1::setup_ind(unsigned long prim, unsigned long dinfo, void *data) p_m_delete = 1; return; } - bchannel_event(p_m_mISDNport, p_m_b_index, B_EVENT_ACTIVATE); + bchannel_event(p_m_mISDNport, p_m_b_index, B_EVENT_USE); /* create endpoint */ if (p_epointlist) FATAL("Incoming call but already got an endpoint.\n"); - if (!(epoint = new Endpoint(p_serial, 0, 0))) + if (!(epoint = new Endpoint(p_serial, 0))) FATAL("No memory for Endpoint instance\n"); if (!(epoint->ep_app = new DEFAULT_ENDPOINT_APP(epoint))) FATAL("No memory for Endpoint Application instance\n"); @@ -746,6 +746,7 @@ void Pdss1::setup_ind(unsigned long prim, unsigned long dinfo, void *data) message = message_create(p_serial, ACTIVE_EPOINT(p_epointlist), PORT_TO_EPOINT, MESSAGE_SETUP); message->param.setup.isdn_port = p_m_portnum; message->param.setup.port_type = p_type; + message->param.setup.dtmf = !p_m_mISDNport->ifport->nodtmf; memcpy(&message->param.setup.dialinginfo, &p_dialinginfo, sizeof(struct dialing_info)); memcpy(&message->param.setup.callerinfo, &p_callerinfo, sizeof(struct caller_info)); memcpy(&message->param.setup.redirinfo, &p_redirinfo, sizeof(struct redir_info)); @@ -1472,7 +1473,7 @@ void Pdss1::retrieve_ind(unsigned long prim, unsigned long dinfo, void *data) cause = -ret; goto reject; } - bchannel_event(p_m_mISDNport, p_m_b_index, B_EVENT_ACTIVATE); + bchannel_event(p_m_mISDNport, p_m_b_index, B_EVENT_USE); /* set hold state */ p_m_hold = 0; @@ -1644,7 +1645,7 @@ void Pdss1::resume_ind(unsigned long prim, unsigned long dinfo, void *data) p_m_delete = 1; return; } - bchannel_event(p_m_mISDNport, p_m_b_index, B_EVENT_ACTIVATE); + bchannel_event(p_m_mISDNport, p_m_b_index, B_EVENT_USE); /* create endpoint */ if (p_epointlist) @@ -3139,6 +3140,9 @@ int stack2manager_nt(void *dat, void *arg) time(&mISDNport->l2establish); PDEBUG(DEBUG_ISDN, "because we are ptp, we set a l2establish timer.\n"); } +#warning debugging usleep crash + printf("JOLLY release port %d\n", mISDNport->portnum); + usleep(1); break; case CC_SETUP | INDICATION: