From 76c2912e6491671da8439c509b437b9ba25c2831 Mon Sep 17 00:00:00 2001 From: Wolfgang Bumiller Date: Wed, 19 Oct 2022 14:17:59 +0200 Subject: [PATCH] pbs-client: drop use of deprecated RawFdNum Signed-off-by: Wolfgang Bumiller --- pbs-client/src/pxar/create.rs | 7 +++---- pbs-client/src/pxar/metadata.rs | 7 +++---- 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/pbs-client/src/pxar/create.rs b/pbs-client/src/pxar/create.rs index c73f69cd..a69c1fb4 100644 --- a/pbs-client/src/pxar/create.rs +++ b/pbs-client/src/pxar/create.rs @@ -22,7 +22,6 @@ use pxar::Metadata; use proxmox_io::vec; use proxmox_lang::c_str; use proxmox_sys::error::SysError; -use proxmox_sys::fd::RawFdNum; use proxmox_sys::fs::{self, acl, xattr}; use pbs_datastore::catalog::BackupCatalogWriter; @@ -320,13 +319,13 @@ impl Archiver { let mut noatime = OFlag::O_NOATIME; loop { - return match proxmox_sys::fd::openat( - &unsafe { RawFdNum::from_raw_fd(parent) }, + return match proxmox_sys::fd::Fd::openat( + &parent, file_name, oflags | noatime, Mode::empty(), ) { - Ok(fd) => Ok(Some(fd)), + Ok(fd) => Ok(Some(fd.into())), Err(Errno::ENOENT) => { if existed { self.report_vanished_file()?; diff --git a/pbs-client/src/pxar/metadata.rs b/pbs-client/src/pxar/metadata.rs index d5c90310..d773da8c 100644 --- a/pbs-client/src/pxar/metadata.rs +++ b/pbs-client/src/pxar/metadata.rs @@ -1,5 +1,5 @@ use std::ffi::{CStr, CString}; -use std::os::unix::io::{AsRawFd, FromRawFd, RawFd}; +use std::os::unix::io::{AsRawFd, RawFd}; use std::path::Path; use anyhow::{bail, format_err, Error}; @@ -11,7 +11,6 @@ use pxar::Metadata; use proxmox_sys::c_result; use proxmox_sys::error::SysError; -use proxmox_sys::fd::RawFdNum; use proxmox_sys::fs::{self, acl, xattr}; use crate::pxar::tools::perms_from_metadata; @@ -66,8 +65,8 @@ pub fn apply_at( path_info: &Path, on_error: &mut (dyn FnMut(Error) -> Result<(), Error> + Send), ) -> Result<(), Error> { - let fd = proxmox_sys::fd::openat( - &unsafe { RawFdNum::from_raw_fd(parent) }, + let fd = proxmox_sys::fd::Fd::openat( + &parent, file_name, OFlag::O_PATH | OFlag::O_CLOEXEC | OFlag::O_NOFOLLOW, Mode::empty(),