diff --git a/tools/mcaptest.c b/tools/mcaptest.c
index 6d50544..42734eb 100644
--- a/tools/mcaptest.c
+++ b/tools/mcaptest.c
static struct mcap_mcl *mcl = NULL;
+static gboolean no_close = FALSE;
+
#define REQ_CLOCK_ACC 0x1400
static void mdl_connected_cb(struct mcap_mdl *mdl, void *data)
/* TODO */
printf("MCL disconnected\n");
+ if (no_close)
+ return;
+
g_main_loop_quit(mloop);
}
if (gerr) {
printf("MDL error: %s\n", gerr->message);
- g_main_loop_quit(mloop);
+ if (!no_close)
+ g_main_loop_quit(mloop);
+
return;
}
printf("Error connecting to mdl: %s\n", err->message);
g_error_free(err);
+ if (no_close)
+ return;
+
g_main_loop_quit(mloop);
}
}
if (err) {
printf("Could not connect MCL: %s\n", err->message);
- g_main_loop_quit(mloop);
+ if (!no_close)
+ g_main_loop_quit(mloop);
+
return;
}
"\t-f <timeout> disconnect MDL after it's connected\n"
"\t-u send \'Unavailable\' on first MDL connection request\n");
printf("Options:\n"
+ "\t-n don't exit after mcl disconnect/err receive\n"
"\t-i <hcidev> HCI device\n"
"\t-C <control_ch> Control channel PSM\n"
"\t-D <data_ch> Data channel PSM\n");
{ "connect_dl", 0, 0, 'd' },
{ "disconnect_dl", 1, 0, 'f' },
{ "unavailable_dl", 0, 0, 'u' },
+ { "no exit mcl dis/err",0, 0, 'n' },
{ "control_ch", 1, 0, 'C' },
{ "data_ch", 1, 0, 'D' },
{ 0, 0, 0, 0 }
exit(1);
}
- while ((opt = getopt_long(argc, argv, "+i:c:C:D:e:f:dghu",
+ while ((opt = getopt_long(argc, argv, "+i:c:C:D:e:f:dghun",
main_options, NULL)) != EOF) {
switch (opt) {
case 'i':
break;
+ case 'n':
+ no_close = TRUE;
+
+ break;
+
case 'C':
ccpsm = atoi(optarg);