additional changes to it.pm (post 3.0.0beta2) v3_0_0beta2
authorcbarratt <cbarratt>
Sun, 19 Nov 2006 18:40:28 +0000 (18:40 +0000)
committercbarratt <cbarratt>
Sun, 19 Nov 2006 18:40:28 +0000 (18:40 +0000)
ChangeLog
bin/BackupPC
configure.pl
doc-src/BackupPC.pod
lib/BackupPC/Lang/it.pm
lib/BackupPC/Storage/Text.pm
lib/BackupPC/Xfer/Rsync.pm
lib/BackupPC/Xfer/RsyncDigest.pm
lib/BackupPC/Xfer/RsyncFileIO.pm
makeDist

index f6cc6e3..b6068ce 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
 # Version __VERSION__, __RELEASEDATE__
 #------------------------------------------------------------------------
 
 # Version __VERSION__, __RELEASEDATE__
 #------------------------------------------------------------------------
 
+* Fix for final md4 digest check on rsync transfers >= 512MB when protocol
+  version >= 27 and checksums are not cached.  Reported by Garith Dugmore
+  and Dale Renton.
+
 * Config Editor "Save" button is now always visible, but greyed out
   until there are changes to save.
 
 * Config Editor "Save" button is now always visible, but greyed out
   until there are changes to save.
 
@@ -49,8 +53,8 @@
 * More compact host summary, including disabled host indication,
   from Jono Woodhouse.
 
 * More compact host summary, including disabled host indication,
   from Jono Woodhouse.
 
-* New directory/file/hardlink and symlink image icons from Jono
-  Woodhouse, making directory browse more compact.
+* New directory/file/hardlink and symlink image icons from Sean Cameron
+  and Jono Woodhouse, making directory browse more compact.
 
 * BackupPC.pid is now world readable, suggested by Casper Thomsen.
 
 
 * BackupPC.pid is now world readable, suggested by Casper Thomsen.
 
index 8e718de..786ecba 100755 (executable)
@@ -47,7 +47,7 @@
 #
 #========================================================================
 #
 #
 #========================================================================
 #
-# Version 3.0.0beta2, released 11 Nov 2006.
+# Version 3.0.0beta2, released 18 Nov 2006.
 #
 # See http://backuppc.sourceforge.net.
 #
 #
 # See http://backuppc.sourceforge.net.
 #
@@ -113,9 +113,13 @@ if ( $Conf{BackupPCUserVerify}
 # Read old status
 #
 if ( -f "$LogDir/status.pl" && !(my $ret = do "$LogDir/status.pl") ) {
 # Read old status
 #
 if ( -f "$LogDir/status.pl" && !(my $ret = do "$LogDir/status.pl") ) {
-   die "couldn't parse $LogDir/status.pl: $@" if $@;
-   die "couldn't do $LogDir/status.pl: $!"    unless defined $ret;
-   die "couldn't run $LogDir/status.pl";
+    if ( $@ ) {
+        print STDERR "couldn't parse $LogDir/status.pl: $@";
+    } elsif ( !defined($ret) ) {
+        print STDERR "couldn't do $LogDir/status.pl: $!";
+    } else {
+        print STDERR "couldn't run $LogDir/status.pl";
+    }
 }
 
 #
 }
 
 #
index 7cf5149..5a03034 100755 (executable)
@@ -872,9 +872,9 @@ EOF
 }
 
 eval "use File::RsyncP;";
 }
 
 eval "use File::RsyncP;";
-if ( !$@ && $File::RsyncP::VERSION < 0.64 ) {
+if ( !$@ && $File::RsyncP::VERSION < 0.68 ) {
     print("\nWarning: you need to upgrade File::RsyncP;"
     print("\nWarning: you need to upgrade File::RsyncP;"
-        . " I found $File::RsyncP::VERSION and BackupPC needs 0.64\n");
+        . " I found $File::RsyncP::VERSION and BackupPC needs 0.68\n");
 }
 
 exit(0);
 }
 
 exit(0);
index 5e1b190..741596d 100644 (file)
@@ -363,8 +363,7 @@ compression is on.
 
 =item *
 
 
 =item *
 
-Perl version 5.6.0 or later. BackupPC has been tested with
-version 5.6.x, and 5.8.x. If you don't have perl, please
+Perl version 5.8.0 or later.  If you don't have perl, please
 see L<http://www.cpan.org>.
 
 =item *
 see L<http://www.cpan.org>.
 
 =item *
@@ -1179,7 +1178,7 @@ This is because setuid scripts are disabled by the kernel in most
 flavors of unix and linux.
 
 To see if your perl has setuid emulation, see if there is a program
 flavors of unix and linux.
 
 To see if your perl has setuid emulation, see if there is a program
-called sperl5.6.0 (or sperl5.8.2 etc, based on your perl version)
+called sperl5.8.0 (or sperl5.8.2 etc, based on your perl version)
 in the place where perl is installed. If you can't find this program,
 then you have two options: rebuild and reinstall perl with the setuid
 emulation turned on (answer "y" to the question "Do you want to do
 in the place where perl is installed. If you can't find this program,
 then you have two options: rebuild and reinstall perl with the setuid
 emulation turned on (answer "y" to the question "Do you want to do
@@ -2763,18 +2762,23 @@ Javier Gonzalez provided the Spanish translation, es.pm for v2.0.0.
 
 Manfred Herrmann provided the German translation, de.pm for v2.0.0.
 Manfred continues to support de.pm updates for each new version,
 
 Manfred Herrmann provided the German translation, de.pm for v2.0.0.
 Manfred continues to support de.pm updates for each new version,
-together with some help frmo Ralph Paßgang.
+together with some help from Ralph Paßgang.
 
 Lorenzo Cappelletti provided the Italian translation, it.pm for v2.1.0.
 
 Lorenzo Cappelletti provided the Italian translation, it.pm for v2.1.0.
+Giuseppe Iuculano and Vittorio Macchi updated it for 3.0.0.
 
 Lieven Bridts provided the Dutch translation, nl.pm, for v2.1.0,
 
 Lieven Bridts provided the Dutch translation, nl.pm, for v2.1.0,
-with some tweaks from Guus Houtzager.
+with some tweaks from Guus Houtzager, and updates for 3.0.0.
 
 Reginaldo Ferreira provided the Portuguese Brazillian translation
 pt_br.pm for v2.2.0.
 
 Rich Duzenbury provided the RSS feed option to the CGI interface.
 
 
 Reginaldo Ferreira provided the Portuguese Brazillian translation
 pt_br.pm for v2.2.0.
 
 Rich Duzenbury provided the RSS feed option to the CGI interface.
 
+Jono Woodhouse from CapeSoft Software (www.capesoft.com) provided a
+new CSS skin for 3.0.0 with several layout improvements.  Sean Cameron
+(also from CapeSoft) designed new and more compact file icons for 3.0.0.
+
 Many people have reported bugs, made useful suggestions and helped
 with testing; see the ChangeLog and the mail lists.
 
 Many people have reported bugs, made useful suggestions and helped
 with testing; see the ChangeLog and the mail lists.
 
index 27f3b04..910bf41 100644 (file)
@@ -3,6 +3,9 @@
 # Italian i18n file
 #
 # (C)  Lorenzo Cappelletti <lorenzo.cappelletti@email.it>  2004
 # Italian i18n file
 #
 # (C)  Lorenzo Cappelletti <lorenzo.cappelletti@email.it>  2004
+#  Added translations and corrections:
+#  Giuseppe Iuculano 2006
+#  Vittorio Macchi 2006
 #
 
 
 #
 
 
@@ -38,7 +41,7 @@ $Lang{Admin_Options_Page} = <<EOF;
 <!--
 \${h2("Configurazione server")}
 <ul>
 <!--
 \${h2("Configurazione server")}
 <ul>
-  <li><i>Other options can go here... e.g.,</i>
+  <li><i>Altre opzioni possono andare qui... e.g.,</i>
   <li>Modifica configurazione server
 </ul>
 -->
   <li>Modifica configurazione server
 </ul>
 -->
@@ -133,11 +136,11 @@ $Lang{BackupPC_Summary} = <<EOF;
 Questo rapporto di stato &egrave; stato generato il \$now.
 </p>
 
 Questo rapporto di stato &egrave; stato generato il \$now.
 </p>
 
-\${h2("Host con backup buoni")}
+\${h2("Host con backup validi")}
 <p>
 Ci sono \$hostCntGood host sottoposti a backup per un totale di:
 <ul>
 <p>
 Ci sono \$hostCntGood host sottoposti a backup per un totale di:
 <ul>
-<li> \$fullTot backup completi per una dimensione toatle di \${fullSizeTot}GB
+<li> \$fullTot backup completi per una dimensione totale di \${fullSizeTot}GB
      (prima del processo di pooling e compressione),
 <li> \$incrTot backup incrementali per una dimensione totale di \${incrSizeTot}GB
      (prima del processo di pooling e compressione).
      (prima del processo di pooling e compressione),
 <li> \$incrTot backup incrementali per una dimensione totale di \${incrSizeTot}GB
      (prima del processo di pooling e compressione).
@@ -149,10 +152,10 @@ Ci sono \$hostCntGood host sottoposti a backup per un totale di:
     <td align="center"> Completi </td>
     <td align="center"> Et&agrave; completi (giorni) </td>
     <td align="center"> Dimensione completi (GB) </td>
     <td align="center"> Completi </td>
     <td align="center"> Et&agrave; completi (giorni) </td>
     <td align="center"> Dimensione completi (GB) </td>
-    <td align="center"> Velocit&agrave (MB/s) </td>
+    <td align="center"> Velocit&agrave; (MB/s) </td>
     <td align="center"> Incrementali </td>
     <td align="center"> Et&agrave; incrementali (giorni) </td>
     <td align="center"> Incrementali </td>
     <td align="center"> Et&agrave; incrementali (giorni) </td>
-    <td align="center"> ENG Last Backup (days) </td>
+    <td align="center"> Ultimo Backup (giorni) </td>
     <td align="center"> Stato </td>
     <td align="center"> Ultimo tentativo </td></tr>
 \$strGood
     <td align="center"> Stato </td>
     <td align="center"> Ultimo tentativo </td></tr>
 \$strGood
@@ -168,10 +171,10 @@ Ci sono \$hostCntNone host senza alcun backup.
     <td align="center"> Completi </td>
     <td align="center"> Et&agrave; completi (giorni) </td>
     <td align="center"> Dimensione completi (GB) </td>
     <td align="center"> Completi </td>
     <td align="center"> Et&agrave; completi (giorni) </td>
     <td align="center"> Dimensione completi (GB) </td>
-    <td align="center"> Velocit&agrave (MB/s) </td>
+    <td align="center"> Velocit&agrave; (MB/s) </td>
     <td align="center"> Incrementali </td>
     <td align="center"> Et&agrave; incrementali (giorni) </td>
     <td align="center"> Incrementali </td>
     <td align="center"> Et&agrave; incrementali (giorni) </td>
-    <td align="center"> ENG Last Backup (days) </td>
+    <td align="center"> Ultimo Backup (giorni) </td>
     <td align="center"> Stato </td>
     <td align="center"> Ultimo tentativo </td></tr>
 \$strNone
     <td align="center"> Stato </td>
     <td align="center"> Ultimo tentativo </td></tr>
 \$strNone
@@ -481,7 +484,7 @@ sar&agrave; sovrascritto!
                window.open(URL,'','width=500,height=400');
         }
         </script>
                window.open(URL,'','width=500,height=400');
         }
         </script>
-        <!--<a href="javascript:myOpen('\$MyURL?action=findShares&host='+document.direct.hostDest.options.value)">Search for available shares (NOT IMPLEMENTED)</a>--></td>
+        <!--<a href="javascript:myOpen('\$MyURL?action=findShares&host='+document.direct.hostDest.options.value)">Cerca condivisioni disponibili (NON IMPLEMENTATO)</a>--></td>
 </tr><tr>
     <td>Ripristino dei file sulla condivisione</td>
     <td><input type="text" size="40" value="\${EscHTML(\$share)}"
 </tr><tr>
     <td>Ripristino dei file sulla condivisione</td>
     <td><input type="text" size="40" value="\${EscHTML(\$share)}"
@@ -498,8 +501,8 @@ sar&agrave; sovrascritto!
 EOF
 
 $Lang{Restore_Options_for__host_Option1_disabled} = <<EOF;
 EOF
 
 $Lang{Restore_Options_for__host_Option1_disabled} = <<EOF;
-Direct restore has been disabled for host \${EscHTML(\$hostDest)}.
-Please select one of the other restore options.
+Il ripristino diretto &egrave; stato disabilitato per l\'host host \${EscHTML(\$hostDest)}.
+Per favore, seleziona uno degli altri metodi di ripristino.
 EOF
   
 # ------------------------------
 EOF
   
 # ------------------------------
@@ -541,7 +544,7 @@ $Lang{Option_2__Download_Zip_archive2} = <<EOF;
 <p>
 Archive::Zip non &egrave; installato e non &egrave; quindi possibile
 scaricare un archivio zip.
 <p>
 Archive::Zip non &egrave; installato e non &egrave; quindi possibile
 scaricare un archivio zip.
-Contattare l\'amministratore di sistemaper installare Archive::Zip da
+Contattare l\'amministratore di sistema per installare Archive::Zip da
 <a href="http://www.cpan.org">www.cpan.org</a>.
 </p>
 EOF
 <a href="http://www.cpan.org">www.cpan.org</a>.
 </p>
 EOF
@@ -657,7 +660,7 @@ Cliccare sul numero di backup per sfogliare e ripristinare i file di backup.
 <tr class="tableheader"><td align="center"> Numero backup </td>
     <td align="center"> Tipo </td>
     <td align="center"> Completo </td>
 <tr class="tableheader"><td align="center"> Numero backup </td>
     <td align="center"> Tipo </td>
     <td align="center"> Completo </td>
-    <td align="center"> ENG Level </td>
+    <td align="center"> Livello </td>
     <td align="center"> Data avvio </td>
     <td align="center"> Durata (minuti) </td>
     <td align="center"> Et&agrave; (giorni) </td>
     <td align="center"> Data avvio </td>
     <td align="center"> Durata (minuti) </td>
     <td align="center"> Et&agrave; (giorni) </td>
@@ -703,7 +706,7 @@ riutilizzo e file nuovi.
     <td align="center"> Tipo </td>
     <td align="center"> Numero file </td>
     <td align="center"> Dimensione (MB) </td>
     <td align="center"> Tipo </td>
     <td align="center"> Numero file </td>
     <td align="center"> Dimensione (MB) </td>
-    <td align="center"> Velocit&agrave (MB/s) </td>
+    <td align="center"> Velocit&agrave; (MB/s) </td>
     <td align="center"> Numero file </td>
     <td align="center"> Dimensione (MB) </td>
     <td align="center"> Numero file </td>
     <td align="center"> Numero file </td>
     <td align="center"> Dimensione (MB) </td>
     <td align="center"> Numero file </td>
@@ -937,13 +940,13 @@ $Lang{Archive___num_details_for__host2 } = <<EOF;
 \${h1("Dettagli archivio n. \$num per \$host")}
 <p>
 <table class="tableStnd" border cellspacing="1" cellpadding="3" width="80%">
 \${h1("Dettagli archivio n. \$num per \$host")}
 <p>
 <table class="tableStnd" border cellspacing="1" cellpadding="3" width="80%">
