added yum-2.6.0-chroot.patch
[util-vserver.git] / util-vserver / scripts / chcontext
index a217646..9fa67cd 100755 (executable)
@@ -140,6 +140,9 @@ create_cmd=( $_VCONTEXT --create --silentexist
 
 chain_cmd=()
 
+old_IFS=$IFS
+IFS=,$IFS
+
 test -z "$OPT_DOMAINNAME$OPT_HOSTNAME" || \
     chain_cmd=( "${chain_cmd[@]}"
                --
@@ -150,8 +153,8 @@ test -z "$OPT_DOMAINNAME$OPT_HOSTNAME" || \
 chain_cmd=( "${chain_cmd[@]}"
                --
                $_VATTRIBUTE --set
-               ${OPT_CAPS:+--bcap "${OPT_CAPS[@]}"}
-               ${OPT_FLAGS:+--flag "${OPT_FLAGS[@]}"}
+               ${OPT_CAPS:+--bcap "${OPT_CAPS[*]}"}
+               ${OPT_FLAGS:+--flag "${OPT_FLAGS[*]}"}
                ${OPT_SECURE:+--secure} )
                
 migrate_cmd=( $_VCONTEXT
@@ -159,9 +162,15 @@ migrate_cmd=( $_VCONTEXT
              ${OPT_DISCONNECT:+--disconnect}
              $OPT_INITPID )
 
-"${create_cmd[@]}" "${chain_cmd[@]}" -- \
-    "${migrate_cmd[@]}" --endsetup --migrate-self -- "$@"
-rc=$?
+IFS=$old_IFS
+
+if test -z "$OPT_CTX" || $_VSERVER_INFO -q "$OPT_CTX" XIDTYPE static; then
+    "${create_cmd[@]}" "${chain_cmd[@]}" -- \
+       "${migrate_cmd[@]}" --endsetup --migrate-self -- "$@"
+    rc=$?
+else
+    rc=254
+fi
 
 test "$rc" -ne 254 || exec "${migrate_cmd[@]}" --xid "$OPT_CTX" --migrate -- "$@"
 exit $rc