Commit Graph

264 Commits

Author SHA1 Message Date
Jeremy
2bae814eb1 Remove redundant code for Dynamips hypervisor connections. 2015-03-05 18:00:17 -07:00
Julien Duponchelle
a9afaa028c Garbage collect VM when closing a project 2015-03-02 17:17:28 +01:00
grossmj
c48ca212bd Stop Dynamips hypervisors used by devices before the project is closed.
This is to avoid locked files by hypervisors preventing temporary project working directories to be deleted.
2015-03-01 19:20:33 -07:00
grossmj
3ef529fb0e Temporally fixes Dynamips console listening issues. 2015-03-01 18:53:03 -07:00
grossmj
518b037d54 Fixes connect call failed for Dynamips hypervisor #78. 2015-03-01 14:25:09 -07:00
grossmj
7223005acd Restore device IDs and fixes race condition when converting an old project. 2015-03-01 13:05:51 -07:00
grossmj
5ae8728ee6 Fixes ATM switch. 2015-03-01 10:41:27 -07:00
grossmj
0f10d25c0b Optional AUX console port allocation for Dynamips VMs. 2015-02-28 16:20:27 -07:00
grossmj
7fe2d6c367 Support to deactivate sparsemem or mmap globally for Dynamips VMs. 2015-02-28 15:53:21 -07:00
grossmj
d762c43314 Include the images directory when converting an old project. 2015-02-28 15:00:00 -07:00
grossmj
708f66b608 Fixes asyncio Lock instantiation issues on Windows.
Because the event loop is essentially a global variable, asyncio Lock objects that get instantiated early could grab a reference to the wrong loop (Selector instead of Proactor).
2015-02-27 22:12:43 -07:00
grossmj
666064f1ae Revert commit: Remove lock for Ghost IOS (problem on Windows). 2015-02-27 22:01:37 -07:00
Jeremy
70d5dea256 Remove lock for Ghost IOS (problem on Windows). 2015-02-27 19:36:45 -07:00
Jeremy
ba95567886 Some info message and fixes ghost IOS activation/deactivation. 2015-02-27 19:35:31 -07:00
Jeremy
84870bf736 Some changes with config files on Windows. 2015-02-27 18:08:34 -07:00
Jeremy
0e8b8fa66f Update hypervisors working dir when the project is moved. 2015-02-27 16:51:17 -07:00
Jeremy
58d92f1584 Fixes Dynamips console/aux ports restoration when loading a project. 2015-02-26 16:15:44 -07:00
Jeremy
0eaad579c2 IOU + VirtualBox conversion of old projects. 2015-02-25 18:55:35 -07:00
Jeremy
85518a3cd6 Fixes race condition when generating an ghost IOS file. 2015-02-25 17:38:55 -07:00
Jeremy
473eb0280e Support for relative path in Dynamips. 2015-02-25 17:19:37 -07:00
Jeremy
54fc873be5 Prevent multiple projects with the same ID to be created. 2015-02-25 16:05:57 -07:00
Jeremy
349d9d4540 Fixes small issues when deleting Dynamips devices. 2015-02-25 11:52:52 -07:00
grossmj
3528efb1e0 Fixes packet capture for devices when spaces are present in the output file. 2015-02-24 23:12:09 -07:00
Jeremy
42c07cee1a Properly release UDP ports when closing a project or deleting a link. 2015-02-23 19:00:34 -07:00
Jeremy
3d3300e83a Rename console methods in port manager to use the generic tcp term in the name.
Fixes bug when a console port is allocated to a Ghost VM instance and not released.
Warnings at exit when TCP/UDP ports are still allocated.
2015-02-23 17:42:55 -07:00
Julien Duponchelle
c9314ec509 autopep8 et upload files 2015-02-23 17:21:39 +01:00
Jeremy
565a7b35a6 Default NVRAM and Idle-PC for some IOS images. 2015-02-21 17:24:39 -07:00
Jeremy
af700e9bcb Idle-PC and auto idle-pc for Dynamips. 2015-02-20 16:53:51 -07:00
Jeremy
90f71e7581 Idle-PC proposals for Dynamips. 2015-02-19 19:14:30 -07:00
Jeremy
8d02f464c5 Dynamips import/export configs. 2015-02-19 16:04:15 -07:00
Julien Duponchelle
25bcbfb073 Allocation of console port in base vm 2015-02-19 11:45:43 +01:00
grossmj
3d1363150e Fixes ghost file path. 2015-02-18 18:24:35 -07:00
grossmj
610dee957d Use HTTP error 409 instead of 500 for VMError. 2015-02-18 17:48:02 -07:00
grossmj
dc4df68c7a Keep Dynamips logs. 2015-02-16 21:30:31 -07:00
Jeremy
e6fd471dd5 Save Dynamips VM configs when closing a project. 2015-02-16 18:21:10 -07:00
Jeremy
3e95bb9748 Adapter settings and configs for Dynamips VMs. 2015-02-16 16:53:50 -07:00
grossmj
78ffe313fd Dynamips VM & device deletion and ghost support. 2015-02-15 22:13:24 -07:00
grossmj
26f7195288 Dynamips devices packet capture. 2015-02-15 17:45:53 -07:00
grossmj
f99e834c37 Dynamips devices support (packet capture to complete). 2015-02-15 12:18:12 -07:00
Jeremy
4f38d96522 Dynamips devices. 2015-02-13 20:01:18 -07:00
Jeremy
094339304c Packet capture for Dynamips VMs. 2015-02-13 15:41:56 -07:00
Jeremy
a5ac7c5481 Dynamips NIO connections. 2015-02-13 15:11:14 -07:00
Julien Duponchelle
68427eaddf Auto PEP8 cleanup 2015-02-13 14:43:28 +01:00
grossmj
0a5aaedc7c Merge remote-tracking branch 'origin/asyncio' into asyncio 2015-02-12 19:15:47 -07:00
grossmj
8f089c45f5 Fixes a few problems in Dynamips implementation. 2015-02-12 19:15:35 -07:00
Julien Duponchelle
2e99ef69a9 Modules support start iou process (not ioucon and iouyap) 2015-02-12 22:29:32 +01:00
Jeremy
79a57ca420 New Dynamips integration part 3 2015-02-11 19:21:34 -07:00
grossmj
37945585b9 New Dynamips integration part 2 2015-02-10 21:50:02 -07:00
Jeremy
46cbcd6132 New Dynamips integration part 1 2015-02-09 18:24:13 -07:00
Julien Duponchelle
bbee5f90a0 Yet another PEP 8 :) 2015-01-20 16:37:18 +01:00
Julien Duponchelle
f5ed9fbcf1 PEP 8 clean thanks to auto pep8 2015-01-20 13:24:00 +01:00
Jeremy
881cc6f592 Fixes wrong IOS config paths. 2015-01-04 18:51:55 -07:00
Jeremy
a6fd457cff Bump the maximum network adapters to 32 for Qemu. 2015-01-03 16:16:07 -07:00
Jeremy
1f615430ae Checks for broken symbolic links. 2014-12-24 17:19:42 -07:00
Jeremy
2de1a97076 Merge remote-tracking branch 'origin/master' 2014-12-24 15:47:07 -07:00
Jeremy
747c0ee7a3 More checks on minimum RAM for IOS routers and updates default values to match the latest IOS image requirements. 2014-12-24 15:46:59 -07:00
grossmj
d9f44edcaf Fixes incompatibility for IOS startup-config and private-config paths created on Windows and loaded from a project on Linux/Mac OS X. 2014-12-23 15:29:27 -07:00
Jeremy
7785c03eac Ignore Unicode errors when executing vboxmanage. 2014-12-19 15:47:12 -07:00
Jeremy
7f37f649da Catch OSError exception for subprocess calls. 2014-12-11 12:15:24 -07:00
Daniel Lintott
317a37147e Remove extra line that was over-writing the auto Idle-PC value
Fixes GNS3/gns3-gui#158
2014-12-09 19:39:22 +00:00
Jeremy
d97ba11728 Fixes C7200 IO cards insert/remove issues and makes C7200-IO-FE the default. 2014-11-24 17:02:00 -07:00
Jeremy
09948a366f Use SubprocessError to catch Subprocess exceptions. 2014-11-22 17:45:04 -07:00
Jeremy
e2e4f4f38b Fixes remote server issue when creating a new project while already in a project. 2014-11-14 19:59:06 -07:00
Jeremy Grossmann
e75dde3ebf Merge pull request #48 from planctechnologies/pr3
Add support for Qemu devices on cloud instances (server)
2014-11-12 21:19:15 -07:00
Jeremy Grossmann
bba2c2b0d3 Merge pull request #47 from planctechnologies/pr2
Support IOU devices on cloud instances
2014-11-12 21:17:57 -07:00
Jeremy
a9e924934a Fixes important issue when searching for a free port. 2014-11-12 19:49:02 -07:00
Jeremy
f6561bf684 Automatically extract IOS configs when a project is closed. 2014-11-10 13:50:17 -07:00
Jerry Seutter
5b73786653 Move image path manipulation to server side 2014-11-10 11:28:19 -07:00
Jeremy
f44fbd1f16 Option to allow console connections to any local IP address when using the local server. 2014-11-09 23:01:13 -07:00
Jerry Seutter
0b0830976f Support IOU devices on cloud instances 2014-11-06 15:50:46 -07:00
Jeremy
a98a8b1acc Change default VirtualBox adapter type. 2014-11-04 19:00:01 -07:00
grossmj
393a312e7e New Telnet server for VirtualBox. 2014-11-02 15:47:44 -07:00
Jerry Seutter
5f9554b86c Cleanup 2014-10-28 11:07:44 -06:00
Jerry Seutter
7830bf8b1a Merge branch 'dev' into gns-110 2014-10-28 10:39:03 -06:00
Jerry Seutter
c4afc33ea8 IOS devices can be deployed on cloud instances. 2014-10-27 18:12:56 -06:00
grossmj
666c8ea922 Pedantic: make sure Idle-PC is spelled that way. 2014-10-22 20:47:59 -06:00
Jerry Seutter
91894935bf Merge branch 'dev' into gns-110 2014-10-21 15:39:14 -06:00
Jerry Seutter
c08e1011ed Make the server download images from cloud files 2014-10-15 15:51:00 -06:00
grossmj
4195bdc7dd Auto idle-pc feature and improvements/bug fixes for GNS3 preferences. 2014-10-13 19:53:17 -06:00
grossmj
a8193fa063 Split the PATH environment variable using os.pathsep 2014-09-28 18:23:27 -06:00
grossmj
76b357c1ce Do not activate sparse memory by default for c1700 and c2600 platforms.
https://github.com/GNS3/dynamips/issues/54
2014-08-26 17:07:48 -06:00
grossmj
934404cc90 Change default port ranges. 2014-08-25 15:40:04 -06:00
grossmj
569a68a486 VirtualBox support refactoring. 2014-08-22 17:36:12 -06:00
grossmj
77c583ca39 Check if the VirtualBox COM service is installed on Windows. 2014-08-21 18:13:41 -06:00
grossmj
ae0feb8c9c Fixes packet capture when spaces are in the capture file path. 2014-07-18 22:43:01 -06:00
grossmj
19d24975c2 Remove privileged access checks for Dynamips. 2014-07-17 20:48:11 -06:00
grossmj
64f78bb847 Fixes some inconsistencies when exporting configs. 2014-07-17 18:22:27 -06:00
grossmj
f5cf7363da Work around for the c7200 reload bug in Dynamips <= 0.2.13. 2014-07-17 18:03:21 -06:00
grossmj
6ffba35742 Use Windows interface names instead of their GUID (more user friendly).
Ask for an alternative interface if one cannot be found.
2014-07-08 14:01:45 -06:00
grossmj
9fc7650f3f Find an alternative IOS or IOU image if one cannot be found when importing a topology. 2014-07-06 16:34:38 -06:00
grossmj
551b98880b Default preferences for remote servers. 2014-07-04 15:18:13 -06:00
grossmj
7c99ee9de8 New feature: import/export device configs. 2014-07-03 18:56:37 -06:00
grossmj
9ac5b86431 Fixes IOU and VPCS renaming issues. 2014-07-03 09:02:25 -06:00
grossmj
33787d486a New feature: packet capture for the Ethernet hub and Ethernet, ATM and Frame relay switches. 2014-06-27 07:26:47 -06:00
grossmj
606f773f3d New feature: packet capture for IOS routers. 2014-06-26 03:06:58 -06:00
grossmj
14bb12d3fb Check for sticky bit when checking for executable access. 2014-06-21 06:53:47 -06:00
grossmj
49506ada3f Fixes inconsistencies with startup and private config paths when renaming an IOS router. 2014-06-18 07:22:57 -06:00
grossmj
cb763e0926 Use Dynamips, IOU and VPCS identifiers to correctly load a topology. 2014-06-15 05:18:33 -06:00
grossmj
f9ee38dd55 Fixes issues to restore the correct working directories for IOU and VPCS devices when loading a project.
Prevent multiple clients to use the same server (this is not supported yet).
2014-06-10 09:33:27 -06:00
grossmj
61ef750da3 Replace decode errors when reading device configs. 2014-05-29 12:59:13 -06:00
grossmj
7b58f14681 Some PEP8 style fixes. 2014-05-28 06:26:20 -06:00
grossmj
a39a693cda Hostname management refactoring. 2014-05-27 11:23:06 -06:00
grossmj
3a0439c9ae New hostnames management for the Dynamips module. 2014-05-27 03:59:22 -06:00
grossmj
9da5aa1107 Fixes validation issue with c2600 XM chassis. 2014-05-22 10:54:34 -06:00
grossmj
3d6ec140b7 Forbid additional properties in schemas, add missing ones. 2014-05-20 18:06:28 -06:00
grossmj
babdfd5086 Amend device configs when renaming. 2014-05-19 13:14:57 -06:00
grossmj
f4ab8e2dd0 UDP connection checks. 2014-05-17 18:07:16 -06:00
grossmj
6a839c4b7b Wait more time for ioucon thread to be completed. Prevent IOS to be
started or stopped if the status isn't right.
2014-05-16 12:35:48 -06:00
grossmj
ff6c864294 Fixes issue with server shutdown. 2014-05-14 11:24:14 -06:00
grossmj
0412e051b2 Fixes major bug with ghost instance ID. 2014-05-13 17:17:26 -06:00
grossmj
0d944d39ef Implement special request to stop a module. 2014-05-13 14:17:04 -06:00
grossmj
879362d09f Remove .gns3 from folder name. 2014-05-09 11:19:07 -06:00
grossmj
13f469f9d6 Handle local base config path. 2014-05-08 14:20:12 -06:00
grossmj
29be7ac4e2 Error message that JIT sharing is only supported in Dynamips unstable
version if someone tries. Fixes #10.
2014-05-07 21:07:47 -06:00
grossmj
c0a876af68 Move cloud code (module independent) to a builtin package. 2014-05-07 19:31:53 -06:00
grossmj
34ad75860d Socket shutdown. 2014-05-06 19:11:51 -06:00
grossmj
62da0a5ec2 Delete more Dynamips files that are useless to save. 2014-05-06 13:46:23 -06:00
grossmj
17b56810d1 Fixes bug where IOS nvram/disk files were not kept after closing a
topology.
2014-05-06 12:22:38 -06:00
grossmj
f185c4d489 Delete IOS ghost files. Bump version to alpha3. 2014-05-02 15:38:52 -06:00
grossmj
2a888f93ce Explicitly send an error if a IOS adapter cannot be added or removed. 2014-05-01 15:46:59 -06:00
grossmj
93058f92d4 Ranges for UDP, console, auxiliary console and hypervisor ports.
Dynamips UDP NIO auto back-end for UDP tunnel connections (excepting
stubs).
2014-04-30 20:44:13 -06:00
grossmj
97e19ac7a5 Fixes WICs port number validation error. 2014-04-30 11:06:45 -06:00
grossmj
e7d9f73e1e Display the ZeroMQ version when the server starts. Fixes #8. 2014-04-30 10:17:45 -06:00
grossmj
31866113e4 Windows interface support for clouds. 2014-04-29 17:46:43 -06:00
grossmj
03f002b348 Check if iouyap can access Ethernet and TAP devices. 2014-04-29 11:11:37 -06:00
grossmj
3bcf13328b Fixes issue when netifaces module is not installed. 2014-04-28 10:36:49 -06:00
grossmj
0d856ae180 Fixes #7. 2014-04-28 10:03:03 -06:00
grossmj
85336e0fca Check for valid IOS & IOU image paths and files (by analyzing the firt 7
bytes of their ELF header).
2014-04-26 22:04:22 -06:00
grossmj
28ca12367a Proper server shutdown. 2014-04-26 17:51:47 -06:00
grossmj
9be5625c38 json-schema validations.
NIO creation refactoring.
2014-04-23 12:31:33 -06:00
grossmj
ada36e5382 Bump version to 1.0-alpha2. 2014-04-16 12:43:59 -06:00
grossmj
732afb4ebd Fixes issues with working dirs. 2014-04-15 22:11:34 -06:00
grossmj
f99128b2a4 Support for project names on remote server. 2014-04-15 17:18:37 -06:00
grossmj
872515fa78 Use the FileExistsError exception. 2014-04-12 16:46:02 -06:00
grossmj
a874b63e40 Checks for valid device IDs. 2014-04-12 14:43:30 -06:00
grossmj
3edbdbe0b5 Change address/host binding implementation. 2014-04-11 18:33:42 -06:00
grossmj
862448ada1 Fixes bug with finding a free port. 2014-04-11 17:02:43 -06:00
grossmj
e70ea26639 Fixes checks for free console and aux ports. 2014-04-11 16:24:08 -06:00
grossmj
96231e3f7f More specific path checks (file vs directory). 2014-04-11 14:48:30 -06:00
grossmj
fca399a5ab Improve checks when starting IOU. 2014-04-10 18:48:43 -06:00
grossmj
b614aa8290 Use a temporary file for Dynamips process logging (avoid Windows file
locking when saving to another location).
2014-04-09 18:39:24 -06:00
grossmj
0110fe33d4 Check for the Dynamips version. 2014-04-09 15:59:51 -06:00
grossmj
27379682df Rename socket.error to OSError.
Server shutdown management.
2014-04-06 11:37:34 -06:00
grossmj
f4dd096a8b Rename all EnvironmentError to OSError.
Change version number to 1.0a2-dev1.
Check only on Python >= 3.3.
2014-04-02 16:10:59 -06:00
grossmj
a92da02973 Builtin destination to shutdown the server. 2014-03-31 18:36:45 -06:00
grossmj
ab02925f98 Dynamips default host binding set to 127.0.0.1 2014-03-30 21:31:41 -06:00
grossmj
bb2c25da5c Fix freezing issues on Windows. 2014-03-30 16:25:56 -06:00
grossmj
c91f876656 Default host binding is 0.0.0.0.
Move the file uploader template.
UDP port allocation (removed the host).
Minor changes with iouyap lookup and remote server project directory.
2014-03-29 21:29:10 -06:00
grossmj
f534a02324 Update idlemax from 1500 to 500.
Update ioucon.
2014-03-24 21:25:12 -06:00
grossmj
c4d9e8371f Notification to clients 2014-03-19 18:48:42 -06:00