-<tr><td class="tableheader"> Number </td><td class="border"> \$Archives[\$i]{num} </td></tr>
-<tr><td class="tableheader"> Requested by </td><td class="border"> \$ArchiveReq{user} </td></tr>
-<tr><td class="tableheader"> Request time </td><td class="border"> \$reqTime </td></tr>
-<tr><td class="tableheader"> Result </td><td class="border"> \$Archives[\$i]{result} </td></tr>
-<tr><td class="tableheader"> Error Message </td><td class="border"> \$Archives[\$i]{errorMsg} </td></tr>
-<tr><td class="tableheader"> Start time </td><td class="border"> \$startTime </td></tr>
-<tr><td class="tableheader"> Duration </td><td class="border"> \$duration\' </td></tr>
+<tr><td class="tableheader"> Numero </td><td class="border"> \$Archives[\$i]{num} </td></tr>
+<tr><td class="tableheader"> Richiesto da </td><td class="border"> \$ArchiveReq{user} </td></tr>
+<tr><td class="tableheader"> Data richiesta </td><td class="border"> \$reqTime </td></tr>
+<tr><td class="tableheader"> Risultato </td><td class="border"> \$Archives[\$i]{result} </td></tr>
+<tr><td class="tableheader"> Messaggio d\'errore </td><td class="border"> \$Archives[\$i]{errorMsg} </td></tr>
+<tr><td class="tableheader"> Data inizio </td><td class="border"> \$startTime </td></tr>
+<tr><td class="tableheader"> Durata </td><td class="border"> \$duration\' </td></tr>
 <tr><td class="tableheader"> Xfer log file </td><td class="border">
 <a href="\$MyURL?action=view&type=ArchiveLOG&num=\$Archives[\$i]{num}&host=\$host">Visualizza</a>,
 <a href="\$MyURL?action=view&type=ArchiveErr&num=\$Archives[\$i]{num}&host=\$host">Errori</a>
 <tr><td class="tableheader"> Xfer log file </td><td class="border">
 <a href="\$MyURL?action=view&type=ArchiveLOG&num=\$Archives[\$i]{num}&host=\$host">Visualizza</a>,
 <a href="\$MyURL?action=view&type=ArchiveErr&num=\$Archives[\$i]{num}&host=\$host">Errori</a>
@@ -1082,7 +1085,7 @@ EOF
 
 # ---------
 $Lang{A_command_for_host_is_on_the_command_queue_will_run_soon} = <<EOF;
 
 # ---------
 $Lang{A_command_for_host_is_on_the_command_queue_will_run_soon} = <<EOF;
-<li>&Egrave gi&agrave; presente un comando per \$host nella coda dei comandi (sar&agrave; eseguito a breve).
+<li>&Egrave; gi&agrave; presente un comando per \$host nella coda dei comandi (sar&agrave; eseguito a breve).
 EOF
 
 # --------
 EOF
 
 # --------
@@ -1240,8 +1243,8 @@ $Lang{Reason_no_ping}        = "no ping";
 $Lang{Reason_backup_canceled_by_user}  = "backup annullato dall\'utente";
 $Lang{Reason_restore_canceled_by_user} = "ripristino annullato dall\'utente";
 $Lang{Reason_archive_canceled_by_user} = "archivio annullato dall\'utente";
 $Lang{Reason_backup_canceled_by_user}  = "backup annullato dall\'utente";
 $Lang{Reason_restore_canceled_by_user} = "ripristino annullato dall\'utente";
 $Lang{Reason_archive_canceled_by_user} = "archivio annullato dall\'utente";
-$Lang{Disabled_OnlyManualBackups}  = "ENG auto disabled";  
-$Lang{Disabled_AllBackupsDisabled} = "ENG disabled";                  
+$Lang{Disabled_OnlyManualBackups}  = "auto disabilitato";  
+$Lang{Disabled_AllBackupsDisabled} = "disabilitato";                  
 
 # ---------
 # Email messages
 
 # ---------
 # Email messages
@@ -1350,7 +1353,7 @@ $Lang{RSS_Host_Summary}    = <<EOF;
 Completi: \$fullCnt;
 Et&agrave; completi (giorni): \$fullAge;
 Dimensione completi (GB): \$fullSize;
 Completi: \$fullCnt;
 Et&agrave; completi (giorni): \$fullAge;
 Dimensione completi (GB): \$fullSize;
-Velocit&agrave (MB/s): \$fullRate;
+Velocit&agrave; (MB/s): \$fullRate;
 Incrementali: \$incrCnt;
 Et&agrave; incrementali (giorni): \$incrAge;
 Stato: \$host_state;
 Incrementali: \$incrCnt;
 Et&agrave; incrementali (giorni): \$incrAge;
 Stato: \$host_state;
@@ -1358,116 +1361,118 @@ Ultimo tentativo: \$host_last_attempt;
 EOF
 
 #######################################################################
 EOF
 
 #######################################################################
-# Configuration editor strings (all ENGLISH currently)
+# Configuration editor strings
 #######################################################################
 
 #######################################################################
 
-$Lang{Only_privileged_users_can_edit_config_files} = "Only privileged users can edit configuation settings.";
-$Lang{CfgEdit_Edit_Config} = "Edit Config";
-$Lang{CfgEdit_Edit_Hosts}  = "Edit Hosts";
+$Lang{Only_privileged_users_can_edit_config_files} = "Solo gli utenti privilegiati possono modificare la configurazione.";
+$Lang{CfgEdit_Edit_Config} = "Modifica Configurazione";
+$Lang{CfgEdit_Edit_Hosts}  = "Modifica Hosts";
 
 $Lang{CfgEdit_Title_Server} = "Server";
 
 $Lang{CfgEdit_Title_Server} = "Server";
