[Bug 361782] Re: pppd doesn't connect via bluetooth via nokia 5800 in gprs Internet

Mario Limonciello superm1 at ubuntu.com
Fri Aug 7 18:31:57 BST 2009


Reading through the source, this was fixed in
b13f02db1a13cb693ba9c1fe1d80e70cf4953e32 (v4.37)

Author: Forrest Zhao <forrest.zhao at intel.com>  2009-04-21 07:49:52
Committer: Marcel Holtmann <marcel at holtmann.org>  2009-04-21 07:49:52
Parent: e050cc3d1458116cad6f4182c81ba7d31949857c (Using # operator to stringify plugin name.)
Child:  6e843d1110a3bf8422a43df0f2de791c70f7164f (Fix SCO server socket for HFP HF role)
Branches: master, remotes/origin/master
Follows: 4.36
Precedes: 4.37

    re-use the sco_server initiated by audio plugin

--------------------------------- audio/main.c ---------------------------------
index 853a033..4e5eda2 100644
@@ -45,6 +45,7 @@
 #include "unix.h"
 #include "headset.h"
 #include "manager.h"
+#include "gateway.h"
 
 static GIOChannel *sco_server = NULL;
 
@@ -94,24 +95,37 @@ static void sco_server_cb(GIOChannel *chan, GError *err, gpointer data)
 	if (!device)
 		goto drop;
 
-	if (headset_get_state(device) < HEADSET_STATE_CONNECTED) {
-		debug("Refusing SCO from non-connected headset");
+	if (device->headset) {
+		if (headset_get_state(device) < HEADSET_STATE_CONNECTED) {
+			debug("Refusing SCO from non-connected headset");
+			goto drop;
+		}
+
+		if (!get_hfp_active(device)) {
+			error("Refusing non-HFP SCO connect attempt from %s",
+									addr);
+			goto drop;
+		}
+
+		if (headset_connect_sco(device, chan) < 0)
+			goto drop;
+
+		headset_set_state(device, HEADSET_STATE_PLAYING);
+	} else if (device->gateway) {
+		if (!gateway_is_connected(device)) {
+			debug("Refusing SCO from non-connected AG");
+			goto drop;
+		}
+
+		if (gateway_connect_sco(device, chan) < 0)
+			goto drop;
+	} else
 		goto drop;
-	}
-
-	if (!get_hfp_active(device)) {
-		error("Refusing non-HFP SCO connect attempt from %s", addr);
-		goto drop;
-	}
 
 	sk = g_io_channel_unix_get_fd(chan);
 	fcntl(sk, F_SETFL, 0);
 
-	if (headset_connect_sco(device, chan) < 0)
-		goto drop;
-
 	debug("Accepted SCO connection from %s", addr);
-	headset_set_state(device, HEADSET_STATE_PLAYING);
 
 	return;
 


** Changed in: bluez (Ubuntu)
       Status: Triaged => Fix Released

-- 
pppd doesn't connect via bluetooth via nokia 5800 in gprs Internet
https://bugs.launchpad.net/bugs/361782
You received this bug notification because you are a member of
Bluetooth, which is subscribed to bluez in ubuntu.



More information about the Ubuntu-bluetooth mailing list