projects
/
lcr.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
chan_lcr: added missing memcpy to bchannel_transmit. HDLC data was not send at all!
[lcr.git]
/
bchannel.c
diff --git
a/bchannel.c
b/bchannel.c
index
b154972
..
25b21f3
100644
(file)
--- 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)
{
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;
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;
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;
frm->prim = DL_DATA_REQ;
+ p[len] = 0;
+ CDEBUG(bchannel->call, NULL, "HDLC DSP transmit: '%s'\n",
+ p);
break;
break;
- case 3:
+ case 3:
+ memcpy(p, data, len);
frm->prim = PH_DATA_REQ;
break;
}
frm->prim = PH_DATA_REQ;
break;
}