Commit Graph

120 Commits

Author SHA1 Message Date
Nikolaus Schulz 533628c2fc Only try CRAM-MD5 authentication if the server advertises it. 2008-02-14 22:19:34 +00:00
Nikolaus Schulz 77481169d8 _archive_imap() used SSL only if the 'imaps://' url scheme was all lowercase.
Fixed.
2008-01-19 00:04:01 +00:00
Nikolaus Schulz 8e5c870057 guess_delivery_time():
* look for the timestamp of the latest 'Received' header before resorting to
   'Date' or 'Resent-Date'.  
 * let 'Resent-date' header take precedence over 'Date'. 
Document these changes in manpage and changelog. 
Closes: #1481316, #1764855, Debian bug #272666.
2007-11-13 21:13:38 +00:00
Nikolaus Schulz 4584dffe14 Fixed date header parsing to be precise with timezone information. Also, when
writing From_ line timestamps, don't use UTC but local time, without timezone
information.
2007-11-13 02:59:31 +00:00
Nikolaus Schulz 5178c956bc !%&$*# Repair previous broken commit where an unrelated hunk slipped through.
Reverted that hunk.
2007-11-13 00:36:51 +00:00
Nikolaus Schulz d9ffaf4a3b When converting from other formats to mbox, re-use existing 'Status' and
'X-Status' headers if appropriate (instead of deleting and re-generating them).
2007-11-13 00:32:49 +00:00
Nikolaus Schulz ead112daba If running as root, only call seteuid/setegid if the if the owner of the mailbox
is not root.
2007-11-09 17:04:52 +00:00
Nikolaus Schulz 0ae7edab86 Bumped version to 0.7.2, and updated release info on the webpage. 2007-11-09 14:54:54 +00:00
Nikolaus Schulz e0c75a1001 IMAP: fixed crash by working around python bug #1277098, which is still pending
in python << 2.5.
2007-11-09 14:33:13 +00:00
Nikolaus Schulz 4b64da911e Debug message improvements. Explicitely say if we're selecting an IMAP mailbox
read-only.  Improve some formatting.
2007-11-07 23:57:03 +00:00
Nikolaus Schulz adf6515746 Added more debugging messages to the IMAP flag conversion. 2007-11-07 23:51:41 +00:00
Nikolaus Schulz 9439e1fa8a Minor code cleanup. 2007-11-07 23:50:18 +00:00
Nikolaus Schulz d5cb3dad61 IMAP: if selecting a mailbox fails with both the original path name and with
replaced path delimiters, report failure for the original path.
2007-11-07 21:10:08 +00:00
Nikolaus Schulz f47de26676 Minor code cleanups. 2007-11-07 19:52:52 +00:00
Nikolaus Schulz fbb00e08f4 IMAP: if selecting the mailbox fails, then detect the server's mailbox hierarchy
delimiter, replace slashes in the mailbox name with the delimiter and try again.
2007-11-07 16:31:49 +00:00
Nikolaus Schulz 1e5cb090e7 Fixed IMAP --verbose mode to say what we're *intending* to do next, instead of
reporting success after the fact.  This makes a lot more sense for debugging. 
Also added some more messages.
2007-11-07 14:33:17 +00:00
Nikolaus Schulz bcb01613d0 archivemail.py, setup.py, test_archivemail.py:
bumped version to 0.7.1, and updated copyright.
2007-11-07 00:57:44 +00:00
Nikolaus Schulz 74c871644e When converting from other formats to mbox, don't preserve existing 'Status' and
'X-Status' mbox headers, we better overwrite them with correct values.
2007-11-02 23:35:50 +00:00
Nikolaus Schulz c0552fcd06 With IMAP no IdentityCache object was initialized, causing a crash if
--warn-duplicates was used.  Closes: Debian bug #434786.
2007-11-02 21:53:20 +00:00
Nikolaus Schulz b40da3124a archivemail.py: added --copy option to the usage message. 2007-11-02 21:21:17 +00:00
Nikolaus Schulz aae08fe3fb Let archivemail accept --days=0. 2007-11-02 21:18:23 +00:00
Nikolaus Schulz 59e9715021 Expand tilde in argument of long option --pwfile. 2007-11-02 21:06:59 +00:00
Nikolaus Schulz b2f94206b1 Deprecate the old automatic seteuid feature; document this in the manpage and
changelog, and let archivemail spit a warning when it changes the effective user
id.
2007-11-02 20:26:40 +00:00
Nikolaus Schulz 3ee105d766 If running as root, only switch the effective uid and gid back if we have
actually switched them before.
2007-11-02 18:47:23 +00:00
Nikolaus Schulz 3240b24d9f New option --copy: archive mail, but don't delete it from the mailbox.
Closes: #981865, #988803, #1764851, Debian bug #434798
2007-11-02 17:44:38 +00:00
Nikolaus Schulz 0eba452d93 IMAP: first fetch message flags, then the body. Doing it together always
returns the \Seen flag set.  
Closes: Debian bug #434807 (well, the outstanding part of it).
2007-11-02 13:21:18 +00:00
Nikolaus Schulz 130a5ef117 When converting from maildir or IMAP to mbox, report existing 'Status' and
'X-Status' headers in verbose mode, since they are preserved, which can give
surprising results.
2007-11-02 12:27:32 +00:00
Nikolaus Schulz 82e3be1987 IMAP: fixed message flags retrieval, which failed to extract the right string
from the server response.  Tough.
2007-11-02 12:00:12 +00:00
Nikolaus Schulz 6ea7c7d810 If dry-running, open IMAP mailboxes read-only. This uses EXAMINE instead of
select, thus preserving the \Recent flag.
2007-11-02 11:44:21 +00:00
Nikolaus Schulz 9e70e576af add_status_headers_imap():
* mark message 'old' iff it's not \Recent (drop requirement that it's
      unread; this probably confused mutt's message status flags in the index
      with mbox status flags). 
    * a message not \Seen and not \Recent was marked as 'N', but there is no
      such thing like an mbox status flag 'N'.
