public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Casey Schaufler <casey@schaufler-ca.com>
To: Jakub Jelinek <jakub@redhat.com>
Cc: Eric Paris <eparis@redhat.com>,
	linux-kernel@vger.kernel.org, libc-alpha@sourceware.org,
	dwalsh@redhat.com, dmalcolm@redhat.com, sds@tycho.nsa.gov,
	segoon@openwall.com, linux-security-module@vger.kernel.org,
	Casey Schaufler <casey@schaufler-ca.com>
Subject: Re: Friendlier EPERM - Request for input
Date: Wed, 09 Jan 2013 13:12:07 -0800	[thread overview]
Message-ID: <50EDDD27.7030008@schaufler-ca.com> (raw)
In-Reply-To: <20130109205947.GE26036@sunsite.ms.mff.cuni.cz>

On 1/9/2013 12:59 PM, Jakub Jelinek wrote:
> On Wed, Jan 09, 2013 at 12:53:40PM -0800, Casey Schaufler wrote:
>> I'm suggesting that the string returned by get_extended_error_info()
>> ought to be the audit record the system call would generate, regardless
>> of whether the audit system would emit it or not.
> What system call would that info be for and would it be reset on next
> syscall that succeeded, or also failed?

It ought to be the same system call that generated the contents of errno.

>
> The thing is, various functions e.g. perform some syscall, save errno, do
> some other syscall, and if they decide that the first syscall should be what
> determines the whole function's errno, just restore errno from the saved
> value and return.

Whichever system call generated the content of errno. If that means
the functions that currently save away errno have to save away the
audit text, that's what it would have to do. Simple. Not necessarily
pleasant, but simple.


> Similarly, various functions just set errno upon
> detecting some error condition in userspace.

Then get_extended_error_info should return NULL.
Or, if the library code prefers, creates its own
audit record in valid audit record format.

> There is no 1:1 mapping between many libc library calls and syscalls.

Truth. I'm suggesting the get_extended_error_info behavior
match the errno behavior.

> So, when would it be safe to call this new get_extended_error_info function
> and how to determine to which syscall it was relevant?

Any time you could look at errno you should be able to get a matching
explanation from get_extended_error_info.


>
> 	Jakub
>


  parent reply	other threads:[~2013-01-09 21:11 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-01-09 16:04 Friendlier EPERM - Request for input Eric Paris
2013-01-09 19:43 ` Eric Paris
2013-01-09 20:14   ` Casey Schaufler
2013-01-09 20:32     ` Eric Paris
2013-01-09 20:53       ` Casey Schaufler
2013-01-09 20:59         ` Jakub Jelinek
2013-01-09 21:09           ` Eric Paris
2013-01-09 22:17             ` Carlos O'Donell
2013-01-21  0:00               ` Eric W. Biederman
2013-01-21  0:59                 ` Eric W. Biederman
2013-01-21  1:09                 ` Mike Frysinger
2013-01-09 21:12           ` Casey Schaufler [this message]
2013-01-09 21:13         ` Eric Paris
2013-01-09 21:36           ` Casey Schaufler
2013-01-10 15:14   ` Tetsuo Handa
2013-01-10 16:34     ` Eric Paris
2013-01-11 13:00       ` Mimi Zohar
2013-01-12  5:08       ` Tetsuo Handa
2013-01-27 14:16       ` Rich Kulawiec
2013-01-12  7:23 ` Rob Landley
2013-01-12 20:27 ` Dr. David Alan Gilbert

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=50EDDD27.7030008@schaufler-ca.com \
    --to=casey@schaufler-ca.com \
    --cc=dmalcolm@redhat.com \
    --cc=dwalsh@redhat.com \
    --cc=eparis@redhat.com \
    --cc=jakub@redhat.com \
    --cc=libc-alpha@sourceware.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-security-module@vger.kernel.org \
    --cc=sds@tycho.nsa.gov \
    --cc=segoon@openwall.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