g_slist_free_full(g_reacher->user_added_url, g_free);
g_reacher->user_added_url = NULL;
+ if (g_reacher->running) {
+ __clear_running_mult_data(g_reacher);
+
+ if (__deinit_curl_multi_handle(g_reacher) != 0) {
+ __INM_FUNC_EXIT__;
+ return INM_REACHER_ERROR_OPERATION_FAILED;
+ }
+
+ g_reacher->running = FALSE;
+ }
+
g_reacher->active_connection = 0;
g_reacher->cb = NULL;
g_reacher->cb_user_data = NULL;
__INM_FUNC_EXIT__;
return INM_REACHER_ERROR_NONE;
}
+
+int inm_reacher_stop(inm_reacher_check_type_e type)
+{
+ gint ret = INM_REACHER_ERROR_NONE;
+
+ __INM_FUNC_ENTER__;
+
+ RET_ERR_IF_NOT_INIT();
+ if (!g_reacher->running) {
+ __INM_FUNC_EXIT__;
+ return ret;
+ }
+
+ g_reacher->cb = NULL;
+ g_reacher->cb_user_data = NULL;
+
+ __clear_running_mult_data(g_reacher);
+
+ if (__deinit_curl_multi_handle(g_reacher) != 0) {
+ __INM_FUNC_EXIT__;
+ return INM_REACHER_ERROR_OPERATION_FAILED;
+ }
+
+ g_reacher->running = FALSE;
+ __INM_FUNC_EXIT__;
+ return ret;
+}
+
+int inm_reacher_is_running(gboolean *is_running)
+{
+ gint ret = INM_REACHER_ERROR_NONE;
+
+ __INM_FUNC_ENTER__;
+
+ RET_ERR_IF_NOT_INIT();
+ if (!g_reacher->running) {
+ __INM_FUNC_EXIT__;
+ return ret;
+ }
+
+ *is_running = g_reacher->running;
+
+ return INM_REACHER_ERROR_NONE;
+}