This commit is contained in:
Nick Bebout 2011-03-12 02:44:13 +00:00
parent d6b3be8088
commit 252d8c82b7
6 changed files with 1215 additions and 16 deletions

View file

@ -1,5 +1,10 @@
#!/bin/cat #!/bin/cat
Brian Cunnie
Write good French and a patch
to allow password input on command line
if none by options --password nor --passfile
James Eborall James Eborall
Gave "Samsung Contact IMAP server 8.5.0" Gave "Samsung Contact IMAP server 8.5.0"

View file

@ -1,17 +1,22 @@
RCS file: RCS/imapsync,v RCS file: RCS/imapsync,v
Working file: imapsync Working file: imapsync
head: 1.124 head: 1.125
branch: branch:
locks: strict locks: strict
gilles: 1.124
access list: access list:
symbolic names: symbolic names:
keyword substitution: kv keyword substitution: kv
total revisions: 124; selected revisions: 124 total revisions: 125; selected revisions: 125
description: description:
---------------------------- ----------------------------
revision 1.124 locked by: gilles; revision 1.125
date: 2005/04/22 01:12:18; author: gilles; state: Exp; lines: +23 -9
Allow password input on command line
if none by options --password nor --passfile
Thanks to Brian Cunnie for his patch.
----------------------------
revision 1.124
date: 2005/04/13 11:37:38; author: gilles; state: Exp; lines: +9 -7 date: 2005/04/13 11:37:38; author: gilles; state: Exp; lines: +9 -7
Added Samsung Contact success Added Samsung Contact success
---------------------------- ----------------------------

4
README
View file

@ -2,7 +2,7 @@ NAME
imapsync - IMAP synchronization, copy or migration tool. Synchronize imapsync - IMAP synchronization, copy or migration tool. Synchronize
mailboxes between two imap servers. Good at IMAP migration. mailboxes between two imap servers. Good at IMAP migration.
$Revision: 1.124 $ $Revision: 1.125 $
INSTALL INSTALL
imapsync works fine under any Unix OS. imapsync works fine under any Unix OS.
@ -246,5 +246,5 @@ AUTHOR
teaching free open and gratis softwares. Don't hesitate to pay him for teaching free open and gratis softwares. Don't hesitate to pay him for
that services. that services.
$Id: imapsync,v 1.124 2005/04/13 11:37:38 gilles Exp gilles $ $Id: imapsync,v 1.125 2005/04/22 01:12:18 gilles Exp $

View file

@ -1 +1 @@
1.124 1.125

View file

@ -6,7 +6,7 @@ imapsync - IMAP synchronization, copy or migration
tool. Synchronize mailboxes between two imap servers. Good tool. Synchronize mailboxes between two imap servers. Good
at IMAP migration. at IMAP migration.
$Revision: 1.124 $ $Revision: 1.125 $
=head1 INSTALL =head1 INSTALL
@ -288,7 +288,7 @@ Gilles LAMIRAL earn his living writing, installing,
configuring and teaching free open and gratis configuring and teaching free open and gratis
softwares. Don't hesitate to pay him for that services. softwares. Don't hesitate to pay him for that services.
$Id: imapsync,v 1.124 2005/04/13 11:37:38 gilles Exp gilles $ $Id: imapsync,v 1.125 2005/04/22 01:12:18 gilles Exp $
=cut =cut
@ -298,6 +298,7 @@ use strict;
use Getopt::Long; use Getopt::Long;
use Mail::IMAPClient; use Mail::IMAPClient;
use Digest::MD5 qw(md5_base64); use Digest::MD5 qw(md5_base64);
use Term::ReadKey;
#use Digest::HMAC_MD5; #use Digest::HMAC_MD5;
eval { require 'usr/include/sysexits.ph' }; eval { require 'usr/include/sysexits.ph' };
@ -331,7 +332,7 @@ my(
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.124 2005/04/13 11:37:38 gilles Exp gilles $ '; $rcs = ' $Id: imapsync,v 1.125 2005/04/22 01:12:18 gilles Exp $ ';
$rcs =~ m/,v (\d+\.\d+)/; $rcs =~ m/,v (\d+\.\d+)/;
$VERSION = ($1) ? $1 : "UNKNOWN"; $VERSION = ($1) ? $1 : "UNKNOWN";
@ -368,8 +369,8 @@ $error=0;
my $banner = join("", my $banner = join("",
'$RCSfile: imapsync,v $ ', '$RCSfile: imapsync,v $ ',
'$Revision: 1.124 $ ', '$Revision: 1.125 $ ',
'$Date: 2005/04/13 11:37:38 $ ', '$Date: 2005/04/22 01:12:18 $ ',
"\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",
@ -392,14 +393,10 @@ sub missing_option {
$host1 || missing_option("--host1") ; $host1 || missing_option("--host1") ;
$port1 = (defined($port1)) ? $port1 : 143; $port1 = (defined($port1)) ? $port1 : 143;
$user1 || missing_option("--user1"); $user1 || missing_option("--user1");
$password1 || $passfile1 || missing_option("--passfile1 or --password1");
$password1 = (defined($passfile1)) ? firstline ($passfile1) : $password1;
$host2 || missing_option("--host2") ; $host2 || missing_option("--host2") ;
$port2 = (defined($port2)) ? $port2 : 143; $port2 = (defined($port2)) ? $port2 : 143;
$user2 || missing_option("--user2"); $user2 || missing_option("--user2");
$password2 || $passfile2 || missing_option("--passfile2 or --password2");
$password2 = (defined($passfile2)) ? firstline ($passfile2) : $password2;
$authmd5 = (defined($authmd5)) ? $authmd5 : 1; $authmd5 = (defined($authmd5)) ? $authmd5 : 1;
@ -409,6 +406,23 @@ $foldersizes = (defined($foldersizes)) ? $foldersizes : 1;
print "From imap server [$host1] port [$port1] user [$user1]\n"; print "From imap server [$host1] port [$port1] user [$user1]\n";
print "To imap server [$host2] port [$port2] user [$user2]\n"; print "To imap server [$host2] port [$port2] user [$user2]\n";
$password1 || $passfile1 || do {
print "What's the password for $user1\@$host1? ";
ReadMode 2;
$password1 = <>; chop $password1;
printf "\n"; ReadMode 0;
};
$password1 = (defined($passfile1)) ? firstline ($passfile1) : $password1;
$password2 || $passfile2 || do {
print "What's the password for $user2\@$host2? ";
ReadMode 2;
$password2 = <>; chop $password2;
printf "\n"; ReadMode 0;
};
$password2 = (defined($passfile2)) ? firstline ($passfile2) : $password2;
my $from = (); my $from = ();
my $to = (); my $to = ();

1175
patches/imapsync-readkey Normal file

File diff suppressed because it is too large Load diff