@@ -2204,7 +2204,7 @@ static int __cil_cond_item_to_sepol_expr(policydb_t *pdb, struct cil_list_item *
*head = cil_malloc(sizeof(cond_expr_t));
(*head)->next = NULL;
(*head)->expr_type = COND_BOOL;
- (*head)->boolean = sepol_bool->s.value;
+ (*head)->bool = sepol_bool->s.value;
*tail = *head;
} else if (item->flavor == CIL_LIST) {
struct cil_list *l = item->data;
@@ -2240,7 +2240,7 @@ static int __cil_cond_expr_to_sepol_expr_helper(policydb_t *pdb, struct cil_list
enum cil_flavor cil_op = (enum cil_flavor)(uintptr_t)item->data;
op = cil_malloc(sizeof(*op));
- op->boolean = 0;
+ op->bool = 0;
op->next = NULL;
switch (cil_op) {
@@ -2307,7 +2307,7 @@ static int __cil_cond_expr_to_sepol_expr_helper(policydb_t *pdb, struct cil_list
goto exit;
}
op = cil_malloc(sizeof(*op));
- op->boolean = 0;
+ op->bool = 0;
op->next = NULL;
op->expr_type = COND_OR;
t1->next = h2;
@@ -54,9 +54,7 @@ typedef struct cond_expr {
#define COND_NEQ 7 /* bool != bool */
#define COND_LAST COND_NEQ
uint32_t expr_type;
- /* The member `boolean` was renamed from `bool` in version 3.6 */
-#define COND_EXPR_T_RENAME_BOOL_BOOLEAN
- uint32_t boolean;
+ uint32_t bool;
struct cond_expr *next;
} cond_expr_t;
@@ -125,7 +125,7 @@ int cond_expr_equal(cond_node_t * a, cond_node_t * b)
if (cur_a->expr_type != cur_b->expr_type)
return 0;
if (cur_a->expr_type == COND_BOOL) {
- if (cur_a->boolean != cur_b->boolean)
+ if (cur_a->bool != cur_b->bool)
return 0;
}
cur_a = cur_a->next;
@@ -223,7 +223,7 @@ int cond_evaluate_expr(policydb_t * p, cond_expr_t * expr)
if (sp == (COND_EXPR_MAXDEPTH - 1))
return -1;
sp++;
- s[sp] = p->bool_val_to_struct[cur->boolean - 1]->state;
+ s[sp] = p->bool_val_to_struct[cur->bool - 1]->state;
break;
case COND_NOT:
if (sp < 0)
@@ -279,7 +279,7 @@ cond_expr_t *cond_copy_expr(cond_expr_t * expr)
memset(new_expr, 0, sizeof(cond_expr_t));
new_expr->expr_type = cur->expr_type;
- new_expr->boolean = cur->boolean;
+ new_expr->bool = cur->bool;
if (!head)
head = new_expr;
@@ -388,10 +388,10 @@ int cond_normalize_expr(policydb_t * p, cond_node_t * cn)
switch (e->expr_type) {
case COND_BOOL:
/* see if we've already seen this bool */
- if (!bool_present(e->boolean, cn->bool_ids, cn->nbools)) {
+ if (!bool_present(e->bool, cn->bool_ids, cn->nbools)) {
/* count em all but only record up to COND_MAX_BOOLS */
if (cn->nbools < COND_MAX_BOOLS)
- cn->bool_ids[cn->nbools++] = e->boolean;
+ cn->bool_ids[cn->nbools++] = e->bool;
else
cn->nbools++;
}
@@ -737,7 +737,7 @@ static int expr_isvalid(policydb_t * p, cond_expr_t * expr)
return 0;
}
- if (expr->boolean > p->p_bools.nprim) {
+ if (expr->bool > p->p_bools.nprim) {
WARN(NULL, "security: conditional expressions uses unknown bool.");
return 0;
}
@@ -775,7 +775,7 @@ static int cond_read_node(policydb_t * p, cond_node_t * node, void *fp)
memset(expr, 0, sizeof(cond_expr_t));
expr->expr_type = le32_to_cpu(buf[0]);
- expr->boolean = le32_to_cpu(buf[1]);
+ expr->bool = le32_to_cpu(buf[1]);
if (!expr_isvalid(p, expr)) {
free(expr);
@@ -2025,8 +2025,8 @@ static int cond_node_map_bools(expand_state_t * state, cond_node_t * cn)
cur = cn->expr;
while (cur) {
- if (cur->boolean)
- cur->boolean = state->boolmap[cur->boolean - 1];
+ if (cur->bool)
+ cur->bool = state->boolmap[cur->bool - 1];
cur = cur->next;
}
@@ -2899,7 +2899,7 @@ static void discard_tunables(sepol_handle_t *sh, policydb_t *pol)
cur_expr = cur_expr->next) {
if (cur_expr->expr_type != COND_BOOL)
continue;
- booldatum = pol->bool_val_to_struct[cur_expr->boolean - 1];
+ booldatum = pol->bool_val_to_struct[cur_expr->bool - 1];
if (booldatum->flags & COND_BOOL_FLAGS_TUNABLE)
tmp[tunables++] = booldatum;
else
@@ -44,7 +44,7 @@ static char *cond_expr_to_str(struct policydb *pdb, struct cond_expr *expr)
for (curr = expr; curr != NULL; curr = curr->next) {
if (curr->expr_type == COND_BOOL) {
- char *val1 = pdb->p_bool_val_to_name[curr->boolean - 1];
+ char *val1 = pdb->p_bool_val_to_name[curr->bool - 1];
new_val = create_str("%s", 1, val1);
} else {
const char *op;
@@ -43,7 +43,7 @@ static char *cond_expr_to_str(struct policydb *pdb, struct cond_expr *expr)
for (curr = expr; curr != NULL; curr = curr->next) {
if (curr->expr_type == COND_BOOL) {
- char *val1 = pdb->p_bool_val_to_name[curr->boolean - 1];
+ char *val1 = pdb->p_bool_val_to_name[curr->bool - 1];
new_val = create_str("%s", 1, val1);
} else {
const char *op;
@@ -1524,9 +1524,9 @@ static int copy_cond_list(cond_node_t * list, cond_node_t ** dst,
/* expression nodes don't have a bool value of 0 - don't map them */
if (cur_expr->expr_type != COND_BOOL)
continue;
- assert(module->map[SYM_BOOLS][cur_expr->boolean - 1] != 0);
- cur_expr->boolean =
- module->map[SYM_BOOLS][cur_expr->boolean - 1];
+ assert(module->map[SYM_BOOLS][cur_expr->bool - 1] != 0);
+ cur_expr->bool =
+ module->map[SYM_BOOLS][cur_expr->bool - 1];
}
new_node->nbools = cur->nbools;
/* FIXME should COND_MAX_BOOLS be used here? */
@@ -1283,7 +1283,7 @@ static int cond_expr_to_cil(int indent, struct policydb *pdb, struct cond_expr *
for (curr = cond_expr; curr != NULL; curr = curr->next) {
if (curr->expr_type == COND_BOOL) {
- val1 = pdb->p_bool_val_to_name[curr->boolean - 1];
+ val1 = pdb->p_bool_val_to_name[curr->bool - 1];
// length of boolean + 2 parens + null terminator
len = strlen(val1) + 2 + 1;
new_val = malloc(len);
@@ -1002,7 +1002,7 @@ static int validate_cond_expr(sepol_handle_t *handle, const struct cond_expr *ex
for (; expr; expr = expr->next) {
switch(expr->expr_type) {
case COND_BOOL:
- if (validate_value(expr->boolean, boolean))
+ if (validate_value(expr->bool, boolean))
goto bad;
if (depth >= (COND_EXPR_MAXDEPTH - 1))
goto bad;
@@ -834,7 +834,7 @@ static int cond_write_node(policydb_t * p,
for (cur_expr = node->expr; cur_expr != NULL; cur_expr = cur_expr->next) {
items = 0;
buf[items++] = cpu_to_le32(cur_expr->expr_type);
- buf[items++] = cpu_to_le32(cur_expr->boolean);
+ buf[items++] = cpu_to_le32(cur_expr->bool);
items2 = put_entry(buf, sizeof(uint32_t), items, fp);
if (items2 != items)
return POLICYDB_ERROR;
@@ -41,7 +41,7 @@ void display_expr(policydb_t * p, cond_expr_t * exp, FILE * fp)
for (cur = exp; cur != NULL; cur = cur->next) {
switch (cur->expr_type) {
case COND_BOOL:
- fprintf(fp, "%s ", p->p_bool_val_to_name[cur->boolean - 1]);
+ fprintf(fp, "%s ", p->p_bool_val_to_name[cur->bool - 1]);
break;
case COND_NOT:
fprintf(fp, "! ");
@@ -70,7 +70,7 @@ static void test_cond_expr_mapping(policydb_t * p, avrule_decl_t * d, test_cond_
CU_ASSERT(expr->expr_type == bools[i].expr_type);
if (bools[i].bool) {
- CU_ASSERT(strcmp(p->sym_val_to_name[SYM_BOOLS][expr->boolean - 1], bools[i].bool) == 0);
+ CU_ASSERT(strcmp(p->sym_val_to_name[SYM_BOOLS][expr->bool - 1], bools[i].bool) == 0);
}
expr = expr->next;
}
This reverts commit 61f213850047c23b0af7c7cafa9245da48120279. This change broke build of SETools and currently it's not clear how to change SETools cython code so that it can be built with 3.6 and older SELinux releases. https://github.com/SELinuxProject/setools/issues/110 Signed-off-by: Petr Lautrbach <lautrbach@redhat.com> --- libsepol/cil/src/cil_binary.c | 6 +++--- libsepol/include/sepol/policydb/conditional.h | 4 +--- libsepol/src/conditional.c | 14 +++++++------- libsepol/src/expand.c | 6 +++--- libsepol/src/kernel_to_cil.c | 2 +- libsepol/src/kernel_to_conf.c | 2 +- libsepol/src/link.c | 6 +++--- libsepol/src/module_to_cil.c | 2 +- libsepol/src/policydb_validate.c | 2 +- libsepol/src/write.c | 2 +- libsepol/tests/debug.c | 2 +- libsepol/tests/test-linker-cond-map.c | 2 +- 12 files changed, 24 insertions(+), 26 deletions(-)