public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Al Viro <viro@ZenIV.linux.org.uk>
To: WANG Cong <xiyou.wangcong@gmail.com>
Cc: LKML <linux-kernel@vger.kernel.org>,
	Andrew Morton <akpm@osdl.org>, WANG Cong <wangcong@zeuux.org>
Subject: Re: [Patch 7/9] fs/exec.c: fix wrong return value of prepare_binprm()
Date: Mon, 12 May 2008 05:37:58 +0100	[thread overview]
Message-ID: <20080512043758.GP13907@ZenIV.linux.org.uk> (raw)
In-Reply-To: <20080512041534.GG2572@hacking>

On Mon, May 12, 2008 at 12:15:34PM +0800, WANG Cong wrote:
> And even if it is really "binary is corrupted", then -ENOEXEC is
> better than -EINVAL, isn't it?
> 
> Anyway, kernel_read() may return postive when not success.

???

It returns positives *exactly* on success.  In the case you've quoted
we don't have any problems with read; we do have a problem with _short_
read (i.e. miscalculated field size or truncated binary).  In the case
you've patched we _expect_ a short read; it's normal for short scripts,
to start with.  And we are ready to deal with it - the buffer is prefilled
with zeroes and either we have enough to recognize signature (in which case
we'll find the binfmt handler and let it deal with the entire thing, with
full checks of its own) or we will not, in which case nobody will recognize
the damn thing and that's it.

  reply	other threads:[~2008-05-12  4:38 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-05-08 13:52 [Patch 0/9] Fix resource leaks for exec related stuffs WANG Cong
2008-05-08 13:52 ` [Patch 1/9] fs/exec.c: export free_arg_pages WANG Cong
2008-05-10 19:12   ` Al Viro
2008-05-12  3:59     ` WANG Cong
2008-05-08 13:52 ` [Patch 2/9] fs/exec.c: fix resource leaks and wrong goto's WANG Cong
2008-05-10 19:16   ` Al Viro
2008-05-08 13:52 ` [Patch 3/9] fs/compat.c: " WANG Cong
2008-05-10 19:21   ` Al Viro
2008-05-10 20:35     ` Al Viro
2008-05-12  3:46       ` WANG Cong
2008-05-12  4:05         ` Al Viro
2008-05-08 13:52 ` [Patch 4/9] fs/binfmt_script.c: fix resource leaks WANG Cong
2008-05-10 19:24   ` Al Viro
2008-05-08 13:52 ` [Patch 5/9] fs/binfmt_em86.c: " WANG Cong
2008-05-10 19:25   ` Al Viro
2008-05-12  3:53     ` WANG Cong
2008-05-08 13:52 ` [Patch 6/9] fs/binfmt_misc.c: " WANG Cong
2008-05-10 19:25   ` Al Viro
2008-05-08 13:52 ` [Patch 7/9] fs/exec.c: fix wrong return value of prepare_binprm() WANG Cong
2008-05-10 19:31   ` Al Viro
2008-05-12  3:56     ` WANG Cong
2008-05-12  4:01       ` Al Viro
2008-05-12  4:15         ` WANG Cong
2008-05-12  4:37           ` Al Viro [this message]
2008-05-12  4:52             ` WANG Cong
2008-05-08 13:52 ` [Patch 8/9] fs/binfmt_elf.c: fix wrong return values WANG Cong
2008-05-08 13:52 ` [Patch 9/9] fs/exec.c: fix a wrong goto path WANG Cong
2008-05-10 19:37   ` Al Viro
2008-05-12  3:51     ` WANG Cong
2008-05-12  3:58       ` Al Viro
2008-05-10 20:47 ` [Patch 0/9] Fix resource leaks for exec related stuffs Al Viro

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=20080512043758.GP13907@ZenIV.linux.org.uk \
    --to=viro@zeniv.linux.org.uk \
    --cc=akpm@osdl.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=wangcong@zeuux.org \
    --cc=xiyou.wangcong@gmail.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox