Merge "crash_reporter: Run with supplemental groups"

This commit is contained in:
Steve Fung 2015-08-25 22:56:56 +00:00 committed by Gerrit Code Review
commit c3d61786f0

View file

@ -24,6 +24,7 @@
#include <stdint.h> #include <stdint.h>
#include <sys/cdefs.h> // For __WORDSIZE #include <sys/cdefs.h> // For __WORDSIZE
#include <sys/types.h> // For getpwuid_r, getgrnam_r, WEXITSTATUS. #include <sys/types.h> // For getpwuid_r, getgrnam_r, WEXITSTATUS.
#include <unistd.h> // For setgroups
#include <string> #include <string>
#include <vector> #include <vector>
@ -37,6 +38,7 @@
#include <chromeos/process.h> #include <chromeos/process.h>
#include <chromeos/syslog_logging.h> #include <chromeos/syslog_logging.h>
#include <cutils/properties.h> #include <cutils/properties.h>
#include <private/android_filesystem_config.h>
static const char kCollectionErrorSignature[] = static const char kCollectionErrorSignature[] =
"crash_reporter-user-collection"; "crash_reporter-user-collection";
@ -77,6 +79,11 @@ void UserCollector::Initialize(
core2md_failure_ = core2md_failure; core2md_failure_ = core2md_failure;
directory_failure_ = directory_failure; directory_failure_ = directory_failure;
filter_in_ = filter_in; filter_in_ = filter_in;
gid_t groups[] = { AID_SYSTEM, AID_DBUS };
if (setgroups(arraysize(groups), groups) != 0) {
PLOG(FATAL) << "Unable to set groups to system and dbus";
}
} }
UserCollector::~UserCollector() { UserCollector::~UserCollector() {