diff options
author | Vsevolod Stakhov <vsevolod@highsecure.ru> | 2013-08-29 15:39:35 +0100 |
---|---|---|
committer | Vsevolod Stakhov <vsevolod@highsecure.ru> | 2013-08-29 15:39:35 +0100 |
commit | ddea9ac6acfa6bf3fb7aefa89c93ccf42cbe4c06 (patch) | |
tree | 4a98fa221564d5145b5c9eb20408702665d52306 /src/cfg_rcl.c | |
parent | 7ade35b5e8abb9fc5f7d0d92421ef20bfd0186bc (diff) | |
download | rspamd-ddea9ac6acfa6bf3fb7aefa89c93ccf42cbe4c06.tar.gz rspamd-ddea9ac6acfa6bf3fb7aefa89c93ccf42cbe4c06.zip |
Add the parser of double fields.
Diffstat (limited to 'src/cfg_rcl.c')
-rw-r--r-- | src/cfg_rcl.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/cfg_rcl.c b/src/cfg_rcl.c index b59524cfb..942c944a6 100644 --- a/src/cfg_rcl.c +++ b/src/cfg_rcl.c @@ -342,3 +342,19 @@ rspamd_rcl_parse_struct_integer (struct config_file *cfg, rspamd_cl_object_t *ob return TRUE; } + +gboolean +rspamd_rcl_parse_struct_double (struct config_file *cfg, rspamd_cl_object_t *obj, + gpointer ud, struct rspamd_rcl_section *section, GError **err) +{ + struct rspamd_rcl_struct_parser *pd = ud; + gdouble *target; + + target = (gdouble *)(((gchar *)pd->user_struct) + pd->offset); + + if (!rspamd_cl_obj_todouble_safe (obj, target)) { + g_set_error (err, CFG_RCL_ERROR, EINVAL, "cannot convert param to double"); + } + + return TRUE; +} |