OSEC

Neohapsis is currently accepting applications for employment. For more information, please visit our website www.neohapsis.com or email hr@neohapsis.com
Bugtraq archives for 4th quarter (Oct-Dec) 1998: Re: /tmp race in mc-4.5.0

Re: /tmp race in mc-4.5.0

Bennett Todd (betMORDOR.NET)
Wed, 14 Oct 1998 16:51:58 -0400

1998-10-13-00:41:04 Pavel Machek:
> [...] until someone invents safe & portable way of how to work
> with temporary files from shell.
>
> (Actually, is this safe? It might be safe & portable, unfortunately,
> it is also slow & ugly)
>
>     TMPDIR=/tmp/mctmpdir.$$
>     mkdir $TMPDIR || exit 0
>     cd $TMPDIR
>     do_something > $TMPDIR/file
>     rm $TMPDIR/file
>     rmdir $TMPDIR

If I were doing something like this, I'd probably code

        progname=`basename $0`
        die(){ echo "$progname: $*">&2; exit 1; }
        umask 077
        tmp=/tmp/$progname.$$
        trap "rm -rf $tmp" 0
        mkdir $tmp || die "can't mkdir $tmp"

        # use $tmp/whatever, $tmp/whateverelse for tmp files

-Bennett