From: <ssm...@us...> - 2007-03-12 16:45:28
|
Revision: 2289 http://svn.sourceforge.net/selinux/?rev=2289&view=rev Author: ssmalley Date: 2007-03-12 09:45:03 -0700 (Mon, 12 Mar 2007) Log Message: ----------- Author: Steve G Email: lin...@ya... Subject: Dropping support for disabling caching of context translations (CACHETRANS=0) Date: Thu, 8 Mar 2007 06:53:23 -0800 (PST) >So, is anyone using CACHETRANS=0? Do we need to retain it going forward >in the trunk? Attaching a patch dropping this config option. -Steve Modified Paths: -------------- trunk/libselinux/src/selinux_config.c trunk/libselinux/src/selinux_internal.h trunk/libselinux/src/setrans_client.c Modified: trunk/libselinux/src/selinux_config.c =================================================================== --- trunk/libselinux/src/selinux_config.c 2007-03-12 15:34:29 UTC (rev 2288) +++ trunk/libselinux/src/selinux_config.c 2007-03-12 16:45:03 UTC (rev 2289) @@ -17,7 +17,6 @@ #define SELINUXTAG "SELINUX=" #define SETLOCALDEFS "SETLOCALDEFS=" #define REQUIRESEUSERS "REQUIRESEUSERS=" -#define CACHETRANSTAG "CACHETRANS=" /* Indices for file paths arrays. */ #define BINPOLICY 0 @@ -174,10 +173,6 @@ sizeof(REQUIRESEUSERS) - 1)) { value = buf_p + sizeof(REQUIRESEUSERS) - 1; intptr = &require_seusers; - } else if (!strncmp(buf_p, CACHETRANSTAG, - sizeof(CACHETRANSTAG) - 1)) { - value = buf_p + sizeof(CACHETRANSTAG) - 1; - intptr = &cache_trans; } else { continue; } Modified: trunk/libselinux/src/selinux_internal.h =================================================================== --- trunk/libselinux/src/selinux_internal.h 2007-03-12 15:34:29 UTC (rev 2288) +++ trunk/libselinux/src/selinux_internal.h 2007-03-12 16:45:03 UTC (rev 2289) @@ -80,4 +80,3 @@ extern int load_setlocaldefs hidden; extern int require_seusers hidden; extern int selinux_page_size hidden; -extern int cache_trans hidden; Modified: trunk/libselinux/src/setrans_client.c =================================================================== --- trunk/libselinux/src/setrans_client.c 2007-03-12 15:34:29 UTC (rev 2288) +++ trunk/libselinux/src/setrans_client.c 2007-03-12 16:45:03 UTC (rev 2289) @@ -24,8 +24,6 @@ static __thread security_context_t prev_r2t_trans = NULL; static __thread security_context_t prev_r2t_raw = NULL; -int cache_trans hidden = 1; - /* * setransd_open * @@ -203,12 +201,10 @@ hidden void fini_context_translations(void) { - if (cache_trans) { - free(prev_r2t_trans); - free(prev_r2t_raw); - free(prev_t2r_trans); - free(prev_t2r_raw); - } + free(prev_r2t_trans); + free(prev_r2t_raw); + free(prev_t2r_trans); + free(prev_t2r_raw); } hidden int init_context_translations(void) @@ -230,29 +226,26 @@ goto out; } - if (cache_trans) { - if (prev_t2r_trans && strcmp(prev_t2r_trans, trans) == 0) { - *rawp = strdup(prev_t2r_raw); - } else { - free(prev_t2r_trans); - prev_t2r_trans = NULL; - free(prev_t2r_raw); - prev_t2r_raw = NULL; - if (trans_to_raw_context(trans, rawp)) - *rawp = strdup(trans); - if (*rawp) { - prev_t2r_trans = strdup(trans); - if (!prev_t2r_trans) - goto out; - prev_t2r_raw = strdup(*rawp); - if (!prev_t2r_raw) { - free(prev_t2r_trans); - prev_t2r_trans = NULL; - } + if (prev_t2r_trans && strcmp(prev_t2r_trans, trans) == 0) { + *rawp = strdup(prev_t2r_raw); + } else { + free(prev_t2r_trans); + prev_t2r_trans = NULL; + free(prev_t2r_raw); + prev_t2r_raw = NULL; + if (trans_to_raw_context(trans, rawp)) + *rawp = strdup(trans); + if (*rawp) { + prev_t2r_trans = strdup(trans); + if (!prev_t2r_trans) + goto out; + prev_t2r_raw = strdup(*rawp); + if (!prev_t2r_raw) { + free(prev_t2r_trans); + prev_t2r_trans = NULL; } } - } else if (trans_to_raw_context(trans, rawp)) - *rawp = strdup(trans); + } out: return *rawp ? 0 : -1; } @@ -272,29 +265,26 @@ goto out; } - if (cache_trans) { - if (prev_r2t_raw && strcmp(prev_r2t_raw, raw) == 0) { - *transp = strdup(prev_r2t_trans); - } else { - free(prev_r2t_raw); - prev_r2t_raw = NULL; - free(prev_r2t_trans); - prev_r2t_trans = NULL; - if (raw_to_trans_context(raw, transp)) - *transp = strdup(raw); - if (*transp) { - prev_r2t_raw = strdup(raw); - if (!prev_r2t_raw) - goto out; - prev_r2t_trans = strdup(*transp); - if (!prev_r2t_trans) { - free(prev_r2t_raw); - prev_r2t_raw = NULL; - } + if (prev_r2t_raw && strcmp(prev_r2t_raw, raw) == 0) { + *transp = strdup(prev_r2t_trans); + } else { + free(prev_r2t_raw); + prev_r2t_raw = NULL; + free(prev_r2t_trans); + prev_r2t_trans = NULL; + if (raw_to_trans_context(raw, transp)) + *transp = strdup(raw); + if (*transp) { + prev_r2t_raw = strdup(raw); + if (!prev_r2t_raw) + goto out; + prev_r2t_trans = strdup(*transp); + if (!prev_r2t_trans) { + free(prev_r2t_raw); + prev_r2t_raw = NULL; } } - } else if (raw_to_trans_context(raw, transp)) - *transp = strdup(raw); + } out: return *transp ? 0 : -1; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |