aboutsummaryrefslogtreecommitdiffstats
path: root/security/selinux/xfrm.c
diff options
context:
space:
mode:
authorStephen Rothwell <sfr@canb.auug.org.au>2007-10-31 01:47:19 -0400
committerJames Morris <jmorris@sdv.(none)>2007-11-07 16:55:04 -0500
commit57002bfb31283e84f694763ed4db0fb761b7d6a9 (patch)
tree7788e55754cbe3a86fdd7e73a1e5e15e2cb8ff1a /security/selinux/xfrm.c
parentdbeeb816e805091e7cfc03baf36dc40b4adb2bbd (diff)
SELinux: suppress a warning for 64k pages.
On PowerPC allmodconfig build we get this: security/selinux/xfrm.c:214: warning: comparison is always false due to limited range of data type Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: James Morris <jmorris@namei.org>
Diffstat (limited to 'security/selinux/xfrm.c')
-rw-r--r--security/selinux/xfrm.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/security/selinux/xfrm.c b/security/selinux/xfrm.c
index 36a191e7004e..e07603969033 100644
--- a/security/selinux/xfrm.c
+++ b/security/selinux/xfrm.c
@@ -211,26 +211,27 @@ static int selinux_xfrm_sec_ctx_alloc(struct xfrm_sec_ctx **ctxp,
211 if (uctx->ctx_doi != XFRM_SC_ALG_SELINUX) 211 if (uctx->ctx_doi != XFRM_SC_ALG_SELINUX)
212 return -EINVAL; 212 return -EINVAL;
213 213
214 if (uctx->ctx_len >= PAGE_SIZE) 214 str_len = uctx->ctx_len;
215 if (str_len >= PAGE_SIZE)
215 return -ENOMEM; 216 return -ENOMEM;
216 217
217 *ctxp = ctx = kmalloc(sizeof(*ctx) + 218 *ctxp = ctx = kmalloc(sizeof(*ctx) +
218 uctx->ctx_len + 1, 219 str_len + 1,
219 GFP_KERNEL); 220 GFP_KERNEL);
220 221
221 if (!ctx) 222 if (!ctx)
222 return -ENOMEM; 223 return -ENOMEM;
223 224
224 ctx->ctx_doi = uctx->ctx_doi; 225 ctx->ctx_doi = uctx->ctx_doi;
225 ctx->ctx_len = uctx->ctx_len; 226 ctx->ctx_len = str_len;
226 ctx->ctx_alg = uctx->ctx_alg; 227 ctx->ctx_alg = uctx->ctx_alg;
227 228
228 memcpy(ctx->ctx_str, 229 memcpy(ctx->ctx_str,
229 uctx+1, 230 uctx+1,
230 ctx->ctx_len); 231 str_len);
231 ctx->ctx_str[ctx->ctx_len] = 0; 232 ctx->ctx_str[str_len] = 0;
232 rc = security_context_to_sid(ctx->ctx_str, 233 rc = security_context_to_sid(ctx->ctx_str,
233 ctx->ctx_len, 234 str_len,
234 &ctx->ctx_sid); 235 &ctx->ctx_sid);
235 236
236 if (rc) 237 if (rc)