| #!/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 <ssid> [passphrase] [security]' % (sys.argv[0])) |
| sys.exit(1) |
| |
| print('Attempting to configure hidden service %s' % (sys.argv[1])) |
| |
| flim = flimflam.FlimFlam(dbus.SystemBus()) |
| |
| ssid = sys.argv[1] |
| if len(sys.argv) > 2: |
| if len(sys.argv) > 3: |
| security = sys.argv[3] |
| else: |
| security = 'psk' |
| passphrase = sys.argv[2] |
| else: |
| security = 'none' |
| passphrase = None |
| |
| params = { |
| 'Type': 'wifi', |
| 'Mode': 'managed', |
| 'SSID': ssid, |
| 'WiFi.HiddenSSID': True, |
| 'SecurityClass': security, |
| } |
| if passphrase: |
| params['Passphrase'] = passphrase |
| |
| flim.manager.ConfigureService(params, signature='a{sv}') |