From 764c3a1e4f21c635c565cf5c20c480dbf48d1599 Mon Sep 17 00:00:00 2001 From: Denys Vlasenko Date: Tue, 19 Jan 2010 16:48:54 +0100 Subject: unify "crash data, "crash info" and "crash report" data types. they are the same Signed-off-by: Denys Vlasenko --- lib/Plugins/Mailx.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'lib/Plugins/Mailx.cpp') diff --git a/lib/Plugins/Mailx.cpp b/lib/Plugins/Mailx.cpp index 2f8448f..ae8c2dc 100644 --- a/lib/Plugins/Mailx.cpp +++ b/lib/Plugins/Mailx.cpp @@ -65,7 +65,7 @@ static char** append_str_to_vector(char **vec, unsigned &size, const char *str) return vec; } -std::string CMailx::Report(const map_crash_report_t& pCrashReport, +std::string CMailx::Report(const map_crash_data_t& pCrashData, const map_plugin_settings_t& pSettings, const char *pArgs) { @@ -75,8 +75,8 @@ std::string CMailx::Report(const map_crash_report_t& pCrashReport, //TODO: move email body generation to make_descr.cpp std::string binaryFiles, commonFiles, additionalFiles, UUIDFile; - map_crash_report_t::const_iterator it; - for (it = pCrashReport.begin(); it != pCrashReport.end(); it++) + map_crash_data_t::const_iterator it; + for (it = pCrashData.begin(); it != pCrashData.end(); it++) { if (it->second[CD_TYPE] == CD_TXT) { @@ -135,7 +135,7 @@ std::string CMailx::Report(const map_crash_report_t& pCrashReport, args = append_str_to_vector(args, arg_size, m_sEmailTo.c_str()); update_client(_("Sending an email...")); - const char *uid_str = pCrashReport.find(CD_MWUID)->second[CD_CONTENT].c_str(); + const char *uid_str = get_crash_data_item_content(pCrashData, CD_MWUID).c_str(); exec_and_feed_input(xatoi_u(uid_str), emailBody.c_str(), args); while (*args) -- cgit From 1a3447c52fe47cca5d72d0a15cbbca9f6d18eb50 Mon Sep 17 00:00:00 2001 From: Denys Vlasenko Date: Wed, 20 Jan 2010 20:26:28 +0100 Subject: use get_crash_data_item_content() accessor more widely Signed-off-by: Denys Vlasenko --- lib/Plugins/Mailx.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'lib/Plugins/Mailx.cpp') diff --git a/lib/Plugins/Mailx.cpp b/lib/Plugins/Mailx.cpp index ae8c2dc..20af8e7 100644 --- a/lib/Plugins/Mailx.cpp +++ b/lib/Plugins/Mailx.cpp @@ -117,7 +117,7 @@ std::string CMailx::Report(const map_crash_data_t& pCrashData, } } - std::string emailBody = "Duplicity check\n"; + std::string emailBody = "Duplicate check\n"; emailBody += "=====\n\n"; emailBody += UUIDFile; emailBody += "\nCommon information\n"; -- cgit From 6443695f275167adb123070daf2a6b6ecc0bb371 Mon Sep 17 00:00:00 2001 From: Denys Vlasenko Date: Thu, 21 Jan 2010 02:56:53 +0100 Subject: abrtd: fix Report() dbus call gaping security holes We were blindly trusting the values passed to us Signed-off-by: Denys Vlasenko --- lib/Plugins/Mailx.cpp | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) (limited to 'lib/Plugins/Mailx.cpp') diff --git a/lib/Plugins/Mailx.cpp b/lib/Plugins/Mailx.cpp index 20af8e7..2ee9645 100644 --- a/lib/Plugins/Mailx.cpp +++ b/lib/Plugins/Mailx.cpp @@ -74,13 +74,13 @@ std::string CMailx::Report(const map_crash_data_t& pCrashData, args = append_str_to_vector(args, arg_size, MAILX_COMMAND); //TODO: move email body generation to make_descr.cpp - std::string binaryFiles, commonFiles, additionalFiles, UUIDFile; + std::string binaryFiles, commonFiles, additionalFiles, DUPHASHFile; map_crash_data_t::const_iterator it; for (it = pCrashData.begin(); it != pCrashData.end(); it++) { if (it->second[CD_TYPE] == CD_TXT) { - if (it->first != CD_UUID + if (it->first != CD_DUPHASH && it->first != FILENAME_ARCHITECTURE && it->first != FILENAME_KERNEL && it->first != FILENAME_PACKAGE @@ -90,12 +90,12 @@ std::string CMailx::Report(const map_crash_data_t& pCrashData, additionalFiles += it->second[CD_CONTENT]; additionalFiles += "\n\n"; } - else if (it->first == CD_UUID) + else if (it->first == CD_DUPHASH) { - UUIDFile += it->first; - UUIDFile += "\n-----\n"; - UUIDFile += it->second[CD_CONTENT]; - UUIDFile += "\n\n"; + DUPHASHFile += it->first; + DUPHASHFile += "\n-----\n"; + DUPHASHFile += it->second[CD_CONTENT]; + DUPHASHFile += "\n\n"; } else { @@ -119,7 +119,7 @@ std::string CMailx::Report(const map_crash_data_t& pCrashData, std::string emailBody = "Duplicate check\n"; emailBody += "=====\n\n"; - emailBody += UUIDFile; + emailBody += DUPHASHFile; emailBody += "\nCommon information\n"; emailBody += "=====\n\n"; emailBody += commonFiles; @@ -135,7 +135,7 @@ std::string CMailx::Report(const map_crash_data_t& pCrashData, args = append_str_to_vector(args, arg_size, m_sEmailTo.c_str()); update_client(_("Sending an email...")); - const char *uid_str = get_crash_data_item_content(pCrashData, CD_MWUID).c_str(); + const char *uid_str = get_crash_data_item_content(pCrashData, FILENAME_UID).c_str(); exec_and_feed_input(xatoi_u(uid_str), emailBody.c_str(), args); while (*args) -- cgit