[PATCH 2/2] bindings: rust: Update bindgen's version

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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@xxxxxxxxxx>
---
 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(-)

diff --git a/bindings/rust/gpiosim-sys/Cargo.toml b/bindings/rust/gpiosim-sys/Cargo.toml
index c3571d2cf48e..9aa047feba82 100644
--- a/bindings/rust/gpiosim-sys/Cargo.toml
+++ b/bindings/rust/gpiosim-sys/Cargo.toml
@@ -19,5 +19,5 @@ errno = "0.2.8"
 libgpiod = { path = "../libgpiod" }
 
 [build-dependencies]
-bindgen = "0.59.1"
+bindgen = "0.63"
 cc = "1.0.46"
diff --git a/bindings/rust/libgpiod-sys/Cargo.toml b/bindings/rust/libgpiod-sys/Cargo.toml
index 479184da3f7b..3bc3525aedca 100644
--- a/bindings/rust/libgpiod-sys/Cargo.toml
+++ b/bindings/rust/libgpiod-sys/Cargo.toml
@@ -17,5 +17,5 @@ edition = "2021"
 [dependencies]
 
 [build-dependencies]
-bindgen = "0.59.1"
+bindgen = "0.63"
 cc = "1.0.46"
diff --git a/bindings/rust/libgpiod/src/event_buffer.rs b/bindings/rust/libgpiod/src/event_buffer.rs
index 5a72ddb197ac..0675ea6c5181 100644
--- a/bindings/rust/libgpiod/src/event_buffer.rs
+++ b/bindings/rust/libgpiod/src/event_buffer.rs
@@ -2,7 +2,6 @@
 // SPDX-FileCopyrightText: 2022 Linaro Ltd.
 // SPDX-FileCopyrightTest: 2022 Viresh Kumar <viresh.kumar@xxxxxxxxxx>
 
-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,
diff --git a/bindings/rust/libgpiod/src/line_config.rs b/bindings/rust/libgpiod/src/line_config.rs
index 3848a3a68304..a2721a20e4fa 100644
--- a/bindings/rust/libgpiod/src/line_config.rs
+++ b/bindings/rust/libgpiod/src/line_config.rs
@@ -2,8 +2,6 @@
 // SPDX-FileCopyrightText: 2022 Linaro Ltd.
 // SPDX-FileCopyrightTest: 2022 Viresh Kumar <viresh.kumar@xxxxxxxxxx>
 
-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(),
             )
         };
 
diff --git a/bindings/rust/libgpiod/src/line_request.rs b/bindings/rust/libgpiod/src/line_request.rs
index a77c95deb1e3..ebf41f240ae2 100644
--- a/bindings/rust/libgpiod/src/line_request.rs
+++ b/bindings/rust/libgpiod/src/line_request.rs
@@ -2,7 +2,7 @@
 // SPDX-FileCopyrightText: 2022 Linaro Ltd.
 // SPDX-FileCopyrightTest: 2022 Viresh Kumar <viresh.kumar@xxxxxxxxxx>
 
-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(),
             )
diff --git a/bindings/rust/libgpiod/src/request_config.rs b/bindings/rust/libgpiod/src/request_config.rs
index 939838cbed2f..2ad68efdd12a 100644
--- a/bindings/rust/libgpiod/src/request_config.rs
+++ b/bindings/rust/libgpiod/src/request_config.rs
@@ -3,7 +3,7 @@
 // SPDX-FileCopyrightTest: 2022 Viresh Kumar <viresh.kumar@xxxxxxxxxx>
 
 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
     }
-- 
2.31.1.272.g89b43f80a514




[Index of Archives]     [Linux SPI]     [Linux Kernel]     [Linux ARM (vger)]     [Linux ARM MSM]     [Linux Omap]     [Linux Arm]     [Linux Tegra]     [Fedora ARM]     [Linux for Samsung SOC]     [eCos]     [Linux Fastboot]     [Gcc Help]     [Git]     [DCCP]     [IETF Announce]     [Security]     [Linux MIPS]     [Yosemite Campsites]

  Powered by Linux