Lines Matching refs:libc
38 use libc::{c_void, off_t};
85 AioCanceled = libc::AIO_CANCELED,
88 AioNotCanceled = libc::AIO_NOTCANCELED,
90 AioAllDone = libc::AIO_ALLDONE,
93 /// Newtype that adds Send and Sync to libc::aiocb, which contains raw pointers
95 struct LibcAiocb(libc::aiocb);
126 let p: *mut libc::aiocb = &mut self.aiocb.0;
127 Errno::result(libc::aio_return(p))
134 libc::aio_cancel(self.aiocb.0.aio_fildes, &mut self.aiocb.0)
137 libc::AIO_CANCELED => Ok(AioCancelStat::AioCanceled),
138 libc::AIO_NOTCANCELED => Ok(AioCancelStat::AioNotCanceled),
139 libc::AIO_ALLDONE => Ok(AioCancelStat::AioAllDone),
150 let mut a = unsafe { mem::zeroed::<libc::aiocb>() };
161 let r = unsafe { libc::aio_error(&self.aiocb().0) };
398 let p: *mut libc::aiocb = &mut self.as_mut().aiocb().aiocb.0;
399 Errno::result({ unsafe { libc::$func(p) } }).map(|_| {
467 aiocb.aiocb.0.aio_lio_opcode = mode as libc::c_int;
487 let p: *mut libc::aiocb = aiocb;
488 Errno::result(unsafe { libc::aio_fsync(mode, p) }).map(|_| {
496 impl AsRef<libc::aiocb> for AioFsync {
497 fn as_ref(&self) -> &libc::aiocb {
585 aiocb.aiocb.0.aio_lio_opcode = libc::LIO_READ;
606 impl<'a> AsMut<libc::aiocb> for AioRead<'a> {
607 fn as_mut(&mut self) -> &mut libc::aiocb {
612 impl<'a> AsRef<libc::aiocb> for AioRead<'a> {
613 fn as_ref(&self) -> &libc::aiocb {
706 aiocb.aiocb.0.aio_lio_opcode = libc::LIO_READV;
729 impl<'a> AsMut<libc::aiocb> for AioReadv<'a> {
730 fn as_mut(&mut self) -> &mut libc::aiocb {
736 impl<'a> AsRef<libc::aiocb> for AioReadv<'a> {
737 fn as_ref(&self) -> &libc::aiocb {
821 aiocb.aiocb.0.aio_lio_opcode = libc::LIO_WRITE;
842 impl<'a> AsMut<libc::aiocb> for AioWrite<'a> {
843 fn as_mut(&mut self) -> &mut libc::aiocb {
848 impl<'a> AsRef<libc::aiocb> for AioWrite<'a> {
849 fn as_ref(&self) -> &libc::aiocb {
939 aiocb.aiocb.0.aio_lio_opcode = libc::LIO_WRITEV;
962 impl<'a> AsMut<libc::aiocb> for AioWritev<'a> {
963 fn as_mut(&mut self) -> &mut libc::aiocb {
969 impl<'a> AsRef<libc::aiocb> for AioWritev<'a> {
970 fn as_ref(&self) -> &libc::aiocb {
1013 match unsafe { libc::aio_cancel(fd, ptr::null_mut()) } {
1014 libc::AIO_CANCELED => Ok(AioCancelStat::AioCanceled),
1015 libc::AIO_NOTCANCELED => Ok(AioCancelStat::AioNotCanceled),
1016 libc::AIO_ALLDONE => Ok(AioCancelStat::AioAllDone),
1051 list: &[&dyn AsRef<libc::aiocb>],
1054 let p = list as *const [&dyn AsRef<libc::aiocb>]
1055 as *const [*const libc::aiocb] as *const *const libc::aiocb;
1057 None => ptr::null::<libc::timespec>(),
1058 Some(x) => x.as_ref() as *const libc::timespec,
1060 Errno::result(unsafe { libc::aio_suspend(p, list.len() as i32, timep) })
1134 /// # use libc::c_int;
1177 list: &mut [Pin<&mut dyn AsMut<libc::aiocb>>],
1180 let p = list as *mut [Pin<&mut dyn AsMut<libc::aiocb>>]
1181 as *mut [*mut libc::aiocb] as *mut *mut libc::aiocb;
1183 let sigevp = &mut sigev.sigevent() as *mut libc::sigevent;
1185 libc::lio_listio(mode as i32, p, list.len() as i32, sigevp)
1194 /// aio_suspend relies on casting Rust Aio* struct pointers to libc::aiocb
1201 aiof.as_ref() as *const libc::aiocb,
1202 &aiof as *const AioFsync as *const libc::aiocb
1208 aior.as_ref() as *const libc::aiocb,
1209 &aior as *const AioRead as *const libc::aiocb
1215 aiow.as_ref() as *const libc::aiocb,
1216 &aiow as *const AioWrite as *const libc::aiocb
1229 aiorv.as_ref() as *const libc::aiocb,
1230 &aiorv as *const AioReadv as *const libc::aiocb
1237 aiowv.as_ref() as *const libc::aiocb,
1238 &aiowv as *const AioWritev as *const libc::aiocb