From: "Serge E. Hallyn" <serge@hallyn.com> To: Aristeu Rozanski <aris@redhat.com> Cc: linux-kernel@vger.kernel.org, cgroups@vger.kernel.org, Tejun Heo <tj@kernel.org>, Li Zefan <lizefan@huawei.com>, James Morris <jmorris@namei.org>, Pavel Emelyanov <xemul@openvz.org>, Serge Hallyn <serge.hallyn@canonical.com>, Andrew Morton <akpm@linux-foundation.org> Subject: Re: [PATCH v2 4/6] device_cgroup: stop using simple_strtoul() Date: Wed, 5 Sep 2012 03:22:10 +0000 [thread overview] Message-ID: <20120905032209.GD13310@mail.hallyn.com> (raw) In-Reply-To: <20120904143421.144153057@napanee.usersys.redhat.com> Quoting Aristeu Rozanski (aris@redhat.com): > This patch converts the code to use kstrtou32() instead of simple_strtoul() > which is deprecated. The real size of the variables are u32, so use kstrtou32 > instead of kstrtoul > > Signed-off-by: Aristeu Rozanski <aris@redhat.com> phew, i'm afraid i'm not up on the latest 'best parsing techniques' but the end result looks correct (just not sure it's optimal). Acked-by: Serge Hallyn <serge.hallyn@canonical.com> > > --- > security/device_cgroup.c | 28 ++++++++++++++++++++++------ > 1 file changed, 22 insertions(+), 6 deletions(-) > > Index: github/security/device_cgroup.c > =================================================================== > --- github.orig/security/device_cgroup.c 2012-08-21 10:51:05.751689805 -0400 > +++ github/security/device_cgroup.c 2012-08-21 10:51:15.015951623 -0400 > @@ -361,8 +361,8 @@ > int filetype, const char *buffer) > { > const char *b; > - char *endp; > - int count; > + char temp[12]; /* 11 + 1 characters needed for a u32 */ > + int count, rc; > struct dev_whitelist_item wh; > > if (!capable(CAP_SYS_ADMIN)) > @@ -405,8 +405,16 @@ > wh.major = ~0; > b++; > } else if (isdigit(*b)) { > - wh.major = simple_strtoul(b, &endp, 10); > - b = endp; > + memset(temp, 0, sizeof(temp)); > + for (count = 0; count < sizeof(temp) - 1; count++) { > + temp[count] = *b; > + b++; > + if (!isdigit(*b)) > + break; > + } > + rc = kstrtou32(temp, 10, &wh.major); > + if (rc) > + return -EINVAL; > } else { > return -EINVAL; > } > @@ -419,8 +427,16 @@ > wh.minor = ~0; > b++; > } else if (isdigit(*b)) { > - wh.minor = simple_strtoul(b, &endp, 10); > - b = endp; > + memset(temp, 0, sizeof(temp)); > + for (count = 0; count < sizeof(temp) - 1; count++) { > + temp[count] = *b; > + b++; > + if (!isdigit(*b)) > + break; > + } > + rc = kstrtou32(temp, 10, &wh.minor); > + if (rc) > + return -EINVAL; > } else { > return -EINVAL; > } > > -- > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > Please read the FAQ at http://www.tux.org/lkml/
next prev parent reply other threads:[~2012-09-05 3:21 UTC|newest] Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top 2012-09-04 14:34 [PATCH v2 0/6] device_cgroup: replace internally whitelist with exception list Aristeu Rozanski 2012-09-04 14:34 ` [PATCH v2 1/6] device_cgroup: add "behavior" in dev_cgroup structure Aristeu Rozanski 2012-09-05 3:00 ` Serge E. Hallyn 2012-09-04 14:34 ` [PATCH v2 2/6] device_cgroup: introduce dev_whitelist_clean() Aristeu Rozanski 2012-09-05 3:03 ` Serge E. Hallyn 2012-09-04 14:34 ` [PATCH v2 3/6] device_cgroup: convert device_cgroup internally to policy + exceptions Aristeu Rozanski 2012-09-05 3:09 ` Serge E. Hallyn 2012-09-04 14:34 ` [PATCH v2 4/6] device_cgroup: stop using simple_strtoul() Aristeu Rozanski 2012-09-05 3:22 ` Serge E. Hallyn [this message] 2012-09-04 14:34 ` [PATCH v2 5/6] device_cgroup: rename whitelist to exception list Aristeu Rozanski 2012-09-05 3:24 ` Serge E. Hallyn 2012-09-04 14:34 ` [PATCH v2 6/6] device_cgroup: introduce a new, more consistent interface for device_cgroup Aristeu Rozanski 2012-09-05 3:27 ` Serge E. Hallyn 2012-09-05 3:30 ` [PATCH v2 0/6] device_cgroup: replace internally whitelist with exception list Serge E. Hallyn
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20120905032209.GD13310@mail.hallyn.com \ --to=serge@hallyn.com \ --cc=akpm@linux-foundation.org \ --cc=aris@redhat.com \ --cc=cgroups@vger.kernel.org \ --cc=jmorris@namei.org \ --cc=linux-kernel@vger.kernel.org \ --cc=lizefan@huawei.com \ --cc=serge.hallyn@canonical.com \ --cc=tj@kernel.org \ --cc=xemul@openvz.org \ --subject='Re: [PATCH v2 4/6] device_cgroup: stop using simple_strtoul()' \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).