diff --git a/CREDITS b/CREDITS index a5ecd88..cf45719 100644 --- a/CREDITS +++ b/CREDITS @@ -1,4 +1,6 @@ - +William Hernandez (fromESS/PR Webmasters) +Wrote patch for --timeout +Gave IMail 7.15 new problem/success story Wim Kerkhoff Gave infos about mailutil. diff --git a/ChangeLog b/ChangeLog index 1489748..39d4728 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,15 +1,27 @@ RCS file: RCS/imapsync,v Working file: imapsync -head: 1.77 +head: 1.80 branch: locks: strict access list: symbolic names: keyword substitution: kv -total revisions: 77; selected revisions: 77 +total revisions: 80; selected revisions: 80 description: ---------------------------- +revision 1.80 +date: 2004/03/12 01:11:22; author: gilles; state: Exp; lines: +6 -6 +IMail Win2003 +---------------------------- +revision 1.79 +date: 2004/03/12 01:08:12; author: gilles; state: Exp; lines: +6 -5 +Added IMail 7.15 +---------------------------- +revision 1.78 +date: 2004/03/12 01:04:10; author: gilles; state: Exp; lines: +19 -9 +--timeout option added. Thanks to William Hernandez (fromESS/PR Webmasters) +---------------------------- revision 1.77 date: 2004/03/11 05:33:22; author: gilles; state: Exp; lines: +26 -8 Better authmd5 stuff diff --git a/README b/README index 5b47b5f..8358b6c 100644 --- a/README +++ b/README @@ -2,7 +2,7 @@ NAME imapsync - IMAP sync or copy tool. Synchronize mailboxes between two imap servers. - $Revision: 1.77 $ + $Revision: 1.80 $ INSTALL imapsync works fine under any Unix OS. @@ -44,6 +44,7 @@ SYNOPSIS [--subscribed] [--subscribe] [--dry] [--debug] [--debugimap] + [--timeout ] [--version] [--help] DESCRIPTION @@ -145,6 +146,7 @@ IMAP SERVERS - DBMail 1.2.1 - Dovecot 0.99.10.4 - iPlanet Messaging server 4.15 + - IMail 7.15 (Ipswitch/Win2003) - Netscape Mail Server 3.6 (Wintel !) - SunONE Messaging server 5.2, 6.0 (SUN JES - Java Enterprise System) - UW-imap servers (imap-2000b) rijkkramer IMAP4rev1 2000.287 @@ -204,5 +206,5 @@ SIMILAR SOFTWARES Feedback (good or bad) will be always welcome. - $Id: imapsync,v 1.77 2004/03/11 05:33:22 gilles Exp $ + $Id: imapsync,v 1.80 2004/03/12 01:11:22 gilles Exp $ diff --git a/VERSION b/VERSION index 3245dca..d456f74 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.77 +1.80 diff --git a/imapsync b/imapsync index 224d15b..8dd824c 100755 --- a/imapsync +++ b/imapsync @@ -4,7 +4,7 @@ imapsync - IMAP sync or copy tool. Synchronize mailboxes between two imap servers. -$Revision: 1.77 $ +$Revision: 1.80 $ =head1 INSTALL @@ -48,6 +48,7 @@ $Revision: 1.77 $ [--subscribed] [--subscribe] [--dry] [--debug] [--debugimap] + [--timeout ] [--version] [--help] =cut @@ -166,6 +167,7 @@ Success stories reported (softwares in alphabetic order) : - DBMail 1.2.1 - Dovecot 0.99.10.4 - iPlanet Messaging server 4.15 + - IMail 7.15 (Ipswitch/Win2003) - Netscape Mail Server 3.6 (Wintel !) - SunONE Messaging server 5.2, 6.0 (SUN JES - Java Enterprise System) - UW-imap servers (imap-2000b) rijkkramer IMAP4rev1 2000.287 @@ -241,7 +243,7 @@ Entries for imapsync: Feedback (good or bad) will be always welcome. -$Id: imapsync,v 1.77 2004/03/11 05:33:22 gilles Exp $ +$Id: imapsync,v 1.80 2004/03/12 01:11:22 gilles Exp $ =cut @@ -272,12 +274,13 @@ my( $mess_size_total_trans, $mess_size_total_skipped, $mess_size_total_error, + $timeout, # whr (ESS/PRW) ); use vars qw ($opt_G); # missing code for this will be option. -$rcs = ' $Id: imapsync,v 1.77 2004/03/11 05:33:22 gilles Exp $ '; +$rcs = ' $Id: imapsync,v 1.80 2004/03/12 01:11:22 gilles Exp $ '; $rcs =~ m/,v (\d+\.\d+)/; $VERSION = ($1) ? $1 : "UNKNOWN"; @@ -313,8 +316,8 @@ $error=0; my $banner = join("", '$RCSfile: imapsync,v $ ', - '$Revision: 1.77 $ ', - '$Date: 2004/03/11 05:33:22 $ ', + '$Revision: 1.80 $ ', + '$Date: 2004/03/12 01:11:22 $ ', "\n", "Mail::IMAPClient version used here is ", $VERSION_IMAPClient, " auth md5 : $md5_supported", @@ -365,13 +368,14 @@ unless ($md5_supported) { $debugimap and print "From connection\n"; -$from = login_imap($host1, $port1, $user1, $password1, $debugimap); +$from = login_imap($host1, $port1, $user1, $password1, $debugimap, $timeout); $debugimap and print "To connection\n"; -$to = login_imap($host2, $port2, $user2, $password2, $debugimap); +$to = login_imap($host2, $port2, $user2, $password2, $debugimap, $timeout); sub login_imap { - my($host, $port, $user, $password, $debugimap, $authmech) = @_; + my($host, $port, $user, $password, + $debugimap, $timeout, $authmech) = @_; my $imap = Mail::IMAPClient->new(); $imap->Server($host); $imap->Port($port); @@ -381,7 +385,12 @@ sub login_imap { $imap->Debug($debugimap); $imap->connect() or die "Can not open imap connection on [$host] with user [$user] : $@\n"; - + if ($timeout) # whr (ESS/PRW) + { + $imap->Timeout($timeout); + print "Setting imap timeout to $timeout\n"; + } + $imap->User($user); $imap->Password($password); md5auth($imap); @@ -734,6 +743,7 @@ sub get_options "justconnect!"=> \$justconnect, "version" => \$version, "help" => \$help, + "timeout=i" => \$timeout, ); $debug and print "get options: [$opt_ret]\n"; @@ -843,6 +853,7 @@ Several options are mandatory. --version : print sotfware version. --justconnect : just connect to both servers and print useful information. +--timeout : imap connect timeout. --help : print this. Example: to synchronise imap account "foo" on "imap.truc.org"