audio_device_unregister(dev);
}
-static int a2dp_source_probe(struct btd_profile *p, struct btd_device *device,
- GSList *uuids)
+static int a2dp_source_probe(struct btd_profile *p, struct btd_device *device)
{
struct audio_device *audio_dev;
return 0;
}
-static int a2dp_sink_probe(struct btd_profile *p, struct btd_device *device,
- GSList *uuids)
+static int a2dp_sink_probe(struct btd_profile *p, struct btd_device *device)
{
struct audio_device *audio_dev;
return 0;
}
-static int avrcp_probe(struct btd_profile *p, struct btd_device *device,
- GSList *uuids)
+static int avrcp_probe(struct btd_profile *p, struct btd_device *device)
{
struct audio_device *audio_dev;
{ }
};
-static int csc_device_probe(struct btd_profile *p,
- struct btd_device *device, GSList *uuids)
+static int csc_device_probe(struct btd_profile *p, struct btd_device *device)
{
struct btd_adapter *adapter;
struct csc_adapter *cadapter;
}
static int deviceinfo_driver_probe(struct btd_profile *p,
- struct btd_device *device,
- GSList *uuids)
+ struct btd_device *device)
{
struct gatt_primary *prim;
gas_free(gas);
}
-static int gatt_driver_probe(struct btd_profile *p, struct btd_device *device,
- GSList *uuids)
+static int gatt_driver_probe(struct btd_profile *p, struct btd_device *device)
{
struct gatt_primary *gap, *gatt;
hdp_adapter_unregister(adapter);
}
-static int hdp_driver_probe(struct btd_profile *p, struct btd_device *device,
- GSList *uuids)
+static int hdp_driver_probe(struct btd_profile *p, struct btd_device *device)
{
return hdp_device_register(device);
}
}
static int heartrate_device_probe(struct btd_profile *p,
- struct btd_device *device, GSList *uuids)
+ struct btd_device *device)
{
struct gatt_primary *prim;
g_slist_foreach(devices, set_suspend, GINT_TO_POINTER(suspend));
}
-static int hog_probe(struct btd_profile *p, struct btd_device *device,
- GSList *uuids)
+static int hog_probe(struct btd_profile *p, struct btd_device *device)
{
const char *path = device_get_path(device);
GSList *primaries, *l;
input_device_unregister(path, uuid);
}
-static int hid_device_probe(struct btd_profile *p, struct btd_device *device,
- GSList *uuids)
+static int hid_device_probe(struct btd_profile *p, struct btd_device *device)
{
const char *path = device_get_path(device);
const sdp_record_t *rec = btd_device_get_record(device, HID_UUID);
conf_security ? "true" : "false");
}
-static int panu_probe(struct btd_profile *p, struct btd_device *device,
- GSList *uuids)
+static int panu_probe(struct btd_profile *p, struct btd_device *device)
{
DBG("path %s", device_get_path(device));
server_unregister(adapter, BNEP_SVC_PANU);
}
-static int gn_probe(struct btd_profile *p, struct btd_device *device,
- GSList *uuids)
+static int gn_probe(struct btd_profile *p, struct btd_device *device)
{
DBG("path %s", device_get_path(device));
server_unregister(adapter, BNEP_SVC_GN);
}
-static int nap_probe(struct btd_profile *p, struct btd_device *device,
- GSList *uuids)
+static int nap_probe(struct btd_profile *p, struct btd_device *device)
{
DBG("path %s", device_get_path(device));
};
static int monitor_linkloss_probe(struct btd_profile *p,
- struct btd_device *device, GSList *uuids)
+ struct btd_device *device)
{
struct gatt_primary *linkloss;
}
static int monitor_immediate_probe(struct btd_profile *p,
- struct btd_device *device, GSList *uuids)
+ struct btd_device *device)
{
struct gatt_primary *immediate;
}
static int monitor_txpower_probe(struct btd_profile *p,
- struct btd_device *device, GSList *uuids)
+ struct btd_device *device)
{
struct gatt_primary *txpower;
radapter->devices = g_slist_prepend(radapter->devices, device);
}
-int reporter_device_probe(struct btd_profile *p, struct btd_device *device,
- GSList *uuids)
+int reporter_device_probe(struct btd_profile *p, struct btd_device *device)
{
struct reporter_adapter *radapter;
struct btd_adapter *adapter = device_get_adapter(device);
};
void reporter_device_remove(struct btd_profile *p, struct btd_device *device);
-int reporter_device_probe(struct btd_profile *p, struct btd_device *device,
- GSList *uuids);
+int reporter_device_probe(struct btd_profile *p, struct btd_device *device);
int reporter_adapter_probe(struct btd_profile *p, struct btd_adapter *adapter);
void reporter_adapter_remove(struct btd_profile *p,
g_free(scan);
}
-static int scan_param_probe(struct btd_profile *p, struct btd_device *device,
- GSList *uuids)
+static int scan_param_probe(struct btd_profile *p, struct btd_device *device)
{
struct gatt_primary *prim;
}
static int thermometer_device_probe(struct btd_profile *p,
- struct btd_device *device,
- GSList *uuids)
+ struct btd_device *device)
{
struct gatt_primary *tattr;
static void dev_probe(struct btd_profile *p, void *user_data)
{
struct probe_data *d = user_data;
- GSList *probe_uuids;
int err;
if (p->device_probe == NULL)
if (!device_match_profile(d->dev, p, d->uuids))
return;
- probe_uuids = g_slist_append(NULL, (char *) p->remote_uuid);
-
- err = p->device_probe(p, d->dev, probe_uuids);
+ err = p->device_probe(p, d->dev);
if (err < 0) {
error("%s profile probe failed for %s", p->name, d->addr);
- g_slist_free(probe_uuids);
return;
}
d->dev->profiles = g_slist_append(d->dev->profiles, p);
- g_slist_free(probe_uuids);
}
void device_probe_profile(gpointer a, gpointer b)
{
struct btd_device *device = a;
struct btd_profile *profile = b;
- GSList *probe_uuids;
char addr[18];
int err;
if (!device_match_profile(device, profile, device->uuids))
return;
- probe_uuids = g_slist_append(NULL, (char *) profile->remote_uuid);
-
ba2str(&device->bdaddr, addr);
- err = profile->device_probe(profile, device, probe_uuids);
+ err = profile->device_probe(profile, device);
if (err < 0) {
error("%s profile probe failed for %s", profile->name, addr);
- g_slist_free(probe_uuids);
return;
}
device->profiles = g_slist_append(device->profiles, profile);
- g_slist_free(probe_uuids);
if (!profile->auto_connect || !device->general_connect)
return;
}
}
-static int ext_device_probe(struct btd_profile *p, struct btd_device *dev,
- GSList *uuids)
+static int ext_device_probe(struct btd_profile *p, struct btd_device *dev)
{
struct ext_profile *ext;
if (!ext)
return -ENOENT;
- DBG("%s probed with %u UUIDs", ext->name, g_slist_length(uuids));
+ DBG("%s probed with UUID %s", ext->name, p->remote_uuid);
return 0;
}
bool auto_connect;
- int (*device_probe) (struct btd_profile *p, struct btd_device *device,
- GSList *uuids);
+ int (*device_probe) (struct btd_profile *p, struct btd_device *device);
void (*device_remove) (struct btd_profile *p,
struct btd_device *device);