Upgrade various dependencies

This patch upgrades dependencies to resolve a build error with rustix
This commit is contained in:
Christian Holler (:decoder) 2023-04-26 19:42:09 +02:00
parent 2da7f08b6e
commit 3a3107583b
5 changed files with 11 additions and 9 deletions

View File

@ -7,12 +7,11 @@ edition = "2018"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies] [dependencies]
nix = "0.20.2" nix = "0.26.2"
time = "0.2.9" time = "0.2.9"
subprocess = "0.2.4" subprocess = "0.2.4"
libc = "0.2.68" libc = "0.2.68"
quick-error = "*" quick-error = "*"
tempfile = "3.1.0"
rand = "0.7.3" rand = "0.7.3"
serde_derive = "1.0" serde_derive = "1.0"
serde = "1.0" serde = "1.0"

View File

@ -3,7 +3,6 @@ extern crate glob;
extern crate nix; extern crate nix;
extern crate serde_derive; extern crate serde_derive;
extern crate snafu; extern crate snafu;
extern crate tempfile;
extern crate timeout_readwrite; extern crate timeout_readwrite;
extern crate config; extern crate config;

View File

@ -1,5 +1,4 @@
use core::ffi::c_void;
use nix::sys::mman::*; use nix::sys::mman::*;
use std::fs::File; use std::fs::File;
use std::os::unix::io::IntoRawFd; use std::os::unix::io::IntoRawFd;
@ -59,8 +58,10 @@ impl AuxBuffer {
} }
let flags = MapFlags::MAP_SHARED; let flags = MapFlags::MAP_SHARED;
let null_addr = std::num::NonZeroUsize::new(0);
let size = std::num::NonZeroUsize::new(AUX_BUFFER_SIZE).unwrap();
unsafe { unsafe {
let ptr = mmap(0 as *mut c_void, 0x1000, prot, flags, file.into_raw_fd(), 0).unwrap(); let ptr = mmap(null_addr, size, prot, flags, file.into_raw_fd(), 0).unwrap();
let header = (ptr.add(HEADER_OFFSET) as *mut auxilary_buffer_header_s) let header = (ptr.add(HEADER_OFFSET) as *mut auxilary_buffer_header_s)
.as_mut() .as_mut()
.unwrap(); .unwrap();

View File

@ -1,4 +1,3 @@
use core::ffi::c_void;
use std::os::unix::prelude::FromRawFd; use std::os::unix::prelude::FromRawFd;
use std::path::PathBuf; use std::path::PathBuf;
use nix::sys::mman::*; use nix::sys::mman::*;
@ -75,8 +74,10 @@ fn run_qemu(ctrl: &mut UnixStream) -> io::Result<()>{
fn make_shared_data(file: &File, size: usize) -> &'static mut [u8] { fn make_shared_data(file: &File, size: usize) -> &'static mut [u8] {
let prot = ProtFlags::PROT_READ | ProtFlags::PROT_WRITE; let prot = ProtFlags::PROT_READ | ProtFlags::PROT_WRITE;
let flags = MapFlags::MAP_SHARED; let flags = MapFlags::MAP_SHARED;
let null_addr = std::num::NonZeroUsize::new(0);
let wrapped_size = std::num::NonZeroUsize::new(size).unwrap();
unsafe { unsafe {
let ptr = mmap(0 as *mut c_void, size, prot, flags, file.as_raw_fd(), 0).unwrap(); let ptr = mmap(null_addr, wrapped_size, prot, flags, file.as_raw_fd(), 0).unwrap();
let data = std::slice::from_raw_parts_mut(ptr as *mut u8, size); let data = std::slice::from_raw_parts_mut(ptr as *mut u8, size);
return data; return data;
@ -86,8 +87,10 @@ fn make_shared_data(file: &File, size: usize) -> &'static mut [u8] {
fn make_shared_ijon_data(file: File, size: usize) -> FeedbackBuffer { fn make_shared_ijon_data(file: File, size: usize) -> FeedbackBuffer {
let prot = ProtFlags::PROT_READ | ProtFlags::PROT_WRITE; let prot = ProtFlags::PROT_READ | ProtFlags::PROT_WRITE;
let flags = MapFlags::MAP_SHARED; let flags = MapFlags::MAP_SHARED;
let null_addr = std::num::NonZeroUsize::new(0);
let wrapped_size = std::num::NonZeroUsize::new(size).unwrap();
unsafe { unsafe {
let ptr = mmap(std::ptr::null_mut::<c_void>(), size, prot, flags, file.into_raw_fd(), 0).unwrap(); let ptr = mmap(null_addr, wrapped_size, prot, flags, file.into_raw_fd(), 0).unwrap();
FeedbackBuffer::new((ptr as *mut SharedFeedbackData).as_mut().unwrap()) FeedbackBuffer::new((ptr as *mut SharedFeedbackData).as_mut().unwrap())
} }
} }

View File

@ -8,7 +8,7 @@ name = "libnyx"
crate-type = ["staticlib", "dylib"] crate-type = ["staticlib", "dylib"]
[build-dependencies] [build-dependencies]
cbindgen = "0.19" cbindgen = "0.24.3"
[dependencies] [dependencies]
config={path="../config"} config={path="../config"}