Merge "Move python sepolicy tests to embedded launcher"

This commit is contained in:
Treehugger Robot 2017-10-04 18:19:58 +00:00 committed by Gerrit Code Review
commit 1e8804101b
3 changed files with 8 additions and 5 deletions

View file

@ -1188,7 +1188,7 @@ $(sepolicy_tests): PRIVATE_SEPOLICY := $(built_sepolicy)
$(sepolicy_tests): $(HOST_OUT_EXECUTABLES)/sepolicy_tests \
$(built_plat_fc) $(built_nonplat_fc) $(built_sepolicy)
@mkdir -p $(dir $@)
$(hide) python $(HOST_OUT_EXECUTABLES)/sepolicy_tests -l $(HOST_OUT)/lib64 -f $(PRIVATE_PLAT_FC) -f $(PRIVATE_NONPLAT_FC) -p $(PRIVATE_SEPOLICY)
$(hide) $(HOST_OUT_EXECUTABLES)/sepolicy_tests -l $(HOST_OUT)/lib64 -f $(PRIVATE_PLAT_FC) -f $(PRIVATE_NONPLAT_FC) -p $(PRIVATE_SEPOLICY)
$(hide) touch $@
##################################
@ -1304,7 +1304,7 @@ $(treble_sepolicy_tests): $(HOST_OUT_EXECUTABLES)/treble_sepolicy_tests \
$(built_plat_fc) $(built_nonplat_fc) $(built_sepolicy) $(built_plat_sepolicy) \
$(built_26.0_plat_sepolicy) $(26.0_compat) $(26.0_mapping.combined.cil)
@mkdir -p $(dir $@)
$(hide) python $(HOST_OUT_EXECUTABLES)/treble_sepolicy_tests -l \
$(hide) $(HOST_OUT_EXECUTABLES)/treble_sepolicy_tests -l \
$(HOST_OUT)/lib64 -f $(PRIVATE_PLAT_FC) -f $(PRIVATE_NONPLAT_FC) \
-b $(PRIVATE_PLAT_SEPOLICY) -m $(PRIVATE_COMBINED_MAPPING) \
-o $(PRIVATE_SEPOLICY_OLD) -p $(PRIVATE_SEPOLICY) \

View file

@ -19,6 +19,7 @@ python_defaults {
name: "py2_only",
version: {
py2: {
embedded_launcher: true,
enabled: true,
},
py3: {

View file

@ -2,6 +2,7 @@ from ctypes import *
import re
import os
import sys
import platform
###
# Check whether the regex will match a file path starting with the provided
@ -252,12 +253,13 @@ class Policy:
# load ctypes-ified libsepol wrapper
def __InitLibsepolwrap(self, LibPath):
if "linux" in sys.platform:
if "linux" in platform.system().lower():
lib = CDLL(LibPath + "/libsepolwrap.so")
elif "darwin" in sys.platform:
elif "darwin" in platform.system().lower():
lib = CDLL(LibPath + "/libsepolwrap.dylib")
else:
sys.exit("only Linux and Mac currrently supported")
sys.exit("policy.py: " + platform.system() + " not supported." +
" Only Linux and Darwin platforms are currently supported.")
# int get_allow_rule(char *out, size_t len, void *policydbp, void *avtab_iterp);
lib.get_allow_rule.restype = c_int