diff options
author | Julia Lawall <julia@diku.dk> | 2009-12-06 10:16:51 +0100 |
---|---|---|
committer | James Morris <jmorris@namei.org> | 2009-12-08 04:57:54 +0100 |
commit | 9f59f90bf57cff8be07faddc608c400b6e7c5d05 (patch) | |
tree | 621e4fa6dae193b3427913a1945eee473f47b153 | |
parent | Merge branch 'x86-debug-for-linus' of git://git.kernel.org/pub/scm/linux/kern... (diff) | |
download | linux-9f59f90bf57cff8be07faddc608c400b6e7c5d05.tar.xz linux-9f59f90bf57cff8be07faddc608c400b6e7c5d05.zip |
security/selinux/ss: correct size computation
The size argument to kcalloc should be the size of desired structure,
not the pointer to it.
The semantic patch that makes this change is as follows:
(http://coccinelle.lip6.fr/)
// <smpl>
@expression@
expression *x;
@@
x =
<+...
-sizeof(x)
+sizeof(*x)
...+>// </smpl>
Signed-off-by: Julia Lawall <julia@diku.dk>
Acked-by: Eric Paris <eparis@redhat.com>
Signed-off-by: James Morris <jmorris@namei.org>
-rw-r--r-- | security/selinux/ss/services.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/security/selinux/ss/services.c b/security/selinux/ss/services.c index d6bb20cbad62..07ddc81d7b57 100644 --- a/security/selinux/ss/services.c +++ b/security/selinux/ss/services.c @@ -2555,7 +2555,7 @@ int security_get_classes(char ***classes, int *nclasses) read_lock(&policy_rwlock); *nclasses = policydb.p_classes.nprim; - *classes = kcalloc(*nclasses, sizeof(*classes), GFP_ATOMIC); + *classes = kcalloc(*nclasses, sizeof(**classes), GFP_ATOMIC); if (!*classes) goto out; @@ -2602,7 +2602,7 @@ int security_get_permissions(char *class, char ***perms, int *nperms) } *nperms = match->permissions.nprim; - *perms = kcalloc(*nperms, sizeof(*perms), GFP_ATOMIC); + *perms = kcalloc(*nperms, sizeof(**perms), GFP_ATOMIC); if (!*perms) goto out; |