This commit is contained in:
Nick Bebout 2011-03-12 02:44:17 +00:00
parent e47a98b809
commit c63048cca3
10 changed files with 28974 additions and 51 deletions

15
CREDITS
View file

@ -1,5 +1,20 @@
#!/bin/cat
Here are the persons who helped me to develop imapsync.
Feel free to tell me if a name is missing or if you want
to remove one.
Roy Hoobler
Problems with big folders.
Bug about message sizes.
Michael Muenz
"no errors (about 80 users)
from Exchange 5.5 to CyrusIMAPd 2.2.12"
Javier Gomez
Failure with MailEnable version 1.54
Mark Waters
Had a problem with --maxsize --skipsize (a bug)

View file

@ -1,15 +1,25 @@
RCS file: RCS/imapsync,v
Working file: imapsync
head: 1.137
head: 1.139
branch:
locks: strict
gilles: 1.139
access list:
symbolic names:
keyword substitution: kv
total revisions: 137; selected revisions: 137
total revisions: 139; selected revisions: 139
description:
----------------------------
revision 1.139 locked by: gilles;
date: 2005/07/16 12:46:22; author: gilles; state: Exp; lines: +6 -6
server list
----------------------------
revision 1.138
date: 2005/07/16 11:12:45; author: gilles; state: Exp; lines: +20 -13
Added failure story.
Added license information and url in imap server list.
----------------------------
revision 1.137
date: 2005/06/26 03:08:35; author: gilles; state: Exp; lines: +22 -11
Added --fastio1 --fastio2 options.

23
FAQ
View file

@ -4,7 +4,8 @@
+------------------+
=======================================================================
Q. We have found that the sent time and date have been changed to the time at which the file was synchronised.
Q. We have found that the sent time and date have been changed to the
time at which the file was synchronised.
R. I guess this is the case with Eudora but not with Mutt, no ?
Eurora shows by default the time the imap server received the email.
@ -22,6 +23,26 @@ both parts.
Solutions: a) Don't use buggy Eudora
b) Use the --syncinternaldates option and keep using Eudora :-)
=======================================================================
Q. Does imapsync support IMAP over TLS (IMAPS)?
R. Not natively.
but, 2 ways, at least :
a) There are patches in patches/ directory to do this
in imapsync code.
I tried to include them but it broke my tests.
It works but not always.
b) Use stunnel
http://www.stunnel.org/
Assuming there is an imaps (993) server on imap.foo.org,
on your localhost machine (or bar machine) run :
stunnel -c -d imap -r imap.foo.org:imaps
or
stunnel -c -d 143 -r imap.foo.org:993
then use imapsync on localhost (or bar machine) imap (143) port.
=======================================================================
Q. I'm migrating from WU to Cyrus, and the mail folders are

23
README
View file

@ -2,7 +2,7 @@ NAME
imapsync - IMAP synchronization, copy or migration tool. Synchronize
mailboxes between two imap servers. Good at IMAP migration.
$Revision: 1.137 $
$Revision: 1.139 $
INSTALL
imapsync works fine under any Unix OS.
@ -165,17 +165,23 @@ BUGS
Report any bugs to the author: lamiral@linux-france.org
IMAP SERVERS
Failure story reported with the following imap server :
- MailEnable 1.54 (Proprietary) http://www.mailenable.com/
Success stories reported with the following imap servers (softwares
names are in alphabetic order) :
- BincImap 1.2.3
- BincImap 1.2.3 (GPL) (http://www.bincimap.org/)
- CommunicatePro server (Redhat 8.0)
- Courier IMAP 1.5.1, 2.2.0, 2.1.1, 2.2.1
- Courier IMAP 1.5.1, 2.2.0, 2.1.1, 2.2.1 (GPL)
(http://www.courier-mta.org/)
- Critical Path (7.0.020)
- Cyrus IMAP 1.5, 1.6, 2.1, 2.1.15, 2.1.16, 2.1.18
2.2.1, 2.2.2-BETA, 2.2.10
- DBMail 1.2.1
- Dovecot 0.99.10.4 0.99.14
2.2.1, 2.2.2-BETA, 2.2.10, 2.2.12, 2.3-alpha (OSI Approved)
(http://asg.web.cmu.edu/cyrus/)
- DBMail 1.2.1 (GPL) (http://www.dbmail.org/)
- Dovecot 0.99.10.4 0.99.14 (LGPL) (http://www.dovecot.org/)
- Domino (Notes) 6.5, 5.0.6, 5.0.7
- Groupwise IMAP (Novell). Buggy so see the FAQ.
- iPlanet Messaging server 4.15, 5.1
@ -189,7 +195,8 @@ IMAP SERVERS
- Samsung Contact IMAP server 8.5.0
- SunONE Messaging server 5.2, 6.0 (SUN JES - Java Enterprise System)
- UW-imap servers (imap-2000b) rijkkramer IMAP4rev1 2000.287
(RedHat uses UW like 2003.338rh)
(RedHat uses UW like 2003.338rh) (OSI Approved)
(http://www.washington.edu/imap/)
- UW - QMail v2.1
Please report to the author any success or bad story with imapsync and
@ -254,5 +261,5 @@ AUTHOR
teaching free open and gratis softwares. Don't hesitate to pay him for
that services.
$Id: imapsync,v 1.137 2005/06/26 03:08:35 gilles Exp $
$Id: imapsync,v 1.139 2005/07/16 12:46:22 gilles Exp gilles $

38
TODO
View file

@ -1,6 +1,9 @@
TODO file for imapsync
----------------------
Read the IMAP RFC http://www.faqs.org/rfcs/rfc3501.html
Respect the NAMESPACE behavior like the RFC.
Add debian packaging in the Makefile.
Write to the debian maintener about that.
@ -9,29 +12,6 @@ Interface with external software like procmail
Look at http://barnson.org/node/81
Add in doc:
> The problem seems to be that one of the imap servers (the destination
> one) only supports connections over TLS, and refuses logins via plain tcp.
> Does imapsync support IMAP over TLS (IMAPS)?
Not natively.
but, 2 ways, at least :
a) There are patches in patches/ directory to do this
in imapsync code.
I tried to include them but it broke my tests.
It works but not always.
b) Use stunnel
http://www.stunnel.org/
Assuming there is an imaps (993) server on imap.foo.org,
on your localhost machine (or bar machine) run :
stunnel -c -d imap -r imap.foo.org:imaps
or
stunnel -c -d 143 -r imap.foo.org:993
then use imapsync on localhost (or bar machine) imap (143) port.
Read:
http://www.washington.edu/imap/documentation/commndmt.txt.html
@ -40,7 +20,6 @@ Talk about :
(netscape or thunderbird is ok with dates)
use the option --syncinternaldates "
Add usage about --regextrans2
To remove INBOX. in the name of destination folders :
--regextrans2 's/^INBOX\.(.+)/$1/'
@ -59,6 +38,17 @@ Add a --recurse option when --folder option is used.
Add --prefix1 option. Don't know what is the need exactly.
DONE. Add in doc: Does imapsync support IMAP over TLS (IMAPS)?
DONE. Add the licence of each IMAP software (the free ones).
DONE. Add MailEnable version 1.54 if
Javier Gomez succeed. He failed.
MailEnable is an early stage developpment IMAP server.
DONE. Update doc with ALL options.
DONE. Think about speed.

View file

@ -1 +1 @@
1.137
1.139

3768
bugs/lib/Mail/IMAPClient.pm Normal file

File diff suppressed because it is too large Load diff

25060
bugs/lib/Mail/reference.fr.pdf Normal file

File diff suppressed because one or more lines are too long

View file

@ -6,7 +6,7 @@ imapsync - IMAP synchronization, copy or migration
tool. Synchronize mailboxes between two imap servers. Good
at IMAP migration.
$Revision: 1.137 $
$Revision: 1.139 $
=head1 INSTALL
@ -190,17 +190,23 @@ Report any bugs to the author: lamiral@linux-france.org
=head1 IMAP SERVERS
Failure story reported with the following imap server :
- MailEnable 1.54 (Proprietary) http://www.mailenable.com/
Success stories reported with the following imap servers
(softwares names are in alphabetic order) :
- BincImap 1.2.3
- BincImap 1.2.3 (GPL) (http://www.bincimap.org/)
- CommunicatePro server (Redhat 8.0)
- Courier IMAP 1.5.1, 2.2.0, 2.1.1, 2.2.1
- Courier IMAP 1.5.1, 2.2.0, 2.1.1, 2.2.1 (GPL)
(http://www.courier-mta.org/)
- Critical Path (7.0.020)
- Cyrus IMAP 1.5, 1.6, 2.1, 2.1.15, 2.1.16, 2.1.18
2.2.1, 2.2.2-BETA, 2.2.10
- DBMail 1.2.1
- Dovecot 0.99.10.4 0.99.14
2.2.1, 2.2.2-BETA, 2.2.10, 2.2.12, 2.3-alpha (OSI Approved)
(http://asg.web.cmu.edu/cyrus/)
- DBMail 1.2.1 (GPL) (http://www.dbmail.org/)
- Dovecot 0.99.10.4 0.99.14 (LGPL) (http://www.dovecot.org/)
- Domino (Notes) 6.5, 5.0.6, 5.0.7
- Groupwise IMAP (Novell). Buggy so see the FAQ.
- iPlanet Messaging server 4.15, 5.1
@ -214,7 +220,8 @@ Success stories reported with the following imap servers
- Samsung Contact IMAP server 8.5.0
- SunONE Messaging server 5.2, 6.0 (SUN JES - Java Enterprise System)
- UW-imap servers (imap-2000b) rijkkramer IMAP4rev1 2000.287
(RedHat uses UW like 2003.338rh)
(RedHat uses UW like 2003.338rh) (OSI Approved)
(http://www.washington.edu/imap/)
- UW - QMail v2.1
Please report to the author any success or bad story with
@ -296,7 +303,7 @@ Gilles LAMIRAL earn his living writing, installing,
configuring and teaching free open and gratis
softwares. Don't hesitate to pay him for that services.
$Id: imapsync,v 1.137 2005/06/26 03:08:35 gilles Exp $
$Id: imapsync,v 1.139 2005/07/16 12:46:22 gilles Exp gilles $
=cut
@ -341,7 +348,7 @@ my(
use vars qw ($opt_G); # missing code for this will be option.
$rcs = ' $Id: imapsync,v 1.137 2005/06/26 03:08:35 gilles Exp $ ';
$rcs = ' $Id: imapsync,v 1.139 2005/07/16 12:46:22 gilles Exp gilles $ ';
$rcs =~ m/,v (\d+\.\d+)/;
$VERSION = ($1) ? $1 : "UNKNOWN";
@ -378,8 +385,8 @@ $error=0;
my $banner = join("",
'$RCSfile: imapsync,v $ ',
'$Revision: 1.137 $ ',
'$Date: 2005/06/26 03:08:35 $ ',
'$Revision: 1.139 $ ',
'$Date: 2005/07/16 12:46:22 $ ',
"\n",
"Mail::IMAPClient version used here is ",
$VERSION_IMAPClient,"\n"
@ -530,7 +537,7 @@ die unless $to->IsAuthenticated();
my (@f_folders, @t_folders, %fs_folders);
# Make a hash of subscribed folders in source server.
map { $fs_folders{$_}=1 } $from->subscribed();
# map { $fs_folders{$_}=1 } $from->subscribed();

View file

@ -1,6 +1,6 @@
#!/bin/sh
# $Id: tests.sh,v 1.39 2005/06/21 01:29:07 gilles Exp $
# $Id: tests.sh,v 1.40 2005/07/16 12:45:59 gilles Exp gilles $
#### Shell pragmas
@ -577,6 +577,51 @@ essnet_plume2()
--prefix2 INBOX. --regextrans2 's¤INBOX.INBOX¤INBOX¤'
}
dynamicquest_1()
{
perl -I bugs/lib ./imapsync \
--host1 69.38.48.81 \
--user1 testuser1@dq.com \
--passfile1 /var/tmp/secret.dynamicquest \
--host2 69.38.48.81 \
--user2 testuser2@dq.com \
--passfile2 /var/tmp/secret.dynamicquest \
--noauthmd5 --sep1 "/" --sep2 "/" \
--justconnect --dry
}
dynamicquest_2()
{
perl -I bugs/lib ./imapsync \
--host1 mail.dynamicquest.com \
--user1 gomez \
--passfile1 /var/tmp/secret.dynamicquestgomez \
--host2 69.38.48.81 \
--user2 testuser2@dq.com \
--passfile2 /var/tmp/secret.dynamicquest \
--noauthmd5 \
--justconnect --dry
}
dynamicquest_3()
{
perl -I bugs/lib ./imapsync \
--host1 loul \
--user1 tata \
--passfile1 /var/tmp/secret.tata \
--host2 69.38.48.81 \
--user2 testuser2@dq.com \
--passfile2 /var/tmp/secret.dynamicquest \
--noauthmd5 --sep2 "/" --debug --debugimap
}
useheader()
{
if test X`hostname` = X"plume"; then