From mboxrd@z Thu Jan 1 00:00:00 1970 From: Eric Dumazet Subject: Re: [PATCH v3 2/3] unix/dgram: fix peeking with an offset larger than data in queue Date: Mon, 29 Apr 2013 17:49:54 -0700 Message-ID: <1367282994.8964.335.camel@edumazet-glaptop> References: <1367271734-14379-1-git-send-email-bpoirier@suse.de> <1367271734-14379-2-git-send-email-bpoirier@suse.de> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit Cc: "David S. Miller" , Eric Dumazet , Pavel Emelyanov , Cong Wang , netdev@vger.kernel.org, linux-kernel@vger.kernel.org To: Benjamin Poirier Return-path: In-Reply-To: <1367271734-14379-2-git-send-email-bpoirier@suse.de> Sender: linux-kernel-owner@vger.kernel.org List-Id: netdev.vger.kernel.org On Mon, 2013-04-29 at 17:42 -0400, Benjamin Poirier wrote: > Currently, peeking on a unix datagram socket with an offset larger than len of > the data in the sk receive queue returns immediately with bogus data. That's > because *off is not reset between each skb_queue_walk(). > > This patch fixes this so that the behavior is the same as peeking with no > offset on an empty queue: the caller blocks. > > Signed-off-by: Benjamin Poirier > > --- > > v2: address review feedback from Eric Dumazet > > v3: address review feedback from Cong Wang > > net/core/datagram.c | 21 +++++++++++++-------- > 1 file changed, 13 insertions(+), 8 deletions(-) Acked-by: Eric Dumazet