diff options
author | Nick Kralevich <nnk@google.com> | 2014-10-24 05:36:42 +0200 |
---|---|---|
committer | Nick Kralevich <nnk@google.com> | 2014-10-24 05:46:33 +0200 |
commit | 688024169df70336cc128ea8cc929174c53a501e (patch) | |
tree | a0e4555e3d4d10e022cbeb6c1b86ff740ff2574a /updater/install.c | |
parent | Allow passing of mount args to mountFn (diff) | |
download | android_bootable_recovery-688024169df70336cc128ea8cc929174c53a501e.tar android_bootable_recovery-688024169df70336cc128ea8cc929174c53a501e.tar.gz android_bootable_recovery-688024169df70336cc128ea8cc929174c53a501e.tar.bz2 android_bootable_recovery-688024169df70336cc128ea8cc929174c53a501e.tar.lz android_bootable_recovery-688024169df70336cc128ea8cc929174c53a501e.tar.xz android_bootable_recovery-688024169df70336cc128ea8cc929174c53a501e.tar.zst android_bootable_recovery-688024169df70336cc128ea8cc929174c53a501e.zip |
Diffstat (limited to 'updater/install.c')
-rw-r--r-- | updater/install.c | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/updater/install.c b/updater/install.c index 282a6188b..db2bd3295 100644 --- a/updater/install.c +++ b/updater/install.c @@ -770,9 +770,17 @@ static int ApplyParsedPerms( { int bad = 0; + if (parsed.has_selabel) { + if (lsetfilecon(filename, parsed.selabel) != 0) { + uiPrintf(state, "ApplyParsedPerms: lsetfilecon of %s to %s failed: %s\n", + filename, parsed.selabel, strerror(errno)); + bad++; + } + } + /* ignore symlinks */ if (S_ISLNK(statptr->st_mode)) { - return 0; + return bad; } if (parsed.has_uid) { @@ -815,15 +823,6 @@ static int ApplyParsedPerms( } } - if (parsed.has_selabel) { - // TODO: Don't silently ignore ENOTSUP - if (lsetfilecon(filename, parsed.selabel) && (errno != ENOTSUP)) { - uiPrintf(state, "ApplyParsedPerms: lsetfilecon of %s to %s failed: %s\n", - filename, parsed.selabel, strerror(errno)); - bad++; - } - } - if (parsed.has_capabilities && S_ISREG(statptr->st_mode)) { if (parsed.capabilities == 0) { if ((removexattr(filename, XATTR_NAME_CAPS) == -1) && (errno != ENODATA)) { |