 89896c0008
			
		
	
	
		89896c0008
		
	
	
	
	
		
			
			This patch is made by using 2to3 command. $ find . -name *.py | xargs 2to3 -f print -w -n Signed-off-by: Masashi Honma <masashi.honma@gmail.com>
		
			
				
	
	
		
			124 lines
		
	
	
	
		
			4 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			124 lines
		
	
	
	
		
			4 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| #!/usr/bin/env python2
 | |
| #
 | |
| # Show/check devices
 | |
| # Copyright (c) 2016, Tieto Corporation
 | |
| #
 | |
| # This software may be distributed under the terms of the BSD license.
 | |
| # See README for more details.
 | |
| 
 | |
| import time
 | |
| import traceback
 | |
| import config
 | |
| import os
 | |
| import sys
 | |
| import getopt
 | |
| import re
 | |
| 
 | |
| import logging
 | |
| logger = logging.getLogger()
 | |
| 
 | |
| import rutils
 | |
| from remotehost import Host
 | |
| from wpasupplicant import WpaSupplicant
 | |
| import hostapd
 | |
| 
 | |
| def show_devices(devices, setup_params):
 | |
|     """Show/check available devices"""
 | |
|     print("Devices:")
 | |
|     for device in devices:
 | |
|         host = rutils.get_host(devices, device['name'])
 | |
|         # simple check if authorized_keys works correctly
 | |
|         status, buf = host.execute(["id"])
 | |
|         if status != 0:
 | |
|             print("[" + host.name + "] - ssh communication:  FAILED")
 | |
|             continue
 | |
|         else:
 | |
|             print("[" + host.name + "] - ssh communication: OK")
 | |
|         # check setup_hw works correctly
 | |
|         rutils.setup_hw_host(host, setup_params)
 | |
| 
 | |
|         # show uname
 | |
|         status, buf = host.execute(["uname", "-s", "-n", "-r", "-m", "-o"])
 | |
|         print("\t" + buf)
 | |
|         # show ifconfig
 | |
|         ifaces = re.split('; | |, ', host.ifname)
 | |
|         for iface in ifaces:
 | |
|             status, buf = host.execute(["ifconfig", iface])
 | |
|             if status != 0:
 | |
|                 print("\t" + iface + " failed\n")
 | |
|                 continue
 | |
|             lines = buf.splitlines()
 | |
|             for line in lines:
 | |
|                 print("\t" + line)
 | |
|         # check hostapd, wpa_supplicant, iperf exist
 | |
|         status, buf = host.execute([setup_params['wpa_supplicant'], "-v"])
 | |
|         if status != 0:
 | |
|             print("\t" + setup_params['wpa_supplicant'] + " not find\n")
 | |
|             continue
 | |
|         lines = buf.splitlines()
 | |
|         for line in lines:
 | |
|             print("\t" + line)
 | |
|         print("")
 | |
|         status, buf = host.execute([setup_params['hostapd'], "-v"])
 | |
|         if status != 1:
 | |
|             print("\t" + setup_params['hostapd'] + " not find\n")
 | |
|             continue
 | |
|         lines = buf.splitlines()
 | |
|         for line in lines:
 | |
|             print("\t" + line)
 | |
|         print("")
 | |
|         status, buf = host.execute([setup_params['iperf'], "-v"])
 | |
|         if status != 0 and status != 1:
 | |
|             print("\t" + setup_params['iperf'] + " not find\n")
 | |
|             continue
 | |
|         lines = buf.splitlines()
 | |
|         for line in lines:
 | |
|             print("\t" + line)
 | |
|         print("")
 | |
| 
 | |
| def check_device(devices, setup_params, dev_name, monitor=False):
 | |
|     host = rutils.get_host(devices, dev_name)
 | |
|     # simple check if authorized_keys works correctly
 | |
|     status, buf = host.execute(["id"])
 | |
|     if status != 0:
 | |
|         raise Exception(dev_name + " - ssh communication FAILED: " + buf)
 | |
| 
 | |
|     rutils.setup_hw_host(host, setup_params)
 | |
| 
 | |
|     ifaces = re.split('; | |, ', host.ifname)
 | |
|     # check interfaces (multi for monitor)
 | |
|     for iface in ifaces:
 | |
|         status, buf = host.execute(["ifconfig", iface])
 | |
|         if status != 0:
 | |
|             raise Exception(dev_name + " ifconfig " + iface + " failed: " + buf)
 | |
| 
 | |
|     # monitor doesn't need wpa_supplicant/hostapd ...
 | |
|     if monitor == True:
 | |
|         return
 | |
| 
 | |
|     status, buf = host.execute(["ls", "-l", setup_params['wpa_supplicant']])
 | |
|     if status != 0:
 | |
|         raise Exception(dev_name + " - wpa_supplicant: " + buf)
 | |
| 
 | |
|     status, buf = host.execute(["ls", "-l", setup_params['hostapd']])
 | |
|     if status != 0:
 | |
|         raise Exception(dev_name + " - hostapd: " + buf)
 | |
| 
 | |
|     status, buf = host.execute(["which", setup_params['iperf']])
 | |
|     if status != 0:
 | |
|         raise Exception(dev_name + " - iperf: " + buf)
 | |
| 
 | |
|     status, buf = host.execute(["which", "tshark"])
 | |
|     if status != 0:
 | |
|         logger.debug(dev_name + " - tshark: " + buf)
 | |
| 
 | |
| def check_devices(devices, setup_params, refs, duts, monitors):
 | |
|     """Check duts/refs/monitors devices"""
 | |
|     for dut in duts:
 | |
|         check_device(devices, setup_params, dut)
 | |
|     for ref in refs:
 | |
|         check_device(devices, setup_params, ref)
 | |
|     for monitor in monitors:
 | |
|         if monitor == "all":
 | |
|             continue
 | |
|         check_device(devices, setup_params, monitor, monitor=True)
 |