Skip to content

Loadable policy module infrastructure

Joshua Brindle selinux 1 version New

Get series with b4
b4 am 1117128419.3482.18.camel@localhost

Versions newest first

  1. v1 Latest0 of 3 patches 0 repliesNew

Patches in v1 No applies recorded yet

None of the 3 patches the cover letter announces are in this archive.

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.

Read the v1 thread

Cover letter [Patch 0/3] Loadable policy module infrastructure

These patches provide the infrastructure to implement loadable policy modules in the SELinux policy compiler. They add all the module data structures and changes to checkpolicy to build a policy by reading the policy.conf into the module structures and then expand it into the current policy format. This will add everything we need to implement the loadable modules in a subsequent patch.

We attempted to match the upstream compiler behavior completely and so there are parts of the patch that implements inconsistent logic (such as type conflict handling for conditionals) that we plan on cleaning up later and making consistent.

Aside from policies with large amounts of conditional rules the policies generated by this compiler and the current policy compiler will be identical, this ensures that correct policies are being built. The conditional rules are ordered differently by this patch because of the way the conditional expressions are optimized. The policy itself is semantically identical however.

Also, we have tested MLS policy generation and it seems to work but we'd like some indication from someone running an MLS system that it indeed does work correctly.

We expect to send additional patches soon; one which implements the module language itself and another to remove * and ~ from allow rules per a previous thread on this list.

Joshua Brindle
Tresys Technology

--
This message was distributed to subscribers of the selinux mailing list. If you no longer wish to subscribe, send mail to [email protected] with the words "unsubscribe selinux" without quotes as the message.