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
Gave infos about mailutil.

View file

@ -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

6
README
View file

@ -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 <int>]
[--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 $

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.
$Revision: 1.77 $
$Revision: 1.80 $
=head1 INSTALL
@ -48,6 +48,7 @@ $Revision: 1.77 $
[--subscribed] [--subscribe]
[--dry]
[--debug] [--debugimap]
[--timeout <int>]
[--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 <int> : imap connect timeout.
--help : print this.
Example: to synchronise imap account "foo" on "imap.truc.org"