Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 539462
Collapse All | Expand All

(-)a/libqpol/policy_define.c (-2 / +2 lines)
Lines 1663-1669 int define_compute_type_helper(int which, avrule_t ** rule) Link Here
1663
				goto bad;
1663
				goto bad;
1664
			}
1664
			}
1665
			class_perm_node_init(perm);
1665
			class_perm_node_init(perm);
1666
			perm->class = i + 1;
1666
			perm->tclass = i + 1;
1667
			perm->data = datum->s.value;
1667
			perm->data = datum->s.value;
1668
			perm->next = avrule->perms;
1668
			perm->next = avrule->perms;
1669
			avrule->perms = perm;
1669
			avrule->perms = perm;
Lines 1903-1909 int define_te_avtab_helper(int which, avrule_t ** rule) Link Here
1903
			goto out;
1903
			goto out;
1904
		}
1904
		}
1905
		class_perm_node_init(cur_perms);
1905
		class_perm_node_init(cur_perms);
1906
		cur_perms->class = i + 1;
1906
		cur_perms->tclass = i + 1;
1907
		if (!perms)
1907
		if (!perms)
1908
			perms = cur_perms;
1908
			perms = cur_perms;
1909
		if (tail)
1909
		if (tail)
(-)a/libqpol/policy_extend.c (-2 / +2 lines)
Lines 843-849 static int qpol_syn_rule_table_insert_sepol_avrule(qpol_policy_t * policy, qpol_ Link Here
843
			for (class_node = rule->perms; class_node; class_node = class_node->next) {
843
			for (class_node = rule->perms; class_node; class_node = class_node->next) {
844
				key.rule_type = rule->specified;
844
				key.rule_type = rule->specified;
845
				key.source_val = key.target_val = i + 1;
845
				key.source_val = key.target_val = i + 1;
846
				key.class_val = class_node->class;
846
				key.class_val = class_node->tclass;
847
				key.cond = cond;
847
				key.cond = cond;
848
				if (qpol_syn_rule_table_insert_entry(policy, table, &key, new_rule))
848
				if (qpol_syn_rule_table_insert_entry(policy, table, &key, new_rule))
849
					goto err;
849
					goto err;
Lines 856-862 static int qpol_syn_rule_table_insert_sepol_avrule(qpol_policy_t * policy, qpol_ Link Here
856
				key.rule_type = rule->specified;
856
				key.rule_type = rule->specified;
857
				key.source_val = i + 1;
857
				key.source_val = i + 1;
858
				key.target_val = j + 1;
858
				key.target_val = j + 1;
859
				key.class_val = class_node->class;
859
				key.class_val = class_node->tclass;
860
				key.cond = cond;
860
				key.cond = cond;
861
				if (qpol_syn_rule_table_insert_entry(policy, table, &key, new_rule))
861
				if (qpol_syn_rule_table_insert_entry(policy, table, &key, new_rule))
862
					goto err;
862
					goto err;
(-)a/libqpol/syn_rule_query.c (-3 / +3 lines)
Lines 67-73 static void *syn_rule_class_state_get_cur(const qpol_iterator_t * iter) Link Here
67
		return NULL;
67
		return NULL;
68
	}
68
	}
69
69
70
	return db->class_val_to_struct[srcs->cur->class - 1];
70
	return db->class_val_to_struct[srcs->cur->tclass - 1];
71
}
71
}
72
72
73
static int syn_rule_class_state_next(qpol_iterator_t * iter)
73
static int syn_rule_class_state_next(qpol_iterator_t * iter)
Lines 465-474 int qpol_syn_avrule_get_perm_iter(const qpol_policy_t * policy, const qpol_syn_a Link Here
465
	}
465
	}
466
466
467
	for (node = internal_rule->perms; node; node = node->next) {
467
	for (node = internal_rule->perms; node; node = node->next) {
468
		for (i = 0; i < db->class_val_to_struct[node->class - 1]->permissions.nprim; i++) {
468
		for (i = 0; i < db->class_val_to_struct[node->tclass - 1]->permissions.nprim; i++) {
469
			if (!(node->data & (1 << i)))
469
			if (!(node->data & (1 << i)))
470
				continue;
470
				continue;
471
			tmp = sepol_av_to_string(db, node->class, (sepol_access_vector_t) (1 << i));
471
			tmp = sepol_av_to_string(db, node->tclass, (sepol_access_vector_t) (1 << i));
472
			if (tmp) {
472
			if (tmp) {
473
				tmp++; /* remove prepended space */
473
				tmp++; /* remove prepended space */
474
				for (cur = 0; cur < perm_list_sz; cur++)
474
				for (cur = 0; cur < perm_list_sz; cur++)

Return to bug 539462