create_cmd=( $_VCONTEXT --create
${OPT_SILENT:+--silent}
- ${OPT_CTX:+--xid "$OPT_CTX"}
- -- )
-
-chain_cmd=( $_VATTRIBUTE -s
- ${OPT_CAPS:+--cap "${OPT_CAPS[@]}"}
- ${OPT_FLAGS:+--flag "${OPT_FLAGS[@]}"}
- ${OPT_SECURE:+--secure}
- --
- $_VUNAME -s
- ${OPT_DOMAINNAME:+--domainname "$OPT_DOMAINNAME"}
- ${OPT_HOSTNAME:+--nodename "$OPT_HOSTNAME"}
- -- )
+ ${OPT_CTX:+--xid "$OPT_CTX"} )
+
+chain_cmd=()
+test -z "$OPT_CAPS$OPT_FLAGS$OPT_SECURE" || \
+ chain_cmd=( "${chain_cmd[@]}"
+ --
+ $_VATTRIBUTE --set
+ ${OPT_CAPS:+--cap "${OPT_CAPS[@]}"}
+ ${OPT_FLAGS:+--flag "${OPT_FLAGS[@]}"}
+ ${OPT_SECURE:+--secure} )
+
+test -z "$OPT_DOMAINNAME$OPT_HOSTNAME" || \
+ chain_cmd=( "${chain_cmd[@]}"
+ --
+ $_VUNAME -s
+ ${OPT_DOMAINNAME:+--domainname "$OPT_DOMAINNAME"}
+ ${OPT_HOSTNAME:+--nodename "$OPT_HOSTNAME"} )
migrate_cmd=( $_VCONTEXT --migrate-self
${OPT_SILENT:+--silent}
${OPT_DISCONNECT:+--disconnect}
-- "$@" )
-"${create_cmd[@]}" "${chain_cmd[@]}" "${migrate_cmd[@]}"
+"${create_cmd[@]}" "${chain_cmd[@]}" -- "${migrate_cmd[@]}"
rc=$?
test "$rc" -ne 254 || exec "${migrate_cmd[@]}"