Date: Tue, 17 May 2011 15:55:14 GMT From: Rachel Flynn <rflynn@acsalaska.net> To: freebsd-gnats-submit@FreeBSD.org Subject: ports/157121: portmaster traverses and modifies dirctory trees it should not Message-ID: <201105171555.p4HFtE0J089930@red.freebsd.org> Resent-Message-ID: <201105171600.p4HG0RUB091047@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 157121 >Category: ports >Synopsis: portmaster traverses and modifies dirctory trees it should not >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Tue May 17 16:00:27 UTC 2011 >Closed-Date: >Last-Modified: >Originator: Rachel Flynn >Release: 8.2-STABLE >Organization: >Environment: FreeBSD datakitty.lan 8.2-PRERELEASE FreeBSD 8.2-PRERELEASE #0 r217868: Tue Jan 25 15:22:59 AKST 2011 rach@datakitty.lan:/data/obj/usr/src/sys/GENERIC amd64 >Description: In parent_exit, portmaster deletes all empty directories below $WRKDIRPREFIX. This assumes that anything below $WRKDIRPREFIX is for the ports system, but it is not. A typical case is to use MAKEOBJDIRPREFIX=/usr/obj for src and WRKDIRPREFIX=/usr/obj for ports. portmaster will now traverse /usr/obj/usr/src in parent_exit which a) takes long and b) is not portmaster to modify. >How-To-Repeat: Run portmaster to install a port. >Fix: --- portmaster.orig 2011-05-08 02:20:04.000000000 -0800 +++ portmaster 2011-05-17 07:38:47.000000000 -0800 @@ -143,7 +143,7 @@ for f in ${TMPDIR}/f-${PM_PARENT_PID}-*; do pm_unlink $f ; done [ -n "$PM_WRKDIRPREFIX" ] && - find -d $PM_WRKDIRPREFIX -mindepth 1 -type d -empty -delete 2>/dev/null + find -d $PM_WRKDIRPREFIX$pd -mindepth 1 -type d -empty -delete 2>/dev/null case "$DISPLAY_LIST" in *' '*) if [ -n "$1" ]; then >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201105171555.p4HFtE0J089930>