From owner-freebsd-audit Thu Nov 30 22:52:29 2000 Delivered-To: freebsd-audit@freebsd.org Received: from lennier.cc.vt.edu (lennier.cc.vt.edu [198.82.161.193]) by hub.freebsd.org (Postfix) with ESMTP id 21ADE37B400 for ; Thu, 30 Nov 2000 22:52:26 -0800 (PST) Received: from mail.vt.edu (gkar.cc.vt.edu [198.82.161.190]) by lennier.cc.vt.edu (8.11.0/8.11.0) with ESMTP id eB16qOB195711 for ; Fri, 1 Dec 2000 01:52:24 -0500 (EST) Received: from muriel.penguinpowered.com ([198.82.100.195]) by gkar.cc.vt.edu (Sun Internet Mail Server sims.3.5.2000.03.23.18.03.p10) with ESMTP id <0G4V004RDN3B33@gkar.cc.vt.edu> for FreeBSD-audit@freebsd.org; Fri, 1 Dec 2000 01:52:23 -0500 (EST) Date: Fri, 01 Dec 2000 01:52:23 -0500 (EST) From: Mike Heffner Subject: manctl(8) tempfile fix To: FreeBSD-audit Message-id: MIME-version: 1.0 X-Mailer: XFMail 1.4.4 on FreeBSD Content-type: text/plain; charset=us-ascii Content-transfer-encoding: 8bit X-Priority: 3 (Normal) Sender: owner-freebsd-audit@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG This patch changes manctl(8) to use mktemp rather than shell pid substitution for tempfile names. Reviews? --- manctl.sh.orig Fri Dec 1 01:24:35 2000 +++ manctl.sh Fri Dec 1 01:42:39 2000 @@ -94,12 +94,13 @@ else if [ $2 != "symbolic" ] ; then echo gunzipping page $pname 1>&2 - gunzip -c $pname > /tmp/manager.$$ + temp=`mktemp /tmp/managerXXXXXXXXXX` || exit 1 + gunzip -c $pname > $temp chmod u+w $pname - cp /tmp/manager.$$ $pname + cp $temp $pname chmod 444 $pname mv $pname $fname.$sect - rm /tmp/manager.$$ + rm -f $temp else # skip symlinks - this can be # a program like expn, which is @@ -180,11 +181,13 @@ ln ../$2 $fname else echo inlining page $fname 1>&2 + temp=`mktemp /tmp/managerXXXXXXXXXX` || exit 1 cat $fname | \ - (cd .. ; soelim ) > /tmp/manager.$$ + (cd .. ; soelim ) > $temp chmod u+w $fname - cp /tmp/manager.$$ $fname + cp $temp $fname chmod 444 $fname + rm -f $temp fi } @@ -279,13 +282,14 @@ else if [ $2 != "symbolic" ] ; then echo gzipping page $pname 1>&2 + temp=`mktemp /tmp/managerXXXXXXXXXX` || exit 1 cat $pname | \ - (cd .. ; soelim )| gzip -c -- > /tmp/manager.$$ + (cd .. ; soelim )| gzip -c -- > $temp chmod u+w $pname - cp /tmp/manager.$$ $pname + cp $temp $pname chmod 444 $pname mv $pname $pname.gz - rm /tmp/manager.$$ + rm -f $temp else # skip symlink - this can be # a program like expn, which is -- Mike Heffner Blacksburg, VA ICQ# 882073 http://my.ispchannel.com/~mheffner To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-audit" in the body of the message