Commit Graph

81 Commits

Author SHA1 Message Date
grossmj
24bfc205db
Symbolic links support for project export/import 2024-10-19 15:49:23 +10:00
John Fleming
763ef24108 Address the telnet console bug. Add wait_for for drain() call. If we're stuck on drain then the buffer isn't getting emptied. 5 seconds after drain() blocks, exception will be thrown and client will be removed from connection table and will no longer be a problem. 2024-02-02 22:09:31 -05:00
John Fleming
54abf85523
Update telnet_server.py
Maybe use the correct object name this time for the socket objects.
2024-01-25 01:41:57 -05:00
John Fleming
ac86717bc0
Update telnet_server.py
Set tcp keepalive timers to 60 seconds. Seems to default to 2 hours on ubuntu 22. Most firewalls will age out an idle tcp session at 1 hour.

Will not address telnet console failing after a tcp session has failed (TimeoutError).
2024-01-23 13:15:17 -05:00
grossmj
af2fc8c111 Use proc.communicate() when checking for subprocess output
As recommended in https://docs.python.org/3/library/asyncio-subprocess.html#asyncio.subprocess.Process.stderr
2023-05-14 13:58:50 +08:00
grossmj
30c85703c8 Attempt to fix "cannot reopen console". Ref #2182 2023-02-13 19:32:44 +08:00
grossmj
a7d19fd89a Fix StreamWriter doesn't have the wait_closed() method in Python3.6. Fixes #2170 2023-01-20 13:14:57 +08:00
grossmj
c57b0cbb53 Find Dynamips version before hypervisor launch and do not require Dynamips v0.2.23 2023-01-16 18:04:46 +08:00
grossmj
ae200d9add Add Trusted Platform Module (TPM) support for Qemu VMs 2023-01-04 12:13:19 +08:00
grossmj
b3a6b9173b Fix reset console. Fixes #1619 2022-12-31 09:43:17 +08:00
grossmj
1148dbc48e Fix issue when calling reset_console with running VPCS and Qemu nodes. Ref #1619 2022-12-30 20:54:37 +08:00
grossmj
f3b8f43689 Fix creating asyncio task in Python 3.6 2022-10-30 22:21:28 +08:00
grossmj
2d74d1ad94 Fix tests for Python 3.11 2022-10-30 22:07:44 +08:00
grossmj
8aada49414 Some fixes for early support for Python3.10
The loop parameter has been removed from most of asyncio‘s high-level API following deprecation in Python 3.8.
2021-08-15 15:25:33 +09:30
grossmj
af22fb8e98 Comment unused code that causes issue with flake8 2020-06-26 18:47:31 +09:30
grossmj
f498ab06b4 Wait longer for x11 socket file to be created. Ref #1761 2020-06-10 20:37:13 +09:30
grossmj
5b59a09e8d Deprecate running with Python 3.5 2020-05-19 16:14:58 +09:30
grossmj
a98fc2d308 Python3.8 support. Ref https://github.com/GNS3/gns3-gui/issues/2895 2019-11-11 12:44:31 +08:00
grossmj
6db8cecda5 Merge 2.1 into 2.2 2019-04-13 18:39:06 +07:00
grossmj
cc1980ac1c Fix broken embedded console for Ethernet switch. Fixes #1574 2019-04-11 17:57:47 +07:00
grossmj
1f1d93d078 Deactivate the embedded shell for Ethernet switch. Ref #1424 #1556 2019-03-20 16:23:30 +08:00
grossmj
52bfa636c1 Project duplication support. 2019-02-27 17:57:07 +07:00
grossmj
a8990c9e89 Non blocking project exportation. 2019-02-26 15:55:07 +07:00
grossmj
bb284d082a Set socket options SO_KEEPALIVE and TCP_NODELAY for embedded Telnet server. Ref #1335 2019-01-12 16:50:15 +07:00
grossmj
56412b35e0 Merge branch '2.1' into 2.2
# Conflicts:
#	gns3server/compute/docker/docker_vm.py
#	gns3server/utils/asyncio/telnet_server.py
2018-11-30 12:38:02 +08:00
grossmj
60ac6d2dfe Telnet console resize support for Docker VM. 2018-11-27 15:06:56 +07:00
grossmj
76af98404a Drop Python 3.4 and switch to async / await syntax for asyncio. Fixes #1425 2018-10-15 17:05:49 +07:00
grossmj
9de13c570c Merge branch '2.1' into 2.2
# Conflicts:
#	gns3server/compute/builtin/nodes/cloud.py
#	gns3server/compute/docker/docker_vm.py
#	gns3server/compute/dynamips/nodes/ethernet_switch.py
#	gns3server/compute/iou/iou_vm.py
#	gns3server/compute/qemu/qemu_vm.py
#	gns3server/compute/virtualbox/virtualbox_vm.py
#	gns3server/compute/vmware/vmware_vm.py
#	gns3server/controller/__init__.py
#	gns3server/version.py
#	gns3server/web/web_server.py
2018-10-04 15:44:13 +02:00
grossmj
4d95e0b51f Catch some exceptions. 2018-09-28 15:04:38 +02:00
grossmj
4021a13651 Catch exceptions in various locations to fix small issues reported by Sentry. 2018-09-06 09:49:12 +02:00
grossmj
33e8710495 Merge branch '2.1' into 2.2
# Conflicts:
#	gns3server/compute/docker/docker_vm.py
#	gns3server/controller/compute.py
#	gns3server/controller/gns3vm/__init__.py
#	gns3server/controller/link.py
#	gns3server/controller/project.py
#	gns3server/handlers/api/controller/project_handler.py
#	gns3server/handlers/api/controller/server_handler.py
#	gns3server/utils/asyncio/__init__.py
#	gns3server/utils/asyncio/telnet_server.py
#	gns3server/version.py
#	gns3server/web/web_server.py
#	tests/compute/qemu/test_qemu_vm.py
2018-08-29 15:57:54 +07:00
grossmj
814526ba26 Add missing coroutine decorator Ref https://github.com/GNS3/gns3-gui/issues/2566 2018-08-25 16:00:40 +07:00
grossmj
902de3dd47 Refactor asyncio locking system for Python 3.7 support. Ref https://github.com/GNS3/gns3-gui/issues/2566 Ref https://github.com/GNS3/gns3-gui/issues/2568 2018-08-25 14:10:47 +07:00
grossmj
3560cda06c Use asyncio.ensure_future() instead of asyncio.async() with conservative approach to support Python < 3.4.4. Fixes https://github.com/GNS3/gns3-gui/issues/2566 2018-08-24 18:57:18 +07:00
grossmj
b7f9b865c8 Optimize appliance templates update from GitHub repository by only downloading when the repository
has been updated. Ref https://github.com/GNS3/gns3-gui/issues/2490
2018-08-21 16:26:07 +07:00
ziajka
1582ac3195 Merge branch '2.2' into async-md5-calcs 2018-01-29 13:01:45 +01:00
ziajka
eeae07e783 Conservative approach to supported versions of Python 3.4 and asyncio.ensure_future, Ref. #1269 2018-01-29 12:13:20 +01:00
ziajka
dc377165f2 Cancellable md5sum calculation on thread, Ref. gui#2239 2018-01-29 10:18:13 +01:00
ziajka
d9a0ec9ff3 Replace asyncio.async with ensure_future because of deprecation, Fixes: #1269 2018-01-24 11:11:53 +01:00
ziajka
860ca3b35d Remotely close telnet console. Ref #2330 2017-11-20 15:28:07 +01:00
ziajka
96a0b52cf8 EthernetSwitch closing connections, Ref: gui/#2330 2017-11-20 13:51:07 +01:00
grossmj
1524493c33 Fix IOU detection of layer 1 keepalive support. Fixes #1183. 2017-10-12 23:32:45 +08:00
ziajka
807bea40d4 Fixes running switch console inside PyCharm terminal (Ref. #1172) 2017-08-29 12:28:53 +02:00
ziajka
4e3eee33fc Windows console bugfix tests 2017-08-29 10:08:10 +02:00
ziajka
86bd7b6058 Added missing corutine flag, fixes #1145 2017-07-26 11:37:09 +02:00
ziajka
ac508435c3 History support for console and telnet application, Fixes: #1083
Arrows UP/DOWN for telnet, Ref. #1083

Typo, Ref. #1083

Support async commands, Ref. #1083

Small refactor, Ref. #1083

Asyncio telnet server - connections support, Ref. #10831

Prompt-toolkit in dependencies, ref. #1083

Few comments, ref. #1083

Direct imports, ref. #1083

Windows size changed support in telnet server, ref. #1139

Fake termios

Fake termios - different approach

InputStream - copied source from prompt_toolkit
2017-07-25 16:18:07 +02:00
Julien Duponchelle
ca3f8d0b43
Provide easy to test a shell by using stdin as an input 2017-06-02 14:50:34 +02:00
Julien Duponchelle
5616ab0e9a
Fake console for simple Ethernet switch
Fix #454
2017-05-31 15:13:29 +02:00
Julien Duponchelle
10b039074f
Avoid a crash in some conditions when reading the serial console 2017-02-15 19:31:38 +01:00
Julien Duponchelle
19b70accd5
Catch error when we can't access to a unix socket 2017-02-06 17:59:00 +01:00