Quellcode durchsuchen

Added timeout integer value.

Jean Sumara Leopoldo vor 4 Jahren
Ursprung
Commit
632d7daf55
4 geänderte Dateien mit 14 neuen und 12 gelöschten Zeilen
  1. 1 0
      ObjectConnection.py
  2. 2 1
      ObjectSsh.py
  3. 2 1
      ObjectTelnet.py
  4. 9 10
      connect.py

+ 1 - 0
ObjectConnection.py

@@ -43,6 +43,7 @@ class ObjectConnection:
         self.password_enable = password_enable
         self.port = port
         self.file_name = file_name
+        self.timeout = timeout
         self.data = data
         if file_name is not None:
             fl = file_name.split(".")

+ 2 - 1
ObjectSsh.py

@@ -38,8 +38,9 @@ class ObjectSsh(ObjectConnection):
         ssh = paramiko.SSHClient()
         ssh.load_system_host_keys()
         ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
+        timeout = int(self.timeout)
         try:
-            ssh.connect(hostname=self.hostname, port=self.port, username=self.user, password=self.password,allow_agent=False, look_for_keys=False, timeout=self.timeout)
+            ssh.connect(hostname=self.hostname, port=self.port, username=self.user, password=self.password,allow_agent=False, look_for_keys=False, timeout=timeout)
             chan = ssh.invoke_shell()
             self.stdin = chan.makefile('wb')
             self.stdout = chan.makefile('r')

+ 2 - 1
ObjectTelnet.py

@@ -41,8 +41,9 @@ class ObjectTelnet(ObjectConnection):
         fcntl.flock(f, fcntl.LOCK_EX)
         print("Lock Acquire\n")
         print("Login in...\n")
+        timeout = int(self.timeout)
         try:
-            self.tn = telnetlib.Telnet(self.hostname, self.port, self.timeout)
+            self.tn = telnetlib.Telnet(self.hostname, self.port, timeout)
             if self.debug:
                 self.tn.set_debuglevel(1)
             error = self.read_data([self.olt.get_expected_name()])

+ 9 - 10
connect.py

@@ -23,6 +23,14 @@ parser.add_argument('-d', '--data', type=str, help='Data to execute', required=F
 args = parser.parse_args()
 
 if __name__ == "__main__":
+    if args.timeout is None:
+        timeout = 25
+    else:
+        try:
+            val = int(args.timeout)
+            timeout = args.timeout
+        except ValueError:
+            timeout = 25
 
     if args.password_enable is None or args.password_enable is "":
         password_enable = args.password
@@ -36,7 +44,7 @@ if __name__ == "__main__":
             time.sleep(1)
             nc += 1
             print(nc)
-            if nc == 60:
+            if nc == timeout:
                 break
         if not os.path.isfile(args.file):
             raise ValueError("%s isn't a file!" % args.file)
@@ -56,15 +64,6 @@ if __name__ == "__main__":
             port = 23
         obj = ObjectTelnet()
 
-    if args.timeout is None:
-        timeout = 25
-    else:
-        try:
-            val = int(args.timeout)
-            timeout = args.timeout
-        except ValueError:
-            timeout = 25
-
     obj.initialize(brand=args.brand, model=args.model, hostname=args.host_name, user=args.user_name,
                    password=args.password, password_enable=password_enable, port=port,
                    file_name=args.file, data=args.data, timeout=timeout)