[PATCHv3 0/4] Add VACATION :seconds support
Philipp Hahn
hahn at univention.de
Mon May 21 08:41:41 EDT 2012
Hello,
some time ago I implemented RFC 6131 <http://tools.ietf.org/html/rfc6131>,
which adds a variante of the VACATION extension supporting seconds instead of
days. The original patch was for version 2.2.x and implemented a draft version.
I introduced a new OP-code, which uses seconds instead of days, which reduces
the maximum span for vacation messages from 2^31 to 68 years, but I think even
that should be enough. The old OP-code for VACATION :days is still understood,
but no longer emitted.
[v2]
Rename old B_VACATION to _ORIG and implement new B_VACATION.
Use DAY2SEC for converting days to seconds.
Add extenstion to lib/imapoptions and sieve_listextensions().
Make min/max vacation response interval configurable.
[v3]
Handle old and new compiled sieve scripts in bc_eval.c.
Add RFC 6131 to doc/specs.html.
Also show vacation when vacation-seconds is enabled.
Open issues:
There currently is no explicit check for 0 <= seconds <= 2**31 as required by
RFC6131, but negative numbers are not recognized by the parser and the maximum
is 7 days, so the limit is implicitly applied.
Philipp Hahn (4):
config2header: Replace invalid characters
Change vacation day to seconds
Add VACATION :seconds support
Make min/max VACACTION response configurable
doc/specs.html | 2 +
imap/lmtp_sieve.c | 6 ++--
lib/imapoptions | 10 +++++-
lib/times.h | 3 ++
sieve/README | 3 ++
sieve/bc_dump.c | 4 ++-
sieve/bc_emit.c | 4 +-
sieve/bc_eval.c | 14 +++++++--
sieve/bc_generate.c | 4 +-
sieve/bytecode.h | 9 ++++--
sieve/interp.c | 12 +++++--
sieve/message.c | 4 +-
sieve/message.h | 2 +-
sieve/script.c | 12 +++++++
sieve/script.h | 1 +
sieve/sieve-lex.l | 1 +
sieve/sieve.y | 32 ++++++++++++-------
sieve/sieve_interface.h | 6 ++--
sieve/sieved.c | 9 ++++--
sieve/test.c | 6 +++-
.../actionExtensions/uberExtensionActionScript.key | 10 ++++++
.../actionExtensions/uberExtensionActionScript.s | 13 +++++++-
sieve/tree.h | 2 +-
tools/config2header | 7 ++++-
24 files changed, 133 insertions(+), 43 deletions(-)
More information about the Cyrus-devel
mailing list