From owner-freebsd-hackers@FreeBSD.ORG Wed Jun 3 10:27:14 2009 Return-Path: Delivered-To: freebsd-hackers@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C2CB3106564A for ; Wed, 3 Jun 2009 10:27:14 +0000 (UTC) (envelope-from rea-fbsd@codelabs.ru) Received: from 0.mx.codelabs.ru (0.mx.codelabs.ru [144.206.177.45]) by mx1.freebsd.org (Postfix) with ESMTP id 74AC58FC15 for ; Wed, 3 Jun 2009 10:27:14 +0000 (UTC) (envelope-from rea-fbsd@codelabs.ru) DomainKey-Signature: a=rsa-sha1; q=dns; c=simple; s=one; d=codelabs.ru; h=Received:Date:From:To:Cc:Subject:Message-ID:Reply-To:References:MIME-Version:Content-Type:Content-Disposition:In-Reply-To:Sender; b=FVtC0aGfqd0AthicxBOxRkERDiRY0CMaoPsFu/a23aai1hKex+TI2CSUZtDrpQbnWdaoXfaHo5pOiObJn3EvrFxEJPP9feY7WhmAsduWbNBzfqrIHnDbLivpAFRy0305X73e6UaWAzg6aZ5+B1yBQGUS+QmEJbORTXyHmGG43G0=; Received: from void.codelabs.ru (void.codelabs.ru [144.206.177.25]) by 0.mx.codelabs.ru with esmtpsa (TLSv1:AES256-SHA:256) id 1MBngc-000P0X-ML; Wed, 03 Jun 2009 14:27:10 +0400 Date: Wed, 3 Jun 2009 14:27:08 +0400 From: Eygene Ryabinkin To: Dag-Erling Sm??rgrav Message-ID: References: <86prdvipwe.fsf@ds4.des.no> <20090527233110.E4243@delplex.bde.org> <86r5yaijef.fsf@ds4.des.no> <20090529210855.V1643@besplex.bde.org> <86vdnju9z1.fsf@ds4.des.no> <86r5y7u9r3.fsf@ds4.des.no> <86skiiri1p.fsf@ds4.des.no> <86my8pelji.fsf@ds4.des.no> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <86my8pelji.fsf@ds4.des.no> Sender: rea-fbsd@codelabs.ru Cc: freebsd-hackers@FreeBSD.org, Jakub Lach , Bruce Evans Subject: Re: FYI Lighttpd 1.4.23 /kernel (trailing '/' on regular file symlink) vulnerability X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: rea-fbsd@codelabs.ru List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 03 Jun 2009 10:27:15 -0000 Wed, Jun 03, 2009 at 11:03:45AM +0200, Dag-Erling Sm??rgrav wrote: > Isn't it clearly described in the preceding comment? Specifically, by > the first two sentences: "Replace multiple slashes by a single slash and > trailing slashes by a null. This must be done before VOP_LOOKUP() > because some fs's don't know about trailing slashes." Yes, it is clearly described. But I started to understand this description only after asking myself "what ndp->ni_next is doing here and why do we want to place '\0' to this address"? I could be a bit stupid, yeah ;)) But this code snippet can be a bit hard to read for others as well. May be not -- can't say for sure. -- Eygene _ ___ _.--. # \`.|\..----...-'` `-._.-'_.-'` # Remember that it is hard / ' ` , __.--' # to read the on-line manual )/' _/ \ `-_, / # while single-stepping the kernel. `-'" `"\_ ,_.-;_.-\_ ', fsc/as # _.-'_./ {_.' ; / # -- FreeBSD Developers handbook {_.-``-' {_/ #