Commit 05e9a168 authored by Justin Erenkrantz's avatar Justin Erenkrantz
Browse files

* support/check_forensic: Fix script on platforms that do not have either

  mktemp or tempfile (such as Solaris).

Also tested on Darwin & FreeBSD.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@126224 13f79535-47bb-0310-9956-ffa450edef68
parent ed3141fb
Loading
Loading
Loading
Loading
+33 −3
Changes for support/check_forensic: 33 added lines, 3 removed lines.
Original line number Diff line number Diff line
@@ -7,9 +7,39 @@

F=$1

all=`mktemp -t fcall.XXXXXX || tempfile --prefix=fcall` || { echo "$0: Cannot create temporary file" >&2; exit 1; }
in=`mktemp -t fcin.XXXXXX || tempfile --prefix=fcin` || { echo "$0: Cannot create temporary file" >&2; exit 1; }
out=`mktemp -t fcout.XXXXXX || tempfile --prefix=fcout` || { echo "$0: Cannot create temporary file" >&2; exit 1; }
temp_create_method=file
if test -f `which mktemp`; then
  temp_create_method=mktemp
elif test -f `which tempfile`; then
  temp_create_method=tempfile
fi

create_temp()
{
  prefix=$1
  case "$temp_create_method" in
    file)
      name="/tmp/$1.$$"
      ;;
    mktemp)
      name=`mktemp -t $1.XXXXXX`
      ;;
    tempfile)
      name=`tempfile --prefix=$1`
      ;;
    *)
      echo "$0: Cannot create temporary file"
      exit 1
      ;;
  esac
}

create_temp fcall
all=$name
create_temp fcin
in=$name
create_temp fcout
out=$name
trap "rm -f -- \"$all\" \"$in\" \"$out\";" 0 1 2 3 13 15

cut -f 1 -d '|' $F  > $all