Author: dteske
Date: Fri Feb 12 02:50:36 2016
New Revision: 295555
URL: https://svnweb.freebsd.org/changeset/base/295555

Log:
  Interpret vnet_interface/vnet.interface as array

Modified:
  head/etc/rc.d/jail

Modified: head/etc/rc.d/jail
==============================================================================
--- head/etc/rc.d/jail  Fri Feb 12 01:41:40 2016        (r295554)
+++ head/etc/rc.d/jail  Fri Feb 12 02:50:36 2016        (r295555)
@@ -33,7 +33,8 @@ need_dad_wait=
 #      set it to $param.  If not defined, $defval is used.
 #      When $num is [0-9]*, ${jail_$jv_$name$num} are looked up and
 #      $param is set by using +=.  $num=0 is optional (params may start at 1).
-#      When $num is YN or NY, the value is interpret as boolean.
+#      When $num is YN or NY, the value is interpreted as boolean.
+#      When $num is @, the value is interpreted as an array separted by IFS.
 extract_var()
 {
        local i _jv _name _param _num _def _name1 _name2
@@ -78,6 +79,20 @@ extract_var()
                        i=$(($i + 1))
                done
        ;;
+       @)
+               _name1=jail_${_jv}_${_name}
+               _name2=jail_${_name}
+               eval _tmpargs=\"\${$_name1:-\${$_name2:-$_def}}\"
+               set -- $_tmpargs
+               if [ $# -gt 0 ]; then
+                       echo -n "       $_param = "
+                       while [ $# -gt 1 ]; do
+                               echo -n "\"$1\", "
+                               shift
+                       done
+                       echo "\"$1\";"
+               fi
+       ;;
        *)
                _name1=jail_${_jv}_${_name}
                _name2=jail_${_name}
@@ -190,7 +205,7 @@ parse_options()
                            allow.raw_sockets NY YES
                else
                        echo "  vnet;"
-                       extract_var $_jv vnet_interface vnet.interface - ""
+                       extract_var $_jv vnet_interface vnet.interface @ ""
                fi
 
                echo "  exec.clean;"
_______________________________________________
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to