summaryrefslogtreecommitdiff
path: root/cmds/dumpstate/utils.cpp
diff options
context:
space:
mode:
author Wei Liu <luciferleo@google.com> 2016-08-26 14:51:42 -0700
committer Felipe Leme <felipeal@google.com> 2016-10-03 17:43:12 -0700
commit2cc37eaaa7f76b690987a09b0674161583403c84 (patch)
treef56d041e79ff9adc34de006391e2c2f336e7af4b /cmds/dumpstate/utils.cpp
parenta4bb5c7173ceaf58893924e84187bb97c88d10a1 (diff)
Dumpstate should hold a wakelock to save bug report time. DO NOT MERGE.
BUG: 31828706 BUG: 30832947 Change-Id: I0a4b1fcce91caa96ccbc4e890d9968e3033487de (cherry picked from commit f87959e00732d7d737527f1248a71adea99ae29d)
Diffstat (limited to 'cmds/dumpstate/utils.cpp')
-rw-r--r--cmds/dumpstate/utils.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/cmds/dumpstate/utils.cpp b/cmds/dumpstate/utils.cpp
index fd6413d562..1035cde9d4 100644
--- a/cmds/dumpstate/utils.cpp
+++ b/cmds/dumpstate/utils.cpp
@@ -828,7 +828,7 @@ bool drop_root_user() {
}
gid_t groups[] = { AID_LOG, AID_SDCARD_R, AID_SDCARD_RW,
- AID_MOUNT, AID_INET, AID_NET_BW_STATS, AID_READPROC };
+ AID_MOUNT, AID_INET, AID_NET_BW_STATS, AID_READPROC, AID_WAKELOCK };
if (setgroups(sizeof(groups)/sizeof(groups[0]), groups) != 0) {
MYLOGE("Unable to setgroups, aborting: %s\n", strerror(errno));
return false;
@@ -849,8 +849,10 @@ bool drop_root_user() {
capheader.version = _LINUX_CAPABILITY_VERSION_3;
capheader.pid = 0;
- capdata[CAP_TO_INDEX(CAP_SYSLOG)].permitted = CAP_TO_MASK(CAP_SYSLOG);
- capdata[CAP_TO_INDEX(CAP_SYSLOG)].effective = CAP_TO_MASK(CAP_SYSLOG);
+ capdata[CAP_TO_INDEX(CAP_SYSLOG)].permitted =
+ (CAP_TO_MASK(CAP_SYSLOG) | CAP_TO_MASK(CAP_BLOCK_SUSPEND));
+ capdata[CAP_TO_INDEX(CAP_SYSLOG)].effective =
+ (CAP_TO_MASK(CAP_SYSLOG) | CAP_TO_MASK(CAP_BLOCK_SUSPEND));
capdata[0].inheritable = 0;
capdata[1].inheritable = 0;