summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorSergey Poznyakoff <gray@gnu.org.ua>2016-11-25 13:37:47 +0200
committerSergey Poznyakoff <gray@gnu.org.ua>2016-11-25 13:43:56 +0200
commit1e6dc073c8b89d740c7eeba747965dfb76be5f2a (patch)
tree3e0fe4fd3e40f42657704831537a730295d63ed7 /include
parent05df35d07a46f70e7d09a4da39fdd2d7a7d58ed0 (diff)
downloadmailutils-1e6dc073c8b89d740c7eeba747965dfb76be5f2a.tar.gz
mailutils-1e6dc073c8b89d740c7eeba747965dfb76be5f2a.tar.bz2
Implement RFC 5228, 2.4.2.4 (Encoding Characters Using "encoded-character")
* libmu_sieve/encoded.c: New file. * libmu_sieve/strexp.c: New file. * libmu_sieve/Makefile.am: Add new files. * libmu_sieve/require.c (mu_sieve_require): Understand "encoded-character". * libmu_sieve/sieve-priv.h (mu_i_sv_interp_t): New typedef. (mu_i_sv_expand_encoded_char): New proto. (mu_sieve_require_encoded_character): New proto. * libmu_sieve/sieve.l (string): Rewrite via line_.* functions. This fixes memory leaks on mu_sieve_machine_destroy. (line_finish): Expand ${} sequences before returning. (mu_sieve_require_encoded_character): New function. * sieve/tests/enc-char.at: New file. * sieve/tests/Makefile.am: Add enc-char.at * sieve/tests/testsuite.at: Likewise.
Diffstat (limited to 'include')
-rw-r--r--include/mailutils/sieve.h30
1 files changed, 15 insertions, 15 deletions
diff --git a/include/mailutils/sieve.h b/include/mailutils/sieve.h
index 364a71a46..019ee617b 100644
--- a/include/mailutils/sieve.h
+++ b/include/mailutils/sieve.h
@@ -123,10 +123,10 @@ void mu_sieve_debug_init (void);
/* Memory allocation functions */
void *mu_sieve_alloc (size_t size);
-void *mu_sieve_palloc (mu_list_t * pool, size_t size);
-void *mu_sieve_prealloc (mu_list_t * pool, void *ptr, size_t size);
-void mu_sieve_pfree (mu_list_t * pool, void *ptr);
-char *mu_sieve_pstrdup (mu_list_t * pool, const char *str);
+void *mu_sieve_palloc (mu_list_t *pool, size_t size);
+void *mu_sieve_prealloc (mu_list_t *pool, void *ptr, size_t size);
+void mu_sieve_pfree (mu_list_t *pool, void *ptr);
+char *mu_sieve_pstrdup (mu_list_t *pool, const char *str);
void *mu_sieve_malloc (mu_sieve_machine_t mach, size_t size);
char *mu_sieve_mstrdup (mu_sieve_machine_t mach, const char *str);
@@ -134,7 +134,7 @@ void *mu_sieve_mrealloc (mu_sieve_machine_t mach, void *ptr, size_t size);
void mu_sieve_mfree (mu_sieve_machine_t mach, void *ptr);
mu_sieve_value_t *mu_sieve_value_create (mu_sieve_data_type type, void *data);
-void mu_sieve_slist_destroy (mu_list_t * plist);
+void mu_sieve_slist_destroy (mu_list_t *plist);
/* Symbol space functions */
mu_sieve_register_t *mu_sieve_test_lookup (mu_sieve_machine_t mach,
@@ -148,8 +148,8 @@ int mu_sieve_register_test_ext (mu_sieve_machine_t mach,
mu_sieve_tag_group_t *tags, int required);
int mu_sieve_register_test (mu_sieve_machine_t mach,
const char *name, mu_sieve_handler_t handler,
- mu_sieve_data_type * arg_types,
- mu_sieve_tag_group_t * tags, int required);
+ mu_sieve_data_type *arg_types,
+ mu_sieve_tag_group_t *tags, int required);
int mu_sieve_register_action_ext (mu_sieve_machine_t mach,
const char *name, mu_sieve_handler_t handler,
@@ -158,8 +158,8 @@ int mu_sieve_register_action_ext (mu_sieve_machine_t mach,
mu_sieve_tag_group_t *tags, int required);
int mu_sieve_register_action (mu_sieve_machine_t mach,
const char *name, mu_sieve_handler_t handler,
- mu_sieve_data_type * arg_types,
- mu_sieve_tag_group_t * tags, int required);
+ mu_sieve_data_type *arg_types,
+ mu_sieve_tag_group_t *tags, int required);
int mu_sieve_register_comparator (mu_sieve_machine_t mach, const char *name,
int required, mu_sieve_comparator_t is,
mu_sieve_comparator_t contains,
@@ -177,8 +177,8 @@ mu_sieve_comparator_t mu_sieve_comparator_lookup (mu_sieve_machine_t mach,
mu_sieve_comparator_t mu_sieve_get_comparator (mu_sieve_machine_t mach,
mu_list_t tags);
-int mu_sieve_str_to_relcmp (const char *str, mu_sieve_relcmp_t * test,
- mu_sieve_relcmpn_t * stest);
+int mu_sieve_str_to_relcmp (const char *str, mu_sieve_relcmp_t *test,
+ mu_sieve_relcmpn_t *stest);
mu_sieve_relcmp_t mu_sieve_get_relcmp (mu_sieve_machine_t mach,
mu_list_t tags);
@@ -195,12 +195,12 @@ int mu_sieve_match_part_checker (mu_sieve_machine_t mach,
mu_list_t args);
/* Operations in value lists */
mu_sieve_value_t *mu_sieve_value_get (mu_list_t vlist, size_t index);
-int mu_sieve_vlist_do (mu_sieve_value_t * val, mu_list_action_t ac,
+int mu_sieve_vlist_do (mu_sieve_value_t *val, mu_list_action_t ac,
void *data);
-int mu_sieve_vlist_compare (mu_sieve_value_t * a, mu_sieve_value_t * b,
+int mu_sieve_vlist_compare (mu_sieve_value_t *a, mu_sieve_value_t *b,
mu_sieve_comparator_t comp,
mu_sieve_relcmp_t test, mu_sieve_retrieve_t ac,
- void *data, size_t * count);
+ void *data, size_t *count);
/* Functions to create and destroy sieve machine */
int mu_sieve_machine_init (mu_sieve_machine_t *mach);
@@ -208,7 +208,7 @@ int mu_sieve_machine_dup (mu_sieve_machine_t const in,
mu_sieve_machine_t *out);
int mu_sieve_machine_inherit (mu_sieve_machine_t const in,
mu_sieve_machine_t *out);
-void mu_sieve_machine_destroy (mu_sieve_machine_t * pmach);
+void mu_sieve_machine_destroy (mu_sieve_machine_t *pmach);
int mu_sieve_machine_add_destructor (mu_sieve_machine_t mach,
mu_sieve_destructor_t destr, void *ptr);

Return to:

Send suggestions and report system problems to the System administrator.