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

Remove struct typedefs from the header file #36

Closed
pavel-kirienko opened this issue Jul 4, 2023 · 1 comment
Closed

Remove struct typedefs from the header file #36

pavel-kirienko opened this issue Jul 4, 2023 · 1 comment
Assignees
Milestone

Comments

@pavel-kirienko
Copy link
Member

@pavel-kirienko pavel-kirienko self-assigned this Jul 4, 2023
@pavel-kirienko pavel-kirienko added this to the v1.0 milestone Jul 4, 2023
pavel-kirienko added a commit that referenced this issue Jul 12, 2023
pavel-kirienko added a commit that referenced this issue Jul 22, 2023
…O reassembly support (#38)

Close #36

Add RX frame parser (a simple function) with tests.

Update the RX pipeline as described in https://forum.opencyphal.org/t/refined-requirements-for-the-rx-pipeline-in-libudpard/1938.

Pros:

- Zero-copy RX pipeline

Cons:

- The `udpardRx*Receive` functions take ownership of the payload buffer.
- The memory usage pattern depends on the MTU of the transmitting node
even for the same extent. Small MTU --> more payload fragments --> more
memory fragments to keep, and vice versa.

One missing feature is a trivial helper function that takes payload
fragments and returns a contiguous chunk of memory instead (this is
expensive both memory-wise and time-wise).
@pavel-kirienko
Copy link
Member Author

Fixed in #38

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

No branches or pull requests

1 participant