[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <201007230022.o6N0MKLt053955@www262.sakura.ne.jp>
Date: Fri, 23 Jul 2010 09:22:20 +0900
From: Tetsuo Handa <penguin-kernel@...ove.SAKURA.ne.jp>
To: davem@...emloft.net
Cc: kuznet@....inr.ac.ru, pekkas@...core.fi, jmorris@...ei.org,
yoshfuji@...ux-ipv6.org, kaber@...sh.net, paul.moore@...com,
netdev@...r.kernel.org, linux-security-module@...r.kernel.org
Subject: Re: [PATCH] LSM: Add post recvmsg() hook.
David Miller wrote:
> The fact is going to remain that you will be unable to return data
> from recvmsg() to a blocking socket when ->poll() returns true even
> though data is in fact there in the socket receive queue.
>
> This is something that the existing LSM hooks do not do.
This is something that the existing security_socket_recvmsg() hook does do.
SELinux is unable to return data from recvmsg() to a blocking socket when
->poll() returns true even though data is in fact there in the socket receive
queue.
We agreed below situation, didn't we?
Tetsuo Handa wrote:
> > > Excuse me, below check is made inside recvmsg() and may return error if
> > > SELinux's policy has changed after the select() said "ready" and before
> > > security_socket_recvmsg() is called. No?
> >
> > It does this before pulling the packet out of the receive queue of the
> > socket. It's like signalling a parameter error to the process, no
> > socket state is changed.
>
> So, we agreed that security_socket_recvmsg() is allowed to return error code
> rather than available data even if both conditions
>
> 1) Application makes poll() on UDP socket in blocking mode, and UDP
> reports that receive data is available
>
> and
>
> 2) Application, after such a poll() call, makes a blocking recvmsg() call
> and no other activity has occurred on the socket meanwhile
>
> are met.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists