From 65fd3eac5dcf764f6766d55f2cacdd1a2494b9c3 Mon Sep 17 00:00:00 2001 From: Nick Bebout Date: Wed, 19 Nov 2014 16:16:16 -0600 Subject: [PATCH] 1.607 --- ChangeLog | 55 +- FAQ | 48 +- INSTALL | 14 +- Makefile | 66 +- README | 5 +- README_dist.txt | 6 - TODO | 21 +- TUTORIAL.html | 8 +- VERSION | 2 +- VERSION_EXE | 2 +- W/.BUILD_EXE_TIME | 9 + W/TUTORIAL.t2t | 8 +- W/learn/imap_utf7_decode | 29 + W/ml_announce.in | 6 +- W/paypal_reply/paypal_build_invoices | 17 +- W/paypal_return.shtml | 6 +- W/perlcritic_2.out | 1255 +++++++++++++------------- W/perlcritic_3.out | 107 ++- W/test3.bat | 20 +- W/test3_gmail.bat | 14 +- W/test4.bat | 17 + W/test_exe_2.bat | 17 +- build_exe.bat | 11 +- examples/install_modules.bat | 8 +- imapsync | 371 +++++--- index.shtml | 43 +- tests.sh | 96 +- 27 files changed, 1382 insertions(+), 879 deletions(-) delete mode 100644 README_dist.txt create mode 100755 W/learn/imap_utf7_decode create mode 100644 W/test4.bat diff --git a/ChangeLog b/ChangeLog index acdf795..ab8a8a0 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,17 +1,64 @@ RCS file: RCS/imapsync,v Working file: imapsync -head: 1.596 +head: 1.607 branch: locks: strict - gilles: 1.596 + gilles: 1.607 access list: symbolic names: keyword substitution: kv -total revisions: 596; selected revisions: 596 +total revisions: 607; selected revisions: 607 description: ---------------------------- -revision 1.596 locked by: gilles; +revision 1.607 locked by: gilles; +date: 2014/11/14 16:25:06; author: gilles; state: Exp; lines: +46 -40 +Added several checks if IsUnconnected. Goal avoid imap commands while disconnected. +---------------------------- +revision 1.606 +date: 2014/11/14 14:49:13; author: gilles; state: Exp; lines: +16 -13 +Added total size transferred after each message copied. +Added number of total to be synced as a denominator dddd after each message copied, nnn/dddd, where nnn is the number of messages copied. +---------------------------- +revision 1.605 +date: 2014/11/11 00:00:37; author: gilles; state: Exp; lines: +40 -10 +Bugfix. On Windows file path with brackets [] are special. [a] must be written [[]a[]] +---------------------------- +revision 1.604 +date: 2014/11/08 00:29:26; author: gilles; state: Exp; lines: +36 -9 +Added --skipemptyfolders to skip empty host1 folders. They are not created on host2. +---------------------------- +revision 1.603 +date: 2014/11/07 22:06:33; author: gilles; state: Exp; lines: +26 -26 +Typo from previous save with gedit and ¤ +---------------------------- +revision 1.602 +date: 2014/11/07 21:57:57; author: gilles; state: Exp; lines: +82 -19 +Added utf8 output for folder names that use special characters in utf7imap +---------------------------- +revision 1.601 +date: 2014/10/28 10:48:07; author: gilles; state: Exp; lines: +22 -22 +Moved foldersizes call after folders lists print. +---------------------------- +revision 1.600 +date: 2014/10/27 10:41:52; author: gilles; state: Exp; lines: +8 -8 +Remove /x from regex applied with --include and --exclude. Blanks no longer have to be explicit with \ or [ ]. +---------------------------- +revision 1.599 +date: 2014/10/26 23:42:12; author: gilles; state: Exp; lines: +14 -10 +Added help usage for --nomixfolders +---------------------------- +revision 1.598 +date: 2014/10/21 00:27:07; author: gilles; state: Exp; lines: +20 -7 +Added tests to check --regextrans2 's,(.*),\L$1,' +Exchange issue with folders with same name and --delete2. +---------------------------- +revision 1.597 +date: 2014/10/06 10:48:26; author: gilles; state: Exp; lines: +12 -11 +Changed --nomixdiffcasefolders to --nomixfolders. +Bugfix. --nomixdiffcasefolders was not parsed in command line so it did not work. +---------------------------- +revision 1.596 date: 2014/09/04 17:17:36; author: gilles; state: Exp; lines: +11 -6 Added --logfile in help output. Added --nolog in help output. diff --git a/FAQ b/FAQ index 14634aa..14ca4a9 100644 --- a/FAQ +++ b/FAQ @@ -1,5 +1,5 @@ #!/bin/cat -# $Id: FAQ,v 1.186 2014/09/06 07:39:40 gilles Exp gilles $ +# $Id: FAQ,v 1.190 2014/11/14 17:08:02 gilles Exp gilles $ +------------------+ | FAQ for imapsync | @@ -1241,7 +1241,7 @@ the flow to go the other way): --proxyauth1 --password1 '$pass_with_dollars$' \ --host2 cyrusimapbackend.mycompany.com \ --user2 SameOrDiffererentUser@mycompany.com \ - --authuser2 CyrusAdminAccount --proxyauth2 + --authuser2 CyrusAdminAccount --password2 CyrusAdminPassword We also needed to: @@ -1280,6 +1280,11 @@ or the NETBIOS or DNS name of the domain. The exact format might vary depending on local configuration and you should experiment with the different formats. +PLAIN authentication is the only way to go with --authuser1 for now. +So don't use --authmech1 SOMETHING with --authuser1 admin_user, +it will not work. +Same behavior with the --authuser2 option. + A little note from Michael Scherer. The previous workaround in the FAQ seems to be obsolete. I can confirm that @@ -1320,6 +1325,12 @@ but previous in Office365 you must do something like that, using powershell: Add-MailboxPermission -identity user_to_be_migrated@domain.com -user user_admin@domain.com -accessrights fullaccess -inheritancetype all +PLAIN authentication is the only way to go with --authuser1 for now. +So don't use --authmech1 SOMETHING with --authuser1 admin_user, +it will not work. +Same behavior with the --authuser2 option. + + ====================================================================== Q. How to migrate from uw-imap with an admin/authuser account? @@ -1347,14 +1358,19 @@ R. Use: --authuser1 admin_user ----password1 admin_user_password \ --user1 foo_user --ssl1 -In this case, --authmech1 PLAIN will be used by default since it -is the only way to go for now. So don't use --authmech1 SOMETHING -with --authuser1 admin_user, it will not work. +Instead of --ssl1 the alternative --tls1 can be used. +With --authuser1, the option --authmech1 PLAIN is set +automatically, you don't have to add it. + +PLAIN authentication is the only way to go with --authuser1 for now. +So don't use --authmech1 SOMETHING with --authuser1 admin_user, +it will not work. Same behavior with the --authuser2 option. -Do not forget the option --ssl1 since PLAIN auth is only +Do not forget the option --ssl1 or --tls1 since PLAIN auth is only supported with ssl encryption most of the time. But it can -work without --ssl1 if PLAIN is permitted in normal use. +work without --ssl1 nor --tls1 if PLAIN is permitted in clear text +transmissions (the normal mode). Add the AdminAccount to admins line in /etc/imapd.conf Give AdminAccount lrswipkxtecda to the Cyrus Imap account @@ -1770,6 +1786,7 @@ imapsync --host1 mail.oldhost.com \ --ssl2 \ --exitwhenover 500000000 \ --maxsize 25000000 \ + --expunge1 \ --addheader \ --exclude "\[Gmail\]$" \ --regextrans2 "s/[ ]+/_/g" \ @@ -1794,6 +1811,13 @@ up to 25 MB. This value increases over time, it was 10 MB some years ago so you can try higher values. The Gmail page about this limit is https://support.google.com/mail/answer/6584 +--expunge1 is optional. It deletes messages marked \Deleted on host1. +Imapsync syncs messages with all their flags, Gmail takes the messages +marked \Deleted but deletes or moves them just after. +Option --expunge1 really removes messages marked \Deleted on host1 +so they are not synced at all. + + The --addheader option is there because "Sent" folder messages sometimes lack the "Message-Id:" and "Received:" headers needed by imapsync to identify messages (only when --useuid is not used). @@ -2005,6 +2029,16 @@ No specific option for HMailServer 5.3.3 since NAMESPACE is supported. Maybe --subscribe_all will help you to see all migrated folders. +======================================================================= +Q. Synchronizing from Kerio Connect to XXX + +R. No special options required. +See also: +http://www.linux-france.org/prj/imapsync_list/msg01756.html +http://www.safetynet-it.com/it-support/mac-kerio-server-to-microsoft-exchange-2010-migration-1/ +http://www.safetynet-it.com/it-support/mac-kerio-server-to-microsoft-exchange-2010-migration-2/ + + ======================================================================= Q. Synchronizing from SmarterMail to XXX diff --git a/INSTALL b/INSTALL index 9c252a4..972b36a 100644 --- a/INSTALL +++ b/INSTALL @@ -1,4 +1,4 @@ -# $Id: INSTALL,v 1.39 2014/09/19 19:37:08 gilles Exp gilles $ +# $Id: INSTALL,v 1.40 2014/11/14 17:07:21 gilles Exp gilles $ # # INSTALL file for imapsync # imapsync : IMAP sync and migrate tool. @@ -80,7 +80,8 @@ Test all Perl modules dependency in one command: perl -mMail::IMAPClient -mDigest::MD5 -mTerm::ReadKey -mIO::Socket::SSL \ -mDigest::HMAC_MD5 -mAuthen::NTLM -e -mTime::HiRes \ - -mData::Uniqid -mURI::Escape -mFile::Copy::Recursive -mIO::Tee "" + -mData::Uniqid -mURI::Escape -mFile::Copy::Recursive -mIO::Tee \ + -mUnicode::String "" You can install easily those Perl modules in latest release via the following commands (with root permissions) @@ -92,6 +93,7 @@ following commands (with root permissions) perl -MCPAN -e "install URI::Escape" perl -MCPAN -e "install File::Copy::Recursive" perl -MCPAN -e "install IO::Tee" + perl -MCPAN -e "install Unicode::String" perl -MCPAN -e "install Data::Uniqid" perl -MCPAN -e "install Authen::NTLM" @@ -117,11 +119,14 @@ On Debian/Ubuntu: aptitude install liburi-perl # URI::Escape aptitude install libfile-copy-recursive-perl # File::Copy::Recursive aptitude install libio-tee-perl # IO::Tee + aptitude install libunicode-string-perl # Unicode::String On Ubuntu 14 (thanks to http://www.jverdeyen.be/ubuntu/imapsync-on-ubuntu/): sudo apt-get install makepasswd rcs perl-doc libio-tee-perl git - sudo apt-get install libmail-imapclient-perl libdigest-md5-file-perl libterm-readkey-perl libfile-copy-recursive-perl + sudo apt-get install libmail-imapclient-perl libdigest-md5-file-perl + sudo apt-get install libterm-readkey-perl libfile-copy-recursive-perl + sudo apt-get install libunicode-string-perl On Mandriva: @@ -132,7 +137,7 @@ On Mandriva: urpmi perl-URI # URI::Escape urpmi perl-File-Copy-Recursive # File::Copy::Recursive urpmi perl-IO-Tee # IO::Tee - + urpmi perl-Unicode-String # Unicode::String On CentOS (thanks to Ralf Hauber) @@ -148,6 +153,7 @@ On CentOS (thanks to Ralf Hauber) yum install perl-Data-Uniqid # Data::Uniqid yum install perl-File-Copy-Recursive # File::Copy::Recursive yum install perl-IO-Tee # IO::Tee + yum install perl-Unicode-String # Unicode::String INSTALLING on Unix diff --git a/Makefile b/Makefile index ad6a0c1..036bc33 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,5 @@ -# $Id: Makefile,v 1.151 2014/09/21 08:35:07 gilles Exp gilles $ +# $Id: Makefile,v 1.155 2014/11/14 23:54:52 gilles Exp gilles $ .PHONY: help usage all @@ -15,11 +15,13 @@ usage: @echo "make testf # run tests" @echo "make testv # run tests verbosely" @echo "make test_quick # few tests verbosely" - @echo "make tests_win32 # run --test and W/test.bat on win32" - @echo "make tests_win32_dev # run W/test2.bat on win32" - @echo "make tests_win32_dev3 # run W/test3.bat on win32" - @echo "make .prereq_win32 # run examples/install_modules.bat on win32" + @echo "make W/test.bat # run --test and W/test.bat on win32" + @echo "make W/test2.bat # run W/test2.bat on win32" + @echo "make W/test3.bat # run W/test3.bat on win32" + @echo "make W/test_exe_2.bat # run W/test_exe_2.bat on win32" + @echo "make prereq_win32 # run examples/install_modules.bat on win32" @echo "make all " + @echo "make upload_tests # upload tests.sh" @echo "make upload_index" @echo "make valid_index # check index.shtml for good syntax" @echo "make upload_ks" @@ -138,7 +140,6 @@ test_quick_3xx: imapsync tests.sh testv3: imapsync tests.sh CMD_PERL='perl -I./$(IMAPClient_3xx)' /usr/bin/time sh tests.sh - ./i3 --version >> .test_3xx testv: testv3 @@ -146,19 +147,16 @@ test: .test_3xx tests: test +# .test_3xx is created by tests.sh with success at all mandatory tests .test_3xx: imapsync tests.sh CMD_PERL='perl -I./$(IMAPClient_3xx)' /usr/bin/time sh tests.sh 1>/dev/null - ./i3 --version >> .test_3xx testf: clean_test test -.PHONY: lfo upload_lfo public imapsync_cidone +.PHONY: lfo upload_lfo dosify_bat public imapsync_cidone -.dosify_bat: W/*.bat examples/*.bat build_exe.bat +dosify_bat: unix2dos W/*.bat examples/*.bat build_exe.bat - touch .dosify_bat - -dosify_bat: .dosify_bat copy_win32: scp imapsync Admin@c:'C:/msys/1.0/home/Admin/imapsync/' @@ -171,29 +169,47 @@ tests_win32: dosify_bat # ssh Admin@c 'tasklist /FI "PID eq 0"' # ssh Admin@c 'tasklist /NH /FO CSV' -tests_win32_dev: dosify_bat +.PHONY: W/*.bat + +W/test2.bat: + unix2dos W/*.bat scp imapsync examples/file.txt W/test2.bat Admin@c:'C:/msys/1.0/home/Admin/imapsync/' ssh Admin@c 'C:/msys/1.0/home/Admin/imapsync/test2.bat' -tests_win32_dev3: dosify_bat +W/test3.bat: + unix2dos W/*.bat scp imapsync W/test3.bat Admin@c:'C:/msys/1.0/home/Admin/imapsync/' ssh Admin@c 'C:/msys/1.0/home/Admin/imapsync/test3.bat' -test_imapsync_exe: dosify_bat +W/test_exe_2.bat: + unix2dos W/*.bat + scp imapsync W/test_exe_2.bat Admin@c:'C:/msys/1.0/home/Admin/imapsync/' + ssh Admin@c 'C:/msys/1.0/home/Admin/imapsync/test_exe_2.bat' + +W/test3_gmail.bat: + unix2dos W/*.bat + scp imapsync W/test3_gmail.bat /g/var/pass/secret.gilles_gmail Admin@c:'C:/msys/1.0/home/Admin/imapsync/' + ssh Admin@c 'C:/msys/1.0/home/Admin/imapsync/test3_gmail.bat' + +test_imapsync_exe: + unix2dos W/*.bat scp W/test_exe.bat Admin@c:'C:/msys/1.0/home/Admin/imapsync/' time ssh Admin@c 'C:/msys/1.0/home/Admin/imapsync/test_exe.bat' -.prereq_win32: examples/install_modules.bat .dosify_bat +prereq_win32: + unix2dos W/*.bat examples/*.bat build_exe.bat scp examples/install_modules.bat Admin@c:'C:/msys/1.0/home/Admin/imapsync/examples/' ssh Admin@c 'C:/msys/1.0/home/Admin/imapsync/examples/install_modules.bat' - touch .prereq_win32 -imapsync.exe: imapsync .prereq_win32 + +imapsync.exe: imapsync rcsdiff imapsync ssh Admin@c 'perl -V' (date "+%s"| tr "\n" " "; echo -n "BEGIN " $(VERSION) ": "; date) >> W/.BUILD_EXE_TIME - scp imapsync build_exe.bat W/test_exe.bat \ - Admin@c:'C:/msys/1.0/home/Admin/imapsync/' + unix2dos W/*.bat examples/*.bat build_exe.bat + scp examples/install_modules.bat Admin@c:'C:/msys/1.0/home/Admin/imapsync/examples/' + ssh Admin@c 'C:/msys/1.0/home/Admin/imapsync/examples/install_modules.bat' + scp imapsync build_exe.bat W/test_exe.bat Admin@c:'C:/msys/1.0/home/Admin/imapsync/' ssh Admin@c 'C:/msys/1.0/home/Admin/imapsync/build_exe.bat' ssh Admin@c 'C:/msys/1.0/home/Admin/imapsync/test_exe.bat' scp Admin@c:'C:/msys/1.0/home/Admin/imapsync/imapsync.exe' . @@ -201,7 +217,7 @@ imapsync.exe: imapsync .prereq_win32 dos2unix ./VERSION_EXE (date "+%s"| tr "\n" " "; echo -n "END " $(VERSION) ": "; date) >> W/.BUILD_EXE_TIME -exe: imapsync build_exe.bat .dosify_bat +exe: imapsync build_exe.bat dosify_bat (date "+%s"| tr "\n" " "; echo -n "BEGIN " $(VERSION) ": "; date) >> W/.BUILD_EXE_TIME scp imapsync build_exe.bat Admin@c:'C:/msys/1.0/home/Admin/imapsync/' ssh Admin@c 'C:/msys/1.0/home/Admin/imapsync/build_exe.bat' @@ -218,6 +234,7 @@ zip: dosify_bat unix2dos ../prepa_zip/imapsync_$(VERSION_EXE)/*.txt cd ../prepa_zip/ && rm -f ./imapsync_$(VERSION_EXE).zip && zip -r ./imapsync_$(VERSION_EXE).zip ./imapsync_$(VERSION_EXE)/ scp ../prepa_zip/imapsync_$(VERSION_EXE).zip Admin@c:'C:/msys/1.0/home/Admin/' + cp ../prepa_zip/imapsync_$(VERSION_EXE).zip /ee/imapsync/ @@ -331,6 +348,13 @@ ksa: rsync -avHz --delete -P \ . gilles@ks.lamiral.info:public_html/imapsync/ + +upload_tests: tests.sh + rsync -avHz --delete -P \ + tests.sh \ + gilles@ks.lamiral.info:public_html/imapsync/ + + upload_ks: ci tarball rsync -lptvHzP $(PUBLIC_FILES) \ root@ks.lamiral.info:/var/www/imapsync/ diff --git a/README b/README index eec1e72..cd9f157 100644 --- a/README +++ b/README @@ -4,7 +4,7 @@ NAME More than 52 different IMAP server softwares supported with success, few failures. - $Revision: 1.596 $ + $Revision: 1.607 $ SYNOPSIS To synchronize imap account "foo" on "imap.truc.org" to imap account @@ -374,6 +374,7 @@ IMAP SERVERS - MailEnable 4.23 [host1] [host2], 4.26 [host1][host2], 5 [host1] - MDaemon 7.0.1, 8.0.2, 8.1, 9.5.4 (Windows server 2003 R2 platform), 9.6.5 [host1], 12 [host2], 12.0.3 [host1], 12.5.5 [host1], + 13.5 [host2], 14.5 [host2] - Mercury 4.1 (Windows server 2000 platform) - Microsoft Exchange Server 5.5, 6.0.6249.0[host1], 6.0.6487.0[host1], 6.5.7638.1 [host2], 6.5 [host1], Exchange 2007 SP1 (with Update Rollup 2), @@ -486,5 +487,5 @@ SIMILAR SOFTWARES Feedback (good or bad) will often be welcome. - $Id: imapsync,v 1.596 2014/09/04 17:17:36 gilles Exp gilles $ + $Id: imapsync,v 1.607 2014/11/14 16:25:06 gilles Exp gilles $ diff --git a/README_dist.txt b/README_dist.txt deleted file mode 100644 index 14bffd2..0000000 --- a/README_dist.txt +++ /dev/null @@ -1,6 +0,0 @@ - -imapsync-1.592.tgz is for Unix and Mac users. - -imapsync-1.592.zip is for Windows users. - -the file script imapsync for a fast upgrade on Unix. diff --git a/TODO b/TODO index 71175fd..1420434 100644 --- a/TODO +++ b/TODO @@ -1,5 +1,5 @@ #!/bin/cat -# $Id: TODO,v 1.126 2014/05/21 01:15:47 gilles Exp gilles $ +# $Id: TODO,v 1.127 2014/11/14 17:06:17 gilles Exp gilles $ TODO file for imapsync ---------------------- @@ -17,7 +17,11 @@ http://www.yippiemove.com/ http://www.migrationwiz.com/ http://www.microsoft.com/download/en/details.aspx?id=1329 "Microsoft Transporter Suite" +Separate the online site in a subfolder site/ or www/ and make the upper directory simple. + Add an option to remove empty folders on host1, except INBOX. +Is it possible to run imapsync in a way that empty folders on host1 +aren't created at all on host2? Apply --disarmreadreceipts only to UNSEEN messages. @@ -73,11 +77,6 @@ Does \lalala can be forbidden (courier does a with * OK [PERMANENTFLAGS (\* \Draft \Answered \Flagged \Deleted \Seen)] Limited -Suggestion: it's very difficult to track down messages which are behaving -funny during the sync. It would be great - and presumably easy to code - -to have an option to have imapsync display e.g. the subject of an -e-mail when it gets synced, rather than just the message ID and the date/time. - Add a well described problem for each problem detected and counted in error counter statistics. @@ -156,6 +155,16 @@ http://asg.web.cmu.edu/cyrus/download/imapd/altnamespace.html =========================================================================== +DONE. Subject is output when APPEND fails. Done since a long time. +Suggestion: it's very difficult to track down messages which are behaving +funny during the sync. It would be great - and presumably easy to code - +to have an option to have imapsync display e.g. the subject of an +e-mail when it gets synced, rather than just the message ID and the date/time. + + +DONE. Add W/learn/imap_utf7 in imapsync, the folders lists output looks a good place, +if transcription is needed. + DONE. Add options --log and --logfile to log both on screen and to a file. DONE. Document the tee command solution (Unix and Windows) in the FAQ. diff --git a/TUTORIAL.html b/TUTORIAL.html index 1d73641..01ead26 100644 --- a/TUTORIAL.html +++ b/TUTORIAL.html @@ -25,14 +25,14 @@

