From 4c010b466d3b1b152b16ac1e980aeca6c867861b Mon Sep 17 00:00:00 2001 From: Jeremy Date: Fri, 16 Jan 2015 10:43:44 -0700 Subject: [PATCH 1/3] Bump version to 1.2.3.dev1 --- gns3server/version.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gns3server/version.py b/gns3server/version.py index ee8422d4..0fc13cfe 100644 --- a/gns3server/version.py +++ b/gns3server/version.py @@ -23,5 +23,5 @@ # or negative for a release candidate or beta (after the base version # number has been incremented) -__version__ = "1.2.2" -__version_info__ = (1, 2, 2, 0) +__version__ = "1.2.3.dev1" +__version_info__ = (1, 2, 3, 0) From 379378973267d68ffa2533fc3241a418d0f5bd1e Mon Sep 17 00:00:00 2001 From: Jeremy Date: Fri, 16 Jan 2015 17:44:07 -0700 Subject: [PATCH 2/3] Fixes broken -netdev + legacy virtio in Qemu support. --- gns3server/modules/qemu/qemu_vm.py | 61 ++++++++++++++++++------------ 1 file changed, 36 insertions(+), 25 deletions(-) diff --git a/gns3server/modules/qemu/qemu_vm.py b/gns3server/modules/qemu/qemu_vm.py index 5ae6fad7..1b271694 100644 --- a/gns3server/modules/qemu/qemu_vm.py +++ b/gns3server/modules/qemu/qemu_vm.py @@ -999,18 +999,18 @@ class QemuVM(object): if self._legacy_networking: self._control_vm("host_net_remove {} gns3-{}".format(adapter_id, adapter_id)) self._control_vm("host_net_add udp vlan={},name=gns3-{},sport={},dport={},daddr={}".format(adapter_id, - adapter_id, - nio.lport, - nio.rport, - nio.rhost)) + adapter_id, + nio.lport, + nio.rport, + nio.rhost)) else: - self._control_vm("host_net_remove {} gns3-{}".format(adapter_id, adapter_id)) - self._control_vm("host_net_add socket vlan={},name=gns3-{},udp={}:{},localaddr={}:{}".format(adapter_id, - adapter_id, - nio.rhost, - nio.rport, - self._host, - nio.lport)) + #FIXME: does it work? very undocumented feature... + self._control_vm("netdev_del gns3-{}".format(adapter_id)) + self._control_vm("netdev_add socket,id=gns3-{},udp={}:{},localaddr={}:{}".format(adapter_id, + nio.rhost, + nio.rport, + self._host, + nio.lport)) adapter.add_nio(0, nio) log.info("QEMU VM {name} [id={id}]: {nio} added to adapter {adapter_id}".format(name=self._name, @@ -1035,8 +1035,13 @@ class QemuVM(object): if self.is_running(): # dynamically disable the QEMU VM adapter - self._control_vm("host_net_remove {} gns3-{}".format(adapter_id, adapter_id)) - self._control_vm("host_net_add user vlan={},name=gns3-{}".format(adapter_id, adapter_id)) + if self._legacy_networking: + self._control_vm("host_net_remove {} gns3-{}".format(adapter_id, adapter_id)) + self._control_vm("host_net_add user vlan={},name=gns3-{}".format(adapter_id, adapter_id)) + else: + #FIXME: does it work? very undocumented feature... + self._control_vm("netdev_del gns3-{}".format(adapter_id)) + self._control_vm("netdev_add user,id=gns3-{}".format(adapter_id)) nio = adapter.get_nio(0) adapter.remove_nio(0) @@ -1192,24 +1197,30 @@ class QemuVM(object): for adapter in self._ethernet_adapters: #TODO: let users specify a base mac address mac = "00:00:ab:%02x:%02x:%02d" % (random.randint(0x00, 0xff), random.randint(0x00, 0xff), adapter_id) - network_options.extend(["-net", "nic,vlan={},macaddr={},model={}".format(adapter_id, mac, self._adapter_type)]) + if self._legacy_networking: + network_options.extend(["-net", "nic,vlan={},macaddr={},model={}".format(adapter_id, mac, self._adapter_type)]) + else: + network_options.extend(["-device", "{},mac={},netdev=gns3-{}".format(self._adapter_type, mac, adapter_id)]) + nio = adapter.get_nio(0) if nio and isinstance(nio, NIO_UDP): if self._legacy_networking: network_options.extend(["-net", "udp,vlan={},name=gns3-{},sport={},dport={},daddr={}".format(adapter_id, - adapter_id, - nio.lport, - nio.rport, - nio.rhost)]) + adapter_id, + nio.lport, + nio.rport, + nio.rhost)]) else: - network_options.extend(["-net", "socket,vlan={},name=gns3-{},udp={}:{},localaddr={}:{}".format(adapter_id, - adapter_id, - nio.rhost, - nio.rport, - self._host, - nio.lport)]) + network_options.extend(["-netdev", "socket,id=gns3-{},udp={}:{},localaddr={}:{}".format(adapter_id, + nio.rhost, + nio.rport, + self._host, + nio.lport)]) else: - network_options.extend(["-net", "user,vlan={},name=gns3-{}".format(adapter_id, adapter_id)]) + if self._legacy_networking: + network_options.extend(["-net", "user,vlan={},name=gns3-{}".format(adapter_id, adapter_id)]) + else: + network_options.extend(["-netdev", "user,id=gns3-{}".format(adapter_id)]) adapter_id += 1 return network_options From c47081f36307bbe066303850effadbfca2277804 Mon Sep 17 00:00:00 2001 From: Jeremy Date: Fri, 16 Jan 2015 17:58:09 -0700 Subject: [PATCH 3/3] Bump version to 1.2.3 --- gns3server/version.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gns3server/version.py b/gns3server/version.py index 0fc13cfe..7c1b3d38 100644 --- a/gns3server/version.py +++ b/gns3server/version.py @@ -23,5 +23,5 @@ # or negative for a release candidate or beta (after the base version # number has been incremented) -__version__ = "1.2.3.dev1" +__version__ = "1.2.3" __version_info__ = (1, 2, 3, 0)