struct chan_bchannel *bchannel_first;
struct chan_call *call_first;
-struct chan_bchannel *find_bchannel_addr(unsigned long addr)
+struct chan_bchannel *find_bchannel_handle(unsigned long addr)
{
struct chan_bchannel *bchannel = bchannel_first;
switch(param->bchannel.type)
{
case BCHANNEL_ASSIGN:
- if (find_bchannel_addr(param->bchannel.addr))
+ if ((bchannel = find_bchannel_handle(param->bchannel.handle)))
{
- fprintf(stderr, "error: bchannel addr %x already assigned.\n", param->bchannel.addr);
+ fprintf(stderr, "error: bchannel handle %x already assigned.\n", param->bchannel.handle);
return(-1);
}
/* create bchannel */
bchannel = alloc_bchannel();
- bchannel->addr = param->bchannel.addr;
+ bchannel->addr = param->bchannel.handle;
/* in case, ref is not set, this bchannel instance must
* be created until it is removed again by LCR */
- bchannel->ref = ref;
/* link to call */
if ((call = find_call_ref(ref)))
{
- call->addr = param->bchannel.addr;
+ bchannel->ref = ref;
+ call->addr = param->bchannel.handle;
}
#warning open stack
/* acknowledge */
newparam.bchannel.type = BCHANNEL_ASSIGN_ACK;
- newparam.bchannel.addr = param->bchannel.addr;
+ newparam.bchannel.handle = param->bchannel.handle;
send_message(MESSAGE_BCHANNEL, 0, &newparam);
break;
case BCHANNEL_REMOVE:
- if (!(bchannel = find_bchannel_addr(param->bchannel.addr)))
+ if (!(bchannel = find_bchannel_handle(param->bchannel.handle)))
{
- fprintf(stderr, "error: bchannel addr %x already assigned.\n", param->bchannel.addr);
+ fprintf(stderr, "error: bchannel handle %x not assigned.\n", param->bchannel.handle);
return(-1);
}
/* unlink from call */
#warning close stack
/* acknowledge */
newparam.bchannel.type = BCHANNEL_REMOVE_ACK;
- newparam.bchannel.addr = param->bchannel.addr;
+ newparam.bchannel.handle = param->bchannel.handle;
send_message(MESSAGE_BCHANNEL, 0, &newparam);
break;