]> git.sur5r.net Git - bacula/bacula/commitdiff
ebl have been applied
authorEric Bollengier <eric@eb.homelinux.org>
Thu, 12 Jul 2007 18:53:43 +0000 (18:53 +0000)
committerEric Bollengier <eric@eb.homelinux.org>
Thu, 12 Jul 2007 18:53:43 +0000 (18:53 +0000)
git-svn-id: https://bacula.svn.sourceforge.net/svnroot/bacula/trunk@5161 91ce42f0-d328-0410-95d8-f526ca767f89

bacula/patches/testing/fd_checkchanges.patch [deleted file]
bacula/patches/testing/fd_checkchanges.readme [deleted file]

diff --git a/bacula/patches/testing/fd_checkchanges.patch b/bacula/patches/testing/fd_checkchanges.patch
deleted file mode 100644 (file)
index 90952e8..0000000
+++ /dev/null
@@ -1,160 +0,0 @@
-diff -Naur bacula1/src/dird/inc_conf.c bacula2/src/dird/inc_conf.c
---- bacula1/src/dird/inc_conf.c        2007-02-19 20:44:13.000000000 +0100
-+++ bacula2/src/dird/inc_conf.c        2007-02-19 20:44:33.000000000 +0100
-@@ -120,6 +120,7 @@
-    {"noatime",         store_opts,    {0},     0, 0, 0},
-    {"enhancedwild",    store_opts,    {0},     0, 0, 0},
-    {"drivetype",       store_drivetype, {0},     0, 0, 0},
-+   {"checkchanges",    store_opts,    {0},     0, 0, 0},
-    {NULL, NULL, {0}, 0, 0, 0}
- };
-@@ -145,7 +146,8 @@
-    INC_KW_IGNORECASE,
-    INC_KW_HFSPLUS,
-    INC_KW_NOATIME,
--   INC_KW_ENHANCEDWILD
-+   INC_KW_ENHANCEDWILD,
-+   INC_KW_CHKCHANGES
- };
- /*
-@@ -174,6 +176,7 @@
-    {"hfsplussupport", INC_KW_HFSPLUS},
-    {"noatime",     INC_KW_NOATIME},
-    {"enhancedwild", INC_KW_ENHANCEDWILD},
-+   {"checkchanges", INC_KW_CHKCHANGES},
-    {NULL,          0}
- };
-@@ -239,6 +242,8 @@
-    {"no",       INC_KW_NOATIME,       "0"},
-    {"yes",      INC_KW_ENHANCEDWILD,  "K"},
-    {"no",       INC_KW_ENHANCEDWILD,  "0"},
-+   {"yes",      INC_KW_CHKCHANGES,    "c"},
-+   {"no",       INC_KW_CHKCHANGES,    "0"},
-    {NULL,       0,                      0}
- };
-diff -Naur bacula1/src/filed/backup.c bacula2/src/filed/backup.c
---- bacula1/src/filed/backup.c 2007-02-19 20:44:13.000000000 +0100
-+++ bacula2/src/filed/backup.c 2007-02-19 20:47:14.000000000 +0100
-@@ -453,7 +453,13 @@
-       }
-       stat = send_data(jcr, data_stream, ff_pkt, digest, signing_digest);
-+
-+      if (ff_pkt->flags & FO_CHKCHANGES) {
-+         has_file_changed(jcr, ff_pkt);
-+      }
-+
-       bclose(&ff_pkt->bfd);
-+      
-       if (!stat) {
-          return 0;
-       }
-diff -Naur bacula1/src/filed/job.c bacula2/src/filed/job.c
---- bacula1/src/filed/job.c    2007-02-19 20:44:13.000000000 +0100
-+++ bacula2/src/filed/job.c    2007-02-19 20:44:33.000000000 +0100
-@@ -1021,6 +1021,9 @@
-       case 'K':
-          fo->flags |= FO_NOATIME;
-          break;
-+      case 'c':
-+         fo->flags |= FO_CHKCHANGES;
-+         break;
-       default:
-          Emsg1(M_ERROR, 0, _("Unknown include/exclude option: %c\n"), *p);
-          break;
-diff -Naur bacula1/src/findlib/find.h bacula2/src/findlib/find.h
---- bacula1/src/findlib/find.h 2007-02-19 20:44:16.000000000 +0100
-+++ bacula2/src/findlib/find.h 2007-02-19 20:44:33.000000000 +0100
-@@ -107,6 +107,7 @@
- #define FO_ENCRYPT      (1<<21)       /* Encrypt data stream */
- #define FO_NOATIME      (1<<22)       /* Use O_NOATIME to prevent atime change */
- #define FO_ENHANCEDWILD (1<<23)       /* Enhanced wild card processing */
-+#define FO_CHKCHANGES   (1<<24)       /* Check if file have been modified during backup */
- struct s_included_file {
-    struct s_included_file *next;
-diff -Naur bacula1/src/findlib/find_one.c bacula2/src/findlib/find_one.c
---- bacula1/src/findlib/find_one.c     2007-02-19 20:44:16.000000000 +0100
-+++ bacula2/src/findlib/find_one.c     2007-02-19 20:44:33.000000000 +0100
-@@ -271,6 +271,51 @@
-    return false;
- }
-+/* check if a file have changed during backup and display an error */
-+bool has_file_changed(JCR *jcr, FF_PKT *ff_pkt)
-+{
-+   struct stat statp;
-+   Dmsg1(500, "has_file_changed fname=%s\n",ff_pkt->fname);
-+
-+   if (ff_pkt->type != FT_REG) { /* not a regular file */
-+      return false;
-+   }
-+
-+   if (lstat(ff_pkt->fname, &statp) != 0) {
-+      berrno be;
-+      Jmsg(jcr, M_WARNING, 0, 
-+         _("Cannot stat file %s: ERR=%s\n"),ff_pkt->fname,be.strerror());
-+      return true;
-+   }
-+
-+   if (statp.st_mtime != ff_pkt->statp.st_mtime) {
-+      /* TODO: add time of changes */
-+      Jmsg(jcr, M_ERROR, 0, _("%s mtime changed during backup.\n"), ff_pkt->fname);
-+      return true;
-+   }
-+
-+   if (statp.st_ctime != ff_pkt->statp.st_ctime) {
-+      /* TODO: add time of changes */
-+      Jmsg(jcr, M_ERROR, 0, _("%s ctime changed during backup.\n"), ff_pkt->fname);
-+      return true;
-+   }
-+  
-+   if (statp.st_size != ff_pkt->statp.st_size) {
-+      /* TODO: add size change */
-+      Jmsg(jcr, M_ERROR, 0, _("%s size changed during backup.\n"),ff_pkt->fname);
-+      return true;
-+   }
-+
-+   if ((statp.st_blksize*statp.st_blocks) != 
-+       (ff_pkt->statp.st_blksize*ff_pkt->statp.st_blocks)) {
-+      /* TODO: add size change */
-+      Jmsg(jcr, M_ERROR, 0, _("%s size changed during backup.\n"),ff_pkt->fname);
-+      return true;
-+   }
-+
-+   return false;
-+}
-+
- /*
-  * Find a single file.
-  * handle_file is the callback for handling the file.
-diff -Naur bacula1/src/findlib/protos.h bacula2/src/findlib/protos.h
---- bacula1/src/findlib/protos.h       2007-02-19 20:44:16.000000000 +0100
-+++ bacula2/src/findlib/protos.h       2007-02-19 20:44:33.000000000 +0100
-@@ -65,7 +65,7 @@
-                int handle_file(FF_PKT *ff_pkt, void *hpkt, bool top_level),
-                void *pkt, char *p, dev_t parent_device, bool top_level);
- int   term_find_one(FF_PKT *ff);
--
-+bool  has_file_changed(JCR *jcr, FF_PKT *ff_pkt);
- /* From get_priv.c */
- int enable_backup_privileges(JCR *jcr, int ignore_errors);
-diff -Naur bacula1/src/win32/dll/bacula.def bacula2/src/win32/dll/bacula.def
---- bacula1/src/win32/dll/bacula.def    2007-02-28 14:35:43.000000000 +0100
-+++ bacula2/src/win32/dll/bacula.def    2007-03-01 11:15:50.000000000 +0100
-@@ -80,6 +80,8 @@
-
- ; find_one.c:
- _Z13find_one_fileP3JCRP6FF_PKTPFiS2_PvbES3_Pcjb
-+_Z17has_file_changedP3JCRP6FF_PKT
-+
-
- ; fstype.c:
- _Z6fstypePKcPci
-
-
diff --git a/bacula/patches/testing/fd_checkchanges.readme b/bacula/patches/testing/fd_checkchanges.readme
deleted file mode 100644 (file)
index 2eaebff..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-From: Eric Bollengier <eric at homelinux dot org>
-
-Check size, age of each file after their backup to see if
-they have changed during backup.
-
-This patch ask to fd to do an extra check (stat(2)) after
-each file backup. mtime, ctime and size are compared with
-"before backup" informations. If time or size mismatch, an
-error will raise.
-
-You must upgrade FD and DIR at the same time.
-
-TODO:
- - Add documentation
- - Add informations on warning/error messages
-
-Configuration :
-
-FileSet {
-  Name = "Full Set"
-  Include {
-    Options {
-      checkchanges = yes           # use this to enable it
-    }
-    File = /tmp/bacula
-  }
-}
-
-Output : 
-
-17-fév 18:03 zog-fd: Client1.2007-02-17_18.02.21 Error: /tmp/bacula/etc/toto have changed during backup.
-17-fév 18:03 zog-fd: Client1.2007-02-17_18.02.21 Error: /tmp/bacula/var/bacula/working/bacula.db size have changed during backup.
-17-fév 18:03 zog-sd: Job write elapsed time = 00:00:03, Transfer rate = 22.94 M bytes/second
-17-fév 18:03 zog-dir: Bacula 2.1.4 (12Feb07): 17-fév-2007 18:03:01
-  JobId:                  3
-  Job:                    Client1.2007-02-17_18.02.21
-  Backup Level:           Incremental, since=2007-02-17 17:58:56
-  Client:                 "zog-fd" 2.1.4 (12Feb07) i686-pc-linux-gnu,debian,testing/unstable
-  FileSet:                "Full Set" 2007-02-17 17:57:36
-  Pool:                   "Default" (From Job resource)
-  Storage:                "File" (From Job resource)
-  Scheduled time:         17-fév-2007 18:02:19
-...
-  Volume Session Time:    1171731706
-  Last Volume Bytes:      5,973,631 (5.973 MB)
-  Non-fatal FD errors:    2
-  SD Errors:              0
-  FD termination status:  OK
-  SD termination status:  OK
-  Termination:            Backup OK -- with warnings
-
-
-
-$Log$
-