diff options
-rw-r--r-- | lib/CommLayer/CommLayerServerDBus.cpp | 7 | ||||
-rw-r--r-- | lib/CommLayer/CommLayerServerDBus.h | 2 | ||||
-rw-r--r-- | lib/CommLayer/DBusServerProxy.cpp | 3 | ||||
-rw-r--r-- | lib/CommLayer/DBusServerProxy.h | 2 | ||||
-rw-r--r-- | lib/CommLayer/Observer.h | 2 |
5 files changed, 9 insertions, 7 deletions
diff --git a/lib/CommLayer/CommLayerServerDBus.cpp b/lib/CommLayer/CommLayerServerDBus.cpp index d2b6d4d1..4b6c99b0 100644 --- a/lib/CommLayer/CommLayerServerDBus.cpp +++ b/lib/CommLayer/CommLayerServerDBus.cpp @@ -22,7 +22,7 @@ CCommLayerServerDBus::CCommLayerServerDBus() } catch(DBus::Error err) { - throw CABRTException(EXCEP_FATAL, std::string(__func__) + + throw CABRTException(EXCEP_FATAL, std::string(__func__) + "\nPlease check if:\n" + " * abrt is being run with root permissions\n" + " * you have reloaded the dbus\n"+ @@ -116,9 +116,10 @@ vector_map_string_string_t CCommLayerServerDBus::GetPluginsInfo() return plugins_info; } -map_plugin_settings_t CCommLayerServerDBus::GetPluginSettings(const std::string& pName) +map_plugin_settings_t CCommLayerServerDBus::GetPluginSettings(const std::string& pName, const std::string& pSender) { - return m_pObserver->GetPluginSettings(pName); + unsigned long unix_uid = m_pConn->sender_unix_uid(pSender.c_str()); + return m_pObserver->GetPluginSettings(pName, to_string(unix_uid)); } diff --git a/lib/CommLayer/CommLayerServerDBus.h b/lib/CommLayer/CommLayerServerDBus.h index bec75672..a020e9bc 100644 --- a/lib/CommLayer/CommLayerServerDBus.h +++ b/lib/CommLayer/CommLayerServerDBus.h @@ -27,7 +27,7 @@ class CCommLayerServerDBus virtual bool DeleteDebugDump(const std::string& pUUID, const std::string& pSender); virtual map_crash_report_t GetJobResult(uint64_t pJobID, const std::string& pSender); virtual vector_map_string_string_t GetPluginsInfo(); - virtual map_plugin_settings_t GetPluginSettings(const std::string& pName); + virtual map_plugin_settings_t GetPluginSettings(const std::string& pName, const std::string& pSender); void RegisterPlugin(const std::string& pName); void UnRegisterPlugin(const std::string& pName); diff --git a/lib/CommLayer/DBusServerProxy.cpp b/lib/CommLayer/DBusServerProxy.cpp index 0693c6dd..a246e8ae 100644 --- a/lib/CommLayer/DBusServerProxy.cpp +++ b/lib/CommLayer/DBusServerProxy.cpp @@ -212,9 +212,10 @@ DBus::Message CDBusServer_adaptor::_GetPluginSettings_stub(const DBus::CallMessa { DBus::MessageIter ri = call.reader(); std::string PluginName; + std::string uid; ri >> PluginName; map_plugin_settings_t plugin_settings; - plugin_settings = GetPluginSettings(PluginName); + plugin_settings = GetPluginSettings(PluginName, call.sender()); DBus::ReturnMessage reply(call); DBus::MessageIter wi = reply.writer(); wi << plugin_settings; diff --git a/lib/CommLayer/DBusServerProxy.h b/lib/CommLayer/DBusServerProxy.h index 495309b7..299ab34e 100644 --- a/lib/CommLayer/DBusServerProxy.h +++ b/lib/CommLayer/DBusServerProxy.h @@ -50,7 +50,7 @@ public: virtual bool DeleteDebugDump(const std::string& pUUID, const std::string& pDBusSender) = 0; virtual map_crash_report_t GetJobResult(uint64_t pJobID, const std::string& pDBusSender) = 0; virtual vector_map_string_string_t GetPluginsInfo() = 0; - virtual map_plugin_settings_t GetPluginSettings(const std::string& pName) = 0; + virtual map_plugin_settings_t GetPluginSettings(const std::string& pName, const std::string& pDBusSender) = 0; virtual void RegisterPlugin(const std::string& pName) = 0; virtual void UnRegisterPlugin(const std::string& pName) = 0; diff --git a/lib/CommLayer/Observer.h b/lib/CommLayer/Observer.h index ec7268e8..42688295 100644 --- a/lib/CommLayer/Observer.h +++ b/lib/CommLayer/Observer.h @@ -26,7 +26,7 @@ class CObserver { virtual bool DeleteDebugDump(const std::string& pUUID, const std::string& pSender) = 0; virtual map_crash_report_t GetJobResult(uint64_t pJobID, const std::string &pSender) = 0; virtual vector_map_string_string_t GetPluginsInfo() = 0; - virtual map_plugin_settings_t GetPluginSettings(const std::string& pName) = 0; + virtual map_plugin_settings_t GetPluginSettings(const std::string& pName, const std::string& pUID) = 0; virtual void RegisterPlugin(const std::string& pName) = 0; virtual void UnRegisterPlugin(const std::string& pName) = 0; }; |