about summary refs log tree commit diff
path: root/src/libstd/sys_common
diff options
context:
space:
mode:
authorLinus Unnebäck <linus@folkdatorn.se>2019-03-11 16:07:31 +0000
committerLinus Unnebäck <linus@folkdatorn.se>2019-03-16 11:13:32 +0000
commita7bd36c9e8cdfac6a6edd4124e0d1d99a41b99a2 (patch)
tree17494930a8cd851269bbc8870b621c1b40561cc4 /src/libstd/sys_common
parent52e885628e4317aa3f158622435927eb29b812e9 (diff)
downloadrust-a7bd36c9e8cdfac6a6edd4124e0d1d99a41b99a2.tar.gz
rust-a7bd36c9e8cdfac6a6edd4124e0d1d99a41b99a2.zip
Add peer_addr function to UdpSocket
Diffstat (limited to 'src/libstd/sys_common')
-rw-r--r--src/libstd/sys_common/net.rs6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/libstd/sys_common/net.rs b/src/libstd/sys_common/net.rs
index b9505aaa69b..b77bcee4b9d 100644
--- a/src/libstd/sys_common/net.rs
+++ b/src/libstd/sys_common/net.rs
@@ -472,6 +472,12 @@ impl UdpSocket {
 
     pub fn into_socket(self) -> Socket { self.inner }
 
+    pub fn peer_addr(&self) -> io::Result<SocketAddr> {
+        sockname(|buf, len| unsafe {
+            c::getpeername(*self.inner.as_inner(), buf, len)
+        })
+    }
+
     pub fn socket_addr(&self) -> io::Result<SocketAddr> {
         sockname(|buf, len| unsafe {
             c::getsockname(*self.inner.as_inner(), buf, len)