Skip to content

Commit 9ddf6ca

Browse files
use socket2 for sockaddr conversion (#5)
* use socket2 for sockaddr conversion * cargo fmt
1 parent bc5bcf5 commit 9ddf6ca

File tree

4 files changed

+9
-12
lines changed

4 files changed

+9
-12
lines changed

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ am = ["tokio/sync", "crossbeam"]
1818

1919
[dependencies]
2020
ucx1-sys = { version = "0.1", path = "ucx1-sys" }
21-
os_socketaddr = "0.1"
21+
socket2 = "0.4"
2222
futures = "0.3"
2323
futures-lite = "1.11"
2424
lazy_static = "1.4"

src/ucp/endpoint/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,7 @@ impl Endpoint {
128128
worker: &Rc<Worker>,
129129
addr: SocketAddr,
130130
) -> Result<Self, Error> {
131-
let sockaddr = os_socketaddr::OsSocketAddr::from(addr);
131+
let sockaddr = socket2::SockAddr::from(addr);
132132
#[allow(invalid_value)]
133133
#[allow(clippy::uninit_assumed_init)]
134134
let params = ucp_ep_params {

src/ucp/listener.rs

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -39,10 +39,9 @@ impl ConnectionRequest {
3939
let status = unsafe { ucp_conn_request_query(self.handle, &mut attr) };
4040
Error::from_status(status)?;
4141

42-
let sockaddr = unsafe {
43-
os_socketaddr::OsSocketAddr::from_raw_parts(&attr.client_address as *const _ as _, 8)
44-
};
45-
Ok(sockaddr.into_addr().unwrap())
42+
let sockaddr =
43+
unsafe { socket2::SockAddr::new(std::mem::transmute(attr.client_address), 8) };
44+
Ok(sockaddr.as_socket().unwrap())
4645
}
4746
}
4847

@@ -58,7 +57,7 @@ impl Listener {
5857
}
5958
let (sender, recver) = mpsc::unbounded();
6059
let sender = Rc::new(sender);
61-
let sockaddr = os_socketaddr::OsSocketAddr::from(addr);
60+
let sockaddr = socket2::SockAddr::from(addr);
6261
let params = ucp_listener_params_t {
6362
field_mask: (ucp_listener_params_field::UCP_LISTENER_PARAM_FIELD_SOCK_ADDR
6463
| ucp_listener_params_field::UCP_LISTENER_PARAM_FIELD_CONN_HANDLER)
@@ -96,11 +95,9 @@ impl Listener {
9695
};
9796
let status = unsafe { ucp_listener_query(self.handle, &mut attr) };
9897
Error::from_status(status)?;
99-
let sockaddr = unsafe {
100-
os_socketaddr::OsSocketAddr::from_raw_parts(&attr.sockaddr as *const _ as _, 8)
101-
};
98+
let sockaddr = unsafe { socket2::SockAddr::new(std::mem::transmute(attr.sockaddr), 8) };
10299

103-
Ok(sockaddr.into_addr().unwrap())
100+
Ok(sockaddr.as_socket().unwrap())
104101
}
105102

106103
/// Waiting for the next connection request.

ucx1-sys/ucx

Submodule ucx updated 473 files

0 commit comments

Comments
 (0)