diff --git a/gns3server/api/routes/controller/links.py b/gns3server/api/routes/controller/links.py index be6865fdb..8c438de28 100644 --- a/gns3server/api/routes/controller/links.py +++ b/gns3server/api/routes/controller/links.py @@ -324,17 +324,19 @@ async def get_iface(link: Link = Depends(dep_link)) -> dict[str, schemas.UdpPort port_type = port.get("type", "") if "udp" in port_type.lower(): ifaces_info[node.id] = { + "type": f"{port_type}", "rhost": port["rhost"], "lport": port["lport"], "rport": port["rport"], } else: ifaces_info[node.id] = { + "type": f"{port_type}", "interface": port["interface"], } if not ifaces_info: raise ControllerError( - "Link not connected to Cloud/NAT with UDP tunnel" + "Link not connected to Cloud/NAT" ) return ifaces_info diff --git a/gns3server/schemas/controller/links.py b/gns3server/schemas/controller/links.py index 15fa2650e..ac82c0d76 100644 --- a/gns3server/schemas/controller/links.py +++ b/gns3server/schemas/controller/links.py @@ -102,6 +102,7 @@ class UdpPort(BaseModel): lport: int rhost: str rport: int + type: str class EthernetPort(BaseModel): @@ -110,3 +111,4 @@ class EthernetPort(BaseModel): """ interface: str + type: str