X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=bacula%2Fsrc%2Ffiled%2Fverify.c;h=8f50f78cdb5a1125c5aa8169a2d8bfa0ff42715f;hb=f9201647d5ecc4a1b0a2d1de7ca339f50fc5d77b;hp=424f178f6207878d324504617d6023698bbfc5dd;hpb=16355f16f23f091b89aeee7652a1acdbe092df26;p=bacula%2Fbacula diff --git a/bacula/src/filed/verify.c b/bacula/src/filed/verify.c index 424f178f62..8f50f78cdb 100644 --- a/bacula/src/filed/verify.c +++ b/bacula/src/filed/verify.c @@ -1,7 +1,7 @@ /* Bacula® - The Network Backup Solution - Copyright (C) 2000-2008 Free Software Foundation Europe e.V. + Copyright (C) 2000-2009 Free Software Foundation Europe e.V. The main author of Bacula is Kern Sibbald, with contributions from many others, a complete list can be found in the file AUTHORS. @@ -120,21 +120,21 @@ static int verify_file(JCR *jcr, FF_PKT *ff_pkt, bool top_level) berrno be; be.set_errno(ff_pkt->ff_errno); Jmsg(jcr, M_NOTSAVED, 1, _(" Could not access %s: ERR=%s\n"), ff_pkt->fname, be.bstrerror()); - jcr->Errors++; + jcr->JobErrors++; return 1; } case FT_NOFOLLOW: { berrno be; be.set_errno(ff_pkt->ff_errno); Jmsg(jcr, M_NOTSAVED, 1, _(" Could not follow link %s: ERR=%s\n"), ff_pkt->fname, be.bstrerror()); - jcr->Errors++; + jcr->JobErrors++; return 1; } case FT_NOSTAT: { berrno be; be.set_errno(ff_pkt->ff_errno); Jmsg(jcr, M_NOTSAVED, 1, _(" Could not stat %s: ERR=%s\n"), ff_pkt->fname, be.bstrerror()); - jcr->Errors++; + jcr->JobErrors++; return 1; } case FT_DIRNOCHG: @@ -155,17 +155,17 @@ static int verify_file(JCR *jcr, FF_PKT *ff_pkt, bool top_level) berrno be; be.set_errno(ff_pkt->ff_errno); Jmsg(jcr, M_NOTSAVED, 1, _(" Could not open directory %s: ERR=%s\n"), ff_pkt->fname, be.bstrerror()); - jcr->Errors++; + jcr->JobErrors++; return 1; } default: Jmsg(jcr, M_NOTSAVED, 0, _(" Unknown file type %d: %s\n"), ff_pkt->type, ff_pkt->fname); - jcr->Errors++; + jcr->JobErrors++; return 1; } /* Encode attributes and possibly extend them */ - encode_stat(attribs, ff_pkt, 0); + encode_stat(attribs, &ff_pkt->statp, ff_pkt->LinkFI, 0); encode_attribsEx(jcr, attribsEx, ff_pkt); jcr->lock(); @@ -247,7 +247,7 @@ static int verify_file(JCR *jcr, FF_PKT *ff_pkt, bool top_level) size = sizeof(md); if (digest_file(jcr, ff_pkt, digest) != 0) { - jcr->Errors++; + jcr->JobErrors++; goto good_rtn; } @@ -347,8 +347,8 @@ static int read_digest(BFILE *bfd, DIGEST *digest, JCR *jcr) /* Check for sparse blocks */ if (ff_pkt->flags & FO_SPARSE) { bool allZeros = false; - if (n == bufsiz && - fileAddr+n < (uint64_t)ff_pkt->statp.st_size || + if ((n == bufsiz && + fileAddr+n < (uint64_t)ff_pkt->statp.st_size) || ((ff_pkt->type == FT_RAW || ff_pkt->type == FT_FIFO) && (uint64_t)ff_pkt->statp.st_size == 0)) { allZeros = is_buf_zero(buf, bufsiz); @@ -370,7 +370,7 @@ static int read_digest(BFILE *bfd, DIGEST *digest, JCR *jcr) Dmsg2(100, "Error reading file %s: ERR=%s\n", jcr->last_fname, be.bstrerror()); Jmsg(jcr, M_ERROR, 1, _("Error reading file %s: ERR=%s\n"), jcr->last_fname, be.bstrerror()); - jcr->Errors++; + jcr->JobErrors++; return -1; } return 0;