Introduction

-Three Internet protocols share the big pie -access of almost all email accounts : POP, IMAP, HTTP. +Three Internet protocols are used to access almost all email accounts: +POP, IMAP, HTTP.

The oldest one is POP, Post Office Protocol, it allows only one main box, also called INBOX. The second protocol is IMAP, Internet Message Access Protocol, which allows -a hierarchy of mailboxes also called folders, allows also concurrent accesses, +a hierarchy of mailboxes also called folders, it also allows concurrent accesses, tagging with flags, search by many criterium like date, subject, size etc. The third protocol is HTTP, HyperText Transfer Protocol, via webmails. Webmails often offer the same features than imap servers and, @@ -125,5 +125,5 @@ is equivalent to

- + diff --git a/VERSION b/VERSION index 830fd97..24e7e7c 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.596 +1.607 diff --git a/VERSION_EXE b/VERSION_EXE index 830fd97..24e7e7c 100644 --- a/VERSION_EXE +++ b/VERSION_EXE @@ -1 +1 @@ -1.596 +1.607 diff --git a/W/.BUILD_EXE_TIME b/W/.BUILD_EXE_TIME index 50feacb..0a22777 100644 --- a/W/.BUILD_EXE_TIME +++ b/W/.BUILD_EXE_TIME @@ -293,3 +293,12 @@ 1411228014 BEGIN 1.596 : samedi 20 septembre 2014, 17:46:54 (UTC+0200) 1411266788 BEGIN 1.596 : dimanche 21 septembre 2014, 04:33:08 (UTC+0200) 1411267953 END 1.596 : dimanche 21 septembre 2014, 04:52:33 (UTC+0200) +1412693514 BEGIN 1.597 : mardi 7 octobre 2014, 16:51:54 (UTC+0200) +1412750854 BEGIN 1.597 : mercredi 8 octobre 2014, 08:47:34 (UTC+0200) +1412751726 END 1.597 : mercredi 8 octobre 2014, 09:02:06 (UTC+0200) +1415448836 BEGIN 1.604 : samedi 8 novembre 2014, 13:13:56 (UTC+0100) +1415449975 END 1.604 : samedi 8 novembre 2014, 13:32:55 (UTC+0100) +1415818269 BEGIN 1.605 : mercredi 12 novembre 2014, 19:51:09 (UTC+0100) +1415819173 END 1.605 : mercredi 12 novembre 2014, 20:06:13 (UTC+0100) +1415985918 BEGIN 1.607 : vendredi 14 novembre 2014, 18:25:18 (UTC+0100) +1415986823 END 1.607 : vendredi 14 novembre 2014, 18:40:23 (UTC+0100) diff --git a/W/TUTORIAL.t2t b/W/TUTORIAL.t2t index 996a2c1..adf1814 100644 --- a/W/TUTORIAL.t2t +++ b/W/TUTORIAL.t2t @@ -1,19 +1,19 @@ -% $Id: TUTORIAL.t2t,v 1.2 2013/08/16 00:48:57 gilles Exp gilles $ +% $Id: TUTORIAL.t2t,v 1.3 2014/10/08 08:49:29 gilles Exp gilles $ = Tutorial for imapsync = == Introduction == -Three Internet protocols share the big pie -access of almost all email accounts : POP, IMAP, HTTP. +Three Internet protocols are used to access almost all email accounts: +POP, IMAP, HTTP. The oldest one is POP, Post Office Protocol, it allows only one main box, also called INBOX. The second protocol is IMAP, Internet Message Access Protocol, which allows -a hierarchy of mailboxes also called folders, allows also concurrent accesses, +a hierarchy of mailboxes also called folders, it also allows concurrent accesses, tagging with flags, search by many criterium like date, subject, size etc. The third protocol is HTTP, HyperText Transfer Protocol, via webmails. Webmails often offer the same features than imap servers and, diff --git a/W/learn/imap_utf7_decode b/W/learn/imap_utf7_decode new file mode 100755 index 0000000..045794d --- /dev/null +++ b/W/learn/imap_utf7_decode @@ -0,0 +1,29 @@ +#!/usr/bin/perl + +use Unicode::String ; + +while (<>) { + chomp ; + #push( @result, sprintf( "%33s %s\n", $_, decode( $_ ) ) ) ; + push( @result, sprintf( "%s\n", imap_utf7_decode( $_ ) ) ) ; +} + +print @result ; + +# http://cpansearch.perl.org/src/FABPOT/Unicode-IMAPUtf7-2.01/lib/Unicode/IMAPUtf7.pm + +sub imap_utf7_decode { + my ($s) = @_; + + # Algorithm + # On remplace , par / dans les BASE 64 (, entre & et -) + # On remplace les &, non suivi d'un - par + + # On remplace les &- par & + $s =~ s/\+/PLUSPLACEHOLDER/g; + $s =~ s/&([^,&\-]*),([^,\-&]*)\-/&$1\/$2\-/g; + $s =~ s/&(?!\-)/\+/g; + $s =~ s/&\-/&/g; + $s =~ s/PLUSPLACEHOLDER/+-/g; + + return( Unicode::String::utf7( $s )->utf8 ) ; +} diff --git a/W/ml_announce.in b/W/ml_announce.in index b0a5557..76c45d0 100644 --- a/W/ml_announce.in +++ b/W/ml_announce.in @@ -1,4 +1,4 @@ -m4_dnl $Id: ml_announce.in,v 1.7 2014/05/30 01:39:23 gilles Exp gilles $ +m4_dnl $Id: ml_announce.in,v 1.8 2014/10/22 11:04:30 gilles Exp gilles $ m4_dnl m4_define(`M4_imapsync_VERSION',m4_esyscmd(cat VERSION|tr -d '\n'))m4_dnl m4_define(`M4_SECRET_PATH',m4_esyscmd(cat dist/path_last.txt|tr -d '\n'))m4_dnl @@ -19,6 +19,10 @@ and the latest imapsync source code (release M4_imapsync_VERSION) at the followi http://imapsync.lamiral.info/dist/M4_SECRET_PATH/ +or also from this page + +http://imapsync.lamiral.info/paypal_return.shtml + Three files are there: - imapsync is directly the perl script (also found in the tarball) for a fast upgrade. - imapsync-M4_imapsync_VERSION.tgz is the tarball containing everything of the project (maybe too much) diff --git a/W/paypal_reply/paypal_build_invoices b/W/paypal_reply/paypal_build_invoices index c802f81..a0291cb 100755 --- a/W/paypal_reply/paypal_build_invoices +++ b/W/paypal_reply/paypal_build_invoices @@ -1,6 +1,6 @@ #!/bin/sh -# $Id: paypal_build_invoices,v 1.76 2014/09/02 23:40:15 gilles Exp gilles $ +# $Id: paypal_build_invoices,v 1.78 2014/10/22 11:26:06 gilles Exp gilles $ # usage: sh paypal_build_invoices /g/var/paypal_invoices/???? @@ -54,9 +54,9 @@ cp /home/gilles/public_html/AGIL/factures/000/facture_imapsync-000.tex /g/var/pa #/g/public_html/imapsync/W/paypal_reply/paypal_bilan --write_invoices --first_in 3413 --avoid_numbers '3450 3451' /g/paypal/paypal_2014_07_complet.csv #/g/public_html/imapsync/W/paypal_reply/paypal_bilan --write_invoices --first_in 3450 /g/paypal/virements_2014_07.csv #/g/public_html/imapsync/W/paypal_reply/paypal_bilan --write_invoices --first_in 3475 /g/paypal/paypal_2014_08_complet.csv - -/g/public_html/imapsync/W/paypal_reply/paypal_bilan --write_invoices --first_in 3538 /g/paypal/paypal_2014_09_complet.csv - +#/g/public_html/imapsync/W/paypal_reply/paypal_bilan --write_invoices --first_in 3538 /g/paypal/paypal_2014_09_complet.csv +#/g/public_html/imapsync/W/paypal_reply/paypal_bilan --write_invoices --first_in 3614 /g/paypal/virements_2014_10.csv +#/g/public_html/imapsync/W/paypal_reply/paypal_bilan --write_invoices --first_in 3618 /g/paypal/paypal_2014_10_complet.csv : /g/public_html/imapsync/W/paypal_reply/paypal_bilan --first_in 147 /g/paypal/paypal_2010_11_complet.csv : /g/public_html/imapsync/W/paypal_reply/paypal_bilan --first_in 214 /g/paypal/paypal_2010_12_complet.csv @@ -105,9 +105,12 @@ cp /home/gilles/public_html/AGIL/factures/000/facture_imapsync-000.tex /g/var/pa : /g/public_html/imapsync/W/paypal_reply/paypal_bilan --first_in 3413 --avoid_numbers '3450 3451' /g/paypal/paypal_2014_07_complet.csv : /g/public_html/imapsync/W/paypal_reply/paypal_bilan --first_in 3450 /g/paypal/virements_2014_07.csv : /g/public_html/imapsync/W/paypal_reply/paypal_bilan --first_in 3475 /g/paypal/paypal_2014_08_complet.csv +: /g/public_html/imapsync/W/paypal_reply/paypal_bilan --first_in 3538 /g/paypal/paypal_2014_09_complet.csv +: /g/public_html/imapsync/W/paypal_reply/paypal_bilan --first_in 3614 /g/paypal/virements_2014_10.csv +: /g/public_html/imapsync/W/paypal_reply/paypal_bilan --first_in 3618 /g/paypal/paypal_2014_10_complet.csv set -x -/g/public_html/imapsync/W/paypal_reply/paypal_bilan --first_in 3538 /g/paypal/paypal_2014_09_complet.csv +/g/public_html/imapsync/W/paypal_reply/paypal_bilan --first_in 3691 /g/paypal/paypal_2014_11_complet.csv set +x # La totale @@ -116,7 +119,7 @@ set +x --first_in 147 --avoid_numbers '292 293 643 644 731 732 1093 1330 1331 1332 1333 1334 1652 1653 2131 2132 2295 2296 2297 2298 2625 2626 2970 2971 2972 -3093 3296 3411 3412 3450 3451' \ +3093 3296 3411 3412 3450 3451 3614 3615 3616 3617' \ /g/paypal/paypal_201?_??_complet.csv #set -v @@ -124,7 +127,7 @@ set +x --first_in 147 --avoid_numbers '292 293 643 644 731 732 1093 1330 1331 1332 1333 1334 1652 1653 2131 2132 2295 2296 2297 2298 2625 2626 2970 2971 2972 -3093 3296 3411 3412 3450 3451' \ +3093 3296 3411 3412 3450 3451 3614 3615 3616 3617' \ /g/paypal/paypal_201?_??_complet.csv #set +v diff --git a/W/paypal_return.shtml b/W/paypal_return.shtml index f70a624..67496bd 100644 --- a/W/paypal_return.shtml +++ b/W/paypal_return.shtml @@ -5,7 +5,7 @@ imapsync download - + @@ -57,7 +57,7 @@ You will be soon subscribed to the newsletter announcing new releases (and only

For professionnal support, in order to explain your specific needs, find best solutions for them, avoid loosing time, -and then succeed your migration quickly, contact me +and succeed your migration in the best conditions, contact me (Gilles LAMIRAL) by email or phone at: