After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 522401 - gdpdepay doesn't validate payload CRCs
gdpdepay doesn't validate payload CRCs
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-base
git master
Other Linux
: Normal minor
: 0.10.20
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2008-03-14 12:50 UTC by Michael Smith
Modified: 2008-04-03 15:21 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Fix CRC calculation for event payloads (617 bytes, patch)
2008-03-14 13:29 UTC, Michael Smith
none Details | Review
Check payload CRCs if they're present. (988 bytes, patch)
2008-03-14 13:32 UTC, Michael Smith
none Details | Review

Description Michael Smith 2008-03-14 12:50:37 UTC
gdpdepay doesn't appear to ever call gst_dp_validate_payload() to check the payload against its CRC.

By default, gdppay doesn't set the CRC, so this doesn't matter to most users.

Patch forthcoming.
Comment 1 Michael Smith 2008-03-14 13:28:22 UTC
Upon implementing this, and testing, I found that we didn't set the payload CRCs correctly when doing payload CRCs for events. So, there will be a core patch forthcoming as well.

Comment 2 Michael Smith 2008-03-14 13:29:11 UTC
Created attachment 107290 [details] [review]
Fix CRC calculation for event payloads

Core patch to dataprotocol.c to fix CRC calculation.
Comment 3 Michael Smith 2008-03-14 13:32:05 UTC
Created attachment 107291 [details] [review]
Check payload CRCs if they're present.

Payload CRCs weren't ever being checked, even if set. Call gst_dp_validate_payload() once we have a payload, that will return immediately if we don't have payload CRCs, or check the CRC if present.
Comment 4 Michael Smith 2008-03-27 15:27:28 UTC
    * libs/gst/dataprotocol/dataprotocol.c:
    (gst_dp_packet_from_event_1_0):
      When calculating GDP body CRC, use the correct pointer.
      Fixes part of #522401.

and

    * gst/gdp/gstgdpdepay.c: (gst_gdp_depay_chain):
      Check the body CRC (if set) when depayloading.
      Fixes #522401.