Create cron.sh for running from cron also create config.sh
[backups/.git] / filedata.cpp
index 31078ea9878c8c2068a08176812f85e5e5b25ca5..6b14517eec2125bfe80b922101328b0e33fdc364 100644 (file)
@@ -75,3 +75,17 @@ istream &operator>>( istream &i, FileData &d ) {
 
   return i;
 }
+
+bool needs_backup( const FileData *before, const FileData *after ) {
+  assert( before->getFileName() == after->getFileName() );
+
+  if( after->getLastBackupDate()  <  after->getModifiedDate() ) return true;
+
+  if( before->getFileType()       != after->getFileType()     ) return true;
+  if( before->getPermissions()    != after->getPermissions()  ) return true;
+  if( before->getUserName()       != after->getUserName()     ) return true;
+  if( before->getGroupName()      != after->getGroupName()    ) return true;
+  if( before->getFileSize()       != after->getFileSize()     ) return true;
+
+  return false;
+}