2007-11-02 11:26:20 +00:00
Nikolaus Schulz 8e73e315e4 Skip invalid messages/files in Maildirs.
Closes: #1783369, Debian bug #255944, and Debian bug #305902 also seems about
        this issue.
2007-10-24 02:23:59 +00:00
Nikolaus Schulz 0e9ae1d91b New IMAP URL parser that understands double-quoted usernames and passwords.
Closes: #1640878
2007-10-23 22:48:15 +00:00
Nikolaus Schulz 1493a22f38 Define very simple exception classes, mapping to the error functions
user_error() and unexpected_error().  If archivemail is used as a module, let
the functions raise the corresponding exceptions rather than writing to stderr
and calling sys.exit().
2007-10-23 22:27:57 +00:00
Nikolaus Schulz 255a475978 Use a wrapper around rfc822.Message.fp to find the filename for Maildir/MH
emails.  Python 2.5 broke backward compatibility for Maildirs. :-/
Closes: #1670422
2007-10-22 22:03:44 +00:00
Nikolaus Schulz 8abd70093f Expand tilde in argument of long option --output-dir, the shell doesn't. 2006-11-14 22:20:37 +00:00
Nikolaus Schulz faa68b2048 Bumped version to 0.7.0 2006-11-02 06:43:09 +00:00
Nikolaus Schulz 8de4715e5c Renamed __cvs_id__ to __svn_id__. 2006-11-02 06:40:31 +00:00
Nikolaus Schulz 46f9aa44a9 Split the final stats message in two lines, because it might otherwise linewrap. 2006-11-02 05:36:17 +00:00
Nikolaus Schulz 810dea1bf5 Made IMAP password prompt a tad bit more verbose. 2006-11-01 21:05:10 +00:00
Nikolaus Schulz 3d8a1bda89 Don't prompt for the IMAP password if in quiet mode or if not running
interactively (stdin is not a terminal).
2006-11-01 20:57:58 +00:00
Nikolaus Schulz 89e6683334 Improved IMAP error handling: pass error messages from the server on to the
user, and check if deleting the messages was successful.
2006-11-01 20:35:53 +00:00
Nikolaus Schulz c7d074abde Streamlined verbose IMAP messages a bit. 2006-11-01 20:25:09 +00:00
Nikolaus Schulz d79da0ae99 Removed redundant check if imap login was succesful, since IMAP4.login then
raises an exception.
2006-11-01 20:23:44 +00:00
Nikolaus Schulz c5f194f3ec Tightened some blanket exception handlers. 2006-11-01 19:49:47 +00:00
Nikolaus Schulz e872f2211e Changed misleading references to 'message ids' in the IMAP code to the
technically correct 'message sequence number'.
2006-11-01 06:11:55 +00:00
Nikolaus Schulz bea6ef6390 Optimized IMAP code: just invert the message list from the SEARCH response
instead of querying the server another time with an inverted search filter.
Gather RFC822.SIZE in one big run.
2006-11-01 05:27:30 +00:00
Nikolaus Schulz 86f1fec50d Renamed variable 'filter' to prevent conflicts with the builtin function. 2006-11-01 00:40:26 +00:00
Nikolaus Schulz b3dc8a006e Always sanity-check each archive destination directory, not only when it's
specified with --output-dir.
2006-10-31 04:09:31 +00:00
Nikolaus Schulz dcd37f6466 Make stats report size totals for the mailboxes and the archived messages, and
while at it, make stats work with IMAP.
2006-10-31 03:07:02 +00:00
Nikolaus Schulz 9549c3e29d Minor code cleanup in build_imap_filter(). 2006-10-31 00:35:19 +00:00