am d98c87c9: Merge "init: Fix chown and chmod for write-only files"

* commit 'd98c87c95342ed6eade9f1239122dc9e90dcad67':
  init: Fix chown and chmod for write-only files
This commit is contained in:
Jean-Baptiste Queru 2012-05-06 15:29:18 -07:00 committed by Android Git Automerger
commit 254e0d496e
1 changed files with 13 additions and 2 deletions

View File

@ -75,12 +75,23 @@ static int write_file(const char *path, const char *value)
}
}
static int _open(const char *path)
{
int fd;
fd = open(path, O_RDONLY | O_NOFOLLOW);
if (fd < 0)
fd = open(path, O_WRONLY | O_NOFOLLOW);
return fd;
}
static int _chown(const char *path, unsigned int uid, unsigned int gid)
{
int fd;
int ret;
fd = open(path, O_RDONLY | O_NOFOLLOW);
fd = _open(path);
if (fd < 0) {
return -1;
}
@ -103,7 +114,7 @@ static int _chmod(const char *path, mode_t mode)
int fd;
int ret;
fd = open(path, O_RDONLY | O_NOFOLLOW);
fd = _open(path);
if (fd < 0) {
return -1;
}