Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MRPD - overflow of PDU to be transmitted bug #100

Open
andrew-elder opened this issue Oct 22, 2014 · 2 comments
Open

MRPD - overflow of PDU to be transmitted bug #100

andrew-elder opened this issue Oct 22, 2014 · 2 comments
Labels

Comments

@andrew-elder
Copy link

In msrp.c, the logic to detect when a frame is "too full" is not correct. Crashes (segmentation faults) have been observed when many attributes are declared. The problem is that the conditional used in the while() loop to encode attributes is incorrect. This definitely applies to msrp_emit_XXXXX() functions. It may also apply to equivalent mvrp and mmrp functions.

@davidcemin
Copy link
Contributor

so to reproduce this issue I just have to declare several attributes?

@andrew-elder
Copy link
Author

On 10/22/2014 11:06 AM, David Cemin wrote:

so to reproduce this issue I just have to declare several attributes?


Reply to this email directly or view it on GitHub
#100 (comment).

If you change the line below to initialize count to 256 it will happen.
https://github.com/AVnu/Open-AVB/blob/open-avb-next/daemons/mrpd/tests/simple/msrp_tests.cpp#L149

Actually, you'll run into one other bug first, but in principle that is all
you need to do.
I need to fix and close out issue#100 before I can continue to work on this
issue.
And I need to add mvrp and mmrp unit tests for issue#100 as well to make
sure that they are covered.

Andrew Elder
AudioScience, Inc.
+1-585-271-8870
www.audioscience.com

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants