From: Christian Ebner <c.ebner@proxmox.com>
To: pbs-devel@lists.proxmox.com
Subject: [pbs-devel] [PATCH proxmox-backup] clippy/fmt: tree wide drop of clone for types implementing copy
Date: Thu, 20 Mar 2025 14:38:27 +0100 [thread overview]
Message-ID: <20250320133827.342699-1-c.ebner@proxmox.com> (raw)
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@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
_______________________________________________
pbs-devel mailing list
pbs-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pbs-devel
next reply other threads:[~2025-03-20 13:39 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-03-20 13:38 Christian Ebner [this message]
2025-03-20 13:49 ` [pbs-devel] applied: " Wolfgang Bumiller
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250320133827.342699-1-c.ebner@proxmox.com \
--to=c.ebner@proxmox.com \
--cc=pbs-devel@lists.proxmox.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.