Commit Graph

57 Commits

Author SHA1 Message Date
Lefteris Chatzimparmpas
6a1771da04 Avoid closing the connection twice
If there's a network problem the connection has been already closed in
the relevant socket read/write functions.
2012-02-21 00:23:32 +01:00
Lefteris Chatzimparmpas
f78ed3c3d7 Add forgotten mailbox close command. 2012-02-21 00:12:23 +01:00
Lefteris Chatzimparmpas
4160f7c708 Set default network timeout value to 60. 2012-02-20 00:09:14 +01:00
Lefteris Chatzimparmpas
81b09d1f01 Print some details on append and fetch actions. 2012-02-19 23:56:54 +01:00
Lefteris Chatzimparmpas
644d6988ed Correct the TRYCREATE functionality
It's better not to continuesly try to create a mailbox, when the server
continues to report TRYCREATE.

When appending messages it failed to create a mailbox when the mailbox
didn't exist and the server responded with TRYCREATE.
2012-02-19 14:58:36 +01:00
Lefteris Chatzimparmpas
cf33e1bb61 Correct the option order in the usage details. 2012-02-19 13:40:31 +01:00
Lefteris Chatzimparmpas
7199aa249f Update the -d option and its description
Some of the descriptions of the other options have been also updated.
2012-02-19 13:25:47 +01:00
Lefteris Chatzimparmpas
6d39df8b70 Remove the BUGS section. 2012-02-19 13:25:05 +01:00
Lefteris Chatzimparmpas
e907fe5fdf Make OpenSSL a mandatory requirement
There is no point in having SSL/TLS IMAP support as optional, it's as
useful if not more than the the non-encrypted connections.

The Makefile was better organized to make it easier to change some
options during compile.

The SHAREDIR variable passed as configuration option has changed name.
2012-02-19 12:36:44 +01:00
Lefteris Chatzimparmpas
820e9db522 Correct some small details here and there. 2012-02-16 18:49:57 +01:00
Lefteris Chatzimparmpas
b67ae8209b Print a debug message on connection recovery. 2012-02-16 18:49:20 +01:00
Lefteris Chatzimparmpas
14091fc7bf Use Lua strings for common account details
Instead of using duplicates in the C structure, the Lua strings are used
directly from C for the accounts' details.
2012-02-15 22:20:19 +01:00
Lefteris Chatzimparmpas
69b4207db1 Reset session and selected mailbox after logout. 2012-02-15 21:32:49 +01:00
Lefteris Chatzimparmpas
23f1257c3f Correct SSL error reporting during a failure. 2012-02-15 20:48:46 +01:00
Lefteris Chatzimparmpas
c7f507e76f Close connection when an account is deleted
Added a __gc metamethod to take care of the finalization of active
connections by logging out, when an account is deleted, or at the end of
the configuration (for Lua 5.2).
2012-02-15 19:45:40 +01:00
Lefteris Chatzimparmpas
89c1366665 Correct reference to a deprecated function. 2012-02-15 19:44:46 +01:00
Lefteris Chatzimparmpas
64df3b0682 Get NAMESPACE only the first time to login
The NAMESPACE doesn't need to be retrieved after each recovery.
2012-02-15 08:42:23 +01:00
Lefteris Chatzimparmpas
fe5f789f8e Fix disabled STARTTLS functionality. 2012-02-15 08:41:13 +01:00
Lefteris Chatzimparmpas
2cafede975 Use session pointer to denote accounts
Instead of the account details, a pointer to the C structure is used in
Lua, stored as light userdata.

