diff --git a/src/lib-sieve/sieve-ast.c b/src/lib-sieve/sieve-ast.c index 21fbc79064016da718938e8fbca0f7f7e4ae749d..a8d8da4d07bc2b49e3e794952936be0257e7130a 100644 --- a/src/lib-sieve/sieve-ast.c +++ b/src/lib-sieve/sieve-ast.c @@ -100,17 +100,17 @@ void sieve_ast_unref(struct sieve_ast **ast) *ast = NULL; } -inline struct sieve_ast_node *sieve_ast_root(struct sieve_ast *ast) +struct sieve_ast_node *sieve_ast_root(struct sieve_ast *ast) { return ast->root; } -inline pool_t sieve_ast_pool(struct sieve_ast *ast) +pool_t sieve_ast_pool(struct sieve_ast *ast) { return ast->pool; } -inline struct sieve_script *sieve_ast_script(struct sieve_ast *ast) +struct sieve_script *sieve_ast_script(struct sieve_ast *ast) { return ast->script; } @@ -129,13 +129,13 @@ const char *sieve_ast_type_name(enum sieve_ast_type ast_type) { /* Extension support */ -inline void sieve_ast_extension_set_context +void sieve_ast_extension_set_context (struct sieve_ast *ast, int ext_id, void *context) { array_idx_set(&ast->ext_contexts, (unsigned int) ext_id, &context); } -inline const void *sieve_ast_extension_get_context +const void *sieve_ast_extension_get_context (struct sieve_ast *ast, int ext_id) { void * const *ctx; diff --git a/src/lib-sieve/sieve-ast.h b/src/lib-sieve/sieve-ast.h index cb962e8026f00d29cb2895f561776f93ed020c51..f2caeb6eba976079374e1338d6f27d3558b6bf41 100644 --- a/src/lib-sieve/sieve-ast.h +++ b/src/lib-sieve/sieve-ast.h @@ -161,16 +161,16 @@ void sieve_ast_unref(struct sieve_ast **ast); void sieve_ast_link_object (struct sieve_ast_node *node, const struct sieve_ast_node_object *obj); -inline struct sieve_ast_node *sieve_ast_root(struct sieve_ast *ast); -inline pool_t sieve_ast_pool(struct sieve_ast *ast); -inline struct sieve_script *sieve_ast_script(struct sieve_ast *ast); +struct sieve_ast_node *sieve_ast_root(struct sieve_ast *ast); +pool_t sieve_ast_pool(struct sieve_ast *ast); +struct sieve_script *sieve_ast_script(struct sieve_ast *ast); const char *sieve_ast_type_name(enum sieve_ast_type ast_type); /* extension support */ -inline void sieve_ast_extension_set_context +void sieve_ast_extension_set_context (struct sieve_ast *ast, int ext_id, void *context); -inline const void *sieve_ast_extension_get_context +const void *sieve_ast_extension_get_context (struct sieve_ast *ast, int ext_id); /* error reporting */ diff --git a/src/lib-sieve/sieve-binary.c b/src/lib-sieve/sieve-binary.c index cc0dd263210dabf2730fb843990352eacb9c4923..551135e3f9e8babc98677accd49fc8e800afd7ef 100644 --- a/src/lib-sieve/sieve-binary.c +++ b/src/lib-sieve/sieve-binary.c @@ -238,27 +238,27 @@ void sieve_binary_unref(struct sieve_binary **sbin) *sbin = NULL; } -inline sieve_size_t sieve_binary_get_code_size(struct sieve_binary *sbin) +sieve_size_t sieve_binary_get_code_size(struct sieve_binary *sbin) { return buffer_get_used_size(sbin->data); } -inline pool_t sieve_binary_pool(struct sieve_binary *sbin) +pool_t sieve_binary_pool(struct sieve_binary *sbin) { return sbin->pool; } -inline struct sieve_script *sieve_binary_script(struct sieve_binary *sbin) +struct sieve_script *sieve_binary_script(struct sieve_binary *sbin) { return sbin->script; } -inline const char *sieve_binary_path(struct sieve_binary *sbin) +const char *sieve_binary_path(struct sieve_binary *sbin) { return sbin->path; } -inline bool sieve_binary_script_older +bool sieve_binary_script_older (struct sieve_binary *sbin, struct sieve_script *script) { i_assert(sbin->file != NULL); @@ -298,7 +298,7 @@ static inline unsigned int sieve_binary_block_count return array_count(&sbin->blocks); } -inline void sieve_binary_block_clear +void sieve_binary_block_clear (struct sieve_binary *sbin, unsigned int id) { struct sieve_binary_block *block = sieve_binary_block_get(sbin, id); @@ -389,7 +389,7 @@ struct sieve_binary_block_header { * Saving the binary to a file. */ -inline static bool _save_skip(struct ostream *stream, size_t size) +static inline bool _save_skip(struct ostream *stream, size_t size) { if ( (o_stream_seek(stream, stream->offset + size)) <= 0 ) return FALSE; @@ -397,7 +397,7 @@ inline static bool _save_skip(struct ostream *stream, size_t size) return TRUE; } -inline static bool _save_skip_aligned +static inline bool _save_skip_aligned (struct ostream *stream, size_t size, uoff_t *offset) { uoff_t aligned_offset = SIEVE_BINARY_ALIGN(stream->offset); @@ -657,6 +657,8 @@ static void sieve_binary_file_close(struct sieve_binary_file **file) *file = NULL; } +#if 0 /* file_memory is currently unused */ + /* File loaded/mapped to memory */ struct _file_memory { @@ -768,6 +770,8 @@ static struct sieve_binary_file *_file_memory_open(const char *path) return &file->binfile; } +#endif /* file_lazy is currently unused */ + /* File open in lazy mode (only read what is needed into memory) */ static bool _file_lazy_read @@ -1189,8 +1193,8 @@ void sieve_binary_activate(struct sieve_binary *sbin) * Extension handling */ -static inline struct sieve_binary_extension_reg *sieve_binary_extension_get_reg -(struct sieve_binary *sbin, int ext_id) +static inline struct sieve_binary_extension_reg *sieve_binary_extension_get_reg +(struct sieve_binary *sbin, int ext_id) { if ( ext_id >= 0 && ext_id < (int) array_count(&sbin->extension_index) ) { struct sieve_binary_extension_reg * const *ereg = @@ -1220,7 +1224,7 @@ static inline struct sieve_binary_extension_reg * return ereg; } -inline void sieve_binary_extension_set_context +void sieve_binary_extension_set_context (struct sieve_binary *sbin, int ext_id, void *context) { struct sieve_binary_extension_reg *ereg = @@ -1235,7 +1239,7 @@ inline void sieve_binary_extension_set_context ereg->context = context; } -inline const void *sieve_binary_extension_get_context +const void *sieve_binary_extension_get_context (struct sieve_binary *sbin, int ext_id) { struct sieve_binary_extension_reg *ereg = @@ -1248,7 +1252,7 @@ inline const void *sieve_binary_extension_get_context return NULL; } -inline void sieve_binary_extension_set +void sieve_binary_extension_set (struct sieve_binary *sbin, int ext_id, const struct sieve_binary_extension *bext) { @@ -1366,7 +1370,7 @@ int sieve_binary_extensions_count(struct sieve_binary *sbin) /* Low-level emission functions */ -inline sieve_size_t sieve_binary_emit_data +sieve_size_t sieve_binary_emit_data (struct sieve_binary *binary, const void *data, sieve_size_t size) { sieve_size_t address = buffer_get_used_size(binary->data); @@ -1376,13 +1380,13 @@ inline sieve_size_t sieve_binary_emit_data return address; } -inline sieve_size_t sieve_binary_emit_byte +sieve_size_t sieve_binary_emit_byte (struct sieve_binary *binary, unsigned char byte) { return sieve_binary_emit_data(binary, &byte, 1); } -inline void sieve_binary_update_data +void sieve_binary_update_data (struct sieve_binary *binary, sieve_size_t address, const void *data, sieve_size_t size) { diff --git a/src/lib-sieve/sieve-binary.h b/src/lib-sieve/sieve-binary.h index 7598df626a651f2fc78855bae178d59b4ce42ad3..368dc70db98abdad0b7a883573e90e9cf6cc18b1 100644 --- a/src/lib-sieve/sieve-binary.h +++ b/src/lib-sieve/sieve-binary.h @@ -12,10 +12,10 @@ struct sieve_binary *sieve_binary_create_new(struct sieve_script *script); void sieve_binary_ref(struct sieve_binary *sbin); void sieve_binary_unref(struct sieve_binary **sbin); -inline pool_t sieve_binary_pool(struct sieve_binary *sbin); -inline struct sieve_script *sieve_binary_script(struct sieve_binary *sbin); -inline const char *sieve_binary_path(struct sieve_binary *sbin); -inline bool sieve_binary_script_older +pool_t sieve_binary_pool(struct sieve_binary *sbin); +struct sieve_script *sieve_binary_script(struct sieve_binary *sbin); +const char *sieve_binary_path(struct sieve_binary *sbin); +bool sieve_binary_script_older (struct sieve_binary *sbin, struct sieve_script *script); void sieve_binary_activate(struct sieve_binary *sbin); @@ -41,7 +41,7 @@ enum sieve_binary_system_block { bool sieve_binary_block_set_active (struct sieve_binary *sbin, unsigned int id, unsigned *old_id_r); unsigned int sieve_binary_block_create(struct sieve_binary *sbin); -inline void sieve_binary_block_clear +void sieve_binary_block_clear (struct sieve_binary *sbin, unsigned int id); /* @@ -59,12 +59,12 @@ struct sieve_binary_extension { bool (*binary_up_to_date)(struct sieve_binary *sbin); }; -inline void sieve_binary_extension_set_context +void sieve_binary_extension_set_context (struct sieve_binary *sbin, int ext_id, void *context); -inline const void *sieve_binary_extension_get_context +const void *sieve_binary_extension_get_context (struct sieve_binary *sbin, int ext_id); -inline void sieve_binary_extension_set +void sieve_binary_extension_set (struct sieve_binary *sbin, int ext_id, const struct sieve_binary_extension *bext); @@ -88,14 +88,14 @@ int sieve_binary_extensions_count(struct sieve_binary *sbin); /* Low-level emission functions */ -inline sieve_size_t sieve_binary_emit_data +sieve_size_t sieve_binary_emit_data (struct sieve_binary *binary, const void *data, sieve_size_t size); -inline sieve_size_t sieve_binary_emit_byte +sieve_size_t sieve_binary_emit_byte (struct sieve_binary *binary, unsigned char byte); -inline void sieve_binary_update_data +void sieve_binary_update_data (struct sieve_binary *binary, sieve_size_t address, const void *data, sieve_size_t size); -inline sieve_size_t sieve_binary_get_code_size(struct sieve_binary *binary); +sieve_size_t sieve_binary_get_code_size(struct sieve_binary *binary); /* Offset emission functions */ diff --git a/src/lib-sieve/sieve-code.c b/src/lib-sieve/sieve-code.c index c36fbb11df524a73edc42d53db4c080f87e76d0b..ba6922c67c089a2b8207d13468fea18ab11726e3 100644 --- a/src/lib-sieve/sieve-code.c +++ b/src/lib-sieve/sieve-code.c @@ -74,19 +74,19 @@ void sieve_coded_stringlist_reset(struct sieve_coded_stringlist *strlist) strlist->index = 0; } -inline int sieve_coded_stringlist_get_length +int sieve_coded_stringlist_get_length (struct sieve_coded_stringlist *strlist) { return strlist->length; } -inline sieve_size_t sieve_coded_stringlist_get_end_address +sieve_size_t sieve_coded_stringlist_get_end_address (struct sieve_coded_stringlist *strlist) { return strlist->end_address; } -inline sieve_size_t sieve_coded_stringlist_get_current_offset +sieve_size_t sieve_coded_stringlist_get_current_offset (struct sieve_coded_stringlist *strlist) { return strlist->current_offset; @@ -180,7 +180,7 @@ static struct sieve_extension_obj_registry oprd_default_reg = * Operand functions */ -inline sieve_size_t sieve_operand_emit_code +sieve_size_t sieve_operand_emit_code (struct sieve_binary *sbin, const struct sieve_operand *opr, int ext_id) { return sieve_extension_emit_obj @@ -676,7 +676,7 @@ static struct sieve_extension_obj_registry oprt_default_reg = /* Operation functions */ -inline sieve_size_t sieve_operation_emit_code +sieve_size_t sieve_operation_emit_code (struct sieve_binary *sbin, const struct sieve_operation *op, int ext_id) { return sieve_extension_emit_obj diff --git a/src/lib-sieve/sieve-code.h b/src/lib-sieve/sieve-code.h index 8d9900070ede1ac06e9f8db2cbe29542981f1356..3338cb904179858374af96f72833a17b641f93dc 100644 --- a/src/lib-sieve/sieve-code.h +++ b/src/lib-sieve/sieve-code.h @@ -20,11 +20,11 @@ bool sieve_coded_stringlist_read_all (struct sieve_coded_stringlist *strlist, pool_t pool, const char * const **list_r); -inline int sieve_coded_stringlist_get_length +int sieve_coded_stringlist_get_length (struct sieve_coded_stringlist *strlist); -inline sieve_size_t sieve_coded_stringlist_get_end_address +sieve_size_t sieve_coded_stringlist_get_end_address (struct sieve_coded_stringlist *strlist); -inline sieve_size_t sieve_coded_stringlist_get_current_offset +sieve_size_t sieve_coded_stringlist_get_current_offset (struct sieve_coded_stringlist *strlist); /* Operand: argument to an operation */ @@ -90,7 +90,7 @@ extern const struct sieve_operand stringlist_operand; extern const struct sieve_operand *sieve_operands[]; extern const unsigned int sieve_operand_count; -inline sieve_size_t sieve_operand_emit_code +sieve_size_t sieve_operand_emit_code (struct sieve_binary *sbin, const struct sieve_operand *opr, int ext_id); const struct sieve_operand *sieve_operand_read (struct sieve_binary *sbin, sieve_size_t *address); @@ -168,7 +168,7 @@ extern const struct sieve_operation sieve_jmp_operation; extern const struct sieve_operation sieve_jmptrue_operation; extern const struct sieve_operation sieve_jmpfalse_operation; -inline sieve_size_t sieve_operation_emit_code +sieve_size_t sieve_operation_emit_code (struct sieve_binary *sbin, const struct sieve_operation *op, int ext_id); const struct sieve_operation *sieve_operation_read (struct sieve_binary *sbin, sieve_size_t *address); diff --git a/src/lib-sieve/sieve-commands.c b/src/lib-sieve/sieve-commands.c index d869afc2d68959a3ce6a8bff4cdbe5df4c27b1e8..36cafb58b521a44d905babaa251a9e11c569a75c 100644 --- a/src/lib-sieve/sieve-commands.c +++ b/src/lib-sieve/sieve-commands.c @@ -75,7 +75,7 @@ static bool arg_string_list_validate return TRUE; } -static inline bool emit_string_list_operand +static bool emit_string_list_operand (struct sieve_generator *generator, const struct sieve_ast_argument *strlist, struct sieve_command_context *context) { @@ -190,7 +190,7 @@ const unsigned int sieve_core_commands_count = N_ELEMENTS(sieve_core_commands); /* Command context */ -inline struct sieve_command_context *sieve_command_prev_context +struct sieve_command_context *sieve_command_prev_context (struct sieve_command_context *context) { struct sieve_ast_node *node = sieve_ast_node_prev(context->ast_node); @@ -202,7 +202,7 @@ inline struct sieve_command_context *sieve_command_prev_context return NULL; } -inline struct sieve_command_context *sieve_command_parent_context +struct sieve_command_context *sieve_command_parent_context (struct sieve_command_context *context) { struct sieve_ast_node *node = sieve_ast_node_parent(context->ast_node); @@ -247,7 +247,7 @@ const char *sieve_command_type_name(const struct sieve_command *command) { * because exiting jumps are not generated when they would otherwise be * necessary. */ -inline void sieve_command_exit_block_unconditionally +void sieve_command_exit_block_unconditionally (struct sieve_command_context *cmd) { struct sieve_command_context *parent = sieve_command_parent_context(cmd); @@ -257,7 +257,7 @@ inline void sieve_command_exit_block_unconditionally parent->block_exit_command = cmd; } -inline bool sieve_command_block_exits_unconditionally +bool sieve_command_block_exits_unconditionally (struct sieve_command_context *cmd) { return ( cmd->block_exit_command != NULL ); diff --git a/src/lib-sieve/sieve-commands.h b/src/lib-sieve/sieve-commands.h index 36ce0b0ac569930052e3ae2b9171ad46795e8fbb..c84cef9e29e85210c31d1166fe4ba719b8ed87bf 100644 --- a/src/lib-sieve/sieve-commands.h +++ b/src/lib-sieve/sieve-commands.h @@ -108,14 +108,14 @@ const char *sieve_command_type_name(const struct sieve_command *command); #define sieve_command_is_first(context) \ ( sieve_ast_node_prev((context)->ast_node) == NULL ) -inline struct sieve_command_context *sieve_command_prev_context +struct sieve_command_context *sieve_command_prev_context (struct sieve_command_context *context); -inline struct sieve_command_context *sieve_command_parent_context +struct sieve_command_context *sieve_command_parent_context (struct sieve_command_context *context); -inline void sieve_command_exit_block_unconditionally +void sieve_command_exit_block_unconditionally (struct sieve_command_context *cmd); -inline bool sieve_command_block_exits_unconditionally +bool sieve_command_block_exits_unconditionally (struct sieve_command_context *cmd); #endif /* __SIEVE_COMMANDS_H */ diff --git a/src/lib-sieve/sieve-comparators.c b/src/lib-sieve/sieve-comparators.c index c8b780a6e2cb3502c74d1dfeee4ec80a920bb121..e5f86f52834f728b0ffe30143d0f5cc2c0a579df 100644 --- a/src/lib-sieve/sieve-comparators.c +++ b/src/lib-sieve/sieve-comparators.c @@ -286,7 +286,7 @@ void sieve_comparators_link_tag sieve_validator_register_tag(validator, cmd_reg, &comparator_tag, id_code); } -inline bool sieve_comparator_tag_is +bool sieve_comparator_tag_is (struct sieve_ast_argument *tag, const struct sieve_comparator *cmp) { const struct sieve_comparator_context *cmpctx = @@ -297,7 +297,7 @@ inline bool sieve_comparator_tag_is return ( tag->argument == &comparator_tag && cmpctx->comparator == cmp ); } -inline const struct sieve_comparator *sieve_comparator_tag_get +const struct sieve_comparator *sieve_comparator_tag_get (struct sieve_ast_argument *tag) { if ( tag->argument != &comparator_tag ) diff --git a/src/lib-sieve/sieve-comparators.h b/src/lib-sieve/sieve-comparators.h index 2fb8e1f64195afc9d2aea1d91b087ff8832dce26..59c8e697679620722b039bdf752c9eedc9773ed6 100644 --- a/src/lib-sieve/sieve-comparators.h +++ b/src/lib-sieve/sieve-comparators.h @@ -61,9 +61,9 @@ extern const struct sieve_argument comparator_tag; void sieve_comparators_link_tag (struct sieve_validator *validator, struct sieve_command_registration *cmd_reg, int id_code); -inline bool sieve_comparator_tag_is +bool sieve_comparator_tag_is (struct sieve_ast_argument *tag, const struct sieve_comparator *cmp); -inline const struct sieve_comparator *sieve_comparator_tag_get +const struct sieve_comparator *sieve_comparator_tag_get (struct sieve_ast_argument *tag); extern const struct sieve_comparator i_octet_comparator; diff --git a/src/lib-sieve/sieve-generator.c b/src/lib-sieve/sieve-generator.c index e6dde59ba01d3ceb7bbb03678643e7a33a194df6..e33a6e92cea7d4d3449353083f565035b7c50c0a 100644 --- a/src/lib-sieve/sieve-generator.c +++ b/src/lib-sieve/sieve-generator.c @@ -116,7 +116,7 @@ void sieve_generator_free(struct sieve_generator **generator) *generator = NULL; } -inline struct sieve_script *sieve_generator_get_script +struct sieve_script *sieve_generator_get_script (struct sieve_generator *gentr) { return gentr->script; @@ -175,13 +175,13 @@ bool sieve_generator_link_extension return TRUE; } -inline void sieve_generator_extension_set_context +void sieve_generator_extension_set_context (struct sieve_generator *gentr, int ext_id, void *context) { array_idx_set(&gentr->ext_contexts, (unsigned int) ext_id, &context); } -inline const void *sieve_generator_extension_get_context +const void *sieve_generator_extension_get_context (struct sieve_generator *gentr, int ext_id) { void * const *ctx; @@ -196,19 +196,19 @@ inline const void *sieve_generator_extension_get_context /* Binary access */ -inline struct sieve_binary *sieve_generator_get_binary +struct sieve_binary *sieve_generator_get_binary (struct sieve_generator *gentr) { return gentr->binary; } -inline sieve_size_t sieve_generator_emit_operation +sieve_size_t sieve_generator_emit_operation (struct sieve_generator *gentr, const struct sieve_operation *op) { return sieve_operation_emit_code(gentr->binary, op, -1); } -inline sieve_size_t sieve_generator_emit_operation_ext +sieve_size_t sieve_generator_emit_operation_ext (struct sieve_generator *gentr, const struct sieve_operation *op, int ext_id) { return sieve_operation_emit_code(gentr->binary, op, ext_id); @@ -398,18 +398,18 @@ bool sieve_generator_run /* Accessors */ -inline struct sieve_error_handler *sieve_generator_error_handler +struct sieve_error_handler *sieve_generator_error_handler (struct sieve_generator *gentr) { return gentr->ehandler; } -inline pool_t sieve_generator_pool(struct sieve_generator *gentr) +pool_t sieve_generator_pool(struct sieve_generator *gentr) { return gentr->pool; } -inline struct sieve_script *sieve_generator_script +struct sieve_script *sieve_generator_script (struct sieve_generator *gentr) { return gentr->script; diff --git a/src/lib-sieve/sieve-generator.h b/src/lib-sieve/sieve-generator.h index 367672d6edfe3368c0769c6e168df01cf7b0b15a..b11ab56e3ca2795f3352ec4fc9d4c401cf9f8c14 100644 --- a/src/lib-sieve/sieve-generator.h +++ b/src/lib-sieve/sieve-generator.h @@ -9,7 +9,7 @@ struct sieve_generator *sieve_generator_create (struct sieve_ast *ast, struct sieve_error_handler *ehandler); void sieve_generator_free(struct sieve_generator **generator); -inline struct sieve_script *sieve_generator_get_script +struct sieve_script *sieve_generator_get_script (struct sieve_generator *gentr); /* Error handling */ @@ -28,9 +28,9 @@ void sieve_generator_critical bool sieve_generator_link_extension (struct sieve_generator *gentr, int ext_id); -inline void sieve_generator_extension_set_context +void sieve_generator_extension_set_context (struct sieve_generator *gentr, int ext_id, void *context); -inline const void *sieve_generator_extension_get_context +const void *sieve_generator_extension_get_context (struct sieve_generator *gentr, int ext_id); /* Jump list */ @@ -52,37 +52,37 @@ void sieve_jumplist_add void sieve_jumplist_resolve(struct sieve_jumplist *jlist); /* Code emission API */ -inline sieve_size_t sieve_generator_emit_data +sieve_size_t sieve_generator_emit_data (struct sieve_generator *generator, void *data, sieve_size_t size); -inline sieve_size_t sieve_generator_emit_byte +sieve_size_t sieve_generator_emit_byte (struct sieve_generator *generator, unsigned char byte); -inline void sieve_generator_update_data +void sieve_generator_update_data (struct sieve_generator *generator, sieve_size_t address, void *data, sieve_size_t size); -inline sieve_size_t sieve_generator_get_current_address +sieve_size_t sieve_generator_get_current_address (struct sieve_generator *generator); -inline struct sieve_binary *sieve_generator_get_binary +struct sieve_binary *sieve_generator_get_binary (struct sieve_generator *gentr); -inline sieve_size_t sieve_generator_emit_operation +sieve_size_t sieve_generator_emit_operation (struct sieve_generator *gentr, const struct sieve_operation *op); -inline sieve_size_t sieve_generator_emit_operation_ext +sieve_size_t sieve_generator_emit_operation_ext (struct sieve_generator *gentr, const struct sieve_operation *op, int ext_id); /* Offset emission */ -inline sieve_size_t sieve_generator_emit_offset +sieve_size_t sieve_generator_emit_offset (struct sieve_generator *generator, int offset); -inline void sieve_generator_resolve_offset +void sieve_generator_resolve_offset (struct sieve_generator *generator, sieve_size_t address); /* Literal emission */ -inline sieve_size_t sieve_generator_emit_byte +sieve_size_t sieve_generator_emit_byte (struct sieve_generator *generator, unsigned char btval); -inline sieve_size_t sieve_generator_emit_integer +sieve_size_t sieve_generator_emit_integer (struct sieve_generator *generator, sieve_size_t integer); -inline sieve_size_t sieve_generator_emit_string +sieve_size_t sieve_generator_emit_string (struct sieve_generator *generator, const string_t *str); /* API */ @@ -105,10 +105,10 @@ bool sieve_generator_run /* Accessors */ -inline struct sieve_error_handler *sieve_generator_error_handler +struct sieve_error_handler *sieve_generator_error_handler (struct sieve_generator *gentr); -inline pool_t sieve_generator_pool(struct sieve_generator *gentr); -inline struct sieve_script *sieve_generator_script +pool_t sieve_generator_pool(struct sieve_generator *gentr); +struct sieve_script *sieve_generator_script (struct sieve_generator *gentr); #endif /* __SIEVE_GENERATOR_H */ diff --git a/src/lib-sieve/sieve-interpreter.c b/src/lib-sieve/sieve-interpreter.c index f268e95e41cc54604ebd671ef9b66008864cc86f..81be1b4365f3575bdc967e3a6366b4b64793712e 100644 --- a/src/lib-sieve/sieve-interpreter.c +++ b/src/lib-sieve/sieve-interpreter.c @@ -64,13 +64,13 @@ static void sieve_message_context_unref(struct sieve_message_context **msgctx) *msgctx = NULL; } -inline void sieve_message_context_extension_set +void sieve_message_context_extension_set (struct sieve_message_context *msgctx, int ext_id, void *context) { array_idx_set(&msgctx->ext_contexts, (unsigned int) ext_id, &context); } -inline const void *sieve_message_context_extension_get +const void *sieve_message_context_extension_get (struct sieve_message_context *msgctx, int ext_id) { void * const *ctx; @@ -83,7 +83,7 @@ inline const void *sieve_message_context_extension_get return *ctx; } -inline pool_t sieve_message_context_pool(struct sieve_message_context *msgctx) +pool_t sieve_message_context_pool(struct sieve_message_context *msgctx) { return msgctx->pool; } @@ -171,18 +171,18 @@ void sieve_interpreter_free(struct sieve_interpreter **interp) *interp = NULL; } -inline pool_t sieve_interpreter_pool(struct sieve_interpreter *interp) +pool_t sieve_interpreter_pool(struct sieve_interpreter *interp) { return interp->pool; } -inline struct sieve_script *sieve_interpreter_script +struct sieve_script *sieve_interpreter_script (struct sieve_interpreter *interp) { return interp->runenv.script; } -inline struct sieve_error_handler *sieve_interpreter_get_error_handler +struct sieve_error_handler *sieve_interpreter_get_error_handler (struct sieve_interpreter *interp) { return interp->ehandler; @@ -238,13 +238,13 @@ void sieve_runtime_log /* Extension support */ -inline void sieve_interpreter_extension_set_context +void sieve_interpreter_extension_set_context (struct sieve_interpreter *interpreter, int ext_id, void *context) { array_idx_set(&interpreter->ext_contexts, (unsigned int) ext_id, &context); } -inline const void *sieve_interpreter_extension_get_context +const void *sieve_interpreter_extension_get_context (struct sieve_interpreter *interpreter, int ext_id) { void * const *ctx; @@ -259,7 +259,7 @@ inline const void *sieve_interpreter_extension_get_context /* Program counter */ -inline void sieve_interpreter_reset(struct sieve_interpreter *interp) +void sieve_interpreter_reset(struct sieve_interpreter *interp) { interp->pc = 0; interp->interrupted = FALSE; @@ -268,17 +268,17 @@ inline void sieve_interpreter_reset(struct sieve_interpreter *interp) interp->runenv.result = NULL; } -inline void sieve_interpreter_interrupt(struct sieve_interpreter *interp) +void sieve_interpreter_interrupt(struct sieve_interpreter *interp) { interp->interrupted = TRUE; } -inline sieve_size_t sieve_interpreter_program_counter(struct sieve_interpreter *interp) +sieve_size_t sieve_interpreter_program_counter(struct sieve_interpreter *interp) { return interp->pc; } -inline bool sieve_interpreter_program_jump +bool sieve_interpreter_program_jump (struct sieve_interpreter *interp, bool jump) { sieve_size_t pc = interp->pc; @@ -299,13 +299,13 @@ inline bool sieve_interpreter_program_jump return FALSE; } -inline void sieve_interpreter_set_test_result +void sieve_interpreter_set_test_result (struct sieve_interpreter *interp, bool result) { interp->test_result = result; } -inline bool sieve_interpreter_get_test_result +bool sieve_interpreter_get_test_result (struct sieve_interpreter *interp) { return interp->test_result; diff --git a/src/lib-sieve/sieve-interpreter.h b/src/lib-sieve/sieve-interpreter.h index fef5a094f6e1d93f69d299c66b14da6a6d2c9d46..c33020022ab1a1f3d21bfa6c840ee99228c11815 100644 --- a/src/lib-sieve/sieve-interpreter.h +++ b/src/lib-sieve/sieve-interpreter.h @@ -15,11 +15,11 @@ struct sieve_message_context; -inline void sieve_message_context_extension_set +void sieve_message_context_extension_set (struct sieve_message_context *msgctx, int ext_id, void *context); -inline const void *sieve_message_context_extension_get +const void *sieve_message_context_extension_get (struct sieve_message_context *msgctx, int ext_id); -inline pool_t sieve_message_context_pool +pool_t sieve_message_context_pool (struct sieve_message_context *msgctx); /* Interpreter */ @@ -43,25 +43,25 @@ struct sieve_interpreter *sieve_interpreter_create (struct sieve_binary *sbin, struct sieve_error_handler *ehandler); void sieve_interpreter_free(struct sieve_interpreter **interp); -inline pool_t sieve_interpreter_pool +pool_t sieve_interpreter_pool (struct sieve_interpreter *interp); -inline struct sieve_script *sieve_interpreter_script +struct sieve_script *sieve_interpreter_script (struct sieve_interpreter *interp); -inline struct sieve_error_handler *sieve_interpreter_get_error_handler +struct sieve_error_handler *sieve_interpreter_get_error_handler (struct sieve_interpreter *interp); -inline void sieve_interpreter_reset +void sieve_interpreter_reset (struct sieve_interpreter *interp); -inline void sieve_interpreter_interrupt +void sieve_interpreter_interrupt (struct sieve_interpreter *interp); -inline sieve_size_t sieve_interpreter_program_counter +sieve_size_t sieve_interpreter_program_counter (struct sieve_interpreter *interp); -inline bool sieve_interpreter_program_jump +bool sieve_interpreter_program_jump (struct sieve_interpreter *interp, bool jump); -inline void sieve_interpreter_set_test_result +void sieve_interpreter_set_test_result (struct sieve_interpreter *interp, bool result); -inline bool sieve_interpreter_get_test_result +bool sieve_interpreter_get_test_result (struct sieve_interpreter *interp); /* Error handling */ @@ -78,9 +78,9 @@ void sieve_runtime_log /* Extension support */ -inline void sieve_interpreter_extension_set_context +void sieve_interpreter_extension_set_context (struct sieve_interpreter *interp, int ext_id, void *context); -inline const void *sieve_interpreter_extension_get_context +const void *sieve_interpreter_extension_get_context (struct sieve_interpreter *interp, int ext_id); /* Opcodes and operands */ diff --git a/src/lib-sieve/sieve-lexer.c b/src/lib-sieve/sieve-lexer.c index 0e692bc2800d952d796767206cbedea8feb295c3..a46dd339a68cc384a25ec87548907faf9cc01796 100644 --- a/src/lib-sieve/sieve-lexer.c +++ b/src/lib-sieve/sieve-lexer.c @@ -152,7 +152,7 @@ static void sieve_lexer_shift(struct sieve_lexer *lexer) printf("NULL!\n");*/ } -static __inline__ int sieve_lexer_curchar(struct sieve_lexer *lexer) { +static inline int sieve_lexer_curchar(struct sieve_lexer *lexer) { if ( lexer->buffer == NULL ) return -1; @@ -222,17 +222,17 @@ void sieve_lexer_print_token(struct sieve_lexer *lexer) } } -inline enum sieve_token_type sieve_lexer_current_token(struct sieve_lexer *lexer) { +enum sieve_token_type sieve_lexer_current_token(struct sieve_lexer *lexer) { return lexer->token_type; } -inline const string_t *sieve_lexer_token_str(struct sieve_lexer *lexer) { +const string_t *sieve_lexer_token_str(struct sieve_lexer *lexer) { i_assert( lexer->token_type == STT_STRING ); return lexer->token_str_value; } -inline const char *sieve_lexer_token_ident(struct sieve_lexer *lexer) { +const char *sieve_lexer_token_ident(struct sieve_lexer *lexer) { i_assert( lexer->token_type == STT_TAG || lexer->token_type == STT_IDENTIFIER); @@ -240,17 +240,17 @@ inline const char *sieve_lexer_token_ident(struct sieve_lexer *lexer) { return str_c(lexer->token_str_value); } -inline int sieve_lexer_token_int(struct sieve_lexer *lexer) { +int sieve_lexer_token_int(struct sieve_lexer *lexer) { i_assert(lexer->token_type == STT_NUMBER); return lexer->token_int_value; } -inline bool sieve_lexer_eof(struct sieve_lexer *lexer) { +bool sieve_lexer_eof(struct sieve_lexer *lexer) { return lexer->token_type == STT_EOF; } -inline int sieve_lexer_current_line(struct sieve_lexer *lexer) { +int sieve_lexer_current_line(struct sieve_lexer *lexer) { return lexer->current_line; } diff --git a/src/lib-sieve/sieve-lexer.h b/src/lib-sieve/sieve-lexer.h index e33b19577fef205f079f31858ab5e543e5828123..4d8f6c3bd0ff8abe3189b2f7f00e59daa5094a4e 100644 --- a/src/lib-sieve/sieve-lexer.h +++ b/src/lib-sieve/sieve-lexer.h @@ -49,11 +49,11 @@ bool sieve_lexer_skip_token(struct sieve_lexer *lexer); const char *sieve_lexer_token_string(struct sieve_lexer *lexer); void sieve_lexer_print_token(struct sieve_lexer *lexer); -inline enum sieve_token_type sieve_lexer_current_token(struct sieve_lexer *lexer); -inline const string_t *sieve_lexer_token_str(struct sieve_lexer *lexer); -inline const char *sieve_lexer_token_ident(struct sieve_lexer *lexer); -inline int sieve_lexer_token_int(struct sieve_lexer *lexer); -inline int sieve_lexer_current_line(struct sieve_lexer *lexer); -inline bool sieve_lexer_eof(struct sieve_lexer *lexer); +enum sieve_token_type sieve_lexer_current_token(struct sieve_lexer *lexer); +const string_t *sieve_lexer_token_str(struct sieve_lexer *lexer); +const char *sieve_lexer_token_ident(struct sieve_lexer *lexer); +int sieve_lexer_token_int(struct sieve_lexer *lexer); +int sieve_lexer_current_line(struct sieve_lexer *lexer); +bool sieve_lexer_eof(struct sieve_lexer *lexer); #endif /* __SIEVE_LEXER_H */ diff --git a/src/lib-sieve/sieve-result.c b/src/lib-sieve/sieve-result.c index f674ff318a8ae72fc45b77f563fecbffc994e582..cd2ab19162e1587bf5f8c5b22c04381de857d63d 100644 --- a/src/lib-sieve/sieve-result.c +++ b/src/lib-sieve/sieve-result.c @@ -88,7 +88,7 @@ void sieve_result_unref(struct sieve_result **result) *result = NULL; } -inline pool_t sieve_result_pool(struct sieve_result *result) +pool_t sieve_result_pool(struct sieve_result *result) { return result->pool; } diff --git a/src/lib-sieve/sieve-result.h b/src/lib-sieve/sieve-result.h index 80784e312ec3334015a95e6f6c5db83b4b7bcdaf..8db7ca6305b696cef1a4e2d2f4b30685f2ddaf3e 100644 --- a/src/lib-sieve/sieve-result.h +++ b/src/lib-sieve/sieve-result.h @@ -11,7 +11,7 @@ struct sieve_result *sieve_result_create (struct sieve_error_handler *ehandler); void sieve_result_ref(struct sieve_result *result); void sieve_result_unref(struct sieve_result **result); -inline pool_t sieve_result_pool(struct sieve_result *result); +pool_t sieve_result_pool(struct sieve_result *result); /* Error handling */ diff --git a/src/lib-sieve/sieve-script.c b/src/lib-sieve/sieve-script.c index 025a0cabbe1ca1b47b080162218099738736d608..cf07ad7bcc4522bbe0747e2786f5ed055934878e 100644 --- a/src/lib-sieve/sieve-script.c +++ b/src/lib-sieve/sieve-script.c @@ -169,30 +169,30 @@ unsigned int sieve_script_hash(struct sieve_script *script) return (unsigned int) script->st.st_ino; } -inline bool sieve_script_older +bool sieve_script_older (struct sieve_script *script, time_t time) { return ( script->st.st_mtime < time ); } -/* Inline accessors */ +/* Accessors */ -inline const char *sieve_script_name(struct sieve_script *script) +const char *sieve_script_name(struct sieve_script *script) { return script->name; } -inline const char *sieve_script_filename(struct sieve_script *script) +const char *sieve_script_filename(struct sieve_script *script) { return script->filename; } -inline const char *sieve_script_path(struct sieve_script *script) +const char *sieve_script_path(struct sieve_script *script) { return script->path; } -inline const char *sieve_script_binpath(struct sieve_script *script) +const char *sieve_script_binpath(struct sieve_script *script) { return t_strconcat(script->dirpath, "/", script->name, ".svbin", NULL); } diff --git a/src/lib-sieve/sieve-script.h b/src/lib-sieve/sieve-script.h index e0da16a178abfbc5b27e60bba8bfbfa15b8f864d..548e9bc6100c362edd8a254242cd914ee53d0c8b 100644 --- a/src/lib-sieve/sieve-script.h +++ b/src/lib-sieve/sieve-script.h @@ -22,7 +22,7 @@ uoff_t sieve_script_get_size(struct sieve_script *script); int sieve_script_cmp (struct sieve_script *script1, struct sieve_script *script2); unsigned int sieve_script_hash(struct sieve_script *script); -inline bool sieve_script_older(struct sieve_script *script, time_t time); +bool sieve_script_older(struct sieve_script *script, time_t time); static inline bool sieve_script_equals (struct sieve_script *script1, struct sieve_script *script2) @@ -30,9 +30,9 @@ static inline bool sieve_script_equals return ( sieve_script_cmp(script1, script2) == 0 ); } -inline const char *sieve_script_name(struct sieve_script *script); -inline const char *sieve_script_filename(struct sieve_script *script); -inline const char *sieve_script_path(struct sieve_script *script); -inline const char *sieve_script_binpath(struct sieve_script *script); +const char *sieve_script_name(struct sieve_script *script); +const char *sieve_script_filename(struct sieve_script *script); +const char *sieve_script_path(struct sieve_script *script); +const char *sieve_script_binpath(struct sieve_script *script); #endif /* __SIEVE_SCRIPT_H */ diff --git a/src/lib-sieve/sieve-validator.c b/src/lib-sieve/sieve-validator.c index 45a7ab7a811104c713dfcf4fbd7dc237e43c9254..f1263167a6eeeb83cd5188ecad20b6c34660d150 100644 --- a/src/lib-sieve/sieve-validator.c +++ b/src/lib-sieve/sieve-validator.c @@ -144,24 +144,24 @@ void sieve_validator_free(struct sieve_validator **validator) *validator = NULL; } -inline pool_t sieve_validator_pool(struct sieve_validator *validator) +pool_t sieve_validator_pool(struct sieve_validator *validator) { return validator->pool; } -inline struct sieve_error_handler *sieve_validator_error_handler +struct sieve_error_handler *sieve_validator_error_handler (struct sieve_validator *validator) { return validator->ehandler; } -inline struct sieve_ast *sieve_validator_ast +struct sieve_ast *sieve_validator_ast (struct sieve_validator *validator) { return validator->ast; } -inline struct sieve_script *sieve_validator_script +struct sieve_script *sieve_validator_script (struct sieve_validator *validator) { return validator->script; @@ -404,13 +404,13 @@ int sieve_validator_extension_load return ext_id; } -inline void sieve_validator_extension_set_context +void sieve_validator_extension_set_context (struct sieve_validator *validator, int ext_id, void *context) { array_idx_set(&validator->ext_contexts, (unsigned int) ext_id, &context); } -inline const void *sieve_validator_extension_get_context +const void *sieve_validator_extension_get_context (struct sieve_validator *validator, int ext_id) { void * const *ctx; diff --git a/src/lib-sieve/sieve-validator.h b/src/lib-sieve/sieve-validator.h index ebfcf519c03c5b3f2f56e5eb27017d0a45d61f57..a0eed10308f2fcc2d53f1af8ada558aa9c247281 100644 --- a/src/lib-sieve/sieve-validator.h +++ b/src/lib-sieve/sieve-validator.h @@ -20,13 +20,13 @@ struct sieve_command_registration; struct sieve_validator *sieve_validator_create (struct sieve_ast *ast, struct sieve_error_handler *ehandler); void sieve_validator_free(struct sieve_validator **validator); -inline pool_t sieve_validator_pool(struct sieve_validator *validator); +pool_t sieve_validator_pool(struct sieve_validator *validator); -inline struct sieve_error_handler *sieve_validator_error_handler +struct sieve_error_handler *sieve_validator_error_handler (struct sieve_validator *validator); -inline struct sieve_ast *sieve_validator_ast +struct sieve_ast *sieve_validator_ast (struct sieve_validator *validator); -inline struct sieve_script *sieve_validator_script +struct sieve_script *sieve_validator_script (struct sieve_validator *validator); bool sieve_validator_run(struct sieve_validator *validator); diff --git a/src/lib-sieve/sieve.c b/src/lib-sieve/sieve.c index dc0d252c61d4ac85f9124be139c9b37faa88de74..15304adf250207d5947629323badb3760c359199 100644 --- a/src/lib-sieve/sieve.c +++ b/src/lib-sieve/sieve.c @@ -172,6 +172,12 @@ struct sieve_binary *sieve_open return sbin; } +bool sieve_save + (struct sieve_binary *sbin, const char *path) +{ + return sieve_binary_save(sbin, path); +} + void sieve_dump(struct sieve_binary *sbin, struct ostream *stream) { struct sieve_binary_dumper *dumpr = sieve_binary_dumper_create(sbin); diff --git a/src/lib-sieve/sieve.h b/src/lib-sieve/sieve.h index df23aac5b544299d504405749263e86fc80b5930..a81c79a7acb7a9a3bc110c6a52c9d7ad561a2e2a 100644 --- a/src/lib-sieve/sieve.h +++ b/src/lib-sieve/sieve.h @@ -80,6 +80,12 @@ struct sieve_binary *sieve_open */ void sieve_dump(struct sieve_binary *sbin, struct ostream *stream); +/* sieve_save: + * Saves the binary as the file indicated by the path parameter. + */ +bool sieve_save + (struct sieve_binary *sbin, const char *path); + /* sieve_test: * * Executes the bytecode, but only prints the result to stdout. diff --git a/src/sieve-bin/sievec.c b/src/sieve-bin/sievec.c index f82a5924f5f0d4273d54da9e7fdd3648414eef8c..adae1655405873216c2897f1400000191c94c244 100644 --- a/src/sieve-bin/sievec.c +++ b/src/sieve-bin/sievec.c @@ -59,7 +59,7 @@ int main(int argc, char **argv) { if ( dump ) bin_dump_sieve_binary_to(sbin, "-"); else { - sieve_binary_save(sbin, outfile); + sieve_save(sbin, outfile); } sieve_close(&sbin); diff --git a/src/testsuite/cmd-test.c b/src/testsuite/cmd-test.c index 5772abb83f032c3c145965977e01586711ea536e..eb41afb54b0eea4aef8e059179a6fd19f62cd5ac 100644 --- a/src/testsuite/cmd-test.c +++ b/src/testsuite/cmd-test.c @@ -82,7 +82,6 @@ static inline struct testsuite_generator_context * static bool cmd_test_generate (struct sieve_generator *gentr, struct sieve_command_context *ctx) { - struct sieve_binary *sbin = sieve_generator_get_binary(gentr); struct testsuite_generator_context *genctx = _get_generator_context(gentr); diff --git a/src/testsuite/testsuite-common.c b/src/testsuite/testsuite-common.c index ae5ced7ec2312d079a658de117d91ea703c65000..fab9752b17721865e1c5d49d32729243f8fecace 100644 --- a/src/testsuite/testsuite-common.c +++ b/src/testsuite/testsuite-common.c @@ -144,7 +144,7 @@ bool testsuite_validator_context_initialize(struct sieve_validator *valdtr) bool testsuite_generator_context_initialize(struct sieve_generator *gentr) { - pool_t pool = sieve_validator_pool(gentr); + pool_t pool = sieve_generator_pool(gentr); struct sieve_binary *sbin = sieve_generator_get_binary(gentr); struct testsuite_generator_context *ctx = p_new(pool, struct testsuite_generator_context, 1);