sysrc(8): Test variable names for invalid characters

PR:		bin/187461
Reported by:	ebay@looksharp.net
MFC after:	4 weeks
X-MFC-to:	stable/11 (after 11.2-R)
Sponsored by:	Smule, Inc.
This commit is contained in:
Devin Teske 2018-05-28 23:34:23 +00:00
parent 7b0a9efa99
commit a03d5f8b02
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=334303

View file

@ -369,6 +369,18 @@ if [ "$LIST_SERVICE_CONFS" ]; then
exit $retval
fi
#
# Validate arguments
#
for name in "$@"; do
# NB: shell expansion syntax removed first
name="${name%%:[+=-]*}"
name="${name%%[%#+=-]*}"
[ "$name" = "${name#*[!$VALID_VARNAME_CHARS]}" ] || die \
"%s: %s: name contains characters not allowed in shell" \
"$pgm" "$name"
done
#
# Process `-s name' argument
#