blob: 63608c113c4bde9efd8c84fb5176d72bf047c1b2 [file] [log] [blame]
#!/usr/bin/env python3
# Copyright 2019 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
from __future__ import print_function
import sys
import dbus
import flimflam
if len(sys.argv) < 2:
print('Usage: %s <GUID> [<property> <value>]' % (sys.argv[0]))
sys.exit(1)
print('Attempting to configure service %s' % (sys.argv[1]))
flim = flimflam.FlimFlam(dbus.SystemBus())
params = {'GUID': sys.argv[1]}
argv = sys.argv[2:]
while argv:
property_key = argv[0]
value = argv[1]
if property_key in ['Priority']:
params[property_key] = int(value)
elif property_key in ['AutoConnect', 'WiFi.HiddenSSID', 'EAP.UseSystemCAS',
'SaveCredentials']:
params[property_key] = dbus.Boolean(value.lower() in ('true', '1'))
else:
params[property_key] = value
argv = argv[2:]
service = flim.GetService(params)
properties = service.GetProperties()
print('[ %s ]' % (service.object_path))
for key in properties.keys():
print(' %s = %s' %
(key, flimflam.convert_dbus_value(properties[key], 4)))
print('')