[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH for-xen-4.5] xl: use nic global default values in network-attach
Introduce a new static function that will be used to set the initial nic config based on the global defaults. This fixes a bug caused by network-attach not using the default values set in xl.conf(5). Signed-off-by: Roger Pau Monnà <roger.pau@xxxxxxxxxx> Cc: Ian Jackson <ian.jackson@xxxxxxxxxxxxx> Cc: Ian Campbell <ian.campbell@xxxxxxxxxx> Cc: Wei Liu <wei.liu2@xxxxxxxxxx> --- tools/libxl/xl_cmdimpl.c | 47 +++++++++++++++++++++++++++-------------------- 1 file changed, 27 insertions(+), 20 deletions(-) diff --git a/tools/libxl/xl_cmdimpl.c b/tools/libxl/xl_cmdimpl.c index d205f96..94fb535 100644 --- a/tools/libxl/xl_cmdimpl.c +++ b/tools/libxl/xl_cmdimpl.c @@ -506,6 +506,30 @@ static void parse_vif_rate(XLU_Config **config, const char *rate, } } +static void set_default_nic_values(libxl_device_nic *nic) +{ + + if (default_vifscript) { + free(nic->script); + nic->script = strdup(default_vifscript); + } + + if (default_bridge) { + free(nic->bridge); + nic->bridge = strdup(default_bridge); + } + + if (default_gatewaydev) { + free(nic->gatewaydev); + nic->gatewaydev = strdup(default_gatewaydev); + } + + if (default_vifbackend) { + free(nic->backend_domname); + nic->backend_domname = strdup(default_vifbackend); + } +} + static void split_string_into_string_list(const char *str, const char *delim, libxl_string_list *psl) @@ -1354,26 +1378,7 @@ static void parse_config_data(const char *config_source, nic = d_config->nics + d_config->num_nics; libxl_device_nic_init(nic); nic->devid = d_config->num_nics; - - if (default_vifscript) { - free(nic->script); - nic->script = strdup(default_vifscript); - } - - if (default_bridge) { - free(nic->bridge); - nic->bridge = strdup(default_bridge); - } - - if (default_gatewaydev) { - free(nic->gatewaydev); - nic->gatewaydev = strdup(default_gatewaydev); - } - - if (default_vifbackend) { - free(nic->backend_domname); - nic->backend_domname = strdup(default_vifbackend); - } + set_default_nic_values(nic); p = strtok(buf2, ","); if (!p) @@ -6005,6 +6010,8 @@ int main_networkattach(int argc, char **argv) } libxl_device_nic_init(&nic); + set_default_nic_values(&nic); + for (argv += optind+1, argc -= optind+1; argc > 0; ++argv, --argc) { if (MATCH_OPTION("type", *argv, oparg)) { if (!strcmp("vif", oparg)) { -- 1.9.3 (Apple Git-50) _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |