diff options
author | Inga Stotland <inga.stotland@intel.com> | 2020-03-11 15:37:12 -0700 |
---|---|---|
committer | Anupam Roy <anupam.r@samsung.com> | 2020-03-26 16:06:32 +0530 |
commit | 1b33f067c2df78668fa78a9ed948c8366880a7da (patch) | |
tree | e275f1fad9a89385a0917e9f1f5c5144a830e99f /test | |
parent | e58dea1758e00855e867d60b86a8b8fb991a247e (diff) | |
download | bluez-1b33f067c2df78668fa78a9ed948c8366880a7da.tar.gz bluez-1b33f067c2df78668fa78a9ed948c8366880a7da.tar.bz2 bluez-1b33f067c2df78668fa78a9ed948c8366880a7da.zip |
test/test-mesh: Add support for static OOB in the agent
This allows to display a 16-octet key to be entered on the remote
device during provisioning.
Change-Id: If00c3e86c419733a348f412ec350a88d4127f85f
Signed-off-by: Anupam Roy <anupam.r@samsung.com>
Diffstat (limited to 'test')
-rwxr-xr-x | test/agent.py | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/test/agent.py b/test/agent.py index 778dbe09..d8e5534d 100755 --- a/test/agent.py +++ b/test/agent.py @@ -3,6 +3,7 @@ import sys import dbus import dbus.service +import numpy try: from termcolor import colored, cprint @@ -17,6 +18,12 @@ AGENT_PATH = "/mesh/test/agent" bus = None +def array_to_string(b_array): + str_value = "" + for b in b_array: + str_value += "%02x" % b + return str_value + class Agent(dbus.service.Object): def __init__(self, bus): self.path = AGENT_PATH @@ -27,6 +34,7 @@ class Agent(dbus.service.Object): caps = [] oob = [] caps.append('out-numeric') + caps.append('static-oob') oob.append('other') return { AGENT_IFACE: { @@ -46,3 +54,14 @@ class Agent(dbus.service.Object): def DisplayNumeric(self, type, value): print(set_cyan('DisplayNumeric ('), type, set_cyan(') number ='), set_green(value)) + + @dbus.service.method(AGENT_IFACE, in_signature="s", out_signature="ay") + def PromptStatic(self, type): + static_key = numpy.random.randint(0, 255, 16) + key_str = array_to_string(static_key) + + print(set_cyan('PromptStatic ('), type, set_cyan(')')) + print(set_cyan('Enter 16 octet key on remote device: '), + set_green(key_str)); + + return dbus.Array(static_key, signature='y') |