dovecot-2.2-pigeonhole: lib-sieve: Added back t_str_trim() for t...
pigeonhole at rename-it.nl
pigeonhole at rename-it.nl
Sat Dec 5 00:15:15 UTC 2015
details: http://hg.rename-it.nl/dovecot-2.2-pigeonhole/rev/d74fdf71878e
changeset: 2163:d74fdf71878e
user: Stephan Bosch <stephan at rename-it.nl>
date: Sat Dec 05 01:15:11 2015 +0100
description:
lib-sieve: Added back t_str_trim() for the time being, since it was removed from Dovecot.
It is now named pg_t_str_trim() to prevent a new conflict at the next attempt.
diffstat:
src/lib-sieve/sieve-settings.c | 31 +++++++++++++++++++++++++++----
1 files changed, 27 insertions(+), 4 deletions(-)
diffs (69 lines):
diff -r 70f49cd63383 -r d74fdf71878e src/lib-sieve/sieve-settings.c
--- a/src/lib-sieve/sieve-settings.c Sat Dec 05 00:49:33 2015 +0100
+++ b/src/lib-sieve/sieve-settings.c Sat Dec 05 01:15:11 2015 +0100
@@ -10,6 +10,29 @@
#include <ctype.h>
+// FIXME: move to Dovecot
+static const char *pg_t_str_trim(const char *str, const char *chars)
+{
+ const char *p, *pend, *begin;
+
+ pend = str + strlen(str);
+ if (pend == str)
+ return "";
+
+ p = str;
+ while (p < pend && strchr(chars, *p) != NULL)
+ p++;
+ begin = p;
+
+ p = pend - 1;
+ while (p > begin && strchr(chars, *p) != NULL)
+ p--;
+
+ if (p <= begin)
+ return "";
+ return t_strdup_until(begin, p+1);
+}
+
/*
* Access to settings
*/
@@ -120,7 +143,7 @@
if ( str_value == NULL )
return FALSE;
- str_value = t_str_trim(str_value, "\t ");
+ str_value = pg_t_str_trim(str_value, "\t ");
if ( *str_value == '\0' )
return FALSE;
@@ -152,7 +175,7 @@
if ( str_value == NULL )
return FALSE;
- str_value = t_str_trim(str_value, "\t ");
+ str_value = pg_t_str_trim(str_value, "\t ");
if ( *str_value == '\0' )
return FALSE;
@@ -205,7 +228,7 @@
if ( str_value == NULL )
return FALSE;
- str_value = t_str_trim(str_value, "\t ");
+ str_value = pg_t_str_trim(str_value, "\t ");
str_value = t_str_lcase(str_value);
set_len = strlen(str_value);
if ( set_len > 0 ) {
@@ -222,7 +245,7 @@
} else if ( str_value[0] == '<' && str_value[set_len-1] == '>') {
sender->source = SIEVE_MAIL_SENDER_SOURCE_EXPLICIT;
- str_value = t_str_trim(t_strndup(str_value+1, set_len-2), "\t ");
+ str_value = pg_t_str_trim(t_strndup(str_value+1, set_len-2), "\t ");
sender->address = NULL;
if ( *str_value != '\0' )
sender->address = p_strdup(pool, str_value);
More information about the dovecot-cvs
mailing list