Re: [TOMOYO #5 18/18] LSM expansion for TOMOYO Linux.

Paul Moore
2007-11-17T23:45:34Z

On Friday 16 November 2007 10:45:32 pm Tetsuo Handa wrote:
> Paul Moore wrote:
> > I might be missing something here, but why do you need to do a skb_peek()
> > again? You already have the skb and the sock, just do the unlink.
>
> The skb might be already dequeued by other thread while I slept inside
> security_post_recv_datagram().

Okay, well if that is the case I think you are going to have another problem
in that you could end up throwing away skbs that haven't been through your
security_post_recv_datagram() hook because you _always_ throw away the result
of the second skb_peek(). Once again, if I'm wrong please correct me.

> > Second, why not move the 'no_peek' code to just before 'no_packet'?
>
> Oh, I didn't notice I can insert here. Now I can also move the rest code
> like
>
> | error = security_post_recv_datagram(sk, skb, flags);
> | if (error)
> | goto force_dequeue;
> |
> | } while (!wait_for_packet(sk, err, &timeo));

Where did the 'if (skb) return skb;' code go? Don't you need to do you LSM
call before you return the skb?

--
paul moore
linux security @ hp