-$Lang{CfgEdit_Title_General_Parameters} = "General Parameters";
-$Lang{CfgEdit_Title_Wakeup_Schedule} = "Wakeup Schedule";
-$Lang{CfgEdit_Title_Concurrent_Jobs} = "Concurrent Jobs";
-$Lang{CfgEdit_Title_Pool_Filesystem_Limits} = "Pool Filesystem Limits";
-$Lang{CfgEdit_Title_Other_Parameters} = "Other Parameters";
-$Lang{CfgEdit_Title_Remote_Apache_Settings} = "Remote Apache Settings";
-$Lang{CfgEdit_Title_Program_Paths} = "Program Paths";
-$Lang{CfgEdit_Title_Install_Paths} = "Install Paths";
+$Lang{CfgEdit_Title_General_Parameters} = "Parametri Generali";
+$Lang{CfgEdit_Title_Wakeup_Schedule} = "Pianificazione Esecuzioni";
+$Lang{CfgEdit_Title_Concurrent_Jobs} = "Lavori Contemporanei";
+$Lang{CfgEdit_Title_Pool_Filesystem_Limits} = "Limiti del Pool Filesystem";
+$Lang{CfgEdit_Title_Other_Parameters} = "Altri parametri";
+$Lang{CfgEdit_Title_Remote_Apache_Settings} = "Configurazione Apache Remota";
+$Lang{CfgEdit_Title_Program_Paths} = "Percorsi Dei programmi";
+$Lang{CfgEdit_Title_Install_Paths} = "Percorsi Di Installazione";
 $Lang{CfgEdit_Title_Email} = "Email";
 $Lang{CfgEdit_Title_Email} = "Email";
-$Lang{CfgEdit_Title_Email_settings} = "Email settings";
-$Lang{CfgEdit_Title_Email_User_Messages} = "Email User Messages";
+$Lang{CfgEdit_Title_Email_settings} = "Configurazione Email";
+$Lang{CfgEdit_Title_Email_User_Messages} = "Messaggi Email Utente";
 $Lang{CfgEdit_Title_CGI} = "CGI";
 $Lang{CfgEdit_Title_CGI} = "CGI";
-$Lang{CfgEdit_Title_Admin_Privileges} = "Admin Privileges";
-$Lang{CfgEdit_Title_Page_Rendering} = "Page Rendering";
-$Lang{CfgEdit_Title_Paths} = "Paths";
-$Lang{CfgEdit_Title_User_URLs} = "User URLs";
-$Lang{CfgEdit_Title_User_Config_Editing} = "User Config Editing";
+$Lang{CfgEdit_Title_Admin_Privileges} = "Privilegi Admin";
+$Lang{CfgEdit_Title_Page_Rendering} = "Visualizzazione Pagina";
+$Lang{CfgEdit_Title_Paths} = "Percorsi";
+$Lang{CfgEdit_Title_User_URLs} = "URL Utenti";
+$Lang{CfgEdit_Title_User_Config_Editing} = "Modifica Configurazione Utenti";
 $Lang{CfgEdit_Title_Xfer} = "Xfer";
 $Lang{CfgEdit_Title_Xfer} = "Xfer";
-$Lang{CfgEdit_Title_Xfer_Settings} = "Xfer Settings";
-$Lang{CfgEdit_Title_Smb_Settings} = "Smb Settings";
-$Lang{CfgEdit_Title_Tar_Settings} = "Tar Settings";
-$Lang{CfgEdit_Title_Rsync_Settings} = "Rsync Settings";
-$Lang{CfgEdit_Title_Rsyncd_Settings} = "Rsyncd Settings";
-$Lang{CfgEdit_Title_BackupPCd_Settings} = "BackupPCd Settings";
-$Lang{CfgEdit_Title_Archive_Settings} = "Archive Settings";
-$Lang{CfgEdit_Title_Include_Exclude} = "Include/Exclude";
-$Lang{CfgEdit_Title_Smb_Paths_Commands} = "Smb Paths/Commands";
-$Lang{CfgEdit_Title_Tar_Paths_Commands} = "Tar Paths/Commands";
-$Lang{CfgEdit_Title_Rsync_Paths_Commands_Args} = "Rsync Paths/Commands/Args";
-$Lang{CfgEdit_Title_Rsyncd_Port_Args} = "Rsyncd Port/Args";
-$Lang{CfgEdit_Title_Archive_Paths_Commands} = "Archive Paths/Commands";
-$Lang{CfgEdit_Title_Schedule} = "Schedule";
-$Lang{CfgEdit_Title_Full_Backups} = "Full Backups";
-$Lang{CfgEdit_Title_Incremental_Backups} = "Incremental Backups";
+$Lang{CfgEdit_Title_Xfer_Settings} = "Configurazione Xfer";
+$Lang{CfgEdit_Title_Smb_Settings} = "Configurazione Smb";
+$Lang{CfgEdit_Title_Tar_Settings} = "Configurazione Tar";
+$Lang{CfgEdit_Title_Rsync_Settings} = "Configurazione Rsync";
+$Lang{CfgEdit_Title_Rsyncd_Settings} = "Configurazione Rsyncd";
+$Lang{CfgEdit_Title_BackupPCd_Settings} = "Configurazione BackupPCd";
+$Lang{CfgEdit_Title_Archive_Settings} = "Configurazione Archivi";
+$Lang{CfgEdit_Title_Include_Exclude} = "Includi/Escludi";
+$Lang{CfgEdit_Title_Smb_Paths_Commands} = "Smb Percorsi/Comandi";
+$Lang{CfgEdit_Title_Tar_Paths_Commands} = "Tar Percorsi/Comandi";
+$Lang{CfgEdit_Title_Rsync_Paths_Commands_Args} = "Rsync Percorsi/Comandi/Argomenti";
+$Lang{CfgEdit_Title_Rsyncd_Port_Args} = "Rsyncd Porta/Argomenti";
+$Lang{CfgEdit_Title_Archive_Paths_Commands} = "Archivi Percorsi/Comandi";
+$Lang{CfgEdit_Title_Schedule} = "Pianificazione";
+$Lang{CfgEdit_Title_Full_Backups} = "Backup Completi";
+$Lang{CfgEdit_Title_Incremental_Backups} = "Backup Incrementali";
 $Lang{CfgEdit_Title_Blackouts} = "Blackouts";
 $Lang{CfgEdit_Title_Blackouts} = "Blackouts";
