diff --git a/gns3server/controller/topology.py b/gns3server/controller/topology.py index c188e9a9..726ef519 100644 --- a/gns3server/controller/topology.py +++ b/gns3server/controller/topology.py @@ -331,6 +331,14 @@ def _convert_1_3_later(topo, topo_path): node["symbol"] = ":/symbols/vbox_guest.svg" elif old_node["type"] == "IOUDevice": node["node_type"] = "iou" + node["port_name_format"] = old_node.get("port_name_format", "Ethernet{segment0}/{port0}") + node["port_segment_size"] = int(old_node.get("port_segment_size", "4")) + if node["symbol"] is None: + if "l2" in node["properties"].get("path", ""): + node["symbol"] = ":/symbols/multilayer_switch.svg" + else: + node["symbol"] = ":/symbols/router.svg" + elif old_node["type"] == "Cloud": old_node["ports"] = _create_cloud(node, old_node, ":/symbols/cloud.svg") elif old_node["type"] == "Host": diff --git a/tests/topologies/1_5_iou/after/1_5_iou.gns3 b/tests/topologies/1_5_iou/after/1_5_iou.gns3 index f45baa1c..9e7f6b0a 100644 --- a/tests/topologies/1_5_iou/after/1_5_iou.gns3 +++ b/tests/topologies/1_5_iou/after/1_5_iou.gns3 @@ -30,8 +30,8 @@ "name": "IOU1", "node_id": "aaeb2288-a7d8-42a9-b9d8-c42ab464a390", "node_type": "iou", - "port_name_format": "Ethernet{0}", - "port_segment_size": 0, + "port_name_format": "Ethernet{segment0}/{port0}", + "port_segment_size": 4, "first_port_name": null, "properties": { "ethernet_adapters": 2,