summaryrefslogtreecommitdiffstats
path: root/src/Hooks
diff options
context:
space:
mode:
authorZdenek Prikryl <zprikryl@redhat.com>2009-06-30 09:14:12 +0200
committerZdenek Prikryl <zprikryl@redhat.com>2009-06-30 09:14:12 +0200
commitdcca51525ab4994cb8c1232e9698a534109288db (patch)
treebf514895323c86de40989b5bc73954f8515c151f /src/Hooks
parenta0c9339e53a2e9c2d340aeecadd00fbc62e8443b (diff)
downloadabrt-dcca51525ab4994cb8c1232e9698a534109288db.tar.gz
abrt-dcca51525ab4994cb8c1232e9698a534109288db.tar.xz
abrt-dcca51525ab4994cb8c1232e9698a534109288db.zip
fixed security issue
User can read only his debugdump directories
Diffstat (limited to 'src/Hooks')
-rw-r--r--src/Hooks/CCpp.cpp5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/Hooks/CCpp.cpp b/src/Hooks/CCpp.cpp
index 1d895c24..2a7e60c2 100644
--- a/src/Hooks/CCpp.cpp
+++ b/src/Hooks/CCpp.cpp
@@ -127,7 +127,7 @@ int daemon_is_ok()
int main(int argc, char** argv)
{
const char* program_name = argv[0];
- if (argc < 3)
+ if (argc < 4)
{
fprintf(stderr, "Usage: %s: <dddir> <pid> <signal> <uid>\n",
program_name);
@@ -172,10 +172,9 @@ int main(int argc, char** argv)
}
snprintf(path, sizeof(path), "%s/ccpp-%ld-%s", dddir, time(NULL), pid);
- dd.Create(path);
+ dd.Create(path, uid);
dd.SaveText(FILENAME_ANALYZER, "CCpp");
dd.SaveText(FILENAME_EXECUTABLE, executable);
- dd.SaveText(FILENAME_UID, uid);
dd.SaveText(FILENAME_CMDLINE, cmdline);
dd.SaveText(FILENAME_REASON, std::string("Process was terminated by signal ") + signal);