-$Lang{CfgEdit_Title_Other} = "Other";
-$Lang{CfgEdit_Title_Backup_Settings} = "Backup Settings";
+$Lang{CfgEdit_Title_Other} = "Altro";
+$Lang{CfgEdit_Title_Backup_Settings} = "Configurazione Backup";
 $Lang{CfgEdit_Title_Client_Lookup} = "Client Lookup";
 $Lang{CfgEdit_Title_Client_Lookup} = "Client Lookup";
-$Lang{CfgEdit_Title_Other} = "Other";
-$Lang{CfgEdit_Title_User_Commands} = "User Commands";
+$Lang{CfgEdit_Title_Other} = "Altro";
+$Lang{CfgEdit_Title_User_Commands} = "Comandi Utente";
 $Lang{CfgEdit_Title_Hosts} = "Hosts";
 
 $Lang{CfgEdit_Hosts_Comment} = <<EOF;
 $Lang{CfgEdit_Title_Hosts} = "Hosts";
 
 $Lang{CfgEdit_Hosts_Comment} = <<EOF;
-To add a new host, select Add and then enter the name.  To start with
-the per-host configuration from another host, enter the host name
-as NEWHOST=COPYHOST.  This will overwrite any existing per-host
-configuration for NEWHOST.  You can also do this for an existing
-host.  To delete a host, hit the Delete button.  For Add, Delete,
-and configuration copy, changes don't take effect until you select
-Save.  None of the deleted host's backups will be removed,
-so if you accidently delete a host, simply re-add it.  To completely
-remove a host's backups, you need to manually remove the files
-below \$topDir/pc/HOST
+Per aggiungere un nuovo host, seleziona Aggiungi e inserisci il nome. 
+Per aggiungere un nuovo host partendo dalla configurazione di un altro
+host, inserisci il nome dell\'host con il formato NUOVOHOST=HOSTDACOPIARE.
+Questo sovrascriver&aacute; qualsiasi eventuale configurazione per il
+NUOVOHOST. Puoi dunque fare ci&oacute; anche per un host esistente.
+Per cancellare un host, clicca su Cancella. Quando Aggiungi, Cancelli,
+o copi la configurazione di un host, i cambiamenti vengono salvati
+solo dopo aver cliccato su Salva. I backup degli host cancellati
+non saranno rimossi, quindi se accidentalmente cancelli un host
+puoi semplicemente riaggiungerlo. Per cancellare definitivamente i
+backup di un host, dovrai quindi cancellare manualmente i file in
+\$topDir/pc/HOST
 EOF
 
 $Lang{CfgEdit_Header_Main} = <<EOF;
 EOF
 
 $Lang{CfgEdit_Header_Main} = <<EOF;
-\${h1("Main Configuration Editor")}
+\${h1("Editor Configurazione Principale")}
 EOF
 
 $Lang{CfgEdit_Header_Host} = <<EOF;
 EOF
 
 $Lang{CfgEdit_Header_Host} = <<EOF;
-\${h1("Host \$host Configuration Editor")}
+\${h1("Editor Configurazione Host \$host")}
 <p>
 <p>
-Note: Check Override if you want to modify a value specific to this host.
+Nota: Se vuoi modificare un valore specifico per questo host, seleziona Sovrascrivi.
 <p>
 EOF
 
 <p>
 EOF
 
-$Lang{CfgEdit_Button_Save}     = "Save";
-$Lang{CfgEdit_Button_Insert}   = "Insert";
-$Lang{CfgEdit_Button_Delete}   = "Delete";
-$Lang{CfgEdit_Button_Add}      = "Add";
-$Lang{CfgEdit_Button_Override} = "Override";
-$Lang{CfgEdit_Button_New_Key}  = "New Key";
+$Lang{CfgEdit_Button_Save}     = "Salva";
+$Lang{CfgEdit_Button_Insert}   = "Inserisci";
+$Lang{CfgEdit_Button_Delete}   = "Cancella";
+$Lang{CfgEdit_Button_Add}      = "Aggiungi";
+$Lang{CfgEdit_Button_Override} = "Sovrascrivi";
+$Lang{CfgEdit_Button_New_Key}  = "Nuova chiave";
 
 $Lang{CfgEdit_Error_No_Save}
 
 $Lang{CfgEdit_Error_No_Save}
