Skip to content

Commit c222a45

Browse files
committed
feat(io): TokioIo<T>: PeerAddr
Signed-off-by: katelyn martin <kate@buoyant.io>
1 parent f6fd400 commit c222a45

File tree

3 files changed

+9
-0
lines changed

3 files changed

+9
-0
lines changed

Cargo.lock

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1973,6 +1973,7 @@ dependencies = [
19731973
"async-trait",
19741974
"bytes",
19751975
"futures",
1976+
"hyper-util",
19761977
"linkerd-errno",
19771978
"pin-project",
19781979
"tokio",

linkerd/io/Cargo.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ default = []
1616
async-trait = "0.1"
1717
futures = { version = "0.3", default-features = false }
1818
bytes = { workspace = true }
19+
hyper-util = { workspace = true, features = ["tokio"] }
1920
linkerd-errno = { path = "../errno" }
2021
tokio = { version = "1", features = ["io-util", "net"] }
2122
tokio-test = { version = "0.4", optional = true }

linkerd/io/src/lib.rs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,3 +76,10 @@ impl PeerAddr for tokio::io::DuplexStream {
7676
Ok(([0, 0, 0, 0], 0).into())
7777
}
7878
}
79+
80+
impl<T: PeerAddr> PeerAddr for hyper_util::rt::tokio::TokioIo<T> {
81+
#[inline]
82+
fn peer_addr(&self) -> Result<SocketAddr> {
83+
self.inner().peer_addr()
84+
}
85+
}

0 commit comments

Comments
 (0)