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

fix wifinina UDP send #635

Merged
merged 1 commit into from
Jan 10, 2024
Merged

Conversation

scottfeldman
Copy link
Contributor

Fix an error I introduced in porting wifinina to netdev. The driver was starting a client on the socket once, during Connect. The first UDP send on the socket would succeed, any subsequent sends would fail. The fix is to start the client on the socket for each UDP send.

I think I see the logic in this design, so the fix makes sense. If the device was sending to many UDP clients, it could use a single socket, but change the dst addr for each send. The pkt data would be queued to hw just once, and then sent from hw to each client dst addr. This would be a real efficient way to multicast to many clients.

Fix an error I introduced in porting wifinina to netdev.  The driver was
starting a client on the socket once, during Connect.  The first UDP
send on the socket would succeed, any subsequent sends would fail.  The
fix is to start the client on the socket for each UDP send.

I think I see the logic in this design, so the fix makes sense.  If the
device was sending to many UDP clients, it could use a single socket,
but change the dst addr for each send.  The pkt data would be queued to
hw just once, and then sent from hw to each client dst addr.  This would
be a real efficient way to multicast to many clients.
@deadprogram
Copy link
Member

Works to fix my problem @scottfeldman thank you very much! Now merging.

@deadprogram deadprogram merged commit 5c0f048 into tinygo-org:dev Jan 10, 2024
1 check passed
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

Successfully merging this pull request may close these issues.

2 participants