Ensure that /data/anr/traces.txt is world-writable

The umask changed for init. We have to force /data/anr to be world
readble and /data/anr/traces.txt to be world writable so dalvik
processes can write to it.

Hopefully this is a short term change while we investigate tightening
up these permissions.

Bug: 6300296
Change-Id: Iacb4c9f1bc69d2ac679697f9cf9a52694f888489
This commit is contained in:
Nick Kralevich 2012-04-06 09:31:28 -07:00
parent 3eb38cb33e
commit c7f1fe2680

View File

@ -375,6 +375,7 @@ const char *dump_vm_traces() {
*slash = '\0';
if (!mkdir(anr_traces_dir, 0775)) {
chown(anr_traces_dir, AID_SYSTEM, AID_SYSTEM);
chmod(anr_traces_dir, 0775);
} else if (errno != EEXIST) {
fprintf(stderr, "mkdir(%s): %s\n", anr_traces_dir, strerror(errno));
return NULL;
@ -387,6 +388,12 @@ const char *dump_vm_traces() {
fprintf(stderr, "%s: %s\n", traces_path, strerror(errno));
return NULL;
}
int chmod_ret = fchmod(fd, 0666);
if (chmod_ret < 0) {
fprintf(stderr, "fchmod on %s failed: %s\n", traces_path, strerror(errno));
close(fd);
return NULL;
}
close(fd);
/* walk /proc and kill -QUIT all Dalvik processes */