From: Sergey Vlasov <vsu@altlinux.ru>
To: Davi Arnaut <davi.arnaut@gmail.com>
Cc: torvalds@osdl.org, akpm@osdl.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 1/2] strndup_user, convert (module)
Date: Wed, 15 Feb 2006 23:57:25 +0300 [thread overview]
Message-ID: <20060215235725.15d54441.vsu@altlinux.ru> (raw)
In-Reply-To: <20060215182306.d26a4121.davi.arnaut@gmail.com>
[-- Attachment #1: Type: text/plain, Size: 1569 bytes --]
On Wed, 15 Feb 2006 18:23:06 -0300 Davi Arnaut wrote:
> Convert kernel/module.c string duplication to strdup_user()
>
> Signed-off-by: Davi Arnaut <davi.arnaut@gmail.com>
> --
>
> diff --git a/kernel/module.c b/kernel/module.c
> index 5aad477..d7d428d 100644
> --- a/kernel/module.c
> +++ b/kernel/module.c
> @@ -1538,7 +1538,6 @@ static struct module *load_module(void _
> unsigned int i, symindex = 0, strindex = 0, setupindex, exindex,
> exportindex, modindex, obsparmindex, infoindex, gplindex,
> crcindex, gplcrcindex, versindex, pcpuindex;
> - long arglen;
> struct module *mod;
> long err = 0;
> void *percpu = NULL, *ptr = NULL; /* Stops spurious gcc warning */
> @@ -1655,23 +1654,11 @@ static struct module *load_module(void _
> }
>
> /* Now copy in args */
> - arglen = strlen_user(uargs);
> - if (!arglen) {
> - err = -EFAULT;
> - goto free_hdr;
> - }
> - args = kmalloc(arglen, GFP_KERNEL);
> - if (!args) {
> - err = -ENOMEM;
> + args = strdup_user(uargs);
Before your changes the args string was limited by the maximum size
supported by kmalloc(); you have changed the limit to 4096 hardcoded
inside strdup_user(), which is much lower.
> + if (IS_ERR(args)) {
> + err = PTR_ERR(args);
> goto free_hdr;
> }
> - if (copy_from_user(args, uargs, arglen) != 0) {
> - err = -EFAULT;
> - goto free_mod;
> - }
> -
> - /* Userspace could have altered the string after the strlen_user() */
> - args[arglen - 1] = '\0';
>
> if (find_module(mod->name)) {
> err = -EEXIST;
[-- Attachment #2: Type: application/pgp-signature, Size: 190 bytes --]
prev parent reply other threads:[~2006-02-16 19:09 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-02-15 21:23 [PATCH 1/2] strndup_user, convert (module) Davi Arnaut
2006-02-15 20:57 ` Sergey Vlasov [this message]
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=20060215235725.15d54441.vsu@altlinux.ru \
--to=vsu@altlinux.ru \
--cc=akpm@osdl.org \
--cc=davi.arnaut@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=torvalds@osdl.org \
/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
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.