You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Hi there, we (Rust group @sslab-gatech) are scanning crates on crates.io for potential soundness bugs. We noticed that ChannelCount is a public and safe trait. However in these two methods:
If a ChannelCount implementation overrides sample_size and returns a bigger number than expected then this could cause reading out of bounds into data. Or it could cause pulseaudio to write from past the data buffer.
Should ChannelCount or the sample_size method be marked as unsafe and this invariant documented to make sure that this critical property is observed? Alternatively, the ChannelCount trait could be sealed to prevent anyone implementing it externally.
The text was updated successfully, but these errors were encountered:
Hi there, we (Rust group @sslab-gatech) are scanning crates on crates.io for potential soundness bugs. We noticed that
ChannelCount
is a public and safe trait. However in these two methods:rust-pulse-simple/src/lib.rs
Lines 142 to 147 in a2aafc1
rust-pulse-simple/src/lib.rs
Lines 178 to 184 in a2aafc1
If a
ChannelCount
implementation overridessample_size
and returns a bigger number than expected then this could cause reading out of bounds into data. Or it could cause pulseaudio to write from past the data buffer.Should
ChannelCount
or thesample_size
method be marked asunsafe
and this invariant documented to make sure that this critical property is observed? Alternatively, theChannelCount
trait could be sealed to prevent anyone implementing it externally.The text was updated successfully, but these errors were encountered: