}
-static struct chan_list *init_chan_list(void)
+static struct chan_list *init_chan_list(int orig)
{
struct chan_list *cl=malloc(sizeof(struct chan_list));
}
memset(cl,0,sizeof(struct chan_list));
+
+ cl->orginator=orig;
return cl;
int channel=0, port=0;
struct misdn_bchannel *newbc = NULL;
- struct chan_list *cl=init_chan_list();
+ struct chan_list *cl=init_chan_list(ORG_AST);
sprintf(buf,"%s/%s",misdn_type,(char*)data);
ast_copy_string(buf2,data, 128);
print_bearer(bc);
{
- struct chan_list *ch=init_chan_list();
+ struct chan_list *ch=init_chan_list(ORG_MISDN);
struct ast_channel *chan;
if (!ch) { chan_misdn_log(-1, bc->port, "cb_events: malloc for chan_list failed!\n"); return 0;}
send_cause2ast(ch->ast,bc);
+
+ chan_misdn_log(0,bc->port," org:%d nt:%d, inbandavail:%d state:%d\n", ch->orginator, bc->nt, misdn_inband_avail(bc), ch->state);
if ( ch->orginator==ORG_AST && !bc->nt && misdn_inband_avail(bc) && ch->state != MISDN_CONNECTED) {
/* If there's inband information available (e.g. a
recorded message saying what was wrong with the