On Thu, Dec 3, 2015 at 3:04 AM, Richard Haines < [email protected]> wrote:
> > On Thursday, 3 December 2015, 10:07, Elena Reshetova < > [email protected]> wrote: > > > > > > > >Hi guys, > > > >I have been investigating a really weird issue and want to ask if you > know what might go wrong. > >So, normally file_contexts file is composed from the > external/sepolicy/file_contexts and OEM modifications that can be declared > in different places in file_contexts files, but joined using the > BOARD_SEPOLICY_DIRS. For example: > >BOARD_SEPOLICY_DIRS += device/intel/sepolicy/bla/xyz > > > >All is good and it worked for ages, but now it works strangely on one > (and only one) particular addition in file_contexts like this: > > > >/dev/xyz u:object_r:xyz_device:s0 > > > > > > >Important part here is that there is no newline at the end of the above > line (which is quite normal and the same for many other similar > file_contexts file). > > > I fixed a problem of this type in libselinux with the change at: > > https://android-review.googlesource.com/#/c/157661/ > in June as part of the Enhanced spec file support. Could you check if this > is present, > if so I'll investigate further. > > > Now that I am not on a mobile device and can open these files up in a proper hex editor I can also see what the problem is (which is exactly as described). No 0x0A at the end of the files... Looking through the AOSP file_contexts files, they all do indeed end with 0x0A, I was just expecting the webpage to show the newline, but it shows it in more vim style and requires a newline + other character to show the next line. As additional check, I looked for any DOS endings in our policy, and nothing crept in there. However, that patch to pull in, would require its dependencies to be pulled in as well: external/libselinux$ !888 git shortlog --all -- src/label_file.h Jeffrey Vander Stoep (1): Revert "libselinux: Enhance spec file support" Richard Haines (3): libselinux: Enhance spec file support libselinux: Enhance spec file support Fix mmap memory release for file labeling Stephen Smalley (1): libselinux: fail hard on invalid file_contexts entries William Roberts (1): fix memory leaks and uninitialized jump > > > >So, what happens is that line gets added to the resulted file_contexts > there is a no newline after and the next addition to file_contexts get > written to the same line (straight after the label). So, in the resulting > file_contexts we have: > > > >/dev/xyz u:object_r:xyz_device:s0#Additional file_contexts > > > > > >Where "#Additional file_contexts" is the first line of another > file_contexts file that happens to be added after. > > > > > >Of course selinux has an issue with the above label, so it complains: > > > >out/target/product/bla/root/file_contexts: line 721 has invalid file type > u:object_r:xyz_device:s0# > >out/target/product/bla/root/file_contexts: line 721 has invalid file type > u:object_r:xyz_device:s0# > >out/target/product/bla/root/file_contexts: line 721 has invalid file type > u:object_r:xyz_device:s0# > >out/target/product/bla/root/file_contexts: line 721 has invalid file type > u:object_r:xyz_device:s0# > > > > > > > >Any ideas why this happens? > > > > > >Best Regards, > > > >Elena. > > > > > > > > > >_______________________________________________ > >Seandroid-list mailing list > >[email protected] > >To unsubscribe, send email to [email protected]. > >To get help, send an email containing "help" to > [email protected]. > > > > > _______________________________________________ > Seandroid-list mailing list > [email protected] > To unsubscribe, send email to [email protected]. > To get help, send an email containing "help" to > [email protected]. > -- Respectfully, William C Roberts
_______________________________________________ Seandroid-list mailing list [email protected] To unsubscribe, send email to [email protected]. To get help, send an email containing "help" to [email protected].
