diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/gsm/lapdm.c | 8 | 
1 files changed, 4 insertions, 4 deletions
| diff --git a/src/gsm/lapdm.c b/src/gsm/lapdm.c index 3d2f3d83..e9ce881b 100644 --- a/src/gsm/lapdm.c +++ b/src/gsm/lapdm.c @@ -792,7 +792,7 @@ static int rslms_rx_rll_est_req(struct msgb *msg, struct lapdm_datalink *dl)  	/* Remove RLL header from msgb and set length to L3-info */  	msgb_pull_l2h(msg);  	msg->len = length; -	msg->tail = msg->data + length; +	msg->tail = msg->l3h + length;  	/* prepare prim */  	osmo_prim_init(&dp.oph, 0, PRIM_DL_EST, PRIM_OP_REQUEST, msg); @@ -845,7 +845,7 @@ static int rslms_rx_rll_udata_req(struct msgb *msg, struct lapdm_datalink *dl)  	/* Remove RLL header from msgb and set length to L3-info */  	msgb_pull_l2h(msg);  	msg->len = length; -	msg->tail = msg->data + length; +	msg->tail = msg->l3h + length;  	/* Push L1 + LAPDm header on msgb */  	msg->l2h = msgb_push(msg, 4 + !ui_bts); @@ -881,7 +881,7 @@ static int rslms_rx_rll_data_req(struct msgb *msg, struct lapdm_datalink *dl)  	/* Remove RLL header from msgb and set length to L3-info */  	msgb_pull_l2h(msg);  	msg->len = length; -	msg->tail = msg->data + length; +	msg->tail = msg->l3h + length;  	/* prepare prim */  	osmo_prim_init(&dp.oph, 0, PRIM_DL_DATA, PRIM_OP_REQUEST, msg); @@ -938,7 +938,7 @@ static int rslms_rx_rll_res_req(struct msgb *msg, struct lapdm_datalink *dl)  	/* Remove RLL header from msgb and set length to L3-info */  	msgb_pull_l2h(msg);  	msg->len = length; -	msg->tail = msg->data + length; +	msg->tail = msg->l3h + length;  	/* prepare prim */  	osmo_prim_init(&dp.oph, 0, (msg_type == RSL_MT_RES_REQ) ? PRIM_DL_RES | 
