197 Commits

Author SHA1 Message Date
Dario Nieuwenhuis
59cb1531c9 examples: ensure at least 3 sockets to avoid running out (DHCP, DNS, the user's) 2024-08-07 14:58:20 +02:00
Dario Nieuwenhuis
e89ff7d129
Merge pull request #3219 from mirkomartn/bound-dns-servers
embassy-net: dns: bound the dns_servers slice
2024-07-29 21:36:35 +00:00
Gasper Stukelj
c5d077a2c6 embassy-net: dns: bound the dns_servers slice
`smoltcp::socket::dns::Socket::update_servers()` will
panic if a slice exceeding a fixed length is passed
to it. This is can be especially inconvenient when
using DHCP config.

Avoid panicking by using at most `DNS_MAX_SERVER_COUNT`
DNS servers from the config.
2024-07-29 23:24:44 +02:00
Dario Nieuwenhuis
f32b711e4a
Merge pull request #3186 from MathiasKoch/embassy-net/socket-timeout
(embassy-net): Allow setting socket timeout for embedded-nal TcpClient
2024-07-18 11:49:59 +00:00
Dario Nieuwenhuis
14de5e5a3c
Merge pull request #3191 from mirkomartn/fix-doc
embassy-net: fix minor typo in doc
2024-07-18 11:49:38 +00:00
Gasper Stukelj
dc84b4f45a embassy-net: fix minor typo in doc 2024-07-18 13:37:47 +02:00
Tarun Singh
a716a3f006 Reduced define for 'unreachable!' to a single macro rule 2024-07-17 17:05:52 -04:00
Mathias
01f709c1d9 Allow setting socket timeout for embedded-nal TcpClient, such that every new socket from that client gets the timeout 2024-07-17 11:23:12 +02:00
trepidacious
abe7f9921e Update ReadReady and WriteReady implementations
Update `ReadReady` for `TcpReader` to match implementation for `TcpSocket`
Update `WriteReady` implementations to use `can_recv()` rather than `may_recv()`, since this will check that the transmit buffer is not full.
2024-07-01 20:59:27 +01:00
trepidacious
c3be54f96b Add check for closed connection to read_ready() 2024-06-30 17:47:04 +01:00
Dario Nieuwenhuis
6a4ac5bd60 Add collapse_debuginfo to fmt.rs macros.
This makes location info in defmt logs point to the code calling the macro,
instead of always to fmt.rs as before. Fix works with nightlies
starting with today's, and stable 1.81+.
2024-06-17 01:38:57 +02:00
Aurélien Jacobs
7f3805437c dns: properly handle AddrType::Either in get_host_by_name() 2024-06-11 11:39:07 +02:00
Philip Reimer
673d11f49f add send_queue and recv_queue 2024-06-05 15:28:18 -06:00
davidskula
87aca974b1 impl ReadReady for tcp call can_recv() insted of may_recv() 2024-05-07 16:07:00 +02:00
Dario Nieuwenhuis
5732ee7ca9 Reduce use of the full futures crate. 2024-04-26 23:22:25 +02:00
chrysn
49435f79b3 fixup! net/udp: Relay full UdpMetadata instead of only remote endpoint in poll_ functions 2024-04-19 15:54:56 +02:00
chrysn
2c7c39d1db fixup! net/udp: Relay full UdpMetadata instead of only remote endpoint in poll_ functions 2024-04-19 15:51:27 +02:00
chrysn
e6bf6c7a49 Merge branch 'main' into prep-embedded-nal-async-udp 2024-04-19 15:22:57 +02:00
chrysn
8fe88847d8 fixup! net/udp: Relay full UdpMetadata instead of only remote endpoint in poll_ functions 2024-04-15 10:02:35 +02:00
Gustav Toft
b578d3e645 Removed generic type parameter. 2024-04-11 10:34:17 +02:00
Gustav Toft
ec0896037a Removed Result for send and poll_send. 2024-04-11 08:29:06 +02:00
Gustav Toft
6663be0b36 Fixed commented issues. 2024-04-10 09:07:20 +02:00
chrysn
7f1bedcee0 net/udp: Relay full UdpMetadata instead of only remote endpoint in poll_ functions
This is a breaking change for users of the poll_ functions. (Some might
not notice if they already pass in an IpEndpoint into poll_send_to, or
discard that item in poll_recv_from).
2024-04-08 11:59:21 +02:00
Gustav Toft
a373633d0d Merge branch 'main' of https://github.com/GustavToft/embassy 2024-04-04 15:52:44 +02:00
Gustav Toft
0427c442ea Implement raw sockets in embassy-net 2024-04-04 15:51:25 +02:00
Dario Nieuwenhuis
3d842dac85 fmt: disable "unused" warnings. 2024-03-20 14:53:19 +01:00
Dario Nieuwenhuis
250cfa5f5f net/tcp: fix flush() not waiting for ACK of FIN. 2024-02-21 21:13:10 +01:00
Stefan Gehr
b9d0069671
correct spelling of the word "receive" 2024-02-03 14:56:31 +01:00
Dario Nieuwenhuis
01b0af5a84 net: add packet-trace feature. 2024-01-10 14:06:15 +01:00
Scott Mabin
f85898771b New embassy-net release 2024-01-04 16:06:59 +00:00
swanandx
4a59fbdedc feat: impl ReadReady and WriteReady for tcp 2024-01-03 18:17:04 +05:30
Loïc Damien
d32fe0ccdc Add set_hop_limit to UDP sockets 2023-12-28 22:15:16 +01:00
Dario Nieuwenhuis
f625f6b893 Upgrade to smoltcp v0.11. 2023-12-23 21:05:26 +01:00
Barnaby Walters
d63590cb61 [embassy-net] Auto-documented feature flags 2023-12-22 23:20:43 +01:00
Ulf Lilleengen
0acf7b09c3 chore: replace make_static! macro usage with non-macro version 2023-12-21 10:29:57 +01:00
Dario Nieuwenhuis
c6989dfbca Remove nightly and unstable-traits features in preparation for 1.75. 2023-11-29 17:26:33 +01:00
Stephan Wolski
be17e1b363
populate medium in DriverAdapter struct in IGMP code 2023-11-19 17:11:56 -05:00
Emil Fresk
fd670a9ae5 Use smoltcp constant in results from DNS 2023-11-14 08:50:51 +01:00
Dario Nieuwenhuis
4647df14b1 Update heapless to v0.8, embedded-nal-async to v0.7 2023-11-10 16:43:53 +01:00
Dániel Buga
15660cfc68 Ensure TcpIo not blocking when reading into empty slice 2023-11-06 09:12:16 +01:00
Dániel Buga
ad07ea0290 Re-add impl_trait_projections 2023-10-30 19:10:45 +01:00
Gabriel Górski
18c9bcd44a net: Reset DHCP socket when the link up is detected
Previously, because DHCP DISCOVER is sent before the link is
established, socket has to timeout first. Which takes extra 10 s.

Now if the state of the link changed to up, socket is explicitly reset
so the DISCOVER is repeated much earlier and DHCP configuration is
acquired much faster.
2023-10-23 11:07:21 +02:00
Dario Nieuwenhuis
3cbc687424 net/driver: remove Medium, make HardwareAddress non_exhaustive. 2023-10-18 05:28:16 +02:00
Dániel Buga
69bb455c60 Wake stack's task after queueing a DNS query 2023-10-14 13:35:53 +02:00
Dario Nieuwenhuis
32b89eeba1 net: remove atomic-polyfill. 2023-10-12 02:07:26 +02:00
Dario Nieuwenhuis
534eb960e9 net: add support for dhcp hostname option. 2023-10-07 01:33:21 +02:00
Ulf Lilleengen
65ed19aae2
Merge pull request #2014 from bugadani/udp
Reexport IpListenEndpoint for TCP
2023-10-05 16:13:10 +00:00
Dániel Buga
be9c05fbc9 Reexport IpListenEndpoint for TCP 2023-10-05 17:02:25 +02:00
Dario Nieuwenhuis
eb12114345 Remove impl_trait_projections. 2023-10-02 14:00:49 +02:00
Dario Nieuwenhuis
901f0257bd net: allow non-'static drivers. 2023-09-28 03:47:14 +02:00