diff options
author | Ivan Kluchnikov <kluchnikovi@gmail.com> | 2012-06-12 18:14:49 +0400 |
---|---|---|
committer | Ivan Kluchnikov <kluchnikovi@gmail.com> | 2012-06-12 18:14:49 +0400 |
commit | 634771173648acd39c44280e673563a53381b2f7 (patch) | |
tree | 3424ed60fac82c41a29509996e1bc22b9a788b55 | |
parent | 5e0df9354bb78be5816e14246b80cc09c68e961f (diff) |
Fixed gprs_rlcmac_rcv_data_block() function.
Countdown Value = 0 means, that PCU received the last data block in TBF and we should ignore all next data blocks.
-rw-r--r-- | gprs_rlcmac.cpp | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/gprs_rlcmac.cpp b/gprs_rlcmac.cpp index 955b6b36..b0aa4a1e 100644 --- a/gprs_rlcmac.cpp +++ b/gprs_rlcmac.cpp @@ -550,10 +550,7 @@ int gprs_rlcmac_rcv_data_block(bitvec *rlc_block) if (ul_data_block->CV == 0) { // Recieved last Data Block in this sequence. gsmtap_send_llc(tbf->rlc_data, tbf->data_index); - if (!((ul_data_block->E_1 == 0)&&(ul_data_block->M[0] == 0)&&(ul_data_block->E[0] == 1))) - tbf->state = GPRS_RLCMAC_WAIT_NEXT_DATA_SEQ; - else - tbf->state = GPRS_RLCMAC_WAIT_DATA_SEQ_START; + tbf->state = GPRS_RLCMAC_WAIT_NEXT_DATA_SEQ; gprs_rlcmac_tx_ul_ud(tbf); } else { tbf->bsn = ul_data_block->BSN; @@ -568,10 +565,7 @@ int gprs_rlcmac_rcv_data_block(bitvec *rlc_block) if (ul_data_block->CV == 0) { // Recieved last Data Block in this sequence. gsmtap_send_llc(tbf->rlc_data, tbf->data_index); - if (!((ul_data_block->E_1 == 0)&&(ul_data_block->M[0] == 0)&&(ul_data_block->E[0] == 1))) - tbf->state = GPRS_RLCMAC_WAIT_NEXT_DATA_SEQ; - else - tbf->state = GPRS_RLCMAC_WAIT_DATA_SEQ_START; + tbf->state = GPRS_RLCMAC_WAIT_NEXT_DATA_SEQ; gprs_rlcmac_tx_ul_ud(tbf); } else { tbf->bsn = ul_data_block->BSN; |