diff options
author | Andreas.Eversberg <jolly@eversberg.eu> | 2010-09-26 17:02:36 +0000 |
---|---|---|
committer | Andreas.Eversberg <jolly@eversberg.eu> | 2010-09-26 17:02:36 +0000 |
commit | 88a578f6c93ac72bf1a95b48467651fa74953ecf (patch) | |
tree | c8958dc27236c42d463c193d6e473b6d7e6665ff | |
parent | 4ed601ae4e48e8d480c3e0f5e82160434e6a32c8 (diff) |
[layer23] Minor fixes in lapdm.c
For single burst messages, the length is set from layer2 header.
-rw-r--r-- | src/host/layer23/src/common/lapdm.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/host/layer23/src/common/lapdm.c b/src/host/layer23/src/common/lapdm.c index 95c9ca50..c736e36a 100644 --- a/src/host/layer23/src/common/lapdm.c +++ b/src/host/layer23/src/common/lapdm.c @@ -1376,6 +1376,8 @@ static int lapdm_rx_i(struct msgb *msg, struct lapdm_msg_ctx *mctx) /* send a DATA INDICATION to L3 */ msg->l3h = msg->l2h + 3; msgb_pull_l2h(msg); + msg->len = length; + msg->tail = msg->data + length; rc = send_rslms_rll_l3(RSL_MT_DATA_IND, mctx, msg); } else { /* create rcv_buffer */ @@ -1397,13 +1399,13 @@ static int lapdm_rx_i(struct msgb *msg, struct lapdm_msg_ctx *mctx) /* if the last segment was received */ if (!(msg->l2h[2] & LAPDm_MORE)) { LOGP(DLAPDM, LOGL_INFO, "message in multiple I " - "frames (next message)\n"); + "frames (last message)\n"); rc = send_rslms_rll_l3(RSL_MT_DATA_IND, mctx, dl->rcv_buffer); dl->rcv_buffer = NULL; } else LOGP(DLAPDM, LOGL_INFO, "message in multiple I " - "frames (last message)\n"); + "frames (next message)\n"); msgb_free(msg); } |