From: Vsevolod Stakhov Date: Wed, 2 Oct 2013 17:58:48 +0000 (+0100) Subject: Allow userdata objects in rcl. X-Git-Tag: 0.6.0~143 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4fe7fd34d97a6b18bbdc4a8aafb425e1cc7a8674;p=thirdparty%2Frspamd.git Allow userdata objects in rcl. --- diff --git a/src/rcl/rcl.h b/src/rcl/rcl.h index 5cfe03c3b1..48f0554142 100644 --- a/src/rcl/rcl.h +++ b/src/rcl/rcl.h @@ -53,7 +53,8 @@ enum rspamd_cl_type { RSPAMD_CL_FLOAT, RSPAMD_CL_STRING, RSPAMD_CL_BOOLEAN, - RSPAMD_CL_TIME + RSPAMD_CL_TIME, + RSPAMD_CL_USERDATA }; enum rspamd_cl_emitter { @@ -73,6 +74,7 @@ typedef struct rspamd_cl_object_s { gchar *sv; /**< string value of an object */ gdouble dv; /**< double value of an object */ struct rspamd_cl_object_s *ov; /**< array or hash */ + gpointer ud; /**< opaque user data */ } value; enum rspamd_cl_type type; /**< real type */ gint ref; /**< reference count */ diff --git a/src/rcl/rcl_emitter.c b/src/rcl/rcl_emitter.c index 05ca87da69..9702ffefd6 100644 --- a/src/rcl/rcl_emitter.c +++ b/src/rcl/rcl_emitter.c @@ -219,6 +219,8 @@ rspamd_cl_elt_write_json (rspamd_cl_object_t *obj, GString *buf, guint tabs, gbo case RSPAMD_CL_ARRAY: rspamd_cl_elt_array_write_json (obj->value.ov, buf, tabs, start_tabs, compact); break; + case RSPAMD_CL_USERDATA: + break; } } @@ -399,6 +401,8 @@ rspamd_cl_elt_write_rcl (rspamd_cl_object_t *obj, GString *buf, guint tabs, gboo case RSPAMD_CL_ARRAY: rspamd_cl_elt_array_write_rcl (obj->value.ov, buf, tabs, start_tabs, is_top); break; + case RSPAMD_CL_USERDATA: + break; } }