]> git.proxmox.com Git - proxmox-backup.git/commitdiff
fix 2885: bail on duplicate backup target
authorStoiko Ivanov <s.ivanov@proxmox.com>
Thu, 23 Jul 2020 16:16:36 +0000 (16:16 +0000)
committerThomas Lamprecht <t.lamprecht@proxmox.com>
Fri, 24 Jul 2020 09:08:56 +0000 (11:08 +0200)
Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
src/bin/proxmox-backup-client.rs

index 32483c004b5bc0c704e24ad8d19c703ba6f16597..fc2d77ce113280e29aebd51e985392399e77c3d6 100644 (file)
@@ -935,12 +935,18 @@ async fn create_backup(
     }
 
     let mut upload_list = vec![];
+    let mut target_set = HashSet::new();
 
     for backupspec in backupspec_list {
         let spec = parse_backup_specification(backupspec.as_str().unwrap())?;
         let filename = &spec.config_string;
         let target = &spec.archive_name;
 
+        if target_set.contains(target) {
+            bail!("got target twice: '{}'", target);
+        }
+        target_set.insert(target.to_string());
+
         use std::os::unix::fs::FileTypeExt;
 
         let metadata = std::fs::metadata(filename)