Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

[STALE] Model TCP protocol and implement a client#1130

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 ourterms of service andprivacy statement. We’ll occasionally send you account related emails.

Already on GitHub?Sign in to your account

Draft
codyd51 wants to merge4 commits intorust-osdev:main
base:main
Choose a base branch
Loading
fromcodyd51:main

Conversation

codyd51
Copy link

@codyd51codyd51 commentedApr 14, 2024
edited by phip1611
Loading

Hi!

Following up onthis discussion in UEFIRC, a downstream consumer ofuefi-rs in which I implemented a UEFI TCP client, this PR ports this TCP protocol modelling / client implementation touefi-rs proper.

I made a basic effort to triage some things that were directly modelled with no accoutrements intouefi-raw, but I'm sure more can be moved here. It would be nice to place types such asTCPv4Protocol inuefi-raw, but this currently contains 'client business logic' and therefore is placed inuefi.

Here are some samples on how the client introduced in this PR can be used to communicate over TCP:

Notes

  • I believe theTCPv4* types introduced by this PR should be renamed toTcpv4 orTcp4 for consistency across the project?
  • Ip4RouteTable (and theIp4IcmpType,Ip4ModeData, andIp4ConfigData types introduced by this PR) should perhaps be renamed toIpv4* for consistency withIpv4Address.
  • I made a fair bit of effort during the development of this code to squash memory leaks, UAFs, and other shenanigans. However, I am not absolutely certain that no issues exist. The code works fine for my use case (mostly receiving, occasional transmitting) and I have not noticed memory leaks.
  • The client implementation is incomplete. For example, I have not bothered to implement acting as a TCP server.
  • The client code currently contains some 'business logic' that may not be desirable to include inuefi-rs, or may not be desirable to include as-is. For example, the client currently internally waits up to 10 seconds for a DHCP-assigned IP. You might wish to just include the protocol definitions inuefi-raw and omit all the business logic, which would be fine and makes sense.

Thank you for taking the time to get this PR ready for upstream inclusion!

Steps to Undraft

  • Restart the work (PR is stale for almost 1.5 years now)

Checklist

  • [☑️] Sensible git history (for example, squash "typo" or "fix" commits). See theRewriting History guide for help.
  • [☑️] Update the changelog (if necessary)

phip1611 reacted with thumbs up emojinicholasbishop reacted with heart emoji
@phip1611phip1611 changed the titleModel TCP protocol and implement a client[STALE] Model TCP protocol and implement a clientJun 22, 2025
@phip1611phip1611 marked this pull request as draftJune 22, 2025 10:34
Sign up for freeto join this conversation on GitHub. Already have an account?Sign in to comment
Reviewers
No reviews
Assignees
No one assigned
Labels
None yet
Projects
None yet
Milestone
No milestone
Development

Successfully merging this pull request may close these issues.

1 participant
@codyd51

[8]ページ先頭

©2009-2025 Movatter.jp