diff options
author | Jiri Moskovcak <jmoskovc@redhat.com> | 2011-04-07 16:28:54 +0200 |
---|---|---|
committer | Jiri Moskovcak <jmoskovc@redhat.com> | 2011-04-07 16:28:54 +0200 |
commit | 510f86238a01e6bfba49f110ad7b9e4f6d22bd08 (patch) | |
tree | dba72ab84ef8f6fdb326ad44d7f5460e6739d3ed /src | |
parent | 9cd3eb3d3fbf73524d313cfaa1a81873f2e301a8 (diff) | |
download | abrt-510f86238a01e6bfba49f110ad7b9e4f6d22bd08.tar.gz abrt-510f86238a01e6bfba49f110ad7b9e4f6d22bd08.tar.xz abrt-510f86238a01e6bfba49f110ad7b9e4f6d22bd08.zip |
make rhtsupport use /tmp for tmp files
- also added default event configuration for rhtsupport
- and tweaked a spec file a little
Diffstat (limited to 'src')
-rw-r--r-- | src/plugins/Makefile.am | 3 | ||||
-rw-r--r-- | src/plugins/abrt-action-rhtsupport.c | 14 |
2 files changed, 12 insertions, 5 deletions
diff --git a/src/plugins/Makefile.am b/src/plugins/Makefile.am index 418b5a19..1e3c15d0 100644 --- a/src/plugins/Makefile.am +++ b/src/plugins/Makefile.am @@ -49,7 +49,8 @@ eventsconfdir = $(EVENTS_CONF_DIR) dist_eventsconf_DATA = \ ccpp_events.conf \ mailx_events.conf \ - koops_events.conf + koops_events.conf \ + rhtsupport_events.conf man_MANS = \ abrt-Bugzilla.7 \ diff --git a/src/plugins/abrt-action-rhtsupport.c b/src/plugins/abrt-action-rhtsupport.c index 6bbf76a0..233b607f 100644 --- a/src/plugins/abrt-action-rhtsupport.c +++ b/src/plugins/abrt-action-rhtsupport.c @@ -91,11 +91,16 @@ static void report_to_rhtsupport( dsc = xasprintf("abrt version: "VERSION"\n%s", bz_dsc); free(bz_dsc); } - file = new_reportfile(); - - /* SELinux guys are not happy with /tmp, using /var/run/abrt */ - tempfile = xasprintf(LOCALSTATEDIR"/run/abrt/tmp-%s-%lu.tar.gz", iso_date_string(NULL), (long)getpid()); + const char *dt_string = iso_date_string(NULL); + char tmpdir_name[sizeof("/tmp/rhtsupport-YYYY-MM-DD-hh:mm:ss-XXXXXX")]; + sprintf(tmpdir_name, "/tmp/rhtsupport-%s-XXXXXX", dt_string); + /* mkdtemp does mkdir(xxx, 0700), should be safe (is it?) */ + if (mkdtemp(tmpdir_name) == NULL) + { + error_msg_and_die(_("Can't create a temporary directory in /tmp")); + } + tempfile = xasprintf("%s/tmp-%s-%lu.tar.gz",tmpdir_name, iso_date_string(NULL), (long)getpid()); int pipe_from_parent_to_child[2]; xpipe(pipe_from_parent_to_child); @@ -236,6 +241,7 @@ static void report_to_rhtsupport( unlink(tempfile); free(tempfile); reportfile_free(file); + rmdir(tmpdir_name); free(summary); free(dsc); |