diff --git a/tools/btmgmt.c b/tools/btmgmt.c
index 552f744..e218a87 100644
--- a/tools/btmgmt.c
+++ b/tools/btmgmt.c
#define PROMPT_ON COLOR_BLUE "[mgmt]" COLOR_OFF "# "
+static void set_index(char *arg)
+{
+ if (!arg || !strcmp(arg, "none") || !strcmp(arg, "any") ||
+ !strcmp(arg, "all"))
+ mgmt_index = MGMT_INDEX_NONE;
+ else if (!strncmp(arg, "hci", 3))
+ mgmt_index = atoi(&arg[3]);
+ else
+ mgmt_index = atoi(arg);
+}
+
static void update_prompt(uint16_t index)
{
char str[32];
mgmt_cancel_all(mgmt);
mgmt_unregister_all(mgmt);
- if (!strcmp(argv[1], "none") || !strcmp(argv[1], "any") ||
- !strcmp(argv[1], "all"))
- mgmt_index = MGMT_INDEX_NONE;
- else if (!strncmp(argv[1], "hci", 3))
- mgmt_index = atoi(&argv[1][3]);
- else
- mgmt_index = atoi(argv[1]);
+ set_index(argv[1]);
register_mgmt_callbacks(mgmt, mgmt_index);