/* next loop */
p_m_crypt_msg_current = 0;
p_m_crypt_msg_loops--;
+// puts("eine loop weniger");
}
/* new length */
break;
}
p_m_crypt_msg_current = 0; /* reset */
- p_m_crypt_msg_loops = 3; /* enable */
+ p_m_crypt_msg_loops = 6; /* enable */
#if 0
/* disable txmix, or we get corrupt data due to audio process */
if (p_m_txmix && p_m_b_index>=0)
#ifdef SOCKET_MISDN
int mISDN_handler(void)
{
- int ret;
+ int ret, work = 0;
struct mISDNport *mISDNport;
class PmISDN *isdnport;
int i;
ret = recv(mISDNport->b_stack[i], buffer, sizeof(buffer), 0);
if (ret >= MISDN_HEADER_LEN)
{
+ work = 1;
switch(hh->prim)
{
/* we don't care about confirms, we use rx data to sync tx */
/* we receive audio data, we respond to it AND we send tones */
case PH_DATA_IND:
case DL_DATA_IND:
+ case PH_SIGNAL_IND:
case PH_CONTROL_IND:
if (mISDNport->b_port[i])
mISDNport->b_port[i]->bchannel_receive(hh, buffer+MISDN_HEADER_LEN, ret-MISDN_HEADER_LEN);
mISDNport = mISDNport->next;
}
+ /* if we received at least one b-frame, we will return 1 */
+ return(work);
}
#else
int mISDN_handler(void)