The 1.x deprecated configuration format has been removed, partly due to
the above change, and partly because it has been included for long
enough now.
2012-02-14 22:13:15 +01:00
Lefteris Chatzimparmpas
05a358133e Fix problem with the recover functionality
The whole function that implements a request needs to be called again,
when there is a failure that leads to re-login, and not just the last
receive or send function that failed.
2012-02-14 21:52:29 +01:00
Lefteris Chatzimparmpas
09b2cc3a25 Hide passwords from logs
After the last code refactoring, the hiding of the passwords from logs
feature was left out accidentally.
2012-02-14 20:30:50 +01:00
Lefteris Chatzimparmpas
df1e0c172b Refactor the code that handles the client requests
The functions that send the client requests to the server have been
simplified, as a layer of abstraction has been removed.
2012-02-12 22:00:18 +01:00
Lefteris Chatzimparmpas
2c70382775 Remove control structures' optional parentheses. 2012-02-11 22:55:03 +01:00
Lefteris Chatzimparmpas
18b012c2a2 Improve robustness and recoverability
Many extensive changes were made to better handle network errors, while
on some cases it is now possible to recover from previously fatal
failures.
2012-02-11 22:47:08 +01:00
Lefteris Chatzimparmpas
dc5b33b60a Port to Lua 5.2. 2012-02-05 13:29:43 +01:00
Lefteris Chatzimparmpas
a6148a4466 Abort when there's a login failure. 2012-02-02 22:21:41 +01:00
Lefteris Chatzimparmpas
3f752cb4cc Prepare release v2.4.2. 2012-01-19 20:24:29 +01:00
Lefteris Chatzimparmpas
ca00acce8a Update copyright year to include 2012. 2012-01-19 01:37:26 +01:00
Lefteris Chatzimparmpas
e03e52dba2 Correct international mailbox names conversions
Some ASCII characters in mailbox names where converted to UTF-7 while
they shouldn't.
2012-01-19 01:26:27 +01:00
Lefteris Chatzimparmpas
8512da1940 Correct passwords example. 2012-01-18 19:38:26 +01:00
Lefteris Chatzimparmpas
0a8f5580ed Prepare release v2.4.1. 2011-12-08 22:32:01 +01:00
Lefteris Chatzimparmpas
19de9b8d8e Document additional arguments of become_daemon(). 2011-12-08 22:30:05 +01:00
Lefteris Chatzimparmpas
e8b5fdd7d6 Fix become_daemon() call to ifsys.daemon()
Make sure that the two optional arguments of ifsys.daemon() are of type
boolean as expected.
2011-12-08 20:37:26 +01:00
Lefteris Chatzimparmpas
94cd8016b4 Correct indentation. 2011-12-08 20:36:45 +01:00
Lefteris Chatzimparmpas
3b885bf834 Prepare release v2.4. 2011-12-06 22:46:49 +01:00
Lefteris Chatzimparmpas
ca818203f0 Add support for non-ASCII mailbox names
International mailbox names are specified with the IMAP4rev1 modified
UTF-7 encoding, and the conversion is done automatically.
2011-12-06 16:49:36 +01:00
Lefteris Chatzimparmpas
dae82ff5af Fix matching problems in the regular expressions
Past refactoring of the regular expressions caused some failures in the
matching.
2011-12-05 19:40:57 +01:00
Lefteris Chatzimparmpas
6f8ec8eb25 Fix typo error in function call example. 2011-10-30 15:43:17 +01:00
Lefteris Chatzimparmpas
a47605cb61 Add variable to set configuration directory
The IMAPFILTER_HOME is checked in order to set a different than the
default $HOME/.imapfilter configuration directory.
2011-10-30 13:31:04 +01:00
Lefteris Chatzimparmpas
ed27fa41ee Remove encode/decode unnecessary option. 2011-10-30 13:28:49 +01:00
Lefteris Chatzimparmpas
6542cade9f Fix debug file opening check. 2011-10-30 13:21:32 +01:00
Lefteris Chatzimparmpas
2599efc94e Match only on the header field body
The match_field() method should match on the header field body and not
the whole header field, thus the field name part is ignored.
2011-08-16 22:51:01 +02:00
Lefteris Chatzimparmpas
c6515ebf7f Correct arguments of append_message(). 2011-08-09 20:44:24 +02:00
Lefteris Chatzimparmpas
7e0cd3614f Prepare release v2.3. 2011-08-06 15:07:36 +02:00
Lefteris Chatzimparmpas
5c1f83f7c0 Change debug option to take filename as argument
Don't create a debug file in ~/.imapfilter, but instead create the
specified file.
2011-08-06 14:53:47 +02:00
Lefteris Chatzimparmpas
a3021cca36 Add support for appending messages to mailboxes
Add a new function append_message(), update man page and add new example
in the sample configurations.
2011-08-06 14:16:07 +02:00
Lefteris Chatzimparmpas
26cecaed64 Refactor regular expressions syntax. 2011-08-04 21:34:24 +02:00
Lefteris Chatzimparmpas
cf5e003082 Correct CRAM-MD5 authentication timeout problem
After successful login with the CRAM-MD5 mechanism, a timeout happens
while a server response is anticipated.
2011-08-04 08:06:42 +02:00
Lefteris Chatzimparmpas
e51afea6eb Correct daemon function and add new options
Correct forking inside the daemon function, correct the error messages
printed, and add two new options for controlling working directory
change and redirection of the standard file descriptors.
2011-07-31 18:03:29 +02:00
Lefteris Chatzimparmpas
d83be84636 Check for updates in the server capabilities after login. 2011-07-31 17:33:42 +02:00