summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorjilles <jilles@FreeBSD.org>2011-06-10 22:42:00 +0000
committerjilles <jilles@FreeBSD.org>2011-06-10 22:42:00 +0000
commit742a97ee0a4a2d4cabdc097c1fed047d490b5ffb (patch)
treec5fb621bdc139a5db6a325ed51d8cf1472a19da1 /tools
parent82f98a6104c483238c9fcd8df34533f404ba26e6 (diff)
downloadFreeBSD-src-742a97ee0a4a2d4cabdc097c1fed047d490b5ffb.zip
FreeBSD-src-742a97ee0a4a2d4cabdc097c1fed047d490b5ffb.tar.gz
sh: Do parameter expansion on ENV before using it.
This is required by POSIX, and allows things like ENV=\$HOME/.shrc. Note that tilde expansion is explicitly not performed.
Diffstat (limited to 'tools')
-rw-r--r--tools/regression/bin/sh/parameters/env1.011
1 files changed, 11 insertions, 0 deletions
diff --git a/tools/regression/bin/sh/parameters/env1.0 b/tools/regression/bin/sh/parameters/env1.0
new file mode 100644
index 0000000..c0d4a2c
--- /dev/null
+++ b/tools/regression/bin/sh/parameters/env1.0
@@ -0,0 +1,11 @@
+# $FreeBSD$
+
+export key='must contain this'
+unset x
+r=$(ENV="\${x?\$key}" ${SH} -i +m 2>&1 >/dev/null <<\EOF
+exit 0
+EOF
+) && case $r in
+*"$key"*) true ;;
+*) false ;;
+esac
OpenPOWER on IntegriCloud