Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(282)

Unified Diff: server/site_wifitest.py

Issue 6030011: Rearrange EAP setup so that it is more parameterizable for other EAP types (Closed) Base URL: ssh://git@gitrw.chromium.org:9222/autotest.git@master
Patch Set: Update PEAP and TTLS tests. Created 9 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « server/site_tests/network_WiFiSecMat/073CheckWPA_1x_TTLS ('k') | server/site_wlan_connect.py » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: server/site_wifitest.py
diff --git a/server/site_wifitest.py b/server/site_wifitest.py
index 04b292f5616a92f5931d9f0d7abe2d88adc6a706..4c5b41aa34635f9ea4428dcedaf8996ab7294984 100644
--- a/server/site_wifitest.py
+++ b/server/site_wifitest.py
@@ -8,7 +8,7 @@ from autotest_lib.server import autotest, hosts, subcommand
from autotest_lib.server import site_bsd_router
from autotest_lib.server import site_linux_router
from autotest_lib.server import site_host_attributes
-from autotest_lib.server import site_eap_tls
+from autotest_lib.server import site_eap_certs
from autotest_lib.server import test
from autotest_lib.client.common_lib import error
@@ -320,17 +320,49 @@ class WiFiTest(object):
self.client_installed_scripts[script_name] = script_client_file
return script_client_file
+ def insert_file(self, host, filename, contents):
+ """
+ If config files are too big, the "host.run()" never returns.
+ As a workaround, break the file up into lines and append the
+ file piece by piece
+ """
+ host.run('rm -f %s >/dev/null 2>&1' % filename, ignore_status=True)
+ content_lines = contents.splitlines()
+ while content_lines:
+ buflist = []
+ buflen = 0
+ while content_lines and buflen + len(content_lines[0]) < 200:
+ line = content_lines.pop(0)
+ buflen += len(line) + 1
+ buflist.append(line)
+
+ if not buflist:
+ raise error.TestFail('Cert profile: line too long: %s' %
+ content_lines[0])
+ host.run('cat <<EOF >>%s\n%s\nEOF\n' %
+ (filename, '\n'.join(buflist)))
+
+ def install_files(self, params):
+ """ Install files on the client or router with the provided
+ contents"""
+
+ systemname = params.get('system', None)
+ if systemname == 'router':
+ system = self.router
+ elif systemname == 'client':
+ system = self.client
+ else:
+ raise error.TestFail('install_files: Must specify router or client')
+
+ for name,contents in params.get('files', {}).iteritems():
+ self.insert_file(system, name, contents)
+
def connect(self, params):
""" Connect client to AP/router """
script_client_file = self.install_script('site_wlan_connect.py',
'site_wlan_wait_state.py')
- if 'eap-tls' in params:
- params.update(site_eap_tls.client_config(self.client,
- params['eap-tls'],
- params.get('server-auth',
- None)))
flags = []
if params.get('debug', True):
« no previous file with comments | « server/site_tests/network_WiFiSecMat/073CheckWPA_1x_TTLS ('k') | server/site_wlan_connect.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698