]> git.ipfire.org Git - thirdparty/rspamd.git/commitdiff
Add deinitialization for upstreams
authorVsevolod Stakhov <vsevolod@highsecure.ru>
Fri, 20 Nov 2015 17:09:32 +0000 (17:09 +0000)
committerVsevolod Stakhov <vsevolod@highsecure.ru>
Fri, 20 Nov 2015 17:09:32 +0000 (17:09 +0000)
src/libserver/cfg_utils.c
src/libutil/upstream.c
src/libutil/upstream.h

index 53ce5add4624b89fb8e27fd96224cb624733a530..b2e97564f50c891dc6e0796ff411c8f2c9fc3d38 100644 (file)
@@ -229,6 +229,7 @@ rspamd_config_free (struct rspamd_config *cfg)
        g_list_free (cfg->metrics_list);
        rspamd_symbols_cache_destroy (cfg->cache);
        REF_RELEASE (cfg->libs_ctx);
+       rspamd_upstreams_library_unref (cfg->ups_ctx);
        rspamd_mempool_delete (cfg->cfg_pool);
        lua_close (cfg->lua_state);
        g_slice_free1 (sizeof (*cfg), cfg);
index 5ef913f45ea8ee54f585e6fc7d93500af51ca848..9ed483f18d6bcdb6fc38ff943726afbf79fbcbf0 100644 (file)
@@ -139,6 +139,12 @@ rspamd_upstream_ctx_dtor (struct upstream_ctx *ctx)
        g_slice_free1 (sizeof (*ctx), ctx);
 }
 
+void
+rspamd_upstreams_library_unref (struct upstream_ctx *ctx)
+{
+       REF_RELEASE (ctx);
+}
+
 struct upstream_ctx *
 rspamd_upstreams_library_init (void)
 {
index a22a44589a7dbf8cba5af328d850bb223198386a..eab2be368d3be7540d5427a2e5d654848a2692a6 100644 (file)
@@ -27,6 +27,11 @@ struct upstream_ctx;
  */
 struct upstream_ctx* rspamd_upstreams_library_init (void);
 
+/**
+ * Remove reference from upstreams library
+ */
+void rspamd_upstreams_library_unref (struct upstream_ctx *ctx);
+
 /**
  * Configure attributes of upstreams library
  * @param cfg