webrtc/modules/rtp_rtcp/source/rtcp_packet
Sebastian Jansson a72d583271 Fix for potential out of bounds reading in rtcp::RemoteEstimate parser.
packet_size() includes the size of padding, this means that the size
check might incorrectly not trigger even if the payload is empty. In
turn this means that the ReadBigEndian call might read out of bounds
memory.

Refactored the code to reuse the App parsing code more, eliminating
the risk of this particular kind of error.

Bug: chromium:987507
Change-Id: Id8f3e292c3d30460d3cdb551f0a45070fdf8f022
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/146716
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28680}
2019-07-25 10:54:05 +00:00
..
app_unittest.cc Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
app.cc Format almost everything. 2019-07-08 13:45:15 +00:00
app.h Fix for potential out of bounds reading in rtcp::RemoteEstimate parser. 2019-07-25 10:54:05 +00:00
bye_unittest.cc Fully qualify googletest symbols. 2019-04-09 17:18:20 +00:00
bye.cc Format almost everything. 2019-07-08 13:45:15 +00:00
bye.h Change RtcpPacket::PacketReadyCallback to rtc::FunctionView 2017-12-07 11:20:08 +00:00
common_header_unittest.cc Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
common_header.cc Stop using LOG macros in favor of RTC_ prefixed macros. 2017-11-09 11:56:32 +00:00
common_header.h Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
compound_packet_unittest.cc Change RtcpPacket::PacketReadyCallback to rtc::FunctionView 2017-12-07 11:20:08 +00:00
compound_packet.cc Change RtcpPacket::PacketReadyCallback to rtc::FunctionView 2017-12-07 11:20:08 +00:00
compound_packet.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
dlrr_unittest.cc Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
dlrr.cc Move some numeric utility code from rtc_base/ to rtc_base/numerics/ 2017-11-22 11:21:47 +00:00
dlrr.h Delete unneeded includes of basictypes.h. 2018-05-21 19:35:08 +00:00
extended_jitter_report_unittest.cc Fully qualify googletest symbols. 2019-04-09 17:18:20 +00:00
extended_jitter_report.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
extended_jitter_report.h Change RtcpPacket::PacketReadyCallback to rtc::FunctionView 2017-12-07 11:20:08 +00:00
extended_reports_unittest.cc Fully qualify googletest symbols. 2019-04-09 17:18:20 +00:00
extended_reports.cc Parse XR, FIR and PLI in rtc_event_log_parser.cc 2019-02-13 19:11:42 +00:00
extended_reports.h Parse XR, FIR and PLI in rtc_event_log_parser.cc 2019-02-13 19:11:42 +00:00
fir_unittest.cc Fully qualify googletest symbols. 2019-04-09 17:18:20 +00:00
fir.cc Parse XR, FIR and PLI in rtc_event_log_parser.cc 2019-02-13 19:11:42 +00:00
fir.h Parse XR, FIR and PLI in rtc_event_log_parser.cc 2019-02-13 19:11:42 +00:00
loss_notification_unittest.cc Create new RTCP feedback message - LossIndication 2019-01-24 12:21:00 +00:00
loss_notification.cc Connect LossNotificationController to RtpRtcp 2019-02-25 16:08:35 +00:00
loss_notification.h Connect LossNotificationController to RtpRtcp 2019-02-25 16:08:35 +00:00
nack_unittest.cc Format almost everything. 2019-07-08 13:45:15 +00:00
nack.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
nack.h Remove clang:find_bad_constructs suppression from logging (part 1). 2018-09-05 08:33:17 +00:00
pli_unittest.cc Fully qualify googletest symbols. 2019-04-09 17:18:20 +00:00
pli.cc Parse XR, FIR and PLI in rtc_event_log_parser.cc 2019-02-13 19:11:42 +00:00
pli.h Parse XR, FIR and PLI in rtc_event_log_parser.cc 2019-02-13 19:11:42 +00:00
psfb.cc Move kFeedbackMessageType from Remb to Psfb 2019-02-24 00:11:33 +00:00
psfb.h Move kFeedbackMessageType from Remb to Psfb 2019-02-24 00:11:33 +00:00
rapid_resync_request_unittest.cc Fully qualify googletest symbols. 2019-04-09 17:18:20 +00:00
rapid_resync_request.cc Change RtcpPacket::PacketReadyCallback to rtc::FunctionView 2017-12-07 11:20:08 +00:00
rapid_resync_request.h Delete unneeded includes of basictypes.h. 2018-05-21 19:35:08 +00:00
receiver_report_unittest.cc Fully qualify googletest symbols. 2019-04-09 17:18:20 +00:00
receiver_report.cc Remove clang:find_bad_constructs suppression from logging (part 1). 2018-09-05 08:33:17 +00:00
receiver_report.h Format almost everything. 2019-07-08 13:45:15 +00:00
remb_unittest.cc Fully qualify googletest symbols. 2019-04-09 17:18:20 +00:00
remb.cc Remove Remb::kFeedbackMessageType 2019-03-28 10:39:36 +00:00
remb.h Remove Remb::kFeedbackMessageType 2019-03-28 10:39:36 +00:00
remote_estimate_unittest.cc Adds remote estimate RTCP packet. 2019-07-24 10:17:26 +00:00
remote_estimate.cc Fix for potential out of bounds reading in rtcp::RemoteEstimate parser. 2019-07-25 10:54:05 +00:00
remote_estimate.h Fix for potential out of bounds reading in rtcp::RemoteEstimate parser. 2019-07-25 10:54:05 +00:00
report_block_unittest.cc Parse the number of packets lost in RTCP SR as a signed integer. 2018-08-08 16:44:11 +00:00
report_block.cc Parse the number of packets lost in RTCP SR as a signed integer. 2018-08-08 16:44:11 +00:00
report_block.h Delete unneeded includes of basictypes.h. 2018-05-21 19:35:08 +00:00
rrtr_unittest.cc Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
rrtr.cc Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
rrtr.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
rtpfb.cc Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
rtpfb.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
sdes_unittest.cc Remove simple stringstream usages. 2018-09-06 12:53:19 +00:00
sdes.cc Format almost everything. 2019-07-08 13:45:15 +00:00
sdes.h Delete unneeded includes of basictypes.h. 2018-05-21 19:35:08 +00:00
sender_report_unittest.cc Fully qualify googletest symbols. 2019-04-09 17:18:20 +00:00
sender_report.cc Fix clang style errors in rtp_rtcp and dependant targets 2018-02-07 09:48:28 +00:00
sender_report.h Fix clang style errors in rtp_rtcp and dependant targets 2018-02-07 09:48:28 +00:00
target_bitrate_unittest.cc Replace rtc::Optional with absl::optional in modules/rtp_rtcp 2018-06-15 09:53:35 +00:00
target_bitrate.cc Move some numeric utility code from rtc_base/ to rtc_base/numerics/ 2017-11-22 11:21:47 +00:00
target_bitrate.h Delete unneeded includes of basictypes.h. 2018-05-21 19:35:08 +00:00
tmmb_item.cc Stop using LOG macros in favor of RTC_ prefixed macros. 2017-11-09 11:56:32 +00:00
tmmb_item.h Delete unneeded includes of basictypes.h. 2018-05-21 19:35:08 +00:00
tmmbn_unittest.cc Fully qualify googletest symbols. 2019-04-09 17:18:20 +00:00
tmmbn.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
tmmbn.h Delete unneeded includes of basictypes.h. 2018-05-21 19:35:08 +00:00
tmmbr_unittest.cc Fully qualify googletest symbols. 2019-04-09 17:18:20 +00:00
tmmbr.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
tmmbr.h Delete unneeded includes of basictypes.h. 2018-05-21 19:35:08 +00:00
transport_feedback_unittest.cc Format almost everything. 2019-07-08 13:45:15 +00:00
transport_feedback.cc Reland "Reland "Improving robustness of feedback matching code in event log parser."" 2019-05-02 16:10:37 +00:00
transport_feedback.h Reland "Reland "Improving robustness of feedback matching code in event log parser."" 2019-05-02 16:10:37 +00:00