X-Git-Url: http://git.rot13.org/?p=BackupPC.git;a=blobdiff_plain;f=bin%2FBackupPC_ASA_PostArchive_Update;h=475a4778e529e9842c66325e0b16f9d1566d4e4c;hp=d58f2450f9170daad43f19359c216b6f9398f6da;hb=0a4689159b1f9dc6d99086cedc54990ab61721b8;hpb=fa8d82ef3f27cabb75318b9b646645973c83c429 diff --git a/bin/BackupPC_ASA_PostArchive_Update b/bin/BackupPC_ASA_PostArchive_Update index d58f245..475a477 100755 --- a/bin/BackupPC_ASA_PostArchive_Update +++ b/bin/BackupPC_ASA_PostArchive_Update @@ -140,8 +140,11 @@ sub check_archive { my $md5_path = "$Conf{ArchiveDest}/$host.$num.md5"; unlink $md5_path if -s $md5_path == 0; # fix empty + my $read_protect = 0; + if ( ! -e $md5_path ) { system_ok "cd $Conf{ArchiveDest} && /usr/bin/md5sum $host.$num.* > $md5_path"; + $read_protect = 1; } else { system_ok "cd $Conf{ArchiveDest} && /usr/bin/md5sum -c $md5_path" if $opt->check; } @@ -150,6 +153,12 @@ sub check_archive { foreach ( split(/\n/, read_file "$Conf{ArchiveDest}/$host.$num.md5" ) ) { my ( $md5, $path ) = split(/\s+/,$_); $md5sum->{$path} = $md5; + if ( $read_protect ) { + my $full = "$Conf{ArchiveDest}/$path"; + my $perm = (stat $full)[2] & 0444; + warn sprintf("chmod %03o %s\n",$perm,$full); + chmod $perm, $full; + } } # depending on expected returned value this is used like: