Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

libsepol/cil: fix mlsconstrain segfault #164

Merged
merged 1 commit into from
Jun 19, 2019

Commits on Jun 17, 2019

  1. libsepol/cil: fix mlsconstrain segfault

    Installing a cil module with invalid mlsconstrain syntax currently
    results in a segfault. In the following module, the right-hand side of
    the second operand of the OR is a list (mlstrustedobject):
    
    $ cat test.cil
    (class test (foo) )
    (classorder (unordered test))
    
    (mlsconstrain (test (foo))
    	(or
    		(dom h1 h2)
    		(eq t2 (mlstrustedobject))
    	)
    )
    
    $ sudo semodule -i test.cil
    zsh: segmentation fault  sudo semodule -i test.cil
    
    This syntax is invalid and should error accordingly, rather than
    segfaulting. This patch provides this syntax error for the same module:
    
    $ sudo semodule -i test.cil
    t1, t2, r1, r2, u1, u2 cannot be used on the left side with a list on the right side
    Bad expression tree for constraint
    Bad constrain declaration at /var/lib/selinux/mls/tmp/modules/400/test/cil:4
    semodule:  Failed!
    
    Signed-off-by: Mike Palmiotto <mike.palmiotto@crunchydata.com>
    mpalmi authored and William Roberts committed Jun 17, 2019
    Configuration menu
    Copy the full SHA
    08d7543 View commit details
    Browse the repository at this point in the history