summaryrefslogtreecommitdiffstats
path: root/src/Daemon/CommLayerServerDBus.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/Daemon/CommLayerServerDBus.cpp')
-rw-r--r--src/Daemon/CommLayerServerDBus.cpp45
1 files changed, 25 insertions, 20 deletions
diff --git a/src/Daemon/CommLayerServerDBus.cpp b/src/Daemon/CommLayerServerDBus.cpp
index 27a18c24..9222c594 100644
--- a/src/Daemon/CommLayerServerDBus.cpp
+++ b/src/Daemon/CommLayerServerDBus.cpp
@@ -88,23 +88,21 @@ void CCommLayerServerDBus::JobDone(const char* peer, const char* pUUID)
send_flush_and_unref(msg);
}
-void CCommLayerServerDBus::Update(const std::string& pMessage, const char* peer, uint64_t job_id)
+void CCommLayerServerDBus::Update(const char* pMessage, const char* peer, uint64_t job_id)
{
DBusMessage* msg = new_signal_msg("Update", peer);
- const char* c_message = pMessage.c_str();
dbus_message_append_args(msg,
- DBUS_TYPE_STRING, &c_message,
+ DBUS_TYPE_STRING, &pMessage,
DBUS_TYPE_UINT64, &job_id, /* TODO: redundant parameter, remove from API */
DBUS_TYPE_INVALID);
send_flush_and_unref(msg);
}
-void CCommLayerServerDBus::Warning(const std::string& pMessage, const char* peer, uint64_t job_id)
+void CCommLayerServerDBus::Warning(const char* pMessage, const char* peer, uint64_t job_id)
{
DBusMessage* msg = new_signal_msg("Warning", peer);
- const char* c_message = pMessage.c_str();
dbus_message_append_args(msg,
- DBUS_TYPE_STRING, &c_message,
+ DBUS_TYPE_STRING, &pMessage,
DBUS_TYPE_UINT64, &job_id, /* TODO: redundant parameter, remove from API */
DBUS_TYPE_INVALID);
send_flush_and_unref(msg);
@@ -137,9 +135,9 @@ static int handle_GetCrashInfos(DBusMessage* call, DBusMessage* reply)
long unix_uid = get_remote_uid(call);
vector_crash_infos_t argout1 = GetCrashInfos(to_string(unix_uid).c_str());
- DBusMessageIter iter;
- dbus_message_iter_init_append(reply, &iter);
- store_val(&iter, argout1);
+ DBusMessageIter out_iter;
+ dbus_message_iter_init_append(reply, &out_iter);
+ store_val(&out_iter, argout1);
send_flush_and_unref(reply);
return 0;
@@ -315,7 +313,11 @@ static int handle_DeleteDebugDump(DBusMessage* call, DBusMessage* reply)
}
long unix_uid = get_remote_uid(call);
- DeleteDebugDump(argin1, to_string(unix_uid).c_str());
+ int32_t result = DeleteDebugDump(argin1, to_string(unix_uid).c_str());
+
+ DBusMessageIter out_iter;
+ dbus_message_iter_init_append(reply, &out_iter);
+ store_val(&out_iter, result);
send_flush_and_unref(reply);
return 0;
@@ -325,9 +327,9 @@ static int handle_GetPluginsInfo(DBusMessage* call, DBusMessage* reply)
{
vector_map_string_t plugins_info = g_pPluginManager->GetPluginsInfo();
- DBusMessageIter iter;
- dbus_message_iter_init_append(reply, &iter);
- store_val(&iter, plugins_info);
+ DBusMessageIter out_iter;
+ dbus_message_iter_init_append(reply, &out_iter);
+ store_val(&out_iter, plugins_info);
send_flush_and_unref(reply);
return 0;
@@ -350,9 +352,10 @@ static int handle_GetPluginSettings(DBusMessage* call, DBusMessage* reply)
VERB1 log("got %s('%s') call from uid %ld", "GetPluginSettings", PluginName, unix_uid);
map_plugin_settings_t plugin_settings = g_pPluginManager->GetPluginSettings(PluginName, to_string(unix_uid).c_str());
- DBusMessageIter iter;
- dbus_message_iter_init_append(reply, &iter);
- store_val(&iter, plugin_settings);
+ DBusMessageIter out_iter;
+ dbus_message_iter_init_append(reply, &out_iter);
+ store_val(&out_iter, plugin_settings);
+
send_flush_and_unref(reply);
return 0;
}
@@ -434,9 +437,10 @@ static int handle_GetSettings(DBusMessage* call, DBusMessage* reply)
{
map_abrt_settings_t result = GetSettings();
- DBusMessageIter iter;
- dbus_message_iter_init_append(reply, &iter);
- store_val(&iter, result);
+ DBusMessageIter out_iter;
+ dbus_message_iter_init_append(reply, &out_iter);
+ store_val(&out_iter, result);
+
send_flush_and_unref(reply);
return 0;
}
@@ -540,7 +544,8 @@ static void handle_dbus_err(bool error_flag, DBusError *err)
return;
error_msg_and_die(
"Error requesting DBus name %s, possible reasons: "
- "abrt run by non-root; dbus config is incorrect",
+ "abrt run by non-root; dbus config is incorrect; "
+ "or dbus daemon needs to be restarted to reload dbus config",
ABRTD_DBUS_NAME);
}