incorrect CRC computation

Bug #481572 reported by Cédric Baudoin
18
This bug affects 3 people
Affects Status Importance Assigned to Milestone
rohc
Status tracked in Rohc-main
1.2.x
Fix Released
High
Didier Barvaux
Rohc-main
Fix Released
High
Didier Barvaux

Bug Description

In RoHCv1.2.0, the CRC for compressed packets (UOR-*, UO-*....) is being computed over the entire 'uncompressed header' rather then following the guidelines provided in section5.9 (of RFC3095) for CRC coverage and computation. RFC3095 mentions that for CRC-3 & CRC-7 the uncompressed header should be divided in 'CRC-Static' and 'CRC-Dynamic' fields and the CRC should be computed. This is not followed in the RoHCv1.2.0 code.

Changed in rohc:
status: New → Confirmed
description: updated
Revision history for this message
Julien BERNARD (j-bernard) wrote :

Here is a patch for correct CRC computation for the main branch.
For the moment, the CRC-STATIC is always computed although it should be saved and computed only if a 'STATIC' field change.

Revision history for this message
Didier Barvaux (didier-barvaux) wrote :

Do not fix the problem on the 1.2.x branch as it will change the format of some ROHC packets. Compatibility between 1.2.x releases must be preserved. Update the "known problems" section in README to mention the bug. See http://bazaar.launchpad.net/~didier-barvaux/rohc/1.2.x/revision/109

Revision history for this message
Didier Barvaux (didier-barvaux) wrote :

Fixed in trunk for next 1.3.0 release. The CRC computation could be improved later by storing CRC-STATIC in the context. This would avoid CRC-STATIC re-computation for every packet. See http://bazaar.launchpad.net/~didier-barvaux/rohc/main/revision/122 for commit details.

Patch provided by Julien Bernard. Many thanks to him.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.