summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--recipes-security/refpolicy/refpolicy-minimum_git.bb32
-rw-r--r--recipes-security/refpolicy/refpolicy_common.inc33
2 files changed, 34 insertions, 31 deletions
diff --git a/recipes-security/refpolicy/refpolicy-minimum_git.bb b/recipes-security/refpolicy/refpolicy-minimum_git.bb
index 8e44bfc..5a0ed6f 100644
--- a/recipes-security/refpolicy/refpolicy-minimum_git.bb
+++ b/recipes-security/refpolicy/refpolicy-minimum_git.bb
@@ -78,20 +78,22 @@ prepare_policy_store() {
78 HLL_TYPE=$(echo ${POL_SRC}/base.* | awk -F . '{if (NF>1) {print $NF}}') 78 HLL_TYPE=$(echo ${POL_SRC}/base.* | awk -F . '{if (NF>1) {print $NF}}')
79 HLL_BIN=${STAGING_DIR_NATIVE}${prefix}/libexec/selinux/hll/${HLL_TYPE} 79 HLL_BIN=${STAGING_DIR_NATIVE}${prefix}/libexec/selinux/hll/${HLL_TYPE}
80 80
81 for i in base ${POLICY_MODULES_MIN}; do 81 if [ "${POLICY_MONOLITHIC}" != "y" ]; then
82 MOD_FILE=${POL_SRC}/${i}.${HLL_TYPE} 82 for i in base ${POLICY_MODULES_MIN}; do
83 MOD_DIR=${POL_ACTIVE_MODS}/${i} 83 MOD_FILE=${POL_SRC}/${i}.${HLL_TYPE}
84 mkdir -p ${MOD_DIR} 84 MOD_DIR=${POL_ACTIVE_MODS}/${i}
85 echo -n "${HLL_TYPE}" > ${MOD_DIR}/lang_ext 85 mkdir -p ${MOD_DIR}
86 echo -n "${HLL_TYPE}" > ${MOD_DIR}/lang_ext
86 87
87 if ! bzip2 -t ${MOD_FILE} >/dev/null 2>&1; then 88 if ! bzip2 -t ${MOD_FILE} >/dev/null 2>&1; then
88 ${HLL_BIN} ${MOD_FILE} | bzip2 --stdout > ${MOD_DIR}/cil 89 ${HLL_BIN} ${MOD_FILE} | bzip2 --stdout > ${MOD_DIR}/cil
89 bzip2 -f ${MOD_FILE} && mv -f ${MOD_FILE}.bz2 ${MOD_FILE} 90 bzip2 -f ${MOD_FILE} && mv -f ${MOD_FILE}.bz2 ${MOD_FILE}
90 else 91 else
91 bunzip2 --stdout ${MOD_FILE} | \ 92 bunzip2 --stdout ${MOD_FILE} | \
92 ${HLL_BIN} | \ 93 ${HLL_BIN} | \
93 bzip2 --stdout > ${MOD_DIR}/cil 94 bzip2 --stdout > ${MOD_DIR}/cil
94 fi 95 fi
95 cp ${MOD_FILE} ${MOD_DIR}/hll 96 cp ${MOD_FILE} ${MOD_DIR}/hll
96 done 97 done
98 fi
97} 99}
diff --git a/recipes-security/refpolicy/refpolicy_common.inc b/recipes-security/refpolicy/refpolicy_common.inc
index fd41f8a..27aac44 100644
--- a/recipes-security/refpolicy/refpolicy_common.inc
+++ b/recipes-security/refpolicy/refpolicy_common.inc
@@ -173,22 +173,23 @@ prepare_policy_store() {
173 # Get hll type from suffix on base policy module 173 # Get hll type from suffix on base policy module
174 HLL_TYPE=$(echo ${POL_SRC}/base.* | awk -F . '{if (NF>1) {print $NF}}') 174 HLL_TYPE=$(echo ${POL_SRC}/base.* | awk -F . '{if (NF>1) {print $NF}}')
175 HLL_BIN=${STAGING_DIR_NATIVE}${prefix}/libexec/selinux/hll/${HLL_TYPE} 175 HLL_BIN=${STAGING_DIR_NATIVE}${prefix}/libexec/selinux/hll/${HLL_TYPE}
176 176 if [ "${POLICY_MONOLITHIC}" != "y" ]; then
177 for i in ${POL_SRC}/*.${HLL_TYPE}; do 177 for i in ${POL_SRC}/*.${HLL_TYPE}; do
178 MOD_NAME=$(basename $i | sed "s/\.${HLL_TYPE}$//") 178 MOD_NAME=$(basename $i | sed "s/\.${HLL_TYPE}$//")
179 MOD_DIR=${POL_ACTIVE_MODS}/${MOD_NAME} 179 MOD_DIR=${POL_ACTIVE_MODS}/${MOD_NAME}
180 mkdir -p ${MOD_DIR} 180 mkdir -p ${MOD_DIR}
181 echo -n "${HLL_TYPE}" > ${MOD_DIR}/lang_ext 181 echo -n "${HLL_TYPE}" > ${MOD_DIR}/lang_ext
182 if ! bzip2 -t $i >/dev/null 2>&1; then 182 if ! bzip2 -t $i >/dev/null 2>&1; then
183 ${HLL_BIN} $i | bzip2 --stdout > ${MOD_DIR}/cil 183 ${HLL_BIN} $i | bzip2 --stdout > ${MOD_DIR}/cil
184 bzip2 -f $i && mv -f $i.bz2 $i 184 bzip2 -f $i && mv -f $i.bz2 $i
185 else 185 else
186 bunzip2 --stdout $i | \ 186 bunzip2 --stdout $i | \
187 ${HLL_BIN} | \ 187 ${HLL_BIN} | \
188 bzip2 --stdout > ${MOD_DIR}/cil 188 bzip2 --stdout > ${MOD_DIR}/cil
189 fi 189 fi
190 cp $i ${MOD_DIR}/hll 190 cp $i ${MOD_DIR}/hll
191 done 191 done
192 fi
192} 193}
193 194
194rebuild_policy() { 195rebuild_policy() {