Commit | Line | Data |
---|---|---|
d927792b TJ |
1 | Small tool to fix the IMAP internaldate |
2 | in case it's too much off compared to the last date | |
3 | stored in the received lines. | |
4 | ||
5 | F.e. some IMAP clients tend to reset the imap internaldate | |
6 | when you move a message between folders. | |
7 | ||
8 | Features: | |
9 | - Configurable tolerance | |
10 | - Test mode: Show only what would be done | |
11 | - Statistics: How many messages it would modify per user / folder | |
12 | - Log file with all actions | |
13 | - Caching | |
14 | ||
002533ab TJ |
15 | Important note: Only the -first- received line is interpreted. |
16 | This was the lastest date on our server. We don't interpret | |
17 | all received lines because spam messages tend to contain bogus dates. | |
18 | An alternative approach would be to interpret the "Date:" header. | |
19 | ||
20 | Prerequisites: | |
21 | Python version 3 or later | |
22 | ||
8a36cfd2 TJ |
23 | Linux: Should be part of any modern linux distribution |
24 | Windows: Get it from http://www.python.org/getit/windows/ | |
25 | ||
97bd6bea PD |
26 | Necessary files: |
27 | - userdata.csv: Contains information necessary for the user session with format: | |
1007fa6d TJ |
28 | username,password |
29 | testuser1,testpass1 | |
30 | testuser2,testpass2 | |
31 | ||
32 | Note: The first line are the column names and gets ignored. | |
002533ab | 33 | |
97bd6bea | 34 | Produced files: |
1007fa6d TJ |
35 | - fix_imap_internaldate.cfg: Configuration of the script - created on first run. |
36 | - fix_imap_internaldate.log: Log file. Will be truncated on script invocation. | |
97bd6bea | 37 | - conflict_stats.txt: Final report on statistics about detected date conflicts and missing dates. |
1007fa6d | 38 | - message_cache.dat: Cache file used for performance improvements |
97bd6bea PD |
39 | |
40 | Invocation on Windows requires and results in the same files. | |
8fe4e3ff | 41 | |
002533ab | 42 | For more information please contact opensource@intra2net.com |