summaryrefslogtreecommitdiffstats
path: root/bchannel.c
diff options
context:
space:
mode:
authorPeter Schlaile2008-08-21 08:45:30 +0200
committerroot2008-08-21 08:45:30 +0200
commitb8ff0dae45825aa49991e07136f73a0ecb9a85ff (patch)
treee5931a8ac7926e2e5c35ddbfde972d4882165b6f /bchannel.c
parentmake LCR compile again with latest mISDNuser changes (diff)
downloadlcr-b8ff0dae45825aa49991e07136f73a0ecb9a85ff.tar.gz
lcr-b8ff0dae45825aa49991e07136f73a0ecb9a85ff.tar.xz
lcr-b8ff0dae45825aa49991e07136f73a0ecb9a85ff.zip
chan_lcr: added missing memcpy to bchannel_transmit. HDLC data was not send at all!
Diffstat (limited to 'bchannel.c')
-rw-r--r--bchannel.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/bchannel.c b/bchannel.c
index b154972..25b21f3 100644
--- a/bchannel.c
+++ b/bchannel.c
@@ -451,20 +451,25 @@ void bchannel_transmit(struct bchannel *bchannel, unsigned char *data, int len)
return;
switch(bchannel->b_mode)
{
- case 0:
+ case 0:
for (i = 0; i < len; i++)
*p++ = flip_bits[*data++];
frm->prim = DL_DATA_REQ;
break;
- case 1:
+ case 1:
for (i = 0; i < len; i++)
*p++ = flip_bits[*data++];
frm->prim = PH_DATA_REQ;
break;
- case 2:
+ case 2:
+ memcpy(p, data, len);
frm->prim = DL_DATA_REQ;
+ p[len] = 0;
+ CDEBUG(bchannel->call, NULL, "HDLC DSP transmit: '%s'\n",
+ p);
break;
- case 3:
+ case 3:
+ memcpy(p, data, len);
frm->prim = PH_DATA_REQ;
break;
}