lkml.org 
[lkml]   [2008]   [Jul]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectRe: [PATCH 3/3] devcgroup: code cleanup
On Tue, 08 Jul 2008 09:51:13 +0800 Li Zefan <lizf@cn.fujitsu.com> wrote:

> @@ -405,11 +404,7 @@ static ssize_t devcgroup_access_write(struct cgroup *cgroup, struct cftype *cft,
> wh.major = ~0;
> b++;
> } else if (isdigit(*b)) {
> - wh.major = 0;
> - while (isdigit(*b)) {
> - wh.major = wh.major*10+(*b-'0');
> - b++;
> - }
> + wh.major = simple_strtoul(b, &b, 0);
> } else {
> retval = -EINVAL;
> goto out2;
> @@ -425,11 +420,7 @@ static ssize_t devcgroup_access_write(struct cgroup *cgroup, struct cftype *cft,
> wh.minor = ~0;
> b++;
> } else if (isdigit(*b)) {
> - wh.minor = 0;
> - while (isdigit(*b)) {
> - wh.minor = wh.minor*10+(*b-'0');
> - b++;
> - }
> + wh.minor = simple_strtoul(b, &b, 0);

This is an interface change. Previously we only took decimal input.
Now, we accept decimal or octal or hex, based upon automagic detection.

So scripts which were feeding in "010" will now be setting things to eight,
not to ten.

Methinks we should do this:

--- a/security/device_cgroup.c~devcgroup-code-cleanup-fix
+++ a/security/device_cgroup.c
@@ -394,7 +394,7 @@ static int devcgroup_update_access(struc
wh.major = ~0;
b++;
} else if (isdigit(*b)) {
- wh.major = simple_strtoul(b, &b, 0);
+ wh.major = simple_strtoul(b, &b, 10);
} else {
return -EINVAL;
}
@@ -407,7 +407,7 @@ static int devcgroup_update_access(struc
wh.minor = ~0;
b++;
} else if (isdigit(*b)) {
- wh.minor = simple_strtoul(b, &b, 0);
+ wh.minor = simple_strtoul(b, &b, 10);
} else {
return -EINVAL;
}
_


\
 
 \ /
  Last update: 2008-07-13 08:07    [W:0.059 / U:0.288 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site