{
gatt_client_cleanup(device);
+ if (!device->connect && !main_opts.reverse_discovery) {
+ DBG("Reverse service discovery disabled: skipping GATT client");
+ return;
+ }
+
device->client = bt_gatt_client_new(device->db, device->att,
device->att_mtu);
if (!device->client) {
bonding_request_free(bonding);
} else if (!state->svc_resolved) {
if (!device->browse && !device->discov_timer &&
- main_opts.reverse_sdp) {
+ main_opts.reverse_discovery) {
/* If we are not initiators and there is no currently
* active discovery or discovery timer, set discovery
* timer */
dev->svc_callbacks = g_slist_prepend(dev->svc_callbacks, cb);
- if (state->svc_resolved || !main_opts.reverse_sdp)
+ if (state->svc_resolved || !main_opts.reverse_discovery)
cb->idle_id = g_idle_add(svc_idle_cb, cb);
else if (dev->discov_timer > 0) {
g_source_remove(dev->discov_timer);
uint32_t discovto;
uint8_t privacy;
- gboolean reverse_sdp;
+ gboolean reverse_discovery;
gboolean name_resolv;
gboolean debug_keys;
gboolean fast_conn;
DBG("%s", err->message);
g_clear_error(&err);
} else
- main_opts.reverse_sdp = boolean;
+ main_opts.reverse_discovery = boolean;
boolean = g_key_file_get_boolean(config, "General",
"NameResolving", &err);
main_opts.class = 0x000000;
main_opts.pairto = DEFAULT_PAIRABLE_TIMEOUT;
main_opts.discovto = DEFAULT_DISCOVERABLE_TIMEOUT;
- main_opts.reverse_sdp = TRUE;
+ main_opts.reverse_discovery = TRUE;
main_opts.name_resolv = TRUE;
main_opts.debug_keys = FALSE;
#ifdef TIZEN_FEATURE_BLUEZ_MODIFY
#DeviceID = bluetooth:1234:5678:abcd
# Do reverse service discovery for previously unknown devices that connect to
-# us. This option is really only needed for qualification since the BITE tester
-# doesn't like us doing reverse SDP for some test cases (though there could in
-# theory be other useful purposes for this too). Defaults to 'true'.
+# us. For BR/EDR this option is really only needed for qualification since the
+# BITE tester doesn't like us doing reverse SDP for some test cases, for LE
+# this disables the GATT client functionally so it can be used in system which
+# can only operate as peripheral.
+# Defaults to 'true'.
#ReverseServiceDiscovery = true
# Enable name resolving after inquiry. Set it to 'false' if you don't need