Re: CreateBonding while periodic scanning

Manuel Naranjo <[email protected]>
Newsgroups gmane.linux.bluez.devel
Message-ID <[email protected]>
Sorry I forgot the patch.

I confirmed the patch worked for an old Broadcom based dongle (D-Link
BT122) and for a CSR Bluecore 4 based dongle (AIRcable Host XR).

The patch should apply against the bluez-utils-3.26 vanilla package
> Hello List,
>
> As I asked in the forums I'm trying to create a bonding to a device
> while I'm running a periodic scanning.
>
> Thing is that for some reason hcid is blocking me to do this, and Marcel
> suggested removing the periodic inquiry check. But as he said, and I
> think the same, that check was created for a reason.
>
> The line that makes the conflict is this one (utils/hcid/adapter.c:
>
> static DBusHandlerResult adapter_create_bonding(DBusConnection *conn,
>                                                 DBusMessage *msg, void
> *data)
> .....
>
> if (adapter->discov_active || (adapter->pdiscov_active &&
> !adapter->pinq_idle))
> return error_discover_in_progress(conn, msg)
>
> pinq_idle is 0 in my case, so then I get a discovery in progress exception.
>
> Marcel suggested that I change the code to "if (adapter->discov_active
> )" but still we would like to know what that check is made, so we can
> get a better solution.
>
> Thanks,
> Manuel Naranjo
> Wireless Cables Inc.
>
>
>

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/

_______________________________________________
Bluez-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bluez-devel
adapter.patch (text/x-patch, 443 B)
--- adapter.c.orig	2008-02-01 21:16:31.000000000 -0200
+++ adapter.c	2008-02-10 23:50:31.000000000 -0200
@@ -2216,7 +2216,7 @@
 	str2ba(peer_addr, &peer_bdaddr);
 
 	/* check if there is a pending discover: requested by D-Bus/non clients */
-	if (adapter->discov_active || (adapter->pdiscov_active && !adapter->pinq_idle))
+	if (adapter->discov_active)
 		return error_discover_in_progress(conn, msg);
 
 	pending_remote_name_cancel(adapter);
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.