diff --git a/README b/README index c3ce15ffecad3c0cbe7718e002b880fec5a0d617..0a0a3accd0799e93ac5964cbe749c7831b4cd681 100644 --- a/README +++ b/README @@ -1,4 +1,4 @@ -Sieve implementation for Dovecot (1.1) +Sieve implementation for Dovecot (1.2) ################################################################################ !! WARNING !! diff --git a/TODO b/TODO index 5f835262073ff15d333ef6f4f87da20cba7ea319..3b5e234e535087241b5d3902ef31d53c25b71b05 100644 --- a/TODO +++ b/TODO @@ -1,7 +1,6 @@ Next (in order of descending priority/precedence): * Review sieve-address parsing implementation for past-end checks * Improve handling of old/corrupt binaries. -* Move to 1.2 and start using and new const str. * Resolve problems in variables extension: scope uses hash the wrong way and extension ids are emitted directly. diff --git a/configure.in b/configure.in index 7a1e69012763a38916c6fd30fc0be1426226fe43..d2e04a0496b54832784d0f2a425ed4b5c94bd676 100644 --- a/configure.in +++ b/configure.in @@ -1,4 +1,4 @@ -AC_INIT([dovecot-sieve], [0.0.0], [dovecot@dovecot.org], [dovecot-1.1-sieve]) +AC_INIT([dovecot-sieve], [0.0.0], [dovecot@dovecot.org], [dovecot-1.2-sieve]) AC_CONFIG_SRCDIR([src]) AC_CONFIG_HEADERS([dsieve-config.h]) diff --git a/src/lib-sieve/sieve-binary.c b/src/lib-sieve/sieve-binary.c index 760c222d8635a8aceda99cb14d5f5f37f47f7527..5738a7a0f8afa75f9175ae900fe8ba288d942fa2 100644 --- a/src/lib-sieve/sieve-binary.c +++ b/src/lib-sieve/sieve-binary.c @@ -1622,15 +1622,10 @@ bool sieve_binary_read_integer return TRUE; } -/* FIXME: add this to lib/str. (now commented out) */ -static string_t *t_str_const(const void *cdata, size_t size) +/* FIXME: add this to lib/str. */ +static string_t *t_str_new_const(const char *str, size_t len) { - string_t *result = t_str_new(size); - - str_append_n(result, cdata, size); - - return result; - //return buffer_create_const_data(pool_datastack_create(), cdata, size); + return str_new_const(pool_datastack_create(), str, len); } bool sieve_binary_read_string @@ -1645,7 +1640,7 @@ bool sieve_binary_read_string return FALSE; if ( str != NULL ) - *str = t_str_const(&ADDR_CODE_AT(binary, address), strlen); + *str = t_str_new_const(&ADDR_CODE_AT(binary, address), strlen); ADDR_JUMP(address, strlen); if ( ADDR_CODE_AT(binary, address) != 0 )