X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=src%2Fstc-manager-gdbus.c;h=04af66c07de8a8629a2d2f7d8a130db59b65cc69;hb=ea31a8f7327f1146303edbdaa64a5624c7b20ef4;hp=2abe2c1d1f578e8103e0cc86f76219e3f68acc36;hpb=d57d0ad0edf5d766390dd7b8e59f1f75f48a00f9;p=platform%2Fcore%2Fconnectivity%2Fstc-manager.git diff --git a/src/stc-manager-gdbus.c b/src/stc-manager-gdbus.c old mode 100755 new mode 100644 index 2abe2c1..04af66c --- a/src/stc-manager-gdbus.c +++ b/src/stc-manager-gdbus.c @@ -19,7 +19,7 @@ #include "stc-statistics.h" #include "stc-restriction.h" #include "stc-firewall.h" -#include "stc-default-connection.h" +#include "stc-connection.h" #include "stc-manager-util.h" #include "stc-manager-plugin-appstatus.h" #include "stc-manager-plugin-procfs.h" @@ -125,17 +125,14 @@ static gboolean __stc_manager_gdbus_restriction_init(stc_s *stc) g_signal_connect(restriction, "handle-set", G_CALLBACK(handle_restriction_set), stc); - g_signal_connect(restriction, "handle-exclude", - G_CALLBACK(handle_restriction_exclude), stc); - g_signal_connect(restriction, "handle-get", G_CALLBACK(handle_restriction_get), stc); g_signal_connect(restriction, "handle-get-all", G_CALLBACK(handle_restriction_get_all), stc); - g_signal_connect(restriction, "handle-get-state", - G_CALLBACK(handle_restriction_get_state), + g_signal_connect(restriction, "handle-get-type", + G_CALLBACK(handle_restriction_get_type), stc); g_signal_connect(restriction, "handle-unset", @@ -258,6 +255,9 @@ static gboolean __stc_manager_gdbus_manager_init(stc_s *stc) g_signal_connect(manager, "handle-commit-iptables", G_CALLBACK(handle_manager_commit_iptables), stc); + g_signal_connect(manager, "handle-commit-ip6tables", + G_CALLBACK(handle_manager_commit_ip6tables), stc); + g_dbus_object_manager_server_export(stc->obj_mgr, G_DBUS_OBJECT_SKELETON(object)); g_object_unref(object); @@ -306,7 +306,7 @@ static void __stc_manager_gdbus_on_bus_acquired(GDBusConnection *connection, stc->connection); iptables_init(); - stc_default_connection_monitor_init(stc); + stc_connection_monitor_init(stc); stc_plugin_appstatus_register_state_changed_cb(stc, stc_plugin_procfs_app_status_changed, NULL); @@ -353,7 +353,7 @@ void stc_manager_gdbus_deinit(gpointer stc_data) stc_s *stc = (stc_s *)stc_data; stc_plugin_appstatus_deregister_state_changed_cb(stc); - stc_default_connection_monitor_deinit(stc); + stc_connection_monitor_deinit(stc); g_bus_unown_name(stc->gdbus_owner_id); @@ -392,7 +392,7 @@ GVariant *stc_manager_gdbus_call_sync(GDBusConnection *connection, if (reply == NULL) { if (error != NULL) { STC_LOGE("g_dbus_connection_call_sync() failed" //LCOV_EXCL_LINE - "error [%d: %s]", error->code, error->message); + " error [%d: %s]", error->code, error->message); g_error_free(error); //LCOV_EXCL_LINE } else { STC_LOGE("g_dbus_connection_call_sync() failed"); //LCOV_EXCL_LINE @@ -457,8 +457,8 @@ void stc_manager_gdbus_dict_foreach(GVariantIter *iter, dbus_dict_cb cb, } while (g_variant_iter_loop(iter, "{sv}", &key, &value)) { - DEBUG_GDBUS_KEY_VALUE(key, value); - if (key && cb) + /* DEBUG_GDBUS_KEY_VALUE(key, value); */ + if (key) cb(key, value, user_data); } @@ -551,3 +551,36 @@ gboolean handle_manager_commit_iptables(StcManager *object, __STC_LOG_FUNC_EXIT__; return TRUE; } + +gboolean handle_manager_commit_ip6tables(StcManager *object, + GDBusMethodInvocation *invocation, + const gchar *option, + void *user_data) +{ + __STC_LOG_FUNC_ENTER__; + GVariant *return_parameters = NULL; + int ret = STC_ERROR_NONE; + int err_num = 0; + char *err_str = NULL; + char cmd[STC_CMD_SIZE] = { 0, }; + + if (option == NULL) { + STC_MANAGER_DBUS_REPLY_ERROR(invocation, + STC_ERROR_INVALID_PARAMETER); + __STC_LOG_FUNC_EXIT__; + return TRUE; + } + + STC_LOGD("[%s]", option); + g_snprintf(cmd, STC_CMD_SIZE, "%s %s", STC_IP6TABLES, option); + + ret = stc_commit_iptables(cmd, &err_num, &err_str); + + return_parameters = g_variant_new("(iis)", ret, err_num, err_str); + + DEBUG_GDBUS_VARIANT("Return parameters: ", return_parameters); + STC_DBUS_REPLY(invocation, return_parameters); + + __STC_LOG_FUNC_EXIT__; + return TRUE; +}