mirror of
https://github.com/GNS3/gns3-server.git
synced 2026-11-03 22:11:14 +02:00
Use black with -l 120 param.
This commit is contained in:
1 parent
f928738bd5
commit
c021e21309
194 files changed
+6034
-4564
No files matched your search
@@ -23,6 +23,7 @@ import html
|
||||
from .controller_error import ControllerError, ControllerNotFoundError
|
||||
|
||||
import logging
|
||||
|
||||
log = logging.getLogger(__name__)
|
||||
|
||||
|
||||
@@ -31,76 +32,35 @@ FILTERS = [
|
||||
"type": "frequency_drop",
|
||||
"name": "Frequency drop",
|
||||
"description": "It will drop everything with a -1 frequency, drop every Nth packet with a positive frequency, or drop nothing",
|
||||
"parameters": [
|
||||
{
|
||||
"name": "Frequency",
|
||||
"minimum": -1,
|
||||
"maximum": 32767,
|
||||
"type": "int",
|
||||
"unit": "th packet"
|
||||
}
|
||||
]
|
||||
"parameters": [{"name": "Frequency", "minimum": -1, "maximum": 32767, "type": "int", "unit": "th packet"}],
|
||||
},
|
||||
{
|
||||
"type": "packet_loss",
|
||||
"name": "Packet loss",
|
||||
"description": "The percentage represents the chance for a packet to be lost",
|
||||
"parameters": [
|
||||
{
|
||||
"name": "Chance",
|
||||
"minimum": 0,
|
||||
"maximum": 100,
|
||||
"type": "int",
|
||||
"unit": "%"
|
||||
}
|
||||
]
|
||||
"parameters": [{"name": "Chance", "minimum": 0, "maximum": 100, "type": "int", "unit": "%"}],
|
||||
},
|
||||
{
|
||||
"type": "delay",
|
||||
"name": "Delay",
|
||||
"description": "Delay packets in milliseconds. You can add jitter in milliseconds (+/-) of the delay",
|
||||
"parameters": [
|
||||
{
|
||||
"name": "Latency",
|
||||
"minimum": 0,
|
||||
"maximum": 32767,
|
||||
"unit": "ms",
|
||||
"type": "int"
|
||||
},
|
||||
{
|
||||
"name": "Jitter (-/+)",
|
||||
"minimum": 0,
|
||||
"maximum": 32767,
|
||||
"unit": "ms",
|
||||
"type": "int"
|
||||
}
|
||||
]
|
||||
{"name": "Latency", "minimum": 0, "maximum": 32767, "unit": "ms", "type": "int"},
|
||||
{"name": "Jitter (-/+)", "minimum": 0, "maximum": 32767, "unit": "ms", "type": "int"},
|
||||
],
|
||||
},
|
||||
{
|
||||
"type": "corrupt",
|
||||
"name": "Corrupt",
|
||||
"description": "The percentage represents the chance for a packet to be corrupted",
|
||||
"parameters": [
|
||||
{
|
||||
"name": "Chance",
|
||||
"minimum": 0,
|
||||
"maximum": 100,
|
||||
"unit": "%",
|
||||
"type": "int"
|
||||
}
|
||||
]
|
||||
"parameters": [{"name": "Chance", "minimum": 0, "maximum": 100, "unit": "%", "type": "int"}],
|
||||
},
|
||||
{
|
||||
"type": "bpf",
|
||||
"name": "Berkeley Packet Filter (BPF)",
|
||||
"description": "This filter will drop any packet matching a BPF expression. Put one expression per line",
|
||||
"parameters": [
|
||||
{
|
||||
"name": "Filters",
|
||||
"type": "text"
|
||||
}
|
||||
]
|
||||
}
|
||||
"parameters": [{"name": "Filters", "type": "text"}],
|
||||
},
|
||||
]
|
||||
|
||||
|
||||
@@ -193,7 +153,7 @@ class Link:
|
||||
else:
|
||||
new_values.append(int(value))
|
||||
values = new_values
|
||||
if len(values) != 0 and values[0] != 0 and values[0] != '':
|
||||
if len(values) != 0 and values[0] != 0 and values[0] != "":
|
||||
new_filters[filter] = values
|
||||
|
||||
if new_filters != self.filters:
|
||||
@@ -238,28 +198,32 @@ class Link:
|
||||
|
||||
if node.node_type in ["nat", "cloud"]:
|
||||
if other_node["node"].node_type in ["nat", "cloud"]:
|
||||
raise ControllerError("Connecting a {} to a {} is not allowed".format(other_node["node"].node_type, node.node_type))
|
||||
raise ControllerError(
|
||||
"Connecting a {} to a {} is not allowed".format(other_node["node"].node_type, node.node_type)
|
||||
)
|
||||
|
||||
# Check if user is not connecting serial => ethernet
|
||||
other_port = other_node["node"].get_port(other_node["adapter_number"], other_node["port_number"])
|
||||
if other_port is None:
|
||||
raise ControllerNotFoundError("Port {}/{} for {} not found".format(other_node["adapter_number"], other_node["port_number"], other_node["node"].name))
|
||||
raise ControllerNotFoundError(
|
||||
"Port {}/{} for {} not found".format(
|
||||
other_node["adapter_number"], other_node["port_number"], other_node["node"].name
|
||||
)
|
||||
)
|
||||
if port.link_type != other_port.link_type:
|
||||
raise ControllerError(f"Connecting a {other_port.link_type} interface to a {port.link_type} interface is not allowed")
|
||||
raise ControllerError(
|
||||
f"Connecting a {other_port.link_type} interface to a {port.link_type} interface is not allowed"
|
||||
)
|
||||
|
||||
if label is None:
|
||||
label = {
|
||||
"text": html.escape(f"{adapter_number}/{port_number}"),
|
||||
"style": "font-family: TypeWriter;font-size: 10.0;font-weight: bold;fill: #000000;fill-opacity: 1.0;"
|
||||
"style": "font-family: TypeWriter;font-size: 10.0;font-weight: bold;fill: #000000;fill-opacity: 1.0;",
|
||||
}
|
||||
|
||||
self._nodes.append({
|
||||
"node": node,
|
||||
"adapter_number": adapter_number,
|
||||
"port_number": port_number,
|
||||
"port": port,
|
||||
"label": label
|
||||
})
|
||||
self._nodes.append(
|
||||
{"node": node, "adapter_number": adapter_number, "port_number": port_number, "port": port, "label": label}
|
||||
)
|
||||
|
||||
if len(self._nodes) == 2:
|
||||
await self.create()
|
||||
@@ -345,12 +309,16 @@ class Link:
|
||||
node_id = self.capture_node["node"].id
|
||||
adapter_number = self.capture_node["adapter_number"]
|
||||
port_number = self.capture_node["port_number"]
|
||||
url = "/projects/{project_id}/{node_type}/nodes/{node_id}/adapters/{adapter_number}/" \
|
||||
"ports/{port_number}/capture/stream".format(project_id=self.project.id,
|
||||
node_type=node_type,
|
||||
node_id=node_id,
|
||||
adapter_number=adapter_number,
|
||||
port_number=port_number)
|
||||
url = (
|
||||
"/projects/{project_id}/{node_type}/nodes/{node_id}/adapters/{adapter_number}/"
|
||||
"ports/{port_number}/capture/stream".format(
|
||||
project_id=self.project.id,
|
||||
node_type=node_type,
|
||||
node_id=node_id,
|
||||
adapter_number=adapter_number,
|
||||
port_number=port_number,
|
||||
)
|
||||
)
|
||||
|
||||
return compute._getUrl(url)
|
||||
|
||||
@@ -365,12 +333,14 @@ class Link:
|
||||
:returns: File name for a capture on this link
|
||||
"""
|
||||
|
||||
capture_file_name = "{}_{}-{}_to_{}_{}-{}".format(self._nodes[0]["node"].name,
|
||||
self._nodes[0]["adapter_number"],
|
||||
self._nodes[0]["port_number"],
|
||||
self._nodes[1]["node"].name,
|
||||
self._nodes[1]["adapter_number"],
|
||||
self._nodes[1]["port_number"])
|
||||
capture_file_name = "{}_{}-{}_to_{}_{}-{}".format(
|
||||
self._nodes[0]["node"].name,
|
||||
self._nodes[0]["adapter_number"],
|
||||
self._nodes[0]["port_number"],
|
||||
self._nodes[1]["node"].name,
|
||||
self._nodes[1]["adapter_number"],
|
||||
self._nodes[1]["port_number"],
|
||||
)
|
||||
return re.sub(r"[^0-9A-Za-z_-]", "", capture_file_name) + ".pcap"
|
||||
|
||||
@property
|
||||
@@ -379,7 +349,7 @@ class Link:
|
||||
|
||||
@property
|
||||
def nodes(self):
|
||||
return [node['node'] for node in self._nodes]
|
||||
return [node["node"] for node in self._nodes]
|
||||
|
||||
@property
|
||||
def capturing(self):
|
||||
@@ -425,16 +395,18 @@ class Link:
|
||||
:returns: None if no node support filtering else the node
|
||||
"""
|
||||
for node in self._nodes:
|
||||
if node["node"].node_type in ('vpcs',
|
||||
'traceng',
|
||||
'vmware',
|
||||
'dynamips',
|
||||
'qemu',
|
||||
'iou',
|
||||
'cloud',
|
||||
'nat',
|
||||
'virtualbox',
|
||||
'docker'):
|
||||
if node["node"].node_type in (
|
||||
"vpcs",
|
||||
"traceng",
|
||||
"vmware",
|
||||
"dynamips",
|
||||
"qemu",
|
||||
"iou",
|
||||
"cloud",
|
||||
"nat",
|
||||
"virtualbox",
|
||||
"docker",
|
||||
):
|
||||
return node["node"]
|
||||
return None
|
||||
|
||||
@@ -452,19 +424,16 @@ class Link:
|
||||
"""
|
||||
res = []
|
||||
for side in self._nodes:
|
||||
res.append({
|
||||
"node_id": side["node"].id,
|
||||
"adapter_number": side["adapter_number"],
|
||||
"port_number": side["port_number"],
|
||||
"label": side["label"]
|
||||
})
|
||||
res.append(
|
||||
{
|
||||
"node_id": side["node"].id,
|
||||
"adapter_number": side["adapter_number"],
|
||||
"port_number": side["port_number"],
|
||||
"label": side["label"],
|
||||
}
|
||||
)
|
||||
if topology_dump:
|
||||
return {
|
||||
"nodes": res,
|
||||
"link_id": self._id,
|
||||
"filters": self._filters,
|
||||
"suspend": self._suspended
|
||||
}
|
||||
return {"nodes": res, "link_id": self._id, "filters": self._filters, "suspend": self._suspended}
|
||||
return {
|
||||
"nodes": res,
|
||||
"link_id": self._id,
|
||||
@@ -475,5 +444,5 @@ class Link:
|
||||
"capture_compute_id": self.capture_compute_id,
|
||||
"link_type": self._link_type,
|
||||
"filters": self._filters,
|
||||
"suspend": self._suspended
|
||||
"suspend": self._suspended,
|
||||
}
|
||||
Reference in new issue
Block a user