-            = "ENG Error: No save due to errors";
+            = "Errore: Non salvo poich&eacute; sono presenti errori";
 $Lang{CfgEdit_Error__must_be_an_integer}
 $Lang{CfgEdit_Error__must_be_an_integer}
-            = "Error: \$var must be an integer";
+            = "Errore: \$var deve essere un numero intero";
 $Lang{CfgEdit_Error__must_be_real_valued_number}
 $Lang{CfgEdit_Error__must_be_real_valued_number}
-            = "Error: \$var must be a real-valued number";
+            = "Errore: \$var deve esser un numero con un valore reale";
 $Lang{CfgEdit_Error__entry__must_be_an_integer}
 $Lang{CfgEdit_Error__entry__must_be_an_integer}
-            = "Error: \$var entry \$k must be an integer";
+            = "Errore: \$var entry \$k deve essere un numero intero";
 $Lang{CfgEdit_Error__entry__must_be_real_valued_number}
 $Lang{CfgEdit_Error__entry__must_be_real_valued_number}
-            = "Error: \$var entry \$k must be a real-valued number";
+            = "Errore: \$var entry \$k deve esser un numero con un valore reale";
 $Lang{CfgEdit_Error__must_be_executable_program}
 $Lang{CfgEdit_Error__must_be_executable_program}
-            = "Error: \$var must be a valid executable path";
+            = "Errore: \$var deve essere un percorso valido";
 $Lang{CfgEdit_Error__must_be_valid_option}
 $Lang{CfgEdit_Error__must_be_valid_option}
-            = "Error: \$var must be a valid option";
+            = "Errore: \$var deve essere una opzione valida";
 $Lang{CfgEdit_Error_Copy_host_does_not_exist}
 $Lang{CfgEdit_Error_Copy_host_does_not_exist}
-            = "Copy host \$copyHost doesn't exist; creating full host name \$fullHost.  Delete this host if that is not what you wanted.";
+            = "L\'host da copiare \$copyHost non esiste; creo dunque l\'host \$fullHost da zero.  Se non &egrave; quello che desideravi, cancella questo host.";
 
 $Lang{CfgEdit_Log_Copy_host_config}
 
 $Lang{CfgEdit_Log_Copy_host_config}
-            = "\$User copied config from host \$fromHost to \$host\n";
+            = "\$User ha copiato la configurazione di \$fromHost su \$host\n";
 $Lang{CfgEdit_Log_Delete_param}
 $Lang{CfgEdit_Log_Delete_param}
-            = "\$User deleted \$p from \$conf\n";
+            = "\$User ha cancellato  \$p da \$conf\n";
 $Lang{CfgEdit_Log_Add_param_value}
 $Lang{CfgEdit_Log_Add_param_value}
-            = "\$User added \$p to \$conf, set to \$value\n";
+            = "\$User ha aggiunto \$p a \$conf, settandolo a \$value\n";
 $Lang{CfgEdit_Log_Change_param_value}
 $Lang{CfgEdit_Log_Change_param_value}
-            = "\$User changed \$p in \$conf to \$valueNew from \$valueOld\n";
+            = "\$User ha cambiato \$p su \$conf in \$valueNew da \$valueOld\n";
 $Lang{CfgEdit_Log_Host_Delete}
 $Lang{CfgEdit_Log_Host_Delete}
-            = "\$User deleted host \$host\n";
+            = "\$User ha cancellato l\'host \$host\n";
 $Lang{CfgEdit_Log_Host_Change}
 $Lang{CfgEdit_Log_Host_Change}
-            = "\$User host \$host changed \$key from \$valueOld to \$valueNew\n";
+            = "\$User host \$host ha cambiato \$key da \$valueOld in \$valueNew\n";
 $Lang{CfgEdit_Log_Host_Add}
 $Lang{CfgEdit_Log_Host_Add}
-            = "\$User added host \$host: \$value\n";
+            = "\$User ha aggiunto l\'host \$host: \$value\n";
 
 
index 8a8b528..fa46af2 100644 (file)
@@ -364,6 +364,7 @@ sub ConfigFileMerge
                 # if we have a complete expression, then we are done
                 # skipping text from the original config file.
                 #
                 # if we have a complete expression, then we are done
                 # skipping text from the original config file.
                 #
+                $skipExpr = $1 if ( $skipExpr =~ /(.*)/s );
                 eval($skipExpr);
                 $skipExpr = undef if ( $@ eq "" );
             }
                 eval($skipExpr);
                 $skipExpr = undef if ( $@ eq "" );
             }
