aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbors[bot] <26634292+bors[bot]@users.noreply.github.com>2022-06-01 18:09:51 +0000
committerGitHub <[email protected]>2022-06-01 18:09:51 +0000
commitdbff4779eb4c8950cd1dd1689f95646762c6dc55 (patch)
tree507dc2cf5025949cfa23478becc2735783764874
parent0adb4c926b15f9773fb83497a7bf1eb3789286da (diff)
parent8b676e65ade55b740062dcd534088196fb275dad (diff)
Merge #789
789: Embassy net improvements r=lulf a=lulf I found these useful while implementing the TcpClient traits for embedded-nal-async: https://github.com/drogue-iot/drogue-device/blob/shared-tcp-stack/device/src/drivers/tcp/smoltcp.rs Once e-n-a PR is merged, I might add the above client to embassy-net if you think it makes sense. Co-authored-by: Ulf Lilleengen <[email protected]>
-rw-r--r--embassy-net/Cargo.toml1
-rw-r--r--embassy-net/src/lib.rs3
-rw-r--r--embassy-net/src/tcp.rs6
3 files changed, 10 insertions, 0 deletions
diff --git a/embassy-net/Cargo.toml b/embassy-net/Cargo.toml
index 4692c01cb..87982a726 100644
--- a/embassy-net/Cargo.toml
+++ b/embassy-net/Cargo.toml
@@ -22,6 +22,7 @@ defmt = ["dep:defmt", "smoltcp/defmt"]
22tcp = ["smoltcp/socket-tcp"] 22tcp = ["smoltcp/socket-tcp"]
23dns = ["smoltcp/socket-dns"] 23dns = ["smoltcp/socket-dns"]
24dhcpv4 = ["medium-ethernet", "smoltcp/socket-dhcpv4"] 24dhcpv4 = ["medium-ethernet", "smoltcp/socket-dhcpv4"]
25proto-ipv6 = ["smoltcp/proto-ipv6"]
25medium-ethernet = ["smoltcp/medium-ethernet"] 26medium-ethernet = ["smoltcp/medium-ethernet"]
26medium-ip = ["smoltcp/medium-ip"] 27medium-ip = ["smoltcp/medium-ip"]
27 28
diff --git a/embassy-net/src/lib.rs b/embassy-net/src/lib.rs
index 7b5f29f16..243dfda88 100644
--- a/embassy-net/src/lib.rs
+++ b/embassy-net/src/lib.rs
@@ -23,3 +23,6 @@ pub use smoltcp::time::Instant as SmolInstant;
23#[cfg(feature = "medium-ethernet")] 23#[cfg(feature = "medium-ethernet")]
24pub use smoltcp::wire::{EthernetAddress, HardwareAddress}; 24pub use smoltcp::wire::{EthernetAddress, HardwareAddress};
25pub use smoltcp::wire::{IpAddress, IpCidr, Ipv4Address, Ipv4Cidr}; 25pub use smoltcp::wire::{IpAddress, IpCidr, Ipv4Address, Ipv4Cidr};
26
27#[cfg(feature = "proto-ipv6")]
28pub use smoltcp::wire::{Ipv6Address, Ipv6Cidr};
diff --git a/embassy-net/src/tcp.rs b/embassy-net/src/tcp.rs
index 2d81e66bd..35ecf1b0c 100644
--- a/embassy-net/src/tcp.rs
+++ b/embassy-net/src/tcp.rs
@@ -259,6 +259,12 @@ impl<'d> TcpIo<'d> {
259 } 259 }
260} 260}
261 261
262impl embedded_io::Error for ConnectError {
263 fn kind(&self) -> embedded_io::ErrorKind {
264 embedded_io::ErrorKind::Other
265 }
266}
267
262impl embedded_io::Error for Error { 268impl embedded_io::Error for Error {
263 fn kind(&self) -> embedded_io::ErrorKind { 269 fn kind(&self) -> embedded_io::ErrorKind {
264 embedded_io::ErrorKind::Other 270 embedded_io::ErrorKind::Other