From owner-freebsd-bugs@FreeBSD.ORG Fri Jan 22 14:50:01 2010 Return-Path: Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 60DA51065670 for ; Fri, 22 Jan 2010 14:50:01 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 25DC88FC17 for ; Fri, 22 Jan 2010 14:50:01 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.3/8.14.3) with ESMTP id o0MEo0Dk053457 for ; Fri, 22 Jan 2010 14:50:00 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.3/8.14.3/Submit) id o0MEo0pI053456; Fri, 22 Jan 2010 14:50:00 GMT (envelope-from gnats) Resent-Date: Fri, 22 Jan 2010 14:50:00 GMT Resent-Message-Id: <201001221450.o0MEo0pI053456@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Dirk Engling Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id E3EFE106566B for ; Fri, 22 Jan 2010 14:40:37 +0000 (UTC) (envelope-from nobody@FreeBSD.org) Received: from www.freebsd.org (www.freebsd.org [IPv6:2001:4f8:fff6::21]) by mx1.freebsd.org (Postfix) with ESMTP id D49518FC12 for ; Fri, 22 Jan 2010 14:40:37 +0000 (UTC) Received: from www.freebsd.org (localhost [127.0.0.1]) by www.freebsd.org (8.14.3/8.14.3) with ESMTP id o0MEebFs058719 for ; Fri, 22 Jan 2010 14:40:37 GMT (envelope-from nobody@www.freebsd.org) Received: (from nobody@localhost) by www.freebsd.org (8.14.3/8.14.3/Submit) id o0MEebSt058718; Fri, 22 Jan 2010 14:40:37 GMT (envelope-from nobody) Message-Id: <201001221440.o0MEebSt058718@www.freebsd.org> Date: Fri, 22 Jan 2010 14:40:37 GMT From: Dirk Engling To: freebsd-gnats-submit@FreeBSD.org X-Send-Pr-Version: www-3.1 Cc: Subject: misc/143084: rc.d/jail creates stray softlinks X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 22 Jan 2010 14:50:01 -0000 >Number: 143084 >Category: misc >Synopsis: rc.d/jail creates stray softlinks >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Fri Jan 22 14:50:00 UTC 2010 >Closed-Date: >Last-Modified: >Originator: Dirk Engling >Release: FreeBSD 8.0 RELEASE >Organization: >Environment: FreeBSD ruprecht.local 8.0-RELEASE FreeBSD 8.0-RELEASE #0: Sat Nov 21 15:02:08 UTC 2009 root@mason.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC amd64 >Description: While debugging a stray softlink "log" => "../var/run/log" in ezjail's config directory I found the following code in /etc/rc.d/jail:593 # Transitional symlink for old binaries if [ ! -L "${_devdir}/log" ]; then __pwd="`pwd`" cd "${_devdir}" ln -sf ../var/run/log log cd "$__pwd" fi First, I wonder, why the whole block is not just a ln -s ../var/run/log "${_devdir}/log" Secondly I wonder why the code above does not check for errors and just skips this part if it can't mount devfs, why the code does not check return code of the 'cd "${_devdir}' command. >How-To-Repeat: >Fix: --- jail 2009-11-21 15:31:36.000000000 +0100 +++ /home/erdgeist/jail 2010-01-22 15:39:49.776129991 +0100 @@ -591,12 +591,7 @@ info "Mounting devfs on ${_devdir}" devfs_mount_jail "${_devdir}" ${_ruleset} # Transitional symlink for old binaries - if [ ! -L "${_devdir}/log" ]; then - __pwd="`pwd`" - cd "${_devdir}" - ln -sf ../var/run/log log - cd "$__pwd" - fi + ln -sf ../var/run/log "${_devdir}/log" fi # XXX - It seems symlinks don't work when there >Release-Note: >Audit-Trail: >Unformatted: