Fixed some expansion/quotation issues with tr's parameters ([:alnum:] etc.) Thanks to Simon L. Nielsen.

This commit is contained in:
erdgeist 2006-07-15 16:11:22 +00:00
parent 372d2696df
commit 5b5921370d
2 changed files with 5 additions and 5 deletions

View File

@ -71,7 +71,7 @@ fetchjailinfo () {
# Clean variables, prevent polution
unset ezjail_config ezjail_running ezjail_hostname ezjail_rootdir ezjail_image ezjail_imagetype ezjail_ip ezjail_id ezjail_attached ezjail_device
ezjail_safename=`echo -n "${ezjail_name}" | tr -c [:alnum:] _`
ezjail_safename=`echo -n "${ezjail_name}" | tr -c '[:alnum:]' _`
[ -e ${ezjail_jailcfgs}/${ezjail_safename} ] && ezjail_config=${ezjail_jailcfgs}/${ezjail_safename}
[ -e ${ezjail_jailcfgs}/${ezjail_safename}.norun ] && ezjail_config=${ezjail_jailcfgs}/${ezjail_safename}.norun
@ -210,7 +210,7 @@ create)
# check for a sane image size and split it up in blocks
if [ "${ezjail_imagesize}" ]; then
_val=`echo "${ezjail_imagesize}"|tr A-Z a-z|sed -Ees:g:km:g -es:m:kk:g -es:k:*2b:g -es:b:*128w:g -es:w:*4\ :g -e"s:(^|[^0-9])0x:\1\0X:g" -ey:x:*:|bc`
_val=`echo "${ezjail_imagesize}"|tr GMKBWX gmkbwx|sed -Ees:g:km:g -es:m:kk:g -es:k:*2b:g -es:b:*128w:g -es:w:*4\ :g -e"s:(^|[^0-9])0x:\1\0X:g" -ey:x:*:|bc`
[ $? -eq 0 -a ${_val} -gt 0 ] || exerr "Error: The image size you specified is somehow incomprehensible (you specified ${ezjail_imagesize})."
ezjail_imageblockcount=`echo ${_val} / 1048576 | bc`
ezjail_imagerestbytes=`echo ${_val} % 1048576 | bc`
@ -227,8 +227,8 @@ create)
# was done intentionally to permit foo.com style directory names, however,
# the jail name will be foo_com in most scripts
ezjail_hostname=`echo -n ${ezjail_name} | tr /~ __`
ezjail_safename=`echo -n "${ezjail_name}" | tr -c [:alnum:] _`
ezjail_hostname=`echo -n ${ezjail_name} | tr '/~' '__'`
ezjail_safename=`echo -n "${ezjail_name}" | tr -c '[:alnum:]' _`
ezjail_rootdir=${ezjail_rootdir:-"${ezjail_jaildir}/${ezjail_hostname}"}
ezjail_config=${ezjail_jailcfgs}/${ezjail_safename}

View File

@ -41,7 +41,7 @@ do_cmd()
# If a jail list is given on command line, process it
# If not, fetch it from our config directory
if [ -n "$*" ]; then
ezjail_list=`echo -n $* | tr -c "[:alnum:] " _`
ezjail_list=`echo -n $* | tr -c '[:alnum:] ' '_'`
ezjail_fromrc="NO"
else
ezjail_list=`find -X ${ezjail_prefix}/etc/ezjail/ 2> /dev/null | xargs rcorder | xargs basename -a`