about summary refs log tree commit diff
path: root/src/libstd/sys_common
diff options
context:
space:
mode:
authorDanek Duvall <danek.duvall@oracle.com>2017-08-06 20:12:53 -0700
committerDanek Duvall <danek.duvall@oracle.com>2017-08-07 09:07:26 -0700
commit378a6188640f4e0fb2cc075d6f6062d53aadbb7a (patch)
tree87280dfe19284f99639ca0b936264f8459b0b750 /src/libstd/sys_common
parented16b0a1de57bac50477ad83e35d648688cc0ded (diff)
downloadrust-378a6188640f4e0fb2cc075d6f6062d53aadbb7a.tar.gz
rust-378a6188640f4e0fb2cc075d6f6062d53aadbb7a.zip
addrinfo hint in lookup_host() needs clean initialization on all platforms
Fixes #43649
Diffstat (limited to 'src/libstd/sys_common')
-rw-r--r--src/libstd/sys_common/net.rs12
1 files changed, 2 insertions, 10 deletions
diff --git a/src/libstd/sys_common/net.rs b/src/libstd/sys_common/net.rs
index 5775dd4f1fc..1ca39ff9d4a 100644
--- a/src/libstd/sys_common/net.rs
+++ b/src/libstd/sys_common/net.rs
@@ -165,16 +165,8 @@ pub fn lookup_host(host: &str) -> io::Result<LookupHost> {
     init();
 
     let c_host = CString::new(host)?;
-    let hints = c::addrinfo {
-        ai_flags: 0,
-        ai_family: 0,
-        ai_socktype: c::SOCK_STREAM,
-        ai_protocol: 0,
-        ai_addrlen: 0,
-        ai_addr: ptr::null_mut(),
-        ai_canonname: ptr::null_mut(),
-        ai_next: ptr::null_mut()
-    };
+    let mut hints: c::addrinfo = unsafe { mem::zeroed() };
+    hints.ai_socktype = c::SOCK_STREAM;
     let mut res = ptr::null_mut();
     unsafe {
         match cvt_gai(c::getaddrinfo(c_host.as_ptr(), ptr::null(), &hints, &mut res)) {