This commit is contained in:
Nick Bebout 2011-03-12 02:43:53 +00:00
parent 487a06ce26
commit b73d2cba61
5 changed files with 42 additions and 15 deletions

View file

@ -1,4 +1,6 @@
William Hernandez (fromESS/PR Webmasters)
Wrote patch for --timeout
Gave IMail 7.15 new problem/success story
Wim Kerkhoff Wim Kerkhoff
Gave infos about mailutil. Gave infos about mailutil.

View file

@ -1,15 +1,27 @@
RCS file: RCS/imapsync,v RCS file: RCS/imapsync,v
Working file: imapsync Working file: imapsync
head: 1.77 head: 1.80
branch: branch:
locks: strict locks: strict
access list: access list:
symbolic names: symbolic names:
keyword substitution: kv keyword substitution: kv
total revisions: 77; selected revisions: 77 total revisions: 80; selected revisions: 80
description: 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 revision 1.77
date: 2004/03/11 05:33:22; author: gilles; state: Exp; lines: +26 -8 date: 2004/03/11 05:33:22; author: gilles; state: Exp; lines: +26 -8
Better authmd5 stuff Better authmd5 stuff

6
README
View file

@ -2,7 +2,7 @@ NAME
imapsync - IMAP sync or copy tool. Synchronize mailboxes between two imapsync - IMAP sync or copy tool. Synchronize mailboxes between two
imap servers. imap servers.
$Revision: 1.77 $ $Revision: 1.80 $
INSTALL INSTALL
imapsync works fine under any Unix OS. imapsync works fine under any Unix OS.
@ -44,6 +44,7 @@ SYNOPSIS
[--subscribed] [--subscribe] [--subscribed] [--subscribe]
[--dry] [--dry]
[--debug] [--debugimap] [--debug] [--debugimap]
[--timeout <int>]
[--version] [--help] [--version] [--help]
DESCRIPTION DESCRIPTION
@ -145,6 +146,7 @@ IMAP SERVERS
- DBMail 1.2.1 - DBMail 1.2.1
- Dovecot 0.99.10.4 - Dovecot 0.99.10.4
- iPlanet Messaging server 4.15 - iPlanet Messaging server 4.15
- IMail 7.15 (Ipswitch/Win2003)
- Netscape Mail Server 3.6 (Wintel !) - Netscape Mail Server 3.6 (Wintel !)
- SunONE Messaging server 5.2, 6.0 (SUN JES - Java Enterprise System) - SunONE Messaging server 5.2, 6.0 (SUN JES - Java Enterprise System)
- UW-imap servers (imap-2000b) rijkkramer IMAP4rev1 2000.287 - UW-imap servers (imap-2000b) rijkkramer IMAP4rev1 2000.287
@ -204,5 +206,5 @@ SIMILAR SOFTWARES
Feedback (good or bad) will be always welcome. 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 $

View file

@ -1 +1 @@
1.77 1.80

View file

@ -4,7 +4,7 @@
imapsync - IMAP sync or copy tool. Synchronize mailboxes between two imap servers. imapsync - IMAP sync or copy tool. Synchronize mailboxes between two imap servers.
$Revision: 1.77 $ $Revision: 1.80 $
=head1 INSTALL =head1 INSTALL
@ -48,6 +48,7 @@ $Revision: 1.77 $
[--subscribed] [--subscribe] [--subscribed] [--subscribe]
[--dry] [--dry]
[--debug] [--debugimap] [--debug] [--debugimap]
[--timeout <int>]
[--version] [--help] [--version] [--help]
=cut =cut
@ -166,6 +167,7 @@ Success stories reported (softwares in alphabetic order) :
- DBMail 1.2.1 - DBMail 1.2.1
- Dovecot 0.99.10.4 - Dovecot 0.99.10.4
- iPlanet Messaging server 4.15 - iPlanet Messaging server 4.15
- IMail 7.15 (Ipswitch/Win2003)
- Netscape Mail Server 3.6 (Wintel !) - Netscape Mail Server 3.6 (Wintel !)
- SunONE Messaging server 5.2, 6.0 (SUN JES - Java Enterprise System) - SunONE Messaging server 5.2, 6.0 (SUN JES - Java Enterprise System)
- UW-imap servers (imap-2000b) rijkkramer IMAP4rev1 2000.287 - UW-imap servers (imap-2000b) rijkkramer IMAP4rev1 2000.287
@ -241,7 +243,7 @@ Entries for imapsync:
Feedback (good or bad) will be always welcome. 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 =cut
@ -272,12 +274,13 @@ my(
$mess_size_total_trans, $mess_size_total_trans,
$mess_size_total_skipped, $mess_size_total_skipped,
$mess_size_total_error, $mess_size_total_error,
$timeout, # whr (ESS/PRW)
); );
use vars qw ($opt_G); # missing code for this will be option. 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+)/; $rcs =~ m/,v (\d+\.\d+)/;
$VERSION = ($1) ? $1 : "UNKNOWN"; $VERSION = ($1) ? $1 : "UNKNOWN";
@ -313,8 +316,8 @@ $error=0;
my $banner = join("", my $banner = join("",
'$RCSfile: imapsync,v $ ', '$RCSfile: imapsync,v $ ',
'$Revision: 1.77 $ ', '$Revision: 1.80 $ ',
'$Date: 2004/03/11 05:33:22 $ ', '$Date: 2004/03/12 01:11:22 $ ',
"\n", "\n",
"Mail::IMAPClient version used here is ", "Mail::IMAPClient version used here is ",
$VERSION_IMAPClient, " auth md5 : $md5_supported", $VERSION_IMAPClient, " auth md5 : $md5_supported",
@ -365,13 +368,14 @@ unless ($md5_supported) {
$debugimap and print "From connection\n"; $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"; $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 { sub login_imap {
my($host, $port, $user, $password, $debugimap, $authmech) = @_; my($host, $port, $user, $password,
$debugimap, $timeout, $authmech) = @_;
my $imap = Mail::IMAPClient->new(); my $imap = Mail::IMAPClient->new();
$imap->Server($host); $imap->Server($host);
$imap->Port($port); $imap->Port($port);
@ -381,7 +385,12 @@ sub login_imap {
$imap->Debug($debugimap); $imap->Debug($debugimap);
$imap->connect() $imap->connect()
or die "Can not open imap connection on [$host] with user [$user] : $@\n"; 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->User($user);
$imap->Password($password); $imap->Password($password);
md5auth($imap); md5auth($imap);
@ -734,6 +743,7 @@ sub get_options
"justconnect!"=> \$justconnect, "justconnect!"=> \$justconnect,
"version" => \$version, "version" => \$version,
"help" => \$help, "help" => \$help,
"timeout=i" => \$timeout,
); );
$debug and print "get options: [$opt_ret]\n"; $debug and print "get options: [$opt_ret]\n";
@ -843,6 +853,7 @@ Several options are mandatory.
--version : print sotfware version. --version : print sotfware version.
--justconnect : just connect to both servers and print useful --justconnect : just connect to both servers and print useful
information. information.
--timeout <int> : imap connect timeout.
--help : print this. --help : print this.
Example: to synchronise imap account "foo" on "imap.truc.org" Example: to synchronise imap account "foo" on "imap.truc.org"