From 8832d4dc355c354a4ab971b21a31eb5270b95a22 Mon Sep 17 00:00:00 2001
From: Yang Yuechun <younggy1997@outlook.com>
Date: Wed, 19 Dec 2018 16:45:02 -0600
Subject: [PATCH] fix config file error

---
 server/__pycache__/gns3_helper.cpython-36.pyc | Bin 2686 -> 3009 bytes
 server/gns3_helper.py                         |  13 +-
 server/server.py                              |   1 +
 server/startup_config.cfg                     |  30 +++++
 server/test1.py                               |   5 +
 server/test1.txt                              | 121 ------------------
 6 files changed, 48 insertions(+), 122 deletions(-)
 create mode 100644 server/startup_config.cfg
 create mode 100644 server/test1.py
 delete mode 100644 server/test1.txt

diff --git a/server/__pycache__/gns3_helper.cpython-36.pyc b/server/__pycache__/gns3_helper.cpython-36.pyc
index 93c158385994ab07c6b047b218cabab279d79d3d..3291e1e78452d67dc7c72a048cfd8c47e04efab6 100644
GIT binary patch
delta 1028
zcmZWnOHWfl6rQ=yxsR4o(1I}-K#`(w6M+B<vB8CjF>VMOG-;Z9F16*=%#0$<ZCF&}
zR&sa7U!W_*g<F@d-QBoz<&W@jrjMv`CUYL&`R1H6C-ZaoQ(<yGlW|8sUwHJ?C*&LX
zYiVeg@Q7z8lWV0d1}0d~$(92)Fw`zM;G*`x10S^y8OWl}zyRb>XJHWXs0V;<kmAtE
zo28}ZVz4P9E`q&E7~FlZF&{MeK|Knk2xKH=-<#d8?M5Piqy5TWts#QbFY}c8XSVj1
z((`BUbwTNLGG)#jXRtd1&mGlejuHZ-rN<i39gWX`CP_@&v_L>FATDWLixG+Sw%#(3
zW$b9LDEFnV9@f@cW^C4tHfdR?%{HL~?3Nu{bt|^pw8dg3ZDnCD2XZR+aVNP`Ah87`
zc3x<sq(J&bV=H!mbTM%MZ$L6E<;E@yj*_|q9+vR175|@B{C+D^mo8>T7CtA_t8zs-
zSv&*1?!DM=Q%d@mVgm=CPkxvm*0>r~GcRO?%O{O;c(A`+tImbn)utPC9TC);L**V}
z_75SYhsmjRdF=ZyTtz?Ch2%Vk*-~%+0HSipql%1@uhylDBZzWSg%}*|l^YfLI5iJ>
zO-98`lC{T8Ucg`y*we@76jk-K<#kJyp@O|R3hoFOt<>u#FRMZe2#D(_2sJ39Ihv&|
zZid@H?b8KBtPZNMiB62GTcP^MYU#amha~UpmnIL;PgdBy!hJLZet*pEYYcDZF#}&s
zUbE`dBBI4Em)}I2ub@aRh(c_N538ubZzWfq8$+Au2!?{tVLGBxl#*TNcIFx)T_#25
zM`s)!DyI6mM6uRU7jxaA+SN!lDnj6#j|5-BNUBxCRIlLJ^XTzqCFYc{mFUcTTv_U=
id{v2(66?vbJ2f$erW!|YYX%O>(3s2e%x5FaVb*U2Y}$eV

delta 641
zcmYjNJ!lj`6rMNxGqbaMm-BMrq8{jRlH@ETdeIp0IE`H@!A^v5+*=M$FfzL$fmuY>
zbT(l+L9`SLn-lCrTU)_mJF&L27T*{ZcX{9U-kUf3y>CCZf3|vqT1~xsf8zEh#n?CY
z-@_@tN|EJ<z2OxMp0HaILlndjN{omVDvXI^Ot40rU>z5TYuLbJ#C3$5tlvC*xjC=H
z03e=k^Va}N^Y2~;uxiJ_*+&sc_!QTj)H4EPg=aXzU9LOGb7r7~Hbbv{)c2|XGzSbY
zEP3G@f5uBz1jJs+fT1Wt6U=-QmQV;I^1x+uS7Q9{TTz>t0GW{o{M>QYW`7S%U?j2w
z?s}-4U>?qdp%si*dSoTBZ^F0sg*YSnvhuQA+ppr(VuQA>;(L3T?oM<%&eMKmJF;uH
z<(hpgPxc1R+A;wHA0#v=6osTpK>{0~*X?KdTvWkBeJ4-tgJ=h?*$>eYY}qf-bmctV
z><9WHk=}H0iJ%HGosgt%xl><Xwi9(>afgab5-@1NGD+y6eWgaVHR>Eq0!{u<-Q62*
z(*1bmrbfj51^wHJn5Oytah8$6{Y<;%D?Xi6-kAJ0snQz`gac<vcO9%d*m5v*FtYpc
Y%IOZJ&gY+(``~k_WK$-xE+ZNK0v~mMXaE2J

diff --git a/server/gns3_helper.py b/server/gns3_helper.py
index 534d7be..e72bd06 100644
--- a/server/gns3_helper.py
+++ b/server/gns3_helper.py
@@ -7,6 +7,7 @@ import ast
 
 project_id ='83b40958-ede6-4dec-9cff-e11bdf38bbcc'
 HOST = "127.0.0.1"
+dym_path = '/Users/mac/GNS3/projects/test/project-files/dynamips/'
 
 def ports_info(node):
   ports_info = {}
@@ -52,6 +53,7 @@ def create_node(project_id, name, node_type):
   final_para = None
   if node_type==0:
     final_para = '{"compute_id": "local", "name": "'+str(name)+'", "node_type": "vpcs"}'
+    data = gns3.node_create(project_id, name, final_para)
   if node_type==1:
     f = open("property_7200.txt", "r")
     para = f.read()
@@ -60,7 +62,16 @@ def create_node(project_id, name, node_type):
     start_index = para.find(word)
     end_index = start_index + len(word)
     final_para = '{"compute_id": "local", "name": "'+'R'+str(name)+'", "node_type": "dynamips", "symbol": ":/symbols/router.svg", '+para[:end_index]+str(name)+para[end_index:]+'}'
-  return gns3.node_create(project_id, name, final_para)
+    data = gns3.node_create(project_id, name, final_para)
+    nodes_info = update_nodes_info()
+    node_id = nodes_info[-1].get('node_id')
+    f = open('startup_config.cfg', 'r')
+    config_data = f.read()
+    f.close()
+    f = open(dym_path+str(node_id)+'/configs/i'+str(name)+'_startup-config.cfg', 'w')
+    f.write(config_data)
+    f.close()
+  return data
 
 def connect_console(PORT, name):
   tn = telnetlib.Telnet(HOST, PORT)
diff --git a/server/server.py b/server/server.py
index 488a013..02c6cd0 100644
--- a/server/server.py
+++ b/server/server.py
@@ -39,6 +39,7 @@ while 1:
 
   elif index == '01':
     nodes_info = gn.update_nodes_info()
+    print(nodes_info)
     data = []
     for node in nodes_info:
       temp = []
diff --git a/server/startup_config.cfg b/server/startup_config.cfg
new file mode 100644
index 0000000..307128e
--- /dev/null
+++ b/server/startup_config.cfg
@@ -0,0 +1,30 @@
+!
+!
+!
+!
+!
+service timestamps debug datetime msec
+service timestamps log datetime msec
+no service password-encryption
+!
+hostname R2
+!
+ip cef
+no ip domain-lookup
+no ip icmp rate-limit unreachable
+ip tcp synwait 5
+no cdp log mismatch duplex
+!
+line con 0
+ exec-timeout 0 0
+ logging synchronous
+ privilege level 15
+ no login
+line aux 0
+ exec-timeout 0 0
+ logging synchronous
+ privilege level 15
+ no login
+!
+!
+end
diff --git a/server/test1.py b/server/test1.py
new file mode 100644
index 0000000..3b127ab
--- /dev/null
+++ b/server/test1.py
@@ -0,0 +1,5 @@
+dym_path = '/Users/mac/GNS3/projects/test/project-files/dynamips/'
+
+f = open(dym_path+'53508cfa-9ce2-4425-b889-9f822d041cf7/configs/i1_startup-config.cfg', 'r')
+data = f.read()
+print(data)
\ No newline at end of file
diff --git a/server/test1.txt b/server/test1.txt
deleted file mode 100644
index 7cde1e1..0000000
--- a/server/test1.txt
+++ /dev/null
@@ -1,121 +0,0 @@
-
-        "command_line": null,
-        "compute_id": "local",
-        "console": 5002,
-        "console_host": "127.0.0.1",
-        "console_type": "telnet",
-        "first_port_name": null,
-        "height": 45,
-        "label": {
-            "rotation": 0,
-            "style": "font-family: TypeWriter;font-size: 10.0;font-weight: bold;fill: #000000;fill-opacity: 1.0;",
-            "text": "3",
-            "x": 25,
-            "y": -25
-        },
-        "name": "3",
-        "node_directory": "/Users/mac/GNS3/projects/test/project-files/dynamips/9649ec23-0187-4ca5-af05-5a8f87e40c35",
-        "node_id": "9649ec23-0187-4ca5-af05-5a8f87e40c35",
-        "node_type": "dynamips",
-        "port_name_format": "Ethernet{0}",
-        "port_segment_size": 0,
-        "ports": [
-            {
-                "adapter_number": 0,
-                "data_link_types": {
-                    "Ethernet": "DLT_EN10MB"
-                },
-                "link_type": "ethernet",
-                "name": "FastEthernet0/0",
-                "port_number": 0,
-                "short_name": "f0/0"
-            },
-            {
-                "adapter_number": 1,
-                "data_link_types": {
-                    "ATM": "DLT_ATM_RFC1483"
-                },
-                "link_type": "serial",
-                "name": "ATM1/0",
-                "port_number": 0,
-                "short_name": "a1/0"
-            },
-            {
-                "adapter_number": 2,
-                "data_link_types": {
-                    "Ethernet": "DLT_EN10MB"
-                },
-                "link_type": "ethernet",
-                "name": "FastEthernet2/0",
-                "port_number": 0,
-                "short_name": "f2/0"
-            },
-            {
-                "adapter_number": 3,
-                "data_link_types": {
-                    "Ethernet": "DLT_EN10MB"
-                },
-                "link_type": "ethernet",
-                "name": "FastEthernet3/0",
-                "port_number": 0,
-                "short_name": "f3/0"
-            },
-            {
-                "adapter_number": 3,
-                "data_link_types": {
-                    "Ethernet": "DLT_EN10MB"
-                },
-                "link_type": "ethernet",
-                "name": "FastEthernet3/1",
-                "port_number": 1,
-                "short_name": "f3/1"
-            }
-        ],
-        "project_id": "83b40958-ede6-4dec-9cff-e11bdf38bbcc",
-        "properties": {
-            "auto_delete_disks": true,
-            "aux": null,
-            "clock_divisor": 4,
-            "disk0": 0,
-            "disk1": 0,
-            "dynamips_id": 3,
-            "exec_area": 64,
-            "idlemax": 500,
-            "idlepc": "0x606384b0",
-            "idlesleep": 30,
-            "image": "c7200-adventerprisek9-mz.150-1.M.image",
-            "image_md5sum": "e45960476d55bba653bbe63a9b85c492",
-            "mac_addr": "ca01.72e9.0000",
-            "midplane": "vxr",
-            "mmap": true,
-            "npe": "npe-400",
-            "nvram": 512,
-            "platform": "c7200",
-            "power_supplies": [
-                1,
-                1
-            ],
-            "ram": 512,
-            "sensors": [
-                22,
-                22,
-                22,
-                22
-            ],
-            "slot0": "C7200-IO-FE",
-            "slot1": "PA-A1",
-            "slot2": "PA-FE-TX",
-            "slot3": "PA-2FE-TX",
-            "slot4": null,
-            "slot5": null,
-            "slot6": null,
-            "sparsemem": true,
-            "system_id": "FTX0945W0MY"
-        },
-        "status": "started",
-        "symbol": ":/symbols/router.svg",
-        "width": 66,
-        "x": 0,
-        "y": 0,
-        "z": 0
-    
\ No newline at end of file
-- 
GitLab