]> git.sur5r.net Git - bacula/bacula/blobdiff - bacula/src/stored/match_bsr.c
Fix python plugin to use the new get functions instead of the get_ functions.
[bacula/bacula] / bacula / src / stored / match_bsr.c
index 5b52d918ae2119270a35660c2307d1bde4960888..88ec25d15c30fb55244acc37ac7e6be997749e5b 100644 (file)
@@ -499,10 +499,10 @@ no_match:
       return match_all(bsr->next, rec, volrec, sessrec, bsr->done && done, jcr);
    }
    if (bsr->done && done) {
-      Dmsg0(050, "Leave match all -1\n");
+      Dmsg0(dbglevel, "Leave match all -1\n");
       return -1;
    }
-   Dmsg0(050, "Leave match all 0\n");
+   Dmsg0(dbglevel, "Leave match all 0\n");
    return 0;
 }
 
@@ -512,7 +512,7 @@ static int match_volume(BSR *bsr, BSR_VOLUME *volume, VOLUME_LABEL *volrec, bool
       return 0;                       /* Volume must match */
    }
    if (strcmp(volume->VolumeName, volrec->VolumeName) == 0) {
-      Dmsg1(050, "match_volume=%s\n", volrec->VolumeName);
+      Dmsg1(dbglevel, "match_volume=%s\n", volrec->VolumeName);
       return 1;
    }
    if (volume->next) {
@@ -635,13 +635,24 @@ static int match_voladdr(BSR *bsr, BSR_VOLADDR *voladdr, DEV_RECORD *rec, bool d
    if (!voladdr) {
       return 1;                       /* no specification matches all */
    }
+
+#ifdef xxx
+
    /* For the moment, these tests work only with disk. */
    if (rec->state & REC_ISTAPE) {
-      return 1;                       /* All File records OK for this match */
+      uint32_t sFile = (voladdr->saddr)>>32;
+      uint32_t eFile = (voladdr->eaddr)>>32;
+      if (sFile <= rec->File && eFile >= rec->File) {
+         return 1;
+      }
    }
+
+#endif
+
    uint64_t addr = get_record_address(rec);
-//  Dmsg3(dbglevel, "match_voladdr: saddr=%llu eaddr=%llu recaddr=%llu\n",
-//             volblock->saddr, volblock->eaddr, addr);
+   Dmsg6(dbglevel, "match_voladdr: saddr=%llu eaddr=%llu recaddr=%llu sfile=%u efile=%u recfile=%u\n",
+         voladdr->saddr, voladdr->eaddr, addr, voladdr->saddr>>32, voladdr->eaddr>>32, addr>>32);
+
    if (voladdr->saddr <= addr && voladdr->eaddr >= addr) {
       return 1;
    }