-#!/bin/perl -T
+#!/bin/perl
#============================================================= -*-perl-*-
#
# BackupPC_sendEmail: send status emails to users and admins
# Craig Barratt <cbarratt@users.sourceforge.net>
#
# COPYRIGHT
-# Copyright (C) 2001 Craig Barratt
+# Copyright (C) 2001-2003 Craig Barratt
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
#
#========================================================================
#
-# Version 2.0.0_CVS, released 3 Feb 2003.
+# Version 2.1.0, released 20 Jun 2004.
#
# See http://backuppc.sourceforge.net.
#
#========================================================================
use strict;
+no utf8;
use lib "/usr/local/BackupPC/lib";
use BackupPC::Lib;
use BackupPC::FileZIO;
do "$TopDir/log/UserEmailInfo.pl";
my %opts;
-getopts("t", \%opts);
-if ( @ARGV != 0 ) {
+if ( !getopts("t", \%opts) || @ARGV != 0 ) {
print("usage: $0 [-t]\n");
exit(1);
}
my @badHosts = ();
foreach my $host ( sort(keys(%Status)) ) {
- next if ( $Status{$host}{reason} ne "backup failed"
+ next if ( ($Status{$host}{reason} ne "Reason_backup_failed"
+ && $Status{$host}{reason} ne "Reason_restore_failed")
|| $Status{$host}{error} =~ /^lost network connection to host/ );
push(@badHosts, "$host ($Status{$host}{error})");
}
my $user = $Hosts->{$host}{user};
next if ( time - $UserEmailInfo{$user}{lastTime}
< $Conf{EMailNotifyMinDays} * 24*3600 );
+ next if ($Conf{XferMethod} eq "archive" );
my @Backups = $bpc->BackupInfoRead($host);
my $numBackups = @Backups;
if ( $numBackups == 0 ) {
while ( 1 ) {
my $s = $fh->readLine();
last if ( $s eq "" );
- if ( $s =~ /^Error reading file.*\.pst : ERRDOS - ERRlock/
- || $s =~ /^Error reading file.*\.pst\. Got 0 bytes/ ) {
+ if ( $s =~ /^\s*Error reading file.*\.pst : ERRDOS - ERRlock/
+ || $s =~ /^\s*Error reading file.*\.pst\. Got 0 bytes/ ) {
$badOutlook = 1;
last;
}
[\%UserEmailInfo],
[qw(*UserEmailInfo)]);
if ( open(HOST, ">", "$TopDir/log/UserEmailInfo.pl") ) {
+ binmode(HOST);
print(HOST $dumpStr);
close(HOST);
}