readded dummy process for MT_FACILITY (callref will be -1 for l4)

This commit is contained in:
crich 2006-08-04 08:44:07 +00:00
parent 58afdc500a
commit 4914853f3d
1 changed files with 14 additions and 7 deletions

View File

@ -1,4 +1,4 @@
/* $Id: net_l3.c,v 1.13 2006/07/31 09:52:21 crich Exp $
/* $Id: net_l3.c,v 1.14 2006/08/04 08:44:07 crich Exp $
*
* Author Karsten Keil (keil@isdn4linux.de)
*
@ -16,7 +16,7 @@
#include "helper.h"
// #include "debug.h"
const char *l3_revision = "$Revision: 1.13 $";
const char *l3_revision = "$Revision: 1.14 $";
#define PROTO_DIS_EURO 8
@ -620,8 +620,9 @@ l3dss1_facility(layer3_proc_t *pc, int pr, void *arg)
msg_t *umsg,*msg = arg;
FACILITY_t *fac;
umsg = prep_l3data_msg(CC_FACILITY | INDICATION, pc->ces |
(pc->callref << 16), sizeof(FACILITY_t), msg->len, NULL);
umsg = prep_l3data_msg(CC_FACILITY | INDICATION,
pc->callref>0?pc->ces | (pc->callref << 16):-1,
sizeof(FACILITY_t), msg->len, NULL);
if (!umsg)
return;
fac = (FACILITY_t *)(umsg->data + mISDNUSER_HEAD_SIZE);
@ -2598,9 +2599,15 @@ dl_data_mux(layer3_t *l3, mISDNuser_head_t *hh, msg_t *msg)
free_msg(msg);
return(0);
} else if (cr == -1) { /* Dummy Callref */
// if (l3m.mt == MT_FACILITY)
// l3dss1_facility(l3->dummy, hh->prim, msg);
// else if (l3->debug & L3_DEB_WARN)
if (l3m.mt == MT_FACILITY) {
layer3_proc_t dummy;
memset( &dummy, 0, sizeof(layer3_proc_t));
dummy.l3 = l3;
dummy.ces = 0;
dummy.callref = -1;
l3dss1_facility(&dummy, hh->prim, msg);
}
else if (l3->debug & L3_DEB_WARN)
l3_debug(l3, "dss1 dummy Callref (no facility msg)");
free_msg(msg);
return(0);