@@ -19,5 +19,5 @@ errno = "0.2.8"
libgpiod = { path = "../libgpiod" }
[build-dependencies]
-bindgen = "0.59.1"
+bindgen = "0.63"
cc = "1.0.46"
@@ -17,5 +17,5 @@ edition = "2021"
[dependencies]
[build-dependencies]
-bindgen = "0.59.1"
+bindgen = "0.63"
cc = "1.0.46"
@@ -2,7 +2,6 @@
// SPDX-FileCopyrightText: 2022 Linaro Ltd.
// SPDX-FileCopyrightTest: 2022 Viresh Kumar <viresh.kumar@linaro.org>
-use std::os::raw::c_ulong;
use std::ptr;
use super::{
@@ -74,7 +73,7 @@ impl Buffer {
pub fn new(capacity: usize) -> Result<Self> {
// SAFETY: The `gpiod_edge_event_buffer` returned by libgpiod is guaranteed to live as long
// as the `struct Buffer`.
- let buffer = unsafe { gpiod::gpiod_edge_event_buffer_new(capacity as c_ulong) };
+ let buffer = unsafe { gpiod::gpiod_edge_event_buffer_new(capacity) };
if buffer.is_null() {
return Err(Error::OperationFailed(
OperationType::EdgeEventBufferNew,
@@ -2,8 +2,6 @@
// SPDX-FileCopyrightText: 2022 Linaro Ltd.
// SPDX-FileCopyrightTest: 2022 Viresh Kumar <viresh.kumar@linaro.org>
-use std::os::raw::c_ulong;
-
use super::{
gpiod,
line::{Offset, Settings, SettingsMap, Value},
@@ -65,7 +63,7 @@ impl Config {
gpiod::gpiod_line_config_add_line_settings(
self.config,
offsets.as_ptr(),
- offsets.len() as c_ulong,
+ offsets.len(),
settings.settings,
)
};
@@ -91,7 +89,7 @@ impl Config {
gpiod::gpiod_line_config_set_output_values(
self.config,
mapped_values.as_ptr(),
- values.len() as u64,
+ values.len(),
)
};
@@ -2,7 +2,7 @@
// SPDX-FileCopyrightText: 2022 Linaro Ltd.
// SPDX-FileCopyrightTest: 2022 Viresh Kumar <viresh.kumar@linaro.org>
-use std::os::{raw::c_ulong, unix::prelude::AsRawFd};
+use std::os::unix::prelude::AsRawFd;
use std::time::Duration;
use super::{
@@ -40,7 +40,7 @@ impl Request {
gpiod::gpiod_line_request_get_requested_offsets(
self.request,
offsets.as_mut_ptr(),
- self.num_lines() as u64,
+ self.num_lines(),
)
};
offsets.shrink_to(num_offsets as usize);
@@ -70,7 +70,7 @@ impl Request {
let ret = unsafe {
gpiod::gpiod_line_request_get_values_subset(
self.request,
- offsets.len() as c_ulong,
+ offsets.len(),
offsets.as_ptr(),
values.as_mut_ptr(),
)
@@ -127,7 +127,7 @@ impl Request {
let ret = unsafe {
gpiod::gpiod_line_request_set_values_subset(
self.request,
- offsets.len() as c_ulong,
+ offsets.len(),
offsets.as_ptr(),
values.as_ptr(),
)
@@ -3,7 +3,7 @@
// SPDX-FileCopyrightTest: 2022 Viresh Kumar <viresh.kumar@linaro.org>
use std::ffi::{CStr, CString};
-use std::os::raw::{c_char, c_ulong};
+use std::os::raw::c_char;
use std::str;
use super::{gpiod, Error, OperationType, Result};
@@ -75,7 +75,7 @@ impl Config {
/// Set the size of the kernel event buffer for the request.
pub fn set_event_buffer_size(&mut self, size: usize) -> &mut Self {
// SAFETY: `gpiod_request_config` is guaranteed to be valid here.
- unsafe { gpiod::gpiod_request_config_set_event_buffer_size(self.config, size as c_ulong) }
+ unsafe { gpiod::gpiod_request_config_set_event_buffer_size(self.config, size) }
self
}
The currently selected version of bindgen has a unmaintained dependency and generates the following build warning while building vhost-device crate: Crate: ansi_term Version: 0.12.1 Warning: unmaintained Title: ansi_term is Unmaintained Date: 2021-08-18 ID: RUSTSEC-2021-0139 URL: https://rustsec.org/advisories/RUSTSEC-2021-0139 Dependency tree: ansi_term 0.12.1 └── clap 2.34.0 └── bindgen 0.59.2 └── libgpiod-sys 0.1.0 └── libgpiod 0.1.0 └── vhost-device-gpio 0.1.0 error: 1 denied warning found! Fix it by moving to a later version of bindgen, which updates the types of few of the arguments to the FFI helpers and so required changes to few of explicit type conversions. Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org> --- bindings/rust/gpiosim-sys/Cargo.toml | 2 +- bindings/rust/libgpiod-sys/Cargo.toml | 2 +- bindings/rust/libgpiod/src/event_buffer.rs | 3 +-- bindings/rust/libgpiod/src/line_config.rs | 6 ++---- bindings/rust/libgpiod/src/line_request.rs | 8 ++++---- bindings/rust/libgpiod/src/request_config.rs | 4 ++-- 6 files changed, 11 insertions(+), 14 deletions(-)