From 9820351703ea1c8540b819895398eec29434e507 Mon Sep 17 00:00:00 2001 From: Chris PeBenito Date: Wed, 14 Nov 2007 15:53:18 +0000 Subject: [PATCH] trunk: add in polmatch for default spd. --- policy/modules/system/ipsec.if | 55 +++++++++++++++++++---------- policy/modules/system/ipsec.te | 2 +- policy/modules/system/unconfined.if | 1 + policy/modules/system/unconfined.te | 2 +- 4 files changed, 40 insertions(+), 20 deletions(-) diff --git a/policy/modules/system/ipsec.if b/policy/modules/system/ipsec.if index 433abf40..73ddc51e 100644 --- a/policy/modules/system/ipsec.if +++ b/policy/modules/system/ipsec.if @@ -93,6 +93,43 @@ interface(`ipsec_read_config',` allow $1 ipsec_conf_file_t:file read_file_perms; ') +######################################## +## +## Match the default SPD entry. +## +## +## +## Domain allowed access. +## +## +# +interface(`ipsec_match_default_spd',` + gen_require(` + type ipsec_spd_t; + ') + + allow $1 ipsec_spd_t:association polmatch; +') + +######################################## +## +## Set the context of a SPD entry to +## the default context. +## +## +## +## Domain allowed access. +## +## +# +interface(`ipsec_setcontext_default_spd',` + gen_require(` + type ipsec_spd_t; + ') + + allow $1 ipsec_spd_t:association setcontext; +') + ######################################## ## ## Create, read, write, and delete the IPSEC pid files. @@ -112,24 +149,6 @@ interface(`ipsec_manage_pid',` manage_files_pattern($1,ipsec_var_run_t,ipsec_var_run_t) ') -######################################## -## -## Allow to set an default security context of IPsec Policy. -## -## -## -## Domain allowed access. -## -## -# -interface(`ipsec_setcontext_default_spd',` - gen_require(` - type ipsec_spd_t; - ') - - allow $1 ipsec_spd_t:association setcontext; -') - ######################################## ## ## Execute racoon in the racoon domain. diff --git a/policy/modules/system/ipsec.te b/policy/modules/system/ipsec.te index 80f58e6f..5743eb58 100644 --- a/policy/modules/system/ipsec.te +++ b/policy/modules/system/ipsec.te @@ -1,5 +1,5 @@ -policy_module(ipsec,1.4.3) +policy_module(ipsec,1.4.4) ######################################## # diff --git a/policy/modules/system/unconfined.if b/policy/modules/system/unconfined.if index 695ea511..1bb9f590 100644 --- a/policy/modules/system/unconfined.if +++ b/policy/modules/system/unconfined.if @@ -74,6 +74,7 @@ interface(`unconfined_domain_noaudit',` optional_policy(` ipsec_setcontext_default_spd($1) + ipsec_match_default_spd($1) ') optional_policy(` diff --git a/policy/modules/system/unconfined.te b/policy/modules/system/unconfined.te index 95a9fc8e..23fdddf0 100644 --- a/policy/modules/system/unconfined.te +++ b/policy/modules/system/unconfined.te @@ -1,5 +1,5 @@ -policy_module(unconfined,2.0.1) +policy_module(unconfined,2.0.2) ######################################## #