index 15f08fc..5f5f3a3 100644 (file)
@@ -56,10 +56,10 @@ BEGIN {
        #
        # Note: also update configure.pl when this version number is changed!
        #
        #
        # Note: also update configure.pl when this version number is changed!
        #
-        if ( $File::RsyncP::VERSION < 0.64 ) {
+        if ( $File::RsyncP::VERSION < 0.68 ) {
             $RsyncLibOK = 0;
             $RsyncLibErr = "File::RsyncP module version"
             $RsyncLibOK = 0;
             $RsyncLibErr = "File::RsyncP module version"
-                         . " ($File::RsyncP::VERSION) too old: need 0.64";
+                         . " ($File::RsyncP::VERSION) too old: need 0.68";
         } else {
             $RsyncLibOK = 1;
         }
         } else {
             $RsyncLibOK = 1;
         }
index b881681..b2d5f50 100644 (file)
@@ -244,7 +244,7 @@ sub digestAdd
 sub digestStart
 {
     my($class, $fileName, $fileSize, $blockSize, $defBlkSize,
 sub digestStart
 {
     my($class, $fileName, $fileSize, $blockSize, $defBlkSize,
-       $checksumSeed, $needMD4, $compress, $doCache) = @_;
+       $checksumSeed, $needMD4, $compress, $doCache, $protocol_version) = @_;
 
     return -1 if ( !$RsyncLibOK );
 
 
     return -1 if ( !$RsyncLibOK );
 
@@ -256,6 +256,8 @@ sub digestStart
         digest   => File::RsyncP::Digest->new,
     }, $class;
 
         digest   => File::RsyncP::Digest->new,
     }, $class;
 
+    $dg->{digest}->protocol($protocol_version);
+
     if ( $fileSize > 0 && $compress && $doCache >= 0 ) {
         open(my $fh, "<", $fileName) || return -2;
         binmode($fh);
     if ( $fileSize > 0 && $compress && $doCache >= 0 ) {
         open(my $fh, "<", $fileName) || return -2;
         binmode($fh);
index a8b69b9..2d2f0b2 100644 (file)
@@ -160,7 +160,8 @@ sub csumStart
         my($err, $d, $blkSize) = BackupPC::Xfer::RsyncDigest->digestStart(
                                      $attr->{fullPath}, $attr->{size}, 0,
                                      $defBlkSize, $fio->{checksumSeed},
         my($err, $d, $blkSize) = BackupPC::Xfer::RsyncDigest->digestStart(
                                      $attr->{fullPath}, $attr->{size}, 0,
                                      $defBlkSize, $fio->{checksumSeed},
-                                     0, $attr->{compress}, 0);
+                                     0, $attr->{compress}, 0,
+                                     $fio->{protocol_version});
         my($isCached, $isInvalid) = $d->isCached;
         if ( $fio->{logLevel} >= 5 ) {
             $fio->log("$attr->{fullPath} verify; cached = $isCached,"
         my($isCached, $isInvalid) = $d->isCached;
         if ( $fio->{logLevel} >= 5 ) {
             $fio->log("$attr->{fullPath} verify; cached = $isCached,"
@@ -185,7 +186,8 @@ sub csumStart
     (my $err, $fio->{csum}, my $blkSize)
          = BackupPC::Xfer::RsyncDigest->digestStart($attr->{fullPath},
                         $attr->{size}, 0, $defBlkSize, $fio->{checksumSeed},
     (my $err, $fio->{csum}, my $blkSize)
          = BackupPC::Xfer::RsyncDigest->digestStart($attr->{fullPath},
                         $attr->{size}, 0, $defBlkSize, $fio->{checksumSeed},
-                        $needMD4, $attr->{compress}, 1);
+                        $needMD4, $attr->{compress}, 1,
+                         $fio->{protocol_version});
     if ( $fio->{logLevel} >= 5 ) {
         my($isCached, $invalid) = $fio->{csum}->isCached;
         $fio->log("$attr->{fullPath} cache = $isCached,"
     if ( $fio->{logLevel} >= 5 ) {
         my($isCached, $invalid) = $fio->{csum}->isCached;
         $fio->log("$attr->{fullPath} cache = $isCached,"
@@ -1106,7 +1108,8 @@ sub fileDeltaRxDone
                          = BackupPC::Xfer::RsyncDigest->digestStart(
                                  $attr->{fullPath}, $attr->{size},
                                  0, 2048, $fio->{checksumSeed}, 1,
                          = BackupPC::Xfer::RsyncDigest->digestStart(
                                  $attr->{fullPath}, $attr->{size},
                                  0, 2048, $fio->{checksumSeed}, 1,
-                                 $attr->{compress}, 1);
+                                 $attr->{compress}, 1,
+                                 $fio->{protocol_version});
                 if ( $err ) {
                     $fio->log("Can't open $attr->{fullPath} for MD4"
                             . " check (err=$err, $name)");
                 if ( $err ) {
                     $fio->log("Can't open $attr->{fullPath} for MD4"
                             . " check (err=$err, $name)");
index 2234b5d..d2bc2e6 100755 (executable)
--- a/makeDist
+++ b/makeDist
@@ -54,7 +54,7 @@ die("BackupPC::Lib->new failed\n")
 umask(0022);
 
 my $Version     = "3.0.0beta2";
 umask(0022);
 
 my $Version     = "3.0.0beta2";
-my $ReleaseDate = "11 Nov 2006";
+my $ReleaseDate = "18 Nov 2006";
 my $DistDir     = "dist/BackupPC-$Version";
 
 my @PerlSrc = qw(
 my $DistDir     = "dist/BackupPC-$Version";
 
 my @PerlSrc = qw(