sbsv2/raptor/linux-i386/bin/bashbug
changeset 3 e1eecf4d390d
parent 0 044383f39525
--- a/sbsv2/raptor/linux-i386/bin/bashbug	Wed Oct 28 14:39:48 2009 +0000
+++ b/sbsv2/raptor/linux-i386/bin/bashbug	Mon Nov 16 09:46:46 2009 +0000
@@ -1,272 +1,272 @@
-#!/bin/sh -
-#
-# bashbug - create a bug report and mail it to the bug address
-#
-# The bug address depends on the release status of the shell.  Versions
-# with status `devel', `alpha', `beta', or `rc' mail bug reports to
-# chet@cwru.edu and, optionally, to bash-testers@cwru.edu.
-# Other versions send mail to bug-bash@gnu.org.
-#
-# Copyright (C) 1996-2004 Free Software Foundation, Inc.
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111 USA.
-
-#
-# configuration section:
-#	these variables are filled in by the make target in Makefile
-#
-MACHINE="i686"
-OS="linux-gnu"
-CC="gcc"
-CFLAGS=" -DPROGRAM='bash' -DCONF_HOSTTYPE='i686' -DCONF_OSTYPE='linux-gnu' -DCONF_MACHTYPE='i686-pc-linux-gnu' -DCONF_VENDOR='pc' -DLOCALEDIR='/opt/symbian/linux-i386/share/locale' -DPACKAGE='bash' -DSHELL -DHAVE_CONFIG_H   -I.  -I. -I./include -I./lib   -O2 -mtune=i686 -s"
-RELEASE="3.2"
-PATCHLEVEL="39"
-RELSTATUS="release"
-MACHTYPE="i686-pc-linux-gnu"
-
-PATH=/bin:/usr/bin:/usr/local/bin:$PATH
-export PATH
-
-# Check if TMPDIR is set, default to /tmp
-: ${TMPDIR:=/tmp}
-
-#Securely create a temporary directory for the temporary files
-TEMPDIR=$TMPDIR/bbug.$$
-(umask 077 && mkdir $TEMPDIR) || {
-	echo "$0: could not create temporary directory" >&2
-	exit 1
-}
-
-TEMPFILE1=$TEMPDIR/bbug1
-TEMPFILE2=$TEMPDIR/bbug2
-        
-USAGE="Usage: $0 [--help] [--version] [bug-report-email-address]"
-VERSTR="GNU bashbug, version ${RELEASE}.${PATCHLEVEL}-${RELSTATUS}"
-
-do_help= do_version=
-
-while [ $# -gt 0 ]; do
-	case "$1" in
-	--help)		shift ; do_help=y ;;
-	--version)	shift ; do_version=y ;;
-	--)		shift ; break ;;
-	-*)		echo "bashbug: ${1}: invalid option" >&2
-			echo "$USAGE" >& 2
-			exit 2 ;;
-	*)		break ;;
-	esac
-done
-
-if [ -n "$do_version" ]; then
-	echo "${VERSTR}"
-	exit 0
-fi
-
-if [ -n "$do_help" ]; then
-	echo "${VERSTR}"
-	echo "${USAGE}"
-	echo
-	cat << HERE_EOF
-Bashbug is used to send mail to the Bash maintainers
-for when Bash doesn't behave like you'd like, or expect.
-
-Bashbug will start up your editor (as defined by the shell's
-EDITOR environment variable) with a preformatted bug report
-template for you to fill in. The report will be mailed to the
-bash maintainers by default. See the manual for details.
-
-If you invoke bashbug by accident, just quit your editor without
-saving any changes to the template, and no bug report will be sent.
-HERE_EOF
-	exit 0
-fi
-
-# Figure out how to echo a string without a trailing newline
-N=`echo 'hi there\c'`
-case "$N" in
-*c)	n=-n c= ;;
-*)	n= c='\c' ;;
-esac
-
-BASHTESTERS="bash-testers@cwru.edu"
-
-case "$RELSTATUS" in
-alpha*|beta*|devel*|rc*)	BUGBASH=chet@cwru.edu ;;
-*)				BUGBASH=bug-bash@gnu.org ;;
-esac
-
-case "$RELSTATUS" in
-alpha*|beta*|devel*|rc*)
-		echo "$0: This is a testing release.  Would you like your bug report"
-		echo "$0: to be sent to the bash-testers mailing list?"
-		echo $n "$0: Send to bash-testers? $c"
-		read ans
-		case "$ans" in
-		y*|Y*)	BUGBASH="${BUGBASH},${BASHTESTERS}" ;;
-		esac ;;
-esac
-
-BUGADDR="${1-$BUGBASH}"
-
-if [ -z "$DEFEDITOR" ] && [ -z "$EDITOR" ]; then
-	if [ -x /usr/bin/editor ]; then
-		DEFEDITOR=editor
-	elif [ -x /usr/local/bin/ce ]; then
-		DEFEDITOR=ce
-	elif [ -x /usr/local/bin/emacs ]; then
-		DEFEDITOR=emacs
-	elif [ -x /usr/contrib/bin/emacs ]; then
-		DEFEDITOR=emacs
-	elif [ -x /usr/bin/emacs ]; then
-		DEFEDITOR=emacs
-	elif [ -x /usr/bin/xemacs ]; then
-		DEFEDITOR=xemacs
-	elif [ -x /usr/contrib/bin/jove ]; then
-		DEFEDITOR=jove
-	elif [ -x /usr/local/bin/jove ]; then
-		DEFEDITOR=jove
-	elif [ -x /usr/bin/vi ]; then
-		DEFEDITOR=vi
-	else
-		echo "$0: No default editor found: attempting to use vi" >&2
-		DEFEDITOR=vi
-	fi
-fi
-
-
-: ${EDITOR=$DEFEDITOR}
-
-: ${USER=${LOGNAME-`whoami`}}
-
-trap 'rm -rf "$TEMPDIR"; exit 1' 1 2 3 13 15
-trap 'rm -rf "$TEMPDIR"' 0
-
-UN=
-if (uname) >/dev/null 2>&1; then
-	UN=`uname -a`
-fi
-
-if [ -f /usr/lib/sendmail ] ; then
-	RMAIL="/usr/lib/sendmail"
-	SMARGS="-i -t"
-elif [ -f /usr/sbin/sendmail ] ; then
-	RMAIL="/usr/sbin/sendmail"
-	SMARGS="-i -t"
-else
-	RMAIL=rmail
-	SMARGS="$BUGADDR"
-fi
-
-INITIAL_SUBJECT='[50 character or so descriptive subject here (for reference)]'
-
-cat > "$TEMPFILE1" <<EOF
-From: ${USER}
-To: ${BUGADDR}
-Subject: ${INITIAL_SUBJECT}
-
-Configuration Information [Automatically generated, do not change]:
-Machine: $MACHINE
-OS: $OS
-Compiler: $CC
-Compilation CFLAGS: $CFLAGS
-uname output: $UN
-Machine Type: $MACHTYPE
-
-Bash Version: $RELEASE
-Patch Level: $PATCHLEVEL
-Release Status: $RELSTATUS
-
-Description:
-	[Detailed description of the problem, suggestion, or complaint.]
-
-Repeat-By:
-	[Describe the sequence of events that causes the problem
-	to occur.]
-
-Fix:
-	[Description of how to fix the problem.  If you don't know a
-	fix for the problem, don't include this section.]
-EOF
-
-cp "$TEMPFILE1" "$TEMPFILE2"
-chmod u+w "$TEMPFILE1"
-
-trap '' 2		# ignore interrupts while in editor
-
-edstat=1
-while [ $edstat -ne 0 ]; do
-	$EDITOR "$TEMPFILE1"
-	edstat=$?
-
-	if [ $edstat -ne 0 ]; then
-		echo "$0: editor \`$EDITOR' exited with nonzero status."
-		echo "$0: Perhaps it was interrupted."
-		echo "$0: Type \`y' to give up, and lose your bug report;"
-		echo "$0: type \`n' to re-enter the editor."
-		echo $n "$0: Do you want to give up? $c"
-
-		read ans
-		case "$ans" in
-		[Yy]*) exit 1 ;;
-		esac
-
-		continue
-	fi
-
-	# find the subject from the temp file and see if it's been changed
-	CURR_SUB=`grep '^Subject: ' "$TEMPFILE1" | sed 's|^Subject:[ 	]*||' | sed 1q`
-
-	case "$CURR_SUB" in
-	"${INITIAL_SUBJECT}")
-		echo
-		echo "$0: You have not changed the subject from the default."
-		echo "$0: Please use a more descriptive subject header."
-		echo "$0: Type \`y' to give up, and lose your bug report;"
-		echo "$0: type \`n' to re-enter the editor."
-		echo $n "$0: Do you want to give up? $c"
-
-		read ans
-		case "$ans" in
-		[Yy]*) exit 1 ;;
-		esac
-
-		echo "$0:  The editor will be restarted in five seconds."
-		sleep 5
-		edstat=1
-		;;
-	esac
-
-done
-
-trap 'rm -rf "$TEMPDIR"; exit 1' 2	# restore trap on SIGINT
-
-if cmp -s "$TEMPFILE1" "$TEMPFILE2"
-then
-	echo "File not changed, no bug report submitted."
-	exit
-fi
-
-echo $n "Send bug report? [y/n] $c"
-read ans
-case "$ans" in
-[Nn]*)	exit 0 ;;
-esac
-
-${RMAIL} $SMARGS < "$TEMPFILE1" || {
-	cat "$TEMPFILE1" >> $HOME/dead.bashbug
-	echo "$0: mail failed: report saved in $HOME/dead.bashbug" >&2
-}
-
-exit 0
+#!/bin/sh -
+#
+# bashbug - create a bug report and mail it to the bug address
+#
+# The bug address depends on the release status of the shell.  Versions
+# with status `devel', `alpha', `beta', or `rc' mail bug reports to
+# chet@cwru.edu and, optionally, to bash-testers@cwru.edu.
+# Other versions send mail to bug-bash@gnu.org.
+#
+# Copyright (C) 1996-2004 Free Software Foundation, Inc.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111 USA.
+
+#
+# configuration section:
+#	these variables are filled in by the make target in Makefile
+#
+MACHINE="i686"
+OS="linux-gnu"
+CC="gcc"
+CFLAGS=" -DPROGRAM='bash' -DCONF_HOSTTYPE='i686' -DCONF_OSTYPE='linux-gnu' -DCONF_MACHTYPE='i686-pc-linux-gnu' -DCONF_VENDOR='pc' -DLOCALEDIR='/opt/symbian/linux-i386/share/locale' -DPACKAGE='bash' -DSHELL -DHAVE_CONFIG_H   -I.  -I. -I./include -I./lib   -O2 -mtune=i686 -s"
+RELEASE="3.2"
+PATCHLEVEL="39"
+RELSTATUS="release"
+MACHTYPE="i686-pc-linux-gnu"
+
+PATH=/bin:/usr/bin:/usr/local/bin:$PATH
+export PATH
+
+# Check if TMPDIR is set, default to /tmp
+: ${TMPDIR:=/tmp}
+
+#Securely create a temporary directory for the temporary files
+TEMPDIR=$TMPDIR/bbug.$$
+(umask 077 && mkdir $TEMPDIR) || {
+	echo "$0: could not create temporary directory" >&2
+	exit 1
+}
+
+TEMPFILE1=$TEMPDIR/bbug1
+TEMPFILE2=$TEMPDIR/bbug2
+        
+USAGE="Usage: $0 [--help] [--version] [bug-report-email-address]"
+VERSTR="GNU bashbug, version ${RELEASE}.${PATCHLEVEL}-${RELSTATUS}"
+
+do_help= do_version=
+
+while [ $# -gt 0 ]; do
+	case "$1" in
+	--help)		shift ; do_help=y ;;
+	--version)	shift ; do_version=y ;;
+	--)		shift ; break ;;
+	-*)		echo "bashbug: ${1}: invalid option" >&2
+			echo "$USAGE" >& 2
+			exit 2 ;;
+	*)		break ;;
+	esac
+done
+
+if [ -n "$do_version" ]; then
+	echo "${VERSTR}"
+	exit 0
+fi
+
+if [ -n "$do_help" ]; then
+	echo "${VERSTR}"
+	echo "${USAGE}"
+	echo
+	cat << HERE_EOF
+Bashbug is used to send mail to the Bash maintainers
+for when Bash doesn't behave like you'd like, or expect.
+
+Bashbug will start up your editor (as defined by the shell's
+EDITOR environment variable) with a preformatted bug report
+template for you to fill in. The report will be mailed to the
+bash maintainers by default. See the manual for details.
+
+If you invoke bashbug by accident, just quit your editor without
+saving any changes to the template, and no bug report will be sent.
+HERE_EOF
+	exit 0
+fi
+
+# Figure out how to echo a string without a trailing newline
+N=`echo 'hi there\c'`
+case "$N" in
+*c)	n=-n c= ;;
+*)	n= c='\c' ;;
+esac
+
+BASHTESTERS="bash-testers@cwru.edu"
+
+case "$RELSTATUS" in
+alpha*|beta*|devel*|rc*)	BUGBASH=chet@cwru.edu ;;
+*)				BUGBASH=bug-bash@gnu.org ;;
+esac
+
+case "$RELSTATUS" in
+alpha*|beta*|devel*|rc*)
+		echo "$0: This is a testing release.  Would you like your bug report"
+		echo "$0: to be sent to the bash-testers mailing list?"
+		echo $n "$0: Send to bash-testers? $c"
+		read ans
+		case "$ans" in
+		y*|Y*)	BUGBASH="${BUGBASH},${BASHTESTERS}" ;;
+		esac ;;
+esac
+
+BUGADDR="${1-$BUGBASH}"
+
+if [ -z "$DEFEDITOR" ] && [ -z "$EDITOR" ]; then
+	if [ -x /usr/bin/editor ]; then
+		DEFEDITOR=editor
+	elif [ -x /usr/local/bin/ce ]; then
+		DEFEDITOR=ce
+	elif [ -x /usr/local/bin/emacs ]; then
+		DEFEDITOR=emacs
+	elif [ -x /usr/contrib/bin/emacs ]; then
+		DEFEDITOR=emacs
+	elif [ -x /usr/bin/emacs ]; then
+		DEFEDITOR=emacs
+	elif [ -x /usr/bin/xemacs ]; then
+		DEFEDITOR=xemacs
+	elif [ -x /usr/contrib/bin/jove ]; then
+		DEFEDITOR=jove
+	elif [ -x /usr/local/bin/jove ]; then
+		DEFEDITOR=jove
+	elif [ -x /usr/bin/vi ]; then
+		DEFEDITOR=vi
+	else
+		echo "$0: No default editor found: attempting to use vi" >&2
+		DEFEDITOR=vi
+	fi
+fi
+
+
+: ${EDITOR=$DEFEDITOR}
+
+: ${USER=${LOGNAME-`whoami`}}
+
+trap 'rm -rf "$TEMPDIR"; exit 1' 1 2 3 13 15
+trap 'rm -rf "$TEMPDIR"' 0
+
+UN=
+if (uname) >/dev/null 2>&1; then
+	UN=`uname -a`
+fi
+
+if [ -f /usr/lib/sendmail ] ; then
+	RMAIL="/usr/lib/sendmail"
+	SMARGS="-i -t"
+elif [ -f /usr/sbin/sendmail ] ; then
+	RMAIL="/usr/sbin/sendmail"
+	SMARGS="-i -t"
+else
+	RMAIL=rmail
+	SMARGS="$BUGADDR"
+fi
+
+INITIAL_SUBJECT='[50 character or so descriptive subject here (for reference)]'
+
+cat > "$TEMPFILE1" <<EOF
+From: ${USER}
+To: ${BUGADDR}
+Subject: ${INITIAL_SUBJECT}
+
+Configuration Information [Automatically generated, do not change]:
+Machine: $MACHINE
+OS: $OS
+Compiler: $CC
+Compilation CFLAGS: $CFLAGS
+uname output: $UN
+Machine Type: $MACHTYPE
+
+Bash Version: $RELEASE
+Patch Level: $PATCHLEVEL
+Release Status: $RELSTATUS
+
+Description:
+	[Detailed description of the problem, suggestion, or complaint.]
+
+Repeat-By:
+	[Describe the sequence of events that causes the problem
+	to occur.]
+
+Fix:
+	[Description of how to fix the problem.  If you don't know a
+	fix for the problem, don't include this section.]
+EOF
+
+cp "$TEMPFILE1" "$TEMPFILE2"
+chmod u+w "$TEMPFILE1"
+
+trap '' 2		# ignore interrupts while in editor
+
+edstat=1
+while [ $edstat -ne 0 ]; do
+	$EDITOR "$TEMPFILE1"
+	edstat=$?
+
+	if [ $edstat -ne 0 ]; then
+		echo "$0: editor \`$EDITOR' exited with nonzero status."
+		echo "$0: Perhaps it was interrupted."
+		echo "$0: Type \`y' to give up, and lose your bug report;"
+		echo "$0: type \`n' to re-enter the editor."
+		echo $n "$0: Do you want to give up? $c"
+
+		read ans
+		case "$ans" in
+		[Yy]*) exit 1 ;;
+		esac
+
+		continue
+	fi
+
+	# find the subject from the temp file and see if it's been changed
+	CURR_SUB=`grep '^Subject: ' "$TEMPFILE1" | sed 's|^Subject:[ 	]*||' | sed 1q`
+
+	case "$CURR_SUB" in
+	"${INITIAL_SUBJECT}")
+		echo
+		echo "$0: You have not changed the subject from the default."
+		echo "$0: Please use a more descriptive subject header."
+		echo "$0: Type \`y' to give up, and lose your bug report;"
+		echo "$0: type \`n' to re-enter the editor."
+		echo $n "$0: Do you want to give up? $c"
+
+		read ans
+		case "$ans" in
+		[Yy]*) exit 1 ;;
+		esac
+
+		echo "$0:  The editor will be restarted in five seconds."
+		sleep 5
+		edstat=1
+		;;
+	esac
+
+done
+
+trap 'rm -rf "$TEMPDIR"; exit 1' 2	# restore trap on SIGINT
+
+if cmp -s "$TEMPFILE1" "$TEMPFILE2"
+then
+	echo "File not changed, no bug report submitted."
+	exit
+fi
+
+echo $n "Send bug report? [y/n] $c"
+read ans
+case "$ans" in
+[Nn]*)	exit 0 ;;
+esac
+
+${RMAIL} $SMARGS < "$TEMPFILE1" || {
+	cat "$TEMPFILE1" >> $HOME/dead.bashbug
+	echo "$0: mail failed: report saved in $HOME/dead.bashbug" >&2
+}
+
+exit 0