X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/debab7aa60964cf984342de9ab68e84308f50d2b..987b10b31daff14fd38e7e355f2be4e3a632483b:/uip/mhmail diff --git a/uip/mhmail b/uip/mhmail index ffc51298..c43f9c3f 100755 --- a/uip/mhmail +++ b/uip/mhmail @@ -57,7 +57,7 @@ die() { bindir=`finddir $0` nmhbindir=`cd "$bindir" && pwd` -nmhlibdir=`$nmhbindir/mhparam libdir` +nmhlibexecdir=`$nmhbindir/mhparam libexecdir` case `printf 'OK\n' | tail -n 1 2>&1` in OK) tail='tail -n ' ;; *) tail='tail -' ;; @@ -189,7 +189,7 @@ if [ "$tolist"x = x ]; then die 'Usage: mhmail [-t(o)] addrs ... [switches]' fi if [ "$from"x = x ]; then - from=`${nmhlibdir}/ap -format '%(localmbox)' 0` + from=`${nmhlibexecdir}/ap -format '%(localmbox)' 0` fi #### Check for missing mandatory arguments. @@ -215,9 +215,11 @@ fi #### .orig file, so it will remove them, too. umask 077 tmpdir="${MHTMPDIR:-${TMPDIR:-`$nmhbindir/mhpath +`}}" -tmpfile="$tmpdir/mhmail$$" +tmpfilename=`cd "$tmpdir" && "${nmhlibexecdir}/mkstemp" -p mhmail` +[ $? -ne 0 ] && die "mhmail: failed to create temporary file in $tmpdir" +tmpfile="$tmpdir/$tmpfilename" backup_char=`"$nmhbindir"/mhparam sbackup` -tmpfilebackup="'$tmpdir'/${backup_char}mhmail$$*" +tmpfilebackup="$tmpdir/${backup_char}${tmpfilename}*" tmpfileresent= message_file= @@ -234,7 +236,8 @@ else #### When resending with send, tmpfile will just contain the #### Resent- header fields. "$tmpfileresent" will contain #### the message that is being resent. - tmpfileresent="$tmpdir/mhmail-resent$$" + tmpfileresent=`"${nmhlibexecdir}/mkstemp" -d "$tmpdir" -p mhmail-resent` + [ $? -ne 0 ] && die "mhmail: failed to create temporary file in $tmpdir" mhdist=1; export mhdist mhaltmsg=$tmpfileresent; export mhaltmsg message_file="$tmpfileresent" @@ -289,7 +292,7 @@ else post_or_send="$nmhbindir/send" fi - if "$post_or_send" "$tmpfile" $postsendargs; then + if "$post_or_send" $postsendargs "$tmpfile"; then exit else status=$?