Skip to content

Commit e082000

Browse files
committed
fix(driver,unix): mark set_msg as unsafe
1 parent f430d29 commit e082000

File tree

3 files changed

+8
-8
lines changed

3 files changed

+8
-8
lines changed

compio-driver/src/iour/op.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -559,7 +559,7 @@ impl<T: IoVectoredBuf, S> IntoInner for SendToVectored<T, S> {
559559
impl<T: IoVectoredBufMut, C: IoBufMut, S: AsRawFd> OpCode for RecvMsg<T, C, S> {
560560
fn create_entry(self: Pin<&mut Self>) -> OpEntry {
561561
let this = unsafe { self.get_unchecked_mut() };
562-
this.set_msg();
562+
unsafe { this.set_msg() };
563563
opcode::RecvMsg::new(Fd(this.fd.as_raw_fd()), &mut this.msg)
564564
.build()
565565
.into()
@@ -569,7 +569,7 @@ impl<T: IoVectoredBufMut, C: IoBufMut, S: AsRawFd> OpCode for RecvMsg<T, C, S> {
569569
impl<T: IoVectoredBuf, C: IoBuf, S: AsRawFd> OpCode for SendMsg<T, C, S> {
570570
fn create_entry(self: Pin<&mut Self>) -> OpEntry {
571571
let this = unsafe { self.get_unchecked_mut() };
572-
this.set_msg();
572+
unsafe { this.set_msg() };
573573
opcode::SendMsg::new(Fd(this.fd.as_raw_fd()), &this.msg)
574574
.build()
575575
.into()

compio-driver/src/poll/op.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -758,7 +758,7 @@ impl<T: IoVectoredBufMut, C: IoBufMut, S: AsRawFd> RecvMsg<T, C, S> {
758758
impl<T: IoVectoredBufMut, C: IoBufMut, S: AsRawFd> OpCode for RecvMsg<T, C, S> {
759759
fn pre_submit(self: Pin<&mut Self>) -> io::Result<Decision> {
760760
let this = unsafe { self.get_unchecked_mut() };
761-
this.set_msg();
761+
unsafe { this.set_msg() };
762762
syscall!(this.call(), wait_readable(this.fd.as_raw_fd()))
763763
}
764764

@@ -779,7 +779,7 @@ impl<T: IoVectoredBuf, C: IoBuf, S: AsRawFd> SendMsg<T, C, S> {
779779
impl<T: IoVectoredBuf, C: IoBuf, S: AsRawFd> OpCode for SendMsg<T, C, S> {
780780
fn pre_submit(self: Pin<&mut Self>) -> io::Result<Decision> {
781781
let this = unsafe { self.get_unchecked_mut() };
782-
this.set_msg();
782+
unsafe { this.set_msg() };
783783
syscall!(this.call(), wait_writable(this.fd.as_raw_fd()))
784784
}
785785

compio-driver/src/unix/op.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -403,8 +403,8 @@ impl<T: IoVectoredBufMut, C: IoBufMut, S> RecvMsg<T, C, S> {
403403
}
404404
}
405405

406-
pub(crate) fn set_msg(&mut self) {
407-
self.slices = unsafe { self.buffer.as_io_slices_mut() };
406+
pub(crate) unsafe fn set_msg(&mut self) {
407+
self.slices = self.buffer.as_io_slices_mut();
408408

409409
self.msg.msg_name = std::ptr::addr_of_mut!(self.addr) as _;
410410
self.msg.msg_namelen = std::mem::size_of_val(&self.addr) as _;
@@ -457,8 +457,8 @@ impl<T: IoVectoredBuf, C: IoBuf, S> SendMsg<T, C, S> {
457457
}
458458
}
459459

460-
pub(crate) fn set_msg(&mut self) {
461-
self.slices = unsafe { self.buffer.as_io_slices() };
460+
pub(crate) unsafe fn set_msg(&mut self) {
461+
self.slices = self.buffer.as_io_slices();
462462

463463
self.msg.msg_name = self.addr.as_ptr() as _;
464464
self.msg.msg_namelen = self.addr.len();

0 commit comments

Comments
 (0)