[pbs-devel] [PATCH proxmox-backup] clippy/fmt: tree wide drop of clone for types implementing copy
Christian Ebner
c.ebner at proxmox.com
Thu Mar 20 14:38:27 CET 2025
fixes the clippy warning on types T implementing Copy:
```
warning: using `clone` on type `T` which implements the `Copy` trait
```
followed by formatting fixups via `cargo fmt`.
Signed-off-by: Christian Ebner <c.ebner at proxmox.com>
---
pbs-config/src/config_version_cache.rs | 2 +-
pbs-datastore/src/chunk_store.rs | 8 ++++----
pbs-datastore/src/task_tracking.rs | 2 +-
src/api2/admin/datastore.rs | 20 ++++++--------------
src/bin/proxmox-backup-api.rs | 10 +++++-----
src/bin/proxmox-backup-proxy.rs | 14 +++++++-------
src/bin/proxmox-daily-update.rs | 2 +-
src/bin/proxmox_backup_debug/inspect.rs | 4 ++--
src/config/tfa.rs | 7 ++++---
src/server/jobstate.rs | 2 +-
src/tools/shared_rate_limiter.rs | 2 +-
11 files changed, 33 insertions(+), 40 deletions(-)
diff --git a/pbs-config/src/config_version_cache.rs b/pbs-config/src/config_version_cache.rs
index 3d570e937..e8fb994fb 100644
--- a/pbs-config/src/config_version_cache.rs
+++ b/pbs-config/src/config_version_cache.rs
@@ -101,7 +101,7 @@ impl ConfigVersionCache {
let file_path = Path::new(FILE_PATH);
let dir_path = file_path.parent().unwrap();
- create_path(dir_path, Some(dir_opts.clone()), Some(dir_opts))?;
+ create_path(dir_path, Some(dir_opts), Some(dir_opts))?;
let file_opts = CreateOptions::new()
.perm(Mode::from_bits_truncate(0o660))
diff --git a/pbs-datastore/src/chunk_store.rs b/pbs-datastore/src/chunk_store.rs
index 5e02909a1..dc267d752 100644
--- a/pbs-datastore/src/chunk_store.rs
+++ b/pbs-datastore/src/chunk_store.rs
@@ -109,7 +109,7 @@ impl ChunkStore {
let default_options = CreateOptions::new();
- match create_path(&base, Some(default_options), Some(options.clone())) {
+ match create_path(&base, Some(default_options), Some(options)) {
Err(err) => bail!("unable to create chunk store '{name}' at {base:?} - {err}"),
Ok(res) => {
if !res {
@@ -118,13 +118,13 @@ impl ChunkStore {
}
}
- if let Err(err) = create_dir(&chunk_dir, options.clone()) {
+ if let Err(err) = create_dir(&chunk_dir, options) {
bail!("unable to create chunk store '{name}' subdir {chunk_dir:?} - {err}");
}
// create lock file with correct owner/group
let lockfile_path = Self::lockfile_path(&base);
- proxmox_sys::fs::replace_file(lockfile_path, b"", options.clone(), false)?;
+ proxmox_sys::fs::replace_file(lockfile_path, b"", options, false)?;
// create 64*1024 subdirs
let mut last_percentage = 0;
@@ -132,7 +132,7 @@ impl ChunkStore {
for i in 0..64 * 1024 {
let mut l1path = chunk_dir.clone();
l1path.push(format!("{:04x}", i));
- if let Err(err) = create_dir(&l1path, options.clone()) {
+ if let Err(err) = create_dir(&l1path, options) {
bail!(
"unable to create chunk store '{}' subdir {:?} - {}",
name,
diff --git a/pbs-datastore/src/task_tracking.rs b/pbs-datastore/src/task_tracking.rs
index ec06a0bcc..77851cab6 100644
--- a/pbs-datastore/src/task_tracking.rs
+++ b/pbs-datastore/src/task_tracking.rs
@@ -47,7 +47,7 @@ fn open_lock_file(name: &str) -> Result<(std::fs::File, CreateOptions), Error> {
let timeout = std::time::Duration::new(10, 0);
Ok((
- open_file_locked(lock_path, timeout, true, options.clone())?,
+ open_file_locked(lock_path, timeout, true, options)?,
options,
))
}
diff --git a/src/api2/admin/datastore.rs b/src/api2/admin/datastore.rs
index cfe319c4e..483e595c1 100644
--- a/src/api2/admin/datastore.rs
+++ b/src/api2/admin/datastore.rs
@@ -2416,20 +2416,12 @@ fn setup_mounted_device(datastore: &DataStoreConfig, tmp_mount_path: &str) -> Re
.owner(backup_user.uid)
.group(backup_user.gid);
- proxmox_sys::fs::create_path(
- &mount_point,
- Some(default_options.clone()),
- Some(options.clone()),
- )
- .map_err(|e| format_err!("creating mountpoint '{mount_point}' failed: {e}"))?;
+ proxmox_sys::fs::create_path(&mount_point, Some(default_options), Some(options))
+ .map_err(|e| format_err!("creating mountpoint '{mount_point}' failed: {e}"))?;
// can't be created before it is mounted, so we have to do it here
- proxmox_sys::fs::create_path(
- &full_store_path,
- Some(default_options.clone()),
- Some(options.clone()),
- )
- .map_err(|e| format_err!("creating datastore path '{full_store_path}' failed: {e}"))?;
+ proxmox_sys::fs::create_path(&full_store_path, Some(default_options), Some(options))
+ .map_err(|e| format_err!("creating datastore path '{full_store_path}' failed: {e}"))?;
info!(
"bind mount '{}'({}) to '{}'",
@@ -2468,8 +2460,8 @@ pub fn do_mount_device(datastore: DataStoreConfig) -> Result<(), Error> {
let default_options = proxmox_sys::fs::CreateOptions::new();
proxmox_sys::fs::create_path(
&tmp_mount_path,
- Some(default_options.clone()),
- Some(default_options.clone()),
+ Some(default_options),
+ Some(default_options),
)?;
info!("temporarily mounting '{uuid}' to '{}'", tmp_mount_path);
diff --git a/src/bin/proxmox-backup-api.rs b/src/bin/proxmox-backup-api.rs
index 60f9b4948..7b4187550 100644
--- a/src/bin/proxmox-backup-api.rs
+++ b/src/bin/proxmox-backup-api.rs
@@ -88,21 +88,21 @@ async fn run() -> Result<(), Error> {
.default_api2_handler(&proxmox_backup::api2::ROUTER)
.enable_access_log(
pbs_buildcfg::API_ACCESS_LOG_FN,
- Some(dir_opts.clone()),
- Some(file_opts.clone()),
+ Some(dir_opts),
+ Some(file_opts),
&mut command_sock,
)?
.enable_auth_log(
pbs_buildcfg::API_AUTH_LOG_FN,
- Some(dir_opts.clone()),
- Some(file_opts.clone()),
+ Some(dir_opts),
+ Some(file_opts),
&mut command_sock,
)?;
let rest_server = RestServer::new(config);
proxmox_rest_server::init_worker_tasks(
pbs_buildcfg::PROXMOX_BACKUP_LOG_DIR_M!().into(),
- file_opts.clone(),
+ file_opts,
)?;
// http server future:
diff --git a/src/bin/proxmox-backup-proxy.rs b/src/bin/proxmox-backup-proxy.rs
index fdfa7463a..c9a6032e6 100644
--- a/src/bin/proxmox-backup-proxy.rs
+++ b/src/bin/proxmox-backup-proxy.rs
@@ -223,14 +223,14 @@ async fn run() -> Result<(), Error> {
config = config
.enable_access_log(
pbs_buildcfg::API_ACCESS_LOG_FN,
- Some(dir_opts.clone()),
- Some(file_opts.clone()),
+ Some(dir_opts),
+ Some(file_opts),
&mut command_sock,
)?
.enable_auth_log(
pbs_buildcfg::API_AUTH_LOG_FN,
- Some(dir_opts.clone()),
- Some(file_opts.clone()),
+ Some(dir_opts),
+ Some(file_opts),
&mut command_sock,
)?;
@@ -238,7 +238,7 @@ async fn run() -> Result<(), Error> {
let redirector = Redirector::new();
proxmox_rest_server::init_worker_tasks(
pbs_buildcfg::PROXMOX_BACKUP_LOG_DIR_M!().into(),
- file_opts.clone(),
+ file_opts,
)?;
//openssl req -x509 -newkey rsa:4096 -keyout /etc/proxmox-backup/proxy.key -out /etc/proxmox-backup/proxy.pem -nodes
@@ -752,7 +752,7 @@ async fn schedule_task_log_rotate() {
true,
Some(max_files),
max_days,
- Some(options.clone()),
+ Some(options),
)?;
if has_rotated {
@@ -768,7 +768,7 @@ async fn schedule_task_log_rotate() {
pbs_buildcfg::API_ACCESS_LOG_FN,
true,
Some(max_files),
- Some(options.clone()),
+ Some(options),
)?;
if logrotate.rotate(max_size)? {
diff --git a/src/bin/proxmox-daily-update.rs b/src/bin/proxmox-daily-update.rs
index 97ccd973f..224103ccb 100644
--- a/src/bin/proxmox-daily-update.rs
+++ b/src/bin/proxmox-daily-update.rs
@@ -95,7 +95,7 @@ async fn run(rpcenv: &mut dyn RpcEnvironment) -> Result<(), Error> {
.group(backup_user.gid);
proxmox_rest_server::init_worker_tasks(
pbs_buildcfg::PROXMOX_BACKUP_LOG_DIR_M!().into(),
- file_opts.clone(),
+ file_opts,
)?;
let mut command_sock = proxmox_daemon::command_socket::CommandSocket::new(backup_user.gid);
diff --git a/src/bin/proxmox_backup_debug/inspect.rs b/src/bin/proxmox_backup_debug/inspect.rs
index 75a36870a..321080be3 100644
--- a/src/bin/proxmox_backup_debug/inspect.rs
+++ b/src/bin/proxmox_backup_debug/inspect.rs
@@ -409,8 +409,8 @@ fn inspect_device(device: String, param: Value) -> Result<(), Error> {
let default_options = proxmox_sys::fs::CreateOptions::new();
proxmox_sys::fs::create_path(
&tmp_mount_path,
- Some(default_options.clone()),
- Some(default_options.clone()),
+ Some(default_options),
+ Some(default_options),
)?;
let mut mount_cmd = std::process::Command::new("mount");
mount_cmd.arg(device.clone());
diff --git a/src/config/tfa.rs b/src/config/tfa.rs
index d89b53db9..2a55213bb 100644
--- a/src/config/tfa.rs
+++ b/src/config/tfa.rs
@@ -199,14 +199,15 @@ impl proxmox_tfa::api::OpenUserChallengeData for UserAccess {
fn open(&self, userid: &str) -> Result<Box<dyn UserChallengeAccess>, Error> {
crate::server::create_run_dir()?;
let options = CreateOptions::new().perm(Mode::from_bits_truncate(0o0600));
- proxmox_sys::fs::create_path(CHALLENGE_DATA_PATH, Some(options.clone()), Some(options))
- .map_err(|err| {
+ proxmox_sys::fs::create_path(CHALLENGE_DATA_PATH, Some(options), Some(options)).map_err(
+ |err| {
format_err!(
"failed to crate challenge data dir {:?}: {}",
CHALLENGE_DATA_PATH,
err
)
- })?;
+ },
+ )?;
let path = challenge_data_path_str(userid);
diff --git a/src/server/jobstate.rs b/src/server/jobstate.rs
index be9dac427..dc9f6c90d 100644
--- a/src/server/jobstate.rs
+++ b/src/server/jobstate.rs
@@ -87,7 +87,7 @@ pub fn create_jobstate_dir() -> Result<(), Error> {
.owner(backup_user.uid)
.group(backup_user.gid);
- create_path(JOB_STATE_BASEDIR, Some(opts.clone()), Some(opts))
+ create_path(JOB_STATE_BASEDIR, Some(opts), Some(opts))
.map_err(|err: Error| format_err!("unable to create job state dir - {err}"))?;
Ok(())
diff --git a/src/tools/shared_rate_limiter.rs b/src/tools/shared_rate_limiter.rs
index 8c9e6086a..db754728b 100644
--- a/src/tools/shared_rate_limiter.rs
+++ b/src/tools/shared_rate_limiter.rs
@@ -80,7 +80,7 @@ impl SharedRateLimiter {
.owner(user.uid)
.group(user.gid);
- create_path(&path, Some(dir_opts.clone()), Some(dir_opts))?;
+ create_path(&path, Some(dir_opts), Some(dir_opts))?;
path.push(name);
--
2.39.5
More information about the pbs-devel
mailing list